This repository has no description
0

Configure Feed

Select the types of activity you want to include in your feed.

superconfig / 2configs / themes.nix
2.6 kB 83 lines
1{ pkgs, ... }: 2let 3 4 switch-theme = pkgs.writers.writeDashBin "switch-theme" '' 5 set -efux 6 if [ "$1" = toggle ]; then 7 if [ "$(${pkgs.coreutils}/bin/cat /var/theme/current_theme)" = dark ]; then 8 ${placeholder "out"}/bin/switch-theme light 9 else 10 ${placeholder "out"}/bin/switch-theme dark 11 fi 12 elif test -e "/etc/themes/$1"; then 13 ${pkgs.coreutils}/bin/mkdir -p /var/theme/config 14 ${pkgs.rsync}/bin/rsync --chown=lass:users -a --delete "/etc/themes/$1/" /var/theme/config/ 15 echo "$1" > /var/theme/current_theme 16 ${pkgs.coreutils}/bin/chown lass:users /var/theme/current_theme 17 ${pkgs.xorg.xrdb}/bin/xrdb -merge /var/theme/config/xresources || : # wayland has no xresources 18 ${pkgs.procps}/bin/pkill -HUP xsettingsd || : 19 set +f 20 GSETTINGS_SCHEMA_DIR=$(echo /run/current-system/sw/share/gsettings-schemas/*/*/schemas | sed s', ,:,g') 21 export GSETTINGS_SCHEMA_DIR 22 set -f 23 ${pkgs.glib}/bin/gsettings set org.gnome.desktop.interface gtk-theme "$(cat /var/theme/config/gtk-theme)" || : 24 ${pkgs.glib}/bin/gsettings set org.gnome.desktop.interface color-scheme "prefer-$1" || : 25 set +f 26 for sock in /tmp/kitty-socket*; do 27 ${pkgs.kitty}/bin/kitten @ --to unix:"$sock" set-colors -a /var/theme/config/kitty-colors.conf 2>/dev/null || : 28 done 29 set -f 30 else 31 echo "theme $1 not found" 32 fi 33 ''; 34 35in 36{ 37 systemd.tmpfiles.rules = [ 38 "d /var/theme/ 755 lass users" 39 ]; 40 environment.systemPackages = [ 41 switch-theme 42 pkgs.dracula-theme 43 pkgs.adwaita-icon-theme 44 ]; 45 environment.etc = { 46 "themes/light/gtk-theme".text = '' 47 Adwaita 48 ''; 49 "themes/light/xsettings.conf".text = '' 50 Net/ThemeName "Adwaita" 51 ''; 52 "themes/light/xresources".text = '' 53 *background: #ffffff 54 *foreground: #000000 55 ''; 56 "themes/light/rofi-theme".text = '' 57 gruvbox-light-hard 58 ''; 59 60 "themes/dark/gtk-theme".text = '' 61 Dracula 62 ''; 63 "themes/dark/xsettings.conf".text = '' 64 Net/ThemeName "Dracula" 65 ''; 66 "themes/dark/xresources".text = '' 67 *background: #000000 68 *foreground: #ffffff 69 ''; 70 "themes/dark/rofi-theme".text = '' 71 gruvbox-dark-hard 72 ''; 73 }; 74 # system.activationScripts.theme.text = '' 75 # export DISPLAY=:0 76 # if test -e /var/theme/current_theme; then 77 # ${switch-theme}/bin/switch-theme "$(cat /var/theme/current_theme)" || 78 # ${switch-theme}/bin/switch-theme dark 79 # else 80 # ${switch-theme}/bin/switch-theme dark 81 # fi 82 # ''; 83}