M config.scm => config.scm +12 -3
@@ 15,7 15,7 @@
(gnu packages curl)
(gnu packages bash)
(gnu packages compression))
-(use-service-modules desktop sddm xorg base nix)
+(use-service-modules desktop sddm xorg base nix pm)
(use-package-modules gnome package-management)
(operating-system
@@ 95,7 95,8 @@
(xorg-configuration
(keyboard-layout keyboard-layout)))
(service bluetooth-service-type)
- (service nix-service-type))
+ (service nix-service-type)
+ (service power-profiles-daemon-service-type))
(modify-services
%desktop-services
(pulseaudio-service-type config => (pulseaudio-configuration
@@ 103,7 104,15 @@
(client-conf
(append
(pulseaudio-configuration-client-conf config)
- '((autospawn . no))))))))) ;; todo remove gdm
+ '((autospawn . no))))))
+ (guix-service-type config => (guix-configuration
+ (inherit config)
+ (substitute-urls
+ (append (list "https://substitutes.nonguix.org")
+ %default-substitute-urls))
+ (authorized-keys
+ (append (list (local-file "keys/nonguix-signing-key.pub"))
+ %default-authorized-guix-keys))))))) ;; todo remove gdm
;; Allow resolution of '.local' host names with mDNS.
R home/.bash_profile => home/dotfiles/.bash_profile +0 -0
R home/.bashrc => home/dotfiles/.bashrc +0 -0
A => +1 -0
@@ 0,0 1,1 @@
font=Hack:size=12
\ No newline at end of file
A home/dotfiles/mako => home/dotfiles/mako +20 -0
@@ 0,0 1,20 @@
+background-color=#222223CC
+border-color=#8babf0FF
+border-size=2
+default-timeout=5000
+font=Ubuntu Mono 10
+height=250
+ignore-timeout=1
+layer=overlay
+margin=5
+max-icon-size=16
+padding=24
+text-color=#ccccccFF
+
+[mode=idle]
+border-color=#444444FF
+default-timeout=0
+ignore-timeout=1
+
+[urgency=critical]
+border-color=#c45500FF
R home/waybar-config.jsonc => home/dotfiles/waybar/config.jsonc +0 -0
R home/waybar-style.css => home/dotfiles/waybar/style.css +0 -0
M home/home-configuration.scm => home/home-configuration.scm +20 -16
@@ 15,7 15,7 @@
(gnu home services gnupg)
(gnu home services sound)
(gnu home services)
- (home fonts))
+ (ruther home dwl wm))
(home-environment
;; Below is the list of packages that will show up in your
@@ 23,7 23,7 @@
(packages
(append
(list
- font-ubuntu)
+ dwl-mine)
(specifications->packages
(list
;; HW interactions
@@ 52,16 52,15 @@
;; Passwords
"gnupg" "password-store" "pass-otp"
- ;; For window manager
- "dwl-mine" "waybar-mine"
- "rofi-wayland"
- "brillo"
- "wlr-randr" ;;"dwlmsg"
- ;;"wlopm"
- "grim" "slurp"
+ ;; DBus services
+ "mako"
+
+ ;; My favorite wm
+ ;; "dwl-mine"
- ;; Notebook
+ ;; Notebook stuff
"acpi" "xbacklight"
+ "brillo"
;; Editing
"emacs" "emacs-vterm"
@@ 77,15 76,20 @@
("ip" . "ip -color=auto")
("ll" . "ls -l")
("ls" . "ls -p --color=auto")))
- (bashrc (list (local-file ".bashrc" "bashrc")))
- (bash-profile (list (local-file ".bash_profile"
+ (bashrc (list (local-file "dotfiles/.bashrc" "bashrc")))
+ (bash-profile (list (local-file "dotfiles/.bash_profile"
"bash_profile")))))
(service home-files-service-type
- `((".config/foot/foot.ini" ,(local-file "./foot.ini"))
- (".config/waybar/config.jsonc" ,(local-file "waybar-config.jsonc"))
- (".config/waybar/style.css" ,(local-file "waybar-style.css"))
- (".librewolf/native-messaging-hosts/com.github.browserpass.native.json" ,(file-append (specification->package "browserpass-native") "/lib/browserpass/hosts/firefox/com.github.browserpass.native.json"))))
+ `((".config/foot/foot.ini" ,(local-file "dotfiles/foot.ini"))
+ (".config/waybar/config.jsonc" ,(local-file "dotfiles/waybar/config.jsonc"))
+ (".config/waybar/style.css" ,(local-file "dotfiles/waybar/style.css"))
+ (".config/mako/config" ,(local-file "dotfiles/mako"))
+
+ (".librewolf/native-messaging-hosts/com.github.browserpass.native.json"
+ ,(file-append
+ (specification->package "browserpass-native")
+ "/lib/browserpass/hosts/firefox/com.github.browserpass.native.json"))))
(simple-service 'default-fonts
home-fontconfig-service-type
R home/dwl/config.h => home/modules/ruther/home/dwl/config.h +0 -0
R home/dwl/dwl-ipc-waybar.patch => home/modules/ruther/home/dwl/dwl-ipc-waybar.patch +0 -0
R home/dwl/wm.scm => home/modules/ruther/home/dwl/wm.scm +54 -4
@@ 1,10 1,16 @@
-(define-module (home dwl wm)
+(define-module (ruther home dwl wm)
+ #:use-module (gnu packages)
#:use-module (gnu packages wm)
#:use-module (gnu packages xorg)
+ #:use-module (gnu packages bash)
#:use-module (ruther packages wayland)
+ #:use-module (guix build-system trivial)
+
#:use-module (guix packages)
+ #:use-module (guix profiles)
+ #:use-module (guix build union)
#:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (guix download)
@@ 33,11 39,11 @@
"XLIBS = xcb xcb-icccm")
#$original-flags))))))
-(define-public dwl-mine
+(define-public dwl-mine-unwrapped
(let ((base (make-dwl-xwayland dwl-0.7)))
(package
(inherit base)
- (name "dwl-mine")
+ (name "dwl-mine-unwrapped")
(source
(origin
(method git-fetch)
@@ 53,4 59,48 @@
(lambda _
(copy-file #$(local-file "config.h") "config.h"))))))))))
-;; TODO wrapping with needed deps
+;; Packages I use when in the WM, it's dependent on those.
+(define wm-packages
+ (specifications->manifest
+ '("waybar-mine"
+ "rofi-wayland"
+ "brillo"
+ "wlr-randr"
+ ;; "dwlmsg"
+ ;; "wlopm"
+ "grim"
+ "slurp"
+
+ "emacs-pgtk")))
+
+(define dwl-mine-gexp
+ (with-imported-modules '((guix build utils)
+ (guix build union))
+ #~(begin
+ (use-modules (guix build utils)
+ (guix build union))
+
+ (union-build #$output (list #$dwl-mine-unwrapped)
+ #:create-all-directories? #t)
+
+ (let ((target-file (string-append #$output "/bin/dwl"))
+ (wrapped-file (string-append #$output "/bin/.dwl-real"))
+ (wm-profile #$(profile (content wm-packages))))
+ (rename-file target-file wrapped-file)
+ (call-with-output-file target-file
+ (lambda (port)
+ (format port
+ "#!~a~%~a~%exec -a \"$0\" \"~a\" \"$@\"~%"
+ (string-append #$bash "/bin/bash")
+ (string-append "source " wm-profile "/etc/profile")
+ (canonicalize-path wrapped-file))))
+ (chmod target-file #o755)))))
+
+(define-public dwl-mine
+ (package/inherit dwl-mine-unwrapped
+ (name "dwl-mine")
+ (source #f)
+ (build-system trivial-build-system)
+ (arguments
+ (list
+ #:builder dwl-mine-gexp))))
A home/modules/ruther/home/editors.scm => home/modules/ruther/home/editors.scm +3 -0
@@ 0,0 1,3 @@
+(define-module (ruther home editors)
+ ;; #:use-module ()
+ )
R home/fonts.scm => home/modules/ruther/home/fonts.scm +1 -1
@@ 1,4 1,4 @@
-(define-module (home fonts)
+(define-module (ruther home fonts)
#:use-module (gnu packages compression)
#:use-module (guix packages)
#:use-module (guix build-system copy)
A keys/nonguix-signing-key.pub => keys/nonguix-signing-key.pub +6 -0
@@ 0,0 1,6 @@
+(public-key
+ (ecc
+ (curve Ed25519)
+ (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#)
+ )
+ )