diff --git a/flake.nix b/flake.nix index 8cdfd98..213572a 100644 --- a/flake.nix +++ b/flake.nix @@ -1,3 +1,4 @@ + { description = "Greg Burd's NixOS and Home Manager Configuration"; @@ -13,6 +14,8 @@ disko.url = "github:nix-community/disko"; disko.inputs.nixpkgs.follows = "nixpkgs"; + fh.url = "https://flakehub.com/f/DeterminateSystems/fh/*.tar.gz"; + home-manager.url = "github:nix-community/home-manager/release-23.05"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; @@ -39,6 +42,7 @@ }; outputs = { self + , fh , nixpkgs , nix-formatter-pack , ... diff --git a/nixos/_mixins/hardware/gpu.nix b/nixos/_mixins/hardware/gpu.nix new file mode 100644 index 0000000..1aa67de --- /dev/null +++ b/nixos/_mixins/hardware/gpu.nix @@ -0,0 +1,16 @@ +{ config, lib, pkgs, ...}: { + environment.systemPackages = with pkgs; + [ + clinfo + libva-utils + python311Packages.gpustat + vdpauinfo + ] ++ (if lib.elem "nvidia" config.services.xserver.videoDrivers then + [ + nvtop + ] + else + [ + nvtop-amd + ]); +} diff --git a/nixos/default.nix b/nixos/default.nix index 45645a1..124c1be 100644 --- a/nixos/default.nix +++ b/nixos/default.nix @@ -1,4 +1,4 @@ -{ config, desktop, hostname, inputs, lib, modulesPath, outputs, pkgs, stateVersion, username, ... }: +{ config, desktop, hostname, inputs, lib, modulesPath, outputs, pkgs, platform, stateVersion, username, ... }: let # Only enable auto upgrade if current config came from a clean tree # This avoids accidental auto-upgrades when working locally. @@ -104,6 +104,7 @@ in unzip usbutils wget + inputs.fh.packages.${platform}.default ]; variables = { EDITOR = "vi"; diff --git a/nixos/floki/default.nix b/nixos/floki/default.nix index a31f37e..710d557 100644 --- a/nixos/floki/default.nix +++ b/nixos/floki/default.nix @@ -6,6 +6,7 @@ inputs.nixos-hardware.nixosModules.common-pc inputs.nixos-hardware.nixosModules.common-pc-ssd (import ./disks.nix) + ../_mixins/hardware/gpu.nix ../_mixins/hardware/systemd-boot.nix ../_mixins/services/bluetooth.nix @@ -23,9 +24,7 @@ "nvme" "rtsx_pci_sdmmc" "sd_mod" - "sdhci_pci" - "uas" - "usbhid" + "thunderbolt" "usb_storage" "xhci_pci" ]; diff --git a/nixos/floki/disks.nix b/nixos/floki/disks.nix index 7a39a9f..34c4157 100644 --- a/nixos/floki/disks.nix +++ b/nixos/floki/disks.nix @@ -1,4 +1,4 @@ -{ config, disk ? "/dev/nvme0n1", ... }: +{ config, disks ? [ "/dev/nvme0n1" ], ... }: let hostname = config.networking.hostName; in @@ -7,12 +7,14 @@ in disk = { nvme = { type = "disk"; - device = disk; + device = builtins.elementAt disks 0; content = { type = "gpt"; partitions = { ESP = { size = "512M"; + bootable = true; + flags = [ "esp" ]; type = "EF00"; content = { type = "filesystem";