Merge master into staging-next

This commit is contained in:
github-actions[bot] 2020-12-26 06:20:06 +00:00 committed by GitHub
commit 7786352f70
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 107 additions and 63 deletions

View File

@ -1,39 +1,55 @@
{ stdenv, libsodium, fetchFromGitHub, wget, pkgconfig, autoreconfHook, openssl, db62, boost17x { rust, rustPlatform, stdenv, lib, fetchFromGitHub, autoreconfHook, makeWrapper
, zlib, gtest, gmock, callPackage, gmp, qt4, util-linux, protobuf, qrencode, libevent }: , cargo, pkg-config
, bash, curl, coreutils, boost17x, db62, libsodium, libevent, utf8cpp, util-linux
let librustzcash = callPackage ./librustzcash {}; }:
in
with stdenv.lib;
stdenv.mkDerivation rec {
rustPlatform.buildRustPackage rec {
pname = "zcash"; pname = "zcash";
version = "2.1.1-1"; version = "4.1.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "zcash"; owner = "zcash";
repo = "zcash"; repo = "zcash";
rev = "v${version}"; rev = "v${version}";
sha256 = "1g5zlfzfp31my8w8nlg5fncpr2y95iv9fm04x57sjb93rgmjdh5n"; sha256 = "185zrw276g545np0niw5hlhlppkjbf5a1r4rwhnbaimdjdii2dil";
}; };
patchPhase = '' cargoSha256 = "0qxr6asf8zsya0f1ri39z2cnfpjk96hgwjchz2c7j87vibbvg6dc";
sed -i"" 's,-fvisibility=hidden,,g' src/Makefile.am
nativeBuildInputs = [ autoreconfHook cargo makeWrapper pkg-config ];
buildInputs = [ bash boost17x db62 libevent libsodium utf8cpp ];
# Use the stdenv default phases (./configure; make) instead of the
# ones from buildRustPackage.
configurePhase = "configurePhase";
buildPhase = "buildPhase";
checkPhase = "checkPhase";
installPhase = "installPhase";
postPatch = ''
# Have to do this here instead of in preConfigure because
# cargoDepsCopy gets unset after postPatch.
configureFlagsArray+=("RUST_VENDORED_SOURCES=$NIX_BUILD_TOP/$cargoDepsCopy")
''; '';
nativeBuildInputs = [ autoreconfHook pkgconfig ]; configureFlags = [
buildInputs = [ gtest gmock gmp openssl wget db62 boost17x zlib "--disable-tests"
protobuf libevent libsodium librustzcash ] "--with-boost-libdir=${lib.getLib boost17x}/lib"
++ optionals stdenv.isLinux [ util-linux ]; "CXXFLAGS=-I${lib.getDev utf8cpp}/include/utf8cpp"
"RUST_TARGET=${rust.toRustTargetSpec stdenv.hostPlatform}"
configureFlags = [ "--with-boost-libdir=${boost17x.out}/lib" ]; ];
postInstall = ''
cp zcutil/fetch-params.sh $out/bin/zcash-fetch-params
'';
enableParallelBuilding = true; enableParallelBuilding = true;
meta = { # Requires hundreds of megabytes of zkSNARK parameters.
doCheck = false;
postInstall = ''
wrapProgram $out/bin/zcash-fetch-params \
--set PATH ${lib.makeBinPath [ coreutils curl util-linux ]}
'';
meta = with lib; {
description = "Peer-to-peer, anonymous electronic cash system"; description = "Peer-to-peer, anonymous electronic cash system";
homepage = "https://z.cash/"; homepage = "https://z.cash/";
maintainers = with maintainers; [ rht tkerber ]; maintainers = with maintainers; [ rht tkerber ];

View File

@ -1,33 +0,0 @@
{ stdenv, fetchFromGitHub, rustPlatform }:
rustPlatform.buildRustPackage rec {
pname = "librustzcash";
version = "0.1.0";
src = fetchFromGitHub {
owner = "zcash";
repo = "librustzcash";
rev = version;
sha256 = "0d28k29sgzrg9clynz29kpw50kbkp0a4dfdayqhmpjmsh05y6261";
};
cargoSha256 = "1wzyrcmcbrna6rjzw19c4lq30didzk4w6fs6wmvxp0xfg4qqdlax";
installPhase = ''
mkdir -p $out/lib
cp $releaseDir/librustzcash.a $out/lib/
mkdir -p $out/include
cp librustzcash/include/librustzcash.h $out/include/
'';
# The tests do pass, but they take an extremely long time to run.
doCheck = false;
meta = with stdenv.lib; {
description = "Rust-language assets for Zcash";
homepage = "https://github.com/zcash/librustzcash";
maintainers = with maintainers; [ rht tkerber ];
license = with licenses; [ mit asl20 ];
platforms = platforms.unix;
};
}

View File

@ -0,0 +1,47 @@
{ stdenv, fetchFromGitHub
, cmake, pkgconfig, wrapQtAppsHook
, boost173, catch2, fmt, lz4, nlohmann_json, rapidjson, zlib, zstd, SDL2
, udev, libusb1, libzip, qtbase, qtwebengine, qttools, ffmpeg
, libpulseaudio, libjack2, alsaLib, sndio, ecasound
, useVulkan ? true, vulkan-loader, vulkan-headers
}:
stdenv.mkDerivation rec {
pname = "yuzu";
version = "482";
src = fetchFromGitHub {
owner = "yuzu-emu";
repo = "yuzu-mainline"; # They use a separate repo for mainline “branch”
rev = "mainline-0-${version}";
sha256 = "1bhkdbhj1dv33qv0np26gzsw65p4z88whjmd6bc7mh2b5lvrjwxm";
fetchSubmodules = true;
};
nativeBuildInputs = [ cmake pkgconfig wrapQtAppsHook ];
buildInputs = [ qtbase qtwebengine qttools boost173 catch2 fmt lz4 nlohmann_json rapidjson zlib zstd SDL2 udev libusb1 libpulseaudio alsaLib sndio ecasound libjack2 libzip ffmpeg ]
++ stdenv.lib.optionals useVulkan [ vulkan-loader vulkan-headers ];
cmakeFlags = [ "-DENABLE_QT_TRANSLATION=ON" "-DYUZU_USE_QT_WEB_ENGINE=ON" "-DUSE_DISCORD_PRESENCE=ON" ]
++ stdenv.lib.optionals (!useVulkan) [ "-DENABLE_VULKAN=No" ];
# Trick the configure system. This prevents a check for submodule directories.
preConfigure = "rm .gitmodules";
# Fix vulkan detection
postFixup = stdenv.lib.optionals useVulkan ''
wrapProgram $out/bin/yuzu --prefix LD_LIBRARY_PATH : ${vulkan-loader}/lib
wrapProgram $out/bin/yuzu-cmd --prefix LD_LIBRARY_PATH : ${vulkan-loader}/lib
'';
meta = with stdenv.lib; {
homepage = "https://yuzu-emu.org";
description = "An experimental Nintendo Switch emulator written in C++";
license = with licenses; [
gpl2Plus
# Icons
cc-by-nd-30 cc0
];
maintainers = with maintainers; [ ivar joshuafern ];
platforms = platforms.linux;
};
}

View File

@ -1,21 +1,22 @@
{ stdenv, lib { stdenv, lib, fetchpatch
, pkgconfig, autoreconfHook , pkgconfig, autoreconfHook
, fetchurl, cpio, zlib, bzip2, file, elfutils, libbfd, libarchive, nspr, nss, popt, db, xz, python, lua, llvmPackages , fetchurl, cpio, zlib, bzip2, file, elfutils, libbfd, libgcrypt, libarchive, nspr, nss, popt, db, xz, python, lua, llvmPackages
, sqlite
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "rpm"; pname = "rpm";
version = "4.15.1"; version = "4.16.1.2";
src = fetchurl { src = fetchurl {
url = "http://ftp.rpm.org/releases/rpm-${lib.versions.majorMinor version}.x/rpm-${version}.tar.bz2"; url = "http://ftp.rpm.org/releases/rpm-${lib.versions.majorMinor version}.x/rpm-${version}.tar.bz2";
sha256 = "0c6jwail90fhha3bpx70w4a2i8ycxwvnx6zwxm121l8wc3wlbvyx"; sha256 = "1k6ank2aad7r503w12m6m494mxr6iccj52wqhwbc94pwxsf34mw3";
}; };
outputs = [ "out" "dev" "man" ]; outputs = [ "out" "dev" "man" ];
nativeBuildInputs = [ autoreconfHook pkgconfig ]; nativeBuildInputs = [ autoreconfHook pkgconfig ];
buildInputs = [ cpio zlib bzip2 file libarchive nspr nss db xz python lua ] buildInputs = [ cpio zlib bzip2 file libarchive libgcrypt nspr nss db xz python lua sqlite ]
++ lib.optionals stdenv.cc.isClang [ llvmPackages.openmp ]; ++ lib.optionals stdenv.cc.isClang [ llvmPackages.openmp ];
# rpm/rpmlib.h includes popt.h, and then the pkg-config file mentions these as linkage requirements # rpm/rpmlib.h includes popt.h, and then the pkg-config file mentions these as linkage requirements
@ -28,14 +29,23 @@ stdenv.mkDerivation rec {
"--with-external-db" "--with-external-db"
"--with-lua" "--with-lua"
"--enable-python" "--enable-python"
"--enable-ndb"
"--enable-sqlite"
"--localstatedir=/var" "--localstatedir=/var"
"--sharedstatedir=/com" "--sharedstatedir=/com"
]; ];
postPatch = '' # Small fixes for ndb on darwin
# For Python3, the original expression evaluates as 'python3.4' but we want 'python3.4m' here # https://github.com/rpm-software-management/rpm/pull/1465
substituteInPlace configure.ac --replace 'python''${PYTHON_VERSION}' ${python.executable} patches = [
(fetchpatch {
name = "darwin-support.patch";
url = "https://github.com/rpm-software-management/rpm/commit/2d20e371d5e38f4171235e5c64068cad30bda557.patch";
sha256 = "0p3j5q5a4hl357maf7018k3826jhcpqg6wfrnccrkv30g0ayk171";
})
];
postPatch = ''
substituteInPlace Makefile.am --replace '@$(MKDIR_P) $(DESTDIR)$(localstatedir)/tmp' "" substituteInPlace Makefile.am --replace '@$(MKDIR_P) $(DESTDIR)$(localstatedir)/tmp' ""
''; '';

View File

@ -28675,6 +28675,10 @@ in
yaxg = callPackage ../tools/graphics/yaxg {}; yaxg = callPackage ../tools/graphics/yaxg {};
yuzu = libsForQt5.callPackage ../misc/emulators/yuzu {
stdenv = gcc10Stdenv;
};
zap = callPackage ../tools/networking/zap { }; zap = callPackage ../tools/networking/zap { };
zigbee2mqtt = callPackage ../servers/zigbee2mqtt { }; zigbee2mqtt = callPackage ../servers/zigbee2mqtt { };