From ed6e4913caa2b6f1e5f1956d7aea6f6011fb3b0e Mon Sep 17 00:00:00 2001 From: Charlotte Van Petegem Date: Thu, 12 Sep 2024 23:38:47 +0200 Subject: [PATCH] emacs: Allow easier theme switching --- modules/darwin/base/nix/default.nix | 4 ++++ modules/nixos/graphical/theme/default.nix | 6 ++---- modules/shared/base/emacs/base-init.el | 13 ++++++++++++- 3 files changed, 18 insertions(+), 5 deletions(-) diff --git a/modules/darwin/base/nix/default.nix b/modules/darwin/base/nix/default.nix index bfa12991..48d3a997 100644 --- a/modules/darwin/base/nix/default.nix +++ b/modules/darwin/base/nix/default.nix @@ -6,5 +6,9 @@ gc.interval = if config.chvp.base.nix.slowGc then { Hour = 0; Minute = 0; } else { Minute = 0; }; settings.sandbox = true; }; + nixpkgs.flake = { + setFlakeRegistry = false; + setNixPath = false; + }; services.nix-daemon.enable = true; } diff --git a/modules/nixos/graphical/theme/default.nix b/modules/nixos/graphical/theme/default.nix index 03932cd1..03b8fe07 100644 --- a/modules/nixos/graphical/theme/default.nix +++ b/modules/nixos/graphical/theme/default.nix @@ -137,8 +137,7 @@ }; darkModeScripts = { emacs = '' - emacsclient --eval "(setq catppuccin-flavor 'frappe)" - emacsclient --eval "(load-theme 'catppuccin :no-confirm)" + emacsclient --eval "(chvp--dark-mode)" ''; gtk = '' ${pkgs.glib}/bin/gsettings set org.gnome.desktop.interface gtk-theme Catppuccin-Frappe-Compact-Blue-Dark @@ -163,8 +162,7 @@ }; lightModeScripts = { emacs = '' - emacsclient --eval "(setq catppuccin-flavor 'latte)" - emacsclient --eval "(load-theme 'catppuccin :no-confirm)" + emacsclient --eval "(chvp--light-mode)" ''; gtk = '' ${pkgs.glib}/bin/gsettings set org.gnome.desktop.interface gtk-theme Catppuccin-Latte-Compact-Blue-Light diff --git a/modules/shared/base/emacs/base-init.el b/modules/shared/base/emacs/base-init.el index db97b10b..de500c92 100644 --- a/modules/shared/base/emacs/base-init.el +++ b/modules/shared/base/emacs/base-init.el @@ -214,7 +214,18 @@ ;; Theming (use-package catppuccin-theme :custom (catppuccin-flavor 'latte) - :config (load-theme 'catppuccin :no-confirm) + :config + (load-theme 'catppuccin :no-confirm) + (defun chvp--dark-mode () + (interactive) + (progn + (setq catppuccin-flavor 'frappe) + (load-theme 'catppuccin :no-confirm))) + (defun chvp--light-mode () + (interactive) + (progn + (setq catppuccin-flavor 'latte) + (load-theme 'catppuccin :no-confirm))) ) (use-package no-littering