From dc2414a72a444acc13f3f8abd2d0a72fc16e1308 Mon Sep 17 00:00:00 2001 From: Matt Nish-Lapidus Date: Fri, 30 May 2025 19:55:20 -0400 Subject: [PATCH] refactoring --- flake.lock | 18 +-- hosts/eddie/boot.nix | 42 +++++++ hosts/eddie/configuration.nix | 213 +--------------------------------- hosts/eddie/hardware.nix | 80 +++++++++++++ hosts/eddie/packages.nix | 41 +++++++ modules/system/kanata.nix | 95 ++++++++++----- 6 files changed, 243 insertions(+), 246 deletions(-) create mode 100644 hosts/eddie/boot.nix create mode 100644 hosts/eddie/hardware.nix create mode 100644 hosts/eddie/packages.nix diff --git a/flake.lock b/flake.lock index 947eeb4..8b67bc2 100644 --- a/flake.lock +++ b/flake.lock @@ -375,11 +375,11 @@ ] }, "locked": { - "lastModified": 1748627197, - "narHash": "sha256-7dTtcq4Yi78cHfZcJaxlqkNs+cDBotrHjR9mkXfiUz4=", + "lastModified": 1748648449, + "narHash": "sha256-5mhG43yYEEpLxEp6e683A8YiW4JHmWihF7XECjMM6Ns=", "owner": "nix-community", "repo": "home-manager", - "rev": "379c9fb858ef9abe92d5590e7502a7c1387c076a", + "rev": "7c60ea029602851cdeb2f3246e991fcc117195bc", "type": "github" }, "original": { @@ -929,11 +929,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1748613622, - "narHash": "sha256-SLB2MV138ujdjw0ETEakNt/o2O+d/QtvNLlwaBZSWKg=", + "lastModified": 1748634340, + "narHash": "sha256-pZH4bqbOd8S+si6UcfjHovWDiWKiIGRNRMpmRWaDIms=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "b9d69212b5e65620e7d5b08df818db656f7fefb3", + "rev": "daa628a725ab4948e0e2b795e8fb6f4c3e289a7a", "type": "github" }, "original": { @@ -1645,11 +1645,11 @@ ] }, "locked": { - "lastModified": 1748625444, - "narHash": "sha256-vtmApAzyOhK50WtF1rNHMaGfvKTv3aMlQ2nfe5LQ+ow=", + "lastModified": 1748643537, + "narHash": "sha256-jHbSTgaqLdA/yFNp4eZzy1/7Mb0YY4YEzsVwAWrkVDc=", "owner": "0xc000022070", "repo": "zen-browser-flake", - "rev": "977d28759f7cd7bb1b5e9260d1586c2d60701b98", + "rev": "6dd55058eda4e71a6107204338ce71e70b81fed0", "type": "github" }, "original": { diff --git a/hosts/eddie/boot.nix b/hosts/eddie/boot.nix new file mode 100644 index 0000000..72b9d41 --- /dev/null +++ b/hosts/eddie/boot.nix @@ -0,0 +1,42 @@ +{ config, lib, pkgs, ... }: + +{ + # Bootloader. + boot = { + loader = { + systemd-boot = { + enable = true; + configurationLimit = 8; + }; + efi.canTouchEfiVariables = true; + }; + kernelPackages = pkgs.linuxPackages_6_13; + kernelModules = [ + "i2c-dev" + "ddcci-backlight" + "uinput" + "hid-playstation" + "amd_pstate=active" + ]; + extraModulePackages = with config.boot.kernelPackages; [ + ddcci-driver + openrazer + ]; + extraModprobeConfig = '' + options bluetooth disable_ertm=Y + ''; + initrd.systemd.enable = true; + initrd.kernelModules = [ + "nvidia" + "nvidia_modeset" + "nvidia_uvm" + "nvidia_drm" + "snd-virmidi" + ]; + kernelParams = [ + "nvidia_drm.fbdev=1" + "nvidia_drm.modeset=1" + ]; + supportedFilesystems = [ "nfs" ]; + }; +} diff --git a/hosts/eddie/configuration.nix b/hosts/eddie/configuration.nix index f4e598e..f90d29a 100644 --- a/hosts/eddie/configuration.nix +++ b/hosts/eddie/configuration.nix @@ -6,6 +6,9 @@ ./hardware-configuration.nix ./disko-config.nix ./razer-speaker-fix.nix + ./boot.nix + ./hardware.nix + ./packages btrfs-conf @@ -86,23 +89,6 @@ in with theme; [ - # normal.black - # normal.red - # normal.green - # normal.yellow - # normal.blue - # normal.magenta - # normal.cyan - # normal.white - # bright.black - # bright.red - # bright.green - # bright.yellow - # bright.blue - # bright.magenta - # bright.cyan - # bright.white - "111111" "e06c75" "98c379" @@ -122,83 +108,6 @@ ]; }; - environment.systemPackages = with pkgs; [ - wget - home-manager - curl - git-lfs - rsync - gnupg - alsa-utils - alsa-tools - util-linux - appimage-run - xwayland-run - cifs-utils - ddcutil - greetd.tuigreet - bluez-tools - qemu - quickemu - borgbackup - virt-viewer - spice - spice-gtk - spice-protocol - win-virtio - win-spice - xwayland-satellite - vulkan-tools - openrazer-daemon - openrgb-with-all-plugins - xdg-desktop-portal-termfilechooser - - adwaita-icon-theme - adwaita-fonts - gnome-themes-extra - gnomeExtensions.appindicator - gnome-settings-daemon - ]; - - # Bootloader. - boot = { - loader = { - systemd-boot = { - enable = true; - configurationLimit = 8; - }; - efi.canTouchEfiVariables = true; - }; - kernelPackages = pkgs.linuxPackages_6_13; - kernelModules = [ - "i2c-dev" - "ddcci-backlight" - "uinput" - "hid-playstation" - "amd_pstate=active" - ]; - extraModulePackages = with config.boot.kernelPackages; [ - ddcci-driver - openrazer - ]; - extraModprobeConfig = '' - options bluetooth disable_ertm=Y - ''; - initrd.systemd.enable = true; - initrd.kernelModules = [ - "nvidia" - "nvidia_modeset" - "nvidia_uvm" - "nvidia_drm" - "snd-virmidi" - ]; - kernelParams = [ - "nvidia_drm.fbdev=1" - "nvidia_drm.modeset=1" - ]; - supportedFilesystems = [ "nfs" ]; - }; - systemd.services.tailscaled.after = [ "NetworkManager-wait-online.service" ]; systemd.sleep.extraConfig = '' HibernateDelaySec=2h @@ -209,83 +118,6 @@ man.generateCaches = true; }; - hardware = { - # fancontrol = { - # enable = true; - # config = ""; - # }; - sane = { - enable = true; - extraBackends = [ - pkgs.hplipWithPlugin - pkgs.sane-airscan - pkgs.epkowa - pkgs.utsushi - ]; - }; - i2c.enable = true; - uinput.enable = true; - openrazer = { - enable = true; - users = [ "emenel" ]; - }; - graphics = { - enable = true; - enable32Bit = true; - extraPackages = with pkgs; [ - rocmPackages.clr.icd - amdvlk - ]; - extraPackages32 = with pkgs.driversi686Linux; [ - amdvlk - ]; - }; - - enableAllFirmware = true; - firmware = [ - pkgs.sof-firmware - pkgs.alsa-firmware - ]; - - amdgpu.initrd.enable = true; - - nvidia = { - open = true; - # Modesetting is required. - modesetting.enable = true; - powerManagement.enable = true; - powerManagement.finegrained = true; - - package = config.boot.kernelPackages.nvidiaPackages.beta; - - prime = { - amdgpuBusId = "PCI:101:0:0"; - nvidiaBusId = "PCI:1:0:0"; - offload = { - enable = true; - enableOffloadCmd = true; - }; - - #reverseSync.enable = true; - #sync.enable = true; - }; - # nvidiaSettings = true; - }; - - brillo.enable = true; - steam-hardware.enable = true; - bluetooth = { - enable = true; - settings = { - General = { - Enable = "Source,Sink,Media,Socket"; - ControllerMode = "bredr"; - JustWorksRepairing = "always"; - }; - }; - }; - }; - services.dictd = { enable = true; DBs = with pkgs.dictdDBs; [ @@ -436,10 +268,6 @@ }; }; - # Enable the GNOME Desktop Environment. - # services.xserver.displayManager.gdm.enable = true; - # services.xserver.desktopManager.gnome.enable = true; - services.xserver.deviceSection = ''Option "TearFree" "true"''; # For amdgpu. services.gnome = { gnome-keyring.enable = true; @@ -625,39 +453,8 @@ users.groups.uinput = { }; - # services.borgmatic = { - # enable = true; - # configurations = { - # eddie = { - # source_directories = [ - # "/home/emenel" - # ]; - # exclude_patterns = [ - # "- .cache" - # "- .nix*" - # "- .steam*" - # "- Sync" - # "- Mounts" - # "- .BitwigStudio" - # "- .local/share/bitwig" - # "- .local/share/flatpak" - # "- .local/share/Steam" - # ]; - # repositories = [ - # { - # "path" = "ssh://oyi3ydnz@oyi3ydnz.repo.borgbase.com/./repo"; - # "label" = "eddie on borgbase"; - # } - # ]; - # keep_daily = 3; - # keep_hourly = 3; - # keep_monthly = 2; - # # btrfs = { - # # btrfs_command = "${pkgs.btrfs-progs}/bin/btrfs"; - # # }; - # }; - # }; - # }; + + #do not change diff --git a/hosts/eddie/hardware.nix b/hosts/eddie/hardware.nix new file mode 100644 index 0000000..6e1bb76 --- /dev/null +++ b/hosts/eddie/hardware.nix @@ -0,0 +1,80 @@ +{ config, lib, pkgs, ... }: + +{ + hardware = { + # fancontrol = { + # enable = true; + # config = ""; + # }; + sane = { + enable = true; + extraBackends = [ + pkgs.hplipWithPlugin + pkgs.sane-airscan + pkgs.epkowa + pkgs.utsushi + ]; + }; + i2c.enable = true; + uinput.enable = true; + openrazer = { + enable = true; + users = [ "emenel" ]; + }; + graphics = { + enable = true; + enable32Bit = true; + extraPackages = with pkgs; [ + rocmPackages.clr.icd + amdvlk + ]; + extraPackages32 = with pkgs.driversi686Linux; [ + amdvlk + ]; + }; + + enableAllFirmware = true; + firmware = [ + pkgs.sof-firmware + pkgs.alsa-firmware + ]; + + amdgpu.initrd.enable = true; + + nvidia = { + open = true; + # Modesetting is required. + modesetting.enable = true; + powerManagement.enable = true; + powerManagement.finegrained = true; + + package = config.boot.kernelPackages.nvidiaPackages.beta; + + prime = { + amdgpuBusId = "PCI:101:0:0"; + nvidiaBusId = "PCI:1:0:0"; + offload = { + enable = true; + enableOffloadCmd = true; + }; + + #reverseSync.enable = true; + #sync.enable = true; + }; + # nvidiaSettings = true; + }; + + brillo.enable = true; + steam-hardware.enable = true; + bluetooth = { + enable = true; + settings = { + General = { + Enable = "Source,Sink,Media,Socket"; + ControllerMode = "bredr"; + JustWorksRepairing = "always"; + }; + }; + }; + }; +} diff --git a/hosts/eddie/packages.nix b/hosts/eddie/packages.nix new file mode 100644 index 0000000..7c6627a --- /dev/null +++ b/hosts/eddie/packages.nix @@ -0,0 +1,41 @@ +{ config, lib, pkgs, ... }: + +{ + environment.systemPackages = with pkgs; [ + wget + home-manager + curl + git-lfs + rsync + gnupg + alsa-utils + alsa-tools + util-linux + appimage-run + xwayland-run + cifs-utils + ddcutil + greetd.tuigreet + bluez-tools + qemu + quickemu + borgbackup + virt-viewer + spice + spice-gtk + spice-protocol + win-virtio + win-spice + xwayland-satellite + vulkan-tools + openrazer-daemon + openrgb-with-all-plugins + xdg-desktop-portal-termfilechooser + + adwaita-icon-theme + adwaita-fonts + gnome-themes-extra + gnomeExtensions.appindicator + gnome-settings-daemon + ]; +} diff --git a/modules/system/kanata.nix b/modules/system/kanata.nix index 422711c..1e03bdd 100644 --- a/modules/system/kanata.nix +++ b/modules/system/kanata.nix @@ -26,7 +26,9 @@ let a (tap-hold $tap-timeout $hold-timeout a lshift) s (tap-hold $tap-timeout $hold-timeout s lalt) d (tap-hold $tap-timeout $hold-timeout d lctrl) - ;; f (tap-hold-press $tap-timeout $hold-timeout f ) + + ;; tap-dance for common combos + tap-copy (tap-dance 150 (c C-c)) ) ''; @@ -62,7 +64,6 @@ allow-hardware-repeat false esc 1 2 3 4 5 6 7 8 9 0 - = bspc tab q w e r t y u i o p [ ] \ caps a s d f g h j k l ; ' ret - lsft z x c v b n m , . / rsft lctl lmet lalt f23 ins spc f24 ralt rmet menu rctrl f19 f20 f21 f22) @@ -74,29 +75,58 @@ ${shared-alias} (defalias controls (layer-while-held media-controls)) -(deflayer qwerty - grv 1 2 3 4 5 6 7 8 9 0 - = bspc - tab q w e r t y u i o p [ ] \ - @supesc @a @s @d f g h j k l ; ' ret - @sp-lsft z x c v b n m , . / @sp-rsft - @supesc @controls lalt lctrl @spcnav @spcnav rctrl ralt @controls @hyper @supesc +(deflayer base + grv 1 2 3 4 5 6 7 8 9 0 - = bspc + tab q w e r t y u i o p [ ] \ + @supesc @a @s @d f g h j k l ; ' ret + @sp-lsft z x @tap-copy v b n m , . / @sp-rsft + @supesc @controls lalt lctrl @spcnav @spcnav rctrl ralt @controls @hyper @supesc bspc ret ret del) -(deflayer navigation - grv f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 bspc - tab q w e r t home pgdn pgup end p [ ] prtsc - _ @a @s @d f g left down up right ; ' ret - _ z x c v b n m , . / up - _ _ _ _ _ _ _ _ left down right - _ _ _ _) +(deflayermap (navigation) + 1 f1 + 2 f2 + 3 f3 + 4 f4 + 5 f5 + 6 f6 + 7 f7 + 8 f8 + 9 f9 + 0 f10 + - f11 + = f12 -(deflayer media-controls - grv VolumeMute VolumeDown VolumeUp f4 MediaTrackPrevious MediaPlayPause MediaTrackNext f8 f9 f10 f11 f12 bspc - tab q w e r t home pgdn pgup end p [ ] \ - _ @a @s @d f g MediaTrackPrevious VolumeDown VolumeUp MediaTrackNext MediaPlayPause ' ret - _ z x c v b n m , . / _ - _ _ _ _ _ _ _ _ _ _ _ - _ _ _ _) + y home + u pgdn + i pgup + o end + + h left + j down + k up + l right + + rsft up + menu down + rmet left + rctrl right + ___ _) + +(deflayermap (media-controls) + 1 VolumeMute + 2 VolumeDown + 3 VolumeUp + 5 MediaTrackPrevious + 6 MediaPlayPause + 7 MediaTrackNext + + h MediaTrackPrevious + j VolumeDown + k VolumeUp + l MediaTrackNext + ; MediaPlayPause + ___ _) ''; }; @@ -121,19 +151,26 @@ ${k-vars} ${shared-alias} -(deflayer qwerty +(deflayer base grv 1 2 3 4 5 6 7 8 9 0 - = bspc tab q w e r t y u i o p [ ] \ @supesc @a @s @d f g h j k l ; ' ret @sp-lsft z x c v b n m , . / @sp-rsft @supesc lalt @ctrl-ret @spcnav @ctrl-ret ralt) -(deflayer navigation - grv 1 2 3 4 5 6 7 8 9 0 - = bspc - tab q w e r t home pgdn pgup end p [ ] \ - _ _ _ _ _ _ left down up right ; ' ret - @sp-lsft z x c v b n m , . / @sp-rsft - _ _ _ _ _ _) +(deflayermap (navigation) + y home + u pgdn + i pgup + o end + + h left + j down + k up + l right + + ___ _) + ''; }; };