mirror of
https://github.com/ItsDrike/nixdots
synced 2025-06-30 08:10:42 +00:00
Compare commits
No commits in common. "f1bda719c6c7cabe521fab6af1278b57748390eb" and "4af1e377817ab71e4d30ee18114b98677ed0014b" have entirely different histories.
f1bda719c6
...
4af1e37781
9 changed files with 6 additions and 283 deletions
|
@ -33,7 +33,6 @@ in
|
||||||
./packages
|
./packages
|
||||||
./programs
|
./programs
|
||||||
./impermanence
|
./impermanence
|
||||||
./themes
|
|
||||||
];
|
];
|
||||||
|
|
||||||
config = {
|
config = {
|
||||||
|
|
|
@ -1,13 +1,10 @@
|
||||||
{
|
{
|
||||||
dconf = {
|
dconf.settings = {
|
||||||
enable = true;
|
# This is like a system-wide dark mode swithc that some apps respect
|
||||||
settings = {
|
# Equivalent of the following dconf command:
|
||||||
# This is like a system-wide dark mode swithc that some apps respect
|
# `conf write /org/gnome/desktop/interface/color-scheme "'prefer-dark'"`
|
||||||
# Equivalent of the following dconf command:
|
"org/gnome/desktop/interface" = {
|
||||||
# `conf write /org/gnome/desktop/interface/color-scheme "'prefer-dark'"`
|
color-scheme = "prefer-dark";
|
||||||
"org/gnome/desktop/interface" = {
|
|
||||||
color-scheme = "prefer-dark";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,16 +0,0 @@
|
||||||
{
|
|
||||||
osConfig,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
cfg = osConfig.myOptions.home-manager.theme.cursor;
|
|
||||||
in {
|
|
||||||
home = {
|
|
||||||
pointerCursor = {
|
|
||||||
package = cfg.package;
|
|
||||||
name = cfg.name;
|
|
||||||
size = cfg.size;
|
|
||||||
gtk.enable = true;
|
|
||||||
x11.enable = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,7 +0,0 @@
|
||||||
{
|
|
||||||
imports = [
|
|
||||||
./gtk.nix
|
|
||||||
./qt.nix
|
|
||||||
./cursor.nix
|
|
||||||
];
|
|
||||||
}
|
|
|
@ -1,80 +0,0 @@
|
||||||
{
|
|
||||||
osConfig,
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
cfg = osConfig.myOptions.home-manager.theme.gtk;
|
|
||||||
in {
|
|
||||||
home = {
|
|
||||||
packages = with pkgs; [
|
|
||||||
glib # gsettings
|
|
||||||
cfg.theme.package
|
|
||||||
cfg.iconTheme.package
|
|
||||||
];
|
|
||||||
|
|
||||||
sessionVariables = {
|
|
||||||
# set GTK theme to the name specified by the gtk theme package
|
|
||||||
GTK_THEME = "${cfg.theme.name}";
|
|
||||||
|
|
||||||
# gtk applications should use filepickers specified by xdg
|
|
||||||
GTK_USE_PORTAL = "${toString (if cfg.usePortal then 1 else 0)}";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
gtk = {
|
|
||||||
enable = true;
|
|
||||||
|
|
||||||
theme = {
|
|
||||||
name = cfg.theme.name;
|
|
||||||
package = cfg.theme.package;
|
|
||||||
};
|
|
||||||
|
|
||||||
iconTheme = {
|
|
||||||
name = cfg.iconTheme.name;
|
|
||||||
package = cfg.iconTheme.package;
|
|
||||||
};
|
|
||||||
|
|
||||||
font = {
|
|
||||||
name = cfg.font.name;
|
|
||||||
size = cfg.font.size;
|
|
||||||
};
|
|
||||||
|
|
||||||
gtk2 = {
|
|
||||||
configLocation = "${config.xdg.configHome}/gtk-2.0/gtkrc";
|
|
||||||
extraConfig = ''
|
|
||||||
gtk-xft-antialias=1
|
|
||||||
gtk-xft-hinting=1
|
|
||||||
gtk-xft-hintstyle="hintslight"
|
|
||||||
gtk-xft-rgba="rgb"
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
gtk3.extraConfig = {
|
|
||||||
gtk-toolbar-style = "GTK_TOOLBAR_BOTH";
|
|
||||||
gtk-toolbar-icon-size = "GTK_ICON_SIZE_LARGE_TOOLBAR";
|
|
||||||
gtk-decoration-layout = "appmenu:none";
|
|
||||||
gtk-button-images = 1;
|
|
||||||
gtk-menu-images = 1;
|
|
||||||
gtk-enable-event-sounds = 0;
|
|
||||||
gtk-enable-input-feedback-sounds = 0;
|
|
||||||
gtk-xft-antialias = 1;
|
|
||||||
gtk-xft-hinting = 1;
|
|
||||||
gtk-xft-hintstyle = "hintslight";
|
|
||||||
gtk-error-bell = 0;
|
|
||||||
gtk-application-prefer-dark-theme = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
gtk4.extraConfig = {
|
|
||||||
gtk-decoration-layout = "appmenu:none";
|
|
||||||
gtk-enable-event-sounds = 0;
|
|
||||||
gtk-enable-input-feedback-sounds = 0;
|
|
||||||
gtk-xft-antialias = 1;
|
|
||||||
gtk-xft-hinting = 1;
|
|
||||||
gtk-xft-hintstyle = "hintslight";
|
|
||||||
gtk-error-bell = 0;
|
|
||||||
gtk-application-prefer-dark-theme = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,57 +0,0 @@
|
||||||
{
|
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
osConfig,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
inherit (lib) mkIf mkMerge;
|
|
||||||
|
|
||||||
cfg = osConfig.myOptions.home-manager.theme.qt;
|
|
||||||
in {
|
|
||||||
qt = {
|
|
||||||
enable = true;
|
|
||||||
platformTheme.name = mkIf cfg.forceGtk "gtk"; # just an override for QT_QPA_PLATFORMTHEME, takes "gtk", "gnome", "qtct" or "kde"
|
|
||||||
style = mkIf (!cfg.forceGtk) {
|
|
||||||
name = cfg.theme.name;
|
|
||||||
package = cfg.theme.package;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
home = {
|
|
||||||
packages = with pkgs;
|
|
||||||
mkMerge [
|
|
||||||
[
|
|
||||||
# libraries and programs to ensure that qt applications load without issue
|
|
||||||
# breeze-icons is added as a fallback
|
|
||||||
libsForQt5.qt5ct
|
|
||||||
kdePackages.qt6ct
|
|
||||||
breeze-icons
|
|
||||||
]
|
|
||||||
|
|
||||||
(mkIf cfg.forceGtk [
|
|
||||||
# libraries to ensure that "gtk" platform theme works
|
|
||||||
# as intended after the following PR:
|
|
||||||
# <https://github.com/nix-community/home-manager/pull/5156>
|
|
||||||
libsForQt5.qtstyleplugins
|
|
||||||
qt6Packages.qt6gtk2
|
|
||||||
])
|
|
||||||
];
|
|
||||||
|
|
||||||
sessionVariables = {
|
|
||||||
# scaling - 1 means no scaling
|
|
||||||
QT_AUTO_SCREEN_SCALE_FACTOR = "1";
|
|
||||||
|
|
||||||
# use wayland as the default backend, fallback to xcb if wayland is not available
|
|
||||||
QT_QPA_PLATFORM = "wayland;xcb";
|
|
||||||
|
|
||||||
# disable window decorations everywhere
|
|
||||||
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
|
|
||||||
|
|
||||||
# remain backwards compatible with qt5
|
|
||||||
DISABLE_QT5_COMPAT = "0";
|
|
||||||
|
|
||||||
# tell calibre to use the dark theme, because the light one hurts my eyes
|
|
||||||
CALIBRE_USE_DARK_PALETTE = "1";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -6,7 +6,6 @@ in
|
||||||
./programs
|
./programs
|
||||||
./git.nix
|
./git.nix
|
||||||
./wms.nix
|
./wms.nix
|
||||||
./theme.nix
|
|
||||||
];
|
];
|
||||||
|
|
||||||
options.myOptions.home-manager = {
|
options.myOptions.home-manager = {
|
||||||
|
|
|
@ -1,108 +0,0 @@
|
||||||
{ lib, pkgs, ... }: let
|
|
||||||
inherit (lib) mkEnableOption mkOption types;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.myOptions.home-manager.theme = {
|
|
||||||
gtk = {
|
|
||||||
enable = mkEnableOption "GTK theming optionss";
|
|
||||||
usePortal = mkEnableOption "native desktop portal use for filepickers";
|
|
||||||
|
|
||||||
theme = {
|
|
||||||
name = mkOption {
|
|
||||||
type = types.str;
|
|
||||||
default = "Catppuccin-Mocha-Standard-Blue-dark";
|
|
||||||
description = "The name for the GTK theme package";
|
|
||||||
};
|
|
||||||
|
|
||||||
package = mkOption {
|
|
||||||
type = types.package;
|
|
||||||
description = "The theme package to be used for GTK programs";
|
|
||||||
default = pkgs.catppuccin-gtk.override {
|
|
||||||
size = "standard";
|
|
||||||
accents = ["blue"];
|
|
||||||
variant = "mocha";
|
|
||||||
tweaks = ["normal"];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
iconTheme = {
|
|
||||||
name = mkOption {
|
|
||||||
type = types.str;
|
|
||||||
description = "The name for the icon theme that will be used for GTK programs";
|
|
||||||
default = "Papirus-Dark";
|
|
||||||
};
|
|
||||||
|
|
||||||
package = mkOption {
|
|
||||||
type = types.package;
|
|
||||||
description = "The GTK icon theme package to be used";
|
|
||||||
default = pkgs.catppuccin-papirus-folders.override {
|
|
||||||
accent = "blue";
|
|
||||||
flavor = "mocha";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
font = {
|
|
||||||
name = mkOption {
|
|
||||||
type = types.str;
|
|
||||||
description = "The name of the font that will be used for GTK applications";
|
|
||||||
default = "Noto Sans"; # Lexend
|
|
||||||
};
|
|
||||||
|
|
||||||
size = mkOption {
|
|
||||||
type = types.int;
|
|
||||||
description = "The size of the font";
|
|
||||||
default = 10; # 10
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
qt = {
|
|
||||||
forceGtk = mkOption {
|
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "Whether to force QT applications to try and use the GTK theme.";
|
|
||||||
};
|
|
||||||
|
|
||||||
theme = {
|
|
||||||
name = mkOption {
|
|
||||||
type = types.str;
|
|
||||||
default = "Catppuccin-Mocha-Dark";
|
|
||||||
description = "The name for the QT theme package";
|
|
||||||
};
|
|
||||||
|
|
||||||
package = mkOption {
|
|
||||||
type = types.package;
|
|
||||||
description = "The theme package to be used for QT programs";
|
|
||||||
default = pkgs.catppuccin-kde.override {
|
|
||||||
flavour = ["mocha"];
|
|
||||||
accents = ["blue"];
|
|
||||||
winDecStyles = ["modern"];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
cursor = {
|
|
||||||
name = mkOption {
|
|
||||||
type = types.str;
|
|
||||||
default = "catppuccin-mocha-dark-cursors";
|
|
||||||
description = "The name of the cursor inside the package";
|
|
||||||
};
|
|
||||||
|
|
||||||
package = mkOption {
|
|
||||||
type = types.package;
|
|
||||||
default = pkgs.catppuccin-cursors.mochaDark;
|
|
||||||
description = "The package providing the cursors";
|
|
||||||
};
|
|
||||||
|
|
||||||
size = mkOption {
|
|
||||||
type = types.int;
|
|
||||||
default = 24;
|
|
||||||
description = "The size of the cursor";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -23,8 +23,6 @@ in {
|
||||||
++ common;
|
++ common;
|
||||||
|
|
||||||
sansSerif = [
|
sansSerif = [
|
||||||
"Noto Sans"
|
|
||||||
"Jost"
|
|
||||||
"Lexend"
|
"Lexend"
|
||||||
]
|
]
|
||||||
++ common;
|
++ common;
|
||||||
|
@ -64,7 +62,6 @@ in {
|
||||||
inter
|
inter
|
||||||
lato
|
lato
|
||||||
lexend
|
lexend
|
||||||
jost
|
|
||||||
dejavu_fonts
|
dejavu_fonts
|
||||||
noto-fonts
|
noto-fonts
|
||||||
noto-fonts-cjk
|
noto-fonts-cjk
|
||||||
|
@ -75,7 +72,6 @@ in {
|
||||||
openmoji-color
|
openmoji-color
|
||||||
openmoji-black
|
openmoji-black
|
||||||
font-awesome
|
font-awesome
|
||||||
material-symbols
|
|
||||||
|
|
||||||
# defaults worth keeping
|
# defaults worth keeping
|
||||||
dejavu_fonts
|
dejavu_fonts
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue