Uso Avançado do Nixpkgs
callPackage
, Overriding
e Overlays
são as técnicas ocasionalmente usadas no Nix para customizar o método de build de pacotes Nix.
Sabemos que muitos programas têm um grande número de parâmetros de build que precisam ser configurados, e diferentes usuários podem querer usar diferentes parâmetros de build. É aqui que o Overriding
e os Overlays
são úteis. Deixe-me dar alguns exemplos que encontrei:
fcitx5-rime.nix
: Por padrão, ofcitx5-rime
usarime-data
como o valor derimeDataPkgs
, mas este parâmetro pode ser customizado poroverride
.vscode/with-extensions.nix
: Este pacote para o VS Code também pode ser customizado sobrescrevendo o valor devscodeExtensions
, Assim, podemos instalar alguns plugins customizados no VS Code.nix-vscode-extensions
: Este é um gerenciador de plugins do VS Code implementado através da sobrescrita devscodeExtensions
.
firefox/common.nix
: O Firefox também tem muitos parâmetros personalizáveis.- ...
Em suma, callPackage
, Overriding
e Overlays
podem ser usados para customizar os parâmetros de build de pacotes Nix.