From f9286c8c56a4991dd7216bf531be5dd78912c436 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A1szl=C3=B3=20Vask=C3=B3?= Date: Fri, 4 Dec 2020 20:46:26 +0000 Subject: [PATCH] Emacs wrapper: extract duplicated wrapProgram call Additional refactors made: * eliminated the quirky $out/bin/$(basename $prog) path calculation as it equals to $prog anyway (I have no idea why was it that way...) * Removed the platform dependent optionalString call as there is an additional runtime check anyway for the existence of Applications directory. Referecnes: #100 --- default.nix | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/default.nix b/default.nix index 2294056..185ec7a 100644 --- a/default.nix +++ b/default.nix @@ -222,20 +222,20 @@ let in emacs.overrideAttrs (esuper: let cmd = '' - for prog in $out/bin/*; do - wrapProgram $out/bin/$(basename $prog) \ + wrapEmacs() { + wrapProgram $1 \ --set DOOMDIR ${doomDir} \ --set __DEBUG_doom_emacs_DIR ${doom-emacs} \ --set __DEBUG_doomLocal_DIR ${doomLocal} + } + + for prog in $out/bin/*; do + wrapEmacs $prog done - ${lib.optionalString stdenv.isDarwin '' - if [[ -e $out/Applications ]]; then - wrapProgram "$out/Applications/Emacs.app/Contents/MacOS/Emacs" \ - --set DOOMDIR ${doomDir} \ - --set __DEBUG_doom_emacs_DIR ${doom-emacs} \ - --set __DEBUG_doomLocal_DIR ${doomLocal} - fi - ''} + + if [[ -e $out/Applications ]]; then + wrapEmacs "$out/Applications/Emacs.app/Contents/MacOS/Emacs" + fi # emacsWithPackages assumes share/emacs/site-lisp/subdirs.el # exists, but doesn't pass it along. When home-manager calls # emacsWithPackages again on this derivation, it fails due to