aboutsummaryrefslogtreecommitdiffstats
path: root/oni
diff options
context:
space:
mode:
authorGravatar Tom Willemse2022-05-21 11:08:01 -0700
committerGravatar Tom Willemse2022-05-21 11:08:01 -0700
commit683bc98c6f9b3dfcd7c1445360aabcc13eb7ad1e (patch)
tree3262011c0ad5257578267269fff2dabb0a6e6929 /oni
parent8e798ea24f1a08f7d991f114b4e9b2dfa2d0b3d9 (diff)
downloadnew-dotfiles-683bc98c6f9b3dfcd7c1445360aabcc13eb7ad1e.tar.gz
new-dotfiles-683bc98c6f9b3dfcd7c1445360aabcc13eb7ad1e.zip
Add configuration to set a random wallpaper on login
Diffstat (limited to 'oni')
-rw-r--r--oni/home/data/config.scm9
-rw-r--r--oni/packages/pick-random-wallpaper.scm43
2 files changed, 49 insertions, 3 deletions
diff --git a/oni/home/data/config.scm b/oni/home/data/config.scm
index 005edf1..b633791 100644
--- a/oni/home/data/config.scm
+++ b/oni/home/data/config.scm
@@ -21,13 +21,15 @@
#:use-module (oni home services kdeconnect)
#:use-module (oni home services cmst)
#:use-module (oni home services syncthing)
- #:use-module (oni packages hlwm-run-or-raise))
+ #:use-module (oni packages hlwm-run-or-raise)
+ #:use-module (oni packages pick-random-wallpaper))
(home-environment
(packages (list (specification->package+output "glibc-locales")
(specification->package+output "font-fantasque-sans")
(specification->package+output "font-comic-neue")
- hlwm-run-or-raise))
+ hlwm-run-or-raise
+ pick-random-wallpaper))
(services
(list
@@ -358,7 +360,8 @@
"keybind Mod4-apostrophe spawn dunstctl close"
"keybind Mod4-quotedbl spawn dunstctl close-all"
"keybind Mod4-Control-apostrophe spawn dunstctl history-pop"
- "keybind Mod4-Mod1-apostrophe spawn dunstctl context"))))
+ "keybind Mod4-Mod1-apostrophe spawn dunstctl context"
+ "pick-random-wallpaper"))))
(service home-polybar-service-type
(home-polybar-configuration
diff --git a/oni/packages/pick-random-wallpaper.scm b/oni/packages/pick-random-wallpaper.scm
new file mode 100644
index 0000000..80bb372
--- /dev/null
+++ b/oni/packages/pick-random-wallpaper.scm
@@ -0,0 +1,43 @@
+(define-module (oni packages pick-random-wallpaper)
+ #:use-module (guix packages)
+ #:use-module (guix git-download)
+ #:use-module (guix build-system gnu)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (gnu packages base)
+ #:use-module (gnu packages bash)
+ #:use-module (gnu packages wm)
+ #:use-module (gnu packages xorg)
+ #:use-module (gnu packages image-viewers))
+
+(define-public pick-random-wallpaper
+ (let ((commit "abc336dea1187f9d115a062d389c7c5ec730c144")
+ (revision "0"))
+ (package
+ (name "pick-random-wallpaper")
+ (version (git-version "0.0.0" revision commit))
+ (source
+ (origin
+ (uri (git-reference
+ (url "git://ryuslash.org/util/tom/pick-random-wallpaper.git")
+ (commit commit)))
+ (method git-fetch)
+ (sha256
+ (base32 "074iack66w32f54ldinrr8kf6b9pp0dx81qp0sjv6jbvgwp9daax"))
+ (file-name (git-file-name name version))))
+ (propagated-inputs
+ (list findutils bash herbstluftwm xwininfo grep sed coreutils feh))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ; There is no test suite.
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (delete 'build)
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((bin (string-append (assoc-ref outputs "out") "/bin")))
+ (install-file "pick-random-wallpaper" bin)))))))
+ (home-page "https://ryuslash.org/")
+ (synopsis "A simple script that sets a random wallpaper using feh.")
+ (description "Sets a random wallpaper using feh and stores which wallpaper was added in a herbstluftwm attribute.")
+ (license license:gpl3+))))