From mboxrd@z Thu Jan 1 00:00:00 1970 From: Danny Milosavljevic Subject: wip-rox.scm : ROX Desktop Date: Tue, 8 Mar 2016 09:04:43 +0100 Message-ID: <20160308090443.515977f2@scratchpost.org> References: <20160307224837.GC10916@protected.rcdrun.com> <871t7lyc9t.fsf@dustycloud.org> <20160308071807.GD16932@protected.rcdrun.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:35951) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1adCdU-0002Uj-0z for guix-devel@gnu.org; Tue, 08 Mar 2016 03:04:57 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1adCdN-0003CT-Gc for guix-devel@gnu.org; Tue, 08 Mar 2016 03:04:55 -0500 Received: from dd1012.kasserver.com ([85.13.128.8]:53992) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1adCdN-0003C8-6a for guix-devel@gnu.org; Tue, 08 Mar 2016 03:04:49 -0500 In-Reply-To: <20160308071807.GD16932@protected.rcdrun.com> 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-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Louis Cc: guix-devel@gnu.org Hello Louis, well, writing the package declaration is easy - if you have the time, it wo= uld be nice. But I understand that you have to get guix working for you first. I have a work-in-progress for the ROX Desktop (the ROX-Filer and ROX-Sessio= n parts work), see below; you can use it as a starting point. ROX Filer has many forks and some of them are very different from what is o= n the main site. I still used the original fork for now.=20 To use it, with your normal user account do: $ git clone git://git.sv.gnu.org/guix.git $ cd guix $ ./bootstrap $ ./configure --localstatedir=3D/var $ # put contents below into gnu/packages/wip-rox.scm $ make $ make check $ ./pre-inst-env guix package -i rox-filer $ # from now on, always use guix via ./pre-inst-env guix Or wait until someone else did it and brought it all the way into an offici= al guix release. ;;; GNU Guix --- Functional package management for GNU ;;; Copyright =C2=A9 2014, 2015 Sou Bunnbu ;;; Copyright =C2=A9 2014, 2015 Mark H Weaver ;;; ;;; 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 rox) #:use-module ((guix licenses) #:hide (freetype)) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system glib-or-gtk) #:use-module (gnu packages) #:use-module (gnu packages pkg-config) #:use-module (gnu packages glib) #:use-module (gnu packages gtk) #:use-module (gnu packages xorg) #:use-module (gnu packages xdisorg) #:use-module (gnu packages web) #:use-module (gnu packages fontutils) #:use-module (gnu packages image) #:use-module (gnu packages gnome) #:use-module (gnu packages xml) #:use-module (gnu packages pdf) #:use-module (gnu packages gettext) #:use-module (gnu packages polkit) #:use-module (gnu packages gstreamer) #:use-module (gnu packages linux) #:use-module (gnu packages photo) #:use-module (gnu packages pcre) #:use-module (gnu packages pulseaudio)) ; FIXME add rox-clib (define-public rox-lib (package (name "rox-lib") (version "2.0.6") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/rox/rox-lib2-" (version-major+minor version) ".tar.bz2")) (sha256 (base32 ; FIXME "07c8r3xwx5is298zk77m3r784gmr5y4mh8bbca5zdjqk5vxdwsw7")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) ("intltool" ,intltool))) ; FIXME (propagated-inputs `(("glib" ,glib))) ; required by *.pc ; FIXME (home-page "http://rox.sourceforge.net/desktop/") (synopsis "Basic utility library for ROX") (description "A general-purpose utility library for ROX") (license lgpl2.0+))) ; FIXME (define-public rox-session (package (name "rox-session") (version "0.40.0") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/rox/rox-session-" version ".tar.gz")) (sha256 (base32 "15jf4nl51mh3pc45r0hlz24rn3hz6c3qqli40w9bm1bd4a00z0cn")))) (build-system gnu-build-system) (arguments '(#:out-of-source? #t #:configure-flags (list (string-append "--with-xsession-prefix=3D" %= output)) #:tests? #f #:phases (alist-cons-before 'configure 'pre-configure (lambda _ (chdir "src")) (alist-replace 'install (lambda* (#:key outputs #:allow-other-keys) ;(zero? (system* "pwd"))) ; FIXME (let* ((out (assoc-ref outputs "out")) (bin (string-append out "/bin"))) (and (zero? (system* "mkdir" out)) (zero? (system* "mkdir" bin)) (zero? (system* "cp" "--" "../src/../ROX-Session" b= in))) ; FIXME )) %standard-phases)))) (native-inputs ; FIXME `(("pkg-config" ,pkg-config) ("intltool" ,intltool))) (inputs ; FIXME check `(;("iceauth" ,iceauth) ;("upower" ,upower) ;("polkit" ,polkit) ;("libsm" ,libsm) ;("libwnck" ,libwnck-1) ("libxtst" ,libxtst) ("libxxf86vm" ,libxxf86vm) ("dbus-glib" ,dbus-glib) ("dbus" ,dbus) ("libxml2" ,libxml2) ; 2.0.0 ("gtk2" ,gtk+-2))) ; 2.12.0 (home-page "http://rox.sourceforge.net/desktop/") (synopsis "ROX session manager") (description "Session manager for ROX. It will restore your session on startup.") (license gpl2+))) ; FIXME ; FIXME (define-public rox-settings (package (name "rox-settings") (version "4.12.0") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/rox/rox-settings-" (version-major+minor version) ".tar.bz2")) (sha256 (base32 "108za1cmjslwzkdl76x9kwxkq8z734kg9nz8rxk057f10pqwxgh4")) )) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) ("intltool" ,intltool))) (inputs ; FIXME `( ("libnotify" ,libnotify) ("libxcursor", libxcursor) ("libxi" ,libxi) ("libxklavier" ,libxklavier) ("libxrandr" ,libxrandr) ("upower" ,upower) ("xf86-input-libinput" ,xf86-input-libinput))) (home-page "http://rox.sourceforge.net/desktop/") (synopsis "ROX settings manager") (description "Settings manager for ROX") (license gpl2+))) ; FIXME ; see also https://mail-index.netbsd.org/pkgsrc-bugs/2016/02/07/msg058783.h= tml ; see also https://github.com/dtomas/rox-filer/commits/master (define-public rox-filer=20 (package (name "rox-filer") (version "2.11") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/rox/rox-filer-" version ".tar.bz2")) (sha256 (base32 "1a0v21y3srmz0ikg62df6hpc94j5axs1b5wbshp7mvqqxqrbsad9")))) (build-system gnu-build-system) (arguments '(#:out-of-source? #t #:configure-flags '("LDFLAGS=3D-ldl -lm") #:tests? #f #:phases (alist-cons-before 'configure 'pre-configure (lambda _ (chdir "ROX-Filer/src")) (alist-replace 'install (lambda* (#:key outputs #:allow-other-keys) ;(zero? (system* "pwd"))) ; FIXME (let* ((out (assoc-ref outputs "out")) (bin (string-append out "/bin"))) (and (zero? (system* "mkdir" out)) (zero? (system* "mkdir" bin)) (zero? (system* "cp" "--" "../src/../ROX-Filer" bin= ))) ; FIXME )) %standard-phases)))) (native-inputs ; FIXME `(("pkg-config" ,pkg-config) ;("coreutils" ,coreutils) ("intltool" ,intltool) ("gettext" ,gnu-gettext))) ; FIXME is gettext implicit? (inputs `(("libsm" ,libsm) ("shared-mime-info" ,shared-mime-info) ; 0.14 ("libxml2" ,libxml2) ; 2.0.0 ("gtk2" ,gtk+-2))) ; 2.12.0 (home-page "http://rox.sourceforge.net/desktop/") (synopsis "ROX file manager") (description "A modern file manager for ROX graphical desktop") (license gpl2+))) (define-public rox (package (name "rox") (version (package-version rox-session)) (source #f) (build-system glib-or-gtk-build-system) (arguments '(#:modules ((guix build gnu-build-system) (guix build glib-or-gtk-build-system) (guix build utils) (srfi srfi-26)) )) (propagated-inputs `(("rox-lib" ,rox-lib) ; TODO remove ("gnome-icon-theme" ,gnome-icon-theme) ; TODO remove ? ("hicolor-icon-theme" ,hicolor-icon-theme) ("shared-mime-info" ,shared-mime-info) ; TODO remove explicit m= ention? ("rox-filer" ,rox-filer) ("rox-session" ,rox-session) ("rox-settings" ,rox-settings) )) (home-page "http://rox.sourceforge.net/desktop/") (synopsis "Desktop environment (meta-package)") (description "ROX is a RISC OS-like desktop environment.") (license gpl2+))) ; FIXME collect more licenses