Skip to content

Latest commit

 

History

History
655 lines (605 loc) · 31.9 KB

TODO

File metadata and controls

655 lines (605 loc) · 31.9 KB

rde Tasks

Guix Home

Browsers

Implement home service ungoogled-chromium

  • Browser extension

Implement home service nyxt

  • Install extensions for Nyxt, see here

Make gtk home service

Make system service for Guix Home

Allows to make home-environment a part of operating-system and thus use without guix home subcommand.

Make it possible to specify the verbosity for guix home reconfigure

By default, only the path to the home environment should be shown, /gnu/store/...-home.

Implement pam_shepherd.so

Start user-space shepherd on first user login and exit on last logout.

Take a look at mpd service for user-service example and /run/user/ID creation.

rde

First Release

Add rde documentation template [2/2]

texinfo#Sample Beginning Create rde (.texi and Makefile)
  • [X] org->texinfo? No, plain texinfo is good enough.
  • [X] info, html and pdf make targets.

Deploy documentation as a web page

Prepare rde iso with HE inside

Setup ci and substitutes

Place a release-tag tag

Visually separate sway workspaces for different workflows

  • code
  • communication
  • multimedia

Refactor state service

  • Make a state to be a record
  • Add -fn path support
  • Generate shorter state names
  • Make a bigger state include substates (hierarchy sync)
  • Move notmuch tags and mbsync to state

Investigate Fedora XDG problem

  • Email from Gerry Agbobada: Re: Guix home on foreign distribution; handling XDG env

Make a thread on elisp serialization and use-package macro

https://framagit.org/tyreunom/guix-home-manager/-/merge_requests/7/diffs#fde31578cd2c6e21ef33b87b3182bb9192c03a32

Add feature-emacs-sdcv

Dictionaries: http://download.huzheng.org/ See also emacs-multitran

Add feature-emacs-smartparens

Debug screensharing and xdg portals

Configure orderless

https://github.com/oantolin/orderless https://github.com/minad/consult/wiki#minads-orderless-configuration

Configure icecat profiles

Prevent highlighting of refiled entities

[2022-01-21 Fri]

Archive

Archive

Browsers

ungoogled-chromium

  • Browser extension

nyxt

  • Install extensions for Nyxt, see here

Make gtk service

recoll

feature-recoll

recoll-WE web extension

emacs-consult-recoll

package definition
configuration
recoll -t > recollq
bindings M-s M-r

recoll-home-service

mcron job ; reindexing

mcron

trigger herd restart of home services mcron when jobs change

  • home mcron currently requires manual restart after guix home reconfigure config.scm

repro

set this constants value and C-c C-c the prop to set locally #+constants rde=$HOME/git/sys/rde

have an RDE config

I’m using a config based on file:./rde/examples/abcdw/configs.scm in my local repo, so make works from the root to reconfigure home.

reconfigure to ensure current state is fresh and properly reloaded
cd $RDE 
make

