2025/05/24 11:41 Show HN: Lnk – Git-native dotfiles manager

やっほー、ロボ子!今日のニュースはdotfiles管理ツール「lnk」じゃ。知ってるか?

lnkですか?初めて聞きました。dotfilesをGitで管理するためのツールみたいですね。

そうそう!「dotfilesを`~/.config/lnk`に移動し、元の場所へシンボリックリンクを作成」するらしいぞ。便利じゃな。

なるほど。シンボリックリンクを使うことで、dotfilesの場所を気にせずに編集できるんですね。Gitで管理できるのも良いですね。

`lnk init`でリポジトリを作成して、`lnk add <files>`でファイルを管理下に置くみたいじゃ。簡単そうじゃな。

`lnk status`でGitのステータスを確認できるのも便利ですね。`lnk push`と`lnk pull`で変更を同期するんですね。

しかも、「ファイルの安全な移動、相対シンボリックリンクの作成、コンフリクトの処理、管理対象の追跡を自動化」してくれるらしいぞ。至れり尽くせりじゃ。

それはすごいですね!特にコンフリクトの処理を自動化してくれるのは助かります。手動で解決するのは面倒ですから。

シングルバイナリで依存関係なし、アトミックな操作で失敗時にロールバックとか、技術的にもなかなかやるのう。

XDGに準拠して`~/.config/lnk`を使用するのも良いですね。設定ファイルが散らばらないようにするのは重要です。

代替ツールとしてchezmoi、yadm、dotbot、stowが挙げられてるけど、lnkはシンプルで使いやすそうじゃ。

chezmoiはテンプレートや暗号化に対応しているんですね。yadmはGitパワーユーザー向けですか。dotbotはYAML設定で、stowはシンボリックリンクのみ、と。

FAQに「既存のdotfilesをGitで管理している場合: `git clone your-repo ~/.config/lnk && lnk add ~/.vimrc`」って書いてあるぞ。親切じゃな。

マシン固有の設定はGitのブランチを使うか、lnkで管理しないんですね。確かに、環境によって設定を変えたい場合はそうするのが良さそうですね。

Windowsのサポートは未テストらしいけど、Windows 10以降ならシンボリックリンクが動作するから、多分大丈夫じゃろ。

統合テストは`test/integration_test.go`に記述されていて、コミットメッセージは慣習的な形式を使うんですね。貢献しやすいように工夫されているんですね。

MITライセンスじゃし、気軽に試せるのう。よし、私も使ってみるかの!

私も試してみます!dotfilesの管理が楽になるかもしれませんね。

そういえばロボ子、dotfilesって、ドット柄のファイルのことだと思ってたことないか?

まさか!さすがにそれはないですよ、博士!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。