diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 10d3447af61..c5ab50ba5e3 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -3278,6 +3278,11 @@ github = "michelk"; name = "Michel Kuhlmann"; }; + michojel = { + email = "mic.liamg@gmail.com"; + github = "michojel"; + name = "Michal Minář"; + }; mickours = { email = "mickours@gmail.com<"; github = "mickours"; @@ -5747,4 +5752,9 @@ github = "zzamboni"; name = "Diego Zamboni"; }; + turbomack = { + email = "marek.faj@gmail.com"; + github = "turboMaCk"; + name = "Marek Fajkus"; + }; } diff --git a/maintainers/scripts/luarocks-packages.csv b/maintainers/scripts/luarocks-packages.csv index 57d08b3649a..2039af5165a 100644 --- a/maintainers/scripts/luarocks-packages.csv +++ b/maintainers/scripts/luarocks-packages.csv @@ -40,7 +40,7 @@ luadbi-mysql,,,,, luadbi-postgresql,,,,, luadbi-sqlite3,,,,, luaevent,,,,, -luaexpat,,,,,flosse +luaexpat,,,1.3.0-1,,arobyn flosse luaffi,,http://luarocks.org/dev,,, luafilesystem,,,1.7.0-2,,flosse vcunat luaossl,,,,lua5_1,vcunat diff --git a/maintainers/scripts/update-discord b/maintainers/scripts/update-discord new file mode 100755 index 00000000000..23ec6e401be --- /dev/null +++ b/maintainers/scripts/update-discord @@ -0,0 +1,36 @@ +#!/usr/bin/env bash +# script to generate `pkgs/networking/instant-messengers/discord/default.nix` + +set -e +exec >${1:?usage: $0 } + +cat < $out/nix-support/system echo "file sd-image $img" >> $out/nix-support/hydra-build-products - # Create the image file sized to fit /boot and /, plus 20M of slack + # Gap in front of the first partition, in MiB + gap=8 + + # Create the image file sized to fit /boot/firmware and /, plus slack for the gap. rootSizeBlocks=$(du -B 512 --apparent-size ${rootfsImage} | awk '{ print $1 }') - bootSizeBlocks=$((${toString config.sdImage.bootSize} * 1024 * 1024 / 512)) - imageSize=$((rootSizeBlocks * 512 + bootSizeBlocks * 512 + 20 * 1024 * 1024)) + firmwareSizeBlocks=$((${toString config.sdImage.firmwareSize} * 1024 * 1024 / 512)) + imageSize=$((rootSizeBlocks * 512 + firmwareSizeBlocks * 512 + gap * 1024 * 1024)) truncate -s $imageSize $img # type=b is 'W95 FAT32', type=83 is 'Linux'. + # The "bootable" partition is where u-boot will look file for the bootloader + # information (dtbs, extlinux.conf file). sfdisk $img <& logprobs) - /** returns log (e^logprob1 + e^logprob2). */ - double sumLogProb(double logprob1, double logprob2) - { -- if (isinf(logprob1) && isinf(logprob2)) -+ if (isinf(logprob1) && isinf(logprob2)) - return logprob1; // both prob1 and prob2 are 0, return log 0. - if (logprob1>logprob2) - return logprob1+log(1+exp(logprob2-logprob1)); -@@ -70,8 +70,8 @@ void MaxEntModel::print(ostream& ostrm, MaxEntTrainer& trainer) - for (FtMap::iterator it = _index.begin(); it!=_index.end(); it++) { - unsigned long i = it->second; - for (unsigned long c = 0; c<_classes; c++) { -- ostrm << "lambda(" << trainer.className(c) << ", " -- << trainer.getStr(it->first) << ")=" -+ ostrm << "lambda(" << trainer.className(c) << ", " -+ << trainer.getStr(it->first) << ")=" - << _lambda[i+c] << endl; - } - } -@@ -86,7 +86,7 @@ int MaxEntModel::getProbs(MaxEntEvent& event, vector& probs) - double s = 0; - for (unsigned int f = 0; fsecond+c]; - } - probs[c] = s; -@@ -142,10 +142,10 @@ double MaxEntModel::getObsCounts(EventSet& events, vector& obsCounts) - double ftSum = 0; - for (unsigned long j=0; jsecond+c] += count; - else { // new feature, need to expand obsCounts and _lambda -- for (unsigned int k = 0; k<_classes; k++) -+ for (unsigned int k = 0; k<_classes; k++) - obsCounts.push_back(0); - obsCounts[_lambda.size()+c] += count; - addFeature(e[j]); diff --git a/pkgs/applications/graphics/imgcat/default.nix b/pkgs/applications/graphics/imgcat/default.nix index 862d3a9dff5..1fa3ec8ccc6 100644 --- a/pkgs/applications/graphics/imgcat/default.nix +++ b/pkgs/applications/graphics/imgcat/default.nix @@ -1,25 +1,24 @@ { stdenv, fetchFromGitHub, autoconf, automake, libtool, ncurses }: stdenv.mkDerivation rec { - name = "imgcat-${version}"; - version = "2.3.0"; + pname = "imgcat"; + version = "2.3.1"; - buildInputs = [ autoconf automake libtool ncurses ]; + nativeBuildInputs = [ autoconf automake libtool ]; + buildInputs = [ ncurses ]; preConfigure = '' ${autoconf}/bin/autoconf sed -i -e "s|-ltermcap|-L ${ncurses}/lib -lncurses|" Makefile ''; - preInstall = '' - makeFlagsArray=(PREFIX="$out"); - ''; + makeFlags = [ "PREFIX=$(out)" ]; src = fetchFromGitHub { owner = "eddieantonio"; - repo = "imgcat"; - rev = "3d854c72f785dce0eecd9485767a7f972d54890c"; - sha256 = "0m83c33rzxvs0w214njql2c7q3fg06wnyijch3l2s88i7frl121f"; + repo = pname; + rev = "v${version}"; + sha256 = "0frz40rjwi73nx2dlqvmnn56zwr29bmnngfb11hhwr7v58yfajdi"; }; NIX_CFLAGS_COMPILE = "-Wno-error"; diff --git a/pkgs/applications/misc/megasync/default.nix b/pkgs/applications/misc/megasync/default.nix new file mode 100644 index 00000000000..b3e73986417 --- /dev/null +++ b/pkgs/applications/misc/megasync/default.nix @@ -0,0 +1,125 @@ +{ stdenv +, autoconf +, automake +, c-ares +, cryptopp +, curl +, doxygen +, fetchFromGitHub +, ffmpeg +, hicolor-icon-theme +, libmediainfo +, libraw +, libsodium +, libtool +, libuv +, libzen +, lsb-release +, pkgconfig +, qt5 +, sqlite +, swig +, unzip +, wget +}: + +stdenv.mkDerivation rec { + name = "megasync-${version}"; + version = "4.1.1.0"; + + src = fetchFromGitHub { + owner = "meganz"; + repo = "MEGAsync"; + rev = "v${version}_Linux"; + sha256 = "0lc228q3s9xp78dxjn22g6anqlsy1hi7a6yfs4q3l6gyfc3qcxl2"; + fetchSubmodules = true; + }; + + nativeBuildInputs = [ + autoconf + automake + doxygen + lsb-release + pkgconfig + qt5.qmake + qt5.qttools + swig + ]; + buildInputs = [ + c-ares + cryptopp + curl + ffmpeg + hicolor-icon-theme + libmediainfo + libraw + libsodium + libtool + libuv + libzen + qt5.qtbase + qt5.qtsvg + sqlite + unzip + wget + ]; + + patches = [ + # Distro and version targets attempt to use lsb_release which is broken + # (see issue: https://github.com/NixOS/nixpkgs/issues/22729) + ./noinstall-distro-version.patch + # megasync target is not part of the install rule thanks to a commented block + ./install-megasync.patch + ]; + + postPatch = '' + for file in $(find src/ -type f \( -iname configure -o -iname \*.sh \) ); do + substituteInPlace "$file" --replace "/bin/bash" "${stdenv.shell}" + done + ''; + + dontUseQmakeConfigure = true; + enableParallelBuilding = true; + + preConfigure = '' + cd src/MEGASync/mega + ./autogen.sh + ''; + + configureFlags = [ + "--disable-examples" + "--disable-java" + "--disable-php" + "--enable-chat" + "--with-cares" + "--with-cryptopp" + "--with-curl" + "--with-ffmpeg" + "--without-freeimage" # unreferenced even when found + "--without-readline" + "--without-termcap" + "--with-sodium" + "--with-sqlite" + "--with-zlib" + ]; + + postConfigure = '' + cd ../.. + ''; + + preBuild = '' + qmake CONFIG+="release" MEGA.pro + pushd MEGASync + lrelease MEGASync.pro + DESKTOP_DESTDIR="$out" qmake PREFIX="$out" -o Makefile MEGASync.pro CONFIG+=release + popd + ''; + + meta = with stdenv.lib; { + description = "Easy automated syncing between your computers and your MEGA Cloud Drive"; + homepage = https://mega.nz/; + license = licenses.unfree; + platforms = [ "i686-linux" "x86_64-linux" ]; + maintainers = [ maintainers.michojel ]; + }; +} diff --git a/pkgs/applications/misc/megasync/install-megasync.patch b/pkgs/applications/misc/megasync/install-megasync.patch new file mode 100644 index 00000000000..7d8748528e7 --- /dev/null +++ b/pkgs/applications/misc/megasync/install-megasync.patch @@ -0,0 +1,21 @@ +Index: source/src/MEGASync/MEGASync.pro +=================================================================== +--- source.orig/src/MEGASync/MEGASync.pro ++++ source/src/MEGASync/MEGASync.pro +@@ -28,11 +28,11 @@ unix:!macx { + TARGET = megasync + + # Uncomment the following if "make install" doesn't copy megasync in /usr/bin directory +-# isEmpty(PREFIX) { +-# PREFIX = /usr +-# } +-# target.path = $$PREFIX/bin +-# INSTALLS += target ++ isEmpty(PREFIX) { ++ PREFIX = /usr ++ } ++ target.path = $$PREFIX/bin ++ INSTALLS += target + } + else { + TARGET = MEGAsync diff --git a/pkgs/applications/misc/megasync/noinstall-distro-version.patch b/pkgs/applications/misc/megasync/noinstall-distro-version.patch new file mode 100644 index 00000000000..bbf100737bc --- /dev/null +++ b/pkgs/applications/misc/megasync/noinstall-distro-version.patch @@ -0,0 +1,13 @@ +Index: source/src/MEGASync/platform/platform.pri +=================================================================== +--- source.orig/src/MEGASync/platform/platform.pri ++++ source/src/MEGASync/platform/platform.pri +@@ -37,7 +37,7 @@ unix:!macx { + system(command -v lsb_release): version.commands = lsb_release -rs > $$version.target + version.files = $$version.target + +- INSTALLS += distro version ++ # INSTALLS += distro version + + QT += dbus + SOURCES += $$PWD/linux/LinuxPlatform.cpp \ diff --git a/pkgs/applications/misc/rofi/default.nix b/pkgs/applications/misc/rofi/default.nix index a8e82998c30..68fa5a6a2c9 100644 --- a/pkgs/applications/misc/rofi/default.nix +++ b/pkgs/applications/misc/rofi/default.nix @@ -4,12 +4,12 @@ }: stdenv.mkDerivation rec { - version = "1.5.2"; + version = "1.5.3"; name = "rofi-unwrapped-${version}"; src = fetchurl { url = "https://github.com/DaveDavenport/rofi/releases/download/${version}/rofi-${version}.tar.gz"; - sha256 = "1rczxz6l32vnclarzga1sm1d5iq9rfscb9j7f8ih185n59hf0517"; + sha256 = "1mskknfnpgmaghplwcyc44qc8swb1f9qiyi67fz9i77jijjpj1lx"; }; preConfigure = '' diff --git a/pkgs/applications/misc/xastir/default.nix b/pkgs/applications/misc/xastir/default.nix index 969661ea7b4..987b676034f 100644 --- a/pkgs/applications/misc/xastir/default.nix +++ b/pkgs/applications/misc/xastir/default.nix @@ -1,23 +1,23 @@ { stdenv, fetchFromGitHub, autoreconfHook -, curl, db, gdal, libgeotiff +, curl, db, libgeotiff , libXpm, libXt, motif, pcre , perl, proj, rastermagick, shapelib }: stdenv.mkDerivation rec { pname = "xastir"; - version = "2.1.0"; + version = "2.1.2"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "Release-${version}"; - sha256 = "16zsgy3589snawr8f1fa22ymvpnjy6njvxmsck7q8p2xmmz2ry7r"; + sha256 = "1xfzd2m4l0zbb96ak2pniffxdrs9lax0amkxfgdsnyg8x5j0xcxm"; }; buildInputs = [ autoreconfHook - curl db gdal libgeotiff + curl db libgeotiff libXpm libXt motif pcre perl proj rastermagick shapelib ]; diff --git a/pkgs/applications/networking/cluster/ksonnet/default.nix b/pkgs/applications/networking/cluster/ksonnet/default.nix deleted file mode 100644 index b8bce931523..00000000000 --- a/pkgs/applications/networking/cluster/ksonnet/default.nix +++ /dev/null @@ -1,23 +0,0 @@ -{ lib, buildGoPackage, fetchFromGitHub, ... }: - -buildGoPackage rec { - version = "0.11.0"; - name = "ksonnet-${version}"; - - src = fetchFromGitHub { - owner = "ksonnet"; - repo = "ksonnet"; - rev = "v${version}"; - sha256 = "0z7gkgcsiclm72bznmzv5jcgx5rblndcsiqc0r2mwhxhmv19bs04"; - }; - - goPackagePath = "github.com/ksonnet/ksonnet"; - - meta = { - description = "A CLI-supported framework that streamlines writing and deployment of Kubernetes configurations to multiple clusters"; - homepage = https://github.com/ksonnet/ksonnet; - license = lib.licenses.asl20; - maintainers = with lib.maintainers; [ flokli ]; - platforms = lib.platforms.unix; - }; -} diff --git a/pkgs/applications/networking/instant-messengers/discord/base.nix b/pkgs/applications/networking/instant-messengers/discord/base.nix new file mode 100644 index 00000000000..63149d3d54b --- /dev/null +++ b/pkgs/applications/networking/instant-messengers/discord/base.nix @@ -0,0 +1,61 @@ +{ pname, version, src, binaryName, desktopName +, stdenv, fetchurl, makeDesktopItem, wrapGAppsHook +, alsaLib, atk, at-spi2-atk, at-spi2-core, cairo, cups, dbus, expat, fontconfig, freetype +, gdk_pixbuf, glib, gtk3, libnotify, libX11, libXcomposite, libXcursor, libXdamage, libuuid +, libXext, libXfixes, libXi, libXrandr, libXrender, libXtst, nspr, nss, libxcb +, pango, systemd, libXScrnSaver, libcxx, libpulseaudio }: + +let + inherit binaryName; +in stdenv.mkDerivation rec { + inherit pname version src; + + nativeBuildInputs = [ wrapGAppsHook ]; + + dontWrapGApps = true; + + libPath = stdenv.lib.makeLibraryPath [ + libcxx systemd libpulseaudio + stdenv.cc.cc alsaLib atk at-spi2-atk at-spi2-core cairo cups dbus expat fontconfig freetype + gdk_pixbuf glib gtk3 libnotify libX11 libXcomposite libuuid + libXcursor libXdamage libXext libXfixes libXi libXrandr libXrender + libXtst nspr nss libxcb pango systemd libXScrnSaver + ]; + + installPhase = '' + mkdir -p $out/{bin,opt/${binaryName},share/pixmaps} + mv * $out/opt/${binaryName} + + chmod +x $out/opt/${binaryName}/${binaryName} + patchelf --set-interpreter ${stdenv.cc.bintools.dynamicLinker} \ + $out/opt/${binaryName}/${binaryName} + + wrapProgram $out/opt/${binaryName}/${binaryName} \ + "''${gappsWrapperArgs[@]}" \ + --prefix XDG_DATA_DIRS : "${gtk3}/share/gsettings-schemas/${gtk3.name}/" \ + --prefix LD_LIBRARY_PATH : ${libPath} + + ln -s $out/opt/${binaryName}/${binaryName} $out/bin/ + ln -s $out/opt/${binaryName}/discord.png $out/share/pixmaps/${binaryName}.png + + ln -s "${desktopItem}/share/applications" $out/share/ + ''; + + desktopItem = makeDesktopItem { + name = pname; + exec = binaryName; + icon = pname; + inherit desktopName; + genericName = meta.description; + categories = "Network;InstantMessaging;"; + }; + + meta = with stdenv.lib; { + description = "All-in-one cross-platform voice and text chat for gamers"; + homepage = "https://discordapp.com/"; + downloadPage = "https://discordapp.com/download"; + license = licenses.unfree; + maintainers = with maintainers; [ ldesgoui MP2E tadeokondrak ]; + platforms = [ "x86_64-linux" ]; + }; +} diff --git a/pkgs/applications/networking/instant-messengers/discord/default.nix b/pkgs/applications/networking/instant-messengers/discord/default.nix index 1eba3442342..047a833e163 100644 --- a/pkgs/applications/networking/instant-messengers/discord/default.nix +++ b/pkgs/applications/networking/instant-messengers/discord/default.nix @@ -1,65 +1,36 @@ -{ stdenv, fetchurl, makeDesktopItem, wrapGAppsHook -, alsaLib, atk, at-spi2-atk, cairo, cups, dbus, expat, fontconfig, freetype, gdk_pixbuf -, glib, gtk3, libnotify, libX11, libXcomposite, libXcursor, libXdamage, libuuid -, libXext, libXfixes, libXi, libXrandr, libXrender, libXtst, nspr, nss, libxcb -, pango, systemd, libXScrnSaver, libcxx, libpulseaudio }: - -stdenv.mkDerivation rec { +{ branch ? "stable", pkgs }: +let + inherit (pkgs) callPackage fetchurl; +in { + stable = callPackage ./base.nix { pname = "discord"; + binaryName = "Discord"; + desktopName = "Discord"; version = "0.0.9"; - src = fetchurl { - url = "https://cdn.discordapp.com/apps/linux/${version}/${pname}-${version}.tar.gz"; - sha256 = "1i0f8id10rh2fx381hx151qckvvh8hbznfsfav8w0dfbd1bransf"; + url = "https://dl.discordapp.net/apps/linux/0.0.9/discord-0.0.9.tar.gz"; + sha256 = "1i0f8id10rh2fx381hx151qckvvh8hbznfsfav8w0dfbd1bransf"; }; - - nativeBuildInputs = [ wrapGAppsHook ]; - - dontWrapGApps = true; - - libPath = stdenv.lib.makeLibraryPath [ - libcxx systemd libpulseaudio - stdenv.cc.cc alsaLib atk at-spi2-atk cairo cups dbus expat fontconfig freetype - gdk_pixbuf glib gtk3 libnotify libX11 libXcomposite libuuid - libXcursor libXdamage libXext libXfixes libXi libXrandr libXrender - libXtst nspr nss libxcb pango systemd libXScrnSaver - ]; - - installPhase = '' - mkdir -p $out/{bin,opt/discord,share/pixmaps} - mv * $out/opt/discord - - chmod +x $out/opt/discord/Discord - patchelf --set-interpreter ${stdenv.cc.bintools.dynamicLinker} \ - $out/opt/discord/Discord - - wrapProgram $out/opt/discord/Discord \ - "''${gappsWrapperArgs[@]}" \ - --prefix XDG_DATA_DIRS : "${gtk3}/share/gsettings-schemas/${gtk3.name}/" \ - --prefix LD_LIBRARY_PATH : ${libPath} - - ln -s $out/opt/discord/Discord $out/bin/ - ln -s $out/opt/discord/discord.png $out/share/pixmaps - - ln -s "${desktopItem}/share/applications" $out/share/ - ''; - - desktopItem = makeDesktopItem { - name = pname; - exec = "Discord"; - icon = pname; - desktopName = "Discord"; - genericName = meta.description; - categories = "Network;InstantMessaging;"; + }; + ptb = callPackage ./base.nix { + pname = "discord-ptb"; + binaryName = "DiscordPTB"; + desktopName = "Discord PTB"; + version = "0.0.15"; + src = fetchurl { + url = "https://dl-ptb.discordapp.net/apps/linux/0.0.15/discord-ptb-0.0.15.tar.gz"; + sha256 = "0znqb0a3yglgx7a9ypkb81jcm8kqgc6559zi7vfqn02zh15gqv6a"; }; - - meta = with stdenv.lib; { - description = "All-in-one cross-platform voice and text chat for gamers"; - homepage = https://discordapp.com/; - downloadPage = "https://github.com/crmarsh/discord-linux-bugs"; - license = licenses.unfree; - maintainers = [ maintainers.ldesgoui maintainers.MP2E ]; - platforms = [ "x86_64-linux" ]; + }; + canary = callPackage ./base.nix { + pname = "discord-canary"; + binaryName = "DiscordCanary"; + desktopName = "Discord Canary"; + version = "0.0.84"; + src = fetchurl { + url = "https://dl-canary.discordapp.net/apps/linux/0.0.84/discord-canary-0.0.84.tar.gz"; + sha256 = "1s4m7qvwyb0zglgdcixfnp5asachkybfafbmr74c7zrb0scl80s1"; }; -} + }; +}.${branch} diff --git a/pkgs/applications/networking/instant-messengers/rambox/bare.nix b/pkgs/applications/networking/instant-messengers/rambox/bare.nix index 259242606ad..a9ee4dd6aea 100644 --- a/pkgs/applications/networking/instant-messengers/rambox/bare.nix +++ b/pkgs/applications/networking/instant-messengers/rambox/bare.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { name = "rambox-bare-${version}"; - version = "0.6.7"; + version = "0.6.9"; src = fetchFromGitHub { owner = "ramboxapp"; repo = "community-edition"; rev = version; - sha256 = "1fsp4jxiypl6zkh5wgf9amyiyx9dqv6h8rsjn5xjp9bna27s0d3b"; + sha256 = "1h44srl2gzkhjaazpwz1pwy4dp5x776fc685kahlvjlsfls0fvy9"; }; nativeBuildInputs = [ nodejs-8_x ruby sencha ]; diff --git a/pkgs/applications/networking/instant-messengers/rambox/default.nix b/pkgs/applications/networking/instant-messengers/rambox/default.nix index 84ea02f7cb3..db488c2f670 100644 --- a/pkgs/applications/networking/instant-messengers/rambox/default.nix +++ b/pkgs/applications/networking/instant-messengers/rambox/default.nix @@ -1,6 +1,5 @@ { stdenv, newScope, makeWrapper -, wrapGAppsHook, gnome3, glib -, electron_3, xdg_utils, makeDesktopItem +, electron, xdg_utils, makeDesktopItem , auth0ClientID ? "0spuNKfIGeLAQ_Iki9t3fGxbfJl3k8SU" , auth0Domain ? "nixpkgs.auth0.com" }: @@ -28,9 +27,8 @@ with self; stdenv.mkDerivation { name = "rambox-${rambox-bare.version}"; - nativeBuildInputs = [ makeWrapper wrapGAppsHook ]; + nativeBuildInputs = [ makeWrapper ]; - buildInputs = [ glib gnome3.gsettings_desktop_schemas ]; unpackPhase = ":"; dontWrapGApps = true; # we only want $gappsWrapperArgs here @@ -43,9 +41,8 @@ stdenv.mkDerivation { ''; postFixup = '' - makeWrapper ${electron_3}/bin/electron $out/bin/rambox \ + makeWrapper ${electron}/bin/electron $out/bin/rambox \ --add-flags "${rambox-bare} --without-update" \ - "''${gappsWrapperArgs[@]}" \ --prefix PATH : ${xdg_utils}/bin ''; diff --git a/pkgs/applications/networking/mailreaders/neomutt/default.nix b/pkgs/applications/networking/mailreaders/neomutt/default.nix index 0da451ed51e..f4b0846b98f 100644 --- a/pkgs/applications/networking/mailreaders/neomutt/default.nix +++ b/pkgs/applications/networking/mailreaders/neomutt/default.nix @@ -3,19 +3,7 @@ , lmdb, libxslt, docbook_xsl, docbook_xml_dtd_42, mailcap, runtimeShell }: -let - muttWrapper = writeScript "mutt" '' - #!${runtimeShell} -eu - - echo 'The neomutt project has renamed the main binary from `mutt` to `neomutt`.' - echo "" - echo 'This wrapper is provided for compatibility purposes only. You should start calling `neomutt` instead.' - echo "" - read -p 'Press any key to launch NeoMutt...' -n1 -s - exec neomutt "$@" - ''; - -in stdenv.mkDerivation rec { +stdenv.mkDerivation rec { version = "20180716"; name = "neomutt-${version}"; @@ -80,7 +68,6 @@ in stdenv.mkDerivation rec { NIX_LDFLAGS = "-lidn"; postInstall = '' - cp ${muttWrapper} $out/bin/mutt wrapProgram "$out/bin/neomutt" --prefix PATH : "$out/libexec/neomutt" ''; diff --git a/pkgs/applications/science/logic/fast-downward/default.nix b/pkgs/applications/science/logic/fast-downward/default.nix new file mode 100644 index 00000000000..21ce6be3e6c --- /dev/null +++ b/pkgs/applications/science/logic/fast-downward/default.nix @@ -0,0 +1,55 @@ +{ stdenv, lib, fetchhg, cmake, which, python3, osi, cplex }: + +stdenv.mkDerivation rec { + name = "fast-downward-2019-05-13"; + + src = fetchhg { + url = "http://hg.fast-downward.org/"; + rev = "090f5df5d84a"; + sha256 = "14pcjz0jfzx5269axg66iq8js7lm2w3cnqrrhhwmz833prjp945g"; + }; + + nativeBuildInputs = [ cmake which ]; + buildInputs = [ python3 python3.pkgs.wrapPython osi ]; + + cmakeFlags = + lib.optional osi.withCplex [ "-DDOWNWARD_CPLEX_ROOT=${cplex}/cplex" ]; + + enableParallelBuilding = true; + + postPatch = '' + cd src + # Needed because the package tries to be too smart. + export CC="$(which $CC)" + export CXX="$(which $CXX)" + ''; + + installPhase = '' + install -Dm755 bin/downward $out/libexec/fast-downward/downward + cp -r ../translate $out/libexec/fast-downward/ + install -Dm755 ../../fast-downward.py $out/bin/fast-downward + mkdir -p $out/${python3.sitePackages} + cp -r ../../driver $out/${python3.sitePackages} + + wrapPythonProgramsIn $out/bin "$out $pythonPath" + wrapPythonProgramsIn $out/libexec/fast-downward/translate "$out $pythonPath" + # Because fast-downward calls `python translate.py` we need to return wrapped scripts back. + for i in $out/libexec/fast-downward/translate/.*-wrapped; do + name="$(basename "$i")" + name1="''${name#.}" + name2="''${name1%-wrapped}" + dir="$(dirname "$i")" + dest="$dir/$name2" + echo "Moving $i to $dest" + mv "$i" "$dest" + done + ''; + + meta = with stdenv.lib; { + description = "A domain-independent planning system"; + homepage = "http://www.fast-downward.org/"; + license = licenses.gpl3Plus; + platforms = platforms.linux; + maintainers = with maintainers; [ abbradar ]; + }; +} diff --git a/pkgs/applications/science/math/cplex/default.nix b/pkgs/applications/science/math/cplex/default.nix index dc0e9ea1aa5..a14839d3ecc 100644 --- a/pkgs/applications/science/math/cplex/default.nix +++ b/pkgs/applications/science/math/cplex/default.nix @@ -71,6 +71,11 @@ stdenv.mkDerivation rec { fi done ''; + + passthru = { + libArch = "x86-64_linux"; + libSuffix = "${version}0"; + }; meta = with stdenv.lib; { description = "Optimization solver for mathematical programming"; diff --git a/pkgs/applications/science/math/gurobi/default.nix b/pkgs/applications/science/math/gurobi/default.nix index be14d141128..ee9bdcc6f1b 100644 --- a/pkgs/applications/science/math/gurobi/default.nix +++ b/pkgs/applications/science/math/gurobi/default.nix @@ -1,8 +1,10 @@ -{ stdenv, fetchurl, autoPatchelfHook, python }: +{ stdenv, lib, fetchurl, autoPatchelfHook, python }: -stdenv.mkDerivation rec { +let + majorVersion = "8.1"; +in stdenv.mkDerivation rec { name = "gurobi-${version}"; - version = "8.1.0"; + version = "${majorVersion}.0"; src = with stdenv.lib; fetchurl { url = "http://packages.gurobi.com/${versions.majorMinor version}/gurobi${version}_linux64.tar.gz"; @@ -44,6 +46,8 @@ stdenv.mkDerivation rec { ln -s $out/lib/gurobi-javadoc.jar $out/share/java/ ''; + passthru.libSuffix = lib.replaceStrings ["."] [""] majorVersion; + meta = with stdenv.lib; { description = "Optimization solver for mathematical programming"; homepage = https://www.gurobi.com; diff --git a/pkgs/applications/video/vdr/default.nix b/pkgs/applications/video/vdr/default.nix index 21c2404f4ee..e8100219358 100644 --- a/pkgs/applications/video/vdr/default.nix +++ b/pkgs/applications/video/vdr/default.nix @@ -4,12 +4,12 @@ , enableBidi ? true }: stdenv.mkDerivation rec { - name = "vdr-${version}"; - version = "2.4.0"; + pname = "vdr"; + version = "2.4.1"; src = fetchurl { - url = "ftp://ftp.tvdr.de/vdr/${name}.tar.bz2"; - sha256 = "1klcgy9kr7n6z8d2c77j63bl8hvhx5qnqppg73f77004hzz4kbwk"; + url = "ftp://ftp.tvdr.de/vdr/${pname}-${version}.tar.bz2"; + sha256 = "1p51b14aqzncx3xpfg0rjplc48pg7520035i5p6r5zzkqhszihr5"; }; enableParallelBuilding = true; diff --git a/pkgs/applications/virtualization/conmon/default.nix b/pkgs/applications/virtualization/conmon/default.nix index 4ef02af106e..eb143412bd4 100644 --- a/pkgs/applications/virtualization/conmon/default.nix +++ b/pkgs/applications/virtualization/conmon/default.nix @@ -9,13 +9,13 @@ stdenv.mkDerivation rec { project = "conmon"; name = "${project}-${version}"; - version = "0.2.0"; + version = "0.3.0"; src = fetchFromGitHub { owner = "containers"; repo = project; rev = "v${version}"; - sha256 = "08fgkbv7hq62lcq39za9pm2s2j92ismgrkvfm7acwbvajqh9syjb"; + sha256 = "0s23gm0cq4mylv882dr1n8bqql42674vny3z58yy77lwzmifc6id"; }; nativeBuildInputs = [ pkgconfig ]; diff --git a/pkgs/build-support/mkshell/default.nix b/pkgs/build-support/mkshell/default.nix index a98b4affacb..a70dc0390cb 100644 --- a/pkgs/build-support/mkshell/default.nix +++ b/pkgs/build-support/mkshell/default.nix @@ -11,13 +11,8 @@ ... }@attrs: let - mergeInputs = name: - let - op = item: sum: sum ++ item."${name}" or []; - nul = []; - list = [attrs] ++ inputsFrom; - in - lib.foldr op nul list; + mergeInputs = name: lib.concatLists (lib.catAttrs name + ([attrs] ++ inputsFrom)); rest = builtins.removeAttrs attrs [ "inputsFrom" @@ -25,6 +20,7 @@ let "nativeBuildInputs" "propagatedBuildInputs" "propagatedNativeBuildInputs" + "shellHook" ]; in @@ -37,6 +33,9 @@ stdenv.mkDerivation ({ propagatedBuildInputs = mergeInputs "propagatedBuildInputs"; propagatedNativeBuildInputs = mergeInputs "propagatedNativeBuildInputs"; + shellHook = lib.concatStringsSep "\n" (lib.catAttrs "shellHook" + (lib.reverseList inputsFrom ++ [attrs])); + nobuildPhase = '' echo echo "This derivation is not meant to be built, aborting"; diff --git a/pkgs/development/compilers/crystal/default.nix b/pkgs/development/compilers/crystal/default.nix index 1e0f8656ef0..2e823fe1f0f 100644 --- a/pkgs/development/compilers/crystal/default.nix +++ b/pkgs/development/compilers/crystal/default.nix @@ -1,11 +1,11 @@ { stdenv, lib, fetchFromGitHub, fetchurl, makeWrapper -, gmp, openssl, readline, tzdata, libxml2, libyaml +, coreutils, git, gmp, nettools, openssl, readline, tzdata, libxml2, libyaml , boehmgc, libatomic_ops, pcre, libevent, libiconv, llvm, clang, which, zlib }: # We need multiple binaries as a given binary isn't always able to build -# (even slightly) older or newer version. +# (even slightly) older or newer versions. # - 0.26.1 can build 0.25.x and 0.26.x but not 0.27.x -# - 0.27.2 can build 0.27.x but not 0.25.x and 0.26.x +# - 0.27.2 can build 0.27.x but not 0.25.x, 0.26.x and 0.29.x # # We need to keep around at least the latest version released with a stable # NixOS @@ -19,7 +19,7 @@ let arch = archs."${stdenv.system}" or (throw "system ${stdenv.system} not supported"); - checkInputs = [ gmp openssl readline libxml2 libyaml tzdata ]; + checkInputs = [ git gmp openssl readline libxml2 libyaml ]; genericBinary = { version, sha256s, rel ? 1 }: stdenv.mkDerivation rec { @@ -38,8 +38,8 @@ let generic = { version, sha256, binary, doCheck ? true }: stdenv.mkDerivation rec { - inherit doCheck; - name = "crystal-${version}"; + pname = "crystal"; + inherit doCheck version; src = fetchFromGitHub { owner = "crystal-lang"; @@ -48,14 +48,30 @@ let inherit sha256; }; + # we are almost able to run the full test suite now postPatch = '' + substituteInPlace src/crystal/system/unix/time.cr \ + --replace /usr/share/zoneinfo ${tzdata}/share/zoneinfo + ln -s spec/compiler spec/std + + substituteInPlace spec/std/file_spec.cr \ + --replace '/bin/ls' '${coreutils}/bin/ls' \ + --replace '/usr/share' '/tmp/test' + substituteInPlace spec/std/process_spec.cr \ - --replace /bin/ /run/current-system/sw/bin/ + --replace '/bin/cat' '${coreutils}/bin/cat' \ + --replace '/bin/ls' '${coreutils}/bin/ls' \ + --replace '/usr/bin/env' '${coreutils}/bin/env' \ + --replace '"env"' '"${coreutils}/bin/env"' \ + --replace '"/usr"' '"/tmp"' + + substituteInPlace spec/std/system_spec.cr \ + --replace '`hostname`' '`${nettools}/bin/hostname`' ''; buildInputs = [ - boehmgc libatomic_ops pcre libevent + boehmgc libatomic_ops pcre libevent libyaml llvm zlib openssl ] ++ stdenv.lib.optionals stdenv.isDarwin [ libiconv @@ -111,7 +127,11 @@ let checkTarget = "spec"; preCheck = '' + export HOME=/tmp + mkdir -p $HOME/test + export LIBRARY_PATH=${lib.makeLibraryPath checkInputs}:$LIBRARY_PATH + export PATH=${lib.makeBinPath checkInputs}:$PATH ''; meta = with lib; { @@ -142,6 +162,15 @@ in rec { }; }; + binaryCrystal_0_29 = genericBinary { + version = "0.29.0"; + sha256s = { + "x86_64-linux" = "1wrk29sfx35akg7hxwpdiikvl18wd40gq1kwirw7x522hnq7vlna"; + "i686-linux" = "1nx0piis2k3nn7kqiijqazzbvlaavhgvsln0l3dxmpfa4i4dz5h2"; + "x86_64-darwin" = "1fd0fbyf05abivnp3igjlrm2axf65n2wdmg4aq6nqj60ipc01rvd"; + }; + }; + crystal_0_25 = generic { version = "0.25.1"; sha256 = "15xmbkalsdk9qpc6wfpkly3sifgw6a4ai5jzlv78dh3jp7glmgyl"; @@ -163,5 +192,12 @@ in rec { binary = binaryCrystal_0_27; }; - crystal = crystal_0_27; + crystal_0_29 = generic { + version = "0.29.0"; + sha256 = "0v9l253b2x8yw6a43vvalywpwciwr094l3g5wakmndfrzak2s3zr"; + doCheck = false; # 6 checks are failing now + binary = binaryCrystal_0_29; + }; + + crystal = crystal_0_29; } diff --git a/pkgs/development/compilers/elm/default.nix b/pkgs/development/compilers/elm/default.nix index cd91ea6478d..9b1252e4284 100644 --- a/pkgs/development/compilers/elm/default.nix +++ b/pkgs/development/compilers/elm/default.nix @@ -1,14 +1,23 @@ { lib, stdenv , haskell, nodejs -, fetchurl, fetchpatch, makeWrapper }: - +, fetchurl, fetchpatch, makeWrapper, writeScriptBin }: let fetchElmDeps = import ./fetchElmDeps.nix { inherit stdenv lib fetchurl; }; + + patchBinwrap = import ./packages/patch-binwrap.nix { inherit lib writeScriptBin stdenv; }; + + elmNodePackages = + import ./packages/node-composition.nix { + inherit nodejs; + inherit (stdenv.hostPlatform) system; + }; + hsPkgs = haskell.packages.ghc864.override { overrides = self: super: with haskell.lib; - let elmPkgs = { + let elmPkgs = rec { elm = overrideCabal (self.callPackage ./packages/elm.nix { }) (drv: { # sadly with parallelism most of the time breaks compilation + # also compilation is slower with increasing number of cores anyway (Tested on Ryzen 7 and i7) enableParallelBuilding = false; preConfigure = self.fetchElmDeps { elmPackages = (import ./packages/elm-srcs.nix); @@ -30,12 +39,25 @@ let /* The elm-format expression is updated via a script in the https://github.com/avh4/elm-format repo: - `pacakge/nix/build.sh` + `package/nix/build.sh` */ elm-format = justStaticExecutables (doJailbreak (self.callPackage ./packages/elm-format.nix {})); + elmi-to-json = justStaticExecutables (self.callPackage ./packages/elmi-to-json.nix {}); + inherit fetchElmDeps; elmVersion = elmPkgs.elm.version; + + /* + Node/NPM based dependecies can be upgraded using script + `packages/generate-node-packages.sh`. + Packages which rely on `bin-wrap` will fail by default + and can be patched using `patchBinwrap` function defined in `packages/patch-binwrap.nix`. + */ + elm-test = patchBinwrap [elmi-to-json] elmNodePackages.elm-test; + elm-verify-examples = patchBinwrap [elmi-to-json] elmNodePackages.elm-verify-examples; + elm-analyse = elmNodePackages."elm-analyse-0.16.3"; + inherit (elmNodePackages) elm-doc-preview elm-upgrade; }; in elmPkgs // { inherit elmPkgs; diff --git a/pkgs/development/compilers/elm/packages/README.md b/pkgs/development/compilers/elm/packages/README.md new file mode 100644 index 00000000000..5b21736afc0 --- /dev/null +++ b/pkgs/development/compilers/elm/packages/README.md @@ -0,0 +1,25 @@ +# Elm packages + +Mixtures of useful Elm lang tooling containing both Haskell and Node.js based utilities. + +## Upgrades + +Haskell parts of the ecosystem are using [cabal2nix](https://github.com/NixOS/cabal2nix). +Please refer to [nix documentation](https://nixos.org/nixpkgs/manual/#how-to-create-nix-builds-for-your-own-private-haskell-packages) +and [cabal2nix readme](https://github.com/NixOS/cabal2nix#readme) for more information. Elm-format [update scripts](https://github.com/avh4/elm-format/tree/master/package/nix) +is part of its repository. + +Node dependencies are defined in [node-packages.json](node-packages.json). +[Node2nix](https://github.com/svanderburg/node2nix) is used for generating nix expression +from this file. Use [generate-node-packages.sh](generate-node-packages.sh) for updates of nix expressions. + +## Binwrap Patch + +Some node packages might use [binwrap](https://github.com/avh4/binwrap) typically for installing +[elmi-to-json](https://github.com/stoeffel/elmi-to-json). Binwrap is not compatible with nix. +To overcome issues with those packages apply [patch-binwrap.nix](patch-binwrap.nix) which essentially does 2 things. + +1. It replaces binwrap scripts with noop shell scripts +2. It uses nix for installing the binaries to expected location in `node_modules` + +Example usage be found in `elm/default.nix`. diff --git a/pkgs/development/compilers/elm/packages/elmi-to-json.nix b/pkgs/development/compilers/elm/packages/elmi-to-json.nix new file mode 100644 index 00000000000..f6a0b9e2426 --- /dev/null +++ b/pkgs/development/compilers/elm/packages/elmi-to-json.nix @@ -0,0 +1,27 @@ +{ mkDerivation, aeson, async, base, binary, bytestring, containers +, directory, filepath, hpack, optparse-applicative, safe-exceptions +, stdenv, text, fetchgit +}: +mkDerivation { + pname = "elmi-to-json"; + version = "0.19.4"; + src = fetchgit { + url = "https://github.com/stoeffel/elmi-to-json.git"; + rev = "357ad96f05e4c68023b036f27f6f65c4377c7427"; + sha256 = "0vj9fdqgg2zd1nxpll6v02fk6bcyhx00xhp3s8sd7ycvirwsim9n"; + }; + isLibrary = true; + isExecutable = true; + libraryHaskellDepends = [ + aeson async base binary bytestring containers directory filepath + optparse-applicative safe-exceptions text + ]; + libraryToolDepends = [ hpack ]; + executableHaskellDepends = [ base ]; + testHaskellDepends = [ base ]; + preConfigure = "hpack"; + homepage = "https://github.com/stoeffel/elmi-to-json#readme"; + description = "Translates elmi binary files to JSON representation"; + license = stdenv.lib.licenses.bsd3; + maintainers = with stdenv.lib.maintainers; [ turbomack ]; +} diff --git a/pkgs/development/compilers/elm/packages/generate-node-packages.sh b/pkgs/development/compilers/elm/packages/generate-node-packages.sh new file mode 100755 index 00000000000..0e1835c6ffa --- /dev/null +++ b/pkgs/development/compilers/elm/packages/generate-node-packages.sh @@ -0,0 +1,7 @@ +#!/usr/bin/env nix-shell +#! nix-shell -i bash -p nodePackages.node2nix + +set -eu -o pipefail + +rm -f node-env.nix +node2nix --nodejs-10 -i node-packages.json -o node-packages.nix -c node-composition.nix diff --git a/pkgs/development/compilers/elm/packages/node-composition.nix b/pkgs/development/compilers/elm/packages/node-composition.nix new file mode 100644 index 00000000000..1039eb51fe2 --- /dev/null +++ b/pkgs/development/compilers/elm/packages/node-composition.nix @@ -0,0 +1,17 @@ +# This file has been generated by node2nix 1.6.0. Do not edit! + +{pkgs ? import { + inherit system; + }, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-10_x"}: + +let + nodeEnv = import ./node-env.nix { + inherit (pkgs) stdenv python2 utillinux runCommand writeTextFile; + inherit nodejs; + libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null; + }; +in +import ./node-packages.nix { + inherit (pkgs) fetchurl fetchgit; + inherit nodeEnv; +} \ No newline at end of file diff --git a/pkgs/development/compilers/elm/packages/node-env.nix b/pkgs/development/compilers/elm/packages/node-env.nix new file mode 100644 index 00000000000..720e0cc0850 --- /dev/null +++ b/pkgs/development/compilers/elm/packages/node-env.nix @@ -0,0 +1,542 @@ +# This file originates from node2nix + +{stdenv, nodejs, python2, utillinux, libtool, runCommand, writeTextFile}: + +let + python = if nodejs ? python then nodejs.python else python2; + + # Create a tar wrapper that filters all the 'Ignoring unknown extended header keyword' noise + tarWrapper = runCommand "tarWrapper" {} '' + mkdir -p $out/bin + + cat > $out/bin/tar <> $out/nix-support/hydra-build-products + ''; + }; + + includeDependencies = {dependencies}: + stdenv.lib.optionalString (dependencies != []) + (stdenv.lib.concatMapStrings (dependency: + '' + # Bundle the dependencies of the package + mkdir -p node_modules + cd node_modules + + # Only include dependencies if they don't exist. They may also be bundled in the package. + if [ ! -e "${dependency.name}" ] + then + ${composePackage dependency} + fi + + cd .. + '' + ) dependencies); + + # Recursively composes the dependencies of a package + composePackage = { name, packageName, src, dependencies ? [], ... }@args: + '' + DIR=$(pwd) + cd $TMPDIR + + unpackFile ${src} + + # Make the base dir in which the target dependency resides first + mkdir -p "$(dirname "$DIR/${packageName}")" + + if [ -f "${src}" ] + then + # Figure out what directory has been unpacked + packageDir="$(find . -maxdepth 1 -type d | tail -1)" + + # Restore write permissions to make building work + find "$packageDir" -type d -print0 | xargs -0 chmod u+x + chmod -R u+w "$packageDir" + + # Move the extracted tarball into the output folder + mv "$packageDir" "$DIR/${packageName}" + elif [ -d "${src}" ] + then + # Get a stripped name (without hash) of the source directory. + # On old nixpkgs it's already set internally. + if [ -z "$strippedName" ] + then + strippedName="$(stripHash ${src})" + fi + + # Restore write permissions to make building work + chmod -R u+w "$strippedName" + + # Move the extracted directory into the output folder + mv "$strippedName" "$DIR/${packageName}" + fi + + # Unset the stripped name to not confuse the next unpack step + unset strippedName + + # Include the dependencies of the package + cd "$DIR/${packageName}" + ${includeDependencies { inherit dependencies; }} + cd .. + ${stdenv.lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."} + ''; + + pinpointDependencies = {dependencies, production}: + let + pinpointDependenciesFromPackageJSON = writeTextFile { + name = "pinpointDependencies.js"; + text = '' + var fs = require('fs'); + var path = require('path'); + + function resolveDependencyVersion(location, name) { + if(location == process.env['NIX_STORE']) { + return null; + } else { + var dependencyPackageJSON = path.join(location, "node_modules", name, "package.json"); + + if(fs.existsSync(dependencyPackageJSON)) { + var dependencyPackageObj = JSON.parse(fs.readFileSync(dependencyPackageJSON)); + + if(dependencyPackageObj.name == name) { + return dependencyPackageObj.version; + } + } else { + return resolveDependencyVersion(path.resolve(location, ".."), name); + } + } + } + + function replaceDependencies(dependencies) { + if(typeof dependencies == "object" && dependencies !== null) { + for(var dependency in dependencies) { + var resolvedVersion = resolveDependencyVersion(process.cwd(), dependency); + + if(resolvedVersion === null) { + process.stderr.write("WARNING: cannot pinpoint dependency: "+dependency+", context: "+process.cwd()+"\n"); + } else { + dependencies[dependency] = resolvedVersion; + } + } + } + } + + /* Read the package.json configuration */ + var packageObj = JSON.parse(fs.readFileSync('./package.json')); + + /* Pinpoint all dependencies */ + replaceDependencies(packageObj.dependencies); + if(process.argv[2] == "development") { + replaceDependencies(packageObj.devDependencies); + } + replaceDependencies(packageObj.optionalDependencies); + + /* Write the fixed package.json file */ + fs.writeFileSync("package.json", JSON.stringify(packageObj, null, 2)); + ''; + }; + in + '' + node ${pinpointDependenciesFromPackageJSON} ${if production then "production" else "development"} + + ${stdenv.lib.optionalString (dependencies != []) + '' + if [ -d node_modules ] + then + cd node_modules + ${stdenv.lib.concatMapStrings (dependency: pinpointDependenciesOfPackage dependency) dependencies} + cd .. + fi + ''} + ''; + + # Recursively traverses all dependencies of a package and pinpoints all + # dependencies in the package.json file to the versions that are actually + # being used. + + pinpointDependenciesOfPackage = { packageName, dependencies ? [], production ? true, ... }@args: + '' + if [ -d "${packageName}" ] + then + cd "${packageName}" + ${pinpointDependencies { inherit dependencies production; }} + cd .. + ${stdenv.lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."} + fi + ''; + + # Extract the Node.js source code which is used to compile packages with + # native bindings + nodeSources = runCommand "node-sources" {} '' + tar --no-same-owner --no-same-permissions -xf ${nodejs.src} + mv node-* $out + ''; + + # Script that adds _integrity fields to all package.json files to prevent NPM from consulting the cache (that is empty) + addIntegrityFieldsScript = writeTextFile { + name = "addintegrityfields.js"; + text = '' + var fs = require('fs'); + var path = require('path'); + + function augmentDependencies(baseDir, dependencies) { + for(var dependencyName in dependencies) { + var dependency = dependencies[dependencyName]; + + // Open package.json and augment metadata fields + var packageJSONDir = path.join(baseDir, "node_modules", dependencyName); + var packageJSONPath = path.join(packageJSONDir, "package.json"); + + if(fs.existsSync(packageJSONPath)) { // Only augment packages that exist. Sometimes we may have production installs in which development dependencies can be ignored + console.log("Adding metadata fields to: "+packageJSONPath); + var packageObj = JSON.parse(fs.readFileSync(packageJSONPath)); + + if(dependency.integrity) { + packageObj["_integrity"] = dependency.integrity; + } else { + packageObj["_integrity"] = "sha1-000000000000000000000000000="; // When no _integrity string has been provided (e.g. by Git dependencies), add a dummy one. It does not seem to harm and it bypasses downloads. + } + + packageObj["_resolved"] = dependency.version; // Set the resolved version to the version identifier. This prevents NPM from cloning Git repositories. + fs.writeFileSync(packageJSONPath, JSON.stringify(packageObj, null, 2)); + } + + // Augment transitive dependencies + if(dependency.dependencies !== undefined) { + augmentDependencies(packageJSONDir, dependency.dependencies); + } + } + } + + if(fs.existsSync("./package-lock.json")) { + var packageLock = JSON.parse(fs.readFileSync("./package-lock.json")); + + if(packageLock.lockfileVersion !== 1) { + process.stderr.write("Sorry, I only understand lock file version 1!\n"); + process.exit(1); + } + + if(packageLock.dependencies !== undefined) { + augmentDependencies(".", packageLock.dependencies); + } + } + ''; + }; + + # Reconstructs a package-lock file from the node_modules/ folder structure and package.json files with dummy sha1 hashes + reconstructPackageLock = writeTextFile { + name = "addintegrityfields.js"; + text = '' + var fs = require('fs'); + var path = require('path'); + + var packageObj = JSON.parse(fs.readFileSync("package.json")); + + var lockObj = { + name: packageObj.name, + version: packageObj.version, + lockfileVersion: 1, + requires: true, + dependencies: {} + }; + + function augmentPackageJSON(filePath, dependencies) { + var packageJSON = path.join(filePath, "package.json"); + if(fs.existsSync(packageJSON)) { + var packageObj = JSON.parse(fs.readFileSync(packageJSON)); + dependencies[packageObj.name] = { + version: packageObj.version, + integrity: "sha1-000000000000000000000000000=", + dependencies: {} + }; + processDependencies(path.join(filePath, "node_modules"), dependencies[packageObj.name].dependencies); + } + } + + function processDependencies(dir, dependencies) { + if(fs.existsSync(dir)) { + var files = fs.readdirSync(dir); + + files.forEach(function(entry) { + var filePath = path.join(dir, entry); + var stats = fs.statSync(filePath); + + if(stats.isDirectory()) { + if(entry.substr(0, 1) == "@") { + // When we encounter a namespace folder, augment all packages belonging to the scope + var pkgFiles = fs.readdirSync(filePath); + + pkgFiles.forEach(function(entry) { + if(stats.isDirectory()) { + var pkgFilePath = path.join(filePath, entry); + augmentPackageJSON(pkgFilePath, dependencies); + } + }); + } else { + augmentPackageJSON(filePath, dependencies); + } + } + }); + } + } + + processDependencies("node_modules", lockObj.dependencies); + + fs.writeFileSync("package-lock.json", JSON.stringify(lockObj, null, 2)); + ''; + }; + + # Builds and composes an NPM package including all its dependencies + buildNodePackage = + { name + , packageName + , version + , dependencies ? [] + , buildInputs ? [] + , production ? true + , npmFlags ? "" + , dontNpmInstall ? false + , bypassCache ? false + , preRebuild ? "" + , dontStrip ? true + , unpackPhase ? "true" + , buildPhase ? "true" + , ... }@args: + + let + forceOfflineFlag = if bypassCache then "--offline" else "--registry http://www.example.com"; + extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" "dontStrip" "dontNpmInstall" "preRebuild" "unpackPhase" "buildPhase" ]; + in + stdenv.mkDerivation ({ + name = "node-${name}-${version}"; + buildInputs = [ tarWrapper python nodejs ] + ++ stdenv.lib.optional (stdenv.isLinux) utillinux + ++ stdenv.lib.optional (stdenv.isDarwin) libtool + ++ buildInputs; + + inherit dontStrip; # Stripping may fail a build for some package deployments + inherit dontNpmInstall preRebuild unpackPhase buildPhase; + + compositionScript = composePackage args; + pinpointDependenciesScript = pinpointDependenciesOfPackage args; + + passAsFile = [ "compositionScript" "pinpointDependenciesScript" ]; + + installPhase = '' + # Create and enter a root node_modules/ folder + mkdir -p $out/lib/node_modules + cd $out/lib/node_modules + + # Compose the package and all its dependencies + source $compositionScriptPath + + # Pinpoint the versions of all dependencies to the ones that are actually being used + echo "pinpointing versions of dependencies..." + source $pinpointDependenciesScriptPath + + # Patch the shebangs of the bundled modules to prevent them from + # calling executables outside the Nix store as much as possible + patchShebangs . + + # Deploy the Node.js package by running npm install. Since the + # dependencies have been provided already by ourselves, it should not + # attempt to install them again, which is good, because we want to make + # it Nix's responsibility. If it needs to install any dependencies + # anyway (e.g. because the dependency parameters are + # incomplete/incorrect), it fails. + # + # The other responsibilities of NPM are kept -- version checks, build + # steps, postprocessing etc. + + export HOME=$TMPDIR + cd "${packageName}" + runHook preRebuild + + ${stdenv.lib.optionalString bypassCache '' + if [ ! -f package-lock.json ] + then + echo "No package-lock.json file found, reconstructing..." + node ${reconstructPackageLock} + fi + + node ${addIntegrityFieldsScript} + ''} + + npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} rebuild + + if [ "$dontNpmInstall" != "1" ] + then + # NPM tries to download packages even when they already exist if npm-shrinkwrap is used. + rm -f npm-shrinkwrap.json + + npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} install + fi + + # Create symlink to the deployed executable folder, if applicable + if [ -d "$out/lib/node_modules/.bin" ] + then + ln -s $out/lib/node_modules/.bin $out/bin + fi + + # Create symlinks to the deployed manual page folders, if applicable + if [ -d "$out/lib/node_modules/${packageName}/man" ] + then + mkdir -p $out/share + for dir in "$out/lib/node_modules/${packageName}/man/"* + do + mkdir -p $out/share/man/$(basename "$dir") + for page in "$dir"/* + do + ln -s $page $out/share/man/$(basename "$dir") + done + done + fi + + # Run post install hook, if provided + runHook postInstall + ''; + } // extraArgs); + + # Builds a development shell + buildNodeShell = + { name + , packageName + , version + , src + , dependencies ? [] + , buildInputs ? [] + , production ? true + , npmFlags ? "" + , dontNpmInstall ? false + , bypassCache ? false + , dontStrip ? true + , unpackPhase ? "true" + , buildPhase ? "true" + , ... }@args: + + let + forceOfflineFlag = if bypassCache then "--offline" else "--registry http://www.example.com"; + + extraArgs = removeAttrs args [ "name" "dependencies" "buildInputs" ]; + + nodeDependencies = stdenv.mkDerivation ({ + name = "node-dependencies-${name}-${version}"; + + buildInputs = [ tarWrapper python nodejs ] + ++ stdenv.lib.optional (stdenv.isLinux) utillinux + ++ stdenv.lib.optional (stdenv.isDarwin) libtool + ++ buildInputs; + + inherit dontStrip; # Stripping may fail a build for some package deployments + inherit dontNpmInstall unpackPhase buildPhase; + + includeScript = includeDependencies { inherit dependencies; }; + pinpointDependenciesScript = pinpointDependenciesOfPackage args; + + passAsFile = [ "includeScript" "pinpointDependenciesScript" ]; + + installPhase = '' + mkdir -p $out/${packageName} + cd $out/${packageName} + + source $includeScriptPath + + # Create fake package.json to make the npm commands work properly + cp ${src}/package.json . + chmod 644 package.json + ${stdenv.lib.optionalString bypassCache '' + if [ -f ${src}/package-lock.json ] + then + cp ${src}/package-lock.json . + fi + ''} + + # Pinpoint the versions of all dependencies to the ones that are actually being used + echo "pinpointing versions of dependencies..." + cd .. + ${stdenv.lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."} + + source $pinpointDependenciesScriptPath + cd ${packageName} + + # Patch the shebangs of the bundled modules to prevent them from + # calling executables outside the Nix store as much as possible + patchShebangs . + + export HOME=$PWD + + ${stdenv.lib.optionalString bypassCache '' + if [ ! -f package-lock.json ] + then + echo "No package-lock.json file found, reconstructing..." + node ${reconstructPackageLock} + fi + + node ${addIntegrityFieldsScript} + ''} + + npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} rebuild + + ${stdenv.lib.optionalString (!dontNpmInstall) '' + # NPM tries to download packages even when they already exist if npm-shrinkwrap is used. + rm -f npm-shrinkwrap.json + + npm ${forceOfflineFlag} --nodedir=${nodeSources} ${npmFlags} ${stdenv.lib.optionalString production "--production"} install + ''} + + cd .. + ${stdenv.lib.optionalString (builtins.substring 0 1 packageName == "@") "cd .."} + + mv ${packageName} lib + ln -s $out/lib/node_modules/.bin $out/bin + ''; + } // extraArgs); + in + stdenv.mkDerivation { + name = "node-shell-${name}-${version}"; + + buildInputs = [ python nodejs ] ++ stdenv.lib.optional (stdenv.isLinux) utillinux ++ buildInputs; + buildCommand = '' + mkdir -p $out/bin + cat > $out/bin/shell < +@@ -289,7 +289,19 @@ QT_MAC_WEAK_IMPORT(_os_activity_current); + + #define QT_APPLE_SCOPED_LOG_ACTIVITY(...) QAppleLogActivity scopedLogActivity = QT_APPLE_LOG_ACTIVITY(__VA_ARGS__).enter(); + +-#endif // !defined(QT_BOOTSTRAPPED) ++#else // !defined(QT_BOOTSTRAPPED) ++ ++#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT3(...) ++#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT2(...) ++#define QT_APPLE_LOG_ACTIVITY_WITH_PARENT(...) ++ ++#define QT_APPLE_LOG_ACTIVITY2(...) ++#define QT_APPLE_LOG_ACTIVITY1(...) ++#define QT_APPLE_LOG_ACTIVITY(...) ++ ++#define QT_APPLE_SCOPED_LOG_ACTIVITY(...) ++ ++#endif + + // ------------------------------------------------------------------------- + +diff --git a/src/testlib/qappletestlogger.cpp b/src/testlib/qappletestlogger.cpp +index 2c1005ad80..244147ea7d 100644 +--- a/src/testlib/qappletestlogger.cpp ++++ b/src/testlib/qappletestlogger.cpp +@@ -43,7 +43,7 @@ + + QT_BEGIN_NAMESPACE + +-#if defined(QT_USE_APPLE_UNIFIED_LOGGING) ++#if defined(QT_USE_APPLE_UNIFIED_LOGGING) && 0 + + using namespace QTestPrivate; + +diff --git a/src/testlib/qtestlog.cpp b/src/testlib/qtestlog.cpp +index 1268730cc6..a50e9b0764 100644 +--- a/src/testlib/qtestlog.cpp ++++ b/src/testlib/qtestlog.cpp +@@ -524,7 +524,7 @@ void QTestLog::addLogger(LogMode mode, const char *filename) + #endif + } + +-#if defined(QT_USE_APPLE_UNIFIED_LOGGING) ++#if defined(QT_USE_APPLE_UNIFIED_LOGGING) && 0 + // Logger that also feeds messages to AUL. It needs to wrap the existing + // logger, as it needs to be able to short circuit the existing logger + // in case AUL prints to stderr. diff --git a/pkgs/development/libraries/qt-5/5.12/qttools.patch b/pkgs/development/libraries/qt-5/5.12/qttools.patch new file mode 100644 index 00000000000..8ae12198ca2 --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.12/qttools.patch @@ -0,0 +1,15 @@ +--- a/src/macdeployqt/shared/shared.cpp ++++ b/src/macdeployqt/shared/shared.cpp +@@ -1241,6 +1241,12 @@ bool deployQmlImports(const QString &appBundlePath, DeploymentInfo deploymentInf + if (!QFile(qmlImportScannerPath).exists()) + qmlImportScannerPath = QCoreApplication::applicationDirPath() + "/qmlimportscanner"; + ++#ifdef NIXPKGS_QMLIMPORTSCANNER ++ // Fallback: Nixpkgs hardcoded path ++ if (!QFile(qmlImportScannerPath).exists()) ++ qmlImportScannerPath = NIXPKGS_QMLIMPORTSCANNER; ++#endif ++ + // Verify that we found a qmlimportscanner binary + if (!QFile(qmlImportScannerPath).exists()) { + LogError() << "qmlimportscanner not found at" << qmlImportScannerPath; diff --git a/pkgs/development/libraries/qt-5/modules/qtbase.nix b/pkgs/development/libraries/qt-5/modules/qtbase.nix index bd92d9bc27c..2c050a105b8 100644 --- a/pkgs/development/libraries/qt-5/modules/qtbase.nix +++ b/pkgs/development/libraries/qt-5/modules/qtbase.nix @@ -56,7 +56,7 @@ stdenv.mkDerivation { # TODO: move to buildInputs, this should not be propagated. AGL AppKit ApplicationServices Carbon Cocoa CoreAudio CoreBluetooth CoreLocation CoreServices DiskArbitration Foundation OpenGL - darwin.libobjc libiconv + darwin.libobjc libiconv MetalKit ] else [ diff --git a/pkgs/development/libraries/qt-5/modules/qttools.nix b/pkgs/development/libraries/qt-5/modules/qttools.nix index 622d841b405..573472a8b5a 100644 --- a/pkgs/development/libraries/qt-5/modules/qttools.nix +++ b/pkgs/development/libraries/qt-5/modules/qttools.nix @@ -1,4 +1,4 @@ -{ qtModule, stdenv, lib, qtbase }: +{ qtModule, stdenv, lib, qtbase, qtdeclarative }: with lib; @@ -32,5 +32,8 @@ qtModule { "bin/macdeployqt" ]; + NIX_CFLAGS_COMPILE = + lib.optional stdenv.isDarwin ''-DNIXPKGS_QMLIMPORTSCANNER="${qtdeclarative.dev}/bin/qmlimportscanner"''; + setupHook = ../hooks/qttools-setup-hook.sh; } diff --git a/pkgs/development/libraries/science/math/osi/default.nix b/pkgs/development/libraries/science/math/osi/default.nix new file mode 100644 index 00000000000..1cc80e78a10 --- /dev/null +++ b/pkgs/development/libraries/science/math/osi/default.nix @@ -0,0 +1,42 @@ +{ stdenv, lib, fetchurl, gfortran, pkgconfig +, blas, zlib, bzip2 +, withGurobi ? false, gurobi +, withCplex ? false, cplex }: + +stdenv.mkDerivation rec { + pname = "osi"; + version = "0.108.4"; + + src = fetchurl { + url = "https://www.coin-or.org/download/source/Osi/Osi-${version}.tgz"; + sha256 = "13bwhdh01g37vp3kjwl9nvij5s5ikh5f7zgrqgwrqfyk35q2x9s5"; + }; + + buildInputs = + [ blas zlib bzip2 ] + ++ lib.optional withGurobi gurobi + ++ lib.optional withCplex cplex; + nativeBuildInputs = [ gfortran pkgconfig ]; + configureFlags = + lib.optionals withGurobi [ "--with-gurobi-incdir=${gurobi}/include" "--with-gurobi-lib=-lgurobi${gurobi.libSuffix}" ] + ++ lib.optionals withCplex [ "--with-cplex-incdir=${cplex}/cplex/include/ilcplex" "--with-cplex-lib=-lcplex${cplex.libSuffix}" ]; + + NIX_LDFLAGS = + lib.optional withCplex "-L${cplex}/cplex/bin/${cplex.libArch}"; + + # Compile errors + NIX_CFLAGS_COMPILE = [ "-Wno-cast-qual" ]; + hardeningDisable = [ "format" ]; + + enableParallelBuilding = true; + + passthru = { inherit withGurobi withCplex; }; + + meta = with stdenv.lib; { + description = "An abstract base class to a generic linear programming (LP) solver"; + homepage = "https://github.com/coin-or/Osi"; + license = licenses.epl10; + platforms = platforms.unix; + maintainers = with maintainers; [ abbradar ]; + }; +} diff --git a/pkgs/development/libraries/wxwidgets/3.1/default.nix b/pkgs/development/libraries/wxwidgets/3.1/default.nix index 4b410a307bb..76d9939f73a 100644 --- a/pkgs/development/libraries/wxwidgets/3.1/default.nix +++ b/pkgs/development/libraries/wxwidgets/3.1/default.nix @@ -1,16 +1,94 @@ -{ stdenv, fetchFromGitHub -, wxGTK30 +{ stdenv, fetchFromGitHub, fetchurl, pkgconfig +, gtk2, gtk3, libXinerama, libSM, libXxf86vm +, xorgproto, gstreamer, gst-plugins-base, GConf, setfile +, libGLSupported +, withMesa ? libGLSupported, libGLU ? null, libGL ? null +, compat28 ? false, compat30 ? true, unicode ? true +, withGtk2 ? true +, withWebKit ? false, webkitgtk24x-gtk2 ? null, webkitgtk ? null +, AGL ? null, Carbon ? null, Cocoa ? null, Kernel ? null, QTKit ? null }: + +assert withMesa -> libGLU != null && libGL != null; +assert withWebKit -> (if withGtk2 then webkitgtk24x-gtk2 else webkitgtk) != null; + with stdenv.lib; -wxGTK30.overrideAttrs (oldAttrs : rec { - name = "wxwidgets-${version}"; - version = "3.1.0"; - src = fetchFromGitHub { - owner = "wxWidgets"; - repo = "wxWidgets"; - rev = "v${version}"; - sha256 = "14kl1rsngm70v3mbyv1mal15iz2b18k97avjx8jn7s81znha1c7f"; - }; -}) \ No newline at end of file +stdenv.mkDerivation rec { + version = "3.1.2"; + name = "wxwidgets-${version}"; + + src = fetchFromGitHub { + owner = "wxWidgets"; + repo = "wxWidgets"; + rev = "v${version}"; + sha256 = "0gfdhb7xq5vzasm7s1di39nchv42zsp0dmn4v6knzb7mgsb107wb"; + }; + + buildInputs = + [ (if withGtk2 then gtk2 else gtk3) libXinerama libSM libXxf86vm xorgproto gstreamer + gst-plugins-base GConf ] + ++ optional withMesa libGLU + ++ optional withWebKit (if withGtk2 then webkitgtk24x-gtk2 else webkitgtk) + ++ optionals stdenv.isDarwin [ setfile Carbon Cocoa Kernel QTKit ]; + + nativeBuildInputs = [ pkgconfig ]; + + propagatedBuildInputs = optional stdenv.isDarwin AGL; + + patches = [ + (fetchurl { # https://trac.wxwidgets.org/ticket/17942 + url = "https://trac.wxwidgets.org/raw-attachment/ticket/17942/" + + "fix_assertion_using_hide_in_destroy.diff"; + sha256 = "009y3dav79wiig789vkkc07g1qdqprg1544lih79199kb1h64lvy"; + }) + ]; + + configureFlags = + [ "--disable-precomp-headers" "--enable-mediactrl" + (if compat28 then "--enable-compat28" else "--disable-compat28") + (if compat30 then "--enable-compat30" else "--disable-compat30") ] + ++ optional unicode "--enable-unicode" + ++ optional withMesa "--with-opengl" + ++ optionals stdenv.isDarwin + # allow building on 64-bit + [ "--with-cocoa" "--enable-universal-binaries" "--with-macosx-version-min=10.7" ] + ++ optionals withWebKit + ["--enable-webview" "--enable-webviewwebkit"]; + + SEARCH_LIB = "${libGLU.out}/lib ${libGL.out}/lib "; + + preConfigure = " + substituteInPlace configure --replace 'SEARCH_INCLUDE=' 'DUMMY_SEARCH_INCLUDE=' + substituteInPlace configure --replace 'SEARCH_LIB=' 'DUMMY_SEARCH_LIB=' + substituteInPlace configure --replace /usr /no-such-path + " + optionalString stdenv.isDarwin '' + substituteInPlace configure --replace \ + 'ac_cv_prog_SETFILE="/Developer/Tools/SetFile"' \ + 'ac_cv_prog_SETFILE="${setfile}/bin/SetFile"' + substituteInPlace configure --replace \ + "-framework System" \ + -lSystem + ''; + + postInstall = " + (cd $out/include && ln -s wx-*/* .) + "; + + passthru = { + inherit compat24 compat26 unicode; + gtk = if withGtk2 then gtk2 else gtk3; + }; + + enableParallelBuilding = true; + + meta = { + platforms = with platforms; darwin ++ linux; + license = licenses.wxWindows; + homepage = https://www.wxwidgets.org/; + description = "a C++ library that lets developers create applications for Windows, macOS, Linux and other platforms with a single code base"; + longDescription = "wxWidgets gives you a single, easy-to-use API for writing GUI applications on multiple platforms that still utilize the native platform's controls and utilities. Link with the appropriate library for your platform and compiler, and your application will adopt the look and feel appropriate to that platform. On top of great GUI functionality, wxWidgets gives you: online help, network programming, streams, clipboard and drag and drop, multithreading, image loading and saving in a variety of popular formats, database support, HTML viewing and printing, and much more."; + badPlatforms = [ "x86_64-darwin" ]; + }; +} diff --git a/pkgs/development/lua-modules/generated-packages.nix b/pkgs/development/lua-modules/generated-packages.nix index 6b6c82840c2..835045bd725 100644 --- a/pkgs/development/lua-modules/generated-packages.nix +++ b/pkgs/development/lua-modules/generated-packages.nix @@ -867,19 +867,19 @@ luaevent = buildLuarocksPackage { }; luaexpat = buildLuarocksPackage { pname = "luaexpat"; - version = "1.3.3-1"; + version = "1.3.0-1"; src = fetchurl { - url = https://luarocks.org/luaexpat-1.3.3-1.src.rock; - sha256 = "0ahpfnby9qqgj22bajmrqvqq70nx19388lmjm9chljfzszy0hndm"; + url = https://luarocks.org/luaexpat-1.3.0-1.src.rock; + sha256 = "15jqz5q12i9zvjyagzwz2lrpzya64mih8v1hxwr0wl2gsjh86y5a"; }; - disabled = (luaOlder "5.0"); + disabled = (luaOlder "5.1"); propagatedBuildInputs = [ lua ]; meta = with stdenv.lib; { homepage = "http://www.keplerproject.org/luaexpat/"; description = "XML Expat parsing"; - maintainers = with maintainers; [ flosse ]; + maintainers = with maintainers; [ arobyn flosse ]; license = { fullName = "MIT/X11"; }; diff --git a/pkgs/development/node-packages/node-packages-v10.json b/pkgs/development/node-packages/node-packages-v10.json index 383ab5b860a..036bc821748 100644 --- a/pkgs/development/node-packages/node-packages-v10.json +++ b/pkgs/development/node-packages/node-packages-v10.json @@ -21,10 +21,8 @@ , "dhcp" , "dnschain" , "elasticdump" -, "elm-doc-preview" , "elm-live" , "elm-oracle" -, "elm-test" , "emoj" , "eslint" , "eslint_d" diff --git a/pkgs/development/python-modules/aniso8601/default.nix b/pkgs/development/python-modules/aniso8601/default.nix index 76b5d97e281..1d5bf641f7c 100644 --- a/pkgs/development/python-modules/aniso8601/default.nix +++ b/pkgs/development/python-modules/aniso8601/default.nix @@ -3,7 +3,7 @@ buildPythonPackage rec { pname = "aniso8601"; - version = "6.0.0"; + version = "7.0.0"; meta = with stdenv.lib; { description = "Parses ISO 8601 strings."; @@ -17,6 +17,6 @@ buildPythonPackage rec { src = fetchPypi { inherit pname version; - sha256 = "1bylfskk08ahyma25i8w3mcd0kywpxqx6icv5p7m1z0i8srak9mq"; + sha256 = "07jgf55yq2j2q76gaj3hakflnxg8yfkarzvrmq33i1dp6xk2ngai"; }; } diff --git a/pkgs/development/python-modules/black/default.nix b/pkgs/development/python-modules/black/default.nix index fc729dd399d..f17f94387f3 100644 --- a/pkgs/development/python-modules/black/default.nix +++ b/pkgs/development/python-modules/black/default.nix @@ -15,6 +15,10 @@ buildPythonPackage rec { checkInputs = [ pytest glibcLocales ]; + # Necessary for the tests to pass on Darwin with sandbox enabled. + # Black starts a local server and needs to bind a local address. + __darwinAllowLocalNetworking = true; + # Don't know why these tests fails checkPhase = '' LC_ALL="en_US.UTF-8" pytest \ diff --git a/pkgs/development/python-modules/cassandra-driver/default.nix b/pkgs/development/python-modules/cassandra-driver/default.nix index 1551c98143c..b5ee3b3b780 100644 --- a/pkgs/development/python-modules/cassandra-driver/default.nix +++ b/pkgs/development/python-modules/cassandra-driver/default.nix @@ -20,11 +20,11 @@ buildPythonPackage rec { pname = "cassandra-driver"; - version = "3.17.1"; + version = "3.18.0"; src = fetchPypi { inherit pname version; - sha256 = "1y6pnm7vzg9ip1nbly3i8mmwqmcy8g38ix74vdzvvaxwxil9bmvi"; + sha256 = "1w9a7fdl626m977cjj9zclh4a0mr3s4q9jpwm1fsmpi7v3gbribi"; }; buildInputs = [ diff --git a/pkgs/development/python-modules/gtts-token/default.nix b/pkgs/development/python-modules/gtts-token/default.nix new file mode 100644 index 00000000000..62d709aa921 --- /dev/null +++ b/pkgs/development/python-modules/gtts-token/default.nix @@ -0,0 +1,31 @@ +{ lib +, buildPythonPackage +, fetchPypi +, requests +}: + +buildPythonPackage rec { + pname = "gtts-token"; + version = "1.1.3"; + + src = fetchPypi { + pname = "gTTS-token"; + inherit version; + sha256 = "9d6819a85b813f235397ef931ad4b680f03d843c9b2a9e74dd95175a4bc012c5"; + }; + + propagatedBuildInputs = [ + requests + ]; + + # Tests only in github repo, require working internet connection + doCheck = false; + + meta = with lib; { + description = "Calculates a token to run the Google Translate text to speech"; + homepage = https://github.com/boudewijn26/gTTS-token; + license = licenses.mit; + maintainers = [ maintainers.makefu ]; + }; +} + diff --git a/pkgs/development/python-modules/hidapi/default.nix b/pkgs/development/python-modules/hidapi/default.nix index d06cc89ff1f..2d78a45da8c 100644 --- a/pkgs/development/python-modules/hidapi/default.nix +++ b/pkgs/development/python-modules/hidapi/default.nix @@ -1,4 +1,4 @@ -{ stdenv, libusb1, udev, fetchPypi, buildPythonPackage, cython }: +{ stdenv, libusb1, udev, darwin, fetchPypi, buildPythonPackage, cython }: buildPythonPackage rec { pname = "hidapi"; @@ -9,10 +9,13 @@ buildPythonPackage rec { sha256 = "e0be1aa6566979266a8fc845ab0e18613f4918cf2c977fe67050f5dc7e2a9a97"; }; - propagatedBuildInputs = [ libusb1 udev cython ]; + propagatedBuildInputs = + stdenv.lib.optionals stdenv.isLinux [ libusb1 udev ] ++ + stdenv.lib.optionals stdenv.isDarwin [ darwin.IOKit darwin.apple_sdk.frameworks.CoreFoundation ] ++ + [ cython ]; # Fix the USB backend library lookup - postPatch = '' + postPatch = stdenv.lib.optionalString stdenv.isLinux '' libusb=${libusb1.dev}/include/libusb-1.0 test -d $libusb || { echo "ERROR: $libusb doesn't exist, please update/fix this build expression."; exit 1; } sed -i -e "s|/usr/include/libusb-1.0|$libusb|" setup.py diff --git a/pkgs/development/python-modules/imgaug/default.nix b/pkgs/development/python-modules/imgaug/default.nix index d950036ec48..3946c0df6bc 100644 --- a/pkgs/development/python-modules/imgaug/default.nix +++ b/pkgs/development/python-modules/imgaug/default.nix @@ -25,5 +25,6 @@ buildPythonPackage rec { description = "Image augmentation for machine learning experiments"; license = licenses.mit; maintainers = with maintainers; [ cmcdragonkai ]; + broken = true; # opencv-python bindings aren't available yet, and look non-trivial }; } diff --git a/pkgs/development/python-modules/mlrose/default.nix b/pkgs/development/python-modules/mlrose/default.nix new file mode 100644 index 00000000000..f7d43115a1b --- /dev/null +++ b/pkgs/development/python-modules/mlrose/default.nix @@ -0,0 +1,24 @@ +{ stdenv, buildPythonPackage, fetchPypi, scikitlearn }: + +buildPythonPackage rec { + pname = "mlrose"; + version = "1.2.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "0vsvqrf1wbbj8i198rqd87hf8rlq7fmv8mmibv8f9rhj0w8729p5"; + }; + + propagatedBuildInputs = [ scikitlearn ]; + + postPatch = '' + sed -i 's,sklearn,scikit-learn,g' setup.py + ''; + + meta = with stdenv.lib; { + description = "Machine Learning, Randomized Optimization and SEarch"; + homepage = "https://github.com/gkhayes/mlrose"; + license = licenses.bsd3; + maintainers = with maintainers; [ abbradar ]; + }; +} diff --git a/pkgs/development/python-modules/msrest/default.nix b/pkgs/development/python-modules/msrest/default.nix index e44d65e5cbe..77a3e22f75c 100644 --- a/pkgs/development/python-modules/msrest/default.nix +++ b/pkgs/development/python-modules/msrest/default.nix @@ -1,6 +1,6 @@ { lib , buildPythonPackage -, fetchFromGitHub +, fetchPypi , isPy3k , requests , requests_oauthlib @@ -18,16 +18,12 @@ }: buildPythonPackage rec { - version = "0.6.4"; + version = "0.6.7"; pname = "msrest"; - # no tests in PyPI tarball - # see https://github.com/Azure/msrest-for-python/pull/152 - src = fetchFromGitHub { - owner = "Azure"; - repo = "msrest-for-python"; - rev = "v${version}"; - sha256 = "0ilrc06qq0dw4qqzq1dq2vs6nymc39h19w52dwcyawwfalalnjzi"; + src = fetchPypi { + inherit pname version; + sha256 = "07136g3j7zgcvkxki4v6q1p2dm1nzzc28181s8dwic0y4ml8qlq5"; }; propagatedBuildInputs = [ @@ -48,6 +44,6 @@ buildPythonPackage rec { description = "The runtime library 'msrest' for AutoRest generated Python clients."; homepage = "https://azure.microsoft.com/en-us/develop/python/"; license = licenses.mit; - maintainers = with maintainers; [ bendlas ]; + maintainers = with maintainers; [ bendlas jonringer ]; }; } diff --git a/pkgs/development/python-modules/msrestazure/default.nix b/pkgs/development/python-modules/msrestazure/default.nix index a494bbfff07..0ef06cd8fb1 100644 --- a/pkgs/development/python-modules/msrestazure/default.nix +++ b/pkgs/development/python-modules/msrestazure/default.nix @@ -1,25 +1,42 @@ { pkgs +, lib , buildPythonPackage -, fetchPypi +, fetchFromGitHub +, isPy3k , adal , msrest +, mock +, httpretty +, pytest +, pytest-asyncio }: buildPythonPackage rec { - version = "0.6.0"; + version = "0.6.1"; pname = "msrestazure"; - src = fetchPypi { - inherit pname version; - sha256 = "06s04f6nng4na2663kc12a3skiaqb631nscjfwpsrx4lzkf8bccr"; + # Pypi tarball doesnt include tests + # see https://github.com/Azure/msrestazure-for-python/pull/133 + src = fetchFromGitHub { + owner = "Azure"; + repo = "msrestazure-for-python"; + rev = "v${version}"; + sha256 = "09swndz57131b8x57mzibnsr1sv0l80pk62p89q99gsd6mvc389c"; }; propagatedBuildInputs = [ adal msrest ]; + checkInputs = [ httpretty mock pytest ] + ++ lib.optional isPy3k [ pytest-asyncio ]; + + checkPhase = '' + pytest tests/ + ''; + meta = with pkgs.lib; { description = "The runtime library 'msrestazure' for AutoRest generated Python clients."; homepage = "https://azure.microsoft.com/en-us/develop/python/"; license = licenses.mit; - maintainers = with maintainers; [ bendlas ]; + maintainers = with maintainers; [ bendlas jonringer ]; }; } diff --git a/pkgs/development/python-modules/ndg-httpsclient/default.nix b/pkgs/development/python-modules/ndg-httpsclient/default.nix index 780f2c33086..d9c7e41c576 100644 --- a/pkgs/development/python-modules/ndg-httpsclient/default.nix +++ b/pkgs/development/python-modules/ndg-httpsclient/default.nix @@ -5,7 +5,7 @@ }: buildPythonPackage rec { - version = "0.4.2"; + version = "0.5.1"; pname = "ndg-httpsclient"; propagatedBuildInputs = [ pyopenssl ]; @@ -14,7 +14,7 @@ buildPythonPackage rec { owner = "cedadev"; repo = "ndg_httpsclient"; rev = version; - sha256 = "1kk4knv029j0cicfiv23c1rayc1n3f1j3rhl0527gxiv0qv4jw8h"; + sha256 = "0lhsgs4am4xyjssng5p0vkfwqncczj1dpa0vss4lrhzq86mnn5rz"; }; # uses networking diff --git a/pkgs/development/python-modules/progressbar2/default.nix b/pkgs/development/python-modules/progressbar2/default.nix index a8afd97c434..e348ace06b4 100644 --- a/pkgs/development/python-modules/progressbar2/default.nix +++ b/pkgs/development/python-modules/progressbar2/default.nix @@ -16,11 +16,11 @@ buildPythonPackage rec { pname = "progressbar2"; - version = "3.39.3"; + version = "3.42.0"; src = fetchPypi { inherit pname version; - sha256 = "0fgy4327xzn232br4as74r6ddg5v6ycmfwga7xybp4s1w0cm8nwf"; + sha256 = "0a26r022lvz0vvwvhq2rfyl6h0hxbayvgbnajpnc0fc8f4gzr1n0"; }; postPatch = '' diff --git a/pkgs/development/python-modules/rig/default.nix b/pkgs/development/python-modules/rig/default.nix new file mode 100644 index 00000000000..d83afd7885f --- /dev/null +++ b/pkgs/development/python-modules/rig/default.nix @@ -0,0 +1,29 @@ +{ lib, buildPythonPackage, fetchPypi +, isPy34, isPy35, isPy27 +, numpy, pytz, six, enum-compat, sentinel +}: + +buildPythonPackage rec { + pname = "rig"; + version = "2.4.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "5a3896dbde3f291c5dd34769e7329ef5d5e4da34fee53479bd13dc5e5d540b8a"; + }; + + propagatedBuildInputs = [ numpy pytz six sentinel enum-compat ]; + + # This is the list of officially supported versions. Other versions may work + # as well. + disabled = !(isPy35 || isPy34 || isPy27); + + # Test Phase is only supported in development sources. + doCheck = false; + + meta = with lib; { + description = "A collection of tools for developing SpiNNaker applications"; + homepage = "https://github.com/project-rig/rig"; + license = licenses.gpl2; + }; +} diff --git a/pkgs/development/python-modules/sasmodels/default.nix b/pkgs/development/python-modules/sasmodels/default.nix index 116ada8e954..bf0b1e01563 100644 --- a/pkgs/development/python-modules/sasmodels/default.nix +++ b/pkgs/development/python-modules/sasmodels/default.nix @@ -4,13 +4,13 @@ buildPythonPackage rec { pname = "sasmodels"; - version = "0.99"; + version = "1.0.0"; src = fetchFromGitHub { owner = "SasView"; repo = "sasmodels"; rev = "v${version}"; - sha256 = "1lcvn42h29i0mg4i75xn0dbk711q9ycyhm3h95skqy8i61qmjrx6"; + sha256 = "082wnk10axincc4a62zxyr33l7v80yf7iz630y3421b50fwwyd8j"; }; buildInputs = [ opencl-headers ]; diff --git a/pkgs/development/python-modules/sentinel/default.nix b/pkgs/development/python-modules/sentinel/default.nix new file mode 100644 index 00000000000..e8ed047e03f --- /dev/null +++ b/pkgs/development/python-modules/sentinel/default.nix @@ -0,0 +1,17 @@ +{ lib, buildPythonPackage, fetchPypi}: + +buildPythonPackage rec { + pname = "sentinel"; + version = "0.1.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "c00ba2a4f240ea4c5414059a696d6e128730272cb2c631b2eff42e86da1f89b3"; + }; + + meta = with lib; { + description = "Create sentinel and singleton objects"; + homepage = "https://github.com/eddieantonio/sentinel"; + license = licenses.mit; + }; +} diff --git a/pkgs/development/tools/analysis/radare2/default.nix b/pkgs/development/tools/analysis/radare2/default.nix index ae266046265..0c383b5f83f 100644 --- a/pkgs/development/tools/analysis/radare2/default.nix +++ b/pkgs/development/tools/analysis/radare2/default.nix @@ -109,17 +109,17 @@ in { # # DO NOT EDIT! Automatically generated by ./update.py radare2 = generic { - version_commit = "21875"; - gittap = "3.5.1"; - gittip = "4ec482ba2d4f554beeafb3aa47758e970bcab937"; - rev = "3.5.1"; - version = "3.5.1"; - sha256 = "1vpk5brxs5p4vj02vr0mp0wdily03c3shbyrqz6m85nbxdjhkcd8"; + version_commit = "22227"; + gittap = "3.6.0"; + gittip = "ff3bb6e3b2e6a519b4c975d05758c171a5186389"; + rev = "3.6.0"; + version = "3.6.0"; + sha256 = "0vp94qzznqv87vvjbyyj6swkm6gl7byqvb1jv23i8i42zi5n7qmd"; cs_ver = "4.0.1"; cs_sha256 = "0ijwxxk71nr9z91yxw20zfj4bbsbrgvixps5c7cpj163xlzlwba6"; }; r2-for-cutter = generic { - version_commit = "21875"; + version_commit = "22227"; gittap = "3.3.0"; gittip = "5a9127d2599c8ff61d8544be7d4c9384402e94a3"; rev = "5a9127d2599c8ff61d8544be7d4c9384402e94a3"; diff --git a/pkgs/development/tools/build-managers/bazel/default.nix b/pkgs/development/tools/build-managers/bazel/default.nix index f8ed157e693..8edc7fe9a8e 100644 --- a/pkgs/development/tools/build-managers/bazel/default.nix +++ b/pkgs/development/tools/build-managers/bazel/default.nix @@ -2,7 +2,7 @@ # this package (through the fixpoint glass) , bazel , lr, xe, zip, unzip, bash, writeCBin, coreutils -, which, python, gawk, gnused, gnutar, gnugrep, gzip, findutils +, which, gawk, gnused, gnutar, gnugrep, gzip, findutils # updater , python3, writeScript # Apple dependencies @@ -14,38 +14,41 @@ # Always assume all markers valid (don't redownload dependencies). # Also, don't clean up environment variables. , enableNixHacks ? false +, gcc-unwrapped +, autoPatchelfHook }: let - version = "0.26.1"; + version = "0.27.0"; src = fetchurl { url = "https://github.com/bazelbuild/bazel/releases/download/${version}/bazel-${version}-dist.zip"; - sha256 = "000ny51hwnjyizm1md4w8q7m832jhf3c767pgbvg6nc7h67lzsf0"; + sha256 = "0yn662dzgfr8ls4avfl12k5sr4f210bab12wml18bh4sjlxhs263"; }; # Update with `eval $(nix-build -A bazel.updater)`, # then add new dependencies from the dict in ./src-deps.json as required. - srcDeps = + srcDeps = lib.attrsets.attrValues srcDepsSet; + srcDepsSet = let srcs = (builtins.fromJSON (builtins.readFile ./src-deps.json)); - toFetchurl = d: fetchurl { + toFetchurl = d: lib.attrsets.nameValuePair d.name (fetchurl { name = d.name; urls = d.urls; sha256 = d.sha256; - }; - in map toFetchurl [ + }); + in builtins.listToAttrs (map toFetchurl [ srcs.desugar_jdk_libs srcs.io_bazel_skydoc srcs.bazel_skylib srcs.io_bazel_rules_sass (if stdenv.hostPlatform.isDarwin - then srcs.${"java_tools_javac10_darwin-v3.2.zip"} - else srcs.${"java_tools_javac10_linux-v3.2.zip"}) + then srcs.${"java_tools_javac11_darwin-v2.0.zip"} + else srcs.${"java_tools_javac11_linux-v2.0.zip"}) srcs.${"coverage_output_generator-v1.0.zip"} srcs.build_bazel_rules_nodejs - srcs.${"android_tools_pkg-0.2.tar.gz"} - ]; + srcs.${"android_tools_pkg-0.4.tar.gz"} + ]); distDir = runCommand "bazel-deps" {} '' mkdir -p $out @@ -87,6 +90,33 @@ let platforms = lib.platforms.linux ++ lib.platforms.darwin; + # This repository is fetched by bazel at runtime + # however it contains prebuilt java binaries, with wrong interpreter + # and libraries path. + # We prefetch it, patch it, and override it in a global bazelrc. + system = if stdenv.hostPlatform.isDarwin + then "darwin" else "linux"; + + remote_java_tools = stdenv.mkDerivation { + name = "remote_java_tools_${system}"; + + src = srcDepsSet."java_tools_javac11_${system}-v2.0.zip"; + + nativeBuildInputs = [ autoPatchelfHook unzip ]; + buildInputs = [ gcc-unwrapped ]; + + sourceRoot = "."; + + buildPhase = '' + mkdir $out; + ''; + + installPhase = '' + cp -Ra * $out/ + touch $out/WORKSPACE + ''; + }; + in stdenv.mkDerivation rec { name = "bazel-${version}"; @@ -117,6 +147,7 @@ stdenv.mkDerivation rec { runLocal = name: attrs: script: runCommandCC name ({ preferLocalBuild = true; meta.platforms = platforms; + buildInputs = [ python3 ]; } // attrs) script; # bazel wants to extract itself into $install_dir/install every time it runs, @@ -258,8 +289,8 @@ stdenv.mkDerivation rec { # Substitute python's stub shebang to plain python path. (see TODO add pr URL) # See also `postFixup` where python is added to $out/nix-support substituteInPlace src/main/java/com/google/devtools/build/lib/bazel/rules/python/python_stub_template.txt\ - --replace "/usr/bin/env python" "${python}/bin/python" \ - --replace "NIX_STORE_PYTHON_PATH" "${python}/bin/python" \ + --replace "/usr/bin/env python" "${python3}/bin/python" \ + --replace "NIX_STORE_PYTHON_PATH" "${python3}/bin/python" \ # md5sum is part of coreutils sed -i 's|/sbin/md5|md5sum|' \ @@ -275,6 +306,11 @@ stdenv.mkDerivation rec { --replace /bin/true ${coreutils}/bin/true done + # bazel test runner include references to /bin/bash + substituteInPlace tools/build_rules/test_rules.bzl \ + --replace /bin/bash ${customBash}/bin/bash + + # Fixup scripts that generate scripts. Not fixed up by patchShebangs below. substituteInPlace scripts/bootstrap/compile.sh \ --replace /bin/bash ${customBash}/bin/bash @@ -323,19 +359,26 @@ stdenv.mkDerivation rec { mv runfiles.bash.tmp tools/bash/runfiles/runfiles.bash patchShebangs . + + # bazel reads its system bazelrc in /etc + # override this path to a builtin one + substituteInPlace \ + src/main/cpp/option_processor.cc \ + --replace BAZEL_SYSTEM_BAZELRC_PATH "\"$out/etc/bazelrc\"" ''; in lib.optionalString stdenv.hostPlatform.isDarwin darwinPatches + genericPatches; buildInputs = [ buildJdk + python3 ]; # when a command can’t be found in a bazel build, you might also # need to add it to `defaultShellPath`. nativeBuildInputs = [ zip - python + python3 unzip makeWrapper which @@ -375,20 +418,40 @@ stdenv.mkDerivation rec { wrapProgram "$out/bin/bazel" --add-flags --server_javabase="${runJdk}" + # generates the system bazelrc + # warning: the name of the repository depends on the system, hence + # the reference to .name + mkdir $out/etc + echo "build --override_repository=${remote_java_tools.name}=${remote_java_tools}" > $out/etc/bazelrc + # shell completion files mkdir -p $out/share/bash-completion/completions $out/share/zsh/site-functions mv ./bazel_src/output/bazel-complete.bash $out/share/bash-completion/completions/bazel cp ./bazel_src/scripts/zsh_completion/_bazel $out/share/zsh/site-functions/ ''; - # Temporarily disabling for now. A new approach is needed for this derivation as Bazel - # accesses the internet during the tests which fails in a sandbox. - doInstallCheck = false; + doInstallCheck = true; installCheckPhase = '' export TEST_TMPDIR=$(pwd) + tar xf ${srcDepsSet.io_bazel_skydoc} -C $TEST_TMPDIR + mv $(ls | grep skydoc-) io_bazel_skydoc + + tar xf ${srcDepsSet.bazel_skylib} -C $TEST_TMPDIR + mv $(ls | grep bazel-skylib-) bazel_skylib + + tar xf ${srcDepsSet.io_bazel_rules_sass} -C $TEST_TMPDIR + mv $(ls | grep rules_sass-) rules_sass + + unzip ${srcDepsSet.build_bazel_rules_nodejs} -d $TEST_TMPDIR + mv rules_nodejs-0.16.2 build_bazel_rules_nodejs + hello_test () { $out/bin/bazel test \ + --override_repository=io_bazel_skydoc=$TEST_TMPDIR/io_bazel_skydoc \ + --override_repository=bazel_skylib=$TEST_TMPDIR/bazel_skylib \ + --override_repository=io_bazel_rules_sass=$TEST_TMPDIR/rules_sass \ + --override_repository=build_bazel_rules_nodejs=$TEST_TMPDIR/build_bazel_rules_nodejs \ --test_output=errors \ --java_toolchain='${javaToolchain}' \ examples/cpp:hello-success_test \ @@ -424,7 +487,7 @@ stdenv.mkDerivation rec { echo "${customBash} ${defaultShellPath}" >> $out/nix-support/depends # The templates get tar’d up into a .jar, # so nix can’t detect python is needed in the runtime closure - echo "${python}" >> $out/nix-support/depends + echo "${python3}" >> $out/nix-support/depends ''; dontStrip = true; diff --git a/pkgs/development/tools/build-managers/bazel/src-deps.json b/pkgs/development/tools/build-managers/bazel/src-deps.json index 752f0a4c990..a0d07f1a68d 100644 --- a/pkgs/development/tools/build-managers/bazel/src-deps.json +++ b/pkgs/development/tools/build-managers/bazel/src-deps.json @@ -23,11 +23,11 @@ "https://github.com/bazelbuild/rules_sass/archive/8ccf4f1c351928b55d5dddf3672e3667f6978d60.tar.gz" ] }, - "android_tools_pkg-0.2.tar.gz": { - "name": "android_tools_pkg-0.2.tar.gz", - "sha256": "04f85f2dd049e87805511e3babc5cea3f5e72332b1627e34f3a5461cc38e815f", + "android_tools_pkg-0.4.tar.gz": { + "name": "android_tools_pkg-0.4.tar.gz", + "sha256": "331e7706f2bcae8a68057d8ddd3e3f1574bca26c67c65802fc4a8ac6164fa912", "urls": [ - "https://mirror.bazel.build/bazel_android_tools/android_tools_pkg-0.2.tar.gz" + "https://mirror.bazel.build/bazel_android_tools/android_tools_pkg-0.4.tar.gz" ] }, "bazel_j2objc": { @@ -134,25 +134,25 @@ "https://github.com/bazelbuild/skydoc/archive/2d9566b21fbe405acf5f7bf77eda30df72a4744c.tar.gz" ] }, - "java_tools_javac10_darwin-v3.2.zip": { - "name": "java_tools_javac10_darwin-v3.2.zip", - "sha256": "1437327179b4284f7082cee0bdc3328f040e62fc5cc59c32f6824b8c520e2b7b", + "java_tools_javac11_darwin-v2.0.zip": { + "name": "java_tools_javac11_darwin-v2.0.zip", + "sha256": "0ceb0c9ff91256fe33508306bc9cd9e188dcca38df78e70839d426bdaef67a38", "urls": [ - "https://mirror.bazel.build/bazel_java_tools/releases/javac10/v3.2/java_tools_javac10_darwin-v3.2.zip" + "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v2.0/java_tools_javac11_darwin-v2.0.zip" ] }, - "java_tools_javac10_linux-v3.2.zip": { - "name": "java_tools_javac10_linux-v3.2.zip", - "sha256": "b93e7c556b01815afb6c248aa73f06b7ec912805bde8898eedac1e20d08f2e67", + "java_tools_javac11_linux-v2.0.zip": { + "name": "java_tools_javac11_linux-v2.0.zip", + "sha256": "074d624fb34441df369afdfd454e75dba821d5d54932fcfee5ba598d17dc1b99", "urls": [ - "https://mirror.bazel.build/bazel_java_tools/releases/javac10/v3.2/java_tools_javac10_linux-v3.2.zip" + "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v2.0/java_tools_javac11_linux-v2.0.zip" ] }, - "java_tools_javac10_windows-v3.2.zip": { - "name": "java_tools_javac10_windows-v3.2.zip", - "sha256": "86d3cc7fa0dc91ccb8f78ae3af8440fe459177e22062043ee4b83d55e6b7dfb0", + "java_tools_javac11_windows-v2.0.zip": { + "name": "java_tools_javac11_windows-v2.0.zip", + "sha256": "2c3fc0ce7d30d60e26f4b8a36e2eadcf9e6a9d5a51b667d3d13b78db53b24251", "urls": [ - "https://mirror.bazel.build/bazel_java_tools/releases/javac10/v3.2/java_tools_javac10_windows-v3.2.zip" + "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v2.0/java_tools_javac11_windows-v2.0.zip" ] }, "java_tools_langtools_javac10": { @@ -162,6 +162,13 @@ "https://mirror.bazel.build/bazel_java_tools/jdk_langtools/langtools_jdk10.zip" ] }, + "java_tools_langtools_javac11": { + "name": "java_tools_langtools_javac11", + "sha256": "128a63f39d3f828a761f6afcfe3c6115279336a72ea77f60d7b3acf1841c9acb", + "urls": [ + "https://mirror.bazel.build/bazel_java_tools/jdk_langtools/langtools_jdk11.zip" + ] + }, "java_tools_langtools_javac9": { "name": "java_tools_langtools_javac9", "sha256": "3b6bbc47256acf2f61883901e2d4e3f9b292f5fe154a6912b928805de24cb864", diff --git a/pkgs/development/tools/build-managers/shards/default.nix b/pkgs/development/tools/build-managers/shards/default.nix index 02d5adb0c34..00345179131 100644 --- a/pkgs/development/tools/build-managers/shards/default.nix +++ b/pkgs/development/tools/build-managers/shards/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { name = "shards-${version}"; - version = "0.8.1"; + version = "0.9.0"; src = fetchFromGitHub { owner = "crystal-lang"; repo = "shards"; rev = "v${version}"; - sha256 = "1cjn2lafr08yiqzlhyqx14jjjxf1y24i2kk046px07gljpnlgqwk"; + sha256 = "19q0xww4v0h5ln9gz8d8zv0c9ig761ik7gw8y31yxynzgzihwpf4"; }; buildInputs = [ crystal libyaml pcre which ]; diff --git a/pkgs/development/tools/electron/default.nix b/pkgs/development/tools/electron/default.nix index b6f7d0b072b..fca9bc866fa 100644 --- a/pkgs/development/tools/electron/default.nix +++ b/pkgs/development/tools/electron/default.nix @@ -1,4 +1,4 @@ -{ stdenv, libXScrnSaver, makeWrapper, fetchurl, unzip, atomEnv, libuuid, at-spi2-atk }: +{ stdenv, libXScrnSaver, makeWrapper, fetchurl, wrapGAppsHook, gtk3, unzip, atomEnv, libuuid, at-spi2-atk }: let version = "4.1.5"; @@ -35,7 +35,15 @@ let }; }.${stdenv.hostPlatform.system} or throwSystem; - buildInputs = [ unzip makeWrapper ]; + buildInputs = [ gtk3 ]; + + nativeBuildInputs = [ + unzip + makeWrapper + wrapGAppsHook + ]; + + dontWrapGApps = true; # electron is in lib, we need to wrap it manually buildCommand = '' mkdir -p $out/lib/electron $out/bin @@ -50,7 +58,8 @@ let $out/lib/electron/electron wrapProgram $out/lib/electron/electron \ - --prefix LD_PRELOAD : ${stdenv.lib.makeLibraryPath [ libXScrnSaver ]}/libXss.so.1 + --prefix LD_PRELOAD : ${stdenv.lib.makeLibraryPath [ libXScrnSaver ]}/libXss.so.1 \ + "''${gappsWrapperArgs[@]}" ''; }; diff --git a/pkgs/development/tools/lazygit/default.nix b/pkgs/development/tools/lazygit/default.nix index d142078c50f..f91938fb62e 100644 --- a/pkgs/development/tools/lazygit/default.nix +++ b/pkgs/development/tools/lazygit/default.nix @@ -1,27 +1,24 @@ { stdenv, buildGoPackage, fetchFromGitHub }: buildGoPackage rec { - name = "lazygit-${version}"; - version = "0.7.2"; + pname = "lazygit"; + version = "0.8"; goPackagePath = "github.com/jesseduffield/lazygit"; + subPackages = [ "." ]; + src = fetchFromGitHub { owner = "jesseduffield"; - repo = "lazygit"; + repo = pname; rev = "v${version}"; - sha256 = "1b5mzmxw715cx7b0n22hvrpk0dbavzypljc7skwmh8k1nlx935jj"; + sha256 = "0zynw5gr96a59x1qshzhhvld883ndf1plnw6l9dbhmff0wcfv6l1"; }; - postPatch = '' - rm -rf scripts - ''; - meta = with stdenv.lib; { - inherit (src.meta) homepage; description = "Simple terminal UI for git commands"; + homepage = "https://github.com/jesseduffield/lazygit"; license = licenses.mit; - maintainers = with stdenv.lib.maintainers; [ fpletz ]; - platforms = stdenv.lib.platforms.unix; + maintainers = with maintainers; [ fpletz ]; }; } diff --git a/pkgs/development/tools/scry/default.nix b/pkgs/development/tools/scry/default.nix index 03e7c64f549..05f7805a55a 100644 --- a/pkgs/development/tools/scry/default.nix +++ b/pkgs/development/tools/scry/default.nix @@ -1,9 +1,8 @@ -{ stdenv, fetchFromGitHub, crystal, shards, which }: +{ stdenv, lib, fetchFromGitHub, crystal, shards, llvm, which }: stdenv.mkDerivation rec { pname = "scry"; - # 0.7.1 doesn't work with crystal > 0.25 - version = "0.7.1.20180919"; + version = "0.8.0"; src = fetchFromGitHub { owner = "crystal-lang-tools"; @@ -12,7 +11,9 @@ stdenv.mkDerivation rec { sha256 = "1yq7jap3y5pr2yqc6fn6bxshzwv7dz3w97incq7wpcvi7ibb4lcn"; }; - nativeBuildInputs = [ crystal shards which ]; + patches = lib.optional (lib.versionAtLeast crystal.version "0.28") ./fix_for_crystal_0_28_and_above.patch; + + nativeBuildInputs = [ crystal shards llvm which ]; buildPhase = '' runHook preBuild diff --git a/pkgs/development/tools/scry/fix_for_crystal_0_28_and_above.patch b/pkgs/development/tools/scry/fix_for_crystal_0_28_and_above.patch new file mode 100644 index 00000000000..909b790b81a --- /dev/null +++ b/pkgs/development/tools/scry/fix_for_crystal_0_28_and_above.patch @@ -0,0 +1,20 @@ +diff --git a/src/scry/completion_provider.cr b/src/scry/completion_provider.cr +index 29e0d36..f67438c 100644 +--- a/src/scry/completion_provider.cr ++++ b/src/scry/completion_provider.cr +@@ -1,4 +1,5 @@ + require "./log" ++require "compiler/crystal/codegen/target" + require "compiler/crystal/crystal_path" + require "./completion/*" + +diff --git a/src/scry/parse_analyzer.cr b/src/scry/parse_analyzer.cr +index d87eca4..bbe9ed5 100644 +--- a/src/scry/parse_analyzer.cr ++++ b/src/scry/parse_analyzer.cr +@@ -1,4 +1,5 @@ + require "compiler/crystal/syntax" ++require "compiler/crystal/codegen/target" + require "compiler/crystal/crystal_path" + require "./workspace" + require "./text_document" diff --git a/pkgs/development/tools/yj/default.nix b/pkgs/development/tools/yj/default.nix new file mode 100644 index 00000000000..3520bcfc1b1 --- /dev/null +++ b/pkgs/development/tools/yj/default.nix @@ -0,0 +1,28 @@ +# This file was generated by https://github.com/kamilchm/go2nix v1.3.0 +{ stdenv, buildGoPackage, fetchgit, fetchhg, fetchbzr, fetchsvn }: + +buildGoPackage rec { + name = "yj-${version}"; + version = "4.0.0"; + rev = "d9a48607cc5c812e8cf4abccc8ad26f37ab51558"; + + goPackagePath = "github.com/sclevine/yj"; + + src = fetchgit { + inherit rev; + url = "https://github.com/sclevine/yj"; + sha256 = "04irphzs6hp9hvyski29ad29ga1kis3h8bw7jqvmy2c2rkrrsh7x"; + }; + + goDeps = ./deps.nix; + + meta = with stdenv.lib; { + description = ''Convert YAML <=> TOML <=> JSON <=> HCL''; + license = licenses.asl20; + maintainers = with maintainers; [ Profpatsch ]; + platforms = platforms.all; + downloadPage = "https://github.com/sclevine/yj"; + updateWalker = true; + inherit version; + }; +} diff --git a/pkgs/development/tools/yj/deps.nix b/pkgs/development/tools/yj/deps.nix new file mode 100644 index 00000000000..0bfe7f5f5da --- /dev/null +++ b/pkgs/development/tools/yj/deps.nix @@ -0,0 +1,30 @@ +# This file was generated by https://github.com/kamilchm/go2nix v1.3.0 +[ + { + goPackagePath = "github.com/BurntSushi/toml"; + fetch = { + type = "git"; + url = "https://github.com/BurntSushi/toml"; + rev = "3012a1dbe2e4bd1391d42b32f0577cb7bbc7f005"; + sha256 = "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6"; + }; + } + { + goPackagePath = "github.com/hashicorp/hcl"; + fetch = { + type = "git"; + url = "https://github.com/hashicorp/hcl"; + rev = "cf7d376da96d9cecec7c7483cec2735efe54a410"; + sha256 = "0i1zhgpyvvgwkz74k8wd3sygsap1saqv37rw0j5vdpaazmpr1qkb"; + }; + } + { + goPackagePath = "gopkg.in/yaml.v2"; + fetch = { + type = "git"; + url = "https://gopkg.in/yaml.v2"; + rev = "51d6538a90f86fe93ac480b35f37b2be17fef232"; + sha256 = "01wj12jzsdqlnidpyjssmj0r4yavlqy7dwrg7adqd8dicjc4ncsa"; + }; + } +] diff --git a/pkgs/misc/acpilight/default.nix b/pkgs/misc/acpilight/default.nix index e36e4188500..50f4fe87ed8 100644 --- a/pkgs/misc/acpilight/default.nix +++ b/pkgs/misc/acpilight/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchgit, python3, udev, coreutils }: +{ stdenv, fetchgit, python3, coreutils }: stdenv.mkDerivation rec { pname = "acpilight"; @@ -16,9 +16,10 @@ stdenv.mkDerivation rec { postConfigure = '' substituteInPlace 90-backlight.rules --replace /bin ${coreutils}/bin + substituteInPlace Makefile --replace udevadm true ''; - buildInputs = [ pyenv udev ]; + buildInputs = [ pyenv ]; makeFlags = [ "DESTDIR=$(out) prefix=" ]; diff --git a/pkgs/misc/vim-plugins/generated.nix b/pkgs/misc/vim-plugins/generated.nix index 15e0ba325b3..36bc422f1c0 100644 --- a/pkgs/misc/vim-plugins/generated.nix +++ b/pkgs/misc/vim-plugins/generated.nix @@ -248,12 +248,12 @@ let coc-nvim = buildVimPluginFrom2Nix { pname = "coc-nvim"; - version = "2019-06-21"; + version = "2019-06-24"; src = fetchFromGitHub { owner = "neoclide"; repo = "coc.nvim"; - rev = "0cf54ed4f19374a7d6a81528675497ef82214e95"; - sha256 = "1dvwwzhw26rf82k03j1a82axga07nsihlnx6vhj9v9ab2di005i1"; + rev = "5e9594d9da22e4eb840cb102513bebc77bab7300"; + sha256 = "036ig6902vwrqnj052s6631lx4k4m0p5y2238287p8qmxgj7x9d6"; }; }; @@ -425,12 +425,12 @@ let denite-nvim = buildVimPluginFrom2Nix { pname = "denite-nvim"; - version = "2019-06-22"; + version = "2019-06-23"; src = fetchFromGitHub { owner = "Shougo"; repo = "denite.nvim"; - rev = "d1d1ac5a8e2a91fe99c5bb66ca32d6b85f9ac735"; - sha256 = "1np25k6vs7xkd1ljajhiifmxiaz1cpvq0syzhdr21d81dfi1piil"; + rev = "9a5e321ced689771c052f68a8125c0a44ad3389a"; + sha256 = "16l85820490h1l44idk3jsz5xyckyvcyi42a88bw0ms70nnh2569"; }; }; @@ -926,12 +926,12 @@ let jedi-vim = buildVimPluginFrom2Nix { pname = "jedi-vim"; - version = "2019-04-28"; + version = "2019-06-22"; src = fetchFromGitHub { owner = "davidhalter"; repo = "jedi-vim"; - rev = "69aa410afaefbecbcaac2a8254af7bed290d6927"; - sha256 = "0wd29y66k12rndh1zf3wfdz3gqv25dahf0m61rg3zii6dcyk0qsd"; + rev = "016fb7c78e3971ab662796d2abf5f2f4a227e1a1"; + sha256 = "1zzidg4n7ir00q9l4y8g7dqfdzph0f7j7022n032vlfj8yr5mc92"; fetchSubmodules = true; }; }; @@ -1257,12 +1257,12 @@ let neoterm = buildVimPluginFrom2Nix { pname = "neoterm"; - version = "2019-06-21"; + version = "2019-06-22"; src = fetchFromGitHub { owner = "kassio"; repo = "neoterm"; - rev = "86eaa7552859effa21a1688e1aeb9f3db5cad784"; - sha256 = "1fg027lk4w1zj7300jmwqhcwywcsz10wxdq0pi23zqvz274nbl5f"; + rev = "f974a6e3c70f0591b76c196d6e6b2c20649e94c4"; + sha256 = "0wr4s52jfdhxm5zf6i46skrs8hjlf5w3c0wcrxjnszykza9d6whl"; }; }; @@ -1939,12 +1939,12 @@ let typescript-vim = buildVimPluginFrom2Nix { pname = "typescript-vim"; - version = "2019-05-03"; + version = "2019-06-23"; src = fetchFromGitHub { owner = "leafgarland"; repo = "typescript-vim"; - rev = "7704fac2c765aaf975ad4034933bf63113dd4a64"; - sha256 = "1cjqqbaaa2ns1c916skqcgqy9yv7l9b457bfay5gv1p364y35msk"; + rev = "5a319ea5504e18215d155576c78d1b7fb8e22c8f"; + sha256 = "1hz42blc1sshkms9ramdhzwnphqs26p83q8smw5y14blp1zdb628"; }; }; @@ -2269,12 +2269,12 @@ let vim-android = buildVimPluginFrom2Nix { pname = "vim-android"; - version = "2019-06-21"; + version = "2019-06-24"; src = fetchFromGitHub { owner = "hsanson"; repo = "vim-android"; - rev = "d7c9d7297100e4a3a501be185b34048553561bba"; - sha256 = "0ly3vi5w6gx78p3y3xs2mzhiymbw53yfcpr33sb1h7z1zcs6987w"; + rev = "cd91def12383b2f3f4714ff9cc0bef2101d0860b"; + sha256 = "1wv3saj204rnlzm4jvg33b77jqwhwynq31h97mmnmdyc6hg57s65"; }; }; @@ -2511,12 +2511,12 @@ let vim-devicons = buildVimPluginFrom2Nix { pname = "vim-devicons"; - version = "2019-06-21"; + version = "2019-06-23"; src = fetchFromGitHub { owner = "ryanoasis"; repo = "vim-devicons"; - rev = "0468bc8fb183e1e7c1ffacd7b3f8e9c7f813f49d"; - sha256 = "0r063bdffjvkawjy4k2j88f0q9b39qgjcxsn7zzi71vs4c07xmsi"; + rev = "793fda61101f02fed05d30d606671f9b933452fb"; + sha256 = "0x04rh5jy82g7q7im4lvlh1akz4jl3l5swc3xv82saxymzycpgyw"; }; }; @@ -2665,12 +2665,12 @@ let vim-fireplace = buildVimPluginFrom2Nix { pname = "vim-fireplace"; - version = "2019-06-21"; + version = "2019-06-23"; src = fetchFromGitHub { owner = "tpope"; repo = "vim-fireplace"; - rev = "41698572eedf1f18027353d5f67b92b851cb5d14"; - sha256 = "1sdiqkqq77jqcbqhm93kjba8r30n68jvd93zxrszk891q1i666ss"; + rev = "e78995b7fc93357c86f66d78b65803e473b8e356"; + sha256 = "05wbnpqpd65vyvaq5maxaq06dcc5k6z5hc7hbk82slm52avk92lm"; }; }; @@ -3183,12 +3183,12 @@ let vim-lsc = buildVimPluginFrom2Nix { pname = "vim-lsc"; - version = "2019-06-11"; + version = "2019-06-23"; src = fetchFromGitHub { owner = "natebosch"; repo = "vim-lsc"; - rev = "d4d34070c74261d749a74c1990c7e6ecf7b500bb"; - sha256 = "0gba7lhzd8l0mdkkgw2ahwq3n0x2kz3bghqx06ah77w642kq4sdr"; + rev = "57f6e1aaed6a89054335b71aac89be9a607faad3"; + sha256 = "04mfxpszngmqw052h3yb9iq0xj95fg38jr8x7jqxdpgr3i5c5z9r"; }; }; @@ -4118,12 +4118,12 @@ let vimtex = buildVimPluginFrom2Nix { pname = "vimtex"; - version = "2019-06-17"; + version = "2019-06-22"; src = fetchFromGitHub { owner = "lervag"; repo = "vimtex"; - rev = "c7cbc9d662c0520e769faddb2d952f4992c83049"; - sha256 = "05kb1wlkbajqfw93524f86b5v2437zg20vxa4f5gjdc70la0gw22"; + rev = "4240669fbb31f9bab15abe5e41a8d5a11f3d4ccb"; + sha256 = "1yldk7pms48d6f82q547r2vy6xb8fa0c2s6f8mp0riwiypiaqj6l"; }; }; diff --git a/pkgs/misc/vim-plugins/overrides.nix b/pkgs/misc/vim-plugins/overrides.nix index 5ee03077d71..0aa0fde972d 100644 --- a/pkgs/misc/vim-plugins/overrides.nix +++ b/pkgs/misc/vim-plugins/overrides.nix @@ -111,10 +111,10 @@ self: super: { coc-nvim = let - version = "0.0.69"; + version = "0.0.71"; index_js = fetchzip { url = "https://github.com/neoclide/coc.nvim/releases/download/v${version}/coc.tar.gz"; - sha256 = "1qnznpb39bbhimzbhsvpsdkg87dv3yxzs1vr3kaikl3kpakik9p8"; + sha256 = "1bhkyrmrpriizg3f76x4vp94f2bfwcf7a6cp3jvv7vj4zaqhsjzz"; }; in super.coc-nvim.overrideAttrs(old: { # you still need to enable the node js provider in your nvim config diff --git a/pkgs/os-specific/darwin/apple-sdk/default.nix b/pkgs/os-specific/darwin/apple-sdk/default.nix index 7c3e3e63967..2e3ae22e0b2 100644 --- a/pkgs/os-specific/darwin/apple-sdk/default.nix +++ b/pkgs/os-specific/darwin/apple-sdk/default.nix @@ -211,6 +211,13 @@ in rec { --replace "QuartzCore/../Frameworks/CoreImage.framework/Headers" "CoreImage" ''; }); + + MetalKit = stdenv.lib.overrideDerivation super.MetalKit (drv: { + installPhase = drv.installPhase + '' + mkdir -p $out/include/simd + cp ${lib.getDev sdk}/include/simd/*.h $out/include/simd/ + ''; + }); }; bareFrameworks = stdenv.lib.mapAttrs framework (import ./frameworks.nix { diff --git a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix index e55abf9dfb6..03c800b8dae 100644 --- a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix +++ b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix @@ -74,6 +74,8 @@ with frameworks; with libs; { MediaAccessibility = [ CF CoreGraphics CoreText QuartzCore ]; MediaToolbox = [ AudioToolbox AudioUnit CF CoreMedia ]; Metal = []; + MetalKit = [ ModelIO Metal ]; + ModelIO = [ ]; NetFS = [ CF ]; OSAKit = [ Carbon ]; OpenAL = []; diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix index e731b6a13ca..855f854b111 100644 --- a/pkgs/os-specific/linux/kernel/common-config.nix +++ b/pkgs/os-specific/linux/kernel/common-config.nix @@ -710,6 +710,9 @@ let # Bump the maximum number of CPUs to support systems like EC2 x1.* # instances and Xeon Phi. NR_CPUS = freeform "384"; + } // optionalAttrs (stdenv.hostPlatform.system == "aarch64-linux") { + # Enables support for the Allwinner Display Engine 2.0 + SUN8I_DE2_CCU = whenAtLeast "4.13" yes; }; }; in diff --git a/pkgs/os-specific/linux/kernel/linux-5.0.nix b/pkgs/os-specific/linux/kernel/linux-5.0.nix deleted file mode 100644 index f195b1e15c8..00000000000 --- a/pkgs/os-specific/linux/kernel/linux-5.0.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ stdenv, buildPackages, fetchurl, perl, buildLinux, modDirVersionArg ? null, ... } @ args: - -with stdenv.lib; - -buildLinux (args // rec { - version = "5.0.21"; - - # modDirVersion needs to be x.y.z, will automatically add .0 if needed - modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${version}.0"))) else modDirVersionArg; - - # branchVersion needs to be x.y - extraMeta.branch = concatStrings (intersperse "." (take 2 (splitString "." version))); - - src = fetchurl { - url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; - sha256 = "1my2m9hvnvdrvzcg0fgqgaga59y2cd5zlpv7xrfj2nn98sjhglwq"; - }; -} // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-mptcp-93.nix b/pkgs/os-specific/linux/kernel/linux-mptcp-93.nix deleted file mode 100644 index 8be59fbea90..00000000000 --- a/pkgs/os-specific/linux/kernel/linux-mptcp-93.nix +++ /dev/null @@ -1,47 +0,0 @@ -{ stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, ... } @ args: - -buildLinux (rec { - mptcpVersion = "0.93"; - modDirVersion = "4.9.60"; - version = "${modDirVersion}-mptcp_v${mptcpVersion}"; - - extraMeta = { - branch = "4.4"; - maintainers = with stdenv.lib.maintainers; [ teto layus ]; - }; - - src = fetchFromGitHub { - owner = "multipath-tcp"; - repo = "mptcp"; - rev = "v${mptcpVersion}"; - sha256 = "1irlppzvcmckrazs2c4vg6y8ji31552izc3wqabf401v57jvxcys"; - }; - - extraConfig = '' - IPV6 y - MPTCP y - IP_MULTIPLE_TABLES y - - # Enable advanced path-managers... - MPTCP_PM_ADVANCED y - MPTCP_FULLMESH y - MPTCP_NDIFFPORTS y - # ... but use none by default. - # The default is safer if source policy routing is not setup. - DEFAULT_DUMMY y - DEFAULT_MPTCP_PM default - - # MPTCP scheduler selection. - # Disabled as the only non-default is the useless round-robin. - MPTCP_SCHED_ADVANCED n - DEFAULT_MPTCP_SCHED default - - # Smarter TCP congestion controllers - TCP_CONG_LIA m - TCP_CONG_OLIA m - TCP_CONG_WVEGAS m - TCP_CONG_BALIA m - - '' + (args.extraConfig or ""); -} // args) - diff --git a/pkgs/os-specific/linux/kernel/linux-mptcp-94.nix b/pkgs/os-specific/linux/kernel/linux-mptcp-94.nix new file mode 100644 index 00000000000..e53c3ceb5c4 --- /dev/null +++ b/pkgs/os-specific/linux/kernel/linux-mptcp-94.nix @@ -0,0 +1,26 @@ +{ stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, structuredExtraConfig ? {}, ... } @ args: +let + mptcpVersion = "0.94.6"; + modDirVersion = "4.14.127"; +in +buildLinux ({ + version = "${modDirVersion}-mptcp_v${mptcpVersion}"; + inherit modDirVersion; + + extraMeta = { + branch = "4.4"; + maintainers = with stdenv.lib.maintainers; [ teto layus ]; + }; + + src = fetchFromGitHub { + owner = "multipath-tcp"; + repo = "mptcp"; + rev = "v${mptcpVersion}"; + sha256 = "071cx9205wpzhi5gc2da79w2abs3czd60jg0xml7j1szc5wl4yfn"; + }; + + structuredExtraConfig = stdenv.lib.mkMerge [ + (import ./mptcp-config.nix { inherit stdenv; }) + structuredExtraConfig + ]; +} // args) diff --git a/pkgs/os-specific/linux/kernel/linux-mptcp-95.nix b/pkgs/os-specific/linux/kernel/linux-mptcp-95.nix new file mode 100644 index 00000000000..ad933ff63a7 --- /dev/null +++ b/pkgs/os-specific/linux/kernel/linux-mptcp-95.nix @@ -0,0 +1,27 @@ +{ stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, structuredExtraConfig ? {}, ... } @ args: +let + mptcpVersion = "0.95"; + modDirVersion = "4.19.55"; +in +buildLinux ({ + version = "${modDirVersion}-mptcp_v${mptcpVersion}"; + inherit modDirVersion; + + extraMeta = { + branch = "4.19"; + maintainers = with stdenv.lib.maintainers; [ teto layus ]; + }; + + src = fetchFromGitHub { + owner = "multipath-tcp"; + repo = "mptcp"; + rev = "v${mptcpVersion}"; + sha256 = "04a66iq5vsiz8mkpszfxmqknz7y4w3lsckrcz6q1syjpk0pdyiyw"; + }; + + structuredExtraConfig = stdenv.lib.mkMerge [ + (import ./mptcp-config.nix { inherit stdenv; }) + structuredExtraConfig + ]; + +} // args) diff --git a/pkgs/os-specific/linux/kernel/linux-mptcp.nix b/pkgs/os-specific/linux/kernel/linux-mptcp.nix deleted file mode 100644 index 44499f39cc1..00000000000 --- a/pkgs/os-specific/linux/kernel/linux-mptcp.nix +++ /dev/null @@ -1,49 +0,0 @@ -{ stdenv, buildPackages, fetchFromGitHub, perl, buildLinux, structuredExtraConfig ? {}, ... } @ args: -let - mptcpVersion = "0.94.4"; - modDirVersion = "4.14.110"; -in -buildLinux ({ - version = "${modDirVersion}-mptcp_v${mptcpVersion}"; - inherit modDirVersion; - - extraMeta = { - branch = "4.4"; - maintainers = with stdenv.lib.maintainers; [ teto layus ]; - }; - - src = fetchFromGitHub { - owner = "multipath-tcp"; - repo = "mptcp"; - rev = "v${mptcpVersion}"; - sha256 = "1ng6p1djhm3m5g44yyq7gpqqbzsnhm9rimsafp5g4dx8cm27a70f"; - }; - - structuredExtraConfig = with import ../../../../lib/kernel.nix { inherit (stdenv) lib; version = null; }; - stdenv.lib.mkMerge [ { - IPV6 = yes; - MPTCP = yes; - IP_MULTIPLE_TABLES = yes; - - # Enable advanced path-managers... - MPTCP_PM_ADVANCED = yes; - MPTCP_FULLMESH = yes; - MPTCP_NDIFFPORTS = yes; - # ... but use none by default. - # The default is safer if source policy routing is not setup. - DEFAULT_DUMMY = yes; - DEFAULT_MPTCP_PM.freeform = "default"; - - # MPTCP scheduler selection. - MPTCP_SCHED_ADVANCED = yes; - DEFAULT_MPTCP_SCHED.freeform = "default"; - - # Smarter TCP congestion controllers - TCP_CONG_LIA = module; - TCP_CONG_OLIA = module; - TCP_CONG_WVEGAS = module; - TCP_CONG_BALIA = module; - } - structuredExtraConfig - ]; -} // args) diff --git a/pkgs/os-specific/linux/kernel/mptcp-config.nix b/pkgs/os-specific/linux/kernel/mptcp-config.nix new file mode 100644 index 00000000000..e5e3ee283ff --- /dev/null +++ b/pkgs/os-specific/linux/kernel/mptcp-config.nix @@ -0,0 +1,28 @@ +{ stdenv }: +with import ../../../../lib/kernel.nix { inherit (stdenv) lib; version = null; }; +{ + # DRM_AMDGPU = yes; + + IPV6 = yes; + MPTCP = yes; + IP_MULTIPLE_TABLES = yes; + + # Enable advanced path-managers... + MPTCP_PM_ADVANCED = yes; + MPTCP_FULLMESH = yes; + MPTCP_NDIFFPORTS = yes; + # ... but use none by default. + # The default is safer if source policy routing is not setup. + DEFAULT_DUMMY = yes; + DEFAULT_MPTCP_PM.freeform = "default"; + + # MPTCP scheduler selection. + MPTCP_SCHED_ADVANCED = yes; + DEFAULT_MPTCP_SCHED.freeform = "default"; + + # Smarter TCP congestion controllers + TCP_CONG_LIA = module; + TCP_CONG_OLIA = module; + TCP_CONG_WVEGAS = module; + TCP_CONG_BALIA = module; +} diff --git a/pkgs/servers/documize-community/default.nix b/pkgs/servers/documize-community/default.nix index ccb7d4b7e44..0f43de3b43e 100644 --- a/pkgs/servers/documize-community/default.nix +++ b/pkgs/servers/documize-community/default.nix @@ -2,13 +2,13 @@ buildGoPackage rec { pname = "documize-community"; - version = "2.5.1"; + version = "3.0.0"; src = fetchFromGitHub { owner = "documize"; repo = "community"; rev = "v${version}"; - sha256 = "1y6x5la0q1cbapayw5vbqk4i3bhj9i9008cmj22wx6fp0x7vshxi"; + sha256 = "01q7yx35gp41lnm9zbwq0maf7wiv86mi6fww3hl1cddmgdlksss9"; }; goPackagePath = "github.com/documize/community"; diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index 09c1ec3592d..8a2c8d0e719 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -259,7 +259,7 @@ "google_domains" = ps: with ps; [ ]; "google_maps" = ps: with ps; [ ]; "google_pubsub" = ps: with ps; [ google_cloud_pubsub ]; - "google_translate" = ps: with ps; [ ]; + "google_translate" = ps: with ps; [ gtts-token ]; "google_travel_time" = ps: with ps; [ ]; "google_wifi" = ps: with ps; [ ]; "googlehome" = ps: with ps; [ ]; diff --git a/pkgs/servers/http/tomcat/default.nix b/pkgs/servers/http/tomcat/default.nix index 40d865e2f56..fded6bdfafb 100644 --- a/pkgs/servers/http/tomcat/default.nix +++ b/pkgs/servers/http/tomcat/default.nix @@ -44,13 +44,13 @@ in { tomcat85 = common { versionMajor = "8"; - versionMinor = "5.35"; - sha256 = "0n6agr2wn8m5mv0asz73hy2194n9rk7mh5wsp2pz7aq0andbhh5s"; + versionMinor = "5.42"; + sha256 = "1d90abwwvl0ghr0g0drk48j37wr2zgw74vws9z2rshyzrwgbvgp3"; }; tomcat9 = common { versionMajor = "9"; - versionMinor = "0.13"; - sha256 = "1rsrnmkkrbzrj56jk2wh8hrr79kfkk3fz1j0abk3midn1jnbgxxq"; + versionMinor = "0.21"; + sha256 = "0nsylbqvky4pf3wpsx3a29b85lvwk91ay37mljk9636qffjj1vjh"; }; } diff --git a/pkgs/servers/mqtt/mosquitto/default.nix b/pkgs/servers/mqtt/mosquitto/default.nix index 11d5b92071b..04daa2f4a85 100644 --- a/pkgs/servers/mqtt/mosquitto/default.nix +++ b/pkgs/servers/mqtt/mosquitto/default.nix @@ -4,13 +4,13 @@ stdenv.mkDerivation rec { name = "mosquitto-${version}"; - version = "1.6.2"; + version = "1.6.3"; src = fetchFromGitHub { owner = "eclipse"; repo = "mosquitto"; rev = "v${version}"; - sha256 = "1n0rr4564a80b1km72myqa8qx4ak2jk55irx7d1vlgihgp88j3wm"; + sha256 = "1xvfcqi6pa5pdnqd88gz9qx6kl2q47xp7l3q5wwgj0l9y9mlxp99"; }; postPatch = '' diff --git a/pkgs/servers/samba/4.x.nix b/pkgs/servers/samba/4.x.nix index dbda33a1f19..4a6ef57bba7 100644 --- a/pkgs/servers/samba/4.x.nix +++ b/pkgs/servers/samba/4.x.nix @@ -20,11 +20,11 @@ with lib; stdenv.mkDerivation rec { name = "samba-${version}"; - version = "4.10.4"; + version = "4.10.5"; src = fetchurl { url = "mirror://samba/pub/samba/stable/${name}.tar.gz"; - sha256 = "0xhfbh42dihccc85ffx243lyhf3jnphhi6xfcsr3a6mhsm7w1p26"; + sha256 = "0xb3mz38hcayqxchk0ws9mxn10vswsn97jbxl4gcwi4cbrnjc43c"; }; outputs = [ "out" "dev" "man" ]; diff --git a/pkgs/tools/archivers/unp/default.nix b/pkgs/tools/archivers/unp/default.nix index 79c8e2f20ec..6880a49b4db 100644 --- a/pkgs/tools/archivers/unp/default.nix +++ b/pkgs/tools/archivers/unp/default.nix @@ -1,11 +1,16 @@ -{ stdenv, lib, fetchurl, makeWrapper, perl, unrar, unzip, gzip, file, extraBackends ? [] }: +{ stdenv, lib, fetchurl, makeWrapper, perl +, unzip, gzip, file +# extractors which are added to unp’s PATH +, extraBackends ? [] +}: -stdenv.mkDerivation rec { +let + runtime_bins = [ file unzip gzip ] ++ extraBackends; + +in stdenv.mkDerivation rec { name = "unp-${version}"; version = "2.0-pre7"; - - runtime_bins = [ file unrar unzip gzip ] ++ extraBackends; - buildInputs = [ perl makeWrapper ] ++ runtime_bins; + buildInputs = [ perl makeWrapper ]; src = fetchurl { # url = "http://http.debian.net/debian/pool/main/u/unp/unp_2.0~pre7+nmu1.tar.bz2"; @@ -18,10 +23,10 @@ stdenv.mkDerivation rec { buildPhase = "true"; installPhase = '' mkdir -p $out/bin - mkdir -p $out/share/man - cp unp $out/bin/ - cp ucat $out/bin/ - cp debian/unp.1 $out/share/man + mkdir -p $out/share/man/man1 + install ./unp $out/bin/unp + install ./ucat $out/bin/ucat + cp debian/unp.1 $out/share/man/man1 wrapProgram $out/bin/unp \ --prefix PATH : ${lib.makeBinPath runtime_bins} diff --git a/pkgs/tools/misc/skim/default.nix b/pkgs/tools/misc/skim/default.nix index fe1061b446c..5072bfb6934 100644 --- a/pkgs/tools/misc/skim/default.nix +++ b/pkgs/tools/misc/skim/default.nix @@ -2,18 +2,18 @@ rustPlatform.buildRustPackage rec { pname = "skim"; - version = "0.6.4"; + version = "0.6.8"; src = fetchFromGitHub { owner = "lotabout"; repo = pname; rev = "v${version}"; - sha256 = "0ywrqfxxqv7mpm4szw8n3hcvc4jn9a490j9s7qh3vzqgrsx2sxk3"; + sha256 = "00sx1pyj0a9hkv9b8g3iykkw303vnqziddp2600nvfr8x8pd01gi"; }; outputs = [ "out" "vim" ]; - cargoSha256 = "1rwb0yvqpxp1pikdw6345n035krx0qcx4f5di89841fhr123zv0w"; + cargoSha256 = "1kqawnyddv4pjyiaizw3ydqk6hl4ng6xfw9ixy58rb1vk591kq8w"; patchPhase = '' sed -i -e "s|expand(':h:h')|'$out'|" plugin/skim.vim diff --git a/pkgs/tools/package-management/cargo-license/add-Cargo.lock.patch b/pkgs/tools/package-management/cargo-license/add-Cargo.lock.patch new file mode 100644 index 00000000000..7137f8b7fb1 --- /dev/null +++ b/pkgs/tools/package-management/cargo-license/add-Cargo.lock.patch @@ -0,0 +1,297 @@ +commit ed7cd525d00a0f8517894cfec6e3e277f630b15f +Author: Bas van Dijk +Date: Mon Jun 24 00:13:13 2019 +0200 + + Add Cargo.lock + +diff --git a/Cargo.lock b/Cargo.lock +new file mode 100644 +index 0000000..b552c16 +--- /dev/null ++++ b/Cargo.lock +@@ -0,0 +1,285 @@ ++# This file is automatically @generated by Cargo. ++# It is not intended for manual editing. ++[[package]] ++name = "ansi_term" ++version = "0.9.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++ ++[[package]] ++name = "autocfg" ++version = "0.1.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++ ++[[package]] ++name = "backtrace" ++version = "0.3.31" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++dependencies = [ ++ "autocfg 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", ++ "backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)", ++ "cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", ++ "libc 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)", ++ "rustc-demangle 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "backtrace-sys" ++version = "0.1.28" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++dependencies = [ ++ "cc 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)", ++ "libc 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "cargo-license" ++version = "0.2.0" ++dependencies = [ ++ "ansi_term 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", ++ "cargo_metadata 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", ++ "csv 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)", ++ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ++ "getopts 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)", ++ "serde 1.0.93 (registry+https://github.com/rust-lang/crates.io-index)", ++ "serde_derive 1.0.93 (registry+https://github.com/rust-lang/crates.io-index)", ++ "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", ++ "toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "cargo_metadata" ++version = "0.6.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++dependencies = [ ++ "error-chain 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)", ++ "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", ++ "serde 1.0.93 (registry+https://github.com/rust-lang/crates.io-index)", ++ "serde_derive 1.0.93 (registry+https://github.com/rust-lang/crates.io-index)", ++ "serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "cc" ++version = "1.0.37" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++ ++[[package]] ++name = "cfg-if" ++version = "0.1.9" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++ ++[[package]] ++name = "csv" ++version = "1.0.7" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++dependencies = [ ++ "csv-core 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ++ "itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)", ++ "ryu 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", ++ "serde 1.0.93 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "csv-core" ++version = "0.1.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++dependencies = [ ++ "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "error-chain" ++version = "0.12.1" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++dependencies = [ ++ "backtrace 0.3.31 (registry+https://github.com/rust-lang/crates.io-index)", ++ "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "failure" ++version = "0.1.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++dependencies = [ ++ "backtrace 0.3.31 (registry+https://github.com/rust-lang/crates.io-index)", ++ "failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "failure_derive" ++version = "0.1.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++dependencies = [ ++ "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", ++ "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", ++ "syn 0.15.38 (registry+https://github.com/rust-lang/crates.io-index)", ++ "synstructure 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "getopts" ++version = "0.2.19" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++dependencies = [ ++ "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "itoa" ++version = "0.4.4" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++ ++[[package]] ++name = "libc" ++version = "0.2.58" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++ ++[[package]] ++name = "memchr" ++version = "2.2.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++dependencies = [ ++ "libc 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "proc-macro2" ++version = "0.4.30" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++dependencies = [ ++ "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "quote" ++version = "0.6.12" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++dependencies = [ ++ "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "rustc-demangle" ++version = "0.1.15" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++ ++[[package]] ++name = "ryu" ++version = "0.2.8" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++ ++[[package]] ++name = "semver" ++version = "0.9.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++dependencies = [ ++ "semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", ++ "serde 1.0.93 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "semver-parser" ++version = "0.7.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++ ++[[package]] ++name = "serde" ++version = "1.0.93" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++ ++[[package]] ++name = "serde_derive" ++version = "1.0.93" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++dependencies = [ ++ "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", ++ "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", ++ "syn 0.15.38 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "serde_json" ++version = "1.0.39" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++dependencies = [ ++ "itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)", ++ "ryu 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", ++ "serde 1.0.93 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "syn" ++version = "0.15.38" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++dependencies = [ ++ "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", ++ "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", ++ "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "synstructure" ++version = "0.10.2" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++dependencies = [ ++ "proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)", ++ "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)", ++ "syn 0.15.38 (registry+https://github.com/rust-lang/crates.io-index)", ++ "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "toml" ++version = "0.4.10" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++dependencies = [ ++ "serde 1.0.93 (registry+https://github.com/rust-lang/crates.io-index)", ++] ++ ++[[package]] ++name = "unicode-width" ++version = "0.1.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++ ++[[package]] ++name = "unicode-xid" ++version = "0.1.0" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++ ++[[package]] ++name = "version_check" ++version = "0.1.5" ++source = "registry+https://github.com/rust-lang/crates.io-index" ++ ++[metadata] ++"checksum ansi_term 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "23ac7c30002a5accbf7e8987d0632fa6de155b7c3d39d0067317a391e00a2ef6" ++"checksum autocfg 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "0e49efa51329a5fd37e7c79db4621af617cd4e3e5bc224939808d076077077bf" ++"checksum backtrace 0.3.31 (registry+https://github.com/rust-lang/crates.io-index)" = "e0f77aa27f55a4beb477ff6bc4d9bf72f90eb422b19c1d8e5a644b8aeb674d66" ++"checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6" ++"checksum cargo_metadata 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "e5d1b4d380e1bab994591a24c2bdd1b054f64b60bef483a8c598c7c345bc3bbe" ++"checksum cc 1.0.37 (registry+https://github.com/rust-lang/crates.io-index)" = "39f75544d7bbaf57560d2168f28fd649ff9c76153874db88bdbdfd839b1a7e7d" ++"checksum cfg-if 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "b486ce3ccf7ffd79fdeb678eac06a9e6c09fc88d33836340becb8fffe87c5e33" ++"checksum csv 1.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "9044e25afb0924b5a5fc5511689b0918629e85d68ea591e5e87fbf1e85ea1b3b" ++"checksum csv-core 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fa5cdef62f37e6ffe7d1f07a381bc0db32b7a3ff1cac0de56cb0d81e71f53d65" ++"checksum error-chain 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3ab49e9dcb602294bc42f9a7dfc9bc6e936fca4418ea300dbfb84fe16de0b7d9" ++"checksum failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "795bd83d3abeb9220f257e597aa0080a508b27533824adf336529648f6abf7e2" ++"checksum failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ea1063915fd7ef4309e222a5a07cf9c319fb9c7836b1f89b85458672dbb127e1" ++"checksum getopts 0.2.19 (registry+https://github.com/rust-lang/crates.io-index)" = "72327b15c228bfe31f1390f93dd5e9279587f0463836393c9df719ce62a3e450" ++"checksum itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "501266b7edd0174f8530248f87f99c88fbe60ca4ef3dd486835b8d8d53136f7f" ++"checksum libc 0.2.58 (registry+https://github.com/rust-lang/crates.io-index)" = "6281b86796ba5e4366000be6e9e18bf35580adf9e63fbe2294aadb587613a319" ++"checksum memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2efc7bc57c883d4a4d6e3246905283d8dae951bb3bd32f49d6ef297f546e1c39" ++"checksum proc-macro2 0.4.30 (registry+https://github.com/rust-lang/crates.io-index)" = "cf3d2011ab5c909338f7887f4fc896d35932e29146c12c8d01da6b22a80ba759" ++"checksum quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)" = "faf4799c5d274f3868a4aae320a0a182cbd2baee377b378f080e16a23e9d80db" ++"checksum rustc-demangle 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "a7f4dccf6f4891ebcc0c39f9b6eb1a83b9bf5d747cb439ec6fba4f3b977038af" ++"checksum ryu 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "b96a9549dc8d48f2c283938303c4b5a77aa29bfbc5b54b084fb1630408899a8f" ++"checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" ++"checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" ++"checksum serde 1.0.93 (registry+https://github.com/rust-lang/crates.io-index)" = "960e29cf7004b3b6e65fc5002981400eb3ccc017a08a2406940823e58e7179a9" ++"checksum serde_derive 1.0.93 (registry+https://github.com/rust-lang/crates.io-index)" = "c4cce6663696bd38272e90bf34a0267e1226156c33f52d3f3915a2dd5d802085" ++"checksum serde_json 1.0.39 (registry+https://github.com/rust-lang/crates.io-index)" = "5a23aa71d4a4d43fdbfaac00eff68ba8a06a51759a89ac3304323e800c4dd40d" ++"checksum syn 0.15.38 (registry+https://github.com/rust-lang/crates.io-index)" = "37ea458a750f59ab679b47fef9b6722c586c5742f4cfe18a120bbc807e5e01fd" ++"checksum synstructure 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "02353edf96d6e4dc81aea2d8490a7e9db177bf8acb0e951c24940bf866cb313f" ++"checksum toml 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "758664fc71a3a69038656bee8b6be6477d2a6c315a6b81f7081f591bffa4111f" ++"checksum unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "882386231c45df4700b275c7ff55b6f3698780a650026380e72dabe76fa46526" ++"checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" ++"checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd" diff --git a/pkgs/tools/package-management/cargo-license/default.nix b/pkgs/tools/package-management/cargo-license/default.nix new file mode 100644 index 00000000000..1230b90c270 --- /dev/null +++ b/pkgs/tools/package-management/cargo-license/default.nix @@ -0,0 +1,23 @@ +{ lib, rustPlatform, fetchFromGitHub }: +rustPlatform.buildRustPackage rec { + name = "cargo-license-${version}"; + version = "0.2.0"; + + src = fetchFromGitHub { + owner = "onur"; + repo = "cargo-license"; + rev = "v${version}"; + sha256 = "0xxgl9d695ncrxz29125wag285dwxpwc3fym0ixgj5fqbnkbx75g"; + }; + + cargoPatches = [ ./add-Cargo.lock.patch ]; + + cargoSha256 = "0jc84v8fxzzyfkcnfr9vrdblw5vdk54nzpch5lcarzfsarncqxw7"; + + meta = with lib; { + description = "Cargo subcommand to see license of dependencies"; + license = with licenses; [ mit ]; + maintainers = with maintainers; [ basvandijk ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/tools/package-management/dpkg/default.nix b/pkgs/tools/package-management/dpkg/default.nix index 40c9fcc769b..f13256d33bf 100644 --- a/pkgs/tools/package-management/dpkg/default.nix +++ b/pkgs/tools/package-management/dpkg/default.nix @@ -50,7 +50,7 @@ stdenv.mkDerivation rec { ''; buildInputs = [ perl zlib bzip2 xz ]; - nativeBuildInputs = [ makeWrapper ]; + nativeBuildInputs = [ makeWrapper perl ]; postInstall = '' diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 76961ffa597..2857cb33790 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -677,7 +677,7 @@ in apt = callPackage ../tools/package-management/apt { # include/c++/6.4.0/cstdlib:75:25: fatal error: stdlib.h: No such file or directory - stdenv = overrideCC stdenv gcc5; + stdenv = gcc5Stdenv; }; apt-dater = callPackage ../tools/package-management/apt-dater { }; @@ -1693,6 +1693,8 @@ in massren = callPackage ../tools/misc/massren { }; + megasync = callPackage ../applications/misc/megasync { }; + meritous = callPackage ../games/meritous { }; opendune = callPackage ../games/opendune { }; @@ -2811,7 +2813,7 @@ in exa = callPackage ../tools/misc/exa { }; exempi = callPackage ../development/libraries/exempi { - stdenv = if stdenv.isi686 then overrideCC stdenv gcc6 else stdenv; + stdenv = if stdenv.isi686 then gcc6Stdenv else stdenv; }; execline = skawarePackages.execline; @@ -3087,7 +3089,7 @@ in fusuma = callPackage ../tools/inputmethods/fusuma {}; fdbPackages = dontRecurseIntoAttrs (callPackage ../servers/foundationdb { - stdenv49 = overrideCC stdenv gcc49; + stdenv49 = gcc49Stdenv; }); inherit (fdbPackages) @@ -3256,7 +3258,7 @@ in gnash = callPackage ../misc/gnash { }; gnaural = callPackage ../applications/audio/gnaural { - stdenv = overrideCC stdenv gcc49; + stdenv = gcc49Stdenv; }; gnirehtet = callPackage ../tools/networking/gnirehtet { }; @@ -3419,7 +3421,7 @@ in grpcurl = callPackage ../tools/networking/grpcurl { }; grub = pkgsi686Linux.callPackage ../tools/misc/grub ({ - stdenv = overrideCC stdenv pkgsi686Linux.gcc6; + stdenv = overrideCC stdenv buildPackages.pkgsi686Linux.gcc6; } // (config.grub or {})); trustedGrub = pkgsi686Linux.callPackage ../tools/misc/grub/trusted.nix { }; @@ -6391,7 +6393,7 @@ in udptunnel = callPackage ../tools/networking/udptunnel { }; ufraw = callPackage ../applications/graphics/ufraw { - stdenv = overrideCC stdenv gcc6; # doesn't build with gcc7 + stdenv = gcc6Stdenv; # doesn't build with gcc7 }; uftrace = callPackage ../development/tools/uftrace { }; @@ -6928,6 +6930,8 @@ in # To expose more packages for Yi, override the extraPackages arg. yi = callPackage ../applications/editors/yi/wrapper.nix { }; + yj = callPackage ../development/tools/yj { }; + yle-dl = callPackage ../tools/misc/yle-dl {}; you-get = python3Packages.callPackage ../tools/misc/you-get { }; @@ -7102,7 +7106,7 @@ in avian = callPackage ../development/compilers/avian { inherit (darwin.apple_sdk.frameworks) CoreServices Foundation; - stdenv = if stdenv.cc.isGNU then overrideCC stdenv gcc49 else stdenv; + stdenv = if stdenv.cc.isGNU then gcc49Stdenv else stdenv; }; bigloo = callPackage ../development/compilers/bigloo { }; @@ -7162,7 +7166,7 @@ in #Use this instead of stdenv to build with clang clangStdenv = if stdenv.cc.isClang then stdenv else lowPrio llvmPackages.stdenv; - clang-sierraHack-stdenv = overrideCC stdenv clang-sierraHack; + clang-sierraHack-stdenv = overrideCC stdenv buildPackages.clang-sierraHack; libcxxStdenv = if stdenv.isDarwin then stdenv else lowPrio llvmPackages.libcxxStdenv; clasp-common-lisp = callPackage ../development/compilers/clasp { @@ -7188,6 +7192,8 @@ in }) crystal_0_25 crystal_0_26 + crystal_0_27 + crystal_0_29 crystal; icr = callPackage ../development/tools/icr {}; @@ -7241,9 +7247,12 @@ in extraBuildInputs = lib.optional stdenv.hostPlatform.isDarwin clang.cc; }; - gcc7Stdenv = overrideCC gccStdenv gcc7; - gcc8Stdenv = overrideCC gccStdenv gcc8; - gcc9Stdenv = overrideCC gccStdenv gcc9; + gcc49Stdenv = overrideCC gccStdenv buildPackages.gcc49; + gcc5Stdenv = overrideCC gccStdenv buildPackages.gcc5; + gcc6Stdenv = overrideCC gccStdenv buildPackages.gcc6; + gcc7Stdenv = overrideCC gccStdenv buildPackages.gcc7; + gcc8Stdenv = overrideCC gccStdenv buildPackages.gcc8; + gcc9Stdenv = overrideCC gccStdenv buildPackages.gcc9; wrapCCMulti = cc: if stdenv.targetPlatform.system == "x86_64-linux" then let @@ -7280,8 +7289,8 @@ in gcc_multi = wrapCCMulti gcc; clang_multi = wrapClangMulti clang; - gccMultiStdenv = overrideCC stdenv gcc_multi; - clangMultiStdenv = overrideCC stdenv clang_multi; + gccMultiStdenv = overrideCC stdenv buildPackages.gcc_multi; + clangMultiStdenv = overrideCC stdenv buildPackages.clang_multi; multiStdenv = if stdenv.cc.isClang then clangMultiStdenv else gccMultiStdenv; gcc_debug = lowPrio (wrapCC (gcc.cc.override { @@ -7815,7 +7824,7 @@ in llvmPackages_35 = callPackage ../development/compilers/llvm/3.5 ({ isl = isl_0_14; } // stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { - stdenv = overrideCC stdenv buildPackages.gcc6; + stdenv = gcc6Stdenv; }); llvmPackages_38 = callPackage ../development/compilers/llvm/3.8 ({ @@ -7823,7 +7832,7 @@ in buildLlvmTools = buildPackages.llvmPackages_38.tools; targetLlvmLibraries = targetPackages.llvmPackages_38.libraries; } // stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { - stdenv = overrideCC stdenv buildPackages.gcc6; + stdenv = gcc6Stdenv; }); llvmPackages_39 = callPackage ../development/compilers/llvm/3.9 ({ @@ -7831,7 +7840,7 @@ in buildLlvmTools = buildPackages.llvmPackages_39.tools; targetLlvmLibraries = targetPackages.llvmPackages_39.libraries; } // stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { - stdenv = overrideCC stdenv buildPackages.gcc6; + stdenv = gcc6Stdenv; }); llvmPackages_4 = callPackage ../development/compilers/llvm/4 ({ @@ -7839,7 +7848,7 @@ in buildLlvmTools = buildPackages.llvmPackages_4.tools; targetLlvmLibraries = targetPackages.llvmPackages_4.libraries; } // stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { - stdenv = overrideCC stdenv buildPackages.gcc6; + stdenv = gcc6Stdenv; }); llvmPackages_5 = callPackage ../development/compilers/llvm/5 ({ @@ -7847,7 +7856,7 @@ in buildLlvmTools = buildPackages.llvmPackages_5.tools; targetLlvmLibraries = targetPackages.llvmPackages_5.libraries; } // stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { - stdenv = overrideCC stdenv buildPackages.gcc6; # with gcc-7: undefined reference to `__divmoddi4' + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' }); llvmPackages_6 = callPackage ../development/compilers/llvm/6 ({ @@ -7855,7 +7864,7 @@ in buildLlvmTools = buildPackages.llvmPackages_6.tools; targetLlvmLibraries = targetPackages.llvmPackages_6.libraries; } // stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { - stdenv = overrideCC stdenv buildPackages.gcc6; # with gcc-7: undefined reference to `__divmoddi4' + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' }); llvmPackages_7 = callPackage ../development/compilers/llvm/7 ({ @@ -7863,7 +7872,7 @@ in buildLlvmTools = buildPackages.llvmPackages_7.tools; targetLlvmLibraries = targetPackages.llvmPackages_7.libraries; } // stdenv.lib.optionalAttrs (buildPackages.stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { - stdenv = overrideCC stdenv buildPackages.gcc6; # with gcc-7: undefined reference to `__divmoddi4' + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' }); llvmPackages_8 = callPackage ../development/compilers/llvm/8 ({ @@ -7871,7 +7880,7 @@ in buildLlvmTools = buildPackages.llvmPackages_8.tools; targetLlvmLibraries = targetPackages.llvmPackages_8.libraries; } // stdenv.lib.optionalAttrs (buildPackages.stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { - stdenv = overrideCC stdenv buildPackages.gcc6; # with gcc-7: undefined reference to `__divmoddi4' + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' }); llvmPackages_latest = llvmPackages_8; @@ -7979,7 +7988,7 @@ in pforth = callPackage ../development/compilers/pforth {}; picat = callPackage ../development/compilers/picat { - stdenv = overrideCC stdenv gcc49; + stdenv = gcc49Stdenv; }; ponyc = callPackage ../development/compilers/ponyc { @@ -8019,6 +8028,7 @@ in cargo-download = callPackage ../tools/package-management/cargo-download { }; cargo-edit = callPackage ../tools/package-management/cargo-edit { }; cargo-graph = callPackage ../tools/package-management/cargo-graph { }; + cargo-license = callPackage ../tools/package-management/cargo-license { }; cargo-outdated = callPackage ../tools/package-management/cargo-outdated {}; cargo-release = callPackage ../tools/package-management/cargo-release { inherit (darwin.apple_sdk.frameworks) Security; @@ -8640,7 +8650,7 @@ in spidermonkey_38 = callPackage ../development/interpreters/spidermonkey/38.nix ({ inherit (darwin) libobjc; } // (stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { - stdenv = overrideCC stdenv gcc6; # with gcc-7: undefined reference to `__divmoddi4' + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' })); spidermonkey_52 = callPackage ../development/interpreters/spidermonkey/52.nix { }; spidermonkey_60 = callPackage ../development/interpreters/spidermonkey/60.nix { }; @@ -8667,6 +8677,26 @@ in ### DEVELOPMENT / MISC + amdadlsdk = callPackage ../development/misc/amdadl-sdk { }; + + amdappsdk26 = amdappsdk.override { + version = "2.6"; + }; + + amdappsdk27 = amdappsdk.override { + version = "2.7"; + }; + + amdappsdk28 = amdappsdk.override { + version = "2.8"; + }; + + amdappsdk = callPackage ../development/misc/amdapp-sdk { }; + + amdappsdkFull = amdappsdk.override { + samples = true; + }; + amtk = callPackage ../development/libraries/amtk { }; avrlibc = callPackage ../development/misc/avr/libc {}; @@ -8893,7 +8923,7 @@ in yacc = bison; # TODO: move to aliases.nix blackmagic = callPackage ../development/tools/misc/blackmagic { - stdenv = overrideCC stdenv gcc6; + stdenv = gcc6Stdenv; gcc-arm-embedded = pkgsCross.arm-embedded.buildPackages.gcc; binutils-arm-embedded = pkgsCross.arm-embedded.buildPackages.binutils; }; @@ -8952,7 +8982,7 @@ in # should be owned by user root, group nixbld with permissions 0770. ccacheWrapper = makeOverridable ({ extraConfig ? "" }: wrapCC (ccache.links extraConfig)) {}; - ccacheStdenv = lowPrio (overrideCC stdenv ccacheWrapper); + ccacheStdenv = lowPrio (overrideCC stdenv buildPackages.ccacheWrapper); cccc = callPackage ../development/tools/analysis/cccc { }; @@ -9120,7 +9150,7 @@ in # distccWrapper = makeOverridable ({ extraConfig ? "" }: wrapCC (distcc.links extraConfig)) {}; - distccStdenv = lowPrio (overrideCC stdenv distccWrapper); + distccStdenv = lowPrio (overrideCC stdenv buildPackages.distccWrapper); distccMasquerade = if stdenv.isDarwin then null @@ -10946,27 +10976,27 @@ in nativeBuildRoot = buildPackages.icu58.override { buildRootOnly = true; }; } // (stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { - stdenv = overrideCC stdenv gcc6; # with gcc-7: undefined reference to `__divmoddi4' + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' })); icu59 = callPackage ../development/libraries/icu/59.nix ({ nativeBuildRoot = buildPackages.icu59.override { buildRootOnly = true; }; } // (stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { - stdenv = overrideCC stdenv gcc6; # with gcc-7: undefined reference to `__divmoddi4' + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' })); icu60 = callPackage ../development/libraries/icu/60.nix ({ nativeBuildRoot = buildPackages.icu60.override { buildRootOnly = true; }; } // (stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { - stdenv = overrideCC stdenv gcc6; # with gcc-7: undefined reference to `__divmoddi4' + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' })); icu63 = callPackage ../development/libraries/icu/63.nix ({ nativeBuildRoot = buildPackages.icu63.override { buildRootOnly = true; }; } // (stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { - stdenv = overrideCC stdenv gcc6; # with gcc-7: undefined reference to `__divmoddi4' + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' })); icu64 = callPackage ../development/libraries/icu/64.nix ({ nativeBuildRoot = buildPackages.icu64.override { buildRootOnly = true; }; } // (stdenv.lib.optionalAttrs (stdenv.cc.isGNU && stdenv.hostPlatform.isi686) { - stdenv = overrideCC stdenv gcc6; # with gcc-7: undefined reference to `__divmoddi4' + stdenv = gcc6Stdenv; # with gcc-7: undefined reference to `__divmoddi4' })); icu = icu64; @@ -12505,7 +12535,7 @@ in opal = callPackage ../development/libraries/opal { ffmpeg = ffmpeg_2; - stdenv = overrideCC stdenv gcc6; + stdenv = gcc6Stdenv; }; openh264 = callPackage ../development/libraries/openh264 { }; @@ -12807,8 +12837,7 @@ in libsForQt512 = recurseIntoAttrs (lib.makeScope qt512.newScope mkLibsForQt5); - # TODO bump to 5.12 on darwin once it's not broken - qt5 = if stdenv.isDarwin then qt511 else qt512; + qt5 = qt512; libsForQt5 = if stdenv.isDarwin then libsForQt511 else libsForQt512; qt5ct = libsForQt5.callPackage ../tools/misc/qt5ct { }; @@ -13514,13 +13543,13 @@ in v8_3_14 = callPackage ../development/libraries/v8/3.14.nix { inherit (python2Packages) python gyp; cctools = darwin.cctools; - stdenv = overrideCC stdenv gcc5; + stdenv = gcc5Stdenv; }; v8_3_16_14 = callPackage ../development/libraries/v8/3.16.14.nix { inherit (python2Packages) python gyp; cctools = darwin.cctools; - stdenv = if stdenv.isDarwin then stdenv else overrideCC stdenv gcc5; + stdenv = if stdenv.isDarwin then stdenv else gcc5Stdenv; }; v8_5_x = callPackage ../development/libraries/v8/5_x.nix ({ @@ -13528,7 +13557,7 @@ in icu = icu58; # v8-5.4.232 fails against icu4c-59.1 } // lib.optionalAttrs stdenv.isLinux { # doesn't build with gcc7 - stdenv = overrideCC stdenv gcc6; + stdenv = gcc6Stdenv; }); v8_6_x = v8; @@ -13536,7 +13565,7 @@ in inherit (python2Packages) python; } // lib.optionalAttrs stdenv.isLinux { # doesn't build with gcc7 - stdenv = overrideCC stdenv gcc6; + stdenv = gcc6Stdenv; }; vaapiIntel = callPackage ../development/libraries/vaapi-intel { }; @@ -13620,7 +13649,7 @@ in vxl = callPackage ../development/libraries/vxl { libpng = libpng12; - stdenv = overrideCC stdenv gcc6; # upstream code incompatible with gcc7 + stdenv = gcc6Stdenv; # upstream code incompatible with gcc7 }; wavpack = callPackage ../development/libraries/wavpack { }; @@ -13638,7 +13667,7 @@ in webkitgtk = callPackage ../development/libraries/webkitgtk { harfbuzz = harfbuzzFull; inherit (gst_all_1) gst-plugins-base gst-plugins-bad; - stdenv = overrideCC stdenv gcc6; + stdenv = gcc6Stdenv; }; webkitgtk24x-gtk3 = callPackage ../development/libraries/webkitgtk/2.4.nix { @@ -13685,7 +13714,11 @@ in inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit; }; - wxGTK31 = callPackage ../development/libraries/wxwidgets/3.1 {}; + wxGTK31 = callPackage ../development/libraries/wxwidgets/3.1 { + inherit (gnome2) GConf; + inherit (darwin.stubs) setfile; + inherit (darwin.apple_sdk.frameworks) AGL Carbon Cocoa Kernel QTKit; + }; wxmac = callPackage ../development/libraries/wxwidgets/3.0/mac.nix { inherit (darwin.apple_sdk.frameworks) AGL Cocoa Kernel; @@ -14222,8 +14255,8 @@ in fingerd_bsd = callPackage ../servers/fingerd/bsd-fingerd { }; - firebird = callPackage ../servers/firebird { icu = null; stdenv = overrideCC stdenv gcc5; }; - firebirdSuper = firebird.override { icu = icu58; superServer = true; stdenv = overrideCC stdenv gcc5; }; + firebird = callPackage ../servers/firebird { icu = null; stdenv = gcc5Stdenv; }; + firebirdSuper = firebird.override { icu = icu58; superServer = true; stdenv = gcc5Stdenv; }; foswiki = callPackage ../servers/foswiki { }; @@ -15199,7 +15232,7 @@ in kmscube = callPackage ../os-specific/linux/kmscube { }; kmsxx = callPackage ../development/libraries/kmsxx { - stdenv = overrideCC stdenv gcc6; + stdenv = gcc6Stdenv; }; latencytop = callPackage ../os-specific/linux/latencytop { }; @@ -15245,8 +15278,9 @@ in klibcShrunk = lowPrio (callPackage ../os-specific/linux/klibc/shrunk.nix { }); - linux_mptcp = linux_mptcp_94; - linux_mptcp_94 = callPackage ../os-specific/linux/kernel/linux-mptcp.nix { + linux_mptcp = linux_mptcp_95; + + linux_mptcp_94 = callPackage ../os-specific/linux/kernel/linux-mptcp-94.nix { kernelPatches = [ kernelPatches.bridge_stp_helper kernelPatches.cpu-cgroup-v2."4.11" @@ -15259,13 +15293,8 @@ in ]; }; - linux_mptcp_93 = callPackage ../os-specific/linux/kernel/linux-mptcp-93.nix { - kernelPatches = - [ kernelPatches.bridge_stp_helper - kernelPatches.p9_fixes - kernelPatches.cpu-cgroup-v2."4.9" - kernelPatches.modinst_arg_list_too_long - ]; + linux_mptcp_95 = callPackage ../os-specific/linux/kernel/linux-mptcp-95.nix { + kernelPatches = linux_4_19.kernelPatches; }; linux_rpi = callPackage ../os-specific/linux/kernel/linux-rpi.nix { @@ -15314,14 +15343,6 @@ in ]; }; - linux_5_0 = callPackage ../os-specific/linux/kernel/linux-5.0.nix { - kernelPatches = - [ kernelPatches.bridge_stp_helper - kernelPatches.modinst_arg_list_too_long - kernelPatches.export_kernel_fpu_functions - ]; - }; - linux_5_1 = callPackage ../os-specific/linux/kernel/linux-5.1.nix { kernelPatches = [ kernelPatches.bridge_stp_helper @@ -15531,7 +15552,6 @@ in linuxPackages_4_9 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_4_9); linuxPackages_4_14 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_4_14); linuxPackages_4_19 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_4_19); - linuxPackages_5_0 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_5_0); linuxPackages_5_1 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_5_1); # When adding to this list: @@ -16798,7 +16818,7 @@ in afterstep = callPackage ../applications/window-managers/afterstep { fltk = fltk13; gtk = gtk2; - stdenv = overrideCC stdenv gcc49; + stdenv = gcc49Stdenv; }; agedu = callPackage ../tools/misc/agedu { }; @@ -17038,7 +17058,7 @@ in blender = callPackage ../applications/misc/blender { pythonPackages = python35Packages; - stdenv = overrideCC stdenv gcc6; + stdenv = gcc6Stdenv; }; bluefish = callPackage ../applications/editors/bluefish { @@ -17083,7 +17103,7 @@ in calf = callPackage ../applications/audio/calf { inherit (gnome2) libglade; - stdenv = overrideCC stdenv gcc5; + stdenv = gcc5Stdenv; }; calcurse = callPackage ../applications/misc/calcurse { }; @@ -18629,7 +18649,7 @@ in k3d = callPackage ../applications/graphics/k3d { inherit (pkgs.gnome2) gtkglext; - stdenv = overrideCC stdenv gcc6; + stdenv = gcc6Stdenv; boost = boost166.override { enablePython = true; }; }; @@ -18740,8 +18760,6 @@ in ktorrent = libsForQt5.callPackage ../applications/networking/p2p/ktorrent { }; - ksonnet = callPackage ../applications/networking/cluster/ksonnet { }; - kubecfg = callPackage ../applications/networking/cluster/kubecfg { }; kubeval = callPackage ../applications/networking/cluster/kubeval { }; @@ -19063,7 +19081,7 @@ in }; xmr-stak = callPackage ../applications/misc/xmr-stak { - stdenvGcc6 = overrideCC stdenv gcc6; + stdenvGcc6 = gcc6Stdenv; }; xmrig = callPackage ../applications/misc/xmrig { }; @@ -19351,7 +19369,7 @@ in maxlib = callPackage ../applications/audio/pd-plugins/maxlib { }; maxscale = callPackage ../tools/networking/maxscale { - stdenv = overrideCC stdenv gcc6; + stdenv = gcc6Stdenv; }; pdfdiff = callPackage ../applications/misc/pdfdiff { }; @@ -19462,7 +19480,7 @@ in openfx = callPackage ../development/libraries/openfx {}; openimageio = callPackage ../applications/graphics/openimageio { - stdenv = overrideCC stdenv gcc6; + stdenv = gcc6Stdenv; }; openimageio2 = callPackage ../applications/graphics/openimageio/2.x.nix { }; @@ -19518,7 +19536,7 @@ in palemoon = callPackage ../applications/networking/browsers/palemoon { # https://forum.palemoon.org/viewtopic.php?f=57&t=15296#p111146 - stdenv = overrideCC stdenv gcc49; + stdenv = gcc49Stdenv; }; pamix = callPackage ../applications/audio/pamix { }; @@ -21306,7 +21324,7 @@ in arena = callPackage ../games/arena {}; arx-libertatis = callPackage ../games/arx-libertatis { - stdenv = overrideCC stdenv gcc6; + stdenv = gcc6Stdenv; }; asc = callPackage ../games/asc { @@ -22310,7 +22328,7 @@ in aragorn = callPackage ../applications/science/biology/aragorn { }; archimedes = callPackage ../applications/science/electronics/archimedes { - stdenv = overrideCC stdenv gcc49; + stdenv = gcc49Stdenv; }; bedtools = callPackage ../applications/science/biology/bedtools { }; @@ -22532,6 +22550,8 @@ in nauty = callPackage ../applications/science/math/nauty {}; + osi = callPackage ../development/libraries/science/math/osi { }; + or-tools = callPackage ../development/libraries/science/math/or-tools { pythonProtobuf = pythonPackages.protobuf; }; @@ -22784,6 +22804,8 @@ in else smlnj; }; + fast-downward = callPackage ../applications/science/logic/fast-downward { }; + twelf = callPackage ../applications/science/logic/twelf { smlnj = if stdenv.isDarwin then smlnjBootstrap @@ -23217,7 +23239,7 @@ in dumb = callPackage ../misc/dumb { }; emulationstation = callPackage ../misc/emulators/emulationstation { - stdenv = overrideCC stdenv gcc5; + stdenv = gcc5Stdenv; }; electricsheep = callPackage ../misc/screensavers/electricsheep { }; @@ -24117,7 +24139,20 @@ in togglesg-download = callPackage ../tools/misc/togglesg-download { }; - discord = callPackage ../applications/networking/instant-messengers/discord { }; + discord = import ../applications/networking/instant-messengers/discord { + branch = "stable"; + inherit pkgs; + }; + + discord-ptb = import ../applications/networking/instant-messengers/discord { + branch = "ptb"; + inherit pkgs; + }; + + discord-canary = import ../applications/networking/instant-messengers/discord { + branch = "canary"; + inherit pkgs; + }; golden-cheetah = libsForQt56.callPackage ../applications/misc/golden-cheetah {}; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index d4e1490df00..4ceffe0eda4 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -921,6 +921,8 @@ in { pyzufall = callPackage ../development/python-modules/pyzufall { }; + rig = callPackage ../development/python-modules/rig { }; + rhpl = disabledIf isPy3k (callPackage ../development/python-modules/rhpl {}); rlp = callPackage ../development/python-modules/rlp { }; @@ -935,6 +937,8 @@ in { selectors2 = callPackage ../development/python-modules/selectors2 { }; + sentinel = callPackage ../development/python-modules/sentinel { }; + sentry-sdk = callPackage ../development/python-modules/sentry-sdk {}; sepaxml = callPackage ../development/python-modules/sepaxml { }; @@ -2248,6 +2252,8 @@ in { misaka = callPackage ../development/python-modules/misaka {}; + mlrose = callPackage ../development/python-modules/mlrose { }; + mt-940 = callPackage ../development/python-modules/mt-940 { }; mwlib = callPackage ../development/python-modules/mwlib { }; @@ -3008,6 +3014,8 @@ in { gspread = callPackage ../development/python-modules/gspread { }; + gtts-token = callPackage ../development/python-modules/gtts-token { }; + gym = callPackage ../development/python-modules/gym { }; gyp = callPackage ../development/python-modules/gyp { };