From 407f3ad172883c846e00e2bd2247e2fa4fb23e48 Mon Sep 17 00:00:00 2001 From: Daniel Flanagan Date: Mon, 17 Feb 2025 18:55:34 -0600 Subject: [PATCH 1/3] chore: trying to fix missing stateVersion issues --- lib/modules/nixos/default-module.nix | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/lib/modules/nixos/default-module.nix b/lib/modules/nixos/default-module.nix index 23b3f81..5b4cb1c 100644 --- a/lib/modules/nixos/default-module.nix +++ b/lib/modules/nixos/default-module.nix @@ -68,13 +68,6 @@ }; }; - # TODO: for each non-system user on the machine? - home-manager = { - useGlobalPkgs = lib.mkDefault true; - useUserPackages = lib.mkDefault true; - backupFileExtension = lib.mkDefault "hm-backup"; - }; - systemd.services.nix-daemon.environment.TMPDIR = lib.mkDefault "/var/tmp"; # TODO: why did I do this again? boot.tmp.cleanOnBoot = lib.mkDefault true; programs.gnupg.agent.enable = lib.mkDefault true; @@ -181,11 +174,18 @@ ]; packages = [ ]; }; - home-manager.users.daniel = { - home.stateVersion = lib.mkDefault config.system.stateVersion; - imports = with self.outputs.homeManagerModules; [ - default - ]; + home-manager = { + useGlobalPkgs = lib.mkDefault true; + useUserPackages = lib.mkDefault true; + backupFileExtension = lib.mkDefault "hm-backup"; + users = { + daniel = { + home.stateVersion = config.system.stateVersion; + imports = with self.outputs.homeManagerModules; [ + default + ]; + }; + }; }; } // lib.mkIf config.family-account.enable { From 2eebb2e66ab57850d27c1a028d42e7078c3d7b6d Mon Sep 17 00:00:00 2001 From: Daniel Flanagan Date: Mon, 17 Feb 2025 21:42:13 -0600 Subject: [PATCH 2/3] chore: start migrating thinker --- packages/hosts/default.nix | 1 + packages/hosts/thinker.nix | 86 ++++++++++++-------------------------- packages/machines.nix | 39 ----------------- 3 files changed, 27 insertions(+), 99 deletions(-) diff --git a/packages/hosts/default.nix b/packages/hosts/default.nix index 4efe5fd..48bd311 100644 --- a/packages/hosts/default.nix +++ b/packages/hosts/default.nix @@ -6,6 +6,7 @@ in beefcake = stableHost ./beefcake.nix { }; dragon = host ./dragon.nix { }; foxtrot = host ./foxtrot.nix { }; + thinker = host ./thinker.nix { }; htpc = stableHost ./htpc.nix { }; # arm-dragon = host ./dragon.nix { system = "aarch64-linux"; }; } diff --git a/packages/hosts/thinker.nix b/packages/hosts/thinker.nix index 5267d9c..b9cd7b5 100644 --- a/packages/hosts/thinker.nix +++ b/packages/hosts/thinker.nix @@ -1,19 +1,13 @@ -{ ... }: +{ diskoConfigurations, hardware, ... }: { - networking.hostName = "thinker"; + system.stateVersion = "24.11"; + networking.hostName = "foxtrot"; boot = { loader = { efi.canTouchEfiVariables = true; systemd-boot.enable = true; }; - /* - sudo filefrag -v /swap/swapfile | awk '$1=="0:" {print substr($4, 1, length($4)-2)}' - the above won't work for btrfs, instead you need - btrfs inspect-internal map-swapfile -r /swap/swapfile - https://wiki.archlinux.org/title/Power_management/Suspend_and_hibernate#Hibernation_into_swap_file - */ - # kernelParams = ["boot.shell_on_fail"]; initrd.availableKernelModules = [ "xhci_pci" "nvme" @@ -21,57 +15,29 @@ ]; }; - home-manager.users.daniel = { - programs.hyprlock.settings = { - label = [ - { - monitor = ""; - font_size = 32; - - halign = "center"; - valign = "center"; - text_align = "center"; - color = "rgba(255, 255, 255, 0.5)"; - - position = "0 -500"; - font_family = "IosevkaLyteTerm"; - text = "cmd[update:30000] acpi"; - - shadow_passes = 3; - shadow_size = 1; - shadow_color = "rgba(0, 0, 0, 1.0)"; - shadow_boost = 1.0; - } - ]; - }; - services.hypridle = - let - secondsPerMinute = 60; - lockSeconds = 10 * secondsPerMinute; - in - { - settings = { - listener = [ - { - timeout = lockSeconds + 55; - on-timeout = ''systemctl suspend''; - } - ]; - }; - }; - - wayland.windowManager.hyprland = { - settings = { - exec-once = [ - "eww open bar0" - ]; - # See https://wiki.hyprland.org/Configuring/Keywords/ for more - monitor = [ - "eDP-1,1920x1080@60Hz,0x0,1.0" - ]; - }; - }; - }; + imports = with hardware; [ + diskoConfigurations.foxtrot + lenovo-thinkpad-t480 + common-pc-laptop-ssd + ]; hardware.bluetooth.enable = true; + programs.steam.enable = true; + networking.wifi.enable = true; + lyte.desktop.enable = true; + home-manager.users.daniel = { + lyte.shell.enable = true; + lyte.desktop.enable = true; + home.file.".config/easyeffects/output" = { + enable = true; + source = fetchGit { + url = "https://github.com/ceiphr/ee-framework-presets"; + rev = "27885fe00c97da7c441358c7ece7846722fd12fa"; + }; + }; + services.easyeffects = { + enable = true; + preset = "philonmetal"; + }; + }; } diff --git a/packages/machines.nix b/packages/machines.nix index d9c5508..e637e41 100644 --- a/packages/machines.nix +++ b/packages/machines.nix @@ -173,45 +173,6 @@ in }; */ - thinker = nixpkgs-unstable.lib.nixosSystem { - system = "x86_64-linux"; - modules = with nixosModules; [ - home-manager-unstable-defaults - - { - _module.args = { - disks = [ "/dev/nvme0n1" ]; - swapSize = "32G"; - }; - } - outputs.diskoConfigurations.standard - hardware.nixosModules.lenovo-thinkpad-t480 - hardware.nixosModules.common-pc-laptop-ssd - - music-production - common - password-manager - graphical-workstation - # plasma6 - laptop - gaming - - ./nixos/thinker.nix - - { - home-manager.users.daniel = { - imports = with homeManagerModules; [ - senpai - iex - cargo - linux-desktop-environment-config - slippi.homeManagerModules.default - ]; - }; - } - ]; - }; - musicbox = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = with nixosModules; [ From e04a9eb0146f63c23e44ba12d2fc8d379f6d73c1 Mon Sep 17 00:00:00 2001 From: Daniel Flanagan Date: Mon, 17 Feb 2025 21:45:18 -0600 Subject: [PATCH 3/3] chore: thinker stateversion fixes WIP --- packages/hosts/thinker.nix | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/packages/hosts/thinker.nix b/packages/hosts/thinker.nix index b9cd7b5..686f83d 100644 --- a/packages/hosts/thinker.nix +++ b/packages/hosts/thinker.nix @@ -28,11 +28,14 @@ home-manager.users.daniel = { lyte.shell.enable = true; lyte.desktop.enable = true; - home.file.".config/easyeffects/output" = { - enable = true; - source = fetchGit { - url = "https://github.com/ceiphr/ee-framework-presets"; - rev = "27885fe00c97da7c441358c7ece7846722fd12fa"; + home = { + stateVersion = "24.11"; + file.".config/easyeffects/output" = { + enable = true; + source = fetchGit { + url = "https://github.com/ceiphr/ee-framework-presets"; + rev = "27885fe00c97da7c441358c7ece7846722fd12fa"; + }; }; }; services.easyeffects = {