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
230
GitHub Copilot CLI の Rubber Duck 機能を使ってコーディングの品質をあげよう #techbaton_findy
stefafafan
2
1.5k
サプライチェーン攻撃への備えについて考えている #湘なんか
stefafafan
3
3k
サービスの信頼性を高めるため、形骸化した「プロダクションミーティング」を立て直すまでの取り組み
stefafafan
1
370
「お金で解決」が全てではない!大規模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
Built Our Own Background Agent at LayerX #aidevex_findy
layerx
PRO
9
3.6k
Terraform標準の組織で AWS CDKをどう使うか
mu7889yoon
1
390
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
420
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
260
AI時代の仕事技芸論〜ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ(スクフェス仙台 2026バージョン)
kuranuki
0
730
AI がコードを書く時代における新卒エンジニアの仕事風景 (2026) / New Graduate Engineers in the Era of AI Coding (2026)
sushichan044
0
240
PHP に部分適用が来るぞ!……ところで何それ?おいしいの? #phpcon / phpcon-2026
shogogg
0
400
PHP初心者セッション2026 〜生成AIでは見えない裏側を知る:今だからLAMPを通して仕組みを学ぶ〜
kashioka
0
710
「正の参照」と 「負の導出」で組む ハーネスエンジニアリング
cottpan
1
150
そこに3びきプロダクトがいるじゃろう——生成AI時代における“価値が届かない理由”の構造
kosuket
0
220
2年かけて Deno に DOMMatrix を実装した話 / How I implemented DOMMatrix in Deno over two years
petamoriken
0
180
AI時代、エンジニアはどう育つのか -未経験エンジニアの成長を間近で見て考えたこと-
thasu0123
0
180
Featured
See All Featured
Statistics for Hackers
jakevdp
799
230k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
470
Designing for Timeless Needs
cassininazir
1
410
Paper Plane
katiecoart
PRO
2
52k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Designing Experiences People Love
moore
143
24k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.7k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
330
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.5k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Odyssey Design
rkendrick25
PRO
2
730
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
610
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ʹߘͯ͠Β͑ͨΒΈʹߦ͖·͢