Removing home/samuel.gnupg/gpg-agent.conf… done Removing home/samuel.gnupg/gpg.conf… done Skipping home/samuel.gnupg (not an empty directory)… done Removing home/samuel.local/share/applications/emacs-telega.desktop… done Removing home/samuel.local/share/applications/emacs-dired.desktop… done Removing home/samuel.local/share/applications/emacs-org.desktop… done Removing home/samuel.local/share/applications/emacs-elpher.desktop… done Removing home/samuel.local/share/applications/emacs-emacs-q.desktop… done Removing home/samuel.local/share/applications/emacs-emacs-Q.desktop… done Removing home/samuel.local/share/applications/emacs-transmission.desktop… done Removing home/samuel.local/share/applications/emacs-erc.desktop… done Removing home/samuel.local/share/applications/emacs-message.desktop… done Removing home/samuel.local/share/applications/emacs-pdf-tools.desktop… done Skipping home/samuel.local/share/applications (not an empty directory)… done Skipping home/samuel.local/share (not an empty directory)… done Skipping home/samuel.local (not an empty directory)… done Removing home/samuel.config/zsh/.zprofile… done Removing home/samuel.config/zsh/.zshrc… done Removing home/samuel.config/zsh/.zshenv… done Removing home/samuel.config/zsh… done Removing home/samuel.config/msmtp/config… done Removing home/samuel.config/msmtp… done Removing home/samuel.config/fontconfig/fonts.conf… done Removing home/samuel.config/fontconfig… done Removing home/samuel.config/alsa/asoundrc… done Removing home/samuel.config/alsa… done Removing home/samuel.config/emacs/early-init.el… done Removing home/samuel.config/emacs/init.el… done Skipping home/samuel.config/emacs (not an empty directory)… done Removing home/samuel.config/direnv/direnvrc… done Removing home/samuel.config/direnv… done Removing home/samuel.config/notmuch/default/hooks/post-new… done Removing home/samuel.config/notmuch/default/hooks/pre-new… done Removing home/samuel.config/notmuch/default/hooks… done Removing home/samuel.config/notmuch/default/config… done Removing home/samuel.config/notmuch/default… done Removing home/samuel.config/notmuch… done Removing home/samuel.config/isync/mbsyncrc… done Removing home/samuel.config/isync… done Removing home/samuel.config/alacritty/alacritty.yml… done Removing home/samuel.config/alacritty… done Removing home/samuel.config/git/ignore… done Removing home/samuel.config/git/config… done Removing home/samuel.config/git/attributes… done Removing home/samuel.config/git… done Removing home/samuel.config/sway/config… done Skipping home/samuel.config/sway (not an empty directory)… done Removing home/samuel.config/user-dirs.conf… done Removing home/samuel.config/user-dirs.dirs… done Removing home/samuel.config/mimeapps.list… done Skipping home/samuel.config (not an empty directory)… done Removing home/samuel.ssh/config… done Skipping home/samuel.ssh (not an empty directory)… done Removing home/samuel.zshenv… done Removing home/samuel.mailcap… done Removing home/samuel.l2mdconfig… done Removing home/samuel.profile… done Cleanup finished.

New symlinks to home-environment will be created soon. All conflicting files will go to /home/samuel/1639741513-guix-home-legacy-configs-backup.

