From 7db3134d4b4c633a99da798febd1b7dd4a044769 Mon Sep 17 00:00:00 2001 From: langedev Date: Mon, 20 Nov 2023 00:48:14 -0800 Subject: [PATCH 1/5] Add desktop hardware information --- hardware/desktop.nix | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 hardware/desktop.nix diff --git a/hardware/desktop.nix b/hardware/desktop.nix new file mode 100644 index 0000000..e48ba96 --- /dev/null +++ b/hardware/desktop.nix @@ -0,0 +1,41 @@ +# 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 = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-amd" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/f3afdc38-7550-4113-9f87-10def35845e2"; + fsType = "ext4"; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/6D40-7FAB"; + fsType = "vfat"; + }; + + swapDevices = + [ { device = "/dev/disk/by-uuid/743a10e1-a064-41e3-a0ae-59ca54cff1b1"; } + ]; + + # 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.enp5s0.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; + # high-resolution display + hardware.video.hidpi.enable = lib.mkDefault true; +} From 8428e4fe84d6b86905a807de6963074d5d71ceae Mon Sep 17 00:00:00 2001 From: langedev Date: Mon, 4 Dec 2023 17:40:50 -0800 Subject: [PATCH 2/5] fix desktop environment --- configuration.nix | 6 +++--- desktop.nix | 2 +- flake.lock | 26 +++++++++++++------------- flake.nix | 2 +- hardware/desktop.nix | 4 +--- modules/audio/pipewire/default.nix | 1 + modules/graphics/nvidia/default.nix | 20 +++++++++++++++++--- 7 files changed, 37 insertions(+), 24 deletions(-) diff --git a/configuration.nix b/configuration.nix index ff30656..f0f53e2 100644 --- a/configuration.nix +++ b/configuration.nix @@ -5,8 +5,8 @@ { config, pkgs, ... }: let - systemType = "laptop"; - #systemType = "desktop"; + #systemType = "laptop"; + systemType = "desktop"; in { nix.package = pkgs.nixUnstable; imports = @@ -23,7 +23,7 @@ in { ./modules/audio/pipewire - ./modules/shell/fish # This enables fish as the default shell + ./modules/shell/fish ./modules/network/browsers/librewolf ./modules/network/syncthing diff --git a/desktop.nix b/desktop.nix index 18573f3..9a5dc5d 100644 --- a/desktop.nix +++ b/desktop.nix @@ -5,6 +5,6 @@ imports = [ ./hardware/desktop.nix - # ./modules/graphics/nvidia + ./modules/graphics/nvidia ]; } diff --git a/flake.lock b/flake.lock index 79f4514..a51ef7d 100644 --- a/flake.lock +++ b/flake.lock @@ -9,11 +9,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1699808562, - "narHash": "sha256-wTU1ivhWAAGWO6Fzx4RYFruW8HrIh5X7fjy5NJPaqOc=", + "lastModified": 1701737536, + "narHash": "sha256-xSmfHhhCL9mAta5jKfcbJxYjCoD2MdLPBMjBUWvYAJI=", "owner": "hyprwm", "repo": "Hyprland", - "rev": "0ba2e6870478bcf1af1b6508677b46a3484fb21f", + "rev": "3bb9c7c5cf4f2ee30bf821501499f2308d616f94", "type": "github" }, "original": { @@ -49,11 +49,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1698134075, - "narHash": "sha256-foCD+nuKzfh49bIoiCBur4+Fx1nozo+4C/6k8BYk4sg=", + "lastModified": 1700612854, + "narHash": "sha256-yrQ8osMD+vDLGFX7pcwsY/Qr5PUd6OmDMYJZzZi0+zc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "8efd5d1e283604f75a808a20e6cde0ef313d07d4", + "rev": "19cbff58383a4ae384dea4d1d0c823d72b49d614", "type": "github" }, "original": { @@ -104,18 +104,18 @@ "flake": false, "locked": { "host": "gitlab.freedesktop.org", - "lastModified": 1699292815, - "narHash": "sha256-HXu98PyBMKEWLqiTb8viuLDznud/SdkdJsx5A5CWx7I=", + "lastModified": 1701368958, + "narHash": "sha256-7kvyoA91etzVEl9mkA/EJfB6z/PltxX7Xc4gcr7/xlo=", "owner": "wlroots", "repo": "wlroots", - "rev": "5de9e1a99d6642c2d09d589aa37ff0a8945dcee1", + "rev": "5d639394f3e83b01596dcd166a44a9a1a2583350", "type": "gitlab" }, "original": { "host": "gitlab.freedesktop.org", "owner": "wlroots", "repo": "wlroots", - "rev": "5de9e1a99d6642c2d09d589aa37ff0a8945dcee1", + "rev": "5d639394f3e83b01596dcd166a44a9a1a2583350", "type": "gitlab" } }, @@ -135,11 +135,11 @@ ] }, "locked": { - "lastModified": 1697981233, - "narHash": "sha256-y8q4XUwx+gVK7i2eLjfR32lVo7TYvEslyzrmzYEaPZU=", + "lastModified": 1700508250, + "narHash": "sha256-X4o/mifI7Nhu0UKYlxx53wIC+gYDo3pVM9L2u3PE2bE=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "22e7a65ff9633e1dedfa5317fdffc49f68de2ff2", + "rev": "eb120ff25265ecacd0fc13d7dab12131b60d0f47", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 84f22c0..27ca7cf 100644 --- a/flake.nix +++ b/flake.nix @@ -5,7 +5,7 @@ }; outputs = { nixpkgs, hyprland, ... }: { - nixosConfigurations.jibril = nixpkgs.lib.nixosSystem { + nixosConfigurations.onizuka = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ ./configuration.nix diff --git a/hardware/desktop.nix b/hardware/desktop.nix index e48ba96..f6be0dc 100644 --- a/hardware/desktop.nix +++ b/hardware/desktop.nix @@ -8,7 +8,7 @@ [ (modulesPath + "/installer/scan/not-detected.nix") ]; - boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "usb_storage" "sd_mod" ]; + boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usbhid" "sd_mod" ]; boot.initrd.kernelModules = [ ]; boot.kernelModules = [ "kvm-amd" ]; boot.extraModulePackages = [ ]; @@ -36,6 +36,4 @@ nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; - # high-resolution display - hardware.video.hidpi.enable = lib.mkDefault true; } diff --git a/modules/audio/pipewire/default.nix b/modules/audio/pipewire/default.nix index c3ebfe8..3e55b02 100644 --- a/modules/audio/pipewire/default.nix +++ b/modules/audio/pipewire/default.nix @@ -5,6 +5,7 @@ services.pipewire = { enable = true; + wireplumber.enable = true; alsa.enable = false; alsa.support32Bit = false; pulse.enable = true; diff --git a/modules/graphics/nvidia/default.nix b/modules/graphics/nvidia/default.nix index 6d39712..7e0e568 100644 --- a/modules/graphics/nvidia/default.nix +++ b/modules/graphics/nvidia/default.nix @@ -1,7 +1,21 @@ { config, pkgs, lib, ... }: { - services.xserver.videoDrivers = [ "nvidia" ]; - hardware.opengl.enable = true; - hardware.nvidia.package = config.boot.kernelPackages.nvidiaPackages.stable; + # Enable OpenGL + hardware.opengl = { + enable = true; + driSupport = true; + driSupport32Bit = true; + }; + + services.xserver.videoDrivers = ["nvidia"]; + + hardware.nvidia = { + modesetting.enable = true; + package = config.boot.kernelPackages.nvidiaPackages.stable; + }; + + environment.systemPackages = with pkgs; [ + nvidia-vaapi-driver + ]; } From 0e90d6522cd19d69d350beb997f7fab409187a81 Mon Sep 17 00:00:00 2001 From: langedev Date: Mon, 4 Dec 2023 17:43:21 -0800 Subject: [PATCH 3/5] trying xonsh --- configuration.nix | 7 ++++--- modules/shell/xonsh/default.nix | 9 +++++++++ 2 files changed, 13 insertions(+), 3 deletions(-) create mode 100644 modules/shell/xonsh/default.nix diff --git a/configuration.nix b/configuration.nix index f0f53e2..25b762f 100644 --- a/configuration.nix +++ b/configuration.nix @@ -10,7 +10,7 @@ let in { nix.package = pkgs.nixUnstable; imports = - [ + [ # Hardware Specific Configuration ./${systemType}.nix @@ -23,10 +23,11 @@ in { ./modules/audio/pipewire - ./modules/shell/fish + #./modules/shell/fish + ./modules/shell/xonsh ./modules/network/browsers/librewolf ./modules/network/syncthing - + ./modules/login/greetd ]; diff --git a/modules/shell/xonsh/default.nix b/modules/shell/xonsh/default.nix new file mode 100644 index 0000000..2c5904d --- /dev/null +++ b/modules/shell/xonsh/default.nix @@ -0,0 +1,9 @@ +{ config, pkgs, lib, ... }: + +{ + programs.xonsh.enable = true; + + users.defaultUserShell = pkgs.xonsh; + + environment.shells = with pkgs; [ xonsh ]; +} From 38d9744465666adf4973bbe67f45348d879018c4 Mon Sep 17 00:00:00 2001 From: langedev Date: Fri, 16 Feb 2024 18:19:19 -0800 Subject: [PATCH 4/5] Update, and add ~/prog/scripts to path --- flake.lock | 55 +++++++++++++++++++++++++++----------- modules/system/default.nix | 4 +++ 2 files changed, 43 insertions(+), 16 deletions(-) diff --git a/flake.lock b/flake.lock index a51ef7d..cb22f7f 100644 --- a/flake.lock +++ b/flake.lock @@ -9,11 +9,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1701737536, - "narHash": "sha256-xSmfHhhCL9mAta5jKfcbJxYjCoD2MdLPBMjBUWvYAJI=", + "lastModified": 1708135752, + "narHash": "sha256-T7ioseAAZCNOAIP6beEBKXA2oFqEs7zphwvurT6sp9k=", "owner": "hyprwm", "repo": "Hyprland", - "rev": "3bb9c7c5cf4f2ee30bf821501499f2308d616f94", + "rev": "e3e7e1fdda7660a70bd206aa3ed6a45bb4000376", "type": "github" }, "original": { @@ -47,13 +47,35 @@ "type": "github" } }, + "hyprlang": { + "inputs": { + "nixpkgs": [ + "hyprland", + "xdph", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1704287638, + "narHash": "sha256-TuRXJGwtK440AXQNl5eiqmQqY4LZ/9+z/R7xC0ie3iA=", + "owner": "hyprwm", + "repo": "hyprlang", + "rev": "6624f2bb66d4d27975766e81f77174adbe58ec97", + "type": "github" + }, + "original": { + "owner": "hyprwm", + "repo": "hyprlang", + "type": "github" + } + }, "nixpkgs": { "locked": { - "lastModified": 1700612854, - "narHash": "sha256-yrQ8osMD+vDLGFX7pcwsY/Qr5PUd6OmDMYJZzZi0+zc=", + "lastModified": 1707546158, + "narHash": "sha256-nYYJTpzfPMDxI8mzhQsYjIUX+grorqjKEU9Np6Xwy/0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "19cbff58383a4ae384dea4d1d0c823d72b49d614", + "rev": "d934204a0f8d9198e1e4515dd6fec76a139c87f0", "type": "github" }, "original": { @@ -65,11 +87,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1699825797, - "narHash": "sha256-W2m42mVt4/O6CJFbECPfLApmi8bO+qscbmSeEKrSHEg=", + "lastModified": 1701902328, + "narHash": "sha256-3tiiSEgQRPps0aV40belvLk1k4Max7oRh/+hZGLtfGc=", "owner": "langedev", "repo": "nixpkgs", - "rev": "a69768a1c385042d46ff57396c49d26df5ac035c", + "rev": "162f092c27afe0949253753f088c2babfba5b902", "type": "github" }, "original": { @@ -104,18 +126,18 @@ "flake": false, "locked": { "host": "gitlab.freedesktop.org", - "lastModified": 1701368958, - "narHash": "sha256-7kvyoA91etzVEl9mkA/EJfB6z/PltxX7Xc4gcr7/xlo=", + "lastModified": 1706359063, + "narHash": "sha256-5HUTG0p+nCJv3cn73AmFHRZdfRV5AD5N43g8xAePSKM=", "owner": "wlroots", "repo": "wlroots", - "rev": "5d639394f3e83b01596dcd166a44a9a1a2583350", + "rev": "00b869c1a96f300a8f25da95d624524895e0ddf2", "type": "gitlab" }, "original": { "host": "gitlab.freedesktop.org", "owner": "wlroots", "repo": "wlroots", - "rev": "5d639394f3e83b01596dcd166a44a9a1a2583350", + "rev": "00b869c1a96f300a8f25da95d624524895e0ddf2", "type": "gitlab" } }, @@ -125,6 +147,7 @@ "hyprland", "hyprland-protocols" ], + "hyprlang": "hyprlang", "nixpkgs": [ "hyprland", "nixpkgs" @@ -135,11 +158,11 @@ ] }, "locked": { - "lastModified": 1700508250, - "narHash": "sha256-X4o/mifI7Nhu0UKYlxx53wIC+gYDo3pVM9L2u3PE2bE=", + "lastModified": 1706521509, + "narHash": "sha256-AInZ50acOJ3wzUwGzNr1TmxGTMx+8j6oSTzz4E7Vbp8=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "eb120ff25265ecacd0fc13d7dab12131b60d0f47", + "rev": "c06fd88b3da492b8f9067be021b9184f7012b5a8", "type": "github" }, "original": { diff --git a/modules/system/default.nix b/modules/system/default.nix index b13e3d4..a673e60 100644 --- a/modules/system/default.nix +++ b/modules/system/default.nix @@ -18,12 +18,16 @@ ]; # XDG Compliance + xdg.portal.config.common.default = "*"; environment.sessionVariables = rec { XDG_CONFIG_HOME = "\${HOME}/.config"; XDG_CACHE_HOME = "\${HOME}/.cache"; XDG_STATE_HOME = "\${HOME}/.local/state"; XDG_DATA_HOME = "\${HOME}/.local/share"; XDG_BIN_HOME = "\${HOME}/.local/bin"; + PATH = [ + "\${HOME}/prog/scripts" + ]; }; users.groups = { From 4a5e71f4ade21cdfb005524ecce5319f2fa31889 Mon Sep 17 00:00:00 2001 From: langedev Date: Sat, 17 Feb 2024 18:06:27 -0800 Subject: [PATCH 5/5] Faster boot timeout, and updated --- flake.lock | 6 +++--- modules/system/default.nix | 2 ++ 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/flake.lock b/flake.lock index cb22f7f..1629ff0 100644 --- a/flake.lock +++ b/flake.lock @@ -9,11 +9,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1708135752, - "narHash": "sha256-T7ioseAAZCNOAIP6beEBKXA2oFqEs7zphwvurT6sp9k=", + "lastModified": 1708215223, + "narHash": "sha256-5z+NPNoiWKoaz3M4LZJ2fP+N7Vl9XGwr4QAV8rh4l4o=", "owner": "hyprwm", "repo": "Hyprland", - "rev": "e3e7e1fdda7660a70bd206aa3ed6a45bb4000376", + "rev": "683a4b07c514fa3c13cdf09e475283a69fcc7653", "type": "github" }, "original": { diff --git a/modules/system/default.nix b/modules/system/default.nix index a673e60..458ad20 100644 --- a/modules/system/default.nix +++ b/modules/system/default.nix @@ -2,7 +2,9 @@ { # Use the systemd-boot EFI boot loader. + boot.kernelPackages = pkgs.linuxPackages_latest; boot.loader.systemd-boot.enable = true; + boot.loader.timeout = 1; boot.loader.efi.canTouchEfiVariables = true; time.timeZone = "America/Los_Angeles";