summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGiacomo Leidi <goodoldpaul@autistici.org>2024-04-07 23:33:39 +0200
committerChristopher Baines <mail@cbaines.net>2024-04-16 22:34:05 +0100
commite5e8b4e52d2402225c89421d12bbaf96e3c5c8fd (patch)
tree6d742b9ffc63914b83d70440b1fabbba7937712b
parent0ffd6d2582b4b0944ae0b26c8686ff2277bd6908 (diff)
gnu: Add brillo.
* gnu/packages/hardware.scm (brillo): New variable. Change-Id: Ic66118b9b792b0bc81bbeffb72236953da0f0772 Signed-off-by: Christopher Baines <mail@cbaines.net>
-rw-r--r--gnu/packages/hardware.scm64
1 files changed, 64 insertions, 0 deletions
diff --git a/gnu/packages/hardware.scm b/gnu/packages/hardware.scm
index 72b6decd81f..42722a79d08 100644
--- a/gnu/packages/hardware.scm
+++ b/gnu/packages/hardware.scm
@@ -17,6 +17,7 @@
17;;; Copyright © 2022 Efraim Flashner <efraim@flashner.co.il> 17;;; Copyright © 2022 Efraim Flashner <efraim@flashner.co.il>
18;;; Copyright © 2023 Spencer Skylar Chan <schan12@umd.edu> 18;;; Copyright © 2023 Spencer Skylar Chan <schan12@umd.edu>
19;;; Copyright © 2023 Foundation Devices, Inc. <hello@foundationdevices.com> 19;;; Copyright © 2023 Foundation Devices, Inc. <hello@foundationdevices.com>
20;;; Copyright © 2024 Giacomo Leidi <goodoldpaul@autistici.org>
20;;; 21;;;
21;;; This file is part of GNU Guix. 22;;; This file is part of GNU Guix.
22;;; 23;;;
@@ -60,6 +61,7 @@
60 #:use-module (gnu packages gl) 61 #:use-module (gnu packages gl)
61 #:use-module (gnu packages glib) 62 #:use-module (gnu packages glib)
62 #:use-module (gnu packages gnome) 63 #:use-module (gnu packages gnome)
64 #:use-module (gnu packages golang)
63 #:use-module (gnu packages gtk) 65 #:use-module (gnu packages gtk)
64 #:use-module (gnu packages guile) 66 #:use-module (gnu packages guile)
65 #:use-module (gnu packages haskell-xyz) 67 #:use-module (gnu packages haskell-xyz)
@@ -141,6 +143,68 @@ drivers, including an assembler and a disassembler for several GPU instruction
141sets, and tools to deal with register databases.") 143sets, and tools to deal with register databases.")
142 (license license:expat)))) 144 (license license:expat))))
143 145
146(define-public brillo
147 (package
148 (name "brillo")
149 (version "1.4.12")
150 (source (origin
151 (method git-fetch)
152 (uri (git-reference
153 (url "https://gitlab.com/cameronnemo/brillo")
154 (commit (string-append "v" version))))
155 (sha256
156 (base32
157 "16n4j45mfhd1zxwbpl8342vyqf8rj3plhcl90xp02m46hn58v8bl"))
158 (file-name (git-file-name name version))))
159 (build-system gnu-build-system)
160 (arguments
161 (list
162 #:make-flags #~(list (string-append "CC="
163 #$(cc-for-target))
164 (string-append "AADIR=" #$output "/etc/apparmor.d")
165 (string-append "PREFIX=" #$output))
166 #:phases
167 #~(modify-phases %standard-phases
168 (add-after 'unpack 'patch-udev-rules
169 (lambda _
170 (substitute* "contrib/udev.in"
171 (("/bin/chgrp")
172 (string-append #$coreutils
173 "/bin/chgrp"))
174 (("/bin/chmod")
175 (string-append #$coreutils
176 "/bin/chmod")))))
177 (delete 'configure)
178 ;; Tests must be run on real hardware.
179 (delete 'check)
180 (add-after 'install 'install-udev-polkit
181 (lambda* (#:key make-flags #:allow-other-keys)
182 (map (lambda (target)
183 (apply invoke "make" target make-flags))
184 '("install.udev" "install.polkit")))))))
185 (native-inputs (list go-github-com-go-md2man))
186 (supported-systems
187 (lset-difference string=? %supported-systems %hurd-systems))
188 (home-page "https://gitlab.com/cameronnemo/brillo")
189 (synopsis "Controls the brightness of backlight and LED devices on Linux")
190 (description
191 "Brillo is a command line tool to control the brightness of backlight and
192LED devices on Linux.
193
194Notable features include:
195
196@itemize
197
198@item Automatic best controller detection
199@item Smooth transitions and natural brightness adjustments
200@item Ability to save and restore brightness across boots
201@item Directly using sysfs to set brightness without relying on X
202@item Unprivileged access with no new setuid binaries
203@item Containment with AppArmor
204
205@end itemize")
206 (license (list license:bsd-0 license:gpl3+))))
207
144(define-public hw-probe 208(define-public hw-probe
145 (package 209 (package
146 (name "hw-probe") 210 (name "hw-probe")