Skipping home/samuel.gnupg (directory already exists)… done Symlinking home/samuel.gnupg/gpg-agent.conf -> gnu/store/3ggaj65gdmnwdx4akl6v81ky78psyw8s-gnupg-gpg-agent.conf… done Symlinking /home/samuel.gnupg/gpg.conf -> gnu/store/li1hq0zd9vk3xrazkvmmp4qd3qbqz9bq-gnupg-gpg.conf… done Skipping /home/samuel.local (directory already exists)… done Skipping home/samuel.local/share (directory already exists)… done Skipping home/samuel.local/share/applications (directory already exists)… done Symlinking home/samuel.local/share/applications/emacs-telega.desktop -> gnu/store/jlh4hzxzichdv32wk3g74i1x93nv3ay4-xdg-desktop-emacs-telega.desktop-entry… done Symlinking /home/samuel.local/share/applications/emacs-dired.desktop -> gnu/store/l5a2p5f74gfxj8d3m0k5h2mzm3bxq2k8-xdg-desktop-emacs-dired.desktop-entry… done Symlinking /home/samuel.local/share/applications/emacs-org.desktop -> gnu/store/kqla7g08ahr4m2y2q9ynsa0wmqkanzrl-xdg-desktop-emacs-org.desktop-entry… done Symlinking /home/samuel.local/share/applications/emacs-elpher.desktop -> gnu/store/4xcm6md8ssqa7m7yza7h1wpgv3i1kp7m-xdg-desktop-emacs-elpher.desktop-entry… done Symlinking /home/samuel.local/share/applications/emacs-emacs-q.desktop -> gnu/store/j3p0s7iimwb240w31mvh4i2wi6541i72-xdg-desktop-emacs-emacs-q.desktop-entry… done Symlinking /home/samuel.local/share/applications/emacs-emacs-Q.desktop -> gnu/store/my4ki7l5zcjwy23grl96gzacnv9f0zhr-xdg-desktop-emacs-emacs-Q.desktop-entry… done Symlinking /home/samuel.local/share/applications/emacs-transmission.desktop -> gnu/store/4pfacsnggf8qwaxp7r743cws31hz0wgc-xdg-desktop-emacs-transmission.desktop-entry… done Symlinking /home/samuel.local/share/applications/emacs-erc.desktop -> gnu/store/kn6bm8xdic1axqdxdf0fkr0i7pjn9d34-xdg-desktop-emacs-erc.desktop-entry… done Symlinking /home/samuel.local/share/applications/emacs-message.desktop -> gnu/store/w0chfyx2qpfg7wnsaifir5ma0dx16h84-xdg-desktop-emacs-message.desktop-entry… done Symlinking /home/samuel.local/share/applications/emacs-pdf-tools.desktop -> gnu/store/f8sbcn7c5zcp28pwqd97g3vjgp3z1m3y-xdg-desktop-emacs-pdf-tools.desktop-entry… done Skipping /home/samuel.config (directory already exists)… done Creating home/samuel.config/zsh… done Symlinking home/samuel.config/zsh/.zprofile -> gnu/store/8aga3dqapnfx46919z1bqi4z05s8alz0-zprofile… done Symlinking /home/samuel.config/zsh/.zshrc -> gnu/store/vwrn814v58m5wmqpajv6l3433csmwmq4-zshrc… done Symlinking /home/samuel.config/zsh/.zshenv -> gnu/store/jzssmn4839q5akj9macif9qx6w3mzmzq-zshenv… done Creating /home/samuel.config/msmtp… done Symlinking home/samuel.config/msmtp/config -> gnu/store/nqd68xyac095nh1dwbbw3dj1v12ns0bl-msmtp… done Creating /home/samuel.config/fontconfig… done Symlinking home/samuel.config/fontconfig/fonts.conf -> gnu/store/phj2z2iiqdhryfy7mqral0b9qz3hlva6-fonts.conf… done Creating /home/samuel.config/alsa… done Symlinking home/samuel.config/alsa/asoundrc -> gnu/store/w9a4qkqvfd57zd3xjxnpgvk5gvydc7w5-asoundrc… done Skipping /home/samuel.config/emacs (directory already exists)… done Symlinking home/samuel.config/emacs/early-init.el -> gnu/store/hazbapxwjxxlzniqxriv3qmqazsb9x4x-early-init.el… done Symlinking /home/samuel.config/emacs/init.el -> gnu/store/lqrwjy803sw59z0cxlcinb7h3f31l788-init.el… done Creating /home/samuel.config/direnv… done Symlinking home/samuel.config/direnv/direnvrc -> gnu/store/kcg5fb6lswn9lf386ryaj17m4jf9via0-direnvrc… done Creating /home/samuel.config/notmuch… done Creating home/samuel.config/notmuch/default… done Creating home/samuel.config/notmuch/default/hooks… done Symlinking home/samuel.config/notmuch/default/hooks/post-new -> gnu/store/1kdl14gkna8bq681w1zs8drjr2avsp7s-notmuch-post-new… done Symlinking /home/samuel.config/notmuch/default/hooks/pre-new -> gnu/store/7h8z54wm9b0n12zh0138p07j09ili64a-notmuch-pre-new… done Symlinking /home/samuel.config/notmuch/default/config -> gnu/store/vpxr31b52rj5j7vcxq7ybljb2d7n65ib-notmuch-config… done Creating /home/samuel.config/isync… done Symlinking home/samuel.config/isync/mbsyncrc -> gnu/store/df1145fv0a2s1w0wpsgx4gwfs0qamlhj-mbsyncrc… done Creating /home/samuel.config/alacritty… done Symlinking home/samuel.config/alacritty/alacritty.yml -> gnu/store/5v7vx6k1r83vfk7dk8smh25b4mdyqxs3-alacritty.yml… done Creating /home/samuel.config/git… done Symlinking home/samuel.config/git/ignore -> gnu/store/k3v69xvi02nfazrw1pk6bm5rpq5ab3yq-git-ignore… done Symlinking /home/samuel.config/git/config -> gnu/store/arjjx181lgd5vlpizi6g8smwf7yx9mba-git-config… done Symlinking /home/samuel.config/git/attributes -> gnu/store/4b2r2xk249d8clwpscil9dvaki4ph51r-git-attributes… done Skipping /home/samuel.config/sway (directory already exists)… done Symlinking home/samuel.config/sway/config -> gnu/store/1710mwlm3bbnqiwfw5vqdfw0z9cxk22j-sway-config… done Symlinking /home/samuel.config/user-dirs.conf -> gnu/store/kiyn1z6443spwd28p3pxzw25yb1zxm3g-user-dirs.conf… done Symlinking /home/samuel.config/user-dirs.dirs -> gnu/store/m6s8g1y4nmbgx66iicqkx7864jl0h57j-user-dirs.dirs… done Symlinking /home/samuel.config/mimeapps.list -> gnu/store/jbblp7w128q0nh437qa7qblilsvz5f5h-xdg-mime-appplications… done Skipping /home/samuel.ssh (directory already exists)… done Symlinking home/samuel.ssh/config -> gnu/store/8c98jdcvs80dpm9ff5rcjx7cn1mbyjbc-ssh-config… done Symlinking /home/samuel.zshenv -> gnu/store/750lcma15p4xzmj377qrcns0p3za37m0-auxiliary-zshenv… done Symlinking /home/samuel.mailcap -> gnu/store/3788khia4241j9a6p6sa37kv607f9sng-mailcap… done Symlinking /home/samuel.l2mdconfig -> gnu/store/w34n2h10sbc15bvcffa6fcgrhrk0mc0b-l2mdconfig… done Symlinking /home/samuel.profile -> /gnu/store/034kpwrpgmj3svzkx781482sr01pckcm-shell-profile… done done Finished updating symlinks.

