From 9720104c430b8c72a705f8c898a6922b9fc416fb Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Sun, 15 Sep 2019 20:36:12 +0200 Subject: gnu: Add ncompress. * gnu/packages/compression.scm (ncompress): New variable. * gnu/packages/patches/compress-fix-softlinks.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/packages/patches/ncompress-fix-softlinks.patch | 24 ++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 gnu/packages/patches/ncompress-fix-softlinks.patch (limited to 'gnu/packages/patches') diff --git a/gnu/packages/patches/ncompress-fix-softlinks.patch b/gnu/packages/patches/ncompress-fix-softlinks.patch new file mode 100644 index 0000000000..98752e8e64 --- /dev/null +++ b/gnu/packages/patches/ncompress-fix-softlinks.patch @@ -0,0 +1,24 @@ +Patch taken from Debian sid. + +Description: Support uncompressing and compressing soft links. + Historically, ncompress for Debian has been built using a command line + directly in debian/rules. For 4.2.4.5-1, I simplified by swtching to the + upstream Makefile. However, that caused a regression - the Debian version of + ncompress has always successfully handled soft links, but this stopped + working. To revert to the original behavior, I need to remove -DLSTAT from + the build options, to be consistent with how the code was previously built. +Author: Kenneth J. Pronovici +Bug-Debian: http://bugs.debian.org/918836 +Index: ncompress/GNUmakefile +=================================================================== +--- ncompress.orig/GNUmakefile ++++ ncompress/GNUmakefile +@@ -9,7 +9,7 @@ distclean: cleanup + + Makefile: Makefile.def GNUmakefile + sed \ +- -e 's:options= :options= $$(CFLAGS) -DNOFUNCDEF -DUTIME_H -DLSTAT $$(LDFLAGS) :' \ ++ -e 's:options= :options= $$(CFLAGS) -DNOFUNCDEF -DUTIME_H $$(LDFLAGS) :' \ + Makefile.def > Makefile + + check: -- cgit v1.2.3 From 8c0dcf3e89e0eb2a6094263efdbc5eaec0e8e9e8 Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Fri, 6 Dec 2019 14:44:39 +0100 Subject: gnu: mes: Add patch to remove store name from binary. * gnu/packages/patches/mes-remove-store-name.patch: New file, from upstream. * gnu/packages/mes.scm (mes): Use it. Add `www.' to homepage. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/mes.scm | 3 +- gnu/packages/patches/mes-remove-store-name.patch | 121 +++++++++++++++++++++++ 3 files changed, 124 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/mes-remove-store-name.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index d12b6b1878..fbea6dc78b 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1133,6 +1133,7 @@ dist_patch_DATA = \ %D%/packages/patches/mcrypt-CVE-2012-4409.patch \ %D%/packages/patches/mcrypt-CVE-2012-4426.patch \ %D%/packages/patches/mcrypt-CVE-2012-4527.patch \ + %D%/packages/patches/mes-remove-store-name.patch \ %D%/packages/patches/mesa-skip-disk-cache-test.patch \ %D%/packages/patches/mesa-timespec-test-32bit.patch \ %D%/packages/patches/mescc-tools-boot.patch \ diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm index 59710c45ae..0a5863582a 100644 --- a/gnu/packages/mes.scm +++ b/gnu/packages/mes.scm @@ -134,7 +134,7 @@ bootstrap to Guix and aims to help create full source bootstrapping for GNU/Linux distributions. It consists of a mutual self-hosting Scheme interpreter in C and a Nyacc-based C compiler in Scheme and is compatible with Guile.") - (home-page "https://gnu.org/software/mes") + (home-page "https://www.gnu.org/software/mes/") (license gpl3+))) (define-public mes @@ -145,6 +145,7 @@ Guile.") (method url-fetch) (uri (string-append "mirror://gnu/mes/" "mes-" version ".tar.gz")) + (patches (search-patches "mes-remove-store-name.patch")) (sha256 (base32 "104qxngxyl7pql8vqrnli3wfyx0ayfaqg8gjfhmk4qzrafs46slm")))) diff --git a/gnu/packages/patches/mes-remove-store-name.patch b/gnu/packages/patches/mes-remove-store-name.patch new file mode 100644 index 0000000000..ad055c51f2 --- /dev/null +++ b/gnu/packages/patches/mes-remove-store-name.patch @@ -0,0 +1,121 @@ +From d8f361705325cf91fc6c2ec84f281cdcd6bfa8b1 Mon Sep 17 00:00:00 2001 +From: Jan Nieuwenhuizen +Date: Tue, 3 Dec 2019 21:23:24 +0100 +Subject: [PATCH] core: Remove MES_PKGDATADIR. + +* configure: Do not add MES_PKGDATADIR to config.h. +* configure.sh: Likewise. +* simple.sh: Likewise. +* src/mes.c (open_boot): Do not use MES_PKGDATADIR; rely on +MES_PREFIX or cwd. +--- + configure | 1 - + configure.sh | 1 - + simple.sh | 2 -- + src/mes.c | 13 ------------- + 4 files changed, 17 deletions(-) + +diff --git a/configure b/configure +index 8edb2ce7b..12d8323f2 100755 +--- a/configure ++++ b/configure +@@ -666,7 +666,6 @@ See \"Porting GNU Mes\" in the manual, or try --with-courage\n" mes-system) + ")) + (display (string-append " + #define MES_VERSION \"" VERSION "\" +-#define MES_PKGDATADIR \"" pkgdatadir "\" + "))))) + (substitute (string-append srcdest "build-aux/config.make.in") pairs #:target ".config.make")) + +diff --git a/configure.sh b/configure.sh +index 947ddd851..0139cbc36 100755 +--- a/configure.sh ++++ b/configure.sh +@@ -244,7 +244,6 @@ EOF + fi + cat >> include/mes/config.h < include/mes/config.h < include/mes/config.h < 1) +- { +- eputs (";;; pkgdatadir="); +- eputs (MES_PKGDATADIR); +- eputs ("\n"); +- } + if (getenv ("MES_BOOT")) + strcpy (boot, getenv ("MES_BOOT")); + else +@@ -1801,13 +1795,6 @@ open_boot () + __stdin = try_open_boot (file_name, boot, "MES_PREFIX/share/mes"); + } + } +- if (__stdin < 0) +- { +- strcpy (g_datadir, MES_PKGDATADIR); +- strcpy (file_name, g_datadir); +- strcpy (file_name + strlen (file_name), "/module/mes/"); +- __stdin = try_open_boot (file_name, boot, "pkgdatadir"); +- } + if (__stdin < 0) + { + g_datadir[0] = 0; +-- +2.24.0 + +commit 2f6fab05b3f09df02aba70c3e21d5fedb45dc567 +Author: Jan Nieuwenhuizen +Date: Sun Nov 24 23:12:29 2019 +0100 + + core: Throw instead of segfault on non-existing input file. WIP. + + Reported by theruran. + + * src/posix.c (open_input_file): Call error instead of failing silently. + +diff --git a/src/posix.c b/src/posix.c +index 7ba2e9915..fd753232d 100644 +--- a/src/posix.c ++++ b/src/posix.c +@@ -188,7 +188,10 @@ current_input_port () + SCM + open_input_file (SCM file_name) + { +- return MAKE_NUMBER (mes_open (CSTRING (file_name), O_RDONLY, 0)); ++ int filedes = mes_open (CSTRING (file_name), O_RDONLY, 0); ++ if (filedes == -1) ++ error (cell_symbol_system_error, cons (MAKE_STRING0 ("No such file or directory"), file_name)); ++ return MAKE_NUMBER (filedes); + } + + SCM -- cgit v1.2.3 From a6938bac22d9d738527fc8e4a7c62cc7c8de878a Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Fri, 19 Jul 2019 16:15:09 -0400 Subject: gnu: gnome-control-center: Update to 3.32.2. * gnu/packages/gnome.scm (gnome-control-center): Update to 3.32.2. [source]: Remove patch. [arguments]: Adjust 'patch-paths' phase accordingly. [native-inputs]: Add hicolor-icon-theme, python-dbusmock and xorg-server-for-tests. [inputs]: Add gnome-session and gsound. * gnu/packages/patches/gnome-control-center-udisks.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove patch. --- gnu/local.mk | 1 - gnu/packages/gnome.scm | 13 +- .../patches/gnome-control-center-udisks.patch | 221 --------------------- 3 files changed, 8 insertions(+), 227 deletions(-) delete mode 100644 gnu/packages/patches/gnome-control-center-udisks.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index fbea6dc78b..5135cdd30c 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -927,7 +927,6 @@ dist_patch_DATA = \ %D%/packages/patches/glusterfs-use-PATH-instead-of-hardcodes.patch \ %D%/packages/patches/gmp-arm-asm-nothumb.patch \ %D%/packages/patches/gmp-faulty-test.patch \ - %D%/packages/patches/gnome-control-center-udisks.patch \ %D%/packages/patches/gnome-shell-theme.patch \ %D%/packages/patches/gnome-tweaks-search-paths.patch \ %D%/packages/patches/gnutls-skip-trust-store-test.patch \ diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 39f373d7a8..7d86ee5f03 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -6298,7 +6298,7 @@ devices using the GNOME desktop.") (define-public gnome-control-center (package (name "gnome-control-center") - (version "3.30.3") + (version "3.32.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -6306,9 +6306,7 @@ devices using the GNOME desktop.") name "-" version ".tar.xz")) (sha256 (base32 - "0gih1cmqbv803kp30704sllghb0impa0mmv3j8pndfg4zr2mnq9r")) - (patches - (search-patches "gnome-control-center-udisks.patch")))) + "03np0mhfl9kkdw4cb711pda0cli9zgh2bq2gqn2zwbdi3qnhk9gs")))) (build-system meson-build-system) (arguments '(#:glib-or-gtk? #t @@ -6355,7 +6353,11 @@ devices using the GNOME desktop.") ("gtk+:bin" ,gtk+ "bin") ; for gtk-update-icon-cache ("intltool" ,intltool) ("pkg-config" ,pkg-config) - ("xsltproc" ,libxslt))) + ("xsltproc" ,libxslt) + ;; For tests + ("hicolor-icon-theme" ,hicolor-icon-theme) + ("python-dbusmock" ,python-dbusmock) + ("xorg-server" ,xorg-server-for-tests))) (inputs `(("accountsservice" ,accountsservice) ("clutter-gtk" ,clutter-gtk) @@ -6371,6 +6373,7 @@ devices using the GNOME desktop.") ("gnome-session" ,gnome-session) ("gnome-settings-daemon" ,gnome-settings-daemon) ("grilo" ,grilo) + ("gsound" ,gsound) ("ibus" ,ibus) ("libcanberra" ,libcanberra) ("libgnomekbd" ,libgnomekbd) diff --git a/gnu/packages/patches/gnome-control-center-udisks.patch b/gnu/packages/patches/gnome-control-center-udisks.patch deleted file mode 100644 index 823684b2e9..0000000000 --- a/gnu/packages/patches/gnome-control-center-udisks.patch +++ /dev/null @@ -1,221 +0,0 @@ -This patch is derived from upstream commit 2520aea6 and fixes upstream issues -285 and 302. See https://gitlab.gnome.org/GNOME/gcr/merge_requests/387, -https://gitlab.gnome.org/GNOME/gnome-control-center/issues/285 and -https://gitlab.gnome.org/GNOME/gnome-control-center/issues/302. - -diff --git a/panels/info/cc-info-overview-panel.c b/panels/info/cc-info-overview-panel.c -index e2276a295b3fd9de01b30fc3369069b5d33ba5b7..ff47c1fef2493bcc7ab34f9e8716d570d8d370ed 100644 ---- a/panels/info/cc-info-overview-panel.c -+++ b/panels/info/cc-info-overview-panel.c -@@ -36,6 +36,7 @@ - #include - #include - #include -+#include - - #include - -@@ -81,9 +82,7 @@ typedef struct - - GCancellable *cancellable; - -- /* Free space */ -- GList *primary_mounts; -- guint64 total_bytes; -+ UDisksClient *client; - - GraphicsData *graphics_data; - } CcInfoOverviewPanelPrivate; -@@ -96,8 +95,6 @@ struct _CcInfoOverviewPanel - CcInfoOverviewPanelPrivate *priv; - }; - --static void get_primary_disc_info_start (CcInfoOverviewPanel *self); -- - typedef struct - { - char *major; -@@ -486,111 +483,51 @@ get_os_type (void) - } - - static void --query_done (GFile *file, -- GAsyncResult *res, -- CcInfoOverviewPanel *self) -+get_primary_disc_info (CcInfoOverviewPanel *self) - { - CcInfoOverviewPanelPrivate *priv; -- g_autoptr(GFileInfo) info = NULL; -- g_autoptr(GError) error = NULL; -- -- info = g_file_query_filesystem_info_finish (file, res, &error); -- if (info != NULL) -- { -- priv = cc_info_overview_panel_get_instance_private (self); -- priv->total_bytes += g_file_info_get_attribute_uint64 (info, G_FILE_ATTRIBUTE_FILESYSTEM_SIZE); -- } -- else -- { -- if (g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED)) -- return; -- else -- { -- g_autofree char *path = NULL; -- path = g_file_get_path (file); -- g_warning ("Failed to get filesystem free space for '%s': %s", path, error->message); -- } -- } -+ GDBusObjectManager *manager; -+ g_autolist(GDBusObject) objects = NULL; -+ GList *l; -+ guint64 total_size; - -- /* And onto the next element */ -- get_primary_disc_info_start (self); --} -- --static void --get_primary_disc_info_start (CcInfoOverviewPanel *self) --{ -- GUnixMountEntry *mount; -- g_autoptr(GFile) file = NULL; -- CcInfoOverviewPanelPrivate *priv = cc_info_overview_panel_get_instance_private (self); -+ priv = cc_info_overview_panel_get_instance_private (self); -+ total_size = 0; - -- if (priv->primary_mounts == NULL) -+ if (!priv->client) - { -- g_autofree char *size = NULL; -- -- size = g_format_size (priv->total_bytes); -- gtk_label_set_text (GTK_LABEL (priv->disk_label), size); -- -+ gtk_label_set_text (GTK_LABEL (priv->disk_label), _("Unknown")); - return; - } - -- mount = priv->primary_mounts->data; -- priv->primary_mounts = g_list_remove (priv->primary_mounts, mount); -- file = g_file_new_for_path (g_unix_mount_get_mount_path (mount)); -- g_unix_mount_free (mount); -- -- g_file_query_filesystem_info_async (file, -- G_FILE_ATTRIBUTE_FILESYSTEM_SIZE, -- 0, -- priv->cancellable, -- (GAsyncReadyCallback) query_done, -- self); --} -- --static void --get_primary_disc_info (CcInfoOverviewPanel *self) --{ -- GList *points; -- GList *p; -- GHashTable *hash; -- CcInfoOverviewPanelPrivate *priv = cc_info_overview_panel_get_instance_private (self); -- -- hash = g_hash_table_new (g_str_hash, g_str_equal); -- points = g_unix_mount_points_get (NULL); -- -- /* If we do not have /etc/fstab around, try /etc/mtab */ -- if (points == NULL) -- points = g_unix_mounts_get (NULL); -+ manager = udisks_client_get_object_manager (priv->client); -+ objects = g_dbus_object_manager_get_objects (manager); - -- for (p = points; p != NULL; p = p->next) -+ for (l = objects; l != NULL; l = l->next) - { -- GUnixMountEntry *mount = p->data; -- const char *mount_path; -- const char *device_path; -- -- mount_path = g_unix_mount_get_mount_path (mount); -- device_path = g_unix_mount_get_device_path (mount); -- -- /* Do not count multiple mounts with same device_path, because it is -- * probably something like btrfs subvolume. Use only the first one in -- * order to count the real size. */ -- if (gsd_should_ignore_unix_mount (mount) || -- gsd_is_removable_mount (mount) || -- g_str_has_prefix (mount_path, "/media/") || -- g_str_has_prefix (mount_path, g_get_home_dir ()) || -- g_hash_table_lookup (hash, device_path) != NULL) -+ UDisksDrive *drive; -+ drive = udisks_object_peek_drive (UDISKS_OBJECT (l->data)); -+ -+ /* Skip removable devices */ -+ if (drive == NULL || -+ udisks_drive_get_removable (drive) || -+ udisks_drive_get_ejectable (drive)) - { -- g_unix_mount_free (mount); - continue; - } - -- priv->primary_mounts = g_list_prepend (priv->primary_mounts, mount); -- g_hash_table_insert (hash, (gpointer) device_path, (gpointer) device_path); -+ total_size += udisks_drive_get_size (drive); - } -- g_list_free (points); -- g_hash_table_destroy (hash); - -- priv->cancellable = g_cancellable_new (); -- get_primary_disc_info_start (self); -+ if (total_size > 0) -+ { -+ g_autofree gchar *size = g_format_size (total_size); -+ gtk_label_set_text (GTK_LABEL (priv->disk_label), size); -+ } -+ else -+ { -+ gtk_label_set_text (GTK_LABEL (priv->disk_label), _("Unknown")); -+ } - } - - static char * -@@ -852,8 +789,7 @@ cc_info_overview_panel_finalize (GObject *object) - g_clear_object (&priv->cancellable); - } - -- if (priv->primary_mounts) -- g_list_free_full (priv->primary_mounts, (GDestroyNotify) g_unix_mount_free); -+ g_clear_object (&priv->client); - - g_free (priv->gnome_version); - g_free (priv->gnome_date); -@@ -895,6 +831,7 @@ static void - cc_info_overview_panel_init (CcInfoOverviewPanel *self) - { - CcInfoOverviewPanelPrivate *priv = cc_info_overview_panel_get_instance_private (self); -+ g_autoptr(GError) error = NULL; - - gtk_widget_init_template (GTK_WIDGET (self)); - -@@ -907,6 +844,12 @@ cc_info_overview_panel_init (CcInfoOverviewPanel *self) - else - gtk_widget_destroy (priv->updates_button); - -+ priv->client = udisks_client_new_sync (NULL, &error); -+ -+ if (error != NULL) -+ g_warning ("Unable to get UDisks client: %s. Disk information will not be available.", -+ error->message); -+ - info_overview_panel_setup_overview (self); - info_overview_panel_setup_virt (self); - } -diff --git a/panels/info/meson.build b/panels/info/meson.build -index 03742551314f91b60e3ec1caad153ff314b93310..c54e5fdaff3c6ddb59cca8ee9a2bf5a0212bf196 100644 ---- a/panels/info/meson.build -+++ b/panels/info/meson.build -@@ -61,6 +61,7 @@ sources += gnome.compile_resources( - - deps = common_deps + [ - polkit_gobject_dep, -+ dependency('udisks2', version: '>= 2.1.8'), - dependency('libgtop-2.0') - ] - -- cgit v1.2.3 From 995ef5ea11a9003abc0ea90b4ce61e53ef1eb679 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Mon, 22 Jul 2019 17:55:35 -0400 Subject: gnu: totem: Update to 3.32.1. * gnu/packages/gnome.scm (totem): Update to 3.32.1. [source]: Remove patches. [arguments]: Add 'pre-check' phase. Remove #:parallel-build?. [native-inputs]: Add python-pylint and xorg-server-for-tests. [inputs]: Replace python2-pygobject with python-pygobject. * gnu/packages/patches/totem-meson-easy-codec.patch, gnu/packages/patches/totem-meson-compat.patch: Delete files. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. --- gnu/local.mk | 2 - gnu/packages/gnome.scm | 27 +++++----- gnu/packages/patches/totem-meson-compat.patch | 14 ----- gnu/packages/patches/totem-meson-easy-codec.patch | 65 ----------------------- 4 files changed, 13 insertions(+), 95 deletions(-) delete mode 100644 gnu/packages/patches/totem-meson-compat.patch delete mode 100644 gnu/packages/patches/totem-meson-easy-codec.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 5135cdd30c..7744566996 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1403,8 +1403,6 @@ dist_patch_DATA = \ %D%/packages/patches/ttf2eot-cstddef.patch \ %D%/packages/patches/ttfautohint-source-date-epoch.patch \ %D%/packages/patches/tomb-fix-errors-on-open.patch \ - %D%/packages/patches/totem-meson-compat.patch \ - %D%/packages/patches/totem-meson-easy-codec.patch \ %D%/packages/patches/tuxpaint-stamps-path.patch \ %D%/packages/patches/txr-shell.patch \ %D%/packages/patches/u-boot-fix-mkimage-header-verification.patch \ diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index b0d98e3c9b..8ff04ada86 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4139,7 +4139,7 @@ for application developers.") (define-public totem (package (name "totem") - (version "3.30.0") + (version "3.32.1") (source (origin (method url-fetch) @@ -4148,9 +4148,7 @@ for application developers.") name "-" version ".tar.xz")) (sha256 (base32 - "0rahkybxbmxhlmrrgrzxny1xm7wycx7ib4blxp1i2l1q3i8s84b0")) - (patches (search-patches "totem-meson-easy-codec.patch" - "totem-meson-compat.patch")))) + "0yra8apc7smpwf7d1k8crhrm8d4wix24ds6i9yxbch1v11jnhr3v")))) (build-system meson-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -4159,7 +4157,9 @@ for application developers.") ("glib:bin" ,glib "bin") ;for 'glib-mkenums' ("intltool" ,intltool) ("itstool" ,itstool) - ("xmllint" ,libxml2))) + ("xmllint" ,libxml2) + ("python-pylint" ,python-pylint) + ("xorg-server" ,xorg-server-for-tests))) (propagated-inputs `(("dconf" ,dconf))) (inputs @@ -4187,8 +4187,7 @@ for application developers.") ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) ("adwaita-icon-theme" ,adwaita-icon-theme) ("python" ,python) - ("python-pygobject" ,python2-pygobject) - ;; XXX TODO pylint needed for python support + ("python-pygobject" ,python-pygobject) ("totem-pl-parser" ,totem-pl-parser) ("grilo" ,grilo) ("grilo-plugins" ,grilo-plugins) @@ -4196,12 +4195,6 @@ for application developers.") (arguments `(#:glib-or-gtk? #t - ;; Disable parallel builds until - ;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=28813 is - ;; fixed. Try enabling it when updating this package in case - ;; upstream has fixed it. - #:parallel-build? #f - ;; Disable automatic GStreamer plugin installation via PackageKit and ;; all that. #:configure-flags '("-D" "enable-easy-codec-installation=no" @@ -4209,7 +4202,6 @@ for application developers.") ;; Do not build .a files for the plugins, it's ;; completely useless. This saves 2 MiB. "--default-library" "shared") - #:phases (modify-phases %standard-phases (add-after 'unpack 'skip-gtk-update-icon-cache @@ -4223,6 +4215,13 @@ for application developers.") (lambda _ (setenv "DESTDIR" "/") #t)) + (add-before + 'check 'pre-check + (lambda _ + ;; Tests require a running X server. + (system "Xvfb :1 &") + (setenv "DISPLAY" ":1") + #t)) (add-after 'install 'wrap-totem (lambda* (#:key inputs outputs #:allow-other-keys) diff --git a/gnu/packages/patches/totem-meson-compat.patch b/gnu/packages/patches/totem-meson-compat.patch deleted file mode 100644 index 8557908dd0..0000000000 --- a/gnu/packages/patches/totem-meson-compat.patch +++ /dev/null @@ -1,14 +0,0 @@ -Fix an error that occurs with Meson 0.50.0 and later: -"ERROR: Subdir keyword must not be an absolute path". - ---- a/src/meson.build 2019-03-15 00:10:26.882293850 +0100 -+++ b/src/meson.build 2019-03-15 00:10:54.312197229 +0100 -@@ -82,7 +82,7 @@ - - install_headers( - headers, -- subdir: join_paths(totem_includedir, totem_api_path) -+ install_dir: join_paths(totem_includedir, totem_api_path) - ) - - libtotem_player_sources = files( diff --git a/gnu/packages/patches/totem-meson-easy-codec.patch b/gnu/packages/patches/totem-meson-easy-codec.patch deleted file mode 100644 index b97d555c1a..0000000000 --- a/gnu/packages/patches/totem-meson-easy-codec.patch +++ /dev/null @@ -1,65 +0,0 @@ -Fix a bug whereby the 'have_easy_codec' would be left undefined -when passing '-D enable-easy-codec-installation=no'. Likewise, -don't rely on GStreamer's plug-in support when it's disabled. - ---- totem-3.26.0/meson.build 2017-10-11 22:29:44.506280919 +0200 -+++ totem-3.26.0/meson.build 2017-10-11 22:29:50.902252058 +0200 -@@ -203,6 +203,8 @@ if easy_codec_option != 'no' - missing_plugins_deps += gst_pbutils_dep - config_h.set('ENABLE_MISSING_PLUGIN_INSTALLATION', have_easy_codec, - description: 'Whether we can and want to do installation of missing plugins') -+else -+ have_easy_codec = false - endif - - # python support - ---- totem-3.26.0/src/backend/bacon-video-widget.c 2017-10-11 22:40:52.531217356 +0200 -+++ totem-3.26.0/src/backend/bacon-video-widget.c 2017-10-11 22:45:44.973847231 +0200 -@@ -341,6 +341,22 @@ get_type_name (GType class_type, int typ - return value->value_nick; - } - -+#ifndef ENABLE_MISSING_PLUGIN_INSTALLATION -+ -+gchar * -+gst_missing_plugin_message_get_installer_detail (GstMessage *message) -+{ -+ return NULL; -+} -+ -+char * -+gst_missing_plugin_message_get_description (GstMessage *message) -+{ -+ return NULL; -+} -+ -+#endif -+ - static gchar ** - bvw_get_missing_plugins_foo (const GList * missing_plugins, MsgToStrFunc func) - { -@@ -1654,10 +1670,12 @@ bvw_handle_element_message (BaconVideoWi - } - } - goto done; -+#ifdef ENABLE_MISSING_PLUGIN_INSTALLATION - } else if (gst_is_missing_plugin_message (msg)) { - bvw->priv->missing_plugins = - g_list_prepend (bvw->priv->missing_plugins, gst_message_ref (msg)); - goto done; -+#endif - } else if (strcmp (type_name, "not-mounted") == 0) { - const GValue *val; - GFile *file; -@@ -6109,7 +6127,9 @@ bacon_video_widget_initable_init (GInita - GST_DEBUG ("Initialised %s", version_str); - g_free (version_str); - -+#ifdef ENABLE_MISSING_PLUGIN_INSTALLATION - gst_pb_utils_init (); -+#endif - - /* Instantiate all the fallible plugins */ - bvw->priv->play = element_make_or_warn ("playbin", "play"); - -- cgit v1.2.3 From 05b29d84949acb6b7ce7524e06c5114834053b40 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Thu, 25 Jul 2019 07:55:07 -0400 Subject: gnu: python-pyatspi: Update to 2.32.1. * gnu/packages/gnome.scm (python-pyatspi): Update to 2.32.1. [source]: Remove patch. * gnu/packages/patches/python-pyatspi-python-37.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/gnome.scm | 6 +- .../patches/python-pyatspi-python-37.patch | 82 ---------------------- 3 files changed, 2 insertions(+), 87 deletions(-) delete mode 100644 gnu/packages/patches/python-pyatspi-python-37.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 7744566996..b2938e878b 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1296,7 +1296,6 @@ dist_patch_DATA = \ %D%/packages/patches/python-mox3-python3.6-compat.patch \ %D%/packages/patches/python-testtools.patch \ %D%/packages/patches/python-paste-remove-timing-test.patch \ - %D%/packages/patches/python-pyatspi-python-37.patch \ %D%/packages/patches/python-pycrypto-CVE-2013-7459.patch \ %D%/packages/patches/python2-pygobject-2-gi-info-type-error-domain.patch \ %D%/packages/patches/python-pygpgme-fix-pinentry-tests.patch \ diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 504bc346e1..c25e1a4560 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -7944,7 +7944,7 @@ kill/reinice processes.") (define-public python-pyatspi (package (name "python-pyatspi") - (version "2.26.0") + (version "2.32.1") (source (origin (method url-fetch) (uri (string-append @@ -7953,9 +7953,7 @@ kill/reinice processes.") "/pyatspi-" version ".tar.xz")) (sha256 (base32 - "0xdnix7gxzgf75xy9ris4dd6b05mqwicw190b98xqmypydyf95n6")) - ;; Patch from upstream, fixed in newer versions. - (patches (search-patches "python-pyatspi-python-37.patch")))) + "1283cbwd2kacgdij96xk26721f6amyzdhy2py11kdj5cprdlm5c4")))) (build-system gnu-build-system) (arguments `(#:phases diff --git a/gnu/packages/patches/python-pyatspi-python-37.patch b/gnu/packages/patches/python-pyatspi-python-37.patch deleted file mode 100644 index caa6aea39e..0000000000 --- a/gnu/packages/patches/python-pyatspi-python-37.patch +++ /dev/null @@ -1,82 +0,0 @@ -From 29a7b929f7f1160b643dc5f5911533887173fcff Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= -Date: Thu, 28 Jun 2018 17:10:33 +0200 -Subject: [PATCH] Rename async to asynchronous, keep backwards comaptibility - -async is a keyword in Python 3.7 and keeping it results in SyntaxError. - -Fixes https://gitlab.gnome.org/GNOME/pyatspi2/issues/1 ---- - pyatspi/registry.py | 35 +++++++++++++++++++++++++++-------- - 1 file changed, 27 insertions(+), 8 deletions(-) - -diff --git a/pyatspi/registry.py b/pyatspi/registry.py -index cb28395..f73ee16 100644 ---- a/pyatspi/registry.py -+++ b/pyatspi/registry.py -@@ -50,9 +50,9 @@ class Registry(object): - reference to the Accessibility.Registry singleton. Doing so is harmless and - has no point. - -- @@ivar async: Should event dispatch to local listeners be decoupled from event -- receiving from the registry? -- @@type async: boolean -+ @@ivar asynchronous: Should event dispatch to local listeners be decoupled -+ from event receiving from the registry? -+ @@type asynchronous: boolean - @@ivar reg: Reference to the real, wrapped registry object - @@type reg: Accessibility.Registry - @@ivar dev: Reference to the device controller -@@ -111,25 +111,44 @@ class Registry(object): - - self.has_implementations = True - -- self.async = False # not fully supported yet -+ self.asynchronous = False # not fully supported yet - self.started = False - self.event_listeners = dict() - -+ def __getattr__(self, name): -+ """ -+ For backwards compatibility with old API -+ """ -+ if name == 'async': -+ return self.asynchronous -+ return object.__getattr__(self, name) -+ -+ def __setattr__(self, name, value): -+ """ -+ For backwards compatibility with old API -+ """ -+ if name == 'async': -+ self.asynchronous = value -+ object.__setattr__(self, name, value) -+ - def _set_default_registry (self): - self._set_registry (MAIN_LOOP_GLIB) - -- def start(self, async=False, gil=True): -+ def start(self, asynchronous=False, gil=True, **kwargs): - """ - Enter the main loop to start receiving and dispatching events. - -- @@param async: Should event dispatch be asynchronous (decoupled) from -- event receiving from the AT-SPI registry? -- @@type async: boolean -+ @@param asynchronous: Should event dispatch be asynchronous -+ (decoupled) from event receiving from the AT-SPI registry? -+ @@type asynchronous: boolean - @@param gil: Add an idle callback which releases the Python GIL for a few - milliseconds to allow other threads to run? Necessary if other threads - will be used in this process. - @@type gil: boolean - """ -+ if 'async' in kwargs: -+ # support previous API -+ asynchronous = kwargs['async'] - if not self.has_implementations: - self._set_default_registry () - self.started = True --- -2.22.0 - -- cgit v1.2.3 From 327bfe8db93d348e95e4d722e4fd2e8d61e104d5 Mon Sep 17 00:00:00 2001 From: Andrew Miloradovsky Date: Thu, 28 Nov 2019 11:06:29 +0300 Subject: gnu: glusterfs: Update to 7.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/file-systems.scm (glusterfs): Update to 7.0. [source]: Update URL. [arguments]: Add "PYTHON=" and"--enable-cmocka" configure flags. Remove 'replace-config.sub and 'fix-lex phases. Add 'autogen. [native-inputs]: Add libtirpc, rpcsvc-proto, autoconf, automake, and libtool. [inputs]: Add fuse, libaio, and rdma-core. Remove lvm2 and sqlite. * gnu/packages/patches/glusterfs-use-PATH-instead-of-hardcodes.patch: Remove. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. Co-authored-by: Ludovic Courtès --- gnu/local.mk | 1 - gnu/packages/file-systems.scm | 64 +++++----- .../glusterfs-use-PATH-instead-of-hardcodes.patch | 140 --------------------- 3 files changed, 29 insertions(+), 176 deletions(-) delete mode 100644 gnu/packages/patches/glusterfs-use-PATH-instead-of-hardcodes.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index b2938e878b..1c7386a95a 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -924,7 +924,6 @@ dist_patch_DATA = \ %D%/packages/patches/glibc-2.28-supported-locales.patch \ %D%/packages/patches/glibc-supported-locales.patch \ %D%/packages/patches/glm-restore-install-target.patch \ - %D%/packages/patches/glusterfs-use-PATH-instead-of-hardcodes.patch \ %D%/packages/patches/gmp-arm-asm-nothumb.patch \ %D%/packages/patches/gmp-faulty-test.patch \ %D%/packages/patches/gnome-shell-theme.patch \ diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm index 85bfd8dd38..1594cac846 100644 --- a/gnu/packages/file-systems.scm +++ b/gnu/packages/file-systems.scm @@ -41,6 +41,7 @@ #:use-module (gnu packages flex) #:use-module (gnu packages glib) #:use-module (gnu packages linux) + #:use-module (gnu packages onc-rpc) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages readline) @@ -146,63 +147,56 @@ non-determinism in the build process.") (define-public glusterfs (package (name "glusterfs") - (version "3.10.12") + (version "7.0") (source (origin (method url-fetch) (uri (string-append "https://download.gluster.org/pub/gluster/glusterfs/" - (version-major+minor version) "/" version - "/glusterfs-" version ".tar.gz")) + (version-major version) "/" + (version-major+minor version) "/" + "glusterfs-" version ".tar.gz")) (sha256 (base32 - "01ysvamvfv2l5pswa1rygpg8w0954h2wkh1ba97h3nx03m5n0prg")) - (patches - (search-patches "glusterfs-use-PATH-instead-of-hardcodes.patch")))) + "0yzhx710ypj0j3m5dcgmmgvkp7p0rmmp2p7ld0axrm4vpwc2b1wa")))) (build-system gnu-build-system) (arguments `(#:configure-flags - (let ((out (assoc-ref %outputs "out"))) - (list (string-append "--with-initdir=" out "/etc/init.d") - (string-append "--with-mountutildir=" out "/sbin"))) + (let ((out (assoc-ref %outputs "out")) + (p2 (assoc-ref %build-inputs "python-2"))) + (list (string-append "PYTHON=" p2 "/bin/python") + (string-append "--with-initdir=" out "/etc/init.d") + (string-append "--with-mountutildir=" out "/sbin") + "--enable-cmocka" ; unit tests + ;; "--enable-debug" ; debug build options + ;; "--enable-asan" ; Address Sanitizer + ;; "--enable-tsan" ; ThreadSanitizer + )) #:phases (modify-phases %standard-phases - (add-before 'configure 'replace-config.sub - (lambda* (#:key inputs #:allow-other-keys) - ;; The distributed config.sub is intentionally left empty and - ;; must be replaced. - (install-file (string-append (assoc-ref inputs "automake") - "/share/automake-" - ,(version-major+minor (package-version automake)) "/config.sub") - ".") - #t)) - ;; Fix flex error. This has already been fixed with upstream commit - ;; db3fe245a9e8812829eae7d143e49d0bfdfef9a7, but is not available in - ;; current releases. - (add-before 'configure 'fix-lex - (lambda _ - (substitute* "libglusterfs/src/Makefile.in" - (("libglusterfs_la_LIBADD = @LEXLIB@") - "libglusterfs_la_LIBADD =")) - #t))))) + (add-before 'configure 'autogen + (lambda _ (invoke "./autogen.sh")))))) (native-inputs - `(("cmocka" ,cmocka) - ("pkg-config" ,pkg-config) + `(("pkg-config" ,pkg-config) + ("libtirpc", libtirpc) + ("rpcsvc-proto", rpcsvc-proto) ("python-2" ,python-2) ; must be version 2 ("flex" ,flex) ("bison" ,bison) - ("automake" ,automake))) + ("libtool" ,libtool) + ("autoconf" ,autoconf) + ("automake" ,automake) + ("cmocka" ,cmocka))) (inputs `(("acl" ,acl) - ;; GlusterFS fails to build with libressl because HMAC_CTX_new and - ;; HMAC_CTX_free are undefined. + ("fuse", fuse) ("openssl" ,openssl) ("liburcu" ,liburcu) ("libuuid" ,util-linux) ("libxml2" ,libxml2) - ("lvm2" ,lvm2) ("readline" ,readline) - ("sqlite" ,sqlite) ; for tiering - ("zlib" ,zlib))) + ("zlib" ,zlib) + ("libaio", libaio) + ("rdma-core", rdma-core))) (home-page "https://www.gluster.org") (synopsis "Distributed file system") (description "GlusterFS is a distributed scalable network file system diff --git a/gnu/packages/patches/glusterfs-use-PATH-instead-of-hardcodes.patch b/gnu/packages/patches/glusterfs-use-PATH-instead-of-hardcodes.patch deleted file mode 100644 index d05b4351b3..0000000000 --- a/gnu/packages/patches/glusterfs-use-PATH-instead-of-hardcodes.patch +++ /dev/null @@ -1,140 +0,0 @@ -This patch was taken from Nixpkgs. - -From 616381bc25b0e90198683fb049f994e82d467d96 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= -Date: Sat, 13 May 2017 02:45:49 +0200 -Subject: [PATCH] Don't use hardcoded /sbin, /usr/bin etc. paths. Fixes - #1450546. - -Instead, rely on programs to be in PATH, as gluster already -does in many places across its code base. - -Change-Id: Id21152fe42f5b67205d8f1571b0656c4d5f74246 ---- - contrib/fuse-lib/mount-common.c | 8 ++++---- - xlators/mgmt/glusterd/src/glusterd-ganesha.c | 6 +++--- - xlators/mgmt/glusterd/src/glusterd-quota.c | 6 +++--- - xlators/mgmt/glusterd/src/glusterd-snapshot.c | 4 ++-- - xlators/mgmt/glusterd/src/glusterd-utils.c | 14 +------------- - 5 files changed, 13 insertions(+), 25 deletions(-) - -diff --git a/contrib/fuse-lib/mount-common.c b/contrib/fuse-lib/mount-common.c -index e9f80fe81..6380dd867 100644 ---- a/contrib/fuse-lib/mount-common.c -+++ b/contrib/fuse-lib/mount-common.c -@@ -255,16 +255,16 @@ fuse_mnt_umount (const char *progname, const char *abs_mnt, - exit (1); - } - #ifdef GF_LINUX_HOST_OS -- execl ("/bin/umount", "/bin/umount", "-i", rel_mnt, -+ execl ("umount", "umount", "-i", rel_mnt, - lazy ? "-l" : NULL, NULL); -- GFFUSE_LOGERR ("%s: failed to execute /bin/umount: %s", -+ GFFUSE_LOGERR ("%s: failed to execute umount: %s", - progname, strerror (errno)); - #elif __NetBSD__ - /* exitting the filesystem causes the umount */ - exit (0); - #else -- execl ("/sbin/umount", "/sbin/umount", "-f", rel_mnt, NULL); -- GFFUSE_LOGERR ("%s: failed to execute /sbin/umount: %s", -+ execl ("umount", "umount", "-f", rel_mnt, NULL); -+ GFFUSE_LOGERR ("%s: failed to execute umount: %s", - progname, strerror (errno)); - #endif /* GF_LINUX_HOST_OS */ - exit (1); -diff --git a/xlators/mgmt/glusterd/src/glusterd-quota.c b/xlators/mgmt/glusterd/src/glusterd-quota.c -index 0e6629cf0..fcb4738b7 100644 ---- a/xlators/mgmt/glusterd/src/glusterd-quota.c -+++ b/xlators/mgmt/glusterd/src/glusterd-quota.c -@@ -30,7 +30,7 @@ - - #ifndef _PATH_SETFATTR - # ifdef GF_LINUX_HOST_OS --# define _PATH_SETFATTR "/usr/bin/setfattr" -+# define _PATH_SETFATTR "setfattr" - # endif - # ifdef __NetBSD__ - # define _PATH_SETFATTR "/usr/pkg/bin/setfattr" -@@ -335,7 +335,7 @@ _glusterd_quota_initiate_fs_crawl (glusterd_conf_t *priv, - - if (type == GF_QUOTA_OPTION_TYPE_ENABLE || - type == GF_QUOTA_OPTION_TYPE_ENABLE_OBJECTS) -- runner_add_args (&runner, "/usr/bin/find", ".", NULL); -+ runner_add_args (&runner, "find", ".", NULL); - - else if (type == GF_QUOTA_OPTION_TYPE_DISABLE) { - -@@ -351,7 +351,7 @@ _glusterd_quota_initiate_fs_crawl (glusterd_conf_t *priv, - VIRTUAL_QUOTA_XATTR_CLEANUP_KEY, "1", - "{}", "\\", ";", NULL); - #else -- runner_add_args (&runner, "/usr/bin/find", ".", -+ runner_add_args (&runner, "find", ".", - "-exec", _PATH_SETFATTR, "-n", - VIRTUAL_QUOTA_XATTR_CLEANUP_KEY, "-v", - "1", "{}", "\\", ";", NULL); -diff --git a/xlators/mgmt/glusterd/src/glusterd-snapshot.c b/xlators/mgmt/glusterd/src/glusterd-snapshot.c -index da0152366..f0d135350 100644 ---- a/xlators/mgmt/glusterd/src/glusterd-snapshot.c -+++ b/xlators/mgmt/glusterd/src/glusterd-snapshot.c -@@ -121,7 +121,7 @@ glusterd_build_snap_device_path (char *device, char *snapname, - } - - runinit (&runner); -- runner_add_args (&runner, "/sbin/lvs", "--noheadings", "-o", "vg_name", -+ runner_add_args (&runner, "lvs", "--noheadings", "-o", "vg_name", - device, NULL); - runner_redir (&runner, STDOUT_FILENO, RUN_PIPE); - snprintf (msg, sizeof (msg), "Get volume group for device %s", device); -@@ -1982,7 +1982,7 @@ glusterd_is_thinp_brick (char *device, uint32_t *op_errno) - - runinit (&runner); - -- runner_add_args (&runner, "/sbin/lvs", "--noheadings", "-o", "pool_lv", -+ runner_add_args (&runner, "lvs", "--noheadings", "-o", "pool_lv", - device, NULL); - runner_redir (&runner, STDOUT_FILENO, RUN_PIPE); - runner_log (&runner, this->name, GF_LOG_DEBUG, msg); -diff --git a/xlators/mgmt/glusterd/src/glusterd-utils.c b/xlators/mgmt/glusterd/src/glusterd-utils.c -index 51db13df0..6fa7b92f9 100644 ---- a/xlators/mgmt/glusterd/src/glusterd-utils.c -+++ b/xlators/mgmt/glusterd/src/glusterd-utils.c -@@ -6027,7 +6027,6 @@ static struct fs_info { - char *fs_tool_pattern; - char *fs_tool_pkg; - } glusterd_fs[] = { -- /* some linux have these in /usr/sbin/and others in /sbin/? */ - { "xfs", "xfs_info", NULL, "isize=", "xfsprogs" }, - { "ext3", "tune2fs", "-l", "Inode size:", "e2fsprogs" }, - { "ext4", "tune2fs", "-l", "Inode size:", "e2fsprogs" }, -@@ -6048,7 +6047,6 @@ glusterd_add_inode_size_to_dict (dict_t *dict, int count) - char *trail = NULL; - runner_t runner = {0, }; - struct fs_info *fs = NULL; -- char fs_tool_name[256] = {0, }; - static dict_t *cached_fs = NULL; - - memset (key, 0, sizeof (key)); -@@ -6085,17 +6083,7 @@ glusterd_add_inode_size_to_dict (dict_t *dict, int count) - cur_word = "N/A"; - goto cached; - } -- -- snprintf (fs_tool_name, sizeof (fs_tool_name), -- "/usr/sbin/%s", fs->fs_tool_name); -- if (sys_access (fs_tool_name, R_OK|X_OK) == 0) -- runner_add_arg (&runner, fs_tool_name); -- else { -- snprintf (fs_tool_name, sizeof (fs_tool_name), -- "/sbin/%s", fs->fs_tool_name); -- if (sys_access (fs_tool_name, R_OK|X_OK) == 0) -- runner_add_arg (&runner, fs_tool_name); -- } -+ runner_add_arg (&runner, fs->fs_tool_name); - break; - } - } --- -2.12.0 - -- cgit v1.2.3 From 7fa83fa86031aa7dff759bc8025edc7057508ace Mon Sep 17 00:00:00 2001 From: Björn Höfling Date: Sat, 7 Dec 2019 23:36:49 +0100 Subject: gnu: ruby-safe-yaml: Update to 1.0.5. * gnu/packages/ruby.scm(ruby-save-yaml): Update to 1.0.5. * gnu/packages/patches/ruby-safe-yaml-add-require-time.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - .../patches/ruby-safe-yaml-add-require-time.patch | 19 ------------------- gnu/packages/ruby.scm | 7 ++----- 3 files changed, 2 insertions(+), 25 deletions(-) delete mode 100644 gnu/packages/patches/ruby-safe-yaml-add-require-time.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 1c7386a95a..fbfbc567a3 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1331,7 +1331,6 @@ dist_patch_DATA = \ %D%/packages/patches/retroarch-disable-online-updater.patch \ %D%/packages/patches/ruby-rubygems-276-for-ruby24.patch \ %D%/packages/patches/ruby-rack-ignore-failing-test.patch \ - %D%/packages/patches/ruby-safe-yaml-add-require-time.patch \ %D%/packages/patches/ruby-tzinfo-data-ignore-broken-test.patch\ %D%/packages/patches/runc-CVE-2019-5736.patch \ %D%/packages/patches/rust-1.19-mrustc.patch \ diff --git a/gnu/packages/patches/ruby-safe-yaml-add-require-time.patch b/gnu/packages/patches/ruby-safe-yaml-add-require-time.patch deleted file mode 100644 index 92e5505985..0000000000 --- a/gnu/packages/patches/ruby-safe-yaml-add-require-time.patch +++ /dev/null @@ -1,19 +0,0 @@ -From 9dd1e8d9ad0396a8c9092c2e9f17d498c58e0208 Mon Sep 17 00:00:00 2001 -From: elifoster -Date: Tue, 5 Dec 2017 14:30:13 -0800 -Subject: [PATCH] Fix uninitialized constant DateTime Close #80 - ---- - lib/safe_yaml/parse/date.rb | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/lib/safe_yaml/parse/date.rb b/lib/safe_yaml/parse/date.rb -index cd3c62a..3a30a8b 100644 ---- a/lib/safe_yaml/parse/date.rb -+++ b/lib/safe_yaml/parse/date.rb -@@ -1,3 +1,5 @@ -+require 'time' -+ - module SafeYAML - class Parse - class Date diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 84ca199b07..dc1ccf9993 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -8284,10 +8284,9 @@ indentation will probably be an issue and hence this gem.") (define-public ruby-safe-yaml (package (name "ruby-safe-yaml") - (version "1.0.4") + (version "1.0.5") (source (origin - ;; TODO Fetch from the git repository so a patch can be applied (method git-fetch) (uri (git-reference (url "https://github.com/dtao/safe_yaml.git") @@ -8295,9 +8294,7 @@ indentation will probably be an issue and hence this gem.") (file-name (git-file-name name version)) (sha256 (base32 - "1wnln8xdy8g6kwdj4amm8773xwffqxpf2sxslk6jjh2wxsy1lrig")) - (patches - (search-patches "ruby-safe-yaml-add-require-time.patch")))) + "1a0wh7y3va2m7bjza95na2snw0vrdh9syz40mpjvjphbc4ph3pzg")))) (build-system ruby-build-system) (native-inputs `(("ruby-rspec" ,ruby-rspec) -- cgit v1.2.3 From 9beec2173f9243456b6aca470acd926d0dcf9b45 Mon Sep 17 00:00:00 2001 From: Evan Straw Date: Thu, 5 Dec 2019 11:33:37 -0800 Subject: gnu: stumpwm: Remove obsolete patch. * gnu/local.mk (stumpwm-fix-broken-read-one-line.patch): Remove obsolete. Co-authored-by: Brett Gilio Signed-off-by: Brett Gilio --- gnu/local.mk | 3 +- .../patches/stumpwm-fix-broken-read-one-line.patch | 45 ---------------------- 2 files changed, 2 insertions(+), 46 deletions(-) delete mode 100644 gnu/packages/patches/stumpwm-fix-broken-read-one-line.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index fbfbc567a3..ddeec4fea2 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -23,6 +23,8 @@ # Copyright © 2019 Guillaume Le Vaillant # Copyright © 2019 John Soo # Copyright © 2019 Jonathan Brielmaier +# Copyright © 2019 Evan Straw +# Copyright © 2019 Brett Gilio # # This file is part of GNU Guix. # @@ -1361,7 +1363,6 @@ dist_patch_DATA = \ %D%/packages/patches/soundconverter-remove-gconf-dependency.patch \ %D%/packages/patches/steghide-fixes.patch \ %D%/packages/patches/streamlink-update-test.patch \ - %D%/packages/patches/stumpwm-fix-broken-read-one-line.patch \ %D%/packages/patches/supercollider-boost-1.70-build-fix.patch \ %D%/packages/patches/superlu-dist-awpm-grid.patch \ %D%/packages/patches/superlu-dist-fix-mpi-deprecations.patch \ diff --git a/gnu/packages/patches/stumpwm-fix-broken-read-one-line.patch b/gnu/packages/patches/stumpwm-fix-broken-read-one-line.patch deleted file mode 100644 index f8dac61307..0000000000 --- a/gnu/packages/patches/stumpwm-fix-broken-read-one-line.patch +++ /dev/null @@ -1,45 +0,0 @@ -From a13db62a4da06426cf2eb2376d1a3723b5ee52d5 Mon Sep 17 00:00:00 2001 -From: Vasily Postnicov -Date: Fri, 14 Dec 2018 20:01:53 +0300 -Subject: [PATCH] READ-ONE-LINE: Turn COMPLETIONS into a keyword argument - -This keeps READ-ONE-line backwards compatible to changes prior -dae0422811771d179077b9336618f2b19be85b7b. Currently both -ARGUMENT-POP-OR-READ and ARGUMENT-POP-REST-OR-READ are still being -called with the previous lambda list. Update the calls to the -READ-ONE-LINE that used the 'new' lambda list, COMPLETING-READ and -YES-OR-NO-P. - -Closes #538 ---- - input.lisp | 8 ++++++-- - 1 file changed, 6 insertions(+), 2 deletions(-) - -diff --git a/input.lisp b/input.lisp -index b698a368..7904b35f 100644 ---- a/input.lisp -+++ b/input.lisp -@@ -307,10 +307,13 @@ passed the substring to complete on and is expected to return a list - of matches. If require-match argument is non-nil then the input must - match with an element of the completions." - (check-type completions (or list function symbol)) -- (let ((line (read-one-line screen prompt completions :initial-input initial-input :require-match require-match))) -+ (let ((line (read-one-line screen prompt -+ :completions completions -+ :initial-input initial-input -+ :require-match require-match))) - (when line (string-trim " " line)))) - --(defun read-one-line (screen prompt completions &key (initial-input "") require-match password) -+(defun read-one-line (screen prompt &key completions (initial-input "") require-match password) - "Read a line of input through stumpwm and return it. Returns nil if the user aborted." - (let ((*input-last-command* nil) - (*input-completions* completions) -@@ -842,6 +845,7 @@ user presses 'y'" - user presses 'yes'" - (loop for line = (read-one-line (current-screen) - (format nil "~a(yes or no) " message) -+ :completions - '("yes" "no")) - until (find line '("yes" "no") :test 'string-equal) - do (message "Please answer yes or no") -- cgit v1.2.3 From 4427417bd74c369162aff3ca51b37bc6313a6438 Mon Sep 17 00:00:00 2001 From: Guillaume Le Vaillant Date: Tue, 3 Dec 2019 18:58:19 +0100 Subject: gnu: websocketpp: Add patch for Boost >= 1.70. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/patches/websocket-fix-for-boost-1.70.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/web.scm (websocketpp): Use it. Signed-off-by: Ludovic Courtès --- gnu/local.mk | 1 + .../patches/websocketpp-fix-for-boost-1.70.patch | 103 +++++++++++++++++++++ gnu/packages/web.scm | 3 +- 3 files changed, 106 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/websocketpp-fix-for-boost-1.70.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index ddeec4fea2..f1223e2d70 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1442,6 +1442,7 @@ dist_patch_DATA = \ %D%/packages/patches/wavpack-CVE-2018-7253.patch \ %D%/packages/patches/wavpack-CVE-2018-7254.patch \ %D%/packages/patches/weasyprint-library-paths.patch \ + %D%/packages/patches/websocketpp-fix-for-boost-1.70.patch \ %D%/packages/patches/wicd-bitrate-none-fix.patch \ %D%/packages/patches/wicd-get-selected-profile-fix.patch \ %D%/packages/patches/wicd-urwid-1.3.patch \ diff --git a/gnu/packages/patches/websocketpp-fix-for-boost-1.70.patch b/gnu/packages/patches/websocketpp-fix-for-boost-1.70.patch new file mode 100644 index 0000000000..ece414a1cb --- /dev/null +++ b/gnu/packages/patches/websocketpp-fix-for-boost-1.70.patch @@ -0,0 +1,103 @@ +This patch for Boost >= 1.70 was made by merging two patches that +are in the 'develop' branch (c769c92 and f810ca2). + +diff -u b/websocketpp/transport/asio/connection.hpp b/websocketpp/transport/asio/connection.hpp +--- b/websocketpp/transport/asio/connection.hpp ++++ b/websocketpp/transport/asio/connection.hpp +@@ -311,9 +311,10 @@ + * needed. + */ + timer_ptr set_timer(long duration, timer_handler callback) { +- timer_ptr new_timer = lib::make_shared( +- lib::ref(*m_io_service), +- lib::asio::milliseconds(duration) ++ timer_ptr new_timer( ++ new lib::asio::steady_timer( ++ *m_io_service, ++ lib::asio::milliseconds(duration)) + ); + + if (config::enable_multithreading) { +@@ -461,8 +462,7 @@ + m_io_service = io_service; + + if (config::enable_multithreading) { +- m_strand = lib::make_shared( +- lib::ref(*io_service)); ++ m_strand.reset(new lib::asio::io_service::strand(*io_service)); + } + + lib::error_code ec = socket_con_type::init_asio(io_service, m_strand, +diff -u b/websocketpp/transport/asio/endpoint.hpp b/websocketpp/transport/asio/endpoint.hpp +--- b/websocketpp/transport/asio/endpoint.hpp ++++ b/websocketpp/transport/asio/endpoint.hpp +@@ -195,8 +195,7 @@ + + m_io_service = ptr; + m_external_io_service = true; +- m_acceptor = lib::make_shared( +- lib::ref(*m_io_service)); ++ m_acceptor.reset(new lib::asio::ip::tcp::acceptor(*m_io_service)); + + m_state = READY; + ec = lib::error_code(); +@@ -688,9 +687,7 @@ + * @since 0.3.0 + */ + void start_perpetual() { +- m_work = lib::make_shared( +- lib::ref(*m_io_service) +- ); ++ m_work.reset(new lib::asio::io_service::work(*m_io_service)); + } + + /// Clears the endpoint's perpetual flag, allowing it to exit when empty +@@ -854,8 +851,7 @@ + + // Create a resolver + if (!m_resolver) { +- m_resolver = lib::make_shared( +- lib::ref(*m_io_service)); ++ m_resolver.reset(new lib::asio::ip::tcp::resolver(*m_io_service)); + } + + tcon->set_uri(u); +unchanged: +--- a/websocketpp/transport/asio/security/none.hpp ++++ b/websocketpp/transport/asio/security/none.hpp +@@ -168,8 +168,7 @@ protected: + return socket::make_error_code(socket::error::invalid_state); + } + +- m_socket = lib::make_shared( +- lib::ref(*service)); ++ m_socket.reset(new lib::asio::ip::tcp::socket(*service)); + + if (m_socket_init_handler) { + m_socket_init_handler(m_hdl, *m_socket); +unchanged: +--- a/websocketpp/transport/asio/security/tls.hpp ++++ b/websocketpp/transport/asio/security/tls.hpp +@@ -193,8 +193,7 @@ protected: + if (!m_context) { + return socket::make_error_code(socket::error::invalid_tls_context); + } +- m_socket = lib::make_shared( +- _WEBSOCKETPP_REF(*service),lib::ref(*m_context)); ++ m_socket.reset(new socket_type(*service, *m_context)); + + if (m_socket_init_handler) { + m_socket_init_handler(m_hdl, get_socket()); +only in patch2: +unchanged: +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -202,7 +202,7 @@ if (BUILD_TESTS OR BUILD_EXAMPLES) + endif () + + if (NOT Boost_USE_STATIC_LIBS) +- add_definitions (/DBOOST_TEST_DYN_LINK) ++ add_definitions (-DBOOST_TEST_DYN_LINK) + endif () + + set (Boost_FIND_REQUIRED TRUE) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 4c96422432..1fbd3dcb7a 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -1073,7 +1073,8 @@ other systems that want to manipulate WebAssembly files.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "12ffczcrryh74c1xssww35ic6yiy2l2xgdd30lshiq9wnzl2brgy")))) + (base32 "12ffczcrryh74c1xssww35ic6yiy2l2xgdd30lshiq9wnzl2brgy")) + (patches (search-patches "websocketpp-fix-for-boost-1.70.patch")))) (build-system cmake-build-system) (inputs `(("boost" ,boost) ("openssl" ,openssl))) -- cgit v1.2.3 From 4bd6f1d1d65b90ca90c3305404d820c5f4ca4427 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Mon, 9 Dec 2019 17:17:07 +0100 Subject: gnu: guile: Add 2.2.6-1 with a finalization crash bug-fix. * gnu/packages/patches/guile-finalization-crash.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/guile.scm (guile-2.2/bug-fix): New variable. --- gnu/local.mk | 1 + gnu/packages/guile.scm | 12 +++++ .../patches/guile-finalization-crash.patch | 61 ++++++++++++++++++++++ 3 files changed, 74 insertions(+) create mode 100644 gnu/packages/patches/guile-finalization-crash.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index f1223e2d70..0faa0ba07c 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -948,6 +948,7 @@ dist_patch_DATA = \ %D%/packages/patches/guile-2.2-skip-oom-test.patch \ %D%/packages/patches/guile-default-utf8.patch \ %D%/packages/patches/guile-gdbm-ffi-support-gdbm-1.14.patch \ + %D%/packages/patches/guile-finalization-crash.patch \ %D%/packages/patches/guile-linux-syscalls.patch \ %D%/packages/patches/guile-present-coding.patch \ %D%/packages/patches/guile-relocatable.patch \ diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 33968996e6..9df008c413 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -250,6 +250,18 @@ without requiring the source code to be rewritten.") (variable "GUILE_LOAD_COMPILED_PATH") (files '("lib/guile/2.2/site-ccache"))))))) +(define-public guile-2.2/bug-fix + ;; This variant contains a bug fix for a relatively rare crash that could + ;; affect shepherd as PID 1: . + (package + (inherit guile-2.2) + (version (string-append (package-version guile-2.2) "-1")) + (source (origin + (inherit (package-source guile-2.2)) + (patches + (append (search-patches "guile-finalization-crash.patch") + (origin-patches (package-source guile-2.2)))))))) + (define-public guile-2.2/fixed ;; A package of Guile 2.2 that's rarely changed. It is the one used ;; in the `base' module, and thus changing it entails a full rebuild. diff --git a/gnu/packages/patches/guile-finalization-crash.patch b/gnu/packages/patches/guile-finalization-crash.patch new file mode 100644 index 0000000000..098249e49f --- /dev/null +++ b/gnu/packages/patches/guile-finalization-crash.patch @@ -0,0 +1,61 @@ +commit edf5aea7ac852db2356ef36cba4a119eb0c81ea9 +Author: Ludovic Courtès +Date: Mon Dec 9 14:44:59 2019 +0100 + + Fix non-deterministic crash in 'finalization_thread_proc'. + + Fixes . + Reported by Jesse Gibbons . + + * libguile/finalizers.c (finalization_thread_proc): Do not enter the + "switch (data.byte)" condition when data.n <= 0. + +diff --git a/libguile/finalizers.c b/libguile/finalizers.c +index c5d69e8e3..94a6e6b0a 100644 +--- a/libguile/finalizers.c ++++ b/libguile/finalizers.c +@@ -1,4 +1,4 @@ +-/* Copyright (C) 2012, 2013, 2014 Free Software Foundation, Inc. ++/* Copyright (C) 2012, 2013, 2014, 2019 Free Software Foundation, Inc. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public License +@@ -211,21 +211,26 @@ finalization_thread_proc (void *unused) + + scm_without_guile (read_finalization_pipe_data, &data); + +- if (data.n <= 0 && data.err != EINTR) ++ if (data.n <= 0) + { +- perror ("error in finalization thread"); +- return NULL; ++ if (data.err != EINTR) ++ { ++ perror ("error in finalization thread"); ++ return NULL; ++ } + } +- +- switch (data.byte) ++ else + { +- case 0: +- scm_run_finalizers (); +- break; +- case 1: +- return NULL; +- default: +- abort (); ++ switch (data.byte) ++ { ++ case 0: ++ scm_run_finalizers (); ++ break; ++ case 1: ++ return NULL; ++ default: ++ abort (); ++ } + } + } + } -- cgit v1.2.3 From 04b33ce205f38813b4dbd04b6ad3c7aa0be0b6f6 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Tue, 10 Dec 2019 18:20:51 -0500 Subject: gnu: nss: Fix CVE-2019-11745 via graft. * gnu/packages/patches/nss-CVE-2019-11745.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/nss.scm (nss/fixed): New variable. (nss)[replacement]: Add field. --- gnu/local.mk | 1 + gnu/packages/nss.scm | 9 +++++++++ gnu/packages/patches/nss-CVE-2019-11745.patch | 24 ++++++++++++++++++++++++ 3 files changed, 34 insertions(+) create mode 100644 gnu/packages/patches/nss-CVE-2019-11745.patch (limited to 'gnu/packages/patches') diff --git a/gnu/local.mk b/gnu/local.mk index 0faa0ba07c..00ff3b8d61 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1180,6 +1180,7 @@ dist_patch_DATA = \ %D%/packages/patches/ngircd-handle-zombies.patch \ %D%/packages/patches/nm-plugin-path.patch \ %D%/packages/patches/nsis-env-passthru.patch \ + %D%/packages/patches/nss-CVE-2019-11745.patch \ %D%/packages/patches/nss-freebl-stubs.patch \ %D%/packages/patches/nss-increase-test-timeout.patch \ %D%/packages/patches/nss-pkgconfig.patch \ diff --git a/gnu/packages/nss.scm b/gnu/packages/nss.scm index 65f95aaa8a..4f421f6e9d 100644 --- a/gnu/packages/nss.scm +++ b/gnu/packages/nss.scm @@ -71,6 +71,7 @@ in the Mozilla clients.") (package (name "nss") (version "3.46.1") + (replacement nss/fixed) (source (origin (method url-fetch) (uri (let ((version-with-underscores @@ -183,3 +184,11 @@ applications. Applications built with NSS can support SSL v2 and v3, TLS, PKCS #5, PKCS #7, PKCS #11, PKCS #12, S/MIME, X.509 v3 certificates, and other security standards.") (license license:mpl2.0))) + +(define nss/fixed + (package + (inherit nss) + (source (origin + (inherit (package-source nss)) + (patches (append (search-patches "nss-CVE-2019-11745.patch") + (origin-patches (package-source nss)))))))) diff --git a/gnu/packages/patches/nss-CVE-2019-11745.patch b/gnu/packages/patches/nss-CVE-2019-11745.patch new file mode 100644 index 0000000000..ae0eeda3c8 --- /dev/null +++ b/gnu/packages/patches/nss-CVE-2019-11745.patch @@ -0,0 +1,24 @@ +Fix CVE-2019-11745 (Out-of-bounds write when passing an output buffer smaller +than the block size to NSC_EncryptUpdate). + +Copied from Debian, equivalent to upstream fix: +. + +# HG changeset patch +# User Craig Disselkoen +# Date 1574189697 25200 +# Node ID 60bca7c6dc6dc44579b9b3e0fb62ca3b82d92eec +# Parent 64e55c9f658e2a75f0835d00a8a1cdc2f25c74d6 +Bug 1586176 - EncryptUpdate should use maxout not block size. r=franziskus + +--- a/nss/lib/softoken/pkcs11c.c ++++ b/nss/lib/softoken/pkcs11c.c +@@ -1285,7 +1285,7 @@ NSC_EncryptUpdate(CK_SESSION_HANDLE hSes + } + /* encrypt the current padded data */ + rv = (*context->update)(context->cipherInfo, pEncryptedPart, +- &padoutlen, context->blockSize, context->padBuf, ++ &padoutlen, maxout, context->padBuf, + context->blockSize); + if (rv != SECSuccess) { + return sftk_MapCryptError(PORT_GetError()); -- cgit v1.2.3