From f38459442af891bc34237b3e067ece4ffce7e0b5 Mon Sep 17 00:00:00 2001 From: tilpner Date: Sat, 9 Jun 2018 19:10:16 +0200 Subject: [PATCH 01/18] appimage-run: init This adds a best-effort hack to run AppImages, which currently don't work out-of-the-box on NixOS. This is not preferable to using packaged applications, but may help users if the application they want to run is not in nixpkgs. It uses the package list from the Steam chroot, but without Steam packages. --- .../appimage-run/default.nix | 146 ++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 + 2 files changed, 148 insertions(+) create mode 100644 pkgs/tools/package-management/appimage-run/default.nix diff --git a/pkgs/tools/package-management/appimage-run/default.nix b/pkgs/tools/package-management/appimage-run/default.nix new file mode 100644 index 00000000000..f6c4c25559e --- /dev/null +++ b/pkgs/tools/package-management/appimage-run/default.nix @@ -0,0 +1,146 @@ +{ stdenv, writeScript, buildFHSUserEnv, coreutils +, extraPkgs ? pkgs: [] }: + +buildFHSUserEnv { + name = "appimage-run"; + + # Most of the packages were taken from the Steam chroot + targetPkgs = pkgs: with pkgs; [ + gtk3 + bashInteractive + gnome3.zenity + python2 + xorg.xrandr + which + perl + xdg_utils + iana-etc + ] ++ extraPkgs pkgs; + + multiPkgs = pkgs: with pkgs; [ + desktop-file-utils + xorg.libXcomposite + xorg.libXtst + xorg.libXrandr + xorg.libXext + xorg.libX11 + xorg.libXfixes + libGL + + gst_all_1.gstreamer + gst_all_1.gst-plugins-ugly + libdrm + xorg.xkeyboardconfig + xorg.libpciaccess + + glib + gtk2 + bzip2 + zlib + gdk_pixbuf + + xorg.libXinerama + xorg.libXdamage + xorg.libXcursor + xorg.libXrender + xorg.libXScrnSaver + xorg.libXxf86vm + xorg.libXi + xorg.libSM + xorg.libICE + gnome2.GConf + freetype + (curl.override { gnutlsSupport = true; sslSupport = false; }) + nspr + nss + fontconfig + cairo + pango + expat + dbus + cups + libcap + SDL2 + libusb1 + dbus-glib + libav + atk + libudev0-shim + networkmanager098 + + xorg.libXt + xorg.libXmu + xorg.libxcb + libGLU + libuuid + libogg + libvorbis + SDL + SDL2_image + glew110 + openssl + libidn + tbb + wayland + mesa_noglu + libxkbcommon + + flac + freeglut + libjpeg + libpng12 + libsamplerate + libmikmod + libtheora + libtiff + pixman + speex + SDL_image + SDL_ttf + SDL_mixer + SDL2_ttf + SDL2_mixer + gstreamer + gst-plugins-base + libappindicator-gtk2 + libcaca + libcanberra + libgcrypt + libvpx + librsvg + xorg.libXft + libvdpau + alsaLib + strace + ]; + + runScript = writeScript "appimage-exec" '' + #!${stdenv.shell} + APPIMAGE="$(realpath "$1")" + + if [ ! -x "$APPIMAGE" ]; then + echo "fatal: $APPIMAGE is not executable" + exit 1 + fi + + SHA256="$(${coreutils}/bin/sha256sum "$APPIMAGE" | cut -d ' ' -f 1)" + SQUASHFS_ROOT="''${XDG_CACHE_HOME:-$HOME/.cache}/appimage-run/$SHA256/" + mkdir -p "$SQUASHFS_ROOT" + + export APPDIR="$SQUASHFS_ROOT/squashfs-root" + if [ ! -x "$APPDIR" ]; then + cd "$SQUASHFS_ROOT" + "$APPIMAGE" --appimage-extract 2>/dev/null + fi + + cd "$APPDIR" + export PATH="$PATH:$PWD/usr/bin" + export APPIMAGE_SILENT_INSTALL=1 + + if [ -n "$APPIMAGE_DEBUG_EXEC" ]; then + exec "$APPIMAGE_DEBUG_EXEC" + fi + + exec ./AppRun + ''; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a5dacded6fe..c52136ddcbe 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -501,6 +501,8 @@ with pkgs; buildTools = androidenv.buildTools; }; + appimage-run = callPackage ../tools/package-management/appimage-run {}; + apt-cacher-ng = callPackage ../servers/http/apt-cacher-ng { }; apt-offline = callPackage ../tools/misc/apt-offline { }; From e2589f7a7238392a55363c2e680ca272e92b3c4a Mon Sep 17 00:00:00 2001 From: Assassinkin Date: Thu, 21 Jun 2018 18:18:17 +0100 Subject: [PATCH 02/18] pythonPackages.seekpath: init at 1.8.1 --- .../python-modules/seekpath/default.nix | 25 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 27 insertions(+) create mode 100644 pkgs/development/python-modules/seekpath/default.nix diff --git a/pkgs/development/python-modules/seekpath/default.nix b/pkgs/development/python-modules/seekpath/default.nix new file mode 100644 index 00000000000..de17e65d2bf --- /dev/null +++ b/pkgs/development/python-modules/seekpath/default.nix @@ -0,0 +1,25 @@ +{ stdenv, buildPythonPackage, fetchPypi, numpy, future, spglib, glibcLocales }: + +buildPythonPackage rec { + pname = "seekpath"; + version = "1.8.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "0bdc0400c96952525b1165894807e4bec90aaedb11cfeb27a57414e6091eb026"; + }; + + LC_ALL = "en_US.utf-8"; + + propagatedBuildInputs = [ numpy spglib future ]; + + nativeBuildInputs = [ glibcLocales ]; + + meta = with stdenv.lib; { + description = "A module to obtain and visualize band paths in the Brillouin zone of crystal structures."; + homepage = https://github.com/giovannipizzi/seekpath; + license = licenses.mit; + maintainers = with maintainers; [ psyanticy ]; + }; +} + diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index d057cebf9f5..d16a8e56ab3 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -458,6 +458,8 @@ in { salmon-mail = callPackage ../development/python-modules/salmon-mail { }; + seekpath = callPackage ../development/python-modules/seekpath { }; + serversyncstorage = callPackage ../development/python-modules/serversyncstorage {}; simpleeval = callPackage ../development/python-modules/simpleeval { }; From 47558d9e04b84784ed6d6651b496f83f88687d0c Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Thu, 21 Jun 2018 23:14:02 +0200 Subject: [PATCH 03/18] python3Packages.git-annex-adapter: fix build The exception message is broken becuase of some uppercase vs. lowercase issues that have been patched accordingly. Additionally use `fetchpatch` rather than `fetchurl` to apply patches into the build. --- .../git-annex-adapter/default.nix | 18 +++++++++++------- .../not-a-git-repo-testcase.patch | 13 +++++++++++++ 2 files changed, 24 insertions(+), 7 deletions(-) create mode 100644 pkgs/development/python-modules/git-annex-adapter/not-a-git-repo-testcase.patch diff --git a/pkgs/development/python-modules/git-annex-adapter/default.nix b/pkgs/development/python-modules/git-annex-adapter/default.nix index 04fae0db1b7..6cb6e626f27 100644 --- a/pkgs/development/python-modules/git-annex-adapter/default.nix +++ b/pkgs/development/python-modules/git-annex-adapter/default.nix @@ -1,5 +1,6 @@ -{ stdenv, buildPythonPackage, isPy3k, fetchFromGitHub, fetchurl -, utillinux, pygit2, gitMinimal, git-annex }: +{ stdenv, buildPythonPackage, isPy3k, fetchFromGitHub, fetchpatch +, utillinux, pygit2, gitMinimal, git-annex +}: buildPythonPackage rec { pname = "git-annex-adapter"; @@ -22,10 +23,13 @@ buildPythonPackage rec { ''; # TODO: Remove for next version - patches = fetchurl { - url = "https://github.com/alpernebbi/git-annex-adapter/commit/9f64c4b99cae7b681820c6c7382e1e40489f4d1e.patch"; - sha256 = "1hbw8651amjskakvs1wv2msd1wryrq0vpryvbispg5267rs8q7hp"; - }; + patches = [ + ./not-a-git-repo-testcase.patch + (fetchpatch { + url = "https://github.com/alpernebbi/git-annex-adapter/commit/9f64c4b99cae7b681820c6c7382e1e40489f4d1e.patch"; + sha256 = "0yh66gial6bx7kbl7s7lkzljnkpgvgr8yahqqcq9z76d0w752dir"; + }) + ]; checkInputs = [ utillinux # `rev` is needed in tests/test_process.py @@ -43,6 +47,6 @@ buildPythonPackage rec { homepage = https://github.com/alpernebbi/git-annex-adapter; description = "Call git-annex commands from Python"; license = licenses.gpl3Plus; - maintainers = with maintainers; [ dotlambda ]; + maintainers = with maintainers; [ dotlambda ma27 ]; }; } diff --git a/pkgs/development/python-modules/git-annex-adapter/not-a-git-repo-testcase.patch b/pkgs/development/python-modules/git-annex-adapter/not-a-git-repo-testcase.patch new file mode 100644 index 00000000000..2a386ee3f2f --- /dev/null +++ b/pkgs/development/python-modules/git-annex-adapter/not-a-git-repo-testcase.patch @@ -0,0 +1,13 @@ +diff --git a/tests/test_process.py b/tests/test_process.py +index 493fc8f..feb1833 100644 +--- a/tests/test_process.py ++++ b/tests/test_process.py +@@ -126,7 +126,7 @@ class TestProcessOnEmptyDir(TempDirTestCase): + with self.assertRaises(subprocess.CalledProcessError) as cm: + runner('status', '-sb') + self.assertIn( +- "fatal: Not a git repository", ++ "fatal: not a git repository", + cm.exception.stderr, + ) + From 0fe77afcaf94d65c02edce3b6282ca401ffefcdf Mon Sep 17 00:00:00 2001 From: Assassinkin Date: Fri, 22 Jun 2018 12:54:26 +0100 Subject: [PATCH 04/18] pythonPackages.monty: init at 1.0.2 --- .../python-modules/monty/default.nix | 37 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 4 +- 2 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/python-modules/monty/default.nix diff --git a/pkgs/development/python-modules/monty/default.nix b/pkgs/development/python-modules/monty/default.nix new file mode 100644 index 00000000000..f3a564397b5 --- /dev/null +++ b/pkgs/development/python-modules/monty/default.nix @@ -0,0 +1,37 @@ +{ stdenv, buildPythonPackage, fetchFromGitHub, nose, numpy, six, ruamel_yaml, msgpack-python, coverage, coveralls, pymongo, lsof }: + +buildPythonPackage rec { + pname = "monty"; + version = "1.0.2"; + + # No tests in Pypi + src = fetchFromGitHub { + owner = "materialsvirtuallab"; + repo = pname; + rev = "v${version}"; + sha256 = "0ss70fanavqdpj56yymj06lacgnknb4ap39m2q28v9lz32cs6xdg"; + }; + + propagatedBuildInputs = [ nose numpy six ruamel_yaml msgpack-python coverage coveralls pymongo lsof ]; + + preCheck = '' + substituteInPlace tests/test_os.py \ + --replace 'def test_which(self):' '#' \ + --replace 'py = which("python")' '#' \ + --replace 'self.assertEqual(os.path.basename(py), "python")' '#' \ + --replace 'self.assertEqual("/usr/bin/find", which("/usr/bin/find"))' '#' \ + --replace 'self.assertIs(which("non_existent_exe"), None)' '#' \ + ''; + + meta = with stdenv.lib; { + longDescription = " + Monty implements supplementary useful functions for Python that are not part of the + standard library. Examples include useful utilities like transparent support for zipped files, useful design + patterns such as singleton and cached_class, and many more. + "; + homepage = https://github.com/materialsvirtuallab/monty; + license = licenses.mit; + maintainers = with maintainers; [ psyanticy ]; + }; +} + diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index d057cebf9f5..5cdc26370ec 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -291,7 +291,9 @@ in { logster = callPackage ../development/python-modules/logster { }; - mail-parser = callPackage ../development/python-modules/mail-parser { }; + mail-parser = callPackage ../development/python-modules/mail-parser { }; + + monty = callPackage ../development/python-modules/monty { }; mpi4py = callPackage ../development/python-modules/mpi4py { mpi = pkgs.openmpi; From e84a8bf83d64bc55d58ecbdbddc9a45156c0d752 Mon Sep 17 00:00:00 2001 From: Assassinkin Date: Fri, 22 Jun 2018 14:46:51 +0100 Subject: [PATCH 05/18] pythonPackages.monty: Add a short description --- pkgs/development/python-modules/monty/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/python-modules/monty/default.nix b/pkgs/development/python-modules/monty/default.nix index f3a564397b5..e53098f6f23 100644 --- a/pkgs/development/python-modules/monty/default.nix +++ b/pkgs/development/python-modules/monty/default.nix @@ -24,6 +24,7 @@ buildPythonPackage rec { ''; meta = with stdenv.lib; { + description = "Serves as a complement to the Python standard library by providing a suite of tools to solve many common problems"; longDescription = " Monty implements supplementary useful functions for Python that are not part of the standard library. Examples include useful utilities like transparent support for zipped files, useful design From 950d667b3ddcab46c3283a94f49d9a03ab658b69 Mon Sep 17 00:00:00 2001 From: Cray Elliott Date: Sat, 23 Jun 2018 01:48:27 -0700 Subject: [PATCH 06/18] phpPackages.composer: 1.6.3 -> 1.6.5 --- pkgs/top-level/php-packages.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index a1015c78024..a2e54a16d04 100644 --- a/pkgs/top-level/php-packages.nix +++ b/pkgs/top-level/php-packages.nix @@ -328,11 +328,11 @@ let composer = pkgs.stdenv.mkDerivation rec { name = "composer-${version}"; - version = "1.6.3"; + version = "1.6.5"; src = pkgs.fetchurl { url = "https://getcomposer.org/download/${version}/composer.phar"; - sha256 = "1dna9ng77nw002l7hq60b6vz0f1snmnsxj1l7cg4f877msxppjsj"; + sha256 = "0d1lpvq8wylh5qgxhbqb5r7j3c6qk0bz4b5vg187jsl6z6fvxgk7"; }; unpackPhase = ":"; From e4a32f980b647604ab6e78b48f683f8df17d0b65 Mon Sep 17 00:00:00 2001 From: Okina Matara Date: Mon, 18 Jun 2018 22:18:48 -0500 Subject: [PATCH 07/18] dolphinEmuMaster: 20180609 -> 20180618 --- pkgs/misc/emulators/dolphin-emu/master.nix | 53 ++++++++++------------ 1 file changed, 25 insertions(+), 28 deletions(-) diff --git a/pkgs/misc/emulators/dolphin-emu/master.nix b/pkgs/misc/emulators/dolphin-emu/master.nix index 2798306c300..fd22818819c 100644 --- a/pkgs/misc/emulators/dolphin-emu/master.nix +++ b/pkgs/misc/emulators/dolphin-emu/master.nix @@ -1,13 +1,10 @@ -{ stdenv, fetchFromGitHub, pkgconfig, cmake, makeWrapper, bluez, ffmpeg, libao, libGLU_combined, gtk2, glib -, pcre, gettext, libpthreadstubs, libXrandr, libXext, libXxf86vm, libXinerama, libSM, readline -, openal, libXdmcp, portaudio, libusb, libevdev, curl, qt5 -, vulkan-loader ? null -, libpulseaudio ? null +{ stdenv, fetchFromGitHub, pkgconfig, cmake, makeWrapper, bluez, ffmpeg, libao +, libGLU_combined, gtk2, glib, pcre, gettext, libpthreadstubs, libXrandr, libusb +, libXext, libXxf86vm, libXinerama, libSM, readline, openal, libXdmcp, libevdev +, portaudio, curl, qt5, vulkan-loader ? null, libpulseaudio ? null + # - Inputs used for Darwin -, CoreBluetooth, cf-private, ForceFeedback, IOKit, OpenGL -, wxGTK -, libpng -, hidapi +, CoreBluetooth, cf-private, ForceFeedback, IOKit, OpenGL, wxGTK, libpng, hidapi # options , dolphin-wxgui ? true @@ -18,14 +15,26 @@ assert dolphin-wxgui || dolphin-qtgui; assert !(dolphin-wxgui && dolphin-qtgui); stdenv.mkDerivation rec { - name = "dolphin-emu-20180609"; + name = "dolphin-emu-20180618"; src = fetchFromGitHub { owner = "dolphin-emu"; repo = "dolphin"; - rev = "1d87584d69e3fdd730502127274fcbd85cebd591"; - sha256 = "0sxzmmv8gvfsy96p1x1aya1cpq0237gip3zkl4bks4grgxf8958b"; + rev = "091efcc41d59dbe0e478ea96f891c1b47b99ddde"; + sha256 = "1djsd41kdaphyyd3jyk669hjl39mskm186v86nijwg4a0c70kb2r"; }; + enableParallelBuilding = true; + nativeBuildInputs = [ cmake pkgconfig ] + ++ stdenv.lib.optionals stdenv.isLinux [ makeWrapper ]; + + buildInputs = [ + curl ffmpeg libao libGLU_combined gtk2 glib pcre gettext libpthreadstubs + libXrandr libXext libXxf86vm libXinerama libSM readline openal libXdmcp + portaudio libusb libpulseaudio libpng hidapi + ] ++ stdenv.lib.optionals stdenv.isDarwin [ wxGTK CoreBluetooth cf-private ForceFeedback IOKit OpenGL ] + ++ stdenv.lib.optionals stdenv.isLinux [ bluez libevdev vulkan-loader ] + ++ stdenv.lib.optionals dolphin-qtgui [ qt5.qtbase ]; + cmakeFlags = [ "-DGTK2_GLIBCONFIG_INCLUDE_DIR=${glib.out}/lib/glib-2.0/include" "-DGTK2_GDKCONFIG_INCLUDE_DIR=${gtk2.out}/lib/gtk-2.0/include" @@ -34,18 +43,6 @@ stdenv.mkDerivation rec { ] ++ stdenv.lib.optionals (!dolphin-qtgui) [ "-DENABLE_QT2=False" ] ++ stdenv.lib.optionals stdenv.isDarwin [ "-DOSX_USE_DEFAULT_SEARCH_PATH=True" ]; - enableParallelBuilding = true; - - nativeBuildInputs = [ cmake pkgconfig ] - ++ stdenv.lib.optionals stdenv.isLinux [ makeWrapper ]; - - buildInputs = [ curl ffmpeg libao libGLU_combined gtk2 glib pcre - gettext libpthreadstubs libXrandr libXext libXxf86vm libXinerama libSM readline openal - libXdmcp portaudio libusb libpulseaudio libpng hidapi - ] ++ stdenv.lib.optionals stdenv.isDarwin [ wxGTK CoreBluetooth cf-private ForceFeedback IOKit OpenGL ] - ++ stdenv.lib.optionals stdenv.isLinux [ bluez libevdev vulkan-loader ] - ++ stdenv.lib.optionals dolphin-qtgui [ qt5.qtbase ]; - # - Change install path to Applications relative to $out # - Allow Dolphin to use nix-provided libraries instead of building them preConfigure = stdenv.lib.optionalString stdenv.isDarwin '' @@ -63,11 +60,11 @@ stdenv.mkDerivation rec { wrapProgram $out/bin/dolphin-emu-wx --prefix LD_LIBRARY_PATH : ${vulkan-loader}/lib ''; - meta = { - homepage = http://dolphin-emu.org/; + meta = with stdenv.lib; { + homepage = "http://dolphin-emu.org"; description = "Gamecube/Wii/Triforce emulator for x86_64 and ARM"; - license = stdenv.lib.licenses.gpl2; - maintainers = with stdenv.lib.maintainers; [ MP2E ]; + license = licenses.gpl2; + maintainers = with maintainers; [ MP2E ]; branch = "master"; # x86_32 is an unsupported platform. # Enable generic build if you really want a JIT-less binary. From 25d4708c95b245ad875ab153cca03ef207915e76 Mon Sep 17 00:00:00 2001 From: Okina Matara Date: Tue, 19 Jun 2018 01:14:04 -0500 Subject: [PATCH 08/18] dolphinEmuMaster: Add option-dependent desktop file --- pkgs/misc/emulators/dolphin-emu/master.nix | 53 ++++++++++++++++------ 1 file changed, 40 insertions(+), 13 deletions(-) diff --git a/pkgs/misc/emulators/dolphin-emu/master.nix b/pkgs/misc/emulators/dolphin-emu/master.nix index fd22818819c..ad184c3c882 100644 --- a/pkgs/misc/emulators/dolphin-emu/master.nix +++ b/pkgs/misc/emulators/dolphin-emu/master.nix @@ -1,7 +1,9 @@ -{ stdenv, fetchFromGitHub, pkgconfig, cmake, makeWrapper, bluez, ffmpeg, libao -, libGLU_combined, gtk2, glib, pcre, gettext, libpthreadstubs, libXrandr, libusb -, libXext, libXxf86vm, libXinerama, libSM, readline, openal, libXdmcp, libevdev -, portaudio, curl, qt5, vulkan-loader ? null, libpulseaudio ? null +{ stdenv, fetchFromGitHub, makeWrapper, makeDesktopItem, pkgconfig, cmake, qt5 +, bluez, ffmpeg, libao, libGLU_combined, gtk2, glib, pcre, gettext, libXrandr +, libpthreadstubs, libusb, libXext, libXxf86vm, libXinerama, libSM, libXdmcp +, readline, openal, libevdev, portaudio, curl +, vulkan-loader ? null +, libpulseaudio ? null # - Inputs used for Darwin , CoreBluetooth, cf-private, ForceFeedback, IOKit, OpenGL, wxGTK, libpng, hidapi @@ -14,7 +16,19 @@ assert dolphin-wxgui || dolphin-qtgui; assert !(dolphin-wxgui && dolphin-qtgui); -stdenv.mkDerivation rec { +let + desktopItem = makeDesktopItem { + name = "dolphin-emu-master"; + exec = stdenv.lib.optionalString dolphin-wxgui "dolphin-emu-wx" + + stdenv.lib.optionalString dolphin-qtgui "dolphin-emu-qt"; + icon = "dolphin-emu"; + comment = "A Wii/GameCube Emulator"; + desktopName = "Dolphin Emulator (master)"; + genericName = "Wii/GameCube Emulator"; + categories = "Game;Emulator;"; + startupNotify = "false"; + }; +in stdenv.mkDerivation rec { name = "dolphin-emu-20180618"; src = fetchFromGitHub { owner = "dolphin-emu"; @@ -31,9 +45,10 @@ stdenv.mkDerivation rec { curl ffmpeg libao libGLU_combined gtk2 glib pcre gettext libpthreadstubs libXrandr libXext libXxf86vm libXinerama libSM readline openal libXdmcp portaudio libusb libpulseaudio libpng hidapi - ] ++ stdenv.lib.optionals stdenv.isDarwin [ wxGTK CoreBluetooth cf-private ForceFeedback IOKit OpenGL ] + ] ++ stdenv.lib.optionals dolphin-qtgui [ qt5.qtbase ] ++ stdenv.lib.optionals stdenv.isLinux [ bluez libevdev vulkan-loader ] - ++ stdenv.lib.optionals dolphin-qtgui [ qt5.qtbase ]; + ++ stdenv.lib.optionals stdenv.isDarwin [ wxGTK CoreBluetooth cf-private + ForceFeedback IOKit OpenGL ]; cmakeFlags = [ "-DGTK2_GLIBCONFIG_INCLUDE_DIR=${glib.out}/lib/glib-2.0/include" @@ -41,13 +56,17 @@ stdenv.mkDerivation rec { "-DGTK2_INCLUDE_DIRS=${gtk2.dev}/include/gtk-2.0" "-DENABLE_LTO=True" ] ++ stdenv.lib.optionals (!dolphin-qtgui) [ "-DENABLE_QT2=False" ] - ++ stdenv.lib.optionals stdenv.isDarwin [ "-DOSX_USE_DEFAULT_SEARCH_PATH=True" ]; + ++ stdenv.lib.optionals stdenv.isDarwin [ + "-DOSX_USE_DEFAULT_SEARCH_PATH=True" + ]; # - Change install path to Applications relative to $out # - Allow Dolphin to use nix-provided libraries instead of building them preConfigure = stdenv.lib.optionalString stdenv.isDarwin '' - sed -i -e 's,/Applications,Applications,g' Source/Core/DolphinWX/CMakeLists.txt - sed -i -e 's,if(LIBUSB_FOUND AND NOT APPLE),if(LIBUSB_FOUND),g' CMakeLists.txt + sed -i -e 's,/Applications,Applications,g' \ + Source/Core/DolphinWX/CMakeLists.txt + sed -i -e 's,if(LIBUSB_FOUND AND NOT APPLE),if(LIBUSB_FOUND),g' \ + CMakeLists.txt sed -i -e 's,if(NOT APPLE),if(true),g' CMakeLists.txt ''; @@ -55,9 +74,17 @@ stdenv.mkDerivation rec { mkdir -p "$out/Applications" ''; - postInstall = stdenv.lib.optionalString stdenv.isLinux '' - wrapProgram $out/bin/dolphin-emu-nogui --prefix LD_LIBRARY_PATH : ${vulkan-loader}/lib - wrapProgram $out/bin/dolphin-emu-wx --prefix LD_LIBRARY_PATH : ${vulkan-loader}/lib + postInstall = '' + cp -r ${desktopItem}/share/applications $out/share + '' + stdenv.lib.optionalString stdenv.isLinux '' + wrapProgram $out/bin/dolphin-emu-nogui --prefix LD_LIBRARY_PATH : \ + ${vulkan-loader}/lib + wrapProgram $out/bin/dolphin-emu-wx --prefix LD_LIBRARY_PATH : \ + ${vulkan-loader}/lib + '' + stdenv.lib.optionalString (dolphin-qtgui && stdenv.isLinux) '' + wrapProgram $out/bin/dolphin-emu --prefix LD_LIBRARY_PATH : \ + ${vulkan-loader}/lib + ln -sf $out/bin/dolphin-emu $out/bin/dolphin-emu-qt ''; meta = with stdenv.lib; { From 794c91b49eba8e164a219ba85b19ef899502ba5b Mon Sep 17 00:00:00 2001 From: Okina Matara Date: Fri, 22 Jun 2018 18:09:19 -0500 Subject: [PATCH 09/18] dolphinEmuMaster: 20180618 -> 2018-06-22 --- pkgs/misc/emulators/dolphin-emu/master.nix | 24 ++++++++++++---------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/pkgs/misc/emulators/dolphin-emu/master.nix b/pkgs/misc/emulators/dolphin-emu/master.nix index ad184c3c882..3bfbc2565f3 100644 --- a/pkgs/misc/emulators/dolphin-emu/master.nix +++ b/pkgs/misc/emulators/dolphin-emu/master.nix @@ -10,8 +10,8 @@ # options , dolphin-wxgui ? true -, dolphin-qtgui ? false -}: +, dolphin-qtgui ? false }: + # XOR: ensure only wx XOR qt are enabled assert dolphin-wxgui || dolphin-qtgui; assert !(dolphin-wxgui && dolphin-qtgui); @@ -29,12 +29,14 @@ let startupNotify = "false"; }; in stdenv.mkDerivation rec { - name = "dolphin-emu-20180618"; + name = "dolphin-emu-${version}"; + version = "2018-06-22"; + src = fetchFromGitHub { owner = "dolphin-emu"; repo = "dolphin"; - rev = "091efcc41d59dbe0e478ea96f891c1b47b99ddde"; - sha256 = "1djsd41kdaphyyd3jyk669hjl39mskm186v86nijwg4a0c70kb2r"; + rev = "971972069cc2813ee7fa5b630c67baab2b35d12d"; + sha256 = "0kf6dzvwmvhqb1iy15ldap0mmfbyyzl5f14jc65a110vwv5sww7n"; }; enableParallelBuilding = true; @@ -77,13 +79,13 @@ in stdenv.mkDerivation rec { postInstall = '' cp -r ${desktopItem}/share/applications $out/share '' + stdenv.lib.optionalString stdenv.isLinux '' - wrapProgram $out/bin/dolphin-emu-nogui --prefix LD_LIBRARY_PATH : \ - ${vulkan-loader}/lib - wrapProgram $out/bin/dolphin-emu-wx --prefix LD_LIBRARY_PATH : \ - ${vulkan-loader}/lib + wrapProgram $out/bin/dolphin-emu-nogui \ + --prefix LD_LIBRARY_PATH : ${vulkan-loader}/lib + wrapProgram $out/bin/dolphin-emu-wx \ + --prefix LD_LIBRARY_PATH : ${vulkan-loader}/lib '' + stdenv.lib.optionalString (dolphin-qtgui && stdenv.isLinux) '' - wrapProgram $out/bin/dolphin-emu --prefix LD_LIBRARY_PATH : \ - ${vulkan-loader}/lib + wrapProgram $out/bin/dolphin-emu \ + --prefix LD_LIBRARY_PATH : ${vulkan-loader}/lib ln -sf $out/bin/dolphin-emu $out/bin/dolphin-emu-qt ''; From bb79a46357122714c60468a6ccc3522452145db7 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Sat, 23 Jun 2018 11:02:23 +0200 Subject: [PATCH 10/18] freecad: fix build --- pkgs/applications/graphics/freecad/default.nix | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/graphics/freecad/default.nix b/pkgs/applications/graphics/freecad/default.nix index 87565a1e53e..8001080a170 100644 --- a/pkgs/applications/graphics/freecad/default.nix +++ b/pkgs/applications/graphics/freecad/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, cmake, coin3d, xercesc, ode, eigen, qt4, opencascade, gts -, hdf5, vtk, medfile, boost, zlib, python27Packages, swig, gfortran +, hdf5, vtk, medfile, boost, zlib, python27Packages, swig, gfortran, fetchpatch , soqt, libf2c, makeWrapper, makeDesktopItem , mpi ? null }: @@ -16,9 +16,18 @@ in stdenv.mkDerivation rec { sha256 = "1yv6abdzlpn4wxy315943xwrnbywxqfgkjib37qwfvbb8y9p60df"; }; - buildInputs = with pythonPackages; [ cmake coin3d xercesc ode eigen qt4 opencascade gts boost - zlib python swig gfortran soqt libf2c makeWrapper matplotlib mpi vtk hdf5 medfile - pycollada pyside pysideShiboken pysideTools pivy + buildInputs = with pythonPackages; [ cmake coin3d xercesc ode eigen qt4 opencascade gts + zlib swig gfortran soqt libf2c makeWrapper mpi vtk hdf5 medfile + ] ++ (with pythonPackages; [ + matplotlib pycollada pyside pysideShiboken pysideTools pivy python boost + ]); + + patches = [ + # Fix for finding boost_python. Boost >= 1.67.0 appends the Python version. + (fetchpatch { + url = https://github.com/FreeCAD/FreeCAD/commit/3c9e6b038ed544e446c61695dab62f83e781a28a.patch; + sha256 = "0f09qywzn0y41hylizb5g8jy74fi53iqmvqr5zznaz16wpw4hqbp"; + }) ]; enableParallelBuilding = true; From 3fde98e5876216db44bce612f8137852aadd7b78 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Sat, 23 Jun 2018 03:31:54 +0200 Subject: [PATCH 11/18] nixos/screen: add `pkgs.screen` to the system closure --- nixos/doc/manual/release-notes/rl-1809.xml | 8 ++++++++ nixos/modules/programs/screen.nix | 4 +++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/nixos/doc/manual/release-notes/rl-1809.xml b/nixos/doc/manual/release-notes/rl-1809.xml index d3062b3ea32..667437a2413 100644 --- a/nixos/doc/manual/release-notes/rl-1809.xml +++ b/nixos/doc/manual/release-notes/rl-1809.xml @@ -322,6 +322,14 @@ inherit (pkgs.nixos { kubectl delete clusterrolebinding kubernetes-dashboard + + + The programs.screen module provides allows to configure + /etc/screenrc, however the module behaved fairly counterintuitive as + the config exists, but the package wasn't available. Since 18.09 pkgs.screen + will be added to environment.systemPackages. + + diff --git a/nixos/modules/programs/screen.nix b/nixos/modules/programs/screen.nix index f82338a69d2..c1daaa58f16 100644 --- a/nixos/modules/programs/screen.nix +++ b/nixos/modules/programs/screen.nix @@ -1,4 +1,4 @@ -{ config, lib, ... }: +{ config, lib, pkgs, ... }: let inherit (lib) mkOption mkIf types; @@ -25,6 +25,8 @@ in config = mkIf (cfg.screenrc != "") { environment.etc."screenrc".text = cfg.screenrc; + + environment.systemPackages = [ pkgs.screen ]; }; } From 46b7f6bdfd8f153d310215507a2209b6b788b9d6 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Sat, 23 Jun 2018 11:48:06 +0200 Subject: [PATCH 12/18] python.pkgs.pandas: fix build --- .../python-modules/pandas/default.nix | 29 ++++++++++++++----- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/pkgs/development/python-modules/pandas/default.nix b/pkgs/development/python-modules/pandas/default.nix index ebb06f0f47d..08fdddb7346 100644 --- a/pkgs/development/python-modules/pandas/default.nix +++ b/pkgs/development/python-modules/pandas/default.nix @@ -24,8 +24,9 @@ }: let - inherit (stdenv.lib) optional optionalString concatStringsSep; + inherit (stdenv.lib) optional optionals optionalString concatStringsSep; inherit (stdenv) isDarwin; + in buildPythonPackage rec { pname = "pandas"; version = "0.23.1"; @@ -67,6 +68,24 @@ in buildPythonPackage rec { "['pandas/src/klib', 'pandas/src', '$cpp_sdk']" ''; + + disabledTests = stdenv.lib.concatMapStringsSep " and " (s: "not " + s) ([ + # since dateutil 0.6.0 the following fails: test_fallback_plural, test_ambiguous_flags, test_ambiguous_compat + # was supposed to be solved by https://github.com/dateutil/dateutil/issues/321, but is not the case + "test_fallback_plural" + "test_ambiguous_flags" + "test_ambiguous_compat" + # Locale-related + "test_names" + "test_dt_accessor_datetime_name_accessors" + "test_datetime_name_accessors" + # Can't import from test folder + "test_oo_optimizable" + ] ++ optionals isDarwin [ + "test_locale" + "test_clipboard" + ]); + checkPhase = '' runHook preCheck '' @@ -79,13 +98,7 @@ in buildPythonPackage rec { chmod a+x pbcopy pbpaste export PATH=$(pwd):$PATH '' + '' - # since dateutil 0.6.0 the following fails: test_fallback_plural, test_ambiguous_flags, test_ambiguous_compat - # was supposed to be solved by https://github.com/dateutil/dateutil/issues/321, but is not the case - py.test $out/${python.sitePackages}/pandas --skip-slow --skip-network \ - -k "not test_fallback_plural and \ - not test_ambiguous_flags and \ - not test_ambiguous_compat \ - ${optionalString isDarwin "and not test_locale and not test_clipboard"}" + py.test $out/${python.sitePackages}/pandas --skip-slow --skip-network -k "$disabledTests" runHook postCheck ''; From 59daa4fd629f7e6547bdff047d9759c353f29067 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Sat, 23 Jun 2018 12:02:20 +0200 Subject: [PATCH 13/18] python.pkgs.aiohttp: fix build --- pkgs/development/python-modules/aiohttp/default.nix | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/aiohttp/default.nix b/pkgs/development/python-modules/aiohttp/default.nix index ff03812f80c..ec76d840a56 100644 --- a/pkgs/development/python-modules/aiohttp/default.nix +++ b/pkgs/development/python-modules/aiohttp/default.nix @@ -12,6 +12,8 @@ , gunicorn , pytest-mock , async_generator +, pytestrunner +, pytest-timeout }: buildPythonPackage rec { @@ -25,11 +27,15 @@ buildPythonPackage rec { disabled = pythonOlder "3.5"; - checkInputs = [ pytest gunicorn pytest-mock async_generator ]; + checkInputs = [ pytest gunicorn pytest-mock async_generator pytestrunner pytest-timeout ]; propagatedBuildInputs = [ attrs chardet multidict async-timeout yarl ] ++ lib.optional (pythonOlder "3.7") idna-ssl; + + # Several test failures. Need to be looked into. + doCheck = false; + meta = with lib; { description = "Asynchronous HTTP Client/Server for Python and asyncio"; license = licenses.asl20; From 1dcee7a1622ec79885958930b7e1b2051c7460aa Mon Sep 17 00:00:00 2001 From: Benjamin Andresen Date: Sat, 23 Jun 2018 13:13:37 +0200 Subject: [PATCH 14/18] pythonPackages.python-periphery: init at 1.1.1 --- .../python-periphery/default.nix | 21 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 23 insertions(+) create mode 100644 pkgs/development/python-modules/python-periphery/default.nix diff --git a/pkgs/development/python-modules/python-periphery/default.nix b/pkgs/development/python-modules/python-periphery/default.nix new file mode 100644 index 00000000000..b2b103858cc --- /dev/null +++ b/pkgs/development/python-modules/python-periphery/default.nix @@ -0,0 +1,21 @@ +{ lib, buildPythonPackage, fetchPypi }: + +buildPythonPackage rec { + pname = "python-periphery"; + version = "1.1.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "fe8f351934edce72cd919b4eb070878ebff551db5e21aea61e0f446101f0a79f"; + }; + + # Some tests require physical probing and additional physical setup + doCheck = false; + + meta = { + homepage = https://github.com/vsergeev/python-periphery; + description = "Linux Peripheral I/O (GPIO, LED, PWM, SPI, I2C, MMIO, Serial) with Python 2 & 3"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ bandresen ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index d057cebf9f5..a0f98fd6aeb 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -434,6 +434,8 @@ in { then ../development/python-modules/python3-openid else ../development/python-modules/python-openid) { }; + python-periphery = callPackage ../development/python-modules/python-periphery { }; + python-sql = callPackage ../development/python-modules/python-sql { }; python-stdnum = callPackage ../development/python-modules/python-stdnum { }; From 5b3ccfd58ae1f26ea2abaa2b9bc08840d7a4ca42 Mon Sep 17 00:00:00 2001 From: Patrick Hilhorst Date: Sat, 23 Jun 2018 13:42:00 +0200 Subject: [PATCH 15/18] atom: 1.27.2 -> 1.28.0 --- pkgs/applications/editors/atom/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/editors/atom/default.nix b/pkgs/applications/editors/atom/default.nix index b13e9fe1258..c37064ee600 100644 --- a/pkgs/applications/editors/atom/default.nix +++ b/pkgs/applications/editors/atom/default.nix @@ -60,12 +60,12 @@ let }; in stdenv.lib.mapAttrs common { atom = { - version = "1.27.2"; - sha256 = "0xriv142asc82mjxzkqsafaqalxa3icz4781z2fsgyfkkw6zbz2v"; + version = "1.28.0"; + sha256 = "0k09316897qb9ypkqm6w78nz7sj5385xfdm9bm97m8pka7v61g7h"; }; atom-beta = { - version = "1.28.0-beta3"; - sha256 = "07mmzkbc7xzcwh6ylrs2w1g3l5gmyfk0gdmr2kzr6jdr00cq73y0"; + version = "1.29.0-beta0"; + sha256 = "05xk63wsjfssf8ckph2bgrxaf99fhz3gs8n8pira8cc9yjk7diz7"; }; } From 14b28269b3db1f2b6d3271bba2cdb198724d8e91 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Sat, 23 Jun 2018 12:20:32 +0200 Subject: [PATCH 16/18] octoprint: fix build --- pkgs/applications/misc/octoprint/default.nix | 38 ++++++++++++-------- 1 file changed, 23 insertions(+), 15 deletions(-) diff --git a/pkgs/applications/misc/octoprint/default.nix b/pkgs/applications/misc/octoprint/default.nix index ca381e14dd1..6b057186eaf 100644 --- a/pkgs/applications/misc/octoprint/default.nix +++ b/pkgs/applications/misc/octoprint/default.nix @@ -6,29 +6,37 @@ let overrides = self: super: with self; { backports_ssl_match_hostname = self.backports_ssl_match_hostname_3_4_0_2; + flask = super.flask.overridePythonAttrs (oldAttrs: rec { + version = "0.12.4"; + src = oldAttrs.src.override { + inherit version; + sha256 = "2ea22336f6d388b4b242bc3abf8a01244a8aa3e236e7407469ef78c16ba355dd"; + }; + }); + tornado = buildPythonPackage rec { - name = "tornado-${version}"; + pname = "tornado"; version = "4.0.2"; propagatedBuildInputs = [ backports_ssl_match_hostname certifi ]; - src = fetchurl { - url = "mirror://pypi/t/tornado/${name}.tar.gz"; + src = fetchPypi { + inherit pname version; sha256 = "1yhvn8i05lp3b1953majg48i8pqsyj45h34aiv59hrfvxcj5234h"; }; }; flask_login = buildPythonPackage rec { - name = "Flask-Login-${version}"; + pname = "Flask-Login"; version = "0.2.2"; - src = fetchurl { - url = "mirror://pypi/F/Flask-Login/${name}.tar.gz"; + src = fetchPypi { + inherit pname version; sha256 = "09ygn0r3i3jz065a5psng6bhlsqm78msnly4z6x39bs48r5ww17p"; }; propagatedBuildInputs = [ flask ]; - buildInputs = [ nose ]; + checkInputs = [ nose ]; # No tests included doCheck = false; @@ -37,10 +45,9 @@ let jinja2 = buildPythonPackage rec { pname = "Jinja2"; version = "2.8.1"; - name = "${pname}-${version}"; - src = fetchurl { - url = "mirror://pypi/J/Jinja2/${name}.tar.gz"; + src = fetchPypi { + inherit pname version; sha256 = "14aqmhkc9rw5w0v311jhixdm6ym8vsm29dhyxyrjfqxljwx1yd1m"; }; @@ -53,14 +60,14 @@ let }; in pythonPackages.buildPythonApplication rec { - name = "OctoPrint-${version}"; - version = "1.3.6"; + pname = "OctoPrint"; + version = "1.3.8"; src = fetchFromGitHub { owner = "foosel"; repo = "OctoPrint"; rev = version; - sha256 = "0pgpkjw5zjnks5bky51gjaksq8mhrzkl52kpgf799hl35pd08xr3"; + sha256 = "00zd5yrlihwfd3ly0mxibr77ffa8r8vkm6jhml2ml43dqb99caa3"; }; # We need old Tornado @@ -70,9 +77,10 @@ in pythonPackages.buildPythonApplication rec { psutil pyserial flask_login netaddr markdown sockjs-tornado pylru pyyaml sarge feedparser netifaces click websocket_client scandir chainmap future dateutil futures wrapt monotonic emoji + frozendict ]; - buildInputs = with pythonPackages; [ nose mock ddt ]; + checkInputs = with pythonPackages; [ nose mock ddt ]; # Jailbreak dependencies. postPatch = '' @@ -88,7 +96,7 @@ in pythonPackages.buildPythonApplication rec { -e 's,PyYAML>=[^"]*,PyYAML,g' \ -e 's,scandir>=[^"]*,scandir,g' \ -e 's,werkzeug>=[^"]*,werkzeug,g' \ - -e 's,psutil>=[^"]*,psutil,g' \ + -e 's,psutil==[^"]*,psutil,g' \ -e 's,requests>=[^"]*,requests,g' \ -e 's,future>=[^"]*,future,g' \ -e 's,pyserial>=[^"]*,pyserial,g' \ From cdd5b90b02500d83f050932ac2bc3f080ef7381d Mon Sep 17 00:00:00 2001 From: Pasquale Date: Sat, 23 Jun 2018 13:43:07 +0200 Subject: [PATCH 17/18] home-manager:2017-12-7 -> 2018-06-14 --- pkgs/tools/package-management/home-manager/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/package-management/home-manager/default.nix b/pkgs/tools/package-management/home-manager/default.nix index 8eb266a9e65..44b67ae4dcc 100644 --- a/pkgs/tools/package-management/home-manager/default.nix +++ b/pkgs/tools/package-management/home-manager/default.nix @@ -6,13 +6,13 @@ stdenv.mkDerivation rec { name = "home-manager-${version}"; - version = "2017-12-7"; + version = "2018-06-14"; src = fetchFromGitHub{ owner = "rycee"; repo = "home-manager"; - rev = "0be32c9d42e3a8739263ae7886dc2448c833c19c"; - sha256 = "06lmnzlf5fmiicbgai27ad9m3bj980xf8ifdpc5lzbsy77pfcfap"; + rev = "5641ee3f942e700de35b28fc879b0d8a10a7a1fe"; + sha256 = "0bqzwczbr5c2y3ms7m7ly0as9zsnqwljq61ci2y2gbqzw3md1x2j"; }; nativeBuildInputs = [ makeWrapper ]; From 06932b25f366c8ba23a1f4edeb3e5e96bb3fbe42 Mon Sep 17 00:00:00 2001 From: Averell Dalton Date: Sat, 23 Jun 2018 17:52:31 +0200 Subject: [PATCH 18/18] Revert "python: jupyterlab_launcher: 0.10.5 -> 0.11.0" This reverts commit a4404adbcb15403b480070118809cad486398577. --- .../python-modules/jupyterlab_launcher/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/jupyterlab_launcher/default.nix b/pkgs/development/python-modules/jupyterlab_launcher/default.nix index 5bbc36f53df..f316fe10563 100644 --- a/pkgs/development/python-modules/jupyterlab_launcher/default.nix +++ b/pkgs/development/python-modules/jupyterlab_launcher/default.nix @@ -1,11 +1,11 @@ { lib, buildPythonPackage, fetchPypi, jsonschema, notebook }: buildPythonPackage rec { pname = "jupyterlab_launcher"; - version = "0.11.0"; + version = "0.10.5"; src = fetchPypi { inherit pname version; - sha256 = "2eea0cc95b312e136e6e5abc64e2e62baaeca493cd32f553c2205f79e01c0423"; + sha256 = "1v1ir182zm2dl14lqvqjhx2x40wnp0i32n6rldxnm1allfpld1n7"; }; propagatedBuildInputs = [