From d725ffdbfa7e409965753c8a3c3fbad0e4247493 Mon Sep 17 00:00:00 2001 From: Bryan Ramos Date: Sun, 28 Jan 2024 09:16:53 -0500 Subject: [PATCH] Massive rewrite, further modularized --- homeConfig/home.nix | 11 ++----- homeConfig/modules/default.nix | 7 ---- homeConfig/modules/gui/default.nix | 33 ++++++++----------- .../modules}/alacritty/config/alacritty.nix | 0 .../{ => gui/modules}/alacritty/default.nix | 0 .../{ => gui/modules}/browsers/default.nix | 0 .../{ => gui/modules}/corn/default.nix | 8 +++-- homeConfig/modules/gui/modules/default.nix | 12 +++++++ .../modules/{ => gui/modules}/fun/default.nix | 2 +- .../modules/gui/modules/guiUtils/default.nix | 19 +++++++++++ .../modules}/neovim/config/lazyvim/init.lua | 0 .../config/lazyvim/lua/config/autocmds.lua | 0 .../config/lazyvim/lua/config/keymaps.lua | 0 .../neovim/config/lazyvim/lua/config/lazy.lua | 0 .../config/lazyvim/lua/config/options.lua | 0 .../config/lazyvim/lua/plugins/core.lua | 0 .../modules}/neovim/config/servers.nix | 0 .../{ => gui/modules}/neovim/default.nix | 0 homeConfig/modules/utils/default.nix | 19 +++++------ homeConfig/modules/utils/modules/default.nix | 8 +++++ .../modules/utils/modules/dev/default.nix | 20 +++++++++++ .../{aerc => modules/email/config}/aerc.conf | 0 .../{aerc => modules/email/config}/binds.conf | 0 .../modules/utils/modules/email/default.nix | 19 +++++++++++ .../modules/utils/modules/irc/default.nix | 14 ++++++++ .../modules/utils/modules/vim/config/vimrc | 0 .../modules/utils/modules/vim/default.nix | 15 +++++++++ sysConfig/desktop/system.nix | 5 --- 28 files changed, 139 insertions(+), 53 deletions(-) rename homeConfig/modules/{ => gui/modules}/alacritty/config/alacritty.nix (100%) rename homeConfig/modules/{ => gui/modules}/alacritty/default.nix (100%) rename homeConfig/modules/{ => gui/modules}/browsers/default.nix (100%) rename homeConfig/modules/{ => gui/modules}/corn/default.nix (71%) create mode 100644 homeConfig/modules/gui/modules/default.nix rename homeConfig/modules/{ => gui/modules}/fun/default.nix (90%) create mode 100644 homeConfig/modules/gui/modules/guiUtils/default.nix rename homeConfig/modules/{ => gui/modules}/neovim/config/lazyvim/init.lua (100%) rename homeConfig/modules/{ => gui/modules}/neovim/config/lazyvim/lua/config/autocmds.lua (100%) rename homeConfig/modules/{ => gui/modules}/neovim/config/lazyvim/lua/config/keymaps.lua (100%) rename homeConfig/modules/{ => gui/modules}/neovim/config/lazyvim/lua/config/lazy.lua (100%) rename homeConfig/modules/{ => gui/modules}/neovim/config/lazyvim/lua/config/options.lua (100%) rename homeConfig/modules/{ => gui/modules}/neovim/config/lazyvim/lua/plugins/core.lua (100%) rename homeConfig/modules/{ => gui/modules}/neovim/config/servers.nix (100%) rename homeConfig/modules/{ => gui/modules}/neovim/default.nix (100%) create mode 100644 homeConfig/modules/utils/modules/default.nix create mode 100644 homeConfig/modules/utils/modules/dev/default.nix rename homeConfig/modules/utils/{aerc => modules/email/config}/aerc.conf (100%) rename homeConfig/modules/utils/{aerc => modules/email/config}/binds.conf (100%) create mode 100644 homeConfig/modules/utils/modules/email/default.nix create mode 100644 homeConfig/modules/utils/modules/irc/default.nix create mode 100644 homeConfig/modules/utils/modules/vim/config/vimrc create mode 100644 homeConfig/modules/utils/modules/vim/default.nix diff --git a/homeConfig/home.nix b/homeConfig/home.nix index 7bc6f92..1378377 100644 --- a/homeConfig/home.nix +++ b/homeConfig/home.nix @@ -11,18 +11,11 @@ home.homeDirectory = "/home/${config.user.name}"; modules = { - gui.enable = true; - browsers.enable = true; - alacritty.enable = true; - fun.enable = true; - bash.enable = true; git.enable = true; gpg.enable = true; - neovim.enable = true; - - utils.enable = true; + gui.enable = true; security.enable = true; - corn.enable = true; + utils.enable = true; }; } diff --git a/homeConfig/modules/default.nix b/homeConfig/modules/default.nix index 2a9706c..6513817 100644 --- a/homeConfig/modules/default.nix +++ b/homeConfig/modules/default.nix @@ -1,16 +1,9 @@ -{ pkgs, lib, config, ... }: - { imports = [ - ./alacritty ./bash - ./browsers - ./corn - ./fun ./git ./gpg ./gui - ./neovim ./security ./utils ]; diff --git a/homeConfig/modules/gui/default.nix b/homeConfig/modules/gui/default.nix index 7b2a22e..6b10dc9 100644 --- a/homeConfig/modules/gui/default.nix +++ b/homeConfig/modules/gui/default.nix @@ -6,11 +6,21 @@ let in { options.modules.gui = { enable = mkEnableOption "gui"; }; + imports = [ ./modules ]; config = mkIf cfg.enable { wayland.windowManager.sway = import ./config/sway.nix { inherit pkgs config lib; }; programs.rofi = import ./config/rofi.nix { inherit pkgs config lib; }; programs.bash.profileExtra = import ./config/shellHook.nix; + modules = { + alacritty.enable = true; + browsers.enable = true; + corn.enable = true; + fun.enable = true; + guiUtils.enable = true; + neovim.enable = true; + }; + gtk = { enable = true; theme.package = pkgs.juno-theme; @@ -25,25 +35,10 @@ in platformTheme = "gtk"; }; - programs.btop.enable = true; + programs = { + imv.enable = true; + }; + fonts.fontconfig.enable = true; - - home.packages = with pkgs; [ - xdg-utils - grim - slurp - wl-clipboard - autotiling - - imv - gimp - okular - - noto-fonts - noto-fonts-cjk - noto-fonts-emoji - - emote - ]; }; } diff --git a/homeConfig/modules/alacritty/config/alacritty.nix b/homeConfig/modules/gui/modules/alacritty/config/alacritty.nix similarity index 100% rename from homeConfig/modules/alacritty/config/alacritty.nix rename to homeConfig/modules/gui/modules/alacritty/config/alacritty.nix diff --git a/homeConfig/modules/alacritty/default.nix b/homeConfig/modules/gui/modules/alacritty/default.nix similarity index 100% rename from homeConfig/modules/alacritty/default.nix rename to homeConfig/modules/gui/modules/alacritty/default.nix diff --git a/homeConfig/modules/browsers/default.nix b/homeConfig/modules/gui/modules/browsers/default.nix similarity index 100% rename from homeConfig/modules/browsers/default.nix rename to homeConfig/modules/gui/modules/browsers/default.nix diff --git a/homeConfig/modules/corn/default.nix b/homeConfig/modules/gui/modules/corn/default.nix similarity index 71% rename from homeConfig/modules/corn/default.nix rename to homeConfig/modules/gui/modules/corn/default.nix index 68c221b..172f45d 100644 --- a/homeConfig/modules/corn/default.nix +++ b/homeConfig/modules/gui/modules/corn/default.nix @@ -8,8 +8,12 @@ in { options.modules.corn = { enable = mkEnableOption "corn"; }; config = mkIf cfg.enable { home.packages = with pkgs; [ - trezor-suite trezorctl - electrum bisq-desktop + trezor-suite + trezorctl + trezord + + electrum + bisq-desktop ]; }; } diff --git a/homeConfig/modules/gui/modules/default.nix b/homeConfig/modules/gui/modules/default.nix new file mode 100644 index 0000000..f8b5f77 --- /dev/null +++ b/homeConfig/modules/gui/modules/default.nix @@ -0,0 +1,12 @@ +{ + imports = [ + ./alacritty + ./browsers + + ./corn + ./fun + + ./guiUtils + ./neovim + ]; +} diff --git a/homeConfig/modules/fun/default.nix b/homeConfig/modules/gui/modules/fun/default.nix similarity index 90% rename from homeConfig/modules/fun/default.nix rename to homeConfig/modules/gui/modules/fun/default.nix index 72b8cf5..dfb5d25 100644 --- a/homeConfig/modules/fun/default.nix +++ b/homeConfig/modules/gui/modules/fun/default.nix @@ -17,7 +17,7 @@ in }; home.packages = with pkgs; [ - spotify webcord showmethekey cmatrix + spotify webcord showmethekey ]; }; } diff --git a/homeConfig/modules/gui/modules/guiUtils/default.nix b/homeConfig/modules/gui/modules/guiUtils/default.nix new file mode 100644 index 0000000..37cad30 --- /dev/null +++ b/homeConfig/modules/gui/modules/guiUtils/default.nix @@ -0,0 +1,19 @@ +{ pkgs, lib, config, ... }: + +with lib; +let + cfg = config.modules.guiUtils; + +in +{ options.modules.guiUtils = { enable = mkEnableOption "guiUtils"; }; + config = mkIf cfg.enable { + programs.btop.enable = true; + home.packages = with pkgs; [ + gimp + pdftk + teams-for-linux + zoom-us + exercism + ]; + }; +} diff --git a/homeConfig/modules/neovim/config/lazyvim/init.lua b/homeConfig/modules/gui/modules/neovim/config/lazyvim/init.lua similarity index 100% rename from homeConfig/modules/neovim/config/lazyvim/init.lua rename to homeConfig/modules/gui/modules/neovim/config/lazyvim/init.lua diff --git a/homeConfig/modules/neovim/config/lazyvim/lua/config/autocmds.lua b/homeConfig/modules/gui/modules/neovim/config/lazyvim/lua/config/autocmds.lua similarity index 100% rename from homeConfig/modules/neovim/config/lazyvim/lua/config/autocmds.lua rename to homeConfig/modules/gui/modules/neovim/config/lazyvim/lua/config/autocmds.lua diff --git a/homeConfig/modules/neovim/config/lazyvim/lua/config/keymaps.lua b/homeConfig/modules/gui/modules/neovim/config/lazyvim/lua/config/keymaps.lua similarity index 100% rename from homeConfig/modules/neovim/config/lazyvim/lua/config/keymaps.lua rename to homeConfig/modules/gui/modules/neovim/config/lazyvim/lua/config/keymaps.lua diff --git a/homeConfig/modules/neovim/config/lazyvim/lua/config/lazy.lua b/homeConfig/modules/gui/modules/neovim/config/lazyvim/lua/config/lazy.lua similarity index 100% rename from homeConfig/modules/neovim/config/lazyvim/lua/config/lazy.lua rename to homeConfig/modules/gui/modules/neovim/config/lazyvim/lua/config/lazy.lua diff --git a/homeConfig/modules/neovim/config/lazyvim/lua/config/options.lua b/homeConfig/modules/gui/modules/neovim/config/lazyvim/lua/config/options.lua similarity index 100% rename from homeConfig/modules/neovim/config/lazyvim/lua/config/options.lua rename to homeConfig/modules/gui/modules/neovim/config/lazyvim/lua/config/options.lua diff --git a/homeConfig/modules/neovim/config/lazyvim/lua/plugins/core.lua b/homeConfig/modules/gui/modules/neovim/config/lazyvim/lua/plugins/core.lua similarity index 100% rename from homeConfig/modules/neovim/config/lazyvim/lua/plugins/core.lua rename to homeConfig/modules/gui/modules/neovim/config/lazyvim/lua/plugins/core.lua diff --git a/homeConfig/modules/neovim/config/servers.nix b/homeConfig/modules/gui/modules/neovim/config/servers.nix similarity index 100% rename from homeConfig/modules/neovim/config/servers.nix rename to homeConfig/modules/gui/modules/neovim/config/servers.nix diff --git a/homeConfig/modules/neovim/default.nix b/homeConfig/modules/gui/modules/neovim/default.nix similarity index 100% rename from homeConfig/modules/neovim/default.nix rename to homeConfig/modules/gui/modules/neovim/default.nix diff --git a/homeConfig/modules/utils/default.nix b/homeConfig/modules/utils/default.nix index 340ef90..8791d28 100644 --- a/homeConfig/modules/utils/default.nix +++ b/homeConfig/modules/utils/default.nix @@ -6,22 +6,21 @@ let in { options.modules.utils = { enable = mkEnableOption "utils"; }; + imports = [ ./modules ]; config = mkIf cfg.enable { + modules = { + vim.enable = false; + email.enable = true; + irc.enable = true; + dev.enable = true; + }; home.packages = with pkgs; [ wget curl tree neofetch unzip fping calc qrencode fd pkg-config pciutils - mdbook rsync docker exercism pandoc - texlive.combined.scheme-tetex glibc - pdftk zoom-us zip teams-for-linux - aerc weechat asciidoctor - gcc + mdbook rsync pandoc texlive.combined.scheme-tetex + zip asciidoctor ]; - - home.file.".config/aerc" = { - source = ./aerc; - recursive = true; - }; }; } diff --git a/homeConfig/modules/utils/modules/default.nix b/homeConfig/modules/utils/modules/default.nix new file mode 100644 index 0000000..c3ca23c --- /dev/null +++ b/homeConfig/modules/utils/modules/default.nix @@ -0,0 +1,8 @@ +{ + imports = [ + ./dev + ./email + ./irc + ./vim + ]; +} diff --git a/homeConfig/modules/utils/modules/dev/default.nix b/homeConfig/modules/utils/modules/dev/default.nix new file mode 100644 index 0000000..dd4616b --- /dev/null +++ b/homeConfig/modules/utils/modules/dev/default.nix @@ -0,0 +1,20 @@ +{ pkgs, lib, config, ... }: + +with lib; +let + cfg = config.modules.dev; + +in +{ options.modules.dev = { enable = mkEnableOption "dev"; }; + config = mkIf cfg.enable { + home.packages = with pkgs; [ + nix-init + nix-prefetch-git + + glibc + gcc + + docker + ]; + }; +} diff --git a/homeConfig/modules/utils/aerc/aerc.conf b/homeConfig/modules/utils/modules/email/config/aerc.conf similarity index 100% rename from homeConfig/modules/utils/aerc/aerc.conf rename to homeConfig/modules/utils/modules/email/config/aerc.conf diff --git a/homeConfig/modules/utils/aerc/binds.conf b/homeConfig/modules/utils/modules/email/config/binds.conf similarity index 100% rename from homeConfig/modules/utils/aerc/binds.conf rename to homeConfig/modules/utils/modules/email/config/binds.conf diff --git a/homeConfig/modules/utils/modules/email/default.nix b/homeConfig/modules/utils/modules/email/default.nix new file mode 100644 index 0000000..94acb74 --- /dev/null +++ b/homeConfig/modules/utils/modules/email/default.nix @@ -0,0 +1,19 @@ +{ lib, config, ... }: + +with lib; +let + cfg = config.modules.email; + +in +{ options.modules.email = { enable = mkEnableOption "email"; }; + config = mkIf cfg.enable { + programs.aerc = { + enable = true; + }; + + home.file.".config/aerc" = { + source = ./config; + recursive = true; + }; + }; +} diff --git a/homeConfig/modules/utils/modules/irc/default.nix b/homeConfig/modules/utils/modules/irc/default.nix new file mode 100644 index 0000000..46e0529 --- /dev/null +++ b/homeConfig/modules/utils/modules/irc/default.nix @@ -0,0 +1,14 @@ +{ pkgs, lib, config, ... }: + +with lib; +let + cfg = config.modules.irc; + +in +{ options.modules.irc = { enable = mkEnableOption "irc"; }; + config = mkIf cfg.enable { + home.packages = with pkgs; [ + weechat + ]; + }; +} diff --git a/homeConfig/modules/utils/modules/vim/config/vimrc b/homeConfig/modules/utils/modules/vim/config/vimrc new file mode 100644 index 0000000..e69de29 diff --git a/homeConfig/modules/utils/modules/vim/default.nix b/homeConfig/modules/utils/modules/vim/default.nix new file mode 100644 index 0000000..e3ceeed --- /dev/null +++ b/homeConfig/modules/utils/modules/vim/default.nix @@ -0,0 +1,15 @@ +{ pkgs, lib, config, ... }: + +with lib; +let + cfg = config.modules.vim; + +in +{ options.modules.vim = { enable = mkEnableOption "vim"; }; + config = mkIf cfg.enable { + programs.vim = { + enable = true; + extraConfig = import ./config/vimrc; + }; + }; +} diff --git a/sysConfig/desktop/system.nix b/sysConfig/desktop/system.nix index 3da4fbe..ce9a34b 100644 --- a/sysConfig/desktop/system.nix +++ b/sysConfig/desktop/system.nix @@ -45,9 +45,6 @@ environment.systemPackages = with pkgs; [ pavucontrol - - nix-init - nix-prefetch-git ]; # DE @@ -83,8 +80,6 @@ # System Services services = { - trezord.enable = true; - cron = { enable = true; systemCronJobs = [];