Live data from Hacker News

Building and shipping Mac and iOS apps without opening Xcode

scottwillsey.com

101–110 of 248 posts

Re: Building and shipping Mac and iOS apps without opening Xcode

#102
post #93

Earlier quoted context omitted.

You could move your SSH keys onto a password encrypted usb drive that you physically remove from the computer.

An alternative is to use ssh keys stored in the Secure Enclave with tools like https://secretive.dev/

Seems to me a tool like that would stop the agent from sending those specific keys elsewhere. But a tool like that would not stop the agent who is acting as you from using the SSH keys via the CLI. You would want to combine that with other tactics like having the agent run as some other user.

Re: Building and shipping Mac and iOS apps without opening Xcode

#103

I thought this would be a flutter post. Love flutter, ... , well I like flutter compared to Kotlin and Swift

Last I used flutter, editable text views was where it wasn't acceptable for me. On iOS, the default text view comes with a lot of built in stuff automatically such as cut copy paste, lookup definition, translate etc. Flutter's didn't have these.

Re: Building and shipping Mac and iOS apps without opening Xcode

#104
post #87
post #8

If it's okay to mention my own complementary open source project, Axiom¹ does a good job of helping coding harnesses know how to do this effectively for Apple OS development. In addition to a deep roster of skills and agencts, Axiom includes several for-LLM tools². xclog , xcprof , xcsym , and xcui are designed to be used by LLMs, and expose capabilities in a token-efficient way. These tools are equally helpful for n…

Use axiom all the time thanks for your work. The next frontier in iOS app tooling is self-hostable Linux based build server. Thoughts?

Sounds very intriguing! Please reach out (see my profile) when you're ready to share more.

Re: Building and shipping Mac and iOS apps without opening Xcode

#105

One down-side to this is that it does require you to run the agent on your Mac instead of in a Sandbox. I do this too and there are lots of problems I can't solve in a sandbox. I know a lot of you are throwing your hands up at the years of security practices we're throwing out the window when we do that. The fact that xAI uploaded someone's home directory, including their SSH keys, is giving me serious pause at my ch…

> require you to run the agent on your Mac instead of in a Sandbox

You don't have to! All recent Macs come with nearly zero perf cost virtualization. You can easily run Mac or Linux VMs assuming same architecture. Use it all the time for development and whatever.

Use Tart [1] or VirtualBuddy [2], both open-source, for a packaged solution. Or in the spirit of this post, vibe code your own wrapper around the OS API [3]

More recently, there are also Apple containers [4]

[1] https://tart.run/

[2] https://github.com/insidegui/VirtualBuddy

[3] https://developer.apple.com/documentation/virtualization

[4] https://github.com/apple/container

Re: Building and shipping Mac and iOS apps without opening Xcode

#106
post #41

I've been building and testing my iOS app just for fun via Linux only. Surprisingly, it's very easy. This works like a charm: https://github.com/xtool-org/xtool You do not need to upload to TestFlight or the App Store; you can just install the app locally to your iPhone via usb -- even from Linux! When in doubt, just ask your coding agent of choice to help you create and upload a Hello World iOS app. It's really easy…

Do the coding agents know about this tool?

Re: Building and shipping Mac and iOS apps without opening Xcode

#108
post #56

You still have to open Xcode (to get the certs), and you still have to accept the Xcode EULA. Title is quite misleading if not outright false.

As someone who tried my very best to not open Xcode for building and shipping Mac and iOS apps, I agree, there are things there are literally no way around opening the GUI, not even terminal utilities for. You cannot do this 100% headless, which is what I attempted at first.

Re: Building and shipping Mac and iOS apps without opening Xcode

#109
post #60

In my experience, the better long-term choice if you're going to vibe code an app is to use Expo. Its basis is React, so the code output quality is much higher than Swift because there is much more React code in LLM training data. Everything is in the command line, and debugging is a breeze because it's a web view. But once it's compiled to native iOS, it feels like any other native app. Expo + Fastlane = fully autom…

This one?? https://expo.dev/

   Our code broke
   It looks like there was an error we need to look at. Sorry about the inconvenience.

Re: Building and shipping Mac and iOS apps without opening Xcode

#110
post #93

Earlier quoted context omitted.

An alternative is to use ssh keys stored in the Secure Enclave with tools like https://secretive.dev/

Seems to me a tool like that would stop the agent from sending those specific keys elsewhere. But a tool like that would not stop the agent who is acting as you from using the SSH keys via the CLI. You would want to combine that with other tactics like having the agent run as some other user.

Secretive (and the similar built-in functionality [1]) both allow you to require TouchID too. I found an okay balance using two SSH keys: one for commit signing (w/o TouchID) and one for everything else (requires TouchID, or PIN on Linux)

So, the actions that I really don't want the agent to take (establishing an SSH connection, pushing to a git remote) always require my manual intervention.

[1] https://gist.github.com/arianvp/5f59f1783e3eaf1a2d4cd8e952bb...

Post reply on HN