aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/lighting.scm
blob: 18110420de9aee22f280088d349a8515b677e282 (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.

(define-module (gnu packages lighting)
  #:use-module (guix build-system gnu)
  #:use-module (guix download)
  #:use-module ((guix licenses) #:prefix license:)
  #:use-module (guix packages)
  #:use-module (gnu packages)
  #:use-module (gnu packages bison)
  #:use-module (gnu packages check)
  #:use-module (gnu packages compression)
  #:use-module (gnu packages gnunet)
  #:use-module (gnu packages flex)
  #:use-module (gnu packages libftdi)
  #:use-module (gnu packages libusb)
  #:use-module (gnu packages linux)
  #:use-module (gnu packages pkg-config)
  #:use-module (gnu packages protobuf))

(define-public ola
  (package
    (name "ola")
    (version "0.10.7")
    (source (origin
              (method url-fetch)
              (uri (string-append
                    "https://github.com/OpenLightingProject/ola/releases/download/"
                    version "/ola-" version ".tar.gz"))
              (patches (search-patches "ola-readdir-r.patch"))
              (sha256
               (base32
                "181imc9qkjm2m1iwrb5ixsckx893nc6qwjfzacsjlqp0jlnj8rca"))))
    (build-system gnu-build-system)
    (native-inputs
     `(("bison" ,bison)
       ("cppunit" ,cppunit)
       ("flex" ,flex)
       ("pkg-config" ,pkg-config)))
    (inputs
     `(("libftdi" ,libftdi)
       ("libmicrohttpd" ,libmicrohttpd)
       ("libusb" ,libusb)
       ("libuuid" ,util-linux "lib")
       ("zlib" ,zlib)))
    (propagated-inputs
     ;; Ola 0.10.5 only supports protobuf 2.x, and building it with 3.x breaks.
     ;; XXX Remove protobuf-2 when it is no longer needed.
     `(("protobuf" ,protobuf-2))) ;; for pkg-config --libs libola
    (arguments
     `(;; G++ >= 4.8 macro expansion tracking requires lots of memory, causing
       ;; build to fail on low memory systems.  We disable that with the
       ;; following configure flags.
       #:configure-flags (list "CXXFLAGS=-ftrack-macro-expansion=0")))
    (synopsis "Framework for controlling entertainment lighting equipment")
    (description "The Open Lighting Architecture is a framework for lighting
control information.  It supports a range of protocols and over a dozen USB
devices.  It can run as a standalone service, which is useful for converting
signals between protocols, or alternatively using the OLA API, it can be used
as the backend for lighting control software.  OLA runs on many different
platforms including ARM, which makes it a perfect fit for low cost Ethernet to
DMX gateways.")
    (home-page "https://www.openlighting.org/ola")
    (license license:lgpl2.1+)))
d> 2023-04-07services: desktop: Remove 'xfce-desktop-service' procedure....* gnu/services/desktop.scm (xfce-desktop-service): Remove procedure. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal 2023-04-07services: desktop: Remove 'mate-desktop-service' procedure....* gnu/services/desktop.scm (mate-desktop-service): Remove procedure. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal 2023-04-07services: desktop: Remove 'gnome-desktop-service' procedure....* gnu/services/desktop.scm (gnome-desktop-service): Remove procedure. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal 2023-03-21services: Add x11-socket-directory-service-type....The x11-socket-directory-service misuses activation-service-type to create directories. This kind of usage is incorrect since activation-service-type does not depend on file-systems, hence incompatible with user defined /tmp mount. This commit turns x11-socket-directory-service into a shepherd one-shot service by defining a new x11-socket-directory-service-type. * gnu/services/desktop.scm (x11-socket-directory-service-type): New variable. (x11-socket-directory-service): Deprecate procedure. (desktop-services-for-system): Use new service-type. * gnu/tests/lightdm.scm: Ditto. Reviewed-by: Josselin Poiret <dev@jpoiret.xyz> Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Bruno Victal 2023-03-10services: xorg: Deprecate 'screen-locker-service' procedure....* doc/guix.texi (X Window): Replace 'screen-locker-service' with 'screen-locker-service-type'. Document <screen-locker-configuration>. * gnu/services/desktop.scm (desktop-services-for-system): Use screen-locker-service-type. * gnu/services/xorg.scm: Export accessors for <screen-locker-configuration>. (<screen-locker>): Rename to ... (<screen-locker-configuration>): ... this. (<screen-locker-configuration>)[empty?]: Rename to ... (<screen-locker-configuration>)[allow-empty-password?]: ... this. (screen-locker-pam-services): Update record name. (screen-locker-setuid-programs): Update accessor name. (screen-locker-service): Deprecate procedure. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal 2023-02-26services: desktop: Set default value for geoclue-service-type....This follows up on commit ae0975332c60818793c6c63a3646c982d686bf49?. * gnu/services/desktop.scm (geoclue-service-type): Set default-value. Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr> Bruno Victal 2023-03-03services: dbus: Deprecate 'dbus-service' procedure....* doc/guix.texi (Desktop Services): Replace with 'dbus-root-service-type'. Document dbus-configuration. * gnu/services/dbus.scm (dbus-service): Define with 'define-deprecated'. * gnu/services/desktop.scm (desktop-services-for-system): Replace with dbus-root-service-type. * gnu/system/install.scm (%installation-services): Ditto. * gnu/tests/base.scm (%avahi-os): Ditto. * gnu/tests/docker.scm (%docker-os): Ditto. * gnu/tests/lightdm.scm (minimal-desktop-services): Ditto. * gnu/tests/virtualization.scm (%libvirt-os): Ditto. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal 2023-03-03services: desktop: Deprecate 'bluetooth-service' procedure....* doc/guix.texi (Desktop Services): Remove mention of 'bluetooth-service'. * gnu/services/desktop.scm (bluetooth-service): Deprecate procedure. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal 2023-03-03services: desktop: Deprecate 'geoclue-service' procedure....* doc/guix.texi (Desktop Services): Replace 'geoclue-service' with 'geoclue-service-type'. * gnu/services/desktop.scm (<geoclue-configuration>): Set default values based on the values from the now deprecated geoclue-service procedure. (geoclue-service): Deprecate procedure. (desktop-services-for-system): Use geoclue-service-type. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal 2023-03-03services: desktop: Deprecate 'udisks-service' procedure....* doc/guix.texi (Desktop Services): Replace 'udisks-service' with 'udisks-service-type'. Document <udisks-configuration>. * gnu/packages/kde-multimedia.scm (k3b)[description]: Replace 'udisks-service' with 'udisks-service-type'. * gnu/services/desktop.scm (udisks-service-type): Set default value. (udisks-service): Deprecate procedure. (desktop-services-for-system): Use udisks-service-type. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal 2023-03-03services: desktop: Deprecate 'accountsservice-service' procedure....* doc/guix.texi (Desktop Services): Replace 'accountsservice-service' with 'accountsservice-service-type'. * gnu/services/desktop.scm (accountsservice-service): Deprecate procedure. (desktop-services-for-system): Use accountsservice-service-type. * gnu/tests/lightdm.scm (minimal-desktop-services): Ditto. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal 2023-03-03services: elogind-configuration: Do not ignore 'handle-hibernate-key' by defa......* gnu/services/desktop.scm (<elogind-configuration>)[handle-hibernate-key]: Set default value to 'hibernate. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal 2023-03-03services: desktop: Deprecate 'elogind-service' procedure....* doc/guix.texi (Desktop Services): Replace 'elogind-service' with 'elogind-service-type'. * gnu/services/desktop.scm (elogind-service): Deprecate procedure. (desktop-services-for-system): Use elogind-service-type. * gnu/tests/lightdm.scm (minimal-desktop-services): Ditto. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal 2023-02-28gnu: sugar-desktop-configuration: Allow specification of activities....* gnu/services/desktop.scm (<sugar-desktop-configuration>): Add new fields for activities and gobject-introspection. (sugar-gobject-introspection, sugar-activities): New procedures. (sugar-desktop-service-type): Install packages for activities and gobject-introspection alongside the sugar package. * doc/guix.texi (Desktop Services): Document changes. Ricardo Wurmus 2023-02-28services: Add sugar-desktop-service-type....* gnu/services/desktop.scm (sugar-desktop-service-type): New variable. (sugar-polkit-settings, sugar-desktop-configuration, make-sugar-desktop-configuration, sugar-desktop-configuration?, sugar-package): New procedures. (<sugar-desktop-configuration>): New record. * doc/guix.texi (Desktop Services): Document it. Ricardo Wurmus 2023-02-25services: gnome-desktop-service-type: Extend setuid-program-service-type....* gnu/services/desktop.scm (gnome-setuid-programs): New variable. (gnome-desktop-service-type): Extend setuid-program-service-type with it. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Maxim Cournoyer 2023-02-25services: desktop: Extract a new gnome-package procedure....* gnu/services/desktop.scm (<gnome-desktop-configuration>): Rename gnome package accessor to gnome-desktop-configuration-gnome, to avoid name conflict. (gnome-packages): Change first argument from a config object to a the gnome package used. Rename second argument from package to name. Extract core logic into... (gnome-package): ... this. (gnome-udev-rules, gnome-polkit-settings): Adjust accordingly. (gnome-desktop-service-type): Likewise. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Maxim Cournoyer 2023-02-25services: gnome-polkit-settings: Add spice-gtk....* gnu/services/desktop.scm (gnome-polkit-settings): Add spice-gtk to the GNOME packages providing polkit rules. (package-direct-input-selector): Allow passing a list corresponding to the dependency tree, so that non-propagated transitive inputs can be specified. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Maxim Cournoyer 2022-12-30services: enlightenment: Load ddcutil udev rules....* gnu/services/desktop.scm (enlightenment-desktop-service-type): Extend the enlightenment-desktop-service-type with the udev rules from the ddcutil input in the udev-service-type. Efraim Flashner 2022-12-26gnu: services: Fix bluetooth-service docstring....* gnu/services/desktop.scm (bluetooth-service): Sync docstring with info, remove mention to group not really needed to access D-Bus service. * doc/guix.texi (Desktop Services): Also remove mention to group here. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Ivan Vilata i Balaguer