Creating XDG user directories… done Updating startup tty for gpg… done Loading /gnu/store/h21wkxp8z75nvnhbb5hvd03mivc175sn-shepherd.conf. Starting services…

Comparing /gnu/store/5iahxhq3n5s7bv9vlw8cmq75a0gafwxv-home/profile/share/fonts and /gnu/store/5iahxhq3n5s7bv9vlw8cmq75a0gafwxv-home/profile/share/fonts… done (same) Comparing /gnu/store/5iahxhq3n5s7bv9vlw8cmq75a0gafwxv-home/setup-environment and /gnu/store/5iahxhq3n5s7bv9vlw8cmq75a0gafwxv-home/setup-environment… done (same) Comparing /gnu/store/5iahxhq3n5s7bv9vlw8cmq75a0gafwxv-home/on-first-login and /gnu/store/5iahxhq3n5s7bv9vlw8cmq75a0gafwxv-home/on-first-login… done (same) Comparing /gnu/store/5iahxhq3n5s7bv9vlw8cmq75a0gafwxv-home/files/config/sway/config and /gnu/store/5iahxhq3n5s7bv9vlw8cmq75a0gafwxv-home/files/config/sway/config… done (same) Evaling on-change gexps.

On-change gexps evaluation finished.

check herd mcron state
herd schedule mcron 1

Fri 17 Dec 2021 01:00:00 PM CET +0100 Lambda function

Fri 17 Dec 2021 02:00:00 PM CET +0100 mbsync

Fri 17 Dec 2021 02:00:00 PM CET +0100 Lambda function

Fri 17 Dec 2021 03:00:00 PM CET +0100 mbsync

Fri 17 Dec 2021 03:00:00 PM CET +0100 Lambda function

Fri 17 Dec 2021 04:00:00 PM CET +0100 mbsync

Fri 17 Dec 2021 04:00:00 PM CET +0100 Lambda function

Fri 17 Dec 2021 05:00:00 PM CET +0100 mbsync

