92 lines
2.2 KiB
Nix
92 lines
2.2 KiB
Nix
{ 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=";
|
|
};
|
|
kanagawaGtkTheme = pkgs.stdenvNoCC.mkDerivation {
|
|
pname = "kanagawa-gtk-theme";
|
|
inherit src version;
|
|
|
|
nativeBuildInputs = [ pkgs.sassc ];
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
|
|
mkdir -p "$out/share/themes"
|
|
bash ./themes/install.sh \
|
|
--dest "$out/share/themes" \
|
|
--name Kanagawa \
|
|
--color dark
|
|
|
|
rm -r "$out/share/themes/Kanagawa-Dark/gtk-2.0"
|
|
|
|
runHook postInstall
|
|
'';
|
|
};
|
|
in
|
|
{
|
|
home.pointerCursor = {
|
|
enable = true;
|
|
inherit (cursorTheme)
|
|
name
|
|
package
|
|
size
|
|
;
|
|
dotIcons.enable = false;
|
|
gtk.enable = true;
|
|
};
|
|
|
|
gtk = {
|
|
enable = true;
|
|
theme = {
|
|
name = "Kanagawa-Dark";
|
|
package = kanagawaGtkTheme;
|
|
};
|
|
gtk4.theme = null;
|
|
iconTheme = {
|
|
name = "Kanagawa";
|
|
package = pkgs.kanagawa-icon-theme.overrideAttrs (_: {
|
|
inherit src version;
|
|
});
|
|
};
|
|
};
|
|
|
|
qt = {
|
|
enable = true;
|
|
platformTheme.name = "gtk3";
|
|
};
|
|
|
|
xdg.systemDirs.data = [
|
|
"${pkgs.gsettings-desktop-schemas}/share/gsettings-schemas/${pkgs.gsettings-desktop-schemas.name}"
|
|
"${pkgs.gtk3}/share/gsettings-schemas/${pkgs.gtk3.name}"
|
|
];
|
|
};
|
|
}
|