Re-add the features config prefix

This commit is contained in:
Oliver Davies 2025-07-09 08:00:00 +01:00
parent 34cb9db3d4
commit 45433358ff
50 changed files with 245 additions and 231 deletions

View file

@ -3,39 +3,41 @@
{ {
imports = [ ../common ]; imports = [ ../common ];
cli = { features = {
bookmarkthis.enable = true; cli = {
direnv.enable = true; bookmarkthis.enable = true;
fzf.enable = true; direnv.enable = true;
fzf.enable = true;
git = { git = {
enable = true; enable = true;
user.emailAddress = "oliver.davies@tfw.wales"; user.emailAddress = "oliver.davies@tfw.wales";
};
node.enable = true;
notes.enable = true;
ranger.enable = true;
starship.enable = true;
tmux.enable = true;
tmux-sessionizer = {
enable = true;
searchPaths = [
"${config.xdg.userDirs.extraConfig.XDG_REPOS_DIR}:2"
"${config.xdg.userDirs.documents}:1"
];
};
todos.enable = true;
zsh.enable = true;
}; };
node.enable = true; coding = {
notes.enable = true; neovim.enable = true;
ranger.enable = true; phpactor.enable = true;
starship.enable = true;
tmux.enable = true;
tmux-sessionizer = {
enable = true;
searchPaths = [
"${config.xdg.userDirs.extraConfig.XDG_REPOS_DIR}:2"
"${config.xdg.userDirs.documents}:1"
];
}; };
todos.enable = true;
zsh.enable = true;
};
coding = {
neovim.enable = true;
phpactor.enable = true;
}; };
xdg.configFile."pam-gnupg".text = '' xdg.configFile."pam-gnupg".text = ''

View file

@ -1,11 +1,13 @@
{ {
imports = [ ../common ]; imports = [ ../common ];
cli.zsh.enable = true; features = {
cli.zsh.enable = true;
desktop.media = { desktop.media = {
handbrake.enable = true; handbrake.enable = true;
makemkv.enable = true; makemkv.enable = true;
mpv.enable = true; mpv.enable = true;
};
}; };
} }

View file

@ -5,7 +5,7 @@
./nixedo/email-filters.nix ./nixedo/email-filters.nix
]; ];
cli = { features.cli = {
fzf.enable = true; fzf.enable = true;
starship.enable = true; starship.enable = true;
zsh.enable = true; zsh.enable = true;

View file

@ -6,80 +6,80 @@
./t480/gammastep.nix ./t480/gammastep.nix
]; ];
cli = { features = {
bluetuith.enable = true; cli = {
bookmarkthis.enable = true; bluetuith.enable = true;
direnv.enable = true; bookmarkthis.enable = true;
fzf.enable = true; direnv.enable = true;
fzf.enable = true;
git = { git = {
enable = true;
user.emailAddress = "oliver@oliverdavies.uk";
};
node.enable = true;
notes = {
enable = true;
directory = "${config.xdg.userDirs.documents}/wiki/notes";
};
ranger.enable = true;
sxhkd.enable = true;
starship.enable = true;
tmux.enable = true;
tmux-sessionizer = {
enable = true;
enableDmenuIntegration = true;
searchPaths =
let
inherit (config.xdg.userDirs) documents extraConfig;
repos = extraConfig.XDG_REPOS_DIR;
in
[
repos
"${repos}/*"
documents
];
};
todos.enable = true;
zsh.enable = true;
};
coding = {
neovim.enable = true;
phpactor.enable = true;
};
desktop = {
browsers = {
chromium.enable = true;
firefox = {
enable = true; enable = true;
homepageUrl = "https://nixedo.oliverdavies.uk"; user.emailAddress = "oliver@oliverdavies.uk";
}; };
qutebrowser.enable = true; node.enable = true;
notes = {
enable = true;
directory = "${config.xdg.userDirs.documents}/wiki/notes";
};
ranger.enable = true;
sxhkd.enable = true;
starship.enable = true;
tmux.enable = true;
tmux-sessionizer = {
enable = true;
enableDmenuIntegration = true;
searchPaths =
let
inherit (config.xdg.userDirs) documents extraConfig;
repos = extraConfig.XDG_REPOS_DIR;
in
[
repos
"${repos}/*"
documents
];
};
todos.enable = true;
zsh.enable = true;
}; };
flameshot.enable = true; coding = {
gtk.enable = true; neovim.enable = true;
phpactor.enable = true;
media = {
handbrake.enable = true;
makemkv.enable = true;
mpv.enable = true;
}; };
# redshift.enable = true; desktop = {
browsers = {
chromium.enable = true;
firefox = {
enable = true;
homepageUrl = "https://nixedo.oliverdavies.uk";
};
qutebrowser.enable = true;
};
flameshot.enable = true;
gtk.enable = true;
media = {
handbrake.enable = true;
makemkv.enable = true;
mpv.enable = true;
};
};
}; };
programs = { programs = {

View file

@ -11,15 +11,17 @@
../../users/opdavies.nix ../../users/opdavies.nix
]; ];
cli = { features = {
docker.enable = true; cli = {
docker.enable = true;
password-store = { password-store = {
enable = true; enable = true;
extensions = with pkgs.passExtensions; [ extensions = with pkgs.passExtensions; [
pass-otp pass-otp
]; ];
};
}; };
}; };

