diff --git a/hosts/desktop/home.nix b/hosts/desktop/home.nix index 0136b2a..a72aec8 100644 --- a/hosts/desktop/home.nix +++ b/hosts/desktop/home.nix @@ -19,6 +19,13 @@ Define the host of the machine ''; }; + + headless = lib.mkOption { + type = with lib.types; bool; + description = '' + Is this machine headless? + ''; + }; }; config = { @@ -28,6 +35,7 @@ }; host = "xv-desktop"; + headless = false; home.packages = with pkgs; [ unstable.prismlauncher diff --git a/hosts/laptop/home.nix b/hosts/laptop/home.nix index de46641..d693c8c 100644 --- a/hosts/laptop/home.nix +++ b/hosts/laptop/home.nix @@ -24,6 +24,13 @@ Define the host of the machine ''; }; + + headless = lib.mkOption { + type = with lib.types; bool; + description = '' + Is this machine headless? + ''; + }; }; config = { @@ -33,6 +40,7 @@ }; host = "xv-laptop"; + headless = false; home.packages = with pkgs; [ # Desktop Applications diff --git a/hosts/pm01vm01/default.nix b/hosts/pm01vm01/default.nix new file mode 100644 index 0000000..4e0c30c --- /dev/null +++ b/hosts/pm01vm01/default.nix @@ -0,0 +1,44 @@ +{ config, pkgs, ... }: + +{ + imports = [ + ./hardware-configuration.nix + + # CLI + ../../modules/system/cli/common.nix + ../../modules/system/cli/docker.nix + + # Hardware + ../../modules/system/hardware/firewall.nix + ../../modules/system/hardware/garbage-collection.nix + ../../modules/system/hardware/locale.nix + ]; + + nix.settings = { + experimental-features = [ "nix-command" "flakes" ]; + + substituters = [ + "https://nix-community.cachix.org" + ]; + }; + + # Bootloader. + boot.loader.efi.canTouchEfiVariables = true; + boot.loader.systemd-boot.enable = true; + + networking.hostName = "pm01vm01"; # Define your hostname. + + users.users.xeovalyte = { + isNormalUser = true; + description = "Timo Boomers"; + extraGroups = [ "networkmanager" "wheel" ]; + }; + + # Enable ssh + services.openssh.enable = true; + + boot.kernelPackages = pkgs.linuxPackages_latest; + + system.stateVersion = "24.05"; + +} diff --git a/hosts/pm01vm01/home.nix b/hosts/pm01vm01/home.nix new file mode 100644 index 0000000..5ab29bf --- /dev/null +++ b/hosts/pm01vm01/home.nix @@ -0,0 +1,48 @@ +{ pkgs, lib, config, ... }: + +{ + imports = [ + # Gui + ../../modules/home/gui/theming.nix + + # CLI + ../../modules/home/cli/common + ../../modules/home/cli/yazi.nix + ]; + + + options = { + host = lib.mkOption { + type = with lib.types; str; + description = '' + Define the host of the machine + ''; + }; + + headless = lib.mkOption { + type = with lib.types; bool; + description = '' + Is this machine headless? + ''; + }; + }; + + config = { + home = { + username = "xeovalyte"; + homeDirectory = "/home/xeovalyte"; + }; + + host = "pm01vm01"; + headless = true; + + home.packages = with pkgs; [ + ]; + + # Enable home-manager + programs.home-manager.enable = true; + + home.stateVersion = "24.05"; + }; + +} diff --git a/modules/home/gui/theming.nix b/modules/home/gui/theming.nix index df62324..b858239 100644 --- a/modules/home/gui/theming.nix +++ b/modules/home/gui/theming.nix @@ -5,20 +5,14 @@ let gtkThemeFromScheme; in { - options = { - guiTheming.enable = lib.mkEnableOption "Enable GTK and QT theming"; - }; - imports = [ nix-colors.homeManagerModules.default ]; config = { - guiTheming.enable = lib.mkDefault true; - colorScheme = nix-colors.colorSchemes.da-one-sea; - gtk = lib.mkIf config.guiTheming.enable { + gtk = lib.mkIf (config.headless == false) { enable = true; theme = { name = "${config.colorScheme.slug}"; @@ -30,7 +24,7 @@ in }; }; - qt = lib.mkIf config.guiTheming.enable { + qt = lib.mkIf (config.headless == false) { enable = true; platformTheme.name = "gtk"; style = { @@ -39,7 +33,7 @@ in }; }; - home.pointerCursor = lib.mkIf config.guiTheming.enable { + home.pointerCursor = lib.mkIf (config.headless == false) { package = pkgs.phinger-cursors; name = "phinger-cursors-dark"; size = 24;