diff --git a/flake.lock b/flake.lock index b4113ef..784ccfa 100644 --- a/flake.lock +++ b/flake.lock @@ -71,7 +71,7 @@ "type": "github" } }, - "hm": { + "home-manager": { "inputs": { "nixpkgs": [ "nixpkgs" @@ -669,7 +669,7 @@ }, "root": { "inputs": { - "hm": "hm", + "home-manager": "home-manager", "hypridle": "hypridle", "hyprland": "hyprland", "hyprland-contrib": "hyprland-contrib", diff --git a/flake.nix b/flake.nix index 9ef3ffd..e3f2fa4 100644 --- a/flake.nix +++ b/flake.nix @@ -6,7 +6,7 @@ nixpkgs.url = "github:NixOS/nixpkgs/nixos-25.05"; # Home Manager - hm = { + home-manager = { url = "github:nix-community/home-manager"; inputs.nixpkgs.follows = "nixpkgs"; }; @@ -57,18 +57,34 @@ }; }; - outputs = {nixpkgs, ...} @ inputs: { + outputs = inputs @ { + nixpkgs, + home-manager, + ... + }: { nixosConfigurations = { wildfire = nixpkgs.lib.nixosSystem { specialArgs = {inherit inputs;}; modules = [ ./hosts/wildfire/configuration.nix + home-manager.nixosModules.home-manager + { + home-manager.useGlobalPkgs = true; + home-manager.useUserPackages = true; + home-manager.users.schulze = import ./modules/home.nix; + } ]; }; hurricane = nixpkgs.lib.nixosSystem { specialArgs = {inherit inputs;}; modules = [ ./hosts/hurricane/configuration.nix + home-manager.nixosModules.home-manager + { + home-manager.useGlobalPkgs = true; + home-manager.useUserPackages = true; + home-manager.users.schulze = import ./modules/home.nix; + } ]; }; }; diff --git a/modules/home.nix b/modules/home.nix new file mode 100644 index 0000000..6478e7b --- /dev/null +++ b/modules/home.nix @@ -0,0 +1,45 @@ +{ + config, + pkgs, + ... +}: { + # Hyprland settings + wayland.windowManager.hyprland.settings = { + "$mod" = "SUPER"; + "$terminal" = "ghostty"; + "$filemanager" = "nautilus"; + "$menu" = "rofi -show drun"; + + bind = + [ + "$mod, RETURN, exec, $terminal" + "$mod, C, killactive" + "$mod, E, exec, $filemanager" + "$mod, SPACE, exec, $menu" + ", Print, exec, grimblast copy area" + ] + ++ ( + # workspaces + # binds $mod + [shift +] {1..9} to [move to] workspace {1..9} + builtins.concatLists (builtins.genList ( + i: let + ws = i + 1; + in [ + "$mod, code:1${toString i}, workspace, ${toString ws}" + "$mod SHIFT, code:1${toString i}, movetoworkspace, ${toString ws}" + ] + ) + 9) + ); + decoration = { + rounding = "15"; + rounding_power = "4"; + blur = { + enabled = "true"; + xray = "true"; + size = "3"; + passes = "4"; + }; + }; + }; +}