Fri 17 Dec 2021 05:00:00 PM CET +0100 Lambda function

add a new home service

e.g.

(feature-custom-services
 #:home-services
 ((@ (gnu services) simple-service)
  'hello-world-job
  (@ (gnu home services mcron) home-mcron-service-type)
  (list #~(job '(next-hour)
               (lambda ()
                 (system* "echo 'hello world' >> /tmp/hello")
                 (system* "date -u >> /tmp/hello"))
               "my-hello-world"))))
reconfigure with additional job

Removing home/samuel.gnupg/gpg-agent.conf… done Removing home/samuel.gnupg/gpg.conf… done Skipping home/samuel.gnupg (not an empty directory)… done Removing home/samuel.local/share/applications/emacs-telega.desktop… done Removing home/samuel.local/share/applications/emacs-dired.desktop… done Removing home/samuel.local/share/applications/emacs-org.desktop… done Removing home/samuel.local/share/applications/emacs-elpher.desktop… done Removing home/samuel.local/share/applications/emacs-emacs-q.desktop… done Removing home/samuel.local/share/applications/emacs-emacs-Q.desktop… done Removing home/samuel.local/share/applications/emacs-transmission.desktop… done Removing home/samuel.local/share/applications/emacs-erc.desktop… done Removing home/samuel.local/share/applications/emacs-message.desktop… done Removing home/samuel.local/share/applications/emacs-pdf-tools.desktop… done Skipping home/samuel.local/share/applications (not an empty directory)… done Skipping home/samuel.local/share (not an empty directory)… done Skipping home/samuel.local (not an empty directory)… done Removing home/samuel.config/zsh/.zprofile… done Removing home/samuel.config/zsh/.zshrc… done Removing home/samuel.config/zsh/.zshenv… done Removing home/samuel.config/zsh… done Removing home/samuel.config/msmtp/config… done Removing home/samuel.config/msmtp… done Removing home/samuel.config/fontconfig/fonts.conf… done Removing home/samuel.config/fontconfig… done Removing home/samuel.config/alsa/asoundrc… done Removing home/samuel.config/alsa… done Removing home/samuel.config/emacs/early-init.el… done Removing home/samuel.config/emacs/init.el… done Skipping home/samuel.config/emacs (not an empty directory)… done Removing home/samuel.config/direnv/direnvrc… done Removing home/samuel.config/direnv… done Removing home/samuel.config/notmuch/default/hooks/post-new… done Removing home/samuel.config/notmuch/default/hooks/pre-new… done Removing home/samuel.config/notmuch/default/hooks… done Removing home/samuel.config/notmuch/default/config… done Removing home/samuel.config/notmuch/default… done Removing home/samuel.config/notmuch… done Removing home/samuel.config/isync/mbsyncrc… done Removing home/samuel.config/isync… done Removing home/samuel.config/alacritty/alacritty.yml… done Removing home/samuel.config/alacritty… done Removing home/samuel.config/git/ignore… done Removing home/samuel.config/git/config… done Removing home/samuel.config/git/attributes… done Removing home/samuel.config/git… done Removing home/samuel.config/sway/config… done Skipping home/samuel.config/sway (not an empty directory)… done Removing home/samuel.config/user-dirs.conf… done Removing home/samuel.config/user-dirs.dirs… done Removing home/samuel.config/mimeapps.list… done Skipping home/samuel.config (not an empty directory)… done Removing home/samuel.ssh/config… done Skipping home/samuel.ssh (not an empty directory)… done Removing home/samuel.zshenv… done Removing home/samuel.mailcap… done Removing home/samuel.l2mdconfig… done Removing home/samuel.profile… done Cleanup finished.

New symlinks to home-environment will be created soon. All conflicting files will go to /home/samuel/1639741671-guix-home-legacy-configs-backup.

