diff --git a/flake.nix b/flake.nix index 714f90a..0e75d9e 100644 --- a/flake.nix +++ b/flake.nix @@ -115,6 +115,11 @@ modules = [ ./system/hosts/ooksmicro ]; specialArgs = { inherit inputs outputs; }; }; + # Media Server/Alternative desktop + ooksmedia = lib.nixosSystem { + modules = [ ./system/hosts/ooksmedia ]; + specialArgs = { inherit inputs outputs; }; + }; }; homeConfigurations = { # T480s @@ -135,6 +140,12 @@ pkgs = pkgsFor.x86_64-linux; extraSpecialArgs = { inherit inputs outputs; }; }; + # Media Server/Alternative desktop + "ooks@ooksmedia" = lib.homeManagerConfiguration { + modules = [ ./home/user/ooks/ooksmedia ]; + pkgs = pkgsFor.x86_64-linux; + extraSpecialArgs = { inherit inputs outputs; }; + }; }; }; } diff --git a/home/user/ooks/ooksmedia/default.nix b/home/user/ooks/ooksmedia/default.nix new file mode 100644 index 0000000..4e3e9e9 --- /dev/null +++ b/home/user/ooks/ooksmedia/default.nix @@ -0,0 +1,25 @@ +{ inputs, outputs, config, ... }: + +{ + imports = [ + ../../../profile + ]; + + activeProfiles = ["base" "hyprland" "productivity" "gaming"]; + + theme.minimal.enable = true; + + home.sessionVariables.HN = "ooksmedia"; + + homeModules.desktop.wayland.nvidia = true; + + monitors = [{ + name = "HDMI-A-1"; + width = 1920; + height = 1080; + refreshRate = 60; + workspace = "1"; + primary = true; + }]; +} + diff --git a/system/hosts/ooksmedia/default.nix b/system/hosts/ooksmedia/default.nix new file mode 100644 index 0000000..7025b73 --- /dev/null +++ b/system/hosts/ooksmedia/default.nix @@ -0,0 +1,28 @@ +{ config, inputs, pkgs, ... }: + +{ + imports = [ + ./hardware-configuration.nix + ../../profiles + ]; + + activeProfiles = ["base" "mediaServer" "gaming"]; + + systemModules.user = { + ooks.enable = true; + shell.fish.enable = true; + }; + + systemModules.hardware = { + cpu.type = "intel"; + gpu.type = "nvidia"; + }; + + networking = { + hostName = "ooksmedia"; + # useDHCP = true; + }; + boot = { + kernelPackages = pkgs.linuxPackages_xanmod_latest; + }; +} diff --git a/system/hosts/ooksmedia/hardware-configuration.nix b/system/hosts/ooksmedia/hardware-configuration.nix new file mode 100644 index 0000000..234777f --- /dev/null +++ b/system/hosts/ooksmedia/hardware-configuration.nix @@ -0,0 +1,56 @@ +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ config, lib, pkgs, modulesPath, ... }: + +{ + imports = + [ (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/50617edf-e788-49cc-9e0c-85a2f90a5550"; + fsType = "btrfs"; + options = [ "subvol=root" ]; + }; + + fileSystems."/nix" = + { device = "/dev/disk/by-uuid/50617edf-e788-49cc-9e0c-85a2f90a5550"; + fsType = "btrfs"; + options = [ "subvol=nix" ]; + }; + + fileSystems."/persist" = + { device = "/dev/disk/by-uuid/50617edf-e788-49cc-9e0c-85a2f90a5550"; + fsType = "btrfs"; + options = [ "subvol=persist" ]; + }; + + fileSystems."/swap" = + { device = "/dev/disk/by-uuid/50617edf-e788-49cc-9e0c-85a2f90a5550"; + fsType = "btrfs"; + options = [ "subvol=swap" ]; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/B511-09E2"; + fsType = "vfat"; + }; + + swapDevices = [ ]; + + # Enables DHCP on each ethernet and wireless interface. In case of scripted networking + # (the default) this is the recommended approach. When using systemd-networkd it's + # still possible to use this option, but it's recommended to use it in conjunction + # with explicit per-interface declarations with `networking.interfaces..useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.enp2s0.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +}