diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index e819d451fd5..17b830e5fad 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -113,3 +113,7 @@ /nixos/modules/services/databases/postgresql.xml @thoughtpolice /nixos/modules/services/databases/postgresql.nix @thoughtpolice /nixos/tests/postgresql.nix @thoughtpolice + +# Dhall +/pkgs/development/dhall-modules @Gabriel439 @Profpatsch +/pkgs/development/interpreters/dhall @Gabriel439 @Profpatsch diff --git a/doc/languages-frameworks/python.section.md b/doc/languages-frameworks/python.section.md index e6c8ab37d68..907f4d9152a 100644 --- a/doc/languages-frameworks/python.section.md +++ b/doc/languages-frameworks/python.section.md @@ -483,8 +483,8 @@ and in this case the `python35` interpreter is automatically used. ### Interpreters -Versions 2.7, 3.4, 3.5, 3.6 and 3.7 of the CPython interpreter are available as -respectively `python27`, `python34`, `python35` and `python36`. The PyPy interpreter +Versions 2.7, 3.5, 3.6 and 3.7 of the CPython interpreter are available as +respectively `python27`, `python35` and `python36`. The PyPy interpreter is available as `pypy`. The aliases `python2` and `python3` correspond to respectively `python27` and `python35`. The default interpreter, `python`, maps to `python2`. The Nix expressions for the interpreters can be found in @@ -507,7 +507,7 @@ Each interpreter has the following attributes: - `buildEnv`. Function to build python interpreter environments with extra packages bundled together. See section *python.buildEnv function* for usage and documentation. - `withPackages`. Simpler interface to `buildEnv`. See section *python.withPackages function* for usage and documentation. - `sitePackages`. Alias for `lib/${libPrefix}/site-packages`. -- `executable`. Name of the interpreter executable, e.g. `python3.4`. +- `executable`. Name of the interpreter executable, e.g. `python3.7`. - `pkgs`. Set of Python packages for that specific interpreter. The package set can be modified by overriding the interpreter and passing `packageOverrides`. ### Building packages and applications @@ -529,7 +529,6 @@ attribute set is created for each available Python interpreter. The available sets are * `pkgs.python27Packages` -* `pkgs.python34Packages` * `pkgs.python35Packages` * `pkgs.python36Packages` * `pkgs.python37Packages` @@ -837,7 +836,7 @@ community to help save time. No tool is preferred at the moment. ### Deterministic builds -Python 2.7, 3.5 and 3.6 are now built deterministically and 3.4 mostly. +The Python interpreters are now built deterministically. Minor modifications had to be made to the interpreters in order to generate deterministic bytecode. This has security implications and is relevant for those using Python in a `nix-shell`. diff --git a/nixos/modules/config/pulseaudio.nix b/nixos/modules/config/pulseaudio.nix index d4aa5950629..67f7105fe2f 100644 --- a/nixos/modules/config/pulseaudio.nix +++ b/nixos/modules/config/pulseaudio.nix @@ -1,4 +1,4 @@ -{ config, lib, pkgs, pkgs_i686, ... }: +{ config, lib, pkgs, ... }: with pkgs; with lib; @@ -19,7 +19,7 @@ let # Forces 32bit pulseaudio and alsaPlugins to be built/supported for apps # using 32bit alsa on 64bit linux. - enable32BitAlsaPlugins = cfg.support32Bit && stdenv.isx86_64 && (pkgs_i686.alsaLib != null && pkgs_i686.libpulseaudio != null); + enable32BitAlsaPlugins = cfg.support32Bit && stdenv.isx86_64 && (pkgs.pkgsi686Linux.alsaLib != null && pkgs.pkgsi686Linux.libpulseaudio != null); myConfigFile = @@ -63,7 +63,7 @@ let pcm_type.pulse { libs.native = ${pkgs.alsaPlugins}/lib/alsa-lib/libasound_module_pcm_pulse.so ; ${lib.optionalString enable32BitAlsaPlugins - "libs.32Bit = ${pkgs_i686.alsaPlugins}/lib/alsa-lib/libasound_module_pcm_pulse.so ;"} + "libs.32Bit = ${pkgs.pkgsi686Linux.alsaPlugins}/lib/alsa-lib/libasound_module_pcm_pulse.so ;"} } pcm.!default { type pulse @@ -72,7 +72,7 @@ let ctl_type.pulse { libs.native = ${pkgs.alsaPlugins}/lib/alsa-lib/libasound_module_ctl_pulse.so ; ${lib.optionalString enable32BitAlsaPlugins - "libs.32Bit = ${pkgs_i686.alsaPlugins}/lib/alsa-lib/libasound_module_ctl_pulse.so ;"} + "libs.32Bit = ${pkgs.pkgsi686Linux.alsaPlugins}/lib/alsa-lib/libasound_module_ctl_pulse.so ;"} } ctl.!default { type pulse diff --git a/nixos/modules/hardware/opengl.nix b/nixos/modules/hardware/opengl.nix index 46d06d71333..48e0072e089 100644 --- a/nixos/modules/hardware/opengl.nix +++ b/nixos/modules/hardware/opengl.nix @@ -1,4 +1,4 @@ -{ config, lib, pkgs, pkgs_i686, ... }: +{ config, lib, pkgs, ... }: with lib; @@ -148,7 +148,7 @@ in [ "/run/opengl-driver/share" ] ++ optional cfg.driSupport32Bit "/run/opengl-driver-32/share"; hardware.opengl.package = mkDefault (makePackage pkgs); - hardware.opengl.package32 = mkDefault (makePackage pkgs_i686); + hardware.opengl.package32 = mkDefault (makePackage pkgs.pkgsi686Linux); boot.extraModulePackages = optional (elem "virtualbox" videoDrivers) kernelPackages.virtualboxGuestAdditions; }; diff --git a/nixos/modules/hardware/video/amdgpu-pro.nix b/nixos/modules/hardware/video/amdgpu-pro.nix index 50af022b93c..ab9e0c92020 100644 --- a/nixos/modules/hardware/video/amdgpu-pro.nix +++ b/nixos/modules/hardware/video/amdgpu-pro.nix @@ -1,6 +1,6 @@ # This module provides the proprietary AMDGPU-PRO drivers. -{ config, lib, pkgs, pkgs_i686, ... }: +{ config, lib, pkgs, ... }: with lib; @@ -11,7 +11,7 @@ let enabled = elem "amdgpu-pro" drivers; package = config.boot.kernelPackages.amdgpu-pro; - package32 = pkgs_i686.linuxPackages.amdgpu-pro.override { libsOnly = true; kernel = null; }; + package32 = pkgs.pkgsi686Linux.linuxPackages.amdgpu-pro.override { libsOnly = true; kernel = null; }; opengl = config.hardware.opengl; diff --git a/nixos/modules/hardware/video/ati.nix b/nixos/modules/hardware/video/ati.nix index 2fa37af6ca5..6102919f015 100644 --- a/nixos/modules/hardware/video/ati.nix +++ b/nixos/modules/hardware/video/ati.nix @@ -1,6 +1,6 @@ # This module provides the proprietary ATI X11 / OpenGL drivers. -{ config, lib, pkgs_i686, ... }: +{ config, lib, pkgs, ... }: with lib; @@ -24,7 +24,7 @@ in { name = "fglrx"; modules = [ ati_x11 ]; libPath = [ "${ati_x11}/lib" ]; }; hardware.opengl.package = ati_x11; - hardware.opengl.package32 = pkgs_i686.linuxPackages.ati_drivers_x11.override { libsOnly = true; kernel = null; }; + hardware.opengl.package32 = pkgs.pkgsi686Linux.linuxPackages.ati_drivers_x11.override { libsOnly = true; kernel = null; }; environment.systemPackages = [ ati_x11 ]; diff --git a/nixos/modules/hardware/video/nvidia.nix b/nixos/modules/hardware/video/nvidia.nix index f8524ab99e8..21e12395498 100644 --- a/nixos/modules/hardware/video/nvidia.nix +++ b/nixos/modules/hardware/video/nvidia.nix @@ -1,6 +1,6 @@ # This module provides the proprietary NVIDIA X11 / OpenGL drivers. -{ stdenv, config, lib, pkgs, pkgs_i686, ... }: +{ stdenv, config, lib, pkgs, ... }: with lib; @@ -25,7 +25,7 @@ let nvidia_x11 = nvidiaForKernel config.boot.kernelPackages; nvidia_libs32 = if versionOlder nvidia_x11.version "391" then - ((nvidiaForKernel pkgs_i686.linuxPackages).override { libsOnly = true; kernel = null; }).out + ((nvidiaForKernel pkgs.pkgsi686Linux.linuxPackages).override { libsOnly = true; kernel = null; }).out else (nvidiaForKernel config.boot.kernelPackages).lib32; diff --git a/nixos/modules/misc/nixpkgs.nix b/nixos/modules/misc/nixpkgs.nix index 81556c419bd..461a3b68ed6 100644 --- a/nixos/modules/misc/nixpkgs.nix +++ b/nixos/modules/misc/nixpkgs.nix @@ -217,7 +217,6 @@ in config = { _module.args = { pkgs = finalPkgs; - pkgs_i686 = finalPkgs.pkgsi686Linux; }; }; } diff --git a/nixos/modules/services/monitoring/prometheus/default.nix b/nixos/modules/services/monitoring/prometheus/default.nix index e2ee995cea8..bf4dfc666bb 100644 --- a/nixos/modules/services/monitoring/prometheus/default.nix +++ b/nixos/modules/services/monitoring/prometheus/default.nix @@ -10,6 +10,13 @@ let # Get a submodule without any embedded metadata: _filter = x: filterAttrs (k: v: k != "_module") x; + # a wrapper that verifies that the configuration is valid + promtoolCheck = what: name: file: pkgs.runCommand "${name}-${what}-checked" + { buildInputs = [ cfg.package ]; } '' + ln -s ${file} $out + promtool ${what} $out + ''; + # Pretty-print JSON to a file writePrettyJSON = name: x: pkgs.runCommand name { } '' @@ -19,18 +26,19 @@ let # This becomes the main config file promConfig = { global = cfg.globalConfig; - rule_files = cfg.ruleFiles ++ [ + rule_files = map (promtoolCheck "check-rules" "rules") (cfg.ruleFiles ++ [ (pkgs.writeText "prometheus.rules" (concatStringsSep "\n" cfg.rules)) - ]; + ]); scrape_configs = cfg.scrapeConfigs; }; generatedPrometheusYml = writePrettyJSON "prometheus.yml" promConfig; - prometheusYml = - if cfg.configText != null then + prometheusYml = let + yml = if cfg.configText != null then pkgs.writeText "prometheus.yml" cfg.configText - else generatedPrometheusYml; + else generatedPrometheusYml; + in promtoolCheck "check-config" "prometheus.yml" yml; cmdlineArgs = cfg.extraFlags ++ [ "-storage.local.path=${cfg.dataDir}/metrics" @@ -376,6 +384,15 @@ in { ''; }; + package = mkOption { + type = types.package; + default = pkgs.prometheus; + defaultText = "pkgs.prometheus"; + description = '' + The prometheus package that should be used. + ''; + }; + listenAddress = mkOption { type = types.str; default = "0.0.0.0:9090"; @@ -495,7 +512,7 @@ in { after = [ "network.target" ]; script = '' #!/bin/sh - exec ${pkgs.prometheus}/bin/prometheus \ + exec ${cfg.package}/bin/prometheus \ ${concatStringsSep " \\\n " cmdlineArgs} ''; serviceConfig = { diff --git a/nixos/modules/services/web-servers/tomcat.nix b/nixos/modules/services/web-servers/tomcat.nix index be54e9255c7..68261c50324 100644 --- a/nixos/modules/services/web-servers/tomcat.nix +++ b/nixos/modules/services/web-servers/tomcat.nix @@ -31,10 +31,26 @@ in ''; }; + purifyOnStart = mkOption { + type = types.bool; + default = false; + description = '' + On startup, the `baseDir` directory is populated with various files, + subdirectories and symlinks. If this option is enabled, these items + (except for the `logs` and `work` subdirectories) are first removed. + This prevents interference from remainders of an old configuration + (libraries, webapps, etc.), so it's recommended to enable this option. + ''; + }; + baseDir = mkOption { type = lib.types.path; default = "/var/tomcat"; - description = "Location where Tomcat stores configuration files, webapplications and logfiles"; + description = '' + Location where Tomcat stores configuration files, web applications + and logfiles. Note that it is partially cleared on each service startup + if `purifyOnStart` is enabled. + ''; }; logDirs = mkOption { @@ -197,6 +213,15 @@ in after = [ "network.target" ]; preStart = '' + ${lib.optionalString cfg.purifyOnStart '' + # Delete most directories/symlinks we create from the existing base directory, + # to get rid of remainders of an old configuration. + # The list of directories to delete is taken from the "mkdir" command below, + # excluding "logs" (because logs are valuable) and "work" (because normally + # session files are there), and additionally including "bin". + rm -rf ${cfg.baseDir}/{conf,virtualhosts,temp,lib,shared/lib,webapps,bin} + ''} + # Create the base directory mkdir -p \ ${cfg.baseDir}/{conf,virtualhosts,logs,temp,lib,shared/lib,webapps,work} diff --git a/nixos/modules/virtualisation/parallels-guest.nix b/nixos/modules/virtualisation/parallels-guest.nix index 36ca7f356d4..4e0f2cae299 100644 --- a/nixos/modules/virtualisation/parallels-guest.nix +++ b/nixos/modules/virtualisation/parallels-guest.nix @@ -1,4 +1,4 @@ -{ config, lib, pkgs, pkgs_i686, ... }: +{ config, lib, pkgs, ... }: with lib; @@ -64,7 +64,7 @@ in }; hardware.opengl.package = prl-tools; - hardware.opengl.package32 = pkgs_i686.linuxPackages.prl-tools.override { libsOnly = true; kernel = null; }; + hardware.opengl.package32 = pkgs.pkgsi686Linux.linuxPackages.prl-tools.override { libsOnly = true; kernel = null; }; services.udev.packages = [ prl-tools ]; diff --git a/pkgs/applications/audio/pulseaudio-modules-bt/default.nix b/pkgs/applications/audio/pulseaudio-modules-bt/default.nix index b377db65c0c..cb267d8bbb6 100644 --- a/pkgs/applications/audio/pulseaudio-modules-bt/default.nix +++ b/pkgs/applications/audio/pulseaudio-modules-bt/default.nix @@ -5,6 +5,7 @@ , pkgconfig , ffmpeg_4 , patchelf +, fdk_aac , libtool , cmake , bluez @@ -22,13 +23,13 @@ let in stdenv.mkDerivation rec { name = "pulseaudio-modules-bt-${version}"; - version = "unstable-2018-10-16"; + version = "unstable-2018-11-01"; src = fetchFromGitHub { owner = "EHfive"; repo = "pulseaudio-modules-bt"; - rev = "552c2b48c0cc7dd44d0746b261f7c7d5559e8e30"; - sha256 = "052jb1hjx1in7bafx4zpn78s7r6f2y7djriwi36dzqy9wmalmyjy"; + rev = "a2f62fcaa702bb883c07d074ebca8d7135520ab8"; + sha256 = "1fhg7q9064zikhy0xxldn4fvh49pc47mgikcbd9yhsk66gcn6zj3"; fetchSubmodules = true; }; @@ -45,6 +46,7 @@ in stdenv.mkDerivation rec { buildInputs = [ pulseaudio ffmpeg_4 + fdk_aac libtool bluez dbus @@ -72,7 +74,7 @@ in stdenv.mkDerivation rec { meta = with stdenv.lib; { homepage = https://github.com/EHfive/pulseaudio-modules-bt; - description = "SBC, Sony LDAC codec (A2DP Audio) support for Pulseaudio"; + description = "LDAC, aptX, aptX HD, AAC codecs (A2DP Audio) support for Linux PulseAudio"; platforms = platforms.linux; license = licenses.mit; maintainers = with maintainers; [ adisbladis ]; diff --git a/pkgs/applications/audio/pulseaudio-modules-bt/fix-install-path.patch b/pkgs/applications/audio/pulseaudio-modules-bt/fix-install-path.patch index 2b4ff86ab71..e500d1fb133 100644 --- a/pkgs/applications/audio/pulseaudio-modules-bt/fix-install-path.patch +++ b/pkgs/applications/audio/pulseaudio-modules-bt/fix-install-path.patch @@ -1,11 +1,20 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -index 0f5baa0..1f35cce 100644 +index d869979..185144d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -122,5 +121,4 @@ INSTALL(TARGETS +@@ -143,13 +143,13 @@ INSTALL(TARGETS module-bluez5-device module-bluetooth-discover module-bluetooth-policy - LIBRARY DESTINATION ${PulseAudio_modlibexecdir}) -- + LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/pulse-${PulseAudio_VERSION}/modules/) + + if(NOT ${HAVE_SYSTEM_LDAC}) + + INSTALL(TARGETS + ldacBT_enc + ldacBT_abr +- LIBRARY DESTINATION ${PulseAudio_modlibexecdir}) ++ LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/pulse-${PulseAudio_VERSION}/modules/) + + endif() diff --git a/pkgs/applications/misc/1password/default.nix b/pkgs/applications/misc/1password/default.nix index 331f516c88c..a25d40e29bd 100644 --- a/pkgs/applications/misc/1password/default.nix +++ b/pkgs/applications/misc/1password/default.nix @@ -2,24 +2,24 @@ stdenv.mkDerivation rec { name = "1password-${version}"; - version = "0.5.3"; + version = "0.5.4"; src = if stdenv.hostPlatform.system == "i686-linux" then fetchzip { url = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_linux_386_v${version}.zip"; - sha256 = "05s223h1yps4k9kmignl0r5sbh6w7m1hnlmafnf1kiwv7gacvxjc"; + sha256 = "0wni2hk5b1qfr24vi24jiprpi08k3qgaw9lqp61k41a1sjp3izv0"; stripRoot = false; } else if stdenv.hostPlatform.system == "x86_64-linux" then fetchzip { url = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_linux_amd64_v${version}.zip"; - sha256 = "0p9x1fx0309v8dxxaf88m8x8q15zzqywfmjn6v5wb9v3scp9396v"; + sha256 = "169d5fl3cfw3xrlpm9nlmwbnp0xgh0la9qybzf8ragp0020nlyih"; stripRoot = false; } else if stdenv.hostPlatform.system == "x86_64-darwin" then fetchzip { url = "https://cache.agilebits.com/dist/1P/op/pkg/v${version}/op_darwin_amd64_v${version}.zip"; - sha256 = "1z2xp9bn93gr4ha6zx65va1fb58a2xlnnmpv583y96gq3vbnqdcj"; + sha256 = "1scikv7v33kzg9rqsrz97yklxaskvif84br13zg8annm43k5vlma"; stripRoot = false; } else throw "Architecture not supported"; diff --git a/pkgs/applications/misc/mupdf/darwin.patch b/pkgs/applications/misc/mupdf/darwin.patch index 7466fc2ca62..be1b84b0012 100644 --- a/pkgs/applications/misc/mupdf/darwin.patch +++ b/pkgs/applications/misc/mupdf/darwin.patch @@ -1,47 +1,30 @@ -diff --git a/Makerules b/Makerules ---- a/Makerules -+++ b/Makerules -@@ -81,22 +81,10 @@ HAVE_GLUT ?= yes - SYS_GLUT_CFLAGS := -Wno-deprecated-declarations - SYS_GLUT_LIBS := -framework GLUT -framework OpenGL - --CC = xcrun cc --AR = xcrun ar --LD = xcrun ld --RANLIB_CMD = xcrun ranlib $@ +diff -ruN mupdf-1.14.0-source.orig/Makerules mupdf-1.14.0-source/Makerules +--- mupdf-1.14.0-source.orig/Makerules 2018-11-02 06:57:12.114012496 +0100 ++++ mupdf-1.14.0-source/Makerules 2018-11-02 10:11:56.717232992 +0100 +@@ -80,13 +80,6 @@ + HAVE_GLUT := yes + SYS_GLUT_CFLAGS := -Wno-deprecated-declarations + SYS_GLUT_LIBS := -framework GLUT -framework OpenGL +- CC = xcrun cc +- AR = xcrun ar +- LD = xcrun ld +- RANLIB = xcrun ranlib - --# Linux uses pkg-config for system libraries. --else ifeq "$(OS)" "Linux" +-else ifeq ($(OS),Linux) +- HAVE_OBJCOPY := yes + + ifeq ($(shell pkg-config --exists freetype2 && echo yes),yes) + SYS_FREETYPE_CFLAGS := $(shell pkg-config --cflags freetype2) +@@ -119,12 +112,6 @@ + SYS_CURL_LIBS := $(shell pkg-config --libs libcurl) + endif + +- HAVE_GLUT := yes +- ifeq ($(HAVE_GLUT),yes) +- SYS_GLUT_CFLAGS := +- SYS_GLUT_LIBS := -lglut -lGL +- endif - - HAVE_PTHREAD := yes - SYS_PTHREAD_CFLAGS := - SYS_PTHREAD_LIBS := -lpthread - --HAVE_GLUT := yes --SYS_GLUT_CFLAGS := --SYS_GLUT_LIBS := -lglut -lGL -- - ifeq "$(shell pkg-config --exists 'libcrypto >= 1.1.0' && echo yes)" "yes" - HAVE_LIBCRYPTO := yes - SYS_LIBCRYPTO_CFLAGS := -DHAVE_LIBCRYPTO $(shell pkg-config --cflags libcrypto) -@@ -113,7 +101,7 @@ SYS_CURL_CFLAGS += $(shell pkg-config --cflags openssl) - SYS_CURL_DEPS += $(shell pkg-config --libs openssl) - endif - endif --SYS_CURL_DEPS += -lpthread -lrt -+SYS_CURL_DEPS += -lpthread - - ifeq "$(shell pkg-config --exists x11 xext && echo yes)" "yes" - HAVE_X11 := yes -diff --git a/platform/gl/gl-main.c b/platform/gl/gl-main.c -index d58f7ba..808af18 100644 ---- a/platform/gl/gl-main.c -+++ b/platform/gl/gl-main.c -@@ -16,6 +16,7 @@ void glutExit(void) {} - void glutMouseWheelFunc(void *fn) {} - void glutInitErrorFunc(void *fn) {} - void glutInitWarningFunc(void *fn) {} -+#define glutSetOption(X,Y) - #endif - - enum + HAVE_X11 := $(shell pkg-config --exists x11 xext && echo yes) + ifeq ($(HAVE_X11),yes) + X11_CFLAGS := $(shell pkg-config --cflags x11 xext) diff --git a/pkgs/applications/misc/mupdf/default.nix b/pkgs/applications/misc/mupdf/default.nix index bce2a79cde3..d4f59272c9c 100644 --- a/pkgs/applications/misc/mupdf/default.nix +++ b/pkgs/applications/misc/mupdf/default.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, fetchurl, fetchpatch, pkgconfig, freetype, harfbuzz, openjpeg +{ stdenv, lib, fetchurl, pkgconfig, freetype, harfbuzz, openjpeg , jbig2dec, libjpeg , darwin , enableX11 ? true, libX11, libXext, libXi, libXrandr , enableCurl ? true, curl, openssl @@ -14,23 +14,17 @@ let in stdenv.mkDerivation rec { - version = "1.13.0"; + version = "1.14.0"; name = "mupdf-${version}"; src = fetchurl { url = "https://mupdf.com/downloads/archive/${name}-source.tar.gz"; - sha256 = "02faww5bnjw76k6igrjzwf0lnw4xd9ckc8d6ilc3c4gfrdi6j707"; + sha256 = "093p7lv6pgyymagn28n58fs0np928r0i5p2az9cc4gwccwx4hhy4"; }; - patches = [ - (fetchpatch { - name = "CVE-2018-10289.patch"; - url = "https://bugs.ghostscript.com/attachment.cgi?id=15230"; - sha256 = "0jmpacxd9930g6k57kda9jrcrbk75whdlv8xwmqg5jwn848qvy4q"; - }) - ] + patches = # Use shared libraries to decrease size - ++ stdenv.lib.optional (!stdenv.isDarwin) ./mupdf-1.13-shared_libs-1.patch + stdenv.lib.optional (!stdenv.isDarwin) ./mupdf-1.14-shared_libs.patch ++ stdenv.lib.optional stdenv.isDarwin ./darwin.patch ; @@ -38,7 +32,7 @@ in stdenv.mkDerivation rec { sed -i "s/__OPENJPEG__VERSION__/${openJpegVersion}/" source/fitz/load-jpx.c ''; - makeFlags = [ "prefix=$(out)" ]; + makeFlags = [ "prefix=$(out) USE_SYSTEM_LIBS=yes" ]; nativeBuildInputs = [ pkgconfig ]; buildInputs = [ freetype harfbuzz openjpeg jbig2dec libjpeg freeglut libGLU ] ++ lib.optionals enableX11 [ libX11 libXext libXi libXrandr ] diff --git a/pkgs/applications/misc/mupdf/mupdf-1.13-shared_libs-1.patch b/pkgs/applications/misc/mupdf/mupdf-1.13-shared_libs-1.patch deleted file mode 100644 index e29f1f52077..00000000000 --- a/pkgs/applications/misc/mupdf/mupdf-1.13-shared_libs-1.patch +++ /dev/null @@ -1,45 +0,0 @@ ---- mupdf-1.12.0-source.orig/Makefile 2017-12-13 15:00:30.000000000 +0100 -+++ mupdf-1.12.0-source/Makefile 2017-12-31 00:05:23.003277481 +0100 -@@ -14,7 +14,7 @@ - # Do not specify CFLAGS or LIBS on the make invocation line - specify - # XCFLAGS or XLIBS instead. Make ignores any lines in the makefile that - # set a variable that was set on the command line. --CFLAGS += $(XCFLAGS) -Iinclude -+CFLAGS += $(XCFLAGS) -Iinclude -fPIC - LIBS += $(XLIBS) -lm - - LIBS += $(FREETYPE_LIBS) -@@ -312,10 +312,10 @@ - - # --- Library --- - --MUPDF_LIB = $(OUT)/libmupdf.a --THIRD_LIB = $(OUT)/libmupdfthird.a --THREAD_LIB = $(OUT)/libmuthreads.a --PKCS7_LIB = $(OUT)/libmupkcs7.a -+MUPDF_LIB = $(OUT)/libmupdf.so -+THIRD_LIB = $(OUT)/libmupdfthird.so -+THREAD_LIB = $(OUT)/libmuthreads.so -+PKCS7_LIB = $(OUT)/libmupkcs7.so - - MUPDF_OBJ := \ - $(FITZ_OBJ) \ -@@ -343,13 +343,17 @@ - $(ZLIB_OBJ) \ - $(LCMS2_OBJ) - --$(MUPDF_LIB) : $(MUPDF_OBJ) -+$(MUPDF_LIB) : $(MUPDF_OBJ) $(THIRD_LIB) $(THREAD_LIB) -+ $(LINK_CMD) -shared -Wl,-soname -Wl,libmupdf.so -Wl,--no-undefined - $(THIRD_LIB) : $(THIRD_OBJ) -+ $(LINK_CMD) -shared -Wl,-soname -Wl,libmupdfthird.so -Wl,--no-undefined - $(THREAD_LIB) : $(THREAD_OBJ) -+ $(LINK_CMD) -shared -Wl,-soname -Wl,libmuthreads.so -Wl,--no-undefined -lpthread - $(PKCS7_LIB) : $(PKCS7_OBJ) -+ $(LINK_CMD) -shared -Wl,-soname -Wl,libmupkcs7.so - --INSTALL_LIBS := $(MUPDF_LIB) $(THIRD_LIB) -+INSTALL_LIBS := $(MUPDF_LIB) $(THIRD_LIB) $(THREAD_LIB) $(PKCS7_LIB) - - # --- Tools and Apps --- - diff --git a/pkgs/applications/misc/mupdf/mupdf-1.14-shared_libs.patch b/pkgs/applications/misc/mupdf/mupdf-1.14-shared_libs.patch new file mode 100644 index 00000000000..131a1bbbf6b --- /dev/null +++ b/pkgs/applications/misc/mupdf/mupdf-1.14-shared_libs.patch @@ -0,0 +1,39 @@ +--- mupdf-1.14.0-source.orig/Makefile 2018-11-02 06:57:12.114012496 +0100 ++++ mupdf-1.14.0-source/Makefile 2018-11-02 09:57:10.067945307 +0100 +@@ -20,7 +20,7 @@ + # Do not specify CFLAGS or LIBS on the make invocation line - specify + # XCFLAGS or XLIBS instead. Make ignores any lines in the makefile that + # set a variable that was set on the command line. +-CFLAGS += $(XCFLAGS) -Iinclude ++CFLAGS += $(XCFLAGS) -Iinclude -fPIC + LIBS += $(XLIBS) -lm + + ifneq ($(threading),no) +@@ -190,17 +190,21 @@ + + # --- Library --- + +-MUPDF_LIB = $(OUT)/libmupdf.a +-THIRD_LIB = $(OUT)/libmupdf-third.a +-THREAD_LIB = $(OUT)/libmupdf-threads.a +-PKCS7_LIB = $(OUT)/libmupdf-pkcs7.a ++MUPDF_LIB = $(OUT)/libmupdf.so ++THIRD_LIB = $(OUT)/libmupdf-third.so ++THREAD_LIB = $(OUT)/libmupdf-threads.so ++PKCS7_LIB = $(OUT)/libmupdf-pkcs7.so + +-$(MUPDF_LIB) : $(MUPDF_OBJ) ++$(MUPDF_LIB) : $(MUPDF_OBJ) $(THIRD_LIB) $(THREAD_LIB) ++ $(LINK_CMD) $(THIRD_LIBS) -shared -Wl,-soname -Wl,libmupdf.so -Wl,--no-undefined + $(THIRD_LIB) : $(THIRD_OBJ) ++ $(LINK_CMD) -shared -Wl,-soname -Wl,libmupdf-third.so -Wl,--no-undefined + $(THREAD_LIB) : $(THREAD_OBJ) ++ $(LINK_CMD) -shared -Wl,-soname -Wl,libmupdf-threads.so -Wl,--no-undefined -lpthread + $(PKCS7_LIB) : $(PKCS7_OBJ) ++ $(LINK_CMD) -shared -Wl,-soname -Wl,libmupdf-pkcs7.so + +-INSTALL_LIBS := $(MUPDF_LIB) $(THIRD_LIB) ++INSTALL_LIBS := $(MUPDF_LIB) $(THIRD_LIB) $(THREAD_LIB) $(PKCS7_LIB) + + # --- Main tools and viewers --- + diff --git a/pkgs/applications/networking/feedreaders/canto-curses/default.nix b/pkgs/applications/networking/feedreaders/canto-curses/default.nix index 0190d5f9798..36b4732ca2e 100644 --- a/pkgs/applications/networking/feedreaders/canto-curses/default.nix +++ b/pkgs/applications/networking/feedreaders/canto-curses/default.nix @@ -1,8 +1,8 @@ -{ stdenv, fetchFromGitHub, python34Packages, readline, ncurses, canto-daemon }: +{ stdenv, fetchFromGitHub, python3Packages, readline, ncurses, canto-daemon }: -python34Packages.buildPythonApplication rec { +python3Packages.buildPythonApplication rec { version = "0.9.9"; - name = "canto-curses-${version}"; + pname = "canto-curses"; src = fetchFromGitHub { owner = "themoken"; diff --git a/pkgs/applications/networking/feedreaders/canto-daemon/default.nix b/pkgs/applications/networking/feedreaders/canto-daemon/default.nix index 4b1721278e3..e700c5634ad 100644 --- a/pkgs/applications/networking/feedreaders/canto-daemon/default.nix +++ b/pkgs/applications/networking/feedreaders/canto-daemon/default.nix @@ -1,9 +1,8 @@ -{ stdenv, fetchFromGitHub, python34Packages, }: +{ stdenv, fetchFromGitHub, python3Packages, }: -python34Packages.buildPythonApplication rec { +python3Packages.buildPythonApplication rec { version = "0.9.7"; - name = "canto-daemon-${version}"; - namePrefix = ""; + pname = "canto-daemon"; src = fetchFromGitHub { owner = "themoken"; @@ -12,7 +11,7 @@ python34Packages.buildPythonApplication rec { sha256 = "1si53r8cd4avfc56r315zyrghkppnjd6n125z1agfv59i7hdmk3n"; }; - propagatedBuildInputs = with python34Packages; [ feedparser ]; + propagatedBuildInputs = with python3Packages; [ feedparser ]; meta = { description = "Daemon for the canto Atom/RSS feed reader"; diff --git a/pkgs/applications/science/logic/acgtk/default.nix b/pkgs/applications/science/logic/acgtk/default.nix index b787a4e7a01..729aef4e21c 100644 --- a/pkgs/applications/science/logic/acgtk/default.nix +++ b/pkgs/applications/science/logic/acgtk/default.nix @@ -1,57 +1,27 @@ -{ stdenv, fetchurl, ocamlPackages, - buildBytecode ? true, - buildNative ? true, - installExamples ? true, - installEmacsMode ? true }: - -let inherit (stdenv.lib) versionAtLeast optionalString; in - -let inherit (ocamlPackages) ocaml camlp4; in - -assert buildBytecode || buildNative; +{ stdenv, fetchurl, dune, ocamlPackages }: stdenv.mkDerivation { - name = "acgtk-1.3.1"; + name = "acgtk-1.5.0"; src = fetchurl { - url = http://calligramme.loria.fr/acg/software/acg-1.3.1-20170303.tar.gz; - sha256 = "1hhrf6bx2x2wbv5ldn4fnxhpr9lyrj3zh1vcnx8wf8f06ih4rzfq"; + url = http://calligramme.loria.fr/acg/software/acg-1.5.0-20181019.tar.gz; + sha256 = "14n003gxzw5w79hlpw1ja4nq97jqf9zqyg00ihvpxw4bv9jlm8jm"; }; - buildInputs = with ocamlPackages; [ - ocaml findlib camlp4 ansiterminal biniou bolt cairo2 dypgen easy-format ocf yojson - ]; + buildInputs = [ dune ] ++ (with ocamlPackages; [ + ocaml findlib ansiterminal cairo2 fmt logs menhir mtime ocf + ]); - patches = [ ./install-emacs-to-site-lisp.patch - ./use-nix-ocaml-byteflags.patch ]; + buildPhase = "dune build"; - postPatch = optionalString (camlp4 != null) '' - substituteInPlace src/Makefile.master.in \ - --replace "+camlp4" "${camlp4}/lib/ocaml/${ocaml.version}/site-lib/camlp4/" - '' + optionalString (versionAtLeast (stdenv.lib.getVersion ocamlPackages.yojson) "1.4") '' - substituteInPlace src/scripting/Makefile.in --replace yojson.cmo yojson.cma - ''; - - # The bytecode executable is dependent on the dynamic library provided by - # ANSITerminal. We can use the -dllpath flag of ocamlc (analogous to - # -rpath) to make sure that ocamlrun is able to link the library at - # runtime and that Nix detects a runtime dependency. - NIX_OCAML_BYTEFLAGS = "-dllpath ${ocamlPackages.ansiterminal}/lib/ocaml/${ocaml.version}/site-lib/ANSITerminal"; - - buildFlags = optionalString buildBytecode "byte" - + " " - + optionalString buildNative "opt"; - - installTargets = "install" - + " " + optionalString installExamples "install-examples" - + " " + optionalString installEmacsMode "install-emacs"; + inherit (dune) installPhase; meta = with stdenv.lib; { homepage = http://calligramme.loria.fr/acg/; description = "A toolkit for developing ACG signatures and lexicon"; license = licenses.cecill20; - platforms = ocaml.meta.platforms or []; + inherit (ocamlPackages.ocaml.meta) platforms; maintainers = [ maintainers.jirkamarsik ]; }; } diff --git a/pkgs/applications/science/logic/acgtk/install-emacs-to-site-lisp.patch b/pkgs/applications/science/logic/acgtk/install-emacs-to-site-lisp.patch deleted file mode 100644 index 43ddd20b4a3..00000000000 --- a/pkgs/applications/science/logic/acgtk/install-emacs-to-site-lisp.patch +++ /dev/null @@ -1,23 +0,0 @@ ---- acg-1.1-20140905/Makefile.in 2014-10-24 15:21:39.442287208 +0200 -+++ acg-1.1-20140905/Makefile.in.new 2014-10-24 15:24:58.557117228 +0200 -@@ -35,6 +35,7 @@ - ACGC_DIR=src/acg-data - - DATA_DIR=@datarootdir@/acgtk -+EMACS_DIR=@prefix@/share/emacs/site-lisp - - - -@@ -82,10 +83,10 @@ - rm -r $(DATA_DIR) - - install-emacs: -- mkdir -p $(DATA_DIR) && cp -r emacs $(DATA_DIR)/. -+ mkdir -p $(EMACS_DIR) && cp emacs/acg.el $(EMACS_DIR) - - uninstall-emacs: -- rm -rf $(DATA_DIR)/emacs -+ rm -rf $(EMACS_DIR)/emacs - - install-examples: - mkdir -p $(DATA_DIR) && cp -r examples $(DATA_DIR)/. diff --git a/pkgs/applications/science/logic/acgtk/use-nix-ocaml-byteflags.patch b/pkgs/applications/science/logic/acgtk/use-nix-ocaml-byteflags.patch deleted file mode 100644 index 26ade37e452..00000000000 --- a/pkgs/applications/science/logic/acgtk/use-nix-ocaml-byteflags.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- acg-1.1-20140905/src/Makefile.master.in 2014-10-27 10:59:42.263382081 +0100 -+++ acg-1.1-20140905/src/Makefile.master.in.new 2014-10-27 10:59:59.683597972 +0100 -@@ -23,7 +23,7 @@ - # All warnings are treated as errors - WARNINGS = @OCAML09WARNINGS@ -warn-error A - COMMONFLAGS= $(WARNINGS) @TYPES@ --BYTEFLAGS = $(COMMONFLAGS) $(DEBUGFLAG) -+BYTEFLAGS = $(COMMONFLAGS) $(DEBUGFLAG) $(NIX_OCAML_BYTEFLAGS) - OPTFLAGS = $(COMMONFLAGS) - LFLAGS= -a - diff --git a/pkgs/applications/version-management/git-and-tools/git-big-picture/default.nix b/pkgs/applications/version-management/git-and-tools/git-big-picture/default.nix index 6918f048eae..7a47ed9a992 100644 --- a/pkgs/applications/version-management/git-and-tools/git-big-picture/default.nix +++ b/pkgs/applications/version-management/git-and-tools/git-big-picture/default.nix @@ -2,7 +2,7 @@ python2Packages.buildPythonApplication rec { pname = "git-big-picture"; - version = "0.9.0"; + version = "0.10.1"; name = "${pname}-${version}"; @@ -10,7 +10,7 @@ python2Packages.buildPythonApplication rec { owner = "esc"; repo = pname; rev = "v${version}"; - sha256 = "1h283gzs4nx8lrarmr454zza52cilmnbdrqn1n33v3cn1rayl3c9"; + sha256 = "0b0zdq7d7k7f6p3wwc799347fraphbr20rxd1ysnc4xi1cj4wpmi"; }; buildInputs = [ git graphviz ]; @@ -21,7 +21,7 @@ python2Packages.buildPythonApplication rec { ''; meta = { - description = "Tool for visualization of Git repositories."; + description = "Tool for visualization of Git repositories"; homepage = https://github.com/esc/git-big-picture; license = stdenv.lib.licenses.gpl3; platforms = stdenv.lib.platforms.linux; diff --git a/pkgs/data/fonts/ibm-plex/default.nix b/pkgs/data/fonts/ibm-plex/default.nix index ba214dd35fd..e5a281eebf6 100644 --- a/pkgs/data/fonts/ibm-plex/default.nix +++ b/pkgs/data/fonts/ibm-plex/default.nix @@ -1,7 +1,7 @@ { lib, fetchzip }: let - version = "1.1.6"; + version = "1.2.1"; in fetchzip rec { name = "ibm-plex-${version}"; url = "https://github.com/IBM/plex/releases/download/v${version}/OpenType.zip"; @@ -9,7 +9,7 @@ in fetchzip rec { mkdir -p $out/share/fonts unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype ''; - sha256 = "0n9qmh6v7gvrl1mfb0knygxlbkb78hvkdrppssx64m3pk4pxw85a"; + sha256 = "1mwlw39nbqrk08crvgm77l98yyyabwhcgsng89c9s67gq4mlxmxa"; meta = with lib; { description = "IBM Plex Typeface"; diff --git a/pkgs/development/compilers/graalvm/default.nix b/pkgs/development/compilers/graalvm/default.nix index 7721ce06a56..a35143b4349 100644 --- a/pkgs/development/compilers/graalvm/default.nix +++ b/pkgs/development/compilers/graalvm/default.nix @@ -50,6 +50,9 @@ let rec { sha1 = "280c265b789e041c02e5c97815793dfc283fb1e6"; name = "LIBFFI_${sha1}/libffi.tar.gz"; url = https://lafo.ssw.uni-linz.ac.at/pub/graal-external-deps/libffi-3.2.1.tar.gz; } rec { sha1 = "8819cea8bfe22c9c63f55465e296b3855ea41786"; name = "TruffleJSON_${sha1}/trufflejson.jar"; url = https://lafo.ssw.uni-linz.ac.at/pub/graal-external-deps/trufflejson-20180130.jar; } rec { sha1 = "9712a8124c40298015f04a74f61b3d81a51513af"; name = "CHECKSTYLE_8.8_${sha1}/checkstyle-8.8.jar"; url = https://lafo.ssw.uni-linz.ac.at/pub/graal-external-deps/checkstyle-8.8-all.jar; } + rec { sha1 = "a828a4f32caf9ac0b74f2548f87310959558c526"; name = "VISUALVM_COMMON_${sha1}/visualvm-common.tar.gz"; url = https://lafo.ssw.uni-linz.ac.at/pub/graal-external-deps/visualvm-612.tar.gz; } + rec { sha1 = "7ac829f0c9a37f5cc39afd2265588a365480720d"; name = "VISUALVM_PLATFORM_SPECIFIC_${sha1}/visualvm-platform-specific.tar.gz"; url = https://lafo.ssw.uni-linz.ac.at/pub/graal-external-deps/visualvm-612-linux-amd64.tar.gz; } + rec { sha1 = "e6e60889b7211a80b21052a249bd7e0f88f79fee"; name = "Java-WebSocket_${sha1}/java-websocket.jar"; url = mirror://maven/org/java-websocket/Java-WebSocket/1.3.9/Java-WebSocket-1.3.9.jar; } ]; findbugs = fetchzip { @@ -61,13 +64,13 @@ let in rec { mx = stdenv.mkDerivation rec { - version = "5.176.4"; + version = "5.192.0"; name = "mx"; src = fetchFromGitHub { owner = "graalvm"; repo = "mx"; rev = version; - sha256 = "0xmx4hpnd6m9hk49lgwnvwd0q11s2m4d8axwq7zzc8wm10d692xw"; + sha256 = "04gdf1gzlc8a6li8lcnrs2j9zicj11fs1vqqf7cmhb4pm2h72hml"; }; nativeBuildInputs = [ makeWrapper ]; buildPhase = '' @@ -79,6 +82,11 @@ in rec { 'def download(path, urls, verbose=False, abortOnError=True, verifyOnly=False): print("FAKE download(path={} urls={} verbose={} abortOnError={} verifyOnly={})".format(path, urls, verbose, abortOnError, verifyOnly)) return True' + + # avoid crash with 'ValueError: ZIP does not support timestamps before 1980' + substituteInPlace mx.py --replace \ + 'zipfile.ZipInfo(arcname, time.localtime(os.path.getmtime(join(root, f)))[:6])' \ + 'zipfile.ZipInfo(arcname, time.strptime ("1 Jan 1980", "%d %b %Y" )[:6])' ''; installPhase = '' mkdir -p $out/bin @@ -97,9 +105,9 @@ in rec { # copy of pkgs.oraclejvm8 with JVMCI interface (TODO: it should work with pkgs.openjdk8 too) jvmci8 = stdenv.mkDerivation rec { - version = "0.45"; + version = "0.49"; name = let - n = "jvmci8u171-${version}"; + n = "jvmci${/*"8u191"*/ lib.removePrefix "oraclejdk-" oraclejdk8.name}-${version}"; in if (lib.stringLength n) == (lib.stringLength oraclejdk8.name) then n else @@ -108,7 +116,7 @@ in rec { owner = "graalvm"; repo = "graal-jvmci-8"; rev = "jvmci-${version}"; - sha256 = "1nppk9dpamisiadss1iy82i3rf6igndbf1vax85w9lz310kh0d12"; + sha256 = "1zgin0w1qa7wmfhcisx470fhnmddfxxp5nyyix31yaa7dznql82k"; }; buildInputs = [ mx mercurial ]; postUnpack = '' @@ -146,7 +154,7 @@ in rec { }; graalvm8 = stdenv.mkDerivation rec { - version = "1.0.0-rc3"; + version = "1.0.0-rc8"; name = let n = "graal-${version}"; in if (lib.stringLength n) == (lib.stringLength jvmci8.name) then @@ -157,7 +165,7 @@ in rec { owner = "oracle"; repo = "graal"; rev = "vm-${version}"; - sha256 = "1hcs4m6ailapgi3bikav1i517vqn5pn595cyqqjfvlnkjwihbnc3"; + sha256 = "1fada4awrr8bhw294xdiq4bagvgrlcr44mw6338gaal0ky3vkm0p"; }; buildInputs = [ mx zlib mercurial jvmci8 ]; postUnpack = '' @@ -170,6 +178,17 @@ in rec { hg checkout ${lib.escapeShellArg src.rev} ) ''; + postPatch = '' + substituteInPlace substratevm/src/com.oracle.svm.core.posix/src/com/oracle/svm/core/posix/headers/PosixDirectives.java \ + --replace '' '<${zlib.dev}/include/zlib.h>' + substituteInPlace substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/CCLinkerInvocation.java \ + --replace 'cmd.add("-v");' 'cmd.add("-v"); cmd.add("-L${zlib}/lib");' + substituteInPlace substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/c/codegen/CCompilerInvoker.java \ + --replace 'command.add(Platform.includedIn(Platform.WINDOWS.class) ? "CL" : "gcc");' \ + 'command.add(Platform.includedIn(Platform.WINDOWS.class) ? "CL" : "${stdenv.cc}/bin/gcc");' + substituteInPlace substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/image/CCLinkerInvocation.java \ + --replace 'protected String compilerCommand = "cc";' 'protected String compilerCommand = "${stdenv.cc}/bin/cc";' + ''; buildPhase = '' # make a copy of jvmci8 cp -dpR ${jvmci8} $out @@ -178,13 +197,14 @@ in rec { export MX_ALT_OUTPUT_ROOT=$NIX_BUILD_TOP/mxbuild export MX_CACHE_DIR=${makeMxCache graal-mxcache} + ( cd substratevm mkdir -p clibraries mx --java-home $out build # bootstrap native-image (that was removed from mx build in https://github.com/oracle/graal/commit/140d7a7edf54ec5872a8ff45869cd1ae499efde4) - mx --java-home $out native-image -cp $MX_ALT_OUTPUT_ROOT/substratevm/dists/svm-driver.jar com.oracle.svm.driver.NativeImage + mx --java-home $out native-image -cp $MX_ALT_OUTPUT_ROOT/substratevm/dists/jdk1.8/svm-driver.jar com.oracle.svm.driver.NativeImage ) ( cd tools mx --java-home $out build @@ -195,17 +215,17 @@ in rec { mkdir -p $out/jre/tools/{profiler,chromeinspector,truffle/builder} $out/jre/lib/{graal,include,truffle/include} cp -vpLR substratevm/svmbuild/native-image-root/lib/* $out/jre/lib/ || true # ignore "same file" error when dereferencing symlinks cp -vp $MX_ALT_OUTPUT_ROOT/truffle/linux-amd64/truffle-nfi-native/bin/* $out/jre/lib/amd64/ - cp -vp $MX_ALT_OUTPUT_ROOT/compiler/dists/graal-*processor*.jar $out/jre/lib/graal/ + cp -vp $MX_ALT_OUTPUT_ROOT/compiler/dists/jdk1.8/graal-*processor*.jar $out/jre/lib/graal/ cp -vp $MX_ALT_OUTPUT_ROOT/truffle/linux-amd64/truffle-nfi-native/include/* $out/jre/lib/include/ - cp -vp $MX_ALT_OUTPUT_ROOT/compiler/dists/graal-management.jar $out/jre/lib/jvmci/ + cp -vp $MX_ALT_OUTPUT_ROOT/compiler/dists/jdk1.8/graal-management.jar $out/jre/lib/jvmci/ cp -vdpR $out/jre/lib/svm/clibraries $out/jre/lib/svm/builder/ - cp -vpR $MX_ALT_OUTPUT_ROOT/truffle/dists/* $out/jre/lib/truffle/ + cp -vpR $MX_ALT_OUTPUT_ROOT/truffle/dists/jdk1.8/* $out/jre/lib/truffle/ cp -vp $MX_ALT_OUTPUT_ROOT/truffle/linux-amd64/truffle-nfi-native/include/* $out/jre/lib/truffle/include/ cp -vpLR substratevm/svmbuild/native-image-root/tools/* $out/jre/tools/ cp -vpR $MX_ALT_OUTPUT_ROOT/tools/dists/chromeinspector* $out/jre/tools/chromeinspector/ cp -vpR $MX_ALT_OUTPUT_ROOT/tools/dists/truffle-profiler* $out/jre/tools/profiler/ cp -vpR $MX_ALT_OUTPUT_ROOT/truffle/linux-amd64/truffle-nfi-native/* $out/jre/tools/truffle/ - cp -vp $MX_ALT_OUTPUT_ROOT/truffle/dists/truffle-nfi.jar $out/jre/tools/truffle/builder/ + cp -vp $MX_ALT_OUTPUT_ROOT/truffle/dists/jdk1.8/truffle-nfi.jar $out/jre/tools/truffle/builder/ echo "name=GraalVM ${version}" > $out/jre/lib/amd64/server/vm.properties echo -n "graal" > $out/jre/lib/jvmci/compiler-name diff --git a/pkgs/development/coq-modules/contribs/default.nix b/pkgs/development/coq-modules/contribs/default.nix index d12d3fefb94..a1ecdd610a3 100644 --- a/pkgs/development/coq-modules/contribs/default.nix +++ b/pkgs/development/coq-modules/contribs/default.nix @@ -1018,7 +1018,7 @@ let mkContrib = repo: revs: param: sha256 = "0fp3vdl79c8d759qjhk42rjfpkd0ba4pcw572f5gxn28kfwz3rrj"; }; - zfc = mkContrib "zfc" [ "8.5" "8.6" "8.7" ] { + zfc = mkContrib "zfc" [ "8.5" "8.6" "8.7" "8.8" ] { version = "v8.5.0-5-gbba3259"; rev = "bba325933370fea64780b1afa2fad54c1b567819"; sha256 = "0iwkpmc22nwasrk4g7ki4s5y05zjs7kmqk3j98giwp2wiavhgapn"; diff --git a/pkgs/development/dhall-modules/default.nix b/pkgs/development/dhall-modules/default.nix new file mode 100644 index 00000000000..b6632a86f31 --- /dev/null +++ b/pkgs/development/dhall-modules/default.nix @@ -0,0 +1,9 @@ +{ pkgs }: + +# TODO: add into the toplevel fixpoint instead of using rec +rec { + + prelude = prelude_3_0_0; + prelude_3_0_0 = pkgs.callPackage ./prelude/v3.nix {}; + +} diff --git a/pkgs/development/dhall-modules/prelude/v3.nix b/pkgs/development/dhall-modules/prelude/v3.nix new file mode 100644 index 00000000000..ef673310ceb --- /dev/null +++ b/pkgs/development/dhall-modules/prelude/v3.nix @@ -0,0 +1,25 @@ +{ stdenv, lib, fetchFromGitHub }: + +stdenv.mkDerivation { + name = "dhall-prelude"; + + src = fetchFromGitHub { + owner = "dhall-lang"; + repo = "dhall-lang"; + # Commit where the v3.0.0 prelude folder was merged into dhall-lang + # and a LICENSE file has been added. + rev = "f6aa9399f1ac831d66c34104abe6856023c5b2df"; + sha256 = "0kqjgh3y1l3cb3rj381j7c09547g1vh2dsfzpm08y1qajhhf9vgf"; + }; + + phases = [ "unpackPhase" "installPhase" ]; + + installPhase = '' + cp -r Prelude $out + ''; + + meta = { + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ Profpatsch ]; + }; +} diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index 56ffd6ee54e..1a6d38ba5d8 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -893,6 +893,9 @@ self: super: { # https://github.com/aisamanra/config-ini/issues/12 config-ini = dontCheck super.config-ini; + # We've remove cpython 3.4 from nixpkgs + cpython = null; + # doctest >=0.9 && <0.12 genvalidity-property = doJailbreak super.genvalidity-property; path = dontCheck super.path; diff --git a/pkgs/development/haskell-modules/generic-builder.nix b/pkgs/development/haskell-modules/generic-builder.nix index 8f230c92aaa..a0bf655a67b 100644 --- a/pkgs/development/haskell-modules/generic-builder.nix +++ b/pkgs/development/haskell-modules/generic-builder.nix @@ -443,6 +443,7 @@ stdenv.mkDerivation ({ env = shellFor { packages = p: [ drv ]; + inherit shellHook; }; }; diff --git a/pkgs/development/interpreters/python/cpython/3.4/default.nix b/pkgs/development/interpreters/python/cpython/3.4/default.nix deleted file mode 100644 index 18b90cd1da4..00000000000 --- a/pkgs/development/interpreters/python/cpython/3.4/default.nix +++ /dev/null @@ -1,214 +0,0 @@ -{ stdenv, fetchurl, fetchpatch -, bzip2 -, expat -, libffi -, gdbm -, lzma -, ncurses -, openssl -, readline -, sqlite -, tcl ? null, tk ? null, tix ? null, libX11 ? null, xproto ? null, x11Support ? false -, zlib -, callPackage -, self -, CF, configd -, python-setup-hook -# For the Python package set -, packageOverrides ? (self: super: {}) -}: - -assert x11Support -> tcl != null - && tk != null - && xproto != null - && libX11 != null; - -with stdenv.lib; - -let - majorVersion = "3.4"; - minorVersion = "9"; - minorVersionSuffix = ""; - version = "${majorVersion}.${minorVersion}${minorVersionSuffix}"; - libPrefix = "python${majorVersion}"; - sitePackages = "lib/${libPrefix}/site-packages"; - - buildInputs = filter (p: p != null) [ - zlib bzip2 expat lzma libffi gdbm sqlite readline ncurses openssl ] - ++ optionals x11Support [ tcl tk libX11 xproto ] - ++ optionals stdenv.isDarwin [ CF configd ]; - - hasDistutilsCxxPatch = !(stdenv.cc.isGNU or false); - -in stdenv.mkDerivation { - name = "python3-${version}"; - pythonVersion = majorVersion; - inherit majorVersion version; - - inherit buildInputs; - - src = fetchurl { - url = "http://www.python.org/ftp/python/${version}/Python-${version}.tar.xz"; - sha256 = "1n9b1kavmw8b7rc3gkrka4fjzrbfq9iqy791yncaf09bp9v9cqjr"; - }; - - NIX_LDFLAGS = optionalString stdenv.isLinux "-lgcc_s"; - - # Determinism: The interpreter is patched to write null timestamps when compiling python files. - # This way python doesn't try to update them when we freeze timestamps in nix store. - DETERMINISTIC_BUILD=1; - # Determinism: We fix the hashes of str, bytes and datetime objects. - PYTHONHASHSEED=0; - - prePatch = optionalString stdenv.isDarwin '' - substituteInPlace configure --replace '`/usr/bin/arch`' '"i386"' - substituteInPlace configure --replace '-Wl,-stack_size,1000000' ' ' - ''; - - patches = [ - ./no-ldconfig.patch - ./ld_library_path.patch - ] ++ optionals (x11Support && stdenv.isDarwin) [ - ./use-correct-tcl-tk-on-darwin.patch - ] ++ optionals hasDistutilsCxxPatch [ - # Fix for http://bugs.python.org/issue1222585 - # Upstream distutils is calling C compiler to compile C++ code, which - # only works for GCC and Apple Clang. This makes distutils to call C++ - # compiler when needed. - (fetchpatch { - url = "https://bugs.python.org/file47046/python-3.x-distutils-C++.patch"; - sha256 = "0dgdn9k2kmw4wh90vdnjcrnn97ylxgx7mbn9l87fwz6j501jqvk8"; - extraPrefix = ""; - }) - ]; - - postPatch = '' - # Determinism - substituteInPlace "Lib/py_compile.py" --replace "source_stats['mtime']" "(1 if 'DETERMINISTIC_BUILD' in os.environ else source_stats['mtime'])" - # Determinism. This is done unconditionally - substituteInPlace "Lib/importlib/_bootstrap.py" --replace "source_mtime = int(source_stats['mtime'])" "source_mtime = 1" - '' + optionalString (x11Support && (tix != null)) '' - substituteInPlace "Lib/tkinter/tix.py" --replace "os.environ.get('TIX_LIBRARY')" "os.environ.get('TIX_LIBRARY') or '${tix}/lib'" - '' - # Avoid picking up getentropy() from glibc >= 2.25, as that would break - # on older kernels. http://bugs.python.org/issue29157 - + optionalString stdenv.isLinux '' - substituteInPlace Python/random.c --replace 'defined(HAVE_GETENTROPY)' '0' - cat Python/random.c - ''; - - CPPFLAGS="${concatStringsSep " " (map (p: "-I${getDev p}/include") buildInputs)}"; - LDFLAGS="${concatStringsSep " " (map (p: "-L${getLib p}/lib") buildInputs)}"; - LIBS="${optionalString (!stdenv.isDarwin) "-lcrypt"} ${optionalString (ncurses != null) "-lncurses"}"; - - configureFlags = [ - "--enable-shared" - "--with-threads" - "--without-ensurepip" - "--with-system-expat" - "--with-system-ffi" - ] - # Never even try to use lchmod on linux, - # don't rely on detecting glibc-isms. - ++ optional stdenv.hostPlatform.isLinux "ac_cv_func_lchmod=no"; - - preConfigure = '' - for i in /usr /sw /opt /pkg; do # improve purity - substituteInPlace ./setup.py --replace $i /no-such-path - done - ${optionalString stdenv.isDarwin '' - export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -msse2" - export MACOSX_DEPLOYMENT_TARGET=10.6 - '' - + optionalString stdenv.hostPlatform.isMusl '' - export NIX_CFLAGS_COMPILE+=" -DTHREAD_STACK_SIZE=0x100000" - ''} - ''; - - setupHook = python-setup-hook sitePackages; - - postInstall = '' - # needed for some packages, especially packages that backport functionality - # to 2.x from 3.x - for item in $out/lib/python${majorVersion}/test/*; do - if [[ "$item" != */test_support.py* - && "$item" != */test/support - && "$item" != */test/libregrtest - && "$item" != */test/regrtest.py* ]]; then - rm -rf "$item" - else - echo $item - fi - done - touch $out/lib/python${majorVersion}/test/__init__.py - - ln -s "$out/include/python${majorVersion}m" "$out/include/python${majorVersion}" - paxmark E $out/bin/python${majorVersion} - - # Python on Nix is not manylinux1 compatible. https://github.com/NixOS/nixpkgs/issues/18484 - echo "manylinux1_compatible=False" >> $out/lib/${libPrefix}/_manylinux.py - - # Determinism: Windows installers were not deterministic. - # We're also not interested in building Windows installers. - find "$out" -name 'wininst*.exe' | xargs -r rm -f - - # Use Python3 as default python - ln -s "$out/bin/idle3" "$out/bin/idle" - ln -s "$out/bin/pydoc3" "$out/bin/pydoc" - ln -s "$out/bin/python3" "$out/bin/python" - ln -s "$out/bin/python3-config" "$out/bin/python-config" - ln -s "$out/lib/pkgconfig/python3.pc" "$out/lib/pkgconfig/python.pc" - - # Get rid of retained dependencies on -dev packages, and remove - # some $TMPDIR references to improve binary reproducibility. - # Note that the .pyc file of _sysconfigdata.py should be regenerated! - for i in $out/lib/python${majorVersion}/_sysconfigdata.py $out/lib/python${majorVersion}/config-${majorVersion}m/Makefile; do - sed -i $i -e "s|-I/nix/store/[^ ']*||g" -e "s|-L/nix/store/[^ ']*||g" -e "s|$TMPDIR|/no-such-path|g" - done - - # Determinism: rebuild all bytecode - # We exclude lib2to3 because that's Python 2 code which fails - # We rebuild three times, once for each optimization level - find $out -name "*.py" | $out/bin/python -m compileall -q -f -x "lib2to3" -i - - find $out -name "*.py" | $out/bin/python -O -m compileall -q -f -x "lib2to3" -i - - find $out -name "*.py" | $out/bin/python -OO -m compileall -q -f -x "lib2to3" -i - - ''; - - passthru = let - pythonPackages = callPackage ../../../../../top-level/python-packages.nix { - python = self; - overrides = packageOverrides; - }; - in rec { - inherit libPrefix sitePackages x11Support hasDistutilsCxxPatch; - executable = "${libPrefix}m"; - buildEnv = callPackage ../../wrapper.nix { python = self; inherit (pythonPackages) requiredPythonModules; }; - withPackages = import ../../with-packages.nix { inherit buildEnv pythonPackages;}; - pkgs = pythonPackages; - isPy3 = true; - isPy34 = true; - is_py3k = true; # deprecated - interpreter = "${self}/bin/${executable}"; - }; - - enableParallelBuilding = true; - - doCheck = false; # expensive, and fails - - meta = { - homepage = http://python.org; - description = "A high-level dynamically-typed programming language"; - longDescription = '' - Python is a remarkably powerful dynamic programming language that - is used in a wide variety of application domains. Some of its key - distinguishing features include: clear, readable syntax; strong - introspection capabilities; intuitive object orientation; natural - expression of procedural code; full modularity, supporting - hierarchical packages; exception-based error handling; and very - high level dynamic data types. - ''; - license = licenses.psfl; - platforms = with platforms; linux ++ darwin; - maintainers = with maintainers; [ fridh ]; - }; -} diff --git a/pkgs/development/interpreters/python/cpython/3.4/ld_library_path.patch b/pkgs/development/interpreters/python/cpython/3.4/ld_library_path.patch deleted file mode 100644 index 3172eb6d18e..00000000000 --- a/pkgs/development/interpreters/python/cpython/3.4/ld_library_path.patch +++ /dev/null @@ -1,51 +0,0 @@ -From 85991e0d7f0e631240f3f6233bd65d1128a66dec Mon Sep 17 00:00:00 2001 -From: Frederik Rietdijk -Date: Thu, 14 Sep 2017 10:00:31 +0200 -Subject: [PATCH] ctypes.util: support LD_LIBRARY_PATH - -Backports support for LD_LIBRARY_PATH from 3.6 ---- - Lib/ctypes/util.py | 26 +++++++++++++++++++++++++- - 1 file changed, 25 insertions(+), 1 deletion(-) - -diff --git a/Lib/ctypes/util.py b/Lib/ctypes/util.py -index 780cd5d21b..d7ac15070f 100644 ---- a/Lib/ctypes/util.py -+++ b/Lib/ctypes/util.py -@@ -181,8 +181,32 @@ elif os.name == "posix": - def _findSoname_ldconfig(name): - return None - -+ def _findLib_ld(name): -+ # See issue #9998 for why this is needed -+ expr = r'[^\(\)\s]*lib%s\.[^\(\)\s]*' % re.escape(name) -+ cmd = ['ld', '-t'] -+ libpath = os.environ.get('LD_LIBRARY_PATH') -+ if libpath: -+ for d in libpath.split(':'): -+ cmd.extend(['-L', d]) -+ cmd.extend(['-o', os.devnull, '-l%s' % name]) -+ result = None -+ try: -+ p = subprocess.Popen(cmd, stdout=subprocess.PIPE, -+ stderr=subprocess.PIPE, -+ universal_newlines=True) -+ out, _ = p.communicate() -+ res = re.search(expr, os.fsdecode(out)) -+ if res: -+ result = res.group(0) -+ except Exception as e: -+ pass # result will be None -+ return result -+ - def find_library(name): -- return _findSoname_ldconfig(name) or _get_soname(_findLib_gcc(name)) -+ # See issue #9998 -+ return _findSoname_ldconfig(name) or \ -+ _get_soname(_findLib_gcc(name) or _findLib_ld(name)) - - ################################################################ - # test code --- -2.14.1 - diff --git a/pkgs/development/interpreters/python/cpython/3.4/no-ldconfig.patch b/pkgs/development/interpreters/python/cpython/3.4/no-ldconfig.patch deleted file mode 100644 index 3cb77a10725..00000000000 --- a/pkgs/development/interpreters/python/cpython/3.4/no-ldconfig.patch +++ /dev/null @@ -1,147 +0,0 @@ -From 81bd99ad9058feb1d0361bc8862e8567c21a6142 Mon Sep 17 00:00:00 2001 -From: Frederik Rietdijk -Date: Mon, 28 Aug 2017 09:24:06 +0200 -Subject: [PATCH] Don't use ldconfig and speed up uuid load - ---- - Lib/ctypes/util.py | 52 ++-------------------------------------------------- - Lib/uuid.py | 50 ++------------------------------------------------ - 2 files changed, 4 insertions(+), 98 deletions(-) - -diff --git a/Lib/ctypes/util.py b/Lib/ctypes/util.py -index 595113bffd..780cd5d21b 100644 ---- a/Lib/ctypes/util.py -+++ b/Lib/ctypes/util.py -@@ -88,28 +88,7 @@ elif os.name == "posix": - import re, tempfile - - def _findLib_gcc(name): -- expr = r'[^\(\)\s]*lib%s\.[^\(\)\s]*' % re.escape(name) -- fdout, ccout = tempfile.mkstemp() -- os.close(fdout) -- cmd = 'if type gcc >/dev/null 2>&1; then CC=gcc; elif type cc >/dev/null 2>&1; then CC=cc;else exit 10; fi;' \ -- 'LANG=C LC_ALL=C $CC -Wl,-t -o ' + ccout + ' 2>&1 -l' + name -- try: -- f = os.popen(cmd) -- try: -- trace = f.read() -- finally: -- rv = f.close() -- finally: -- try: -- os.unlink(ccout) -- except FileNotFoundError: -- pass -- if rv == 10: -- raise OSError('gcc or cc command not found') -- res = re.search(expr, trace) -- if not res: -- return None -- return res.group(0) -+ return None - - - if sys.platform == "sunos5": -@@ -200,34 +179,7 @@ elif os.name == "posix": - else: - - def _findSoname_ldconfig(name): -- import struct -- if struct.calcsize('l') == 4: -- machine = os.uname().machine + '-32' -- else: -- machine = os.uname().machine + '-64' -- mach_map = { -- 'x86_64-64': 'libc6,x86-64', -- 'ppc64-64': 'libc6,64bit', -- 'sparc64-64': 'libc6,64bit', -- 's390x-64': 'libc6,64bit', -- 'ia64-64': 'libc6,IA-64', -- } -- abi_type = mach_map.get(machine, 'libc6') -- -- # XXX assuming GLIBC's ldconfig (with option -p) -- regex = os.fsencode( -- '\s+(lib%s\.[^\s]+)\s+\(%s' % (re.escape(name), abi_type)) -- try: -- with subprocess.Popen(['/sbin/ldconfig', '-p'], -- stdin=subprocess.DEVNULL, -- stderr=subprocess.DEVNULL, -- stdout=subprocess.PIPE, -- env={'LC_ALL': 'C', 'LANG': 'C'}) as p: -- res = re.search(regex, p.stdout.read()) -- if res: -- return os.fsdecode(res.group(1)) -- except OSError: -- pass -+ return None - - def find_library(name): - return _findSoname_ldconfig(name) or _get_soname(_findLib_gcc(name)) -diff --git a/Lib/uuid.py b/Lib/uuid.py -index 1061bffc43..846f5819f5 100644 ---- a/Lib/uuid.py -+++ b/Lib/uuid.py -@@ -451,57 +451,11 @@ def _netbios_getnode(): - return ((bytes[0]<<40) + (bytes[1]<<32) + (bytes[2]<<24) + - (bytes[3]<<16) + (bytes[4]<<8) + bytes[5]) - --# Thanks to Thomas Heller for ctypes and for his help with its use here. - --# If ctypes is available, use it to find system routines for UUID generation. --# XXX This makes the module non-thread-safe! - _uuid_generate_random = _uuid_generate_time = _UuidCreate = None --try: -- import ctypes, ctypes.util - -- # The uuid_generate_* routines are provided by libuuid on at least -- # Linux and FreeBSD, and provided by libc on Mac OS X. -- for libname in ['uuid', 'c']: -- try: -- lib = ctypes.CDLL(ctypes.util.find_library(libname)) -- except: -- continue -- if hasattr(lib, 'uuid_generate_random'): -- _uuid_generate_random = lib.uuid_generate_random -- if hasattr(lib, 'uuid_generate_time'): -- _uuid_generate_time = lib.uuid_generate_time -- if _uuid_generate_random is not None: -- break # found everything we were looking for -- -- # The uuid_generate_* functions are broken on MacOS X 10.5, as noted -- # in issue #8621 the function generates the same sequence of values -- # in the parent process and all children created using fork (unless -- # those children use exec as well). -- # -- # Assume that the uuid_generate functions are broken from 10.5 onward, -- # the test can be adjusted when a later version is fixed. -- import sys -- if sys.platform == 'darwin': -- import os -- if int(os.uname().release.split('.')[0]) >= 9: -- _uuid_generate_random = _uuid_generate_time = None -- -- # On Windows prior to 2000, UuidCreate gives a UUID containing the -- # hardware address. On Windows 2000 and later, UuidCreate makes a -- # random UUID and UuidCreateSequential gives a UUID containing the -- # hardware address. These routines are provided by the RPC runtime. -- # NOTE: at least on Tim's WinXP Pro SP2 desktop box, while the last -- # 6 bytes returned by UuidCreateSequential are fixed, they don't appear -- # to bear any relationship to the MAC address of any network device -- # on the box. -- try: -- lib = ctypes.windll.rpcrt4 -- except: -- lib = None -- _UuidCreate = getattr(lib, 'UuidCreateSequential', -- getattr(lib, 'UuidCreate', None)) --except: -- pass -+_uuid_generate_time = _UuidCreate = None -+ - - def _unixdll_getnode(): - """Get the hardware address on Unix using ctypes.""" --- -2.14.1 - diff --git a/pkgs/development/interpreters/python/cpython/3.4/use-correct-tcl-tk-on-darwin.patch b/pkgs/development/interpreters/python/cpython/3.4/use-correct-tcl-tk-on-darwin.patch deleted file mode 100644 index b73f62b97ec..00000000000 --- a/pkgs/development/interpreters/python/cpython/3.4/use-correct-tcl-tk-on-darwin.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff --git a/setup.py b/setup.py -index 2779658..902d0eb 100644 ---- a/setup.py -+++ b/setup.py -@@ -1699,9 +1699,6 @@ class PyBuildExt(build_ext): - # Rather than complicate the code below, detecting and building - # AquaTk is a separate method. Only one Tkinter will be built on - # Darwin - either AquaTk, if it is found, or X11 based Tk. -- if (host_platform == 'darwin' and -- self.detect_tkinter_darwin(inc_dirs, lib_dirs)): -- return - - # Assume we haven't found any of the libraries or include files - # The versions with dots are used on Unix, and the versions without -@@ -1747,22 +1744,6 @@ class PyBuildExt(build_ext): - if dir not in include_dirs: - include_dirs.append(dir) - -- # Check for various platform-specific directories -- if host_platform == 'sunos5': -- include_dirs.append('/usr/openwin/include') -- added_lib_dirs.append('/usr/openwin/lib') -- elif os.path.exists('/usr/X11R6/include'): -- include_dirs.append('/usr/X11R6/include') -- added_lib_dirs.append('/usr/X11R6/lib64') -- added_lib_dirs.append('/usr/X11R6/lib') -- elif os.path.exists('/usr/X11R5/include'): -- include_dirs.append('/usr/X11R5/include') -- added_lib_dirs.append('/usr/X11R5/lib') -- else: -- # Assume default location for X11 -- include_dirs.append('/usr/X11/include') -- added_lib_dirs.append('/usr/X11/lib') -- - # If Cygwin, then verify that X is installed before proceeding - if host_platform == 'cygwin': - x11_inc = find_file('X11/Xlib.h', [], include_dirs) -@@ -1786,10 +1767,6 @@ class PyBuildExt(build_ext): - if host_platform in ['aix3', 'aix4']: - libs.append('ld') - -- # Finally, link with the X11 libraries (not appropriate on cygwin) -- if host_platform != "cygwin": -- libs.append('X11') -- - ext = Extension('_tkinter', ['_tkinter.c', 'tkappinit.c'], - define_macros=[('WITH_APPINIT', 1)] + defs, - include_dirs = include_dirs, diff --git a/pkgs/development/libraries/v8/plv8_6_x.nix b/pkgs/development/libraries/v8/plv8_6_x.nix new file mode 100644 index 00000000000..8d2276def70 --- /dev/null +++ b/pkgs/development/libraries/v8/plv8_6_x.nix @@ -0,0 +1,187 @@ +# NOTE: this expression is NOT exported from the top-level of all-packages.nix, +# it is exclusively used by the 'plv8' PostgreSQL extension, which requires a +# very exact version. + +{ stdenv, lib, fetchgit, fetchFromGitHub, gn, ninja, python, glib, pkgconfig +, doCheck ? false +, snapshot ? true +}: + +let + arch = if stdenv.isAarch32 + then if stdenv.is64bit + then"arm64" + else "arm" + else if stdenv.is64bit + then"x64" + else "ia32"; + git_url = "https://chromium.googlesource.com"; + + # This data is from the DEPS file in the root of a V8 checkout + deps = { + "base/trace_event/common" = fetchgit { + url = "${git_url}/chromium/src/base/trace_event/common.git"; + rev = "0e9a47d74970bee1bbfc063c47215406f8918699"; + sha256 = "07rbzrlscp8adh4z86yl5jxdnvgkc3xs950xldpk318wf9i3bh6c"; + }; + "build" = fetchgit { + url = "${git_url}/chromium/src/build.git"; + rev = "9338ce52d0b9bcef34c38285fbd5023b62739fac"; + sha256 = "1s2sa8dy3waidsirjylc82ggb18l1108bczjc8z0v4ywyj4k0cvh"; + }; + "buildtools" = fetchgit { + url = "${git_url}/chromium/buildtools.git"; + rev = "505de88083136eefd056e5ee4ca0f01fe9b33de8"; + sha256 = "0vj216nhb803bggsl0hnyagj8njrm96pn8sim6xcnqb7nhz1vabw"; + }; + "test/benchmarks/data" = fetchgit { + url = "${git_url}/v8/deps/third_party/benchmarks.git"; + rev = "05d7188267b4560491ff9155c5ee13e207ecd65f"; + sha256 = "0ad2ay14bn67d61ks4dmzadfnhkj9bw28r4yjdjjyzck7qbnzchl"; + }; + "test/mozilla/data" = fetchgit { + url = "${git_url}/v8/deps/third_party/mozilla-tests.git"; + rev = "f6c578a10ea707b1a8ab0b88943fe5115ce2b9be"; + sha256 = "0rfdan76yfawqxbwwb35aa57b723j3z9fx5a2w16nls02yk2kqyn"; + }; + "test/test262/data" = fetchgit { + url = "${git_url}/external/github.com/tc39/test262.git"; + rev = "5d4c667b271a9b39d0de73aef5ffe6879c6f8811"; + sha256 = "0q9iwb2nkybf9np95wgf5m372aw2lhx9wlsw41a2a80kbkvb2kqg"; + }; + "test/test262/harness" = fetchgit { + url = "${git_url}/external/github.com/test262-utils/test262-harness-py.git"; + rev = "0f2acdd882c84cff43b9d60df7574a1901e2cdcd"; + sha256 = "00brj5avp43yamc92kinba2mg3a2x1rcd7wnm7z093l73idprvkp"; + }; + "test/wasm-js" = fetchgit { + url = "${git_url}/external/github.com/WebAssembly/spec.git"; + rev = "a7e226a92e660a3d5413cfea4269824f513259d2"; + sha256 = "0z3aybj3ykajwh2bv5fwd6pwqjjsq8dnwrqc2wncb6r9xcjwbgxp"; + }; + "testing/gtest" = fetchgit { + url = "${git_url}/external/github.com/google/googletest.git"; + rev = "6f8a66431cb592dad629028a50b3dd418a408c87"; + sha256 = "0bdba2lr6pg15bla9600zg0r0vm4lnrx0wqz84p376wfdxra24vw"; + }; + "third_party/icu" = fetchgit { + url = "${git_url}/chromium/deps/icu.git"; + rev = "741688ebf328da9adc52505248bf4e2ef868722c"; + sha256 = "02ifm18qjlrkn5nm2rxkf9yz9bdlyq7c65jfjndv63vi1drqh1r9"; + }; + "third_party/instrumented_libraries" = fetchgit { + url = "${git_url}/chromium/src/third_party/instrumented_libraries.git"; + rev = "28417458ac4dc79f68915079d0f283f682504cc0"; + sha256 = "1qf5c2946n37p843yriv7xawi6ss6samabghq43s49cgd4wq8dc3"; + }; + "third_party/jinja2" = fetchgit { + url = "${git_url}/chromium/src/third_party/jinja2.git"; + rev = "d34383206fa42d52faa10bb9931d6d538f3a57e0"; + sha256 = "0d9hyw0bvp3p0dbwy833cm9vdqxcam0qbm9jc561ynphddxlkmgd"; + }; + "third_party/markupsafe" = fetchgit { + url = "${git_url}/chromium/src/third_party/markupsafe.git"; + rev = "8f45f5cfa0009d2a70589bcda0349b8cb2b72783"; + sha256 = "168ppjmicfdh4i1l0l25s86mdbrz9fgxmiq1rx33x79mph41scfz"; + }; + "tools/clang" = fetchgit { + url = "${git_url}/chromium/src/tools/clang.git"; + rev = "8688d267571de76a56746324dcc249bf4232b85a"; + sha256 = "0krq4zz1vnwp064bm517gwr2napy18wyccdh8w5s4qgkjwwxd63s"; + }; + "tools/gyp" = fetchgit { + url = "${git_url}/external/gyp.git"; + rev = "d61a9397e668fa9843c4aa7da9e79460fe590bfb"; + sha256 = "1z081h72mjy285jb1kj5xd0pb4p12n9blvsimsavyn3ldmswv0r0"; + }; + "tools/luci-go" = fetchgit { + url = "${git_url}/chromium/src/tools/luci-go.git"; + rev = "45a8a51fda92e123619a69e7644d9c64a320b0c1"; + sha256 = "0r7736gqk7r0i7ig0b5ib10d9q8a8xzsmc0f0fbkm9k78v847vpj"; + }; + "tools/swarming_client" = fetchgit { + url = "${git_url}/infra/luci/client-py.git"; + rev = "4bd9152f8a975d57c972c071dfb4ddf668e02200"; + sha256 = "03zk91gzvqv01g1vbl8d7h8al7vs4ymrrdc8ipg9wpq52yh65smh"; + }; + }; + +in + +stdenv.mkDerivation rec { + name = "v8-${version}"; + version = "6.4.388.40"; + + inherit doCheck; + + src = fetchFromGitHub { + owner = "v8"; + repo = "v8"; + rev = version; + sha256 = "1lq239cgqyidrynz8g3wbdv70ymzv6s0ppad8s219gb3jnizm16a"; + }; + + postUnpack = '' + ${lib.concatStringsSep "\n" ( + lib.mapAttrsToList (n: v: '' + mkdir -p $sourceRoot/${n} + cp -r ${v}/* $sourceRoot/${n} + '') deps)} + ''; + + prePatch = '' + # use our gn, not the bundled one + sed -i -e 's#gn_path = .*#gn_path = "${gn}/bin/gn"#' tools/mb/mb.py + + # disable tests + if [ "$doCheck" = "" ]; then sed -i -e '/"test:gn_all",/d' BUILD.gn; fi + + # disable sysroot usage + chmod u+w build/config build/config/sysroot.gni + sed -i build/config/sysroot.gni \ + -e '/use_sysroot =/ { s#\(use_sysroot =\).*#\1 false#; :a n; /current_cpu/ { s/^/#/; ba }; }' + + # patch shebangs (/usr/bin/env) + patchShebangs tools/dev/v8gen.py + ''; + + configurePhase = '' + tools/dev/v8gen.py -vv ${arch}.release -- \ + is_component_build=true \ + ${if snapshot then "v8_use_external_startup_data=false" else "v8_use_snapshot=false"} \ + is_clang=false \ + linux_use_bundled_binutils=false \ + treat_warnings_as_errors=false \ + use_custom_libcxx=false \ + use_custom_libcxx_for_host=false + ''; + + nativeBuildInputs = [ gn ninja pkgconfig ]; + buildInputs = [ python glib ]; + + buildPhase = '' + ninja -C out.gn/${arch}.release/ + ''; + + enableParallelBuilding = true; + + installPhase = '' + install -vD out.gn/${arch}.release/d8 "$out/bin/d8" + install -vD out.gn/${arch}.release/mksnapshot "$out/bin/mksnapshot" + mkdir -p "$out/lib" + for f in libicui18n.so libicuuc.so libv8_libbase.so libv8_libplatform.so libv8.so; do + install -vD out.gn/${arch}.release/$f "$out/lib/$f" + done + install -vD out.gn/${arch}.release/icudtl.dat "$out/lib/icudtl.dat" + mkdir -p "$out/include" + cp -vr include/*.h "$out/include" + cp -vr include/libplatform "$out/include" + ''; + + meta = with lib; { + description = "Google's open source JavaScript engine"; + maintainers = with maintainers; [ cstrahan proglodyte ]; + platforms = platforms.linux; + license = licenses.bsd3; + }; +} diff --git a/pkgs/development/libraries/xapian/default.nix b/pkgs/development/libraries/xapian/default.nix index 7b92c1c66cd..2d7289ca664 100644 --- a/pkgs/development/libraries/xapian/default.nix +++ b/pkgs/development/libraries/xapian/default.nix @@ -36,5 +36,5 @@ let in { # xapian-ruby needs 1.2.22 as of 2017-05-06 xapian_1_2_22 = generic "1.2.22" "0zsji22n0s7cdnbgj0kpil05a6bgm5cfv0mvx12d8ydg7z58g6r6"; - xapian_1_4 = generic "1.4.8" "0528841hn5lddaa317ax3i3d01zf1izpzh4njiz6s84mxpn06q6s"; + xapian_1_4 = generic "1.4.9" "1k7m7m9jld96k16ansfw2w3c354pvd8ibhnrb6dw012g06fw7sfd"; } diff --git a/pkgs/development/python-modules/httmock/default.nix b/pkgs/development/python-modules/httmock/default.nix new file mode 100644 index 00000000000..b50753c5586 --- /dev/null +++ b/pkgs/development/python-modules/httmock/default.nix @@ -0,0 +1,22 @@ +{ stdenv, buildPythonPackage, fetchFromGitHub, requests }: + +buildPythonPackage rec { + pname = "httmock"; + version = "1.2.6"; + + src = fetchFromGitHub { + owner = "patrys"; + repo = "httmock"; + rev = version; + sha256 = "0iya8qsb2jm03s9p6sf1yzgm1irxl3dcq0k0a9ygl0skzjz5pvab"; + }; + + checkInputs = [ requests ]; + + meta = with stdenv.lib; { + description = "A mocking library for requests"; + homepage = https://github.com/patrys/httmock; + license = licenses.asl20; + maintainers = with maintainers; [ nyanloutre ]; + }; +} diff --git a/pkgs/development/python-modules/imageio/default.nix b/pkgs/development/python-modules/imageio/default.nix index cdbcfee7180..de838028067 100644 --- a/pkgs/development/python-modules/imageio/default.nix +++ b/pkgs/development/python-modules/imageio/default.nix @@ -1,28 +1,42 @@ { stdenv , buildPythonPackage -, fetchurl +, fetchPypi +, pillow +, psutil , pytest , numpy +, isPy3k +, futures +, enum34 }: buildPythonPackage rec { pname = "imageio"; - version = "1.6"; + version = "2.4.1"; - src = fetchurl { - url = "https://github.com/imageio/imageio/archive/v${version}.tar.gz"; - sha256 = "195snkk3fsbjqd5g1cfsd9alzs5q45gdbi2ka9ph4yxqb31ijrbv"; + src = fetchPypi { + sha256 = "0jjiwf6wjipmykh33prjh448qv8mpgngfi77ndc7mym5r1xhgf0n"; + inherit pname version; }; - buildInputs = [ pytest ]; - propagatedBuildInputs = [ numpy ]; + checkInputs = [ pytest psutil ]; + propagatedBuildInputs = [ numpy pillow ] ++ stdenv.lib.optionals (!isPy3k) [ + futures + enum34 + ]; checkPhase = '' + export IMAGEIO_USERDIR="$TMP" + export IMAGEIO_NO_INTERNET="true" + export HOME="$(mktemp -d)" py.test ''; - # Tries to write in /var/tmp/.imageio - doCheck = false; + # For some reason, importing imageio also imports xml on Nix, see + # https://github.com/imageio/imageio/issues/395 + postPatch = '' + substituteInPlace tests/test_meta.py --replace '"urllib",' "\"urllib\",\"xml\"" + ''; meta = with stdenv.lib; { description = "Library for reading and writing a wide range of image, video, scientific, and volumetric data formats"; diff --git a/pkgs/development/python-modules/moviepy/default.nix b/pkgs/development/python-modules/moviepy/default.nix index 63613b51686..637c014cb1a 100644 --- a/pkgs/development/python-modules/moviepy/default.nix +++ b/pkgs/development/python-modules/moviepy/default.nix @@ -4,6 +4,7 @@ , numpy , decorator , imageio +, isPy3k , tqdm }: diff --git a/pkgs/development/python-modules/python-gitlab/default.nix b/pkgs/development/python-modules/python-gitlab/default.nix new file mode 100644 index 00000000000..24ab69f1a0b --- /dev/null +++ b/pkgs/development/python-modules/python-gitlab/default.nix @@ -0,0 +1,22 @@ +{ stdenv, buildPythonPackage, fetchPypi, requests, six, mock, httmock }: + +buildPythonPackage rec { + pname = "python-gitlab"; + version = "1.6.0"; + + src = fetchPypi { + inherit pname version; + sha256 = "20ceb9232f9a412ce6554056a6b5039013d0755261d57b5c8ada7035773de795"; + }; + + propagatedBuildInputs = [ requests six ]; + + checkInputs = [ mock httmock ]; + + meta = with stdenv.lib; { + description = "Interact with GitLab API"; + homepage = https://github.com/python-gitlab/python-gitlab; + license = licenses.lgpl3; + maintainers = with maintainers; [ nyanloutre ]; + }; +} diff --git a/pkgs/development/python-modules/sslib/default.nix b/pkgs/development/python-modules/sslib/default.nix new file mode 100644 index 00000000000..3e5be211d42 --- /dev/null +++ b/pkgs/development/python-modules/sslib/default.nix @@ -0,0 +1,22 @@ +{ stdenv, fetchPypi, buildPythonPackage, isPy3k }: + +buildPythonPackage rec { + pname = "sslib"; + version = "0.2.0"; + disabled = !isPy3k; + + src = fetchPypi { + inherit pname version; + sha256 = "0b5zrjkvx4klmv57pzhcmvbkdlyn745mn02k7hp811hvjrhbz417"; + }; + + # No tests available + doCheck = false; + + meta = with stdenv.lib; { + homepage = https://github.com/jqueiroz/python-sslib; + description = "A Python3 library for sharing secrets"; + license = licenses.mit; + maintainers = with maintainers; [ jqueiroz ]; + }; +} diff --git a/pkgs/development/tools/asmfmt/default.nix b/pkgs/development/tools/asmfmt/default.nix new file mode 100644 index 00000000000..d2cb7e807b5 --- /dev/null +++ b/pkgs/development/tools/asmfmt/default.nix @@ -0,0 +1,37 @@ +{ buildGoPackage +, lib +, fetchFromGitHub +, fetchpatch +}: + +buildGoPackage rec { + name = "asmfmt-${version}"; + version = "1.1"; + + goPackagePath = "github.com/klauspost/asmfmt"; + + src = fetchFromGitHub { + owner = "klauspost"; + repo = "asmfmt"; + rev = "v${version}"; + sha256 = "08mybfizcvck460axakycz9ndzcgwqilp5mmgm4bl8hfrn36mskw"; + }; + + patches = [ + (fetchpatch { + excludes = ["README.md"]; + url = "https://github.com/klauspost/asmfmt/commit/39a37c8aed8095e0fdfb07f78fc8acbd465d9627.patch"; + sha256 = "18bc77l87mf0yvqc3adlakxz6wflyqfsc2wrmh9q0nlqghlmnw5k"; + }) + ]; + + goDeps = ./deps.nix; + + meta = with lib; { + description = "Go Assembler Formatter"; + homepage = https://github.com/klauspost/asmfmt; + license = licenses.mit; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/pkgs/development/tools/asmfmt/deps.nix b/pkgs/development/tools/asmfmt/deps.nix new file mode 100644 index 00000000000..0288fc206d4 --- /dev/null +++ b/pkgs/development/tools/asmfmt/deps.nix @@ -0,0 +1,20 @@ +[ + { + goPackagePath = "golang.org/x/tools"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/tools"; + rev = "3a10b9bf0a52df7e992a8c3eb712a86d3c896c75"; + sha256 = "19f3dijcc54jnd7458jab2dgpd0gzccmv2qympd9wi8cc8jpnhws"; + }; + } + { + goPackagePath = "sourcegraph.com/sqs/goreturns"; + fetch = { + type = "git"; + url = "https://github.com/sqs/goreturns"; + rev = "538ac601451833c7c4449f8431d65d53c1c60e41"; + sha256 = "0gcplch8zmcgwl6xvcffxg50g3xnf60n7dlqxgn51179qcjr354p"; + }; + } +] diff --git a/pkgs/development/tools/build-managers/bazel/bazel-deps/default.nix b/pkgs/development/tools/build-managers/bazel/bazel-deps/default.nix index af8cd5faacd..142f729517d 100644 --- a/pkgs/development/tools/build-managers/bazel/bazel-deps/default.nix +++ b/pkgs/development/tools/build-managers/bazel/bazel-deps/default.nix @@ -2,7 +2,7 @@ buildBazelPackage rec { name = "bazel-deps-${version}"; - version = "2018-08-16"; + version = "2018-11-01"; meta = with stdenv.lib; { homepage = "https://github.com/johnynek/bazel-deps"; @@ -15,8 +15,8 @@ buildBazelPackage rec { src = fetchFromGitHub { owner = "johnynek"; repo = "bazel-deps"; - rev = "942a0b03cbf159dd6e0f0f40787d6d8e4e832d81"; - sha256 = "0ls2jvz9cxa169a8pbbykv2d4dik4ipf7dj1lkqx5g0ss7lgs6q5"; + rev = "1af8921d52f053fad575f26762533a3823b4a847"; + sha256 = "0srz0sbz4bq9n7cp4g1n3kd3j6rcjqfi25sq8aa64l27yqzbk53x"; }; bazelTarget = "//src/scala/com/github/johnynek/bazel_deps:parseproject_deploy.jar"; @@ -66,12 +66,13 @@ buildBazelPackage rec { find . -type d -empty -delete ''; - sha256 = "0jkzf1hay0h8ksk9lhfvdliac6c5d7nih934i1xjbrn6zqlivy19"; + sha256 = "1gvl4a9z8p4ch2gmcj3lpp0imrkrvy8wng949p3wlkibi14hc6ww"; }; buildAttrs = { installPhase = '' mkdir -p $out/bin/bazel-bin/src/scala/com/github/johnynek/bazel_deps + cp gen_maven_deps.sh $out/bin wrapProgram "$out/bin/gen_maven_deps.sh" --set JAVA_HOME "${jre}" --prefix PATH : ${lib.makeBinPath [ jre ]} cp bazel-bin/src/scala/com/github/johnynek/bazel_deps/parseproject_deploy.jar $out/bin/bazel-bin/src/scala/com/github/johnynek/bazel_deps diff --git a/pkgs/development/tools/check/default.nix b/pkgs/development/tools/check/default.nix new file mode 100644 index 00000000000..dfa164e6755 --- /dev/null +++ b/pkgs/development/tools/check/default.nix @@ -0,0 +1,30 @@ +{ buildGoPackage +, lib +, fetchFromGitLab +}: + +buildGoPackage rec { + name = "check-unstable-${version}"; + version = "2018-09-12"; + rev = "88db195993f8e991ad402754accd0635490769f9"; + + goPackagePath = "gitlab.com/opennota/check"; + + src = fetchFromGitLab { + inherit rev; + + owner = "opennota"; + repo = "check"; + sha256 = "1983xmdkgpqda4qz8ashc6xv1zg5jl4zly3w566grxc5sfxpgf0i"; + }; + + goDeps = ./deps.nix; + + meta = with lib; { + description = "A set of utilities for checking Go sources."; + homepage = https://gitlab.com/opennota/check; + license = licenses.gpl3; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/pkgs/development/tools/check/deps.nix b/pkgs/development/tools/check/deps.nix new file mode 100644 index 00000000000..b9c50d95d11 --- /dev/null +++ b/pkgs/development/tools/check/deps.nix @@ -0,0 +1,11 @@ +[ + { + goPackagePath = "golang.org/x/tools"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/tools"; + rev = "677d2ff680c1"; + sha256 = "0vp1w1haqcjd82dxd6x9xrllbfwvm957rxwkpji96cgvhsli2bq5"; + }; + } +] diff --git a/pkgs/development/tools/deadcode/default.nix b/pkgs/development/tools/deadcode/default.nix new file mode 100644 index 00000000000..fbed4e905cf --- /dev/null +++ b/pkgs/development/tools/deadcode/default.nix @@ -0,0 +1,31 @@ +{ buildGoPackage +, lib +, fetchFromGitHub +}: + +# TODO(yl): should we package https://github.com/remyoudompheng/go-misc instead of +# the standalone extract of deadcode from it? +buildGoPackage rec { + name = "deadcode-unstable-${version}"; + version = "2016-07-24"; + rev = "210d2dc333e90c7e3eedf4f2242507a8e83ed4ab"; + + goPackagePath = "github.com/tsenart/deadcode"; + excludedPackages = "\\(cmd/fillswitch/test-fixtures\\)"; + + src = fetchFromGitHub { + inherit rev; + + owner = "tsenart"; + repo = "deadcode"; + sha256 = "05kif593f4wygnrq2fdjhn7kkcpdmgjnykcila85d0gqlb1f36g0"; + }; + + meta = with lib; { + description = "deadcode is a very simple utility which detects unused declarations in a Go package."; + homepage = https://github.com/remyoudompheng/go-misc/tree/master/deadcode; + license = licenses.bsd3; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/pkgs/development/tools/errcheck/default.nix b/pkgs/development/tools/errcheck/default.nix new file mode 100644 index 00000000000..1ce49a4cbb9 --- /dev/null +++ b/pkgs/development/tools/errcheck/default.nix @@ -0,0 +1,29 @@ +{ buildGoPackage +, lib +, fetchFromGitHub +}: + +buildGoPackage rec { + name = "errcheck-${version}"; + version = "1.1.0"; + + goPackagePath = "github.com/kisielk/errcheck"; + excludedPackages = "\\(testdata\\)"; + + src = fetchFromGitHub { + owner = "kisielk"; + repo = "errcheck"; + rev = "v${version}"; + sha256 = "19vd4rxmqbk5lpiav3pf7df3yjlz0l0dwx9mn0gjq5f998iyhy6y"; + }; + + goDeps = ./deps.nix; + + meta = with lib; { + description = "errcheck is a program for checking for unchecked errors in go programs."; + homepage = https://github.com/kisielk/errcheck; + license = licenses.mit; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/pkgs/development/tools/errcheck/deps.nix b/pkgs/development/tools/errcheck/deps.nix new file mode 100644 index 00000000000..8470c9e12aa --- /dev/null +++ b/pkgs/development/tools/errcheck/deps.nix @@ -0,0 +1,20 @@ +[ + { + goPackagePath = "github.com/kisielk/gotool"; + fetch = { + type = "git"; + url = "https://github.com/kisielk/gotool"; + rev = "80517062f582ea3340cd4baf70e86d539ae7d84d"; + sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn"; + }; + } + { + goPackagePath = "golang.org/x/tools"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/tools"; + rev = "3a10b9bf0a52df7e992a8c3eb712a86d3c896c75"; + sha256 = "19f3dijcc54jnd7458jab2dgpd0gzccmv2qympd9wi8cc8jpnhws"; + }; + } +] diff --git a/pkgs/development/tools/go-tools/default.nix b/pkgs/development/tools/go-tools/default.nix new file mode 100644 index 00000000000..7e599ed8de7 --- /dev/null +++ b/pkgs/development/tools/go-tools/default.nix @@ -0,0 +1,29 @@ +{ buildGoPackage +, lib +, fetchFromGitHub +}: + +buildGoPackage rec { + name = "go-tools-${version}"; + version = "2017.2.2"; + + goPackagePath = "honnef.co/go/tools"; + excludedPackages = ''\(simple\|ssa\|ssa/ssautil\|lint\|staticcheck\|unused\)/testdata''; + + src = fetchFromGitHub { + owner = "dominikh"; + repo = "go-tools"; + rev = "${version}"; + sha256 = "1khl6szjj0skkfqp234p9rf3icik7fw2pk2x0wbj3wa9q3f84hb7"; + }; + + goDeps = ./deps.nix; + + meta = with lib; { + description = "A collection of tools and libraries for working with Go code, including linters and static analysis."; + homepage = https://staticcheck.io; + license = licenses.mit; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/pkgs/development/tools/go-tools/deps.nix b/pkgs/development/tools/go-tools/deps.nix new file mode 100644 index 00000000000..afe5e50e47b --- /dev/null +++ b/pkgs/development/tools/go-tools/deps.nix @@ -0,0 +1,20 @@ +[ + { + goPackagePath = "github.com/kisielk/gotool"; + fetch = { + type = "git"; + url = "https://github.com/kisielk/gotool"; + rev = "80517062f582ea3340cd4baf70e86d539ae7d84d"; + sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn"; + }; + } + { + goPackagePath = "golang.org/x/tools"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/tools"; + rev = "96e9e165b75e735822645eff82850b08c377be36"; + sha256 = "1zj9ck5sg9b0pphxybmvxf64hhcap7v7j37fx3v5aknf18crjjdg"; + }; + } +] diff --git a/pkgs/development/tools/goconst/default.nix b/pkgs/development/tools/goconst/default.nix new file mode 100644 index 00000000000..9ef94ffdc7f --- /dev/null +++ b/pkgs/development/tools/goconst/default.nix @@ -0,0 +1,27 @@ +{ buildGoPackage +, lib +, fetchFromGitHub +}: + +buildGoPackage rec { + name = "goconst-${version}"; + version = "1.1.0"; + + goPackagePath = "github.com/jgautheron/goconst"; + excludedPackages = ''testdata''; + + src = fetchFromGitHub { + owner = "jgautheron"; + repo = "goconst"; + rev = version; + sha256 = "0zhscvv9w54q1h2vs8xx3qkz98cf36qhxjvdq0xyz3qvn4vhnyw6"; + }; + + meta = with lib; { + description = "Find in Go repeated strings that could be replaced by a constant"; + homepage = https://github.com/jgautheron/goconst; + license = licenses.mit; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/pkgs/development/tools/gocyclo/default.nix b/pkgs/development/tools/gocyclo/default.nix new file mode 100644 index 00000000000..91ebaff803e --- /dev/null +++ b/pkgs/development/tools/gocyclo/default.nix @@ -0,0 +1,28 @@ +{ buildGoPackage +, lib +, fetchFromGitHub +}: + +buildGoPackage rec { + name = "gocyclo-unstable-${version}"; + version = "2015-02-08"; + rev = "aa8f8b160214d8dfccfe3e17e578dd0fcc6fede7"; + + goPackagePath = "github.com/alecthomas/gocyclo"; + + src = fetchFromGitHub { + inherit rev; + + owner = "alecthomas"; + repo = "gocyclo"; + sha256 = "094rj97q38j53lmn2scshrg8kws8c542yq5apih1ahm9wdkv8pxr"; + }; + + meta = with lib; { + description = "Calculate cyclomatic complexities of functions in Go source code."; + homepage = https://github.com/alecthomas/gocyclo; + license = licenses.bsd3; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/pkgs/development/tools/gogetdoc/default.nix b/pkgs/development/tools/gogetdoc/default.nix new file mode 100644 index 00000000000..7724ee49465 --- /dev/null +++ b/pkgs/development/tools/gogetdoc/default.nix @@ -0,0 +1,31 @@ +{ buildGoPackage +, lib +, fetchFromGitHub +}: + +buildGoPackage rec { + name = "gogetdoc-unstable-${version}"; + version = "2018-10-25"; + rev = "9098cf5fc236a5e25060730544af2ba6d65cd968"; + + goPackagePath = "github.com/zmb3/gogetdoc"; + excludedPackages = "\\(testdata\\)"; + + src = fetchFromGitHub { + inherit rev; + + owner = "zmb3"; + repo = "gogetdoc"; + sha256 = "159dgkd2lz07kimbpzminli5p539l4ry0dr93r46iz3lk5q76znl"; + }; + + goDeps = ./deps.nix; + + meta = with lib; { + description = "Gets documentation for items in Go source code"; + homepage = https://github.com/zmb3/gogetdoc; + license = licenses.bsd3; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/pkgs/development/tools/gogetdoc/deps.nix b/pkgs/development/tools/gogetdoc/deps.nix new file mode 100644 index 00000000000..d770057d1d7 --- /dev/null +++ b/pkgs/development/tools/gogetdoc/deps.nix @@ -0,0 +1,13 @@ +# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix) +[ + + { + goPackagePath = "golang.org/x/tools"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/tools"; + rev = "6adeb8aab2de"; + sha256 = "0kylkki0ksdm12ppl37fghzbma9hmgqwph0nwngv08v4blk6li6k"; + }; + } +] diff --git a/pkgs/development/tools/gometalinter/default.nix b/pkgs/development/tools/gometalinter/default.nix new file mode 100644 index 00000000000..cce678e9d07 --- /dev/null +++ b/pkgs/development/tools/gometalinter/default.nix @@ -0,0 +1,70 @@ +{ buildGoPackage +, deadcode +, errcheck +, fetchFromGitHub +, go +, go-check +, go-tools +, goconst +, gocyclo +, golint +, gosec +, gotools +, ineffassign +, maligned +, interfacer +, lib +, makeWrapper +, unconvert +}: + +with lib; + +let + runtimeDeps = [ + deadcode + errcheck + go + go-check + go-tools + goconst + gocyclo + golint + gosec + gotools + ineffassign + interfacer + maligned + unconvert + ]; + +in buildGoPackage rec { + name = "gometalinter-${version}"; + version = "2.0.11"; + + goPackagePath = "github.com/alecthomas/gometalinter"; + excludedPackages = "\\(regressiontests\\)"; + + src = fetchFromGitHub { + owner = "alecthomas"; + repo = "gometalinter"; + rev = "v${version}"; + sha256 = "08p7bwvhpgizif8qi59m8mm3mcny70x9msbk8m8vjpphsq55wha4"; + }; + + postInstall = '' + wrapProgram $bin/bin/gometalinter --prefix PATH : "${makeBinPath runtimeDeps}" + ''; + + buildInputs = [ makeWrapper ]; + + allowGoReference = true; + + meta = with lib; { + description = "Concurrently run Go lint tools and normalise their output"; + homepage = https://github.com/alecthomas/gometalinter; + license = licenses.mit; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/pkgs/development/tools/gosec/default.nix b/pkgs/development/tools/gosec/default.nix new file mode 100644 index 00000000000..2cffd86f396 --- /dev/null +++ b/pkgs/development/tools/gosec/default.nix @@ -0,0 +1,29 @@ +{ buildGoPackage +, lib +, fetchFromGitHub +}: + +buildGoPackage rec { + name = "gosec-${version}"; + version = "1.1.0"; + + goPackagePath = "github.com/securego/gosec"; + excludedPackages = ''cmd/tlsconfig''; + + src = fetchFromGitHub { + owner = "securego"; + repo = "gosec"; + rev = "${version}"; + sha256 = "0vjn3g6w4y4ayx0g766jp31vb78cipl90fcg0mccjr0a539qrpy6"; + }; + + goDeps = ./deps.nix; + + meta = with lib; { + description = "Golang security checker"; + homepage = https://github.com/securego/gosec; + license = licenses.asl20 ; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/pkgs/development/tools/gosec/deps.nix b/pkgs/development/tools/gosec/deps.nix new file mode 100644 index 00000000000..80a77e7fb80 --- /dev/null +++ b/pkgs/development/tools/gosec/deps.nix @@ -0,0 +1,193 @@ +# file generated from go.mod using vgo2nix (https://github.com/adisbladis/vgo2nix) +[ + + { + goPackagePath = "github.com/davecgh/go-spew"; + fetch = { + type = "git"; + url = "https://github.com/davecgh/go-spew"; + rev = "v1.1.1"; + sha256 = "0hka6hmyvp701adzag2g26cxdj47g21x6jz4sc6jjz1mn59d474y"; + }; + } + + { + goPackagePath = "github.com/golang/protobuf"; + fetch = { + type = "git"; + url = "https://github.com/golang/protobuf"; + rev = "v1.2.0"; + sha256 = "0kf4b59rcbb1cchfny2dm9jyznp8ri2hsb14n8iak1q8986xa0ab"; + }; + } + + { + goPackagePath = "github.com/kisielk/gotool"; + fetch = { + type = "git"; + url = "https://github.com/kisielk/gotool"; + rev = "0de1eaf82fa3"; + sha256 = "177af7bjq6clmkqshnmnwlpwvx80kpi2277q275iwq59lp48viq1"; + }; + } + + { + goPackagePath = "github.com/kr/pretty"; + fetch = { + type = "git"; + url = "https://github.com/kr/pretty"; + rev = "v0.1.0"; + sha256 = "18m4pwg2abd0j9cn5v3k2ksk9ig4vlwxmlw9rrglanziv9l967qp"; + }; + } + + { + goPackagePath = "github.com/kr/pty"; + fetch = { + type = "git"; + url = "https://github.com/kr/pty"; + rev = "v1.1.1"; + sha256 = "0383f0mb9kqjvncqrfpidsf8y6ns5zlrc91c6a74xpyxjwvzl2y6"; + }; + } + + { + goPackagePath = "github.com/kr/text"; + fetch = { + type = "git"; + url = "https://github.com/kr/text"; + rev = "v0.1.0"; + sha256 = "1gm5bsl01apvc84bw06hasawyqm4q84vx1pm32wr9jnd7a8vjgj1"; + }; + } + + { + goPackagePath = "github.com/nbutton23/zxcvbn-go"; + fetch = { + type = "git"; + url = "https://github.com/nbutton23/zxcvbn-go"; + rev = "a22cb81b2ecd"; + sha256 = "0hm16vc7xrw0cqla6xcn59bb7n2sa0j8rkniywn5dqnbrpza12cd"; + }; + } + + { + goPackagePath = "github.com/onsi/ginkgo"; + fetch = { + type = "git"; + url = "https://github.com/onsi/ginkgo"; + rev = "11459a886d9c"; + sha256 = "1nswc1fnrrs792qbix05h91bilj8rr3wxmxgwi97p2gjk0r292zh"; + }; + } + + { + goPackagePath = "github.com/onsi/gomega"; + fetch = { + type = "git"; + url = "https://github.com/onsi/gomega"; + rev = "dcabb60a477c"; + sha256 = "1775lv5jbsgv3ghq5v2827slqlhqdadrzc1nkpq4y0hdv2qzrgkm"; + }; + } + + { + goPackagePath = "github.com/pmezard/go-difflib"; + fetch = { + type = "git"; + url = "https://github.com/pmezard/go-difflib"; + rev = "v1.0.0"; + sha256 = "0c1cn55m4rypmscgf0rrb88pn58j3ysvc2d0432dp3c6fqg6cnzw"; + }; + } + + { + goPackagePath = "github.com/ryanuber/go-glob"; + fetch = { + type = "git"; + url = "https://github.com/ryanuber/go-glob"; + rev = "256dc444b735"; + sha256 = "07rsd7hranghwc68ib0r2zxd9d5djanzjvd84j9dgj3wqsyg5mi2"; + }; + } + + { + goPackagePath = "github.com/stretchr/testify"; + fetch = { + type = "git"; + url = "https://github.com/stretchr/testify"; + rev = "v1.2.2"; + sha256 = "0dlszlshlxbmmfxj5hlwgv3r22x0y1af45gn1vd198nvvs3pnvfs"; + }; + } + + { + goPackagePath = "golang.org/x/net"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/net"; + rev = "8351a756f30f"; + sha256 = "0b6m579i3wrx1m69mqkdng5gjfssprxx0pg45kzrdi68sh0zr5d1"; + }; + } + + { + goPackagePath = "golang.org/x/sync"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/sync"; + rev = "1d60e4601c6f"; + sha256 = "046jlanz2lkxq1r57x9bl6s4cvfqaic6p2xybsj8mq1120jv4rs6"; + }; + } + + { + goPackagePath = "golang.org/x/sys"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/sys"; + rev = "164713f0dfce"; + sha256 = "1qn9vvyqsaaj0az0rbilzc4pfv9sl4vh78c2g37yya5gcdnarh3w"; + }; + } + + { + goPackagePath = "golang.org/x/text"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/text"; + rev = "1cbadb444a80"; + sha256 = "0ih9ysagh4ylj08393497sscf3yziybc6acg4mrh0wa7mld75j56"; + }; + } + + { + goPackagePath = "golang.org/x/tools"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/tools"; + rev = "e531a2a1c15f"; + sha256 = "0740w56nmjqdj7ld1h3gpcpi3x8n81bdx0pp267rz9hmwkrb2s1c"; + }; + } + + { + goPackagePath = "gopkg.in/check.v1"; + fetch = { + type = "git"; + url = "https://gopkg.in/check.v1"; + rev = "788fd7840127"; + sha256 = "0v3bim0j375z81zrpr5qv42knqs0y2qv2vkjiqi5axvb78slki1a"; + }; + } + + { + goPackagePath = "gopkg.in/yaml.v2"; + fetch = { + type = "git"; + url = "https://gopkg.in/yaml.v2"; + rev = "eb3733d160e7"; + sha256 = "1srhvcaa9db3a6xj29mkjr5kg33y71pclrlx4vcwz5m1lgb5c7q6"; + }; + } +] diff --git a/pkgs/development/tools/iferr/default.nix b/pkgs/development/tools/iferr/default.nix new file mode 100644 index 00000000000..e2aebe9b2dc --- /dev/null +++ b/pkgs/development/tools/iferr/default.nix @@ -0,0 +1,28 @@ +{ buildGoPackage +, lib +, fetchFromGitHub +}: + +buildGoPackage rec { + name = "iferr-unstable-${version}"; + version = "2018-06-15"; + rev = "bb332a3b1d9129b6486c7ddcb7030c11b05cfc88"; + + goPackagePath = "github.com/koron/iferr"; + + src = fetchFromGitHub { + inherit rev; + + owner = "koron"; + repo = "iferr"; + sha256 = "1nyqy1sgq2afiama4wy7wap8s03c0hiwwa0f6kwq3y59097rfc0c"; + }; + + meta = with lib; { + description = ''Generate "if err != nil {" block''; + homepage = https://github.com/koron/iferr; + license = licenses.mit; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/pkgs/development/tools/impl/default.nix b/pkgs/development/tools/impl/default.nix new file mode 100644 index 00000000000..69bbf8afe5a --- /dev/null +++ b/pkgs/development/tools/impl/default.nix @@ -0,0 +1,30 @@ +{ buildGoPackage +, lib +, fetchFromGitHub +}: + +buildGoPackage rec { + name = "impl-unstable-${version}"; + version = "2018-02-27"; + rev = "3d0f908298c49598b6aa84f101c69670e15d1d03"; + + goPackagePath = "github.com/josharian/impl"; + + src = fetchFromGitHub { + inherit rev; + + owner = "josharian"; + repo = "impl"; + sha256 = "0xpip20x5vclrl0by1760lg73v6lj6nmkbiazlskyvpkw44h8a7c"; + }; + + goDeps = ./deps.nix; + + meta = with lib; { + description = "impl generates method stubs for implementing an interface."; + homepage = https://github.com/josharian/impl; + license = licenses.mit; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/pkgs/development/tools/impl/deps.nix b/pkgs/development/tools/impl/deps.nix new file mode 100644 index 00000000000..3477aaed607 --- /dev/null +++ b/pkgs/development/tools/impl/deps.nix @@ -0,0 +1,11 @@ +[ + { + goPackagePath = "golang.org/x/tools"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/tools"; + rev = "96e9e165b75e735822645eff82850b08c377be36"; + sha256 = "1zj9ck5sg9b0pphxybmvxf64hhcap7v7j37fx3v5aknf18crjjdg"; + }; + } +] diff --git a/pkgs/development/tools/ineffassign/default.nix b/pkgs/development/tools/ineffassign/default.nix new file mode 100644 index 00000000000..10e5c61025a --- /dev/null +++ b/pkgs/development/tools/ineffassign/default.nix @@ -0,0 +1,29 @@ +{ buildGoPackage +, lib +, fetchFromGitHub +}: + +buildGoPackage rec { + name = "ineffassign-unstable-${version}"; + version = "2018-09-09"; + rev = "1003c8bd00dc2869cb5ca5282e6ce33834fed514"; + + goPackagePath = "github.com/gordonklaus/ineffassign"; + excludedPackages = ''testdata''; + + src = fetchFromGitHub { + inherit rev; + + owner = "gordonklaus"; + repo = "ineffassign"; + sha256 = "1rkzqvd3z03vq8q8qi9cghvgggsf02ammj9wq8jvpnx6b2sd16nd"; + }; + + meta = with lib; { + description = "Detect ineffectual assignments in Go code."; + homepage = https://github.com/gordonklaus/ineffassign; + license = licenses.mit; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/pkgs/development/tools/interfacer/default.nix b/pkgs/development/tools/interfacer/default.nix new file mode 100644 index 00000000000..274ced0b37c --- /dev/null +++ b/pkgs/development/tools/interfacer/default.nix @@ -0,0 +1,31 @@ +{ buildGoPackage +, lib +, fetchFromGitHub +}: + +buildGoPackage rec { + name = "interfacer-unstable-${version}"; + version = "2018-08-31"; + rev = "c20040233aedb03da82d460eca6130fcd91c629a"; + + goPackagePath = "mvdan.cc/interfacer"; + excludedPackages = ''check/testdata''; + + src = fetchFromGitHub { + inherit rev; + + owner = "mvdan"; + repo = "interfacer"; + sha256 = "0cx4m74mvn200360pmsqxx4z0apk9fcknwwqh8r94zd3jfv4akq2"; + }; + + goDeps = ./deps.nix; + + meta = with lib; { + description = "A linter that suggests interface types."; + homepage = https://github.com/mvdan/interfacer; + license = licenses.bsd3; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/pkgs/development/tools/interfacer/deps.nix b/pkgs/development/tools/interfacer/deps.nix new file mode 100644 index 00000000000..6810950878b --- /dev/null +++ b/pkgs/development/tools/interfacer/deps.nix @@ -0,0 +1,29 @@ +[ + { + goPackagePath = "github.com/kisielk/gotool"; + fetch = { + type = "git"; + url = "https://github.com/kisielk/gotool"; + rev = "80517062f582ea3340cd4baf70e86d539ae7d84d"; + sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn"; + }; + } + { + goPackagePath = "golang.org/x/tools"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/tools"; + rev = "96e9e165b75e735822645eff82850b08c377be36"; + sha256 = "1zj9ck5sg9b0pphxybmvxf64hhcap7v7j37fx3v5aknf18crjjdg"; + }; + } + { + goPackagePath = "mvdan.cc/lint"; + fetch = { + type = "git"; + url = "https://github.com/mvdan/lint"; + rev = "adc824a0674b99099789b6188a058d485eaf61c0"; + sha256 = "17mi2rvkg9kzv1shxcyawzcj4jj3v738d1j82fp4yygx859yvr8r"; + }; + } +] diff --git a/pkgs/development/tools/maligned/default.nix b/pkgs/development/tools/maligned/default.nix new file mode 100644 index 00000000000..7e5cbaddd8b --- /dev/null +++ b/pkgs/development/tools/maligned/default.nix @@ -0,0 +1,30 @@ +{ buildGoPackage +, lib +, fetchFromGitHub +}: + +buildGoPackage rec { + name = "maligned-unstable-${version}"; + version = "2018-07-07"; + rev = "6e39bd26a8c8b58c5a22129593044655a9e25959"; + + goPackagePath = "github.com/mdempsky/maligned"; + + src = fetchFromGitHub { + inherit rev; + + owner = "mdempsky"; + repo = "maligned"; + sha256 = "08inr5xjqv9flrlyhqd8ck1q26y5xb6iilz0xkb6bqa4dl5ialhi"; + }; + + goDeps = ./deps.nix; + + meta = with lib; { + description = "Tool to detect Go structs that would take less memory if their fields were sorted."; + homepage = https://github.com/mdempsky/maligned; + license = licenses.bsd3; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/pkgs/development/tools/maligned/deps.nix b/pkgs/development/tools/maligned/deps.nix new file mode 100644 index 00000000000..afe5e50e47b --- /dev/null +++ b/pkgs/development/tools/maligned/deps.nix @@ -0,0 +1,20 @@ +[ + { + goPackagePath = "github.com/kisielk/gotool"; + fetch = { + type = "git"; + url = "https://github.com/kisielk/gotool"; + rev = "80517062f582ea3340cd4baf70e86d539ae7d84d"; + sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn"; + }; + } + { + goPackagePath = "golang.org/x/tools"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/tools"; + rev = "96e9e165b75e735822645eff82850b08c377be36"; + sha256 = "1zj9ck5sg9b0pphxybmvxf64hhcap7v7j37fx3v5aknf18crjjdg"; + }; + } +] diff --git a/pkgs/development/tools/reftools/default.nix b/pkgs/development/tools/reftools/default.nix new file mode 100644 index 00000000000..6ef724022e8 --- /dev/null +++ b/pkgs/development/tools/reftools/default.nix @@ -0,0 +1,29 @@ +{ buildGoPackage +, lib +, fetchFromGitHub +}: + +buildGoPackage rec { + name = "reftools-unstable-${version}"; + version = "2018-09-14"; + rev = "654d0ba4f96d62286ca33cd46f7674b84f76d399"; + + goPackagePath = "github.com/davidrjenni/reftools"; + excludedPackages = "\\(cmd/fillswitch/test-fixtures\\)"; + + src = fetchFromGitHub { + inherit rev; + + owner = "davidrjenni"; + repo = "reftools"; + sha256 = "12y2h1h15xadc8pa3xsj11hpdxz5dss6k7xaa4h1ifkvnasjp5w2"; + }; + + meta = with lib; { + description = "reftools - refactoring tools for Go"; + homepage = https://github.com/davidrjenni/reftools; + license = licenses.bsd2; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/pkgs/development/tools/unconvert/default.nix b/pkgs/development/tools/unconvert/default.nix new file mode 100644 index 00000000000..1e81c5b9f86 --- /dev/null +++ b/pkgs/development/tools/unconvert/default.nix @@ -0,0 +1,31 @@ + +{ buildGoPackage +, lib +, fetchFromGitHub +}: + +buildGoPackage rec { + name = "unconvert-unstable-${version}"; + version = "2018-07-03"; + rev = "1a9a0a0a3594e9363e49545fb6a4e24ac4c68b7b"; + + goPackagePath = "github.com/mdempsky/unconvert"; + + src = fetchFromGitHub { + inherit rev; + + owner = "mdempsky"; + repo = "unconvert"; + sha256 = "1ww5qk1cmdis4ig5mb0b0w7nzrf3734s51plmgdxqsr35y88q4p9"; + }; + + goDeps = ./deps.nix; + + meta = with lib; { + description = "Remove unnecessary type conversions from Go source"; + homepage = https://github.com/mdempsky/unconvert; + license = licenses.bsd3; + maintainers = with maintainers; [ kalbasit ]; + platforms = platforms.linux ++ platforms.darwin; + }; +} diff --git a/pkgs/development/tools/unconvert/deps.nix b/pkgs/development/tools/unconvert/deps.nix new file mode 100644 index 00000000000..333ec7ca3b1 --- /dev/null +++ b/pkgs/development/tools/unconvert/deps.nix @@ -0,0 +1,29 @@ +[ + { + goPackagePath = "github.com/kisielk/gotool"; + fetch = { + type = "git"; + url = "https://github.com/kisielk/gotool"; + rev = "80517062f582ea3340cd4baf70e86d539ae7d84d"; + sha256 = "14af2pa0ssyp8bp2mvdw184s5wcysk6akil3wzxmr05wwy951iwn"; + }; + } + { + goPackagePath = "golang.org/x/text"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/text"; + rev = "6f44c5a2ea40ee3593d98cdcc905cc1fdaa660e2"; + sha256 = "00mwzxly5isgf0glz7k3k2dkyqkjfc4z55qxajx4lgcp3h8xn9xj"; + }; + } + { + goPackagePath = "golang.org/x/tools"; + fetch = { + type = "git"; + url = "https://go.googlesource.com/tools"; + rev = "96e9e165b75e735822645eff82850b08c377be36"; + sha256 = "1zj9ck5sg9b0pphxybmvxf64hhcap7v7j37fx3v5aknf18crjjdg"; + }; + } +] diff --git a/pkgs/misc/brightnessctl/default.nix b/pkgs/misc/brightnessctl/default.nix index f90baee91fc..6292b8183b2 100644 --- a/pkgs/misc/brightnessctl/default.nix +++ b/pkgs/misc/brightnessctl/default.nix @@ -11,20 +11,18 @@ stdenv.mkDerivation rec { sha256 = "1n1gb8ldgqv3vs565yhk1w4jfvrviczp94r8wqlkv5q6ab43c8w9"; }; - makeFlags = [ "MODE=0755" "PREFIX=" "DESTDIR=$(out)" ]; - installTargets = [ "install" "install_udev_rules" ]; + makeFlags = [ "PREFIX=" "DESTDIR=$(out)" ]; postPatch = '' substituteInPlace 90-brightnessctl.rules --replace /bin/ ${coreutils}/bin/ - substituteInPlace 90-brightnessctl.rules --replace %k '*' ''; - meta = { + meta = with stdenv.lib; { homepage = "https://github.com/Hummer12007/brightnessctl"; - maintainers = [ stdenv.lib.maintainers.Dje4321 ]; - license = stdenv.lib.licenses.mit; description = "This program allows you read and control device brightness"; - platforms = stdenv.lib.platforms.linux; + license = licenses.mit; + maintainers = with maintainers; [ megheaiulian ]; + platforms = platforms.linux; }; } diff --git a/pkgs/misc/emulators/retroarch/default.nix b/pkgs/misc/emulators/retroarch/default.nix index a37d299fbf7..24b46c8f9ca 100644 --- a/pkgs/misc/emulators/retroarch/default.nix +++ b/pkgs/misc/emulators/retroarch/default.nix @@ -1,5 +1,5 @@ { stdenv, fetchFromGitHub, which, pkgconfig, makeWrapper -, ffmpeg, libGLU_combined, freetype, libxml2, python34 +, ffmpeg, libGLU_combined, freetype, libxml2, python3 , libobjc, AppKit, Foundation , alsaLib ? null , libpulseaudio ? null @@ -39,7 +39,7 @@ in stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig ] ++ optional withVulkan [ makeWrapper ]; - buildInputs = [ ffmpeg freetype libxml2 libGLU_combined python34 SDL2 which ] + buildInputs = [ ffmpeg freetype libxml2 libGLU_combined python3 SDL2 which ] ++ optional enableNvidiaCgToolkit nvidia_cg_toolkit ++ optional withVulkan [ vulkan-loader ] ++ optionals stdenv.isDarwin [ libobjc AppKit Foundation ] diff --git a/pkgs/misc/vim-plugins/generated.nix b/pkgs/misc/vim-plugins/generated.nix index bd3458b98c8..d9ceb20e941 100644 --- a/pkgs/misc/vim-plugins/generated.nix +++ b/pkgs/misc/vim-plugins/generated.nix @@ -53,12 +53,12 @@ }; ale = buildVimPluginFrom2Nix { - name = "ale-2018-10-29"; + name = "ale-2018-10-31"; src = fetchFromGitHub { owner = "w0rp"; repo = "ale"; - rev = "cae40e1c347064bd3ab5eb4c04e9e357d3d82105"; - sha256 = "0f7qsp0gpafk7fimcbivx2cm53hpjz6hr6lzdg8wnxcm0gdw7827"; + rev = "4b841b55869e3ec5b02806f9b2fe962ffdca2750"; + sha256 = "0wa8phv4b6n1akaii8qy9c0lr17vm4bqgz5chjx28zs73jfxsf2i"; }; }; @@ -93,12 +93,12 @@ }; awesome-vim-colorschemes = buildVimPluginFrom2Nix { - name = "awesome-vim-colorschemes-2018-01-20"; + name = "awesome-vim-colorschemes-2018-10-30"; src = fetchFromGitHub { owner = "rafi"; repo = "awesome-vim-colorschemes"; - rev = "8d2b6657bdbe4f7253e320c741bc4c1fc2f2f41d"; - sha256 = "1wfm6rsmyqldxwcz0ic4rq7kf00fgsx00rg42cl9yya35nqiri2z"; + rev = "21d1c93da95d58bead99f3226f9447f5b035afe1"; + sha256 = "1niwwyxgq7k7mbi05lnpz12lbmn9mam9x4qvzxcbvxsqqp2zzsj8"; }; }; @@ -718,6 +718,17 @@ }; }; + jedi-vim = buildVimPluginFrom2Nix { + name = "jedi-vim-2018-10-14"; + src = fetchFromGitHub { + owner = "davidhalter"; + repo = "jedi-vim"; + rev = "b6dfc5fd49c26d4dbe9f54c814956567a7a9b3a8"; + sha256 = "11wvynjl1m23vdp4wvirhmm7vnpji5affbyhwz67yjkvh6c42xqa"; + fetchSubmodules = true; + }; + }; + Jenkinsfile-vim-syntax = buildVimPluginFrom2Nix { name = "Jenkinsfile-vim-syntax-2018-09-25"; src = fetchFromGitHub { @@ -899,12 +910,12 @@ }; neco-vim = buildVimPluginFrom2Nix { - name = "neco-vim-2017-10-01"; + name = "neco-vim-2018-10-30"; src = fetchFromGitHub { owner = "Shougo"; repo = "neco-vim"; - rev = "f5397c5e800d65a58c56d8f1b1b92686b05f4ca9"; - sha256 = "0yb7ja6qgrazszk4i01cwjj00j9vd43zs2r11b08iy8n10jnzr73"; + rev = "4c0203b44f8daa7e2f72e2514488d637e8a766a4"; + sha256 = "03v3h2ks6y9pl960lnvzxlfhnn6l2pcn6d6012znw2wqpralrjq2"; }; }; @@ -949,12 +960,12 @@ }; neomake = buildVimPluginFrom2Nix { - name = "neomake-2018-10-28"; + name = "neomake-2018-10-29"; src = fetchFromGitHub { owner = "benekastah"; repo = "neomake"; - rev = "35f4c002d55d5f722a08eb9acf126f7717072812"; - sha256 = "0ad5dqyjpwn78nadg90jd03n0mkllm0r4jxq72h77dwxsd1prgl9"; + rev = "c15d51ea9f622b8bce469a18833a6ac64f6a1193"; + sha256 = "1l15y0di6k4v0vrwpd86lp2n5ljfjnzncgpxwmbhqb2xznr7caq7"; }; }; @@ -1009,12 +1020,12 @@ }; nerdtree = buildVimPluginFrom2Nix { - name = "nerdtree-2018-10-25"; + name = "nerdtree-2018-10-31"; src = fetchFromGitHub { owner = "scrooloose"; repo = "nerdtree"; - rev = "91e0f2253fbecefa7e14f095950341584877ef19"; - sha256 = "1lkmxplrv211drzmwi93v1fmicdjm146vl471s3h21y77k0hd2f5"; + rev = "8d005db94f8d1a214d172aeb1008d016c3d201e2"; + sha256 = "0f8dljl45ph668kwjf0py0891i3aqfdijplarxnblbkp2zn5ij7g"; }; }; @@ -1479,12 +1490,12 @@ }; tsuquyomi = buildVimPluginFrom2Nix { - name = "tsuquyomi-2018-08-03"; + name = "tsuquyomi-2018-10-31"; src = fetchFromGitHub { owner = "Quramy"; repo = "tsuquyomi"; - rev = "05e6515f6d21545959ac4eb570c917e1d225b1f1"; - sha256 = "0hbd2d8zb86c8ncrrm4zyj92j523xay2lwk2k9arwacn8fj42hir"; + rev = "bdd034d06ed47176ec1ee0bd3dae5bc0aeb053e3"; + sha256 = "119dxmkarbh0b0k4l59mxr19shks4mv96j3mbz02q0kdq18bgrdq"; }; }; @@ -1539,12 +1550,12 @@ }; vim = buildVimPluginFrom2Nix { - name = "vim-2018-10-27"; + name = "vim-2018-10-30"; src = fetchFromGitHub { owner = "dracula"; repo = "vim"; - rev = "854886980635eb70e119d2bd3bb94a0ce46fc71d"; - sha256 = "1ff88clly227cj83ng6bwc8jn3zp20614agg94izqhsxr5bpdp5z"; + rev = "66755a9cb9bdea62720812a1165132de6ff62468"; + sha256 = "0zca3spgnf00rxa0h5x79ydycz41b0xli7bgwpnbxannzxqswhiy"; }; }; @@ -1749,12 +1760,12 @@ }; vim-airline = buildVimPluginFrom2Nix { - name = "vim-airline-2018-10-22"; + name = "vim-airline-2018-11-01"; src = fetchFromGitHub { owner = "vim-airline"; repo = "vim-airline"; - rev = "08e9aa5386eecfd6a6cbde1eff240619cd81beed"; - sha256 = "0g9rlr6067sqyp0l4yacnr14phx1wn2jvjcq2x2zwkc0b28hxyrs"; + rev = "6516b1b4dccef543d489177431050fe8a5c5c99c"; + sha256 = "0x4vdxz31vqyd3qy8vr4gcdc649nz72axris5fxj8ln5zphlr6ll"; }; }; @@ -1969,12 +1980,12 @@ }; vim-dispatch = buildVimPluginFrom2Nix { - name = "vim-dispatch-2018-10-02"; + name = "vim-dispatch-2018-10-31"; src = fetchFromGitHub { owner = "tpope"; repo = "vim-dispatch"; - rev = "ab7470d4b03bae9880bf2b5cef60fc0fb51b1101"; - sha256 = "01slb3lcbdba0a4xky6i5xflh1cjm0aq6g8yyfzrgn4w8pq50h9p"; + rev = "d4b8940fd1cd77fc6d300f003b18745a584295b2"; + sha256 = "06g0xc55z9jpa5rl8c5af5apb8b2agahsxxzayl2vn763v9p1n6b"; }; }; @@ -2199,12 +2210,12 @@ }; vim-grepper = buildVimPluginFrom2Nix { - name = "vim-grepper-2018-10-29"; + name = "vim-grepper-2018-10-30"; src = fetchFromGitHub { owner = "mhinz"; repo = "vim-grepper"; - rev = "54cb4c55bd8d80fc046f62b8f6486db2de424399"; - sha256 = "1bzzyh2yav9f54gn17ny8gpi5h70yvjqdyg9lg0b1rglvirjpb1r"; + rev = "a55a14b97dc8ac848eeb95e71d095b75197ba665"; + sha256 = "08p5dp43z9bxllr5fvl3hgnyqyxlvpbfczw1ydncmzvrqqccrx08"; }; }; @@ -2630,12 +2641,12 @@ }; vim-operator-surround = buildVimPluginFrom2Nix { - name = "vim-operator-surround-2017-12-22"; + name = "vim-operator-surround-2018-11-01"; src = fetchFromGitHub { owner = "rhysd"; repo = "vim-operator-surround"; - rev = "001c0da077b5b38a723151b19760d220e02363db"; - sha256 = "0c6w6id57faw6sjf5wvw9qp2a4i7xj65q0c4hjs0spgzycv2wpkh"; + rev = "80337a40a829cfc77b065a71d8a609e2ad7d2c8b"; + sha256 = "0f9shg81bl39hz67ahbi6k6gbhky7gzp8by16fhiz75hbjgp9lq2"; }; }; @@ -2830,12 +2841,12 @@ }; vim-rhubarb = buildVimPluginFrom2Nix { - name = "vim-rhubarb-2018-09-20"; + name = "vim-rhubarb-2018-10-31"; src = fetchFromGitHub { owner = "tpope"; repo = "vim-rhubarb"; - rev = "3a9ddb8ffa46b9fa49f3d9372bbb5d64bdc5fd23"; - sha256 = "1swybc30vyf309w1a34jf94xja1kikvrr3xpixfban50s6aiyips"; + rev = "42072cc349c46db79c0a4411d399a2fe31cfda7e"; + sha256 = "020fshfrwbycs4saci58k625330i2ndfh6lqnxz5h0pp2m5y6jp8"; }; }; @@ -2910,12 +2921,12 @@ }; vim-signify = buildVimPluginFrom2Nix { - name = "vim-signify-2018-10-01"; + name = "vim-signify-2018-10-31"; src = fetchFromGitHub { owner = "mhinz"; repo = "vim-signify"; - rev = "ce2dd937bf3a394ef2fbeda8ab56d2b4437be3c3"; - sha256 = "08ah81bn0cmqphi2lw2y7pjdg8sw2wjwc3p3j6pj0gyqx2bsf408"; + rev = "4e7faba8d32d56d80090dedc5328849a7128b73a"; + sha256 = "0wm1kgklvd4b52lrqb9l7n511p8kaw8y9707962l4nrp8cbrbs31"; }; }; @@ -2980,22 +2991,22 @@ }; vim-speeddating = buildVimPluginFrom2Nix { - name = "vim-speeddating-2017-05-24"; + name = "vim-speeddating-2018-10-31"; src = fetchFromGitHub { owner = "tpope"; repo = "vim-speeddating"; - rev = "a418667791f03694065948342f2d6c5cca8d0f32"; - sha256 = "1wm33izawazh0dy70zjk6rkg30yrlldba5r1gypnr4barps702gw"; + rev = "799cd3473bc64adcb6b556bf349f549570666b62"; + sha256 = "0vyla4lslf1hycx1mvgydhlar2f6bwnwbcp39s1f0m65fqs25rhz"; }; }; vim-startify = buildVimPluginFrom2Nix { - name = "vim-startify-2018-10-02"; + name = "vim-startify-2018-10-31"; src = fetchFromGitHub { owner = "mhinz"; repo = "vim-startify"; - rev = "556bf1d507dfaddfba4b5795716ea20f8ba902ac"; - sha256 = "1jjj7iij08455rlc705m3pnbjg87r2l29jclzkiy7nsvjjh3dfwx"; + rev = "356562270684d8d1647daf0faaf76ac90740990c"; + sha256 = "0qc9ifq4blixda0kyc0zhmqi6cqz44xnk9x17p0p9qqidf1s1l1r"; }; }; @@ -3290,12 +3301,12 @@ }; vimtex = buildVimPluginFrom2Nix { - name = "vimtex-2018-10-29"; + name = "vimtex-2018-11-01"; src = fetchFromGitHub { owner = "lervag"; repo = "vimtex"; - rev = "8a32372e4fc3c628d36b8215c6d30bd05eeade28"; - sha256 = "1h1fp0jnv4wj96mam9dgnr5y1i4a4bdi4law3y1qh937bx7nk2vd"; + rev = "2aae07e67034f4806d45500a967bf5775ab22baf"; + sha256 = "1ng1ps5f2vh7xs5lfkid7zwvcjglynw53xvd301zpjbgln2gv3fz"; }; }; diff --git a/pkgs/misc/vim-plugins/overrides.nix b/pkgs/misc/vim-plugins/overrides.nix index 6b8bf42c795..c1bd45a6b78 100644 --- a/pkgs/misc/vim-plugins/overrides.nix +++ b/pkgs/misc/vim-plugins/overrides.nix @@ -9,6 +9,12 @@ , languagetool , Cocoa, CoreFoundation, CoreServices , buildVimPluginFrom2Nix + +# vim-go denpencies +, asmfmt, delve, errcheck, godef, golint +, gomodifytags, gotags, gotools, motion +, gnused, reftools, gogetdoc, gometalinter +, impl, iferr }: let @@ -247,6 +253,34 @@ with generated; dependencies = ["vim-misc"]; }); + # change the go_bin_path to point to a path in the nix store. See the code in + # fatih/vim-go here + # https://github.com/fatih/vim-go/blob/155836d47052ea9c9bac81ba3e937f6f22c8e384/autoload/go/path.vim#L154-L159 + vim-go = vim-go.overrideAttrs(old: let + binPath = lib.makeBinPath [ + asmfmt + delve + errcheck + godef + gogetdoc + golint + gometalinter + gomodifytags + gotags + gotools + iferr + impl + motion + reftools + ]; + in { + postPatch = '' + ${gnused}/bin/sed \ + -Ee 's@let go_bin_path = go#path#BinPath\(\)@let go_bin_path = "${binPath}"@g' \ + -i autoload/go/path.vim + ''; + }); + vim-grammarous = vim-grammarous.overrideAttrs(old: { # use `:GrammarousCheck` to initialize checking # In neovim, you also want to use set @@ -334,4 +368,13 @@ with generated; }; }); + jedi-vim = jedi-vim.overrideAttrs(old: { + # checking for python3 support in vim would be neat, too, but nobody else seems to care + buildInputs = [ python3Packages.jedi ]; + meta = { + description = "code-completion for python using python-jedi"; + license = stdenv.lib.licenses.mit; + }; + }); + } diff --git a/pkgs/misc/vim-plugins/vim-plugin-names b/pkgs/misc/vim-plugins/vim-plugin-names index bccb97b72d2..33049c834a2 100644 --- a/pkgs/misc/vim-plugins/vim-plugin-names +++ b/pkgs/misc/vim-plugins/vim-plugin-names @@ -37,14 +37,15 @@ ctjhoa/spacevim ctrlpvim/ctrlp.vim dag/vim2hs dannyob/quickfixstatus +davidhalter/jedi-vim derekelkins/agda-vim derekwyatt/vim-scala dhruvasagar/vim-table-mode digitaltoad/vim-jade dleonard0/pony-vim-syntax dracula/vim -dylanaraps/wal.vim drmingdrmer/xptemplate +dylanaraps/wal.vim eagletmt/ghcmod-vim eagletmt/neco-ghc easymotion/vim-easymotion diff --git a/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix b/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix index eb5b0bd294c..89b4f70264e 100644 --- a/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix +++ b/pkgs/os-specific/linux/firmware/raspberrypi-wireless/default.nix @@ -1,52 +1,51 @@ -{ stdenv, fetchurl, dpkg }: +{ stdenv, fetchurl, fetchFromGitHub, dpkg }: stdenv.mkDerivation rec { name = "raspberrypi-wireless-firmware-${version}"; - version = "2018-05-30"; + version = "2018-08-20"; srcs = [ - (fetchurl { - url = "https://archive.raspberrypi.org/debian/pool/main/b/bluez-firmware/bluez-firmware_1.2-3+rpt5.debian.tar.xz"; - sha256 = "06zpyrz6frkgjy26hr3998klnhjdqxwashgjgvj9rgbcqy70nkxg"; + (fetchFromGitHub { + name = "bluez-firmware"; + owner = "RPi-Distro"; + repo = "bluez-firmware"; + rev = "ade2bae1aaaebede09abb8fb546f767a0e4c7804"; + sha256 = "07gm76gxp5anv6paryvxcp34a86fkny8kdlzqhzcpfczzglkp6ag"; }) - (fetchurl { - url = "https://archive.raspberrypi.org/debian/pool/main/f/firmware-nonfree/firmware-brcm80211_20161130-3+rpt3_all.deb"; - sha256 = "10l74ac28baprnsiylf2vy4pkxgb3crixid90ngs6si9smm7rn6z"; + (fetchFromGitHub { + name = "firmware-nonfree"; + owner = "RPi-Distro"; + repo = "firmware-nonfree"; + rev = "b518de45ced519e8f7a499f4778100173402ae43"; + sha256 = "1d5026ic9awji6c67irpwsxpxgsc0dhn11d3abkxi2vvra1pir4g"; }) ]; sourceRoot = "."; + dontBuild = true; # Firmware blobs do not need fixing and should not be modified dontFixup = true; - - # Unpack the debian package - nativeBuildInputs = [ dpkg ]; - unpackCmd = '' - if ! [[ "$curSrc" =~ \.deb$ ]]; then return 1; fi - dpkg -x "$curSrc" . - ''; - installPhase = '' mkdir -p "$out/lib/firmware/brcm" # Wifi firmware - for filename in lib/firmware/brcm/brcmfmac434??-sdio.*; do + for filename in firmware-nonfree/brcm/brcmfmac434??-sdio.*; do cp "$filename" "$out/lib/firmware/brcm" done # Bluetooth firmware - cp broadcom/*.hcd "$out/lib/firmware/brcm" + cp bluez-firmware/broadcom/*.hcd "$out/lib/firmware/brcm" ''; outputHashMode = "recursive"; outputHashAlgo = "sha256"; - outputHash = "1gwzasl5w5nc0awqv3w2081ns63wd1yds0xh0dg95dc6brnqhhf8"; + outputHash = "1s5gb00v42s5izbaw8irs1fwvhh7z9wl07czc0nkw6p91871ivb7"; meta = with stdenv.lib; { description = "Firmware for builtin Wifi/Bluetooth devices in the Raspberry Pi 3 and Zero W"; - homepage = https://archive.raspberrypi.org/debian/pool/main/f/firmware-nonfree/; + homepage = https://github.com/RPi-Distro/firmware-nonfree; license = licenses.unfreeRedistributableFirmware; platforms = platforms.linux; maintainers = with maintainers; [ lopsided98 ]; diff --git a/pkgs/os-specific/linux/kernel/linux-4.14.nix b/pkgs/os-specific/linux/kernel/linux-4.14.nix index f4a728c9d25..a5170edfa26 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.14.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.14.nix @@ -3,7 +3,7 @@ with stdenv.lib; buildLinux (args // rec { - version = "4.14.78"; + version = "4.14.79"; # 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; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; - sha256 = "0v2cwykgd2hxlqja4yl4pq45nhd5x8917ixqq7hj1r3ry304vnpl"; + sha256 = "0flkkgfjzs6z7hkr15lga8jvxgwn6wi885yf5wyr0zxjrqg0f6an"; }; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-4.18.nix b/pkgs/os-specific/linux/kernel/linux-4.18.nix index d6c4b58b980..add98cfb2fa 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.18.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.18.nix @@ -3,7 +3,7 @@ with stdenv.lib; buildLinux (args // rec { - version = "4.18.16"; + version = "4.18.17"; # 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; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; - sha256 = "1rjjkhl8lz4y4sn7icy8mp6p1x7rvapybp51p92sanbjy3i19fmy"; + sha256 = "0353ns09i5y0fcygvly20z0qrp6gcqd453186ihm4r7ajgh43bz2"; }; } // (args.argsOverride or {})) diff --git a/pkgs/os-specific/linux/kernel/linux-4.19.nix b/pkgs/os-specific/linux/kernel/linux-4.19.nix index 5aa033348d4..d597818dab6 100644 --- a/pkgs/os-specific/linux/kernel/linux-4.19.nix +++ b/pkgs/os-specific/linux/kernel/linux-4.19.nix @@ -3,7 +3,7 @@ with stdenv.lib; buildLinux (args // rec { - version = "4.19"; + version = "4.19.1"; # 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; @@ -13,6 +13,6 @@ buildLinux (args // rec { src = fetchurl { url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; - sha256 = "18a92z17alh5kkvjv7l9z8wk5jgdb6raawdfkpwx9bi8amjzas0c"; + sha256 = "0ac8w310p83z11ksmyad7by7cmacwg4vq68pzxchc88bbk33gmk4"; }; } // (args.argsOverride or {})) diff --git a/pkgs/servers/matrix-synapse/default.nix b/pkgs/servers/matrix-synapse/default.nix index dab58d2edd6..e0c666b002a 100644 --- a/pkgs/servers/matrix-synapse/default.nix +++ b/pkgs/servers/matrix-synapse/default.nix @@ -1,4 +1,6 @@ -{ stdenv, python2Packages, fetchurl, fetchFromGitHub }: +{ lib, stdenv, python2Packages, fetchurl, fetchFromGitHub +, enableSystemd ? true +}: let matrix-angular-sdk = python2Packages.buildPythonPackage rec { name = "matrix-angular-sdk-${version}"; @@ -26,13 +28,13 @@ let }; in python2Packages.buildPythonApplication rec { name = "matrix-synapse-${version}"; - version = "0.33.6"; + version = "0.33.8"; src = fetchFromGitHub { owner = "matrix-org"; repo = "synapse"; rev = "v${version}"; - sha256 = "0c1dr09f1msv6xvpmdlncx7yyj6qxnpihd93lqckd115fds12g5h"; + sha256 = "122ba09xkc1x35qaajcynkjikg342259rgy81m8abz0l8mcg4mkm"; }; patches = [ @@ -40,16 +42,41 @@ in python2Packages.buildPythonApplication rec { ]; propagatedBuildInputs = with python2Packages; [ - blist canonicaljson daemonize dateutil frozendict pillow pyasn1 - pydenticon pymacaroons-pynacl pynacl pyopenssl pysaml2 pytz requests - signedjson systemd twisted ujson unpaddedbase64 pyyaml prometheus_client - matrix-angular-sdk bleach netaddr jinja2 psycopg2 - psutil msgpack-python lxml matrix-synapse-ldap3 - phonenumbers jsonschema affinity bcrypt sortedcontainers treq - ]; + bcrypt + bleach + canonicaljson + daemonize + dateutil + frozendict + jinja2 + jsonschema + lxml + matrix-angular-sdk + matrix-synapse-ldap3 + msgpack-python + netaddr + phonenumbers + pillow + prometheus_client + psutil + psycopg2 + pyasn1 + pydenticon + pymacaroons-pynacl + pynacl + pyopenssl + pysaml2 + pyyaml + requests + signedjson + sortedcontainers + treq + twisted + unpaddedbase64 + ] ++ lib.optional enableSystemd systemd; - # Checks fail because of Tox. - doCheck = false; + doCheck = true; + checkPhase = "python -m twisted.trial test"; buildInputs = with python2Packages; [ mock setuptoolsTrial diff --git a/pkgs/servers/plex/default.nix b/pkgs/servers/plex/default.nix index b562df681a0..4e783f3a507 100644 --- a/pkgs/servers/plex/default.nix +++ b/pkgs/servers/plex/default.nix @@ -6,9 +6,9 @@ let plexPass = throw "Plex pass has been removed at upstream's request; please unset nixpkgs.config.plex.pass"; plexpkg = if enablePlexPass then plexPass else { - version = "1.13.8.5395"; - vsnHash = "10d48da0d"; - sha256 = "0lpsh87kcrqwi2qqkj1ccb86hif535yb45hhc41c0ixsfxbqk5cw"; + version = "1.13.9.5456"; + vsnHash = "ecd600442"; + sha256 = "6d1125d4e6eaa94a84f8c600230b867c2d0764644adbc959a96433b8fc210b61"; }; in stdenv.mkDerivation rec { diff --git a/pkgs/servers/sql/postgresql/plv8/default.nix b/pkgs/servers/sql/postgresql/plv8/default.nix index 009f65b9d81..dae3b2fd1af 100644 --- a/pkgs/servers/sql/postgresql/plv8/default.nix +++ b/pkgs/servers/sql/postgresql/plv8/default.nix @@ -2,7 +2,7 @@ stdenv.mkDerivation rec { name = "plv8-${version}"; - version = "2.1.0"; + version = "2.3.8"; nativeBuildInputs = [ perl ]; buildInputs = [ v8 postgresql ]; @@ -11,16 +11,20 @@ stdenv.mkDerivation rec { owner = "plv8"; repo = "plv8"; rev = "v${version}"; - sha256 = "1sfpxz0zcbinn6822j12lkwgrw9kfacrs83ic968rm489rl9w241"; + sha256 = "0hrmn1zzzdf52zwldg6axv57p0f3b279l9s8lbpijcv60fqrzx16"; }; + makeFlags = [ "--makefile=Makefile.shared" ]; + preConfigure = '' - substituteInPlace Makefile --replace '-lv8_libplatform' '-lv8_libplatform -lv8_libbase' + patchShebangs ./generate_upgrade.sh ''; + buildPhase = "make -f Makefile.shared all"; + installPhase = '' mkdir -p $out/bin - install -D plv8.so -t $out/lib + install -D plv8*.so -t $out/lib install -D {plls,plcoffee,plv8}{--${version}.sql,.control} -t $out/share/extension ''; diff --git a/pkgs/servers/sql/postgresql/timescaledb/default.nix b/pkgs/servers/sql/postgresql/timescaledb/default.nix index 07dcfb0b701..3c53054ba7d 100644 --- a/pkgs/servers/sql/postgresql/timescaledb/default.nix +++ b/pkgs/servers/sql/postgresql/timescaledb/default.nix @@ -46,6 +46,6 @@ stdenv.mkDerivation rec { homepage = https://www.timescale.com/; maintainers = with maintainers; [ volth ]; platforms = platforms.linux; - license = licenses.postgresql; + license = licenses.asl20; }; } diff --git a/pkgs/tools/admin/fastlane/Gemfile.lock b/pkgs/tools/admin/fastlane/Gemfile.lock index 631d9cb9628..88162a3432d 100644 --- a/pkgs/tools/admin/fastlane/Gemfile.lock +++ b/pkgs/tools/admin/fastlane/Gemfile.lock @@ -26,7 +26,7 @@ GEM faraday_middleware (0.12.2) faraday (>= 0.7.4, < 1.0) fastimage (2.1.4) - fastlane (2.105.2) + fastlane (2.107.0) CFPropertyList (>= 2.3, < 4.0.0) addressable (>= 2.3, < 3.0.0) babosa (>= 1.0.2, < 2.0.0) @@ -71,10 +71,10 @@ GEM representable (~> 3.0) retriable (>= 2.0, < 4.0) signet (~> 0.9) - googleauth (0.6.6) + googleauth (0.6.7) faraday (~> 0.12) jwt (>= 1.4, < 3.0) - memoist (~> 0.12) + memoist (~> 0.16) multi_json (~> 1.11) os (>= 0.9, < 2.0) signet (~> 0.7) @@ -105,7 +105,7 @@ GEM rouge (2.0.7) rubyzip (1.2.2) security (0.1.3) - signet (0.10.0) + signet (0.11.0) addressable (~> 2.3) faraday (~> 0.9) jwt (>= 1.5, < 3.0) @@ -127,7 +127,7 @@ GEM unf_ext (0.0.7.5) unicode-display_width (1.4.0) word_wrap (1.0.0) - xcodeproj (1.6.0) + xcodeproj (1.7.0) CFPropertyList (>= 2.3.3, < 4.0) atomos (~> 0.1.3) claide (>= 1.0.2, < 2.0) diff --git a/pkgs/tools/admin/fastlane/gemset.nix b/pkgs/tools/admin/fastlane/gemset.nix index c2133c7c8c9..5afad1683c9 100644 --- a/pkgs/tools/admin/fastlane/gemset.nix +++ b/pkgs/tools/admin/fastlane/gemset.nix @@ -153,10 +153,10 @@ dependencies = ["CFPropertyList" "addressable" "babosa" "colored" "commander-fastlane" "dotenv" "emoji_regex" "excon" "faraday" "faraday-cookie_jar" "faraday_middleware" "fastimage" "gh_inspector" "google-api-client" "highline" "json" "mini_magick" "multi_json" "multi_xml" "multipart-post" "plist" "public_suffix" "rubyzip" "security" "simctl" "slack-notifier" "terminal-notifier" "terminal-table" "tty-screen" "tty-spinner" "word_wrap" "xcodeproj" "xcpretty" "xcpretty-travis-formatter"]; source = { remotes = ["https://rubygems.org"]; - sha256 = "1fq1zqvwim939klkx2893cbm1v4gi3a991qrj8933l3qg1y41fx2"; + sha256 = "1d3jv7ik3rivmhxzcapia2lzf9xjmjgi4yxkl60ly6pcbbvhl48w"; type = "gem"; }; - version = "2.105.2"; + version = "2.107.0"; }; gh_inspector = { source = { @@ -179,10 +179,10 @@ dependencies = ["faraday" "jwt" "memoist" "multi_json" "os" "signet"]; source = { remotes = ["https://rubygems.org"]; - sha256 = "1747p1dhpvz76i98xnjrvaj785y1232svm0nc8g9by6pz835gp2l"; + sha256 = "1yj7j1rnyamxpn5ybgdgbiw89v9bq2r0h85s2y2jzvqanvm7iflq"; type = "gem"; }; - version = "0.6.6"; + version = "0.6.7"; }; highline = { source = { @@ -367,10 +367,10 @@ dependencies = ["addressable" "faraday" "jwt" "multi_json"]; source = { remotes = ["https://rubygems.org"]; - sha256 = "14rhv3riz6ki4ix4l79b6ckq7d015673gxkxvzdcxjl1h8plpdcy"; + sha256 = "1f5d3bz5bjc4b0r2jmqd15qf07lgsqkgd25f0h46jihrf9l5fsi4"; type = "gem"; }; - version = "0.10.0"; + version = "0.11.0"; }; simctl = { dependencies = ["CFPropertyList" "naturally"]; @@ -476,10 +476,10 @@ dependencies = ["CFPropertyList" "atomos" "claide" "colored2" "nanaimo"]; source = { remotes = ["https://rubygems.org"]; - sha256 = "1f4shbzff3wsk1jq0v9bs10496qdx69k2jfpf11p4q2ik3jdnsv7"; + sha256 = "1hy2ihcqfjlsrnf8qkm51m1kk154yp0l0007f269ky8j9z5lyw3p"; type = "gem"; }; - version = "1.6.0"; + version = "1.7.0"; }; xcpretty = { dependencies = ["rouge"]; diff --git a/pkgs/tools/backup/bup/default.nix b/pkgs/tools/backup/bup/default.nix index f24e89fcc84..bf10f556b6b 100644 --- a/pkgs/tools/backup/bup/default.nix +++ b/pkgs/tools/backup/bup/default.nix @@ -5,7 +5,7 @@ assert par2Support -> par2cmdline != null; -let version = "0.29.1"; in +let version = "0.29.2"; in with stdenv.lib; @@ -16,7 +16,7 @@ stdenv.mkDerivation rec { repo = "bup"; owner = "bup"; rev = version; - sha256 = "0wdr399jf64zzzsdvldhrwvnh5xpbghjvslr1j2cwr5y4i36znxf"; + sha256 = "17lpbyhf43gcln5s43m2zzgichcx7jq6ragcawfklw6svg1vnj89"; }; buildInputs = [ diff --git a/pkgs/tools/misc/tmux/default.nix b/pkgs/tools/misc/tmux/default.nix index 038b3206ac2..192c5eb0823 100644 --- a/pkgs/tools/misc/tmux/default.nix +++ b/pkgs/tools/misc/tmux/default.nix @@ -20,8 +20,8 @@ stdenv.mkDerivation rec { src = fetchFromGitHub { owner = "tmux"; repo = "tmux"; - rev = version; - sha256 = "0n8sjddy00xgh1rvvw968hh72pyslg1gahmzajfc4b3xax87drpi"; + rev = "01918cb0170e07288d3aec624516e6470bf5b7fc"; + sha256 = "1fy87wvxn7r7jzqapvjisc1iizic3kxqk2lv83giqmw1y4g3s7rl"; }; postPatch = '' diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 848b04a4b47..8f371ac1ec5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -122,6 +122,8 @@ with pkgs; inherit dhall-nix; }; + deadcode = callPackage ../development/tools/deadcode { }; + diffPlugins = (callPackage ../build-support/plugins.nix {}).diffPlugins; dieHook = makeSetupHook {} ../build-support/setup-hooks/die.sh; @@ -657,6 +659,8 @@ with pkgs; cconv = callPackage ../tools/text/cconv { }; + go-check = callPackage ../development/tools/check { }; + chkcrontab = callPackage ../tools/admin/chkcrontab { }; cozy = callPackage ../applications/audio/cozy-audiobooks { }; @@ -801,6 +805,8 @@ with pkgs; }; aria = aria2; + asmfmt = callPackage ../development/tools/asmfmt { }; + aspcud = callPackage ../tools/misc/aspcud { }; at = callPackage ../tools/system/at { }; @@ -1309,6 +1315,8 @@ with pkgs; envsubst = callPackage ../tools/misc/envsubst { }; + errcheck = callPackage ../development/tools/errcheck { }; + eschalot = callPackage ../tools/security/eschalot { }; esptool = callPackage ../tools/misc/esptool { }; @@ -5089,6 +5097,8 @@ with pkgs; recoverjpeg = callPackage ../tools/misc/recoverjpeg { }; + reftools = callPackage ../development/tools/reftools { }; + reposurgeon = callPackage ../applications/version-management/reposurgeon { }; reptyr = callPackage ../os-specific/linux/reptyr {}; @@ -6941,6 +6951,10 @@ with pkgs; go-junit-report = callPackage ../development/tools/go-junit-report { }; + gogetdoc = callPackage ../development/tools/gogetdoc { }; + + gometalinter = callPackage ../development/tools/gometalinter { }; + gox = callPackage ../development/tools/gox { }; gprolog = callPackage ../development/compilers/gprolog { }; @@ -7549,6 +7563,8 @@ with pkgs; dhall-text = haskell.lib.justStaticExecutables haskellPackages.dhall-text; + dhallPackages = import ../development/dhall-modules { inherit pkgs; }; + duktape = callPackage ../development/interpreters/duktape { }; beam = callPackage ./beam-packages.nix { }; @@ -7772,7 +7788,6 @@ with pkgs; python2Full = python2.override{x11Support=true;}; python27Full = python27.override{x11Support=true;}; python3Full = python3.override{x11Support=true;}; - python34Full = python34.override{x11Support=true;}; python35Full = python35.override{x11Support=true;}; python36Full = python36.override{x11Support=true;}; python37Full = python37.override{x11Support=true;}; @@ -7786,10 +7801,6 @@ with pkgs; self = python27; inherit (darwin) CF configd; }; - python34 = callPackage ../development/interpreters/python/cpython/3.4 { - inherit (darwin) CF configd; - self = python34; - }; python35 = callPackage ../development/interpreters/python/cpython/3.5 { inherit (darwin) CF configd; self = python35; @@ -7811,7 +7822,6 @@ with pkgs; # Python package sets. python27Packages = lib.hiPrioSet (recurseIntoAttrs python27.pkgs); - python34Packages = python34.pkgs; python35Packages = python35.pkgs; python36Packages = recurseIntoAttrs python36.pkgs; python37Packages = python37.pkgs; @@ -10133,6 +10143,8 @@ with pkgs; imlibsetroot = callPackage ../applications/graphics/imlibsetroot { libXinerama = xorg.libXinerama; } ; + ineffassign = callPackage ../development/tools/ineffassign { }; + ijs = callPackage ../development/libraries/ijs { }; incrtcl = callPackage ../development/libraries/incrtcl { }; @@ -11699,7 +11711,9 @@ with pkgs; pgroonga = callPackage ../servers/sql/postgresql/pgroonga {}; plv8 = callPackage ../servers/sql/postgresql/plv8 { - v8 = v8_6_x; + v8 = callPackage ../development/libraries/v8/plv8_6_x.nix { + inherit (python2Packages) python; + }; }; phonon = callPackage ../development/libraries/phonon {}; @@ -12524,6 +12538,8 @@ with pkgs; vala = vala_0_40; }; + unconvert = callPackage ../development/tools/unconvert { }; + unibilium = callPackage ../development/libraries/unibilium { }; unicap = callPackage ../development/libraries/unicap {}; @@ -14274,11 +14290,6 @@ with pkgs; # when adding a new linux version kernelPatches.cpu-cgroup-v2."4.11" kernelPatches.modinst_arg_list_too_long - # https://github.com/NixOS/nixpkgs/issues/42755 - # Remove these xen-netfront patches once they're included in - # upstream! Fixes https://github.com/NixOS/nixpkgs/issues/42755 - kernelPatches.xen-netfront_fix_mismatched_rtnl_unlock - kernelPatches.xen-netfront_update_features_after_registering_netdev ]; }; @@ -14678,19 +14689,22 @@ with pkgs; easyjson = callPackage ../development/tools/easyjson { }; + iferr = callPackage ../development/tools/iferr { }; + go-bindata = callPackage ../development/tools/go-bindata { }; go-bindata-assetfs = callPackage ../development/tools/go-bindata-assetfs { }; go-protobuf = callPackage ../development/tools/go-protobuf { }; - go-symbols = callPackage ../development/tools/go-symbols { }; go-outline = callPackage ../development/tools/go-outline { }; gocode = callPackage ../development/tools/gocode { }; + goconst = callPackage ../development/tools/goconst { }; + goconvey = callPackage ../development/tools/goconvey { }; gotags = callPackage ../development/tools/gotags { }; @@ -14699,14 +14713,20 @@ with pkgs; golangci-lint = callPackage ../development/tools/golangci-lint { }; + gocyclo = callPackage ../development/tools/gocyclo { }; + godef = callPackage ../development/tools/godef { }; gopkgs = callPackage ../development/tools/gopkgs { }; + gosec = callPackage ../development/tools/gosec { }; + govers = callPackage ../development/tools/govers { }; govendor = callPackage ../development/tools/govendor { }; + go-tools = callPackage ../development/tools/go-tools { }; + gotools = callPackage ../development/tools/gotools { }; gotop = callPackage ../tools/system/gotop { }; @@ -14719,6 +14739,8 @@ with pkgs; gotests = callPackage ../development/tools/gotests { }; + impl = callPackage ../development/tools/impl { }; + quicktemplate = callPackage ../development/tools/quicktemplate { }; gogoclient = callPackage ../os-specific/linux/gogoclient { }; @@ -15482,6 +15504,10 @@ with pkgs; hasklig = callPackage ../data/fonts/hasklig {}; + interfacer = callPackage ../development/tools/interfacer { }; + + maligned = callPackage ../development/tools/maligned { }; + inter-ui = callPackage ../data/fonts/inter-ui { }; siji = callPackage ../data/fonts/siji { }; @@ -21341,9 +21367,7 @@ with pkgs; abella = callPackage ../applications/science/logic/abella {}; - acgtk = callPackage ../applications/science/logic/acgtk { - ocamlPackages = ocaml-ng.ocamlPackages_4_05; - }; + acgtk = callPackage ../applications/science/logic/acgtk {}; alt-ergo = callPackage ../applications/science/logic/alt-ergo {}; @@ -22085,38 +22109,56 @@ with pkgs; nixops-dns = callPackage ../tools/package-management/nixops/nixops-dns.nix { }; - /* - * Evaluate a NixOS configuration using this evaluation of Nixpkgs. - * - * With this function you can write, for example, a package that - * depends on a custom virtual machine image. - * - * Parameter: A module, path or list of those that represent the - * configuration of the NixOS system to be constructed. - * - * Result: An attribute set containing packages produced by this - * evaluation of NixOS, such as toplevel, kernel and - * initialRamdisk. - * The result can be extended in the modules by defining - * extra options in system.build. - * - * Unlike in plain NixOS, the nixpkgs.config and - * nixpkgs.system options will be ignored by default. Instead, - * nixpkgs.pkgs will have the default value of pkgs as it was - * constructed right after invoking the nixpkgs function (e.g. the - * value of import { overlays = [./my-overlay.nix]; } - * but not the value of (import {} // { extra = ...; }). - * - * If you do want to use the config.nixpkgs options, you are - * probably better off by calling nixos/lib/eval-config.nix - * directly, even though it is possible to set config.nixpkgs.pkgs. - * - * For more information about writing NixOS modules, see - * https://nixos.org/nixos/manual/index.html#sec-writing-modules - * - * Note that you will need to have called Nixpkgs with the system - * parameter set to the right value for your deployment target. - */ + /* Evaluate a NixOS configuration using this evaluation of Nixpkgs. + + With this function you can write, for example, a package that + depends on a custom virtual machine image. + + Parameter: A module, path or list of those that represent the + configuration of the NixOS system to be constructed. + + Result: An attribute set containing packages produced by this + evaluation of NixOS, such as toplevel, kernel and + initialRamdisk. + The result can be extended in the modules by defining + extra attributes in system.build. + + Example: + + let + myOS = pkgs.nixos ({ lib, pkgs, config, ... }: { + + config.services.nginx = { + enable = true; + # ... + }; + + # Use config.system.build to exports relevant parts of a + # configuration. The runner attribute should not be + # considered a fully general replacement for systemd + # functionality. + config.system.build.run-nginx = config.systemd.services.nginx.runner; + }); + in + myOS.run-nginx + + Unlike in plain NixOS, the nixpkgs.config and + nixpkgs.system options will be ignored by default. Instead, + nixpkgs.pkgs will have the default value of pkgs as it was + constructed right after invoking the nixpkgs function (e.g. the + value of import { overlays = [./my-overlay.nix]; } + but not the value of (import {} // { extra = ...; }). + + If you do want to use the config.nixpkgs options, you are + probably better off by calling nixos/lib/eval-config.nix + directly, even though it is possible to set config.nixpkgs.pkgs. + + For more information about writing NixOS modules, see + https://nixos.org/nixos/manual/index.html#sec-writing-modules + + Note that you will need to have called Nixpkgs with the system + parameter set to the right value for your deployment target. + */ nixos = configuration: (import (self.path + "/nixos/lib/eval-config.nix") { inherit (pkgs.stdenv.hostPlatform) system; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index cc608eacb1a..1979335357f 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -662,6 +662,8 @@ in { spglib = callPackage ../development/python-modules/spglib { }; + sslib = callPackage ../development/python-modules/sslib { }; + statistics = callPackage ../development/python-modules/statistics { }; sumo = callPackage ../development/python-modules/sumo { }; @@ -1646,6 +1648,8 @@ in { inherit (pkgs.gitAndTools) git-annex; }; + python-gitlab = callPackage ../development/python-modules/python-gitlab { }; + google-cloud-sdk = callPackage ../tools/admin/google-cloud-sdk { }; google-cloud-sdk-gce = callPackage ../tools/admin/google-cloud-sdk { with-gce=true; }; @@ -2458,6 +2462,8 @@ in { html5lib = callPackage ../development/python-modules/html5lib { }; + httmock = callPackage ../development/python-modules/httmock { }; + http_signature = callPackage ../development/python-modules/http_signature { }; httpbin = callPackage ../development/python-modules/httpbin { }; diff --git a/pkgs/top-level/stage.nix b/pkgs/top-level/stage.nix index d270a6608a1..1d412a6582c 100644 --- a/pkgs/top-level/stage.nix +++ b/pkgs/top-level/stage.nix @@ -150,7 +150,7 @@ let # All packages built for i686 Linux. # Used by wine, firefox with debugging version of Flash, ... - pkgsi686Linux = assert stdenv.hostPlatform.isLinux; nixpkgsFun { + pkgsi686Linux = if stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isx86 then nixpkgsFun { inherit overlays config; ${if stdenv.hostPlatform == stdenv.buildPlatform then "localSystem" else "crossSystem"} = { @@ -158,7 +158,7 @@ let cpu = lib.systems.parse.cpuTypes.i686; }; }; - }; + } else throw "i686 Linux package set can only be used with the x86 family."; # Extend the package set with zero or more overlays. This preserves # preexisting overlays. Prefer to initialize with the right overlays