Skipping home/samuel.gnupg (directory already exists)… done Symlinking home/samuel.gnupg/gpg-agent.conf -> gnu/store/3ggaj65gdmnwdx4akl6v81ky78psyw8s-gnupg-gpg-agent.conf… done Symlinking /home/samuel.gnupg/gpg.conf -> gnu/store/li1hq0zd9vk3xrazkvmmp4qd3qbqz9bq-gnupg-gpg.conf… done Skipping /home/samuel.local (directory already exists)… done Skipping home/samuel.local/share (directory already exists)… done Skipping home/samuel.local/share/applications (directory already exists)… done Symlinking home/samuel.local/share/applications/emacs-telega.desktop -> gnu/store/jlh4hzxzichdv32wk3g74i1x93nv3ay4-xdg-desktop-emacs-telega.desktop-entry… done Symlinking /home/samuel.local/share/applications/emacs-dired.desktop -> gnu/store/l5a2p5f74gfxj8d3m0k5h2mzm3bxq2k8-xdg-desktop-emacs-dired.desktop-entry… done Symlinking /home/samuel.local/share/applications/emacs-org.desktop -> gnu/store/kqla7g08ahr4m2y2q9ynsa0wmqkanzrl-xdg-desktop-emacs-org.desktop-entry… done Symlinking /home/samuel.local/share/applications/emacs-elpher.desktop -> gnu/store/4xcm6md8ssqa7m7yza7h1wpgv3i1kp7m-xdg-desktop-emacs-elpher.desktop-entry… done Symlinking /home/samuel.local/share/applications/emacs-emacs-q.desktop -> gnu/store/j3p0s7iimwb240w31mvh4i2wi6541i72-xdg-desktop-emacs-emacs-q.desktop-entry… done Symlinking /home/samuel.local/share/applications/emacs-emacs-Q.desktop -> gnu/store/my4ki7l5zcjwy23grl96gzacnv9f0zhr-xdg-desktop-emacs-emacs-Q.desktop-entry… done Symlinking /home/samuel.local/share/applications/emacs-transmission.desktop -> gnu/store/4pfacsnggf8qwaxp7r743cws31hz0wgc-xdg-desktop-emacs-transmission.desktop-entry… done Symlinking /home/samuel.local/share/applications/emacs-erc.desktop -> gnu/store/kn6bm8xdic1axqdxdf0fkr0i7pjn9d34-xdg-desktop-emacs-erc.desktop-entry… done Symlinking /home/samuel.local/share/applications/emacs-message.desktop -> gnu/store/w0chfyx2qpfg7wnsaifir5ma0dx16h84-xdg-desktop-emacs-message.desktop-entry… done Symlinking /home/samuel.local/share/applications/emacs-pdf-tools.desktop -> gnu/store/f8sbcn7c5zcp28pwqd97g3vjgp3z1m3y-xdg-desktop-emacs-pdf-tools.desktop-entry… done Skipping /home/samuel.config (directory already exists)… done Creating home/samuel.config/zsh… done Symlinking home/samuel.config/zsh/.zprofile -> gnu/store/8aga3dqapnfx46919z1bqi4z05s8alz0-zprofile… done Symlinking /home/samuel.config/zsh/.zshrc -> gnu/store/vwrn814v58m5wmqpajv6l3433csmwmq4-zshrc… done Symlinking /home/samuel.config/zsh/.zshenv -> gnu/store/jzssmn4839q5akj9macif9qx6w3mzmzq-zshenv… done Creating /home/samuel.config/msmtp… done Symlinking home/samuel.config/msmtp/config -> gnu/store/nqd68xyac095nh1dwbbw3dj1v12ns0bl-msmtp… done Creating /home/samuel.config/fontconfig… done Symlinking home/samuel.config/fontconfig/fonts.conf -> gnu/store/phj2z2iiqdhryfy7mqral0b9qz3hlva6-fonts.conf… done Creating /home/samuel.config/alsa… done Symlinking home/samuel.config/alsa/asoundrc -> gnu/store/w9a4qkqvfd57zd3xjxnpgvk5gvydc7w5-asoundrc… done Skipping /home/samuel.config/emacs (directory already exists)… done Symlinking home/samuel.config/emacs/early-init.el -> gnu/store/hazbapxwjxxlzniqxriv3qmqazsb9x4x-early-init.el… done Symlinking /home/samuel.config/emacs/init.el -> gnu/store/lqrwjy803sw59z0cxlcinb7h3f31l788-init.el… done Creating /home/samuel.config/direnv… done Symlinking home/samuel.config/direnv/direnvrc -> gnu/store/kcg5fb6lswn9lf386ryaj17m4jf9via0-direnvrc… done Creating /home/samuel.config/notmuch… done Creating home/samuel.config/notmuch/default… done Creating home/samuel.config/notmuch/default/hooks… done Symlinking home/samuel.config/notmuch/default/hooks/post-new -> gnu/store/1kdl14gkna8bq681w1zs8drjr2avsp7s-notmuch-post-new… done Symlinking /home/samuel.config/notmuch/default/hooks/pre-new -> gnu/store/7h8z54wm9b0n12zh0138p07j09ili64a-notmuch-pre-new… done Symlinking /home/samuel.config/notmuch/default/config -> gnu/store/vpxr31b52rj5j7vcxq7ybljb2d7n65ib-notmuch-config… done Creating /home/samuel.config/isync… done Symlinking home/samuel.config/isync/mbsyncrc -> gnu/store/df1145fv0a2s1w0wpsgx4gwfs0qamlhj-mbsyncrc… done Creating /home/samuel.config/alacritty… done Symlinking home/samuel.config/alacritty/alacritty.yml -> gnu/store/5v7vx6k1r83vfk7dk8smh25b4mdyqxs3-alacritty.yml… done Creating /home/samuel.config/git… done Symlinking home/samuel.config/git/ignore -> gnu/store/k3v69xvi02nfazrw1pk6bm5rpq5ab3yq-git-ignore… done Symlinking /home/samuel.config/git/config -> gnu/store/arjjx181lgd5vlpizi6g8smwf7yx9mba-git-config… done Symlinking /home/samuel.config/git/attributes -> gnu/store/4b2r2xk249d8clwpscil9dvaki4ph51r-git-attributes… done Skipping /home/samuel.config/sway (directory already exists)… done Symlinking home/samuel.config/sway/config -> gnu/store/1710mwlm3bbnqiwfw5vqdfw0z9cxk22j-sway-config… done Symlinking /home/samuel.config/user-dirs.conf -> gnu/store/kiyn1z6443spwd28p3pxzw25yb1zxm3g-user-dirs.conf… done Symlinking /home/samuel.config/user-dirs.dirs -> gnu/store/m6s8g1y4nmbgx66iicqkx7864jl0h57j-user-dirs.dirs… done Symlinking /home/samuel.config/mimeapps.list -> gnu/store/jbblp7w128q0nh437qa7qblilsvz5f5h-xdg-mime-appplications… done Skipping /home/samuel.ssh (directory already exists)… done Symlinking home/samuel.ssh/config -> gnu/store/8c98jdcvs80dpm9ff5rcjx7cn1mbyjbc-ssh-config… done Symlinking /home/samuel.zshenv -> gnu/store/750lcma15p4xzmj377qrcns0p3za37m0-auxiliary-zshenv… done Symlinking /home/samuel.mailcap -> gnu/store/3788khia4241j9a6p6sa37kv607f9sng-mailcap… done Symlinking /home/samuel.l2mdconfig -> gnu/store/w34n2h10sbc15bvcffa6fcgrhrk0mc0b-l2mdconfig… done Symlinking /home/samuel.profile -> /gnu/store/034kpwrpgmj3svzkx781482sr01pckcm-shell-profile… done done Finished updating symlinks.

