diff --git a/home-environments/radio.scm b/home-environments/radio.scm index 31a24cb..6057836 100644 --- a/home-environments/radio.scm +++ b/home-environments/radio.scm @@ -1,7 +1,9 @@ (define-module (radix home-enviroments radio) #|GNU|# #:use-module (gnu) - #:use-module (gnu home) + #:use-module ((gnu home) #:select (this-home-environment)) + #:use-module ((gnu home) #:hide (this-home-environment) + #:prefix user-) #:use-module (gnu home services) #|GNU packages|# @@ -43,12 +45,12 @@ #:use-module (gnu packages xorg) #|GNU home services|# - #|D|# (gnu home services desktop) - #|G|# (gnu home services guix) - #|M|# (gnu home services mcron) - #|S|# (gnu home services ssh) - (gnu home services shepherd) - (gnu home services sound) + #|D|# #:use-module (gnu home services desktop) + #|G|# #:use-module (gnu home services guix) + #|M|# #:use-module (gnu home services mcron) + #|S|# #:use-module (gnu home services ssh) + #:use-module (gnu home services shepherd) + #:use-module (gnu home services sound) #|Guix|# #:use-module (guix channels) @@ -79,483 +81,485 @@ #|M|# #:use-module ((radix files mpv) #:prefix file:mpv-) #|N|# #:use-module ((radix files newsraft) #:prefix file:newsraft-)) -(home-environment - (packages - (list #|admin |# neofetch netcat-openbsd - #|bittorrent |# aria2 qbittorrent - #|c |# c-intro-and-ref - #|calendar |# remind - #|curl |# curl - #|disk |# lf - #|file |# file - #|fonts |# font-arabic-misc font-liberation font-meslo-lg-dz - font-misc-misc font-un font-wqy-zenhei - #|freedesktop |# xdg-utils - #|games |# minetest supertuxkart xonotic - #|gnome |# adwaita-icon-theme - #|gnu-doc |# gnu-standards - #|gnupg |# gnupg pinentry - #|gnuzilla |# icecat - #|guile-xyz |# haunt - #|image-viewers |# imv - #|linux |# alsa-utils - #|math |# libqalculate - #|password-utils|# keepassxc - #|pdf |# zathura zathura-pdf-mupdf zathura-djvu - #|pulseaudio |# pamixer pavucontrol - #|python-xyz |# python-ueberzug - #|scheme |# sicp - #|shells |# fish - #|syndication |# newsraft - #|ssh |# openssh - #|suckless |# xst - #|telegram |# telegram-desktop - #|tor |# torbrowser - #|toys |# oneko - #|vesion-control|# git - #|video |# ffmpeg mpv yt-dlp - #|wm |# awesome-git - #|xdisorg |# maim xbanish xclip xinit xsel - #|xorg |# setxkbmap xinput xf86-input-libinput xkill xmodmap - xorg-server xrdb xset)) +(define home-environment + (user-home-environment + (packages + (list #|admin |# neofetch netcat-openbsd + #|bittorrent |# aria2 qbittorrent + #|c |# c-intro-and-ref + #|calendar |# remind + #|curl |# curl + #|disk |# lf + #|file |# file + #|fonts |# font-arabic-misc font-liberation font-meslo-lg-dz + font-misc-misc font-un font-wqy-zenhei + #|freedesktop |# xdg-utils + #|games |# minetest supertuxkart xonotic + #|gnome |# adwaita-icon-theme + #|gnu-doc |# gnu-standards + #|gnupg |# gnupg pinentry + #|gnuzilla |# icecat + #|guile-xyz |# haunt + #|image-viewers |# imv + #|linux |# alsa-utils + #|math |# libqalculate + #|password-utils|# keepassxc + #|pdf |# zathura zathura-pdf-mupdf zathura-djvu + #|pulseaudio |# pamixer pavucontrol + #|python-xyz |# python-ueberzug + #|scheme |# sicp + #|shells |# fish + #|syndication |# newsraft + #|ssh |# openssh + #|suckless |# xst + #|telegram |# telegram-desktop + #|tor |# torbrowser + #|toys |# oneko + #|vesion-control|# git + #|video |# ffmpeg mpv yt-dlp + #|wm |# awesome-git + #|xdisorg |# maim xbanish xclip xinit xsel + #|xorg |# setxkbmap xinput xf86-input-libinput xkill xmodmap + xorg-server xrdb xset)) - (services - (list #|XDG services|# - (service home-xdg-user-directories-service-type - (home-xdg-user-directories-configuration - (desktop "$HOME/areas") - (documents "$HOME/areas/documents") - (music "$HOME/media/music") - (pictures "$HOME/media/pictures") - (videos "$HOME/media/videos") - (publicshare "$HOME/resources/public") - (download "$HOME/.local/share/downloads") - (templates "$HOME/.local/share/templates"))) + (services + (list #|XDG services|# + (service home-xdg-user-directories-service-type + (home-xdg-user-directories-configuration + (desktop "$HOME/areas") + (documents "$HOME/areas/documents") + (music "$HOME/media/music") + (pictures "$HOME/media/pictures") + (videos "$HOME/media/videos") + (publicshare "$HOME/resources/public") + (download "$HOME/.local/share/downloads") + (templates "$HOME/.local/share/templates"))) - (service home-xdg-mime-applications-service-type - (home-xdg-mime-applications-configuration - (default (associate-right - ('icecat.desktop - `("text/html" - "application/xhtml+xml" - "application/x-extension-htm" - "application/x-extension-xhtml" - "application/x-extension-xht" - "x-scheme-handler/http" - "x-scheme-handler/https")) - ('kak.desktop - `("text/plain" - "text/troff" - "text/xml" - "text/x-c" - "text/x-c++" - "text/x-diff" - "text/x-lisp" - "text/x-scheme" - "text/x-shellscript" - "text/x-tex")) - ('lf.desktop - `("inode/directory" - "x-scheme-handler/ftp" - "x-scheme-handler/nfs" - "x-scheme-handler/smb" - "x-scheme-handler/ssh" - "application/x-directory")) - ('mpv.desktop - `("image/gif" - "audio/mpeg" - "audio/ogg" - "audio/opus" - "audio/x-opus+ogg" - "video/mp4" - "video/x-matroska" - "video/webm")) - ('imv.desktop - `("image/avif" - "image/bmp" - "image/jpeg" - "image/png" - "image/svg+xml" - "image/webp")) - ('org.pwmt.zathura.desktop - `("image/vnd.djvu" - "application/pdf" - "application/epub+zip")))))) + (service home-xdg-mime-applications-service-type + (home-xdg-mime-applications-configuration + (default (associate-right + ('icecat.desktop + `("text/html" + "application/xhtml+xml" + "application/x-extension-htm" + "application/x-extension-xhtml" + "application/x-extension-xht" + "x-scheme-handler/http" + "x-scheme-handler/https")) + ('kak.desktop + `("text/plain" + "text/troff" + "text/xml" + "text/x-c" + "text/x-c++" + "text/x-diff" + "text/x-lisp" + "text/x-scheme" + "text/x-shellscript" + "text/x-tex")) + ('lf.desktop + `("inode/directory" + "x-scheme-handler/ftp" + "x-scheme-handler/nfs" + "x-scheme-handler/smb" + "x-scheme-handler/ssh" + "application/x-directory")) + ('mpv.desktop + `("image/gif" + "audio/mpeg" + "audio/ogg" + "audio/opus" + "audio/x-opus+ogg" + "video/mp4" + "video/x-matroska" + "video/webm")) + ('imv.desktop + `("image/avif" + "image/bmp" + "image/jpeg" + "image/png" + "image/svg+xml" + "image/webp")) + ('org.pwmt.zathura.desktop + `("image/vnd.djvu" + "application/pdf" + "application/epub+zip")))))) - (service home-xdg-configuration-files-service-type - `(("awesome/rc.lua" ,file:awesome-config) - ("awesome/themes/current.lua" ,file:awesome-theme) - ("emacs/init.el" ,file:emacs-init) - ("emacs/theme.el" ,file:emacs-theme) - ("fish/functions" ,file:fish-functions) - ("fish/conf.d" ,file:fish-config) - ("git" ,file:git-config) - ("info" ,file:info-config) - ("kak/kakrc" ,file:kak-config) - ("kak/autoload/colorscheme.kak" ,file:kak-colorscheme) - ("lf" ,file:lf-config) - ("mpv" ,file:mpv-config) - ("newsraft" ,file:newsraft-config))) + (service home-xdg-configuration-files-service-type + `(("awesome/rc.lua" ,file:awesome-config) + ("awesome/themes/current.lua" ,file:awesome-theme) + ("emacs/init.el" ,file:emacs-init) + ("emacs/theme.el" ,file:emacs-theme) + ("fish/functions" ,file:fish-functions) + ("fish/conf.d" ,file:fish-config) + ("git" ,file:git-config) + ("info" ,file:info-config) + ("kak/kakrc" ,file:kak-config) + ("kak/autoload/colorscheme.kak" ,file:kak-colorscheme) + ("lf" ,file:lf-config) + ("mpv" ,file:mpv-config) + ("newsraft" ,file:newsraft-config))) - #|Guix service|# - (simple-service 'channels-service - home-channels-service-type - (list (channel - (name 'radix) - (url "https://codeberg.org/anemofilia/radix") - (branch "main") - (introduction - (make-channel-introduction - "f9130e11e35d2c147c6764ef85542dc58dc09c4f" - (openpgp-fingerprint - (format #f "F164 709E 5FC7 B32B AEC7 ~ - 9F37 1F2E 76AC E3F5 31C8"))))))) + #|Guix service|# + (simple-service 'channels-service + home-channels-service-type + (list (channel + (name 'radix) + (url "https://codeberg.org/anemofilia/radix") + (branch "main") + (introduction + (make-channel-introduction + "f9130e11e35d2c147c6764ef85542dc58dc09c4f" + (openpgp-fingerprint + (format #f "F164 709E 5FC7 B32B AEC7 ~ + 9F37 1F2E 76AC E3F5 31C8"))))))) - #|Shepherd service|# - (service home-shepherd-service-type) + #|Shepherd service|# + (service home-shepherd-service-type) - #|Shell services|# - (service home-fish-service-type - (home-fish-configuration - (config (list file:fish-custom-functions)) - (environment-variables - `(("GPG_TTY" . "(tty)") - ("fish_complete_path" - . ,(format #f "$fish_complete_path~@{ ~a/fish/completions}" - "$HOME/.guix-home/profile/share")))) - (aliases - `(#|Common aliases|# - ("df" . "df -h") - ("du" . "du -h") - ("diff" . "diff --color=auto") - ("grep" . "grep --color=auto") - ("ip" . "ip --color=auto") - ("ls" . ,(format #f "ls --color=auto ~ - --group-directories-first ~ - --classify ~ - -hv")) + #|Shell services|# + (service home-fish-service-type + (home-fish-configuration + (config (list file:fish-custom-functions)) + (environment-variables + `(("GPG_TTY" . "(tty)") + ("fish_complete_path" + . ,(format #f "$fish_complete_path~@{ ~a/fish/completions}" + "$HOME/.guix-home/profile/share")))) + (aliases + `(#|Common aliases|# + ("df" . "df -h") + ("du" . "du -h") + ("diff" . "diff --color=auto") + ("grep" . "grep --color=auto") + ("ip" . "ip --color=auto") + ("ls" . ,(format #f "ls --color=auto ~ + --group-directories-first ~ + --classify ~ + -hv")) - #|Clear terminal screen without ncurses|# - ("clear" . "printf \"\\033c\"") + #|Clear terminal screen without ncurses|# + ("clear" . "printf \"\\033c\"") - #|Make ln idempotent|# - ("ln" . "ln -sfn") + #|Make ln idempotent|# + ("ln" . "ln -sfn") - #|Kakoune bindings for info|# - ("info" . "info --init-file $XDG_CONFIG_HOME/info") + #|Kakoune bindings for info|# + ("info" . "info --init-file $XDG_CONFIG_HOME/info") - #|Easy presentation setup with xrandr|# - ("present" . ,(format #f "xrandr --output LVDS-1 ~ - --mode 1366x768 ~ - --scale 1x1 ~ - --output VGA-1 ~ - --same-as LVDS-1 ~ - --mode 1920x1080 ~ - --scale 0.711x0.711")) + #|Easy presentation setup with xrandr|# + ("present" . ,(format #f "xrandr --output LVDS-1 ~ + --mode 1366x768 ~ + --scale 1x1 ~ + --output VGA-1 ~ + --same-as LVDS-1 ~ + --mode 1920x1080 ~ + --scale 0.711x0.711")) - #|Display images in lf using ueberzug|# - ("lf" . "$HOME/.local/bin/lf/lfrun") + #|Display images in lf using ueberzug|# + ("lf" . "$HOME/.local/bin/lf/lfrun") - #|Listen to libre music on vern's radio|# - ("radio" . "https://radio.vern.cc") + #|Listen to libre music on vern's radio|# + ("radio" . "https://radio.vern.cc") - #|Kakoune aliases for the shell|# - ("':e'" . "kak") - ("':q'" . "exit"))) - (abbreviations - (let ((code-projects "~/projects/code") - (code-project-extensions - '(c clj cpp el html kak md org pl py scm sh tex zig)) - (xdg-user-directories - '(desktop documents downloads music - pictures public templates videos)) - (bookmarks - '(emacs guile guix haunt misc))) - (list #|Quick access|# + #|Kakoune aliases for the shell|# + ("':e'" . "kak") + ("':q'" . "exit"))) + (abbreviations + (let ((code-projects "~/projects/code") + (code-project-extensions + '(c clj cpp el html kak md org pl py scm sh tex zig)) + (xdg-user-directories + '(desktop documents downloads music + pictures public templates videos)) + (bookmarks + '(emacs guile guix haunt misc))) + (list #|Quick access|# + (abbreviation + (name "@user-dirs") + (position 'anywhere) + (pattern + (apply format #f "@(~a~@{|~a~})" + xdg-user-directories)) + (expansion (fish-function "xdg-user-directory"))) + (abbreviation + (name "@extension") + (position 'anywhere) + (pattern + (apply format #f "@(~a~@{|~a~})" + code-project-extensions)) + (expansion + (fish-function "code-projects"))) + (abbreviation + (name "@punk") + (position 'anywhere) + (expansion + (format #f "~a/cpp/punk" + code-projects))) + (abbreviation + (name "@guix") + (position 'anywhere) + (expansion + (format #f "~a/scm/guix" + code-projects))) + (abbreviation + (name "@radix") + (position 'anywhere) + (expansion + (format #f "~a/scm/radix" + code-projects))) + (abbreviation + (name "@files") + (position 'anywhere) + (expansion + (format #f "~a/scm/radix/files" + code-projects))) + (abbreviation + (name "@modules") + (position 'anywhere) + (expansion + (format #f "~a/scm/radix/modules/radix" + code-projects))) + (abbreviation + (name "@research") + (position 'anywhere) + (expansion "~/areas/research")) + (abbreviation + (name "@bookmarks") + (position 'anywhere) + (expansion "~/resources/bookmarks")) + (abbreviation + (name "@git-root") + (pattern "@git-root") + (position 'anywhere) + (expansion + (fish-function "git-root"))) + + #|Quick edit|# + (abbreviation + (name ":e") + (expansion "$EDITOR")) + (abbreviation + (name ":system") + (expansion + (format #f "~a/scm/radix && $EDITOR buer.scm" + code-projects))) + (abbreviation + (name ":home") + (expansion + (format #f "~a/scm/radix && $EDITOR radio.scm" + code-projects))) + (abbreviation + (name ":todo") + (expansion "~/areas/organization/todo")) + (abbreviation + (name ":bookmark") + (position 'anywhere) + (pattern + (apply format #f ":(~a~@{|~a~})" bookmarks)) + (expansion + (fish-function "bookmarks"))) + + #|Media downloading|# + (abbreviation + (name "i") + (expansion "ipfs get %")) + (abbreviation + (name "d") + (expansion "aria -j 10 '%'")) + (abbreviation + (name "m") + (expansion + (format #f "yt-dlp --prefer-free-formats ~ + --extract-audio '%'"))) + (abbreviation + (name "v") + (expansion + "yt-dlp --prefer-free-formats '%'")) + + #|Command history reuse|# + (abbreviation + (name "!!") + (position 'anywhere) + (expansion + (fish-function "bang-bang"))) + (abbreviation + (name "!!:k") + (position 'anywhere) + (pattern "!!:[0-9]+") + (expansion + (fish-function "bang-bang-k"))) + (abbreviation + (name "!$") + (position 'anywhere) + (expansion + (fish-function "bang-dollar"))) + (abbreviation + (name "!*") + (position 'anywhere) + (expansion + (fish-function "bang-star"))) + + #|Guix reconfiguration|# + (abbreviation + (name "!dgen") + (position 'anywhere) + (expansion "guix % delete-generations 2w")) + (abbreviation + (name "!repair") + (expansion "doas guix build --repair")) + (abbreviation + (name "!pull") + (position 'anywhere) + (expansion "guix pull")) + (abbreviation + (name "!home") + (expansion + "guix home reconfigure ~/.config/guix/home.scm")) + (abbreviation + (name "!system") + (expansion + "doas guix system reconfigure /etc/config.scm")) + + #|Utils|# (abbreviation - (name "@user-dirs") - (position 'anywhere) - (pattern - (apply format #f "@(~a~@{|~a~})" - xdg-user-directories)) - (expansion (fish-function "xdg-user-directory"))) + (name "zedit") + (expansion "zcat % | $EDITOR")) (abbreviation - (name "@extension") - (position 'anywhere) - (pattern - (apply format #f "@(~a~@{|~a~})" - code-project-extensions)) - (expansion - (fish-function "code-projects"))) - (abbreviation - (name "@punk") + (name "tf") (position 'anywhere) (expansion - (format #f "~a/cpp/punk" - code-projects))) + "setsid -f %>/dev/null 2>&1 & disown")) (abbreviation - (name "@guix") - (position 'anywhere) + (name "zxz") (expansion - (format #f "~a/scm/guix" - code-projects))) - (abbreviation - (name "@radix") - (position 'anywhere) - (expansion - (format #f "~a/scm/radix" - code-projects))) - (abbreviation - (name "@files") - (position 'anywhere) - (expansion - (format #f "~a/scm/radix/files" - code-projects))) - (abbreviation - (name "@modules") - (position 'anywhere) - (expansion - (format #f "~a/scm/radix/modules/radix" - code-projects))) - (abbreviation - (name "@research") - (position 'anywhere) - (expansion "~/areas/research")) - (abbreviation - (name "@bookmarks") - (position 'anywhere) - (expansion "~/resources/bookmarks")) - (abbreviation - (name "@git-root") - (pattern "@git-root") - (position 'anywhere) - (expansion - (fish-function "git-root"))) + "curl -F file=@% https://0x0.st | xsel -b"))))))) - #|Quick edit|# - (abbreviation - (name ":e") - (expansion "$EDITOR")) - (abbreviation - (name ":system") - (expansion - (format #f "~a/scm/radix && $EDITOR buer.scm" - code-projects))) - (abbreviation - (name ":home") - (expansion - (format #f "~a/scm/radix && $EDITOR radio.scm" - code-projects))) - (abbreviation - (name ":todo") - (expansion "~/areas/organization/todo")) - (abbreviation - (name ":bookmark") - (position 'anywhere) - (pattern - (apply format #f ":(~a~@{|~a~})" bookmarks)) - (expansion - (fish-function "bookmarks"))) + (simple-service 'environment-variables-service + home-environment-variables-service-type + `(#|Shells|# + ("HISTFILE" . "$XDG_CACHE_HOME/bash/history") + ("HISTSIZE" . "-1") + ("HISTFILESIZE" . "-1") + ("PATH" . "$HOME/.local/bin:$PATH") + ("ENV" . "$XDG_CONFIG_HOME/dash/init.sh") - #|Media downloading|# - (abbreviation - (name "i") - (expansion "ipfs get %")) - (abbreviation - (name "d") - (expansion "aria -j 10 '%'")) - (abbreviation - (name "m") - (expansion - (format #f "yt-dlp --prefer-free-formats ~ - --extract-audio '%'"))) - (abbreviation - (name "v") - (expansion - "yt-dlp --prefer-free-formats '%'")) + #|Language|# + ("LANG" . "en_US.UTF-8") + ("LANGUAGE" . "en_US.UTF-8") + ("LC_COLLATE" . "C") - #|Command history reuse|# - (abbreviation - (name "!!") - (position 'anywhere) - (expansion - (fish-function "bang-bang"))) - (abbreviation - (name "!!:k") - (position 'anywhere) - (pattern "!!:[0-9]+") - (expansion - (fish-function "bang-bang-k"))) - (abbreviation - (name "!$") - (position 'anywhere) - (expansion - (fish-function "bang-dollar"))) - (abbreviation - (name "!*") - (position 'anywhere) - (expansion - (fish-function "bang-star"))) + #|Default applications|# + ("BROWSER" . "icecat") + ("EDITOR" . "kak") + ("FCEDIT" . "kak") + ("PAGER" . "less") + ("READER" . "zathura") + ("SHELL" . "fish") + ("TERMINAL" . "xst") + ("VISUAL" . "kak") + ("WM" . "awesome") - #|Guix reconfiguration|# - (abbreviation - (name "!dgen") - (position 'anywhere) - (expansion "guix % delete-generations 2w")) - (abbreviation - (name "!repair") - (expansion "doas guix build --repair")) - (abbreviation - (name "!pull") - (position 'anywhere) - (expansion "guix pull")) - (abbreviation - (name "!home") - (expansion - "guix home reconfigure ~/.config/guix/home.scm")) - (abbreviation - (name "!system") - (expansion - "doas guix system reconfigure /etc/config.scm")) + #|Xorg|# + ("XINITRC" . "$XDG_CONFIG_HOME/x11/xinitrc") - #|Utils|# - (abbreviation - (name "zedit") - (expansion "zcat % | $EDITOR")) - (abbreviation - (name "tf") - (position 'anywhere) - (expansion - "setsid -f %>/dev/null 2>&1 & disown")) - (abbreviation - (name "zxz") - (expansion - "curl -F file=@% https://0x0.st | xsel -b"))))))) + #|Readline|# + ("INPUTRC" . "$XDG_CONFIG_HOME/readline/inputrc") - (simple-service 'environment-variables-service - home-environment-variables-service-type - `(#|Shells|# - ("HISTFILE" . "$XDG_CACHE_HOME/bash/history") - ("HISTSIZE" . "-1") - ("HISTFILESIZE" . "-1") - ("PATH" . "$HOME/.local/bin:$PATH") - ("ENV" . "$XDG_CONFIG_HOME/dash/init.sh") + #|GTK|# + ("GTK_RC_FILES" . "$XDG_CONFIG_HOME/gtk-2.0/gtkrc") - #|Language|# - ("LANG" . "en_US.UTF-8") - ("LANGUAGE" . "en_US.UTF-8") - ("LC_COLLATE" . "C") + #|Guile|# + ("GUILE_WARN_DEPRECATED" . "detailed") + ("GUILE_HISTORY" . "$XDG_CACHE_HOME/guile/history") + ("GUILE_LOAD_PATH" + . ,(format #f "~a~@{:~a/share/guile/site/3.0~}" + "$HOME/areas/code/scm/radix/modules" + "$HOME/.guix-home/profile" + "$XDG_CONFIG_HOME/guix/current" + "/run/current-system/profile")) - #|Default applications|# - ("BROWSER" . "icecat") - ("EDITOR" . "kak") - ("FCEDIT" . "kak") - ("PAGER" . "less") - ("READER" . "zathura") - ("SHELL" . "fish") - ("TERMINAL" . "xst") - ("VISUAL" . "kak") - ("WM" . "awesome") + #|Guix|# + ("GUIX_PROFILE" . "$XDG_CONFIG_HOME/guix/current") - #|Xorg|# - ("XINITRC" . "$XDG_CONFIG_HOME/x11/xinitrc") + #|IPFS|# + ("IPFS_PATH" . "$XDG_DATA_HOME/ipfs") - #|Readline|# - ("INPUTRC" . "$XDG_CONFIG_HOME/readline/inputrc") + #|Other program settings|# + ("RUNLEVEL" . "3") + ("TERMINFO" . "$XDG_DATA_HOME/terminfo") + ("GRADLE_USER_HOME" . "$XDG_DATA_HOME/gradle") + ("RUSTUP_HOME" . "$XDG_DATA_HOME/rustup") + ("CARGO_HOME" . "$XDG_DATA_HOME/cargo") + ("DOTREMINDERS" . "$XDG_DATA_HOME/reminders"))) - #|GTK|# - ("GTK_RC_FILES" . "$XDG_CONFIG_HOME/gtk-2.0/gtkrc") + (service home-openssh-service-type + (home-openssh-configuration + (hosts (list (openssh-host + (name "codeberg.org") + (host-name "codeberg.org") + (user "git") + (identity-file "~/.ssh/codeberg")) + (openssh-host + (name "github.com") + (host-name "github.com") + (user "git") + (identity-file "~/.ssh/github")) + (openssh-host + (name "*.onion") + (identity-file "~/.ssh/codeberg") + (proxy + (proxy-command + "nc -x 127.0.0.1:9050 -X5 %h %p"))))) + (authorized-keys #f))) - #|Guile|# - ("GUILE_WARN_DEPRECATED" . "detailed") - ("GUILE_HISTORY" . "$XDG_CACHE_HOME/guile/history") - ("GUILE_LOAD_PATH" - . ,(format #f "~a~@{:~a/share/guile/site/3.0~}" - "$HOME/areas/code/scm/radix/modules" - "$HOME/.guix-home/profile" - "$XDG_CONFIG_HOME/guix/current" - "/run/current-system/profile")) + (service home-gpg-agent-service-type + (home-gpg-agent-configuration + (gnupghome ".local/share/gnupg") + (pinentry-program + (file-append pinentry "/bin/pinentry-curses")))) - #|Guix|# - ("GUIX_PROFILE" . "$XDG_CONFIG_HOME/guix/current") + #|Session services|# + (service home-dbus-service-type) - #|IPFS|# - ("IPFS_PATH" . "$XDG_DATA_HOME/ipfs") + #|Sound services|# + (service home-pipewire-service-type) - #|Other program settings|# - ("RUNLEVEL" . "3") - ("TERMINFO" . "$XDG_DATA_HOME/terminfo") - ("GRADLE_USER_HOME" . "$XDG_DATA_HOME/gradle") - ("RUSTUP_HOME" . "$XDG_DATA_HOME/rustup") - ("CARGO_HOME" . "$XDG_DATA_HOME/cargo") - ("DOTREMINDERS" . "$XDG_DATA_HOME/reminders"))) + #|Desktop application services|# + (service home-zathura-service-type + (home-zathura-configuration + (selection-clipboard 'clipboard) + (pages-per-row 1) + (statusbar-home-tilde? #t) + (recolor (recolor-configuration + (keephue? #t) + (reverse-video? #t))) + (key-maps + (list (key-map + (binding "gk") + (command "goto top")) + (key-map + (binding "gj") + (command "goto bottom")) + (key-map + (binding "d") + (command #f)))) + (index-face + (face (background "#000000") + (foreground "#dddddd"))) + (index-active-face + (face (background "#9688d9") + (foreground "#000000"))) + (completion-face + (face (background "#000000") + (foreground "#dddddd"))) + (completion-highlight-face + (face (background "#000000") + (foreground "#9688d9"))))) - (service home-openssh-service-type - (home-openssh-configuration - (hosts (list (openssh-host - (name "codeberg.org") - (host-name "codeberg.org") - (user "git") - (identity-file "~/.ssh/codeberg")) - (openssh-host - (name "github.com") - (host-name "github.com") - (user "git") - (identity-file "~/.ssh/github")) - (openssh-host - (name "*.onion") - (identity-file "~/.ssh/codeberg") - (proxy - (proxy-command - "nc -x 127.0.0.1:9050 -X5 %h %p"))))) - (authorized-keys #f))) - - (service home-gpg-agent-service-type - (home-gpg-agent-configuration - (gnupghome ".local/share/gnupg") - (pinentry-program - (file-append pinentry "/bin/pinentry-curses")))) - - #|Session services|# - (service home-dbus-service-type) - - #|Sound services|# - (service home-pipewire-service-type) - - #|Desktop application services|# - (service home-zathura-service-type - (home-zathura-configuration - (selection-clipboard 'clipboard) - (pages-per-row 1) - (statusbar-home-tilde? #t) - (recolor (recolor-configuration - (keephue? #t) - (reverse-video? #t))) - (key-maps - (list (key-map - (binding "gk") - (command "goto top")) - (key-map - (binding "gj") - (command "goto bottom")) - (key-map - (binding "d") - (command #f)))) - (index-face - (face (background "#000000") - (foreground "#dddddd"))) - (index-active-face - (face (background "#9688d9") - (foreground "#000000"))) - (completion-face - (face (background "#000000") - (foreground "#dddddd"))) - (completion-highlight-face - (face (background "#000000") - (foreground "#9688d9"))))) - - #|Mcron service|# - (service home-mcron-service-type - (home-mcron-configuration - (jobs (list #~(job "30 5 * * *" - "mpv --shuffle ~/media/music")))))))) + #|Mcron service|# + (service home-mcron-service-type + (home-mcron-configuration + (jobs (list #~(job "30 5 * * *" + "mpv --shuffle ~/media/music"))))))))) +home-environment