View file

@ -18,12 +18,14 @@
../../users/eric.nix ../../users/eric.nix
]; ];
core = { features = {
bluetooth.enable = true; core = {
zram.enable = true; bluetooth.enable = true;
}; zram.enable = true;
};
desktop.media.makemkv.enable = true; desktop.media.makemkv.enable = true;
};
nixpad.enable = true; nixpad.enable = true;

View file

@ -19,9 +19,11 @@
../../users/opdavies.nix ../../users/opdavies.nix
]; ];
core.openssh.enable = true; features = {
cli.podman.enable = true; core.openssh.enable = true;
desktop.dconf.enable = true; cli.podman.enable = true;
desktop.dconf.enable = true;
};
# TODO: why didn't it work when adding this to jitsi.nix? # TODO: why didn't it work when adding this to jitsi.nix?
nixpkgs.config.permittedInsecurePackages = [ nixpkgs.config.permittedInsecurePackages = [

View file

@ -19,41 +19,43 @@
../../users/opdavies.nix ../../users/opdavies.nix
]; ];
cli = { features = {
kanata = { cli = {
enable = true; kanata = {
enable = true;
devices = [ devices = [
"/dev/input/by-path/platform-i8042-serio-0-event-kbd" "/dev/input/by-path/platform-i8042-serio-0-event-kbd"
]; ];
};
password-store = {
enable = true;
extensions = with pkgs.passExtensions; [
pass-audit
pass-otp
pass-update
];
};
}; };
password-store = { core = {
enable = true; bluetooth.enable = true;
openssh.enable = true;
extensions = with pkgs.passExtensions; [ pipewire.enable = true;
pass-audit xbanish.enable = true;
pass-otp zram.enable = true;
pass-update
];
}; };
};
core = { desktop = {
bluetooth.enable = true; dconf.enable = true;
openssh.enable = true; dwm.enable = true;
pipewire.enable = true; fonts.enable = true;
xbanish.enable = true; media.makemkv.enable = true;
zram.enable = true; st.enable = true;
}; thunar.enable = true;
};
desktop = {
dconf.enable = true;
dwm.enable = true;
fonts.enable = true;
media.makemkv.enable = true;
st.enable = true;
thunar.enable = true;
}; };
services = { services = {

View file

@ -16,12 +16,14 @@
../../users/opdavies.nix ../../users/opdavies.nix
]; ];
core = { features = {
bluetooth.enable = true; core = {
zram.enable = true; bluetooth.enable = true;
}; zram.enable = true;
};
desktop.dconf.enable = true; desktop.dconf.enable = true;
};
nixpad.enable = true; nixpad.enable = true;

View file

