Merge remote-tracking branch 'upstream/master' into HEAD

This commit is contained in:
John Ericson 2018-11-05 15:19:33 -05:00
commit 48caae5045
116 changed files with 2293 additions and 1287 deletions

4
.github/CODEOWNERS vendored
View file

@ -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

View file

@ -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`, `python36` and `python37`. The PyPy interpreter
Versions 2.7, 3.5, 3.6 and 3.7 of the CPython interpreter are available as
respectively `python27`, `python35`, `python36` and `python37`. The PyPy interpreter
is available as `pypy`. The aliases `python2` and `python3` correspond to respectively `python27` and
`python37`. 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`.

View file

@ -1,3 +1,7 @@
/* Build a channel tarball. These contain, in addition to the nixpkgs
* expressions themselves, files that indicate the version of nixpkgs
* that they represent.
*/
{ pkgs, nixpkgs, version, versionSuffix }:
pkgs.releaseTools.makeSourceTarball {

View file

@ -250,8 +250,7 @@ sub connect {
$self->start;
local $SIG{ALRM} = sub { die "timed out waiting for the VM to connect\n"; };
# 50 minutes -- increased as a test, see #49441
alarm 3000;
alarm 300;
readline $self->{socket} or die "the VM quit before connecting\n";
alarm 0;

View file

@ -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

View file

@ -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;
};

View file

@ -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;

View file

@ -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 ];

View file

@ -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;

View file

@ -208,7 +208,6 @@ in
config = {
_module.args = {
pkgs = cfg.pkgs;
pkgs_i686 = cfg.pkgs.pkgsi686Linux;
};
};
}

View file

@ -29,7 +29,7 @@ with lib;
description = "Hardware RNG Entropy Gatherer Daemon";
serviceConfig.ExecStart = "${pkgs.rng-tools}/sbin/rngd -f -v";
serviceConfig.ExecStart = "${pkgs.rng-tools}/sbin/rngd -f";
};
};
}

View file

@ -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}

View file

@ -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 ];

View file

@ -2,15 +2,13 @@
stdenv.mkDerivation rec {
name = "phototonic-${version}";
version = "1.7.1";
version = "2.1";
src = fetchFromGitHub {
repo = "phototonic";
owner = "oferkv";
# There is currently no tag for 1.7.1 see
# https://github.com/oferkv/phototonic/issues/214
rev = "c37070e4a068570d34ece8de1e48aa0882c80c5b";
sha256 = "1agd3bsrpljd019qrjvlbim5l0bhpx53dhpc0gvyn0wmcdzn92gj";
rev = "v${version}";
sha256 = "0csidmxl1sfmn6gq81vn9f9jckb4swz3sgngnwqa4f75lr6604h7";
};
buildInputs = [ qtbase exiv2 ];

View file

@ -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";

View file

@ -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)

View file

@ -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 ]

View file

@ -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 ---

View file

@ -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 ---

View file

@ -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";

View file

@ -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";

View file

