modular common programs

This commit is contained in:
Ivan Dimitrov 2023-11-14 19:57:53 +02:00
parent 4a70e04625
commit 911b6e8f3d
3 changed files with 53 additions and 42 deletions

View File

@ -41,6 +41,7 @@
programs = { programs = {
nv.enable = true; nv.enable = true;
shell.enable = true; shell.enable = true;
common.enable = true;
}; };
xdg.configFile = { xdg.configFile = {

View File

@ -1,49 +1,59 @@
{ pkgs, ... }: { { pkgs, lib, config, ... }:
let
cfg = config.programs.common;
in
{
imports = [ ./neovim ./neomutt ./sway ./tmux.nix ./zsh.nix ./lf ]; imports = [ ./neovim ./neomutt ./sway ./tmux.nix ./zsh.nix ./lf ];
programs = { options.programs.common = {
thunderbird = { enable = lib.mkEnableOption "common";
enable = true; };
profiles = { ivan = { isDefault = true; }; };
}; config = lib.mkIf cfg.enable {
chromium = { programs = {
enable = true; thunderbird = {
package = pkgs.ungoogled-chromium; enable = true;
}; profiles = { ivan = { isDefault = true; }; };
swaylock = {
enable = true;
settings = {
color = "000000";
line-color = "ffffff";
show-failed-attempts = true;
}; };
}; chromium = {
obs-studio = { enable = true;
enable = true; package = pkgs.ungoogled-chromium;
plugins = with pkgs.obs-studio-plugins; [ wlrobs ];
};
kitty = {
enable = true;
settings = {
enable_tab_bar = false;
background_opacity = "0.96";
cursor_shape = "beam";
}; };
}; swaylock = {
git = { enable = true;
enable = true; settings = {
userName = "Ivan Dimitrov"; color = "000000";
userEmail = "ivan@idimitrov.dev"; line-color = "ffffff";
extraConfig = { show-failed-attempts = true;
color.ui = "auto"; };
pull.rebase = true; };
obs-studio = {
enable = true;
plugins = with pkgs.obs-studio-plugins; [ wlrobs ];
};
kitty = {
enable = true;
settings = {
enable_tab_bar = false;
background_opacity = "0.96";
cursor_shape = "beam";
};
};
git = {
enable = true;
userName = "Ivan Dimitrov";
userEmail = "ivan@idimitrov.dev";
extraConfig = {
color.ui = "auto";
pull.rebase = true;
};
};
browserpass.enable = true;
newsboat = {
enable = true;
autoReload = true;
reloadTime = 1;
}; };
};
browserpass.enable = true;
newsboat = {
enable = true;
autoReload = true;
reloadTime = 1;
}; };
}; };
} }

View File

@ -1,6 +1,6 @@
{ pkgs, lib, config, ... }: { pkgs, lib, config, ... }:
let let
cfg = config.programs.nv; cfg = config.programs.shell;
in in
{ {