Build either emacs.{glinux,nixos} depending on my current device
`M-x nix/rebuild-emacs` will build either emacs.glinux or emacs.nixos depending on whether I'm using a work device or a personal device.
This commit is contained in:
parent
86da482fbf
commit
d12b8b3dcb
1 changed files with 12 additions and 7 deletions
|
@ -8,6 +8,8 @@
|
|||
;; Dependencies
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
|
||||
(require 'device)
|
||||
|
||||
;; TODO: These may fail at startup. How can I make sure that the .envrc is
|
||||
;; consulted when Emacs starts?
|
||||
(prelude/assert (f-exists? (getenv "BRIEFCASE")))
|
||||
|
@ -24,13 +26,16 @@
|
|||
(defun nix/rebuild-emacs ()
|
||||
"Use nix-env to rebuild wpcarros-emacs."
|
||||
(interactive)
|
||||
(start-process "nix-build/<briefcase/emacs>" "*nix-build/<briefcase/emacs>*"
|
||||
(let* ((emacs (if (device/corporate?) "emacs.glinux" "emacs.nixos"))
|
||||
(pname (format "nix-build <briefcase/%s>" emacs))
|
||||
(bname (format "*%s*" pname)))
|
||||
(start-process pname bname
|
||||
"nix-env"
|
||||
"-I" (format "nixpkgs=%s" (f-expand "~/nixpkgs"))
|
||||
"-I" (format "depot=%s" (f-expand "~/depot"))
|
||||
"-I" (format "briefcase=%s" (f-expand "~/briefcase"))
|
||||
"-f" "<briefcase>" "-iA" "emacs")
|
||||
(display-buffer "*nix-build/<briefcase/emacs>*"))
|
||||
"-f" "<briefcase>" "-iA" emacs)
|
||||
(display-buffer bname)))
|
||||
|
||||
(defun nix/home-manager-switch ()
|
||||
"Use Nix to reconfigure the user environment."
|
||||
|
|
Loading…
Reference in a new issue