@ -1,4 +1,4 @@
{ fetchurl, stdenv, fixDarwinDylibNames
{ fetchurl, stdenv
, pkgconfig, gnupg
, xapian, gmime, talloc, zlib
, doxygen, perl
@ -34,18 +34,11 @@ stdenv.mkDerivation rec {
bash-completion # (optional) dependency to install bash completion
emacs # (optional) to byte compile emacs code, also needed for tests
ruby # (optional) ruby bindings
which dtach openssl bash # test dependencies
]
++ optional stdenv.isDarwin fixDarwinDylibNames
++ optionals (!stdenv.isDarwin) [ gdb man ]; # test dependencies
];
postPatch = ''
patchShebangs configure
find test/ -type f -exec \
sed -i \
-e "1s|#!/usr/bin/env bash|#!${bash}/bin/bash|" \
"{}" ";"
patchShebangs test/
for src in \
util/crypto.c \
@ -54,6 +47,9 @@ stdenv.mkDerivation rec {
substituteInPlace "$src" \
--replace \"gpg\" \"${gnupg}/bin/gpg\"
done
substituteInPlace lib/Makefile.local \
--replace '-install_name $(libdir)' "-install_name $out/lib"
'';
configureFlags = [ "--zshcompletiondir=$(out)/share/zsh/site-functions" ];
@ -64,33 +60,6 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
makeFlags = "V=1";
preFixup = optionalString stdenv.isDarwin ''
set -e
die() {
>&2 echo "$@"
exit 1
}
prg="$out/bin/notmuch"
lib="$(find "$out/lib" -name 'libnotmuch.?.dylib')"
[[ -s "$prg" ]] || die "couldn't find notmuch binary"
[[ -s "$lib" ]] || die "couldn't find libnotmuch"
badname="$(otool -L "$prg" | awk '$1 ~ /libtalloc/ { print $1 }')"
goodname="$(find "${talloc}/lib" -name 'libtalloc.*.*.*.dylib')"
[[ -n "$badname" ]] || die "couldn't find libtalloc reference in binary"
[[ -n "$goodname" ]] || die "couldn't find libtalloc in nix store"
echo "fixing libtalloc link in $lib"
install_name_tool -change "$badname" "$goodname" "$lib"
echo "fixing libtalloc link in $prg"
install_name_tool -change "$badname" "$goodname" "$prg"
'';
preCheck = let
test-database = fetchurl {
url = "https://notmuchmail.org/releases/test-databases/database-v1.tar.xz";
@ -99,12 +68,14 @@ stdenv.mkDerivation rec {
in ''
ln -s ${test-database} test/test-databases/database-v1.tar.xz
'';
doCheck = !stdenv.isDarwin && (versionAtLeast gmime.version "3.0");
checkTarget = "test V=1";
doCheck = !stdenv.hostPlatform.isDarwin && (versionAtLeast gmime.version "3.0");
checkTarget = "test";
checkInputs = [
which dtach openssl bash
gdb man
];
postInstall = ''
make install-man
'';
installTargets = "install install-man";
dontGzipMan = true; # already compressed

View file

@ -11,7 +11,7 @@
with stdenv.lib;
stdenv.mkDerivation {
stdenv.mkDerivation rec {
name = "remmina-${version}";
version = "1.2.32";

View file

@ -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 ];
};
}

View file

@ -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)/.

View file

@ -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

View file

@ -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;

View file

@ -1,18 +1,15 @@
{ stdenv, pkgconfig, glib }:
{ stdenv, meson, ninja, pkgconfig, glib }:
stdenv.mkDerivation {
name = "chrootenv";
src = ./.;
nativeBuildInputs = [ pkgconfig ];
nativeBuildInputs = [ meson ninja pkgconfig ];
buildInputs = [ glib ];
buildCommand = ''
cc ${./chrootenv.c} $(pkg-config --cflags --libs glib-2.0) -o $out
'';
meta = with stdenv.lib; {
description = "Setup mount/user namespace for FHS emulation";
license = licenses.free;
license = licenses.mit;
maintainers = with maintainers; [ yegortimoshenko ];
platforms = platforms.linux;
};

View file

@ -0,0 +1,5 @@
project('chrootenv', 'c')
glib = dependency('glib-2.0')
executable('chrootenv', 'chrootenv.c', dependencies: [glib], install: true)

View file

@ -28,7 +28,7 @@ in runCommand name {
passthru = passthru // {
env = runCommand "${name}-shell-env" {
shellHook = ''
exec ${chrootenv} ${init runScript} "$(pwd)"
exec ${chrootenv}/bin/chrootenv ${init runScript} "$(pwd)"
'';
} ''
echo >&2 ""
@ -41,7 +41,7 @@ in runCommand name {
mkdir -p $out/bin
cat <<EOF >$out/bin/${name}
#! ${stdenv.shell}
exec ${chrootenv} ${init runScript} "\$(pwd)" "\$@"
exec ${chrootenv}/bin/chrootenv ${init runScript} "\$(pwd)" "\$@"
EOF
chmod +x $out/bin/${name}
${extraInstallCommands}

View file

@ -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";

View file

@ -75,6 +75,7 @@ stdenv.mkDerivation rec {
# Some scripts used during the build need to have their shebangs patched
''
patchShebangs ghc-${version}/utils/
patchShebangs ghc-${version}/configure
'' +
# Strip is harmful, see also below. It's important that this happens

View file

@ -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.h>' '<${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

View file

@ -11,6 +11,7 @@ stdenv.mkDerivation rec {
sha256 = "06pcjbngzwqyncvfwzz88j33wvdj9kizxyg5adp7y6186h8an341";
};
buildInputs = [ coq ];
propagatedBuildInputs = [ mathcomp ];
patches = [./0001-changes-to-work-with-Coq-8.6.patch];

View file

@ -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";

View file

@ -1,6 +1,8 @@
{ callPackage, fetchurl, coq }:
{ stdenv, fetchurl, coq, ncurses, which
, graphviz, withDoc ? false
}:
let param =
let params =
let param_1_7 = {
version = "1.7.0";
@ -16,14 +18,48 @@ let param =
"8.6" = param_1_7;
"8.7" = param_1_7;
"8.8" = param_1_7;
"8.9" = param_1_7;
}."${coq.coq-version}"
; in
};
param = params."${coq.coq-version}";
in
callPackage ./generic.nix {
stdenv.mkDerivation {
name = "coq${coq.coq-version}-mathcomp-${param.version}";
src = fetchurl {
url = "https://github.com/math-comp/math-comp/archive/mathcomp-${param.version}.tar.gz";
inherit (param) sha256;
};
nativeBuildInputs = stdenv.lib.optionals withDoc [ graphviz ];
buildInputs = [ coq ncurses which ] ++ (with coq.ocamlPackages; [ ocaml findlib camlp5 ]);
enableParallelBuilding = true;
buildFlags = stdenv.lib.optionalString withDoc "doc";
preBuild = ''
patchShebangs etc/utils/ssrcoqdep || true
cd mathcomp
export COQBIN=${coq}/bin/
'';
installPhase = ''
make -f Makefile.coq COQLIB=$out/lib/coq/${coq.coq-version}/ install
'' + stdenv.lib.optionalString withDoc ''
make -f Makefile.coq install-doc DOCDIR=$out/share/coq/${coq.coq-version}/
'';
meta = with stdenv.lib; {
homepage = http://ssr.msr-inria.inria.fr/;
license = licenses.cecill-b;
maintainers = [ maintainers.vbgl maintainers.jwiegley ];
platforms = coq.meta.platforms;
};
passthru = {
compatibleCoqVersions = v: builtins.hasAttr v params;
};
}

View file

@ -1,42 +0,0 @@
{ stdenv, coq, ncurses, which
, graphviz, withDoc ? false
, src, name
}:
stdenv.mkDerivation {
inherit name;
inherit src;
nativeBuildInputs = stdenv.lib.optionals withDoc [ graphviz ];
buildInputs = with coq.ocamlPackages; [ ocaml findlib camlp5 ncurses which ];
propagatedBuildInputs = [ coq ];
enableParallelBuilding = true;
buildFlags = stdenv.lib.optionalString withDoc "doc";
preBuild = ''
patchShebangs etc/utils/ssrcoqdep || true
cd mathcomp
export COQBIN=${coq}/bin/
'';
installPhase = ''
make -f Makefile.coq COQLIB=$out/lib/coq/${coq.coq-version}/ install
'' + stdenv.lib.optionalString withDoc ''
make -f Makefile.coq install-doc DOCDIR=$out/share/coq/${coq.coq-version}/
'';
meta = with stdenv.lib; {
homepage = http://ssr.msr-inria.inria.fr/;
license = licenses.cecill-b;
maintainers = [ maintainers.vbgl maintainers.jwiegley ];
platforms = coq.meta.platforms;
};
passthru = {
compatibleCoqVersions = v: builtins.elem v [ "8.5" "8.6" "8.7" "8.8" ];
};
}

View file

@ -1,6 +1,8 @@
{ callPackage, fetchurl, coq }:
{ stdenv, fetchurl, coq, ncurses, which
, graphviz, withDoc ? false
}:
let param =
let params =
let param_1_7 = {
version = "1.7.0";
@ -16,14 +18,49 @@ let param =
"8.6" = param_1_7;
"8.7" = param_1_7;
"8.8" = param_1_7;
"8.9" = param_1_7;
}."${coq.coq-version}"
; in
};
param = params."${coq.coq-version}";
in
stdenv.mkDerivation {
callPackage ./generic.nix {
name = "coq${coq.coq-version}-ssreflect-${param.version}";
src = fetchurl {
url = "https://github.com/math-comp/math-comp/archive/mathcomp-${param.version}.tar.gz";
inherit (param) sha256;
};
nativeBuildInputs = stdenv.lib.optionals withDoc [ graphviz ];
buildInputs = [ coq ncurses which ] ++ (with coq.ocamlPackages; [ ocaml findlib camlp5 ]);
enableParallelBuilding = true;
preBuild = ''
patchShebangs etc/utils/ssrcoqdep || true
cd mathcomp/ssreflect
export COQBIN=${coq}/bin/
'';
installPhase = ''
make -f Makefile.coq COQLIB=$out/lib/coq/${coq.coq-version}/ install
'';
postInstall = stdenv.lib.optionalString withDoc ''
mkdir -p $out/share/doc/coq/${coq.coq-version}/user-contrib/mathcomp/ssreflect/
cp -r html $out/share/doc/coq/${coq.coq-version}/user-contrib/mathcomp/ssreflect/
'';
meta = with stdenv.lib; {
homepage = http://ssr.msr-inria.inria.fr/;
license = licenses.cecill-b;
maintainers = with maintainers; [ vbgl jwiegley ];
inherit (coq.meta) platforms;
};
passthru = {
compatibleCoqVersions = v: builtins.hasAttr v params;
};
}

View file

@ -1,49 +0,0 @@
{ stdenv, coq, ncurses, which
, graphviz, withDoc ? false
, src, name, patches ? []
}:
stdenv.mkDerivation {
inherit name;
inherit src;
nativeBuildInputs = stdenv.lib.optionals withDoc [ graphviz ];
buildInputs = with coq.ocamlPackages; [ ocaml findlib camlp5 ncurses which ];
propagatedBuildInputs = [ coq ];
enableParallelBuilding = true;
inherit patches;
preBuild = ''
patchShebangs etc/utils/ssrcoqdep || true
cd mathcomp/ssreflect
export COQBIN=${coq}/bin/
'';
installPhase = ''
make -f Makefile.coq COQLIB=$out/lib/coq/${coq.coq-version}/ install
'';
postInstall = ''
# mkdir -p $out/bin
# cp -p bin/ssrcoq $out/bin
# cp -p bin/ssrcoq.byte $out/bin
'' + stdenv.lib.optionalString withDoc ''
mkdir -p $out/share/doc/coq/${coq.coq-version}/user-contrib/mathcomp/ssreflect/
cp -r html $out/share/doc/coq/${coq.coq-version}/user-contrib/mathcomp/ssreflect/
'';
meta = with stdenv.lib; {
homepage = http://ssr.msr-inria.inria.fr/;
license = licenses.cecill-b;
maintainers = with maintainers; [ vbgl jwiegley ];
platforms = coq.meta.platforms;
};
passthru = {
compatibleCoqVersions = v: builtins.elem v [ "8.5" "8.6" "8.7" "8.8" ];
};
}

View file

@ -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 {};
}

View file

@ -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 ];
};
}

View file

@ -1065,11 +1065,11 @@ self: super: {
# The tool needs a newer hpack version than the one mandated by LTS-12.x.
cabal2nix = super.cabal2nix.overrideScope (self: super: {
hpack = self.hpack_0_31_0;
hpack = self.hpack_0_31_1;
yaml = self.yaml_0_11_0_0;
});
stack2nix = super.stack2nix.overrideScope (self: super: {
hpack = self.hpack_0_31_0;
hpack = self.hpack_0_31_1;
yaml = self.yaml_0_11_0_0;
});

View file

@ -63,11 +63,11 @@ self: super: {
# more verbose but friendlier for Hydra.
stack = (doJailbreak super.stack).override {
Cabal = self.Cabal_2_4_0_1;
hpack = self.hpack_0_31_0.override { Cabal = self.Cabal_2_4_0_1; };
hpack = self.hpack_0_31_1.override { Cabal = self.Cabal_2_4_0_1; };
yaml = self.yaml_0_11_0_0;
hackage-security = self.hackage-security.override { Cabal = self.Cabal_2_4_0_1; };
};
hpack_0_31_0 = super.hpack_0_31_0.override {
hpack_0_31_1 = super.hpack_0_31_1.override {
yaml = self.yaml_0_11_0_0;
};

View file

@ -56,12 +56,12 @@ self: super: {
hledger = doJailbreak super.hledger;
hledger-lib = doJailbreak super.hledger-lib;
hledger-ui = doJailbreak super.hledger-ui;
hpack = self.hpack_0_31_0;
hpack = self.hpack_0_31_1;
hslua = self.hslua_1_0_1;
hslua-module-text = self.hslua-module-text_0_2_0;
hspec = self.hspec_2_5_8;
hspec-core = self.hspec-core_2_5_8;
hspec-discover = self.hspec-discover_2_5_8;
hspec = self.hspec_2_6_0;
hspec-core = self.hspec-core_2_6_0;
hspec-discover = self.hspec-discover_2_6_0;
hspec-megaparsec = doJailbreak super.hspec-megaparsec; # newer versions need megaparsec 7.x
hspec-meta = self.hspec-meta_2_5_6;
JuicyPixels = self.JuicyPixels_3_3_2;
@ -74,7 +74,7 @@ self: super: {
QuickCheck = self.QuickCheck_2_12_6_1;
semigroupoids = self.semigroupoids_5_3_1;
tagged = self.tagged_0_8_6;
vty = self.vty_5_25;
vty = self.vty_5_25_1;
wizards = doJailbreak super.wizards;
wl-pprint-extras = doJailbreak super.wl-pprint-extras;
yaml = self.yaml_0_11_0_0;
@ -107,7 +107,7 @@ self: super: {
skylighting-core = dontCheck super.skylighting-core;
# https://github.com/jgm/pandoc/issues/4974
pandoc = doJailbreak super.pandoc_2_3_1;
pandoc = doJailbreak super.pandoc_2_4;
# Break out of "yaml >=0.10.4.0 && <0.11".
stack = doJailbreak super.stack;

View file

@ -2886,6 +2886,7 @@ dont-distribute-packages:
arpa: [ i686-linux, x86_64-linux, x86_64-darwin ]
arpack: [ i686-linux, x86_64-linux, x86_64-darwin ]
array-forth: [ i686-linux, x86_64-linux, x86_64-darwin ]
arraylist: [ i686-linux, x86_64-linux, x86_64-darwin ]
ArrayRef: [ i686-linux, x86_64-linux, x86_64-darwin ]
arrow-improve: [ i686-linux, x86_64-linux, x86_64-darwin ]
arrowapply-utils: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -3032,6 +3033,7 @@ dont-distribute-packages:
barrie: [ i686-linux, x86_64-linux, x86_64-darwin ]
barrier-monad: [ i686-linux, x86_64-linux, x86_64-darwin ]
barrier: [ i686-linux, x86_64-linux, x86_64-darwin ]
base-compat-migrate: [ i686-linux, x86_64-linux, x86_64-darwin ]
base-feature-macros: [ i686-linux, x86_64-linux, x86_64-darwin ]
base-generics: [ i686-linux, x86_64-linux, x86_64-darwin ]
base-io-access: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -3055,6 +3057,7 @@ dont-distribute-packages:
beam-th: [ i686-linux, x86_64-linux, x86_64-darwin ]
beam: [ i686-linux, x86_64-linux, x86_64-darwin ]
beamable: [ i686-linux, x86_64-linux, x86_64-darwin ]
bearriver: [ i686-linux, x86_64-linux, x86_64-darwin ]
beautifHOL: [ i686-linux, x86_64-linux, x86_64-darwin ]
bed-and-breakfast: [ i686-linux, x86_64-linux, x86_64-darwin ]
beeminder-api: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -3361,6 +3364,7 @@ dont-distribute-packages:
campfire: [ i686-linux, x86_64-linux, x86_64-darwin ]
canon: [ i686-linux, x86_64-linux, x86_64-darwin ]
canonical-filepath: [ i686-linux, x86_64-linux, x86_64-darwin ]
canonical-json: [ i686-linux, x86_64-linux, x86_64-darwin ]
canteven-http: [ i686-linux, x86_64-linux, x86_64-darwin ]
canteven-listen-http: [ i686-linux, x86_64-linux, x86_64-darwin ]
canteven-log: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -3614,6 +3618,7 @@ dont-distribute-packages:
combinatorial-problems: [ i686-linux, x86_64-linux, x86_64-darwin ]
Combinatorrent: [ i686-linux, x86_64-linux, x86_64-darwin ]
combobuffer: [ i686-linux, x86_64-linux, x86_64-darwin ]
comfort-array: [ i686-linux, x86_64-linux, x86_64-darwin ]
comic: [ i686-linux, x86_64-linux, x86_64-darwin ]
Command: [ i686-linux, x86_64-linux, x86_64-darwin ]
commander: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -3680,6 +3685,7 @@ dont-distribute-packages:
conduit-tokenize-attoparsec: [ i686-linux, x86_64-linux, x86_64-darwin ]
conduit-zstd: [ i686-linux, x86_64-linux, x86_64-darwin ]
conf: [ i686-linux, x86_64-linux, x86_64-darwin ]
confcrypt: [ i686-linux, x86_64-linux, x86_64-darwin ]
conffmt: [ i686-linux, x86_64-linux, x86_64-darwin ]
confide: [ i686-linux, x86_64-linux, x86_64-darwin ]
config-parser: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -3838,6 +3844,7 @@ dont-distribute-packages:
ctpl: [ i686-linux, x86_64-linux, x86_64-darwin ]
cube: [ i686-linux, x86_64-linux, x86_64-darwin ]
cubical: [ i686-linux, x86_64-linux, x86_64-darwin ]
cuboid: [ i686-linux, x86_64-linux, x86_64-darwin ]
cudd: [ i686-linux, x86_64-linux, x86_64-darwin ]
currency-convert: [ i686-linux, x86_64-linux, x86_64-darwin ]
curry-base: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -4247,6 +4254,7 @@ dont-distribute-packages:
ehaskell: [ i686-linux, x86_64-linux, x86_64-darwin ]
ehs: [ i686-linux, x86_64-linux, x86_64-darwin ]
eibd-client-simple: [ i686-linux, x86_64-linux, x86_64-darwin ]
eigen: [ i686-linux, x86_64-linux, x86_64-darwin ]
Eight-Ball-Pool-Hack-Cheats: [ i686-linux, x86_64-linux, x86_64-darwin ]
either-list-functions: [ i686-linux, x86_64-linux, x86_64-darwin ]
EitherT: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -4297,6 +4305,7 @@ dont-distribute-packages:
enummapmap: [ i686-linux, x86_64-linux, x86_64-darwin ]
enummapset-th: [ i686-linux, x86_64-linux, x86_64-darwin ]
env-parser: [ i686-linux, x86_64-linux, x86_64-darwin ]
envstatus: [ i686-linux, x86_64-linux, x86_64-darwin ]
epanet-haskell: [ i686-linux, x86_64-linux, x86_64-darwin ]
epass: [ i686-linux, x86_64-linux, x86_64-darwin ]
epic: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -4368,6 +4377,7 @@ dont-distribute-packages:
execs: [ i686-linux, x86_64-linux, x86_64-darwin ]
executor: [ i686-linux, x86_64-linux, x86_64-darwin ]
exference: [ i686-linux, x86_64-linux, x86_64-darwin ]
exhaustive: [ i686-linux, x86_64-linux, x86_64-darwin ]
exherbo-cabal: [ i686-linux, x86_64-linux, x86_64-darwin ]
exif: [ i686-linux, x86_64-linux, x86_64-darwin ]
exinst-aeson: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -4897,6 +4907,7 @@ dont-distribute-packages:
goatee-gtk: [ i686-linux, x86_64-linux, x86_64-darwin ]
goatee: [ i686-linux, x86_64-linux, x86_64-darwin ]
gochan: [ i686-linux, x86_64-linux, x86_64-darwin ]
godot-haskell: [ i686-linux, x86_64-linux, x86_64-darwin ]
gofer-prelude: [ i686-linux, x86_64-linux, x86_64-darwin ]
gogol-adexchange-buyer: [ i686-linux, x86_64-linux, x86_64-darwin ]
gogol-adexchange-seller: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -5352,6 +5363,7 @@ dont-distribute-packages:
haskell-course-preludes: [ i686-linux, x86_64-linux, x86_64-darwin ]
haskell-dap: [ i686-linux, x86_64-linux, x86_64-darwin ]
haskell-docs: [ i686-linux, x86_64-linux, x86_64-darwin ]
haskell-eigen-util: [ i686-linux, x86_64-linux, x86_64-darwin ]
haskell-formatter: [ i686-linux, x86_64-linux, x86_64-darwin ]
haskell-ftp: [ i686-linux, x86_64-linux, x86_64-darwin ]
haskell-generate: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -5447,6 +5459,14 @@ dont-distribute-packages:
haskore: [ i686-linux, x86_64-linux, x86_64-darwin ]
HaskRel: [ i686-linux, x86_64-linux, x86_64-darwin ]
hasktags: [ i686-linux, x86_64-linux, x86_64-darwin ]
hasktorch-ffi-th: [ i686-linux, x86_64-linux, x86_64-darwin ]
hasktorch-ffi-thc: [ i686-linux, x86_64-linux, x86_64-darwin ]
hasktorch-indef: [ i686-linux, x86_64-linux, x86_64-darwin ]
hasktorch-signatures-partial: [ i686-linux, x86_64-linux, x86_64-darwin ]
hasktorch-signatures-support: [ i686-linux, x86_64-linux, x86_64-darwin ]
hasktorch-signatures: [ i686-linux, x86_64-linux, x86_64-darwin ]
hasktorch-zoo: [ i686-linux, x86_64-linux, x86_64-darwin ]
hasktorch: [ i686-linux, x86_64-linux, x86_64-darwin ]
haskus-binary: [ i686-linux, x86_64-linux, x86_64-darwin ]
haskus-system-build: [ i686-linux, x86_64-linux, x86_64-darwin ]
haskus-utils: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -5480,6 +5500,7 @@ dont-distribute-packages:
HaTeX-meta: [ i686-linux, x86_64-linux, x86_64-darwin ]
HaTeX-qq: [ i686-linux, x86_64-linux, x86_64-darwin ]
hats: [ i686-linux, x86_64-linux, x86_64-darwin ]
hatt: [ i686-linux, x86_64-linux, x86_64-darwin ]
haverer: [ i686-linux, x86_64-linux, x86_64-darwin ]
HaVSA: [ i686-linux, x86_64-linux, x86_64-darwin ]
hawitter: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -5591,6 +5612,7 @@ dont-distribute-packages:
Hermes: [ i686-linux, x86_64-linux, x86_64-darwin ]
hermit-syb: [ i686-linux, x86_64-linux, x86_64-darwin ]
hermit: [ i686-linux, x86_64-linux, x86_64-darwin ]
herms: [ i686-linux, x86_64-linux, x86_64-darwin ]
herringbone-embed: [ i686-linux, x86_64-linux, x86_64-darwin ]
herringbone-wai: [ i686-linux, x86_64-linux, x86_64-darwin ]
herringbone: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -5614,6 +5636,7 @@ dont-distribute-packages:
hexquote: [ i686-linux, x86_64-linux, x86_64-darwin ]
hext: [ i686-linux, x86_64-linux, x86_64-darwin ]
heyefi: [ i686-linux, x86_64-linux, x86_64-darwin ]
heyting-algebras: [ i686-linux, x86_64-linux, x86_64-darwin ]
hF2: [ i686-linux, x86_64-linux, x86_64-darwin ]
hfann: [ i686-linux, x86_64-linux, x86_64-darwin ]
hfd: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -5923,6 +5946,7 @@ dont-distribute-packages:
hsbencher-codespeed: [ i686-linux, x86_64-linux, x86_64-darwin ]
hsbencher-fusion: [ i686-linux, x86_64-linux, x86_64-darwin ]
hsbencher: [ i686-linux, x86_64-linux, x86_64-darwin ]
hsc2hs: [ i686-linux, x86_64-linux, x86_64-darwin ]
hsc3-auditor: [ i686-linux, x86_64-linux, x86_64-darwin ]
hsc3-cairo: [ i686-linux, x86_64-linux, x86_64-darwin ]
hsc3-data: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -6501,6 +6525,8 @@ dont-distribute-packages:
KiCS-prophecy: [ i686-linux, x86_64-linux, x86_64-darwin ]
KiCS: [ i686-linux, x86_64-linux, x86_64-darwin ]
kif-parser: [ i686-linux, x86_64-linux, x86_64-darwin ]
kind-apply: [ i686-linux, x86_64-linux, x86_64-darwin ]
kind-generics: [ i686-linux, x86_64-linux, x86_64-darwin ]
kit: [ i686-linux, x86_64-linux, x86_64-darwin ]
kmeans-par: [ i686-linux, x86_64-linux, x86_64-darwin ]
kmeans-vector: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -6652,6 +6678,7 @@ dont-distribute-packages:
lens-time: [ i686-linux, x86_64-linux, x86_64-darwin ]
lens-toml-parser: [ i686-linux, x86_64-linux, x86_64-darwin ]
lens-tutorial: [ i686-linux, x86_64-linux, x86_64-darwin ]
lens-typelevel: [ i686-linux, x86_64-linux, x86_64-darwin ]
lensref: [ i686-linux, x86_64-linux, x86_64-darwin ]
level-monad: [ i686-linux, x86_64-linux, x86_64-darwin ]
Level0: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -6694,6 +6721,7 @@ dont-distribute-packages:
life-sync: [ i686-linux, x86_64-linux, x86_64-darwin ]
lifted-base-tf: [ i686-linux, x86_64-linux, x86_64-darwin ]
lifted-protolude: [ i686-linux, x86_64-linux, x86_64-darwin ]
lifted-stm: [ i686-linux, x86_64-linux, x86_64-darwin ]
lifter: [ i686-linux, x86_64-linux, x86_64-darwin ]
ligature: [ i686-linux, x86_64-linux, x86_64-darwin ]
lightning-haskell: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -6995,6 +7023,8 @@ dont-distribute-packages:
MetaHDBC: [ i686-linux, x86_64-linux, x86_64-darwin ]
MetaObject: [ i686-linux, x86_64-linux, x86_64-darwin ]
metaplug: [ i686-linux, x86_64-linux, x86_64-darwin ]
metar-http: [ i686-linux, x86_64-linux, x86_64-darwin ]
metar: [ i686-linux, x86_64-linux, x86_64-darwin ]
metric: [ i686-linux, x86_64-linux, x86_64-darwin ]
Metrics: [ i686-linux, x86_64-linux, x86_64-darwin ]
metricsd-client: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -7134,6 +7164,7 @@ dont-distribute-packages:
monoid-subclasses: [ i686-linux, x86_64-linux, x86_64-darwin ]
monoidplus: [ i686-linux, x86_64-linux, x86_64-darwin ]
monoids: [ i686-linux, x86_64-linux, x86_64-darwin ]
monopati: [ i686-linux, x86_64-linux, x86_64-darwin ]
monte-carlo: [ i686-linux, x86_64-linux, x86_64-darwin ]
monzo: [ i686-linux, x86_64-linux, x86_64-darwin ]
moo: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -7153,6 +7184,7 @@ dont-distribute-packages:
mp3decoder: [ i686-linux, x86_64-linux, x86_64-darwin ]
mp: [ i686-linux, x86_64-linux, x86_64-darwin ]
mpdmate: [ i686-linux, x86_64-linux, x86_64-darwin ]
mpi-hs: [ i686-linux, x86_64-linux, x86_64-darwin ]
mpppc: [ i686-linux, x86_64-linux, x86_64-darwin ]
mpretty: [ i686-linux, x86_64-linux, x86_64-darwin ]
mpris: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -7672,6 +7704,7 @@ dont-distribute-packages:
persistent-qq: [ i686-linux, x86_64-linux, x86_64-darwin ]
persistent-ratelimit: [ i686-linux, x86_64-linux, x86_64-darwin ]
persistent-relational-record: [ i686-linux, x86_64-linux, x86_64-darwin ]
persistent-template-classy: [ i686-linux, x86_64-linux, x86_64-darwin ]
persistent-vector: [ i686-linux, x86_64-linux, x86_64-darwin ]
persistent-zookeeper: [ i686-linux, x86_64-linux, x86_64-darwin ]
persona-idp: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -7755,6 +7788,7 @@ dont-distribute-packages:
plan-b: [ i686-linux, x86_64-linux, x86_64-darwin ]
planar-graph: [ i686-linux, x86_64-linux, x86_64-darwin ]
planb-token-introspection: [ i686-linux, x86_64-linux, x86_64-darwin ]
planet-mitchell-test: [ i686-linux, x86_64-linux, x86_64-darwin ]
planet-mitchell: [ i686-linux, x86_64-linux, x86_64-darwin ]
plankton: [ i686-linux, x86_64-linux, x86_64-darwin ]
plat: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -8341,6 +8375,7 @@ dont-distribute-packages:
rosmsg-bin: [ i686-linux, x86_64-linux, x86_64-darwin ]
rosmsg: [ i686-linux, x86_64-linux, x86_64-darwin ]
rosso: [ i686-linux, x86_64-linux, x86_64-darwin ]
rounded: [ i686-linux, x86_64-linux, x86_64-darwin ]
rounding: [ i686-linux, x86_64-linux, x86_64-darwin ]
roundtrip-aeson: [ i686-linux, x86_64-linux, x86_64-darwin ]
roundtrip-string: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -8543,6 +8578,7 @@ dont-distribute-packages:
servant-github: [ i686-linux, x86_64-linux, x86_64-darwin ]
servant-haxl-client: [ i686-linux, x86_64-linux, x86_64-darwin ]
servant-hmac-auth: [ i686-linux, x86_64-linux, x86_64-darwin ]
servant-http2-client: [ i686-linux, x86_64-linux, x86_64-darwin ]
servant-iCalendar: [ i686-linux, x86_64-linux, x86_64-darwin ]
servant-jquery: [ i686-linux, x86_64-linux, x86_64-darwin ]
servant-js: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -8562,6 +8598,8 @@ dont-distribute-packages:
servant-snap: [ i686-linux, x86_64-linux, x86_64-darwin ]
servant-streaming-client: [ i686-linux, x86_64-linux, x86_64-darwin ]
servant-subscriber: [ i686-linux, x86_64-linux, x86_64-darwin ]
servant-swagger-ui-jensoleg: [ i686-linux, x86_64-linux, x86_64-darwin ]
servant-swagger-ui-redoc: [ i686-linux, x86_64-linux, x86_64-darwin ]
servant-xml: [ i686-linux, x86_64-linux, x86_64-darwin ]
servant-zeppelin-client: [ i686-linux, x86_64-linux, x86_64-darwin ]
servant-zeppelin-server: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -8610,6 +8648,7 @@ dont-distribute-packages:
shaker: [ i686-linux, x86_64-linux, x86_64-darwin ]
shakespeare-babel: [ i686-linux, x86_64-linux, x86_64-darwin ]
shakespeare-sass: [ i686-linux, x86_64-linux, x86_64-darwin ]
shannon-fano: [ i686-linux, x86_64-linux, x86_64-darwin ]
shapely-data: [ i686-linux, x86_64-linux, x86_64-darwin ]
shapes-demo: [ i686-linux, x86_64-linux, x86_64-darwin ]
shared-buffer: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -8628,6 +8667,7 @@ dont-distribute-packages:
shellish: [ i686-linux, x86_64-linux, x86_64-darwin ]
shellmate-extras: [ i686-linux, x86_64-linux, x86_64-darwin ]
shellmate: [ i686-linux, x86_64-linux, x86_64-darwin ]
shh: [ i686-linux, x86_64-linux, x86_64-darwin ]
shikensu: [ i686-linux, x86_64-linux, x86_64-darwin ]
shivers-cfg: [ i686-linux, x86_64-linux, x86_64-darwin ]
shoap: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -8648,6 +8688,7 @@ dont-distribute-packages:
simd: [ i686-linux, x86_64-linux, x86_64-darwin ]
simgi: [ i686-linux, x86_64-linux, x86_64-darwin ]
simple-actors: [ i686-linux, x86_64-linux, x86_64-darwin ]
simple-affine-space: [ i686-linux, x86_64-linux, x86_64-darwin ]
simple-atom: [ i686-linux, x86_64-linux, x86_64-darwin ]
simple-bluetooth: [ i686-linux, x86_64-linux, x86_64-darwin ]
simple-c-value: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -8884,6 +8925,7 @@ dont-distribute-packages:
spoonutil: [ i686-linux, x86_64-linux, x86_64-darwin ]
spoty: [ i686-linux, x86_64-linux, x86_64-darwin ]
Sprig: [ i686-linux, x86_64-linux, x86_64-darwin ]
sprinkles: [ i686-linux, x86_64-linux, x86_64-darwin ]
spritz: [ i686-linux, x86_64-linux, x86_64-darwin ]
spsa: [ i686-linux, x86_64-linux, x86_64-darwin ]
spy: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -8908,6 +8950,7 @@ dont-distribute-packages:
sssp: [ i686-linux, x86_64-linux, x86_64-darwin ]
sstable: [ i686-linux, x86_64-linux, x86_64-darwin ]
SSTG: [ i686-linux, x86_64-linux, x86_64-darwin ]
st2: [ i686-linux, x86_64-linux, x86_64-darwin ]
stable-heap: [ i686-linux, x86_64-linux, x86_64-darwin ]
stable-maps: [ i686-linux, x86_64-linux, x86_64-darwin ]
stable-marriage: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -8953,6 +8996,7 @@ dont-distribute-packages:
stats: [ i686-linux, x86_64-linux, x86_64-darwin ]
statsd-client: [ i686-linux, x86_64-linux, x86_64-darwin ]
statsd: [ i686-linux, x86_64-linux, x86_64-darwin ]
statsdi: [ i686-linux, x86_64-linux, x86_64-darwin ]
stb-image-redux: [ i686-linux, x86_64-linux, x86_64-darwin ]
stb-truetype: [ i686-linux, x86_64-linux, x86_64-darwin ]
stdata: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -9697,6 +9741,7 @@ dont-distribute-packages:
visualize-cbn: [ i686-linux, x86_64-linux, x86_64-darwin ]
vk-aws-route53: [ i686-linux, x86_64-linux, x86_64-darwin ]
VKHS: [ i686-linux, x86_64-linux, x86_64-darwin ]
voicebase: [ i686-linux, x86_64-linux, x86_64-darwin ]
vorbiscomment: [ i686-linux, x86_64-linux, x86_64-darwin ]
vowpal-utils: [ i686-linux, x86_64-linux, x86_64-darwin ]
voyeur: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -9708,6 +9753,7 @@ dont-distribute-packages:
vty-menu: [ i686-linux, x86_64-linux, x86_64-darwin ]
vty-ui-extras: [ i686-linux, x86_64-linux, x86_64-darwin ]
vty-ui: [ i686-linux, x86_64-linux, x86_64-darwin ]
waargonaut: [ i686-linux, x86_64-linux, x86_64-darwin ]
wacom-daemon: [ i686-linux, x86_64-linux, x86_64-darwin ]
waddle: [ i686-linux, x86_64-linux, x86_64-darwin ]
wahsp: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -9825,6 +9871,7 @@ dont-distribute-packages:
winio: [ i686-linux, x86_64-linux, x86_64-darwin ]
wire-streams: [ i686-linux, x86_64-linux, x86_64-darwin ]
wiring: [ i686-linux, x86_64-linux, x86_64-darwin ]
witty: [ i686-linux, x86_64-linux, x86_64-darwin ]
wkt-geom: [ i686-linux, x86_64-linux, x86_64-darwin ]
wkt: [ i686-linux, x86_64-linux, x86_64-darwin ]
wl-pprint-ansiterm: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -9884,6 +9931,7 @@ dont-distribute-packages:
X11-rm: [ i686-linux, x86_64-linux, x86_64-darwin ]
X11-xdamage: [ i686-linux, x86_64-linux, x86_64-darwin ]
X11-xfixes: [ i686-linux, x86_64-linux, x86_64-darwin ]
x509-util: [ i686-linux, x86_64-linux, x86_64-darwin ]
x86-64bit: [ i686-linux, x86_64-linux, x86_64-darwin ]
xcb-types: [ i686-linux, x86_64-linux, x86_64-darwin ]
xcffib: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -9975,10 +10023,15 @@ dont-distribute-packages:
yaml-rpc: [ i686-linux, x86_64-linux, x86_64-darwin ]
yaml2owl: [ i686-linux, x86_64-linux, x86_64-darwin ]
yamlkeysdiff: [ i686-linux, x86_64-linux, x86_64-darwin ]
yampa-canvas: [ i686-linux, x86_64-linux, x86_64-darwin ]
yampa-glfw: [ i686-linux, x86_64-linux, x86_64-darwin ]
yampa-gloss: [ i686-linux, x86_64-linux, x86_64-darwin ]
yampa-glut: [ i686-linux, x86_64-linux, x86_64-darwin ]
yampa-sdl2: [ i686-linux, x86_64-linux, x86_64-darwin ]
yampa-test: [ i686-linux, x86_64-linux, x86_64-darwin ]
yampa2048: [ i686-linux, x86_64-linux, x86_64-darwin ]
Yampa: [ i686-linux, x86_64-linux, x86_64-darwin ]
YampaSynth: [ i686-linux, x86_64-linux, x86_64-darwin ]
yandex-translate: [ i686-linux, x86_64-linux, x86_64-darwin ]
yaop: [ i686-linux, x86_64-linux, x86_64-darwin ]
yap: [ i686-linux, x86_64-linux, x86_64-darwin ]
@ -10079,6 +10132,7 @@ dont-distribute-packages:
yjftp: [ i686-linux, x86_64-linux, x86_64-darwin ]
yjsvg: [ i686-linux, x86_64-linux, x86_64-darwin ]
yoctoparsec: [ i686-linux, x86_64-linux, x86_64-darwin ]
yoda: [ i686-linux, x86_64-linux, x86_64-darwin ]
yoga: [ i686-linux, x86_64-linux, x86_64-darwin ]
Yogurt-Standalone: [ i686-linux, x86_64-linux, x86_64-darwin ]
Yogurt: [ i686-linux, x86_64-linux, x86_64-darwin ]

View file

@ -443,6 +443,7 @@ stdenv.mkDerivation ({
env = shellFor {
packages = p: [ drv ];
inherit shellHook;
};
};

File diff suppressed because it is too large Load diff

View file

@ -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 ];
};
}

View file

@ -1,51 +0,0 @@
From 85991e0d7f0e631240f3f6233bd65d1128a66dec Mon Sep 17 00:00:00 2001
From: Frederik Rietdijk <fridh@fridh.nl>
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

View file

@ -1,147 +0,0 @@
From 81bd99ad9058feb1d0361bc8862e8567c21a6142 Mon Sep 17 00:00:00 2001
From: Frederik Rietdijk <fridh@fridh.nl>
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

View file

@ -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,

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, python2Packages, utillinux, fixDarwinDylibNames }:
{ stdenv, fetchurl }:
let
version = "2.8.1";
@ -10,38 +10,18 @@ in stdenv.mkDerivation {
sha256 = "15ids8k2f0xhnnxh4m85w2f78pg5ndiwrpl24kyssznnp1l5yqai";
};
NIX_CFLAGS_COMPILE = "-Wno-error";
patches = [ ./build-shared.patch ];
makeFlags = [ "DESTDIR=" "PREFIX=$(out)" ];
buildFlags = "library";
doCheck = true;
checkTarget = "test";
configurePhase = "gyp -f make --depth=`pwd` http_parser.gyp";
buildFlags = [ "BUILDTYPE=Release" ];
buildInputs =
[ python2Packages.gyp ]
++ stdenv.lib.optional stdenv.isLinux utillinux
++ stdenv.lib.optionals stdenv.isDarwin [ python2Packages.python fixDarwinDylibNames ];
doCheck = !stdenv.isDarwin;
checkPhase = ''
out/Release/test-nonstrict
out/Release/test-strict
'';
installPhase = ''
mkdir -p $out/lib
mv out/Release/${if stdenv.isDarwin then "*.dylib" else "lib.target/*"} $out/lib
mkdir -p $out/include
mv http_parser.h $out/include
'';
meta = {
meta = with stdenv.lib; {
description = "An HTTP message parser written in C";
homepage = https://github.com/joyent/http-parser;
license = stdenv.lib.licenses.mit;
platforms = stdenv.lib.platforms.unix;
maintainers = with maintainers; [ matthewbauer ];
license = licenses.mit;
platforms = platforms.unix;
};
}

View file

@ -1,11 +1,11 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "lombok-1.16.22";
name = "lombok-1.18.4";
src = fetchurl {
url = "https://projectlombok.org/downloads/${name}.jar";
sha256 = "1hr2jjlqdnxrw7ablqkf7ljc6n2q6a04ww14di06zs6i3l82zzpa";
sha256 = "0hlpycnmzd71ihn59hzf445dvwky2lkv57jimx91i6v7xcnr5wrr";
};
buildCommand = ''

View file

@ -13,7 +13,7 @@ in
sha256 = "1lpbfa298c61aarlzgp7vghrmxg1274pzxh1j9isv8x758gk6mfn";
};
nativeBuildInputs = [ pkgconfig ];
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ cmake ] ++
(if backend == "darwin" then [darwin.apple_sdk.frameworks.Cocoa]
else if backend == "unix" then [gtk3]
@ -22,10 +22,6 @@ in
preConfigure = stdenv.lib.optionalString stdenv.isDarwin ''
sed -i 's/set(CMAKE_OSX_DEPLOYMENT_TARGET "10.8")//' ./CMakeLists.txt
'';
cmakeFlags = stdenv.lib.optionals stdenv.isDarwin [
"-DCMAKE_OSX_SYSROOT="
"-DCMAKE_OSX_DEPLOYMENT_TARGET="
];
installPhase = ''
mkdir -p $out/{include,lib}

View file

@ -29,7 +29,6 @@ stdenv.mkDerivation rec {
++ stdenv.lib.optionals stdenv.isDarwin [ Cocoa AGL cf-private ];
cmakeFlags = stdenv.lib.optionals stdenv.isDarwin [
"-DCMAKE_OSX_SYSROOT=" "-DCMAKE_OSX_DEPLOYMENT_TARGET="
"-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks"
];

View file

@ -1,5 +1,5 @@
{ stdenv, fetchurl, python, pkgconfig, readline, libxslt
, docbook_xsl, docbook_xml_dtd_42
, docbook_xsl, docbook_xml_dtd_42, fixDarwinDylibNames
}:
stdenv.mkDerivation rec {
@ -10,13 +10,13 @@ stdenv.mkDerivation rec {
sha256 = "1kk76dyav41ip7ddbbf04yfydb4jvywzi2ps0z2vla56aqkn11di";
};
nativeBuildInputs = [ pkgconfig ];
nativeBuildInputs = [ pkgconfig fixDarwinDylibNames ];
buildInputs = [
python readline libxslt docbook_xsl docbook_xml_dtd_42
];
preConfigure = ''
sed -i 's,#!/usr/bin/env python,#!${python}/bin/python,g' buildtools/bin/waf
prePatch = ''
patchShebangs buildtools/bin/waf
'';
configureFlags = [

View file

@ -41,8 +41,6 @@ stdenv.mkDerivation rec {
cmakeFlags = [ "-DCMAKE_C_FLAGS=-fPIC" "-DCMAKE_CXX_FLAGS=-fPIC" ]
++ optional (qtLib != null) [ "-DVTK_USE_QT:BOOL=ON" ]
++ optional stdenv.isDarwin [ "-DBUILD_TESTING:BOOL=OFF"
"-DCMAKE_OSX_SYSROOT="
"-DCMAKE_OSX_DEPLOYMENT_TARGET="
"-DOPENGL_INCLUDE_DIR=${OpenGL}/Library/Frameworks" ];
postPatch = stdenv.lib.optionalString stdenv.isDarwin ''

View file

@ -20,10 +20,6 @@ stdenv.mkDerivation {
buildInputs = [ cmake zlib libpng bzip2 libusb openssl ];
cmakeFlags = [
"-DCMAKE_OSX_DEPLOYMENT_TARGET="
];
meta = with stdenv.lib; {
homepage = "http://planetbeing.lighthouseapp.com/projects/15246-xpwn";
description = "Custom NOR firmware loader/IPSW generator for the iPhone";

View file

@ -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 ];
};
}

View file

@ -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";

View file

@ -4,6 +4,7 @@
, numpy
, decorator
, imageio
, isPy3k
, tqdm
}:

View file

@ -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 ];
};
}

View file

@ -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;
};
}

20
pkgs/development/tools/asmfmt/deps.nix generated Normal file
View file

@ -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";
};
}
]

