From 7a63acd7b04e439916cbf3b787d8a4f7e21d5158 Mon Sep 17 00:00:00 2001 From: Henri Rosten Date: Mon, 5 Jun 2023 09:59:12 +0300 Subject: [PATCH 01/13] openexr_2: fix CVE-2021-3933 Signed-off-by: Henri Rosten --- pkgs/development/libraries/openexr/default.nix | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkgs/development/libraries/openexr/default.nix b/pkgs/development/libraries/openexr/default.nix index ba0263bcad13..d51ee10e46bb 100644 --- a/pkgs/development/libraries/openexr/default.nix +++ b/pkgs/development/libraries/openexr/default.nix @@ -28,6 +28,13 @@ stdenv.mkDerivation rec { extraPrefix = "OpenEXR/IlmImf/"; sha256 = "1wa2jn6sa0n3phaqvklnlbgk1bz60y756ad4jk4d757pzpnannsy"; }) + (fetchpatch { + name = "CVE-2021-3933.patch"; + url = "https://github.com/AcademySoftwareFoundation/openexr/commit/5db6f7aee79e3e75e8c3780b18b28699614dd08e.patch"; + stripLen = 4; + extraPrefix = "OpenEXR/IlmImf/"; + sha256 = "sha256-DrpldpNgN5pWKzIuuPIrynGX3EpP8YhJlu+lLfNFGxQ="; + }) ]; cmakeFlags = lib.optional stdenv.hostPlatform.isStatic "-DCMAKE_SKIP_RPATH=ON"; From b2db72f97c1f15a0ebcc5b0ac7c9bff5e18afc39 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 May 2023 14:28:21 -0700 Subject: [PATCH 02/13] libwacom: 2.6.0 -> 2.7.0 Diff: https://github.com/linuxwacom/libwacom/compare/libwacom-2.6.0...libwacom-2.7.0 Changelog: https://github.com/linuxwacom/libwacom/blob/libwacom-2.7.0/NEWS (cherry picked from commit 5c5a50907112916cc1613af4cb4415718ddfca61) --- pkgs/development/libraries/libwacom/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libwacom/default.nix b/pkgs/development/libraries/libwacom/default.nix index f1f6762bab8c..c03dd99a125b 100644 --- a/pkgs/development/libraries/libwacom/default.nix +++ b/pkgs/development/libraries/libwacom/default.nix @@ -13,7 +13,7 @@ stdenv.mkDerivation rec { pname = "libwacom"; - version = "2.6.0"; + version = "2.7.0"; outputs = [ "out" "dev" ]; @@ -21,7 +21,7 @@ stdenv.mkDerivation rec { owner = "linuxwacom"; repo = "libwacom"; rev = "libwacom-${version}"; - sha256 = "sha256-9zqW6zPrFcxv/yAAtFgdVavKVMXeDBoMP3E/XriUcT0="; + sha256 = "sha256-NNfhZMshM5U/EfJHuNgkDe5NEkEGKtJ56vSpXyGf/xw="; }; postPatch = '' From cf84ce169feba0a01ce5645c934445a93f2f4e05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Thu, 18 May 2023 14:30:30 -0700 Subject: [PATCH 03/13] libwacom-surface: 2.6.0 -> 2.7.0 (cherry picked from commit 45ad7c046e3f91e1b758ef12d78112fb521d07d7) --- pkgs/development/libraries/libwacom/surface.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/libwacom/surface.nix b/pkgs/development/libraries/libwacom/surface.nix index 6168686cf50b..22707a375954 100644 --- a/pkgs/development/libraries/libwacom/surface.nix +++ b/pkgs/development/libraries/libwacom/surface.nix @@ -7,8 +7,8 @@ let libwacom-surface = fetchFromGitHub { owner = "linux-surface"; repo = "libwacom-surface"; - rev = "v2.6.0-1"; - hash = "sha256-4UOO9LMyCJd4LkqU0uva/0Xc44fIVdIQi27tJOtNEFk="; + rev = "v2.7.0-1"; + hash = "sha256-LgJ8YFQQN05kyd6kxBakIIiGgZ9icW27xKK3Dz6TwLs="; }; in libwacom.overrideAttrs (old: { pname = "libwacom-surface"; From fbc86c4f3ae4a482bb42a597c92c88ebcb6f2303 Mon Sep 17 00:00:00 2001 From: ajs124 Date: Tue, 6 Jun 2023 14:24:52 +0200 Subject: [PATCH 04/13] cacert: 3.89.1 -> 3.90 https://github.com/nss-dev/nss/blob/NSS_3_90_BRANCH/doc/rst/releases/nss_3_90.rst (cherry picked from commit 4fcb96e0f6032d317331f949fb2bf9e470b16a5a) --- pkgs/data/misc/cacert/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/data/misc/cacert/default.nix b/pkgs/data/misc/cacert/default.nix index baa714576b62..6fd4a6641cec 100644 --- a/pkgs/data/misc/cacert/default.nix +++ b/pkgs/data/misc/cacert/default.nix @@ -30,7 +30,7 @@ let ])); extraCertificatesBundle = writeText "cacert-extra-certificates-bundle.crt" (lib.concatStringsSep "\n\n" extraCertificateStrings); - srcVersion = "3.89.1"; + srcVersion = "3.90"; version = if nssOverride != null then nssOverride.version else srcVersion; meta = with lib; { homepage = "https://curl.haxx.se/docs/caextract.html"; @@ -45,7 +45,7 @@ let src = if nssOverride != null then nssOverride.src else fetchurl { url = "mirror://mozilla/security/nss/releases/NSS_${lib.replaceStrings ["."] ["_"] version}_RTM/src/nss-${version}.tar.gz"; - hash = "sha256-OtrtuecMPF9AYDv2CgHjNhkKbb4Bkp05XxawH+hKAVY="; + hash = "sha256-ms1lNMQdjq0Z/Kb8s//+0vnwnEN8PXn+5qTuZoqqk7Y="; }; dontBuild = true; From e7a2b354d124364d1cf5aed19347890c39c0fb7b Mon Sep 17 00:00:00 2001 From: zowoq <59103226+zowoq@users.noreply.github.com> Date: Wed, 7 Jun 2023 07:04:36 +1000 Subject: [PATCH 05/13] go_1_20: 1.20.4 -> 1.20.5 Changelog: https://go.dev/doc/devel/release#go1.20 (cherry picked from commit deb3d80ae0ccafe4f19d3edf32e2eb7fda283978) --- pkgs/development/compilers/go/1.20.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/compilers/go/1.20.nix b/pkgs/development/compilers/go/1.20.nix index ad5a5e5944a9..7eb40c23691e 100644 --- a/pkgs/development/compilers/go/1.20.nix +++ b/pkgs/development/compilers/go/1.20.nix @@ -46,11 +46,11 @@ let in stdenv.mkDerivation rec { pname = "go"; - version = "1.20.4"; + version = "1.20.5"; src = fetchurl { url = "https://go.dev/dl/go${version}.src.tar.gz"; - hash = "sha256-nzSs4Sh2S3o6SyOLgFhWzBshhDBN+eVpCCWwcQ9CAtY="; + hash = "sha256-mhXBM7os+v55ZS9IFbYufPwmf2jfG5RUxqsqPKi5aog="; }; strictDeps = true; From 0457b43b7e9f14651c8e7f7c466a424fa6931b31 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 7 Jun 2023 13:09:45 +0200 Subject: [PATCH 06/13] python310: 3.10.11 -> 3.10.12 https://docs.python.org/release/3.10.12/whatsnew/changelog.html Fixes: CVE-2023-24329 (cherry picked from commit f80d434d9478f201506fd61081ecd7154734b98f) --- pkgs/development/interpreters/python/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/python/default.nix b/pkgs/development/interpreters/python/default.nix index 510aacbdc33a..351888dc317e 100644 --- a/pkgs/development/interpreters/python/default.nix +++ b/pkgs/development/interpreters/python/default.nix @@ -121,10 +121,10 @@ sourceVersion = { major = "3"; minor = "10"; - patch = "11"; + patch = "12"; suffix = ""; }; - hash = "sha256-PDvDBIMDchyQSgPrgya2Mekh8RzDvimIRWpC8RXa8Ew="; + hash = "sha256-r7dL8ZEw56R9EDEsj154TyTgUnmB6raOIFRs+4ZYMLg="; }; python311 = { From e4f66c4b32c229b85396caf72e2172b344169c42 Mon Sep 17 00:00:00 2001 From: Martin Weinelt Date: Wed, 7 Jun 2023 14:40:30 +0200 Subject: [PATCH 07/13] python311: 3.11.3 -> 3.11.4 https://docs.python.org/release/3.11.4/whatsnew/changelog.html Fixes: CVE-2023-24329 (cherry picked from commit 342ba7d647dfffe82961da54830feef2a4c52441) --- pkgs/development/interpreters/python/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/interpreters/python/default.nix b/pkgs/development/interpreters/python/default.nix index 351888dc317e..b2629a3fa52f 100644 --- a/pkgs/development/interpreters/python/default.nix +++ b/pkgs/development/interpreters/python/default.nix @@ -131,10 +131,10 @@ sourceVersion = { major = "3"; minor = "11"; - patch = "3"; + patch = "4"; suffix = ""; }; - hash = "sha256-il25nJYafs8nx1lWGJyWAslodR8R2+riuQDb/xwIW14="; + hash = "sha256-Lw5AnfKrV6qfxMvd+5dq9E5OVb9vYZ7ua8XCKXJkp/Y="; }; }; From b4ed488852533b5513ff67235f8c6d5ad45a7e9d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Fri, 26 May 2023 12:55:25 +0200 Subject: [PATCH 08/13] gcc{6..11}: import a patch into nixpkgs fetchurl can't be used on generated patches this way. The hash doesn't match anymore. fetchpatch would be an alternative. (cherry picked from commit c98d687fd6e11132efa99780d4cbbe0e6a95446c) --- pkgs/development/compilers/gcc/10/default.nix | 6 +- pkgs/development/compilers/gcc/11/default.nix | 6 +- pkgs/development/compilers/gcc/6/default.nix | 6 +- pkgs/development/compilers/gcc/7/default.nix | 6 +- pkgs/development/compilers/gcc/8/default.nix | 6 +- pkgs/development/compilers/gcc/9/default.nix | 6 +- .../compilers/gcc/fix-bug-80431.patch | 92 +++++++++++++++++++ 7 files changed, 98 insertions(+), 30 deletions(-) create mode 100644 pkgs/development/compilers/gcc/fix-bug-80431.patch diff --git a/pkgs/development/compilers/gcc/10/default.nix b/pkgs/development/compilers/gcc/10/default.nix index 83a03cc56d6d..df1cbdf18983 100644 --- a/pkgs/development/compilers/gcc/10/default.nix +++ b/pkgs/development/compilers/gcc/10/default.nix @@ -53,11 +53,7 @@ let majorVersion = "10"; patches = [ # Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431 - (fetchurl { - name = "fix-bug-80431.patch"; - url = "https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=de31f5445b12fd9ab9969dc536d821fe6f0edad0"; - sha256 = "0sd52c898msqg7m316zp0ryyj7l326cjcn2y19dcxqp15r74qj0g"; - }) + ../fix-bug-80431.patch ../11/fix-struct-redefinition-on-glibc-2.36.patch ../install-info-files-serially.patch ] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch diff --git a/pkgs/development/compilers/gcc/11/default.nix b/pkgs/development/compilers/gcc/11/default.nix index 505b9abf06b0..8513f03d2da1 100644 --- a/pkgs/development/compilers/gcc/11/default.nix +++ b/pkgs/development/compilers/gcc/11/default.nix @@ -57,11 +57,7 @@ let majorVersion = "11"; patches = [ # Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431 - (fetchurl { - name = "fix-bug-80431.patch"; - url = "https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=de31f5445b12fd9ab9969dc536d821fe6f0edad0"; - sha256 = "0sd52c898msqg7m316zp0ryyj7l326cjcn2y19dcxqp15r74qj0g"; - }) + ../fix-bug-80431.patch ./fix-struct-redefinition-on-glibc-2.36.patch ../install-info-files-serially.patch ] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch diff --git a/pkgs/development/compilers/gcc/6/default.nix b/pkgs/development/compilers/gcc/6/default.nix index 82ca9fd967c0..965a987aab35 100644 --- a/pkgs/development/compilers/gcc/6/default.nix +++ b/pkgs/development/compilers/gcc/6/default.nix @@ -67,11 +67,7 @@ let majorVersion = "6"; ../use-source-date-epoch.patch ./0001-Fix-build-for-glibc-2.31.patch # Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431 - (fetchurl { - name = "fix-bug-80431.patch"; - url = "https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=de31f5445b12fd9ab9969dc536d821fe6f0edad0"; - sha256 = "0sd52c898msqg7m316zp0ryyj7l326cjcn2y19dcxqp15r74qj0g"; - }) + ../fix-bug-80431.patch ../install-info-files-serially.patch ] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch ++ optional noSysDirs ../no-sys-dirs.patch diff --git a/pkgs/development/compilers/gcc/7/default.nix b/pkgs/development/compilers/gcc/7/default.nix index 50039e4c0317..6ec689ab2524 100644 --- a/pkgs/development/compilers/gcc/7/default.nix +++ b/pkgs/development/compilers/gcc/7/default.nix @@ -58,11 +58,7 @@ let majorVersion = "7"; ./0001-Fix-build-for-glibc-2.31.patch # Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431 - (fetchurl { - name = "fix-bug-80431.patch"; - url = "https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=de31f5445b12fd9ab9969dc536d821fe6f0edad0"; - sha256 = "0sd52c898msqg7m316zp0ryyj7l326cjcn2y19dcxqp15r74qj0g"; - }) + ../fix-bug-80431.patch ../9/fix-struct-redefinition-on-glibc-2.36.patch ../install-info-files-serially.patch diff --git a/pkgs/development/compilers/gcc/8/default.nix b/pkgs/development/compilers/gcc/8/default.nix index 483cc31ea44c..1baed9137856 100644 --- a/pkgs/development/compilers/gcc/8/default.nix +++ b/pkgs/development/compilers/gcc/8/default.nix @@ -48,11 +48,7 @@ let majorVersion = "8"; patches = [ # Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431 - (fetchurl { - name = "fix-bug-80431.patch"; - url = "https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=de31f5445b12fd9ab9969dc536d821fe6f0edad0"; - sha256 = "0sd52c898msqg7m316zp0ryyj7l326cjcn2y19dcxqp15r74qj0g"; - }) + ../fix-bug-80431.patch ../9/fix-struct-redefinition-on-glibc-2.36.patch ../install-info-files-serially.patch ] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch diff --git a/pkgs/development/compilers/gcc/9/default.nix b/pkgs/development/compilers/gcc/9/default.nix index f541a83cdf46..aceb912d7a69 100644 --- a/pkgs/development/compilers/gcc/9/default.nix +++ b/pkgs/development/compilers/gcc/9/default.nix @@ -58,11 +58,7 @@ let majorVersion = "9"; patches = [ ./fix-struct-redefinition-on-glibc-2.36.patch # Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431 - (fetchurl { - name = "fix-bug-80431.patch"; - url = "https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=de31f5445b12fd9ab9969dc536d821fe6f0edad0"; - sha256 = "0sd52c898msqg7m316zp0ryyj7l326cjcn2y19dcxqp15r74qj0g"; - }) + ../fix-bug-80431.patch ../install-info-files-serially.patch ] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch ++ optional targetPlatform.isNetBSD ../libstdc++-netbsd-ctypes.patch diff --git a/pkgs/development/compilers/gcc/fix-bug-80431.patch b/pkgs/development/compilers/gcc/fix-bug-80431.patch new file mode 100644 index 000000000000..2d688b8c7997 --- /dev/null +++ b/pkgs/development/compilers/gcc/fix-bug-80431.patch @@ -0,0 +1,92 @@ +From de31f5445b12fd9ab9969dc536d821fe6f0edad0 Mon Sep 17 00:00:00 2001 +From: Patrick Palka +Date: Mon, 21 Jun 2021 07:54:26 -0400 +Subject: [PATCH] c++: conversion to base of vbase in NSDMI [PR80431] + +The delayed processing of conversions to a virtual base in an NSDMI +assumes the target base type is a (possibly indirect) virtual base of +the current class, but the target base type could also be a base of a +virtual base, as in the testcase below. Since such a base isn't a part +of CLASSTYPE_VBASECLASSES, we end up miscompiling the testcase due to +the call to build_base_path (with binfo=NULL_TREE) silently returning +error_mark_node. Fix this by using convert_to_base to build the +conversion instead. + + PR c++/80431 + +gcc/cp/ChangeLog: + + * tree.c (bot_replace): Use convert_to_base to build the + conversion to the (morally) virtual base. + +gcc/testsuite/ChangeLog: + + * g++.dg/cpp0x/nsdmi-virtual1a.C: New test. +--- + gcc/cp/tree.c | 14 ++++------ + gcc/testsuite/g++.dg/cpp0x/nsdmi-virtual1a.C | 28 ++++++++++++++++++++ + 2 files changed, 33 insertions(+), 9 deletions(-) + create mode 100644 gcc/testsuite/g++.dg/cpp0x/nsdmi-virtual1a.C + +diff --git a/gcc/cp/tree.c b/gcc/cp/tree.c +index fec5afaa2be..297da2b1550 100644 +--- a/gcc/cp/tree.c ++++ b/gcc/cp/tree.c +@@ -3242,15 +3242,11 @@ bot_replace (tree* t, int* /*walk_subtrees*/, void* data_) + else if (TREE_CODE (*t) == CONVERT_EXPR + && CONVERT_EXPR_VBASE_PATH (*t)) + { +- /* In an NSDMI build_base_path defers building conversions to virtual +- bases, and we handle it here. */ +- tree basetype = TYPE_MAIN_VARIANT (TREE_TYPE (TREE_TYPE (*t))); +- vec *vbases = CLASSTYPE_VBASECLASSES (current_class_type); +- int i; tree binfo; +- FOR_EACH_VEC_SAFE_ELT (vbases, i, binfo) +- if (BINFO_TYPE (binfo) == basetype) +- break; +- *t = build_base_path (PLUS_EXPR, TREE_OPERAND (*t, 0), binfo, true, ++ /* In an NSDMI build_base_path defers building conversions to morally ++ virtual bases, and we handle it here. */ ++ tree basetype = TREE_TYPE (*t); ++ *t = convert_to_base (TREE_OPERAND (*t, 0), basetype, ++ /*check_access=*/false, /*nonnull=*/true, + tf_warning_or_error); + } + +diff --git a/gcc/testsuite/g++.dg/cpp0x/nsdmi-virtual1a.C b/gcc/testsuite/g++.dg/cpp0x/nsdmi-virtual1a.C +new file mode 100644 +index 00000000000..dc847cc16e5 +--- /dev/null ++++ b/gcc/testsuite/g++.dg/cpp0x/nsdmi-virtual1a.C +@@ -0,0 +1,28 @@ ++// PR c++/80431 ++// { dg-do run { target c++11 } } ++ ++// A variant of nsdmi-virtual1.C where A is only a morally virtual base of B. ++ ++struct A ++{ ++ A(): i(42) { } ++ int i; ++ int f() { return i; } ++}; ++ ++struct D : A { int pad; }; ++ ++struct B : virtual D ++{ ++ int j = i + f(); ++ int k = A::i + A::f(); ++}; ++ ++struct C: B { int pad; }; ++ ++int main() ++{ ++ C c; ++ if (c.j != 84 || c.k != 84) ++ __builtin_abort(); ++} +-- +2.31.1 + From 314eeba0fa0ff7249518283ccd6c4bbadf033ad7 Mon Sep 17 00:00:00 2001 From: Claudio Bley Date: Mon, 27 Feb 2023 21:00:15 +0100 Subject: [PATCH 09/13] javaPackages: add jogl 2.4.0 (cherry picked from commit 09966984ebbf4f1fef1aee251a109aa7d77fbe42) --- .../development/java-modules/jogl/default.nix | 77 ++++++++++++++++++- pkgs/top-level/java-packages.nix | 3 +- 2 files changed, 78 insertions(+), 2 deletions(-) diff --git a/pkgs/development/java-modules/jogl/default.nix b/pkgs/development/java-modules/jogl/default.nix index 7a49bcbda7fc..23449e6f0570 100644 --- a/pkgs/development/java-modules/jogl/default.nix +++ b/pkgs/development/java-modules/jogl/default.nix @@ -1,6 +1,81 @@ -{ lib, stdenv, fetchgit, ant, jdk8, git, xorg, udev, libGL, libGLU }: +{ coreutils, lib, stdenv, fetchgit, ant, jdk8, jdk11, git, xorg, udev, libGL, libGLU, mesa, xmlstarlet }: { + jogl_2_4_0 = + let + version = "2.4.0"; + + gluegen-src = fetchgit { + url = "git://jogamp.org/srv/scm/gluegen.git"; + rev = "v${version}"; + hash = "sha256-qQzq7v2vMFeia6gXaNHS3AbOp9HhDRgISp7P++CKErA="; + fetchSubmodules = true; + }; + jogl-src = fetchgit { + url = "git://jogamp.org/srv/scm/jogl.git"; + rev = "v${version}"; + hash = "sha256-PHDq7uFEQfJ2P0eXPUi0DGFR1ob/n5a68otgzpFnfzQ="; + fetchSubmodules = true; + }; + in + stdenv.mkDerivation { + pname = "jogl"; + inherit version; + + srcs = [ gluegen-src jogl-src ]; + sourceRoot = "."; + + unpackCmd = "cp -r $curSrc \${curSrc##*-}"; + + nativeBuildInputs = [ ant jdk11 git xmlstarlet ]; + buildInputs = [ udev xorg.libX11 xorg.libXrandr xorg.libXcursor xorg.libXi xorg.libXt xorg.libXxf86vm xorg.libXrender mesa ]; + + # Workaround build failure on -fno-common toolchains: + # ld: ../obj/Bindingtest1p1Impl_JNI.o:(.bss+0x8): multiple definition of + # `unsigned_size_t_1'; ../obj/TK_Surface_JNI.o:(.bss+0x8): first defined here + NIX_CFLAGS_COMPILE = "-fcommon"; # copied from 2.3.2, is this still needed? + + buildPhase = '' + ( cd gluegen/make + substituteInPlace ../src/java/com/jogamp/common/util/IOUtil.java --replace '#!/bin/true' '#!${coreutils}/bin/true' + + # set timestamp of files in jar to a fixed point in time + xmlstarlet ed --inplace \ + --append //jar --type attr -n modificationtime --value 1980-01-01T00:00Z \ + build.xml gluegen-cpptasks-base.xml + + ant -Dtarget.sourcelevel=8 -Dtarget.targetlevel=8 -Dtarget.rt.jar='null.jar' ) + + ( cd jogl/make + + # force way to do disfunctional "ant -Dsetup.addNativeBroadcom=false" and disable dependency on raspberrypi drivers + # if arm/aarch64 support will be added, this block might be commented out on those platforms + # on x86 compiling with default "setup.addNativeBroadcom=true" leads to unsatisfied import "vc_dispmanx_resource_delete" in libnewt.so + xmlstarlet ed --inplace --delete '//*[@if="setup.addNativeBroadcom"]' build-newt.xml + + # set timestamp of files in jar to a fixed point in time + xmlstarlet ed --inplace \ + --append //jar --type attr -n modificationtime --value 1980-01-01T00:00Z \ + build.xml build-nativewindow.xml build-jogl.xml + + ant -Dtarget.sourcelevel=8 -Dtarget.targetlevel=8 -Dtarget.rt.jar='null.jar' ) + ''; + + installPhase = '' + mkdir -p $out/share/java + cp -v $NIX_BUILD_TOP/gluegen/build/gluegen-rt{,-natives-linux-amd64}.jar $out/share/java/ + cp -v $NIX_BUILD_TOP/jogl/build/jar/jogl-all{,-natives-linux-amd64}.jar $out/share/java/ + cp -v $NIX_BUILD_TOP/jogl/build/nativewindow/nativewindow{,-awt,-natives-linux-amd64,-os-drm,-os-x11}.jar $out/share/java/ + ''; + + meta = with lib; { + description = "Java libraries for 3D Graphics, Multimedia and Processing"; + homepage = "https://jogamp.org/"; + license = licenses.bsd3; + platforms = [ "x86_64-linux" ]; + }; + }; + jogl_2_3_2 = let version = "2.3.2"; diff --git a/pkgs/top-level/java-packages.nix b/pkgs/top-level/java-packages.nix index abdfafa7d052..ef4ea75b08e4 100644 --- a/pkgs/top-level/java-packages.nix +++ b/pkgs/top-level/java-packages.nix @@ -271,7 +271,8 @@ in { junit_4_12; inherit (callPackage ../development/java-modules/jogl { }) - jogl_2_3_2; + jogl_2_3_2 + jogl_2_4_0; inherit (callPackage ../development/java-modules/log4j { inherit fetchMaven; }) log4j_1_2_12; From a94c519211f42c29500c687177865a532369fe99 Mon Sep 17 00:00:00 2001 From: Claudio Bley Date: Mon, 27 Feb 2023 21:03:49 +0100 Subject: [PATCH 10/13] gephi: 0.9.6 -> 0.10.1 * gephi requires Java 11 to run according to https://gephi.org/users/requirements/ (cherry picked from commit 2c9092a37779b1350f8f3b06afff2788dac78ec2) --- .../science/misc/gephi/default.nix | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/pkgs/applications/science/misc/gephi/default.nix b/pkgs/applications/science/misc/gephi/default.nix index bb17fcc9c283..a5bf1a2da2b6 100644 --- a/pkgs/applications/science/misc/gephi/default.nix +++ b/pkgs/applications/science/misc/gephi/default.nix @@ -1,20 +1,20 @@ -{ lib, stdenv, fetchFromGitHub, jdk, maven, javaPackages }: +{ lib, stdenv, fetchFromGitHub, jdk11, maven, javaPackages }: let - version = "0.9.6"; + version = "0.10.1"; src = fetchFromGitHub { owner = "gephi"; repo = "gephi"; rev = "v${version}"; - sha256 = "sha256-3+tOwcE7TUeexJCugFsx9SgsKeb7ApNqbMEIi9QaKPE="; + hash = "sha256-ZNSEaiD32zFfF2ISKa1CmcT9Nq6r5i2rNHooQAcVbn4="; }; # perform fake build to make a fixed-output derivation out of the files downloaded from maven central (120MB) deps = stdenv.mkDerivation { name = "gephi-${version}-deps"; inherit src; - buildInputs = [ jdk maven ]; + buildInputs = [ jdk11 maven ]; buildPhase = '' while mvn package -Dmaven.repo.local=$out/.m2 -Dmaven.wagon.rto=5000; [ $? = 1 ]; do echo "timeout, restart maven to continue downloading" @@ -24,7 +24,7 @@ let installPhase = ''find $out/.m2 -type f -regex '.+\(\.lastUpdated\|resolver-status\.properties\|_remote\.repositories\)' -delete''; outputHashAlgo = "sha256"; outputHashMode = "recursive"; - outputHash = "sha256-kIPsZN0alRAgiMbckQnMWKOKtCZ37D/6MgT17VYcr+s="; + outputHash = "sha256-OdW4M5nGEkYkmHpRLM4cBQtk4SJII2uqM8TXb6y4eXk="; }; in stdenv.mkDerivation { @@ -33,7 +33,7 @@ stdenv.mkDerivation { inherit src; - buildInputs = [ jdk maven ]; + buildInputs = [ jdk11 maven ]; buildPhase = '' # 'maven.repo.local' must be writable so copy it out of nix store @@ -49,10 +49,10 @@ stdenv.mkDerivation { # use self-compiled JOGL to avoid patchelf'ing .so inside jars rm $out/gephi/modules/ext/org.gephi.visualization/org-jogamp-{jogl,gluegen}/*.jar - cp ${javaPackages.jogl_2_3_2}/share/java/jogl*.jar $out/gephi/modules/ext/org.gephi.visualization/org-jogamp-jogl/ - cp ${javaPackages.jogl_2_3_2}/share/java/glue*.jar $out/gephi/modules/ext/org.gephi.visualization/org-jogamp-gluegen/ + cp ${javaPackages.jogl_2_4_0}/share/java/jogl*.jar $out/gephi/modules/ext/org.gephi.visualization/org-jogamp-jogl/ + cp ${javaPackages.jogl_2_4_0}/share/java/glue*.jar $out/gephi/modules/ext/org.gephi.visualization/org-jogamp-gluegen/ - echo "jdkhome=${jdk}" >> $out/etc/gephi.conf + printf "\n\njdkhome=${jdk11}\n" >> $out/etc/gephi.conf ''; meta = with lib; { From 8185586a98d9eba12c1f2f9c783bc3c1b9514de2 Mon Sep 17 00:00:00 2001 From: Pierre Bourdon Date: Sun, 11 Jun 2023 16:12:01 +0200 Subject: [PATCH 11/13] mupdf: actually build and install the shared libraries version The current version of the derivation builds in shared libraries mode, but then the "shared" flag is not passed to the "make install" invocation. This causes "make install" to perform a whole second build from scratch, in static mode, and install this to $out instead. Instead pass shared=yes as part of the makeFlags -- this is basically the only thing that the "shared" build target does anyway, and I don't think there is a similar target for "make install". This issue was detected because the .pc shipped with mupdf doesn't work with the static libraries currently shipped (it doesn't include recursive dependencies like zlib). (cherry picked from commit 3d4769a9e86a51117973281d8ab4328713c4c180) --- pkgs/applications/misc/mupdf/default.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/pkgs/applications/misc/mupdf/default.nix b/pkgs/applications/misc/mupdf/default.nix index 812bc9a5d76d..8afcc5abed98 100644 --- a/pkgs/applications/misc/mupdf/default.nix +++ b/pkgs/applications/misc/mupdf/default.nix @@ -64,11 +64,9 @@ stdenv.mkDerivation rec { substituteInPlace Makerules --replace "(shell pkg-config" "(shell $PKG_CONFIG" ''; - # Use shared libraries to decrease size - buildFlags = [ "shared" ]; - makeFlags = [ "prefix=$(out)" + "shared=yes" "USE_SYSTEM_LIBS=yes" "PKG_CONFIG=${buildPackages.pkg-config}/bin/${buildPackages.pkg-config.targetPrefix}pkg-config" ] ++ lib.optionals (!enableX11) [ "HAVE_X11=no" ] From 0574420a1fd988b5f62dc7048f862ef46e4fc838 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabi=C3=A1n=20Heredia=20Montiel?= Date: Fri, 16 Jun 2023 09:43:55 -0600 Subject: [PATCH 12/13] =?UTF-8?q?xorg.libX11:=201.8.4=20=E2=86=92=201.8.6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit (cherry picked from commit 8f1b807d71db7ece24455da35a6370b82276eba8) --- pkgs/servers/x11/xorg/default.nix | 6 +++--- pkgs/servers/x11/xorg/tarballs.list | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix index d6c98e86d410..bf7cb3aceb49 100644 --- a/pkgs/servers/x11/xorg/default.nix +++ b/pkgs/servers/x11/xorg/default.nix @@ -892,11 +892,11 @@ self: with self; { # THIS IS A GENERATED FILE. DO NOT EDIT! libX11 = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpthreadstubs, libxcb, xtrans }: stdenv.mkDerivation { pname = "libX11"; - version = "1.8.4"; + version = "1.8.6"; builder = ./builder.sh; src = fetchurl { - url = "mirror://xorg/individual/lib/libX11-1.8.4.tar.xz"; - sha256 = "067mgmsqck78b7pf5h25irz3zvcnzqbgbz7s7k70967smsjqg8n9"; + url = "mirror://xorg/individual/lib/libX11-1.8.6.tar.xz"; + sha256 = "1jawl8zp1h7hdmxx1sc6kmxkki187d9yixr2l03ai6wqqry5nlsr"; }; hardeningDisable = [ "bindnow" "relro" ]; strictDeps = true; diff --git a/pkgs/servers/x11/xorg/tarballs.list b/pkgs/servers/x11/xorg/tarballs.list index 84237b44c0de..941504a62b14 100644 --- a/pkgs/servers/x11/xorg/tarballs.list +++ b/pkgs/servers/x11/xorg/tarballs.list @@ -174,7 +174,7 @@ mirror://xorg/individual/lib/libICE-1.0.10.tar.bz2 mirror://xorg/individual/lib/libpciaccess-0.16.tar.bz2 mirror://xorg/individual/lib/libSM-1.2.3.tar.bz2 mirror://xorg/individual/lib/libWindowsWM-1.0.1.tar.bz2 -mirror://xorg/individual/lib/libX11-1.8.4.tar.xz +mirror://xorg/individual/lib/libX11-1.8.6.tar.xz mirror://xorg/individual/lib/libXau-1.0.9.tar.bz2 mirror://xorg/individual/lib/libXaw-1.0.14.tar.bz2 mirror://xorg/individual/lib/libxcb-1.14.tar.xz From c5f6ce56560fd9206a3a5a0392eecfb2a50fa8dc Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Thu, 15 Jun 2023 16:59:30 +0200 Subject: [PATCH 13/13] python3.pkgs.invoke: install shell completions (cherry picked from commit 2dce714dff4c30c5fce406668793da74484260eb) --- pkgs/development/python-modules/invoke/default.nix | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/invoke/default.nix b/pkgs/development/python-modules/invoke/default.nix index 3b154063404f..e388cccf5932 100644 --- a/pkgs/development/python-modules/invoke/default.nix +++ b/pkgs/development/python-modules/invoke/default.nix @@ -2,7 +2,7 @@ , bash , buildPythonPackage , fetchPypi -, pythonOlder +, stdenv }: buildPythonPackage rec { @@ -26,6 +26,13 @@ buildPythonPackage rec { "invoke" ]; + postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + mkdir -p $out/share/{bash-completion/completions,fish/vendor_completions.d,zsh/site-functions} + $out/bin/inv --print-completion-script=zsh >$out/share/zsh/site-functions/_inv + $out/bin/inv --print-completion-script=bash >$out/share/bash-completion/completions/inv.bash + $out/bin/inv --print-completion-script=fish >$out/share/fish/vendor_completions.d/inv.fish + ''; + meta = with lib; { description = "Pythonic task execution"; homepage = "https://www.pyinvoke.org/";