20260120ゼミ
参加者:momeemt.iconhiroqn.iconnatsukium.icon
Reference Manualを読む第3回bymomeemt.icon
https://slides.momee.mt/s/nixjp-semi-20260120/
lib.attrsets.genAttrs は flake のsystemを文字列から生成するのによく見るイメージ natsukium.icon
lib.attrsets.mapAttrs' キーも変えられるらしい
こういう ' って lib.getExe' にも使われてるけど規則みたいなのってあるんだろうか natsukium.icon
ここら辺は評価順序の問題が起きがちでdebugが大変になることがあるhiroqn.icon
辛いnatsukium.icon
recursiveUpdateと//は同時に使うと本当に大変な感じになるhiroqn.icon
関係ないけどアイコン変えないと natsukium.icon
attrsetのアップデート、結構想定通りにならなくて難しい
callFlake
https://github.com/divnix/call-flake 抜き出し版ですhiroqn.icon
これを使うとflake.nixをcodegenで生成したい時にちょっと便利hiroqn.icon
👀 momeemt.icon
flakeがnix言語でない話
https://github.com/NixOS/nix/issues/4945
へ〜 kakkun61.icon
IFD と lang2nix by natsukium.icon
https://natsukium-com-preview-64.tomoya-otabi.workers.dev/posts/2026-01-20-dynamic-derivations-ifd-and-lang2nix/
評価がシングルスレッドなのはどういう制約によるものなんだろう momeemt.icon
hiroqn.iconこれは多分(評価のマルチスレッド化が一般的に)難しいだけだと思います
なるほど momeemt.icon
ア、dotfilesをやっている時にk8sクラスタ向けの鍵を計算する部分がIFDになって困ったな momeemt.icon
具体的にどういう処理を書いたか覚えていないけど鍵の計算自体は問題ないはずなのに依存先がx86_64のみだったから上手くいかなかった
前回ちょっと書いたんですが buitins.fetchNpmPackageFromLockみたいなのをビルド時に増やすことはできるので、それで解決できなくはないんですよねhiroqn.icon
ただ、builtins拡張すること(--option plugin-files)を管理する仕組みがないので大変なんですが...hiroqn.icon
ソースコードを探索する by ryu_trifolium.icon
https://www.docswell.com/s/ryu_trifolium/5M6M9L-2026-01-20-210123
callPackages pattern最初全然わからなくてnixpkgs以外でパッケージをどうビルドすればいいのかわかってなかった natsukium.icon
package.withDependencies のようなイディオムはよく使われるので、batsみたいな小さなところから理解するのよさそうnatsukium.icon