Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Technically, you are using Xcode.

Xcode is a [buggy as hell] GUI wrapper for a lot of system-level UNIX utilities and apps [which are generally, not so buggy].

Using CLI to release apps is a pretty old practice; at least as long as I've been doing it (I released my first Xcode app in 2012).



Xcode’s a lot more than a wrapper for UNIX utilities. For example, it has an entire build system. It doesn’t just invoke xcodebuild under the hood—and even if it did, xcodebuild uses the exact same code to build your projects as the IDE.

Most of the problems that I saw people have with Xcode over the two decades that I worked on it were the result of one fundamental problem: They wanted to work a different way than Xcode is designed to work, and jumped through a ton of hoops to do so, and then blamed Xcode for not accommodating their intentional working at cross-purposes.

A good example: An app that considered itself “large” because it had a thousand tiny static library targets each with only one to three or so ObjC classes. Far smaller than Xcode itself, but because they insisted on working that way—for no real articulable benefit besides “that’s how we want to work”—their project took hours to build from scratch instead of minutes like much larger projects that have many fewer targets.


Thanks for your service on Xcode.

In my experience, it’s quite “crashy.” It often locks up so bad, that I need to force-quit (or force-restart the Mac). I end up doing that once a day, or so. I suspect that many of the performance and stability issues, have to do with resource usage. It’s a damn big app.

It can also end up in strange states, where portions of the UI fall “out of sync,” and the app needs to be restarted. Some operations (like opening a storyboard, or stopping at a breakpoint) introduce massive delays.

It’s not a denigration, calling something a UI shell. I’m working on one, right now. The engine and backend were done in April (started in February), and all the work since, was on the UI shell. I probably could have shipped something that “ticked all the boxes,” in May. It’s almost done, but there’s still a couple of months of testing, ahead.


That's good to hear. I never even tried to make anything for macOS because I opened Xcode and.. well, you know.


If you write Qt applications, Qt Creator is perfectly usable and as it's cross-platform you only need to be familiar with one IDE. It ships with its own deploy command which packages the app. You still need to run code signing/notarization last time I checked, but if the complaint is the XCode GUI then no problem there.


Nah. I usually use Xcode GUI, but there's been a lot of discussion about using a CLI workflow, for many years. Should be easy to find.

Hope you like long argument lists. xcodebuild has a crazy long parameter list.

https://developer.apple.com/documentation/xcode/xcode-comman...



From my experience the CLI works but is not well documented.


They rely on manpages, but using CLI tools is old enough, that there’s been plenty of online discussion on the practice.

LLMs will often use CLI tools. In my experience, they loves their CLI.


Yes, I know that. But I am not using Xcode. Claude is. That's the point.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: