Skip to content

Instantly share code, notes, and snippets.

@pinpox

pinpox/gtk.nix Secret

Created October 11, 2020 12:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pinpox/fdc5bb31ae0a030c69cd237edc84c009 to your computer and use it in GitHub Desktop.
Save pinpox/fdc5bb31ae0a030c69cd237edc84c009 to your computer and use it in GitHub Desktop.
{ config, pkgs, lib, ... }:
let
vars = import ./vars.nix;
materia_colors = pkgs.writeTextFile {
name = "gtk-generated-colors";
text = ''
BG=${vars.colors.base00}
FG=FF00FF
BTN_BG=FF00FF
BTN_FG=FF00FF
MENU_BG=FF00FF
MENU_FG=FF00FF
ACCENT_BG=FF00FF
SEL_BG=FF00FF
SEL_FG=FF00FF
TXT_BG=FF00FF
TXT_FG=FF00FF
HDR_BTN_BG=FF00FF
HDR_BTN_FG=FF00FF
WM_BORDER_FOCUS=FF00FF
WM_BORDER_UNFOCUS=FF00FF
MATERIA_STYLE_COMPACT=True
MATERIA_COLOR_VARIANT=dark
UNITY_DEFAULT_LAUNCHER_STYLE=False
NAME=generated
'';
};
in {
nixpkgs.overlays = [(self: super: {
generated-gtk-theme = self.stdenv.mkDerivation rec {
name = "generated-gtk-theme";
src = pkgs.materia-theme;
buildInputs = with self; [ sassc bc which inkscape optipng ];
installPhase = ''
HOME=/build
chmod 777 -R .
patchShebangs .
mkdir -p $out/share/themes
substituteInPlace change_color.sh --replace "\$HOME/.themes" "$out/share/themes"
echo "Changing colours:"
./change_color.sh -o Generated ${materia_colors}
chmod 555 -R .
'';
};
})];
# GTK settings
gtk = {
enable = true;
font = {
name = "Source Code Pro Semibold";
};
iconTheme = {
name = "Papirus-Dark";
package = pkgs.papirus-icon-theme;
};
theme = {
name = "Generated";
package = pkgs.generated-gtk-theme;
};
gtk3.extraConfig.gtk-cursor-theme-name = "breeze";
};
home.sessionVariables.GTK_THEME = "Generated";
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment