Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
続・開発環境晒す会 ~ MacOS 編 ~ / kzrb_meetup#108
Search
muryoimpl
August 21, 2021
Programming
0
2.1k
続・開発環境晒す会 ~ MacOS 編 ~ / kzrb_meetup#108
Kanazawa.rb meetup #108
https://kzrb.doorkeeper.jp/events/125406
の LT 大会で発表したスライドです。
muryoimpl
August 21, 2021
Tweet
Share
More Decks by muryoimpl
See All by muryoimpl
人魚とたわむれる
muryoimpl
0
25
Kanzawa.rbのLT大会を支える技術の裏側を変更する Ruby on Rails + Litestream 編
muryoimpl
0
1.3k
Kanazawa.rb LT大会用/kzlt コマンドの説明 2024/01版
muryoimpl
0
3k
kzltコマンドの新たなソリューションについて
muryoimpl
0
2.9k
俺とTODOアプリ~Linearの変~
muryoimpl
0
2.5k
POSIX文字クラスでの躓き
muryoimpl
0
2.3k
/kzlt コマンドとは
muryoimpl
0
960
meetup.kzrb.org の更新を考える 事前激闘編
muryoimpl
0
1.6k
meetup.kzrb.org の更新を 考える ゆるふわ編
muryoimpl
0
1.5k
Other Decks in Programming
See All in Programming
PHPライセンス変更の議論を通じて学ぶOSSライセンスの基礎
matsuo_atsushi
0
170
社内オペレーション改善のためのTypeScript / TSKaigi Hokuriku 2025
dachi023
1
130
FlutterKaigi 2025 システム裏側
yumnumm
0
1.2k
例外処理を理解して、設計段階からエラーを見つけやすく、起こりにくく #phpconfuk
kajitack
12
6.4k
Vueで学ぶデータ構造入門 リンクリストとキューでリアクティビティを捉える / Vue Data Structures: Linked Lists and Queues for Reactivity
konkarin
1
340
『実践MLOps』から学ぶ DevOps for ML
nsakki55
2
470
詳細の決定を遅らせつつ実装を早くする
shimabox
2
1.3k
Promise.tryで実現する新しいエラーハンドリング New error handling with Promise try
bicstone
3
1.5k
予防に勝る防御なし(2025年版) - 堅牢なコードを導く様々な設計のヒント / Growing Reliable Code PHP Conference Fukuoka 2025
twada
PRO
40
13k
Building AI with AI
inesmontani
PRO
1
260
AIの弱点、やっぱりプログラミングは人間が(も)勉強しよう / YAPC AI and Programming
kishida
13
5.3k
仕様がそのままテストになる!Javaで始める振る舞い駆動開発
ohmori_yusuke
8
4.6k
Featured
See All Featured
A better future with KSS
kneath
239
18k
Faster Mobile Websites
deanohume
310
31k
Why Our Code Smells
bkeepers
PRO
340
57k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Speed Design
sergeychernyshev
33
1.2k
Balancing Empowerment & Direction
lara
5
760
Transcript
続・開発環境を晒す ~MacOS編~ 2021-08-21(Sat) Kanazawa.rb meetup #108 祝9周年 LT大会 - オンライン
muryoimpl
おしながき • 環境の概要 • ターミナル周りの設定・環境(環境ごとの分岐) • 追加した機器
• 石川県金沢市内の某所でひきこもってフルリモートワーク(変わらず) • お仕事では 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/ 環境の概要
ターミナル周りの設定・環境 • 設定はdotfiles は https://github.com/muryoimpl/dotfiles に保存して、ホーム ディレクトリにシンボリックリンクを作成して利用しています。(変わらず) • Mac は
Homebrew でパッケージ管理をします。 brew bundle dump --global --force で Brewfile に導入したパッケージのリストを同 期している。 • zsh、tmux、vimrc、symlink 用の Ruby ファイルには、環境特有の設定をする必要 があるため、いくつか分岐を追加しました。
Homebrew • Intel 版と Apple Silicon 版があり、ログインシェル とターミナルアプリがどちら向け にビルドされたものかでコンパイラがどちら向きのものか決まるっぽいので気をつ けろ!
◦ Alacritty が Intel 向けでハマったので、自分で Apple Silicon 向けにビルドしました。 • どちら向けのビルドか、ユニバーサルなのかによって環境構築の分岐のバリエー ションが増えているので、少し間違えると環境構築に時間かかりがち。 ◦ mitamae とか使って自動化したい。時間と実行環境を手配中。
zsh、tmux、vimrc、symlink.rb の分岐 • 各ファイル、OS ごとに使い分けたい値があるため、それぞれをそれぞれの方法で 分岐していく ◦ OS ごとに複数のファイルを持ちたくないよねー •
それでも分岐にはそれぞれの流儀があるので、手間ですねぇ ◦ 本当は OS の使い分けはしたくないのだけれども …そのちまちました作業が楽しかったり面倒だった りするのだ
シンボリックリンク作成用スクリプト irb で内容確認すると面白いかも
.zshrc は uname と if で分岐する
.tmux.conf は if-shell, uname と grep で分岐する
.virmc は uname で分岐する この分岐意味あるのかわかってないが、少 なくともLinux向けの設定ではMacでは動か なかった
追加した機器 • macOSユーザガイド 「Macで複数のディスプレイを使う」によると、外部ディスプレイ の接続対応数は 1 。 Apple さんは大画面ディスプレイを 1
つだけ接続するというスタイル推し。 • 私は複数枚使いたかったので、DisplayLink 対応のドックを購入した。 WAVLINK: WL-UG69DK1-A https://www.amazon.co.jp/gp/product/B0832ZR493/ DisplayLink Manager.app を入れると複数枚のディスプレイに対応できる。 • ただし、DisplayLinkはディスプレイの縦置き表示には対応していない様子。 ◦ 対応が待たれる。ディスプレイが 1 枚生きながらに死んでるのよ …
None
OSごとに設定分岐できるの便利!! 以上