commit 7a83abe5a77e945d43a7f31b81299c31fd388a12
parent f485302842a728d790a7248f9f73f80817ece42f
Author: Luke Willis <lukejw@loquat.dev>
Date: Mon, 6 Oct 2025 18:10:46 -0400
Update config on new device
Diffstat:
3 files changed, 81 insertions(+), 58 deletions(-)
diff --git a/orchard/home/lukejw.scm b/orchard/home/lukejw.scm
@@ -5,6 +5,7 @@
#:use-module (gnu home services fontutils)
#:use-module (gnu home services mpv)
#:use-module (gnu home services shells)
+ #:use-module (gnu home services sound)
#:use-module (gnu home services sway)
#:use-module (gnu home services xdg)
#:use-module (gnu packages admin)
@@ -46,22 +47,24 @@
#:use-module (orchard home lukejw sway)
#:export (lukejw-home-environment))
-(define wf-recorder-0.5.0
- (package
- (inherit wf-recorder)
- (name "wf-recorder")
- (version "0.5.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/ammen99/wf-recorder")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0a805kfbgpg7898gbb218n7krbvn9r96xydhibvrphy08wxd1xzg"))))
- (inputs
- (list ffmpeg pulseaudio wayland wayland-protocols mesa))))
+(define wf-recorder-master
+ (let ((commit "f4c7f57b0db3ea390f8c86e5bfb64b8d0d941fcb")
+ (revision "2")) ;Guix package revision
+ (package
+ (inherit wf-recorder)
+ (name "wf-recorder")
+ (version (git-version "0.5.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ammen99/wf-recorder")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1gv6ckfbi7b4xl03hdi7196iv5w41qxr6f8rfgvkdy9xri8j84p0"))))
+ (inputs
+ (list ffmpeg-6 pulseaudio wayland wayland-protocols mesa)))))
;; TODO: Organize
@@ -135,6 +138,28 @@ bright6=3AA99F # cy
bright7=CECDC3 # tx
"))
+;; Files to help theme QT
+
+(define lxqt-config
+ (plain-file "lxqt.conf" "\
+[General]
+icon_theme=Papirus-Dark
+
+[Qt]
+style=kvantum"))
+
+(define kvantum-config
+ (plain-file "kvantum.kvconfig" "\
+[General]
+theme=KvSimplicityDark"))
+
+;; Use cursor them in Sway
+
+(define xresources
+ (plain-file "xresources" "\
+Xcursor.theme: Bibata-Original-Ice
+Xcursor.size: 24"))
+
(define lukejw-home-environment
(home-environment
(packages
@@ -166,7 +191,7 @@ bright7=CECDC3 # tx
zathura-pdf-mupdf
mpv
ffmpeg
- wf-recorder-0.5.0
+ wf-recorder-master
yt-dlp
;; Games
crispy-doom
@@ -187,19 +212,11 @@ bright7=CECDC3 # tx
(home-bash-configuration
(guix-defaults? #f)
(aliases `(("gs" . "git status")
- ("ga" . "git add")
- ("gc" . "git commit")
- ("gl" . "git log")
- ("yta" . "yt-dlp -t aac -o \"~/Audio/%(channel)s/%(upload_date)s - %(title)s.%(ext)s\"")
- ("guix-hr" . ,#~(string-append "guix home reconfigure -L "
- #$(dirname (dirname (dirname (current-filename))))
- " " #$(current-filename)))
+ ("yta" . "yt-dlp -t aac --add-metadata -o \"~/Audio/%(channel)s/%(upload_date)s - %(title)s.%(ext)s\"")
("camera" . "ffplay -fflags nobuffer /dev/video0")
- ("record" . "wf-recorder --audio -c h264_vaapi -d /dev/dri/renderD128")))
- (bash-profile
- (list
- (plain-file "start-sway-on-tty1"
- "if [ \"$(tty)\" = \"/dev/tty1\" ]; then exec sway > ~/sway.log 2>&1; fi")))))
+ ("record" . "wf-recorder --audio -c h264_vaapi -d /dev/dri/renderD128")))))
+ ;; Automatically start pipewire
+ (service home-pipewire-service-type)
;; TODO: Make a home service for using kvantum with lxqt-qtplugin
(simple-service 'qt-environment-variables
home-environment-variables-service-type
@@ -230,7 +247,13 @@ bright7=CECDC3 # tx
home-xdg-configuration-files-service-type
`(("i3blocks/config" ,i3blocks-config)
("tofi/config" ,tofi-config)
- ("foot/foot.ini" ,foot-config)))
+ ("foot/foot.ini" ,foot-config)
+ ("lxqt/lxqt.config" ,lxqt-config)
+ ("Kvantum/kvantum.kvconfig" ,kvantum-config)))
+ (simple-service 'extra-home-files
+ home-files-service-type
+ `((".Xresources" ,xresources)))
+ ;; Setup a sway configuration
(service home-sway-service-type %sway-configuration))
%base-home-services))))
diff --git a/orchard/home/lukejw/sway.scm b/orchard/home/lukejw/sway.scm
@@ -16,27 +16,6 @@
#:use-module (guix packages)
#:export (%sway-configuration))
-(define-public gruvbox-wallpapers
- (package
- (name "gruvbox-wallpapers")
- (version "32817ad")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/AngelJumbo/gruvbox-wallpapers.git")
- (commit "32817ad442c45dbff5b5ff870a07c114a7cb53e7")))
- (sha256 (base32 "1gcyxg5z3259rir0vh4jrn2wbyl4mhx2zqd64w8bnwnwnp3vqg5f"))
- (file-name (git-file-name name version))))
- (build-system copy-build-system)
- (arguments
- (list #:install-plan
- #~'(("wallpapers" "share/backgrounds"))))
- (home-page "https://gruvbox-wallpapers.pages.dev/")
- (synopsis "Gruvbox-themed wallpapers")
- (description #f)
- (license #f)))
-
-
(define-public orthodox-wallpapers
(package
(name "orthodox-wallpapers")
@@ -221,7 +200,7 @@
(define %sway-startup-programs
(list
"foot --server"
- "wlsunset -S 07:00 -s 19:30 -d 1800 -t 1000"
+ "wlsunset -S 07:00 -s 19:30 -d 1800 -t 1000" ;; Todo: make this a service
"lxqt-policykit-agent"))
(define %sway-configuration
@@ -239,6 +218,8 @@
(list
;; This fixes lxqt-policykit being weird
"for_window [title=\"Authentication Required\"] floating enable"
+ ;; Make my camera floating by default
+ "for_window [title=\"/dev/video0\"] floating enable"
;; This removes the title from the foot terminal
"for_window [app_id=\"foot\"] border pixel"
"xwayland enable")
diff --git a/orchard/system/moses.scm b/orchard/system/moses.scm
@@ -4,6 +4,7 @@
#:use-module (guix git)
#:use-module (gnu bootloader)
#:use-module (gnu bootloader grub)
+ #:use-module (gnu packages admin)
#:use-module (gnu packages bash)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages games)
@@ -27,11 +28,18 @@
#:use-module (orchard home lukejw)
#:export (moses-os))
+(define %issue "
+\"Keep thy mind in hell and despair not.\"
+")
+
+
(define moses-os
(operating-system
(host-name "moses")
(timezone "America/New_York")
(locale "en_US.utf8")
+
+ (issue %issue)
(keyboard-layout (keyboard-layout "us"))
@@ -72,20 +80,31 @@
(supplementary-groups '("wheel" "netdev" "audio" "video")))
%base-user-accounts))
- (packages %loquat-base-packages)
+ ;; Add some default compositors to choose from
+ ;; TODO: Provide patched defult configurations, maybe?
+ ;; TODO: Add some simple x11 sessions for running legacy applications
+ (packages
+ (append
+ (list sway
+ labwc)
+ %loquat-base-packages))
(services
(append
- (list ;(service guix-home-service-type
- ; `(("lukejw" ,lukejw-home-environment)))
- (service greetd-service-type
+ (list (service greetd-service-type
(greetd-configuration
- (motd "Hello, world!")
(terminals
(list
+ ;; Setup tuigreet as the login manager in TTY1
(greetd-terminal-configuration
(terminal-vt "1")
- (terminal-switch #t))
+ (terminal-switch #t)
+ (default-session-command
+ (let ((command (file-append tuigreet "/bin/tuigreet")))
+ (program-file
+ "tuigreet-wrapper"
+ #~(execl #$command #$command "-i")))))
+ ;; Use agreety for the other TTYs
(greetd-terminal-configuration (terminal-vt "2"))
(greetd-terminal-configuration (terminal-vt "3")))))))
(modify-services %loquat-clergy-base-services