(add-to-load-path (dirname (current-filename))) (use-modules (ice-9 match) (gnu) (gnu home) (gnu home services) (gnu home services dotfiles) (gnu home services shells) (gnu home services sway) (packages nvim) (gnu system keyboard) (gnu services) (gnu system shadow)) (use-package-modules wm ; grimshot xdisorg ; wl-clipboard rust-apps ; jujutsu vim ; self-explanatory librewolf ; self-explanatory lua ; fennel terminals ; foot ) (define neovim-packages (list neovim neovim-nfnl neovim-conjure vim-paredit vim-guix-vim)) (define sway-bar-status #~(string-append "while " #$coreutils "/bin/date" " +'%Y-%m-%d %X'; do sleep 1; done")) (define sway-config (sway-configuration (inherit %empty-sway-configuration) (bar (sway-bar (identifier 'bar0) (position 'top) (status-command sway-bar-status))) ;;(startup+reload-programs TODO) ;;(extra-content TODO) (variables %sway-default-variables) (keybindings %sway-default-keybindings) (gestures %sway-default-gestures) (packages (append (list grimshot wl-clipboard) %sway-default-packages)) (modes %sway-default-modes) ;(startup-programs %sway-default-startup-programs) (inputs (list (sway-input (identifier "type:keyboard") (layout (keyboard-layout "us" #:options '("ctrl:nocaps")))))))) (define home-config (home-environment (packages (append neovim-packages (list jujutsu ripgrep fd sd librewolf fennel fennel-ls foot))) (services (append (list (simple-service 'editor-env-var home-environment-variables-service-type '(("EDITOR" . "nvim"))) (service home-fish-service-type) (service home-sway-service-type sway-config) (service home-dotfiles-service-type (home-dotfiles-configuration (directories '("./dotfiles")))) (service home-files-service-type `((".guile" ,%default-dotguile) (".Xdefaults" ,%default-xdefaults) )) (service home-xdg-configuration-files-service-type `(("gdb/gdbinit" ,%default-gdbinit) ("nano/nanorc" ,%default-nanorc)))) %base-home-services)))) home-config