{ config, ... }: let hmModules = config.flake.modules.homeManager; cursor = { name = "phinger-cursors-light"; packageName = "phinger-cursors"; size = 24; }; mkCursor = pkgs: cursor // { package = pkgs.${cursor.packageName}; }; in { flake.modules.nixos.theme = { pkgs, ... }: let cursorTheme = mkCursor pkgs; in { home-manager.sharedModules = [ hmModules.theme ]; environment.systemPackages = [ cursorTheme.package ]; }; flake.modules.homeManager.theme = { pkgs, ... }: let cursorTheme = mkCursor pkgs; version = "unstable-2025-10-23"; src = pkgs.fetchFromGitHub { owner = "Fausto-Korpsvart"; repo = "Kanagawa-GKT-Theme"; rev = "55ca4ba249eba21f861b9866b71ab41bb8930318"; hash = "sha256-UdMoMx2DoovcxSp/zBZ3PRv/Qpj+prd0uPm1gmdak2E="; }; override = { inherit src version; }; in { home.pointerCursor = { enable = true; inherit (cursorTheme) name package size ; dotIcons.enable = false; gtk.enable = true; }; gtk = { enable = true; theme = { name = "Kanagawa-BL-LB"; package = pkgs.kanagawa-gtk-theme.overrideAttrs (_: override); }; gtk4.theme = null; iconTheme = { name = "Kanagawa"; package = pkgs.kanagawa-icon-theme.overrideAttrs (_: override); }; }; qt = { enable = true; platformTheme.name = "gtk3"; }; }; }