>From 75c91629aeddacd054c78d8fc769fb17b6bac10a Mon Sep 17 00:00:00 2001
From: Alex Kost
Date: Sun, 22 Mar 2015 16:23:47 +0300
Subject: [PATCH 1/2] gnu: Add LIRC.
* gnu/packages/lirc.scm: New file.
* gnu/packages/patches/lirc-localstatedir.patch: New file.
* gnu-system.am: Add them.
---
gnu-system.am | 2 +
gnu/packages/lirc.scm | 70 +++++++++++++++++++++++++++
gnu/packages/patches/lirc-localstatedir.patch | 13 +++++
3 files changed, 85 insertions(+)
create mode 100644 gnu/packages/lirc.scm
create mode 100644 gnu/packages/patches/lirc-localstatedir.patch
diff --git a/gnu-system.am b/gnu-system.am
index 2175605..5b88199 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -179,6 +179,7 @@ GNU_SYSTEM_MODULES = \
gnu/packages/lightning.scm \
gnu/packages/links.scm \
gnu/packages/linux.scm \
+ gnu/packages/lirc.scm \
gnu/packages/lisp.scm \
gnu/packages/llvm.scm \
gnu/packages/lout.scm \
@@ -446,6 +447,7 @@ dist_patch_DATA = \
gnu/packages/patches/libvpx-fix-armhf-link.patch \
gnu/packages/patches/libvpx-fix-ssse3-quantize.patch \
gnu/packages/patches/libvpx-vp9-out-of-bounds-access.patch \
+ gnu/packages/patches/lirc-localstatedir.patch \
gnu/packages/patches/lm-sensors-hwmon-attrs.patch \
gnu/packages/patches/lua51-liblua-so.patch \
gnu/packages/patches/luajit-no_ldconfig.patch \
diff --git a/gnu/packages/lirc.scm b/gnu/packages/lirc.scm
new file mode 100644
index 0000000..d334b75
--- /dev/null
+++ b/gnu/packages/lirc.scm
@@ -0,0 +1,70 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2015 Alex Kost
+;;;
+;;; 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 .
+
+(define-module (gnu packages lirc)
+ #:use-module (guix packages)
+ #:use-module (guix download)
+ #:use-module (guix build-system gnu)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (gnu packages)
+ #:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages xorg)
+ #:use-module (gnu packages python))
+
+(define-public lirc
+ (package
+ (name "lirc")
+ (version "0.9.2a")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/lirc/lirc-"
+ version ".tar.bz2"))
+ (sha256
+ (base32
+ "011nwpxm5d12rsapljg3pjf9pgb0j8ngmc3zg69q4kv61hkx2zim"))
+ (patches (list (search-patch "lirc-localstatedir.patch")))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:configure-flags '("--localstatedir=/var")))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)))
+ (inputs
+ `(("libx11" ,libx11)
+ ("alsa-lib" ,alsa-lib)
+ ("python" ,python)))
+ (home-page "http://www.lirc.org/")
+ (synopsis "Linux Infrared Remote Control")
+ (description
+ "LIRC allows to send and receive IR signals of many commonly used
+remote controls.
+
+The most important part of LIRC is the 'lircd' daemon that will decode IR
+signals received by the device drivers and provide the information on a
+socket. It will also accept commands for IR signals to be sent if the
+hardware supports this. The second daemon program called 'lircmd' will
+connect to lircd and translate the decoded IR signals to mouse movements.
+You can e.g. configure X to use your remote control as an input device.
+
+The user space applications will allow you to control your computer with
+your remote control. You can send X events to applications, start programs
+and much more on just one button press. The possible applications are
+obvious: Infra-red mouse, remote control for your TV tuner card or CD-ROM,
+shutdown by remote, program your VCR and/or satellite tuner with your
+computer, etc.")
+ (license license:gpl2+)))
diff --git a/gnu/packages/patches/lirc-localstatedir.patch b/gnu/packages/patches/lirc-localstatedir.patch
new file mode 100644
index 0000000..43a41a7
--- /dev/null
+++ b/gnu/packages/patches/lirc-localstatedir.patch
@@ -0,0 +1,13 @@
+Do not try to create $localstatedir as we cannot do this when it is /var.
+
+--- lirc-0.9.2a/daemons/Makefile.in
++++ lirc-0.9.2a/daemons/Makefile.in
+@@ -790,9 +790,6 @@
+ uninstall-local uninstall-sbinPROGRAMS
+
+
+-install-exec-local:
+- test -d $(DESTDIR)$(varrundir)/$(PACKAGE) \
+- || mkdir -p $(DESTDIR)$(varrundir)/$(PACKAGE)
+ uninstall-local:
+ -$(RM) $(DESTDIR)$(varrundir)/$(PACKAGE)/lircd
--
2.3.2