2017-12-30 36 views
1

Der Standardwert für programs.zsh.shellAliases istWie wird den Standardwert für ein Attribut in NixOS gesetzt zu verwenden, und es

{ l = "ls -alh"; ll = "ls -l"; ls = "ls --color=tty"; } 

verlängern, das ist schön.

Ich mag das Attribut erweitern Set mit

{ xclip = "xclip -selection clipboard"; paste = "xclip -out"; } 

Ich weiß, ich fusionieren kann Attribut-Sets mit // und, weil ich die Standard-weiß, ich kann nur aufschreiben explizit mein gewünschtes Attribut gesetzt.

Aber ist es möglich, den Standard zu halten und es so erweitern:

programs.zsh.shellAliases = [default] // { ... }; 

?

Antwort

2

Der Standardwert ist in options.programs.zsh.shellAliases.default verfügbar.

Sie können mit ihm in nix-repl rumspielen:

nix-repl> (import <nixpkgs/nixos> { configuration = {lib, options, ...}: { config.programs.zsh.shellAliases = options.programs.zsh.shellAliases.default // { xclip = "xclip -selection clipboard"; paste = "xclip -out"; }; }; }).config.programs.zsh.shellAliases 
{ l = "ls -alh"; ll = "ls -l"; ls = "ls --color=tty"; paste = "xclip -out"; xclip = "xclip -selection clipboard"; } 
+0

I „Optionen“ auf der Parameterliste auf meinem 'configuration.nix' hinzugefügt und es funktioniert. –

Verwandte Themen