guixconfig/home/home-configuration.scm
2023-12-08 10:46:43 +01:00

165 lines
6.3 KiB
Scheme

;; -*- mode: guix-scheme -*-
;; This "home-environment" file can be passed to 'guix home reconfigure'
;; to reproduce the content of your profile. This is "symbolic": it only
;; specifies package names. To reproduce the exact same profile, you also
;; need to capture the channels being used, as returned by "guix describe".
;; See the "Replicating Guix" section in the manual.
(use-modules
(gnu packages)
(gnu packages gnupg)
(gnu services)
(guix gexp)
(guix channels)
(gnu home)
(gnu home services)
(gnu home services desktop)
#;(gnu home services gnupg)
(gnu home services guix)
#;(gnu home services mail)
(gnu home services mcron)
(gnu home services pm)
(gnu home services shells)
(gnu home services shepherd)
(gnu home services ssh))
(home-environment
;; Below is the list of packages that will show up in your
;; Home profile, under ~/.guix-home/profile.
(packages
(specifications->packages
(list "bsd-games"
"chicken"
"curl"
"direnv"
"emacs"
"emacs-direnv"
"fuzzel"
"gammastep"
"guile"
;; "glibc-locales"
"icecat"
"icedove-wayland"
"kitty"
#;"nss-certs" ; This package is broken
"password-store"
"pass-otp"
"passff-icecat"
"pinentry-qt"
"rust"
"rust-cargo"
"senpai"
"swayfx"
"swayidle"
"waybar"
"wlogout")))
;; Below is the list of Home services. To search for available
;; services, run 'guix home search KEYWORD' in a terminal.
(services
(list
(service home-shepherd-service-type)
#;(service home-msmtp-service-type
(home-msmtp-configuration ;
(accounts ;
(list ;
(msmtp-account ;
(name "LMail") ;
(configuration ;
(msmtp-configuration ;
(host "lyrion.ch") ;
(port 587) ;
(user "dziltener") ;
(password-eval "pass Privat/Mailaccount | head -n 1")))) ;
(msmtp-account ;
(name "Red Sky") ;
(configuration ;
(msmtp-configuration ;
(host "gmail.com") ;
(port 587) ;
(user "dz@redsky.io") ;
(password-eval "pass Privat/RedSkyGMail"))))))))
(simple-service 'ziltis-environment-variable-service
home-environment-variables-service-type
`(("PATH" . "$PATH:~/.local/bin")
("PASSWORD_STORE_DIR" . "$XDG_DATA_HOME/password-store")
("SSH_ASKPASS" . "ksshaskpass")
("ELM_DISPLAY" . "wl")
("SDL_VIDEODRIVER" . "wayland")
("MOZ_ENABLE_WAYLAND" . "1")
("SSL_CERT_FILE" . "$HOME/.guix-profile/etc/ssl/certs/ca-certificates.crt")
("CHICKEN_DOC_REPOSITORY" . "$XDG_DATA_HOME/chicken/doc")
("CHICKEN_INSTALL_REPOSITORY" . "$XDG_DATA_HOME/chicken/eggs")
("CHICKEN_REPOSITORY_PATH" . "$HOME/.guix-home/profile/var/lib/chicken/11/:$XDG_DATA_HOME/chicken/eggs")
("CHICKEN_INSTALL_PREFIX" . "$HOME/.local")))
(simple-service 'ziltis-home-files-service
home-files-service-type
`((".gnupg/gpg-agent.conf" ,(local-file "gnupg/gpg-agent.conf"))))
(simple-service 'ziltis-xdg-configuration-files-service
home-xdg-configuration-files-service-type
`(("sway/config" ,(local-file "./sway/sway"))
("waybar/config" ,(local-file "./waybar/config"))
("waybar/style.css" ,(local-file "./waybar/style.css"))
("emacs/init.el" ,(local-file "./emacs/init.el"))
("emacs/init.org" ,(local-file "./emacs/init.org"))
("emacs/templates" ,(local-file "./emacs/templates"))
("kitty/kitty.conf" ,(local-file "./kitty/kitty.conf"))
("senpai/senpai.scfg" ,(local-file "./senpai/senpai.scfg"))))
(service home-bash-service-type
(home-bash-configuration
(aliases
'(("hh" . "hstr")
("l" . "ls -alh")
("ll" . "ls -l")
("ls" . "ls --color=tty")))
(bashrc
(list
(local-file
"./.bashrc"
"bashrc")))
(bash-profile
(list
(local-file
"./.bash_profile"
"bash_profile")))))
(service home-batsignal-service-type
(home-batsignal-configuration
(ignore-missing? #t)))
(service home-mcron-service-type
(home-mcron-configuration
(jobs
'())))
(simple-service 'ziltis-channels
home-channels-service-type
(list
(channel
(name 'ziltis-channel)
(url "https://gitea.lyrion.ch/zilti/guixchannel"))
(channel
(name 'nongnu-guix)
(url "https://gitlab.com/nonguix/nonguix"))))
(service home-openssh-service-type
(home-openssh-configuration
(hosts
(list
(openssh-host
(name "www.opencode.net")
(host-name "www.opencode.net")
(user "git")
(identity-file "~/.ssh/personal_ed"))
(openssh-host
(name "gitea.lyrion.ch")
(host-name "gitea.lyrion.ch")
(user "git")
(port 7920)
(identity-file "~/.ssh/personal_ed"))))))
#;(service home-gpg-agent-service-type
(home-gpg-agent-configuration ;
(pinentry-program ;
(file-append pinentry-qt "/bin/pinentry-qt")) ;
(ssh-support? #t) ;
(default-cache-ttl 7200) ;
(default-cache-ttl-ssh 7200) ;
(extra-content "allow-emacs-pinentry\nallow-loopback-pinentry")))
(service home-dbus-service-type)
)))