<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/when-apps-are-no-longer-tied-to-a-specific-operating-system----fatbobman-s-swift-weekly-159-qnyitg1ft" -->

---
title: When Apps Are No Longer Tied to a Specific Operating...
description: This newsletter issue covers projects that blur boundaries between operating systems. Cutefish's Reef compatibility layer reimplements Mach-O loader,...
canonical: https://daily.dev/posts/when-apps-are-no-longer-tied-to-a-specific-operating-system----fatbobman-s-swift-weekly-159-qnyitg1ft
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: When Apps Are No Longer Tied to a Specific Operating System -- Fatbobman's Swift Weekly #159 | daily.dev
og:description: This newsletter issue covers projects that blur boundaries between operating systems. Cutefish's Reef compatibility layer reimplements Mach-O loader,...
og:url: https://daily.dev/posts/when-apps-are-no-longer-tied-to-a-specific-operating-system----fatbobman-s-swift-weekly-159-qnyitg1ft
og:image: https://api.daily.dev/og/posts/qNyitG1Ft.png
og:image:alt: When Apps Are No Longer Tied to a Specific Operating System -- Fatbobman's Swift Weekly #159
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# When Apps Are No Longer Tied to a Specific Operating System -- Fatbobman's Swift Weekly #159

**[Fatbobman](https://daily.dev/sources/fatbobman)** · [@fatbobman](https://daily.dev/fatbobman) · 9 min read · 0 upvotes · 0 comments

## Summary

This newsletter issue covers projects that blur boundaries between operating systems. Cutefish's Reef compatibility layer reimplements Mach-O loader, Objective-C Runtime, and frameworks like AppKit and SwiftUI to run Mac apps on Linux. SimRun runs iOS Simulator apps in independent macOS windows without Mac Catalyst, requiring Apple Silicon and SIP disabled. Mac Android Subsystem runs a full LineageOS environment via QEMU to display Android apps in separate Mac windows using scrcpy. Other items cover an NSHostingView lifecycle bug found through AI-assisted debugging, AVFoundation audio ducking techniques, Claude Code's 39.6k token startup context, and Tuist's argument that it should build agent-driven development harnesses on commoditized compute.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://fatbobman.com/en/weekly/issue-159>

## Questions this post answers

### how does Cutefish let Mac apps run on Linux without a virtual machine

Cutefish uses a compatibility layer called Reef that reimplements the Mach-O loader, the Objective-C Runtime, and Apple frameworks including Foundation, AppKit, Core Graphics, and SwiftUI, rather than relying on virtualization or instruction emulation. This lets unmodified macOS applications run directly on a Linux desktop, though it still has performance issues like rebuilding the whole view tree on local state changes.

_developers tracking cross-platform compatibility breakthroughs like this follow similar deep dives on daily.dev._

### how does SimRun run iOS simulator apps in their own Mac windows

SimRun, an open-source project by Cyandev, runs iOS apps built by Xcode for the iOS Simulator directly in independent macOS windows without launching a full simulated device or adding Mac Catalyst support. It also offers a command-line interface, screenshots, view hierarchy inspection, and an experimental JavaScript automation API, but it requires an Apple Silicon Mac, Xcode, and SIP disabled.

_iOS developers evaluating faster simulator workflows can find tool breakdowns like this on daily.dev._

### how many tokens does Claude Code load before I even type a prompt

Claude Code loads 39.6k tokens of initial context before any prompt is entered, according to inspection with the /context all command. This overhead comes from system prompts, tool definitions, CLAUDE.md, Rules, Skills, and custom Agents, though MCP tools using deferred loading are excluded; commands like /skill-doctor and /doctor prompt-audit help identify unused rules worth trimming.

_developers optimizing Claude Code context budgets can track tuning tips like these on daily.dev._

## Similar posts on daily.dev

- [When Linux Becomes "Air": Containers, Agents, and a "Desktop War" That No Longer Matters -- Fatbobman's Swift Weekly \#143](https://daily.dev/posts/when-linux-becomes-air-containers-agents-and-a-desktop-war-that-no-longer-matters----fatbobma-xwpijh3by) · Fatbobman · 0 upvotes · 0 comments
- [Issue 744 – iOS Dev Weekly](https://daily.dev/posts/issue-744-ios-dev-weekly-heaqgwxyz) · iOS Dev Weekly · 1 upvotes · 0 comments
- [Android apps running native on macOS](https://daily.dev/posts/android-apps-running-native-on-macos-gcspqvspy) · Hacker News · 3 upvotes · 0 comments
- [Homebrew 5.0: Parallel Downloads, MCP Integration, and Intel's Final Countdown -- Fatbobman's Swift Weekly \#111](https://daily.dev/posts/homebrew-5-0-parallel-downloads-mcp-integration-and-intel-s-final-countdown----fatbobman-s-swift--lnhthexhf) · Fatbobman · 1 upvotes · 0 comments
- [Advanced Mac Substitute implements 80’s Macs without Apple ROMs](https://daily.dev/posts/advanced-mac-substitute-implements-80-s-macs-without-apple-roms-fo7yvbup2) · Adafruit Blog · 0 upvotes · 0 comments

---

Tags: [#ai-agents](https://daily.dev/tags/ai-agents), [#ios](https://daily.dev/tags/ios), [#mac](https://daily.dev/tags/mac), [#swiftui](https://daily.dev/tags/swiftui)

[View this post on daily.dev](https://daily.dev/posts/when-apps-are-no-longer-tied-to-a-specific-operating-system----fatbobman-s-swift-weekly-159-qnyitg1ft)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"When Apps Are No Longer Tied to a Specific Operating System -- Fatbobman's Swift Weekly #159","url":"https://daily.dev/posts/when-apps-are-no-longer-tied-to-a-specific-operating-system----fatbobman-s-swift-weekly-159-qnyitg1ft","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/when-apps-are-no-longer-tied-to-a-specific-operating-system----fatbobman-s-swift-weekly-159-qnyitg1ft"},"datePublished":"2026-10-26T10:33:39.645Z","dateModified":"2026-10-27T07:00:12.376Z","description":"This newsletter issue covers projects that blur boundaries between operating systems. Cutefish's Reef compatibility layer reimplements Mach-O loader,...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/4f47a26a74714340f551336ddf0d2022?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/4f47a26a74714340f551336ddf0d2022?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Fatbobman","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Person","name":"Yang Xu","url":"https://daily.dev/fatbobman","image":"https://lh3.googleusercontent.com/a/AGNmyxYJD8FDo35yPZMvl1IE9sT7UrM002H-UQb82wk-6A=s96-c","interactionStatistic":{"@type":"InteractionCounter","interactionType":{"@type":"EndorseAction"},"userInteractionCount":60}},"commentCount":0,"discussionUrl":"https://daily.dev/posts/when-apps-are-no-longer-tied-to-a-specific-operating-system----fatbobman-s-swift-weekly-159-qnyitg1ft","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"ai-agents,ios,mac,swiftui","timeRequired":"PT9M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Fatbobman","item":"https://daily.dev/sources/fatbobman"},{"@type":"ListItem","position":3,"name":"When Apps Are No Longer Tied to a Specific Operating System -- Fatbobman's Swift Weekly #159"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/when-apps-are-no-longer-tied-to-a-specific-operating-system----fatbobman-s-swift-weekly-159-qnyitg1ft#faq","mainEntity":[{"@type":"Question","name":"how does Cutefish let Mac apps run on Linux without a virtual machine","acceptedAnswer":{"@type":"Answer","text":"Cutefish uses a compatibility layer called Reef that reimplements the Mach-O loader, the Objective-C Runtime, and Apple frameworks including Foundation, AppKit, Core Graphics, and SwiftUI, rather than relying on virtualization or instruction emulation. This lets unmodified macOS applications run directly on a Linux desktop, though it still has performance issues like rebuilding the whole view tree on local state changes. developers tracking cross-platform compatibility breakthroughs like this follow similar deep dives on daily.dev."}},{"@type":"Question","name":"how does SimRun run iOS simulator apps in their own Mac windows","acceptedAnswer":{"@type":"Answer","text":"SimRun, an open-source project by Cyandev, runs iOS apps built by Xcode for the iOS Simulator directly in independent macOS windows without launching a full simulated device or adding Mac Catalyst support. It also offers a command-line interface, screenshots, view hierarchy inspection, and an experimental JavaScript automation API, but it requires an Apple Silicon Mac, Xcode, and SIP disabled. iOS developers evaluating faster simulator workflows can find tool breakdowns like this on daily.dev."}},{"@type":"Question","name":"how many tokens does Claude Code load before I even type a prompt","acceptedAnswer":{"@type":"Answer","text":"Claude Code loads 39.6k tokens of initial context before any prompt is entered, according to inspection with the /context all command. This overhead comes from system prompts, tool definitions, CLAUDE.md, Rules, Skills, and custom Agents, though MCP tools using deferred loading are excluded; commands like /skill-doctor and /doctor prompt-audit help identify unused rules worth trimming. developers optimizing Claude Code context budgets can track tuning tips like these on daily.dev."}}]}
```

