From decaeb1bfa9c21c1317973fcdd24b50f2eb223b2 Mon Sep 17 00:00:00 2001 From: Will Dietz Date: Mon, 30 Apr 2018 13:59:11 -0500 Subject: [PATCH 01/55] nano: 2.9.4 -> 2.9.6 --- pkgs/applications/editors/nano/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/editors/nano/default.nix b/pkgs/applications/editors/nano/default.nix index 9ff1c44dceb..f5598b3365b 100644 --- a/pkgs/applications/editors/nano/default.nix +++ b/pkgs/applications/editors/nano/default.nix @@ -20,11 +20,11 @@ let in stdenv.mkDerivation rec { name = "nano-${version}"; - version = "2.9.4"; + version = "2.9.6"; src = fetchurl { url = "mirror://gnu/nano/${name}.tar.xz"; - sha256 = "0nm3zy4azr5rkxjq7jfybbj3cnddmvxc49rxyqm9cp2zfdp75y9c"; + sha256 = "1inl8ljkc711969ncwy7irf0464psasikg1g42l0g4sfpdz50wx3"; }; nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext; From 5777272bd2f4bde3ec9b048c0da3c388a8e0239e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tor=20Hedin=20Br=C3=B8nner?= Date: Wed, 2 May 2018 23:10:43 +0200 Subject: [PATCH 02/55] nixos/plymouth: multi-user.target wants plymouth-quit-wait.service MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This is apparent from the service file directory in plymouth: ├── multi-user.target.wants │ ├── plymouth-quit.service -> ../plymouth-quit.service │ └── plymouth-quit-wait.service -> ../plymouth-quit-wait.service Leaving it unspecified caused gdm-wayland to crash on boot, see #39615. The change made other display managers not quit plymouth properly however. By removing "multi-user.target" from `plymouth-quit.after` this is resolved. --- nixos/modules/system/boot/plymouth.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/nixos/modules/system/boot/plymouth.nix b/nixos/modules/system/boot/plymouth.nix index f8fb8a64cb9..e4223bae7d3 100644 --- a/nixos/modules/system/boot/plymouth.nix +++ b/nixos/modules/system/boot/plymouth.nix @@ -87,9 +87,10 @@ in systemd.services.plymouth-kexec.wantedBy = [ "kexec.target" ]; systemd.services.plymouth-halt.wantedBy = [ "halt.target" ]; + systemd.services.plymouth-quit-wait.wantedBy = [ "multi-user.target" ]; systemd.services.plymouth-quit = { wantedBy = [ "multi-user.target" ]; - after = [ "display-manager.service" "multi-user.target" ]; + after = [ "display-manager.service" ]; }; systemd.services.plymouth-poweroff.wantedBy = [ "poweroff.target" ]; systemd.services.plymouth-reboot.wantedBy = [ "reboot.target" ]; From b6f3fcf1405415dd290f23f955568ab290e8de2f Mon Sep 17 00:00:00 2001 From: jD91mZM2 Date: Tue, 8 May 2018 20:03:14 +0200 Subject: [PATCH 03/55] multibootusb: init at 9.2.0 --- .../misc/multibootusb/default.nix | 59 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 61 insertions(+) create mode 100644 pkgs/applications/misc/multibootusb/default.nix diff --git a/pkgs/applications/misc/multibootusb/default.nix b/pkgs/applications/misc/multibootusb/default.nix new file mode 100644 index 00000000000..02541842c36 --- /dev/null +++ b/pkgs/applications/misc/multibootusb/default.nix @@ -0,0 +1,59 @@ +{ lib, python36Packages, fetchFromGitHub, libxcb, mtools, p7zip, parted, procps, utillinux, qt5 }: +python36Packages.buildPythonApplication rec { + pname = "multibootusb"; + name = "${pname}-${version}"; + version = "9.2.0"; + + buildInputs = [ + python36Packages.dbus-python + python36Packages.pyqt5 + python36Packages.pytest-shutil + python36Packages.python + python36Packages.pyudev + python36Packages.six + libxcb + mtools + p7zip + parted + procps + qt5.full + utillinux + ]; + + src = fetchFromGitHub { + owner = "mbusb"; + repo = pname; + rev = "v${version}"; + + sha256 = "0wlan0cp6c2i0nahixgpmkm0h4n518gj8rc515d579pqqp91p2h3"; + }; + + # Skip the fixup stage where stuff is shrinked (can't shrink text files) + phases = [ "unpackPhase" "installPhase" ]; + + installPhase = '' + share="$out/share/${pname}" + mkdir -p "$share" + cp -r data "$share/data" + cp -r scripts "$share/scripts" + cp "${pname}" "$share/${pname}" + + mkdir "$out/bin" + cat > "$out/bin/${pname}" < Date: Mon, 2 Oct 2017 15:40:26 +0200 Subject: [PATCH 04/55] flatpak: init at 0.11.7 --- .../development/libraries/flatpak/default.nix | 74 +++++++++++++++++++ .../libraries/flatpak/fix-test-paths.patch | 46 ++++++++++++ .../respect-xml-catalog-files-var.patch | 13 ++++ pkgs/top-level/all-packages.nix | 2 + 4 files changed, 135 insertions(+) create mode 100644 pkgs/development/libraries/flatpak/default.nix create mode 100644 pkgs/development/libraries/flatpak/fix-test-paths.patch create mode 100644 pkgs/development/libraries/flatpak/respect-xml-catalog-files-var.patch diff --git a/pkgs/development/libraries/flatpak/default.nix b/pkgs/development/libraries/flatpak/default.nix new file mode 100644 index 00000000000..f26dad3ce15 --- /dev/null +++ b/pkgs/development/libraries/flatpak/default.nix @@ -0,0 +1,74 @@ +{ stdenv, fetchurl, autoreconfHook, docbook_xml_dtd_412, docbook_xml_dtd_42, docbook_xml_dtd_43, docbook_xsl, which, libxml2 +, gobjectIntrospection, gtk_doc, intltool, libxslt, pkgconfig, xmlto, appstream-glib, substituteAll, glibcLocales, yacc +, bubblewrap, bzip2, dbus, glib, gpgme, json_glib, libarchive, libcap, libseccomp, coreutils, python2, hicolor-icon-theme +, libsoup, lzma, ostree, polkit, python3, systemd, xlibs, valgrind, glib_networking, makeWrapper, gnome3 }: + +let + version = "0.11.7"; + desktop_schemas = gnome3.gsettings_desktop_schemas; +in stdenv.mkDerivation rec { + name = "flatpak-${version}"; + + outputs = [ "out" "man" "doc" "installedTests" ]; + + src = fetchurl { + url = "https://github.com/flatpak/flatpak/releases/download/${version}/${name}.tar.xz"; + sha256 = "1vq4j7v68lp4fsvpas1bcsx1z4snpj0mkbq2mi00kx3jb48z768h"; + }; + + patches = [ + (substituteAll { + src = ./fix-test-paths.patch; + inherit coreutils python2 glibcLocales; + hicolorIconTheme = hicolor-icon-theme; + }) + # patch taken from gtk_doc + ./respect-xml-catalog-files-var.patch + ]; + + nativeBuildInputs = [ + autoreconfHook libxml2 docbook_xml_dtd_412 docbook_xml_dtd_42 docbook_xml_dtd_43 docbook_xsl which gobjectIntrospection + gtk_doc intltool libxslt pkgconfig xmlto appstream-glib yacc makeWrapper + ] ++ stdenv.lib.optionals doCheck checkInputs; + + buildInputs = [ + bubblewrap bzip2 dbus glib gpgme json_glib libarchive libcap libseccomp + libsoup lzma ostree polkit python3 systemd xlibs.libXau + ]; + + checkInputs = [ valgrind ]; + + doCheck = false; # TODO: some issues with temporary files + + enableParallelBuilding = true; + + configureFlags = [ + "--with-system-bubblewrap=${bubblewrap}/bin/bwrap" + "--localstatedir=/var" + "--enable-installed-tests" + ]; + + makeFlags = [ + "installed_testdir=$(installedTests)/libexec/installed-tests/flatpak" + "installed_test_metadir=$(installedTests)/share/installed-tests/flatpak" + ]; + + postPatch = '' + patchShebangs buildutil + patchShebangs tests + ''; + + postFixup = '' + wrapProgram $out/bin/flatpak \ + --prefix GIO_EXTRA_MODULES : "${glib_networking.out}/lib/gio/modules" \ + --prefix XDG_DATA_DIRS : "${desktop_schemas}/share/gsettings-schemas/${desktop_schemas.name}" + ''; + + meta = with stdenv.lib; { + description = "Linux application sandboxing and distribution framework"; + homepage = https://flatpak.org/; + license = licenses.lgpl21; + maintainers = with maintainers; [ jtojnar ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/development/libraries/flatpak/fix-test-paths.patch b/pkgs/development/libraries/flatpak/fix-test-paths.patch new file mode 100644 index 00000000000..e0734009420 --- /dev/null +++ b/pkgs/development/libraries/flatpak/fix-test-paths.patch @@ -0,0 +1,46 @@ +--- a/tests/libtest.sh ++++ b/tests/libtest.sh +@@ -322,7 +322,7 @@ + # running installed-tests: assume we know what we're doing + : + elif ! "$FLATPAK_BWRAP" --unshare-ipc --unshare-net --unshare-pid \ +- --ro-bind / / /bin/true > bwrap-result 2>&1; then ++ --ro-bind / / @coreutils@/bin/true > bwrap-result 2>&1; then + sed -e 's/^/# /' < bwrap-result + echo "1..0 # SKIP Cannot run bwrap" + exit 0 +@@ -330,7 +330,7 @@ + } + + skip_without_python2 () { +- if ! test -f /usr/bin/python2 || ! /usr/bin/python2 -c "import sys; sys.exit(0 if sys.version_info >= (2, 7) else 1)" ; then ++ if ! test -f @python2@/bin/python2 || ! @python2@/bin/python2 -c "import sys; sys.exit(0 if sys.version_info >= (2, 7) else 1)" ; then + echo "1..0 # SKIP this test requires /usr/bin/python2 (2.7) support" + exit 0 + fi +@@ -350,12 +350,12 @@ + export DBUS_SESSION_BUS_ADDRESS="$(cat dbus-session-bus-address)" + DBUS_SESSION_BUS_PID="$(cat dbus-session-bus-pid)" + +-if ! /bin/kill -0 "$DBUS_SESSION_BUS_PID"; then ++if ! @coreutils@/bin/kill -0 "$DBUS_SESSION_BUS_PID"; then + assert_not_reached "Failed to start dbus-daemon" + fi + + cleanup () { +- /bin/kill $DBUS_SESSION_BUS_PID ${FLATPAK_HTTP_PID:-} ++ @coreutils@/bin/kill $DBUS_SESSION_BUS_PID ${FLATPAK_HTTP_PID:-} + gpg-connect-agent --homedir "${FL_GPG_HOMEDIR}" killagent /bye || true + fusermount -u $XDG_RUNTIME_DIR/doc || : + if test -n "${TEST_SKIP_CLEANUP:-}"; then +--- a/tests/testlibrary.c ++++ b/tests/testlibrary.c +@@ -378,7 +378,7 @@ + { + gint exit_code = 0; + char *argv[] = { (char *)bwrap, "--unshare-ipc", "--unshare-net", +- "--unshare-pid", "--ro-bind", "/", "/", "/bin/true", NULL }; ++ "--unshare-pid", "--ro-bind", "/", "/", "@coreutils@/bin/true", NULL }; + g_autofree char *argv_str = g_strjoinv (" ", argv); + g_test_message ("Spawning %s", argv_str); + g_spawn_sync (NULL, argv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL, NULL, NULL, &exit_code, &error); diff --git a/pkgs/development/libraries/flatpak/respect-xml-catalog-files-var.patch b/pkgs/development/libraries/flatpak/respect-xml-catalog-files-var.patch new file mode 100644 index 00000000000..0e259aebd8a --- /dev/null +++ b/pkgs/development/libraries/flatpak/respect-xml-catalog-files-var.patch @@ -0,0 +1,13 @@ +--- a/acinclude.m4 ++++ b/acinclude.m4 +@@ -40,8 +40,8 @@ + [ + AC_REQUIRE([JH_PATH_XML_CATALOG],[JH_PATH_XML_CATALOG(,[:])])dnl + AC_MSG_CHECKING([for ifelse([$2],,[$1],[$2]) in XML catalog]) +- if $jh_found_xmlcatalog && \ +- AC_RUN_LOG([$XMLCATALOG --noout "$XML_CATALOG_FILE" "$1" >&2]); then ++ # empty argument forces libxml to use XML_CATALOG_FILES variable ++ if AC_RUN_LOG([$XMLCATALOG --noout "" "$1" >&2]); then + AC_MSG_RESULT([found]) + ifelse([$3],,,[$3 + ])dnl diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d6759098dfa..cd2f4482922 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2297,6 +2297,8 @@ with pkgs; flashbench = callPackage ../os-specific/linux/flashbench { }; + flatpak = callPackage ../development/libraries/flatpak { }; + figlet = callPackage ../tools/misc/figlet { }; file = callPackage ../tools/misc/file { }; From fe54e14cefbd88c939e07735f61f8dc9fd054a1e Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Tue, 3 Oct 2017 01:19:20 +0200 Subject: [PATCH 05/55] xdg-desktop-portal: init at 0.11 --- .../libraries/xdg-desktop-portal/default.nix | 37 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 39 insertions(+) create mode 100644 pkgs/development/libraries/xdg-desktop-portal/default.nix diff --git a/pkgs/development/libraries/xdg-desktop-portal/default.nix b/pkgs/development/libraries/xdg-desktop-portal/default.nix new file mode 100644 index 00000000000..6721d5f00ac --- /dev/null +++ b/pkgs/development/libraries/xdg-desktop-portal/default.nix @@ -0,0 +1,37 @@ +{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, libxml2, glib, pipewire, fuse }: + +let + version = "0.11"; +in stdenv.mkDerivation rec { + name = "xdg-desktop-portal-${version}"; + + outputs = [ "out" "installedTests" ]; + + src = fetchFromGitHub { + owner = "flatpak"; + repo = "xdg-desktop-portal"; + rev = version; + sha256 = "06gipd51snvlp2jp68v2c8rwbsv36kjzg9xacm81n1w4b2dpz4g0"; + }; + + nativeBuildInputs = [ autoreconfHook pkgconfig libxml2 ]; + buildInputs = [ glib pipewire fuse ]; + + doCheck = true; + + configureFlags = [ + "--enable-installed-tests" + ]; + + makeFlags = [ + "installed_testdir=$(installedTests)/libexec/installed-tests/xdg-desktop-portal" + "installed_test_metadir=$(installedTests)/share/installed-tests/xdg-desktop-portal" + ]; + + meta = with stdenv.lib; { + description = "Desktop integration portals for sandboxed apps"; + license = licenses.lgpl21; + maintainers = with maintainers; [ jtojnar ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index cd2f4482922..272bb1441fd 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18718,6 +18718,8 @@ with pkgs; xdaliclock = callPackage ../tools/misc/xdaliclock {}; + xdg-desktop-portal = callPackage ../development/libraries/xdg-desktop-portal { }; + xdg-user-dirs = callPackage ../tools/X11/xdg-user-dirs { }; xdg_utils = callPackage ../tools/X11/xdg-utils { From 556c40c0e2e63b5f04a7f9f5d1af88a2fbfbcb3b Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Sun, 31 Dec 2017 04:01:07 +0100 Subject: [PATCH 06/55] xdg-desktop-portal-gtk: init at 0.10 --- .../xdg-desktop-portal-gtk/default.nix | 24 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 26 insertions(+) create mode 100644 pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix diff --git a/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix b/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix new file mode 100644 index 00000000000..720e394afc7 --- /dev/null +++ b/pkgs/development/libraries/xdg-desktop-portal-gtk/default.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, libxml2, xdg-desktop-portal, gtk3, glib }: + +let + version = "0.11"; +in stdenv.mkDerivation rec { + name = "xdg-desktop-portal-gtk-${version}"; + + src = fetchFromGitHub { + owner = "flatpak"; + repo = "xdg-desktop-portal-gtk"; + rev = version; + sha256 = "03ysv29k7fp14hx0gakjigzzlniwicqd81nrhnc6w4pgin0y0zwg"; + }; + + nativeBuildInputs = [ autoreconfHook pkgconfig libxml2 xdg-desktop-portal ]; + buildInputs = [ glib gtk3 ]; + + meta = with stdenv.lib; { + description = "Desktop integration portals for sandboxed apps"; + maintainers = with maintainers; [ jtojnar ]; + platforms = platforms.linux; + license = licenses.lgpl21; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 272bb1441fd..51ac4297091 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18720,6 +18720,8 @@ with pkgs; xdg-desktop-portal = callPackage ../development/libraries/xdg-desktop-portal { }; + xdg-desktop-portal-gtk = callPackage ../development/libraries/xdg-desktop-portal-gtk { }; + xdg-user-dirs = callPackage ../tools/X11/xdg-user-dirs { }; xdg_utils = callPackage ../tools/X11/xdg-utils { From d2f7acf30c6dc1fe3a742f4035b11fe57514952b Mon Sep 17 00:00:00 2001 From: Anders Kaseorg Date: Fri, 4 May 2018 18:00:50 -0400 Subject: [PATCH 07/55] pytorch: 0.3.1 -> 0.4.0 Signed-off-by: Anders Kaseorg --- .../python-modules/pytorch/default.nix | 35 +++++-------------- pkgs/top-level/python-packages.nix | 14 +++++++- 2 files changed, 21 insertions(+), 28 deletions(-) diff --git a/pkgs/development/python-modules/pytorch/default.nix b/pkgs/development/python-modules/pytorch/default.nix index c8376196d3a..b0ac4e07093 100644 --- a/pkgs/development/python-modules/pytorch/default.nix +++ b/pkgs/development/python-modules/pytorch/default.nix @@ -1,7 +1,7 @@ -{ buildPythonPackage, +{ buildPythonPackage, pythonOlder, cudaSupport ? false, cudatoolkit ? null, cudnn ? null, - fetchFromGitHub, fetchpatch, lib, numpy, pyyaml, cffi, cmake, - git, stdenv, linkFarm, symlinkJoin, + fetchFromGitHub, fetchpatch, lib, numpy, pyyaml, cffi, typing, cmake, + stdenv, linkFarm, symlinkJoin, utillinux, which }: assert cudnn == null || cudatoolkit != null; @@ -25,7 +25,7 @@ let "LD_LIBRARY_PATH=${cudaStub}\${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} "; in buildPythonPackage rec { - version = "0.3.1"; + version = "0.4.0"; pname = "pytorch"; name = "${pname}-${version}"; @@ -34,36 +34,17 @@ in buildPythonPackage rec { repo = "pytorch"; rev = "v${version}"; fetchSubmodules = true; - sha256 = "1k8fr97v5pf7rni5cr2pi21ixc3pdj3h3lkz28njbjbgkndh7mr3"; + sha256 = "12d5vqqaprk0igmih7fwa65ldmaawgijxl58h6dnw660wysc132j"; }; - patches = [ - (fetchpatch { - # make sure stdatomic.h is included when checking for ATOMIC_INT_LOCK_FREE - # Fixes this test failure: - # RuntimeError: refcounted file mapping not supported on your system at /tmp/nix-build-python3.6-pytorch-0.3.0.drv-0/source/torch/lib/TH/THAllocator.c:525 - url = "https://github.com/pytorch/pytorch/commit/502aaf39cf4a878f9e4f849e5f409573aa598aa9.patch"; - stripLen = 3; - extraPrefix = "torch/lib/"; - sha256 = "1miz4lhy3razjwcmhxqa4xmlcmhm65lqyin1czqczj8g16d3f62f"; - }) - ]; - - postPatch = '' - substituteInPlace test/run_test.sh --replace \ - "INIT_METHOD='file://'\$TEMP_DIR'/shared_init_file' \$PYCMD ./test_distributed.py" \ - "echo Skipped for Nix package" - ''; - preConfigure = lib.optionalString cudaSupport '' - export CC=${cudatoolkit.cc}/bin/gcc + export CC=${cudatoolkit.cc}/bin/gcc CXX=${cudatoolkit.cc}/bin/g++ '' + lib.optionalString (cudaSupport && cudnn != null) '' export CUDNN_INCLUDE_DIR=${cudnn}/include ''; buildInputs = [ cmake - git numpy.blas utillinux which @@ -73,10 +54,10 @@ in buildPythonPackage rec { cffi numpy pyyaml - ]; + ] ++ lib.optional (pythonOlder "3.5") typing; checkPhase = '' - ${cudaStubEnv}${stdenv.shell} test/run_test.sh + ${cudaStubEnv}python test/run_test.py --exclude distributed ''; meta = { diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 7868f7d7ff0..95b7f8a5718 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5623,8 +5623,20 @@ in { }; }; - pytorch = callPackage ../development/python-modules/pytorch { + pytorch = let + # Fails with CUDA 9.1 and GCC 6.4: + # https://github.com/pytorch/pytorch/issues/5831 + # https://devtalk.nvidia.com/default/topic/1028112 + # We should be able to remove this when CUDA 9.2 is released. + cudatoolkit9 = pkgs.cudatoolkit9.override { + gcc6 = pkgs.gcc5; + }; + in callPackage ../development/python-modules/pytorch { cudaSupport = pkgs.config.cudaSupport or false; + cudatoolkit = cudatoolkit9; + cudnn = pkgs.cudnn_cudatoolkit9.override { + inherit cudatoolkit9; + }; }; pytorchWithCuda = self.pytorch.override { From 989fd880a16c662277dad3a75318b1dc216a49a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tor=20Hedin=20Br=C3=B8nner?= Date: Sun, 13 May 2018 22:46:52 +0200 Subject: [PATCH 08/55] gnome3.gnome-shell: 3.28.1 -> 3.28.2 --- pkgs/desktops/gnome-3/core/gnome-shell/default.nix | 4 ++-- pkgs/desktops/gnome-3/core/mutter/default.nix | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/desktops/gnome-3/core/gnome-shell/default.nix b/pkgs/desktops/gnome-3/core/gnome-shell/default.nix index ae9aa047ba0..772df5d2441 100644 --- a/pkgs/desktops/gnome-3/core/gnome-shell/default.nix +++ b/pkgs/desktops/gnome-3/core/gnome-shell/default.nix @@ -13,11 +13,11 @@ let in stdenv.mkDerivation rec { name = "gnome-shell-${version}"; - version = "3.28.1"; + version = "3.28.2"; src = fetchurl { url = "mirror://gnome/sources/gnome-shell/${gnome3.versionBranch version}/${name}.tar.xz"; - sha256 = "1k2cgaky293kcjis0pmh9hw1aby3yyilb5dzrbww62wxzppc9s35"; + sha256 = "1b9n89ij2g5nqaqp7a13jnqcd8qa2v9p55rbi71al3xvqk091ri7"; }; # Needed to find /etc/NetworkManager/VPN diff --git a/pkgs/desktops/gnome-3/core/mutter/default.nix b/pkgs/desktops/gnome-3/core/mutter/default.nix index 866888feba0..20dda08f980 100644 --- a/pkgs/desktops/gnome-3/core/mutter/default.nix +++ b/pkgs/desktops/gnome-3/core/mutter/default.nix @@ -5,11 +5,11 @@ stdenv.mkDerivation rec { name = "mutter-${version}"; - version = "3.28.1"; + version = "3.28.2"; src = fetchurl { url = "mirror://gnome/sources/mutter/${gnome3.versionBranch version}/${name}.tar.xz"; - sha256 = "1bhmjvf6l1fj5igsw2xlg3nv5526laiwaxh47dgk50f40qax1qin"; + sha256 = "0ighs1zvlssgq16v1h3vg280za7y448snq65gc5m1zmqqawqkymg"; }; passthru = { From f8dc3abbb053f3732afc016109a47febad94ff71 Mon Sep 17 00:00:00 2001 From: Yorick Date: Mon, 14 May 2018 02:03:42 +0200 Subject: [PATCH 09/55] linux: add CONFIG_KEY_DH_OPERATIONS --- pkgs/os-specific/linux/kernel/common-config.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index 4af5889fd1c..ebb569689b2 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -636,6 +636,11 @@ with stdenv.lib; X86_X2APIC y IRQ_REMAP y ''} + + # needed for iwd WPS support (wpa_supplicant replacement) + ${optionalString (versionAtLeast version "4.7") '' + CONFIG_KEY_DH_OPERATIONS y + ''} # Disable the firmware helper fallback, udev doesn't implement it any more FW_LOADER_USER_HELPER_FALLBACK? n From 79d39de93a1d2420cf9cd8cec933a7f4fdcc6320 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Mon, 14 May 2018 00:12:44 -0700 Subject: [PATCH 10/55] ocamlPackages.ocurl: 0.8.0 -> 0.8.1 Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/ocurl/versions. These checks were done: - built on NixOS - Warning: no binary found that responded to help or version flags. (This warning appears even if the package isn't expected to have binaries.) - found 0.8.1 with grep in /nix/store/g76kv7vaw650ibv0rv7544biwpzrdisw-ocurl-0.8.1 - directory tree listing: https://gist.github.com/3093abaf0dd2e39a2eb0d107f14fe8db - du listing: https://gist.github.com/6e66e0fd5554664ca460eaa3e19a44aa --- pkgs/development/ocaml-modules/ocurl/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/ocaml-modules/ocurl/default.nix b/pkgs/development/ocaml-modules/ocurl/default.nix index 73ffd7f41ea..4b6bea31b40 100644 --- a/pkgs/development/ocaml-modules/ocurl/default.nix +++ b/pkgs/development/ocaml-modules/ocurl/default.nix @@ -1,10 +1,10 @@ { stdenv, pkgconfig, ocaml, findlib, fetchurl, curl, ncurses }: stdenv.mkDerivation rec { - name = "ocurl-0.8.0"; + name = "ocurl-0.8.1"; src = fetchurl { url = "http://ygrek.org.ua/p/release/ocurl/${name}.tar.gz"; - sha256 = "0292knvm9g038br0dc03lcsnbjqycyiqha256dp4bxkz3vmmz4wr"; + sha256 = "08ldzbx1k3mbjc01fmzsn86ll4paf331bcjss6iig6y6hgc9q3ry"; }; buildInputs = [ pkgconfig ocaml findlib ncurses ]; From dd7f08a1a6440a157f82db4d91f67aa657d29879 Mon Sep 17 00:00:00 2001 From: Cray Elliott Date: Sat, 12 May 2018 02:45:22 -0700 Subject: [PATCH 11/55] ffmpeg-full: 3.4.2 -> 4.0 init local package nv-codec-headers, which are external nvidia headers, now used when nvenc is enabled --- .../libraries/ffmpeg-full/default.nix | 20 ++++++++--------- .../ffmpeg-full/nv-codec-headers.nix | 22 +++++++++++++++++++ pkgs/development/libraries/ffmpeg/4.0.nix | 12 ++++++++++ 3 files changed, 44 insertions(+), 10 deletions(-) create mode 100644 pkgs/development/libraries/ffmpeg-full/nv-codec-headers.nix create mode 100644 pkgs/development/libraries/ffmpeg/4.0.nix diff --git a/pkgs/development/libraries/ffmpeg-full/default.nix b/pkgs/development/libraries/ffmpeg-full/default.nix index d2ef075beee..6bf7d0f68f8 100644 --- a/pkgs/development/libraries/ffmpeg-full/default.nix +++ b/pkgs/development/libraries/ffmpeg-full/default.nix @@ -25,7 +25,6 @@ , ffmpegProgram ? true # Build ffmpeg executable , ffplayProgram ? true # Build ffplay executable , ffprobeProgram ? true # Build ffprobe executable -, ffserverProgram ? true # Build ffserver executable , qtFaststartProgram ? true # Build qt-faststart executable /* * Library options @@ -98,13 +97,14 @@ , libXv ? null # Xlib support , lzma ? null # xz-utils , nvenc ? false, nvidia-video-sdk ? null # NVIDIA NVENC support +, callPackage # needed for NVENC to access external ffmpeg nvidia headers , openal ? null # OpenAL 1.1 capture support #, opencl ? null # OpenCL code , opencore-amr ? null # AMR-NB de/encoder & AMR-WB decoder #, opencv ? null # Video filtering , openglExtlib ? false, libGLU_combined ? null # OpenGL rendering #, openh264 ? null # H.264/AVC encoder -, openjpeg_1 ? null # JPEG 2000 de/encoder +, openjpeg ? null # JPEG 2000 de/encoder , opensslExtlib ? false, openssl ? null , libpulseaudio ? null # Pulseaudio input support , rtmpdump ? null # RTMP[E] support @@ -159,7 +159,7 @@ * utvideo vo-aacenc vo-amrwbenc xvmc zvbi blackmagic-design-desktop-video * * Need fixes to support Darwin: - * frei0r, game-music-emu, gsm, libjack2, libssh, libvpx(stable 1.3.0), openal, openjpeg_1, + * frei0r, game-music-emu, gsm, libjack2, libssh, libvpx(stable 1.3.0), openal, openjpeg, * pulseaudio, rtmpdump, samba, vid-stab, wavpack, x265. xavs * * Not supported: @@ -176,6 +176,8 @@ let inherit (stdenv) isCygwin isFreeBSD isLinux; inherit (stdenv.lib) optional optionals optionalString enableFeature; + + nv-codec-headers = callPackage ./nv-codec-headers.nix { }; in /* @@ -201,7 +203,6 @@ assert ffplayProgram -> avcodecLibrary && swresampleLibrary && SDL2 != null; assert ffprobeProgram -> avcodecLibrary && avformatLibrary; -assert ffserverProgram -> avformatLibrary; /* * Library dependencies */ @@ -231,11 +232,11 @@ assert nvenc -> nvidia-video-sdk != null && nonfreeLicensing; stdenv.mkDerivation rec { name = "ffmpeg-full-${version}"; - version = "3.4.2"; + version = "4.0"; src = fetchurl { url = "https://www.ffmpeg.org/releases/ffmpeg-${version}.tar.xz"; - sha256 = "0h6prjn1ijkzzhkyj8mazp0wpx7m0n9ycadjxagf9czqirbyk4ib"; + sha256 = "0gx4ngnhi5glmxh38603qy5n6vq8bl1cr4sqd1xff95i82pmv57d"; }; prePatch = '' @@ -286,7 +287,6 @@ stdenv.mkDerivation rec { (enableFeature ffmpegProgram "ffmpeg") (enableFeature ffplayProgram "ffplay") (enableFeature ffprobeProgram "ffprobe") - (enableFeature ffserverProgram "ffserver") /* * Library flags */ @@ -365,7 +365,7 @@ stdenv.mkDerivation rec { #(enableFeature (opencv != null) "libopencv") (enableFeature openglExtlib "opengl") #(enableFeature (openh264 != null) "openh264") - (enableFeature (openjpeg_1 != null) "libopenjpeg") + (enableFeature (openjpeg != null) "libopenjpeg") (enableFeature (opensslExtlib && gplLicensing) "openssl") (enableFeature (libpulseaudio != null) "libpulse") #(enableFeature quvi "libquvi") @@ -404,14 +404,14 @@ stdenv.mkDerivation rec { bzip2 celt fontconfig freetype frei0r fribidi game-music-emu gnutls gsm libjack2 ladspaH lame libass libbluray libbs2b libcaca libdc1394 libmodplug libogg libopus libssh libtheora libvdpau libvorbis libvpx libwebp libX11 - libxcb libXv lzma openal openjpeg_1 libpulseaudio rtmpdump opencore-amr + libxcb libXv lzma openal openjpeg libpulseaudio rtmpdump opencore-amr samba SDL2 soxr speex vid-stab vo-amrwbenc wavpack x264 x265 xavs xvidcore zeromq4 zlib ] ++ optional openglExtlib libGLU_combined ++ optionals nonfreeLicensing [ fdk_aac openssl ] ++ optional ((isLinux || isFreeBSD) && libva != null) libva ++ optionals isLinux [ alsaLib libraw1394 libv4l ] - ++ optionals nvenc [ nvidia-video-sdk ] + ++ optionals nvenc [ nvidia-video-sdk nv-codec-headers ] ++ optionals stdenv.isDarwin [ Cocoa CoreServices CoreAudio AVFoundation MediaToolbox VideoDecodeAcceleration libiconv ]; diff --git a/pkgs/development/libraries/ffmpeg-full/nv-codec-headers.nix b/pkgs/development/libraries/ffmpeg-full/nv-codec-headers.nix new file mode 100644 index 00000000000..03599c91bf0 --- /dev/null +++ b/pkgs/development/libraries/ffmpeg-full/nv-codec-headers.nix @@ -0,0 +1,22 @@ +{ stdenv, fetchgit }: + +stdenv.mkDerivation rec { + name = "nv-codec-headers-${version}"; + version = "n8.1.24.2"; + + src = fetchgit { + url = "https://git.videolan.org/git/ffmpeg/nv-codec-headers.git"; + rev = "${version}"; + sha256 = "122i3f6whiz5yp44dhk73ifr1973z8vvfbg4216vb782bl8b5bam"; + }; + + makeFlags = [ "PREFIX=$(out)" ]; + + meta = { + description = "ffmpeg nvidia headers for NVENC"; + homepage = http://ffmpeg.org/; + license = stdenv.lib.licenses.gpl3Plus; + maintainers = [ stdenv.lib.maintainers.MP2E ]; + platforms = stdenv.lib.platforms.all; + }; +} diff --git a/pkgs/development/libraries/ffmpeg/4.0.nix b/pkgs/development/libraries/ffmpeg/4.0.nix new file mode 100644 index 00000000000..a6e67052cd0 --- /dev/null +++ b/pkgs/development/libraries/ffmpeg/4.0.nix @@ -0,0 +1,12 @@ +{ stdenv, callPackage, fetchpatch +# Darwin frameworks +, Cocoa, CoreMedia +, ... +}@args: + +callPackage ./generic.nix (args // rec { + version = "${branch}"; + branch = "4.0"; + sha256 = "1f3k8nz5ag6szsfhlrz66qm8s1yxk1vphqvcfr4ps4690vckk2ii"; + darwinFrameworks = [ Cocoa CoreMedia ]; +}) From 0e6fb50954bda292bc5108307ffe06c733815dca Mon Sep 17 00:00:00 2001 From: Cray Elliott Date: Mon, 14 May 2018 21:06:39 -0700 Subject: [PATCH 12/55] ffmpeg: remove redundant nix expr from last commit accidentally brought in from old local changes --- pkgs/development/libraries/ffmpeg/4.0.nix | 12 ------------ 1 file changed, 12 deletions(-) delete mode 100644 pkgs/development/libraries/ffmpeg/4.0.nix diff --git a/pkgs/development/libraries/ffmpeg/4.0.nix b/pkgs/development/libraries/ffmpeg/4.0.nix deleted file mode 100644 index a6e67052cd0..00000000000 --- a/pkgs/development/libraries/ffmpeg/4.0.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ stdenv, callPackage, fetchpatch -# Darwin frameworks -, Cocoa, CoreMedia -, ... -}@args: - -callPackage ./generic.nix (args // rec { - version = "${branch}"; - branch = "4.0"; - sha256 = "1f3k8nz5ag6szsfhlrz66qm8s1yxk1vphqvcfr4ps4690vckk2ii"; - darwinFrameworks = [ Cocoa CoreMedia ]; -}) From 89a5e6db55e45994fa343ec91586065ce929b831 Mon Sep 17 00:00:00 2001 From: Mitsuhiro Nakamura Date: Tue, 15 May 2018 14:30:37 +0900 Subject: [PATCH 13/55] rPackages.JuniperKernel: fix non-Darwin build --- pkgs/development/r-modules/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/r-modules/default.nix b/pkgs/development/r-modules/default.nix index 451fc1dc6fe..cbaea0f0d85 100644 --- a/pkgs/development/r-modules/default.nix +++ b/pkgs/development/r-modules/default.nix @@ -757,7 +757,7 @@ let }); JuniperKernel = old.JuniperKernel.overrideDerivation (attrs: { - postPatch = '' + postPatch = lib.optionalString stdenv.isDarwin '' for file in {R,src}/*.R; do sed -i 's#system("which \(otool\|install_name_tool\)"[^)]*)#"${pkgs.darwin.cctools}/bin/\1"#g' $file done From e0a42d991cd30d3ebbc592dda34de2260b843773 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Sun, 31 Dec 2017 05:10:15 +0100 Subject: [PATCH 14/55] nixos/flatpak: init --- nixos/modules/module-list.nix | 1 + nixos/modules/services/desktops/flatpak.nix | 28 +++++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 nixos/modules/services/desktops/flatpak.nix diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 6c4326046ef..428e2e434f3 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -214,6 +214,7 @@ ./services/desktops/accountsservice.nix ./services/desktops/dleyna-renderer.nix ./services/desktops/dleyna-server.nix + ./services/desktops/flatpak.nix ./services/desktops/geoclue2.nix ./services/desktops/pipewire.nix ./services/desktops/gnome3/at-spi2-core.nix diff --git a/nixos/modules/services/desktops/flatpak.nix b/nixos/modules/services/desktops/flatpak.nix new file mode 100644 index 00000000000..d191eeff990 --- /dev/null +++ b/nixos/modules/services/desktops/flatpak.nix @@ -0,0 +1,28 @@ +# flatpak service. +{ config, lib, pkgs, ... }: + +with lib; + +{ + ###### interface + options = { + services.flatpak = { + enable = mkEnableOption "flatpak"; + }; + }; + + + ###### implementation + config = mkIf config.services.flatpak.enable { + environment.systemPackages = [ pkgs.flatpak ]; + + services.dbus.packages = [ pkgs.flatpak ]; + + systemd.packages = [ pkgs.flatpak ]; + + environment.variables.PATH = [ + "$HOME/.local/share/flatpak/exports/bin" + "/var/lib/flatpak/exports/bin" + ]; + }; +} From 17dd7bcd89d568596f52356624be82201ea84779 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Wed, 3 Jan 2018 11:57:29 +0100 Subject: [PATCH 15/55] nixos/systemd-lib: fix conflict with dbus.service.d directory MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When a package contains a directory in one of the systemd directories (like flatpak does), it is symlinked into the *-units derivation. Then later, the derivation will try to create the directory, which will fail: mkdir: cannot create directory '/nix/store/…-user-units/dbus.service.d': File exists builder for '/nix/store/…-user-units.drv' failed with exit code 1 Closes: #33233 --- nixos/modules/system/boot/systemd-lib.nix | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/nixos/modules/system/boot/systemd-lib.nix b/nixos/modules/system/boot/systemd-lib.nix index 7c01f8ea9b7..ae9ee8811f7 100644 --- a/nixos/modules/system/boot/systemd-lib.nix +++ b/nixos/modules/system/boot/systemd-lib.nix @@ -2,9 +2,10 @@ with lib; -let cfg = config.systemd; in - -rec { +let + cfg = config.systemd; + lndir = "${pkgs.xorg.lndir}/bin/lndir"; +in rec { shellEscape = s: (replaceChars [ "\\" ] [ "\\\\" ] s); @@ -136,7 +137,13 @@ rec { for i in ${toString cfg.packages}; do for fn in $i/etc/systemd/${type}/* $i/lib/systemd/${type}/*; do if ! [[ "$fn" =~ .wants$ ]]; then - ln -s $fn $out/ + if [[ -d "$fn" ]]; then + targetDir="$out/$(basename "$fn")" + mkdir -p "$targetDir" + ${lndir} "$fn" "$targetDir" + else + ln -s $fn $out/ + fi fi done done @@ -151,7 +158,7 @@ rec { if [ "$(readlink -f $i/$fn)" = /dev/null ]; then ln -sfn /dev/null $out/$fn else - mkdir $out/$fn.d + mkdir -p $out/$fn.d ln -s $i/$fn $out/$fn.d/overrides.conf fi else From 2fc8b832829b9df30846042dde7a8a24aa79d415 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Wed, 3 Jan 2018 12:57:37 +0100 Subject: [PATCH 16/55] gnome3.gnome-software: build with flatpak support --- pkgs/desktops/gnome-3/core/gnome-software/default.nix | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/pkgs/desktops/gnome-3/core/gnome-software/default.nix b/pkgs/desktops/gnome-3/core/gnome-software/default.nix index 21a1e1a1c4c..2d5080841a4 100644 --- a/pkgs/desktops/gnome-3/core/gnome-software/default.nix +++ b/pkgs/desktops/gnome-3/core/gnome-software/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, substituteAll, pkgconfig, meson, ninja, gettext, gnome3, wrapGAppsHook, packagekit, ostree -, glib, appstream-glib, libsoup, polkit, isocodes, gspell, libxslt, gobjectIntrospection +, glib, appstream-glib, libsoup, polkit, isocodes, gspell, libxslt, gobjectIntrospection, flatpak , json-glib, libsecret, valgrind-light, docbook_xsl, docbook_xml_dtd_42, gtk-doc, desktop-file-utils }: stdenv.mkDerivation rec { @@ -27,11 +27,10 @@ stdenv.mkDerivation rec { gnome3.gtk glib packagekit appstream-glib libsoup gnome3.gsettings-desktop-schemas gnome3.gnome-desktop gspell json-glib libsecret ostree - polkit + polkit flatpak ]; mesonFlags = [ - "-Denable-flatpak=false" "-Denable-rpm=false" "-Denable-fwupd=false" "-Denable-oauth=false" From 843bc0f73a648426b2206cda88c5bf49563c3990 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Tue, 13 Feb 2018 01:53:39 +0100 Subject: [PATCH 17/55] flatpak-builder: init add 0.10.10 --- .../tools/flatpak-builder/default.nix | 103 ++++++++++++++++ .../tools/flatpak-builder/fix-paths.patch | 116 ++++++++++++++++++ .../respect-xml-catalog-files-var.patch | 13 ++ pkgs/top-level/all-packages.nix | 2 + 4 files changed, 234 insertions(+) create mode 100644 pkgs/development/tools/flatpak-builder/default.nix create mode 100644 pkgs/development/tools/flatpak-builder/fix-paths.patch create mode 100644 pkgs/development/tools/flatpak-builder/respect-xml-catalog-files-var.patch diff --git a/pkgs/development/tools/flatpak-builder/default.nix b/pkgs/development/tools/flatpak-builder/default.nix new file mode 100644 index 00000000000..351ec2c77db --- /dev/null +++ b/pkgs/development/tools/flatpak-builder/default.nix @@ -0,0 +1,103 @@ +{ stdenv +, fetchurl +, substituteAll + +, autoreconfHook +, docbook_xml_dtd_412 +, docbook_xml_dtd_42 +, docbook_xml_dtd_43 +, docbook_xsl +, gettext +, libxml2 +, libxslt +, pkgconfig +, xmlto + +, acl +, bazaar +, binutils +, bzip2 +, coreutils +, cpio +, elfutils +, flatpak +, gitMinimal +, glib +, gnutar +, json_glib +, libcap +, libdwarf +, libsoup +, ostree +, patch +, rpm +, unzip +}: + +let + version = "0.10.10"; +in stdenv.mkDerivation rec { + name = "flatpak-builder-${version}"; + + outputs = [ "out" "doc" "man" ]; + + src = fetchurl { + url = "https://github.com/flatpak/flatpak-builder/releases/download/${version}/${name}.tar.xz"; + sha256 = "0b0c2rmf2vj596600blbhsiv2dg7qwpr33lgdcn0bnqc4ddri6f2"; + }; + + nativeBuildInputs = [ + autoreconfHook + docbook_xml_dtd_412 + docbook_xml_dtd_42 + docbook_xml_dtd_43 + docbook_xsl + gettext + libxml2 + libxslt + pkgconfig + xmlto + ]; + + buildInputs = [ + acl + bzip2 + elfutils + flatpak + glib + json_glib + libcap + libdwarf + libsoup + libxml2 + ostree + ]; + + patches = [ + # patch taken from gtk_doc + ./respect-xml-catalog-files-var.patch + (substituteAll { + src = ./fix-paths.patch; + bzr = "${bazaar}/bin/bzr"; + cp = "${coreutils}/bin/cp"; + patch = "${patch}/bin/patch"; + tar = "${gnutar}/bin/tar"; + unzip = "${unzip}/bin/unzip"; + rpm2cpio = "${rpm}/bin/rpm2cpio"; + cpio = "${cpio}/bin/cpio"; + git = "${gitMinimal}/bin/git"; + rofilesfuse = "${ostree}/bin/rofiles-fuse"; + strip = "${binutils}/bin/strip"; + eustrip = "${elfutils}/bin/eu-strip"; + euelfcompress = "${elfutils}/bin/eu-elfcompress"; + }) + ]; + + meta = with stdenv.lib; { + description = "Tool to build flatpaks from source"; + homepage = https://flatpak.org/; + license = licenses.lgpl21; + maintainers = with maintainers; [ jtojnar ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/development/tools/flatpak-builder/fix-paths.patch b/pkgs/development/tools/flatpak-builder/fix-paths.patch new file mode 100644 index 00000000000..001ddd64568 --- /dev/null +++ b/pkgs/development/tools/flatpak-builder/fix-paths.patch @@ -0,0 +1,116 @@ +--- a/src/builder-context.c ++++ b/src/builder-context.c +@@ -711,7 +711,7 @@ + g_autoptr(GFile) rofiles_base = NULL; + g_autoptr(GFile) rofiles_dir = NULL; + g_autofree char *tmpdir_name = NULL; +- char *argv[] = { "rofiles-fuse", ++ char *argv[] = { "@rofilesfuse@", + "-o", + "kernel_cache,entry_timeout=60,attr_timeout=60,splice_write,splice_move", + (char *)flatpak_file_get_path_cached (self->app_dir), +--- a/src/builder-git.c ++++ b/src/builder-git.c +@@ -44,7 +44,7 @@ + va_list ap; + + va_start (ap, error); +- res = flatpak_spawn (dir, output, flags, error, "git", ap); ++ res = flatpak_spawn (dir, output, flags, error, "@git@", ap); + va_end (ap); + + return res; +@@ -58,7 +58,7 @@ + va_list ap; + + va_start (ap, error); +- res = flatpak_spawn (NULL, NULL, 0, error, "cp", ap); ++ res = flatpak_spawn (NULL, NULL, 0, error, "@cp@", ap); + va_end (ap); + + return res; +--- a/src/builder-source-archive.c ++++ b/src/builder-source-archive.c +@@ -401,7 +401,7 @@ + va_list ap; + + va_start (ap, error); +- res = flatpak_spawn (dir, NULL, 0, error, "tar", ap); ++ res = flatpak_spawn (dir, NULL, 0, error, "@tar@", ap); + va_end (ap); + + return res; +@@ -416,7 +416,7 @@ + va_list ap; + + va_start (ap, error); +- res = flatpak_spawn (dir, NULL, 0, error, "unzip", ap); ++ res = flatpak_spawn (dir, NULL, 0, error, "@unzip@", ap); + va_end (ap); + + return res; +@@ -428,7 +428,7 @@ + GError **error) + { + gboolean res; +- const gchar *argv[] = { "sh", "-c", "rpm2cpio \"$1\" | cpio -i -d", ++ const gchar *argv[] = { "sh", "-c", "@rpm2cpio@ \"$1\" | @cpio@ -i -d", + "sh", /* shell's $0 */ + rpm_path, /* shell's $1 */ + NULL }; +--- a/src/builder-source-bzr.c ++++ b/src/builder-source-bzr.c +@@ -124,7 +124,7 @@ + va_list ap; + + va_start (ap, error); +- res = flatpak_spawn (dir, output, 0, error, "bzr", ap); ++ res = flatpak_spawn (dir, output, 0, error, "@bzr@", ap); + va_end (ap); + + return res; +--- a/src/builder-source-patch.c ++++ b/src/builder-source-patch.c +@@ -204,11 +204,11 @@ + + args = g_ptr_array_new (); + if (use_git) { +- g_ptr_array_add (args, "git"); ++ g_ptr_array_add (args, "@git@"); + g_ptr_array_add (args, "apply"); + g_ptr_array_add (args, "-v"); + } else { +- g_ptr_array_add (args, "patch"); ++ g_ptr_array_add (args, "@patch@"); + } + for (i = 0; extra_options != NULL && extra_options[i] != NULL; i++) + g_ptr_array_add (args, (gchar *) extra_options[i]); +--- a/src/builder-utils.c ++++ b/src/builder-utils.c +@@ -139,7 +139,7 @@ + va_list ap; + + va_start (ap, error); +- res = flatpak_spawn (NULL, NULL, 0, error, "strip", ap); ++ res = flatpak_spawn (NULL, NULL, 0, error, "@strip@", ap); + va_end (ap); + + return res; +@@ -153,7 +153,7 @@ + va_list ap; + + va_start (ap, error); +- res = flatpak_spawn (NULL, NULL, 0, error, "eu-strip", ap); ++ res = flatpak_spawn (NULL, NULL, 0, error, "@eustrip@", ap); + va_end (ap); + + return res; +@@ -167,7 +167,7 @@ + va_list ap; + + va_start (ap, error); +- res = flatpak_spawn (NULL, NULL, 0, error, "eu-elfcompress", ap); ++ res = flatpak_spawn (NULL, NULL, 0, error, "@euelfcompress@", ap); + va_end (ap); + + return res; diff --git a/pkgs/development/tools/flatpak-builder/respect-xml-catalog-files-var.patch b/pkgs/development/tools/flatpak-builder/respect-xml-catalog-files-var.patch new file mode 100644 index 00000000000..0e259aebd8a --- /dev/null +++ b/pkgs/development/tools/flatpak-builder/respect-xml-catalog-files-var.patch @@ -0,0 +1,13 @@ +--- a/acinclude.m4 ++++ b/acinclude.m4 +@@ -40,8 +40,8 @@ + [ + AC_REQUIRE([JH_PATH_XML_CATALOG],[JH_PATH_XML_CATALOG(,[:])])dnl + AC_MSG_CHECKING([for ifelse([$2],,[$1],[$2]) in XML catalog]) +- if $jh_found_xmlcatalog && \ +- AC_RUN_LOG([$XMLCATALOG --noout "$XML_CATALOG_FILE" "$1" >&2]); then ++ # empty argument forces libxml to use XML_CATALOG_FILES variable ++ if AC_RUN_LOG([$XMLCATALOG --noout "" "$1" >&2]); then + AC_MSG_RESULT([found]) + ifelse([$3],,,[$3 + ])dnl diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 51ac4297091..6bde66daf96 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2299,6 +2299,8 @@ with pkgs; flatpak = callPackage ../development/libraries/flatpak { }; + flatpak-builder = callPackage ../development/tools/flatpak-builder { }; + figlet = callPackage ../tools/misc/figlet { }; file = callPackage ../tools/misc/file { }; From ec80c5e4c48df8264e5e230bb81eb55e045382dc Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Tue, 13 Feb 2018 02:09:51 +0100 Subject: [PATCH 18/55] nixos/flatpak: allow specifying extra portals --- nixos/modules/services/desktops/flatpak.nix | 35 +++++++-- .../services/x11/desktop-managers/gnome3.nix | 1 + .../libraries/xdg-desktop-portal/default.nix | 4 + .../respect-path-env-var.patch | 76 +++++++++++++++++++ 4 files changed, 108 insertions(+), 8 deletions(-) create mode 100644 pkgs/development/libraries/xdg-desktop-portal/respect-path-env-var.patch diff --git a/nixos/modules/services/desktops/flatpak.nix b/nixos/modules/services/desktops/flatpak.nix index d191eeff990..23480e65267 100644 --- a/nixos/modules/services/desktops/flatpak.nix +++ b/nixos/modules/services/desktops/flatpak.nix @@ -3,26 +3,45 @@ with lib; -{ +let + cfg = config.services.flatpak; +in { ###### interface options = { services.flatpak = { enable = mkEnableOption "flatpak"; + + extraPortals = mkOption { + type = types.listOf types.package; + default = []; + description = '' + List of additional portals to add to path. Portals allow interaction + with system, like choosing files or taking screenshots. At minimum, + a desktop portal implementation should be listed. GNOME already + adds xdg-desktop-portal-gtk; for KDE, there + is xdg-desktop-portal-kde. Other desktop + environments will probably want to do the same. + ''; + }; }; }; ###### implementation - config = mkIf config.services.flatpak.enable { + config = mkIf cfg.enable { environment.systemPackages = [ pkgs.flatpak ]; - services.dbus.packages = [ pkgs.flatpak ]; + services.dbus.packages = [ pkgs.flatpak pkgs.xdg-desktop-portal ] ++ cfg.extraPortals; - systemd.packages = [ pkgs.flatpak ]; + systemd.packages = [ pkgs.flatpak pkgs.xdg-desktop-portal ] ++ cfg.extraPortals; - environment.variables.PATH = [ - "$HOME/.local/share/flatpak/exports/bin" - "/var/lib/flatpak/exports/bin" - ]; + environment.variables = { + PATH = [ + "$HOME/.local/share/flatpak/exports/bin" + "/var/lib/flatpak/exports/bin" + ]; + + XDG_DESKTOP_PORTAL_PATH = map (p: "${p}/share/xdg-desktop-portal/portals") cfg.extraPortals; + }; }; } diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix index 10e8ef0ed38..27b62df7097 100644 --- a/nixos/modules/services/x11/desktop-managers/gnome3.nix +++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix @@ -120,6 +120,7 @@ in { services.xserver.libinput.enable = mkDefault true; # for controlling touchpad settings via gnome control center services.udev.packages = [ pkgs.gnome3.gnome-settings-daemon ]; systemd.packages = [ pkgs.gnome3.vino ]; + services.flatpak.extraPortals = [ pkgs.xdg-desktop-portal-gtk ]; # If gnome3 is installed, build vim for gtk3 too. nixpkgs.config.vim.gui = "gtk3"; diff --git a/pkgs/development/libraries/xdg-desktop-portal/default.nix b/pkgs/development/libraries/xdg-desktop-portal/default.nix index 6721d5f00ac..98bd8ba23bb 100644 --- a/pkgs/development/libraries/xdg-desktop-portal/default.nix +++ b/pkgs/development/libraries/xdg-desktop-portal/default.nix @@ -14,6 +14,10 @@ in stdenv.mkDerivation rec { sha256 = "06gipd51snvlp2jp68v2c8rwbsv36kjzg9xacm81n1w4b2dpz4g0"; }; + patches = [ + ./respect-path-env-var.patch + ]; + nativeBuildInputs = [ autoreconfHook pkgconfig libxml2 ]; buildInputs = [ glib pipewire fuse ]; diff --git a/pkgs/development/libraries/xdg-desktop-portal/respect-path-env-var.patch b/pkgs/development/libraries/xdg-desktop-portal/respect-path-env-var.patch new file mode 100644 index 00000000000..f884899ecd1 --- /dev/null +++ b/pkgs/development/libraries/xdg-desktop-portal/respect-path-env-var.patch @@ -0,0 +1,76 @@ +--- a/src/xdg-desktop-portal.c ++++ b/src/xdg-desktop-portal.c +@@ -177,38 +177,50 @@ + static void + load_installed_portals (void) + { +- const char *portal_dir = PKGDATADIR "/portals"; +- g_autoptr(GFile) dir = g_file_new_for_path (portal_dir); +- g_autoptr(GFileEnumerator) enumerator = NULL; + +- enumerator = g_file_enumerate_children (dir, "*", G_FILE_QUERY_INFO_NONE, NULL, NULL); ++ g_auto(GStrv) portal_dir_list; ++ int i; ++ const char *portal_dir = g_getenv ("XDG_DESKTOP_PORTAL_PATH"); ++ ++ if (portal_dir == NULL) ++ portal_dir = PKGDATADIR "/portals"; + +- if (enumerator == NULL) +- return; ++ portal_dir_list = g_strsplit (portal_dir, G_SEARCHPATH_SEPARATOR_S, 0); + +- while (TRUE) ++ for (i = 0; portal_dir_list[i] != NULL; i++) + { +- g_autoptr(GFileInfo) info = g_file_enumerator_next_file (enumerator, NULL, NULL); +- g_autoptr(GFile) child = NULL; +- g_autofree char *path = NULL; +- const char *name; +- g_autoptr(GError) error = NULL; ++ portal_dir = portal_dir_list[i]; ++ g_autoptr(GFile) dir = g_file_new_for_path (portal_dir); ++ g_autoptr(GFileEnumerator) enumerator = NULL; ++ enumerator = g_file_enumerate_children (dir, "*", G_FILE_QUERY_INFO_NONE, NULL, NULL); + +- if (info == NULL) +- break; ++ if (enumerator == NULL) ++ continue; + +- name = g_file_info_get_name (info); ++ while (TRUE) ++ { ++ g_autoptr(GFileInfo) info = g_file_enumerator_next_file (enumerator, NULL, NULL); ++ g_autoptr(GFile) child = NULL; ++ g_autofree char *path = NULL; ++ const char *name; ++ g_autoptr(GError) error = NULL; + +- if (!g_str_has_suffix (name, ".portal")) +- continue; ++ if (info == NULL) ++ break; + +- child = g_file_enumerator_get_child (enumerator, info); +- path = g_file_get_path (child); ++ name = g_file_info_get_name (info); + +- if (!register_portal (path, &error)) +- { +- g_warning ("Error loading %s: %s", path, error->message); +- continue; ++ if (!g_str_has_suffix (name, ".portal")) ++ continue; ++ ++ child = g_file_enumerator_get_child (enumerator, info); ++ path = g_file_get_path (child); ++ ++ if (!register_portal (path, &error)) ++ { ++ g_warning ("Error loading %s: %s", path, error->message); ++ continue; ++ } + } + } + From 91365cd23abc28395b78b53d67b280f5b159a906 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Tue, 15 May 2018 14:10:29 +0200 Subject: [PATCH 19/55] nexus: fix setup and nixos test (#40522) The original `nexus` derivation required `/run/sonatype-work/nexus3` which explicitly depended on the NixOS path structure. This would break `nexus` for everyone using `nixpkgs` on a non-NixOS system, additionally the module never created `/run/sonatype-work`, so the systemd unit created in `services.nexus` fails as well. The issue wasn't actively known as the `nixos/nexus` test wasn't registered in Hydra (see #40257). This patch contains the following changes: * Adds `tests.nexus` to `release.nix` to run the test on Hydra. * Makes JVM parameters configurable: by default all JVM options were located in `result/bin/nexus.vmoptions` which made it quite hard to patch these parameters. Now it's possible to override all parameters by running `VM_OPTS_FILE=custom-nexus.vmoptions ./result/bin/nexus run` (after patching the `nexus` shell script), additionally it's possible to override these parameters with `services.nexus.vmoptions`. * Bumped Nexus from 3.5.1 to 3.11.0 * Run the `nexus` test on Hydra with `callTest` in `nixos/release.nix`, furthermore the test checks if the UI is available on the specified port. * Added myself as maintainer for the NixOS test and the package to have some more people in case of further breakage. * Added sufficient disk space to the `nexus` test, otherwise the service fails with the following errors: ``` com.orientechnologies.orient.core.exception.ODatabaseException: Cannot create database 'accesslog' com.orientechnologies.orient.core.exception.OLowDiskSpaceException: Error occurred while executing a write operation to database 'accesslog' due to limited free space on the disk (242 MB). The database is now working in read-only mode. Please close the database (or stop OrientDB), make room on your hard drive and then reopen the database. The minimal required space is 256 MB. Required space is now set to 256MB (you can change it by setting parameter storage.diskCache.diskFreeSpaceLimit) . ``` /cc @ironpinguin @xeji --- nixos/modules/services/web-apps/nexus.nix | 40 ++++++++++++++++--- nixos/release.nix | 1 + nixos/tests/nexus.nix | 16 ++++---- .../repository-managers/nexus/default.nix | 16 ++++---- .../nexus/nexus-vm-opts.patch | 14 +++++++ 5 files changed, 63 insertions(+), 24 deletions(-) create mode 100644 pkgs/development/tools/repository-managers/nexus/nexus-vm-opts.patch diff --git a/nixos/modules/services/web-apps/nexus.nix b/nixos/modules/services/web-apps/nexus.nix index f6a5ce73a12..d5bd0f12feb 100644 --- a/nixos/modules/services/web-apps/nexus.nix +++ b/nixos/modules/services/web-apps/nexus.nix @@ -42,6 +42,34 @@ in default = 8081; description = "Port to listen on."; }; + + jvmOpts = mkOption { + type = types.lines; + default = '' + -Xms1200M + -Xmx1200M + -XX:MaxDirectMemorySize=2G + -XX:+UnlockDiagnosticVMOptions + -XX:+UnsyncloadClass + -XX:+LogVMOutput + -XX:LogFile=${cfg.home}/nexus3/log/jvm.log + -XX:-OmitStackTraceInFastThrow + -Djava.net.preferIPv4Stack=true + -Dkaraf.home=${pkgs.nexus} + -Dkaraf.base=${pkgs.nexus} + -Dkaraf.etc=${pkgs.nexus}/etc/karaf + -Djava.util.logging.config.file=${pkgs.nexus}/etc/karaf/java.util.logging.properties + -Dkaraf.data=${cfg.home}/nexus3 + -Djava.io.tmpdir=${cfg.home}/nexus3/tmp + -Dkaraf.startLocalConsole=false + ''; + + description = '' + Options for the JVM written to `nexus.jvmopts`. + Please refer to the docs (https://help.sonatype.com/repomanager3/installation/configuring-the-runtime-environment) + for further information. + ''; + }; }; }; @@ -63,13 +91,13 @@ in environment = { NEXUS_USER = cfg.user; NEXUS_HOME = cfg.home; + + VM_OPTS_FILE = pkgs.writeText "nexus.vmoptions" cfg.jvmOpts; }; preStart = '' mkdir -p ${cfg.home}/nexus3/etc - ln -sf ${cfg.home} /run/sonatype-work - chown -R ${cfg.user}:${cfg.group} ${cfg.home} if [ ! -f ${cfg.home}/nexus3/etc/nexus.properties ]; then @@ -77,10 +105,10 @@ in echo "application-port=${toString cfg.listenPort}" >> ${cfg.home}/nexus3/etc/nexus.properties echo "application-host=${toString cfg.listenAddress}" >> ${cfg.home}/nexus3/etc/nexus.properties else - sed 's/^application-port=.*/application-port=${toString cfg.listenPort}/' -i ${cfg.home}/nexus3/etc/nexus.properties - sed 's/^# application-port=.*/application-port=${toString cfg.listenPort}/' -i ${cfg.home}/nexus3/etc/nexus.properties - sed 's/^application-host=.*/application-host=${toString cfg.listenAddress}/' -i ${cfg.home}/nexus3/etc/nexus.properties - sed 's/^# application-host=.*/application-host=${toString cfg.listenAddress}/' -i ${cfg.home}/nexus3/etc/nexus.properties + sed 's/^application-port=.*/application-port=${toString cfg.listenPort}/' -i ${cfg.home}/nexus3/etc/nexus.properties + sed 's/^# application-port=.*/application-port=${toString cfg.listenPort}/' -i ${cfg.home}/nexus3/etc/nexus.properties + sed 's/^application-host=.*/application-host=${toString cfg.listenAddress}/' -i ${cfg.home}/nexus3/etc/nexus.properties + sed 's/^# application-host=.*/application-host=${toString cfg.listenAddress}/' -i ${cfg.home}/nexus3/etc/nexus.properties fi ''; diff --git a/nixos/release.nix b/nixos/release.nix index 7ec41af4fd4..365f93b731e 100644 --- a/nixos/release.nix +++ b/nixos/release.nix @@ -346,6 +346,7 @@ in rec { tests.networking.scripted = callSubTests tests/networking.nix { networkd = false; }; # TODO: put in networking.nix after the test becomes more complete tests.networkingProxy = callTest tests/networking-proxy.nix {}; + tests.nexus = callTest tests/nexus.nix { }; tests.nfs3 = callTest tests/nfs.nix { version = 3; }; tests.nfs4 = callTest tests/nfs.nix { version = 4; }; tests.nginx = callTest tests/nginx.nix { }; diff --git a/nixos/tests/nexus.nix b/nixos/tests/nexus.nix index 1f19fc0867a..d12d06c2c00 100644 --- a/nixos/tests/nexus.nix +++ b/nixos/tests/nexus.nix @@ -1,12 +1,12 @@ # verifies: # 1. nexus service starts on server -# 2. nexus user can be extended on server -# 3. nexus service not can startup on server (creating database and all other initial stuff) +# 2. nexus service can startup on server (creating database and all other initial stuff) +# 3. the web application is reachable via HTTP import ./make-test.nix ({ pkgs, ...} : { name = "nexus"; meta = with pkgs.stdenv.lib.maintainers; { - maintainers = [ ironpinguin ]; + maintainers = [ ironpinguin ma27 ]; }; nodes = { @@ -14,21 +14,19 @@ import ./make-test.nix ({ pkgs, ...} : { server = { config, pkgs, ... }: { virtualisation.memorySize = 2048; + virtualisation.diskSize = 2048; services.nexus.enable = true; - - users.extraUsers.nexus.extraGroups = [ "users" ]; }; + }; testScript = '' startAll; $server->waitForUnit("nexus"); - - print $server->execute("sudo -u nexus groups"); - $server->mustSucceed("sudo -u nexus groups | grep nexus | grep users"); - $server->waitForOpenPort(8081); + + $server->succeed("curl -f 127.0.0.1:8081"); ''; }) diff --git a/pkgs/development/tools/repository-managers/nexus/default.nix b/pkgs/development/tools/repository-managers/nexus/default.nix index 25dba0ac02f..fb7a6007074 100644 --- a/pkgs/development/tools/repository-managers/nexus/default.nix +++ b/pkgs/development/tools/repository-managers/nexus/default.nix @@ -1,22 +1,22 @@ { stdenv, fetchurl, makeWrapper, jre, gawk }: + stdenv.mkDerivation rec { name = "nexus-${version}"; - version = "3.5.1-02"; + version = "3.11.0-01"; src = fetchurl { url = "https://sonatype-download.global.ssl.fastly.net/nexus/3/nexus-${version}-mac.tgz"; - sha256 = "5ef3512c2bbdd45ef35921c1a0ba109b45bd9dad88311750196aa689262258b6"; + sha256 = "1h5nfzb1sqhzb5j7w2dpmdi7vnnc9g6zx43a44f3zjvlxh1s0vim"; }; sourceRoot = name; nativeBuildInputs = [ makeWrapper ]; - patches = [ ./nexus-bin.patch ]; + patches = [ ./nexus-bin.patch ./nexus-vm-opts.patch ]; postPatch = '' substituteInPlace bin/nexus.vmoptions \ - --replace ../sonatype-work/nexus3 /run/sonatype-work/nexus3 \ --replace etc/karaf $out/etc/karaf \ --replace =. =$out ''; @@ -28,14 +28,12 @@ stdenv.mkDerivation rec { cp -rfv * .install4j $out rm -fv $out/bin/nexus.bat - runHook postInstall - ''; - - postInstall = '' wrapProgram $out/bin/nexus \ --set JAVA_HOME ${jre} \ --set ALTERNATIVE_NAME "nexus" \ --prefix PATH "${stdenv.lib.makeBinPath [ gawk ]}" + + runHook postInstall ''; meta = with stdenv.lib; { @@ -43,6 +41,6 @@ stdenv.mkDerivation rec { homepage = http://www.sonatype.org/nexus; license = licenses.epl10; platforms = platforms.all; - maintainers = with maintainers; [ aespinosa ironpinguin ]; + maintainers = with maintainers; [ aespinosa ironpinguin ma27 ]; }; } diff --git a/pkgs/development/tools/repository-managers/nexus/nexus-vm-opts.patch b/pkgs/development/tools/repository-managers/nexus/nexus-vm-opts.patch new file mode 100644 index 00000000000..744b4b96a56 --- /dev/null +++ b/pkgs/development/tools/repository-managers/nexus/nexus-vm-opts.patch @@ -0,0 +1,14 @@ +diff --git a/bin/nexus b/bin/nexus +index e7ed3fb..8db766b 100755 +--- a/bin/nexus ++++ b/bin/nexus +@@ -440,7 +440,8 @@ add_class_path "$app_home/lib/boot/org.apache.karaf.diagnostic.boot-4.0.9.jar" + add_class_path "$app_home/lib/boot/org.apache.karaf.jaas.boot-4.0.9.jar" + + vmoptions_val="" +-read_vmoptions "$prg_dir/$progname.vmoptions" ++VM_OPTS=${VM_OPTS_FILE:-"$prg_dir/$progname.vmoptions"} ++read_vmoptions "$VM_OPTS" + INSTALL4J_ADD_VM_PARAMS="$INSTALL4J_ADD_VM_PARAMS $vmoptions_val" + + From 1c043637140514df1205830e2ac860e57ef7a23a Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Tue, 13 Feb 2018 17:52:49 +0100 Subject: [PATCH 20/55] nixos/flatpak: add test --- nixos/release.nix | 1 + nixos/tests/flatpak.nix | 23 +++++ .../libraries/flatpak/fix-test-paths.patch | 86 +++++++++++++++++++ 3 files changed, 110 insertions(+) create mode 100644 nixos/tests/flatpak.nix diff --git a/nixos/release.nix b/nixos/release.nix index ae70b535a5e..8151d1bac5e 100644 --- a/nixos/release.nix +++ b/nixos/release.nix @@ -284,6 +284,7 @@ in rec { tests.env = callTest tests/env.nix {}; tests.ferm = callTest tests/ferm.nix {}; tests.firefox = callTest tests/firefox.nix {}; + tests.flatpak = callTest tests/flatpak.nix {}; tests.firewall = callTest tests/firewall.nix {}; tests.fwupd = callTest tests/fwupd.nix {}; #tests.gitlab = callTest tests/gitlab.nix {}; diff --git a/nixos/tests/flatpak.nix b/nixos/tests/flatpak.nix new file mode 100644 index 00000000000..d1c7cf84314 --- /dev/null +++ b/nixos/tests/flatpak.nix @@ -0,0 +1,23 @@ +# run installed tests +import ./make-test.nix ({ pkgs, ... }: + +{ + name = "flatpak"; + meta = { + maintainers = pkgs.flatpak.meta.maintainers; + }; + + machine = { config, pkgs, ... }: { + imports = [ ./common/x11.nix ]; + services.xserver.desktopManager.gnome3.enable = true; # TODO: figure out minimal environment where the tests work + services.flatpak.enable = true; + environment.systemPackages = with pkgs; [ gnupg gnome-desktop-testing ostree python2 ]; + virtualisation.memorySize = 2047; + virtualisation.diskSize = 1024; + }; + + testScript = '' + $machine->waitForX(); + $machine->succeed("gnome-desktop-testing-runner -d '${pkgs.flatpak.installedTests}/share' --timeout 3600"); + ''; +}) diff --git a/pkgs/development/libraries/flatpak/fix-test-paths.patch b/pkgs/development/libraries/flatpak/fix-test-paths.patch index e0734009420..a548f388286 100644 --- a/pkgs/development/libraries/flatpak/fix-test-paths.patch +++ b/pkgs/development/libraries/flatpak/fix-test-paths.patch @@ -33,6 +33,81 @@ gpg-connect-agent --homedir "${FL_GPG_HOMEDIR}" killagent /bye || true fusermount -u $XDG_RUNTIME_DIR/doc || : if test -n "${TEST_SKIP_CLEANUP:-}"; then +--- a/tests/make-test-runtime.sh ++++ b/tests/make-test-runtime.sh +@@ -21,6 +21,7 @@ + cat ${DIR}/metadata + + # Add bash and dependencies ++mkdir -p ${DIR}/nix/store + mkdir -p ${DIR}/usr/bin + mkdir -p ${DIR}/usr/lib + ln -s ../lib ${DIR}/usr/lib64 +@@ -30,47 +31,27 @@ + else + cp `which ldconfig` ${DIR}/usr/bin + fi +-T=`mktemp` +-for i in $@; do +- I=`which $i` +- cp $I ${DIR}/usr/bin +- ldd $I | sed "s/.* => //" | awk '{ print $1}' | grep ^/ | grep ^/ >> $T +- if test $i == python2; then +- mkdir -p ${DIR}/usr/lib/python2.7/lib-dynload +- # This is a hardcoded minimal set of modules we need in the current tests. +- # Pretty hacky stuff. Add modules as needed. +- PYDIR=/usr/lib/python2.7 +- if test -d /usr/lib64/python2.7; then PYDIR=/usr/lib64/python2.7; fi +- for py in site os stat posixpath genericpath warnings \ +- linecache types UserDict abc _abcoll \ +- _weakrefset copy_reg traceback sysconfig \ +- re sre_compile sre_parse sre_constants \ +- _sysconfigdata ; do +- cp ${PYDIR}/$py.py ${DIR}/usr/lib/python2.7 +- done +- # These might not exist, depending how Python was configured; and the +- # part after ${so} might be "module" or ".x86_64-linux-gnu" or +- # something else +- for so in _locale strop ; do +- cp ${PYDIR}/lib-dynload/${so}*.so ${DIR}/usr/lib/python2.7/lib-dynload || : +- done +- for plat in $( cd ${PYDIR} && echo plat-* ); do +- test -e ${PYDIR}/${plat} || continue +- mkdir -p ${DIR}/usr/lib/python2.7/${plat} +- cp ${PYDIR}/${plat}/*.py ${DIR}/usr/lib/python2.7/${plat}/ +- done +- fi +-done + ln -s bash ${DIR}/usr/bin/sh +-for i in `sort -u $T`; do +- cp "$i" ${DIR}/usr/lib/ ++for i in $@; do ++ I=$(readlink -f $(which $i)) ++ requisites=$(nix-store --query --requisites "$I") ++ for r in $requisites; do ++ # a single store item can be needed by multiple paths, no need to copy it again ++ if [ ! -e ${DIR}/$r ]; then ++ cp -r $r ${DIR}/$r ++ fi ++ done ++ ln -s $I ${DIR}/usr/bin/$i + done + +-# We copy the C.UTF8 locale and call it en_US. Its a bit of a lie, but +-# the real en_US locale is often not available, because its in the +-# local archive. ++mv ${DIR}/nix/store ${DIR}/usr/store # files outside /usr are not permitted, we will have to replace /nix/store with /usr/store ++chmod -R u+w ${DIR} # nix store has read-only directories which would cause problems during clean-up, files need to be writable for sed ++find ${DIR} -type f -print0 | xargs -0 sed -i 's~/nix/store/~/usr/store/~g' # replace hardcoded paths ++find ${DIR} -type l | xargs -I '{}' sh -c 'tg="$(readlink "$1")"; newtg="${tg#/nix/store/}"; if [ "$tg" != "$newtg" ]; then ln -fs "/usr/store/$newtg" "$1"; fi' -- '{}' # replace symlink targets ++ ++# We copy the whole locale archive because we do not have C.UTF8 locale + mkdir -p ${DIR}/usr/lib/locale/ +-cp -r /usr/lib/locale/C.* ${DIR}/usr/lib/locale/en_US ++cp @glibcLocales@/lib/locale/locale-archive ${DIR}/usr/lib/locale/locale-archive + + if [ x$COLLECTION_ID != x ]; then + collection_args=--collection-id=${COLLECTION_ID} --- a/tests/testlibrary.c +++ b/tests/testlibrary.c @@ -378,7 +378,7 @@ @@ -44,3 +119,14 @@ g_autofree char *argv_str = g_strjoinv (" ", argv); g_test_message ("Spawning %s", argv_str); g_spawn_sync (NULL, argv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL, NULL, NULL, &exit_code, &error); +--- a/triggers/gtk-icon-cache.trigger ++++ b/triggers/gtk-icon-cache.trigger +@@ -1,7 +1,7 @@ + #!/bin/sh + + if test \( -x "$(which gtk-update-icon-cache 2>/dev/null)" \) -a \( -d $1/exports/share/icons/hicolor \); then +- cp /usr/share/icons/hicolor/index.theme $1/exports/share/icons/hicolor/ ++ cp @hicolorIconTheme@/share/icons/hicolor/index.theme $1/exports/share/icons/hicolor/ + for dir in $1/exports/share/icons/*; do + if test -f $dir/index.theme; then + if ! gtk-update-icon-cache --quiet $dir; then From 21ff482f7d7fa233ebdf553ddc5edf459e7344eb Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Thu, 22 Feb 2018 06:29:51 +0100 Subject: [PATCH 21/55] nixos/xdg-desktop-portal: add test --- nixos/release.nix | 1 + nixos/tests/xdg-desktop-portal.nix | 17 +++++++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 nixos/tests/xdg-desktop-portal.nix diff --git a/nixos/release.nix b/nixos/release.nix index 8151d1bac5e..f8f643f1a5a 100644 --- a/nixos/release.nix +++ b/nixos/release.nix @@ -399,6 +399,7 @@ in rec { tests.virtualbox = callSubTestsOnMatchingSystems ["x86_64-linux"] tests/virtualbox.nix {}; tests.wordpress = callTest tests/wordpress.nix {}; tests.xautolock = callTest tests/xautolock.nix {}; + tests.xdg-desktop-portal = callTest tests/xdg-desktop-portal.nix {}; tests.xfce = callTest tests/xfce.nix {}; tests.xmonad = callTest tests/xmonad.nix {}; tests.xrdp = callTest tests/xrdp.nix {}; diff --git a/nixos/tests/xdg-desktop-portal.nix b/nixos/tests/xdg-desktop-portal.nix new file mode 100644 index 00000000000..d954b07f73d --- /dev/null +++ b/nixos/tests/xdg-desktop-portal.nix @@ -0,0 +1,17 @@ +# run installed tests +import ./make-test.nix ({ pkgs, ... }: + +{ + name = "xdg-desktop-portal"; + meta = { + maintainers = pkgs.xdg-desktop-portal.meta.maintainers; + }; + + machine = { config, pkgs, ... }: { + environment.systemPackages = with pkgs; [ gnome-desktop-testing ]; + }; + + testScript = '' + $machine->succeed("gnome-desktop-testing-runner -d '${pkgs.xdg-desktop-portal.installedTests}/share'"); + ''; +}) From d614f32e7ac639fb2e562c1be66d1d84bb3c3ad5 Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Fri, 11 May 2018 06:00:44 +0200 Subject: [PATCH 22/55] nixos/flatpak: add docs --- nixos/modules/services/desktops/flatpak.nix | 5 ++ nixos/modules/services/desktops/flatpak.xml | 53 +++++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 nixos/modules/services/desktops/flatpak.xml diff --git a/nixos/modules/services/desktops/flatpak.nix b/nixos/modules/services/desktops/flatpak.nix index 23480e65267..024dc65629a 100644 --- a/nixos/modules/services/desktops/flatpak.nix +++ b/nixos/modules/services/desktops/flatpak.nix @@ -6,6 +6,11 @@ with lib; let cfg = config.services.flatpak; in { + meta = { + doc = ./flatpak.xml; + maintainers = pkgs.flatpak.meta.maintainers; + }; + ###### interface options = { services.flatpak = { diff --git a/nixos/modules/services/desktops/flatpak.xml b/nixos/modules/services/desktops/flatpak.xml new file mode 100644 index 00000000000..d9c8b711c45 --- /dev/null +++ b/nixos/modules/services/desktops/flatpak.xml @@ -0,0 +1,53 @@ + + +Flatpak + +Source: modules/services/desktop/flatpak.nix + +Upstream documentation: + +Flatpak is a system for building, distributing, and running sandboxed desktop applications on Linux. + + + To enable Flatpak, add the following to your configuration.nix: + + + = true; + + + + + For the sandboxed apps to work correctly, desktop integration portals need to be installed. If you run GNOME, this will be handled automatically for you; in other cases, you will need to add something like the following to your configuration.nix: + + + = [ pkgs.xdg-desktop-portal-gtk ]; + + + + + Then, you will need to add a repository, for example, Flathub, either using the following commands: + + + flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo + flatpak update + + + or by opening the repository file in GNOME Software. + + + + Finally, you can search and install programs: + + + flatpak search bustle + flatpak install flathub org.freedesktop.Bustle + flatpak run org.freedesktop.Bustle + + + Again, GNOME Software offers graphical interface for these tasks. + + From 9cd3c7a12ee6d131c9ea545c2c75b412b7506673 Mon Sep 17 00:00:00 2001 From: Tim Steinbach Date: Tue, 15 May 2018 08:21:25 -0400 Subject: [PATCH 23/55] linux-testing: 4.17-rc4 -> 4.17-rc5 --- pkgs/os-specific/linux/kernel/linux-testing.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix index 92225670330..691c0d7a0a9 100644 --- a/pkgs/os-specific/linux/kernel/linux-testing.nix +++ b/pkgs/os-specific/linux/kernel/linux-testing.nix @@ -1,13 +1,13 @@ { stdenv, buildPackages, hostPlatform, fetchurl, perl, buildLinux, libelf, utillinux, ... } @ args: buildLinux (args // rec { - version = "4.17-rc4"; - modDirVersion = "4.17.0-rc4"; + version = "4.17-rc5"; + modDirVersion = "4.17.0-rc5"; extraMeta.branch = "4.17"; src = fetchurl { url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz"; - sha256 = "1y34hpzgxblwqslhsfsmzmpv9f3s936r93wgn4kmhkcwsm0in292"; + sha256 = "1khx3s8nb604h23hasamshcvcwll0j4vi5v6v274ls01ja9mg1xk"; }; # Should the testing kernels ever be built on Hydra? From c7e8ddc066ea4d06b979c066fa983f3d1c00d232 Mon Sep 17 00:00:00 2001 From: Yorick Date: Tue, 15 May 2018 14:33:29 +0200 Subject: [PATCH 24/55] linux: config: remove prefix on KEY_DH_OPERATIONS --- pkgs/os-specific/linux/kernel/common-config.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index ebb569689b2..ec2b2f38795 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -639,7 +639,7 @@ with stdenv.lib; # needed for iwd WPS support (wpa_supplicant replacement) ${optionalString (versionAtLeast version "4.7") '' - CONFIG_KEY_DH_OPERATIONS y + KEY_DH_OPERATIONS y ''} # Disable the firmware helper fallback, udev doesn't implement it any more From a7f79620accdb40282fef1d50d86762a978a8ed7 Mon Sep 17 00:00:00 2001 From: aszlig Date: Tue, 15 May 2018 14:47:51 +0200 Subject: [PATCH 25/55] nixos: Fix build of the manual The manual still had a reference to an option that was already renamed ages ago and a7ed44ccadfcf1bd54d0197fbc87b6c1b0bcef7b made it 'visible'. With the visible attribute set to false for extraKernelModules, the option no longer appears in the manual and thus breaks the link from the manual to the options. This is easily fixed by referring to boot.initrd.kernelModules instead of the obsolete option boot.initrd.extraKernelModules. Signed-off-by: aszlig Cc: @rycee, @matthewbauer --- nixos/doc/manual/configuration/linux-kernel.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nixos/doc/manual/configuration/linux-kernel.xml b/nixos/doc/manual/configuration/linux-kernel.xml index 0990e9d932b..6502aaec83e 100644 --- a/nixos/doc/manual/configuration/linux-kernel.xml +++ b/nixos/doc/manual/configuration/linux-kernel.xml @@ -50,9 +50,9 @@ nixpkgs.config.packageOverrides = pkgs: = [ "fuse" "kvm-intel" "coretemp" ]; If the module is required early during the boot (e.g. to mount the root file - system), you can use : + system), you can use : - = [ "cifs" ]; + = [ "cifs" ]; This causes the specified modules and their dependencies to be added to the initial ramdisk. From 1e0975f4c05959cf11b5a905f335c269dcaae630 Mon Sep 17 00:00:00 2001 From: Matthieu Coudron Date: Fri, 11 May 2018 17:42:37 +0900 Subject: [PATCH 26/55] iproute2: module to create rt_table file & co When doing source routing/multihoming, it's practical to give names to routing tables. The absence of the rt_table file in /etc make this impossible. This patch recreates these files on rebuild so that they can be modified by the user see NixOS#38638. iproute2 is modified to look into config.networking.iproute2.confDir instead of /etc/iproute2. --- nixos/modules/config/iproute2.nix | 23 ++++++++++++++++++++++ nixos/modules/module-list.nix | 1 + pkgs/os-specific/linux/iproute/default.nix | 5 +++-- 3 files changed, 27 insertions(+), 2 deletions(-) create mode 100644 nixos/modules/config/iproute2.nix diff --git a/nixos/modules/config/iproute2.nix b/nixos/modules/config/iproute2.nix new file mode 100644 index 00000000000..881ad671a62 --- /dev/null +++ b/nixos/modules/config/iproute2.nix @@ -0,0 +1,23 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + cfg = config.networking.iproute2; + confDir = "/run/iproute2"; +in +{ + options.networking.iproute2.enable = mkEnableOption "copy IP route configuration files"; + + config = mkMerge [ + ({ nixpkgs.config.iproute2.confDir = confDir; }) + + (mkIf cfg.enable { + system.activationScripts.iproute2 = '' + cp -R ${pkgs.iproute}/etc/iproute2 ${confDir} + chmod -R 664 ${confDir} + chmod +x ${confDir} + ''; + }) + ]; +} diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 6c4326046ef..5d390f60667 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -9,6 +9,7 @@ ./config/fonts/ghostscript.nix ./config/gnu.nix ./config/i18n.nix + ./config/iproute2.nix ./config/krb5/default.nix ./config/ldap.nix ./config/networking.nix diff --git a/pkgs/os-specific/linux/iproute/default.nix b/pkgs/os-specific/linux/iproute/default.nix index 7d412d7e15d..8ccb0c20380 100644 --- a/pkgs/os-specific/linux/iproute/default.nix +++ b/pkgs/os-specific/linux/iproute/default.nix @@ -1,4 +1,4 @@ -{ fetchurl, stdenv, lib, flex, bash, bison, db, iptables, pkgconfig }: +{ fetchurl, stdenv, config, lib, flex, bash, bison, db, iptables, pkgconfig }: stdenv.mkDerivation rec { name = "iproute2-${version}"; @@ -26,8 +26,9 @@ stdenv.mkDerivation rec { "HDRDIR=$(TMPDIR)/include/iproute2" # Don't install headers ]; + # enable iproute2 module if you want this folder to be created buildFlags = [ - "CONFDIR=/etc/iproute2" + "CONFDIR=${config.iproute2.confDir or "/run/iproute2"}" ]; installFlags = [ From b75a9599b4e858244caa0979f8fa224b5ca36c54 Mon Sep 17 00:00:00 2001 From: Matthieu Coudron Date: Tue, 15 May 2018 21:55:10 +0900 Subject: [PATCH 27/55] release notes: mention iproute2 module --- nixos/doc/manual/release-notes/rl-1809.xml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nixos/doc/manual/release-notes/rl-1809.xml b/nixos/doc/manual/release-notes/rl-1809.xml index 01b5e9d7746..34b5435f9d4 100644 --- a/nixos/doc/manual/release-notes/rl-1809.xml +++ b/nixos/doc/manual/release-notes/rl-1809.xml @@ -53,7 +53,10 @@ $ nix-instantiate -E '(import <nixpkgsunstable> {}).gitFull' - + When enabled the iproute2 will copy the files + expected by ip route (e.g., rt_tables) in + /run/iproute2. This allows to write aliases for + routing tables for instance. From ac07f5acf601e4dd44e7f1f6b3f8a03a244d939b Mon Sep 17 00:00:00 2001 From: Stefan Junker Date: Tue, 15 May 2018 14:56:43 +0200 Subject: [PATCH 28/55] staruml: 2.6.0 -> 2.8.1 --- pkgs/tools/misc/staruml/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/misc/staruml/default.nix b/pkgs/tools/misc/staruml/default.nix index e1d6604970e..ef3fd53c4ec 100644 --- a/pkgs/tools/misc/staruml/default.nix +++ b/pkgs/tools/misc/staruml/default.nix @@ -8,16 +8,16 @@ let [ glib gtk2 gdk_pixbuf alsaLib nss nspr GConf cups libgcrypt dbus ]; in stdenv.mkDerivation rec { - version = "2.6.0"; + version = "2.8.1"; name = "staruml-${version}"; src = if stdenv.system == "i686-linux" then fetchurl { url = "http://staruml.io/download/release/v${version}/StarUML-v${version}-32-bit.deb"; - sha256 = "684d7ce7827a98af5bf17bf68d18f934fd970f13a2112a121b1f1f76d6387849"; + sha256 = "0vb3k9m3l6pmsid4shlk0xdjsriq3gxzm8q7l04didsppg0vvq1n"; } else fetchurl { url = "http://staruml.io/download/release/v${version}/StarUML-v${version}-64-bit.deb"; - sha256 = "36e0bdc1bb57b7d808a007a3fafb1b38662d5b0793424d5ad4f51a3a6a9a636d"; + sha256 = "05gzrnlssjkhyh0wv019d4r7p40lxnsa1sghazll6f233yrqmxb0"; }; buildInputs = [ dpkg ]; From 2a21dbe0597ef3f8b5340cc028327378411f0814 Mon Sep 17 00:00:00 2001 From: Stefan Junker Date: Tue, 15 May 2018 14:57:18 +0200 Subject: [PATCH 29/55] staruml: fix internal node binary The internal node binary is at least used for exporting in various picture formats and also PDF printing. --- pkgs/tools/misc/staruml/default.nix | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/pkgs/tools/misc/staruml/default.nix b/pkgs/tools/misc/staruml/default.nix index ef3fd53c4ec..2a06400b411 100644 --- a/pkgs/tools/misc/staruml/default.nix +++ b/pkgs/tools/misc/staruml/default.nix @@ -1,11 +1,12 @@ { stdenv, fetchurl, makeWrapper , dpkg, patchelf -, gtk2, glib, gdk_pixbuf, alsaLib, nss, nspr, GConf, cups, libgcrypt, dbus, systemd }: +, gtk2, glib, gdk_pixbuf, alsaLib, nss, nspr, GConf, cups, libgcrypt, dbus, systemd +, libXdamage }: let inherit (stdenv) lib; LD_LIBRARY_PATH = lib.makeLibraryPath - [ glib gtk2 gdk_pixbuf alsaLib nss nspr GConf cups libgcrypt dbus ]; + [ glib gtk2 gdk_pixbuf alsaLib nss nspr GConf cups libgcrypt dbus libXdamage ]; in stdenv.mkDerivation rec { version = "2.8.1"; @@ -34,17 +35,17 @@ stdenv.mkDerivation rec { mkdir $out mv opt/staruml $out/bin - ${patchelf}/bin/patchelf \ - --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ - $out/bin/StarUML - mkdir -p $out/lib - ln -s ${stdenv.cc.cc.lib}/lib/libstdc++.so.6 $out/lib/ ln -s ${systemd.lib}/lib/libudev.so.1 $out/lib/libudev.so.0 - wrapProgram $out/bin/StarUML \ - --prefix LD_LIBRARY_PATH : $out/lib:${LD_LIBRARY_PATH} + for binary in StarUML Brackets-node; do + ${patchelf}/bin/patchelf \ + --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ + $out/bin/$binary + wrapProgram $out/bin/$binary \ + --prefix LD_LIBRARY_PATH : $out/lib:${LD_LIBRARY_PATH} + done ''; meta = with stdenv.lib; { From 699fa7e953caf49d8941828ce2c8293a87ce3240 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Arcadio=20Rubio=20Garc=C3=ADa?= Date: Tue, 15 May 2018 14:09:06 +0100 Subject: [PATCH 30/55] star: 2.5.3a -> 2.6.0c (#40518) --- pkgs/applications/science/biology/star/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/science/biology/star/default.nix b/pkgs/applications/science/biology/star/default.nix index 1642739140d..f52df902db6 100644 --- a/pkgs/applications/science/biology/star/default.nix +++ b/pkgs/applications/science/biology/star/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { name = "star-${version}"; - version = "2.5.3a"; + version = "2.6.0c"; src = fetchFromGitHub { repo = "STAR"; owner = "alexdobin"; rev = version; - sha256 = "1fd9xl7i1zxgsxn2qf6gz8s42g2djm29qmp6qb35d8nnxh8ns54x"; + sha256 = "04cj6jw8d9q6lk9c78wa4fky6jdlicf1d13plq7182h8vqiz8p59"; }; sourceRoot = "source/source"; From 56149c246df1b7e846e2ef940c8b236c48de6e77 Mon Sep 17 00:00:00 2001 From: Anton-Latukha Date: Tue, 15 May 2018 17:33:46 +0300 Subject: [PATCH 31/55] handbrake: rm dependency on cmake --- pkgs/applications/video/handbrake/default.nix | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/pkgs/applications/video/handbrake/default.nix b/pkgs/applications/video/handbrake/default.nix index 9f1dfb2d6b0..e18901ad88d 100644 --- a/pkgs/applications/video/handbrake/default.nix +++ b/pkgs/applications/video/handbrake/default.nix @@ -3,11 +3,9 @@ # Derivation patches HandBrake to use our closure. # -# TODO: Release 1.2.0 would switch LibAV to FFmpeg. - { stdenv, lib, fetchurl, python2, pkgconfig, yasm, harfbuzz, zlib, - autoconf, automake, cmake, libtool, m4, jansson, + autoconf, automake, libtool, m4, jansson, libass, libiconv, libsamplerate, fribidi, libxml2, bzip2, libogg, libopus, libtheora, libvorbis, libdvdcss, a52dec, lame, libdvdread, libdvdnav, libbluray, @@ -21,6 +19,7 @@ }: stdenv.mkDerivation rec { + # TODO: Release 1.2.0 would switch LibAV to FFmpeg. version = "1.1.0"; name = "handbrake-${version}"; @@ -40,7 +39,7 @@ stdenv.mkDerivation rec { }); nativeBuildInputs = [ - cmake python2 pkgconfig yasm autoconf automake libtool m4 + python2 pkgconfig yasm autoconf automake libtool m4 ] ++ lib.optionals useGtk [ intltool wrapGAppsHook ]; buildInputs = [ @@ -55,8 +54,6 @@ stdenv.mkDerivation rec { ] ++ (if useFfmpeg then [ ffmpeg ] else [ patched_libav_12 ]) ++ lib.optional useFdk fdk_aac; - dontUseCmakeConfigure = true; - enableParallelBuilding = true; preConfigure = '' From 1eea58eb8ff553588f9c1adee3fa98d54ab865b0 Mon Sep 17 00:00:00 2001 From: Anton-Latukha Date: Tue, 15 May 2018 17:43:25 +0300 Subject: [PATCH 32/55] handbrake: platforms: linux -> unix --- pkgs/applications/video/handbrake/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/video/handbrake/default.nix b/pkgs/applications/video/handbrake/default.nix index e18901ad88d..0d0ac0a2e94 100644 --- a/pkgs/applications/video/handbrake/default.nix +++ b/pkgs/applications/video/handbrake/default.nix @@ -100,6 +100,6 @@ stdenv.mkDerivation rec { ''; license = licenses.gpl2; maintainers = with maintainers; [ Anton-Latukha wmertens ]; - platforms = platforms.linux; + platforms = with platforms; unix; }; } From 261d993519842a655a5532093ea840cea3ce51b7 Mon Sep 17 00:00:00 2001 From: Yorick Date: Tue, 15 May 2018 17:34:31 +0200 Subject: [PATCH 33/55] module-list: add youtrack module to list --- nixos/modules/module-list.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index e6a041b9033..04881d6db36 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -650,6 +650,7 @@ ./services/web-apps/tt-rss.nix ./services/web-apps/selfoss.nix ./services/web-apps/quassel-webserver.nix + ./services/web-apps/youtrack.nix ./services/web-servers/apache-httpd/default.nix ./services/web-servers/caddy.nix ./services/web-servers/fcgiwrap.nix From 202f19b225b08919f331444c5f8f37704c0d4d0d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9o=20Zimmermann?= Date: Tue, 15 May 2018 15:31:28 +0200 Subject: [PATCH 34/55] ocamlPackages.conduit-lwt-unix: add SSL support This makes it possible to run the example given at https://github.com/mirage/ocaml-cohttp#client-tutorial --- pkgs/development/ocaml-modules/conduit/lwt-unix.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/ocaml-modules/conduit/lwt-unix.nix b/pkgs/development/ocaml-modules/conduit/lwt-unix.nix index ce7a33a11ee..5f33bbc42c1 100644 --- a/pkgs/development/ocaml-modules/conduit/lwt-unix.nix +++ b/pkgs/development/ocaml-modules/conduit/lwt-unix.nix @@ -1,5 +1,5 @@ { stdenv, ocaml, findlib, jbuilder, conduit-lwt -, logs, ppx_sexp_conv +, logs, ppx_sexp_conv, lwt_ssl }: if !stdenv.lib.versionAtLeast conduit-lwt.version "1.0" @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { buildInputs = [ ocaml findlib jbuilder ppx_sexp_conv ]; - propagatedBuildInputs = [ conduit-lwt logs ]; + propagatedBuildInputs = [ conduit-lwt logs lwt_ssl ]; buildPhase = "jbuilder build -p conduit-lwt-unix"; } From 1d9d1fa780b28a61e9644c9ab07f636a7e720501 Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Tue, 15 May 2018 10:27:53 -0500 Subject: [PATCH 35/55] telnet: use inetutils Inetutils provides a cross-platform version of telnet. Normally I would try to contact the old maintainer, but none is listed. --- pkgs/tools/networking/telnet/default.nix | 22 ---------------------- pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 2 -- 3 files changed, 1 insertion(+), 24 deletions(-) delete mode 100644 pkgs/tools/networking/telnet/default.nix diff --git a/pkgs/tools/networking/telnet/default.nix b/pkgs/tools/networking/telnet/default.nix deleted file mode 100644 index c38f3c46fa4..00000000000 --- a/pkgs/tools/networking/telnet/default.nix +++ /dev/null @@ -1,22 +0,0 @@ -{stdenv, fetchurl, ncurses}: - -stdenv.mkDerivation { - name = "telnet-1.2"; - - src = fetchurl { - #url = ftp://ftp.suse.com/pub/people/kukuk/ipv6/telnet-bsd-1.2.tar.bz2; # broken - url = mirror://gentoo/distfiles/telnet-bsd-1.2.tar.bz2; - sha256 = "0cs7ks22dhcn5qfjv2vl6ikhw93x68gg33zdn5f5cxgg81kx5afn"; - }; - - hardeningDisable = [ "format" ]; - - buildInputs = [ncurses]; - - meta = { - description = "A client and daemon for the Telnet protocol"; - homepage = ftp://ftp.suse.com/pub/people/kukuk/ipv6/; - license = "BSD"; - platforms = stdenv.lib.platforms.gnu ++ stdenv.lib.platforms.linux; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 8b0812f8305..34906533a0a 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -200,6 +200,7 @@ mapAliases (rec { sshfsFuse = sshfs-fuse; # added 2016-09 surf-webkit2 = surf; # added 2017-04-02 tahoelafs = tahoe-lafs; # added 2018-03-26 + telnet = inetutils; # added 2018-05-15 system_config_printer = system-config-printer; # added 2016-01-03 telepathy_farstream = telepathy-farstream; # added 2018-02-25 telepathy_gabble = telepathy-gabble; # added 2018-02-25 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 46683b394c4..4a85484ba2a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5156,8 +5156,6 @@ with pkgs; teamviewer = libsForQt5.callPackage ../applications/networking/remote/teamviewer { }; - telnet = callPackage ../tools/networking/telnet { }; - telegraf = callPackage ../servers/monitoring/telegraf { }; teleport = callPackage ../servers/teleport {}; From f19845c763b9d35bc42080f1b4aba78bded6f4f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Tue, 15 May 2018 13:14:23 -0300 Subject: [PATCH 36/55] vivaldi: 1.14.1077.45-1 -> 1.15.1147.42-1 (#40536) --- pkgs/applications/networking/browsers/vivaldi/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/browsers/vivaldi/default.nix b/pkgs/applications/networking/browsers/vivaldi/default.nix index 6bd9614e08d..8eae85099fb 100644 --- a/pkgs/applications/networking/browsers/vivaldi/default.nix +++ b/pkgs/applications/networking/browsers/vivaldi/default.nix @@ -13,11 +13,11 @@ stdenv.mkDerivation rec { name = "${product}-${version}"; product = "vivaldi"; - version = "1.14.1077.45-1"; + version = "1.15.1147.42-1"; src = fetchurl { url = "https://downloads.vivaldi.com/stable/${product}-stable_${version}_amd64.deb"; - sha256 = "0b4iviar927jx6xqyrzgzb3p4p617zm4an1np8jnldadq2a0p56d"; + sha256 = "15cajvn2sv05qdp3y538n2xvyy3il49q8zi5928z1mfirjz3dlwh"; }; unpackPhase = '' From d0210b0fdc5701eeaf5d2b546c90e69d3addafeb Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Tue, 15 May 2018 09:15:30 -0700 Subject: [PATCH 37/55] mate.caja: 1.21.0 -> 1.21.1 (#40497) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/caja/versions. These checks were done: - built on NixOS - ran ‘/nix/store/vpa6y0jj5wa85md64941j0mmd5h8w269-caja-1.21.1/bin/caja -h’ got 0 exit code - ran ‘/nix/store/vpa6y0jj5wa85md64941j0mmd5h8w269-caja-1.21.1/bin/caja --help’ got 0 exit code - ran ‘/nix/store/vpa6y0jj5wa85md64941j0mmd5h8w269-caja-1.21.1/bin/caja-connect-server -h’ got 0 exit code - ran ‘/nix/store/vpa6y0jj5wa85md64941j0mmd5h8w269-caja-1.21.1/bin/caja-connect-server --help’ got 0 exit code - ran ‘/nix/store/vpa6y0jj5wa85md64941j0mmd5h8w269-caja-1.21.1/bin/.caja-wrapped -h’ got 0 exit code - ran ‘/nix/store/vpa6y0jj5wa85md64941j0mmd5h8w269-caja-1.21.1/bin/.caja-wrapped --help’ got 0 exit code - ran ‘/nix/store/vpa6y0jj5wa85md64941j0mmd5h8w269-caja-1.21.1/bin/.caja-connect-server-wrapped -h’ got 0 exit code - ran ‘/nix/store/vpa6y0jj5wa85md64941j0mmd5h8w269-caja-1.21.1/bin/.caja-connect-server-wrapped --help’ got 0 exit code - found 1.21.1 with grep in /nix/store/vpa6y0jj5wa85md64941j0mmd5h8w269-caja-1.21.1 - directory tree listing: https://gist.github.com/46fb531ddeedf504b1610ffcaf01f09f - du listing: https://gist.github.com/5396435fca3703ee457ac3c66b5c0121 --- pkgs/desktops/mate/caja/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/mate/caja/default.nix b/pkgs/desktops/mate/caja/default.nix index 9643c9a3416..a04dbb27a88 100644 --- a/pkgs/desktops/mate/caja/default.nix +++ b/pkgs/desktops/mate/caja/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "caja-${version}"; - version = "1.21.0"; + version = "1.21.1"; src = fetchurl { url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz"; - sha256 = "0v8zx5rzqh1zkwizkpdckmwm6004cv9sbjghzgz3049xzcqm371g"; + sha256 = "013lmngnm0i2746qrkkyhg62kyh4cjdd0i634cz5fm7ah65ylxg4"; }; nativeBuildInputs = [ From 44361ea4091ecfbde4b2262fe6c65d1932813808 Mon Sep 17 00:00:00 2001 From: Peter Hoeg Date: Wed, 16 May 2018 00:23:43 +0800 Subject: [PATCH 38/55] check-{ups,nwc}-health: update to release versions (#40541) --- .../monitoring/plugins/labs_consol_de.nix | 34 +++++++++---------- 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/pkgs/servers/monitoring/plugins/labs_consol_de.nix b/pkgs/servers/monitoring/plugins/labs_consol_de.nix index 9f33835c885..350728d509f 100644 --- a/pkgs/servers/monitoring/plugins/labs_consol_de.nix +++ b/pkgs/servers/monitoring/plugins/labs_consol_de.nix @@ -1,25 +1,24 @@ -{ stdenv, fetchFromGitHub, buildPerlPackage, autoreconfHook, makeWrapper +{ stdenv, fetchFromGitHub, fetchurl, buildPerlPackage, autoreconfHook, makeWrapper , perl, NetSNMP, coreutils, gnused, gnugrep }: let - owner = "lausser"; - glplugin = fetchFromGitHub { + owner = "lausser"; repo = "GLPlugin"; - rev = "b92a261ca4bf84e5b20d3025cc9a31ade03c474b"; - sha256 = "0kflnmpjmklq8fy2vf2h8qyvaiznymdi09z2h5qscrfi51xc9gmh"; - inherit owner; + rev = "e8e1a2907a54435c932b3e6c584ba1d679754849"; + sha256 = "0wb55a9pmgbilfffx0wkiikg9830qd66j635ypczqp4basslpq5b"; }; - generic = { pname, version, rev, sha256, description, ... } @ attrs: + generic = { pname, version, sha256, description, ... } @ attrs: let attrs' = builtins.removeAttrs attrs [ "pname" "version" "rev" "sha256"]; + name' = "${stdenv.lib.replaceStrings [ "-" ] [ "_" ] "${pname}"}-${version}"; in perl.stdenv.mkDerivation rec { - name = stdenv.lib.replaceStrings [ "-" ] [ "_" ] "${pname}-${version}"; + name = "${pname}-${version}"; - src = fetchFromGitHub { - repo = pname; - inherit owner rev sha256; + src = fetchurl { + url = "https://labs.consol.de/assets/downloads/nagios/${name'}.tar.gz"; + inherit sha256; }; buildInputs = [ perl NetSNMP ]; @@ -27,7 +26,8 @@ let nativeBuildInputs = [ autoreconfHook makeWrapper ]; prePatch = with stdenv.lib; '' - ln -s ${glplugin}/* GLPlugin + rm -rf GLPlugin + ln -s ${glplugin} GLPlugin substituteInPlace plugins-scripts/Makefile.am \ --replace /bin/cat ${getBin coreutils}/bin/cat \ --replace /bin/echo ${getBin coreutils}/bin/echo \ @@ -56,17 +56,15 @@ let in { check-nwc-health = generic { pname = "check_nwc_health"; - version = "20170804"; - rev = "e959b412b5cf027c82a446668e026214fdcf8df3"; - sha256 = "11l74xw62g15rqrbf9ff2bfd5iw159gwhhgbkxwdqi8sp9j6navk"; + version = "7.0.1.3"; + sha256 = "0rgd6zgd7kplx3z72n8zbzwkh8vnd83361sk9ibh6ng78sds1sl5"; description = "Check plugin for network equipment."; }; check-ups-health = generic { pname = "check_ups_health"; - version = "20170804"; - rev = "32a8a359ea46ec0d6f3b7aea19ddedaad63b04b9"; - sha256 = "05na48dxfxrg0i9185j1ck2795p0rw1zwcs8ra0f14cm0qw0lp4l"; + version = "2.8.2.2"; + sha256 = "1gc2wjsymay2vk5ywc1jj9cvrbhs0fs851x8l4nc75df2g75v521"; description = "Check plugin for UPSs."; }; } From fa0b60f59a459f2b79692ac41b056e5228140123 Mon Sep 17 00:00:00 2001 From: aszlig Date: Tue, 15 May 2018 18:19:19 +0200 Subject: [PATCH 39/55] nixos/tests/installer: Add lndir to extraDeps In commit 17dd7bcd89d568596f52356624be82201ea84779 the systemd unit generator now uses lndir instead of "ln -s", so we need to have lndir available in the Nix store for the installer tests to be able to build the units and thus the whole system. This should fix the installer tests, although I have only tested it with the "simple" subtest. Signed-off-by: aszlig Cc: @jtojnar, @xeji, @edolstra --- nixos/tests/installer.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix index acf248d0a5a..7da02d9c204 100644 --- a/nixos/tests/installer.nix +++ b/nixos/tests/installer.nix @@ -241,6 +241,7 @@ let nixos-artwork.wallpapers.gnome-dark perlPackages.XMLLibXML perlPackages.ListCompare + xorg.lndir # add curl so that rather than seeing the test attempt to download # curl's tarball, we see what it's trying to download From 9f20a5985d7fef4169afa427e0049627317c076a Mon Sep 17 00:00:00 2001 From: Robert Helgesson Date: Mon, 14 May 2018 23:38:40 +0200 Subject: [PATCH 40/55] eclipse-platform: 4.7.2 -> 4.7.3a --- pkgs/applications/editors/eclipse/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/editors/eclipse/default.nix b/pkgs/applications/editors/eclipse/default.nix index 1688e606222..d7bd917c5f0 100644 --- a/pkgs/applications/editors/eclipse/default.nix +++ b/pkgs/applications/editors/eclipse/default.nix @@ -114,16 +114,16 @@ rec { }; eclipse-platform-47 = buildEclipse { - name = "eclipse-platform-4.7.2"; + name = "eclipse-platform-4.7.3a"; description = "Eclipse Platform Oxygen"; sources = { "x86_64-linux" = fetchurl { - url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.2-201711300510/eclipse-platform-4.7.2-linux-gtk-x86_64.tar.gz; - sha256 = "1zl406brvhh25dkd2pi1kvz5386gzkybpwik03aadpzmjrbm9730"; + url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.3a-201803300640/eclipse-platform-4.7.3a-linux-gtk-x86_64.tar.gz; + sha512 = "caf86cd6efaf66258c75434f1adf552587a7395d57dba4cfd20f86196308cf942866d931f4b352f9d39a6fbf14444fcd2167e6bfd146a28c96c229bb9988156a"; }; "i686-linux" = fetchurl { - url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.2-201711300510/eclipse-platform-4.7.2-linux-gtk.tar.gz; - sha256 = "0v0i13ah8d8zmcv0ip1ia5ifnfnl76aibiqpv4q4lih5d1qsa79d"; + url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.3a-201803300640/eclipse-platform-4.7.3a-linux-gtk.tar.gz; + sha512 = "c633da467774e4ab40f8d51d07b8e7d8403f26f23365c3c3ceeaeec1039b8c23c7508cee1f786bf52db64c7b84e0f91cb31a2848a74ac8271f8504934407bd5c"; }; }; }; From 726268db7770ea041e9133005d301ef7ae562200 Mon Sep 17 00:00:00 2001 From: Robert Helgesson Date: Mon, 14 May 2018 23:39:07 +0200 Subject: [PATCH 41/55] eclipse-sdk: 4.7.2 -> 4.7.3a --- pkgs/applications/editors/eclipse/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/editors/eclipse/default.nix b/pkgs/applications/editors/eclipse/default.nix index d7bd917c5f0..3a09b5c6be4 100644 --- a/pkgs/applications/editors/eclipse/default.nix +++ b/pkgs/applications/editors/eclipse/default.nix @@ -168,16 +168,16 @@ rec { }; eclipse-sdk-47 = buildEclipse { - name = "eclipse-sdk-4.7.2"; + name = "eclipse-sdk-4.7.3a"; description = "Eclipse Oxygen Classic"; sources = { "x86_64-linux" = fetchurl { - url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.2-201711300510/eclipse-SDK-4.7.2-linux-gtk-x86_64.tar.gz; - sha256 = "1j5d72rkl3lq3rpnvq1spsa0zlzbmbkgadfhbz868sqqbavrwbzv"; + url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.3a-201803300640/eclipse-SDK-4.7.3a-linux-gtk-x86_64.tar.gz; + sha512 = "d77e42aca16d26526cef32e363d038258bb8a4616d9dbe6e76dd3656dc2217369436390a82555bde4566bbbdb631813bbaca08602f7bb885cb30e8a26a14873f"; }; "i686-linux" = fetchurl { - url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.2-201711300510/eclipse-SDK-4.7.2-linux-gtk.tar.gz; - sha256 = "117436ni79v1kiync8b3wkfkb8a5rv3sbqp6qnwbmanwkvnyvfvc"; + url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.3a-201803300640/eclipse-SDK-4.7.3a-linux-gtk.tar.gz; + sha512 = "b0b936fd4142ae86ec5c30535cd5e4caf6fe313d814ae5b16f300635e4163a79b748b1eee11792a135114f2265678a74821ec80c2bfd69872769b6d0ccbcde3a"; }; }; }; From d5dae23007b5a20759609f2a37b38ff9acec7afc Mon Sep 17 00:00:00 2001 From: Robert Helgesson Date: Mon, 14 May 2018 23:39:19 +0200 Subject: [PATCH 42/55] eclipse-plugin-jdt: 4.7.2 -> 4.7.3a --- pkgs/applications/editors/eclipse/plugins.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/editors/eclipse/plugins.nix b/pkgs/applications/editors/eclipse/plugins.nix index adb763c1250..f381064c92c 100644 --- a/pkgs/applications/editors/eclipse/plugins.nix +++ b/pkgs/applications/editors/eclipse/plugins.nix @@ -470,12 +470,12 @@ rec { jdt = buildEclipseUpdateSite rec { name = "jdt-${version}"; - version = "4.7.2"; + version = "4.7.3a"; src = fetchzip { stripRoot = false; - url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.2-201711300510/org.eclipse.jdt-4.7.2.zip; - sha256 = "1yzqnjs88cdyyqv8f1g8fbfyccci29f3pzxxvaz7szxicwzn59mz"; + url = https://www.eclipse.org/downloads/download.php?r=1&nf=1&file=/eclipse/downloads/drops4/R-4.7.3a-201803300640/org.eclipse.jdt-4.7.3a.zip; + sha256 = "10dndhqz894xf79zz07dlmkn7k33mn42nbmycr78xz6d2jy8cscx"; }; meta = with stdenv.lib; { From 437cc2c6403b98e65d613a95c6f6ab2f0c85d7f5 Mon Sep 17 00:00:00 2001 From: Eric Bailey Date: Tue, 15 May 2018 12:19:27 -0500 Subject: [PATCH 43/55] kops: 1.8.1 -> 1.9.0 (#40513) --- pkgs/applications/networking/cluster/kops/default.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/applications/networking/cluster/kops/default.nix b/pkgs/applications/networking/cluster/kops/default.nix index ddb8951740c..a1e17f60810 100644 --- a/pkgs/applications/networking/cluster/kops/default.nix +++ b/pkgs/applications/networking/cluster/kops/default.nix @@ -1,8 +1,9 @@ -{ stdenv, lib, buildGoPackage, fetchFromGitHub, go-bindata }: + +{ stdenv, lib, buildGoPackage, fetchFromGitHub, go-bindata }: buildGoPackage rec { name = "kops-${version}"; - version = "1.8.1"; + version = "1.9.0"; goPackagePath = "k8s.io/kops"; @@ -10,7 +11,7 @@ buildGoPackage rec { rev = version; owner = "kubernetes"; repo = "kops"; - sha256 = "12nyr0iw1xwp60apli3nlq2vyn4jk3qjrb404m2syx2mqbnn47my"; + sha256 = "03avkm7gk2dqyvd7245qsca1sbhwk41j9yhc208gcmjgjhkx2vn7"; }; buildInputs = [go-bindata]; @@ -24,8 +25,7 @@ buildGoPackage rec { preBuild = '' (cd go/src/k8s.io/kops - go-bindata -o upup/models/bindata.go -pkg models -prefix upup/models/ upup/models/... - go-bindata -o federation/model/bindata.go -pkg model -prefix federation/model federation/model/...) + go-bindata -o upup/models/bindata.go -pkg models -prefix upup/models/ upup/models/...) ''; postInstall = '' From edbce18903742c412fce54aa8df76ab96b8bf61a Mon Sep 17 00:00:00 2001 From: Yegor Timoshenko Date: Tue, 15 May 2018 20:55:40 +0300 Subject: [PATCH 44/55] tracker-miners: switch to meson, some tweaks (#39534) --- .../gnome-3/core/tracker-miners/default.nix | 121 ++++++++++++++---- 1 file changed, 95 insertions(+), 26 deletions(-) diff --git a/pkgs/desktops/gnome-3/core/tracker-miners/default.nix b/pkgs/desktops/gnome-3/core/tracker-miners/default.nix index b612db9ce38..44b0de37d69 100644 --- a/pkgs/desktops/gnome-3/core/tracker-miners/default.nix +++ b/pkgs/desktops/gnome-3/core/tracker-miners/default.nix @@ -1,47 +1,101 @@ -{ stdenv, intltool, fetchurl, libxml2, upower -, substituteAll, pkgconfig, gtk3, glib, gexiv2 -, bash, wrapGAppsHook, itstool, vala, sqlite, libxslt -, gnome3, librsvg, gdk_pixbuf, libnotify -, evolution-data-server, gst_all_1, poppler -, icu, taglib, libjpeg, libtiff, giflib, libcue -, libvorbis, flac, exempi, networkmanager -, libpng, libexif, libgsf, libuuid, bzip2 -, libsoup, json-glib, libseccomp -, libiptcdata }: +{ stdenv, fetchurl, substituteAll, intltool, itstool, libxslt, makeWrapper +, meson, ninja, pkgconfig, vala, wrapGAppsHook, bzip2, dbus, evolution-data-server +, exempi, flac, giflib, glib, gnome3, gst_all_1, icu, json-glib, libcue, libexif +, libgsf, libiptcdata, libjpeg, libpng, libseccomp, libsoup, libtiff, libuuid +, libvorbis, libxml2, poppler, taglib, upower }: -let +stdenv.mkDerivation rec { + name = "${pname}-${version}"; pname = "tracker-miners"; version = "2.0.4"; -in stdenv.mkDerivation rec { - name = "${pname}-${version}"; src = fetchurl { url = "mirror://gnome/sources/${pname}/${gnome3.versionBranch version}/${name}.tar.xz"; sha256 = "0mp9m2waii583sjgr61m1ni6py6dry11r0rzidgvw1g4cxhn89j6"; }; - NIX_CFLAGS_COMPILE = "-I${poppler.dev}/include/poppler"; + # https://github.com/NixOS/nixpkgs/issues/39547 + LIBRARY_PATH = stdenv.lib.makeLibraryPath [ giflib ]; - enableParallelBuilding = true; - - nativeBuildInputs = [ vala pkgconfig intltool itstool libxslt wrapGAppsHook ]; - # TODO: add libgrss, libenca, libosinfo - buildInputs = [ - bzip2 evolution-data-server exempi flac giflib glib gnome3.totem-pl-parser - gnome3.tracker gst_all_1.gst-plugins-base gst_all_1.gstreamer icu - json-glib libcue libexif libgsf libiptcdata libjpeg libpng libseccomp libsoup - libtiff libuuid libvorbis libxml2 poppler taglib upower gexiv2 + nativeBuildInputs = [ + intltool + itstool + libxslt + makeWrapper + meson + ninja + pkgconfig + vala + wrapGAppsHook ]; - LANG = "en_US.UTF-8"; # for running tests + # TODO: add libgrss, libenca, libosinfo + buildInputs = [ + bzip2 + dbus + evolution-data-server + exempi + flac + giflib + glib + gnome3.gexiv2 + gnome3.totem-pl-parser + gnome3.tracker + gst_all_1.gst-plugins-base + gst_all_1.gstreamer + icu + json-glib + libcue + libexif + libgsf + libiptcdata + libjpeg + libpng + libseccomp + libsoup + libtiff + libuuid + libvorbis + libxml2 + poppler + taglib + upower + ]; - doCheck = true; + mesonFlags = [ + "-Dminer_rss=false" # needs libgrss + ]; patches = [ (substituteAll { src = ./fix-paths.patch; inherit (gnome3) tracker; }) + # https://bugzilla.gnome.org/show_bug.cgi?id=795573 + (fetchurl { + url = https://bugzilla.gnome.org/attachment.cgi?id=371422; + sha256 = "1rzwzrc7q73k42s1j1iw52chy10w6y3xksfrzg2l42nn9wk7n281"; + }) + # https://bugzilla.gnome.org/show_bug.cgi?id=795574 + (fetchurl { + url = https://bugzilla.gnome.org/attachment.cgi?id=371423; + sha256 = "0b2ck8z4b2yrgwg4v9jsac5n8h3a91qkp90vv17wxcvr4v50fg48"; + }) + # https://bugzilla.gnome.org/show_bug.cgi?id=795575 + (fetchurl { + url = https://bugzilla.gnome.org/attachment.cgi?id=371424; + sha256 = "03i29fabxrpraydh7712vdrc571qmiq0l4axj24gbi6h77xn7mxc"; + }) + # https://bugzilla.gnome.org/show_bug.cgi?id=795576 + (fetchurl { + url = https://bugzilla.gnome.org/attachment.cgi?id=371427; + sha256 = "187flswvzymjfxwfrrhizb1cvs780zm39aa3i2vwa5fbllr7kcpf"; + }) + # https://bugzilla.gnome.org/show_bug.cgi?id=795577 + (fetchurl { + url = https://bugzilla.gnome.org/attachment.cgi?id=371425; + sha256 = "05m629469jr2lm2cjs54n7xwyim2d5rwwvdjxzcwh5qpfjds5phm"; + }) ]; passthru = { @@ -51,11 +105,26 @@ in stdenv.mkDerivation rec { }; }; + # https://github.com/NixOS/nixpkgs/pull/39534#discussion_r184339131 + # https://github.com/NixOS/nixpkgs/pull/37693 + preConfigure = '' + mesonFlagsArray+=("-Ddbus_services=$out/share/dbus-1/services") + ''; + + postInstall = '' + ${glib.dev}/bin/glib-compile-schemas $out/share/glib-2.0/schemas + ''; + + # https://bugzilla.gnome.org/show_bug.cgi?id=796145 + postFixup = '' + rm $out/share/tracker/miners/org.freedesktop.Tracker1.Miner.RSS.service + ''; + meta = with stdenv.lib; { homepage = https://wiki.gnome.org/Projects/Tracker; description = "Desktop-neutral user information store, search tool and indexer"; maintainers = gnome3.maintainers; - license = licenses.gpl2; + license = licenses.gpl2Plus; platforms = platforms.linux; }; } From 2cab326047cc484df7438f85102b0d41b05b8200 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Mon, 14 May 2018 01:04:27 -0700 Subject: [PATCH 45/55] metabase: 0.29.0 -> 0.29.2 Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/metabase/versions. These checks were done: - built on NixOS - Warning: no binary found that responded to help or version flags. (This warning appears even if the package isn't expected to have binaries.) - directory tree listing: https://gist.github.com/40a08752e83dd27b03a5e553c6f89582 - du listing: https://gist.github.com/fe6508f6abc39c37b41465ae8e9efd81 --- pkgs/servers/metabase/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/metabase/default.nix b/pkgs/servers/metabase/default.nix index 4eae86b00b0..f329b108849 100644 --- a/pkgs/servers/metabase/default.nix +++ b/pkgs/servers/metabase/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "metabase-${version}"; - version = "0.29.0"; + version = "0.29.2"; src = fetchurl { url = "http://downloads.metabase.com/v${version}/metabase.jar"; - sha256 = "1dfq06cm8k36pkqpng4cd8ax8cdxbcssww4vapq2w9ccflpnlam2"; + sha256 = "02cba755mfim8q403gj02ggc0gg4ckcyalxkw09k0jqi5irdi4h1"; }; nativeBuildInputs = [ makeWrapper ]; From 0f30db4222491bfde951b9702818913ed86d0186 Mon Sep 17 00:00:00 2001 From: Will Dietz Date: Tue, 15 May 2018 13:25:31 -0500 Subject: [PATCH 46/55] nano: 2.9.6 -> 2.9.7 http://git.savannah.gnu.org/cgit/nano.git/tree/ChangeLog?h=v2.9.7 --- pkgs/applications/editors/nano/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/editors/nano/default.nix b/pkgs/applications/editors/nano/default.nix index f5598b3365b..c29cbe52872 100644 --- a/pkgs/applications/editors/nano/default.nix +++ b/pkgs/applications/editors/nano/default.nix @@ -20,11 +20,11 @@ let in stdenv.mkDerivation rec { name = "nano-${version}"; - version = "2.9.6"; + version = "2.9.7"; src = fetchurl { url = "mirror://gnu/nano/${name}.tar.xz"; - sha256 = "1inl8ljkc711969ncwy7irf0464psasikg1g42l0g4sfpdz50wx3"; + sha256 = "1ga4sdk3ikx1ilggc6c77vyfpbmq3nrhg6svgglpf5sv60bv0jmn"; }; nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext; From 1af7302dd40e5f43b37414f1dd91ed4b11cf76b1 Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Tue, 15 May 2018 20:30:27 +0200 Subject: [PATCH 47/55] signal-desktop: 1.10.1 -> 1.11.0 --- .../networking/instant-messengers/signal-desktop/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix index 80f219560e3..ca13a881176 100644 --- a/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix +++ b/pkgs/applications/networking/instant-messengers/signal-desktop/default.nix @@ -40,13 +40,13 @@ in stdenv.mkDerivation rec { name = "signal-desktop-${version}"; - version = "1.10.1"; + version = "1.11.0"; src = if stdenv.system == "x86_64-linux" then fetchurl { url = "https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_${version}_amd64.deb"; - sha256 = "1ndk2in9mbsm5i2k7pgpbd6smbgpswxmjvr12zmbmw893ay015h3"; + sha256 = "0s3qlzm7iy9qxca2hlh1hq0dnjr7y5wxad1ssqgmyhxsif0nqm96"; } else throw "Signal for Desktop is not currently supported on ${stdenv.system}"; From 87b0afb0069950ee6573a911906b1cca7b2da9a3 Mon Sep 17 00:00:00 2001 From: Patrick Hilhorst Date: Tue, 15 May 2018 20:30:19 +0200 Subject: [PATCH 48/55] atom: 1.26.1 -> 1.27.0 --- pkgs/applications/editors/atom/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/editors/atom/default.nix b/pkgs/applications/editors/atom/default.nix index f646fab8629..606f5db89f6 100644 --- a/pkgs/applications/editors/atom/default.nix +++ b/pkgs/applications/editors/atom/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "atom-${version}"; - version = "1.26.1"; + version = "1.27.0"; src = fetchurl { url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb"; - sha256 = "0g83qj9siq1vr2v46rzjf3dy2gns9krh6xlh7w3bhrgfk0vqkm11"; + sha256 = "1r37s6ndxyib644v7nlgha1pkcnz7kxpmlkhh41l5jp4dpc6iik6"; name = "${name}.deb"; }; From 36a4e543729903bf3ad8e1ed25ab507538bc8a92 Mon Sep 17 00:00:00 2001 From: Patrick Hilhorst Date: Tue, 15 May 2018 20:33:41 +0200 Subject: [PATCH 49/55] atom: add myself as maintainer --- pkgs/applications/editors/atom/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/applications/editors/atom/default.nix b/pkgs/applications/editors/atom/default.nix index 606f5db89f6..225ec6a9456 100644 --- a/pkgs/applications/editors/atom/default.nix +++ b/pkgs/applications/editors/atom/default.nix @@ -47,7 +47,7 @@ stdenv.mkDerivation rec { description = "A hackable text editor for the 21st Century"; homepage = https://atom.io/; license = licenses.mit; - maintainers = [ maintainers.offline maintainers.nequissimus maintainers.ysndr ]; + maintainers = with maintainers; [ offline nequissimus synthetica ysndr ]; platforms = [ "x86_64-linux" ]; }; } From 30a788b71e4bb56cf89709d0b64c87ffcd6fa2dd Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Tue, 15 May 2018 20:36:09 +0200 Subject: [PATCH 50/55] maim: 5.5 -> 5.5.1 --- pkgs/tools/graphics/maim/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/graphics/maim/default.nix b/pkgs/tools/graphics/maim/default.nix index cac86e29c47..cd0cff0f389 100644 --- a/pkgs/tools/graphics/maim/default.nix +++ b/pkgs/tools/graphics/maim/default.nix @@ -5,13 +5,13 @@ stdenv.mkDerivation rec { name = "maim-${version}"; - version = "5.5"; + version = "5.5.1"; src = fetchFromGitHub { owner = "naelstrof"; repo = "maim"; rev = "v${version}"; - sha256 = "0dr44lwqsvhwf9pncxq6k42zj9hj07b96qsk1q8vh4l42zcpqzla"; + sha256 = "106qg85q0aiw4w08vjg9j60brrbln11b8vdycjqkv8fq00pq308i"; }; nativeBuildInputs = [ cmake pkgconfig ]; From 3efea84fa1991d027ae27cee0f0c622a65908772 Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Tue, 15 May 2018 20:44:00 +0200 Subject: [PATCH 51/55] tdesktopPackages.preview: 1.2.19 -> 1.2.20 --- .../instant-messengers/telegram/tdesktop/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix index 0e2c232e6d2..5d476f54304 100644 --- a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix +++ b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix @@ -14,7 +14,7 @@ in { stable = mkTelegram stableVersion; preview = mkTelegram (stableVersion // { stable = false; - version = "1.2.19"; - sha256Hash = "0val6lfcg3ghcksflm3jclqly0x8plpn3an8v9bix0s5yll1ka4h"; + version = "1.2.20"; + sha256Hash = "00ncpb1qs88jrrmmx7f7l8wy37wbwnrb958x3xls14p1h1xg63l6"; }); } From e0d6edddd7f3df2cecbe24c527f8dc5286564235 Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Tue, 15 May 2018 15:26:59 -0500 Subject: [PATCH 52/55] pspp: provide default icons & settings psppire needs to be wrapped so that it will work outside of GNOME desktop. We provide hicolor-icon-theme & gsettings-desktop-schemas. Note that at runtime, I still get this error: - Cannot create a converter for `IBM864' to `UTF-8': Invalid argument Possibly a locale issue. Fixes #40558 --- pkgs/applications/science/math/pspp/default.nix | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/science/math/pspp/default.nix b/pkgs/applications/science/math/pspp/default.nix index 957a4cf6421..1afbc2b72e5 100644 --- a/pkgs/applications/science/math/pspp/default.nix +++ b/pkgs/applications/science/math/pspp/default.nix @@ -1,5 +1,7 @@ { stdenv, fetchurl, libxml2, readline, zlib, perl, cairo, gtk3, gsl , pkgconfig, gtksourceview, pango, gettext +, makeWrapper, gsettings-desktop-schemas, hicolor-icon-theme +, gnome3 }: stdenv.mkDerivation rec { @@ -12,12 +14,21 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig ]; buildInputs = [ libxml2 readline zlib perl cairo gtk3 gsl - gtksourceview pango gettext ]; + gtksourceview pango gettext + makeWrapper gsettings-desktop-schemas hicolor-icon-theme ]; doCheck = false; enableParallelBuilding = true; + preFixup = '' + wrapProgram "$out/bin/psppire" \ + --prefix XDG_DATA_DIRS : "$out/share" \ + --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS" \ + --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH" \ + --prefix GIO_EXTRA_MODULES : "${stdenv.lib.getLib gnome3.dconf}/lib/gio/modules" + ''; + meta = { homepage = http://www.gnu.org/software/pspp/; description = "A free replacement for SPSS, a program for statistical analysis of sampled data"; From 977c207f2295b0b17cb6fbf97c9c6c7656977e11 Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Tue, 15 May 2018 23:23:30 +0200 Subject: [PATCH 53/55] pythonPackages.podcats: Init at 0.5.0 --- .../python-modules/podcats/default.nix | 28 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 30 insertions(+) create mode 100644 pkgs/development/python-modules/podcats/default.nix diff --git a/pkgs/development/python-modules/podcats/default.nix b/pkgs/development/python-modules/podcats/default.nix new file mode 100644 index 00000000000..a1b8312b134 --- /dev/null +++ b/pkgs/development/python-modules/podcats/default.nix @@ -0,0 +1,28 @@ +{ lib, buildPythonPackage, fetchFromGitHub, flask, mutagen }: + +buildPythonPackage rec { + pname = "podcats"; + version = "v0.5.0"; + name = "${pname}-${version}"; + + src = fetchFromGitHub { + owner = "jakubroztocil"; + repo = "podcats"; + rev = version; + sha256 = "0zjdgry5n209rv19kj9yaxy7c7zq5gxr488izrgs4sc75vdzz8xc"; + }; + + patchPhase = '' + substituteInPlace podcats.py \ + --replace 'debug=True' 'debug=True, use_reloader=False' + ''; + + propagatedBuildInputs = [ flask mutagen ]; + + meta = { + description = "Application that generates RSS feeds for podcast episodes from local audio files"; + homepage = https://github.com/jakubroztocil/podcats; + license = lib.licenses.bsd2; + maintainers = with lib.maintainers; [ the-kenny ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index a80eb58e390..52d03ad1e29 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3845,6 +3845,8 @@ in { podcastparser = callPackage ../development/python-modules/podcastparser { }; + podcats = callPackage ../development/python-modules/podcats { }; + pomegranate = callPackage ../development/python-modules/pomegranate { }; poppler-qt5 = callPackage ../development/python-modules/poppler-qt5 { From 0edbc54b4f0429275b24e54cf51f01b0bf8bea25 Mon Sep 17 00:00:00 2001 From: Eric Bailey Date: Tue, 15 May 2018 17:25:29 -0500 Subject: [PATCH 54/55] kubernetes-helm: 2.8.2 -> 2.9.0 (#40514) --- pkgs/applications/networking/cluster/helm/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/networking/cluster/helm/default.nix b/pkgs/applications/networking/cluster/helm/default.nix index a49ff486d96..ae9dc3bbc34 100644 --- a/pkgs/applications/networking/cluster/helm/default.nix +++ b/pkgs/applications/networking/cluster/helm/default.nix @@ -5,10 +5,10 @@ let then "linux-amd64" else "darwin-amd64"; checksum = if isLinux - then "1lr2s66kln6rp3sb156br9nfx51bdy654vdjr4vnncz4kp3mljv1" - else "04y4ii0w4s00z831q1wzxz6qkc8qfrhwzdrq3wwvrcl0413cza50"; + then "0bnjpiivhsxhl45ab32vzf6crv4z8nbq5kcjkvlbcbswdbgp0pq6" + else "0smwhj4pmd4k7csz82akbkrkb0j2jxnmb33ifhkqw7n33jhl3aqp"; pname = "helm"; - version = "2.8.2"; + version = "2.9.0"; in stdenv.mkDerivation { name = "${pname}-${version}"; From 780592ca6ef752f3f4886a66ed6181095e358db5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bastian=20K=C3=B6cher?= Date: Tue, 15 May 2018 23:20:31 +0200 Subject: [PATCH 55/55] gcc7: Enable arm erratum 843419 on aarch64 This fix is required for the raspherry pi 3 with glibc 2.27, otherwise the kernel panics in initrd with: ``` <<< NixOS Stage 1 >>> loading module dm_mod... running udev... kbd_mode: KDSKBMODE: Inappropriate ioctl for device Gstarting device mapper and LVM... [ 1.969164] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b [ 1.969164] [ 1.978476] CPU: 0 PID: 1 Comm: init Not tainted 4.16.8 #1-NixOS [ 1.984580] Hardware name: Raspberry Pi 3 Model B (DT) [ 1.989801] Call trace: [ 1.992301] dump_backtrace+0x0/0x1c8 [ 1.996025] show_stack+0x24/0x30 [ 1.999396] dump_stack+0x9c/0xc0 [ 2.002766] panic+0x124/0x294 [ 2.005872] complete_and_exit+0x0/0x30 [ 2.009771] do_group_exit+0x40/0xa8 [ 2.013406] get_signal+0x280/0x5b0 [ 2.016954] do_signal+0x88/0x240 [ 2.020325] do_notify_resume+0xd8/0x130 [ 2.024311] work_pending+0x8/0x10 [ 2.027774] SMP: stopping secondary CPUs [ 2.031763] Kernel Offset: disabled [ 2.035308] CPU features: 0x0802004 [ 2.038850] Memory Limit: none [ 2.041963] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b [ 2.041963] [ 2.865264] random: crng init done ``` Suse has done the same to circumvent crashes with hostname resolving in glibc 2.27 on aarch64. --- pkgs/development/compilers/gcc/7/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/compilers/gcc/7/default.nix b/pkgs/development/compilers/gcc/7/default.nix index 54ac2c45d89..55951274322 100644 --- a/pkgs/development/compilers/gcc/7/default.nix +++ b/pkgs/development/compilers/gcc/7/default.nix @@ -381,6 +381,7 @@ stdenv.mkDerivation ({ "--with-gnu-as" "--without-gnu-ld" ] ++ optional (targetPlatform == hostPlatform && targetPlatform.libc == "musl") "--disable-libsanitizer" + ++ optional (targetPlatform.isAarch64) "--enable-fix-cortex-a53-843419" ; targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;