1
1
+++
2
- title = " Nix入門入門とTips "
3
- date = 2024-12-12
4
- description = " Nixの入門に入門するのとTips "
2
+ title = " NixのTips "
3
+ date = 2024-12-21
4
+ description = " NixのTips "
5
5
6
6
[extra ]
7
7
comment = true
8
8
9
9
[taxonomies ]
10
10
tags = [" Nix" , " NixOS" ]
11
11
+++
12
+
13
+ この記事は[ Nix Advent Calendar] ( https://adventar.org/calendars/10086 ) の21日目の記事です。
14
+
15
+ ---
16
+
17
+ もともとはコード例をまじえたチュートリアル的な記事にしようとおもったのですが、結局うまくまとまらなかったためちょっとしたTipsの記事になりました。
18
+
12
19
# Tips
13
20
14
21
いろいろ書いているので、自分に関係ないなと感じたものは適当に読みとばしてください。
@@ -27,6 +34,8 @@ GitHubの検索機能を使う方法です。`repo:NixOS/nixpkgs `をつけて
27
34
28
35
さらにパッケージ関連で困っているときはパッケージ名などでIssueを検索すると良いと思います。
29
36
37
+ この方法はかなり強力なので困ったら一旦これを使っています。
38
+
30
39
### パッケージとオプション
31
40
32
41
- [ Home Managerのオプションの検索] ( https://home-manager-options.extranix.com/ )
@@ -35,7 +44,7 @@ GitHubの検索機能を使う方法です。`repo:NixOS/nixpkgs `をつけて
35
44
36
45
### [ Noogle] ( https://noogle.dev/ )
37
46
38
- Nixには[ Noogle] ( https://noogle.dev/ ) というものがあり、HaskellのHoogleと同じような感覚でnixpkgsのライブラリと標準(` builtins ` )を検索できます 。
47
+ Nixには[ Noogle] ( https://noogle.dev/ ) というものがあり、HaskellのHoogleと同じような感覚でnixpkgsのライブラリと標準(` builtins ` )の関数を検索できます 。
39
48
40
49
## [ Nixpkgs Pull Request Tracker] ( https://nixpk.gs/pr-tracker.html )
41
50
@@ -47,7 +56,7 @@ nixpkgsには複数のブランチがあり、それぞれどの程度安定し
47
56
- ` release-<version> `
48
57
- ` <version> ` にはリリースのバージョンが入ります。 ` yy.mm ` の形になっていて毎年5月と11月にリリースされます。記事投稿時の最新は ` 24.11 ` です。
49
58
50
- [ NixOSを使い始めた] ( /blog/kick-started-with-nixos ) にも少し書きましたが、修正はnixpkgsに対してPull Request(以下PR)が作成されまず、 ` master ` にマージされます。そのあとテストやビルドが実行され ` nixos-unstable-small ` 、 ` nixos-unstable ` や ` nixpkgs-unstable ` にマージされます。` release-<version> ` にはPRがバックポートするPRに指定されないとマージされません。
59
+ [ NixOSを使い始めた] ( /blog/kick-started-with-nixos ) にも少し書きましたが、修正はnixpkgsに対してPull Request(以下PR)が作成され、まず ` master ` にマージされます。そのあとテストやビルドが実行され ` nixos-unstable-small ` 、 ` nixos-unstable ` や ` nixpkgs-unstable ` にマージされます。` release-<version> ` にはPRがバックポートするPRに指定されないとマージされません。
51
60
52
61
テストなどを実行するため、 ` master ` にマージされてから他のブランチにマージされるまでにはラグがあります。そこでPRがどこまで進んでいるのかを確認するためにこのツールが使えます。問題を修正するPRがマージされているのに手元では修正されない場合に確認してみてください。
53
62
@@ -62,7 +71,7 @@ nixpkgsは基本的にパッケージごとに個別のバージョンを指定
62
71
なにもしていない場合、 ` nix develop ` のシェルにはbashが使われます。しかし、nix-your-shellを使えば好みの別のシェルも使えるようになります。
63
72
64
73
nix-your-shellはnixpkgsに ` nix-your-shell ` としてパッケージされています。インストールできたら、シェルのプロファイルに起動するためのスクリプトを追記する必要があります。
65
- 例えばzshなら以下ですが他のシェルについては [ プロジェクトのReadMe ] ( https://github.com/MercuryTechnologies/nix-your-shell#usage ) を確認してください。
74
+ 例えばzshなら以下ですが他のシェルについては [ プロジェクトのREADME ] ( https://github.com/MercuryTechnologies/nix-your-shell#usage ) を確認してください。
66
75
67
76
``` shell
68
77
if command -v nix-your-shell > /dev/null; then
91
100
# 言語ごとの話
92
101
93
102
ロックファイルが生成される言語またはパッケージマネージャーを使っているあなたは幸運です。すでにNixでのビルドをサポートするための何らかのツールが作られている可能性が高いです。[ awesome-nixのプログラミング言語別の章] ( < https://github.com/nix-community/awesome-nix?tab=readme-ov-file#programming-languages > ) を見に行ってみましょう。
103
+
104
+ # おわりに
105
+
106
+ Tipsの共有は大事なのでぜひみなさんも記事を書いてみてください!自分もいつか入門記事を書きます(多分)。
107
+
108
+ 最近 [ nix-jaのCosense] ( https://scrapbox.io/nix-ja ) ができたのでそこにも書きます(多分)。
109
+
0 commit comments