0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

macなくてもiOSの開発できるという夢を見た話

0
Posted at

この記事の目標

macレスでiOSアプリ開発をするという夢を見る

記事を書いたひとはどんな人?

  • iOS開発のためにジャンク屋で半日かけて探したM2 MacbookAirを開発専用機にした
  • 12年ぶりにApple Developerアカウントの課金を再開した

衝撃の事実

x86で・・・iOSアプリがリリースまでできただと???

これは試すしかない

つかうもの(つかったもの)

  • ArchLinux on Proxmox
    • こだわりがなければ仮想VMである必要はないです
  • omarchy-apple-dev
  • Claude Code(もちろんCodexなどでもOK)

やってみよう

Arch Linuxのインストール

isoのダウンロード

ここから適当なmirrorを指定してDL

isoを使ってインストール

ディスクを入れて起動し、以下のコマンドを打つことで割と容易にインストールできます

archinstall

こまかいところは、こちらのサイトを参考にさせていただきました。

再起動後の初期設定

OpenSSHをインストールするとSSHできるようになりますので忘れずに。

sudo pacman -S openssh
sudo systemctl enable sshd
sudo systemctl start sshd

あとはgitが必要なので追加

pacman -S git

yayのインストール

どうやら、yayなるものが必要そうなので、以下のサイトを参考に導入

unzipのインストール

必要っぽいのでこれもインストールしておくとよい

sudo pacman -S unzip

omarchy-apple-devを準備する

GitHubリポジトリの指示に従ってインストール

git clone https://github.com/joshuaswarren/omarchy-apple-dev
cd omarchy-apple-dev
./install-toolchain.sh

結構かかるので気長に待ちましょう。

途中で失敗した場合は

こんな感じで「iOS SDKを入れろ」といわれる。

image.png

Xcodeのバイナリをダウンロードする

公式サイトから、Xcodeのxipファイルをダウンロードします

※AppleDeveloperの登録が必要なので注意

2026年10月時点ではXcode27が最新なのでこれをダウンロード。

image.png

これを転送しておく。

※ホストマシンから実行する

scp Xcode_27.xip [user]@[host]:/home/[Linuxユーザー]/Xcode_27.xip

これで再実行

XCODE_XIP=/home/[Linuxユーザー]/Xcode_27.xip ./install-toolchain.sh

ログインする

インストールログで以下のことを言われたのでログインする。
今回の流れで進めるなら不要な気もするが、念のためやっておくとよさそう。

== 7. Apple ID sign-in (interactive, needed before device deploys) ==
Run: /home/[User]/.local/bin/xtool auth
Done. Next: plug in the iPhone and run ./device-run.sh

API Keyの取得

CLIからAppleDeveloperを操作するためのAPIキーを取得する。

いったん、Storeの情報をいじらせたくないのでDeveloperのみを設定する。

image.png

API Keyを作成したら、必要な情報を集めて以下のコマンドを実行

~/.local/bin/xtool auth

画面の指示に従って指定する。

パスを通しておく

echo 'export PATH=$PATH:~/.local/bin/' >> .bashrc
source ~/.bashrc

動作確認

$ xtool -h
OPTIONS:
  --version               Show the version.
  -h, --help              Show help information.

CONFIGURATION SUBCOMMANDS:
  setup                   Set up xtool for iOS development
  auth                    Manage Apple Developer Services authentication
  sdk                     Manage the Darwin Swift SDK

DEVELOPMENT SUBCOMMANDS:
  new                     Create a new xtool SwiftPM project
  dev                     Build and run an xtool SwiftPM project
  ds                      Interact with Apple Developer Services

DEVICE SUBCOMMANDS:
  devices                 List devices
  install                 Install an ipa file to your device
  uninstall               Uninstall an installed app
  launch                  Launch an installed app

  See 'xtool help <subcommand>' for detailed help.

プロジェクトを作成する

まずは動作確認のため、作ってみる

xtool new HelloApp
cd HelloApp
xtool dev run

こんな感じでデバイス待ちになればOK

$ xtool dev run
Planning...
Building for debugging...
[97 / 98] HelloApp-App-product

Build complete! (17.74 secs)
Waiting for device to be connected...

Claudeの準備

yay -S claude-code

Claudeを起動してリポジトリを読み込ませる

claude

image.png

いくつか打ち込んで、問題なければ大丈夫そう。

そのほか、いくつか分かったこと

Xcode作ったプロジェクトをそのまま読み込めなかった(ものによるかも)

すでに作っているプロジェクトを読み込もうとしたのですが、SwiftProjectがないと怒られてしまいました。
リンクとかを張ってちょっと回避する必要がありそうです。

Watchアプリはビルドできない

Claudeにも聞いたのですが、対象はiOS系のみで、Watchには対応していない模様。
おそらく、前項の制限についてもiPhone用のProjectとWatch用のプロジェクトの両方あるのがポイントになってるかもしれない。

そもそもこれ、アウトでは?

こちらの記事でもほかの方も提言した通り、Xcodeのバイナリを使ってインストールをするという時点で怪しい。

実際のところ、今回扱ったOmarchyはスクリプトがメインであるためリバースエンジニアリングとかはしていませんが、
Appleの規約で考えるとXcodeのバイナリをmac以外で動かすのは規約違反になりそうです。

Apple Developer Program使用許諾契約

デベロッパは、Apple SDKをAppleブランドでないコンピュータでインストール、使⽤もしくは
実⾏しないこと、iOS、iPadOS、macOS、tvOS、visionOS、watchOS、およびプロビジョニングプロファイルを
Appleブランド製品以外のデバイスで、またはAppleブランド製品以外のデバイスに関連して、インストール、使⽤また
は実⾏しないこと、および他者がこれらの⾏為をすることを可能ならしめないことに同意するものとします。デ

そのため、Omarchyを使って実際にDistributionまで進めようとした場合、規約違反になってあとから消される可能性もあります。

まとめ

macレスでアプリビルドをするという夢は見れた。

  • 規約違反になりかねないので、夢を見るだけで終わらせたほうがよい
  • Watchびるどができないなど制限もあるため、できたとしてもmacは必須と考えた方がいい
  • 構築も割と面倒なので、ジャンクのmac買って母艦にしたほうが安心

というわけで、「自分がMacbookを買ったこと」を完全肯定しつつ、記事を締めたいと思います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?