diff --git a/flake.nix b/flake.nix index 679ff61..4d7ec50 100644 --- a/flake.nix +++ b/flake.nix @@ -132,14 +132,17 @@ pkgs = nixpkgs.legacyPackages.${system}; } ); - importModuleDir = - directory: - nixpkgs.lib.packagesFromDirectoryRecursive { - inherit directory; - callPackage = path: _args: path; - }; in { + lib = { + importDir = + dir: + (lib.attrsets.mapAttrs' ( + m: _: + lib.attrsets.nameValuePair (lib.strings.removeSuffix ".nix" m) { imports = [ "${dir}/${m}" ]; } + ) (builtins.readDir dir)); + }; + overlays = { unstable-packages = final: prev: { unstable = import nixpkgs-unstable { @@ -148,7 +151,7 @@ }; }; - nixosModules = (importModuleDir ./nixosModules) // { + nixosModules = (self.lib.importDir ./nixosModules) // { niri = { imports = [ niri.nixosModules.niri ]; nixpkgs.overlays = [ niri.overlays.niri ]; @@ -165,11 +168,8 @@ }; }; - homeModules = importModuleDir ./homeModules; - homeConfigurations = { - vinzenz = ./homeConfigurations/vinzenz; - ronja = ./homeConfigurations/ronja; - }; + homeModules = self.lib.importDir ./homeModules; + homeConfigurations = self.lib.importDir ./homeConfigurations; formatter = forAllSystems ({ pkgs, ... }: pkgs.nixfmt-tree); diff --git a/homeConfigurations/vinzenz/configuration.nix b/homeConfigurations/vinzenz/configuration.nix new file mode 100644 index 0000000..ace8086 --- /dev/null +++ b/homeConfigurations/vinzenz/configuration.nix @@ -0,0 +1,72 @@ +{ pkgs, ... }: +{ + programs = { + home-manager.enable = true; + fzf.enable = true; + git-credential-oauth.enable = true; + + direnv = { + enable = true; + nix-direnv.enable = true; + enableZshIntegration = true; + }; + + eza = { + enable = true; + git = true; + icons = "auto"; + extraOptions = [ + "--group-directories-first" + "--header" + ]; + }; + + thefuck = { + enable = true; + enableZshIntegration = true; + }; + + chromium.enable = true; + }; + + home.packages = with pkgs; [ + keepassxc + + telegram-desktop + element-desktop + + wireguard-tools + wirelesstools + + kdiff3 + jetbrains-toolbox + + blanket + vlc + + ptyxis + + arduino + arduino-ide + arduino-cli + + servicepoint-cli + servicepoint-simulator + + icu + + nextcloud-client + + lutris + + foliate + ]; + + home.file = { + "policy.json" = { + target = ".config/containers/policy.json"; + text = builtins.readFile ./.config/containers/policy.json; + }; + "idea.properties".text = "idea.filewatcher.executable.path = ${pkgs.fsnotifier}/bin/fsnotifier"; + }; +} diff --git a/homeConfigurations/vinzenz/default.nix b/homeConfigurations/vinzenz/default.nix index a0b3e0e..33cfceb 100644 --- a/homeConfigurations/vinzenz/default.nix +++ b/homeConfigurations/vinzenz/default.nix @@ -1,6 +1,6 @@ -{ pkgs, ... }: { imports = [ + ./configuration.nix ./editorconfig.nix ./fuzzel.nix ./git.nix @@ -12,78 +12,4 @@ ./waybar.nix ./zsh.nix ]; - - config = { - programs = { - home-manager.enable = true; - fzf.enable = true; - git-credential-oauth.enable = true; - - direnv = { - enable = true; - nix-direnv.enable = true; - enableZshIntegration = true; - }; - - eza = { - enable = true; - git = true; - icons = "auto"; - extraOptions = [ - "--group-directories-first" - "--header" - ]; - }; - - thefuck = { - enable = true; - enableZshIntegration = true; - }; - - chromium.enable = true; - }; - - home.packages = with pkgs; [ - keepassxc - - telegram-desktop - element-desktop - - wireguard-tools - wirelesstools - - kdiff3 - jetbrains-toolbox - - blanket - vlc - - ptyxis - - arduino - arduino-ide - arduino-cli - - servicepoint-cli - servicepoint-simulator - - icu - - nextcloud-client - - lutris - - foliate - - dconf2nix - ]; - - home.file = { - "policy.json" = { - target = ".config/containers/policy.json"; - text = builtins.readFile ./.config/containers/policy.json; - }; - "idea.properties".text = "idea.filewatcher.executable.path = ${pkgs.fsnotifier}/bin/fsnotifier"; - }; - }; } diff --git a/homeConfigurations/vinzenz/gnome.nix b/homeConfigurations/vinzenz/gnome.nix index ce5416e..7424363 100644 --- a/homeConfigurations/vinzenz/gnome.nix +++ b/homeConfigurations/vinzenz/gnome.nix @@ -1,4 +1,4 @@ -{ pkgs, lib, ... }: +{ pkgs, ... }: { config = { home.packages = with pkgs; [ @@ -26,8 +26,6 @@ switch-applications = [ "Tab" ]; switch-applications-backward = [ "Tab" ]; }; - "org/gnome/desktop/session".idle-delay = lib.hm.gvariant.mkUint32 300; - "org/gnome/Connections".first-run = false; }; }; } diff --git a/hooks/pre-commit b/hooks/pre-commit index 1760cfe..6b6b870 100755 --- a/hooks/pre-commit +++ b/hooks/pre-commit @@ -3,4 +3,4 @@ set -euxo pipefail nix fmt -nix flake check --show-trace +nix flake check --all-systems --show-trace