Remove features
All checks were successful
/ check (push) Successful in 1m21s

This commit is contained in:
Oliver Davies 2025-05-03 16:50:27 +01:00
parent 54954d6223
commit 54b43e4203
58 changed files with 224 additions and 242 deletions

View file

@ -3,46 +3,44 @@
{
imports = [ ../common ];
features = {
cli = {
direnv.enable = true;
fzf.enable = true;
cli = {
direnv.enable = true;
fzf.enable = true;
git = {
enable = true;
git = {
enable = true;
user.emailAddress = "oliver.davies@tfw.wales";
};
node.enable = true;
ranger.enable = true;
starship.enable = true;
tmux.enable = true;
tmux-sessionizer = {
enable = true;
directories =
let
inherit (config.xdg.userDirs) documents extraConfig;
repos = extraConfig.XDG_REPOS_DIR;
in
options.features.cli.tmux-sessionizer.directories.default
++ [
repos
"${repos}/*"
documents
];
};
zsh.enable = true;
user.emailAddress = "oliver.davies@tfw.wales";
};
coding = {
neovim.enable = true;
phpactor.enable = true;
node.enable = true;
ranger.enable = true;
starship.enable = true;
tmux.enable = true;
tmux-sessionizer = {
enable = true;
directories =
let
inherit (config.xdg.userDirs) documents extraConfig;
repos = extraConfig.XDG_REPOS_DIR;
in
options.cli.tmux-sessionizer.directories.default
++ [
repos
"${repos}/*"
documents
];
};
zsh.enable = true;
};
coding = {
neovim.enable = true;
phpactor.enable = true;
};
xdg.configFile."pam-gnupg".text = ''

View file

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

View file

@ -1,11 +1,9 @@
{
imports = [ ../common ];
features = {
cli = {
fzf.enable = true;
starship.enable = true;
zsh.enable = true;
};
cli = {
fzf.enable = true;
starship.enable = true;
zsh.enable = true;
};
}

View file

@ -3,68 +3,66 @@
{
imports = [ ../common ];
features = {
cli = {
bluetuith.enable = true;
direnv.enable = true;
fzf.enable = true;
cli = {
bluetuith.enable = true;
direnv.enable = true;
fzf.enable = true;
git = {
enable = true;
git = {
enable = true;
user.emailAddress = "oliver@oliverdavies.uk";
};
node.enable = true;
notes.enable = true;
ranger.enable = true;
starship.enable = true;
tmux.enable = true;
tmux-sessionizer = {
enable = true;
directories =
let
inherit (config.xdg.userDirs) documents extraConfig;
repos = extraConfig.XDG_REPOS_DIR;
in
options.features.cli.tmux-sessionizer.directories.default
++ [
repos
"${repos}/*"
documents
];
};
zsh.enable = true;
user.emailAddress = "oliver@oliverdavies.uk";
};
coding = {
neovim.enable = true;
phpactor.enable = true;
node.enable = true;
notes.enable = true;
ranger.enable = true;
starship.enable = true;
tmux.enable = true;
tmux-sessionizer = {
enable = true;
directories =
let
inherit (config.xdg.userDirs) documents extraConfig;
repos = extraConfig.XDG_REPOS_DIR;
in
options.cli.tmux-sessionizer.directories.default
++ [
repos
"${repos}/*"
documents
];
};
desktop = {
browsers = {
firefox = {
enable = true;
zsh.enable = true;
};
homepageUrl = "https://nixedo.oliverdavies.uk";
};
coding = {
neovim.enable = true;
phpactor.enable = true;
};
qutebrowser.enable = true;
desktop = {
browsers = {
firefox = {
enable = true;
homepageUrl = "https://nixedo.oliverdavies.uk";
};
flameshot.enable = true;
gtk.enable = true;
qutebrowser.enable = true;
};
media = {
handbrake.enable = true;
makemkv.enable = true;
mpv.enable = true;
};
flameshot.enable = true;
gtk.enable = true;
media = {
handbrake.enable = true;
makemkv.enable = true;
mpv.enable = true;
};
};

View file

@ -7,11 +7,9 @@
./modules/wiki.nix
];
features = {
cli = {
docker.enable = true;
password-store.enable = true;
};
cli = {
docker.enable = true;
password-store.enable = true;
};
wsl = {

View file

@ -11,15 +11,13 @@
../../users/eric.nix
];
features = {
core = {
bluetooth.enable = true;
zram.enable = true;
};
desktop.media.makemkv.enable = true;
core = {
bluetooth.enable = true;
zram.enable = true;
};
desktop.media.makemkv.enable = true;
# Bootloader.
boot = {
loader = {

View file

@ -16,11 +16,9 @@
../../users/opdavies.nix
];
features = {
core.openssh.enable = true;
cli.podman.enable = true;
desktop.dconf.enable = true;
};
core.openssh.enable = true;
cli.podman.enable = true;
desktop.dconf.enable = true;
services.logind.lidSwitchExternalPower = "ignore";

View file

@ -3,7 +3,7 @@
postgresqlBackup.enable = true;
};
features.homelab = {
homelab = {
enable = true;
domain = "oliverdavies.uk";

View file

@ -4,11 +4,11 @@ with lib;
let
cfg = homelab.services.${service};
homelab = config.features.homelab;
homelab = config.homelab;
service = "audiobookshelf";
in
{
options.features.homelab.services.${service} = {
options.homelab.services.${service} = {
enable = mkEnableOption "Enable ${service}";
url = mkOption {

View file

@ -10,10 +10,10 @@ with lib;
let
cfg = homelab.services.${service};
service = "tubearchivist";
homelab = config.features.homelab;
homelab = config.homelab;
in
{
options.features.homelab.services.${service} = {
options.homelab.services.${service} = {
enable = mkEnableOption "Enable ${service}";
port = mkOption {

View file

@ -3,7 +3,7 @@
with lib;
{
options.features.homelab = {
options.homelab = {
enable = mkEnableOption "Enable homelab services and configuration";
domain = mkOption {

View file

@ -4,11 +4,11 @@ with lib;
let
cfg = homelab.services.${service};
homelab = config.features.homelab;
homelab = config.homelab;
service = "forgejo";
in
{
options.features.homelab.services.${service} = {
options.homelab.services.${service} = {
enable = mkEnableOption "Enable ${service}";
url = mkOption {

View file

@ -9,11 +9,11 @@ with lib;
let
cfg = homelab.services.${service};
homelab = config.features.homelab;
homelab = config.homelab;
service = "immich";
in
{
options.features.homelab.services.${service} = {
options.homelab.services.${service} = {
enable = mkEnableOption "Enable ${service}";
url = mkOption {

View file

@ -4,11 +4,11 @@ with lib;
let
cfg = homelab.services.${service};
homelab = config.features.homelab;
homelab = config.homelab;
service = "jellyfin";
in
{
options.features.homelab.services.${service} = {
options.homelab.services.${service} = {
enable = mkEnableOption "Enable ${service}";
url = mkOption {

View file

@ -4,11 +4,11 @@ with lib;
let
cfg = homelab.services.paperless;
homelab = config.features.homelab;
homelab = config.homelab;
service = "paperless";
in
{
options.features.homelab.services.${service} = {
options.homelab.services.${service} = {
enable = mkEnableOption "Enable ${service}";
url = mkOption {

View file

@ -9,12 +9,12 @@ with lib;
let
cfg = homelab.services.${service};
homelab = config.features.homelab;
homelab = config.homelab;
opts = options.services.${service};
service = "homepage-dashboard";
in
{
options.features.homelab.services.${service} = {
options.homelab.services.${service} = {
enable = mkEnableOption "Enable ${service}";
port = mkOption {

View file

@ -3,7 +3,7 @@
with lib;
let
homelab = config.features.homelab.services;
homelab = config.homelab.services;
homepageCategories = [
"Media"

View file

@ -4,11 +4,11 @@ with lib;
let
cfg = homelab.services.${service};
homelab = config.features.homelab;
homelab = config.homelab;
service = "uptime-kuma";
in
{
options.features.homelab.services.${service} = {
options.homelab.services.${service} = {
enable = mkEnableOption "Enable ${service}";
url = mkOption {

View file

@ -9,11 +9,11 @@ with lib;
let
cfg = homelab.services.${service};
homelab = config.features.homelab;
homelab = config.homelab;
service = "vaultwarden";
in
{
options.features.homelab.services.${service} = {
options.homelab.services.${service} = {
enable = mkEnableOption "Enable ${service}";
url = mkOption {

View file

@ -12,33 +12,31 @@
../../users/opdavies.nix
];
features = {
cli.password-store = {
enable = true;
cli.password-store = {
enable = true;
extensions = with pkgs.passExtensions; [
pass-audit
pass-otp
pass-update
];
};
extensions = with pkgs.passExtensions; [
pass-audit
pass-otp
pass-update
];
};
core = {
bluetooth.enable = true;
openssh.enable = true;
pipewire.enable = true;
xbanish.enable = true;
zram.enable = true;
};
core = {
bluetooth.enable = true;
openssh.enable = true;
pipewire.enable = true;
xbanish.enable = true;
zram.enable = true;
};
desktop = {
dconf.enable = true;
dwm.enable = true;
fonts.enable = true;
media.makemkv.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;
};
boot = {

View file

@ -14,15 +14,13 @@
../../users/opdavies.nix
];
features = {
core = {
bluetooth.enable = true;
zram.enable = true;
};
desktop.dconf.enable = true;
core = {
bluetooth.enable = true;
zram.enable = true;
};
desktop.dconf.enable = true;
boot = {
loader = {
systemd-boot = {

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

@ -10,11 +10,11 @@ with lib;
let
cfg = homelab.services.${service};
homelab = config.features.homelab;
homelab = config.homelab;
service = "gitea-actions-runner";
in
{
options.features.homelab.services.${service} = {
options.homelab.services.${service} = {
enable = mkEnableOption "Enable ${service}";
};

View file

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