Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2021-01-08 06:29:07 +00:00 committed by GitHub
commit 18280919d6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
68 changed files with 1101 additions and 942 deletions

View file

@ -7989,6 +7989,12 @@
githubId = 720864;
name = "Sébastien Bourdeauducq";
};
sbond75 = {
name = "sbond75";
email = "43617712+sbond75@users.noreply.github.com";
github = "sbond75";
githubId = 43617712;
};
sboosali = {
email = "SamBoosalis@gmail.com";
github = "sboosali";

View file

@ -144,6 +144,7 @@ in
"/share/kservicetypes5"
"/share/kxmlgui5"
"/share/systemd"
"/share/thumbnailers"
];
system.path = pkgs.buildEnv {

View file

@ -4,31 +4,16 @@ with lib;
let
cfg = config.services.redis;
redisBool = b: if b then "yes" else "no";
condOption = name: value: if value != null then "${name} ${toString value}" else "";
redisConfig = pkgs.writeText "redis.conf" ''
port ${toString cfg.port}
${condOption "bind" cfg.bind}
${condOption "unixsocket" cfg.unixSocket}
daemonize no
supervised systemd
loglevel ${cfg.logLevel}
logfile ${cfg.logfile}
syslog-enabled ${redisBool cfg.syslog}
databases ${toString cfg.databases}
${concatMapStrings (d: "save ${toString (builtins.elemAt d 0)} ${toString (builtins.elemAt d 1)}\n") cfg.save}
dbfilename dump.rdb
dir /var/lib/redis
${if cfg.slaveOf != null then "slaveof ${cfg.slaveOf.ip} ${toString cfg.slaveOf.port}" else ""}
${condOption "masterauth" cfg.masterAuth}
${condOption "requirepass" cfg.requirePass}
appendOnly ${redisBool cfg.appendOnly}
appendfsync ${cfg.appendFsync}
slowlog-log-slower-than ${toString cfg.slowLogLogSlowerThan}
slowlog-max-len ${toString cfg.slowLogMaxLen}
${cfg.extraConfig}
'';
mkValueString = value:
if value == true then "yes"
else if value == false then "no"
else generators.mkValueStringDefault { } value;
redisConfig = pkgs.writeText "redis.conf" (generators.toKeyValue {
listsAsDuplicateKeys = true;
mkKeyValue = generators.mkKeyValueDefault { inherit mkValueString; } " ";
} cfg.settings);
in
{
imports = [
@ -37,6 +22,7 @@ in
(mkRemovedOptionModule [ "services" "redis" "dbFilename" ] "The redis module now uses /var/lib/redis/dump.rdb as database dump location.")
(mkRemovedOptionModule [ "services" "redis" "appendOnlyFilename" ] "This option was never used.")
(mkRemovedOptionModule [ "services" "redis" "pidFile" ] "This option was removed.")
(mkRemovedOptionModule [ "services" "redis" "extraConfig" ] "Use services.redis.settings instead.")
];
###### interface
@ -191,10 +177,20 @@ in
description = "Maximum number of items to keep in slow log.";
};
extraConfig = mkOption {
type = types.lines;
default = "";
description = "Extra configuration options for redis.conf.";
settings = mkOption {
type = with types; attrsOf (oneOf [ bool int str (listOf str) ]);
default = {};
description = ''
Redis configuration. Refer to
<link xlink:href="https://redis.io/topics/config"/>
for details on supported values.
'';
example = literalExample ''
{
unixsocketperm = "700";
loadmodule = [ "/path/to/my_module.so" "/path/to/other_module.so" ];
}
'';
};
};
@ -225,6 +221,30 @@ in
environment.systemPackages = [ cfg.package ];
services.redis.settings = mkMerge [
{
port = cfg.port;
daemonize = false;
supervised = "systemd";
loglevel = cfg.logLevel;
logfile = cfg.logfile;
syslog-enabled = cfg.syslog;
databases = cfg.databases;
save = map (d: "${toString (builtins.elemAt d 0)} ${toString (builtins.elemAt d 1)}") cfg.save;
dbfilename = "dump.rdb";
dir = "/var/lib/redis";
appendOnly = cfg.appendOnly;
appendfsync = cfg.appendFsync;
slowlog-log-slower-than = cfg.slowLogLogSlowerThan;
slowlog-max-len = cfg.slowLogMaxLen;
}
(mkIf (cfg.bind != null) { bind = cfg.bind; })
(mkIf (cfg.unixSocket != null) { unixsocket = cfg.unixSocket; })
(mkIf (cfg.slaveOf != null) { slaveof = "${cfg.slaveOf.ip} ${cfg.slaveOf.port}"; })
(mkIf (cfg.masterAuth != null) { masterauth = cfg.masterAuth; })
(mkIf (cfg.requirePass != null) { requirepass = cfg.requirePass; })
];
systemd.services.redis = {
description = "Redis Server";

View file

@ -93,11 +93,11 @@ in {
assertions = [
{
assertion = cfg.pulse.enable -> !config.hardware.pulseaudio.enable;
message = "PipeWire based PulseAudio server emulation replaces PulseAudio";
message = "PipeWire based PulseAudio server emulation replaces PulseAudio. This option requires `hardware.pulseaudio.enable` to be set to false";
}
{
assertion = cfg.jack.enable -> !config.services.jack.jackd.enable;
message = "PipeWire based JACK emulation doesn't use the JACK service";
message = "PipeWire based JACK emulation doesn't use the JACK service. This option requires `services.jack.jackd.enable` to be set to false";
}
];

View file

@ -100,6 +100,10 @@ in
packages = [ cfg.lxcPackage ];
};
# TODO: remove once LXD gets proper support for cgroupsv2
# (currently most of the e.g. CPU accounting stuff doesn't work)
systemd.enableUnifiedCgroupHierarchy = false;
systemd.services.lxd = {
description = "LXD Container Management Daemon";

View file

@ -1,30 +1,117 @@
{ stdenv, fetchurl, alsaLib, cairo, cmake, libjack2, fftw, fltk13, lash, libjpeg
, libXpm, minixml, ntk, pkg-config, zlib, liblo
{ lib
, stdenv
, fetchFromGitHub
, callPackage
# Required build tools
, cmake
, makeWrapper
, pkg-config
# Required dependencies
, fftw
, liblo
, minixml
, zlib
# Optional dependencies
, alsaSupport ? true
, alsaLib
, dssiSupport ? false
, dssi
, ladspaH
, jackSupport ? true
, libjack2
, lashSupport ? false
, lash
, ossSupport ? true
, portaudioSupport ? true
, portaudio
# Optional GUI dependencies
, guiModule ? "off"
, cairo
, fltk13
, libGL
, libjpeg
, libX11
, libXpm
, ntk
# Test dependencies
, cxxtest
}:
stdenv.mkDerivation rec {
assert builtins.any (g: guiModule == g) [ "fltk" "ntk" "zest" "off" ];
let
guiName = {
"fltk" = "FLTK";
"ntk" = "NTK";
"zest" = "Zyn-Fusion";
}.${guiModule};
mruby-zest = callPackage ./mruby-zest { };
in stdenv.mkDerivation rec {
pname = "zynaddsubfx";
version = "3.0.5";
src = fetchurl {
url = "mirror://sourceforge/zynaddsubfx/zynaddsubfx-${version}.tar.bz2";
sha256 = "0qwzg14h043rmyf9jqdylxhyfy4sl0vsr0gjql51wjhid0i34ivl";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = version;
sha256 = "1vh1gszgjxwn8m32rk5222z1j2cnjax0bqpag7b47v6i36p2q4x8";
fetchSubmodules = true;
};
buildInputs = [ alsaLib cairo libjack2 fftw fltk13 lash libjpeg libXpm minixml ntk zlib liblo ];
nativeBuildInputs = [ cmake pkg-config ];
patchPhase = ''
postPatch = ''
substituteInPlace src/Misc/Config.cpp --replace /usr $out
'';
hardeningDisable = [ "format" ];
nativeBuildInputs = [ cmake makeWrapper pkg-config ];
buildInputs = [ fftw liblo minixml zlib ]
++ lib.optionals alsaSupport [ alsaLib ]
++ lib.optionals dssiSupport [ dssi ladspaH ]
++ lib.optionals jackSupport [ libjack2 ]
++ lib.optionals lashSupport [ lash ]
++ lib.optionals portaudioSupport [ portaudio ]
++ lib.optionals (guiModule == "fltk") [ fltk13 libjpeg libXpm ]
++ lib.optionals (guiModule == "ntk") [ ntk cairo libXpm ]
++ lib.optionals (guiModule == "zest") [ libGL libX11 ];
cmakeFlags = [ "-DGuiModule=${guiModule}" ]
# OSS library is included in glibc.
# Must explicitly disable if support is not wanted.
++ lib.optional (!ossSupport) "-DOssEnable=OFF"
# Find FLTK without requiring an OpenGL library in buildInputs
++ lib.optional (guiModule == "fltk") "-DFLTK_SKIP_OPENGL=ON";
doCheck = true;
checkInputs = [ cxxtest ];
# When building with zest GUI, patch plugins
# and standalone executable to properly locate zest
postFixup = lib.optional (guiModule == "zest") ''
patchelf --set-rpath "${mruby-zest}:$(patchelf --print-rpath "$out/lib/lv2/ZynAddSubFX.lv2/ZynAddSubFX_ui.so")" \
"$out/lib/lv2/ZynAddSubFX.lv2/ZynAddSubFX_ui.so"
patchelf --set-rpath "${mruby-zest}:$(patchelf --print-rpath "$out/lib/vst/ZynAddSubFX.so")" \
"$out/lib/vst/ZynAddSubFX.so"
wrapProgram "$out/bin/zynaddsubfx" \
--prefix PATH : ${mruby-zest} \
--prefix LD_LIBRARY_PATH : ${mruby-zest}
'';
meta = with lib; {
description = "High quality software synthesizer (${guiName} GUI)";
homepage =
if guiModule == "zest"
then "https://zynaddsubfx.sourceforge.io/zyn-fusion.html"
else "https://zynaddsubfx.sourceforge.io";
meta = with stdenv.lib; {
description = "High quality software synthesizer";
homepage = "http://zynaddsubfx.sourceforge.net";
license = licenses.gpl2;
maintainers = with maintainers; [ goibhniu metadark ];
platforms = platforms.linux;
maintainers = [ maintainers.goibhniu maintainers.nico202 ];
};
}

View file

@ -0,0 +1,109 @@
{ stdenv
, fetchFromGitHub
, bison
, git
, python2
, rake
, ruby
, libGL
, libuv
, libX11
}:
let
mgem-list = fetchFromGitHub {
owner = "mruby";
repo = "mgem-list";
rev = "2033837203c8a141b1f9d23bb781fe0cbaefbd24";
sha256 = "0igf2nsx5i6g0yf7sjxxkngyriv213d0sjs3yidrflrabiywpxmm";
};
mruby-dir = fetchFromGitHub {
owner = "iij";
repo = "mruby-dir";
rev = "89dceefa1250fb1ae868d4cb52498e9e24293cd1";
sha256 = "0zrhiy9wmwmc9ls62iyb2z86j2ijqfn7rn4xfmrbrfxygczarsm9";
};
mruby-errno = fetchFromGitHub {
owner = "iij";
repo = "mruby-errno";
rev = "b4415207ff6ea62360619c89a1cff83259dc4db0";
sha256 = "12djcwjjw0fygai5kssxbfs3pzh3cpnq07h9m2h5b51jziw380xj";
};
mruby-file-stat = fetchFromGitHub {
owner = "ksss";
repo = "mruby-file-stat";
rev = "aa474589f065c71d9e39ab8ba976f3bea6f9aac2";
sha256 = "1clarmr67z133ivkbwla1a42wcjgj638j9w0mlv5n21mhim9rid5";
};
mruby-process = fetchFromGitHub {
owner = "iij";
repo = "mruby-process";
rev = "fe171fbe2a6cc3c2cf7d713641bddde71024f7c8";
sha256 = "00yrzc371f90gl5m1gbkw0qq8c394bpifssjr8p1wh5fmzhxqyml";
};
mruby-pack = fetchFromGitHub {
owner = "iij";
repo = "mruby-pack";
rev = "383a9c79e191d524a9a2b4107cc5043ecbf6190b";
sha256 = "003glxgxifk4ixl12sy4gn9bhwvgb79b4wga549ic79isgv81w2d";
};
in
stdenv.mkDerivation rec {
pname = "mruby-zest";
version = "3.0.5";
src = fetchFromGitHub {
owner = pname;
repo = "${pname}-build";
rev = version;
sha256 = "0fxljrgamgz2rm85mclixs00b0f2yf109jc369039n1vf0l5m57d";
fetchSubmodules = true;
};
nativeBuildInputs = [ bison git python2 rake ruby ];
buildInputs = [ libGL libuv libX11 ];
patches = [
./force-gcc-as-linker.patch
./system-libuv.patch
];
# Add missing dependencies of deps/mruby-dir-glob/mrbgem.rake
# Should be fixed in next release, see bcadb0a5490bd6d599f1a0e66ce09b46363c9dae
postPatch = ''
mkdir -p mruby/build/mrbgems
ln -s ${mgem-list} mruby/build/mrbgems/mgem-list
ln -s ${mruby-dir} mruby/build/mrbgems/mruby-dir
ln -s ${mruby-errno} mruby/build/mrbgems/mruby-errno
ln -s ${mruby-file-stat} mruby/build/mrbgems/mruby-file-stat
ln -s ${mruby-process} mruby/build/mrbgems/mruby-process
ln -s ${mruby-pack} mruby/build/mrbgems/mruby-pack
'';
installTargets = [ "pack" ];
postInstall = ''
ln -s "$out/zest" "$out/zyn-fusion"
cp -a package/{font,libzest.so,schema,zest} "$out"
# mruby-widget-lib/src/api.c requires MainWindow.qml as part of a
# sanity check, even though qml files are compiled into the binary
# https://github.com/mruby-zest/mruby-zest-build/tree/3.0.5/src/mruby-widget-lib/src/api.c#L99-L116
# https://github.com/mruby-zest/mruby-zest-build/tree/3.0.5/linux-pack.sh#L17-L18
mkdir -p "$out/qml"
touch "$out/qml/MainWindow.qml"
'';
meta = with stdenv.lib; {
description = "The Zest Framework used in ZynAddSubFX's UI";
homepage = "https://github.com/mruby-zest";
license = licenses.lgpl21;
maintainers = with maintainers; [ metadark ];
platforms = platforms.all;
};
}

View file

@ -0,0 +1,13 @@
diff --git a/mruby/tasks/toolchains/gcc.rake b/mruby/tasks/toolchains/gcc.rake
index f370c0ab..e5ab9f60 100644
--- a/mruby/tasks/toolchains/gcc.rake
+++ b/mruby/tasks/toolchains/gcc.rake
@@ -22,7 +22,7 @@ MRuby::Toolchain.new(:gcc) do |conf, _params|
end
conf.linker do |linker|
- linker.command = ENV['LD'] || 'gcc'
+ linker.command = 'gcc'
linker.flags = [ENV['LDFLAGS'] || %w()]
linker.libraries = %w(m)
linker.library_paths = []

View file

@ -0,0 +1,113 @@
diff --git a/Makefile b/Makefile
index f3e3be2..2398852 100644
--- a/Makefile
+++ b/Makefile
@@ -1,8 +1,3 @@
-UV_DIR = libuv-v1.9.1
-UV_FILE = $(UV_DIR).tar.gz
-UV_URL = http://dist.libuv.org/dist/v1.9.1/$(UV_FILE)
-
-
all:
ruby ./rebuild-fcache.rb
cd deps/nanovg/src && $(CC) nanovg.c -c -fPIC
@@ -10,12 +5,12 @@ all:
# cd deps/pugl && python2 ./waf configure --no-cairo --static
cd deps/pugl && python2 ./waf configure --no-cairo --static --debug
cd deps/pugl && python2 ./waf
- cd src/osc-bridge && CFLAGS="-I ../../deps/$(UV_DIR)/include " make lib
+ cd src/osc-bridge && make lib
cd mruby && MRUBY_CONFIG=../build_config.rb rake
$(CC) -shared -o libzest.so `find mruby/build/host -type f | grep -e "\.o$$" | grep -v bin` ./deps/libnanovg.a \
./deps/libnanovg.a \
src/osc-bridge/libosc-bridge.a \
- ./deps/$(UV_DIR)/.libs/libuv.a -lm -lX11 -lGL -lpthread
+ -luv -lm -lX11 -lGL -lpthread
$(CC) test-libversion.c deps/pugl/build/libpugl-0.a -ldl -o zest -lX11 -lGL -lpthread -I deps/pugl -std=gnu99
osx:
@@ -25,12 +20,12 @@ osx:
cd deps/pugl && python2 ./waf configure --no-cairo --static
# cd deps/pugl && python2 ./waf configure --no-cairo --static --debug
cd deps/pugl && python2 ./waf
- cd src/osc-bridge && CFLAGS="-I ../../deps/$(UV_DIR)/include " make lib
+ cd src/osc-bridge && make lib
cd mruby && MRUBY_CONFIG=../build_config.rb rake
$(CC) -shared -o libzest.so `find mruby/build/host -type f | grep -e "\.o$$" | grep -v bin` ./deps/libnanovg.a \
./deps/libnanovg.a \
src/osc-bridge/libosc-bridge.a \
- ./deps/$(UV_DIR)/.libs/libuv.a -lm -framework OpenGL -lpthread
+ -luv -lm -framework OpenGL -lpthread
$(CC) test-libversion.c deps/pugl/build/libpugl-0.a -ldl -o zest -framework OpenGL -framework AppKit -lpthread -I deps/pugl -std=gnu99
windows:
@@ -38,38 +33,14 @@ windows:
$(AR) rc deps/libnanovg.a deps/nanovg/src/*.o
cd deps/pugl && CFLAGS="-mstackrealign" python2 ./waf configure --no-cairo --static --target=win32
cd deps/pugl && python2 ./waf
- cd src/osc-bridge && CFLAGS="-mstackrealign -I ../../deps/$(UV_DIR)/include " make lib
+ cd src/osc-bridge && CFLAGS="-mstackrealign" make lib
cd mruby && WINDOWS=1 MRUBY_CONFIG=../build_config.rb rake
$(CC) -mstackrealign -shared -o libzest.dll -static-libgcc `find mruby/build/w64 -type f | grep -e "\.o$$" | grep -v bin` \
./deps/libnanovg.a \
src/osc-bridge/libosc-bridge.a \
- ./deps/libuv-win.a \
- -lm -lpthread -lws2_32 -lkernel32 -lpsapi -luserenv -liphlpapi -lglu32 -lgdi32 -lopengl32
+ -luv -lm -lpthread -lws2_32 -lkernel32 -lpsapi -luserenv -liphlpapi -lglu32 -lgdi32 -lopengl32
$(CC) -mstackrealign -DWIN32 test-libversion.c deps/pugl/build/libpugl-0.a -o zest.exe -lpthread -I deps/pugl -std=c99 -lws2_32 -lkernel32 -lpsapi -luserenv -liphlpapi -lglu32 -lgdi32 -lopengl32
-
-builddep: deps/libuv.a
-deps/libuv.a:
- cd deps/$(UV_DIR) && ./autogen.sh
- cd deps/$(UV_DIR) && CFLAGS=-fPIC ./configure
- cd deps/$(UV_DIR) && CFLAGS=-fPIC make
- cp deps/$(UV_DIR)/.libs/libuv.a deps/
-
-builddepwin: deps/libuv-win.a
-deps/libuv-win.a:
- cd deps/$(UV_DIR) && ./autogen.sh
- cd deps/$(UV_DIR) && CFLAGS="-mstackrealign" ./configure --host=x86_64-w64-mingw32
- cd deps/$(UV_DIR) && LD=x86_64-w64-mingw32-gcc make
- cp deps/$(UV_DIR)/.libs/libuv.a deps/libuv-win.a
-
-deps/$(UV_DIR):
- cd deps && wget -4 $(UV_URL) && tar xvf $(UV_FILE)
-setup: deps/$(UV_DIR)
-
-setupwin:
- cd deps && wget -4 $(UV_URL)
- cd deps && tar xvf $(UV_FILE)
-
push:
cd src/osc-bridge && git push
cd src/mruby-qml-parse && git push
diff --git a/build_config.rb b/build_config.rb
index 00f1f69..11ac15b 100644
--- a/build_config.rb
+++ b/build_config.rb
@@ -96,7 +96,6 @@ build_type.new(build_name) do |conf|
conf.cc do |cc|
cc.include_paths << "#{`pwd`.strip}/../deps/nanovg/src"
cc.include_paths << "#{`pwd`.strip}/../deps/pugl/"
- cc.include_paths << "#{`pwd`.strip}/../deps/libuv-v1.9.1/include/"
cc.include_paths << "/usr/share/mingw-w64/include/" if windows
cc.include_paths << "/usr/x86_64-w64-mingw32/include/" if windows
cc.flags << "-DLDBL_EPSILON=1e-6" if windows
@@ -117,14 +116,14 @@ build_type.new(build_name) do |conf|
linker.flags_after_libraries << "#{`pwd`.strip}/../deps/pugl/build/libpugl-0.a"
linker.flags_after_libraries << "#{`pwd`.strip}/../deps/libnanovg.a"
if(!windows)
- linker.flags_after_libraries << "#{`pwd`.strip}/../deps/libuv.a"
+ linker.flags_after_libraries << "-luv"
if(ENV['OS'] != "Mac")
linker.libraries << 'GL'
linker.libraries << 'X11'
end
linker.flags_after_libraries << "-lpthread -ldl -lm"
else
- linker.flags_after_libraries << "#{`pwd`.strip}/../deps/libuv-win.a"
+ linker.flags_after_libraries << "-luv"
linker.flags_after_libraries << "-lws2_32 -lkernel32 -lpsapi -luserenv -liphlpapi"
linker.flags_after_libraries << "-lglu32 -lgdi32 -lopengl32"
end

View file

@ -2,13 +2,13 @@
mkDerivation rec {
pname = "ghostwriter";
version = "1.8.1";
version = "2.0.0-rc3";
src = fetchFromGitHub {
owner = "wereturtle";
repo = pname;
rev = "v${version}";
sha256 = "0jc6szfh5sdnafhwsr1xv7cn1fznniq58bix41hb9wlbkvq7wzi6";
rev = version;
sha256 = "sha256-Ag97iE++f3nG2zlwqn0qxSL9RpF8O3XWH9NtQ5kFuWg=";
};
nativeBuildInputs = [ qmake pkgconfig qttools ];
@ -20,6 +20,7 @@ mkDerivation rec {
homepage = src.meta.homepage;
license = licenses.gpl3Plus;
platforms = platforms.unix;
maintainers = with maintainers; [ dotlambda ];
maintainers = with maintainers; [ dotlambda erictapen ];
broken = stdenv.isDarwin;
};
}

View file

@ -1,61 +1,102 @@
{ asciidoc
{ stdenv
, lib
, fetchFromGitHub
, asciidoc
, cmocka
, docbook_xsl
, fetchFromGitHub
, libxslt
, fontconfig
, freeimage
, meson
, ninja
, pkgconfig
, icu
, pango
, inih
, withWindowSystem ? "all"
, xorg
, libxkbcommon
, libGLU
, libheif
, wayland
, withBackends ? [ "freeimage" "libtiff" "libjpeg" "libpng" "librsvg" "libnsgif" "libheif" ]
, freeimage
, libtiff
, libjpeg_turbo
, libpng
, librsvg
, libtiff
, libxkbcommon
, libxslt
, netsurf
, pango
, pkgconfig
, stdenv
, wayland
, libheif
}:
let
windowSystems = {
all = windowSystems.x11 ++ windowSystems.wayland;
x11 = [ libGLU xorg.libxcb xorg.libX11 ];
wayland = [ wayland ];
};
backends = {
inherit freeimage libtiff libpng librsvg libheif;
libjpeg = libjpeg_turbo;
inherit (netsurf) libnsgif;
};
backendFlags = builtins.map
(b: if builtins.elem b withBackends
then "-D${b}=enabled"
else "-D${b}=disabled")
(builtins.attrNames backends);
in
# check that given window system is valid
assert lib.assertOneOf "withWindowSystem" withWindowSystem
(builtins.attrNames windowSystems);
# check that every given backend is valid
assert builtins.all
(b: lib.assertOneOf "each backend" b (builtins.attrNames backends))
withBackends;
stdenv.mkDerivation rec {
pname = "imv";
version = "4.1.0";
version = "4.2.0";
src = fetchFromGitHub {
owner = "eXeC64";
repo = "imv";
rev = "v${version}";
sha256 = "0gk8g178i961nn3bls75a8qpv6wvfvav6hd9lxca1skaikd33zdx";
sha256 = "07pcpppmfvvj0czfvp1cyq03ha0jdj4whl13lzvw37q3vpxs5qqh";
};
nativeBuildInputs = [ asciidoc cmocka docbook_xsl libxslt ];
mesonFlags = [
"-Dwindows=${withWindowSystem}"
"-Dtest=enabled"
"-Dman=enabled"
] ++ backendFlags;
buildInputs = [
freeimage
icu
libGLU
libjpeg_turbo
librsvg
libxkbcommon
netsurf.libnsgif
pango
nativeBuildInputs = [
asciidoc
cmocka
docbook_xsl
libxslt
meson
ninja
pkgconfig
wayland
];
installFlags = [ "PREFIX=$(out)" "CONFIGPREFIX=$(out)/etc" ];
buildInputs = [
icu
libxkbcommon
pango
inih
] ++ windowSystems."${withWindowSystem}"
++ builtins.map (b: backends."${b}") withBackends;
makeFlags = [ "BACKEND_LIBJPEG=yes" "BACKEND_LIBNSGIF=yes" ];
postFixup = ''
postFixup = lib.optionalString (withWindowSystem == "all") ''
# The `bin/imv` script assumes imv-wayland or imv-x11 in PATH,
# so we have to fix those to the binaries we installed into the /nix/store
sed -i "s|\bimv-wayland\b|$out/bin/imv-wayland|" $out/bin/imv
sed -i "s|\bimv-x11\b|$out/bin/imv-x11|" $out/bin/imv
substituteInPlace "$out/bin/imv" \
--replace "imv-wayland" "$out/bin/imv-wayland" \
--replace "imv-x11" "$out/bin/imv-x11"
'';
doCheck = true;

View file

@ -0,0 +1,71 @@
{ stdenv
, fetchurl
, lib
, autoreconfHook
, bzip2
, cfitsio
, exiv2
, gettext
, gtk2
, gtkimageview
, lcms2
, lensfun
, libjpeg
, libtiff
, perl
, pkg-config
, zlib
, addThumbnailer ? false
}:
stdenv.mkDerivation rec {
pname = "nufraw";
version = "0.43-3";
src = fetchurl {
url = "mirror://sourceforge/nufraw/nufraw-${version}.tar.gz";
sha256 = "0b63qvw9r8kaqw36bk3a9zwxc41h8fr6498indkw4glrj0awqz9c";
};
nativeBuildInputs = [ autoreconfHook gettext perl pkg-config ];
buildInputs = [
bzip2
cfitsio
exiv2
gtk2
gtkimageview
lcms2
lensfun
libjpeg
libtiff
zlib
];
configureFlags = [
"--enable-contrast"
"--enable-dst-correction"
];
postInstall = lib.optionalString addThumbnailer ''
mkdir -p $out/share/thumbnailers
substituteAll ${./nufraw.thumbnailer} $out/share/thumbnailers/${pname}.thumbnailer
'';
meta = with stdenv.lib; {
homepage = "https://nufraw.sourceforge.io/";
description = "Utility to read and manipulate raw images from digital cameras";
longDescription =
''
A new version of the popular raw digital images manipulator ufraw.
Forks from the version 0.23 of ufraw (that's why the first nufraw version is the 0.24).
Nufraw offers the same features (gimp plugin, batch, ecc) and the same quality of
ufraw in a brand new improved user interface.
'';
license = licenses.gpl2Plus;
maintainers = with maintainers; [ asbachb ];
platforms = [ "x86_64-linux" "i686-linux" ];
};
}

View file

@ -0,0 +1,4 @@
[Thumbnailer Entry]
TryExec=@out@/bin/nufraw-batch
Exec=@out@/bin/nufraw-batch --silent --size %s --out-type=png --noexif --output=%o --embedded-image %i
MimeType=image/x-canon-cr2;image/x-canon-crw;image/x-minolta-mrw;image/x-nikon-nef;image/x-pentax-pef;image/x-panasonic-rw2;image/x-panasonic-raw2;image/x-samsung-srw;image/x-olympus-orf;image/x-sony-arw

View file

@ -30,12 +30,12 @@ let
in stdenv.mkDerivation rec {
pname = "obsidian";
version = "0.10.1";
version = "0.10.6";
src = fetchurl {
url =
"https://github.com/obsidianmd/obsidian-releases/releases/download/v${version}/obsidian-${version}.asar.gz";
sha256 = "wnCgW4EAcg0Oc1fqOZBYKN2g8N27riL+yonoIy0AfxA=";
sha256 = "KfGVc3nXu5ilYKQPLc5qaksTwsdhSVtty9CfjSoiCU8=";
};
nativeBuildInputs = [ makeWrapper graphicsmagick ];

View file

@ -0,0 +1,30 @@
{ stdenv
, fetchFromGitHub
, zlib
}:
stdenv.mkDerivation rec {
pname = "fastp";
version = "0.20.1";
src = fetchFromGitHub {
owner = "OpenGene";
repo = "fastp";
rev = "v${version}";
sha256 = "sha256-pANwppkO9pfV9vctB7HmNCzYRtf+Xt+5HMKzvFuvyFM=";
};
buildInputs = [ zlib ];
installPhase = ''
install -D fastp $out/bin/fastp
'';
meta = with stdenv.lib; {
description = "Ultra-fast all-in-one FASTQ preprocessor";
license = licenses.mit;
homepage = "https://github.com/OpenGene/fastp";
maintainers = with maintainers; [ jbedo ];
platforms = platforms.x86_64;
};
}

View file

@ -144,7 +144,7 @@ for version in "${all_versions[@]}"; do
for lib in "${libs[@]}"; do
echo "Checking ${lib}" >&2
url="${gitlab}/libraries/kicad-${lib}.git"
lib_rev="$(${get_rev} "${url}" "${version}" | cut -f1 | head -n1)"
lib_rev="$(${get_rev} "${url}" "${version}" | cut -f1 | tail -n1)"
has_rev="$(grep -sm 1 "\"${pname}\"" -A 19 "${file}" | grep -sm 1 "${lib_rev}" || true)"
has_hash="$(grep -sm 1 "\"${pname}\"" -A 20 "${file}" | grep -sm 1 "${lib}.sha256" || true)"
if [[ -n ${has_rev} && -n ${has_hash} && -z ${clean} ]]; then
@ -173,8 +173,8 @@ printf "}\n"
} > "${tmp}"
if grep '""' "${tmp}"; then
echo "empty value detected, out of space?" >&2
exit "1"
echo "empty value detected, out of space?" >&2
exit "1"
fi
mv "${tmp}" "${file}"

View file

@ -3,19 +3,19 @@
{
"kicad" = {
kicadVersion = {
version = "5.1.8";
version = "5.1.9";
src = {
rev = "db9833491010954bc27fac92c83d2864bd95c23c";
sha256 = "08ni9j2lw2hjc1csk6rkydcxwdal6da17ch60zkjij5vfsif2hix";
rev = "73d0e3b20dec05c4350efa5b69916eb29a7bfcb5";
sha256 = "1cqh3bc9y140hbryfk9qavs2y3lj5sm9q0qjxcf4mm472afzckky";
};
};
libVersion = {
version = "5.1.8";
version = "5.1.9";
libSources = {
i18n.rev = "78adcd19e7ed53f4889d6db65a33dd8ec2d323e9";
i18n.sha256 = "0x0w2m6d3xfm22y4anp5j2j67iwzby149ynj6qjlw2kcsi8kwk1j";
symbols.rev = "bf475af94877e8fd9cf80e667578ff61835e02bb";
symbols.sha256 = "1ii3r813653ng2ycggnknqx4g3ja7dbm4qyxrf9aq48ws0xkvhx3";
i18n.rev = "04f3231f60d55400cb81564b2cd465a57d5192d5";
i18n.sha256 = "04jq1dcag6i2ljjfqrib65mn4wg4c4nmi7i946l3bywc0rkqsx1f";
symbols.rev = "6dec5004b6a2679c19d4857bda2f90c5ab3a5726";
symbols.sha256 = "0n25rq32jwyigfw26faqraillwv6zbi2ywy26dkz5zqlf5xp56ad";
templates.rev = "1ccbaf3704e8ff4030d0915f71e051af621ef7d7";
templates.sha256 = "1a8xfcbdbb4ylrb5m7n2jjk9kwvgmlx1pmnn2cwj327a2b3m4jjs";
footprints.rev = "302ac78bac21825532f970fb92714fa5973ad79b";
@ -27,25 +27,25 @@
};
"kicad-unstable" = {
kicadVersion = {
version = "2020-12-01";
version = "2020-12-23";
src = {
rev = "3c521942ed52e83482c82d426170b4fbf327f846";
sha256 = "sha256:09qab69sy3n44kjlzxxx7gbksyr1kg8n14kz0zf8n71zfcqagci4";
rev = "912657dd238ad78cfc5d9d5e426ea850d5554fb3";
sha256 = "1p5kr4d4zpajwdmya1f351y1ix8qmvsx1hrnvhzh7yc3g72kgxah";
};
};
libVersion = {
version = "2020-12-01";
version = "2020-12-23";
libSources = {
i18n.rev = "e89d9a89bec59199c1ade56ee2556591412ab7b0";
i18n.sha256 = "sha256:04zaqyhj3qr4ymyd3k5vjpcna64j8klpsygcgjcv29s3rdi8glfl";
i18n.sha256 = "04zaqyhj3qr4ymyd3k5vjpcna64j8klpsygcgjcv29s3rdi8glfl";
symbols.rev = "e538abb015b4f289910a6f26b2f1b9cb8bf2efdb";
symbols.sha256 = "sha256:117y4cm46anlrnw6y6mdjgl1a5gab6h6m7cwx3q7qb284m9bs5gi";
symbols.sha256 = "117y4cm46anlrnw6y6mdjgl1a5gab6h6m7cwx3q7qb284m9bs5gi";
templates.rev = "32a4f6fab863976fdcfa232e3e08fdcf3323a954";
templates.sha256 = "sha256:13r94dghrh9slpj7nkzv0zqv5hk49s6pxm4q5ndqx0y8037ivmhk";
templates.sha256 = "13r94dghrh9slpj7nkzv0zqv5hk49s6pxm4q5ndqx0y8037ivmhk";
footprints.rev = "15ffd67e01257d4d8134dbd6708cb58977eeccbe";
footprints.sha256 = "sha256:1ad5k3wh2zqfibrar7pd3g363jk2q51dvraxnq3zlxa2x4znh7mw";
footprints.sha256 = "1ad5k3wh2zqfibrar7pd3g363jk2q51dvraxnq3zlxa2x4znh7mw";
packages3d.rev = "d8b7e8c56d535f4d7e46373bf24c754a8403da1f";
packages3d.sha256 = "sha256:0dh8ixg0w43wzj5h3164dz6l1vl4llwxhi3qcdgj1lgvrs28aywd";
packages3d.sha256 = "0dh8ixg0w43wzj5h3164dz6l1vl4llwxhi3qcdgj1lgvrs28aywd";
};
};
};

View file

@ -1,4 +1,5 @@
{ rustPlatform
{ stdenv
, rustPlatform
, lib
, fetchFromGitHub
@ -8,6 +9,11 @@
, openssl
, perl
# Apple frameworks
, CoreGraphics
, Cocoa
, Foundation
, dbus
, libX11
, xcbutil
@ -25,6 +31,10 @@
}:
let
runtimeDeps = [
zlib
fontconfig
freetype
] ++ stdenv.lib.optionals (stdenv.isLinux) [
libX11
xcbutil
libxcb
@ -33,13 +43,14 @@ let
libxkbcommon
dbus
libglvnd
zlib
egl-wayland
wayland
libGLU
libGL
fontconfig
freetype
] ++ stdenv.lib.optionals (stdenv.isDarwin) [
Foundation
CoreGraphics
Cocoa
];
pname = "wezterm";
in
@ -67,10 +78,21 @@ rustPlatform.buildRustPackage {
buildInputs = runtimeDeps;
installPhase = ''
'' + stdenv.lib.optionalString stdenv.isLinux ''
for artifact in wezterm wezterm-gui wezterm-mux-server strip-ansi-escapes; do
patchelf --set-rpath "${lib.makeLibraryPath runtimeDeps}" $releaseDir/$artifact
install -D $releaseDir/$artifact -t $out/bin
done
'' + stdenv.lib.optionalString stdenv.isDarwin ''
mkdir -p "$out/Applications"
OUT_APP="$out/Applications/WezTerm.app"
cp -r assets/macos/WezTerm.app "$OUT_APP"
rm $OUT_APP/*.dylib
cp -r assets/shell-integration/* "$OUT_APP"
cp $releaseDir/wezterm "$OUT_APP"
cp $releaseDir/wezterm-mux-server "$OUT_APP"
cp $releaseDir/wezterm-gui "$OUT_APP"
cp $releaseDir/strip-ansi-escapes "$OUT_APP"
'';
# prevent further changes to the RPATH

View file

@ -55,8 +55,5 @@ mkDerivationWith python3Packages.buildPythonApplication rec {
license = with licenses; gpl3Plus;
maintainers = with maintainers; [ AndersonTorres ];
platforms = with platforms; unix;
# Cannot use a newer Qt (5.15) version because it requires qtwebkit
# and our qtwebkit fails to build with 5.15. 01bcfd3579219d60e5d07df309a000f96b2b658b
broken = true;
};
}

View file

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub
{ stdenv, fetchFromGitHub, fetchpatch
, pkgconfig, cmake, doxygen
, libopenshot-audio, imagemagick, ffmpeg_3
, swig, python3
@ -19,7 +19,15 @@ stdenv.mkDerivation rec {
sha256 = "1mxjkgjmjzgf628y3rscc6rqf55hxgjpmvwxlncfk1216i5xskwp";
};
patchPhase = ''
patches = [
(fetchpatch {
name = "fix-build-with-gcc-10.patch";
url = "https://github.com/OpenShot/libopenshot/commit/13290364e7bea54164ab83d973951f2898ad9e23.diff";
sha256 = "0i7rpdsr8y9dphil8yq75qbh20vfqjc2hp5ahv0ws58z9wj6ngnz";
})
];
postPatch = ''
sed -i 's/{UNITTEST++_INCLUDE_DIR}/ENV{UNITTEST++_INCLUDE_DIR}/g' tests/CMakeLists.txt
sed -i 's/{_REL_PYTHON_MODULE_PATH}/ENV{_REL_PYTHON_MODULE_PATH}/g' src/bindings/python/CMakeLists.txt
export _REL_PYTHON_MODULE_PATH=$(toPythonPath $out)

View file

@ -62,7 +62,10 @@ stdenv.mkDerivation rec {
buildPhase = ''
mkdir bin
cp nvidia-docker bin
substituteInPlace bin/nvidia-docker --subst-var-by VERSION ${version}
cp ${libnvidia-container}/bin/nvidia-container-cli bin
cp ${nvidia-container-toolkit}/bin/nvidia-container-{toolkit,runtime-hook} bin
cp ${nvidia-container-runtime}/bin/nvidia-container-runtime bin

View file

@ -203,10 +203,6 @@ runCommand
--subst-var-by wrapperSiteLisp "$deps/share/emacs/site-lisp" \
--subst-var-by prog "$emacs/Applications/Emacs.app/Contents/MacOS/Emacs"
chmod +x $out/Applications/Emacs.app/Contents/MacOS/Emacs
makeWrapper $emacs/Applications/Emacs.app/Contents/MacOS/Emacs $out/Applications/Emacs.app/Contents/MacOS/Emacs \
--suffix EMACSLOADPATH ":" "$deps/share/emacs/site-lisp:" \
--suffix EMACSNATIVELOADPATH ":" "$deps/share/emacs/native-lisp:"
fi
mkdir -p $out/share

View file

@ -44,7 +44,6 @@
, libsecret
, libcap_ng
, numactl
, xen
, libapparmor
, json-glib
, webkitgtk
@ -117,7 +116,6 @@ stdenv.mkDerivation rec {
tracker-miners
vte
webkitgtk
xen
yajl
];

View file

@ -0,0 +1,42 @@
{ stdenv, fetchFromGitHub, gcc }:
stdenv.mkDerivation rec {
pname = "cakelisp";
version = "0.1.0";
src = fetchFromGitHub {
owner = "makuto";
repo = "cakelisp";
rev = "v${version}";
sha256 = "126va59jy7rvy6c2wrf8j44m307f2d8jixqkc49s9wllxprj1dmg";
};
buildInputs = [ gcc ];
postPatch = ''
substituteInPlace runtime/HotReloading.cake \
--replace '"/usr/bin/g++"' '"${gcc}/bin/g++"'
substituteInPlace src/ModuleManager.cpp \
--replace '"/usr/bin/g++"' '"${gcc}/bin/g++"'
'' + stdenv.lib.optionalString stdenv.isDarwin ''
substituteInPlace Build.sh --replace '--export-dynamic' '-export_dynamic'
substituteInPlace runtime/HotReloading.cake --replace '--export-dynamic' '-export_dynamic'
substituteInPlace Bootstrap.cake --replace '--export-dynamic' '-export_dynamic'
'';
buildPhase = ''
./Build.sh
'';
installPhase = ''
install -Dm755 bin/cakelisp -t $out/bin
'';
meta = with stdenv.lib; {
description = "A performance-oriented Lisp-like language";
homepage = "https://github.com/makuto/cakelisp";
license = licenses.gpl3Plus;
platforms = platforms.darwin ++ platforms.linux;
maintainers = [ maintainers.sbond75 ];
};
}

View file

@ -9,11 +9,11 @@
stdenv.mkDerivation rec {
pname = "computecpp";
version = "2.2.1";
version = "2.3.0";
src = fetchzip {
url = "https://computecpp.codeplay.com/downloads/computecpp-ce/${version}/x86_64-linux-gnu.tar.gz";
hash = "sha256-niXNWbkXjd35col6dS66HdxFurXfJw/Xb2c5njukxcg=";
hash = "sha256-AUHSls4BOX20PVKzDAp3RqpeRDwgbgYzz6CRvRN+kdk=";
stripRoot = true;
};

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "doctest";
version = "2.4.1";
version = "2.4.4";
src = fetchFromGitHub {
owner = "onqtam";
repo = "doctest";
rev = version;
sha256 = "17g7n6rjs90i0b231x5s934qnr8m80ga2yg1z344bnsdiqcjd63w";
hash = "sha256-NqXC5948prTCi4gsaR8bJPBTrmH+rJbHsGvwkJlpjXY=";
};
nativeBuildInputs = [ cmake ];

View file

@ -17,6 +17,10 @@ stdenv.mkDerivation rec {
pname = "libplacebo";
version = "2.72.2";
patches = [
./glsl-import.patch
];
src = fetchFromGitLab {
domain = "code.videolan.org";
owner = "videolan";

View file

@ -0,0 +1,13 @@
diff --git a/src/glsl/glslang.cc b/src/glsl/glslang.cc
index f701acc..c64cbf5 100644
--- a/src/glsl/glslang.cc
+++ b/src/glsl/glslang.cc
@@ -26,7 +26,7 @@ extern "C" {
#include <glslang/Include/ResourceLimits.h>
#include <glslang/Public/ShaderLang.h>
-#include <SPIRV/GlslangToSpv.h>
+#include <glslang/SPIRV/GlslangToSpv.h>
#include "glslang.h"

View file

@ -0,0 +1,28 @@
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "libschrift";
version = "0.9.1";
src = fetchFromGitHub {
owner = "tomolt";
repo = pname;
rev = "c6d20460d6e602e8829d3a227fd7be4c4c3cda86";
hash = "sha256-BuTmWaWFZ0DXujlbhbmK3Woit8fR9F4DWmKszHX6gOI=";
};
postPatch = ''
substituteInPlace config.mk \
--replace "PREFIX = /usr/local" "PREFIX = $out"
'';
makeFlags = [ "libschrift.a" ];
meta = with stdenv.lib; {
homepage = "https://github.com/tomolt/libschrift";
description = "A lightweight TrueType font rendering library";
license = licenses.isc;
platforms = platforms.all;
maintainers = [ maintainers.sternenseemann ];
};
}

View file

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, qtbase, qtquick1, qmake, qtmultimedia, utmp }:
{ stdenv, fetchFromGitHub, qtbase, qtquick1, qmake, qtmultimedia, utmp, fetchpatch }:
stdenv.mkDerivation {
version = "2018-11-24";
@ -15,7 +15,15 @@ stdenv.mkDerivation {
++ stdenv.lib.optional stdenv.isDarwin utmp;
nativeBuildInputs = [ qmake ];
patchPhase = ''
patches = [
(fetchpatch {
name = "fix-missing-includes.patch";
url = "https://github.com/Swordfish90/qmltermwidget/pull/27/commits/485f8d6d841b607ba49e55a791f7f587e4e193bc.diff";
sha256 = "186s8pv3642vr4lxsds919h0y2vrkl61r7wqq9mc4a5zk5vprinj";
})
];
postPatch = ''
substituteInPlace qmltermwidget.pro \
--replace '$$[QT_INSTALL_QML]' "/$qtQmlPrefix/"
'';

View file

@ -0,0 +1,26 @@
{ aiohttp, buildPythonPackage, fetchPypi, lib, pythonOlder }:
buildPythonPackage rec {
pname = "advantage_air";
version = "0.2.2";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit version pname;
sha256 = "04q2sjw9r50c00m4sfv98w9cwmmr970830c97m32p5j8ijb10j5x";
};
propagatedBuildInputs = [ aiohttp ];
# No tests
doCheck = false;
pythonImportsCheck = [ "advantage_air" ];
meta = with lib; {
description = "API helper for Advantage Air's MyAir and e-zone API";
homepage = "https://github.com/Bre77/advantage_air";
license = licenses.mit;
maintainers = with maintainers; [ jamiemagee ];
};
}

View file

@ -0,0 +1,37 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, mock
, nose
, pyserial
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "pylacrosse";
version = "0.4";
src = fetchFromGitHub {
owner = "hthiery";
repo = "python-lacrosse";
rev = version;
sha256 = "0g5hqm8lq0gsnvhcydjk54rjf7lpxzph8k7w1nnvnqfbhf31xfcf";
};
propagatedBuildInputs = [ pyserial ];
checkInputs = [
mock
nose
pytestCheckHook
];
pythonImportsCheck = [ "pylacrosse" ];
meta = with lib; {
description = "Python library for Jeelink LaCrosse";
homepage = "https://github.com/hthiery/python-lacrosse";
license = with licenses; [ lgpl2Plus ];
maintainers = with maintainers; [ fab ];
};
}

View file

@ -1,30 +0,0 @@
{ stdenv, fetchPypi, buildPythonPackage
, numpy
, absl-py
, mock
}:
buildPythonPackage rec {
pname = "tensorflow-estimator";
# This is effectively 1.15.0. Upstream tagged 1.15.0 by mistake before
# actually updating the version in setup.py, which is why this tag is called
# 1.15.1.
version = "1.15.1";
format = "wheel";
src = fetchPypi {
pname = "tensorflow_estimator";
inherit version format;
sha256 = "1fc61wmc0w22frs79j2x4g6wnv5g21xc6rix1g4bsvy9qfvvylw8";
};
propagatedBuildInputs = [ mock numpy absl-py ];
meta = with stdenv.lib; {
description = "TensorFlow Estimator is a high-level API that encapsulates model training, evaluation, prediction, and exporting.";
homepage = "http://tensorflow.org";
license = licenses.asl20;
maintainers = with maintainers; [ jyp ];
};
}

View file

@ -1,120 +0,0 @@
{ stdenv
, lib
, fetchurl
, buildPythonPackage
, isPy3k, pythonOlder, pythonAtLeast
, astor
, gast
, google-pasta
, wrapt
, numpy
, six
, termcolor
, protobuf
, absl-py
, grpcio
, mock
, backports_weakref
, tensorflow-estimator_1
, tensorflow-tensorboard
, cudaSupport ? false
, cudatoolkit ? null
, cudnn ? null
, nvidia_x11 ? null
, zlib
, python
, symlinkJoin
, keras-applications
, keras-preprocessing
, addOpenGLRunpath
}:
# We keep this binary build for two reasons:
# - the source build doesn't work on Darwin.
# - the source build is currently brittle and not easy to maintain
assert cudaSupport -> cudatoolkit != null
&& cudnn != null
&& nvidia_x11 != null;
# unsupported combination
assert ! (stdenv.isDarwin && cudaSupport);
let
packages = import ./binary-hashes.nix;
variant = if cudaSupport then "-gpu" else "";
pname = "tensorflow${variant}";
in buildPythonPackage {
inherit pname;
inherit (packages) version;
format = "wheel";
disabled = pythonAtLeast "3.8";
src = let
pyVerNoDot = lib.strings.stringAsChars (x: if x == "." then "" else x) python.pythonVersion;
pyver = if stdenv.isDarwin then builtins.substring 0 1 pyVerNoDot else pyVerNoDot;
platform = if stdenv.isDarwin then "mac" else "linux";
unit = if cudaSupport then "gpu" else "cpu";
key = "${platform}_py_${pyver}_${unit}";
in fetchurl packages.${key};
propagatedBuildInputs = [
protobuf
numpy
termcolor
grpcio
six
astor
absl-py
gast
google-pasta
wrapt
tensorflow-estimator_1
tensorflow-tensorboard
keras-applications
keras-preprocessing
] ++ lib.optional (!isPy3k) mock
++ lib.optionals (pythonOlder "3.4") [ backports_weakref ];
nativeBuildInputs = lib.optional cudaSupport addOpenGLRunpath;
# Upstream has a pip hack that results in bin/tensorboard being in both tensorflow
# and the propageted input tensorflow-tensorboard which causes environment collisions.
# another possibility would be to have tensorboard only in the buildInputs
# https://github.com/tensorflow/tensorflow/blob/v1.7.1/tensorflow/tools/pip_package/setup.py#L79
postInstall = ''
rm $out/bin/tensorboard
'';
# Note that we need to run *after* the fixup phase because the
# libraries are loaded at runtime. If we run in preFixup then
# patchelf --shrink-rpath will remove the cuda libraries.
postFixup = let
rpath = stdenv.lib.makeLibraryPath
([ stdenv.cc.cc.lib zlib ] ++ lib.optionals cudaSupport [ cudatoolkit.out cudatoolkit.lib cudnn nvidia_x11 ]);
in
lib.optionalString stdenv.isLinux ''
rrPath="$out/${python.sitePackages}/tensorflow/:$out/${python.sitePackages}/tensorflow/contrib/tensor_forest/:${rpath}"
internalLibPath="$out/${python.sitePackages}/tensorflow/python/_pywrap_tensorflow_internal.so"
find $out -type f \( -name '*.so' -or -name '*.so.*' \) | while read lib; do
patchelf --set-rpath "$rrPath" "$lib"
${lib.optionalString cudaSupport ''
addOpenGLRunpath "$lib"
''}
done
'';
meta = with stdenv.lib; {
description = "Computation using data flow graphs for scalable machine learning";
homepage = "http://tensorflow.org";
license = licenses.asl20;
maintainers = with maintainers; [ jyp abbradar ];
platforms = [ "x86_64-linux" "x86_64-darwin" ];
# Python 2.7 build uses different string encoding.
# See https://github.com/NixOS/nixpkgs/pull/37044#issuecomment-373452253
broken = stdenv.isDarwin && !isPy3k;
};
}

View file

@ -1,43 +0,0 @@
{
version = "1.14.0";
linux_py_27_cpu = {
url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.14.0-cp27-none-linux_x86_64.whl";
sha256 = "0yywdrfk97dh1bxhibspg0raz70fx9lcczj6xlimqy4xb60clx7k";
};
linux_py_35_cpu = {
url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.14.0-cp35-cp35m-linux_x86_64.whl";
sha256 = "1xvyb6xcrjhlwvrmrhn5vs9xy7g98smqmpv4i3hhpry4qyasphhj";
};
linux_py_36_cpu = {
url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.14.0-cp36-cp36m-linux_x86_64.whl";
sha256 = "1psd9vyxz9f39dwj77nvrg373sxv3p5vdp9fnz81dpsm0b0mwl44";
};
linux_py_37_cpu = {
url = "https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.14.0-cp37-cp37m-linux_x86_64.whl";
sha256 = "0bg2sb1n2ag27r7ww695kg5hb0mjrw4kc5893krmixx2j71860c5";
};
linux_py_27_gpu = {
url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.14.0-cp27-none-linux_x86_64.whl";
sha256 = "0y1x91gayg6pjddgl8ndcm63wfzhyv4s5khgl7ffzsgni1ivaqw5";
};
linux_py_35_gpu = {
url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.14.0-cp35-cp35m-linux_x86_64.whl";
sha256 = "03piggpbz1jx8m2b95spq3jrdff4w6xx63ji07am7hyw2nsgx3mx";
};
linux_py_36_gpu = {
url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.14.0-cp36-cp36m-linux_x86_64.whl";
sha256 = "0ypkp8cfhharsyyikb1qgf44cfm6284km9xswzvzymjzz75vg3gd";
};
linux_py_37_gpu = {
url = "https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.14.0-cp37-cp37m-linux_x86_64.whl";
sha256 = "0virp8nn2ysx4855hq29kas6fm6b3dsiybwzdxy9nnb9n2d8qlm2";
};
mac_py_2_cpu = {
url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.14.0-py2-none-any.whl";
sha256 = "14f86k3pgq7z6i4s4im55zpp38f0drnm7xlclavsgcc0nxnj3z26";
};
mac_py_3_cpu = {
url = "https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.14.0-py3-none-any.whl";
sha256 = "0f3swpcjfgqhj6h5wnx8snc0xjkx4hnkqx83fmlrwpncs8c131d3";
};
}

View file

@ -1,456 +0,0 @@
{ stdenv, pkgs, bazel_0_26, buildBazelPackage, lib, fetchFromGitHub, fetchpatch, symlinkJoin
, addOpenGLRunpath
# Python deps
, buildPythonPackage, isPy3k, isPy27, pythonOlder, pythonAtLeast, python
# Python libraries
, numpy, tensorflow-tensorboard_1, backports_weakref, mock, enum34, absl-py
, future, setuptools, wheel, keras-preprocessing, keras-applications, google-pasta
, functools32
, opt-einsum
, termcolor, grpcio, six, wrapt, protobuf, tensorflow-estimator_1
# Common deps
, git, swig, which, binutils, glibcLocales, cython
# Common libraries
, jemalloc, openmpi, astor, gast, grpc, sqlite, openssl, jsoncpp, re2
, curl, snappy, flatbuffers, icu, double-conversion, libpng, libjpeg, giflib
# Upsteam by default includes cuda support since tensorflow 1.15. We could do
# that in nix as well. It would make some things easier and less confusing, but
# it would also make the default tensorflow package unfree. See
# https://groups.google.com/a/tensorflow.org/forum/#!topic/developers/iRCt5m4qUz0
, cudaSupport ? false, nvidia_x11 ? null, cudatoolkit ? null, cudnn ? null, nccl ? null
, mklSupport ? false, mkl ? null
# XLA without CUDA is broken
, xlaSupport ? cudaSupport
# Default from ./configure script
, cudaCapabilities ? [ "3.5" "5.2" ]
, sse42Support ? stdenv.hostPlatform.sse4_2Support
, avx2Support ? stdenv.hostPlatform.avx2Support
, fmaSupport ? stdenv.hostPlatform.fmaSupport
# Darwin deps
, Foundation, Security
}:
assert cudaSupport -> nvidia_x11 != null
&& cudatoolkit != null
&& cudnn != null;
# unsupported combination
assert ! (stdenv.isDarwin && cudaSupport);
assert mklSupport -> mkl != null;
let
withTensorboard = pythonOlder "3.6";
cudatoolkit_joined = symlinkJoin {
name = "${cudatoolkit.name}-merged";
paths = [
cudatoolkit.lib
cudatoolkit.out
# for some reason some of the required libs are in the targets/x86_64-linux
# directory; not sure why but this works around it
"${cudatoolkit}/targets/${stdenv.system}"
];
};
cudatoolkit_cc_joined = symlinkJoin {
name = "${cudatoolkit.cc.name}-merged";
paths = [
cudatoolkit.cc
binutils.bintools # for ar, dwp, nm, objcopy, objdump, strip
];
};
# Needed for _some_ system libraries, grep INCLUDEDIR.
includes_joined = symlinkJoin {
name = "tensorflow-deps-merged";
paths = [
pkgs.protobuf
jsoncpp
];
};
tfFeature = x: if x then "1" else "0";
version = "1.15.4";
variant = if cudaSupport then "-gpu" else "";
pname = "tensorflow${variant}";
pythonEnv = python.withPackages (_:
[ # python deps needed during wheel build time (not runtime, see the buildPythonPackage part for that)
numpy
keras-preprocessing
protobuf
wrapt
gast
astor
absl-py
termcolor
keras-applications
setuptools
wheel
] ++ lib.optionals (!isPy3k)
[ future
functools32
mock
]);
bazel-build = buildBazelPackage {
name = "${pname}-${version}";
bazel = bazel_0_26;
src = fetchFromGitHub {
owner = "tensorflow";
repo = "tensorflow";
rev = "v${version}";
sha256 = "0lg8ahyr2k7dmp0yfypk8ivl9a0xcg3j0f0dakmn5ljk8nsji0bj";
};
patches = [
# Work around https://github.com/tensorflow/tensorflow/issues/24752
../no-saved-proto.patch
# Fixes for NixOS jsoncpp
../system-jsoncpp.patch
# https://github.com/tensorflow/tensorflow/pull/29673
(fetchpatch {
name = "fix-compile-with-cuda-and-mpi.patch";
url = "https://github.com/tensorflow/tensorflow/pull/29673/commits/498e35a3bfe38dd75cf1416a1a23c07c3b59e6af.patch";
sha256 = "1m2qmwv1ysqa61z6255xggwbq6mnxbig749bdvrhnch4zydxb4di";
})
(fetchpatch {
name = "backport-pr-18950.patch";
url = "https://github.com/tensorflow/tensorflow/commit/73640aaec2ab0234d9fff138e3c9833695570c0a.patch";
sha256 = "1n9ypbrx36fc1kc9cz5b3p9qhg15xxhq4nz6ap3hwqba535nakfz";
})
(fetchpatch {
# be compatible with gast >0.2 instead of only gast 0.2.2
name = "gast-update.patch";
url = "https://github.com/tensorflow/tensorflow/commit/85751ad6c7f5fd12c6c79545d96896cba92fa8b4.patch";
sha256 = "077cpj0kzyqxzdya1dwh8df17zfzhqn7c685hx6iskvw2979zg2n";
})
./lift-gast-restriction.patch
(fetchpatch {
# fix compilation with numpy >= 1.19
name = "add-const-overload.patch";
url = "https://github.com/tensorflow/tensorflow/commit/75ea0b31477d6ba9e990e296bbbd8ca4e7eebadf.patch";
sha256 = "1xp1icacig0xm0nmb05sbrf4nw4xbln9fhc308birrv8286zx7wv";
})
# cuda 10.2 does not have "-bin2c-path" option anymore
# https://github.com/tensorflow/tensorflow/issues/34429
../cuda-10.2-no-bin2c-path.patch
];
# On update, it can be useful to steal the changes from gentoo
# https://gitweb.gentoo.org/repo/gentoo.git/tree/sci-libs/tensorflow
nativeBuildInputs = [
swig which pythonEnv
] ++ lib.optional cudaSupport addOpenGLRunpath;
buildInputs = [
jemalloc
openmpi
glibcLocales
git
# libs taken from system through the TF_SYS_LIBS mechanism
# grpc
sqlite
openssl
jsoncpp
pkgs.protobuf
curl
snappy
flatbuffers
icu
double-conversion
libpng
libjpeg
giflib
re2
pkgs.lmdb
] ++ lib.optionals cudaSupport [
cudatoolkit
cudnn
nvidia_x11
] ++ lib.optionals mklSupport [
mkl
] ++ lib.optionals stdenv.isDarwin [
Foundation
Security
];
# arbitrarily set to the current latest bazel version, overly careful
TF_IGNORE_MAX_BAZEL_VERSION = true;
# Take as many libraries from the system as possible. Keep in sync with
# list of valid syslibs in
# https://github.com/tensorflow/tensorflow/blob/master/third_party/systemlibs/syslibs_configure.bzl
TF_SYSTEM_LIBS = lib.concatStringsSep "," [
"absl_py"
"astor_archive"
"boringssl"
# Not packaged in nixpkgs
# "com_github_googleapis_googleapis"
# "com_github_googlecloudplatform_google_cloud_cpp"
"com_google_protobuf"
"com_googlesource_code_re2"
"curl"
"cython"
"double_conversion"
"flatbuffers"
"gast_archive"
"gif_archive"
# Lots of errors, requires an older version
# "grpc"
"hwloc"
"icu"
"jpeg"
"jsoncpp_git"
"keras_applications_archive"
"lmdb"
"nasm"
# "nsync" # not packaged in nixpkgs
"opt_einsum_archive"
"org_sqlite"
"pasta"
"pcre"
"png_archive"
"six_archive"
"snappy"
"swig"
"termcolor_archive"
"wrapt"
"zlib_archive"
];
INCLUDEDIR = "${includes_joined}/include";
PYTHON_BIN_PATH = pythonEnv.interpreter;
TF_NEED_GCP = true;
TF_NEED_HDFS = true;
TF_ENABLE_XLA = tfFeature xlaSupport;
CC_OPT_FLAGS = " ";
# https://github.com/tensorflow/tensorflow/issues/14454
TF_NEED_MPI = tfFeature cudaSupport;
TF_NEED_CUDA = tfFeature cudaSupport;
TF_CUDA_PATHS = lib.optionalString cudaSupport "${cudatoolkit_joined},${cudnn},${nccl}";
GCC_HOST_COMPILER_PREFIX = lib.optionalString cudaSupport "${cudatoolkit_cc_joined}/bin";
GCC_HOST_COMPILER_PATH = lib.optionalString cudaSupport "${cudatoolkit_cc_joined}/bin/gcc";
TF_CUDA_COMPUTE_CAPABILITIES = lib.concatStringsSep "," cudaCapabilities;
postPatch = ''
# https://github.com/tensorflow/tensorflow/issues/20919
sed -i '/androidndk/d' tensorflow/lite/kernels/internal/BUILD
# Tensorboard pulls in a bunch of dependencies, some of which may
# include security vulnerabilities. So we make it optional.
# https://github.com/tensorflow/tensorflow/issues/20280#issuecomment-400230560
sed -i '/tensorboard >=/d' tensorflow/tools/pip_package/setup.py
substituteInPlace tensorflow/tools/pip_package/setup.py \
--replace "numpy >= 1.16.0, < 1.19.0" "numpy >= 1.16.0"
# glibc 2.31+ does not have sys/sysctl.h
# see https://github.com/tensorflow/tensorflow/issues/45861
substituteInPlace third_party/hwloc/BUILD.bazel\
--replace "#define HAVE_SYS_SYSCTL_H 1" "#undef HAVE_SYS_SYSCTL_H"
'';
preConfigure = let
opt_flags = []
++ lib.optionals sse42Support ["-msse4.2"]
++ lib.optionals avx2Support ["-mavx2"]
++ lib.optionals fmaSupport ["-mfma"];
in ''
patchShebangs configure
# dummy ldconfig
mkdir dummy-ldconfig
echo "#!${stdenv.shell}" > dummy-ldconfig/ldconfig
chmod +x dummy-ldconfig/ldconfig
export PATH="$PWD/dummy-ldconfig:$PATH"
export PYTHON_LIB_PATH="$NIX_BUILD_TOP/site-packages"
export CC_OPT_FLAGS="${lib.concatStringsSep " " opt_flags}"
mkdir -p "$PYTHON_LIB_PATH"
# To avoid mixing Python 2 and Python 3
unset PYTHONPATH
'';
configurePhase = ''
runHook preConfigure
./configure
runHook postConfigure
'';
# FIXME: Tensorflow uses dlopen() for CUDA libraries.
NIX_LDFLAGS = lib.optionalString cudaSupport "-lcudart -lcublas -lcufft -lcurand -lcusolver -lcusparse -lcudnn";
hardeningDisable = [ "format" ];
bazelFlags = [
# temporary fixes to make the build work with bazel 0.27
"--incompatible_no_support_tools_in_action_inputs=false"
];
bazelBuildFlags = [
"--config=opt" # optimize using the flags set in the configure phase
]
++ lib.optionals (mklSupport) [ "--config=mkl" ];
bazelTarget = "//tensorflow/tools/pip_package:build_pip_package //tensorflow/tools/lib_package:libtensorflow";
fetchAttrs = {
# So that checksums don't depend on these.
TF_SYSTEM_LIBS = null;
# cudaSupport causes fetch of ncclArchive, resulting in different hashes
sha256 = if cudaSupport then
"1bi6aydidgi943hiqj0d279jbz2g173hvafdqla1ifw2qdsm73pb"
else
"0l5510fr8n22c4hx9llr0vqqhx9wlgkyxl55fxbixhssd0ai05r4";
};
buildAttrs = {
outputs = [ "out" "python" ];
preBuild = ''
patchShebangs .
'';
installPhase = ''
mkdir -p "$out"
tar -xf bazel-bin/tensorflow/tools/lib_package/libtensorflow.tar.gz -C "$out"
# Write pkgconfig file.
mkdir "$out/lib/pkgconfig"
cat > "$out/lib/pkgconfig/tensorflow.pc" << EOF
Name: TensorFlow
Version: ${version}
Description: Library for computation using data flow graphs for scalable machine learning
Requires:
Libs: -L$out/lib -ltensorflow
Cflags: -I$out/include/tensorflow
EOF
# build the source code, then copy it to $python (build_pip_package
# actually builds a symlink farm so we must dereference them).
bazel-bin/tensorflow/tools/pip_package/build_pip_package --src "$PWD/dist"
cp -Lr "$PWD/dist" "$python"
'';
postFixup = lib.optionalString cudaSupport ''
find $out -type f \( -name '*.so' -or -name '*.so.*' \) | while read lib; do
addOpenGLRunpath "$lib"
done
'';
};
meta = with stdenv.lib; {
description = "Computation using data flow graphs for scalable machine learning";
homepage = "http://tensorflow.org";
license = licenses.asl20;
maintainers = with maintainers; [ jyp abbradar ];
platforms = with platforms; linux ++ darwin;
# The py2 build fails due to some issue importing protobuf. Possibly related to the fix in
# https://github.com/akesandgren/easybuild-easyblocks/commit/1f2e517ddfd1b00a342c6abb55aef3fd93671a2b
broken = !(xlaSupport -> cudaSupport) || !isPy3k;
};
};
in buildPythonPackage {
inherit version pname;
disabled = isPy27 || (pythonAtLeast "3.8");
src = bazel-build.python;
# Upstream has a pip hack that results in bin/tensorboard being in both tensorflow
# and the propagated input tensorflow-tensorboard, which causes environment collisions.
# Another possibility would be to have tensorboard only in the buildInputs
# https://github.com/tensorflow/tensorflow/blob/v1.7.1/tensorflow/tools/pip_package/setup.py#L79
postInstall = ''
rm $out/bin/tensorboard
'';
setupPyGlobalFlags = [ "--project_name ${pname}" ];
# tensorflow/tools/pip_package/setup.py
propagatedBuildInputs = [
absl-py
astor
gast
google-pasta
keras-applications
keras-preprocessing
numpy
six
protobuf
tensorflow-estimator_1
termcolor
wrapt
grpcio
opt-einsum
] ++ lib.optionals (!isPy3k) [
mock
future
functools32
] ++ lib.optionals (pythonOlder "3.4") [
backports_weakref enum34
] ++ lib.optionals withTensorboard [
tensorflow-tensorboard_1
];
nativeBuildInputs = lib.optional cudaSupport addOpenGLRunpath;
postFixup = lib.optionalString cudaSupport ''
find $out -type f \( -name '*.so' -or -name '*.so.*' \) | while read lib; do
addOpenGLRunpath "$lib"
done
'';
# Actual tests are slow and impure.
# TODO try to run them anyway
# TODO better test (files in tensorflow/tools/ci_build/builds/*test)
checkPhase = ''
${python.interpreter} <<EOF
# A simple "Hello world"
import tensorflow as tf
hello = tf.constant("Hello, world!")
sess = tf.Session()
sess.run(hello)
# Fit a simple model to random data
import numpy as np
np.random.seed(0)
tf.random.set_random_seed(0)
model = tf.keras.models.Sequential([
tf.keras.layers.Dense(1, activation="linear")
])
model.compile(optimizer="sgd", loss="mse")
x = np.random.uniform(size=(1,1))
y = np.random.uniform(size=(1,))
model.fit(x, y, epochs=1)
# regression test for #77626
from tensorflow.contrib import tensor_forest
EOF
'';
passthru = {
deps = bazel-build.deps;
libtensorflow = bazel-build.out;
};
meta = bazel-build.meta // {
broken = gast.version != "0.3.2";
};
}

View file

@ -1,13 +0,0 @@
diff --git a/tensorflow/tools/pip_package/setup.py b/tensorflow/tools/pip_package/setup.py
index 992f2eae22..d9386f9b13 100644
--- a/tensorflow/tools/pip_package/setup.py
+++ b/tensorflow/tools/pip_package/setup.py
@@ -54,7 +54,7 @@ REQUIRED_PACKAGES = [
'enum34 >= 1.1.6;python_version<"3.4"',
# functools comes with python3, need to install the backport for python2
'functools32 >= 3.2.3;python_version<"3"',
- 'gast == 0.2.2',
+ 'gast >= 0.2.2',
'google_pasta >= 0.1.6',
'keras_applications >= 1.0.8',
'keras_preprocessing >= 1.0.5',

View file

@ -1,33 +0,0 @@
#!/usr/bin/env bash
version=1.14.0
hashfile=binary-hashes.nix
rm -f $hashfile
echo "{" >> $hashfile
echo "version = \"$version\";" >> $hashfile
for sys in "linux" "mac"; do
for tfpref in "cpu/tensorflow" "gpu/tensorflow_gpu"; do
for pykind in "py2-none-any" "py3-none-any" "cp27-none-linux_x86_64" "cp35-cp35m-linux_x86_64" "cp36-cp36m-linux_x86_64" "cp37-cp37m-linux_x86_64"; do
if [ $sys == "mac" ]; then
[[ $pykind =~ py.* ]] && [[ $tfpref =~ cpu.* ]]
result=$?
pyver=${pykind:2:1}
flavour=cpu
else
[[ $pykind =~ .*linux.* ]]
result=$?
pyver=${pykind:2:2}
flavour=${tfpref:0:3}
fi
if [ $result == 0 ]; then
url=https://storage.googleapis.com/tensorflow/$sys/$tfpref-$version-$pykind.whl
hash=$(nix-prefetch-url $url)
echo "${sys}_py_${pyver}_${flavour} = {" >> $hashfile
echo " url = \"$url\";" >> $hashfile
echo " sha256 = \"$hash\";" >> $hashfile
echo "};" >> $hashfile
fi
done
done
done
echo "}" >> $hashfile

View file

@ -1,10 +0,0 @@
--- a/third_party/nccl/build_defs.bzl.tpl
+++ b/third_party/nccl/build_defs.bzl.tpl
@@ -113,7 +113,6 @@ def _device_link_impl(ctx):
"--cmdline=--compile-only",
"--link",
"--compress-all",
- "--bin2c-path=%s" % bin2c.dirname,
"--create=%s" % tmp_fatbin.path,
"--embedded-fatbin=%s" % fatbin_h.path,
] + images,

View file

@ -72,7 +72,7 @@ let
tfFeature = x: if x then "1" else "0";
version = "2.3.1";
version = "2.3.2";
variant = if cudaSupport then "-gpu" else "";
pname = "tensorflow${variant}";
@ -103,12 +103,12 @@ let
owner = "tensorflow";
repo = "tensorflow";
rev = "v${version}";
sha256 = "1lvmrqfnwzh24fl5rdkksiqfv2bn0ld5gvzq1z57rphfkf0zg996";
sha256 = "sha256-ncwIkqLDqrB33pB9/FTlBklsIJUEvnDUmyAeUfufCFs=";
};
patches = [
# Fixes for NixOS jsoncpp
../system-jsoncpp.patch
./system-jsoncpp.patch
./relax-dependencies.patch
@ -236,6 +236,9 @@ let
rm -f .bazelversion
'';
# https://github.com/tensorflow/tensorflow/pull/39470
NIX_CFLAGS_COMPILE = [ "-Wno-stringop-truncation" ];
preConfigure = let
opt_flags = []
++ lib.optionals sse42Support ["-msse4.2"]
@ -281,9 +284,9 @@ let
# cudaSupport causes fetch of ncclArchive, resulting in different hashes
sha256 = if cudaSupport then
"11blnw3ghp1kdi9hh9pdqa4qni9ysc3nk9iqqk9bg4dlr9zl1yld"
"sha256-lEdPA9vhYO6vd5FgPMbFp2PkRvDBurPidYsxtJLXcbQ="
else
"1kkghhwhl8frs68kv28r408lps7mpgq1xvq6hc3k0j35asv1g2kc";
"sha256-ZEY/bWo5M3Juw1x3CwhXYXZHD4q5LzWDlhgXnh4P95U=";
};
buildAttrs = {

View file

@ -1,14 +0,0 @@
diff --git a/tensorflow/cc/saved_model/BUILD b/tensorflow/cc/saved_model/BUILD
index 8626ed0087..27deb34387 100644
--- a/tensorflow/cc/saved_model/BUILD
+++ b/tensorflow/cc/saved_model/BUILD
@@ -49,9 +49,6 @@ cc_library(
# tf_lib depending on the build platform.
"//tensorflow/core:lib",
"//tensorflow/core:protos_all_cc",
- ]) + if_mobile([
- # Mobile-friendly SavedModel proto. See go/portable-proto for more info.
- "//tensorflow/core:saved_model_portable_proto",
]) + if_android([
"//tensorflow/core:android_tensorflow_lib",
]) + if_ios([

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, liburcu, python }:
{ stdenv, fetchurl, liburcu, python3 }:
# NOTE:
# ./configure ...
@ -20,12 +20,12 @@ stdenv.mkDerivation rec {
sha256 = "0ddwk0nl28bkv2xb78gz16a2bvlpfbjmzwfbgwf5p1cq46dyvy86";
};
buildInputs = [ python ];
buildInputs = [ python3 ];
preConfigure = ''
patchShebangs .
'';
propagatedBuildInputs = [ liburcu ];
meta = with stdenv.lib; {

View file

@ -2,25 +2,25 @@ GEM
remote: https://rubygems.org/
specs:
ast (2.4.1)
parallel (1.19.2)
parser (2.7.2.0)
parallel (1.20.1)
parser (3.0.0.0)
ast (~> 2.4.1)
rainbow (3.0.0)
regexp_parser (1.8.2)
regexp_parser (2.0.3)
rexml (3.2.4)
rubocop (1.1.0)
rubocop (1.8.0)
parallel (~> 1.10)
parser (>= 2.7.1.5)
parser (>= 3.0.0.0)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 1.8)
regexp_parser (>= 1.8, < 3.0)
rexml
rubocop-ast (>= 1.0.1)
rubocop-ast (>= 1.2.0, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 1.4.0, < 2.0)
rubocop-ast (1.1.0)
unicode-display_width (>= 1.4.0, < 3.0)
rubocop-ast (1.4.0)
parser (>= 2.7.1.5)
ruby-progressbar (1.10.1)
unicode-display_width (1.7.0)
ruby-progressbar (1.11.0)
unicode-display_width (2.0.0)
PLATFORMS
ruby

View file

@ -14,10 +14,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "17b127xxmm2yqdz146qwbs57046kn0js1h8synv01dwqz2z1kp2l";
sha256 = "0055br0mibnqz0j8wvy20zry548dhkakws681bhj3ycb972awkzd";
type = "gem";
};
version = "1.19.2";
version = "1.20.1";
};
parser = {
dependencies = ["ast"];
@ -25,10 +25,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1f7gmm60yla325wlnd3qkxs59qm2y0aan8ljpg6k18rwzrrfil6z";
sha256 = "1jixakyzmy0j5c1rb0fjrrdhgnyryvrr6vgcybs14jfw09akv5ml";
type = "gem";
};
version = "2.7.2.0";
version = "3.0.0.0";
};
rainbow = {
groups = ["default"];
@ -45,10 +45,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0x4s82lgf0l71y3xc9gp4qxkrgx1kv8f6avdqd68l46ijbyvicdm";
sha256 = "0zm86k9q8m5jkcnpb1f93wsvc57saldfj8czxkx1aw031i95inip";
type = "gem";
};
version = "1.8.2";
version = "2.0.3";
};
rexml = {
groups = ["default"];
@ -66,10 +66,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1nw87ngw4a9r3dpgykb872zcm640m7k0nk17qv537fmss2hl8shl";
sha256 = "12arfnsj32126ps6mxbn7dwrw43cy70sq45rm0ib7qfrmhp5qyid";
type = "gem";
};
version = "1.1.0";
version = "1.8.0";
};
rubocop-ast = {
dependencies = ["parser"];
@ -77,29 +77,29 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0ami6n3vnpm9y5z6wd4c6y2infijajizjjwv8fq0wrcjvr3zivzz";
sha256 = "1qvfp567aprjgcwj757p55ynj0dx2b3c3hd76za9z3c43sphprcj";
type = "gem";
};
version = "1.1.0";
version = "1.4.0";
};
ruby-progressbar = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1k77i0d4wsn23ggdd2msrcwfy0i376cglfqypkk2q77r2l3408zf";
sha256 = "02nmaw7yx9kl7rbaan5pl8x5nn0y4j5954mzrkzi9i3dhsrps4nc";
type = "gem";
};
version = "1.10.1";
version = "1.11.0";
};
unicode-display_width = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "06i3id27s60141x6fdnjn5rar1cywdwy64ilc59cz937303q3mna";
sha256 = "1bilbnc8j6jkb59lrf177i3p1pdyxll0n8400hzqr35vl3r3kv2m";
type = "gem";
};
version = "1.7.0";
version = "2.0.0";
};
}

View file

@ -18,7 +18,7 @@ mkDerivation rec {
meta = {
homepage = "https://gitlab.com/sdcofer70/enyo-doom";
description = "Frontend for Doom engines";
license = stdenv.lib.licenses.gpl2;
license = stdenv.lib.licenses.gpl3Plus;
platforms = stdenv.lib.platforms.unix;
maintainers = [ stdenv.lib.maintainers.tadfisher ];
};

View file

@ -1,25 +1,30 @@
{
"4.14": {
"extra": "",
"name": "linux-hardened-4.14.213.a.patch",
"sha256": "0lkjgg6cbsaiypxij7p00q3y094qf0h172hc2p7wgy39777b45a7",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/4.14.213.a/linux-hardened-4.14.213.a.patch"
},
"4.19": {
"extra": ".a",
"name": "linux-hardened-4.19.165.a.patch",
"sha256": "06v34jaj4jg6f3v05wbkkfnr69ahxqyyq0gam4ma3wgm74x6cf3s",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.165.a/linux-hardened-4.19.165.a.patch"
},
"5.10": {
"extra": ".a",
"name": "linux-hardened-5.10.5.a.patch",
"sha256": "1fq2n60brhi6wjazkdgj2aqc4maskvlymbznl03hvj0x5kahjxvx",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.5.a/linux-hardened-5.10.5.a.patch"
},
"5.4": {
"extra": ".a",
"name": "linux-hardened-5.4.87.a.patch",
"sha256": "01hpww6lm00iry8z4z86hh86x66h3xbmxknxhmmhh2zwz6ahkmfd",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.87.a/linux-hardened-5.4.87.a.patch"
},
"5.9": {
"extra": "",
"name": "linux-hardened-5.9.16.a.patch",
"sha256": "024wdzc9bwgr4nd4z0l6bazcl35jczhsmdl2lb26bvffjwg207rw",
"url": "https://github.com/anthraxx/linux-hardened/releases/download/5.9.16.a/linux-hardened-5.9.16.a.patch"

View file

@ -31,7 +31,7 @@ VersionComponent = Union[int, str]
Version = List[VersionComponent]
Patch = TypedDict("Patch", {"name": str, "url": str, "sha256": str})
Patch = TypedDict("Patch", {"name": str, "url": str, "sha256": str, "extra": str})
@dataclass
@ -99,7 +99,10 @@ def verify_openpgp_signature(
return False
def fetch_patch(*, name: str, release: GitRelease) -> Optional[Patch]:
def fetch_patch(*, name: str, release_info: ReleaseInfo) -> Optional[Patch]:
release = release_info.release
extra = f'.{release_info.version[-1]}'
def find_asset(filename: str) -> str:
try:
it: Iterator[str] = (
@ -130,7 +133,7 @@ def fetch_patch(*, name: str, release: GitRelease) -> Optional[Patch]:
if not sig_ok:
return None
return Patch(name=patch_filename, url=patch_url, sha256=sha256)
return Patch(name=patch_filename, url=patch_url, sha256=sha256, extra=extra)
def parse_version(version_str: str) -> Version:
@ -252,7 +255,7 @@ for kernel_key in sorted(releases.keys()):
update = True
if update:
patch = fetch_patch(name=name, release=release)
patch = fetch_patch(name=name, release_info=release_info)
if patch is None:
failures = True
else:

View file

@ -41,7 +41,8 @@
hardened = let
mkPatch = kernelVersion: src: {
name = lib.removeSuffix ".patch" src.name;
patch = fetchurl src;
patch = fetchurl (lib.filterAttrs (k: v: k != "extra") src);
extra = src.extra;
};
patches = builtins.fromJSON (builtins.readFile ./hardened/patches.json);
in lib.mapAttrs mkPatch patches;

View file

@ -0,0 +1,30 @@
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "pcimem";
version = "unstable-2018-08-29";
src = fetchFromGitHub {
owner = "billfarrow";
repo = pname;
rev = "09724edb1783a98da2b7ae53c5aaa87493aabc9b";
sha256 = "0zlbvcl5q4hgna11p3w00px1p8qgn8ga79lh6a2m7d597g86kbq3";
};
outputs = [ "out" "doc" ];
makeFlags = [ "CFLAGS=-Wno-maybe-uninitialized" ];
installPhase = ''
install -D pcimem "$out/bin/pcimem"
install -D README "$doc/doc/README"
'';
meta = with stdenv.lib; {
description = "Simple method of reading and writing to memory registers on a PCI card";
homepage = "https://github.com/billfarrow/pcimem";
license = licenses.gpl2Only;
platforms = platforms.linux;
maintainers = with maintainers; [ mafo ];
};
}

View file

@ -11,7 +11,7 @@
"actiontec" = ps: with ps; [ ];
"adguard" = ps: with ps; [ adguardhome ];
"ads" = ps: with ps; [ pyads ];
"advantage_air" = ps: with ps; [ ]; # missing inputs: advantage_air
"advantage_air" = ps: with ps; [ advantage_air ];
"aftership" = ps: with ps; [ pyaftership ];
"agent_dvr" = ps: with ps; [ ]; # missing inputs: agent-py
"air_quality" = ps: with ps; [ ];
@ -423,7 +423,7 @@
"konnected" = ps: with ps; [ aiohttp-cors ]; # missing inputs: konnected
"kulersky" = ps: with ps; [ ]; # missing inputs: pykulersky
"kwb" = ps: with ps; [ ]; # missing inputs: pykwb
"lacrosse" = ps: with ps; [ ]; # missing inputs: pylacrosse
"lacrosse" = ps: with ps; [ pylacrosse ];
"lametric" = ps: with ps; [ ]; # missing inputs: lmnotify
"lannouncer" = ps: with ps; [ ];
"lastfm" = ps: with ps; [ pylast ];

View file

@ -1,5 +1,6 @@
{ stdenv
, fetchFromGitHub
, fetchpatch
, srt
, ffmpeg_3_4
, bc
@ -12,6 +13,7 @@
, libopus
, srtp
, jemalloc
, pcre2
}:
let
@ -27,21 +29,30 @@ let
in
stdenv.mkDerivation rec {
pname = "oven-media-engine";
version = "0.10.8";
version = "0.10.9-hotfix";
src = fetchFromGitHub {
owner = "AirenSoft";
repo = "OvenMediaEngine";
rev = "v${version}";
sha256 = "ec4yvS+4/rTBHGEx2OP0yoNGDtzPucFOcZJ0o0cCAHg=";
sha256 = "1fhria0vwqsgmsglv5gn858li33vfy2dwy1f1qdd2jwikskb53am";
};
patches = [
(fetchpatch {
# Needed to fix compilation under GCC 10.
url = "https://github.com/AirenSoft/OvenMediaEngine/commit/ad83e1d2226445d649e4b7e0c75106e31af4940d.patch";
sha256 = "1zk1rgi1wsjl6gdx3hdmgxlgindv6a3lsnkwcgi87ga9abw4vafw";
stripLen = 1;
})
];
sourceRoot = "source/src";
makeFlags = "release CONFIG_LIBRARY_PATHS= CONFIG_PKG_PATHS= GLOBAL_CC=$(CC) GLOBAL_CXX=$(CXX) GLOBAL_LD=$(CXX) SHELL=${stdenv.shell}";
enableParallelBuilding = true;
nativeBuildInputs = [ bc pkgconfig perl ];
buildInputs = [ openssl srt zlib ffmpeg libvpx libopus srtp jemalloc ];
buildInputs = [ openssl srt zlib ffmpeg libvpx libopus srtp jemalloc pcre2 ];
preBuild = ''
patchShebangs core/colorg++
@ -62,7 +73,7 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "Open-source streaming video service with sub-second latency";
homepage = "https://ovenmediaengine.com";
license = licenses.gpl2;
license = licenses.gpl2Only;
maintainers = with maintainers; [ lukegb ];
platforms = [ "x86_64-linux" ];
};

View file

@ -0,0 +1,60 @@
{ stdenv
, fetchFromGitHub
, nix-update-script
, curl
, dbus
, libevent
, m4
, meson
, ninja
, pkg-config
, scdoc
, json_c
, xdg_utils
}:
stdenv.mkDerivation rec {
pname = "mpris-scrobbler";
version = "0.4.0.1";
src = fetchFromGitHub {
owner = "mariusor";
repo = "mpris-scrobbler";
rev = "v${version}";
sha256 = "0jzmgcb9a19hl8y7iwy8l3cc2vgzi0scw7r5q72kszfyxn0yk2gs";
};
postPatch = ''
substituteInPlace src/signon.c \
--replace "/usr/bin/xdg-open" "${xdg_utils}/bin/xdg-open"
'';
nativeBuildInputs = [
m4
meson
ninja
pkg-config
scdoc
];
buildInputs = [
curl
dbus
json_c
libevent
];
passthru = {
updateScript = nix-update-script {
attrPath = pname;
};
};
meta = with stdenv.lib; {
description = "Minimalistic scrobbler for libre.fm & last.fm";
homepage = "https://github.com/mariusor/mpris-scrobbler";
license = licenses.mit;
maintainers = with maintainers; [ emantor ];
platforms = platforms.unix;
};
}

View file

@ -81,7 +81,7 @@ let
inherit description;
license = with licenses; [ lgpl21 gpl2 bsd3 mit publicDomain ];
maintainers = with maintainers; [ adev ak johanot krav ];
platforms = [ "x86_64-linux" ];
platforms = [ "x86_64-linux" "aarch64-linux" ];
};
ceph-common = python3Packages.buildPythonPackage rec{

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, ocaml }:
{ stdenv, fetchurl, ocaml, perl }:
stdenv.mkDerivation {
pname = "bibtex2html";
@ -9,7 +9,7 @@ stdenv.mkDerivation {
sha256 = "07gzrs4lfrkvbn48cgn2gn6c7cx3jsanakkrb2irj0gmjzfxl96j";
};
buildInputs = [ ocaml ];
buildInputs = [ ocaml perl ];
meta = with stdenv.lib; {
description = "A collection of tools for translating from BibTeX to HTML";

View file

@ -76,8 +76,7 @@ stdenv.mkDerivation (rec {
outputs = [ "out" "info" ];
nativeBuildInputs = [ perl xz.bin ]
++ optionals stdenv.hostPlatform.isCygwin [ autoreconfHook texinfo ] # due to patch
++ optionals stdenv.hostPlatform.isMusl [ autoreconfHook bison ]; # due to patch
++ optionals stdenv.hostPlatform.isCygwin [ autoreconfHook texinfo ]; # due to patch
configureFlags = [ "--with-packager=https://NixOS.org" ]
++ optional (singleBinary != false)
("--enable-single-binary" + optionalString (isString singleBinary) "=${singleBinary}")

View file

@ -8,7 +8,8 @@
, zlib
, szip ? null
}:
let uselibtirpc = stdenv.isLinux;
in
stdenv.mkDerivation rec {
pname = "hdf";
version = "4.2.15";
@ -49,12 +50,13 @@ stdenv.mkDerivation rec {
buildInputs = [
libjpeg
libtirpc
szip
zlib
] ++ stdenv.lib.optionals uselibtirpc [
libtirpc
];
preConfigure = ''
preConfigure = stdenv.lib.optionalString uselibtirpc ''
# Make tirpc discovery work with CMAKE_PREFIX_PATH
substituteInPlace config/cmake/FindXDR.cmake \
--replace 'find_path(XDR_INCLUDE_DIR NAMES rpc/types.h PATHS "/usr/include" "/usr/include/tirpc")' \

View file

@ -0,0 +1,27 @@
{ stdenv, fetchFromGitHub, rustPlatform, IOKit }:
rustPlatform.buildRustPackage rec {
pname = "tab-rs";
version = "0.5.5";
src = fetchFromGitHub {
owner = "austinjones";
repo = pname;
rev = "v${version}";
sha256 = "06nip7g5y7jslqj8anvn2z7w1c8yr0gl32bpnzv26xschan4gc2h";
};
cargoSha256 = "1clpl9fi07lms0din8f9m4y6br5jg8k5xsklsqmvgdwf83wyn321";
buildInputs = stdenv.lib.optionals stdenv.isDarwin [ IOKit ];
# many tests are failing
doCheck = false;
meta = with stdenv.lib; {
description = "Intuitive, config-driven terminal multiplexer designed for software & systems engineers";
homepage = "https://github.com/austinjones/tab-rs";
license = licenses.mit;
maintainers = with maintainers; [ bbigras ];
};
}

View file

@ -1,6 +1,10 @@
{ stdenv, fetchFromGitLab, autoreconfHook, libpcap, db, glib, libnet, libnids, symlinkJoin, openssl
{ gcc9Stdenv, lib, fetchFromGitLab, autoreconfHook, libpcap, db, glib, libnet, libnids, symlinkJoin, openssl
, rpcsvc-proto, libtirpc, libnsl
}:
# We compile with GCC 9 since GCC 10 segfaults on the code
# (see https://bugzilla.redhat.com/show_bug.cgi?id=1862809).
let
/*
dsniff's build system unconditionnaly wants static libraries and does not
@ -38,7 +42,7 @@ let
inherit (openssl) name;
paths = with openssl.override { static = true; }; [ out dev ];
};
in stdenv.mkDerivation rec {
in gcc9Stdenv.mkDerivation rec {
pname = "dsniff";
version = "2.4b1";
# upstream is so old that nearly every distribution packages the beta version.
@ -71,7 +75,7 @@ in stdenv.mkDerivation rec {
"--with-openssl=${ssl}"
];
meta = with stdenv.lib; {
meta = with lib; {
description = "collection of tools for network auditing and penetration testing";
longDescription = ''
dsniff, filesnarf, mailsnarf, msgsnarf, urlsnarf, and webspy passively monitor a network for interesting data (passwords, e-mail, files, etc.). arpspoof, dnsspoof, and macof facilitate the interception of network traffic normally unavailable to an attacker (e.g, due to layer-2 switching). sshmitm and webmitm implement active monkey-in-the-middle attacks against redirected SSH and HTTPS sessions by exploiting weak bindings in ad-hoc PKI.

View file

@ -0,0 +1,32 @@
{ buildGoModule
, fetchFromGitHub
, stdenv
}:
buildGoModule rec {
pname = "subjs";
version = "1.0.1";
src = fetchFromGitHub {
owner = "lc";
repo = pname;
rev = "v${version}";
sha256 = "01cip5rf35dnh3l325p03y6axyqdpf48ry4zcwiyd7hlfsglbk3j";
};
vendorSha256 = "1y01k8pvv7y9zb15wbk068cvkx0g83484jak2dvcvghqcf5j1fr1";
buildFlagsArray = [ "-ldflags=-s -w -X main.AppVersion=${version}" ];
meta = with stdenv.lib; {
description = "Fetcher for Javascript files";
longDescription = ''
subjs fetches Javascript files from a list of URLs or subdomains.
Analyzing Javascript files can help you find undocumented endpoints,
secrets and more.
'';
homepage = "https://github.com/lc/subjs";
license = with licenses; [ mit ];
maintainers = with maintainers; [ fab ];
};
}

View file

@ -11,19 +11,19 @@
rustPlatform.buildRustPackage rec {
pname = "mdcat";
version = "0.22.1";
version = "0.22.2";
src = fetchFromGitHub {
owner = "lunaryorn";
repo = pname;
rev = "mdcat-${version}";
hash = "sha256-4sM1xT/JQ+yM5tZkGwK7r0gUT5so9o1MnDJ7apZkRd4=";
hash = "sha256-i36MYTMkbSuWxxlWUDsyYMay/4Mg7M5jEFhHM60UrkM=";
};
nativeBuildInputs = [ pkgconfig asciidoctor installShellFiles ];
buildInputs = [ openssl ] ++ stdenv.lib.optional stdenv.isDarwin Security;
cargoSha256 = "sha256-LoNm2/6/FgTKp95ETODY39D8Ou+9X+IXIy625YW9AFI=";
cargoSha256 = "sha256-mnDUIJhEGNoh3eq2Vhww1T/tpZh9RP+RxbRsBNrpOzw=";
checkInputs = [ ansi2html ];
# Skip tests that use the network and that include files.

View file

@ -813,7 +813,9 @@ in
wayst = callPackage ../applications/terminal-emulators/wayst { };
wezterm = callPackage ../applications/terminal-emulators/wezterm { };
wezterm = callPackage ../applications/terminal-emulators/wezterm {
inherit (darwin.apple_sdk.frameworks) Cocoa CoreGraphics Foundation;
};
x3270 = callPackage ../applications/terminal-emulators/x3270 { };
@ -2510,6 +2512,8 @@ in
mpd-mpris = callPackage ../tools/audio/mpd-mpris { };
mpris-scrobbler = callPackage ../tools/audio/mpris-scrobbler { };
mq-cli = callPackage ../tools/system/mq-cli { };
nextdns = callPackage ../applications/networking/nextdns { };
@ -4963,7 +4967,9 @@ in
ipfs = callPackage ../applications/networking/ipfs { };
ipfs-migrator = callPackage ../applications/networking/ipfs-migrator { };
ipfs-cluster = callPackage ../applications/networking/ipfs-cluster { };
ipfs-cluster = callPackage ../applications/networking/ipfs-cluster {
buildGoModule = buildGo114Module;
};
ipget = callPackage ../applications/networking/ipget { };
@ -6599,6 +6605,8 @@ in
pbzip2 = callPackage ../tools/compression/pbzip2 { };
pcimem = callPackage ../os-specific/linux/pcimem { };
pciutils = callPackage ../tools/system/pciutils { };
pcsclite = callPackage ../tools/security/pcsclite {
@ -7711,6 +7719,8 @@ in
su = shadow.su;
subjs = callPackage ../tools/security/subjs { };
subsonic = callPackage ../servers/misc/subsonic { };
subfinder = callPackage ../tools/networking/subfinder { };
@ -7762,6 +7772,10 @@ in
tabnine = callPackage ../development/tools/tabnine { };
tab-rs = callPackage ../tools/misc/tab-rs {
inherit (darwin.apple_sdk.frameworks) IOKit;
};
t1utils = callPackage ../tools/misc/t1utils { };
talkfilters = callPackage ../misc/talkfilters {};
@ -9039,6 +9053,8 @@ in
gmp-static = gmp.override { withStatic = true; };
};
cakelisp = callPackage ../development/compilers/cakelisp { };
ciao = callPackage ../development/compilers/ciao { };
colm = callPackage ../development/compilers/colm { };
@ -14819,6 +14835,8 @@ in
libs3 = callPackage ../development/libraries/libs3 { };
libschrift = callPackage ../development/libraries/libschrift { };
libsearpc = callPackage ../development/libraries/libsearpc { };
libsigcxx = callPackage ../development/libraries/libsigcxx { };
@ -18995,7 +19013,7 @@ in
kernelPatches.tag_hardened
kernelPatches.hardened.${kernel.meta.branch}
];
modDirVersionArg = kernel.modDirVersion + "-hardened";
modDirVersionArg = kernel.modDirVersion + (kernelPatches.hardened.${kernel.meta.branch}).extra + "-hardened";
isHardened = true;
});
@ -21546,7 +21564,7 @@ in
geoipupdate = callPackage ../applications/misc/geoipupdate/default.nix { };
ghostwriter = libsForQt514.callPackage ../applications/editors/ghostwriter { };
ghostwriter = libsForQt5.callPackage ../applications/editors/ghostwriter { };
gitweb = callPackage ../applications/version-management/git-and-tools/gitweb { };
@ -23519,6 +23537,12 @@ in
muchsync = callPackage ../applications/networking/mailreaders/notmuch/muchsync.nix { };
nufraw = callPackage ../applications/graphics/nufraw/default.nix { };
nufraw-thumbnailer = callPackage ../applications/graphics/nufraw/default.nix {
addThumbnailer = true;
};
notmuch-addrlookup = callPackage ../applications/networking/mailreaders/notmuch-addrlookup { };
nova-filters = callPackage ../applications/audio/nova-filters { };
@ -25649,7 +25673,19 @@ in
zscroll = callPackage ../applications/misc/zscroll {};
zynaddsubfx = callPackage ../applications/audio/zynaddsubfx { };
zynaddsubfx = zyn-fusion;
zynaddsubfx-fltk = callPackage ../applications/audio/zynaddsubfx {
guiModule = "fltk";
};
zynaddsubfx-ntk = callPackage ../applications/audio/zynaddsubfx {
guiModule = "ntk";
};
zyn-fusion = callPackage ../applications/audio/zynaddsubfx {
guiModule = "zest";
};
### BLOCKCHAINS / CRYPTOCURRENCIES / WALLETS
@ -26998,6 +27034,8 @@ in
exonerate = callPackage ../applications/science/biology/exonerate { };
fastp = callPackage ../applications/science/biology/fastp { };
hisat2 = callPackage ../applications/science/biology/hisat2 { };
htslib = callPackage ../development/libraries/science/biology/htslib { };

View file

@ -173,7 +173,9 @@ in {
addic7ed-cli = callPackage ../development/python-modules/addic7ed-cli { };
adguardhome= callPackage ../development/python-modules/adguardhome { };
adguardhome = callPackage ../development/python-modules/adguardhome { };
advantage-air = callPackage ../development/python-modules/advantage-air { };
aenum = callPackage ../development/python-modules/aenum { };
@ -5363,6 +5365,8 @@ in {
pykwalify = callPackage ../development/python-modules/pykwalify { };
pylacrosse = callPackage ../development/python-modules/pylacrosse { };
pylama = callPackage ../development/python-modules/pylama { };
pylast = callPackage ../development/python-modules/pylast { };
@ -7352,62 +7356,39 @@ in {
tensorboardx = callPackage ../development/python-modules/tensorboardx { };
tensorflow-bin_1 = callPackage ../development/python-modules/tensorflow/1/bin.nix {
tensorflow-bin_2 = callPackage ../development/python-modules/tensorflow/bin.nix {
cudaSupport = pkgs.config.cudaSupport or false;
inherit (pkgs.linuxPackages) nvidia_x11;
cudatoolkit = pkgs.cudatoolkit_10;
cudnn = pkgs.cudnn_cudatoolkit_10;
cudatoolkit = pkgs.cudatoolkit_11_0;
cudnn = pkgs.cudnn_cudatoolkit_11_0;
};
tensorflow-bin_2 = callPackage ../development/python-modules/tensorflow/2/bin.nix {
cudaSupport = pkgs.config.cudaSupport or false;
inherit (pkgs.linuxPackages) nvidia_x11;
cudatoolkit = pkgs.cudatoolkit_10;
cudnn = pkgs.cudnn_cudatoolkit_10;
};
tensorflow-bin = self.tensorflow-bin_2;
tensorflow-bin = self.tensorflow-bin_1;
tensorflow-build_1 = callPackage ../development/python-modules/tensorflow/1 {
tensorflow-build_2 = callPackage ../development/python-modules/tensorflow {
cudaSupport = pkgs.config.cudaSupport or false;
inherit (pkgs.linuxPackages) nvidia_x11;
cudatoolkit = pkgs.cudatoolkit_10;
cudnn = pkgs.cudnn_cudatoolkit_10;
nccl = pkgs.nccl_cudatoolkit_10;
openssl = pkgs.openssl_1_1;
inherit (pkgs.darwin.apple_sdk.frameworks) Foundation Security;
inherit (pkgs) flatbuffers;
};
tensorflow-build_2 = callPackage ../development/python-modules/tensorflow/2 {
cudaSupport = pkgs.config.cudaSupport or false;
cudatoolkit = pkgs.cudatoolkit_11;
cudnn = pkgs.cudnn_cudatoolkit_11;
cudatoolkit = pkgs.cudatoolkit_11_0;
cudnn = pkgs.cudnn_cudatoolkit_11_0;
nccl = pkgs.nccl_cudatoolkit_11;
openssl = pkgs.openssl_1_1;
inherit (pkgs.darwin.apple_sdk.frameworks) Foundation Security;
inherit (pkgs) flatbuffers;
};
tensorflow-build = self.tensorflow-build_1;
tensorflow-build = self.tensorflow-build_2;
tensorflow-estimator_1 = callPackage ../development/python-modules/tensorflow-estimator/1 { };
tensorflow-estimator_2 = callPackage ../development/python-modules/tensorflow-estimator { };
tensorflow-estimator_2 = callPackage ../development/python-modules/tensorflow-estimator/2 { };
tensorflow-estimator = self.tensorflow-estimator_1;
tensorflow-estimator = self.tensorflow-estimator_2;
tensorflow-probability = callPackage ../development/python-modules/tensorflow-probability { };
tensorflow = self.tensorflow_1;
tensorflow_1 = self.tensorflow-build_1;
tensorflow = self.tensorflow_2;
tensorflow_2 = self.tensorflow-build_2;
tensorflow-tensorboard_1 = callPackage ../development/python-modules/tensorflow-tensorboard/1 { };
tensorflow-tensorboard_2 = callPackage ../development/python-modules/tensorflow-tensorboard { };
tensorflow-tensorboard_2 = callPackage ../development/python-modules/tensorflow-tensorboard/2 { };
tensorflow-tensorboard = self.tensorflow-tensorboard_1;
tensorflow-tensorboard = self.tensorflow-tensorboard_2;
tensorflowWithCuda = self.tensorflow.override { cudaSupport = true; };