前言#
Mac OSでLinux開発環境を使用すること自体は難しいことではありません。なぜなら、Mac OS自体がUnix系のシステムであり、HomeBrewを使えばほとんどのLinuxソフトウェアパッケージを直接インストールできるからです。仮想マシンを使用しなくても、比較的良好な開発体験が得られます。しかし、特別なニーズがある場合や、ホストマシンの開発環境を汚したくない場合は、VMware Fusion、Parallels Desktop、またはVirtualBoxを使用して、仮想マシンに完全な Linux ディストリビューションをインストールすることができます。ただし、この種の仮想マシンは比較的重く、起動が遅く、メモリを多く消費するため、私の考慮範囲には入っていません。もちろん、Docker Desktopを使用してさまざまなLinuxディストリビューションのイメージを直接使用したり、Dev Containerを作成して完全な開発イメージを作成することもできますが、現在のDockerイメージソースの問題には一貫した解決策がないため、これも考慮には入れていません。最終的に、私はOrbstackのMechinesを使用して開発環境を構築することに決めました。
インストール Orbstack#
公式サイト から直接インストーラをダウンロードしてインストールするか、HomeBrew を使用して直接インストールします。
brew install orbstack
適切なディストリビューションを選択する#
私が使用しているのは Fedora です。


開発環境を整える#
- 最初のステップはもちろん、清華源 に変更することです。まず、デフォルトのリポジトリをバックアップします。
sudo cp -r /etc/yum.repos.d /etc/yum.repos.d.backup
次に、デフォルトのリポジトリを直接置き換えます。
sudo sed -e 's|^metalink=|#metalink=|g' \
-e 's|^#baseurl=http://download.example/pub/fedora/linux|baseurl=https://mirrors.tuna.tsinghua.edu.cn/fedora|g' \
-i.bak \
/etc/yum.repos.d/fedora.repo \
/etc/yum.repos.d/fedora-modular.repo \
/etc/yum.repos.d/fedora-updates.repo \
/etc/yum.repos.d/fedora-updates-modular.repo
手動で変更したい場合は
-
fedora リポジトリ (/etc/yum.repos.d/fedora.repo)
[fedora] name=Fedora $releasever - $basearch failovermethod=priority baseurl=https://mirrors.tuna.tsinghua.edu.cn/fedora/releases/$releasever/Everything/$basearch/os/ metadata_expire=28d gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch skip_if_unavailable=False -
updates リポジトリ (/etc/yum.repos.d/fedora-updates.repo)
[updates]
name=Fedora $releasever - $basearch - Updates
failovermethod=priority
baseurl=https://mirrors.tuna.tsinghua.edu.cn/fedora/updates/$releasever/Everything/$basearch/
enabled=1
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
-
fedora-modular リポジトリ (/etc/yum.repos.d/fedora-modular.repo)
[fedora-modular] name=Fedora Modular $releasever - $basearch failovermethod=priority baseurl=https://mirrors.tuna.tsinghua.edu.cn/fedora/releases/$releasever/Modular/$basearch/os/ enabled=1 metadata_expire=7d gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch skip_if_unavailable=False -
updates-modular リポジトリ (/etc/yum.repos.d/fedora-updates-modular.repo)
[updates-modular]
name=Fedora Modular $releasever - $basearch - Updates
failovermethod=priority
baseurl=https://mirrors.tuna.tsinghua.edu.cn/fedora/updates/$releasever/Modular/$basearch/
enabled=1
gpgcheck=1
metadata_expire=6h
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-$releasever-$basearch
skip_if_unavailable=False
```
-
キャッシュをクリアする
sudo dnf clean all sudo dnf makecache -
ソフトウェアパッケージを更新する
sudo dnf update
zshを使用してデフォルトのbashを置き換えます。
gitとzshをインストールします。
sudo dnf install git zsh
oh my zshをインストールします。
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
-
よく使う
oh my zshプラグインをインストールします。- 自動補完
git clone https://github.com/zsh-users/zsh-autosuggestions.git $ZSH_CUSTOM/plugins/zsh-autosuggestions- シンタックスハイライト
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $ZSH_CUSTOM/plugins/zsh-syntax-highlighting
git clone https://github.com/zdharma-continuum/fast-syntax-highlighting.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/plugins/fast-syntax-highlighting
```
- 自動補完
```bash
git clone --depth 1 -- https://github.com/marlonrichert/zsh-autocomplete.git $ZSH_CUSTOM/plugins/zsh-autocomplete
```
-
zsh設定ファイルを変更し、plugins を次のように変更します。vim ~/.zshrcplugins=( git zsh-autosuggestions zsh-syntax-highlighting fast-syntax-highlighting zsh-autocomplete
)
- 変更を適用します。
```bash
source ~/.zshrc
NVMを使用してNodeJSバージョンを管理します。
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
-
使用方法
$ nvm use 16 Now using node v16.9.1 (npm v7.21.1) $ node -v v16.9.1 $ nvm use 14 Now using node v14.18.0 (npm v6.14.15) $ node -v v14.18.0 $ nvm install 12 Now using node v12.22.6 (npm v6.14.5) $ node -v v12.22.6詳細は ドキュメント を参照してください。
VS Codeを使用して、先ほど作成した仮想マシンに接続します。
- プラグイン
Remote Developmentをインストールします。 - 左側のメニューでリモートリソースマネージャを選択し、
SSHの+ボタンをクリックするか、ショートカットキーShift+Command+Pを使用してremote addと入力し、SSH接続を追加するウィンドウを開きます。

ssh orbと入力すれば、作成した仮想マシンに接続できます。
::: warning
複数の仮想マシンがある場合、SSH接続時にどのホストに接続するかを指定する必要があります。指定しない場合はデフォルトのホストに接続されます。例えば、ssh debain@orbはデフォルトユーザーでdebainホストに接続します。例として
ssh machine@orb、
ssh user@orb、
ssh user@machine@orb
:::


これで、ホストシステムから隔離された開発環境が整いました。どんなにいじっても心配ありません。
WindowsのWSLに似ていて、シンプルで便利です。Orbstackをダウンロードしたらすぐに使用できます。
この記事は Mix Space によって xLog に同期更新されました。元のリンクは https://remrin.dev/posts/linux/dev-env