Compare commits
3 commits
1109eac9fa
...
edd3ffff2d
Author | SHA1 | Date | |
---|---|---|---|
edd3ffff2d |
|||
e03b8873cb |
|||
304f14ac57 |
5 changed files with 82 additions and 20 deletions
23
modules/programs/gui/thunar/module.nix
Normal file
23
modules/programs/gui/thunar/module.nix
Normal file
|
@ -0,0 +1,23 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
programs.thunar = {
|
||||
enable = true;
|
||||
plugins = builtins.attrValues {
|
||||
inherit
|
||||
(pkgs.xfce)
|
||||
thunar-volman
|
||||
thunar-vcs-plugin
|
||||
thunar-archive-plugin
|
||||
thunar-media-tags-plugin
|
||||
;
|
||||
};
|
||||
};
|
||||
services.gvfs = {
|
||||
enable = true;
|
||||
package = pkgs.gvfs;
|
||||
};
|
||||
}
|
|
@ -58,7 +58,6 @@ in {
|
|||
(pkgs)
|
||||
material-icons
|
||||
material-design-icons
|
||||
papirus-icon-theme
|
||||
lexend
|
||||
noto-fonts
|
||||
noto-fonts-cjk-sans
|
||||
|
|
|
@ -7,9 +7,9 @@
|
|||
inherit (lib.options) mkOption mkEnableOption;
|
||||
inherit (lib.types) str package;
|
||||
inherit (lib.modules) mkIf;
|
||||
cfg = config.modules.theme.gtk;
|
||||
cfg = config.modules.theming.gtk;
|
||||
in {
|
||||
options.modules.theme.gtk = {
|
||||
options.modules.theming.gtk = {
|
||||
enable = mkEnableOption "Wether to enable GTK theming";
|
||||
theme = {
|
||||
name = mkOption {
|
||||
|
@ -32,7 +32,7 @@ in {
|
|||
};
|
||||
package = mkOption {
|
||||
description = "The GTK icon theme package";
|
||||
default = pkgs.catppuccin-papirus-folders;
|
||||
default = pkgs.papirus-icon-theme;
|
||||
type = package;
|
||||
};
|
||||
};
|
||||
|
@ -40,5 +40,25 @@ in {
|
|||
config = mkIf cfg.enable {
|
||||
# NOTE: we need this or gtk breaks
|
||||
programs.dconf.enable = true;
|
||||
|
||||
environment = {
|
||||
systemPackages = builtins.attrValues {
|
||||
inherit
|
||||
(pkgs)
|
||||
gruvbox-gtk-theme
|
||||
papirus-icon-theme
|
||||
;
|
||||
};
|
||||
variables = let
|
||||
cursorSize = 32;
|
||||
in {
|
||||
GTK_THEME = "Gruvbox-Dark";
|
||||
XCURSOR_THEME = "BreezeX-RosePine-Linux";
|
||||
XCURSOR_SIZE = cursorSize;
|
||||
|
||||
HYPRCURSOR_THEME = "BreezeX-RosePine-Linux";
|
||||
HYPRCURSOR_SIZE = cursorSize;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -7,9 +7,31 @@
|
|||
inherit (lib.modules) mkMerge mkIf;
|
||||
inherit (lib.options) mkEnableOption;
|
||||
cfg = config.modules.theming;
|
||||
inherit (builtins) toString isBool;
|
||||
inherit (lib) boolToString escape generators;
|
||||
|
||||
toGtk3Ini = generators.toINI {
|
||||
mkKeyValue = key: value: let
|
||||
value' =
|
||||
if isBool value
|
||||
then boolToString value
|
||||
else toString value;
|
||||
in "${escape ["="] key}=${value'}";
|
||||
};
|
||||
|
||||
gtkIni = {
|
||||
gtk-application-prefer-dark-theme = 1;
|
||||
gtk-font-name = "Lexend 11";
|
||||
gtk-icon-theme-name = "Papirus-Dark";
|
||||
gtk-xft-antialias = 1;
|
||||
gtk-xft-hinting = 1;
|
||||
gtk-xft-hintstyle = "hintslight";
|
||||
gtk-xft-rgba = "rgb";
|
||||
gtk-cursor-theme-name = "BreezeX-RosePine-Linux";
|
||||
gtk-theme-name = "Gruvbox-Dark";
|
||||
};
|
||||
in {
|
||||
options.modules.theming = {
|
||||
gtk.enable = mkEnableOption "gtk theming";
|
||||
qt.enable = mkEnableOption "qt theming";
|
||||
};
|
||||
config = mkMerge [
|
||||
|
@ -19,25 +41,23 @@ in {
|
|||
inherit (pkgs) rose-pine-cursor;
|
||||
};
|
||||
etc = {
|
||||
"xdg/gtk-4.0/settings.ini".text = ''
|
||||
[Settings]
|
||||
gtk-application-prefer-dark-theme=true
|
||||
gtk-cursor-theme-name=BreezeX-RosePine-Linux
|
||||
'';
|
||||
|
||||
"xdg/gtk-3.0/settings.ini".text = ''
|
||||
[Settings]
|
||||
gtk-application-prefer-dark-theme=true
|
||||
gtk-cursor-theme-name=BreezeX-RosePine-Linux
|
||||
'';
|
||||
"xdg/gtk-4.0/settings.ini".text = toGtk3Ini {
|
||||
Settings = gtkIni;
|
||||
};
|
||||
"xdg/gtk-3.0/settings.ini".text = toGtk3Ini {
|
||||
Settings = gtkIni;
|
||||
};
|
||||
|
||||
"xdg/gtk-2.0/gtkrc".text = ''
|
||||
gtk-cursor-theme-name = "BreezeX-RosePine-Linux"
|
||||
gtk-cursor-theme-size = 30
|
||||
gtk-cursor-theme-name = BreezeX-RosePine-Linux
|
||||
gtk-cursor-theme-size = 32
|
||||
gtk-theme-name = Gruvbox-Dark
|
||||
gtk-icon-theme-name = Papirus-Dark
|
||||
gtk-font-name = Lexend 11
|
||||
'';
|
||||
|
||||
"xdg/Xresources".text = ''
|
||||
Xcursor.size: 30
|
||||
Xcursor.size: 32
|
||||
Xcursor.theme: BreezeX-RosePine-Linux
|
||||
'';
|
||||
};
|
||||
|
|
|
@ -10,7 +10,7 @@ in {
|
|||
# Hyprland settings
|
||||
# Programs which get executed at Hyprland start.
|
||||
exec-once = [
|
||||
# "hyprctl setcursor ${cursor.name} ${toString cursor.size}"
|
||||
"hyprctl setcursor ${pkgs.rose-pine-cursor} BreezeX-RosePine-Linux"
|
||||
|
||||
"[workspace special:keepassxc; silent;tile] ${pkgs.keepassxc}/bin/keepassxc"
|
||||
"[workspace special:audio; silent;tile] ${pkgs.pwvucontrol}/bin/pwvucontrol"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue