diff options
| author | Henry J. Webster <hwebs@hwebs.info> | 2026-08-01 09:57:40 -0500 |
|---|---|---|
| committer | Henry J. Webster <hwebs@hwebs.info> | 2026-08-01 09:57:40 -0500 |
| commit | 726ef32d2631f15f991591ef6879925e08f442f6 (patch) | |
| tree | e2cea9a349a3bbd9491221ae19794dd3fda2d256 | |
| parent | 1ae615826dcb98cc9bfa83a0d6c0b550c6f36278 (diff) | |
desktop: centralize Adwaita cursor theme, fix pointer cursor on kusanagi
kusanagi set XCURSOR_THEME=Bibata-Modern-Classic but never declared the
theme in Nix — it only resolved while bibata-cursors lingered in an old
nix-env profile. Once that was gone the theme fell off the icon path and
the pointer/hand cursor disappeared.
Standardize both hosts on Adwaita (matching the shared niri config.kdl):
move XCURSOR_THEME/XCURSOR_SIZE and the adwaita-icon-theme package into
the shared profiles/desktop.nix so the theme is always on the icon path.
Drop the inert HYPRCURSOR_* vars (hyprcursor is unused under niri).
Assisted-by: Claude:claude-opus-4-8
| -rw-r--r-- | machines/enzo/desktop.nix | 6 | ||||
| -rw-r--r-- | machines/kusanagi/desktop.nix | 7 | ||||
| -rw-r--r-- | profiles/desktop.nix | 11 |
3 files changed, 14 insertions, 10 deletions
diff --git a/machines/enzo/desktop.nix b/machines/enzo/desktop.nix index 294fe41..1324d85 100644 --- a/machines/enzo/desktop.nix +++ b/machines/enzo/desktop.nix @@ -7,11 +7,8 @@ # --- Fonts: enzo's monospace (base font packages come from the shared profile) --- fonts.fontconfig.defaultFonts.monospace = [ "Adwaita Mono" ]; - # --- Cursor --- + # --- Shell state paths (cursor theme is shared — see ../../profiles/desktop.nix) --- environment.sessionVariables = { - XCURSOR_THEME = "Adwaita"; - XCURSOR_SIZE = "24"; - # TODO: move to dotfiles LESSHISTFILE = "$HOME/.local/state/lesshst"; HISTFILE = "$HOME/.local/state/bash_history"; @@ -20,7 +17,6 @@ nix.settings.use-xdg-base-directories = true; environment.systemPackages = with pkgs; [ - adwaita-icon-theme yambar # text status bar xdg-user-dirs ]; diff --git a/machines/kusanagi/desktop.nix b/machines/kusanagi/desktop.nix index e4b2bc3..88fe9a9 100644 --- a/machines/kusanagi/desktop.nix +++ b/machines/kusanagi/desktop.nix @@ -95,13 +95,10 @@ fontDir.enable = true; }; - # --- Cursor / renderer --- + # --- Renderer --- + # (Cursor theme is shared — see ../../profiles/desktop.nix.) environment.sessionVariables = { GSK_RENDERER = "gl"; - XCURSOR_THEME = "Bibata-Modern-Classic"; - XCURSOR_SIZE = "24"; - HYPRCURSOR_THEME = "Bibata-Modern-Classic"; - HYPRCURSOR_SIZE = "24"; }; # --- User: desktop groups (niri essentials + printing). Hardware groups diff --git a/profiles/desktop.nix b/profiles/desktop.nix index e4a1fcc..6afd91d 100644 --- a/profiles/desktop.nix +++ b/profiles/desktop.nix @@ -141,6 +141,15 @@ in policies.PasswordManagerEnabled = false; }; + # --- Cursor --- + # Both hosts use the Adwaita cursor theme (package below). The theme name must + # resolve on the icon path, else clients fall back to a themeless arrow with no + # pointer/hand cursor. Matches the shared niri config.kdl cursor block. + environment.sessionVariables = { + XCURSOR_THEME = "Adwaita"; + XCURSOR_SIZE = "24"; + }; + # --- Common desktop tools (system-wide to stay username-agnostic) --- environment.systemPackages = with pkgs; [ ghostty # terminal — required to actually use the GUI @@ -151,6 +160,8 @@ in libnotify # notify-send gnupg # gpg pinentry-gnome3 # passphrase prompt for the gpg agent + adwaita-icon-theme # Adwaita cursor + icon theme on the icon path (both + # hosts set XCURSOR_THEME=Adwaita; without this the pointer cursor is missing) ]; # --- Fonts (base) --- |
