83 lines
1.8 KiB
Nix
83 lines
1.8 KiB
Nix
{
|
|
self,
|
|
inputs,
|
|
...
|
|
}: {
|
|
perSystem = {
|
|
pkgs,
|
|
system,
|
|
...
|
|
}: {
|
|
packages.catppuccinGtkMochaMauve = pkgs.catppuccin-gtk.override {
|
|
variant = "mocha";
|
|
accents = ["mauve"];
|
|
size = "standard";
|
|
tweaks = ["rimless"];
|
|
};
|
|
};
|
|
|
|
flake.nixosModules.gtkTheme = {
|
|
config,
|
|
pkgs,
|
|
lib,
|
|
...
|
|
}: let
|
|
catppuccinGtk = pkgs.catppuccin-gtk.override {
|
|
variant = "mocha";
|
|
accents = ["mauve"];
|
|
size = "standard";
|
|
tweaks = ["rimless"];
|
|
};
|
|
|
|
gtkThemeName = "Catppuccin-Mocha-Standard-Mauve-Dark";
|
|
|
|
gtkSettingsCommon = ''
|
|
gtk-application-prefer-dark-theme = true
|
|
gtk-theme-name = ${gtkThemeName}
|
|
gtk-icon-theme-name = Catppuccin-Mocha-Mauve
|
|
gtk-font-name = FiraMono Nerd Font 11
|
|
gtk-cursor-theme-name = Bibata-Modern-Ice
|
|
gtk-cursor-theme-size = 20
|
|
'';
|
|
in {
|
|
fonts.packages = [pkgs.nerd-fonts.fira-mono];
|
|
|
|
environment.systemPackages = with pkgs; [
|
|
catppuccinGtk
|
|
bibata-cursors
|
|
catppuccin-icons
|
|
];
|
|
|
|
environment.etc = {
|
|
"gtk-3.0/settings.ini".source = pkgs.writeText "gtk3-settings.ini" ''
|
|
[Settings]
|
|
${gtkSettingsCommon}
|
|
'';
|
|
|
|
"gtk-4.0/settings.ini".source = pkgs.writeText "gtk4-settings.ini" ''
|
|
[Settings]
|
|
${gtkSettingsCommon}
|
|
'';
|
|
};
|
|
|
|
environment.variables = {
|
|
XCURSOR_THEME = "Bibata-Modern-Ice";
|
|
XCURSOR_SIZE = "20";
|
|
};
|
|
|
|
programs.dconf.profiles.user.databases = [
|
|
{
|
|
lockAll = false;
|
|
settings = {
|
|
"org/gnome/desktop/interface" = {
|
|
gtk-theme = gtkThemeName;
|
|
icon-theme = "Catppuccin-Mocha-Mauve";
|
|
cursor-theme = "Bibata-Modern-Ice";
|
|
font-name = "FiraMono Nerd Font 11";
|
|
};
|
|
};
|
|
}
|
|
];
|
|
};
|
|
}
|