Slide 1

Slide 1 text

続・開発環境を晒す ~MacOS編~ 2021-08-21(Sat) Kanazawa.rb meetup #108 祝9周年 LT大会 - オンライン muryoimpl

Slide 2

Slide 2 text

おしながき ● 環境の概要 ● ターミナル周りの設定・環境(環境ごとの分岐) ● 追加した機器

Slide 3

Slide 3 text

● 石川県金沢市内の某所でひきこもってフルリモートワーク(変わらず) ● お仕事では M1 Mac を使うことになりました。 ● デスクトップでは、yabai というTiling window manager を使います。 ○ https://github.com/koekeishiya/yabai ○ キーバインディングは、できるだけ Linux 側の Window manager に寄せてみている ● その他の環境は前回の発表を参照のこと ○ https://muryoimpl.com/blog/2021-07-18/participated-in-kzrb-meetup-107/ 環境の概要

Slide 4

Slide 4 text

ターミナル周りの設定・環境 ● 設定はdotfiles は https://github.com/muryoimpl/dotfiles に保存して、ホーム ディレクトリにシンボリックリンクを作成して利用しています。(変わらず) ● Mac は Homebrew でパッケージ管理をします。 brew bundle dump --global --force で Brewfile に導入したパッケージのリストを同 期している。 ● zsh、tmux、vimrc、symlink 用の Ruby ファイルには、環境特有の設定をする必要 があるため、いくつか分岐を追加しました。

Slide 5

Slide 5 text

Homebrew ● Intel 版と Apple Silicon 版があり、ログインシェル とターミナルアプリがどちら向け にビルドされたものかでコンパイラがどちら向きのものか決まるっぽいので気をつ けろ! ○ Alacritty が Intel 向けでハマったので、自分で Apple Silicon 向けにビルドしました。 ● どちら向けのビルドか、ユニバーサルなのかによって環境構築の分岐のバリエー ションが増えているので、少し間違えると環境構築に時間かかりがち。 ○ mitamae とか使って自動化したい。時間と実行環境を手配中。

Slide 6

Slide 6 text

zsh、tmux、vimrc、symlink.rb の分岐 ● 各ファイル、OS ごとに使い分けたい値があるため、それぞれをそれぞれの方法で 分岐していく ○ OS ごとに複数のファイルを持ちたくないよねー ● それでも分岐にはそれぞれの流儀があるので、手間ですねぇ ○ 本当は OS の使い分けはしたくないのだけれども …そのちまちました作業が楽しかったり面倒だった りするのだ

Slide 7

Slide 7 text

シンボリックリンク作成用スクリプト irb で内容確認すると面白いかも

Slide 8

Slide 8 text

.zshrc は uname と if で分岐する

Slide 9

Slide 9 text

.tmux.conf は if-shell, uname と grep で分岐する

Slide 10

Slide 10 text

.virmc は uname で分岐する この分岐意味あるのかわかってないが、少 なくともLinux向けの設定ではMacでは動か なかった

Slide 11

Slide 11 text

追加した機器 ● macOSユーザガイド 「Macで複数のディスプレイを使う」によると、外部ディスプレイ の接続対応数は 1 。 Apple さんは大画面ディスプレイを 1 つだけ接続するというスタイル推し。 ● 私は複数枚使いたかったので、DisplayLink 対応のドックを購入した。 WAVLINK: WL-UG69DK1-A https://www.amazon.co.jp/gp/product/B0832ZR493/ DisplayLink Manager.app を入れると複数枚のディスプレイに対応できる。 ● ただし、DisplayLinkはディスプレイの縦置き表示には対応していない様子。 ○ 対応が待たれる。ディスプレイが 1 枚生きながらに死んでるのよ …

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

OSごとに設定分岐できるの便利!! 以上