From d2d58dbe13ce342c6c9e77a30de577ca2deffc8b Mon Sep 17 00:00:00 2001 From: winston Date: Thu, 18 May 2023 15:19:31 +0200 Subject: [PATCH] refactor: per-machine settings --- flake.nix | 10 +------- machines/common/linux/default.nix | 7 ++---- machines/common/linux/input.nix | 27 +++++++++++++++++++++ machines/common/linux/xsession.nix | 39 +++++++++++------------------- machines/futomaki/default.nix | 1 + 5 files changed, 45 insertions(+), 39 deletions(-) create mode 100644 machines/common/linux/input.nix diff --git a/flake.nix b/flake.nix index ae81bb7..74ac096 100644 --- a/flake.nix +++ b/flake.nix @@ -52,10 +52,7 @@ }; sway-unwrapped = swayfx.packages.${prev.system}.default; }; - commonHMConfig = { - username, - machine, - }: ({ + commonHMConfig = {username}: ({ config, pkgs, ... @@ -76,7 +73,6 @@ if pkgs.stdenv.isDarwin then "/Users/${username}/.config/nixpkgs" else "/home/${username}/.config/nixpkgs"; - inherit machine; }; }; }; @@ -92,7 +88,6 @@ ./machines/futomaki (commonHMConfig { username = "winston"; - machine.personal = true; }) ]; }; @@ -104,7 +99,6 @@ ./machines/bento (commonHMConfig { username = "w"; - machine.personal = false; }) ]; }; @@ -118,7 +112,6 @@ ./machines/sashimi (commonHMConfig { username = "winston"; - machine.personal = true; }) ]; }; @@ -150,7 +143,6 @@ if pkgs.stdenv.isDarwin then "/Users/${username}/.config/nixpkgs" else "/home/${username}/.config/nixpkgs"; - machine.personal = false; }; }; } diff --git a/machines/common/linux/default.nix b/machines/common/linux/default.nix index c8a9416..d879c75 100644 --- a/machines/common/linux/default.nix +++ b/machines/common/linux/default.nix @@ -1,14 +1,11 @@ -{pkgs, ...}: { +{ imports = [ ./boot.nix + ./input.nix ./network.nix ./sound.nix ./xsession.nix ]; - # needed for gnome3 pinentry - services.dbus.packages = [pkgs.gcr]; - xdg.portal.enable = true; - xdg.portal.wlr.enable = true; console.colors = [ "1e1e2e" diff --git a/machines/common/linux/input.nix b/machines/common/linux/input.nix new file mode 100644 index 0000000..40536c2 --- /dev/null +++ b/machines/common/linux/input.nix @@ -0,0 +1,27 @@ +{ + hardware.keyboard.qmk.enable = true; + services.kanata = { + enable = true; + keyboards.keychron-k6 = { + devices = ["/dev/input/by-id/usb-Keychron_Keychron_K6-event-kbd"]; + config = '' + (defsrc + 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 spc ralt rmet rctl) + (deflayer qwerty + @sesc 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 spc ralt rmet rctl) + + (defalias + sesc (fork esc grv (lsft rsft)) + ) + ''; + }; + }; +} diff --git a/machines/common/linux/xsession.nix b/machines/common/linux/xsession.nix index 1238fa8..1f5c62d 100644 --- a/machines/common/linux/xsession.nix +++ b/machines/common/linux/xsession.nix @@ -22,6 +22,15 @@ }; }; + programs.sway = { + enable = true; + extraPackages = with pkgs; [ + foot + swaylock-effects + swayidle + ]; + }; + services = { # mounting gvfs.enable = true; @@ -58,31 +67,6 @@ gnome.gnome-keyring.enable = true; - kanata = { - enable = true; - keyboards.keychron-k6 = { - devices = ["/dev/input/by-id/usb-Keychron_Keychron_K6-event-kbd"]; - config = '' - (defsrc - 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 spc ralt rmet rctl) - (deflayer qwerty - @sesc 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 spc ralt rmet rctl) - - (defalias - sesc (fork esc grv (lsft rsft)) - ) - ''; - }; - }; - xserver = { enable = true; desktopManager.xterm.enable = false; @@ -96,6 +80,11 @@ }; }; + # needed for gnome3 pinentry + services.dbus.packages = [pkgs.gcr]; + xdg.portal.enable = true; + xdg.portal.wlr.enable = true; + security.polkit.enable = true; systemd = { packages = [pkgs.polkit_gnome]; diff --git a/machines/futomaki/default.nix b/machines/futomaki/default.nix index 734f792..25ae846 100644 --- a/machines/futomaki/default.nix +++ b/machines/futomaki/default.nix @@ -44,6 +44,7 @@ in { environment.systemPackages = with pkgs; [ (discord.override {withOpenASAR = true;}) + gnome.gnome-boxes heroic lutris nur.repos.nekowinston.discover-overlay