自分の環境構築用なので、もし dotfiles とか brewfile を流用する人はいらんものあると思うので注意してください。
作業メモ兼ねてるのであとで綺麗にします。
- インストーラの取得
- インストールメディア作成
- クリーンインストール
- Slack
- inkdrop
- ブラウザ
- dotfile (不可視ファイル) の表示
- Google 日本語入力
- サードパーティアプリケーションのバックグラウンド動作
- Xcode, CommandLineTool
- homebrew
- 使ってるやつでだめだった一覧
- MySQL
- anyenv
- anyenv-update
- Docker + Lima, Docker-compose
- VirtualBox のインストール
- 自分固有のあれそれ
- UDEV Gothic
- VScode
- iTerm2
- Prezto
- Powerlevel10k
- Office のインストール
- メーラー
- Kaspersky インターネットセキュリティ
- M575S
- zoom.us
はてなブログってタイトルに [WIP]
とかするとカテゴリ名になるのか、はじめて知ったけど何年使ってるんやおまえ、という感じもある。
行頭に半角スペース入れて対応する。
インストーラの取得
Monterey 以下の環境でシステム環境設定からダウンロードすると、問答無用で Ventura にアップデートされる? された。
Ventura にアップデートされた環境で、再度システム環境設定からダウンロード実行すると従来のインストーラが表示され、 /Applications
以下にインストーラ.appも確認できた。
softwareupdate --fetch-full-installer --full-installer-version 13.0
インストールメディア作成
まだ出てないけどこうかな?
sudo /Applications/Install\ macOS\ Ventura.app/Contents/Resources/createinstallmedia --volume /Volumes/MyVolume
クリーンインストール
option 長押しでブートメニュー出ないな? と思ってたけど AppleSillicon (M1/M2) だと電源ボタン長押しらしい。
macos 復旧、とかいうウィンドウが起動するので、その他を選択して、いつものディスクユーティリティからMacintosh HDを吹き飛ばす。
なおちゃんとここで「OS 吹きとばしたら再アクティベートしないと使えなくなるよ」と警告してくれる。 再アクティベートは、デバイスと AppleID を紐付けしていれば WiFi なり有線接続でインターネット経由で行えるけど、紐付けしてないとどうなるんだろう? ストア持ち込み修理とかになるのかな。
ここまでやったら、一回メニューからシャットダウン。 電源長押しでブートメニュー出して、 macOS Ventura インストール用 USB メディアを選択する。
あとはいつもの通り、インストールを流せばオッケー。
Slack
AppStore からインストールして各ワークスペース順次追加とログインしていく。
ActiveDirectory や GoogleWorkspace によるドメイン管理をあえてやっていない組織、かつ参加 (運営) Workspace めっちゃ多いのでウオオッってなる。 toB だし、個別で多いのはしゃーない。
inkdrop
作業メモとかスニペット保存とか広くメモに使っているので。
ただ最近手順書を作ることが多く、ファイル添付したい、というニーズが生まれてきてけど inkdrop としてはサポートする予定はないよ、ということなので、以前挫折した Notion あたりに再移行を考えている。
タスク管理で trello 使ったりしているし、全部まとめたい気持ち。
個人開発でお金かかるのは理解できるんだけど、AppStore でアプリ公開されてない……と思ったら、いつのまにか公開されていた。 やるじゃん!
ブラウザ
以下をインストールする。 各種アカウントがあれば、ログイン設定してプロファイル同期しておく。
dotfile (不可視ファイル) の表示
terminal から以下を流せばオッケー。
$ defaults write com.apple.finder AppleShowAllFiles TRUE $ killall Finder
Google 日本語入力
Rosseta2 入れないと使えない? みたいな話があるので、クリーンインストールされたら確認する。
インストール時に「Rosetta2 インストールしろ」って促されたので入れた。
インストール後に IME の設定どこからやるんだ? と思ったけど、システム設定 > キーボード > テキスト入力 > 入力ソース から編集ボタンを押すと左ペインに現在の IME (ことえり) が表示される。 以前の macOS と同様に、左下にあるちっちぇえ +
-
で追加・削除が可能。
日本語からひらがな (Google)と、英語から英数(Google)を追加しておしまい。
ちなみに日本語を追加する際、キーボードレイアウトがありませんという表示で何も表示されないと思うけど、一旦他の言語なんでもいいので選んでから、再度日本語を選ぶと選択内容が表示されるようになる。
既存 IME (ことえり) は使用しないので削除したいけど、ABC (英数入力) が -
で削除できない。 調べた所、かな入力の項目で英数にチェックを入れた状態だと削除できるようになるので、その状態で ABC > かな入力の順で削除すれば良いとのことだった。
サードパーティアプリケーションのバックグラウンド動作
環境設定 > General > Login Items > Allow in the Background
Xcode, CommandLineTool
Xcode 自体は AppStore から、バージョン 14.0.1 だった。
Xcode CommandLineTool は以下。
xcode-select --install
homebrew
brew help でコマンド通ってればオッケーそう。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" echo '# Set PATH, MANPATH, etc., for Homebrew.' >> ~/.zprofile echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile eval "$(/opt/homebrew/bin/brew shellenv)" brew help
Formula (brewfile) 引き継ぎ
移行元で brewfile 作成
これでホームディレクトリ以下に brewfile
が生成される。
brew bundle dump
移行先で brewfile 復元
Airdrop かなにかで移行先環境のホームディレクトリ以下に brewfile
を配置する。
brew bundle
Intel -> M1 移行などでアーキテクチャ依存しておりインストールできないものはスキップされる。 gcc
とかコンパイラ系がほとんどのはず。
使ってるやつでだめだった一覧
brewfile はあとで github にでも。
Installing python@2 has failed! Skipping v8@3.15 (no bottle for Apple Silicon) Error: Cask 'font-hack-nerd-font' is unavailable: No Cask with this name exists. Installing font-hack-nerd-font has failed! Installing font-hack-nerd-font has failed! Homebrew Bundle failed! 2 Brewfile dependencies failed to install.
MySQL
使っている RDBMS を入れる。 アサインされているトコ、基本的に MySQL しか使わないのでとりあえずそれで。 必要なら PostgreSQL とか SQLite も。
brewfile に入ってるはずなので個別に実行しなくて大丈夫なはず。
brew install mysql
anyenv
Prezto 入れたあとにやったほうが面倒なくて良い。 入れないならそのまま実行する。
brew install anyenv anyenv init anyenv install --init anyenv init echo 'export PATH="$HOME/.anyenv/bin:$PATH"' >> ~/.zprofile echo 'eval "$(anyenv init -)"' >> ~/.zprofile
以下のように直接書いてもいい、prezto がファイル色々操作しているので、僕は手動で (特定のブロックに) 追加するようにしている。
~/.zprofile
# anyenv export PATH="$HOME/.anyenv/bin:$PATH" eval "$(anyenv init -)"
anyenv-update
brew から update するようにしたから不要か? と思ったけど、 anyenv 経由でインストールする **env
系を一括アップデートするのに便利だという事を思い出したので。
mkdir -p $(anyenv root)/plugins git clone https://github.com/znz/anyenv-update.git $(anyenv root)/plugins/anyenv-update
anyenv-update
うまくいくと、インストールした **env
含めてこんな感じに管理できる。
コマンドが見つかりません; command not found
手順足りなくてこんなんなってしまった。 前もなった気がするけどなんで? というのを備忘に。
/Users/donbulinux/.anyenv/plugins/anyenv-update/bin/anyenv-update: 行 219: tfenv: コマンドが見つかりません /Users/donbulinux/.anyenv/plugins/anyenv-update/bin/anyenv-update: 行 219: rbenv: コマンドが見つかりません /Users/donbulinux/.anyenv/plugins/anyenv-update/bin/anyenv-update: 行 219: nodenv: コマンドが見つかりません /Users/donbulinux/.anyenv/plugins/anyenv-update/bin/anyenv-update: 行 219: pyenv: コマンドが見つかりません
公式の brew 版の手順どおり init
実行したんだけど、これで anyenv インストールするとうまく行かない。
実際には zsh だと、 echo 'export PATH="$HOME/.anyenv/bin:$PATH"' >> ~/.zshrc
したあとに echo 'eval "$(anyenv init -)"' >> ~/.zshrc
を明示的に実行する必要がある。 上記の手順には反映してある。
PATH の追加だけ実行していたので、 anyenv の出力が悪いか見落としていたかどっちかだけど、過去にもやらかした記憶あるのであとで anyenv の標準出力を確認しとくか……。
rc, profile の違い
ちなみに ~/.zshrc
~/.zprofile
と微妙に違う (公式は .zshrc
) だけど、rc はユーザシェル起動時に毎回読み込まれる・ profile はログインシェル起動時に一度読み込まれる、とかだったはず。
思想的には個別の設定は rc に、という感じっぽいけど、個人的には全部 profile に書くで良いと思っている。 例えば ruby の whenever とかで cronjon 生成させるとわかるけど、 -l
でユーザのログインシェル明示的に利用する、みたいな記述されるので。 このあたりはインフラがメインだからという感じもあるので好き好きで。
rbenv
anyenv install rbenv
pyenv
anyenv install pyenv
nodenv
anyenv install nodenv
tfenv
anyenv install tfenv
Docker + Lima, Docker-compose
VirtualBox のインストール
なんか AppleSillicon 対応遅れてるし UTM でもいいかな? という気持ちある。
自分固有のあれそれ
VPN
急遽用意した社内 VPN サーバ (Softeather) を利用し続けているので、SSTP 接続しか提供していない。 ので以下のようにやる。
brew install sstp-client sudo /opt/homebrew/sbin/sstpc --log-stderr --cert-warn --user USERNAME --password PASSWORD REMOTE_HOST usepeerdns require-mschap-v2 noauth noipdefault defaultroute refuse-eap noccp --tls-ext
GUI (iSSTP) を使うならこっち。
おまけ
ゲートウェイに RTX1200 が存在するのでいずれリプレースしたいけど、作ったコンフィグで VPN セッションがグローバル向きに立たないので放置している。
NURO スタンダード契約しているんだけど、当時「技術的な質問もオッケーっすよ!」と言っていた営業が居なくなり、何もわからない新卒っぽい人が来たので詰んでいる。 YAMAHA のサポートにも連絡投げてみたけど返信は無いしで辛いワネ。
UDEV Gothic
ここ。
通常版と NerdFont 版ぜんぶ入れておく。
monaco 過激派だったけど、 Windows の HiDPI 環境で運用したらわりとよかったので合わせてみる。 Ricty はだいぶ助かったけどちょっと飽きちゃったな……。
VScode
以下からダウンロードする。
設定ファイルの移行
それぞれ以下のディレクトリをコピーすれば良いとのこと。
ワイの環境では User
ディレクトリの方が存在しなかった、これはユーザ独自のコンフィグ追加してる場合なのかな。 公式ドキュメント is どこ。
macOS | Windows |
---|---|
~/.vscode |
%USERPROFILE%\.vscode |
~/.config/Code/User |
%APPDATA%\Code\User |
フォント
'UDEV Gothic JPDOC'
を指定する、非 JPDOC 版との違いは公式にも書いてあるが以下。
iTerm2
brew 管理に切り替えた。 フォントは UDEV Gothic 35NF、通常版は文字サイズがちょっと狭かった。
brew install iterm2
Prezto
~/.zprofile
に homebrew の設定が書いてあるので、最後までコマンドを実行するとエラーになる。 これどうにかならんのかね。
git clone --recursive https://github.com/sorin-ionescu/prezto.git "${ZDOTDIR:-$HOME}/.zprezto" setopt EXTENDED_GLOB for rcfile in "${ZDOTDIR:-$HOME}"/.zprezto/runcoms/^README.md(.N); do ln -s "$rcfile" "${ZDOTDIR:-$HOME}/.${rcfile:t}" done
エラーになったとき
一度実行して .zprofile
を削除したあと実行したらこうなる。 これは参考。
donbulinux@donbulinuxnonotopasokon ~ % setopt EXTENDED_GLOB donbulinux@donbulinuxnonotopasokon ~ % for rcfile in "${ZDOTDIR:-$HOME}"/.zprezto/runcoms/^README.md(.N); do for> ln -s "$rcfile" "${ZDOTDIR:-$HOME}/.${rcfile:t}" for> done ln: /Users/donbulinux/.zlogin: File exists ln: /Users/donbulinux/.zlogout: File exists ln: /Users/donbulinux/.zpreztorc: File exists ln: /Users/donbulinux/.zshenv: File exists ln: /Users/donbulinux/.zshrc: File exists
exisits が出まくってるけど、これは前回の実行でファイルが作成されたから。 最終的に、以下のように対象 6 ファイルがシンボリックリンクになってれば多分成功している。
lrwxr-xr-x@ 1 donbulinux staff 41B 11 23 23:04 .zlogin -> /Users/donbulinux/.zprezto/runcoms/zlogin lrwxr-xr-x@ 1 donbulinux staff 42B 11 23 23:04 .zlogout -> /Users/donbulinux/.zprezto/runcoms/zlogout lrwxr-xr-x@ 1 donbulinux staff 44B 11 23 23:04 .zpreztorc -> /Users/donbulinux/.zprezto/runcoms/zpreztorc lrwxr-xr-x@ 1 donbulinux staff 43B 11 23 23:05 .zprofile -> /Users/donbulinux/.zprezto/runcoms/zprofile lrwxr-xr-x@ 1 donbulinux staff 41B 11 23 23:04 .zshenv -> /Users/donbulinux/.zprezto/runcoms/zshenv lrwxr-xr-x@ 1 donbulinux staff 40B 11 23 23:04 .zshrc -> /Users/donbulinux/.zprezto/runcoms/zshrc
zprofile の homebrew 用記述
もう一度同じコマンド実行してもいいし、以下の内容を追記してもどちらでも良いけど、実行しておくこと。
# Set PATH, MANPATH, etc., for Homebrew. eval "$(/opt/homebrew/bin/brew shellenv)"
Powerlevel10k
~/.zpreztorc
の最下行に以下を追加すればオッケー。
zstyle :prezto:module:prompt theme powerlevel10k
あとは保存して exec zsh
を実行すると、設定が始まって「プロセスの再起動してね!」と促されるので、再起動すると p10k configure
によるセットアップが始まる。 見た目とか、 NerdFont 系見えてるかの設定すね。 僕は最終的に以下のようになりました。
Office のインストール
Office365 のサブスクリプション配布されているので、Office365 > サインイン > マイアカウントと遷移して、右上のアプリをインストール > その他のインストール オプション > アプリとデバイス、の順番でインストーラーを取得する。
メーラー
Thunderbird を利用している。
職務上「野良の SMTP サーバを使ったり立てたり」みたいなのがわりと発生するので、 Gmail・Outlook だけ見てれば良いで完結しないのが辛いぜ……。
とりあえずウェブ版の Outlook, Gmail を利用している。
Kaspersky インターネットセキュリティ
話題沸騰のロシア生まれの緑のヤツ。
その他のプラットフォームを選択すると、Windows 以外の製品が見えるようになるので、記述時点では Version21 をダウンロードする。
Ventura 対応
以下の通り、10月上旬 (Ventura リリース前) には対応されてた。 ESET といい今回は早くない?
他社の製品でも問題になってた、アンチウィルス製品のフルディスクアクセス問題はその後 10 月下旬に対応されていた模様。
修正プログラム A - G (バージョン 21.1.0.150)
修正プログラム G
2022 年 10 月 28 日に修正プログラム G をリリースしました。
修正プログラム G では macOS をバージョン 13 にアップグレードした後のフルディスクアクセス ( FDA ) の問題を修正しました。詳細はこちらのサポートページを参照してください。
インストール方法 :
定義データベースをアップデート し、完了後に macOS を再起動します。 こちらのサポートページ に記載の手順で、製品のバージョンが記載されている画面を開きます。
修正プログラム G がインストールされると、[ 製品のバージョン ] の行に [ g ] の文字が表示されます。 修正プログラム F
2022 年 10 月 3 日に修正プログラム F をリリースしました。
macOS Ventura(バージョン 13)のサポートが追加されました。 アプリケーションの安定性を改善し、いくつかの小さな問題を修正しました。
M575S
広いディスプレイだとちょっと辛いので、M575S を利用する。 サポート 1 年の代わりに Amazon で 4980 円で出始めに買えたので、あとは使い潰したら買い替えたらいいよな、という気持ち。
ドライバは Logi Options+ の方をダウンロードする (前身の Logicool Options でもいいけど、他ハードウェアを Options+ で揃えたので)。
MX Ergo ラインのトラックボール、未だにレシーバーが Uniflying かつ USB-A なので、USB-C の選択肢を用意してくれねーかな。
zoom.us
AppStore にクライアントないな? と思ってたら、未だに URL での配布だった。
事業規模に対してやる気が……、という感じがしている。 コロナ鍋になった頃は未署名のクライアント配ってた気がするんだよなあ。