From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christopher Allan Webber Subject: [PATCH] gnu: Add xscreenserver. Date: Sat, 09 Apr 2016 20:52:12 -0500 Message-ID: <87twjaut6v.fsf@dustycloud.org> References: <877fg8w1rp.fsf@dustycloud.org> <20160408225240.GB13118@jasmine> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:44887) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ap4Xy-00053f-Gu for guix-devel@gnu.org; Sat, 09 Apr 2016 21:52:19 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ap4Xv-0002Jm-8V for guix-devel@gnu.org; Sat, 09 Apr 2016 21:52:18 -0400 Received: from dustycloud.org ([50.116.34.160]:55798) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ap4Xv-0002Iy-3N for guix-devel@gnu.org; Sat, 09 Apr 2016 21:52:15 -0400 In-reply-to: <20160408225240.GB13118@jasmine> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Leo Famulari Cc: Guix-devel --=-=-= Content-Type: text/plain Leo Famulari writes: > Did you try something like this? > > (arguments > `(#:make-flags (string-append "install_prefix= (assoc-ref %outputs "out")))) This didn't fix it, but it die send me along the right path. Working xscreensaver attached! Note, for locking to work on guixsd, you'll need something like this in your guix system configuration: (services (cons* (screen-locker-service xscreensaver) %desktop-services)) Look okay to push? Also, not sure if my approach to the licensing complexity is the best, but it seems to make things a bit easier all considering. --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename=0001-gnu-Add-xscreensaver.patch >From b4d6d0181bea79622a1d9a2e893e340a99667314 Mon Sep 17 00:00:00 2001 From: Christopher Allan Webber Date: Fri, 8 Apr 2016 10:36:05 -0500 Subject: [PATCH] gnu: Add xscreensaver. * gnu/packages/xdisorg.scm (xscreensaver): New variable. --- gnu/packages/xdisorg.scm | 69 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 5a77a6c..1a8305e 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -37,6 +37,7 @@ #:use-module (guix build-system python) #:use-module (gnu packages) #:use-module (gnu packages asciidoc) + #:use-module (gnu packages algebra) #:use-module (gnu packages compression) #:use-module (gnu packages image) #:use-module (gnu packages pkg-config) @@ -47,6 +48,7 @@ #:use-module (gnu packages perl) #:use-module (gnu packages python) #:use-module (gnu packages linux) + #:use-module (gnu packages gl) #:use-module (gnu packages guile) #:use-module (gnu packages xml) #:use-module (gnu packages gtk) @@ -714,6 +716,7 @@ the X.Org X Server version 1.7 and later (X11R7.5 or later).") ("libx11" ,libx11) ("libxcb" ,libxcb) ("libxxf86vm" ,libxxf86vm) + ("libjpeg" ,libjpeg) ("glib" ,glib))) ;for Geoclue2 support (home-page "https://github.com/jonls/redshift") (synopsis "Adjust the color temperature of your screen") @@ -724,3 +727,69 @@ twilight and early morning, the color temperature transitions smoothly from night to daytime temperature to allow your eyes to slowly adapt. At night the color temperature should be set to match the lamps in your room.") (license license:gpl3+))) + +(define-public xscreensaver + (package + (name "xscreensaver") + (version "5.34") + (source + (origin + (method url-fetch) + (uri + (string-append "https://www.jwz.org/xscreensaver/xscreensaver-" + version ".tar.gz")) + (sha256 + (base32 + "09sy5v8bn62hiq4ib3jyvp8lipqcvn3rdsj74q25qgklpv27xzvg")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no check target + #:phases + (modify-phases %standard-phases + (add-before 'configure 'adjust-gtk-resource-paths + (lambda _ + (substitute* '("driver/Makefile.in" "po/Makefile.in.in") + (("@GTK_DATADIR@") "@datadir@") + (("@PO_DATADIR@") "@datadir@"))))) + #:configure-flags '("--with-pam" "--with-proc-interrupts" + "--without-readdisplay") + #:make-flags (list (string-append "AD_DIR=" + (assoc-ref %outputs "out") + "/usr/lib/X11/app-defaults")))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("intltool" ,intltool))) + (inputs + `(("libx11" ,libx11) + ("libxext" ,libxext) + ("libxi" ,libxi) + ("libxt" ,libxt) + ("libxft" ,libxft) + ("libxmu" ,libxmu) + ("libxpm" ,libxpm) + ("libglade" ,libglade) + ("libxml2" ,libxml2) + ("libsm" ,libsm) + ("libjpeg" ,libjpeg) + ("linux-pam" ,linux-pam) + ("pango" ,pango) + ("gtk+" ,gtk+) + ("perl" ,perl) + ("cairo" ,cairo) + ("bc" ,bc) + ("libxrandr" ,libxrandr) + ("glu" ,glu) + ("glib" ,glib))) + (home-page "https://www.jwz.org/xscreensaver/") + (synopsis "Classic screen saver suite supporting screen locking") + (description + "xscreensaver is a popular screen saver collection with many entertaining +demos. It also acts as a nice screen locker.") + ;; xscreensaver doesn't have a single copyright file and instead relies on + ;; source comment headers, though most files have the same lax + ;; permissions. To reduce complexity, we're pointing at Debian's + ;; breakdown of the copyright information. + (license (license:non-copyleft + (string-append + "http://metadata.ftp-master.debian.org/changelogs/" + "/main/x/xscreensaver/xscreensaver_5.34-2_copyright"))))) -- 2.7.3 --=-=-=--