205 lines
11 KiB
Scheme
205 lines
11 KiB
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.
|
|
|
|
(use-modules (gnu home)
|
|
(gnu packages)
|
|
(gnu packages gnupg)
|
|
(gnu packages virtualization)
|
|
(gnu services)
|
|
(guix packages)
|
|
(guix gexp)
|
|
(gnu home services shells)
|
|
(gnu home services desktop)
|
|
(gnu home services gnupg)
|
|
(gnu home services syncthing)
|
|
(gnu home services)
|
|
(freya certs)
|
|
(sakura home services pipewire)
|
|
(sakura packages gnome-xyz)
|
|
(sakura packages sound)
|
|
(sakura packages vim))
|
|
|
|
|
|
(home-environment
|
|
;; Below is the list of packages that will show up in your
|
|
;; Home profile, unser ~/.guix-home/profile.
|
|
|
|
(packages (append (specifications->packages (list ; sway
|
|
"swayfx"
|
|
"swaybg"
|
|
"swayidle"
|
|
"swaylock-effects"
|
|
|
|
; hyprland
|
|
"hyprland"
|
|
"hyprlock"
|
|
"hyprpaper"
|
|
"hypridle"
|
|
"hyprland-plugins"
|
|
"hyprland-contrib"
|
|
"hyprland-plugin-hy3"
|
|
|
|
; xdg
|
|
"xdg-desktop-portal-wlr"
|
|
"xdg-desktop-portal-gtk"
|
|
"xdg-desktop-portal-hyprland"
|
|
|
|
; desktop programs
|
|
"gnome-keyring"
|
|
"gimp"
|
|
"ungoogled-chromium"
|
|
"steam"
|
|
"nautilus"
|
|
"cage"
|
|
"libnotify"
|
|
"waybar"
|
|
"network-manager-applet"
|
|
"wl-clip-persist"
|
|
"easyeffects"
|
|
"gamescope"
|
|
"overskride"
|
|
|
|
; gtk
|
|
"wxwidgets"
|
|
"lavanda-gtk-theme"
|
|
"mint-themes"
|
|
|
|
;qt
|
|
"qtbase"
|
|
"qtwayland"
|
|
|
|
; terminal
|
|
"kitty"
|
|
"neovim"
|
|
|
|
; desktop integration
|
|
"i3-autotiling"
|
|
"wofi"
|
|
"nm-tray"
|
|
"mako"
|
|
"grim"
|
|
"slurp"
|
|
"gtk+:bin"
|
|
|
|
; devtools
|
|
"qrencode"
|
|
"sassc"
|
|
"binutils"
|
|
"make"
|
|
"nasm"
|
|
"node"
|
|
"pkg-config"
|
|
"python-pynvim"
|
|
"git"
|
|
"openssl"
|
|
"openjdk"
|
|
"perl-image-exiftool"
|
|
"imagemagick"
|
|
|
|
; langs
|
|
"gcc-toolchain"
|
|
"clang-toolchain"
|
|
"rust"
|
|
"python"
|
|
|
|
; social
|
|
"gajim"
|
|
"gajim-omemo"
|
|
"gajim-openpgp"
|
|
"element-desktop"
|
|
"weechat"
|
|
|
|
; multimedia
|
|
"libreoffice"
|
|
"pavucontrol"
|
|
"mpv"
|
|
"imv"
|
|
"zathura"
|
|
"zathura-pdf-mupdf"
|
|
|
|
; shell
|
|
"zsh-syntax-highlighting"
|
|
"zsh-autosuggestions"
|
|
"tree-sitter-cli"
|
|
"neofetch"
|
|
"pfetch"
|
|
"fd"
|
|
"yt-dlp"
|
|
"pinentry"
|
|
|
|
; utilities
|
|
"qbittorrent"
|
|
"syncthing"
|
|
"wine64"
|
|
"winetricks"))
|
|
|
|
; add ca certs and ambiguous packages
|
|
(list freya-ca-certs
|
|
orchis-theme-2024
|
|
blueman-sakura)))
|
|
|
|
;; Below is the list of Home services. To search for available
|
|
;; services, run 'guix home search KEYWORD' in a terminal.
|
|
(services
|
|
(list (service home-zsh-service-type
|
|
(home-zsh-configuration
|
|
(zshrc (list (local-file "config/zsh/zshrc")))
|
|
(zprofile (list (local-file "config/zsh/zprofile")))))
|
|
|
|
(service home-xdg-configuration-files-service-type
|
|
`(("nvim" ,(local-file "config/nvim" #:recursive? #t))
|
|
("sway" ,(local-file "config/sway" #:recursive? #t))
|
|
("swaylock" ,(local-file "config/swaylock" #:recursive? #t))
|
|
("waybar" ,(local-file "config/waybar" #:recursive? #t))
|
|
("alacritty" ,(local-file "config/alacritty" #:recursive? #t))
|
|
("kitty" ,(local-file "config/kitty" #:recursive? #t))
|
|
("ranger" ,(local-file "config/ranger" #:recursive? #t))
|
|
("mako" ,(local-file "config/mako" #:recursive? #t))
|
|
("gtk-3.0" ,(local-file "config/gtk/gtk-3.0" #:recursive? #t))
|
|
("gtk-4.0" ,(local-file "config/gtk/gtk-4.0" #:recursive? #t))
|
|
("Trolltech.conf" ,(local-file "config/gtk/Trolltech.conf"))
|
|
("wofi" ,(local-file "config/wofi" #:recursive? #t))
|
|
("hypr" ,(local-file "config/hypr" #:recursive? #t))
|
|
("desktop-common" ,(local-file "config/desktop-common" #:recursive? #t))
|
|
("mimeapps.list" ,(local-file "config/xdg/mimeapps.list" #:recursive? #t))
|
|
("user-dirs.dirs" ,(local-file "config/xdg/user-dirs.dirs" #:recursive? #t))
|
|
("xdg-desktop-portal/portals.conf" ,(local-file "config/xdg/portals.conf"))
|
|
("starship.toml" ,(local-file "config/starship/starship.toml" #:recursive? #t))
|
|
("home-manager" ,(local-file "nix" #:recursive? #t))
|
|
("nix/nix.conf" ,(local-file "nix/nix.conf"))
|
|
))
|
|
|
|
(service home-files-service-type
|
|
`((".local/share/nvim/site/autoload/plug.vim" ,(file-append vim-plug "/share/vim/plug.vim"))
|
|
(".ssh/config" ,(local-file "config/ssh/config"))
|
|
(".gtkrc-2.0" ,(local-file "config/gtk/gtk-2.0/settings"))
|
|
(".local/share/fonts" ,(local-file "local/fonts" #:recursive? #t))
|
|
(".local/share/applications" ,(local-file "local/applications" #:recursive? #t))
|
|
(".local/share/icons" ,(local-file "local/icons" #:recursive? #t))
|
|
(".local/share/dbus-1/services" ,(local-file "local/dbus/services" #:recursive? #t))
|
|
(".mozilla/certificates" ,(local-file "../certs" #:recursive? #t))
|
|
(".nix-channels" ,(local-file "nix/nix-channels"))
|
|
(".gitconfig" ,(local-file "config/git/gitconfig"))))
|
|
|
|
(service home-syncthing-service-type
|
|
(syncthing-configuration
|
|
(user (getenv "USER"))
|
|
(group (getenv "USER"))
|
|
(home (string-append (getenv "HOME") "/sync"))
|
|
(home-service? #t)))
|
|
|
|
(service home-gpg-agent-service-type
|
|
(home-gpg-agent-configuration
|
|
(pinentry-program
|
|
(file-append pinentry "/bin/pinentry"))
|
|
(ssh-support? #t)))
|
|
|
|
(service home-pipewire-service-type
|
|
(home-pipewire-configuration
|
|
(pipewire pipewire-sakura)
|
|
(wireplumber wireplumber-sakura)))
|
|
(service home-dbus-service-type)
|
|
)))
|