;; 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 home) (gnu home services desktop) (gnu packages) (gnu services) (gnu packages java) (gnu packages librewolf) (gnu packages guile-xyz) (gnu packages haskell) (gnu packages gimp) (gnu packages ebook) (gnu home services syncthing) (gnu packages tor) (gnu packages package-management) (gnu packages syncthing) (guix gexp) (gnu packages rust-apps) (gnu home services) (gnu home services shells) (gnu home services fontutils) (gnu home services xdg) (gnu packages image) (gnu packages mpd) (gnu packages disk) (gnu packages emacs-xyz) (gnu packages text-editors) (gnu packages xfce) (gnu packages image-viewers) (gnu packages gnupg) (gnu packages freedesktop) (gnu packages fonts) (gnu packages qt) (gnu packages mail) (gnu packages compression) (gnu packages xml) (gnu packages bittorrent) (gnu packages xorg) (gnu packages gstreamer) (gnu packages xdisorg) (gnu packages video) (gnu packages emulators) (gnu packages web-browsers) (gnu packages tmux) (gnu packages terminals) (gnu packages linux) (gnu packages python) (gnu packages cmake) (gnu packages readline) (gnu packages curl) (gnu packages pdf) (gnu packages glib) (gnu packages admin) (gnu packages lisp-xyz) (gnu packages wm) (gnu packages compton) (gnu packages lisp) (gnu packages music) (gnu packages version-control) (gnu packages lxqt) (gnu packages emacs) (srfi srfi-26)) (define fontconfig '(fontconfig (comment " Set subpixel arrangement for all fonts ") (match ((target "font") (edit (@ (name "rgba") (mode "assign")) (const "bgr")) (edit (@ (name "hrgba") (mode "assign")) (const "bgr")) (edit (@ (name "hinting") (mode "assign")) (bool "true"))) (comment " Alias for Migu 1P font ") (alias ((family "sans-serif") (prefer (family "Migu 1P"))))))) (define-syntax-rule (associate-right (association keys) ...) `(,@(map (cut cons <> association) keys) ...)) (home-environment (packages (cons* flameshot ncmpcpp ;; gd-tools wmctrl lf ranger emacs-org-roam guile-ares-rs emacs-arei ;; multimonitor xset librewolf arandr ;; ;; ;; ;; sselp syncthing nano gimp thunar net-tools mcomix pinentry ;; goldendict-ng xdg-utils font-google-material-design-icons gst-plugins-good-qt ;;unrar qtmultimedia sylpheed ;; xpad-module unzip zip emacs-esxml html-xml-utils emacs-rainbow-delimiters aria2 xdg-desktop-portal xdg-desktop-portal-gtk gnupg xprop ;;nicotine+ yt-dlp higan librewolf nyxt sbcl-coleslaw emacs-nyxt tmux alacritty lm-sensors ;; anki ripgrep emacs-olivetti emacs-deadgrep emacs-rg emacs-dumb-jump ;; foliate emacs-slime python xrdb dbus ;; steam ;; make p7zip tor-client cmake ;; emacs-dirvish readline curl librewolf qpdfview xclip emacs-nerd-icons emacs-telega ;; anki flatpak flatpak-xdg-utils ;;---- htop cl-clx openjdk neofetch kitty picom calibre feh xsel rofi sbcl cmus ;; xmonad xmonad ghc xmobar ghc-xmonad-contrib ;;----------------- zstd ;; suckless-dictpopup scrot cl-css git gst-plugins-good gst-plugins-bad gstreamer pavucontrol-qt mpv emacs (specifications->packages (list "steam" "guile" "ueberzug++" "fcitx5-gtk4" "fcitx5-qt" "fcitx5-gtk" "navidrome-bin" "torbrowser" "unrar" "nicotine+" "librewolf" "gimp" "foliate" "tor-client" "make" "element-desktop" "font-apple-color-emoji")))) ;; Below is the list of Home services. To search for available ;; services, run 'guix home search KEYWORD' in a terminal. (services (list (service home-bash-service-type (home-bash-configuration (aliases '(("analyze_video" . "~/.local/bin/analyze_video.sh") ("ct" . "~/.local/bin/compatibility.sh") ("grep" . "grep --color=auto") ("update" . "guix pull && sudo guix system reconfigure .config/guix/config.scm") ("lf" . "~/.local/bin/lf/lfrun") ("ps2" . "nohup flatpak run --filesystem=/mnt/Data net.pcsx2.PCSX2 > /dev/null 2>&1 &") ("ll" . "ls -l") ("ls" . "ls -p --color=auto") ("run_code" . "g++ -o main main.cc -Ofast -std=c++23 -s -flto -march=native -I ~/dev/ajatt/hakurei/include/ && ./main") ("rgf" . "rg --files | rg") ("mpv" . "mpv --audio-pitch-correction=yes --vf=setpts=PTS/1") ("record" . "ffmpeg -f x11grab -r 23 -s 1366x768 -i $DISPLAY -f pulse -i nui_mic_remap -filter_complex '[1:a]volume=2.0[a]' -map 0:v -map '[a]' -c:v libx264 -pix_fmt yuv420p -preset ultrafast -crf 23 -y /tmp/output.mp4") ("isolate" . "guix shell --container --network --preserve='^DISPLAY$' \ --preserve='^XAUTHORITY$' --expose=$XAUTHORITY --expose=/etc/ssl/certs --no-cwd "))) (bashrc (list (local-file "/home/hashirama/src/guix-config/.bashrc" "bashrc"))) (bash-profile (list (local-file "/home/hashirama/src/guix-config/.bash_profile" "bash_profile"))) (environment-variables '( ("GTK_IM_MODULE" . "fcitx") ("QT_IM_MODULE" . "fcitx") ("GUIX_GTK2_IM_MODULE_FILE" . "/run/current-system/profile/lib/gtk-2.0/2.10.0/immodules-gtk2.cache") ("GUIX_GTK3_IM_MODULE_FILE" . "/run/current-system/profile/lib/gtk-3.0/3.0.0/immodules-gtk3.cache") ("XMODIFIERS=@im=" . "fcitx") ("INPUT_METHOD" . "fcitx") ("XIM_PROGRAM" . "fcitx") ("GLFW_IM_MODULE" . "ibus") ("GUILE_LOAD_PATH" . "$HOME/dev/guix_channel/ajatt-tools-guix:$GUILE_LOAD_PATH") ("XMONAD_CONFIG_DIR" . "$HOME/.xmonad") ("GUIX_PROFILE=$HOME/.config/guix/current" . "$GUIX_PROFILE/etc/profile") )) )) (service home-syncthing-service-type (for-home (syncthing-configuration (user "hashirama")))) (service home-xdg-mime-applications-service-type (home-xdg-mime-applications-configuration (default (associate-right ('librewolf.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")) ('emacs.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" "audio/flac" "video/mp4" "application/octet-stream" "video/mp2t" "video/x-matroska" "video/webm")) ('nsxiv.desktop `("image/avif" "image/bmp" "image/jpeg" "image/png" "image/svg+xml" "image/webp")) ('emacs.desktop `("image/vnd.djvu")) ('foliate.desktop `("application/epub+zip")) ('sioyek.desktop `("application/pdf")) )))) (simple-service 'font-antialias home-fontconfig-service-type (list "~/.local/share/fonts" fontconfig)) (simple-service 'bash-fancy-prompt home-bash-service-type (home-bash-extension (environment-variables '(("PS1" . "\\u \\wλ "))))) (simple-service 'environment-variables-service home-environment-variables-service-type `(#|Shells|# ("PATH" . "$HOME/.local/bin:$PATH") ("XINITRC" . "$XDG_CONFIG_HOME/.xinitrc") #|Guile|# ("GUILE_WARN_DEPRECATED" . "detailed") ("GUILE_LOAD_PATH" . "$HOME/dev/guix_channel/ajatt-tools-guix:$GUILE_LOAD_PATH") #|IME|# ("GTK_IM_MODULE" . "fcitx") ("QT_IM_MODULE" . "fcitx") ("XMODIFIERS" . "@im=fctix") #|Dictionary|# ("STARDICT_DATA_DIR" . "/mnt/Data/Japanese_Resources/languages-study(japanesAndRussian)/dicts/stardict/being_used") #|Language|# ("LANG" . "en_US.UTF-8") ("LANGUAGE" . "en_US.UTF-8") ("LC_COLLATE" . "C") #|Default applications|# ("BROWSER" . "nyxt") ("EDITOR" . "emacs") ("FCEDIT" . "emacs") ("PAGER" . "less") ("READER" . "foliate") ("SHELL" . "bash") ("TERMINAL" . "alacritty") ("VISUAL" . "nsxiv") ("WM" . "xmonad"))))) )