diff --git a/flake.nix b/flake.nix index 1297486..ed971fa 100644 --- a/flake.nix +++ b/flake.nix @@ -33,6 +33,13 @@ ./marty-server.nix ]; }; + marty-latitude = nixpkgs.lib.nixosSystem { + system = "x86_64"; + modules = [ + ./configuration.nix + ./marty-latitude.nix + ]; + }; }; }; } diff --git a/marty-latitude.nix b/marty-latitude.nix new file mode 100644 index 0000000..5b39f64 --- /dev/null +++ b/marty-latitude.nix @@ -0,0 +1,12 @@ +{ + config, + lib, + pkgs, + ... +}: + +{ + networking = { + hostName = "marty-latitude"; + }; +} diff --git a/modules/imports.nix b/modules/imports.nix index 3a057b1..aeaf08c 100644 --- a/modules/imports.nix +++ b/modules/imports.nix @@ -7,6 +7,8 @@ { imports = [ + ./window_manager/imports.nix ./git.nix + ./vscodium.nix ]; } diff --git a/modules/vscodium.nix b/modules/vscodium.nix new file mode 100644 index 0000000..efe0543 --- /dev/null +++ b/modules/vscodium.nix @@ -0,0 +1,35 @@ +{ + config, + lib, + pkgs, + ... +}: + +let + enable_vscode = + if config.networking.hostName == "marty-pc" + then true + else if config.networking.hostName == "marty-latitude" + then true + else false; +in + + +{ + programs.vscode = { + enable = enable_vscode; + package = pkgs.vscodium; + defaultEditor = enable_vscode; + extensions = with pkgs.vscode-extensions; [ + catppuccin.catppuccin-vsc + catppuccin.catppuccin-vsc-icons + jnoortheen.nix-ide + alefragnani.project-manager + naumovs.color-highlight + geequlim.godot-tools + stylelint.vscode-stylelint + ecmel.vscode-html-css + esbenp.prettier-vscode + ]; + }; +} diff --git a/modules/window_manager/hyprland.nix b/modules/window_manager/hyprland.nix new file mode 100644 index 0000000..ba9ee16 --- /dev/null +++ b/modules/window_manager/hyprland.nix @@ -0,0 +1,27 @@ +{ + config, + lib, + pkgs, + ... +}: + +let + enable_hyprland = + if config.networking.hostName == "marty-pc" + then true + else if config.networking.hostName == "marty-latitude" + then true + else false; +in + +{ + programs = { + hyprland = { + enable = enable_hyprland; + xwayland.enable = enable_hyprland; + }; + hyprlock = { + enable = enable_hyprland; + }; + }; +} diff --git a/modules/window_manager/imports.nix b/modules/window_manager/imports.nix new file mode 100644 index 0000000..387d7b1 --- /dev/null +++ b/modules/window_manager/imports.nix @@ -0,0 +1,13 @@ +{ + config, + lib, + pkgs, + ... +}: + +{ + imports = [ + ./hyprland.nix + ./waybar.nix + ]; +} diff --git a/modules/window_manager/waybar.nix b/modules/window_manager/waybar.nix new file mode 100644 index 0000000..16308a1 --- /dev/null +++ b/modules/window_manager/waybar.nix @@ -0,0 +1,23 @@ +{ + config, + lib, + pkgs, + ... +}: + +let + enable_waybar = + if config.networking.hostName == "marty-pc" + then true + else if config.networking.hostName == "marty-latitude" + then true + else false; +in + +{ + programs = { + waybar = { + enable = enable_waybar; + }; + }; +}