forked from pub-solar/os
teutat3s
1f2ba895a0
Especially some XDG_* env vars polluted other users environment when set globally
57 lines
1.2 KiB
Nix
57 lines
1.2 KiB
Nix
{ lib, config, pkgs, self, ... }:
|
|
with lib;
|
|
let
|
|
psCfg = config.pub-solar;
|
|
cfg = config.pub-solar.terminal-life;
|
|
in
|
|
{
|
|
options.pub-solar.terminal-life = {
|
|
enable = mkEnableOption "Life in black and white";
|
|
|
|
lite = mkOption {
|
|
description = ''
|
|
Enable a lite edition of terminal-life with less modules and a reduced package set.
|
|
'';
|
|
default = false;
|
|
type = types.bool;
|
|
};
|
|
};
|
|
|
|
config = mkIf cfg.enable {
|
|
programs.command-not-found.enable = false;
|
|
|
|
# Needed to get zsh completion for system packages (e.g. systemd).
|
|
environment.pathsToLink = [ "/share/zsh" ];
|
|
|
|
environment.shells = with pkgs; [
|
|
zsh
|
|
];
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
ack
|
|
bat
|
|
exa
|
|
fd
|
|
neovim
|
|
screen
|
|
];
|
|
|
|
home-manager = with pkgs; pkgs.lib.setAttrByPath [ "users" psCfg.user.name ] {
|
|
home.packages = [
|
|
asciinema
|
|
gh
|
|
glow
|
|
nnn
|
|
powerline
|
|
silver-searcher
|
|
vifm
|
|
watson
|
|
];
|
|
|
|
programs.neovim = import ./nvim { inherit config; inherit pkgs; };
|
|
programs.fzf = import ./fzf { inherit config; inherit pkgs; };
|
|
programs.zsh = import ./zsh { inherit config; inherit pkgs; inherit self; };
|
|
};
|
|
};
|
|
}
|