diff --git a/nixos/doc/manual/release-notes/rl-1603.xml b/nixos/doc/manual/release-notes/rl-1603.xml index faee3a407da..1528c8a7246 100644 --- a/nixos/doc/manual/release-notes/rl-1603.xml +++ b/nixos/doc/manual/release-notes/rl-1603.xml @@ -348,7 +348,7 @@ $TTL 1800 service.syncthing.dataDir options now has to point to exact folder where syncthing is writing to. Example configuration should - loook something like: + look something like: services.syncthing = { diff --git a/pkgs/applications/editors/emacs-25/builder.sh b/pkgs/applications/editors/emacs-25/builder.sh index 984a61df6f3..545520cca7c 100644 --- a/pkgs/applications/editors/emacs-25/builder.sh +++ b/pkgs/applications/editors/emacs-25/builder.sh @@ -5,6 +5,8 @@ source $stdenv/setup # *our* versions, not the ones found in the system, as it would do by default. # On other platforms, this appears to be unnecessary. preConfigure() { + ./autogen.sh + for i in Makefile.in ./src/Makefile.in ./lib-src/Makefile.in ./leim/Makefile.in; do substituteInPlace $i --replace /bin/pwd pwd done diff --git a/pkgs/applications/editors/vscode/default.nix b/pkgs/applications/editors/vscode/default.nix new file mode 100644 index 00000000000..64b46c2ac6e --- /dev/null +++ b/pkgs/applications/editors/vscode/default.nix @@ -0,0 +1,101 @@ +{ callPackage, stdenv, fetchurl, makeWrapper +, jq, xlibs, gtk, python, nodejs +, ... +} @ args: + +let + electron = callPackage ../../../development/tools/electron/default.nix (args // rec { + version = "0.35.6"; + sha256 = "1bwn14769nby04zkza9jphsya2p6fjnkm1k2y4h5y2l4gnqdvmx0"; + }); +in + stdenv.mkDerivation rec { + name = "vscode-${version}"; + version = "0.10.10"; + + src = fetchurl { + url = "https://github.com/Microsoft/vscode/archive/${version}.tar.gz"; + sha256 = "1mzkip6621111xwwksqjad1kgpbhna4dhpkf6cnj2r18dkk2jmcw"; + }; + + buildInputs = [ makeWrapper jq xlibs.libX11 xlibs.xproto gtk python nodejs electron ]; + + extensionGalleryJSON = '' + { + \"extensionsGallery\": { + \"serviceUrl\": \"https://marketplace.visualstudio.com/_apis/public/gallery\", + \"cacheUrl\": \"https://vscode.blob.core.windows.net/gallery/index\", + \"itemUrl\": \"https://marketplace.visualstudio.com/items\" + } + } + ''; + + configurePhase = '' + # PATCH SCRIPT SHEBANGS + echo "PATCH SCRIPT SHEBANGS" + patchShebangs ./scripts + + # ADD EXTENSION GALLERY URLS TO APPLICATION CONFIGURATION + echo "AUGMENT APPLICATION CONFIGURATION" + echo "$(cat ./product.json) ${extensionGalleryJSON}" | jq -s add > tmpFile && \ + mv tmpFile ./product.json + ''; + + buildPhase = '' + # BUILD COMPILE- & RUN-TIME DEPENDENCIES + echo "BUILD COMPILE- & RUN-TIME DEPENDENCIES" + mkdir -p ./tmp + HOME=./tmp ./scripts/npm.sh install + + # COMPILE SOURCES + echo "COMPILE SOURCES" + ./node_modules/.bin/gulp + ''; + + doCheck = true; + checkPhase = '' + # CHECK APPLICATION + echo "CHECK APPLICATION" + ATOM_SHELL_INTERNAL_RUN_AS_NODE=1 ${electron}/bin/electron ./node_modules/.bin/_mocha + ''; + + installPhase = '' + # PRUNE COMPILE-TIME DEPENDENCIES + echo "PRUNE COMPILE-TIME DEPENDENCIES" + npm prune --production + + # COPY FILES NEEDED FOR RUNNING APPLICATION TO OUT DIRECTORY + echo "COPY FILES NEEDED FOR RUNNING APPLICATION TO OUT DIRECTORY" + mkdir -p "$out" + cp -R ./.vscode "$out"/.vscode + cp -R ./extensions "$out"/extensions + cp -R ./out "$out"/out + cp -R ./node_modules "$out"/node_modules + cp ./package.json "$out"/package.json + cp ./product.json "$out"/product.json + cp ./tslint.json "$out"/tslint.json + # COPY LEGAL STUFF + cp ./LICENSE.txt "$out"/LICENSE.txt + cp ./OSSREADME.json "$out"/OSSREADME.json + cp ./ThirdPartyNotices.txt "$out"/ThirdPartyNotices.txt + + # CREATE RUNNER SCRIPT + echo "CREATE RUNNER SCRIPT" + mkdir -p "$out"/bin + makeWrapper "${electron}/bin/electron" "$out/bin/vscode" \ + --set VSCODE_DEV 1 \ + --add-flags "$out" + ''; + + meta = with stdenv.lib; { + description = "Visual Studio Code is an open source source code editor developed by Microsoft for Windows, Linux and OS X."; + longDescription = '' + Visual Studio Code is an open source source code editor developed by Microsoft for Windows, Linux and OS X. + It includes support for debugging, embedded Git control, syntax highlighting, intelligent code completion, snippets, and code refactoring. + It is also customizable, so users can change the editor's theme, keyboard shortcuts, and preferences. + ''; + homepage = http://code.visualstudio.com/; + license = licenses.mit; + platforms = [ "x86_64-linux" ]; + }; + } diff --git a/pkgs/applications/misc/sent/default.nix b/pkgs/applications/misc/sent/default.nix index 9e07c0dd4c8..c6430af5560 100644 --- a/pkgs/applications/misc/sent/default.nix +++ b/pkgs/applications/misc/sent/default.nix @@ -1,4 +1,5 @@ -{ stdenv, fetchurl, libpng, libX11, libXft }: +{ stdenv, fetchurl, libpng, libX11, libXft +, patches ? [] }: stdenv.mkDerivation rec { name = "sent-0.2"; @@ -10,6 +11,8 @@ stdenv.mkDerivation rec { buildInputs = [ libpng libX11 libXft ]; + inherit patches; + installFlags = [ "PREFIX=$(out)" ]; meta = with stdenv.lib; { diff --git a/pkgs/applications/networking/instant-messengers/psi/default.nix b/pkgs/applications/networking/instant-messengers/psi/default.nix index 784bda5e0cd..7fabfa5f772 100644 --- a/pkgs/applications/networking/instant-messengers/psi/default.nix +++ b/pkgs/applications/networking/instant-messengers/psi/default.nix @@ -1,5 +1,5 @@ -{ stdenv, fetchurl, aspell, qt4, zlib, sox, libX11, xproto, libSM -, libICE, qca2, pkgconfig, liboil, speex, callPackage, which, glib +{ stdenv, fetchurl, enchant, qt4, zlib, sox, libX11, xproto, libSM +, libICE, qca2, pkgconfig, callPackage, which, glib , libXScrnSaver, scrnsaverproto }: @@ -12,7 +12,7 @@ stdenv.mkDerivation rec { }; buildInputs = - [ aspell qt4 zlib sox libX11 xproto libSM libICE + [ enchant qt4 zlib sox libX11 xproto libSM libICE qca2 pkgconfig which glib scrnsaverproto libXScrnSaver ]; @@ -20,20 +20,8 @@ stdenv.mkDerivation rec { NIX_LDFLAGS="-lqca"; - psiMedia = callPackage ./psimedia.nix { }; - enableParallelBuilding = true; - configureFlags = [ - "--with-aspell-inc=${aspell}/include" - ]; - - postInstall = '' - PSI_PLUGINS="$out/lib/psi/plugins" - mkdir -p "$PSI_PLUGINS" - ln -s "${psiMedia}"/share/psi/plugins/*.so "$PSI_PLUGINS" - ''; - meta = { description = "Psi, an XMPP (Jabber) client"; maintainers = [ stdenv.lib.maintainers.raskin ]; diff --git a/pkgs/applications/networking/instant-messengers/psi/glib-2.32.patch b/pkgs/applications/networking/instant-messengers/psi/glib-2.32.patch deleted file mode 100644 index 49988c253bd..00000000000 --- a/pkgs/applications/networking/instant-messengers/psi/glib-2.32.patch +++ /dev/null @@ -1,54 +0,0 @@ -http://sources2.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/net-im/psimedia/files/psimedia-1.0.3-glib2.32.patch?view=log - -Index: psimedia-1.0.3/gstprovider/gstcustomelements/gstcustomelements.h -=================================================================== ---- psimedia-1.0.3.orig/gstprovider/gstcustomelements/gstcustomelements.h -+++ psimedia-1.0.3/gstprovider/gstcustomelements/gstcustomelements.h -@@ -21,7 +21,7 @@ - #ifndef GSTCUSTOMELEMENTS_H - #define GSTCUSTOMELEMENTS_H - --#include -+#include - #include - #include - #include -Index: psimedia-1.0.3/gstprovider/gstelements/static/gstelements.h -=================================================================== ---- psimedia-1.0.3.orig/gstprovider/gstelements/static/gstelements.h -+++ psimedia-1.0.3/gstprovider/gstelements/static/gstelements.h -@@ -21,7 +21,7 @@ - #ifndef PSI_GSTELEMENTS_H - #define PSI_GSTELEMENTS_H - --#include -+#include - - G_BEGIN_DECLS - -Index: psimedia-1.0.3/gstprovider/gstthread.h -=================================================================== ---- psimedia-1.0.3.orig/gstprovider/gstthread.h -+++ psimedia-1.0.3/gstprovider/gstthread.h -@@ -22,7 +22,7 @@ - #define PSI_GSTTHREAD_H - - #include --#include -+#include - - namespace PsiMedia { - -Index: psimedia-1.0.3/gstprovider/rwcontrol.h -=================================================================== ---- psimedia-1.0.3.orig/gstprovider/rwcontrol.h -+++ psimedia-1.0.3/gstprovider/rwcontrol.h -@@ -28,7 +28,7 @@ - #include - #include - #include --#include -+#include - #include "psimediaprovider.h" - #include "rtpworker.h" - diff --git a/pkgs/applications/networking/instant-messengers/psi/linux-headers.patch b/pkgs/applications/networking/instant-messengers/psi/linux-headers.patch deleted file mode 100644 index a5386b3e111..00000000000 --- a/pkgs/applications/networking/instant-messengers/psi/linux-headers.patch +++ /dev/null @@ -1,86 +0,0 @@ -http://pkgs.fedoraproject.org/gitweb/?p=psimedia.git;a=blob_plain;f=psimedia-remove-v4l.patch;hb=HEAD - ---- a/gstprovider/deviceenum/deviceenum_unix.cpp -+++ b/gstprovider/deviceenum/deviceenum_unix.cpp -@@ -35,7 +35,7 @@ - # include - # include - # include --# include -+# include - #endif - - namespace DeviceEnum { -@@ -478,72 +478,7 @@ - // v4l detection scheme adapted from PWLib (used by Ekiga/Gnomemeeting) - static QList get_v4l_items() - { --#ifdef Q_OS_LINUX -- QList out; -- -- QList list = get_v4l_names("/sys/class/video4linux", true); -- if(list.isEmpty()) -- list = get_v4l_names("/proc/video/dev", false); -- -- // if we can't find anything, then do a raw scan for possibilities -- if(list.isEmpty()) -- { -- QStringList possible = scan_for_videodevs("/dev"); -- foreach(QString str, possible) -- { -- V4LName v; -- v.dev = str; -- list += v; -- } -- } -- -- for(int n = 0; n < list.count(); ++n) -- { -- V4LName &v = list[n]; -- -- // if we already have a friendly name then we'll skip the confirm -- // in order to save resources. the only real drawback here that -- // I can think of is if the device isn't a capture type. but -- // what does it mean to have a V4L device that isn't capture?? -- if(v.friendlyName.isEmpty()) -- { -- int fd = open(QFile::encodeName(v.dev).data(), O_RDONLY | O_NONBLOCK); -- if(fd == -1) -- continue; -- -- // get video capabilities and close -- struct video_capability caps; -- memset(&caps, 0, sizeof(caps)); -- int ret = ioctl(fd, VIDIOCGCAP, &caps); -- close(fd); -- if(ret == -1) -- continue; -- -- if(!(caps.type & VID_TYPE_CAPTURE)) -- continue; -- -- v.friendlyName = caps.name; -- } -- -- Item i; -- i.type = Item::Video; -- i.dir = Item::Input; -- i.name = v.friendlyName; -- i.driver = "v4l"; -- i.id = v.dev; -- -- // HACK -- if(v.friendlyName == "Labtec Webcam Notebook") -- i.explicitCaptureSize = QSize(640, 480); -- -- out += i; -- } -- -- return out; --#else -- // return empty list if non-linux - return QList(); --#endif - } - - static QList get_v4l2_items() diff --git a/pkgs/applications/networking/instant-messengers/psi/psimedia.nix b/pkgs/applications/networking/instant-messengers/psi/psimedia.nix deleted file mode 100644 index aa54053c67f..00000000000 --- a/pkgs/applications/networking/instant-messengers/psi/psimedia.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ stdenv, fetchurl, qt4, gstreamer, gst_plugins_base, liboil, speex, which -, glib, pkgconfig }: - -stdenv.mkDerivation rec { - name = "psimedia-1.0.3"; - - src = fetchurl { - url = "http://delta.affinix.com/download/psimedia/${name}.tar.bz2"; - sha256 = "0fxjdz8afh75gfx2msysb1gss6zx578l3224jvc9jhm99w1ii781"; - }; - - patches = [ ./glib-2.32.patch ./linux-headers.patch ]; - - buildInputs = [ qt4 gstreamer gst_plugins_base liboil speex which glib pkgconfig ]; - - configurePhase = ''./configure''; - - postBuild = '' - TARGET="$out/share/psi/plugins" - mkdir -p "$TARGET" - cp gstprovider/*.so "$TARGET"/ - ''; - - meta = { - description = "Psi Media, a plugin to provide Voice/Video over XMPP"; - }; -} diff --git a/pkgs/applications/networking/owncloud-client/default.nix b/pkgs/applications/networking/owncloud-client/default.nix index 5841fe7c512..8963f8dc01d 100644 --- a/pkgs/applications/networking/owncloud-client/default.nix +++ b/pkgs/applications/networking/owncloud-client/default.nix @@ -1,17 +1,17 @@ -{ stdenv, fetchurl, cmake, qt4, pkgconfig, neon, qtkeychain, sqlite }: +{ stdenv, fetchurl, cmake, qt4, pkgconfig, qtkeychain, sqlite }: stdenv.mkDerivation rec { name = "owncloud-client" + "-" + version; - version = "1.7.1"; + version = "2.1.1"; src = fetchurl { - url = "https://download.owncloud.com/desktop/stable/mirall-${version}.tar.bz2"; - sha256 = "0n9gv97jqval7xjyix2lkywvmvvfv052s0bd1i8kybdl9rwca6yf"; + url = "https://download.owncloud.com/desktop/stable/owncloudclient-${version}.tar.xz"; + sha256 = "4e7cfeb72ec565392e7968f352c4a7f0ef2988cc577ebdfd668a3887d320b1cb"; }; buildInputs = - [ cmake qt4 pkgconfig neon qtkeychain sqlite]; + [ cmake qt4 pkgconfig qtkeychain sqlite]; #configurePhase = '' # mkdir build diff --git a/pkgs/applications/networking/remote/citrix-receiver/default.nix b/pkgs/applications/networking/remote/citrix-receiver/default.nix index 056d28eb3cd..6d14761356a 100644 --- a/pkgs/applications/networking/remote/citrix-receiver/default.nix +++ b/pkgs/applications/networking/remote/citrix-receiver/default.nix @@ -121,9 +121,14 @@ stdenv.mkDerivation rec { find $ICAInstDir -type f -exec file {} \; | grep 'ELF.*executable' | cut -f 1 -d : | - xargs -t -n 1 patchelf \ - --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \ - --set-rpath "$ICAInstDir:$libPath" + while read f + do + echo "Patching ELF intrepreter and rpath for $f" + chmod u+w "$f" + patchelf \ + --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \ + --set-rpath "$ICAInstDir:$libPath" "$f" + done echo "Wrapping wfica..." mkdir "$out/bin" diff --git a/pkgs/applications/science/logic/picosat/default.nix b/pkgs/applications/science/logic/picosat/default.nix index fb5acc64c4d..070664980dc 100644 --- a/pkgs/applications/science/logic/picosat/default.nix +++ b/pkgs/applications/science/logic/picosat/default.nix @@ -2,20 +2,18 @@ stdenv.mkDerivation rec { name = "picosat-${version}"; - version = "960"; + version = "965"; src = fetchurl { url = "http://fmv.jku.at/picosat/${name}.tar.gz"; - sha256 = "05z8cfjk84mkna5ryqlq2jiksjifg3jhlgbijaq36sbn0i51iczd"; + sha256 = "0m578rpa5rdn08d10kr4lbsdwp4402hpavrz6n7n53xs517rn5hm"; }; - dontAddPrefix = true; - configureFlags = "--shared"; + configurePhase = "./configure.sh --shared --trace"; installPhase = '' mkdir -p $out/bin $out/lib $out/include/picosat - cp picomus "$out"/bin - cp picosat "$out"/bin + cp picomus picomcs picosat picogcnf "$out"/bin cp libpicosat.a "$out"/lib cp libpicosat.so "$out"/lib diff --git a/pkgs/build-support/build-fhs-userenv/default.nix b/pkgs/build-support/build-fhs-userenv/default.nix index a7e1bd11977..a38f0a4f623 100644 --- a/pkgs/build-support/build-fhs-userenv/default.nix +++ b/pkgs/build-support/build-fhs-userenv/default.nix @@ -1,5 +1,5 @@ { runCommand, lib, writeText, writeScriptBin, stdenv, ruby } : -{ env, runScript ? "bash", extraBindMounts ? [], extraInstallCommands ? "", importMeta ? {} } : +{ env, runScript ? "bash", extraBindMounts ? [], extraInstallCommands ? "", meta ? {}, passthru ? {} } : let name = env.pname; @@ -27,9 +27,9 @@ let ''; in runCommand name { - meta = importMeta; - passthru.env = - runCommand "${name}-shell-env" { + inherit meta; + passthru = passthru // { + env = runCommand "${name}-shell-env" { shellHook = '' export CHROOTENV_EXTRA_BINDS="${lib.concatStringsSep ":" extraBindMounts}:$CHROOTENV_EXTRA_BINDS" exec ${chroot-user}/bin/chroot-user ${env} bash -l ${init "bash"} "$(pwd)" @@ -40,6 +40,7 @@ in runCommand name { echo >&2 "" exit 1 ''; + }; } '' mkdir -p $out/bin cat <$out/bin/${name} diff --git a/pkgs/build-support/emacs/wrapper.nix b/pkgs/build-support/emacs/wrapper.nix index efee43d852e..7be4d21bfa8 100644 --- a/pkgs/build-support/emacs/wrapper.nix +++ b/pkgs/build-support/emacs/wrapper.nix @@ -51,8 +51,11 @@ stdenv.mkDerivation { inherit emacs explicitRequires; phases = [ "installPhase" ]; installPhase = '' - mkdir -p $out/bin - mkdir -p $out/share/emacs/site-lisp + readonly SHARE="share/emacs-with-packages" + + mkdir -p "$out/bin" + mkdir -p "$out/$SHARE/bin" + mkdir -p "$out/$SHARE/site-lisp" local requires for pkg in $explicitRequires; do @@ -60,29 +63,32 @@ stdenv.mkDerivation { done # requires now holds all requested packages and their transitive dependencies - siteStart="$out/share/emacs/site-lisp/site-start.el" + siteStart="$out/$SHARE/site-lisp/site-start.el" # Begin the new site-start.el by loading the original, which sets some # NixOS-specific paths. Paths are searched in the reverse of the order # they are specified in, so user and system profile paths are searched last. cat >"$siteStart" < $out/share/applications/steam.desktop + ''; - extraInstallCommands = '' - mkdir -p $out/share/applications - ln -s ${steam}/share/icons $out/share - ln -s ${steam}/share/pixmaps $out/share - sed "s,/usr/bin/steam,$out/bin/steam,g" ${steam}/share/applications/steam.desktop > $out/share/applications/steam.desktop - ''; + profile = '' + export STEAM_RUNTIME=/steamrt + ''; - profile = '' - export STEAM_RUNTIME=/steamrt - ''; + runScript = "steam"; - runScript = "steam"; -} + passthru.run = buildFHSUserEnv (self // { + name = "steam-run"; + + runScript = + let ldPath = map (x: "/steamrt/${steam-runtime.arch}/" + x) steam-runtime.libs + ++ lib.optionals (steam-runtime-i686 != null) (map (x: "/steamrt/${steam-runtime-i686.arch}/" + x) steam-runtime-i686.libs); + in writeScript "steam-run" '' + #!${stdenv.shell} + run="$1" + if [ "$run" = "" ]; then + echo "Usage: steam-run command-to-run args..." >&2 + exit 1 + fi + shift + export LD_LIBRARY_PATH=${lib.concatStringsSep ":" ldPath}:$LD_LIBRARY_PATH + exec "$run" "$@" + ''; + + passthru = {}; + }); + }; + +in buildFHSUserEnv self diff --git a/pkgs/games/steam/default.nix b/pkgs/games/steam/default.nix index 64f8cfe2c28..ae3fe561272 100644 --- a/pkgs/games/steam/default.nix +++ b/pkgs/games/steam/default.nix @@ -7,8 +7,13 @@ let steam-runtime = callPackage ./runtime.nix { }; steam-runtime-wrapped = callPackage ./runtime-wrapped.nix { }; steam = callPackage ./steam.nix { }; - steam-chrootenv = callPackage ./chrootenv.nix { }; steam-fonts = callPackage ./fonts.nix { }; + steam-chrootenv = callPackage ./chrootenv.nix { + steam-runtime-i686 = + if pkgs.system == "x86_64-linux" + then pkgs.pkgsi686Linux.steamPackages.steam-runtime + else null; + }; }; in self diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix index e58230712a9..e3edaa43b8c 100644 --- a/pkgs/os-specific/linux/kernel/linux-testing.nix +++ b/pkgs/os-specific/linux/kernel/linux-testing.nix @@ -1,13 +1,13 @@ { stdenv, fetchurl, perl, buildLinux, ... } @ args: import ./generic.nix (args // rec { - version = "4.6-rc1"; - modDirVersion = "4.6.0-rc1"; + version = "4.6-rc2"; + modDirVersion = "4.6.0-rc2"; extraMeta.branch = "4.6"; src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/testing/linux-${version}.tar.xz"; - sha256 = "1y73sjd7i48d1c8x52z59imx8g8d00wy67r5666cvwqrq8d407h0"; + sha256 = "0zihk9s1rkgmn0ghiz9xkg0w88w524af5mmad45rbxhm5751nxcr"; }; features.iwlwifi = true; diff --git a/pkgs/servers/http/mini-httpd/default.nix b/pkgs/servers/http/mini-httpd/default.nix index 4cba9bc0668..7fb6a16dd1c 100644 --- a/pkgs/servers/http/mini-httpd/default.nix +++ b/pkgs/servers/http/mini-httpd/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, boost }: stdenv.mkDerivation rec { - name = "mini-httpd-1.5"; + name = "mini-httpd-1.6"; src = fetchurl { - url = "mirror://savannah/mini-httpd/${name}.tar.gz"; - sha256 = "1x4b6x40ymbaamqqq9p97lc0mnah4q7bza04fjs35c8agpm19zir"; + url = "http://download-mirror.savannah.gnu.org/releases/mini-httpd/${name}.tar.gz"; + sha256 = "04azr1qa70l0fnpbx7nmyxz1lkykjjs2b6p4lhkpg86hs3lrmxly"; }; buildInputs = [ boost ]; diff --git a/pkgs/tools/admin/salt/default.nix b/pkgs/tools/admin/salt/default.nix new file mode 100644 index 00000000000..254b7b9374e --- /dev/null +++ b/pkgs/tools/admin/salt/default.nix @@ -0,0 +1,51 @@ +{ + stdenv, fetchurl, pythonPackages, openssl, + + # Many Salt modules require various Python modules to be installed, + # passing them in this array enables Salt to find them. + extraInputs ? [] +}: + +pythonPackages.buildPythonApplication rec { + name = "salt-${version}"; + version = "2015.8.8"; + + disabled = pythonPackages.isPy3k; + + src = fetchurl { + url = "https://pypi.python.org/packages/source/s/salt/${name}.tar.gz"; + sha256 = "1xcfcs50pyammb60myph4f8bi2r6iwkxwsnnhrjwvkv2ymxwxv5j"; + }; + + propagatedBuildInputs = with pythonPackages; [ + futures + jinja2 + markupsafe + msgpack + pycrypto + pyyaml + pyzmq + requests + salttesting + tornado + ] ++ extraInputs; + + patches = [ ./fix-libcrypto-loading.patch ]; + + postPatch = '' + substituteInPlace "salt/utils/rsax931.py" \ + --subst-var-by "libcrypto" "${openssl}/lib/libcrypto.so" + ''; + + # The tests fail due to socket path length limits at the very least; + # possibly there are more issues but I didn't leave the test suite running + # as is it rather long. + doCheck = false; + + meta = with stdenv.lib; { + homepage = https://saltstack.com/; + description = "Portable, distributed, remote execution and configuration management system"; + maintainers = with maintainers; [ aneeshusa ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/tools/admin/salt/fix-libcrypto-loading.patch b/pkgs/tools/admin/salt/fix-libcrypto-loading.patch new file mode 100644 index 00000000000..c5cc1bde5d0 --- /dev/null +++ b/pkgs/tools/admin/salt/fix-libcrypto-loading.patch @@ -0,0 +1,11 @@ +diff --git a/salt/utils/rsax931.py b/salt/utils/rsax931.py +index 9eb1f4a..d764f7a 100644 +--- a/salt/utils/rsax931.py ++++ b/salt/utils/rsax931.py +@@ -36,7 +36,7 @@ def _load_libcrypto(): + 'libcrypto.so*')) + lib = lib[0] if len(lib) > 0 else None + if lib: +- return cdll.LoadLibrary(lib) ++ return cdll.LoadLibrary('@libcrypto@') + raise OSError('Cannot locate OpenSSL libcrypto') diff --git a/pkgs/tools/admin/salt/testing.nix b/pkgs/tools/admin/salt/testing.nix new file mode 100644 index 00000000000..8c65defcab5 --- /dev/null +++ b/pkgs/tools/admin/salt/testing.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchurl, pythonPackages }: + +pythonPackages.buildPythonApplication rec { + name = "SaltTesting-${version}"; + version = "2015.7.10"; + + disabled = pythonPackages.isPy3k; + + propagatedBuildInputs = with pythonPackages; [ + six + ]; + + src = fetchurl { + url = "https://pypi.python.org/packages/source/S/SaltTesting/${name}.tar.gz"; + sha256 = "0p0y8kb77pis18rcig1kf9dnns4bnfa3mr91q40lq4mw63l1b34h"; + }; + + meta = with stdenv.lib; { + homepage = https://github.com/saltstack/salt-testing; + description = "Common testing tools used in the Salt Stack projects"; + maintainers = with maintainers; [ aneeshusa ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/tools/misc/svtplay-dl/default.nix b/pkgs/tools/misc/svtplay-dl/default.nix index 270e1c0cb62..f8c087aa757 100644 --- a/pkgs/tools/misc/svtplay-dl/default.nix +++ b/pkgs/tools/misc/svtplay-dl/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { name = "svtplay-dl-${version}"; - version = "0.30.2016.02.08"; + version = "1.0"; src = fetchFromGitHub { owner = "spaam"; repo = "svtplay-dl"; rev = version; - sha256 = "0nkgc43lf06h0w8k4zm5pdzp6r6jjc6j94ciljcm8333n0ykfzpr"; + sha256 = "0chvljmhj7waq3dfyciiyk3i18hmrczc70qfyhn2ycq0k0nbn0jj"; }; pythonPaths = [ pycrypto requests2 ]; diff --git a/pkgs/tools/networking/mosh/default.nix b/pkgs/tools/networking/mosh/default.nix index ec2f8d78dc6..80feeafdbca 100644 --- a/pkgs/tools/networking/mosh/default.nix +++ b/pkgs/tools/networking/mosh/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchurl, zlib, boost, protobuf, ncurses, pkgconfig, IOTty -, makeWrapper, perl, openssl }: +, makeWrapper, perl, openssl, autoreconfHook, fetchpatch }: stdenv.mkDerivation rec { name = "mosh-1.2.5"; @@ -9,7 +9,16 @@ stdenv.mkDerivation rec { sha256 = "1qsb0y882yfgwnpy6f98pi5xqm6kykdsrxzvaal37hs7szjhky0s"; }; - buildInputs = [ boost protobuf ncurses zlib pkgconfig IOTty makeWrapper perl openssl ]; + buildInputs = [ autoreconfHook boost protobuf ncurses zlib pkgconfig IOTty makeWrapper perl openssl ]; + + patches = [ + # remove automake detection macro patch on next release as it is already on mosh master + (fetchpatch { + name = "fix_automake_detection_macro.patch"; + url = "https://github.com/mobile-shell/mosh/commit/a47917b97606a03f6bbf0cafd1fcd495b0229790.patch"; + sha256 = "0ib200ffvbnns125xd58947fyxdx31m06rmnzqmxpxcnjza7k404"; + }) + ]; postInstall = '' wrapProgram $out/bin/mosh --prefix PERL5LIB : $PERL5LIB diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5dcb2781de8..37d0abda7a2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -134,11 +134,12 @@ in }; buildFHSUserEnv = args: userFHSEnv { - env = buildFHSEnv (removeAttrs args [ "runScript" "extraBindMounts" "extraInstallCommands" "meta" ]); + env = buildFHSEnv (removeAttrs args [ "runScript" "extraBindMounts" "extraInstallCommands" "meta" "passthru" ]); runScript = args.runScript or "bash"; extraBindMounts = args.extraBindMounts or []; extraInstallCommands = args.extraInstallCommands or ""; - importMeta = args.meta or {}; + meta = args.meta or {}; + passthru = args.passthru or {}; }; buildMaven = callPackage ../build-support/build-maven.nix {}; @@ -1648,7 +1649,9 @@ in gmvault = callPackage ../tools/networking/gmvault { }; - gnaural = callPackage ../applications/audio/gnaural { }; + gnaural = callPackage ../applications/audio/gnaural { + stdenv = overrideCC stdenv gcc49; + }; gnokii = callPackage ../tools/misc/gnokii { }; @@ -14099,6 +14102,10 @@ in vorbis-tools = callPackage ../applications/audio/vorbis-tools { }; + vscode = callPackage ../applications/editors/vscode { + gconf = pkgs.gnome.GConf; + }; + vue = callPackage ../applications/misc/vue { }; vwm = callPackage ../applications/window-managers/vwm { }; @@ -14857,12 +14864,15 @@ in stockfish = callPackage ../games/stockfish { }; steamPackages = callPackage ../games/steam { }; + steam = steamPackages.steam-chrootenv.override { # DEPRECATED withJava = config.steam.java or false; withPrimus = config.steam.primus or false; }; + steam-run = steam.run; + stepmania = callPackage ../games/stepmania { }; stuntrally = callPackage ../games/stuntrally { }; diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix index 45b5fa31407..ce8e68b5b77 100644 --- a/pkgs/top-level/haskell-packages.nix +++ b/pkgs/top-level/haskell-packages.nix @@ -374,7 +374,13 @@ rec { lts-5_9 = packages.ghc7103.override { packageSetConfig = callPackage ../development/haskell-modules/configuration-lts-5.9.nix { }; }; - lts-5 = packages.lts-5_9; + lts-5_10 = packages.ghc7103.override { + packageSetConfig = callPackage ../development/haskell-modules/configuration-lts-5.10.nix { }; + }; + lts-5_11 = packages.ghc7103.override { + packageSetConfig = callPackage ../development/haskell-modules/configuration-lts-5.11.nix { }; + }; + lts-5 = packages.lts-5_11; lts = packages.lts-5; }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 24279c41088..e3b90347114 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -20299,6 +20299,10 @@ in modules // { }; }; + salt = callPackage ../tools/admin/salt {}; + + salttesting = callPackage ../tools/admin/salt/testing.nix {}; + sandboxlib = buildPythonPackage rec { name = "sandboxlib-${version}"; version = "0.31"; diff --git a/pkgs/top-level/rust-packages.nix b/pkgs/top-level/rust-packages.nix index 2b3b98dba63..a829445d7b5 100644 --- a/pkgs/top-level/rust-packages.nix +++ b/pkgs/top-level/rust-packages.nix @@ -7,15 +7,15 @@ { runCommand, fetchFromGitHub, git }: let - version = "2016-03-22"; - rev = "f28cdedb698cf76f513fb4514b5ed2892ec89b2f"; + version = "2016-04-02"; + rev = "b705d049d78f96bc27c58ccec7902e65d90826bd"; src = fetchFromGitHub { inherit rev; owner = "rust-lang"; repo = "crates.io-index"; - sha256 = "05j43pgdlf554y9r781xdc5la55anwiq6k7vml9icak699ywfxqq"; + sha256 = "1aspn79i1rw9migw7j0m12ghdq9cqhq8n2vzxy6hy1l728j3ykdp"; }; in