aboutsummaryrefslogtreecommitdiff
path: root/tw/home/cern.scm
diff options
context:
space:
mode:
Diffstat (limited to 'tw/home/cern.scm')
-rw-r--r--tw/home/cern.scm55
1 files changed, 49 insertions, 6 deletions
diff --git a/tw/home/cern.scm b/tw/home/cern.scm
index 837098d5..dc3042c1 100644
--- a/tw/home/cern.scm
+++ b/tw/home/cern.scm
@@ -8,23 +8,65 @@
;; https://github.com/alezost/shepherd-config/blob/master/init.scm
(define-module (tw home cern)
+ #:use-module ((gnu)
+ #:select (use-package-modules))
#:use-module (gnu home)
+ #:use-module (gnu home services)
#:use-module (gnu home services desktop)
#:use-module (gnu home services guix)
+ #:use-module (gnu home services mcron)
+ #:use-module (gnu home services pm)
#:use-module (gnu home services shepherd)
- #:use-module (gnu packages xdisorg)
- #:use-module (gnu packages xorg)
+ #:use-module (gnu packages)
#:use-module (gnu services)
#:use-module (gnu services shepherd)
#:use-module (guix channels)
#:use-module (guix gexp)
- #:use-module (tw home))
+ #:use-module ((nongnu packages messaging)
+ #:select (zoom))
+ #:use-module (tw home)
+ #:use-module (tw packages alice)
+ #:use-module (tw packages ci)
+ #:use-module (tw packages catppuccin)
+ #:use-module (tw packages xorg)
+ #:use-module (tw gexp)
+ #:use-module (tw theme))
+
+(use-package-modules calendar dav mail web-browsers xdisorg xorg)
+
+(define pim-packages
+ (list vdirsyncer khal khard aerc lynx)) ; lynx for HTML mail
+
+(define pim-services
+ (list
+ (simple-service 'pim-config home-xdg-configuration-files-service-type
+ `(("khal/config" ,(local-file "files/khal.conf"))
+ ("khard/khard.conf" ,(local-file "files/khard.conf"))
+ ("aerc/accounts.conf" ,(local-file "files/aerc/accounts.work.conf"))
+ ("aerc/aerc.conf" ,(local-file "files/aerc/aerc.conf"))
+ ("aerc/binds.conf" ,(local-file "files/aerc/binds.conf"))
+ ("aerc/filters" ,(local-file "files/aerc/filters" #:recursive? #t))
+ ("aerc/stylesets" ,(local-file "files/aerc/stylesets" #:recursive? #t))
+ ("vdirsyncer/config" ,(local-file "files/vdirsyncer.conf"))))
+
+ ;; These cron jobs are annoying because they pop up a password prompt every time they run.
+ ;; (simple-service 'pim-cronjobs home-mcron-service-type
+ ;; (list #~(job "15 */4 * * *" ; every four hours at HH:15
+ ;; (string-append #$(file-append vdirsyncer "/bin/vdirsyncer") " metasync"))
+ ;; #~(job "0,30 * * * *" ; every half hour
+ ;; (string-append #$(file-append vdirsyncer "/bin/vdirsyncer") " sync"))))
+
+ (simple-service 'mail-files home-files-service-type
+ `(;; The file from git main is newer than the one bundled with the
+ ;; packaged neomutt version and contains a few fixes.
+ (".local/bin/mutt_oauth2.py"
+ ,(local-file "files/neomutt/contrib/oauth2/mutt_oauth2.py" #:recursive? #t))))))
(define-public %cern-home
(home-environment
(packages
;; These packages will show up in the home profile, under ~/.guix-home/profile.
- (append %interactive-packages %pim-packages %common-packages))
+ (append %common-packages %interactive-packages pim-packages))
;; To search for available home services, run 'guix home search KEYWORD'.
(services
@@ -57,10 +99,11 @@
(nighttime-brightness 0.7)
(extra-content "fade=0"))) ; with fade=1, restarting redshift causes flickering for a few secs
- (simple-service 'cern-desktop-gui-services home-shepherd-service-type
+ (simple-service 'xorg-setup-services home-shepherd-service-type
(list
(polybar-service "DP-2")
(polybar-service "DP-1-8")
+
(shepherd-service
(documentation "Set up X displays on login.")
(provision '(xorg-setup))
@@ -83,6 +126,6 @@
(openssh-service #f)
- (append %interactive-services %pim-services %common-services)))))
+ (append %common-services %interactive-services pim-services)))))
%cern-home