diff options
Diffstat (limited to 'suweren/update.scm')
-rw-r--r-- | suweren/update.scm | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/suweren/update.scm b/suweren/update.scm new file mode 100644 index 0000000..05c0376 --- /dev/null +++ b/suweren/update.scm @@ -0,0 +1,40 @@ +(define-module (suweren update) + #:use-module (gnu home services shells) + #:use-module (gnu services)) + +(define-public update-commands + (let* ((and "&& ") + (collect-garbage "sudo guix gc -d 7d ") + (pull-guix "guix pull ") + (reconfigure-home (string-append "guix home " + "delete-generations 7d ; " + "guix home " + "reconfigure -e " + "'(@ (people marekpasnikowski)" + " home)'")) + (reconfigure-system (string-append "sudo guix system " + "delete-generations 7d ;" + "sudo guix system " + "reconfigure -e " + "'(@ (systems ayase " + "system-configuration) ayase)'")) + + (update-system (string-append pull-guix + and + reconfigure-system + and + reconfigure-home + and + collect-garbage)) + + (aliases `(("collect-garbage" . ,collect-garbage) + ("pull-guix" . ,pull-guix) + ("reconfigure-home" . ,reconfigure-home) + ("reconfigure-system" . ,reconfigure-system) + ("update-system" . ,update-system))) + + (value (home-bash-extension (aliases aliases)))) + + (simple-service 'update-commands + home-bash-service-type + value))) |