View file

@ -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

View file

@ -1,4 +1,4 @@
{ lib, python3Packages, stdenv, writeTextDir, substituteAll, fetchpatch }:
{ lib, python3Packages, stdenv, writeTextDir, substituteAll, fetchpatch, targetPackages }:
python3Packages.buildPythonApplication rec {
version = "0.46.1";
@ -53,20 +53,20 @@ python3Packages.buildPythonApplication rec {
crossFile = writeTextDir "cross-file.conf" ''
[binaries]
c = '${stdenv.cc.targetPrefix}cc'
cpp = '${stdenv.cc.targetPrefix}c++'
ar = '${stdenv.cc.bintools.targetPrefix}ar'
strip = '${stdenv.cc.bintools.targetPrefix}strip'
c = '${targetPackages.stdenv.cc.targetPrefix}cc'
cpp = '${targetPackages.stdenv.cc.targetPrefix}c++'
ar = '${targetPackages.stdenv.cc.bintools.targetPrefix}ar'
strip = '${targetPackages.stdenv.cc.bintools.targetPrefix}strip'
pkgconfig = 'pkg-config'
[properties]
needs_exe_wrapper = true
[host_machine]
system = '${stdenv.targetPlatform.parsed.kernel.name}'
cpu_family = '${stdenv.targetPlatform.parsed.cpu.family}'
cpu = '${stdenv.targetPlatform.parsed.cpu.name}'
endian = ${if stdenv.targetPlatform.isLittleEndian then "'little'" else "'big'"}
system = '${targetPackages.stdenv.targetPlatform.parsed.kernel.name}'
cpu_family = '${targetPackages.stdenv.targetPlatform.parsed.cpu.family}'
cpu = '${targetPackages.stdenv.targetPlatform.parsed.cpu.name}'
endian = ${if targetPackages.stdenv.targetPlatform.isLittleEndian then "'little'" else "'big'"}
'';
# 0.45 update enabled tests but they are failing
@ -76,7 +76,7 @@ python3Packages.buildPythonApplication rec {
inherit (stdenv) cc;
isCross = stdenv.buildPlatform != stdenv.hostPlatform;
isCross = stdenv.targetPlatform != stdenv.hostPlatform;
meta = with lib; {
homepage = http://mesonbuild.com;

View file

@ -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;
};
}

11
pkgs/development/tools/check/deps.nix generated Normal file
View file

@ -0,0 +1,11 @@
[
{
goPackagePath = "golang.org/x/tools";
fetch = {
type = "git";
url = "https://go.googlesource.com/tools";
rev = "677d2ff680c1";
sha256 = "0vp1w1haqcjd82dxd6x9xrllbfwvm957rxwkpji96cgvhsli2bq5";
};
}
]

View file

@ -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;
};
}