Creating XDG user directories… done Updating startup tty for gpg… done Loading /gnu/store/5asfjyz8v1an9bfgfmbnn617d1hx9hlq-shepherd.conf. Starting services…

Comparing /gnu/store/5iahxhq3n5s7bv9vlw8cmq75a0gafwxv-home/profile/share/fonts and /gnu/store/ymx6ym0zni3cbz51h2xhnzn9kzrdn2pr-home/profile/share/fonts… done (same) Comparing /gnu/store/5iahxhq3n5s7bv9vlw8cmq75a0gafwxv-home/setup-environment and /gnu/store/ymx6ym0zni3cbz51h2xhnzn9kzrdn2pr-home/setup-environment… done (same) Comparing /gnu/store/5iahxhq3n5s7bv9vlw8cmq75a0gafwxv-home/on-first-login and /gnu/store/ymx6ym0zni3cbz51h2xhnzn9kzrdn2pr-home/on-first-login… done (changed) Comparing /gnu/store/5iahxhq3n5s7bv9vlw8cmq75a0gafwxv-home/files/config/sway/config and /gnu/store/ymx6ym0zni3cbz51h2xhnzn9kzrdn2pr-home/files/config/sway/config… done (same) Evaling on-change gexps.

The on-first-login script was updated. Re-login to get the cahnges applied. On-change gexps evaluation finished.

