Xcode’u Açmadan Mac ve iOS Uygulaması Geliştirmek: Tam Kılavuz Siber Güvenlik

Xcode’u Açmadan Mac ve iOS Uygulaması Geliştirmek: Tam Kılavuz

Xcode’u açmadan Mac ve iOS uygulaması geliştirmek mümkün. xcodebuild, notarytool ve XcodeGen ile tamamen terminal üzerinden derleme, imzalama ve dağıt

Son dönemde birçok Apple podcast yayıncısı, Xcode’un ne kadar karmaşık olduğundan ve Apple’ın vibe coding deneyimini iyileştirmesi gerektiğinden bahsediyor. Eleştirilerinde haksız sayılmazlar, ancak asıl soru şu: Neden hâlâ Xcode’u açıyorlar? Biraz ön hazırlıkla, Xcode’a bir daha bakmadan Mac ve iOS uygulamaları geliştirebilirsiniz. Bu yazıda, tek bir GUI açmadan uygulama derleme, imzalama, noterleştirme ve dağıtma sürecini adım adım anlatacağım.

Öncelikle şunu netleştirelim: Xcode.app sistemde kurulu olmak zorunda, çünkü derleme araçlarının tamamı Xcode’un içinde yer alıyor. Ancak Xcode’u bir kez bile açmanız gerekmiyor. İhtiyacınız olan araçlar – xcodebuild, notarytool, stapler, devicectl – tamamen komut satırından çalışıyor. Tek yapmanız gereken, Xcode’u kurup komut satırı araçlarını doğru yapılandırmak.

İlk ve en kritik adım, Xcode’un komut satırı araçlarının doğru sürümünü kullanmak. Varsayılan olarak sistem, /Library/Developer/CommandLineTools dizinindeki bağımsız paketi kullanabiliyor. Ancak bu paket yalnızca clang ve git gibi temel araçları içeriyor; iOS SDK, notarytool, devicectl gibi tam geliştirme için gerekenler yok. Bu nedenle, xcode-select -p komutunun çıktısı /Applications/Xcode.app/Contents/Developer olmalı. Değilse, sudo xcode-select -s /Applications/Xcode.app/Contents/Developer ile düzeltin.

Proje yönetimi için XcodeGen kullanacağız. Xcode proje dosyaları (.xcodeproj) aslında klasörlerdir ve Xcode sürekli olarak bu dosyaları değiştirir, bu da git için sorun çıkarır. XcodeGen, tüm proje ayarlarınızı tek bir project.yml dosyasında tutar ve her derlemede .xcodeproj klasörünü yeniden oluşturur. Böylece yalnızca YAML dosyası git’e eklenir, .xcodeproj ise ignore edilebilir. XcodeGen’i Homebrew ile kolayca kurabilirsiniz: brew install xcodegen.

Xcode’u bir kez yapılandırmak, onu bir daha açmamak için yeterli. İlk olarak, lisansı kabul edin ve ek bileşenleri yükleyin: sudo xcodebuild -license accept ve sudo xcodebuild -runFirstLaunch. Ardından, Xcode’u açıp Settings > Accounts bölümünden Apple Geliştirici hesabınızı ekleyin. Unutmayın, uygulamanızı dağıtmak ve noterleştirmek için ücretli bir Apple Geliştirici hesabınız olmalı.

Teknik Analiz

İmzalama için iki farklı sertifika gerekiyor: Apple Development sertifikası (kendi cihazınızda test için) ve Developer ID Application sertifikası (dağıtım için). İkincisi, uygulamanızın Gatekeeper’ı geçip başkalarının Mac’inde çalışmasını sağlar. Bu sertifikayı Xcode içinde Settings > Accounts > Manage Certificates > + > Developer ID Application yolunu izleyerek oluşturun. Sertifika ve özel anahtar otomatik olarak giriş anahtarlığınıza eklenir. Özel anahtarı yedeklemeyi unutmayın, çünkü tekrar indirilemez.

Noterleştirme (notarization) için Apple’a uygulamanızı gönderip kötü amaçlı yazılım taramasından geçirmeniz gerekir. notarytool aracı, bir kez oluşturduğunuz anahtarlık profili ile kimlik doğrulaması yapar. Profili interaktif olarak oluşturun: xcrun notarytool store-credentials "App-Name" --apple-id "[email protected]" --team-id YOUR-TEAM-ID. Bu işlem, uygulamaya özel bir şifre isteyecektir; bu şifreyi daha sonra komut dosyanızda kullanabilirsiniz.

Sonuç ve Değerlendirme

Tüm bu hazırlıkların ardından, tek bir betik (scripts/release.sh) ile uygulamanızı arşivleyebilir, Developer ID ile imzalayabilir, noterleştirebilir ve /Applications klasörüne kurabilirsiniz. Betik, imzalama anahtarını otomatik olarak login keychain’den bulur; hiçbir gizli bilgiyi depoya koymanız gerekmez. Artık Xcode’u açmadan, tamamen terminal üzerinden Mac ve iOS uygulamalarınızı geliştirebilir ve dağıtabilirsiniz. Haydi, vibe coding yapmaya başlayın!

Kaynak: scottwillsey.com

Paylaş: