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
dotfiles について話したい #湘なんか
Search
すてにゃん
August 24, 2024
Programming
530
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
dotfiles について話したい #湘なんか
湘.なんか #1 - connpass
https://shonanpm.connpass.com/event/321325/
で話した時の資料です。
すてにゃん
August 24, 2024
More Decks by すてにゃん
See All by すてにゃん
10年間のブログ発信を振り返って見えたWebアプリケーションエンジニアとしての軌跡
stefafafan
0
240
GitHub Copilot CLI の Rubber Duck 機能を使ってコーディングの品質をあげよう #techbaton_findy
stefafafan
2
1.5k
サプライチェーン攻撃への備えについて考えている #湘なんか
stefafafan
3
3.4k
サービスの信頼性を高めるため、形骸化した「プロダクションミーティング」を立て直すまでの取り組み
stefafafan
1
380
「お金で解決」が全てではない!大規模WebアプリのCI高速化 #phperkaigi
stefafafan
6
3.1k
急成長を支える基盤作り〜地道な改善からコツコツと〜 #cre_meetup
stefafafan
0
4.7k
小田原でみんなで一句詠みたいな #phpcon_odawara
stefafafan
0
2.1k
意義から考えるObservability入門 #srenext
stefafafan
2
1.6k
高橋メソッド風の発表を生成するCLIツールをPHPで作った #phpcon_odawara
stefafafan
1
1.7k
Other Decks in Programming
See All in Programming
Japan Community Day at Kubecon + CloudNativeCon Japan 2026: Learning Container Privilege Control by Building My Own Low-Level Container Runtime
ternbusty
1
150
PHP に部分適用が来るぞ!……ところで何それ?おいしいの? #phpcon / phpcon-2026
shogogg
0
610
2年かけて Deno に DOMMatrix を実装した話 / How I implemented DOMMatrix in Deno over two years
petamoriken
0
210
Detecting Compromised CI with eBPF and Cilium Tetragon
lizrice
0
170
Cloudflare is Agents
chimame
0
150
仕様駆動開発の消費期限
watany
18
7.6k
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
18k
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
4
1.9k
AIが無かった頃の素敵な出会いの話
codmoninc
1
400
freee が目指す データ マネジメント戦略 AI-Ready 時代を支える 攻めのガバナンスとは
freee
PRO
0
320
AI Readyの正体はデータマネジメントだ メダリオン2.0の最前線
freee
PRO
0
130
言葉の格闘技のススメ~紙とペンと言葉から始める、キャリアの描き方~
progresscicada
2
140
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
RailsConf 2023
tenderlove
30
1.5k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
260
WCS-LA-2024
lcolladotor
0
790
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
200
My Coaching Mixtape
mlcsv
0
210
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Scaling GitHub
holman
464
140k
The untapped power of vector embeddings
frankvandijk
2
1.8k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
490
Transcript
dot fi les ʹ͍͍ͭͯͨ͠ ͯ͢ʹΌΜ (id:stefafafan / @stefafafan) 2024/08/24 ভ.ͳΜ͔
#1
͡Ί·ͯ͠ • ͯ͢ʹΌΜͱݴ͍·͢ • 2024/4 ~ גࣜձࣾΧέϋγͰιϑτΣΞΤϯδχΞͬͯ·͢ @stefafafan
ভ.ͳΜ͔
.ͳΜ͔
dotnanka
dotnanka ͬͯ dot fi les ͱࣅͯͶ?
dot fi les ͷΛ͠·͢ʂ
͓͞Β͍ - dot fi les ͱԿ͔ • .gitcon fi g
ͱ͔ .bashrc ͱ͔ .vimrc ͱ͔ɺʮdotʯͰ࢝·ΔઃఆϑΝΠ ϧ܈ͷ͜ͱΛ·ͱΊͯʮdot fi lesʯͱݺͿ • ࣗͷखݩڥͷηοτΞοϓɺ։ൃνʔϜͷ։ൃڥηοτΞο ϓͳͲͷͨΊʹ͜͏͍͏ઃఆϑΝΠϧΛཧɾڞ༗͢Δͱศར
ࢲͷ߹ • ͜Ε·Ͱ·ͱʹ dot fi les Λӡ༻ͯ͜͠ͳ͔ͬͨ • ʮ৽͍͠MacΛηοτΞοϓ͢ΔͨͼʹλʔϛφϧͷηοτΞοϓɺ Α͘͏ΞϓϦέʔγϣϯͷΠϯετʔϧɺࡉʑͨ͠ઃఆͷௐ͕໘
ͩͳʯͱͬͱʂࢥ͍࢝Ίͨ • →ॏ͍ࠊΛ্͛ͯཧΛ։࢝
GitHub ʹ stefafafan/dot fi les Λ࡞ • https://github.com/stefafafan/dot fi les
• Ҏલ·Ͱ gitcon fi g ͔͠ஔ͍ͯͳ͔͚ͬͨͲɺͬͱ৭ʑى͖࢝Ί ͨͷ͕͜͜Ұिؒ • dot fi lesୡਓͷΈͳ͞Μ͔ΒݟΛಘ͍ͨʂ • ʮ͜Ε͕ࢲͷdot fi lesͰ͢ʯͱXʹϙετ͍ͯͩ͘͠͞
dot fi lesͰԿΛཧ͢Δͷ͔
dot fi lesͰԿΛཧ͢Δͷ͔ • ڀۃతʹGitHubͷϦϙδτϦͷREADMEʹैͬͨΒηοτΞοϓ ͕શʹऴΘΔঢ়ଶʹ͍ͨ͠ • ͰԿΛཧ͢Δͷ͔ʁશ෦ʁ • બఆج४Կʁ
• →ۓٸΞϯέʔτ͠·͢
dot fi lesཧ͍ͯ͠Δਓʁ • ཧ͍ͯ͠Δ • ཧ͍ͯ͠ͳ͍ • (ଠจࣈࢲͷબͰ͢)
ରOSԿʁ • Linux • Mac • Windows • ͦͷ΄͔ •
ෳOSʹରԠ͍ͯ͠Δ
ύοέʔδͷཧ • Homebrew • Nugetͱ͔ • yum, apt, pacman ͳͲ
λʔϛφϧΤϛϡϨʔλʔ (Macલఏ) • Terminal.app • iTerm2 • Warp • Alacritty
• WezTerm • Hyper
γΣϧ • bash • zsh • fi sh • ksh
• nushell • ͦͷ΄͔
ΩϦ͕ͳ͍……ʂ • ଞʹΤσΟλͷઃఆɺλʔϛφϧϚϧνϓϨΫαͷઃఆɺγΣϧͷ ϓϥάΠϯͷઃఆɺλʔϛφϧͷϓϩϯϓτͳͲͷઃఆɺศརγΣϧ εΫϦϓτπʔϧ܈ͳͲஔ͚Δ • Ԟ͕ਂ͍..
dot fi lesͷཧํ๏
ͦ͏͍͑dot fi lesͷཧํ๏Ͳ͏͢Ε • ࢲ https://www.chezmoi.io/ Λ͍࢝Ίͨ • ಡΈํ shay-moi
• GoɺγϯάϧόΠφϦͷπʔϧ • dot fi lesγϯϘϦοΫϦϯΫͰͳ͘ϑΝΠϧͱͯ͠ཧ
chezmoi ͷ͍ํ - ηοτΞοϓ • chezmoi init • chezmoi add
~/.bashrc • chezmoi cd && git add . && git commit -m “foobar” && git push • →खݩͷ ~/.bashrc ΛpushͰ͖ͨ
chezmoi ͷ͍ํ - ଞϚγϯͷద༻ • sh -c "$(curl -fsLS get.chezmoi.io)"
-- init --apply $GITHUB_USERNAME • chezmoi ΠϯετʔϧࡁΈͷ߹ • chezmoi init —apply $GITHUB_USERNAME • ݸਓతʹηοτΞοϓ࣌ʹ get.chezmoi.io ͷΑ͏ͳυϝΠϯΛ͏ ͷ͕Ͳ͜·Ͱ৴༻Ͱ͖Δͷ͔एׯෆ҆ͳؾ͢Δ
Homebrewύοέʔδͷཧ • Brew fi le Λ༻ҙ͢ΕϚγϯΛލ͍Ͱ͍͍ײ͡ʹཧ͍͢͠ • ࢀߟ: Brew fi
le Ͱ Homebrew ͷϥΠϒϥϦΛཧ͠Α͏ʂ https:// kakakakakku.hatenablog.com/entry/2020/09/17/124653
Brew fi le ͷ͍ํ • brew bundle dump • →
Brew fi le͕Ͱ͖ΔͷͰதΛదʹௐͯ͠ίϛοτ • ଞϚγϯͰ brew bundle • Brew fi leʹ͋Δύοέʔδ͕Πϯετʔϧ͞ΕΔ • https://github.com/stefafafan/dot fi les/blob/main/Brew fi le
ػີใͷཧ͕ؾʹͳΔ
ػີใͲ͏͢Δʁ • dot fi lesͰཧ͠ͳ͍? • “ͳΜ͔͍͍ײ͡ʹ͢Δ”? • →Ͳ͏͍͏͜ͱʁ
ػີใͲ͏͢Δʁ - chezmoiฤ • chezmoi͞·͟·ͳPassword managerͱͷ࿈ܞʹରԠ͍ͯ͠Δ • https://www.chezmoi.io/user-guide/password-managers/ • ྫ͑
1Password ͷ CLI ͔Β伴ͷΛऔಘ͢ΔɺΈ͍ͨͳ͜ͱ͕Ͱ͖Δ • ࢀߟ: https://zenn.dev/ryo_kawamata/articles/introduce- chezmoi#1passwordΛར༻ͨ͠ηΩϡΞͳཧ • AWS Secrets Manager, MacOSͷKeychainͳͲʹରԠ͍ͯ͠·͢
·ͱΊ • dot fi lesΛཧ͢Δͱ৽͍͠ϚγϯͷηοτΞοϓνʔϜͱڞ௨ͷ ઃఆΛڞ༗͢Δ͜ͱ͕Ͱ͖ͯศར • chezmoiΛ͏ͱ؆୯ʹཧͰ͖Δ͠ɺػີใ্ख͘࿈ܞͰ͖Δ • Έͳ͞Μͷdot
fi lesݟΛڭ͍͑ͯͩ͘͞ • Xʹߘͯ͠Β͑ͨΒΈʹߦ͖·͢