From 1d07e9316a84a47da54469d63b1825368c0db720 Mon Sep 17 00:00:00 2001 From: John Darrington <jmd@gnu.org> Date: Tue, 4 Feb 2014 16:12:39 +0100 Subject: gnu: inkscape: New module MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/inkscape.scm, gnu/packages/patches/inkscape-stray-comma.patch: New files. * gnu-system.am (GNU_SYSTEM_MODULES): Add inkscape.scm. (dist_patch_DATA): Add inkscape-stray-comma.patch. Signed-off-by: Ludovic Courtès <ludo@gnu.org> --- gnu/packages/patches/inkscape-stray-comma.patch | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 gnu/packages/patches/inkscape-stray-comma.patch (limited to 'gnu/packages/patches') diff --git a/gnu/packages/patches/inkscape-stray-comma.patch b/gnu/packages/patches/inkscape-stray-comma.patch new file mode 100644 index 0000000000..0b000d9e30 --- /dev/null +++ b/gnu/packages/patches/inkscape-stray-comma.patch @@ -0,0 +1,13 @@ +This is verbatim from Upstream: http://bazaar.launchpad.net/~inkscape.dev/inkscape/RELEASE_0_48_BRANCH/diff/9943 +--- a/src/widgets/desktop-widget.h 2011-06-06 06:43:00 +0000 ++++ b/src/widgets/desktop-widget.h 2013-01-05 14:34:09 +0000 +@@ -239,7 +239,7 @@ + private: + GtkWidget *tool_toolbox; + GtkWidget *aux_toolbox; +- GtkWidget *commands_toolbox,; ++ GtkWidget *commands_toolbox; + GtkWidget *snap_toolbox; + + static void init(SPDesktopWidget *widget); + -- cgit v1.2.3 From 16686a902276c827455d78860dd62aaa68922cd2 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès <ludo@gnu.org> Date: Wed, 5 Feb 2014 22:18:14 +0100 Subject: gnu: slim: Upgrade to 1.3.6; allow the choice of a config file at run time. * gnu/packages/slim.scm (slim): Upgrade to 1.3.6. Add patches. Comment out systemd-related stuff from CMakeLists.txt. Add "-DBUILD_SHARED_LIBS=OFF" and "-DCMAKE_SKIP_BUILD_RPATH=ON" to #:configure-flags. Adjust 'home-page' field. * gnu/packages/patches/slim-config.patch, gnu/packages/patches/slim-session.patch: New files. * gnu-system.am (dist_patch_DATA): Add them. --- gnu-system.am | 2 ++ gnu/packages/patches/slim-config.patch | 27 +++++++++++++++++++++++++++ gnu/packages/patches/slim-session.patch | 17 +++++++++++++++++ gnu/packages/slim.scm | 31 ++++++++++++++++++++++++------- 4 files changed, 70 insertions(+), 7 deletions(-) create mode 100644 gnu/packages/patches/slim-config.patch create mode 100644 gnu/packages/patches/slim-session.patch (limited to 'gnu/packages/patches') diff --git a/gnu-system.am b/gnu-system.am index 66c9ab39cd..2e248c7df7 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -296,6 +296,8 @@ dist_patch_DATA = \ gnu/packages/patches/readline-link-ncurses.patch \ gnu/packages/patches/ripperx-libm.patch \ gnu/packages/patches/scheme48-tests.patch \ + gnu/packages/patches/slim-session.patch \ + gnu/packages/patches/slim-config.patch \ gnu/packages/patches/tcsh-fix-autotest.patch \ gnu/packages/patches/teckit-cstdio.patch \ gnu/packages/patches/valgrind-glibc.patch \ diff --git a/gnu/packages/patches/slim-config.patch b/gnu/packages/patches/slim-config.patch new file mode 100644 index 0000000000..5e6135d75c --- /dev/null +++ b/gnu/packages/patches/slim-config.patch @@ -0,0 +1,27 @@ +Allow the configuration file and theme directory to be specified at run time. +Patch by Eelco Dolstra, from Nixpkgs. + +--- slim-1.3.6/app.cpp 2013-10-02 00:38:05.000000000 +0200 ++++ slim-1.3.6/app.cpp 2013-10-15 11:02:55.629263422 +0200 +@@ -200,7 +200,9 @@ + + /* Read configuration and theme */ + cfg = new Cfg; +- cfg->readConf(CFGFILE); ++ char *cfgfile = getenv("SLIM_CFGFILE"); ++ if (!cfgfile) cfgfile = CFGFILE; ++ cfg->readConf(cfgfile); + string themebase = ""; + string themefile = ""; + string themedir = ""; +@@ -208,7 +210,9 @@ + if (testing) { + themeName = testtheme; + } else { +- themebase = string(THEMESDIR) + "/"; ++ char *themesdir = getenv("SLIM_THEMESDIR"); ++ if (!themesdir) themesdir = THEMESDIR; ++ themebase = string(themesdir) + "/"; + themeName = cfg->getOption("current_theme"); + string::size_type pos; + if ((pos = themeName.find(",")) != string::npos) { diff --git a/gnu/packages/patches/slim-session.patch b/gnu/packages/patches/slim-session.patch new file mode 100644 index 0000000000..b85d3f7dd0 --- /dev/null +++ b/gnu/packages/patches/slim-session.patch @@ -0,0 +1,17 @@ +Exit after the user's session has finished. This works around slim's broken +PAM session handling (see +http://developer.berlios.de/bugs/?func=detailbug&bug_id=19102&group_id=2663). + +Patch by Eelco Dolstra, from Nixpkgs. + +--- slim-1.3.6/app.cpp 2013-10-15 11:02:55.629263422 +0200 ++++ slim-1.3.6/app.cpp 2013-10-15 13:00:10.141210784 +0200 +@@ -816,7 +822,7 @@ + StopServer(); + RemoveLock(); + while (waitpid(-1, NULL, WNOHANG) > 0); /* Collects all dead childrens */ +- Run(); ++ exit(OK_EXIT); + } + + void App::KillAllClients(Bool top) { diff --git a/gnu/packages/slim.scm b/gnu/packages/slim.scm index fd2c73c772..1a1feadede 100644 --- a/gnu/packages/slim.scm +++ b/gnu/packages/slim.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Guy Grant <gzg@riseup.net> +;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -23,6 +24,7 @@ (define-module (gnu packages slim) #:use-module (guix download) #:use-module (guix build-system cmake) #:use-module (guix packages) + #:use-module (gnu packages) #:use-module (gnu packages gl) #:use-module (gnu packages xorg) #:use-module (gnu packages libpng) @@ -34,13 +36,17 @@ (define-module (gnu packages slim) (define-public slim (package (name "slim") - (version "1.3.3") + (version "1.3.6") (source (origin (method url-fetch) - (uri (string-append "mirror://sourceforge/project/slim.berlios/slim-" + ;; Used to be available from + ;; mirror://sourceforge/project/slim.berlios/. + (uri (string-append "http://download.berlios.de/slim/slim-" version ".tar.gz")) (sha256 - (base32 "1fdvipj3658s8dm78djmfr8xhg6l8rr7kc4qcb34bjrnkkclhln1")))) + (base32 "1pqhk22jb4aja4hkrm7rjgbgzjyh7i4zswdgf5nw862l2znzxpi1")) + (patches (map search-patch + (list "slim-config.patch" "slim-session.patch"))))) (build-system cmake-build-system) (inputs `(("linux-pam" ,linux-pam) ("libpng" ,libpng) @@ -62,12 +68,23 @@ (define-public slim (lambda _ (substitute* "CMakeLists.txt" (("/etc") - (string-append - (assoc-ref %outputs "out") "/etc")))) + (string-append (assoc-ref %outputs "out") "/etc")) + (("install.*systemd.*") + ;; The build system's logic here is: if "Linux", then + ;; "systemd". Strip that. + ""))) %standard-phases) - #:configure-flags '("-DUSE_PAM=yes" "-DUSE_CONSOLEKIT=no") + #:configure-flags '("-DUSE_PAM=yes" "-DUSE_CONSOLEKIT=no" + + ;; Don't build libslim.so, because then the build + ;; system is unable to set the right RUNPATH on the + ;; 'slim' binary. + "-DBUILD_SHARED_LIBS=OFF" + + ;; Leave a valid RUNPATH upon install. + "-DCMAKE_SKIP_BUILD_RPATH=ON") #:tests? #f)) - (home-page "http://www.slim.berlios.de/") + (home-page "http://slim.berlios.de/") (synopsis "Desktop-independent graphcal login manager for X11") (description "SLiM is a Desktop-independent graphical login manager for X11, derived -- cgit v1.2.3 From b93afd5b53714cb896e2abdea1e0b405550fb67b Mon Sep 17 00:00:00 2001 From: Ludovic Courtès <ludo@gnu.org> Date: Thu, 6 Feb 2014 22:09:52 +0100 Subject: gnu: gdb: Upgrade to 7.7. * gnu/packages/gdb.scm (gdb): Upgrade to 7.7. Remove 'gdb-loongson-madd-fix.patch', no longer needed. * gnu/packages/patches/gdb-loongson-madd-fix.patch: Remove. * gnu-system.am (dist_patch_DATA): Adjust accordingly. --- gnu-system.am | 1 - gnu/packages/gdb.scm | 7 ++-- gnu/packages/patches/gdb-loongson-madd-fix.patch | 44 ------------------------ 3 files changed, 3 insertions(+), 49 deletions(-) delete mode 100644 gnu/packages/patches/gdb-loongson-madd-fix.patch (limited to 'gnu/packages/patches') diff --git a/gnu-system.am b/gnu-system.am index 2e248c7df7..eb1e0d06dc 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -250,7 +250,6 @@ dist_patch_DATA = \ gnu/packages/patches/gawk-shell.patch \ gnu/packages/patches/gcc-cross-environment-variables.patch \ gnu/packages/patches/gd-mips64-deplibs-fix.patch \ - gnu/packages/patches/gdb-loongson-madd-fix.patch \ gnu/packages/patches/glib-tests-desktop.patch \ gnu/packages/patches/glib-tests-homedir.patch \ gnu/packages/patches/glib-tests-newnet.patch \ diff --git a/gnu/packages/gdb.scm b/gnu/packages/gdb.scm index 5a863e54aa..7a780d8ea2 100644 --- a/gnu/packages/gdb.scm +++ b/gnu/packages/gdb.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -33,15 +33,14 @@ (define-module (gnu packages gdb) (define-public gdb (package (name "gdb") - (version "7.6.2") + (version "7.7") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/gdb/gdb-" version ".tar.bz2")) (sha256 (base32 - "1s6hjqmq7xz10hqx45dgrpfh5mla578shn3zxgnrsv66w4n0wsig")) - (patches (list (search-patch "gdb-loongson-madd-fix.patch"))))) + "08vcb97j1b7vxwq6088wb6s3g3bm8iwikd922y0xsgbbxv3d2104")))) (build-system gnu-build-system) (arguments '(#:phases (alist-cons-after diff --git a/gnu/packages/patches/gdb-loongson-madd-fix.patch b/gnu/packages/patches/gdb-loongson-madd-fix.patch deleted file mode 100644 index 0d50dd2dd4..0000000000 --- a/gnu/packages/patches/gdb-loongson-madd-fix.patch +++ /dev/null @@ -1,44 +0,0 @@ -Fix the Loongson 2F specific fused multiply-add instructions on paired singles to -use the encoding recognized by the processor, as opposed to the mistaken english -Loongson 2F documentation. - -Patch by Mark H Weaver <mhw@netris.org>. - ---- gdb/opcodes/mips-opc.c.orig 2013-02-09 05:24:18.000000000 -0500 -+++ gdb/opcodes/mips-opc.c 2013-10-27 23:35:20.191997541 -0400 -@@ -956,7 +956,7 @@ - {"madd.s", "D,S,T", 0x4600001c, 0xffe0003f, RD_S|RD_T|WR_D|FP_S, 0, EE }, - {"madd.ps", "D,R,S,T", 0x4c000026, 0xfc00003f, RD_R|RD_S|RD_T|WR_D|FP_D, 0, I5_33 }, - {"madd.ps", "D,S,T", 0x45600018, 0xffe0003f, RD_S|RD_T|WR_D|FP_D, 0, IL2E }, --{"madd.ps", "D,S,T", 0x71600018, 0xffe0003f, RD_S|RD_T|WR_D|FP_D, 0, IL2F }, -+{"madd.ps", "D,S,T", 0x72c00018, 0xffe0003f, RD_S|RD_T|WR_D|FP_D, 0, IL2F }, - {"madd", "s,t", 0x0000001c, 0xfc00ffff, RD_s|RD_t|WR_HILO, 0, L1 }, - {"madd", "s,t", 0x70000000, 0xfc00ffff, RD_s|RD_t|MOD_HILO, 0, I32|N55 }, - {"madd", "s,t", 0x70000000, 0xfc00ffff, RD_s|RD_t|WR_HILO|IS_M, 0, G1 }, -@@ -1084,7 +1084,7 @@ - {"msub.s", "D,S,T", 0x4600001d, 0xffe0003f, RD_S|RD_T|WR_D|FP_S, 0, EE }, - {"msub.ps", "D,R,S,T", 0x4c00002e, 0xfc00003f, RD_R|RD_S|RD_T|WR_D|FP_D, 0, I5_33 }, - {"msub.ps", "D,S,T", 0x45600019, 0xffe0003f, RD_S|RD_T|WR_D|FP_D, 0, IL2E }, --{"msub.ps", "D,S,T", 0x71600019, 0xffe0003f, RD_S|RD_T|WR_D|FP_D, 0, IL2F }, -+{"msub.ps", "D,S,T", 0x72c00019, 0xffe0003f, RD_S|RD_T|WR_D|FP_D, 0, IL2F }, - {"msub", "s,t", 0x0000001e, 0xfc00ffff, RD_s|RD_t|WR_HILO, 0, L1 }, - {"msub", "s,t", 0x70000004, 0xfc00ffff, RD_s|RD_t|MOD_HILO, 0, I32|N55 }, - {"msub", "7,s,t", 0x70000004, 0xfc00e7ff, MOD_a|RD_s|RD_t, 0, D32 }, -@@ -1218,7 +1218,7 @@ - {"nmadd.s", "D,S,T", 0x7200001a, 0xffe0003f, RD_S|RD_T|WR_D|FP_S, 0, IL2F }, - {"nmadd.ps","D,R,S,T", 0x4c000036, 0xfc00003f, RD_R|RD_S|RD_T|WR_D|FP_D, 0, I5_33 }, - {"nmadd.ps", "D,S,T", 0x4560001a, 0xffe0003f, RD_S|RD_T|WR_D|FP_D, 0, IL2E }, --{"nmadd.ps", "D,S,T", 0x7160001a, 0xffe0003f, RD_S|RD_T|WR_D|FP_D, 0, IL2F }, -+{"nmadd.ps", "D,S,T", 0x72c0001a, 0xffe0003f, RD_S|RD_T|WR_D|FP_D, 0, IL2F }, - {"nmsub.d", "D,R,S,T", 0x4c000039, 0xfc00003f, RD_R|RD_S|RD_T|WR_D|FP_D, 0, I4_33 }, - {"nmsub.d", "D,S,T", 0x4620001b, 0xffe0003f, RD_S|RD_T|WR_D|FP_D, 0, IL2E }, - {"nmsub.d", "D,S,T", 0x7220001b, 0xffe0003f, RD_S|RD_T|WR_D|FP_D, 0, IL2F }, -@@ -1227,7 +1227,7 @@ - {"nmsub.s", "D,S,T", 0x7200001b, 0xffe0003f, RD_S|RD_T|WR_D|FP_S, 0, IL2F }, - {"nmsub.ps","D,R,S,T", 0x4c00003e, 0xfc00003f, RD_R|RD_S|RD_T|WR_D|FP_D, 0, I5_33 }, - {"nmsub.ps", "D,S,T", 0x4560001b, 0xffe0003f, RD_S|RD_T|WR_D|FP_D, 0, IL2E }, --{"nmsub.ps", "D,S,T", 0x7160001b, 0xffe0003f, RD_S|RD_T|WR_D|FP_D, 0, IL2F }, -+{"nmsub.ps", "D,S,T", 0x72c0001b, 0xffe0003f, RD_S|RD_T|WR_D|FP_D, 0, IL2F }, - /* nop is at the start of the table. */ - {"nor", "d,v,t", 0x00000027, 0xfc0007ff, WR_d|RD_s|RD_t, 0, I1 }, - {"nor", "t,r,I", 0, (int) M_NOR_I, INSN_MACRO, 0, I1 }, -- cgit v1.2.3 From f9ec07a9859c5b305105ab38bff3f3db0dcb842d Mon Sep 17 00:00:00 2001 From: Ludovic Courtès <ludo@gnu.org> Date: Sun, 9 Feb 2014 23:20:42 +0100 Subject: gnu: slim: Work around flaky synchronization with the X server. * gnu/packages/patches/slim-sigusr1.patch: New file. * gnu/packages/slim.scm (slim): Use it. * gnu-system.am (dist_patch_DATA): Add it. --- gnu-system.am | 1 + gnu/packages/patches/slim-sigusr1.patch | 33 +++++++++++++++++++++++++++++++++ gnu/packages/slim.scm | 3 ++- 3 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/slim-sigusr1.patch (limited to 'gnu/packages/patches') diff --git a/gnu-system.am b/gnu-system.am index cc34dbc7b3..a98ef250d0 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -299,6 +299,7 @@ dist_patch_DATA = \ gnu/packages/patches/scheme48-tests.patch \ gnu/packages/patches/slim-session.patch \ gnu/packages/patches/slim-config.patch \ + gnu/packages/patches/slim-sigusr1.patch \ gnu/packages/patches/tcsh-fix-autotest.patch \ gnu/packages/patches/teckit-cstdio.patch \ gnu/packages/patches/valgrind-glibc.patch \ diff --git a/gnu/packages/patches/slim-sigusr1.patch b/gnu/packages/patches/slim-sigusr1.patch new file mode 100644 index 0000000000..344b02933e --- /dev/null +++ b/gnu/packages/patches/slim-sigusr1.patch @@ -0,0 +1,33 @@ +This patch fixes SLiM so it really waits for the X server to be ready +before attempting to connect to it. Indeed, the X server notices that +its parent process has a handler for SIGUSR1, and consequently sends it +SIGUSR1 when it's ready to accept connections. + +The problem was that SLiM doesn't pay attention to SIGUSR1. So in practice, +if X starts slowly, then SLiM gets ECONNREFUSED a couple of time on +/tmp/.X11-unix/X0, then goes on trying to connect to localhost:6000, +where nobody answers; eventually, it times out and tries again on +/tmp/.X11-unix/X0, and finally it shows up on the screen. + +Patch by L. Courtès. + +--- slim-1.3.6/app.cpp 2014-02-05 15:27:20.000000000 +0100 ++++ slim-1.3.6/app.cpp 2014-02-09 22:42:04.000000000 +0100 +@@ -119,7 +119,9 @@ void CatchSignal(int sig) { + exit(ERR_EXIT); + } + ++static volatile int got_sigusr1 = 0; + void User1Signal(int sig) { ++ got_sigusr1 = 1; + signal(sig, User1Signal); + } + +@@ -884,6 +886,7 @@ int App::WaitForServer() { + int ncycles = 120; + int cycles; + ++ while (!got_sigusr1); + for(cycles = 0; cycles < ncycles; cycles++) { + if((Dpy = XOpenDisplay(DisplayName))) { + XSetIOErrorHandler(xioerror); diff --git a/gnu/packages/slim.scm b/gnu/packages/slim.scm index 1a1feadede..f25b070f3c 100644 --- a/gnu/packages/slim.scm +++ b/gnu/packages/slim.scm @@ -46,7 +46,8 @@ (define-public slim (sha256 (base32 "1pqhk22jb4aja4hkrm7rjgbgzjyh7i4zswdgf5nw862l2znzxpi1")) (patches (map search-patch - (list "slim-config.patch" "slim-session.patch"))))) + (list "slim-config.patch" "slim-session.patch" + "slim-sigusr1.patch"))))) (build-system cmake-build-system) (inputs `(("linux-pam" ,linux-pam) ("libpng" ,libpng) -- cgit v1.2.3 From 266b39fc26fff62e63c63f7f6bc8c92dfbc3f91a Mon Sep 17 00:00:00 2001 From: Sree Harsha Totakura <sreeharsha@totakura.in> Date: Fri, 31 Jan 2014 00:33:36 +0100 Subject: gnu: Add GNUnet. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnunet/packages/gnunet.scm (gnunet): New variable. * gnu/package/patches/gnunet-fix-scheduler.patch: New file. * gnu/package/patches/gnunet-fix-tests.patch: New file. * gnu-system.am (dist_patch_DATA): Add the above two patch files. Co-authored-by: Andreas Enge <andreas@enge.fr> Signed-off-by: Ludovic Courtès <ludo@gnu.org> --- gnu-system.am | 2 + gnu/packages/gnunet.scm | 69 +++++++++++++++++++++++++ gnu/packages/patches/gnunet-fix-scheduler.patch | 13 +++++ gnu/packages/patches/gnunet-fix-tests.patch | 46 +++++++++++++++++ 4 files changed, 130 insertions(+) create mode 100644 gnu/packages/patches/gnunet-fix-scheduler.patch create mode 100644 gnu/packages/patches/gnunet-fix-tests.patch (limited to 'gnu/packages/patches') diff --git a/gnu-system.am b/gnu-system.am index a98ef250d0..3e9108cd87 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -259,6 +259,8 @@ dist_patch_DATA = \ gnu/packages/patches/glibc-bootstrap-system.patch \ gnu/packages/patches/glibc-ldd-x86_64.patch \ gnu/packages/patches/glibc-make-4.0.patch \ + gnu/packages/patches/gnunet-fix-scheduler.patch \ + gnu/packages/patches/gnunet-fix-tests.patch \ gnu/packages/patches/gobject-introspection-cc.patch \ gnu/packages/patches/grub-gets-undeclared.patch \ gnu/packages/patches/gstreamer-0.10-bison3.patch \ diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index 6af9063f19..2bbe72ffe1 100644 --- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -17,6 +17,7 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu packages gnunet) + #:use-module (gnu packages) #:use-module (gnu packages autotools) #:use-module (gnu packages compression) #:use-module (gnu packages curl) @@ -30,10 +31,14 @@ (define-module (gnu packages gnunet) #:use-module (gnu packages libidn) #:use-module (gnu packages libjpeg) #:use-module (gnu packages libtiff) + #:use-module (gnu packages libunistring) + #:use-module (gnu packages maths) #:use-module (gnu packages openssl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages perl) + #:use-module (gnu packages pulseaudio) #:use-module (gnu packages python) + #:use-module (gnu packages sqlite) #:use-module (gnu packages video) #:use-module (gnu packages xiph) #:use-module ((guix licenses) @@ -184,3 +189,67 @@ (define-public gnurl (license (license:bsd-style "file://COPYING" "See COPYING in the distribution.")) (home-page "https://gnunet.org/gnurl"))) + +(define-public gnunet + (package + (name "gnunet") + (version "0.10.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://gnu/gnunet/gnunet-" version + ".tar.gz")) + (sha256 (base32 + "0zqpc47kywhjrpphl0palz849khv00ra2gjrfkysp6p0gfsbvd0i")) + (patches + (list + ;; Patch to fix serious bug in scheduler; upstream commit: #31747 + (search-patch "gnunet-fix-scheduler.patch") + ;; Patch to fix bugs in testcases: + ;; * Disable peerinfo-tool tests as they depend on reverse DNS lookups + ;; * Allow revocation testcase to run on loopback; upstream: #32130 + ;; * Skip GNS testcases requiring DNS lookups; upstream: #32118 + (search-patch "gnunet-fix-tests.patch"))) + (patch-flags '("-p0")))) + (build-system gnu-build-system) + (inputs + `(("gnutls" ,gnutls) + ("glpk" ,glpk) + ("libextractor" ,libextractor) + ("libgcrypt" ,libgcrypt) + ("gnurl" ,gnurl) + ("libidn" ,libidn) + ("openssl" ,openssl) + ("opus" ,opus) + ("libtool" ,libtool) + ("libunistring" ,libunistring) + ("pulseaudio", pulseaudio) + ("sqlite" ,sqlite) + ("zlib" ,zlib))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("python" ,python-2))) + (arguments + '(#:phases + ;; swap check and install phases and set paths to installed binaries + (alist-cons-before + 'check 'set-path-for-check + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (setenv "GNUNET_PREFIX" out) + (setenv "PATH" (string-append (getenv "PATH") ":" out "/bin")))) + (alist-cons-after + 'install 'check + (assoc-ref %standard-phases 'check) + (alist-delete + 'check + %standard-phases))))) + (synopsis "Anonymous peer-to-peer file-sharing framework") + (description + "GNUnet is a framework for secure, peer-to-peer networking. It works in a +decentralized manner and does not rely on any notion of trusted services. One +service implemented on it is censorship-resistant file-sharing. Communication +is encrypted and anonymity is provided by making messages originating from a +peer indistinguishable from those that the peer is routing.") + (license license:gpl3+) + (home-page "https://gnunet.org/"))) diff --git a/gnu/packages/patches/gnunet-fix-scheduler.patch b/gnu/packages/patches/gnunet-fix-scheduler.patch new file mode 100644 index 0000000000..1e0aef2a1a --- /dev/null +++ b/gnu/packages/patches/gnunet-fix-scheduler.patch @@ -0,0 +1,13 @@ +Index: src/util/scheduler.c +=================================================================== +--- src/util/scheduler.c (revision 31745) ++++ src/util/scheduler.c (working copy) +@@ -1599,7 +1599,7 @@ + int real_fd; + + GNUNET_DISK_internal_file_handle_ (fd, &real_fd, sizeof (int)); +- GNUNET_assert (real_fd > 0); ++ GNUNET_assert (real_fd >= 0); + return add_without_sets ( + delay, priority, + on_read ? real_fd : -1, diff --git a/gnu/packages/patches/gnunet-fix-tests.patch b/gnu/packages/patches/gnunet-fix-tests.patch new file mode 100644 index 0000000000..1957b17119 --- /dev/null +++ b/gnu/packages/patches/gnunet-fix-tests.patch @@ -0,0 +1,46 @@ +diff -ru a/src/peerinfo-tool/Makefile.in b/src/peerinfo-tool/Makefile.in +--- src/peerinfo-tool/Makefile.in 2013-12-24 13:55:04.000000000 +0100 ++++ src/peerinfo-tool/Makefile.in 2014-01-30 13:07:52.275965484 +0100 +@@ -335,9 +335,6 @@ + $(top_builddir)/src/statistics/libgnunetstatistics.la \ + $(top_builddir)/src/util/libgnunetutil.la + +-@HAVE_PYTHON_TRUE@check_SCRIPTS = \ +-@HAVE_PYTHON_TRUE@ test_gnunet_peerinfo.py +- + @ENABLE_TEST_RUN_TRUE@TESTS = $(check_SCRIPTS) + do_subst = $(SED) -e 's,[@]PYTHON[@],$(PYTHON),g' + EXTRA_DIST = \ +diff -ru a/src/revocation/test_revocation.conf b/src/revocation/test_revocation.conf +--- src/revocation/test_revocation.conf 2013-12-21 18:57:06.000000000 +0100 ++++ src/revocation/test_revocation.conf 2014-01-30 15:00:02.841340556 +0100 +@@ -20,6 +20,9 @@ + [transport-udp] + BROADCAST = NO + ++[nat] ++RETURN_LOCAL_ADDRESSES = YES ++ + [peerinfo] + USE_INCLUDED_HELLOS = NO + +Index: src/gns/test_gns_cname_lookup.sh +=================================================================== +--- src/gns/test_gns_cname_lookup.sh (revision 32117) ++++ src/gns/test_gns_cname_lookup.sh (revision 32118) +@@ -13,6 +13,15 @@ + exit 77 + fi + ++# permissive DNS resolver we will use for the test ++DNS_RESOLVER="8.8.8.8" ++if ! nslookup gnunet.org $DNS_RESOLVER &> /dev/null ++then ++ echo "Cannot reach DNS, skipping test" ++ exit 77 ++fi ++ ++ + rm -rf /tmp/test-gnunet-gns-peer-1/ + + TEST_DOMAIN_PLUS="www.gnu" -- cgit v1.2.3 From b6b29c7737147bf683eb61bdbc93ad712a228ca7 Mon Sep 17 00:00:00 2001 From: Sree Harsha Totakura <sreeharsha@totakura.in> Date: Tue, 11 Feb 2014 19:17:33 +0100 Subject: gnu: curl, gnurl: Fix failing testcase 172. * gnu/packages/patches/curl-fix-test172.patch: New file. * gnu-system.am (dist_patch_DATA): Add the patch file. * gnu/packages/gnunet.scm (gnurl): Apply the patch file. * gnu/packages/curl.scm (curl): Apply the patch file. Signed-off-by: Andreas Enge <andreas@enge.fr> --- gnu-system.am | 1 + gnu/packages/curl.scm | 7 ++++++- gnu/packages/gnunet.scm | 5 ++++- gnu/packages/patches/curl-fix-test172.patch | 12 ++++++++++++ 4 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/curl-fix-test172.patch (limited to 'gnu/packages/patches') diff --git a/gnu-system.am b/gnu-system.am index 3e9108cd87..8229cf0cdd 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -242,6 +242,7 @@ dist_patch_DATA = \ gnu/packages/patches/cdparanoia-fpic.patch \ gnu/packages/patches/cmake-fix-tests.patch \ gnu/packages/patches/cpio-gets-undeclared.patch \ + gnu/packages/patches/curl-fix-test172.patch \ gnu/packages/patches/dbus-localstatedir.patch \ gnu/packages/patches/diffutils-gets-undeclared.patch \ gnu/packages/patches/dmd-getpw.patch \ diff --git a/gnu/packages/curl.scm b/gnu/packages/curl.scm index 7072ed3878..a9bfa76aa0 100644 --- a/gnu/packages/curl.scm +++ b/gnu/packages/curl.scm @@ -22,6 +22,7 @@ (define-module (gnu packages curl) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu) + #:use-module (gnu packages) #:use-module (gnu packages compression) #:use-module (gnu packages gnutls) #:use-module (gnu packages groff) @@ -42,7 +43,11 @@ (define-public curl version ".tar.lzma")) (sha256 (base32 - "13bhfs41yf60ys2hrikqxjwfzaj0gm91kqzsgc5fr4grzmpm38nx")))) + "13bhfs41yf60ys2hrikqxjwfzaj0gm91kqzsgc5fr4grzmpm38nx")) + (patches + ;; This patch fixes testcase 172 which uses a hardcoded cookie + ;; expiration value which is expired as of Feb 1, 2014. + (list (search-patch "curl-fix-test172.patch"))))) (build-system gnu-build-system) (inputs `(("gnutls" ,gnutls) ("gss" ,gss) diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index 1529f96283..f3448a7e63 100644 --- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -144,7 +144,10 @@ (define-public gnurl version ".tar.bz2")) (sha256 (base32 - "0kpi9wx9lg938b982smjg54acdwswdshs2bzf10sj5r6zmb05ygp")))) + "0kpi9wx9lg938b982smjg54acdwswdshs2bzf10sj5r6zmb05ygp")) + ;; This patch fixes testcase 172 which uses a hardcoded cookie + ;; expiration value which is expired as of Feb 1, 2014. + (patches (list (search-patch "curl-fix-test172.patch"))))) (build-system gnu-build-system) (inputs `(("gnutls" ,gnutls) ("libidn" ,libidn) diff --git a/gnu/packages/patches/curl-fix-test172.patch b/gnu/packages/patches/curl-fix-test172.patch new file mode 100644 index 0000000000..cc2c2705e7 --- /dev/null +++ b/gnu/packages/patches/curl-fix-test172.patch @@ -0,0 +1,12 @@ +diff --git a/tests/data/test172 b/tests/data/test172 +index b3efae9..3d53418 100644 +--- a/tests/data/test172 ++++ b/tests/data/test172 +@@ -36,7 +36,7 @@ http://%HOSTIP:%HTTPPORT/we/want/172 -b log/jar172.txt -b "tool=curl; name=fool" + + .%HOSTIP TRUE /silly/ FALSE 0 ismatch this + .%HOSTIP TRUE / FALSE 0 partmatch present +-%HOSTIP FALSE /we/want/ FALSE 1391252187 nodomain value ++%HOSTIP FALSE /we/want/ FALSE 2139150993 nodomain value + </file> + </client> -- cgit v1.2.3 From 7af52bd58c834f46e54f27592b6193604f7119fb Mon Sep 17 00:00:00 2001 From: Sree Harsha Totakura <sreeharsha@totakura.in> Date: Wed, 12 Feb 2014 16:15:32 +0100 Subject: gnu: gnunet: Fix failing testcases. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/gnunet.scm (gnurl): Add pkg-config. * gnu/packages/patches/gnunet-fix-tests.patch: Append fix for integration testcases. Signed-off-by: Ludovic Courtès <ludo@gnu.org> --- gnu/packages/gnunet.scm | 8 +++++--- gnu/packages/patches/gnunet-fix-tests.patch | 12 ++++++++++++ 2 files changed, 17 insertions(+), 3 deletions(-) (limited to 'gnu/packages/patches') diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index f3448a7e63..960a5d725c 100644 --- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -153,8 +153,9 @@ (define-public gnurl ("libidn" ,libidn) ("zlib" ,zlib))) (native-inputs - `(("perl" ,perl) - ("groff" ,groff) + `(("groff" ,groff) + ("perl" ,perl) + ("pkg-config" ,pkg-config) ("python" ,python-2))) (arguments `(#:configure-flags '("--enable-ipv6" "--with-gnutls" "--without-libssh2" @@ -211,7 +212,8 @@ (define-public gnunet (search-patch "gnunet-fix-scheduler.patch") ;; Patch to fix bugs in testcases: ;; * Disable peerinfo-tool tests as they depend on reverse DNS lookups - ;; * Allow revocation testcase to run on loopback; upstream: #32130 + ;; * Allow revocation and integration-tests testcases to run on + ;; loopback; upstream: #32130, #32326 ;; * Skip GNS testcases requiring DNS lookups; upstream: #32118 (search-patch "gnunet-fix-tests.patch"))) (patch-flags '("-p0")))) diff --git a/gnu/packages/patches/gnunet-fix-tests.patch b/gnu/packages/patches/gnunet-fix-tests.patch index 1957b17119..4276db5a7c 100644 --- a/gnu/packages/patches/gnunet-fix-tests.patch +++ b/gnu/packages/patches/gnunet-fix-tests.patch @@ -44,3 +44,15 @@ Index: src/gns/test_gns_cname_lookup.sh rm -rf /tmp/test-gnunet-gns-peer-1/ TEST_DOMAIN_PLUS="www.gnu" +Index: src/integration-tests/confs/test_defaults.conf +=================================================================== +--- src/integration-tests/confs/test_defaults.conf (revision 32320) ++++ src/integration-tests/confs/test_defaults.conf (working copy) +@@ -17,6 +17,7 @@ + EXTERNAL_ADDRESS = 127.0.0.1 + INTERNAL_ADDRESS = 127.0.0.1 + BINDTO = 127.0.0.1 ++RETURN_LOCAL_ADDRESSES = YES + + [hostlist] + SERVERS = -- cgit v1.2.3 From 445c5abad8032f000387f36cc0533556289e5175 Mon Sep 17 00:00:00 2001 From: Mark H Weaver <mhw@netris.org> Date: Thu, 13 Feb 2014 00:42:41 -0500 Subject: gnu: ratpoison: Patch to use $SHELL instead of /bin/sh. * gnu/packages/patches/ratpoison-shell.patch: New file. * gnu/packages/ratpoison.scm (ratpoison): Add patch. * gnu-system.am (dist_patch_DATA): Add patch. --- gnu-system.am | 1 + gnu/packages/patches/ratpoison-shell.patch | 91 ++++++++++++++++++++++++++++++ gnu/packages/ratpoison.scm | 4 +- 3 files changed, 95 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/ratpoison-shell.patch (limited to 'gnu/packages/patches') diff --git a/gnu-system.am b/gnu-system.am index 7e68290a95..44ecf86de8 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -298,6 +298,7 @@ dist_patch_DATA = \ gnu/packages/patches/qemu-make-4.0.patch \ gnu/packages/patches/qemu-multiple-smb-shares.patch \ gnu/packages/patches/qt4-tests.patch \ + gnu/packages/patches/ratpoison-shell.patch \ gnu/packages/patches/readline-link-ncurses.patch \ gnu/packages/patches/ripperx-libm.patch \ gnu/packages/patches/scheme48-tests.patch \ diff --git a/gnu/packages/patches/ratpoison-shell.patch b/gnu/packages/patches/ratpoison-shell.patch new file mode 100644 index 0000000000..63d265a382 --- /dev/null +++ b/gnu/packages/patches/ratpoison-shell.patch @@ -0,0 +1,91 @@ +Use $SHELL instead of hardcoding /bin/sh in ratpoison. + +Patch by Mark H Weaver <mhw@netris.org>. + +--- ratpoison/src/actions.c.orig 2013-04-06 21:37:43.000000000 -0400 ++++ ratpoison/src/actions.c 2014-02-13 00:34:10.992553710 -0500 +@@ -19,6 +19,7 @@ + */ + + #include <unistd.h> ++#include <stdlib.h> + #include <ctype.h> /* for isspace */ + #include <sys/wait.h> + #include <X11/keysym.h> +@@ -223,12 +223,12 @@ + add_command ("escape", cmd_escape, 1, 1, 1, + "Key: ", arg_KEY); + add_command ("exec", cmd_exec, 1, 1, 1, +- "/bin/sh -c ", arg_SHELLCMD); ++ "$SHELL -c ", arg_SHELLCMD); + add_command ("execa", cmd_execa, 1, 1, 1, +- "/bin/sh -c ", arg_SHELLCMD); ++ "$SHELL -c ", arg_SHELLCMD); + add_command ("execf", cmd_execf, 2, 2, 2, + "frame to execute in:", arg_FRAME, +- "/bin/sh -c ", arg_SHELLCMD); ++ "$SHELL -c ", arg_SHELLCMD); + add_command ("fdump", cmd_fdump, 1, 0, 0, + "", arg_NUMBER); + add_command ("focus", cmd_next_frame, 0, 0, 0); +@@ -359,7 +359,7 @@ + add_command ("unsetenv", cmd_unsetenv, 1, 1, 1, + "Variable: ", arg_STRING); + add_command ("verbexec", cmd_verbexec, 1, 1, 1, +- "/bin/sh -c ", arg_SHELLCMD); ++ "$SHELL -c ", arg_SHELLCMD); + add_command ("version", cmd_version, 0, 0, 0); + add_command ("vsplit", cmd_v_split, 1, 0, 0, + "Split: ", arg_STRING); +@@ -2627,6 +2627,9 @@ + pid = fork(); + if (pid == 0) + { ++ char *shell_path; ++ char *shell_name; ++ + /* Some process setup to make sure the spawned process runs + in its own session. */ + putenv(current_screen()->display_string); +@@ -2641,7 +2644,18 @@ + /* raw means don't run it through sh. */ + if (raw) + execl (cmd, cmd, NULL); +- execl("/bin/sh", "sh", "-c", cmd, NULL); ++ ++ shell_path = getenv ("SHELL"); ++ if (shell_path == NULL) ++ shell_path = "/bin/sh"; ++ ++ shell_name = strrchr (shell_path, '/'); ++ if (shell_name == NULL) ++ shell_name = shell_path; ++ else ++ shell_name++; ++ ++ execl(shell_path, shell_name, "-c", cmd, NULL); + _exit(EXIT_FAILURE); + } + +--- ratpoison/src/events.c.orig 2013-04-06 20:05:48.000000000 -0400 ++++ ratpoison/src/events.c 2014-02-13 00:34:39.327758789 -0500 +@@ -920,7 +920,7 @@ + { + /* Report any child that didn't return 0. */ + if (cur->status != 0) +- marked_message_printf (0,0, "/bin/sh -c \"%s\" finished (%d)", ++ marked_message_printf (0,0, "$SHELL -c \"%s\" finished (%d)", + cur->cmd, cur->status); + list_del (&cur->node); + free (cur->cmd); +--- ratpoison/src/messages.h.orig 2012-07-20 20:25:33.000000000 -0400 ++++ ratpoison/src/messages.h 2014-02-13 00:34:28.608398437 -0500 +@@ -41,7 +41,7 @@ + + #define MESSAGE_PROMPT_SWITCH_TO_WINDOW "Switch to window: " + #define MESSAGE_PROMPT_NEW_WINDOW_NAME "Set window's title to: " +-#define MESSAGE_PROMPT_SHELL_COMMAND "/bin/sh -c " ++#define MESSAGE_PROMPT_SHELL_COMMAND "$SHELL -c " + #define MESSAGE_PROMPT_COMMAND ":" + #define MESSAGE_PROMPT_SWITCH_WM "Switch to wm: " + #define MESSAGE_PROMPT_XTERM_COMMAND MESSAGE_PROMPT_SHELL_COMMAND TERM_PROG " -e " diff --git a/gnu/packages/ratpoison.scm b/gnu/packages/ratpoison.scm index fb1bfd8516..aabd1d330c 100644 --- a/gnu/packages/ratpoison.scm +++ b/gnu/packages/ratpoison.scm @@ -21,6 +21,7 @@ (define-module (gnu packages ratpoison) #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module ((guix licenses) #:select (gpl2+)) + #:use-module (gnu packages) #:use-module (gnu packages xorg) #:use-module (gnu packages perl) #:use-module (gnu packages readline) @@ -37,7 +38,8 @@ (define-public ratpoison version ".tar.xz")) (sha256 (base32 - "0v4mh8d3vsh5xbbycfdl3g8zfygi1rkslh1x7k5hi1d05bfq3cdr")))) + "0v4mh8d3vsh5xbbycfdl3g8zfygi1rkslh1x7k5hi1d05bfq3cdr")) + (patches (list (search-patch "ratpoison-shell.patch"))))) (build-system gnu-build-system) (inputs `(("libXi" ,libxi) -- cgit v1.2.3 From 436c95d9a73064d7884530928a6ebb331377a9e3 Mon Sep 17 00:00:00 2001 From: Mark H Weaver <mhw@netris.org> Date: Sun, 16 Feb 2014 02:23:18 -0500 Subject: gnu: dmd: Sleep longer in tests, for slower machines. * gnu/packages/patches/dmd-tests-longer-sleeps.patch: New file. * gnu/packages/admin.scm (dmd): Add the patch. * gnu-system.am (dist_patch_DATA): Add it. --- gnu-system.am | 1 + gnu/packages/admin.scm | 3 +- gnu/packages/patches/dmd-tests-longer-sleeps.patch | 52 ++++++++++++++++++++++ 3 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/dmd-tests-longer-sleeps.patch (limited to 'gnu/packages/patches') diff --git a/gnu-system.am b/gnu-system.am index 44ecf86de8..9b0a6919d9 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -247,6 +247,7 @@ dist_patch_DATA = \ gnu/packages/patches/dbus-localstatedir.patch \ gnu/packages/patches/diffutils-gets-undeclared.patch \ gnu/packages/patches/dmd-getpw.patch \ + gnu/packages/patches/dmd-tests-longer-sleeps.patch \ gnu/packages/patches/emacs-configure-sh.patch \ gnu/packages/patches/findutils-absolute-paths.patch \ gnu/packages/patches/flac-fix-memcmp-not-declared.patch \ diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 928d752531..6998996523 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -49,7 +49,8 @@ (define-public dmd (sha256 (base32 "07mddw0p62fcphwjzgb6rfa0pjz5sy6jzbha0sm2vc3rqf459jxg")) - (patches (list (search-patch "dmd-getpw.patch"))))) + (patches (list (search-patch "dmd-getpw.patch") + (search-patch "dmd-tests-longer-sleeps.patch"))))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--localstatedir=/var"))) diff --git a/gnu/packages/patches/dmd-tests-longer-sleeps.patch b/gnu/packages/patches/dmd-tests-longer-sleeps.patch new file mode 100644 index 0000000000..708000f351 --- /dev/null +++ b/gnu/packages/patches/dmd-tests-longer-sleeps.patch @@ -0,0 +1,52 @@ +Increase sleep times in tests, for slower machines. + +Patch by Mark H Weaver <mhw@netris.org>. + +--- dmd/tests/basic.sh 2013-11-30 17:22:00.000000000 -0500 ++++ dmd/tests/basic.sh 2014-02-16 02:18:34.036376953 -0500 +@@ -46,7 +46,7 @@ + dmd -I -s "$socket" -c "$conf" -l "$log" & + dmd_pid=$! + +-sleep 1 # XXX: wait till it's up ++sleep 3 # XXX: wait till it's up + kill -0 $dmd_pid + test -S "$socket" + $deco status dmd | grep -E '(Start.*dmd|Stop.*test)' +--- dmd/tests/respawn.sh 2013-12-01 16:50:37.000000000 -0500 ++++ dmd/tests/respawn.sh 2014-02-16 02:19:16.958251953 -0500 +@@ -39,7 +39,7 @@ + i=0 + while ! test -f "$1" && test $i -lt 20 + do +- sleep 0.3 ++ sleep 1 + i=`expr $i + 1` + done + test -f "$1" +@@ -65,14 +65,14 @@ + #:provides '(test1) + #:start (make-forkexec-constructor + "$SHELL" "-c" +- "echo \$\$ > $service1_pid ; while true ; do sleep 1 ; done") ++ "echo \$\$ > $service1_pid ; while true ; do sleep 3 ; done") + #:stop (make-kill-destructor) + #:respawn? #t) + (make <service> + #:provides '(test2) + #:start (make-forkexec-constructor + "$SHELL" "-c" +- "echo \$\$ > $service2_pid ; while true ; do sleep 1 ; done") ++ "echo \$\$ > $service2_pid ; while true ; do sleep 3 ; done") + #:stop (make-kill-destructor) + #:respawn? #t)) + (start 'test1) +@@ -82,7 +82,7 @@ + dmd -I -s "$socket" -c "$conf" -l "$log" & + dmd_pid=$! + +-sleep 1 # XXX: wait till it's up ++sleep 3 # XXX: wait till it's up + kill -0 $dmd_pid + test -S "$socket" + $deco status test1 | grep started -- cgit v1.2.3 From 0841dcf7dd8e6c3e474f75cfa5b95a7feaf6f112 Mon Sep 17 00:00:00 2001 From: Mark H Weaver <mhw@netris.org> Date: Sun, 16 Feb 2014 20:20:10 -0500 Subject: gnu: patchelf: Fix platform page size determination. * gnu/packages/patches/patchelf-page-size.patch: New file. * gnu/packages/elf.scm (patchelf): Add the patch. * gnu-system.am (dist_patch_DATA): Add the patch. --- gnu-system.am | 1 + gnu/packages/elf.scm | 4 +- gnu/packages/patches/patchelf-page-size.patch | 69 +++++++++++++++++++++++++++ 3 files changed, 73 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/patchelf-page-size.patch (limited to 'gnu/packages/patches') diff --git a/gnu-system.am b/gnu-system.am index 86bece3638..d231cfa57b 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -291,6 +291,7 @@ dist_patch_DATA = \ gnu/packages/patches/make-impure-dirs.patch \ gnu/packages/patches/mcron-install.patch \ gnu/packages/patches/mit-krb5-init-fix.patch \ + gnu/packages/patches/patchelf-page-size.patch \ gnu/packages/patches/perl-no-sys-dirs.patch \ gnu/packages/patches/plotutils-libpng-jmpbuf.patch \ gnu/packages/patches/procps-make-3.82.patch \ diff --git a/gnu/packages/elf.scm b/gnu/packages/elf.scm index 1df9956f87..45714be70e 100644 --- a/gnu/packages/elf.scm +++ b/gnu/packages/elf.scm @@ -21,6 +21,7 @@ (define-module (gnu packages elf) #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module ((guix licenses) #:select (gpl3+ lgpl3+ lgpl2.0+)) + #:use-module (gnu packages) #:use-module (gnu packages m4) #:use-module (gnu packages compression)) @@ -92,7 +93,8 @@ (define-public patchelf "/patchelf-" version ".tar.bz2")) (sha256 (base32 - "00bw29vdsscsili65wcb5ay0gvg1w0ljd00sb5xc6br8bylpyzpw")))) + "00bw29vdsscsili65wcb5ay0gvg1w0ljd00sb5xc6br8bylpyzpw")) + (patches (list (search-patch "patchelf-page-size.patch"))))) (build-system gnu-build-system) (home-page "http://nixos.org/patchelf.html") (synopsis "Modify the dynamic linker and RPATH of ELF executables") diff --git a/gnu/packages/patches/patchelf-page-size.patch b/gnu/packages/patches/patchelf-page-size.patch new file mode 100644 index 0000000000..2528b604e5 --- /dev/null +++ b/gnu/packages/patches/patchelf-page-size.patch @@ -0,0 +1,69 @@ +Improve the determination of pageSize in patchelf.cc. + +Patch by Mark H Weaver <mhw@netris.org>. + +--- patchelf/src/patchelf.cc.orig 1969-12-31 19:00:01.000000000 -0500 ++++ patchelf/src/patchelf.cc 2014-02-16 20:15:06.283203125 -0500 +@@ -21,11 +21,19 @@ + using namespace std; + + +-#ifdef MIPSEL +-/* The lemote fuloong 2f kernel defconfig sets a page size of 16KB */ +-const unsigned int pageSize = 4096*4; +-#else ++/* Note that some platforms support multiple page sizes. Therefore, ++ it is not enough to query the current page size. 'pageSize' must ++ be the maximum architectural page size for the platform, which is ++ typically defined in the corresponding ABI document. ++ ++ XXX FIXME: This won't work when we're cross-compiling. */ ++ ++#if defined __MIPSEL__ || defined __MIPSEB__ || defined __aarch64__ ++const unsigned int pageSize = 65536; ++#elif defined __x86_64__ || defined __i386__ || defined __arm__ + const unsigned int pageSize = 4096; ++#else ++# error maximum architectural page size unknown for this platform + #endif + + +--- patchelf/tests/no-rpath.sh.orig 1969-12-31 19:00:01.000000000 -0500 ++++ patchelf/tests/no-rpath.sh 2014-02-16 20:44:12.036376953 -0500 +@@ -1,22 +1,22 @@ + #! /bin/sh -e + +-rm -rf scratch +-mkdir -p scratch ++if [ "$(uname -m)" = i686 -a "$(uname -s)" = Linux ]; then ++ rm -rf scratch ++ mkdir -p scratch + +-cp no-rpath scratch/ ++ cp no-rpath scratch/ + +-oldRPath=$(../src/patchelf --print-rpath scratch/no-rpath) +-if test -n "$oldRPath"; then exit 1; fi +-../src/patchelf \ +- --set-interpreter "$(../src/patchelf --print-interpreter ../src/patchelf)" \ +- --set-rpath /foo:/bar:/xxxxxxxxxxxxxxx scratch/no-rpath ++ oldRPath=$(../src/patchelf --print-rpath scratch/no-rpath) ++ if test -n "$oldRPath"; then exit 1; fi ++ ../src/patchelf \ ++ --set-interpreter "$(../src/patchelf --print-interpreter ../src/patchelf)" \ ++ --set-rpath /foo:/bar:/xxxxxxxxxxxxxxx scratch/no-rpath + +-newRPath=$(../src/patchelf --print-rpath scratch/no-rpath) +-if ! echo "$newRPath" | grep -q '/foo:/bar'; then +- echo "incomplete RPATH" +- exit 1 +-fi ++ newRPath=$(../src/patchelf --print-rpath scratch/no-rpath) ++ if ! echo "$newRPath" | grep -q '/foo:/bar'; then ++ echo "incomplete RPATH" ++ exit 1 ++ fi + +-if [ "$(uname -m)" = i686 -a "$(uname -s)" = Linux ]; then + cd scratch && ./no-rpath + fi -- cgit v1.2.3 From 7fe492e8d956de17ad2af2ed0d1843a745d06e17 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès <ludo@gnu.org> Date: Wed, 19 Feb 2014 16:43:25 +0100 Subject: gnu: bigloo: Upgrade to 4.1a. * gnu/packages/scheme.scm (bigloo): Upgrade to 4.1a. --- gnu/packages/patches/bigloo-gc-shebangs.patch | 4 ++-- gnu/packages/scheme.scm | 9 ++++++--- 2 files changed, 8 insertions(+), 5 deletions(-) (limited to 'gnu/packages/patches') diff --git a/gnu/packages/patches/bigloo-gc-shebangs.patch b/gnu/packages/patches/bigloo-gc-shebangs.patch index 9ead2ba979..367708610a 100644 --- a/gnu/packages/patches/bigloo-gc-shebangs.patch +++ b/gnu/packages/patches/bigloo-gc-shebangs.patch @@ -1,7 +1,7 @@ Patch shebangs in source that gets unpacked by `configure'. ---- bigloo4.0b/gc/install-gc-7.3alpha3-20130330 2013-08-19 10:45:20.000000000 +0200 -+++ bigloo4.0b/gc/install-gc-7.3alpha3-20130330 2013-08-19 10:46:36.000000000 +0200 +--- bigloo4.1a/gc/install-gc-7.4.0 2014-02-04 14:55:03.000000000 +0100 ++++ bigloo4.1a/gc/install-gc-7.4.0 2014-02-04 14:55:36.000000000 +0100 @@ -29,10 +29,12 @@ fi # untar the two versions of the GC diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index 4dcd46305d..3d9e3b54dc 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -116,14 +116,14 @@ (define-public mit-scheme (define-public bigloo (package (name "bigloo") - (version "4.0b") + (version "4.1a") (source (origin (method url-fetch) (uri (string-append "ftp://ftp-sop.inria.fr/indes/fp/Bigloo/bigloo" version ".tar.gz")) (sha256 (base32 - "1fck2h48f0bvh8fl437cagmp0syfxy9lqacy1zwsis20fc76jvzi")) + "170q7nh08n4v20xl81fxb0xcdxphqqacfa643hsa8i2ar6pki04c")) (patches (list (search-patch "bigloo-gc-shebangs.patch"))))) (build-system gnu-build-system) (arguments @@ -163,6 +163,9 @@ (define-public bigloo (zero? (system* "./configure" (string-append "--prefix=" out) + ;; FIXME: Currently fails, see + ;; <http://article.gmane.org/gmane.lisp.scheme.bigloo/6126>. + ;; "--customgc=no" ; use our libgc (string-append"--mv=" (which "mv")) (string-append "--rm=" (which "rm")))))) (alist-cons-after -- cgit v1.2.3 From 86d07a5514d859772980ef87e39f6e2b668655c0 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès <ludo@gnu.org> Date: Fri, 21 Feb 2014 01:00:49 +0100 Subject: gnu: mpc123: Add patch that fixes a segfault. * gnu/packages/patches/mpc123-initialize-ao.patch: New file. * gnu/packages/mp3.scm (mpc123): Use it. * gnu-system.am (dist_patch_DATA): Add it. --- gnu-system.am | 1 + gnu/packages/mp3.scm | 3 ++- gnu/packages/patches/mpc123-initialize-ao.patch | 19 +++++++++++++++++++ 3 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/mpc123-initialize-ao.patch (limited to 'gnu/packages/patches') diff --git a/gnu-system.am b/gnu-system.am index 8308480c42..e7c7bb2141 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -298,6 +298,7 @@ dist_patch_DATA = \ gnu/packages/patches/make-impure-dirs.patch \ gnu/packages/patches/mcron-install.patch \ gnu/packages/patches/mit-krb5-init-fix.patch \ + gnu/packages/patches/mpc123-initialize-ao.patch \ gnu/packages/patches/patchelf-page-size.patch \ gnu/packages/patches/perl-no-sys-dirs.patch \ gnu/packages/patches/plotutils-libpng-jmpbuf.patch \ diff --git a/gnu/packages/mp3.scm b/gnu/packages/mp3.scm index 7e324703a6..c64efe4c03 100644 --- a/gnu/packages/mp3.scm +++ b/gnu/packages/mp3.scm @@ -298,7 +298,8 @@ (define-public mpc123 version "/mpc123-" version ".tar.gz")) (sha256 (base32 - "0sf4pns0245009z6mbxpx7kqy4kwl69bc95wz9v23wgappsvxgy1")))) + "0sf4pns0245009z6mbxpx7kqy4kwl69bc95wz9v23wgappsvxgy1")) + (patches (list (search-patch "mpc123-initialize-ao.patch"))))) (build-system gnu-build-system) (arguments '(#:phases (alist-replace diff --git a/gnu/packages/patches/mpc123-initialize-ao.patch b/gnu/packages/patches/mpc123-initialize-ao.patch new file mode 100644 index 0000000000..85e461f896 --- /dev/null +++ b/gnu/packages/patches/mpc123-initialize-ao.patch @@ -0,0 +1,19 @@ +Description: Zero ao_sample_format structure to cope with libao 1.0.0 +Author: Colin Watson <cjwatson@debian.org> +Bug-Debian: http://bugs.debian.org/591396 +Bug-Ubuntu: https://bugs.launchpad.net/bugs/710268 +Forwarded: no +Last-Update: 2013-05-07 + +Index: b/ao.c +=================================================================== +--- a/ao.c ++++ b/ao.c +@@ -123,6 +123,7 @@ + + /* initialize ao_format struct */ + /* XXX VERY WRONG */ ++ memset(&ao_fmt, 0, sizeof(ao_fmt)); + ao_fmt.bits=16; /*tmp_stream_info.average_bitrate;*/ + ao_fmt.rate=streaminfo->sample_freq; + ao_fmt.channels=streaminfo->channels; -- cgit v1.2.3