modules/ryan-packages/wm.scm

f4b1d571ae0d6527fd933baadc64e9d67cd56456 · 5.2 KB · 144 lines raw

1 (define-module (ryan-packages wm)
2 #:use-module ((guix licenses) #:prefix license:)
3 #:use-module (guix download)
4 #:use-module (guix packages)
5 #:use-module (guix gexp)
6 #:use-module (gnu packages)
7 #:use-module (guix build-system cmake)
8 #:use-module (guix build-system meson)
9 #:use-module (gnu packages python)
10 #:use-module (gnu packages audio)
11 #:use-module (gnu packages glib)
12 #:use-module (gnu packages freedesktop)
13 #:use-module (gnu packages pkg-config)
14 #:use-module (gnu packages gtk)
15 #:use-module (gnu packages xdisorg)
16 #:use-module (gnu packages xorg)
17 #:use-module (gnu packages linux)
18 #:use-module (gnu packages gl)
19 #:use-module (gnu packages image)
20 #:use-module (gnu packages llvm)
21 #:use-module (gnu packages gcc)
22 #:use-module (gnu packages check)
23 #:use-module (guix git-download)
24 #:use-module (guix utils)
25 #:use-module (rosenthal packages wm)
26 #:use-module (ryan-packages gtk)
27 #:use-module (ryan-packages gl)
28 #:use-module (gnu packages wm))
29
30 (define-public swaylock-effects-new
31 (package
32 (inherit swaylock-effects)
33 (version "1.7.0.0")
34 (source (origin
35 (method git-fetch)
36 (uri (git-reference
37 (url "https://github.com/jirutka/swaylock-effects")
38 (commit (string-append "v" version))))
39 (sha256
40 (base32
41 "0cgpbzdpxj6bbpa8jwql1snghj21mhryyvj6sk46g66lqvwlrqbj"))))
42 (inputs (modify-inputs (package-inputs swaylock-effects) (delete "linux-pam")))))
43
44 (define-public swayidle-new
45 (package
46 (inherit swayidle)
47 (version "1.8.0")
48 (source
49 (origin
50 (method git-fetch)
51 (uri (git-reference
52 (url "https://github.com/swaywm/swayidle")
53 (commit version)))
54 (file-name (git-file-name "swayidle" version))
55 (sha256
56 (base32 "0y0qdqzx90kvk6l80darldvizr7p5g65bnblhxlq5a2rgvs9hkpx"))))))
57
58 (define-public waybar-new
59 (package
60 (inherit waybar)
61 (name "waybar-new")
62 (version "0.10.3")
63 (source
64 (origin
65 (method git-fetch)
66 (uri (git-reference
67 (url "https://github.com/Alexays/Waybar")
68 (commit version)))
69 (file-name (git-file-name name version))
70 (sha256
71 (base32 "04xd61ycn1nisq1s5ch14zkbsjcfcy6n29nkjn68s2ribmws0iid"))))
72 (arguments
73 (list
74 #:configure-flags #~(list "--wrap-mode=nodownload" "-Dexperimental=true")))))
75 ;(inputs (modify-inputs (package-inputs waybar) (delete "gtkmm") (prepend gtkmm-ryan))))) ;(prepend python cava catch2 gtkmm)))))
76 ;(native-inputs (modify-inputs (package-native-inputs waybar) (prepend gcc-13)))))
77
78 (define cairo-hypr ;;; stolen from rosenthal since it is not exported
79 (package
80 (inherit cairo)
81 (name "cairo")
82 (version "1.18.0")
83 (source (origin
84 (method url-fetch)
85 (uri (string-append "https://cairographics.org/releases/cairo-"
86 version ".tar.xz"))
87 (sha256
88 (base32
89 "0r0by563s75xyzz0d0j1nmjqmdrk2x9agk7r57p3v8vqp4v0ffi4"))))
90 (build-system meson-build-system)
91 (arguments
92 (list #:tests? #f
93 #:glib-or-gtk? #t
94 #:configure-flags
95 #~(list "-Dspectre=disabled")))
96 (outputs '("out"))))
97
98 (define-public hyprlock
99 (let ((commit "dba9d8b5175a6f23463035aafc6b0c741f9b73a5")
100 (revision "1"))
101 (package
102 (name "hyprlock")
103 (version (git-version "0.4.1" revision commit))
104 (source
105 (origin
106 (method git-fetch)
107 (uri (git-reference
108 (url "https://github.com/hyprwm/hyprlock")
109 (commit commit)))
110 (file-name (git-file-name name version))
111 (sha256
112 (base32 "1zzv7w7hn8k71w75a9mz548cbl4f8zcsd8i92abgnrx5x9i35q63"))))
113 (build-system cmake-build-system)
114 (arguments
115 (list
116 #:tests? #f
117 #:phases
118 #~(modify-phases %standard-phases
119 (add-after 'install 'wrap-program
120 (lambda* (#:key inputs outputs #:allow-other-keys)
121 (let ((out (assoc-ref outputs "out"))
122 (mesa (assoc-ref inputs "mesa")))
123 (wrap-program (string-append out "/bin/hyprlock")
124 `("__EGL_VENDOR_LIBRARY_DIRS" prefix ,(list (string-append mesa "/share/glvnd/egl_vendor.d"))))))))))
125 (native-inputs
126 (list gcc-13
127 pkg-config
128 mesa-headers
129 wayland))
130 (inputs
131 (list cairo
132 pango
133 libxkbcommon
134 hyprlang
135 mesa-libglvnd
136 libdrm
137 libglvnd
138 wayland-protocols
139 linux-pam))
140 (home-page "https://github.com/hyprwm/hyprlock")
141 (license license:bsd-3)
142 (synopsis "Screen locker for Hyprland")
143 (description "Screen locker for hyprland."))))
144