@ -8,10 +8,10 @@
with lib; with lib;
let let
cfg = config.cli.bluetuith; cfg = config.features.cli.bluetuith;
in in
{ {
options.cli.bluetuith.enable = mkEnableOption "Enable bluetuith"; options.features.cli.bluetuith.enable = mkEnableOption "Enable bluetuith";
config = mkIf cfg.enable { config = mkIf cfg.enable {
home.packages = with pkgs; [ home.packages = with pkgs; [

View file

@ -8,11 +8,11 @@
let let
inherit (lib) mkEnableOption mkOption; inherit (lib) mkEnableOption mkOption;
cfg = config.cli.${name}; cfg = config.features.cli.${name};
name = "bookmarkthis"; name = "bookmarkthis";
in in
{ {
options.cli.${name} = { options.features.cli.${name} = {
enable = mkEnableOption "Enable ${name}"; enable = mkEnableOption "Enable ${name}";
snippetsFile = mkOption { snippetsFile = mkOption {

View file

@ -3,10 +3,10 @@
with lib; with lib;
let let
cfg = config.cli.direnv; cfg = config.features.cli.direnv;
in in
{ {
options.cli.direnv.enable = mkEnableOption "Enable direnv"; options.features.cli.direnv.enable = mkEnableOption "Enable direnv";
config = mkIf cfg.enable { config = mkIf cfg.enable {
programs.direnv = { programs.direnv = {

View file

@ -3,10 +3,10 @@
with lib; with lib;
let let
cfg = config.cli.fzf; cfg = config.features.cli.fzf;
in in
{ {
options.cli.fzf.enable = mkEnableOption "Enable fzf"; options.features.cli.fzf.enable = mkEnableOption "Enable fzf";
config = mkIf cfg.enable { config = mkIf cfg.enable {
programs.fzf = { programs.fzf = {

View file

@ -8,10 +8,10 @@
with lib; with lib;
let let
cfg = config.cli.git; cfg = config.features.cli.git;
in in
{ {
options.cli.git = { options.features.cli.git = {
enable = mkEnableOption "Enable git"; enable = mkEnableOption "Enable git";
user = mkOption { user = mkOption {

View file

@ -3,12 +3,12 @@
with lib; with lib;
let let
cfg = config.cli.node; cfg = config.features.cli.node;
inherit (config.xdg) configHome dataHome stateHome; inherit (config.xdg) configHome dataHome stateHome;
in in
{ {
options.cli.node.enable = mkEnableOption "Enable node"; options.features.cli.node.enable = mkEnableOption "Enable node";
config = mkIf cfg.enable { config = mkIf cfg.enable {
xdg.configFile."${config.home.sessionVariables.NPM_CONFIG_USERCONFIG}".text = '' xdg.configFile."${config.home.sessionVariables.NPM_CONFIG_USERCONFIG}".text = ''

View file

@ -8,10 +8,10 @@
with lib; with lib;
let let
cfg = config.cli.notes; cfg = config.features.cli.notes;
in in
{ {
options.cli.notes = { options.features.cli.notes = {
enable = mkEnableOption "Enable notes"; enable = mkEnableOption "Enable notes";
directory = mkOption { directory = mkOption {

View file

@ -3,10 +3,10 @@
with lib; with lib;
let let
cfg = config.cli.ranger; cfg = config.features.cli.ranger;
in in
{ {
options.cli.ranger.enable = mkEnableOption "Enable ranger"; options.features.cli.ranger.enable = mkEnableOption "Enable ranger";
config = mkIf cfg.enable { config = mkIf cfg.enable {
programs.ranger.enable = true; programs.ranger.enable = true;

View file

@ -3,10 +3,10 @@
with lib; with lib;
let let
cfg = config.cli.starship; cfg = config.features.cli.starship;
in in
{ {
options.cli.starship.enable = mkEnableOption "Enable starship"; options.features.cli.starship.enable = mkEnableOption "Enable starship";
config = mkIf cfg.enable { config = mkIf cfg.enable {
programs.starship = programs.starship =

View file

@ -1,13 +1,13 @@
{ config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
let let
cfg = config.cli.${service}; cfg = config.features.cli.${service};
service = "sxhkd"; service = "sxhkd";
inherit (lib) getExe mkIf mkEnableOption; inherit (lib) getExe mkIf mkEnableOption;
in in
{ {
options.cli.${service} = { options.features.cli.${service} = {
enable = mkEnableOption "Enable ${service}"; enable = mkEnableOption "Enable ${service}";
}; };

View file

@ -8,10 +8,10 @@
with lib; with lib;
let let
cfg = config.cli.tmux-sessionizer; cfg = config.features.cli.tmux-sessionizer;
in in
{ {
options.cli.tmux-sessionizer = { options.features.cli.tmux-sessionizer = {
enable = mkEnableOption "Enable tmux-sessionizer"; enable = mkEnableOption "Enable tmux-sessionizer";
enableDmenuIntegration = mkEnableOption "Enable dmenu integration"; enableDmenuIntegration = mkEnableOption "Enable dmenu integration";

View file

@ -8,10 +8,10 @@
with lib; with lib;
let let
cfg = config.cli.tmux; cfg = config.features.cli.tmux;
in in
{ {
options.cli.tmux.enable = mkEnableOption "Enable tmux"; options.features.cli.tmux.enable = mkEnableOption "Enable tmux";
config = mkIf cfg.enable { config = mkIf cfg.enable {
programs.tmux = { programs.tmux = {

View file

@ -7,12 +7,12 @@
let let
name = "todos"; name = "todos";
cfg = config.cli.${name}; cfg = config.features.cli.${name};
inherit (lib) mkOption types; inherit (lib) mkOption types;
in in
{ {
options.cli.${name} = { options.features.cli.${name} = {
enable = lib.mkEnableOption "Enable ${name}"; enable = lib.mkEnableOption "Enable ${name}";
directory = mkOption { directory = mkOption {

View file

@ -8,10 +8,10 @@
with lib; with lib;
let let
cfg = config.cli.zsh; cfg = config.features.cli.zsh;
in in
{ {
options.cli.zsh.enable = mkEnableOption "Enable zsh"; options.features.cli.zsh.enable = mkEnableOption "Enable zsh";
config = mkIf cfg.enable { config = mkIf cfg.enable {
programs.zsh = { programs.zsh = {

View file

@ -8,14 +8,14 @@
with lib; with lib;
let let
cfg = config.coding.neovim; cfg = config.features.coding.neovim;
in in
{ {
imports = [ imports = [
inputs.nixvim.homeManagerModules.nixvim inputs.nixvim.homeManagerModules.nixvim
]; ];
options.coding.neovim.enable = mkEnableOption "Enable neovim"; options.features.coding.neovim.enable = mkEnableOption "Enable neovim";
config = mkIf cfg.enable { config = mkIf cfg.enable {
programs.nixvim = { programs.nixvim = {

View file

@ -3,10 +3,10 @@
with lib; with lib;
let let
cfg = config.coding.phpactor; cfg = config.features.coding.phpactor;
in in
{ {
options.coding.phpactor.enable = mkEnableOption "Enable phpactor"; options.features.coding.phpactor.enable = mkEnableOption "Enable phpactor";
config = mkIf cfg.enable { config = mkIf cfg.enable {
xdg.configFile.phpactor = { xdg.configFile.phpactor = {

View file

@ -1,13 +1,13 @@
{ config, lib, ... }: { config, lib, ... }:
let let
cfg = config.desktop.browsers.${name}; cfg = config.features.desktop.browsers.${name};
name = "chromium"; name = "chromium";
inherit (lib) mkEnableOption mkIf; inherit (lib) mkEnableOption mkIf;
in in
{ {
options.desktop.browsers.${name}.enable = mkEnableOption "Enable ${name}"; options.features.desktop.browsers.${name}.enable = mkEnableOption "Enable ${name}";
config = mkIf cfg.enable { config = mkIf cfg.enable {
programs.${name}.enable = true; programs.${name}.enable = true;

View file

@ -8,10 +8,10 @@
with lib; with lib;
let let
cfg = config.desktop.browsers.firefox; cfg = config.features.desktop.browsers.firefox;
in in
{ {
options.desktop.browsers.firefox = { options.features.desktop.browsers.firefox = {
enable = mkEnableOption "Enable firefox"; enable = mkEnableOption "Enable firefox";
homepageUrl = mkOption { homepageUrl = mkOption {

View file

@ -3,10 +3,10 @@
with lib; with lib;
let let
cfg = config.desktop.browsers.qutebrowser; cfg = config.features.desktop.browsers.qutebrowser;
in in
{ {
options.desktop.browsers.qutebrowser.enable = options.features.desktop.browsers.qutebrowser.enable =
mkEnableOption "Enable qutebrowser"; mkEnableOption "Enable qutebrowser";
config = mkIf cfg.enable { config = mkIf cfg.enable {

View file

@ -3,10 +3,10 @@
with lib; with lib;
let let
cfg = config.desktop.flameshot; cfg = config.features.desktop.flameshot;
in in
{ {
options.desktop.flameshot.enable = mkEnableOption "Enable flameshot"; options.features.desktop.flameshot.enable = mkEnableOption "Enable flameshot";
config = mkIf cfg.enable { config = mkIf cfg.enable {
services.flameshot = { services.flameshot = {

View file

@ -8,10 +8,10 @@
with lib; with lib;
let let
cfg = config.desktop.gtk; cfg = config.features.desktop.gtk;
in in
{ {
options.desktop.gtk.enable = mkEnableOption "Enable gtk"; options.features.desktop.gtk.enable = mkEnableOption "Enable gtk";
config = mkIf cfg.enable { config = mkIf cfg.enable {
gtk = with pkgs; { gtk = with pkgs; {

View file

@ -8,10 +8,10 @@
with lib; with lib;
let let
cfg = config.desktop.media.handbrake; cfg = config.features.desktop.media.handbrake;
in in
{ {
options.desktop.media.handbrake.enable = mkEnableOption "Enable handbrake"; options.features.desktop.media.handbrake.enable = mkEnableOption "Enable handbrake";
config = mkIf cfg.enable { config = mkIf cfg.enable {
home.packages = with pkgs; [ home.packages = with pkgs; [

View file

@ -8,10 +8,10 @@
with lib; with lib;
let let
cfg = config.desktop.media.makemkv; cfg = config.features.desktop.media.makemkv;
in in
{ {
options.desktop.media.makemkv.enable = mkEnableOption "Enable makemkv"; options.features.desktop.media.makemkv.enable = mkEnableOption "Enable makemkv";
config = mkIf cfg.enable { config = mkIf cfg.enable {
home.packages = with pkgs; [ home.packages = with pkgs; [

View file

@ -3,10 +3,10 @@
with lib; with lib;
let let
cfg = config.desktop.media.mpv; cfg = config.features.desktop.media.mpv;
in in
{ {
options.desktop.media.mpv.enable = mkEnableOption "Enable mpv"; options.features.desktop.media.mpv.enable = mkEnableOption "Enable mpv";
config = mkIf cfg.enable { config = mkIf cfg.enable {
programs.mpv = { programs.mpv = {

View file

@ -1,12 +1,12 @@
{ config, lib, ... }: { config, lib, ... }:
let let
cfg = config.desktop.redshift; cfg = config.features.desktop.redshift;
inherit (lib) mkEnableOption mkIf; inherit (lib) mkEnableOption mkIf;
in in
{ {
options.desktop.redshift = { options.features.desktop.redshift = {
enable = mkEnableOption "Enable redshift"; enable = mkEnableOption "Enable redshift";
}; };

View file

@ -3,10 +3,10 @@
with lib; with lib;
let let
cfg = config.cli.docker; cfg = config.features.cli.docker;
in in
{ {
options.cli.docker.enable = mkEnableOption "Enable docker"; options.features.cli.docker.enable = mkEnableOption "Enable docker";
config = mkIf cfg.enable { config = mkIf cfg.enable {
virtualisation = { virtualisation = {

View file

@ -1,13 +1,13 @@
{ config, lib, ... }: { config, lib, ... }:
let let
cfg = config.cli.${service}; cfg = config.features.cli.${service};
service = "kanata"; service = "kanata";
inherit (lib) mkEnableOption mkIf mkOption types; inherit (lib) mkEnableOption mkIf mkOption types;
in in
{ {
options.cli.${service} = { options.features.cli.${service} = {
enable = mkEnableOption "Enable ${service}"; enable = mkEnableOption "Enable ${service}";
devices = mkOption { devices = mkOption {

View file

@ -8,10 +8,10 @@
with lib; with lib;
let let
cfg = config.cli.password-store; cfg = config.features.cli.password-store;
in in
{ {
options.cli.password-store = { options.features.cli.password-store = {
enable = mkEnableOption "Enable pass"; enable = mkEnableOption "Enable pass";
extensions = mkOption { extensions = mkOption {

View file

@ -3,10 +3,10 @@
with lib; with lib;
let let
cfg = config.cli.podman; cfg = config.features.cli.podman;
in in
{ {
options.cli.podman.enable = mkEnableOption "Enable podman"; options.features.cli.podman.enable = mkEnableOption "Enable podman";
config = mkIf cfg.enable { config = mkIf cfg.enable {
virtualisation = { virtualisation = {

View file

@ -3,10 +3,10 @@
with lib; with lib;
let let
cfg = config.core.bluetooth; cfg = config.features.core.bluetooth;
in in
{ {
options.core.bluetooth.enable = mkEnableOption "Enable bluetooth"; options.features.core.bluetooth.enable = mkEnableOption "Enable bluetooth";
config = mkIf cfg.enable { config = mkIf cfg.enable {
hardware.bluetooth.enable = true; hardware.bluetooth.enable = true;

View file

@ -3,10 +3,10 @@
with lib; with lib;
let let
cfg = config.core.openssh; cfg = config.features.core.openssh;
in in
{ {
options.core.openssh.enable = mkEnableOption "Enable openssh"; options.features.core.openssh.enable = mkEnableOption "Enable openssh";
config = mkIf cfg.enable { config = mkIf cfg.enable {
services.openssh = { services.openssh = {

View file

@ -3,10 +3,10 @@
with lib; with lib;
let let
cfg = config.core.pipewire; cfg = config.features.core.pipewire;
in in
{ {
options.core.pipewire.enable = mkEnableOption "Enable pipewire"; options.features.core.pipewire.enable = mkEnableOption "Enable pipewire";
config = mkIf cfg.enable { config = mkIf cfg.enable {
services.pipewire = { services.pipewire = {

View file

@ -3,10 +3,10 @@
with lib; with lib;
let let
cfg = config.core.xbanish; cfg = config.features.core.xbanish;
in in
{ {
options.core.xbanish.enable = mkEnableOption "Enable xbanish"; options.features.core.xbanish.enable = mkEnableOption "Enable xbanish";
config = mkIf cfg.enable { config = mkIf cfg.enable {
services.xbanish.enable = true; services.xbanish.enable = true;

View file

@ -3,10 +3,10 @@
with lib; with lib;
let let
cfg = config.core.zram; cfg = config.features.core.zram;
in in
{ {
options.core.zram.enable = mkEnableOption "Enable zram"; options.features.core.zram.enable = mkEnableOption "Enable zram";
config = mkIf cfg.enable { config = mkIf cfg.enable {
zramSwap = { zramSwap = {

View file

@ -3,10 +3,10 @@
with lib; with lib;
let let
cfg = config.desktop.dconf; cfg = config.features.desktop.dconf;
in in
{ {
options.desktop.dconf.enable = mkEnableOption "Enable dconf"; options.features.desktop.dconf.enable = mkEnableOption "Enable dconf";
config = mkIf cfg.enable { config = mkIf cfg.enable {
programs.dconf.enable = true; programs.dconf.enable = true;

View file

@ -8,10 +8,10 @@
with lib; with lib;
let let
cfg = config.desktop.dwm; cfg = config.features.desktop.dwm;
in in
{ {
options.desktop.dwm.enable = mkEnableOption "Enable dwm"; options.features.desktop.dwm.enable = mkEnableOption "Enable dwm";
config = mkIf cfg.enable { config = mkIf cfg.enable {
services = { services = {

View file

@ -8,10 +8,10 @@
with lib; with lib;
let let
cfg = config.desktop.fonts; cfg = config.features.desktop.fonts;
in in
{ {
options.desktop.fonts.enable = mkEnableOption "Enable fonts"; options.features.desktop.fonts.enable = mkEnableOption "Enable fonts";
config = mkIf cfg.enable { config = mkIf cfg.enable {
fonts = { fonts = {

View file

@ -3,10 +3,10 @@
with lib; with lib;
let let
cfg = config.desktop.media.makemkv; cfg = config.features.desktop.media.makemkv;
in in
{ {
options.desktop.media.makemkv.enable = mkEnableOption "Enable makemkv"; options.features.desktop.media.makemkv.enable = mkEnableOption "Enable makemkv";
config = mkIf cfg.enable { config = mkIf cfg.enable {
boot.kernelModules = [ "sg" ]; boot.kernelModules = [ "sg" ];

View file

@ -8,10 +8,10 @@
with lib; with lib;
let let
cfg = config.desktop.st; cfg = config.features.desktop.st;
in in
{ {
options.desktop.st.enable = mkEnableOption "Enable st"; options.features.desktop.st.enable = mkEnableOption "Enable st";
config = mkIf cfg.enable { config = mkIf cfg.enable {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [

View file

@ -8,10 +8,10 @@
with lib; with lib;
let let
cfg = config.desktop.thunar; cfg = config.features.desktop.thunar;
in in
{ {
options.desktop.thunar.enable = mkEnableOption "Enable thunar"; options.features.desktop.thunar.enable = mkEnableOption "Enable thunar";
config = mkIf cfg.enable { config = mkIf cfg.enable {
programs.thunar = { programs.thunar = {

View file

@ -18,8 +18,8 @@ with lib;
"networkmanager" "networkmanager"
"wheel" "wheel"
] ]
++ optional config.cli.docker.enable "docker" ++ optional config.features.cli.docker.enable "docker"
++ optional config.cli.podman.enable "podman"; ++ optional config.features.cli.podman.enable "podman";
packages = with pkgs; [ packages = with pkgs; [
comma comma