diff --git a/dotfiles/.config/emacs/config.el b/dotfiles/.config/emacs/config.el index a88990e..f848fd3 100644 --- a/dotfiles/.config/emacs/config.el +++ b/dotfiles/.config/emacs/config.el @@ -5,11 +5,20 @@ (add-hook 'emacs-lisp-mode-hook 'evil-paredit-mode) ;; scheme paredit -(add-hook 'scheme 'enable-paredit-mode) -(add-hook 'scheme 'evil-paredit-mode) +(add-hook 'scheme-mode-hook 'enable-paredit-mode) +(add-hook 'scheme-mode-hook 'evil-paredit-mode) ;; geiser (add-hook 'geiser-mode-hook 'ac-geiser-setup) (add-hook 'geiser-repl-mode-hook 'ac-geiser-setup) (eval-after-load "auto-complete" '(add-to-list 'ac-modes 'geiser-repl-mode)) + +(load-theme 'gruvbox-dark-medium t) + +(menu-bar-mode -1) +(tool-bar-mode -1) +(scroll-bar-mode -1) + +(add-to-list 'default-frame-alist '(alpha-background . 90)) +(set-frame-font "Atkinson Hyperlegible Next 10" nil t) diff --git a/dotfiles/.config/foot/foot.ini b/dotfiles/.config/foot/foot.ini new file mode 100644 index 0000000..03b4cd7 --- /dev/null +++ b/dotfiles/.config/foot/foot.ini @@ -0,0 +1,5 @@ +[main] +font=Atkinson Hyperlegible Next:size=10 + +[colors] +alpha=0.9 diff --git a/dotfiles/.config/i3status-rust/config.toml b/dotfiles/.config/i3status-rust/config.toml new file mode 100644 index 0000000..54caaa0 --- /dev/null +++ b/dotfiles/.config/i3status-rust/config.toml @@ -0,0 +1,46 @@ +icons_format = "{icon}" + +[theme] +theme = "native" + +[icons] +icons = "awesome4" +[icons.overrides] +bat = ["|E|", "|_|", "|=|", "|F|"] +bat_charging = "|^| " + +[[block]] +block = "cpu" +info_cpu = 20 +warning_cpu = 50 +critical_cpu = 90 + +[[block]] +block = "disk_space" +path = "/" +info_type = "available" +alert_unit = "GB" +interval = 20 +warning = 20.0 +alert = 10.0 +format = " $icon root: $available.eng(w:2) " + +[[block]] +block = "memory" +format = " $icon $mem_total_used_percents.eng(w:2) " +format_alt = " $icon_swap $swap_used_percents.eng(w:2) " + +[[block]] +block = "sound" +[[block.click]] +button = "left" +cmd = "pavucontrol" + +[[block]] +block = "time" +interval = 1 +format = " $timestamp.datetime(f:'%F %T %Z') " + +[[block]] +block = "battery" +interval = 30 diff --git a/files/starship.fish b/files/starship.fish new file mode 100644 index 0000000..c179c03 --- /dev/null +++ b/files/starship.fish @@ -0,0 +1 @@ +starship init fish | source diff --git a/home.scm b/home.scm index fde2ab0..7182908 100644 --- a/home.scm +++ b/home.scm @@ -6,7 +6,10 @@ (gnu home services dotfiles) (gnu home services shells) (gnu home services sway) + (gnu home services desktop) + (gnu home services sound) (packages nvim) + (packages fonts) (gnu system keyboard) (gnu services) (gnu system shadow)) @@ -19,7 +22,12 @@ vim ; self-explanatory librewolf ; self-explanatory lua ; fennel + video ; mpv, yt-dlp terminals ; foot + admin ; fastfetch + pulseaudio ; pavucontrol + fonts ; cozette + shellutils ; starship ) (define neovim-packages @@ -31,34 +39,78 @@ vim-guix-vim)) (define emacs-packages - (list emacs + (list emacs-pgtk emacs-paredit emacs-geiser emacs-geiser-guile + emacs-gruvbox-theme emacs-evil emacs-evil-collection emacs-evil-commentary emacs-evil-paredit)) -(define sway-bar-status #~(string-append "while " - #$coreutils "/bin/date" - " +'%Y-%m-%d %X'; do sleep 1; done")) +(define sway-bar-status (file-append i3status-rust "/bin/i3status-rs")) (define sway-config (sway-configuration - (inherit %empty-sway-configuration) + (inherit %empty-sway-configuration) (bar (sway-bar (identifier 'bar0) (position 'top) + (colors (sway-color (background "$dark") + (statusline "$light") + (focused-workspace + (sway-border-color (border "$gray") + (background "$gray") + (text "$light"))) + (active-workspace + (sway-border-color (border "$mid") + (background "$mid") + (text "$light"))) + (inactive-workspace + (sway-border-color (border "$inactive") + (background "$inactive") + (text "$light"))) + (urgent-workspace + (sway-border-color (border "$urgent") + (background "$urgent") + (text "$light"))))) (status-command sway-bar-status))) ;;(startup+reload-programs TODO) - ;;(extra-content TODO) - (variables %sway-default-variables) + (extra-content (list + "client.focused $focused $focused $light $focused $focused" + "client.focused_inactive $inactive $inactive $light $inactive $inactive" + "client.unfocused $unfocused $unfocused $light $unfocused $unfocused" + "client.urgent $urgent $urgent $light $urgent $urgent" + "smart_gaps on" + "gaps inner 0" + "gaps outer -4" + "gaps top -2" + "gaps bottom 0" + "default_border pixel 0" + "default_floating_border pixel 2" + "font pango:Atkinson Hyperlegible Next 10" + )) + (variables (append `((mod . "Mod4") + (light . "#ebdbb2") + (dark . "#3c3836") + (gray . "#928374") + (mid . "#665c54") + (focused . "#3c3836") + (inactive . "#282828") + (unfocused . "#282828") + (urgent . "#b8bb26") + ) %sway-default-variables)) (keybindings %sway-default-keybindings) (gestures %sway-default-gestures) + (outputs + (list (sway-output + (identifier '*) + (background (local-file "files/homu-wallpaper.jpg"))))) (packages (append (list - grimshot - wl-clipboard) %sway-default-packages)) + grimshot + i3status-rust + wl-clipboard) %sway-default-packages)) (modes %sway-default-modes) ;(startup-programs %sway-default-startup-programs) (inputs (list (sway-input (identifier "type:keyboard") @@ -69,6 +121,13 @@ (packages (append neovim-packages emacs-packages (list jujutsu + yt-dlp + mpv + starship + font-awesome + font-atkinson-hyperlegible-next + fastfetch + pavucontrol ripgrep fd sd @@ -83,13 +142,16 @@ home-environment-variables-service-type '(("EDITOR" . "nvim"))) - (service home-fish-service-type) + (service home-fish-service-type (home-fish-configuration (config (list (local-file "files/starship.fish"))))) (service home-sway-service-type sway-config) + (service home-dbus-service-type) + (service home-pipewire-service-type) + (service home-dotfiles-service-type - (home-dotfiles-configuration - (directories '("./dotfiles")))) + (home-dotfiles-configuration + (directories '("./dotfiles")))) (service home-files-service-type `((".guile" ,%default-dotguile) diff --git a/packages/fonts.scm b/packages/fonts.scm new file mode 100644 index 0000000..5091757 --- /dev/null +++ b/packages/fonts.scm @@ -0,0 +1,22 @@ +(define-module (packages fonts) + #:use-module (guix build-system font)) + +(define-public font-atkinson-hyperlegible-next + (package + (name "font-atkinson-hyperlegible-next") + (version "2.001-unstable-2025-02-21") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/googlefonts/atkinson-hyperlegible-next") + (commit "7925f50f649b3813257faf2f4c0b381011f434f1"))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0000000000000000000000000000000000000000000000000000")))) + (build-system font-build-system) + (home-page "https://www.brailleinstitute.org/freefont/") + (synopsis "New (2024) second version of the Atkinson Hyperlegible fonts") + (description + "Read Easier With Our Family of Hyperlegible® Fonts") + (license license:ofl)))