check the supposed-to-be-updated herd status
restart mcron
herd restart mcron
check the now-updated herd status

Fri 17 Dec 2021 01:00:00 PM CET +0100 my-hello-world

Finished

icecat

sway

Emacs

Features:

xdg-flavor?
Use /.config/emacs/
separate-customize?
Move customize to state dir
no-init-el?
Use default.el instead of init.el
server-mode?
Create shepherd service for emacs

pass

Also browser plugins and other stuff

Comprehensive Email configuration

Things the user should be able to configure

  • IMAP and SMTP info (e.g. address, username, port)
  • PGP key

Implement mail sync service

  • isync/offlineimap/fetchmail/getmail
  • Guix System already has a service for getmail, (gnu services getmail)
  • Integrate with mcron/state service

Mail indexer

  • notmuch/mu

Add on-change to activation script?

For some apps to run some commands like restart if their configs updated

Make fonts service

SMTP client

  • msmtp/sendmail

Create clean example configuration

rde/config.scm is a ready to use configuration, but requires few helpers to make it customizable by the end user.

guix home Before Upstream Checklist

Archive

Make symlink manager to check

if the file is modified by user before removing it, even if it already under the control of guix home.

Rewrite on-first-login script to guile

Check it works on debian

Implement zsh home-service

Implement bash home-service

Implement gnupg home-service

Call on-reconfigure on reconfigure

Add guix home search

Add list-generations

Add guix home roll-back/switch/delete

Fix environment-variables service

It’s enough to make it accept pairs, it doesn’t have to be list, because value can be a gexp.

Add XDG support to home-envirnoment

Set explicitly XDG_CONFIG_HOME and friends.

Run guix home on 5 early adopters

Establish/define support channels and schedule

Define schedule and add the information to announce.

  • #guix IRC.
  • rde-discuss mailing list.
  • beweekly calls.
Announce in rde-announce
Announce in guix-devel
Announce on stream

Discuss xdg-flavor? default to #t

Establish documenting workflow (write guideline)

on-reconfigure -> activation

Refactor on-reconfigure service, it should be activation service, because this script can be called on generation switch event and not only on reconfigure.

Add provenance

To make guix home describe more informative.

Make activation script create ~/.guix-home symlink

It will also allow to make correct run-on-change implementation.

Add guix home init command for migrating from ~~/.guix-profile~

Similar to guix package --export-manifest, and maybe detect existing config files and generate template for home services configurations. E.g. if ~~/.bashrc~ exists, add home-bash-service-type to services field of home-environemnt.

guix home Upstream Backlog

Archive

Ensure style is correct

https://mumble.net/~campbell/scheme/style.txt https://emacs-guix.gitlab.io/website/manual/latest/emacs-guix.html#Development https://guix.gnu.org/manual/en/guix.html#Coding-Style Add copyrights to source code

Cleanup utils module

Split into utils and configuration related helper?

Add home-services to service or keep them separate?

Implement features -> he/os converter

Remove previous rde implementation