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
2
410
dotfiles について話したい #湘なんか
湘.なんか #1 - connpass
https://shonanpm.connpass.com/event/321325/
で話した時の資料です。
すてにゃん
August 24, 2024
Tweet
Share
More Decks by すてにゃん
See All by すてにゃん
小田原でみんなで一句詠みたいな #phpcon_odawara
stefafafan
0
350
意義から考えるObservability入門 #srenext
stefafafan
2
1.2k
高橋メソッド風の発表を生成するCLIツールをPHPで作った #phpcon_odawara
stefafafan
1
1k
令和最新版 ソフトウェアエンジニアのためのDJ入門、あるいはDJに学ぶ仕事術 #ya8
stefafafan
2
590
一番やさしいDJ入門 2024
stefafafan
6
2k
『Goサブ会』によるチームを超えた知見展開、あるいは hatena.go に対する期待 #hatenago
stefafafan
0
2k
開発チーム横断タスクフォース 「Goサブ会」の 運用事例と今後の展望
stefafafan
0
820
Team Topologies輪読会とScrapboxの活用
stefafafan
1
310
Deployment Previewを用意する流れで学んだ良い仕事の進め方
stefafafan
0
1.3k
Other Decks in Programming
See All in Programming
複雑なフォームの jotai 設計 / Designing jotai(state) for Complex Forms #layerx_frontend
izumin5210
4
1.2k
iOSアプリで測る!名古屋駅までの 方向と距離
ryunakayama
0
130
Building Scalable Mobile Projects: Fast Builds, High Reusability and Clear Ownership
cyrilmottier
2
310
Unlock the Potential of Swift Code Generation
rockname
0
270
エンジニア向けCursor勉強会 @ SmartHR
yukisnow1823
2
7.8k
七輪ライブラリー: Claude AI で作る Next.js アプリ
suneo3476
1
130
PHP で学ぶ OAuth 入門
azuki
1
210
カオスに立ち向かう小規模チームの装備の選択〜フルスタックTSという装備の強み _ 弱み〜/Choosing equipment for a small team facing chaos ~ Strengths and weaknesses of full-stack TS~
bitkey
1
110
The Implementations of Advanced LR Parser Algorithm
junk0612
1
810
「理解」を重視したAI活用開発
fast_doctor
0
210
GitHub Copilot for Azureを使い倒したい
ymd65536
1
200
KawaiiLT 登壇資料 キャリアとモチベーション
hiiragi
0
150
Featured
See All Featured
Fireside Chat
paigeccino
37
3.4k
Into the Great Unknown - MozCon
thekraken
38
1.7k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
GraphQLとの向き合い方2022年版
quramy
46
14k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
52
2.4k
Embracing the Ebb and Flow
colly
85
4.7k
How STYLIGHT went responsive
nonsquared
100
5.5k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
41
2.3k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
13
1.4k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.2k
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ʹߘͯ͠Β͑ͨΒΈʹߦ͖·͢