From 7bacabf0d324085555d5485bdf634f89480ee28c Mon Sep 17 00:00:00 2001 From: Schrottkatze Date: Tue, 5 Mar 2024 17:10:35 +0100 Subject: [PATCH] biiiiig refactor (part 1) --- hosts/catbook-j/configuration.nix | 3 -- modules/default.nix | 5 ++- .../audio.nix | 0 .../compositing.nix | 0 modules/desktop-environment/default.nix | 11 +++++ .../dunst.nix | 0 modules/desktop-environment/flatpak.nix | 16 +++++++ .../desktop-environment/panels/default.nix | 6 +++ .../panels}/polybar.nix | 0 .../panels/xmobar/default.nix | 33 ++++++++++++++ .../panels}/xmobar/xmobar.hs | 0 .../{ => desktop-environment}/terminal.nix | 0 .../desktop-environment/xmonad/default.nix | 25 +++++++++++ .../desktop-environment}/xmonad/xmonad.hs | 0 modules/desktop/default.nix | 7 --- modules/desktop/xmonad.nix | 43 ------------------- modules/flatpak.nix | 24 ----------- .../default.nix | 0 .../hardware_key.nix | 0 .../spacenav.nix | 0 .../specific-hardware => hardware}/wacom.nix | 0 modules/{desktop => }/input/default.nix | 0 modules/{desktop => }/input/evremap.nix | 4 +- 23 files changed, 96 insertions(+), 81 deletions(-) rename modules/{desktop => desktop-environment}/audio.nix (100%) rename modules/{desktop => desktop-environment}/compositing.nix (100%) create mode 100644 modules/desktop-environment/default.nix rename modules/{desktop => desktop-environment}/dunst.nix (100%) create mode 100644 modules/desktop-environment/flatpak.nix create mode 100644 modules/desktop-environment/panels/default.nix rename modules/{desktop => desktop-environment/panels}/polybar.nix (100%) create mode 100644 modules/desktop-environment/panels/xmobar/default.nix rename {haskell => modules/desktop-environment/panels}/xmobar/xmobar.hs (100%) rename modules/{ => desktop-environment}/terminal.nix (100%) create mode 100644 modules/desktop-environment/xmonad/default.nix rename {haskell => modules/desktop-environment}/xmonad/xmonad.hs (100%) delete mode 100644 modules/desktop/xmonad.nix delete mode 100644 modules/flatpak.nix rename modules/{desktop/specific-hardware => hardware}/default.nix (100%) rename modules/{desktop/specific-hardware => hardware}/hardware_key.nix (100%) rename modules/{desktop/specific-hardware => hardware}/spacenav.nix (100%) rename modules/{desktop/specific-hardware => hardware}/wacom.nix (100%) rename modules/{desktop => }/input/default.nix (100%) rename modules/{desktop => }/input/evremap.nix (96%) diff --git a/hosts/catbook-j/configuration.nix b/hosts/catbook-j/configuration.nix index 71d44e0..6361745 100644 --- a/hosts/catbook-j/configuration.nix +++ b/hosts/catbook-j/configuration.nix @@ -17,9 +17,7 @@ ../../modules ]; jade = { - flatpak.enable = true; desktop = { - compositing.enable = true; syncthing.enable = true; kdeconnect.enable = true; cloud.enable = true; @@ -43,7 +41,6 @@ ]; }; }; - terminal.enable = true; }; hardware.trackpoint = { diff --git a/modules/default.nix b/modules/default.nix index 2a976f1..adf3726 100644 --- a/modules/default.nix +++ b/modules/default.nix @@ -2,8 +2,9 @@ imports = [ ./shell ./desktop - ./terminal.nix - ./flatpak.nix + ./hardware ./firewall.nix + ./desktop-environment + ./input ]; } diff --git a/modules/desktop/audio.nix b/modules/desktop-environment/audio.nix similarity index 100% rename from modules/desktop/audio.nix rename to modules/desktop-environment/audio.nix diff --git a/modules/desktop/compositing.nix b/modules/desktop-environment/compositing.nix similarity index 100% rename from modules/desktop/compositing.nix rename to modules/desktop-environment/compositing.nix diff --git a/modules/desktop-environment/default.nix b/modules/desktop-environment/default.nix new file mode 100644 index 0000000..896469c --- /dev/null +++ b/modules/desktop-environment/default.nix @@ -0,0 +1,11 @@ +{...}: { + imports = [ + ./audio.nix + ./compositing.nix + ./dunst.nix + ./panels + ./xmonad + ./terminal.nix + ./flatpak.nix + ]; +} diff --git a/modules/desktop/dunst.nix b/modules/desktop-environment/dunst.nix similarity index 100% rename from modules/desktop/dunst.nix rename to modules/desktop-environment/dunst.nix diff --git a/modules/desktop-environment/flatpak.nix b/modules/desktop-environment/flatpak.nix new file mode 100644 index 0000000..cf8b7b2 --- /dev/null +++ b/modules/desktop-environment/flatpak.nix @@ -0,0 +1,16 @@ +{ + config, + lib, + pkgs, + ... +}: { + services.flatpak.enable = true; + xdg.portal = { + enable = true; + # TODO + config.common.default = "*"; + extraPortals = [ + pkgs.xdg-desktop-portal-gtk + ]; + }; +} diff --git a/modules/desktop-environment/panels/default.nix b/modules/desktop-environment/panels/default.nix new file mode 100644 index 0000000..920a7dc --- /dev/null +++ b/modules/desktop-environment/panels/default.nix @@ -0,0 +1,6 @@ +{...}: { + imports = [ + ./xmobar + ./polybar.nix + ]; +} diff --git a/modules/desktop/polybar.nix b/modules/desktop-environment/panels/polybar.nix similarity index 100% rename from modules/desktop/polybar.nix rename to modules/desktop-environment/panels/polybar.nix diff --git a/modules/desktop-environment/panels/xmobar/default.nix b/modules/desktop-environment/panels/xmobar/default.nix new file mode 100644 index 0000000..32a11aa --- /dev/null +++ b/modules/desktop-environment/panels/xmobar/default.nix @@ -0,0 +1,33 @@ +{ + lib, + pkgs, + ... +}: { + home-manager.users.jade = { + config, + pkgs, + ... + }: let + xmobarGhc = pkgs.haskellPackages.ghcWithPackages (pkgs: + with pkgs; [ + xmobar + statgrab + ]); + in { + home = { + packages = [xmobarGhc]; + file."xmobar.hs" = rec { + source = ./xmobar.hs; + target = ".config/xmobar/xmobar.hs"; + onChange = '' + ${xmobarGhc}/bin/ghc -threaded ${target} + ${pkgs.busybox}/bin/pkill xmobar + ${pkgs.haskellPackages.xmonad}/bin/xmonad --restart + ''; + }; + }; + programs.xmobar = { + enable = true; + }; + }; +} diff --git a/haskell/xmobar/xmobar.hs b/modules/desktop-environment/panels/xmobar/xmobar.hs similarity index 100% rename from haskell/xmobar/xmobar.hs rename to modules/desktop-environment/panels/xmobar/xmobar.hs diff --git a/modules/terminal.nix b/modules/desktop-environment/terminal.nix similarity index 100% rename from modules/terminal.nix rename to modules/desktop-environment/terminal.nix diff --git a/modules/desktop-environment/xmonad/default.nix b/modules/desktop-environment/xmonad/default.nix new file mode 100644 index 0000000..ec930e4 --- /dev/null +++ b/modules/desktop-environment/xmonad/default.nix @@ -0,0 +1,25 @@ +{ + lib, + pkgs, + ... +}: { + home-manager.users.jade = { + config, + pkgs, + ... + }: { + home.packages = [pkgs.xmonadctl]; + xsession.windowManager.xmonad = { + enable = true; + enableContribAndExtras = true; + config = ./xmonad.hs; + }; + home.file.wallpaper = { + target = "Pictures/wallpaper.jpg"; + source = ../../../other/wallpaper.jpg; + onChange = '' + feh --bg-fill ~/Pictures/wallpaper.jpg; + ''; + }; + }; +} diff --git a/haskell/xmonad/xmonad.hs b/modules/desktop-environment/xmonad/xmonad.hs similarity index 100% rename from haskell/xmonad/xmonad.hs rename to modules/desktop-environment/xmonad/xmonad.hs diff --git a/modules/desktop/default.nix b/modules/desktop/default.nix index 2e519bd..00e872b 100644 --- a/modules/desktop/default.nix +++ b/modules/desktop/default.nix @@ -15,26 +15,19 @@ in with lib; { imports = [ - ./audio.nix ./gaming.nix ./creative.nix # TODO: more fine grained choices, not every setup needs fspy or rawtherapee - ./dunst.nix - ./compositing.nix ./ios-compat.nix ./syncthing.nix ./kdeconnect.nix ./themeing.nix ./cloud.nix ./networking.nix - ./polybar.nix ./social.nix ./mail.nix - ./specific-hardware - ./xmonad.nix ./fonts.nix ./firefox.nix ./x.nix - ./input ]; i18n.inputMethod = { diff --git a/modules/desktop/xmonad.nix b/modules/desktop/xmonad.nix deleted file mode 100644 index 9f806a3..0000000 --- a/modules/desktop/xmonad.nix +++ /dev/null @@ -1,43 +0,0 @@ -{ - lib, - pkgs, - ... -}: { - home-manager.users.jade = { - config, - pkgs, - ... - }: let - xmobarGhc = pkgs.haskellPackages.ghcWithPackages (pkgs: - with pkgs; [ - xmobar - statgrab - ]); - in { - home.packages = [xmobarGhc pkgs.xmonadctl]; - programs.xmobar = { - enable = true; - }; - home.file."xmobar.hs" = rec { - source = ../../haskell/xmobar/xmobar.hs; - target = ".config/xmobar/xmobar.hs"; - onChange = '' - ${xmobarGhc}/bin/ghc -threaded ${target} - ${pkgs.busybox}/bin/pkill xmobar - ${pkgs.haskellPackages.xmonad}/bin/xmonad --restart - ''; - }; - xsession.windowManager.xmonad = { - enable = true; - enableContribAndExtras = true; - config = ../../haskell/xmonad/xmonad.hs; - }; - home.file.wallpaper = { - target = "Pictures/wallpaper.jpg"; - source = ../../other/wallpaper.jpg; - onChange = '' - feh --bg-fill ~/Pictures/wallpaper.jpg; - ''; - }; - }; -} diff --git a/modules/flatpak.nix b/modules/flatpak.nix deleted file mode 100644 index e3683fe..0000000 --- a/modules/flatpak.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: let - cfg = config.jade.flatpak; -in - with lib; { - options.jade.flatpak = { - enable = mkEnableOption "Enable flatpak"; - }; - config = mkIf cfg.enable { - services.flatpak.enable = true; - xdg.portal = { - enable = true; - # TODO - config.common.default = "*"; - extraPortals = [ - pkgs.xdg-desktop-portal-gtk - ]; - }; - }; - } diff --git a/modules/desktop/specific-hardware/default.nix b/modules/hardware/default.nix similarity index 100% rename from modules/desktop/specific-hardware/default.nix rename to modules/hardware/default.nix diff --git a/modules/desktop/specific-hardware/hardware_key.nix b/modules/hardware/hardware_key.nix similarity index 100% rename from modules/desktop/specific-hardware/hardware_key.nix rename to modules/hardware/hardware_key.nix diff --git a/modules/desktop/specific-hardware/spacenav.nix b/modules/hardware/spacenav.nix similarity index 100% rename from modules/desktop/specific-hardware/spacenav.nix rename to modules/hardware/spacenav.nix diff --git a/modules/desktop/specific-hardware/wacom.nix b/modules/hardware/wacom.nix similarity index 100% rename from modules/desktop/specific-hardware/wacom.nix rename to modules/hardware/wacom.nix diff --git a/modules/desktop/input/default.nix b/modules/input/default.nix similarity index 100% rename from modules/desktop/input/default.nix rename to modules/input/default.nix diff --git a/modules/desktop/input/evremap.nix b/modules/input/evremap.nix similarity index 96% rename from modules/desktop/input/evremap.nix rename to modules/input/evremap.nix index bc9a1da..1880eb9 100644 --- a/modules/desktop/input/evremap.nix +++ b/modules/input/evremap.nix @@ -16,9 +16,9 @@ sha256 = "sha256-BxSrphgW1n465FX6bKVkq6O0XE2JqanfSYlsGwWUWkQ="; }; cargoHash = ""; - cargoLock.lockFile = ../../../other/evremap.Cargo.lock; + cargoLock.lockFile = ../../other/evremap.Cargo.lock; postPatch = '' - cp ${../../../other/evremap.Cargo.lock} Cargo.lock + cp ${../../other/evremap.Cargo.lock} Cargo.lock ''; nativeBuildInputs = [pkgs.pkg-config]; buildInputs = [pkgs.libevdev];