From 23b58233e3421bbebb26cd7d7784533801d30620 Mon Sep 17 00:00:00 2001 From: Daniel Ziltener Date: Sun, 17 Dec 2023 15:51:31 +0100 Subject: [PATCH] . --- config.org | 30 ++--- home/home-configuration.scm | 249 ++++++++++++++++++------------------ 2 files changed, 142 insertions(+), 137 deletions(-) diff --git a/config.org b/config.org index e266470..4a6f691 100644 --- a/config.org +++ b/config.org @@ -11,12 +11,12 @@ #+begin_src makefile :tangle Makefile reconfigure: - mkdir -p ~/.config/guix - cp channels.scm ~/.config/guix/channels.scm - guix archive --authorize < signing-key.pub - guix system reconfigure ./config.scm --substitute-urls='https://ci.guix.gnu.org https://bordeaux.guix.gnu.org https://substitutes.nonguix.org' - make -C /home/zilti/.guix-home/profile/lib/browserpass make hosts-firefox-user - flatpak --user remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo + mkdir -p ~/.config/guix + cp channels.scm ~/.config/guix/channels.scm + guix archive --authorize < signing-key.pub + guix system reconfigure ./config.scm --substitute-urls='https://ci.guix.gnu.org https://bordeaux.guix.gnu.org https://substitutes.nonguix.org' + make -C /home/zilti/.guix-home/profile/lib/browserpass make hosts-firefox-user + flatpak --user remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo #+end_src * System Installation Script @@ -24,15 +24,15 @@ This is to be run after setting up the partitions. #+begin_src sh :tangle sysinst.sh - #!/bin/sh - set euxo -pipefail - mount /dev/disk/by-label/guix /mnt - mkdir -p /mnt/boot/efi - mount /dev/disk/by-label/EFI /mnt/boot/efi - herd start cow-store /mnt - guix pull -C./channels.scm - hash guix - guix system -L. init ./config.scm /mnt --substitute-urls="https://ci.guix.gnu.org https://bordeaux.guix.gnu.org https://substitutes.nonguix.org" +#!/bin/sh +set euxo -pipefail +mount /dev/disk/by-label/guix /mnt +mkdir -p /mnt/boot/efi +mount /dev/disk/by-label/EFI /mnt/boot/efi +herd start cow-store /mnt +guix pull -C./channels.scm +hash guix +guix system -L. init ./config.scm /mnt --substitute-urls="https://ci.guix.gnu.org https://bordeaux.guix.gnu.org https://substitutes.nonguix.org" #+end_src * Modules diff --git a/home/home-configuration.scm b/home/home-configuration.scm index 4efbbaf..e20842a 100644 --- a/home/home-configuration.scm +++ b/home/home-configuration.scm @@ -84,125 +84,130 @@ ;; 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 - (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 "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) - ))) +(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) + )))