View file

@ -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;
};
}

20
pkgs/development/tools/errcheck/deps.nix generated Normal file
View file

@ -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";
};
}
]

View file

@ -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;
};
}

20
pkgs/development/tools/go-tools/deps.nix generated Normal file
View file

@ -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";
};
}
]

View file

@ -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;
};
}

View file

@ -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;
};
}

View file

@ -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;
};
}

13
pkgs/development/tools/gogetdoc/deps.nix generated Normal file
View file

@ -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";
};
}
]

View file

@ -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;
};
}

View file

@ -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;
};
}

193
pkgs/development/tools/gosec/deps.nix generated Normal file
View file

@ -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";
};
}
]

View file

@ -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;
};
}

View file

@ -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;
};
}

11
pkgs/development/tools/impl/deps.nix generated Normal file
View file

@ -0,0 +1,11 @@
[
{
goPackagePath = "golang.org/x/tools";
fetch = {
type = "git";
url = "https://go.googlesource.com/tools";
rev = "96e9e165b75e735822645eff82850b08c377be36";
sha256 = "1zj9ck5sg9b0pphxybmvxf64hhcap7v7j37fx3v5aknf18crjjdg";
};
}
]

View file

@ -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;
};
}

View file

@ -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;
};
}

View file

@ -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";
};
}
]

