From 03ec04d6b37ff8cb8a46d737865063a6b4c8986c Mon Sep 17 00:00:00 2001 From: KeksNino Date: Wed, 12 Aug 2026 21:29:15 +0200 Subject: [PATCH] restructure + add vr --- hosts/desktop/boot.nix | 22 ++++++++ hosts/desktop/configuration.nix | 55 ++----------------- hosts/desktop/home-manager/home.nix | 6 +- hosts/desktop/packages.nix | 1 + hosts/music-server/configuration.nix | 16 +----- hosts/music-server/home-manager/home.nix | 2 +- modules/desktop/vr.nix | 13 +++++ modules/git.nix | 27 +++++++++ .../home-manager => modules/home}/beets.nix | 0 .../{programs => home}/hyprland/default.nix | 0 modules/{programs => home}/hyprland/execs.nix | 0 .../{programs => home}/hyprland/general.nix | 0 .../{programs => home}/hyprland/keybinds.nix | 0 modules/{programs => home}/hyprland/rules.nix | 0 modules/{programs => home}/kitty.nix | 0 .../home-manager => modules/home}/mpd.nix | 0 temp.nix | 22 ++++++++ 17 files changed, 95 insertions(+), 69 deletions(-) create mode 100644 hosts/desktop/boot.nix create mode 100644 modules/desktop/vr.nix create mode 100644 modules/git.nix rename {hosts/music-server/home-manager => modules/home}/beets.nix (100%) rename modules/{programs => home}/hyprland/default.nix (100%) rename modules/{programs => home}/hyprland/execs.nix (100%) rename modules/{programs => home}/hyprland/general.nix (100%) rename modules/{programs => home}/hyprland/keybinds.nix (100%) rename modules/{programs => home}/hyprland/rules.nix (100%) rename modules/{programs => home}/kitty.nix (100%) rename {hosts/desktop/home-manager => modules/home}/mpd.nix (100%) create mode 100644 temp.nix diff --git a/hosts/desktop/boot.nix b/hosts/desktop/boot.nix new file mode 100644 index 0000000..3585142 --- /dev/null +++ b/hosts/desktop/boot.nix @@ -0,0 +1,22 @@ +{ config, pkgs, ... }: +let + cpuid-fault-emulation = pkgs.callPackage ../../pkgs/cpuid-fault-emulation { + kernel = config.boot.kernelPackages.kernel; + }; +in +{ + boot.loader.grub.enable = true; + boot.loader.grub.device = "nodev"; + boot.loader.grub.efiSupport = true; + boot.extraModulePackages = [ cpuid-fault-emulation ]; + + boot.kernelParams = [ + "iomem=relaxed" + "iommu=pt" + "amd_iommu=on" + "kvm.ignore_msrs=1" + "mitigations=off" + "amdgpu.ppfeaturemask=0xffffffff" + "clearcpuid=umip" + ]; +} diff --git a/hosts/desktop/configuration.nix b/hosts/desktop/configuration.nix index 67926b2..cf1f79f 100644 --- a/hosts/desktop/configuration.nix +++ b/hosts/desktop/configuration.nix @@ -2,21 +2,17 @@ pkgs, sls-steam, options, - config, ... }: -let - cpuid-fault-emulation = pkgs.callPackage ../../pkgs/cpuid-fault-emulation { - kernel = config.boot.kernelPackages.kernel; - }; -in - { imports = [ - ./hardware-configuration.nix - ./packages.nix + ./boot.nix ./drives.nix + ./packages.nix + ./hardware-configuration.nix + ../../modules/git.nix ../../modules/scripts.nix + ../../modules/desktop/vr.nix ../../modules/programs/nixvim/neovim.nix ]; @@ -31,16 +27,6 @@ in "flakes" ]; - boot.kernelParams = [ - "iomem=relaxed" - "iommu=pt" - "amd_iommu=on" - "kvm.ignore_msrs=1" - "mitigations=off" - "amdgpu.ppfeaturemask=0xffffffff" - "clearcpuid=umip" - ]; - xdg = { mime.defaultApplications = { "inode/directory" = [ "nemo.desktop" ]; @@ -57,12 +43,6 @@ in powerOnBoot = false; }; - # Bootloader. - boot.loader.grub.enable = true; - boot.loader.grub.device = "nodev"; - boot.loader.grub.efiSupport = true; - boot.extraModulePackages = [ cpuid-fault-emulation ]; - environment.systemPackages = [ (pkgs.writeShellScriptBin "enable-hypervisor" '' sudo modprobe -r kvm_amd kvm @@ -144,31 +124,6 @@ in programs.kdeconnect.enable = true; services.rsync.enable = true; programs.neovim.enable = true; - programs.git = { - enable = true; - config = { - signing = { - key = "51AE8C6E80E6AF3BDFBE2BF804B31D181764898D"; - signByDefault = true; - }; - user = { - name = "KeksNino"; - email = "KeksNino@proton.me"; - }; - init = { - defaultBranch = "main"; - }; - push = { - autoSetupRemote = true; - }; - commit = { - gpgsign = true; - }; - tag = { - gpgsign = true; - }; - }; - }; programs.gnupg.agent = { enable = true; diff --git a/hosts/desktop/home-manager/home.nix b/hosts/desktop/home-manager/home.nix index cf0a1f4..46488d1 100644 --- a/hosts/desktop/home-manager/home.nix +++ b/hosts/desktop/home-manager/home.nix @@ -6,11 +6,11 @@ }: { imports = [ - ./mpd.nix ./programs.nix ../../../modules/shell.nix - ../../../modules/programs/hyprland - ../../../modules/programs/kitty.nix + ../../../modules/home/mpd.nix + ../../../modules/home/hyprland + ../../../modules/home/kitty.nix ../../../modules/programs/qutebrowser.nix zen-browser.homeModules.beta ]; diff --git a/hosts/desktop/packages.nix b/hosts/desktop/packages.nix index 2b7c351..bcc6e5c 100644 --- a/hosts/desktop/packages.nix +++ b/hosts/desktop/packages.nix @@ -71,6 +71,7 @@ proton-vpn unrar croc + hyprlandPlugins.csgo-vulkan-fix ]; fonts.packages = with pkgs; [ diff --git a/hosts/music-server/configuration.nix b/hosts/music-server/configuration.nix index 8135e91..893b71e 100644 --- a/hosts/music-server/configuration.nix +++ b/hosts/music-server/configuration.nix @@ -8,6 +8,7 @@ ./hardware-configuration.nix ./packages.nix ../../modules/server + ../../modules/git.nix ]; nix.settings.experimental-features = [ @@ -61,21 +62,6 @@ services.tailscale.enable = true; services.rsync.enable = true; programs.neovim.enable = true; - programs.git = { - enable = true; - config = { - user = { - name = "KeksNino"; - email = "KeksNino@proton.me"; - }; - init = { - defaultBranch = "main"; - }; - push = { - autoSetupRemote = true; - }; - }; - }; services.openssh = { enable = true; diff --git a/hosts/music-server/home-manager/home.nix b/hosts/music-server/home-manager/home.nix index 49d04f6..d3eb68f 100644 --- a/hosts/music-server/home-manager/home.nix +++ b/hosts/music-server/home-manager/home.nix @@ -1,7 +1,7 @@ { imports = [ - ./beets.nix ../../../modules/shell.nix + ../../../modules/home/beets.nix ]; home.username = "user"; diff --git a/modules/desktop/vr.nix b/modules/desktop/vr.nix new file mode 100644 index 0000000..9fbc34a --- /dev/null +++ b/modules/desktop/vr.nix @@ -0,0 +1,13 @@ +{ + services.monado = { + enable = true; + defaultRuntime = true; + }; + + systemd.user.services.monado.environment = { + STEAMVR_LH_ENABLE = "1"; + XRT_COMPOSITOR_COMPUTE = "1"; + }; + + services.wivrn.enable = true; +} diff --git a/modules/git.nix b/modules/git.nix new file mode 100644 index 0000000..f6fe0fb --- /dev/null +++ b/modules/git.nix @@ -0,0 +1,27 @@ +{ + programs.git = { + enable = true; + config = { + signing = { + key = "51AE8C6E80E6AF3BDFBE2BF804B31D181764898D"; + signByDefault = true; + }; + user = { + name = "KeksNino"; + email = "KeksNino@proton.me"; + }; + init = { + defaultBranch = "main"; + }; + push = { + autoSetupRemote = true; + }; + commit = { + gpgsign = true; + }; + tag = { + gpgsign = true; + }; + }; + }; +} diff --git a/hosts/music-server/home-manager/beets.nix b/modules/home/beets.nix similarity index 100% rename from hosts/music-server/home-manager/beets.nix rename to modules/home/beets.nix diff --git a/modules/programs/hyprland/default.nix b/modules/home/hyprland/default.nix similarity index 100% rename from modules/programs/hyprland/default.nix rename to modules/home/hyprland/default.nix diff --git a/modules/programs/hyprland/execs.nix b/modules/home/hyprland/execs.nix similarity index 100% rename from modules/programs/hyprland/execs.nix rename to modules/home/hyprland/execs.nix diff --git a/modules/programs/hyprland/general.nix b/modules/home/hyprland/general.nix similarity index 100% rename from modules/programs/hyprland/general.nix rename to modules/home/hyprland/general.nix diff --git a/modules/programs/hyprland/keybinds.nix b/modules/home/hyprland/keybinds.nix similarity index 100% rename from modules/programs/hyprland/keybinds.nix rename to modules/home/hyprland/keybinds.nix diff --git a/modules/programs/hyprland/rules.nix b/modules/home/hyprland/rules.nix similarity index 100% rename from modules/programs/hyprland/rules.nix rename to modules/home/hyprland/rules.nix diff --git a/modules/programs/kitty.nix b/modules/home/kitty.nix similarity index 100% rename from modules/programs/kitty.nix rename to modules/home/kitty.nix diff --git a/hosts/desktop/home-manager/mpd.nix b/modules/home/mpd.nix similarity index 100% rename from hosts/desktop/home-manager/mpd.nix rename to modules/home/mpd.nix diff --git a/temp.nix b/temp.nix new file mode 100644 index 0000000..56708ed --- /dev/null +++ b/temp.nix @@ -0,0 +1,22 @@ +{ + programs.nixvim.lsp = { + servers = { + lua_ls.enable = true; + nixd = { + enable = true; + config = { + formatting.command = [ "nixfmt" ]; + nixpkgs.expr = "import { }"; + options = + let + flake = "(builtins.getFlake \"/home/user/nix-config/\")"; + in + { + nixos.expr = "${flake}.nixosConfigurations.desktop.options"; + home_manager.expr = "${flake}.nixosConfigurations.desktop.options.home-manager.users.type.getSubOptions []"; + }; + }; + }; + }; + }; +}