os/modules/terminal-life/default.nix

76 lines
1.5 KiB
Nix
Raw Normal View History

2023-01-28 20:49:10 +00:00
{
lib,
config,
pkgs,
self,
...
}:
with lib; let
2021-05-30 19:10:28 +00:00
psCfg = config.pub-solar;
cfg = config.pub-solar.terminal-life;
2023-01-28 20:49:10 +00:00
in {
2021-05-30 19:10:28 +00:00
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;
};
2021-05-30 19:10:28 +00:00
};
config = mkIf cfg.enable {
programs.command-not-found.enable = false;
environment.systemPackages = with pkgs; [
screen
];
# Starship is a fast and featureful shell prompt
# starship.toml has sane defaults that can be changed there
programs.starship = {
enable = true;
settings = import ./starship.toml.nix;
};
2023-01-28 20:49:10 +00:00
home-manager = with pkgs;
pkgs.lib.setAttrByPath ["users" psCfg.user.name] {
home.packages = [
ack
asciinema
bat
blesh
2023-01-28 20:49:10 +00:00
exa
fd
gh
glow
jump
2023-01-28 20:49:10 +00:00
mdbook-multilang
nnn
notes
powerline
python-wiki-fetch
silver-searcher
vifm
watson
];
2021-05-30 19:10:28 +00:00
programs.bash = import ./bash {
2023-01-28 20:49:10 +00:00
inherit config;
inherit pkgs;
inherit self;
2023-01-28 20:49:10 +00:00
};
programs.fzf = import ./fzf {
inherit config;
inherit pkgs;
};
programs.neovim = import ./nvim {
2023-01-28 20:49:10 +00:00
inherit config;
inherit pkgs;
};
};
2021-05-30 19:10:28 +00:00
};
}