vidéo peertube - vidéo youtube - dépôt git
Configuration utilisateur avec Nix (paquets, vim…)
comment faire une configuration utilisateur avec Nix (installer/configurer des paquets, configurer vim…)
Gérer les paquets “à la main”
- installer un paquet :
- lister les paquets installés :
- enlever un paquet :
Gérer les paquets avec un config.nix
- écrire paquet dédié dans un fichier
~/.config/nixpkgs/config.nix
:
{
packageOverrides = pkgs: with pkgs; rec {
myPackages = pkgs.buildEnv {
name = "myPackages";
paths = [
firefox
vlc
# ...
];
};
};
}
- installer le paquet dédié :
Paramétrer un paquet (par exemple nano)
On peut modifier des options de compilation de certains paquets.
voir les définitions des paquets pour les options : https://nixos.org/nixos/packages.html
spécifier les options voulues dans le
~/.config/nixpkgs/config.nix
{
packageOverrides = pkgs: with pkgs; rec {
_nano = pkgs.nano.override { enableNls = false; };
myPackages = pkgs.buildEnv {
name = "myPackages";
paths = [
_nano
# ...
];
};
};
}
- (ré)installer le paquet correspondant
Configurer vim
Certains logiciels, comme vim, peuvent être configurés avec Nix (configuration, plugins…).
- écrire la configuration dans un fichier
~/.nixpkgs/vim.nix
:
{pkgs}:
pkgs.vim_configurable.customize {
name = "vim";
vimrcConfig.customRC = ''
set number
# ...
'';
vimrcConfig.packages.myVimPackage = with pkgs.vimPlugins; {
start = [
youcompleteme
# ...
];
};
}
- importer le fichier dans le
~/.nixpkgs/config.nix
:
{
packageOverrides = pkgs: with pkgs; rec {
_vim = import ./vim.nix { inherit pkgs; };
myPackages = pkgs.buildEnv {
name = "myPackages";
paths = [
_vim
# ...
];
};
};
}
- (ré)installer le paquet correspondant