From 05a8f4a49bf6ec8e9a1b4d1cd6eba111f0130e7b Mon Sep 17 00:00:00 2001 From: Noah Masur <7386960+nmasur@users.noreply.github.com> Date: Tue, 8 Aug 2023 22:13:02 -0400 Subject: [PATCH] revert to basic adwaita gtk theme --- modules/nixos/graphical/gtk.nix | 130 +++++-------------------------- modules/nixos/graphical/xorg.nix | 27 +------ 2 files changed, 22 insertions(+), 135 deletions(-) diff --git a/modules/nixos/graphical/gtk.nix b/modules/nixos/graphical/gtk.nix index 91210f2..5afdc11 100644 --- a/modules/nixos/graphical/gtk.nix +++ b/modules/nixos/graphical/gtk.nix @@ -1,109 +1,19 @@ -{ config, pkgs, lib, ... }: +{ config, pkgs, lib, ... }: { -let - - # Based on: https://gitlab.com/rycee/nur-expressions/-/blob/7ae92e3497e1f1805fb849510120e2ee393018cd/pkgs/materia-theme/default.nix - gtkTheme = pkgs.stdenv.mkDerivation { - pname = "materia-custom"; - version = "0.1"; - src = pkgs.fetchFromGitHub { - owner = "nana-4"; - repo = "materia-theme"; - rev = "6e5850388a25f424b8193fe4523504d1dc364175"; - sha256 = "sha256-I6hpH0VTmftU4+/pRbztuTQcBKcOFBFbNZXJL/2bcgU="; + options = { + gtk.theme = { + name = lib.mkOption { + type = lib.types.str; + description = "Theme name for GTK applications"; + }; + package = lib.mkOption { + type = lib.types.package; + description = "Theme package for GTK applications"; + default = pkgs.gnome-themes-extra; + }; }; - # patches = [ ../../../overlays/materia-theme.patch ]; - nativeBuildInputs = with pkgs; [ - bc - dart-sass - optipng - meson - ninja - sassc - - (runCommandLocal "rendersvg" { } '' - mkdir -p $out/bin - ln -s ${resvg}/bin/resvg $out/bin/rendersvg - '') - ]; - - dontConfigure = true; - - # # Fixes problem "Fontconfig error: Cannot load default config file" - # FONTCONFIG_FILE = - # pkgs.makeFontsConf { fontDirectories = [ pkgs.cantarell-fonts ]; }; - - # Derivation adds an extra # so we need to remove it from our colorscheme - theme = let stripHash = color: lib.strings.removePrefix "#" color; - in lib.generators.toKeyValue { } { - # Color selection copied from - # https://github.com/pinpox/nixos-home/blob/1cefe28c72930a0aed41c20d254ad4d193a3fa37/gtk.nix#L11 - - # Secondary accent - ACCENT_BG = stripHash config.theme.colors.base0B; - ACCENT_FG = stripHash config.theme.colors.base00; - - # Main colors - BG = stripHash config.theme.colors.base00; - FG = stripHash config.theme.colors.base05; - - # Buttons - BTN_BG = stripHash config.theme.colors.base02; - BTN_FG = stripHash config.theme.colors.base06; - - # Header bar - HDR_BG = stripHash config.theme.colors.base01; - HDR_BTN_BG = stripHash config.theme.colors.base02; - HDR_BTN_FG = stripHash config.theme.colors.base05; - HDR_FG = stripHash config.theme.colors.base05; - - # Not sure - MATERIA_SURFACE = stripHash config.theme.colors.base03; - MATERIA_VIEW = stripHash config.theme.colors.base08; - - # Not sure - MENU_BG = stripHash config.theme.colors.base0A; - MENU_FG = stripHash config.theme.colors.base0E; - - # Selection (primary accent) - SEL_BG = stripHash config.theme.colors.base04; - SEL_FG = stripHash config.theme.colors.base07; - - TXT_BG = stripHash config.theme.colors.base02; - TXT_FG = stripHash config.theme.colors.base07; - - WM_BORDER_FOCUS = stripHash config.theme.colors.base0D; - WM_BORDER_UNFOCUS = stripHash config.theme.colors.base0C; - - MATERIA_COLOR_VARIANT = if config.theme.dark then "dark" else "light"; - MATERIA_STYLE_COMPACT = "True"; - UNITY_DEFAULT_LAUNCHER_STYLE = "False"; - }; - - passAsFile = [ "theme" ]; - - postPatch = '' - patchShebangs . - - sed -e '/handle-horz-.*/d' -e '/handle-vert-.*/d' \ - -i ./src/gtk-2.0/assets.txt - ''; - - buildPhase = '' - export HOME="$NIX_BUILD_ROOT" - mkdir -p $out/share/themes/materia-custom - ./change_color.sh \ - -i False \ - -t $out/share/themes \ - -o "materia-custom" \ - "$themePath" # References the file "theme" from passAsFile - ''; - - dontInstall = true; }; -in { - config = lib.mkIf config.gui.enable { home-manager.users.${config.user} = { @@ -115,8 +25,8 @@ in { in { enable = true; theme = { - name = "materia-custom"; - package = gtkTheme; + name = config.gtk.theme.name; + package = config.gtk.theme.package; }; gtk3.extraConfig = gtkExtraConfig; gtk4.extraConfig = gtkExtraConfig; @@ -124,15 +34,17 @@ in { }; + # Required for setting GTK theme (for preferred-color-scheme in browser) + services.dbus.packages = [ pkgs.dconf ]; + programs.dconf.enable = true; + # Make the login screen dark services.xserver.displayManager.lightdm.greeters.gtk.theme = { - name = config.home-manager.users.${config.user}.gtk.theme.name; - package = gtkTheme; + name = config.gtk.theme.name; + package = config.gtk.theme.package; }; - environment.sessionVariables = { - GTK_THEME = config.home-manager.users.${config.user}.gtk.theme.name; - }; + environment.sessionVariables = { GTK_THEME = config.gtk.theme.name; }; }; diff --git a/modules/nixos/graphical/xorg.nix b/modules/nixos/graphical/xorg.nix index 3ce47ee..a414db6 100644 --- a/modules/nixos/graphical/xorg.nix +++ b/modules/nixos/graphical/xorg.nix @@ -1,27 +1,6 @@ { config, pkgs, lib, ... }: { - options = { - gtk.theme = { - name = lib.mkOption { - type = lib.types.str; - description = "Theme name for GTK applications"; - }; - package = lib.mkOption { - type = lib.types.str; - description = "Theme package name for GTK applications"; - default = "gnome-themes-extra"; - }; - }; - }; - - config = let - - gtkTheme = { - name = config.gtk.theme.name; - package = pkgs."${config.gtk.theme.package}"; - }; - - in lib.mkIf config.gui.enable { + config = lib.mkIf config.gui.enable { # Enable the X11 windowing system. services.xserver = { @@ -52,10 +31,6 @@ xclip # Clipboard ]; - # Required for setting GTK theme (for preferred-color-scheme in browser) - services.dbus.packages = [ pkgs.dconf ]; - programs.dconf.enable = true; - home-manager.users.${config.user} = { programs.fish.shellAliases = {