View file

@ -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;
};
}

20
pkgs/development/tools/maligned/deps.nix generated Normal file
View file

@ -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";
};
}
]

View file

@ -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;
};
}

View file

@ -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;
};
}

View file

@ -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";
};
}
]

View file

@ -1,29 +1,11 @@
{ stdenv, bundlerEnv, ruby, makeWrapper }:
{ lib, bundlerApp }:
stdenv.mkDerivation rec {
name = "mailcatcher-${version}";
bundlerApp {
pname = "mailcatcher";
gemdir = ./.;
exes = [ "mailcatcher" "catchmail" ];
version = (import ./gemset.nix).mailcatcher.version;
env = bundlerEnv {
name = "${name}-gems";
inherit ruby;
gemdir = ./.;
};
buildInputs = [ makeWrapper ];
unpackPhase = ":";
installPhase = ''
mkdir -p $out/bin
makeWrapper ${env}/bin/mailcatcher $out/bin/mailcatcher
makeWrapper ${env}/bin/catchmail $out/bin/catchmail
'';
meta = with stdenv.lib; {
meta = with lib; {
description = "SMTP server and web interface to locally test outbound emails";
homepage = https://mailcatcher.me/;
license = licenses.mit;

View file

@ -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;
};
}

View file

@ -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 ]

View file

@ -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

View file

@ -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 ];

View file

@ -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 {}))

View file

@ -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 {}))

View file

@ -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 {}))

View file

@ -1,13 +1,13 @@
{ stdenv, buildPackages, fetchurl, perl, buildLinux, libelf, utillinux, ... } @ args:
buildLinux (args // rec {
version = "4.19-rc8";
modDirVersion = "4.19.0-rc8";
extraMeta.branch = "4.19";
version = "4.20-rc1";
modDirVersion = "4.20.0-rc1";
extraMeta.branch = "4.20";
src = fetchurl {
url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz";
sha256 = "1xw8grzn4i4b2vprfwi4p4003n7rr9725dbiqyrl8w1pm11jwpin";
sha256 = "0nf3rk8768740smkbf2ilsm40p1pnnmrpf53pmc5k1dkj4kgc0pb";
};
# Should the testing kernels ever be built on Hydra?

Some files were not shown because too many files have changed in this diff Show more