guixconfig/home/home-configuration.scm

214 lines
7.6 KiB
Scheme
Raw Normal View History

2023-11-28 21:38:47 +00:00
;; -*- 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.
2023-11-28 22:52:59 +00:00
(use-modules
(gnu packages)
2023-11-28 22:57:58 +00:00
(gnu packages gnupg)
2023-11-28 22:52:59 +00:00
(gnu services)
(guix gexp)
2023-11-28 22:57:35 +00:00
(guix channels)
2023-11-28 22:57:58 +00:00
(gnu home)
2023-11-28 22:56:18 +00:00
(gnu home services)
2023-11-28 22:58:39 +00:00
(gnu home services desktop)
2023-12-08 11:56:00 +00:00
(gnu home services gnupg)
2023-11-28 22:57:18 +00:00
(gnu home services guix)
2023-12-08 11:56:00 +00:00
(gnu home services mail)
2023-11-28 22:52:59 +00:00
(gnu home services mcron)
(gnu home services pm)
(gnu home services shells)
(gnu home services shepherd)
(gnu home services ssh))
2023-11-28 21:38:47 +00:00
(home-environment
2023-11-28 22:52:59 +00:00
;; Below is the list of packages that will show up in your
;; Home profile, under ~/.guix-home/profile.
2023-11-28 21:38:47 +00:00
(packages
(specifications->packages
2023-12-06 21:23:52 +00:00
(list "bsd-games"
2023-12-11 10:59:44 +00:00
"bolt"
2023-12-13 02:02:44 +00:00
"browserpass-native"
2023-12-06 21:23:52 +00:00
"chicken"
2023-12-17 00:41:54 +00:00
;; "chicken-apropos"
;; "chicken-chicken-doc"
;; "chicken-srfi-18"
2023-12-08 09:46:43 +00:00
"curl"
"direnv"
2023-12-06 21:23:52 +00:00
"emacs"
2023-12-15 16:19:29 +00:00
"entr"
2023-12-13 02:02:44 +00:00
"eternalterminal"
2023-12-08 13:50:54 +00:00
"diff-so-fancy"
2023-12-09 15:32:29 +00:00
"firefox"
2023-12-12 08:48:38 +00:00
"flatpak"
2023-12-17 00:41:54 +00:00
;; "font-nerdfont-monaspice"
2023-12-01 13:22:33 +00:00
"fuzzel"
2023-12-15 16:19:29 +00:00
"fzf"
2023-12-01 14:41:24 +00:00
"gammastep"
2023-12-11 10:59:44 +00:00
"grim"
2023-12-08 09:46:43 +00:00
"guile"
2023-12-09 15:32:29 +00:00
"glibc-locales"
2023-12-01 10:44:09 +00:00
"icecat"
2023-12-08 09:46:43 +00:00
"icedove-wayland"
2023-12-01 10:44:09 +00:00
"kitty"
2023-12-13 02:02:44 +00:00
"ksshaskpass"
"make"
"nm-tray"
2023-12-15 16:19:29 +00:00
"nnn"
2023-12-08 09:46:43 +00:00
#;"nss-certs" ; This package is broken
2023-12-06 21:23:52 +00:00
"password-store"
"pass-otp"
"passff-icecat"
2023-12-09 15:32:29 +00:00
"pavucontrol"
2023-12-01 10:44:09 +00:00
"pinentry-qt"
2023-12-09 15:32:29 +00:00
"pipewire"
2023-12-15 16:19:29 +00:00
"pv"
2023-12-08 09:46:43 +00:00
"rust"
"rust-cargo"
"senpai"
2023-12-12 08:48:38 +00:00
"sideload"
2023-12-11 10:59:44 +00:00
"slurp"
2023-12-15 16:19:29 +00:00
;; "sponge" https://linux.die.net/man/1/sponge
2023-12-11 10:59:44 +00:00
"swappy"
2023-12-06 21:23:52 +00:00
"swayfx"
2023-12-01 14:41:24 +00:00
"swayidle"
2023-12-11 10:59:44 +00:00
"swaylock-effects"
2023-12-15 16:19:29 +00:00
"tig"
2023-12-13 02:02:44 +00:00
"unzip"
2023-12-15 16:19:29 +00:00
"visidata"
2023-12-01 14:41:24 +00:00
"waybar"
2023-12-12 08:48:38 +00:00
"wlogout"
"xdg-desktop-portal")))
2023-11-28 22:52:59 +00:00
;; Below is the list of Home services. To search for available
;; services, run 'guix home search KEYWORD' in a terminal.
2023-12-11 10:59:44 +00:00
(services
2023-12-17 14:51:31 +00:00
(list
(service home-shepherd-service-type)
(service home-msmtp-service-type
(home-msmtp-configuration
(default-account "LMail")
(accounts
(list
(msmtp-account
(name "LMail")
(configuration
(msmtp-configuration
(host "lyrion.ch")
(port 465)
(auth? #t)
(tls? #t)
(tls-starttls? #f)
(user "dziltener")
(from "dziltener@lyrion.ch")
(password-eval "pass Privat/Mailaccount | head -n 1"))))
(msmtp-account
(name "Red Sky")
(configuration
(msmtp-configuration
(host "gmail.com")
(port 587)
(auth? #t)
(tls? #t)
(tls-starttls? #f)
(user "dz@redsky.io")
(from "dziltener@lyrion.ch")
(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")
("XDG_DATA_DIRS" . "$XDG_DATA_DIRS:$XDG_DATA_HOME/flatpak/exports/share")
("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"))
("fuzzel/fuzzel.ini" ,(local-file "./fuzzel/fuzzel.ini"))
("git/config" ,(local-file "./git/config"))
("emacs/init.el" ,(local-file "./emacs/init.el"))
("emacs/early-init.el" ,(local-file "./emacs/early-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")
("create-guix-patch" . "git format-patch --minimal --to guix-patches@gnu.org --cc dziltener@lyrion.ch --inline --no-attach master; ls *.patch | xargs sed -i '1d'")
("send-guix-patch-series" . "for FILE in $(ls *.patch); do cat $FILE | msmtp -t; done")))
(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 "github.com")
(host-name "github.com")
(user "git")
(identity-file "~/.ssh/personal_ed"))
(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 "grab\nallow-emacs-pinentry\nallow-loopback-pinentry")))
(service home-dbus-service-type)
)))