diff options
19 files changed, 410 insertions, 83 deletions
diff --git a/nixos/doc/manual/release-notes/rl-1809.xml b/nixos/doc/manual/release-notes/rl-1809.xml index d3062b3ea3230..667437a24135e 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 { <literal>kubectl delete clusterrolebinding kubernetes-dashboard</literal> </para> </listitem> + <listitem> + <para> + The <varname>programs.screen</varname> module provides allows to configure + <literal>/etc/screenrc</literal>, however the module behaved fairly counterintuitive as + the config exists, but the package wasn't available. Since 18.09 <literal>pkgs.screen</literal> + will be added to <literal>environment.systemPackages</literal>. + </para> + </listitem> </itemizedlist> </section> </section> diff --git a/nixos/modules/programs/screen.nix b/nixos/modules/programs/screen.nix index f82338a69d25d..c1daaa58f16f4 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 ]; }; } diff --git a/pkgs/applications/editors/atom/default.nix b/pkgs/applications/editors/atom/default.nix index b13e9fe125877..c37064ee60001 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"; }; } diff --git a/pkgs/applications/graphics/freecad/default.nix b/pkgs/applications/graphics/freecad/default.nix index 87565a1e53e52..8001080a170a7 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; diff --git a/pkgs/applications/misc/octoprint/default.nix b/pkgs/applications/misc/octoprint/default.nix index ca381e14dd173..6b057186eaf3d 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' \ diff --git a/pkgs/development/python-modules/aiohttp/default.nix b/pkgs/development/python-modules/aiohttp/default.nix index ff03812f80ccf..ec76d840a56ba 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; diff --git a/pkgs/development/python-modules/git-annex-adapter/default.nix b/pkgs/development/python-modules/git-annex-adapter/default.nix index 04fae0db1b7ae..6cb6e626f279f 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 0000000000000..2a386ee3f2f91 --- /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, + ) + diff --git a/pkgs/development/python-modules/jupyterlab_launcher/default.nix b/pkgs/development/python-modules/jupyterlab_launcher/default.nix index 5bbc36f53dfe9..f316fe10563db 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 = [ diff --git a/pkgs/development/python-modules/monty/default.nix b/pkgs/development/python-modules/monty/default.nix new file mode 100644 index 0000000000000..e53098f6f2326 --- /dev/null +++ b/pkgs/development/python-modules/monty/default.nix @@ -0,0 +1,38 @@ +{ 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; { + 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 + 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/development/python-modules/pandas/default.nix b/pkgs/development/python-modules/pandas/default.nix index ebb06f0f47dbc..08fdddb73467e 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 ''; 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 0000000000000..b2b103858ccea --- /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/development/python-modules/seekpath/default.nix b/pkgs/development/python-modules/seekpath/default.nix new file mode 100644 index 0000000000000..de17e65d2bfb5 --- /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/misc/emulators/dolphin-emu/master.nix b/pkgs/misc/emulators/dolphin-emu/master.nix index 2798306c30029..3bfbc2565f353 100644 --- a/pkgs/misc/emulators/dolphin-emu/master.nix +++ b/pkgs/misc/emulators/dolphin-emu/master.nix @@ -1,56 +1,74 @@ -{ 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 +{ 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 +, CoreBluetooth, cf-private, ForceFeedback, IOKit, OpenGL, wxGTK, libpng, hidapi # 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); -stdenv.mkDerivation rec { - name = "dolphin-emu-20180609"; +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-${version}"; + version = "2018-06-22"; + src = fetchFromGitHub { owner = "dolphin-emu"; repo = "dolphin"; - rev = "1d87584d69e3fdd730502127274fcbd85cebd591"; - sha256 = "0sxzmmv8gvfsy96p1x1aya1cpq0237gip3zkl4bks4grgxf8958b"; + rev = "971972069cc2813ee7fa5b630c67baab2b35d12d"; + sha256 = "0kf6dzvwmvhqb1iy15ldap0mmfbyyzl5f14jc65a110vwv5sww7n"; }; + 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 dolphin-qtgui [ qt5.qtbase ] + ++ stdenv.lib.optionals stdenv.isLinux [ bluez libevdev vulkan-loader ] + ++ stdenv.lib.optionals stdenv.isDarwin [ wxGTK CoreBluetooth cf-private + ForceFeedback IOKit OpenGL ]; + cmakeFlags = [ "-DGTK2_GLIBCONFIG_INCLUDE_DIR=${glib.out}/lib/glib-2.0/include" "-DGTK2_GDKCONFIG_INCLUDE_DIR=${gtk2.out}/lib/gtk-2.0/include" "-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" ]; - - 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 ]; + ++ 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 ''; @@ -58,16 +76,24 @@ 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 = { - 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. 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 0000000000000..f6c4c25559e2c --- /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/tools/package-management/home-manager/default.nix b/pkgs/tools/package-management/home-manager/default.nix index 8eb266a9e654d..44b67ae4dccdf 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 ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index b6a715a6ecd86..bdf2d83fe3fcc 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -502,6 +502,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 { }; diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix index a1015c7802414..a2e54a16d0451 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 = ":"; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 484d2bc8c62b4..673b22c401cd6 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; @@ -434,6 +436,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 { }; @@ -458,6 +462,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 { }; |