From c2cb457ebf80734a7e46ead1d0204e53b358338f Mon Sep 17 00:00:00 2001 From: "Noah D. Brenowitz" Date: Thu, 18 Mar 2021 00:06:36 -0700 Subject: [PATCH 01/81] python37Packages.httplib: disable tests on darwin Most of the tests were failing on Mac OS, and tests were only recently enabled for this package. --- pkgs/development/python-modules/httplib2/default.nix | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/httplib2/default.nix b/pkgs/development/python-modules/httplib2/default.nix index ce3b3aa1f67..25c227c614e 100644 --- a/pkgs/development/python-modules/httplib2/default.nix +++ b/pkgs/development/python-modules/httplib2/default.nix @@ -1,4 +1,5 @@ -{ lib +{ stdenv +, lib , buildPythonPackage , fetchFromGitHub , isPy27 @@ -39,8 +40,10 @@ buildPythonPackage rec { pytestCheckHook ]; - # Don't run tests for Python 2.7 - doCheck = !isPy27; + # Don't run tests for Python 2.7 or Darwin + # Nearly 50% of the test suite requires local network access + # which isn't allowed on sandboxed Darwin builds + doCheck = !(isPy27 || stdenv.isDarwin); pytestFlagsArray = [ "--ignore python2" ]; pythonImportsCheck = [ "httplib2" ]; From 701288f79acb329e9aed5cc2eb6d92d5da0ccef2 Mon Sep 17 00:00:00 2001 From: midchildan Date: Sun, 28 Mar 2021 01:54:55 +0900 Subject: [PATCH 02/81] fusepy: fix incorrect libfuse path on darwin --- pkgs/development/python-modules/fusepy/default.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/fusepy/default.nix b/pkgs/development/python-modules/fusepy/default.nix index 45b70863042..03a5248e8e1 100644 --- a/pkgs/development/python-modules/fusepy/default.nix +++ b/pkgs/development/python-modules/fusepy/default.nix @@ -1,4 +1,5 @@ { lib +, stdenv , buildPythonPackage , fetchPypi , pkgs @@ -18,7 +19,9 @@ buildPythonPackage rec { # No tests included doCheck = false; - patchPhase = '' + # On macOS, users are expected to install macFUSE. This means fusepy should + # be able to find libfuse in /usr/local/lib. + patchPhase = lib.optionalString (!stdenv.isDarwin) '' substituteInPlace fuse.py --replace \ "find_library('fuse')" "'${pkgs.fuse}/lib/libfuse.so'" ''; From fdc5e719889bb176cbd61f2a3f8d5ae1eb2319bc Mon Sep 17 00:00:00 2001 From: midchildan Date: Fri, 26 Mar 2021 00:50:32 +0900 Subject: [PATCH 03/81] ifuse: add darwin build --- pkgs/tools/filesystems/ifuse/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/filesystems/ifuse/default.nix b/pkgs/tools/filesystems/ifuse/default.nix index 4abb50b8bd7..09be33384d5 100644 --- a/pkgs/tools/filesystems/ifuse/default.nix +++ b/pkgs/tools/filesystems/ifuse/default.nix @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { devices. ''; license = licenses.lgpl21Plus; - platforms = platforms.linux; + platforms = platforms.unix; maintainers = with maintainers; [ infinisil ]; }; } From 92cde6f032de748deb1c4be58f9658f0a49d889a Mon Sep 17 00:00:00 2001 From: midchildan Date: Fri, 26 Mar 2021 01:30:38 +0900 Subject: [PATCH 04/81] gitfs: add darwin build --- pkgs/tools/filesystems/gitfs/default.nix | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pkgs/tools/filesystems/gitfs/default.nix b/pkgs/tools/filesystems/gitfs/default.nix index e4a120264fd..03e76e5fb27 100644 --- a/pkgs/tools/filesystems/gitfs/default.nix +++ b/pkgs/tools/filesystems/gitfs/default.nix @@ -14,6 +14,12 @@ python3Packages.buildPythonApplication rec { patchPhase = '' # requirement checks are unnecessary at runtime echo > requirements.txt + + # NOTE: As of gitfs 0.5.2, The pygit2 release that upstream uses is a major + # version behind the one packaged in nixpkgs. + substituteInPlace gitfs/mounter.py --replace \ + 'from pygit2.remote import RemoteCallbacks' \ + 'from pygit2 import RemoteCallbacks' ''; checkInputs = with python3Packages; [ pytest pytestcov mock ]; @@ -31,7 +37,7 @@ python3Packages.buildPythonApplication rec { ''; homepage = "https://github.com/PressLabs/gitfs"; license = lib.licenses.asl20; - platforms = lib.platforms.linux; + platforms = lib.platforms.unix; maintainers = [ lib.maintainers.robbinch ]; }; } From a7540bb90adb40b7961e9dbcbf2fc74e784edf71 Mon Sep 17 00:00:00 2001 From: midchildan Date: Fri, 26 Mar 2021 01:32:13 +0900 Subject: [PATCH 05/81] encfs: add darwin build --- pkgs/tools/filesystems/encfs/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/filesystems/encfs/default.nix b/pkgs/tools/filesystems/encfs/default.nix index 2b88dde1531..14701a615c0 100644 --- a/pkgs/tools/filesystems/encfs/default.nix +++ b/pkgs/tools/filesystems/encfs/default.nix @@ -26,7 +26,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "An encrypted filesystem in user-space via FUSE"; homepage = "https://vgough.github.io/encfs"; - license = with licenses; [ gpl3 lgpl3 ]; - platforms = with platforms; linux; + license = with licenses; [ gpl3Plus lgpl3Plus ]; + platforms = platforms.unix; }; } From 31a3099d4b4b6dabc8e3ee614b219138a1f72cab Mon Sep 17 00:00:00 2001 From: midchildan Date: Fri, 26 Mar 2021 01:32:39 +0900 Subject: [PATCH 06/81] dislocker: add darwin build --- pkgs/tools/filesystems/dislocker/default.nix | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/filesystems/dislocker/default.nix b/pkgs/tools/filesystems/dislocker/default.nix index e65e4665bd5..10559985f86 100644 --- a/pkgs/tools/filesystems/dislocker/default.nix +++ b/pkgs/tools/filesystems/dislocker/default.nix @@ -1,6 +1,8 @@ { lib, stdenv , fetchFromGitHub +, fetchpatch , cmake +, pkg-config , mbedtls , fuse }: @@ -17,7 +19,20 @@ stdenv.mkDerivation rec { sha256 = "1ak68s1v5dwh8y2dy5zjybmrh0pnqralmyqzis67y21m87g47h2k"; }; - nativeBuildInputs = [ cmake ]; + patches = [ + # This patch + # 1. adds support for the latest FUSE on macOS + # 2. uses pkg-config to find libfuse instead of searching in predetermined + # paths + # + # https://github.com/Aorimn/dislocker/pull/246 + (fetchpatch { + url = "https://github.com/Aorimn/dislocker/commit/7744f87c75fcfeeb414d0957771042b10fb64e62.diff"; + sha256 = "0bpyccbbfjsidsrd2q9qylb95nvi8g3glb3jss7xmhywj86bhzr5"; + }) + ]; + + nativeBuildInputs = [ cmake pkg-config ]; buildInputs = [ fuse mbedtls ]; meta = with lib; { @@ -25,6 +40,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/aorimn/dislocker"; license = licenses.gpl2; maintainers = with maintainers; [ elitak ]; - platforms = platforms.linux; + platforms = platforms.unix; }; } From 21f9e5aac26d1255f06469740ab96423c26614b6 Mon Sep 17 00:00:00 2001 From: midchildan Date: Fri, 26 Mar 2021 01:40:28 +0900 Subject: [PATCH 07/81] tup: explain blocker for darwin build --- .../tools/build-managers/tup/default.nix | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/pkgs/development/tools/build-managers/tup/default.nix b/pkgs/development/tools/build-managers/tup/default.nix index f0e6efdca3e..85bf919f778 100644 --- a/pkgs/development/tools/build-managers/tup/default.nix +++ b/pkgs/development/tools/build-managers/tup/default.nix @@ -1,6 +1,8 @@ -{ lib, stdenv, fetchFromGitHub, fuse3, pkg-config, pcre }: +{ lib, stdenv, fetchFromGitHub, fuse3, macfuse-stubs, pkg-config, pcre }: -stdenv.mkDerivation rec { +let + fuse = if stdenv.isDarwin then macfuse-stubs else fuse3; +in stdenv.mkDerivation rec { pname = "tup"; version = "0.7.10"; outputs = [ "bin" "man" "out" ]; @@ -13,7 +15,7 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ pkg-config ]; - buildInputs = [ fuse3 pcre ]; + buildInputs = [ fuse pcre ]; configurePhase = '' sed -i 's/`git describe`/v${version}/g' src/tup/link.sh @@ -50,6 +52,13 @@ stdenv.mkDerivation rec { homepage = "http://gittup.org/tup/"; license = licenses.gpl2; maintainers = with maintainers; [ ehmry ]; - platforms = platforms.linux ++ platforms.darwin; + platforms = platforms.unix; + + # TODO: Remove once nixpkgs uses newer SDKs that supports '*at' functions. + # Probably MacOS SDK 10.13 or later. Check the current version in + # ../../../../os-specific/darwin/apple-sdk/default.nix + # + # https://github.com/gittup/tup/commit/3697c74 + broken = stdenv.isDarwin; }; } From db242e168182ce6ddb79aafc06a8b68961ae6b60 Mon Sep 17 00:00:00 2001 From: "Noah D. Brenowitz" Date: Thu, 18 Mar 2021 00:08:32 -0700 Subject: [PATCH 08/81] python37Packages.google-auth: disable network tests This disables some tests that using a mocked webserver. --- .../python-modules/google-auth/default.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/google-auth/default.nix b/pkgs/development/python-modules/google-auth/default.nix index d583de9c074..39dabef3ace 100644 --- a/pkgs/development/python-modules/google-auth/default.nix +++ b/pkgs/development/python-modules/google-auth/default.nix @@ -1,4 +1,5 @@ -{ lib +{ stdenv +, lib , buildPythonPackage , fetchpatch , fetchPypi @@ -41,6 +42,14 @@ buildPythonPackage rec { "google.oauth2" ]; + disabledTests = lib.optionals stdenv.isDarwin [ + "test_request_with_timeout_success" + "test_request_with_timeout_failure" + "test_request_headers" + "test_request_error" + "test_request_basic" + ]; + meta = with lib; { description = "Google Auth Python Library"; longDescription = '' From 1e48ad0403f20f73c67dccb782aff69c532d3d50 Mon Sep 17 00:00:00 2001 From: "Noah D. Brenowitz" Date: Thu, 18 Mar 2021 00:10:01 -0700 Subject: [PATCH 09/81] python37Packages.google-auth-oauthlib: disable webserver tests These tests fail in a sandboxed build on mac --- .../python-modules/google-auth-oauthlib/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/python-modules/google-auth-oauthlib/default.nix b/pkgs/development/python-modules/google-auth-oauthlib/default.nix index 7fa7200fbbe..c350b9b27c4 100644 --- a/pkgs/development/python-modules/google-auth-oauthlib/default.nix +++ b/pkgs/development/python-modules/google-auth-oauthlib/default.nix @@ -1,4 +1,5 @@ { lib +, stdenv , buildPythonPackage , fetchPypi , click @@ -28,6 +29,8 @@ buildPythonPackage rec { pytestCheckHook ]; + disabledTests = lib.optionals stdenv.isDarwin [ "test_run_local_server" ]; + meta = with lib; { description = "Google Authentication Library: oauthlib integration"; homepage = "https://github.com/GoogleCloudPlatform/google-auth-library-python-oauthlib"; From 5542995561a2c9bcf467f2d55915e1078b286d2b Mon Sep 17 00:00:00 2001 From: "Noah D. Brenowitz" Date: Mon, 15 Mar 2021 19:37:50 -0700 Subject: [PATCH 10/81] python37Packages.tensorflow-bin_2: soften additional versions This package was broken on mac with some wildcarding issues. Some more constraints in the tensorflow wheel needed to be relaxed. --- .../python-modules/tensorflow/bin.nix | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/tensorflow/bin.nix b/pkgs/development/python-modules/tensorflow/bin.nix index ef6d4f45ef9..7b9cbf1f990 100644 --- a/pkgs/development/python-modules/tensorflow/bin.nix +++ b/pkgs/development/python-modules/tensorflow/bin.nix @@ -96,10 +96,19 @@ in buildPythonPackage { # Unpack the wheel file. wheel unpack --dest unpacked ./*.whl - # Tensorflow has a hard dependency on gast==0.2.2, but we relax it to - # gast==0.3.2. - substituteInPlace ./unpacked/tensorflow*/tensorflow_core/tools/pip_package/setup.py --replace "gast == 0.2.2" "gast == 0.3.2" - substituteInPlace ./unpacked/tensorflow*/tensorflow_*.dist-info/METADATA --replace "gast (==0.2.2)" "gast (==0.3.2)" + # Tensorflow wheels tightly constrain the versions of gast, tensorflow-estimator and scipy. + # This code relaxes these requirements: + substituteInPlace ./unpacked/tensorflow*/tensorflow_core/tools/pip_package/setup.py \ + --replace "tensorflow_estimator >= 2.1.0rc0, < 2.2.0" "tensorflow_estimator" \ + --replace "tensorboard >= 2.1.0, < 2.2.0" "tensorboard" \ + --replace "gast == 0.2.2" "gast" \ + --replace "scipy == 1.2.2" "scipy" + + substituteInPlace ./unpacked/tensorflow*/tensorflow*.dist-info/METADATA \ + --replace "gast (==0.2.2)" "gast" \ + --replace "tensorflow-estimator (<2.2.0,>=2.1.0rc0)" "tensorflow_estimator" \ + --replace "tensorboard (<2.2.0,>=2.1.0)" "tensorboard" \ + --replace "scipy (==1.4.1)" "scipy" # Pack the wheel file back up. wheel pack ./unpacked/tensorflow* From cab40572d70991e28069e6b934465a51468e9f68 Mon Sep 17 00:00:00 2001 From: Thiago Franco de Moraes Date: Sun, 11 Apr 2021 19:01:59 -0300 Subject: [PATCH 11/81] opencv-4: 4.3.0 -> 4.5.2 - Updated to 4.5.2 - Removed glog from buildInputs because of this error on python-opencv: ``` python -c "import cv2" /nix/store/slfzk1gk74nfx3ky2vpdf9nb7b8nvdf2-opencv-4.5.2/lib/libopencv_sfm.so.4.5: error: symbol lookup error: undefined symbol: _ZN6google21kLogSiteUninitializedE (fatal) ``` - Enabled ffmpeg and gstreamer to open more video formats - nixpkg-fmt --- pkgs/development/libraries/opencv/4.x.nix | 208 +++++++++++------- .../cmake-don-t-use-OpenCVFindOpenEXR.patch | 34 +-- 2 files changed, 135 insertions(+), 107 deletions(-) diff --git a/pkgs/development/libraries/opencv/4.x.nix b/pkgs/development/libraries/opencv/4.x.nix index c9ac76b6554..15c8d46b613 100644 --- a/pkgs/development/libraries/opencv/4.x.nix +++ b/pkgs/development/libraries/opencv/4.x.nix @@ -1,54 +1,91 @@ -{ lib, stdenv -, fetchurl, fetchFromGitHub, fetchpatch -, cmake, pkg-config, unzip, zlib, pcre, hdf5 -, glog, boost, gflags, protobuf +{ lib +, stdenv +, fetchurl +, fetchFromGitHub +, cmake +, pkg-config +, unzip +, zlib +, pcre +, hdf5 +, boost +, gflags +, protobuf , config -, enableJPEG ? true, libjpeg -, enablePNG ? true, libpng -, enableTIFF ? true, libtiff -, enableWebP ? true, libwebp -, enableEXR ? !stdenv.isDarwin, openexr, ilmbase -, enableEigen ? true, eigen -, enableOpenblas ? true, openblas, blas, lapack -, enableContrib ? true +, enableJPEG ? true +, libjpeg +, enablePNG ? true +, libpng +, enableTIFF ? true +, libtiff +, enableWebP ? true +, libwebp +, enableEXR ? !stdenv.isDarwin +, openexr +, ilmbase +, enableEigen ? true +, eigen +, enableOpenblas ? true +, openblas +, enableContrib ? true -, enableCuda ? (config.cudaSupport or false) && - stdenv.hostPlatform.isx86_64, cudatoolkit, nvidia-optical-flow-sdk +, enableCuda ? (config.cudaSupport or false) && stdenv.hostPlatform.isx86_64 +, cudatoolkit +, nvidia-optical-flow-sdk -, enableUnfree ? false -, enableIpp ? false -, enablePython ? false, pythonPackages -, enableGtk2 ? false, gtk2 -, enableGtk3 ? false, gtk3 -, enableVtk ? false, vtk -, enableFfmpeg ? false, ffmpeg_3 -, enableGStreamer ? false, gst_all_1 -, enableTesseract ? false, tesseract, leptonica -, enableTbb ? false, tbb -, enableOvis ? false, ogre -, enableGPhoto2 ? false, libgphoto2 -, enableDC1394 ? false, libdc1394 -, enableDocs ? false, doxygen, graphviz-nox +, enableUnfree ? false +, enableIpp ? false +, enablePython ? false +, pythonPackages +, enableGtk2 ? false +, gtk2 +, enableGtk3 ? false +, gtk3 +, enableVtk ? false +, vtk +, enableFfmpeg ? true +, ffmpeg_3 +, enableGStreamer ? true +, gst_all_1 +, enableTesseract ? false +, tesseract +, leptonica +, enableTbb ? false +, tbb +, enableOvis ? false +, ogre +, enableGPhoto2 ? false +, libgphoto2 +, enableDC1394 ? false +, libdc1394 +, enableDocs ? false +, doxygen +, graphviz-nox -, AVFoundation, Cocoa, VideoDecodeAcceleration, CoreMedia, MediaToolbox, bzip2 +, AVFoundation +, Cocoa +, VideoDecodeAcceleration +, CoreMedia +, MediaToolbox +, bzip2 }: let - version = "4.3.0"; + version = "4.5.2"; src = fetchFromGitHub { - owner = "opencv"; - repo = "opencv"; - rev = version; - sha256 = "1r9bq9p1x99g2y8jvj9428sgqvljz75dm5vrfsma7hh5wjhz9775"; + owner = "opencv"; + repo = "opencv"; + rev = version; + sha256 = "sha256-pxi1VBF4txvRqspdqvCsAQ3XKzl633/o3wyOgD9wid4="; }; contribSrc = fetchFromGitHub { - owner = "opencv"; - repo = "opencv_contrib"; - rev = version; - sha256 = "068b4f95rlryab3mffxs2w6dnbmbhrnpsdgl007rxk4bwnz29y49"; + owner = "opencv"; + repo = "opencv_contrib"; + rev = version; + sha256 = "sha256-iMenRTY+qeL7WRgnRuQbsHflYDakE7pWWSHeIjrg0Iw="; }; # Contrib must be built in order to enable Tesseract support: @@ -57,35 +94,35 @@ let # See opencv/3rdparty/ippicv/ippicv.cmake ippicv = { src = fetchFromGitHub { - owner = "opencv"; - repo = "opencv_3rdparty"; - rev = "a56b6ac6f030c312b2dce17430eef13aed9af274"; + owner = "opencv"; + repo = "opencv_3rdparty"; + rev = "a56b6ac6f030c312b2dce17430eef13aed9af274"; sha256 = "1msbkc3zixx61rcg6a04i1bcfhw1phgsrh93glq1n80hgsk3nbjq"; } + "/ippicv"; - files = let name = platform : "ippicv_2019_${platform}_general_20180723.tgz"; in + files = let name = platform: "ippicv_2019_${platform}_general_20180723.tgz"; in if stdenv.hostPlatform.system == "x86_64-linux" then - { ${name "lnx_intel64"} = "c0bd78adb4156bbf552c1dfe90599607"; } + { ${name "lnx_intel64"} = "c0bd78adb4156bbf552c1dfe90599607"; } else if stdenv.hostPlatform.system == "i686-linux" then - { ${name "lnx_ia32"} = "4f38432c30bfd6423164b7a24bbc98a0"; } + { ${name "lnx_ia32"} = "4f38432c30bfd6423164b7a24bbc98a0"; } else if stdenv.hostPlatform.system == "x86_64-darwin" then - { ${name "mac_intel64"} = "fe6b2bb75ae0e3f19ad3ae1a31dfa4a2"; } + { ${name "mac_intel64"} = "fe6b2bb75ae0e3f19ad3ae1a31dfa4a2"; } else - throw "ICV is not available for this platform (or not yet supported by this package)"; + throw "ICV is not available for this platform (or not yet supported by this package)"; dst = ".cache/ippicv"; }; # See opencv_contrib/modules/xfeatures2d/cmake/download_vgg.cmake vgg = { src = fetchFromGitHub { - owner = "opencv"; - repo = "opencv_3rdparty"; - rev = "fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d"; + owner = "opencv"; + repo = "opencv_3rdparty"; + rev = "fccf7cd6a4b12079f73bbfb21745f9babcd4eb1d"; sha256 = "0r9fam8dplyqqsd3qgpnnfgf9l7lj44di19rxwbm8mxiw0rlcdvy"; }; files = { - "vgg_generated_48.i" = "e8d0dcd54d1bcfdc29203d011a797179"; - "vgg_generated_64.i" = "7126a5d9a8884ebca5aea5d63d677225"; - "vgg_generated_80.i" = "7cd47228edec52b6d82f46511af325c5"; + "vgg_generated_48.i" = "e8d0dcd54d1bcfdc29203d011a797179"; + "vgg_generated_64.i" = "7126a5d9a8884ebca5aea5d63d677225"; + "vgg_generated_80.i" = "7cd47228edec52b6d82f46511af325c5"; "vgg_generated_120.i" = "151805e03568c9f490a5e3a872777b75"; }; dst = ".cache/xfeatures2d/vgg"; @@ -94,19 +131,19 @@ let # See opencv_contrib/modules/xfeatures2d/cmake/download_boostdesc.cmake boostdesc = { src = fetchFromGitHub { - owner = "opencv"; - repo = "opencv_3rdparty"; - rev = "34e4206aef44d50e6bbcd0ab06354b52e7466d26"; + owner = "opencv"; + repo = "opencv_3rdparty"; + rev = "34e4206aef44d50e6bbcd0ab06354b52e7466d26"; sha256 = "13yig1xhvgghvxspxmdidss5lqiikpjr0ddm83jsi0k85j92sn62"; }; files = { - "boostdesc_bgm.i" = "0ea90e7a8f3f7876d450e4149c97c74f"; - "boostdesc_bgm_bi.i" = "232c966b13651bd0e46a1497b0852191"; - "boostdesc_bgm_hd.i" = "324426a24fa56ad9c5b8e3e0b3e5303e"; + "boostdesc_bgm.i" = "0ea90e7a8f3f7876d450e4149c97c74f"; + "boostdesc_bgm_bi.i" = "232c966b13651bd0e46a1497b0852191"; + "boostdesc_bgm_hd.i" = "324426a24fa56ad9c5b8e3e0b3e5303e"; "boostdesc_binboost_064.i" = "202e1b3e9fec871b04da31f7f016679f"; "boostdesc_binboost_128.i" = "98ea99d399965c03d555cef3ea502a0b"; "boostdesc_binboost_256.i" = "e6dcfa9f647779eb1ce446a8d759b6ea"; - "boostdesc_lbgm.i" = "0ae0675534aa318d9668f2a179c2a052"; + "boostdesc_lbgm.i" = "0ae0675534aa318d9668f2a179c2a052"; }; dst = ".cache/xfeatures2d/boostdesc"; }; @@ -114,9 +151,9 @@ let # See opencv_contrib/modules/face/CMakeLists.txt face = { src = fetchFromGitHub { - owner = "opencv"; - repo = "opencv_3rdparty"; - rev = "8afa57abc8229d611c4937165d20e2a2d9fc5a12"; + owner = "opencv"; + repo = "opencv_3rdparty"; + rev = "8afa57abc8229d611c4937165d20e2a2d9fc5a12"; sha256 = "061lsvqdidq9xa2hwrcvwi9ixflr2c2lfpc8drr159g68zi8bp4v"; }; files = { @@ -136,10 +173,27 @@ let dst = ".cache/ade"; }; + # See opencv/modules/wechat_qrcode/CMakeLists.txt + wechat_qrcode = { + src = fetchFromGitHub { + owner = "opencv"; + repo = "opencv_3rdparty"; + rev = "a8b69ccc738421293254aec5ddb38bd523503252"; + sha256 = "sha256-/n6zHwf0Rdc4v9o4rmETzow/HTv+81DnHP+nL56XiTY="; + }; + files = { + "detect.caffemodel" = "238e2b2d6f3c18d6c3a30de0c31e23cf"; + "detect.prototxt" = "6fb4976b32695f9f5c6305c19f12537d"; + "sr.caffemodel" = "cbfcd60361a73beb8c583eea7e8e6664"; + "sr.prototxt" = "69db99927a70df953b471daaba03fbef"; + }; + dst = ".cache/wechat_qrcode"; + }; + # See opencv/cmake/OpenCVDownload.cmake - installExtraFiles = extra : with lib; '' + installExtraFiles = extra: with lib; '' mkdir -p "${extra.dst}" - '' + concatStrings (flip mapAttrsToList extra.files (name : md5 : '' + '' + concatStrings (flip mapAttrsToList extra.files (name: md5: '' ln -s "${extra.src}/${name}" "${extra.dst}/${md5}-${name}" '')); installExtraFile = extra: '' @@ -149,7 +203,7 @@ let opencvFlag = name: enabled: "-DWITH_${name}=${printEnabled enabled}"; - printEnabled = enabled : if enabled then "ON" else "OFF"; + printEnabled = enabled: if enabled then "ON" else "OFF"; in stdenv.mkDerivation { @@ -172,13 +226,15 @@ stdenv.mkDerivation { preConfigure = installExtraFile ade + lib.optionalString enableIpp (installExtraFiles ippicv) + ( - lib.optionalString buildContrib '' - cmakeFlagsArray+=("-DOPENCV_EXTRA_MODULES_PATH=$NIX_BUILD_TOP/source/opencv_contrib") + lib.optionalString buildContrib '' + cmakeFlagsArray+=("-DOPENCV_EXTRA_MODULES_PATH=$NIX_BUILD_TOP/source/opencv_contrib") - ${installExtraFiles vgg} - ${installExtraFiles boostdesc} - ${installExtraFiles face} - ''); + ${installExtraFiles vgg} + ${installExtraFiles boostdesc} + ${installExtraFiles face} + ${installExtraFiles wechat_qrcode} + '' + ); postConfigure = '' [ -e modules/core/version_string.inc ] @@ -186,7 +242,7 @@ stdenv.mkDerivation { ''; buildInputs = - [ zlib pcre hdf5 glog boost gflags protobuf ] + [ zlib pcre hdf5 boost gflags protobuf ] ++ lib.optional enablePython pythonPackages.python ++ lib.optional enableGtk2 gtk2 ++ lib.optional enableGtk3 gtk3 @@ -198,7 +254,7 @@ stdenv.mkDerivation { ++ lib.optionals enableEXR [ openexr ilmbase ] ++ lib.optional enableFfmpeg ffmpeg_3 ++ lib.optionals (enableFfmpeg && stdenv.isDarwin) - [ VideoDecodeAcceleration bzip2 ] + [ VideoDecodeAcceleration bzip2 ] ++ lib.optionals enableGStreamer (with gst_all_1; [ gstreamer gst-plugins-base ]) ++ lib.optional enableOvis ogre ++ lib.optional enableGPhoto2 libgphoto2 @@ -274,15 +330,13 @@ stdenv.mkDerivation { "$out/lib/pkgconfig/opencv4.pc" ''; - hardeningDisable = [ "bindnow" "relro" ]; - - passthru = lib.optionalAttrs enablePython { pythonPath = []; }; + passthru = lib.optionalAttrs enablePython { pythonPath = [ ]; }; meta = with lib; { description = "Open Computer Vision Library with more than 500 algorithms"; homepage = "https://opencv.org/"; license = with licenses; if enableUnfree then unfree else bsd3; - maintainers = with maintainers; [mdaiter basvandijk]; + maintainers = with maintainers; [ mdaiter basvandijk ]; platforms = with platforms; linux ++ darwin; }; } diff --git a/pkgs/development/libraries/opencv/cmake-don-t-use-OpenCVFindOpenEXR.patch b/pkgs/development/libraries/opencv/cmake-don-t-use-OpenCVFindOpenEXR.patch index dc80b09b646..bb398f7546b 100644 --- a/pkgs/development/libraries/opencv/cmake-don-t-use-OpenCVFindOpenEXR.patch +++ b/pkgs/development/libraries/opencv/cmake-don-t-use-OpenCVFindOpenEXR.patch @@ -1,40 +1,17 @@ -From 6d988c08e852379a163ecd20df8639196d84d014 Mon Sep 17 00:00:00 2001 -From: Bernardo Meurer -Date: Sun, 26 Apr 2020 14:50:25 -0700 -Subject: [PATCH] cmake: don't use OpenCVFindOpenEXR - -Use find_package for this. ---- - CMakeLists.txt | 2 ++ - cmake/OpenCVFindLibsGrfmt.cmake | 15 +++------------ - 2 files changed, 5 insertions(+), 12 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 4c0b3880fc..0360469350 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -14,6 +14,8 @@ FATAL: In-source builds are not allowed. - ") - endif() - -+# the future! -+include(FindPkgConfig) - - include(cmake/OpenCVMinDepVersions.cmake) - diff --git a/cmake/OpenCVFindLibsGrfmt.cmake b/cmake/OpenCVFindLibsGrfmt.cmake -index 0beaf19317..4c5e46e615 100644 +index 23a6ca6959..27e121943a 100644 --- a/cmake/OpenCVFindLibsGrfmt.cmake +++ b/cmake/OpenCVFindLibsGrfmt.cmake -@@ -227,20 +227,11 @@ endif() +@@ -255,21 +255,12 @@ endif() # --- OpenEXR (optional) --- if(WITH_OPENEXR) ocv_clear_vars(HAVE_OPENEXR) - if(NOT BUILD_OPENEXR) +- ocv_clear_internal_cache_vars(OPENEXR_INCLUDE_PATHS OPENEXR_LIBRARIES OPENEXR_ILMIMF_LIBRARY OPENEXR_VERSION) - include("${OpenCV_SOURCE_DIR}/cmake/OpenCVFindOpenEXR.cmake") - endif() -- + pkg_check_modules(OPENEXR OpenEXR) + if(OPENEXR_FOUND) set(HAVE_OPENEXR YES) - else() @@ -50,6 +27,3 @@ index 0beaf19317..4c5e46e615 100644 endif() endif() --- -2.26.1 - From 8da4120a905fb7cc625c2ce9e05996a4506c401d Mon Sep 17 00:00:00 2001 From: Jonathan Ringer Date: Mon, 12 Apr 2021 11:15:06 -0700 Subject: [PATCH 12/81] buck: 2019.10.17.01 -> 2021.01.12.01 --- .../tools/build-managers/buck/default.nix | 17 +++++++++-------- pkgs/top-level/all-packages.nix | 4 +--- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/pkgs/development/tools/build-managers/buck/default.nix b/pkgs/development/tools/build-managers/buck/default.nix index 0fbcb95704b..c275d5bc30a 100644 --- a/pkgs/development/tools/build-managers/buck/default.nix +++ b/pkgs/development/tools/build-managers/buck/default.nix @@ -1,14 +1,14 @@ -{ lib, stdenv, fetchFromGitHub, jdk, ant, python2, python2Packages, watchman, bash, makeWrapper }: +{ lib, stdenv, fetchFromGitHub, jdk11, ant, python3, watchman, bash, makeWrapper }: stdenv.mkDerivation rec { pname = "buck"; - version = "2019.10.17.01"; + version = "2021.01.12.01"; src = fetchFromGitHub { owner = "facebook"; repo = pname; rev = "v${version}"; - sha256 = "1irgp8yq1z11bq3b83yxvj35wqqq7y7b8q4d4y0hc05ac19ja0vj"; + sha256 = "sha256-NFiMQ+cG93R10LlkfUMzZ4TnV0uO5G+8S5TiMI6hU5o="; }; patches = [ ./pex-mtime.patch ]; @@ -17,20 +17,21 @@ stdenv.mkDerivation rec { grep -l -r '/bin/bash' --null | xargs -0 sed -i -e "s!/bin/bash!${bash}/bin/bash!g" ''; - buildInputs = [ jdk ant python2 watchman python2Packages.pywatchman ]; - nativeBuildInputs = [ makeWrapper ]; + nativeBuildInputs = [ makeWrapper python3 jdk11 ant watchman ]; buildPhase = '' + # Set correct version, see https://github.com/facebook/buck/issues/2607 + echo v${version} > .buckrelease + ant PYTHONDONTWRITEBYTECODE=true ./bin/buck build -c buck.release_version=${version} buck ''; installPhase = '' - install -D -m755 buck-out/gen/programs/buck.pex $out/bin/buck + install -D -m755 buck-out/gen/*/programs/buck.pex $out/bin/buck wrapProgram $out/bin/buck \ - --prefix PYTHONPATH : $PYTHONPATH \ - --prefix PATH : "${lib.makeBinPath [jdk watchman]}" + --prefix PATH : "${lib.makeBinPath [ jdk11 watchman python3 ]}" ''; meta = with lib; { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 11ea45298e3..93e49486280 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12322,9 +12322,7 @@ in wxGTK = wxGTK30; }; - buck = callPackage ../development/tools/build-managers/buck { - jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 - }; + buck = callPackage ../development/tools/build-managers/buck { }; buildkite-agent = buildkite-agent3; buildkite-agent2 = throw "pkgs.buildkite-agent2 has been discontinued. Please use pkgs.buildkite-agent (v3.x)"; From 3b026ab7e2238c1c126f0482b819bac35cb801c0 Mon Sep 17 00:00:00 2001 From: Malo Bourgon Date: Mon, 12 Apr 2021 18:56:34 -0700 Subject: [PATCH 13/81] maintainers: add malo --- maintainers/maintainer-list.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 969d6ab338e..b0d4db621c9 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -5938,6 +5938,12 @@ githubId = 115218; name = "Felix Richter"; }; + malo = { + email = "mbourgon@gmail.com"; + github = "malob"; + githubId = 2914269; + name = "Malo Bourgon"; + }; malyn = { email = "malyn@strangeGizmo.com"; github = "malyn"; From a1e28d3740c921e303cb0a75953a6f44fef4e7c1 Mon Sep 17 00:00:00 2001 From: "Bryan A. S" Date: Mon, 22 Mar 2021 20:06:40 -0300 Subject: [PATCH 14/81] doc/builders/packages/dlib.xml: Convert to markdown Signed-off-by: Bryan A. S --- doc/builders/packages/dlib.section.md | 13 +++++++++++++ doc/builders/packages/dlib.xml | 24 ------------------------ doc/builders/packages/index.xml | 2 +- 3 files changed, 14 insertions(+), 25 deletions(-) create mode 100644 doc/builders/packages/dlib.section.md delete mode 100644 doc/builders/packages/dlib.xml diff --git a/doc/builders/packages/dlib.section.md b/doc/builders/packages/dlib.section.md new file mode 100644 index 00000000000..8f0aa861018 --- /dev/null +++ b/doc/builders/packages/dlib.section.md @@ -0,0 +1,13 @@ +# DLib {#dlib} + +[DLib](http://dlib.net/) is a modern, C++-based toolkit which provides several machine learning algorithms. + +## Compiling without AVX support {#compiling-without-avx-support} + +Especially older CPUs don\'t support [AVX](https://en.wikipedia.org/wiki/Advanced_Vector_Extensions) (Advanced Vector Extensions) instructions that are used by DLib to optimize their algorithms. + +On the affected hardware errors like `Illegal instruction` will occur. In those cases AVX support needs to be disabled: + +```nix +self: super: { dlib = super.dlib.override { avxSupport = false; }; } +``` diff --git a/doc/builders/packages/dlib.xml b/doc/builders/packages/dlib.xml deleted file mode 100644 index 5f768dd51b6..00000000000 --- a/doc/builders/packages/dlib.xml +++ /dev/null @@ -1,24 +0,0 @@ -
- DLib - - - DLib is a modern, C++-based toolkit which provides several machine learning algorithms. - - -
- Compiling without AVX support - - - Especially older CPUs don't support AVX (Advanced Vector Extensions) instructions that are used by DLib to optimize their algorithms. - - - - On the affected hardware errors like Illegal instruction will occur. In those cases AVX support needs to be disabled: -self: super: { - dlib = super.dlib.override { avxSupport = false; }; -} - -
-
diff --git a/doc/builders/packages/index.xml b/doc/builders/packages/index.xml index a2bcd431531..f5b05b0bbcc 100644 --- a/doc/builders/packages/index.xml +++ b/doc/builders/packages/index.xml @@ -6,7 +6,7 @@ This chapter contains information about how to use and maintain the Nix expressions for a number of specific packages, such as the Linux kernel or X.org. - + From bf2a1c57f96e2ff5b6381b02f37867942ce35eb1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Tue, 13 Apr 2021 18:48:51 -0300 Subject: [PATCH 15/81] xfce.xfce4-settings: 4.16.0 -> 4.16.1 --- pkgs/desktops/xfce/core/xfce4-settings/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/desktops/xfce/core/xfce4-settings/default.nix b/pkgs/desktops/xfce/core/xfce4-settings/default.nix index 71645cd1f98..cca80708034 100644 --- a/pkgs/desktops/xfce/core/xfce4-settings/default.nix +++ b/pkgs/desktops/xfce/core/xfce4-settings/default.nix @@ -5,9 +5,9 @@ mkXfceDerivation { category = "xfce"; pname = "xfce4-settings"; - version = "4.16.0"; + version = "4.16.1"; - sha256 = "0iha3jm7vmgk6hq7z4l2r7w9qm5jraka0z580i8i83704kfx9g0y"; + sha256 = "0mjhglfsqmiycpv98l09n2556288g2713n4pvxn0srivm017fdir"; postPatch = '' for f in xfsettingsd/pointers.c dialogs/mouse-settings/main.c; do From f5922de1d76d9b15856afe7e36e03951ef42a753 Mon Sep 17 00:00:00 2001 From: Philipp Mildenberger Date: Wed, 14 Apr 2021 01:39:27 +0200 Subject: [PATCH 16/81] nixos/oci-containers: add support for environment files --- nixos/modules/virtualisation/oci-containers.nix | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/nixos/modules/virtualisation/oci-containers.nix b/nixos/modules/virtualisation/oci-containers.nix index 2dd15e3aba4..ad436ed3014 100644 --- a/nixos/modules/virtualisation/oci-containers.nix +++ b/nixos/modules/virtualisation/oci-containers.nix @@ -59,6 +59,18 @@ let ''; }; + environmentFiles = mkOption { + type = with types; listOf path; + default = []; + description = "Environment files for this container."; + example = literalExample '' + [ + /path/to/.env + /path/to/.env.secret + ] + ''; + }; + log-driver = mkOption { type = types.str; default = "journald"; @@ -236,6 +248,7 @@ let ] ++ optional (container.entrypoint != null) "--entrypoint=${escapeShellArg container.entrypoint}" ++ (mapAttrsToList (k: v: "-e ${escapeShellArg k}=${escapeShellArg v}") container.environment) + ++ map (f: "--env-file ${escapeShellArg f}") container.environmentFiles ++ map (p: "-p ${escapeShellArg p}") container.ports ++ optional (container.user != null) "-u ${escapeShellArg container.user}" ++ map (v: "-v ${escapeShellArg v}") container.volumes From f21bfdd75b7d59b409df0550024526c2d464e00c Mon Sep 17 00:00:00 2001 From: midchildan Date: Fri, 26 Mar 2021 01:33:16 +0900 Subject: [PATCH 17/81] curlftpfs: add darwin build --- pkgs/tools/filesystems/curlftpfs/default.nix | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/pkgs/tools/filesystems/curlftpfs/default.nix b/pkgs/tools/filesystems/curlftpfs/default.nix index 4bfa22838ad..2c5d886c14d 100644 --- a/pkgs/tools/filesystems/curlftpfs/default.nix +++ b/pkgs/tools/filesystems/curlftpfs/default.nix @@ -1,4 +1,4 @@ -{lib, stdenv, fetchurl, fuse, curl, pkg-config, glib, zlib}: +{ lib, stdenv, fetchurl, autoreconfHook, fuse, curl, pkg-config, glib, zlib }: stdenv.mkDerivation { name = "curlftpfs-0.9.2"; @@ -6,8 +6,18 @@ stdenv.mkDerivation { url = "mirror://sourceforge/curlftpfs/curlftpfs-0.9.2.tar.gz"; sha256 = "0n397hmv21jsr1j7zx3m21i7ryscdhkdsyqpvvns12q7qwwlgd2f"; }; - nativeBuildInputs = [ pkg-config ]; - buildInputs = [fuse curl glib zlib]; + nativeBuildInputs = [ autoreconfHook pkg-config ]; + buildInputs = [ fuse curl glib zlib ]; + + CFLAGS = lib.optionalString stdenv.isDarwin "-D__off_t=off_t"; + + postPatch = lib.optionalString stdenv.isDarwin '' + # Fix the build on macOS with macFUSE installed. Needs autoreconfHook for + # this change to effect + substituteInPlace configure.ac --replace \ + 'export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH' \ + "" + ''; doCheck = false; # fails, doesn't work well too, btw @@ -15,7 +25,6 @@ stdenv.mkDerivation { description = "Filesystem for accessing FTP hosts based on FUSE and libcurl"; homepage = "http://curlftpfs.sourceforge.net"; license = licenses.gpl2; - platforms = platforms.linux; - + platforms = platforms.unix; }; } From 94914230b33a1d4266bb2c72cdf0b205aac00b88 Mon Sep 17 00:00:00 2001 From: midchildan Date: Fri, 26 Mar 2021 01:34:10 +0900 Subject: [PATCH 18/81] cryfs: add darwin build --- pkgs/tools/filesystems/cryfs/default.nix | 15 +- .../tools/filesystems/cryfs/use-macfuse.patch | 207 ++++++++++++++++++ 2 files changed, 217 insertions(+), 5 deletions(-) create mode 100644 pkgs/tools/filesystems/cryfs/use-macfuse.patch diff --git a/pkgs/tools/filesystems/cryfs/default.nix b/pkgs/tools/filesystems/cryfs/default.nix index eec257c44b7..a0dc3124159 100644 --- a/pkgs/tools/filesystems/cryfs/default.nix +++ b/pkgs/tools/filesystems/cryfs/default.nix @@ -25,6 +25,9 @@ stdenv.mkDerivation rec { url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/sys-fs/cryfs/files/cryfs-0.10.2-unbundle-libs.patch?id=192ac7421ddd4093125f4997898fb62e8a140a44"; sha256 = "0hzss5rawcjrh8iqzc40w5yjhxdqya4gbg6dzap70180s50mahzs"; }) + + # Backported from https://github.com/cryfs/cryfs/pull/378 + ./use-macfuse.patch ]; postPatch = '' @@ -48,16 +51,18 @@ stdenv.mkDerivation rec { strictDeps = true; - buildInputs = [ boost cryptopp curl fuse openssl gtest ]; + buildInputs = [ boost cryptopp curl fuse openssl ]; + + checkInputs = [ gtest ]; cmakeFlags = [ "-DCRYFS_UPDATE_CHECKS:BOOL=FALSE" "-DBoost_USE_STATIC_LIBS:BOOL=FALSE" # this option is case sensitive "-DUSE_SYSTEM_LIBS:BOOL=TRUE" - "-DBUILD_TESTING:BOOL=TRUE" - ]; + "-DBUILD_TESTING:BOOL=${if doCheck then "TRUE" else "FALSE"}" + ] ++ lib.optional doCheck "-DCMAKE_PREFIX_PATH=${gtest.dev}/lib/cmake"; - doCheck = (!stdenv.isDarwin); # Cryfs tests are broken on darwin + doCheck = true; checkPhase = '' # Skip CMakeFiles directory and tests depending on fuse (does not work well with sandboxing) @@ -73,6 +78,6 @@ stdenv.mkDerivation rec { homepage = "https://www.cryfs.org"; license = licenses.lgpl3; maintainers = with maintainers; [ peterhoeg c0bw3b ]; - platforms = with platforms; linux; + platforms = platforms.unix; }; } diff --git a/pkgs/tools/filesystems/cryfs/use-macfuse.patch b/pkgs/tools/filesystems/cryfs/use-macfuse.patch new file mode 100644 index 00000000000..47e7845cf3d --- /dev/null +++ b/pkgs/tools/filesystems/cryfs/use-macfuse.patch @@ -0,0 +1,207 @@ +diff --git a/.travisci/install.sh b/.travisci/install.sh +index 9057a75b..2929c360 100755 +--- a/.travisci/install.sh ++++ b/.travisci/install.sh +@@ -6,12 +6,11 @@ set -e + if [ "${CXX}" == "g++" ]; then + # We need to uninstall oclint because it creates a /usr/local/include/c++ symlink that clashes with the gcc5 package + # see https://github.com/Homebrew/homebrew-core/issues/21172 +- brew cask uninstall oclint ++ brew uninstall oclint + brew install gcc@7 + fi + +-brew cask install osxfuse +-brew install libomp ++brew install libomp pkg-config macfuse + + # By default, travis only fetches the newest 50 commits. We need more in case we're further from the last version tag, so the build doesn't fail because it can't generate the version number. + git fetch --unshallow --tags +diff --git a/README.md b/README.md +index b0f4a684..7001119a 100644 +--- a/README.md ++++ b/README.md +@@ -19,7 +19,7 @@ OSX + + CryFS is distributed via Homebrew. Just do + +- brew cask install osxfuse ++ brew install osxfuse + brew install cryfs + + Windows (experimental) +@@ -45,6 +45,7 @@ Requirements + - Git (for getting the source code) + - GCC version >= 5.0 or Clang >= 4.0 + - CMake version >= 3.0 ++ - pkg-config (on Unix) + - libcurl4 (including development headers) + - Boost libraries version >= 1.65.1 (including development headers) + - filesystem +@@ -53,20 +54,20 @@ Requirements + - program_options + - thread + - SSL development libraries (including development headers, e.g. libssl-dev) +- - libFUSE version >= 2.8.6 (including development headers), on Mac OS X instead install osxfuse from https://osxfuse.github.io/ ++ - libFUSE version >= 2.8.6 (including development headers), on Mac OS X instead install macFUSE from https://osxfuse.github.io/ + - Python >= 2.7 + - OpenMP + + You can use the following commands to install these requirements + + # Ubuntu +- $ sudo apt install git g++ cmake make libcurl4-openssl-dev libboost-filesystem-dev libboost-system-dev libboost-chrono-dev libboost-program-options-dev libboost-thread-dev libssl-dev libfuse-dev python ++ $ sudo apt install git g++ cmake make pkg-config libcurl4-openssl-dev libboost-filesystem-dev libboost-system-dev libboost-chrono-dev libboost-program-options-dev libboost-thread-dev libssl-dev libfuse-dev python + + # Fedora +- sudo dnf install git gcc-c++ cmake make libcurl-devel boost-devel boost-static openssl-devel fuse-devel python ++ sudo dnf install git gcc-c++ cmake make pkgconf libcurl-devel boost-devel boost-static openssl-devel fuse-devel python + + # Macintosh +- brew install cmake boost openssl libomp ++ brew install cmake pkg-config boost openssl libomp + + Build & Install + --------------- +@@ -116,17 +117,17 @@ On most systems, CMake should find the libraries automatically. However, that do + + cmake .. -DBoost_USE_STATIC_LIBS=off + +-2. **Fuse/Osxfuse library not found** ++2. **Fuse library not found** + + Pass in the library path with + +- cmake .. -DFUSE_LIB_PATH=/path/to/fuse/or/osxfuse ++ PKG_CONFIG_PATH=/path-to-fuse-or-macFUSE/lib/pkgconfig cmake .. + +-3. **Fuse/Osxfuse headers not found** ++3. **Fuse headers not found** + + Pass in the include path with + +- cmake .. -DCMAKE_CXX_FLAGS="-I/path/to/fuse/or/osxfuse/headers" ++ PKG_CONFIG_PATH=/path-to-fuse-or-macFUSE/lib/pkgconfig cmake .. + + 4. **Openssl headers not found** + +diff --git a/cmake-utils/utils.cmake b/cmake-utils/utils.cmake +index da4dff8c..66021c5c 100644 +--- a/cmake-utils/utils.cmake ++++ b/cmake-utils/utils.cmake +@@ -157,33 +157,6 @@ function(require_clang_version VERSION) + endif(CMAKE_CXX_COMPILER_ID MATCHES "Clang") + endfunction(require_clang_version) + +-################################################## +-# Find the location of a library and return its full path in OUTPUT_VARIABLE. +-# If PATH_VARIABLE points to a defined variable, then the library will only be searched in this path. +-# If PATH_VARIABLE points to a undefined variable, default system locations will be searched. +-# +-# Uses (the following will search for fuse in system locations by default, and if the user passes -DFUSE_LIB_PATH to cmake, it will only search in this path. +-# find_library_with_path(MYLIBRARY fuse FUSE_LIB_PATH) +-# target_link_library(target ${MYLIBRARY}) +-################################################## +-function(find_library_with_path OUTPUT_VARIABLE LIBRARY_NAME PATH_VARIABLE) +- if(${PATH_VARIABLE}) +- find_library(${OUTPUT_VARIABLE} ${LIBRARY_NAME} PATHS ${${PATH_VARIABLE}} NO_DEFAULT_PATH) +- if (${OUTPUT_VARIABLE} MATCHES NOTFOUND) +- message(FATAL_ERROR "Didn't find ${LIBRARY_NAME} in path specified by the ${PATH_VARIABLE} parameter (${${PATH_VARIABLE}}). Pass in the correct path or remove the parameter to try common system locations.") +- else(${OUTPUT_VARIABLE} MATCHES NOTFOUND) +- message(STATUS "Found ${LIBRARY_NAME} in user-defined path ${${PATH_VARIABLE}}") +- endif(${OUTPUT_VARIABLE} MATCHES NOTFOUND) +- else(${PATH_VARIABLE}) +- find_library(${OUTPUT_VARIABLE} ${LIBRARY_NAME}) +- if (${OUTPUT_VARIABLE} MATCHES NOTFOUND) +- message(FATAL_ERROR "Didn't find ${LIBRARY_NAME} library. If ${LIBRARY_NAME} is installed, try passing in the library location with -D${PATH_VARIABLE}=/path/to/${LIBRARY_NAME}/lib.") +- else(${OUTPUT_VARIABLE} MATCHES NOTFOUND) +- message(STATUS "Found ${LIBRARY_NAME} in system location") +- endif(${OUTPUT_VARIABLE} MATCHES NOTFOUND) +- endif(${PATH_VARIABLE}) +-endfunction(find_library_with_path) +- + include(cmake-utils/TargetArch.cmake) + function(get_target_architecture output_var) + target_architecture(local_output_var) +diff --git a/src/fspp/fuse/CMakeLists.txt b/src/fspp/fuse/CMakeLists.txt +index b991bd72..8df3dbb7 100644 +--- a/src/fspp/fuse/CMakeLists.txt ++++ b/src/fspp/fuse/CMakeLists.txt +@@ -35,12 +35,12 @@ if(${CMAKE_SYSTEM_NAME} MATCHES "Windows") + DESTINATION "${CMAKE_INSTALL_BINDIR}" + ) + +-elseif(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") +- set(CMAKE_FIND_FRAMEWORK LAST) +- find_library_with_path(FUSE "osxfuse" FUSE_LIB_PATH) +- target_link_libraries(${PROJECT_NAME} PUBLIC ${FUSE}) +-else() # Linux +- find_library_with_path(FUSE "fuse" FUSE_LIB_PATH) +- target_link_libraries(${PROJECT_NAME} PUBLIC ${FUSE}) ++else() # Linux and macOS ++ find_package(PkgConfig REQUIRED) ++ pkg_check_modules(Fuse REQUIRED IMPORTED_TARGET fuse) ++ target_link_libraries(${PROJECT_NAME} PUBLIC PkgConfig::Fuse) + endif() + ++if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") ++ set(CMAKE_FIND_FRAMEWORK LAST) ++endif() +diff --git a/src/fspp/fuse/Fuse.cpp b/src/fspp/fuse/Fuse.cpp +index 52cd5644..df0b400d 100644 +--- a/src/fspp/fuse/Fuse.cpp ++++ b/src/fspp/fuse/Fuse.cpp +@@ -295,7 +295,7 @@ vector Fuse::_build_argv(const bf::path &mountdir, const vector + // Make volume name default to mountdir on macOS + _add_fuse_option_if_not_exists(&argv, "volname", mountdir.filename().string()); + #endif +- // TODO Also set read/write size for osxfuse. The options there are called differently. ++ // TODO Also set read/write size for macFUSE. The options there are called differently. + // large_read not necessary because reads are large anyhow. This option is only important for 2.4. + //argv.push_back(_create_c_string("-o")); + //argv.push_back(_create_c_string("large_read")); +diff --git a/src/fspp/fuse/params.h b/src/fspp/fuse/params.h +index 4a45ef79..9903ac82 100644 +--- a/src/fspp/fuse/params.h ++++ b/src/fspp/fuse/params.h +@@ -3,14 +3,6 @@ + #define MESSMER_FSPP_FUSE_PARAMS_H_ + + #define FUSE_USE_VERSION 26 +-#if defined(__linux__) || defined(__FreeBSD__) + #include +-#elif __APPLE__ +-#include +-#elif defined(_MSC_VER) +-#include // Dokany fuse +-#else +-#error System not supported +-#endif + + #endif +diff --git a/src/fspp/impl/FilesystemImpl.cpp b/src/fspp/impl/FilesystemImpl.cpp +index bc0ffbd7..23b28601 100644 +--- a/src/fspp/impl/FilesystemImpl.cpp ++++ b/src/fspp/impl/FilesystemImpl.cpp +@@ -321,7 +321,7 @@ void FilesystemImpl::statfs(struct ::statvfs *fsstat) { + fsstat->f_namemax = stat.max_filename_length; + + //f_frsize, f_favail, f_fsid and f_flag are ignored in fuse, see http://fuse.sourcearchive.com/documentation/2.7.0/structfuse__operations_4e765e29122e7b6b533dc99849a52655.html#4e765e29122e7b6b533dc99849a52655 +- fsstat->f_frsize = fsstat->f_bsize; // even though this is supposed to be ignored, osxfuse needs it. ++ fsstat->f_frsize = fsstat->f_bsize; // even though this is supposed to be ignored, macFUSE needs it. + } + + void FilesystemImpl::createSymlink(const bf::path &to, const bf::path &from, ::uid_t uid, ::gid_t gid) { +diff --git a/test/fspp/testutils/FuseThread.cpp b/test/fspp/testutils/FuseThread.cpp +index 277a2dac..7f3638db 100644 +--- a/test/fspp/testutils/FuseThread.cpp ++++ b/test/fspp/testutils/FuseThread.cpp +@@ -23,7 +23,7 @@ void FuseThread::start(const bf::path &mountDir, const vector &fuseOptio + //Wait until it is running (busy waiting is simple and doesn't hurt much here) + while(!_fuse->running()) {} + #ifdef __APPLE__ +- // On Mac OS X, _fuse->running() returns true too early, because osxfuse calls init() when it's not ready yet. Give it a bit time. ++ // On Mac OS X, _fuse->running() returns true too early, because macFUSE calls init() when it's not ready yet. Give it a bit time. + std::this_thread::sleep_for(std::chrono::milliseconds(200)); + #endif + } From 7a9dd6f3c37ff74e0b58da7dab6a890698c48e6d Mon Sep 17 00:00:00 2001 From: midchildan Date: Fri, 26 Mar 2021 01:34:35 +0900 Subject: [PATCH 19/81] archivemount: add darwin build --- pkgs/tools/filesystems/archivemount/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/filesystems/archivemount/default.nix b/pkgs/tools/filesystems/archivemount/default.nix index e3f9d8505fc..32c942aea5b 100644 --- a/pkgs/tools/filesystems/archivemount/default.nix +++ b/pkgs/tools/filesystems/archivemount/default.nix @@ -17,6 +17,6 @@ stdenv.mkDerivation { meta = { description = "Gateway between FUSE and libarchive: allows mounting of cpio, .tar.gz, .tar.bz2 archives"; license = lib.licenses.gpl2; - platforms = lib.platforms.linux; + platforms = lib.platforms.unix; }; } From ef3a48a77f193b4a6f0cb274a0533517e527dfb6 Mon Sep 17 00:00:00 2001 From: midchildan Date: Sun, 28 Mar 2021 22:03:27 +0900 Subject: [PATCH 20/81] libtorrent-rasterbar: restore darwin build --- pkgs/development/libraries/libtorrent-rasterbar/default.nix | 1 - 1 file changed, 1 deletion(-) diff --git a/pkgs/development/libraries/libtorrent-rasterbar/default.nix b/pkgs/development/libraries/libtorrent-rasterbar/default.nix index d17303bbb0e..90c14c6fdf9 100644 --- a/pkgs/development/libraries/libtorrent-rasterbar/default.nix +++ b/pkgs/development/libraries/libtorrent-rasterbar/default.nix @@ -41,7 +41,6 @@ in stdenv.mkDerivation { description = "A C++ BitTorrent implementation focusing on efficiency and scalability"; license = licenses.bsd3; maintainers = [ maintainers.phreedom ]; - broken = stdenv.isDarwin; platforms = platforms.unix; }; } From 67db526c02b25af7b9ada65dc86586159b78ab26 Mon Sep 17 00:00:00 2001 From: midchildan Date: Fri, 26 Mar 2021 01:35:19 +0900 Subject: [PATCH 21/81] btfs: add darwin build --- pkgs/os-specific/linux/btfs/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/btfs/default.nix b/pkgs/os-specific/linux/btfs/default.nix index 70864b311d2..342272f4286 100644 --- a/pkgs/os-specific/linux/btfs/default.nix +++ b/pkgs/os-specific/linux/btfs/default.nix @@ -22,6 +22,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/johang/btfs"; license = licenses.gpl3; maintainers = with maintainers; [ rnhmjoj ]; - platforms = platforms.linux; + platforms = platforms.unix; }; } From cbc730d14422f36239a5af07f9ad6425eb698730 Mon Sep 17 00:00:00 2001 From: midchildan Date: Sun, 28 Mar 2021 22:25:06 +0900 Subject: [PATCH 22/81] squashfs-tools-ng: document the specific blocker for a darwin build --- pkgs/tools/filesystems/squashfs-tools-ng/default.nix | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pkgs/tools/filesystems/squashfs-tools-ng/default.nix b/pkgs/tools/filesystems/squashfs-tools-ng/default.nix index 322f57fdca9..0763be782d8 100644 --- a/pkgs/tools/filesystems/squashfs-tools-ng/default.nix +++ b/pkgs/tools/filesystems/squashfs-tools-ng/default.nix @@ -19,6 +19,17 @@ stdenv.mkDerivation rec { license = licenses.gpl3Plus; maintainers = with maintainers; [ qyliss ]; platforms = platforms.unix; + + # TODO: Remove once nixpkgs uses newer SDKs that supports '*at' functions. + # Probably macOS SDK 10.13 or later. Check the current version in + # ../../../../os-specific/darwin/apple-sdk/default.nix + # + # From the build logs: + # + # > Undefined symbols for architecture x86_64: + # > "_utimensat", referenced from: + # > _set_attribs in rdsquashfs-restore_fstree.o + # > ld: symbol(s) not found for architecture x86_64 broken = stdenv.isDarwin; }; } From d1bb69207b454f902e98a3efac4f056e957b6f2b Mon Sep 17 00:00:00 2001 From: midchildan Date: Fri, 26 Mar 2021 01:36:50 +0900 Subject: [PATCH 23/81] squashfuse: add darwin build --- pkgs/tools/filesystems/squashfuse/default.nix | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/pkgs/tools/filesystems/squashfuse/default.nix b/pkgs/tools/filesystems/squashfuse/default.nix index a2e930f9155..14a7f602430 100644 --- a/pkgs/tools/filesystems/squashfuse/default.nix +++ b/pkgs/tools/filesystems/squashfuse/default.nix @@ -8,10 +8,6 @@ stdenv.mkDerivation rec { pname = "squashfuse"; version = "0.1.103"; - # platforms.darwin should be supported : see PLATFORMS file in src. - # we could use a nix fuseProvider, and let the derivation choose the OS - # specific implementation. - src = fetchFromGitHub { owner = "vasi"; repo = pname; @@ -26,7 +22,7 @@ stdenv.mkDerivation rec { description = "FUSE filesystem to mount squashfs archives"; homepage = "https://github.com/vasi/squashfuse"; maintainers = [ ]; - platforms = platforms.linux; + platforms = platforms.unix; license = "BSD-2-Clause"; }; } From 3c28a11bf6cf9b5baf21dd1b36697c84550e4821 Mon Sep 17 00:00:00 2001 From: midchildan Date: Fri, 26 Mar 2021 01:37:15 +0900 Subject: [PATCH 24/81] securefs: add darwin build --- .../securefs/add-macfuse-support.patch | 188 ++++++++++++++++++ pkgs/tools/filesystems/securefs/default.nix | 8 +- 2 files changed, 195 insertions(+), 1 deletion(-) create mode 100644 pkgs/tools/filesystems/securefs/add-macfuse-support.patch diff --git a/pkgs/tools/filesystems/securefs/add-macfuse-support.patch b/pkgs/tools/filesystems/securefs/add-macfuse-support.patch new file mode 100644 index 00000000000..217f637ff9d --- /dev/null +++ b/pkgs/tools/filesystems/securefs/add-macfuse-support.patch @@ -0,0 +1,188 @@ +From 8c65c2219976c02a68e27c28156ec0c4c02857e0 Mon Sep 17 00:00:00 2001 +From: midchildan +Date: Sun, 28 Mar 2021 23:39:59 +0900 +Subject: [PATCH] Support the latest FUSE on macOS + +This drops osxfuse support in favor of macFUSE. macFUSE is a newer +version of osxfuse that supports the latest release of macOS, and is a +rebranded version of the same project. +--- + CMakeLists.txt | 8 ++---- + LICENSE.md | 58 ++++++++++++++++++++------------------ + README.md | 2 +- + sources/commands.cpp | 6 ---- + 4 files changed, 33 insertions(+), 41 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 7b5e57d..c176554 100755 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -18,12 +18,8 @@ git_describe(GIT_VERSION --tags) + configure_file(${CMAKE_SOURCE_DIR}/sources/git-version.cpp.in ${CMAKE_BINARY_DIR}/git-version.cpp) + + if (UNIX) +- find_path(FUSE_INCLUDE_DIR fuse.h PATHS /usr/local/include PATH_SUFFIXES osxfuse) +- if (APPLE) +- find_library(FUSE_LIBRARIES osxfuse PATHS /usr/local/lib) +- else() +- find_library(FUSE_LIBRARIES fuse PATHS /usr/local/lib) +- endif() ++ find_path(FUSE_INCLUDE_DIR fuse.h PATHS /usr/local/include) ++ find_library(FUSE_LIBRARIES fuse PATHS /usr/local/lib) + include_directories(${FUSE_INCLUDE_DIR}) + link_libraries(${FUSE_LIBRARIES}) + add_compile_options(-Wall -Wextra -Wno-unknown-pragmas) +diff --git a/LICENSE.md b/LICENSE.md +index a8f920c..b134532 100644 +--- a/LICENSE.md ++++ b/LICENSE.md +@@ -758,13 +758,11 @@ Public License instead of this License. + + ------------------------------------------------------------------------------ + +-# [osxfuse] (https://github.com/osxfuse/osxfuse) ++# [macFUSE] (https://github.com/osxfuse/osxfuse) + +-FUSE for macOS is a software developed by the osxfuse project and is covered +-under the following BSD-style license: ++macFUSE is covered under the following license: + +- Copyright (c) 2011-2016 Benjamin Fleischer +- Copyright (c) 2011-2012 Erik Larsson ++ Copyright (c) 2011-2021 Benjamin Fleischer + All rights reserved. + + Redistribution and use in source and binary forms, with or without +@@ -775,9 +773,13 @@ under the following BSD-style license: + 2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +- 3. Neither the name of osxfuse nor the names of its contributors may be used +- to endorse or promote products derived from this software without specific +- prior written permission. ++ 3. Neither the name of the copyright holder nor the names of its contributors ++ may be used to endorse or promote products derived from this software ++ without specific prior written permission. ++ 4. Redistributions in binary form, bundled with commercial software, are not ++ allowed without specific prior written permission. This includes the ++ automated download or installation or both of the binary form in the ++ context of commercial software. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +@@ -791,9 +793,9 @@ under the following BSD-style license: + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +-FUSE for macOS is a fork of MacFUSE. MacFUSE has been developed by Google Inc.. +-Additional information and the original source of MacFUSE are available on +-http://code.google.com/p/macfuse/. MacFUSE is covered under the following ++macFUSE is a fork of the legacy Google MacFUSE software. Additional information ++and the original source code of Google MacFUSE are available on ++http://code.google.com/p/macfuse/. Google MacFUSE is covered under the following + BSD-style license: + + Copyright (c) 2007—2009 Google Inc. +@@ -830,9 +832,9 @@ BSD-style license: + Portions of this package were derived from code developed by other authors. + Please read further for specific details. + +-* Unless otherwise noted, parts of the FUSE for macOS kernel extension contain +- code derived from the FreeBSD version of FUSE, which is covered under the +- following BSD-style license: ++* Unless otherwise noted, parts of the macFUSE kernel extension contain code ++ derived from the FreeBSD version of FUSE, which is covered under the following ++ BSD-style license: + + Copyright (C) 2005 Csaba Henk. All rights reserved. + +@@ -856,12 +858,13 @@ Please read further for specific details. + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +-* Parts of the FUSE for macOS kernel extension contain code derived from Tuxera +- Inc.'s "rebel" branch. The original source of the "rebel" branch is available +- on https://github.com/tuxera. These modifications are covered under the +- following BSD-style license: ++* Parts of the macFUSE kernel extension contain code derived from Tuxera's ++ "rebel" branch. The original source code of the "rebel" branch is available on ++ https://github.com/tuxera. These modifications are covered under the following ++ BSD-style license: + + Copyright (c) 2010 Tuxera Inc. ++ Copyright (c) 2011-2012 Erik Larsson + All rights reserved. + + Redistribution and use in source and binary forms, with or without +@@ -888,9 +891,9 @@ Please read further for specific details. + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +-* Parts of FUSE for macOS contain code derived from Fuse4X. The original source +- of Fuse4X is available on https://github.com/fuse4x. Fuse4X is covered under +- the following BSD-style license: ++* Parts of macFUSE contain code derived from Fuse4X. The original source code of ++ Fuse4X is available on https://github.com/fuse4x. Fuse4X is covered under the ++ following BSD-style license: + + Copyright (c) 2011 Anatol Pomozov + All rights reserved. +@@ -916,21 +919,20 @@ Please read further for specific details. + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +-* Parts of the mount_osxfuse command-line program are covered under the Apple ++* Parts of the mount_macfuse command-line program are covered under the Apple + Public Source License (APSL). You can read the APSL at: + + http://www.opensource.apple.com/license/apsl/ + +-* fuse_kernel.h is an unmodified copy of the interface header from the Linux ++* fuse_kernel.h is a modified copy of the interface header from the Linux + FUSE distribution (https://github.com/libfuse/libfuse). fuse_kernel.h can be + redistributed either under the GPL or under the BSD license. It is being + redistributed here under the BSD license. + +-* fuse_nodehash.c is a slightly modified version of HashNode.c from an +- Apple Developer Technical Support (DTS) sample code example. The original +- source, which is available on +- http://developer.apple.com/library/mac/#samplecode/MFSLives/, has the +- following disclaimer: ++* fuse_nodehash.c is a modified version of HashNode.c from an Apple Developer ++ Technical Support (DTS) sample code example. The original source, which is ++ available on http://developer.apple.com/library/mac/#samplecode/MFSLives/, ++ has the following disclaimer: + + Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple + Computer, Inc. Apple") in consideration of your agreement to the following +diff --git a/README.md b/README.md +index 9085e96..6fe3592 100644 +--- a/README.md ++++ b/README.md +@@ -28,7 +28,7 @@ There are already many encrypting filesystem in widespread use. Some notable one + + ### macOS + +-Install with [Homebrew](https://brew.sh). [osxfuse](https://osxfuse.github.io) has to be installed beforehand. ++Install with [Homebrew](https://brew.sh). [macFUSE](https://osxfuse.github.io) has to be installed beforehand. + ``` + brew install securefs + ``` +diff --git a/sources/commands.cpp b/sources/commands.cpp +index a371212..862602b 100644 +--- a/sources/commands.cpp ++++ b/sources/commands.cpp +@@ -1252,12 +1252,6 @@ class VersionCommand : public CommandBase + printf("WinFsp %u.%u\n", vn >> 16, vn & 0xFFFFu); + } + } +-#elif defined(__APPLE__) +- typedef const char* version_function(void); +- auto osx_version_func +- = reinterpret_cast(::dlsym(RTLD_DEFAULT, "osxfuse_version")); +- if (osx_version_func) +- printf("osxfuse %s\n", osx_version_func()); + #else + typedef int version_function(void); + auto fuse_version_func + diff --git a/pkgs/tools/filesystems/securefs/default.nix b/pkgs/tools/filesystems/securefs/default.nix index 235d8a53fe7..44e547b01c2 100644 --- a/pkgs/tools/filesystems/securefs/default.nix +++ b/pkgs/tools/filesystems/securefs/default.nix @@ -14,6 +14,12 @@ stdenv.mkDerivation rec { fetchSubmodules = true; }; + patches = [ + # Make it build with macFUSE + # Backported from https://github.com/netheril96/securefs/pull/114 + ./add-macfuse-support.patch + ]; + nativeBuildInputs = [ cmake ]; buildInputs = [ fuse ]; @@ -31,6 +37,6 @@ stdenv.mkDerivation rec { contents. ''; license = with licenses; [ bsd2 mit ]; - platforms = platforms.linux; + platforms = platforms.unix; }; } From 0c81ece950c00323df5f12a4e5f6c175b01616ae Mon Sep 17 00:00:00 2001 From: midchildan Date: Fri, 26 Mar 2021 01:37:28 +0900 Subject: [PATCH 25/81] avfs: add darwin build --- pkgs/tools/filesystems/avfs/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/filesystems/avfs/default.nix b/pkgs/tools/filesystems/avfs/default.nix index e89828dd750..3315085191e 100644 --- a/pkgs/tools/filesystems/avfs/default.nix +++ b/pkgs/tools/filesystems/avfs/default.nix @@ -20,7 +20,7 @@ stdenv.mkDerivation rec { meta = { homepage = "http://avf.sourceforge.net/"; description = "Virtual filesystem that allows browsing of compressed files"; - platforms = lib.platforms.linux; + platforms = lib.platforms.unix; license = lib.licenses.gpl2; }; } From f8f5ae544b478f321ec6524ebd8daed67f5d7c6b Mon Sep 17 00:00:00 2001 From: midchildan Date: Fri, 26 Mar 2021 01:38:38 +0900 Subject: [PATCH 26/81] afuse: add darwin build --- pkgs/os-specific/linux/afuse/default.nix | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/afuse/default.nix b/pkgs/os-specific/linux/afuse/default.nix index 7375f45eb6d..75c44e11172 100644 --- a/pkgs/os-specific/linux/afuse/default.nix +++ b/pkgs/os-specific/linux/afuse/default.nix @@ -11,11 +11,18 @@ stdenv.mkDerivation { nativeBuildInputs = [ autoreconfHook pkg-config ]; buildInputs = [ fuse ]; + postPatch = lib.optionalString stdenv.isDarwin '' + # Fix the build on macOS with macFUSE installed + substituteInPlace configure.ac --replace \ + 'export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH' \ + "" + ''; + meta = { description = "Automounter in userspace"; homepage = "https://github.com/pcarrier/afuse"; license = lib.licenses.gpl2; maintainers = [ lib.maintainers.marcweber ]; - platforms = lib.platforms.linux; + platforms = lib.platforms.unix; }; } From fe7b5496aa2ec34a16f02f06b34aaaa039a853e3 Mon Sep 17 00:00:00 2001 From: midchildan Date: Fri, 26 Mar 2021 01:39:37 +0900 Subject: [PATCH 27/81] s3backer: add darwin build --- pkgs/tools/filesystems/s3backer/default.nix | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pkgs/tools/filesystems/s3backer/default.nix b/pkgs/tools/filesystems/s3backer/default.nix index 0a05a683adb..b196b294839 100644 --- a/pkgs/tools/filesystems/s3backer/default.nix +++ b/pkgs/tools/filesystems/s3backer/default.nix @@ -16,6 +16,12 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ autoreconfHook pkg-config ]; buildInputs = [ fuse curl expat ]; + # AC_CHECK_DECLS doesn't work with clang + postPatch = lib.optionalString stdenv.cc.isClang '' + substituteInPlace configure.ac --replace \ + 'AC_CHECK_DECLS(fdatasync)' "" + ''; + autoreconfPhase = '' patchShebangs ./autogen.sh ./autogen.sh @@ -25,6 +31,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/archiecobbs/s3backer"; description = "FUSE-based single file backing store via Amazon S3"; license = licenses.gpl2Plus; - platforms = with platforms; linux; + platforms = platforms.unix; }; } From 3c9116aa23d413896c9cc020b170a9556399e456 Mon Sep 17 00:00:00 2001 From: midchildan Date: Fri, 26 Mar 2021 01:39:56 +0900 Subject: [PATCH 28/81] mp3fs: add darwin build --- pkgs/tools/filesystems/mp3fs/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/filesystems/mp3fs/default.nix b/pkgs/tools/filesystems/mp3fs/default.nix index 8b241e9026e..1b80adc843a 100644 --- a/pkgs/tools/filesystems/mp3fs/default.nix +++ b/pkgs/tools/filesystems/mp3fs/default.nix @@ -27,6 +27,6 @@ stdenv.mkDerivation rec { ''; homepage = "https://khenriks.github.io/mp3fs/"; license = licenses.gpl3Plus; - platforms = platforms.linux; + platforms = platforms.unix; }; } From 42cff73feb7047dba689108a581e5c627e4f1d4c Mon Sep 17 00:00:00 2001 From: midchildan Date: Fri, 26 Mar 2021 01:40:10 +0900 Subject: [PATCH 29/81] wdfs: add darwin build --- pkgs/tools/filesystems/wdfs/default.nix | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/pkgs/tools/filesystems/wdfs/default.nix b/pkgs/tools/filesystems/wdfs/default.nix index 98377365738..29d8b4c2887 100644 --- a/pkgs/tools/filesystems/wdfs/default.nix +++ b/pkgs/tools/filesystems/wdfs/default.nix @@ -1,18 +1,27 @@ -{lib, stdenv, fetchurl, glib, neon, fuse, pkg-config}: +{lib, stdenv, fetchurl, glib, neon, fuse, autoreconfHook, pkg-config}: + +stdenv.mkDerivation rec { + pname = "wdfs-fuse"; + version = "1.4.2"; -stdenv.mkDerivation { - name = "wdfs-fuse-1.4.2"; src = fetchurl { - url = "http://noedler.de/projekte/wdfs/wdfs-1.4.2.tar.gz"; + url = "http://noedler.de/projekte/wdfs/wdfs-${version}.tar.gz"; sha256 = "fcf2e1584568b07c7f3683a983a9be26fae6534b8109e09167e5dff9114ba2e5"; }; - nativeBuildInputs = [ pkg-config ]; + nativeBuildInputs = [ autoreconfHook pkg-config ]; buildInputs = [fuse glib neon]; + postPatch = lib.optionalString stdenv.isDarwin '' + # Fix the build on macOS with macFUSE installed. Needs autoreconfHook to + # take effect. + substituteInPlace configure.ac --replace \ + 'export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH' "" + ''; + meta = with lib; { homepage = "http://noedler.de/projekte/wdfs/"; - license = licenses.gpl2; + license = licenses.gpl2Plus; description = "User-space filesystem that allows to mount a webdav share"; - platforms = platforms.linux; + platforms = platforms.unix; }; } From c3614f71a2e3c384f04ce1cf4367b809f619447e Mon Sep 17 00:00:00 2001 From: midchildan Date: Sat, 27 Mar 2021 15:58:47 +0900 Subject: [PATCH 30/81] acd-cli: add darwin build --- pkgs/applications/networking/sync/acd_cli/default.nix | 5 ++--- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/networking/sync/acd_cli/default.nix b/pkgs/applications/networking/sync/acd_cli/default.nix index 49fc578377c..519242b887c 100644 --- a/pkgs/applications/networking/sync/acd_cli/default.nix +++ b/pkgs/applications/networking/sync/acd_cli/default.nix @@ -1,6 +1,6 @@ { lib, fetchFromGitHub, buildPythonApplication, fuse , appdirs, colorama, dateutil, requests, requests_toolbelt -, fusepy, sqlalchemy }: +, fusepy, sqlalchemy, setuptools }: buildPythonApplication rec { pname = "acd_cli"; @@ -16,7 +16,7 @@ buildPythonApplication rec { }; propagatedBuildInputs = [ appdirs colorama dateutil fusepy requests - requests_toolbelt sqlalchemy ]; + requests_toolbelt setuptools sqlalchemy ]; makeWrapperArgs = [ "--prefix LIBFUSE_PATH : ${fuse}/lib/libfuse.so" ]; @@ -34,7 +34,6 @@ buildPythonApplication rec { description = "A command line interface and FUSE filesystem for Amazon Cloud Drive"; homepage = "https://github.com/yadayada/acd_cli"; license = licenses.gpl2; - platforms = platforms.linux; maintainers = with maintainers; [ edwtjo ]; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3dfeeb0af7a..0752dbfe0c8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -21573,7 +21573,7 @@ in acd-cli = callPackage ../applications/networking/sync/acd_cli { inherit (python3Packages) buildPythonApplication appdirs colorama dateutil - requests requests_toolbelt sqlalchemy fusepy; + requests requests_toolbelt setuptools sqlalchemy fusepy; }; adobe-reader = pkgsi686Linux.callPackage ../applications/misc/adobe-reader { }; From e4186b5e83d565e2188418a59aef9f878e684faa Mon Sep 17 00:00:00 2001 From: midchildan Date: Sat, 27 Mar 2021 15:59:33 +0900 Subject: [PATCH 31/81] afflib: add darwin build --- pkgs/development/libraries/afflib/default.nix | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/afflib/default.nix b/pkgs/development/libraries/afflib/default.nix index b89683ac053..94970c5a308 100644 --- a/pkgs/development/libraries/afflib/default.nix +++ b/pkgs/development/libraries/afflib/default.nix @@ -1,5 +1,5 @@ { lib, stdenv, fetchFromGitHub, zlib, curl, expat, fuse, openssl -, autoreconfHook, python3 +, autoreconfHook, python3, libiconv }: stdenv.mkDerivation rec { @@ -15,7 +15,8 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ autoreconfHook ]; buildInputs = [ zlib curl expat openssl python3 ] - ++ lib.optionals stdenv.isLinux [ fuse ]; + ++ lib.optionals (with stdenv; isLinux || isDarwin) [ fuse ] + ++ lib.optionals stdenv.isDarwin [ libiconv ]; meta = { homepage = "http://afflib.sourceforge.net/"; From 1c32fa7660fef2ab3787c573b016035197903b90 Mon Sep 17 00:00:00 2001 From: midchildan Date: Sat, 27 Mar 2021 16:00:15 +0900 Subject: [PATCH 32/81] libspectrum: add darwin build --- pkgs/development/libraries/libspectrum/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/libspectrum/default.nix b/pkgs/development/libraries/libspectrum/default.nix index 011531b1a23..09aa03e6f67 100644 --- a/pkgs/development/libraries/libspectrum/default.nix +++ b/pkgs/development/libraries/libspectrum/default.nix @@ -13,12 +13,13 @@ stdenv.mkDerivation rec { buildInputs = [ audiofile bzip2 glib libgcrypt zlib ]; enableParallelBuilding = true; + doCheck = true; meta = with lib; { homepage = "http://fuse-emulator.sourceforge.net/libspectrum.php"; description = "ZX Spectrum input and output support library"; license = licenses.gpl2Plus; - platforms = platforms.linux; + platforms = platforms.unix; maintainers = with maintainers; [ orivej ]; }; } From fb60c27d9304d5800dd4824ce39a573bd54e41f6 Mon Sep 17 00:00:00 2001 From: midchildan Date: Tue, 30 Mar 2021 22:39:53 +0900 Subject: [PATCH 33/81] _9pfs: add darwin build --- pkgs/tools/filesystems/9pfs/default.nix | 6 ++- .../filesystems/9pfs/fix-darwin-build.patch | 47 +++++++++++++++++++ 2 files changed, 52 insertions(+), 1 deletion(-) create mode 100644 pkgs/tools/filesystems/9pfs/fix-darwin-build.patch diff --git a/pkgs/tools/filesystems/9pfs/default.nix b/pkgs/tools/filesystems/9pfs/default.nix index 9664526761b..bf817a50873 100644 --- a/pkgs/tools/filesystems/9pfs/default.nix +++ b/pkgs/tools/filesystems/9pfs/default.nix @@ -10,6 +10,10 @@ stdenv.mkDerivation { sha256 = "007s2idsn6bspmfxv1qabj39ggkgvn6gwdbhczwn04lb4c6gh3xc"; }; + # Upstream development has stopped and is no longer accepting patches + # https://github.com/mischief/9pfs/pull/3 + patches = [ ./fix-darwin-build.patch ]; + preConfigure = '' substituteInPlace Makefile --replace '-g bin' "" @@ -25,7 +29,7 @@ stdenv.mkDerivation { homepage = "https://github.com/mischief/9pfs"; description = "FUSE-based client of the 9P network filesystem protocol"; maintainers = [ lib.maintainers.eelco ]; - platforms = lib.platforms.linux; + platforms = lib.platforms.unix; license = with lib.licenses; [ lpl-102 bsd2 ]; }; } diff --git a/pkgs/tools/filesystems/9pfs/fix-darwin-build.patch b/pkgs/tools/filesystems/9pfs/fix-darwin-build.patch new file mode 100644 index 00000000000..a565248f19d --- /dev/null +++ b/pkgs/tools/filesystems/9pfs/fix-darwin-build.patch @@ -0,0 +1,47 @@ +From 6b7863b51c97f8ecd9a93fc4347f8938f9b5c05f Mon Sep 17 00:00:00 2001 +From: midchildan +Date: Tue, 30 Mar 2021 22:21:51 +0900 +Subject: [PATCH] build: fix build for macOS + +--- + 9pfs.c | 4 ++-- + libc.h | 4 ++++ + 2 files changed, 6 insertions(+), 2 deletions(-) + +diff --git a/9pfs.c b/9pfs.c +index 2c481bd..f5c487c 100644 +--- a/9pfs.c ++++ b/9pfs.c +@@ -30,7 +30,7 @@ + enum + { + CACHECTLSIZE = 8, /* sizeof("cleared\n") - 1 */ +- MSIZE = 8192 ++ MSIZE_9P = 8192 + }; + + void dir2stat(struct stat*, Dir*); +@@ -505,7 +505,7 @@ main(int argc, char *argv[]) + freeaddrinfo(ainfo); + + init9p(); +- msize = _9pversion(MSIZE); ++ msize = _9pversion(MSIZE_9P); + if(doauth){ + authfid = _9pauth(AUTHFID, user, NULL); + ai = auth_proxy(authfid, auth_getkey, "proto=p9any role=client"); +diff --git a/libc.h b/libc.h +index 099adba..aac03c5 100644 +--- a/libc.h ++++ b/libc.h +@@ -61,6 +61,10 @@ typedef unsigned char uchar; + typedef unsigned long long uvlong; + typedef long long vlong; + ++#ifndef __GLIBC__ ++typedef unsigned long ulong; ++#endif ++ + typedef + struct Qid + { From 30102e0af5540c6b9b557ea12e73e82e2ec40e9b Mon Sep 17 00:00:00 2001 From: midchildan Date: Tue, 30 Mar 2021 22:41:01 +0900 Subject: [PATCH 34/81] android-file-transfer: add darwin build Also apply wrapQtApp. --- .../darwin-dont-vendor-dependencies.patch | 21 +++++++++++++++ .../android-file-transfer/default.nix | 26 ++++++++++++++++--- 2 files changed, 44 insertions(+), 3 deletions(-) create mode 100644 pkgs/tools/filesystems/android-file-transfer/darwin-dont-vendor-dependencies.patch diff --git a/pkgs/tools/filesystems/android-file-transfer/darwin-dont-vendor-dependencies.patch b/pkgs/tools/filesystems/android-file-transfer/darwin-dont-vendor-dependencies.patch new file mode 100644 index 00000000000..6e0f38582cc --- /dev/null +++ b/pkgs/tools/filesystems/android-file-transfer/darwin-dont-vendor-dependencies.patch @@ -0,0 +1,21 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 8b05ab0..81e31f5 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -236,16 +236,6 @@ endif() + + if (''${CMAKE_SYSTEM_NAME} MATCHES "Darwin") + set(MACOSX_BUNDLE_LIBS) +- if (OPENSSL_FOUND) +- list(APPEND MACOSX_BUNDLE_LIBS /usr/local/opt/openssl@1.1/lib/libcrypto.1.1.dylib) +- endif() +- if (TAGLIB_FOUND) +- list(APPEND MACOSX_BUNDLE_LIBS /usr/local/opt/taglib/lib/libtag.1.dylib) +- endif() +- if (FUSE_FOUND) +- list(APPEND MACOSX_BUNDLE_LIBS /usr/local/lib/libosxfuse.2.dylib) +- endif() +- + set(MACOSX_BUNDLE_LIBS_INSTALL) + set(MACOSX_BUNDLE_ROOT_DIR "''${CMAKE_INSTALL_PREFIX}/''${CMAKE_PROJECT_NAME}.app") + message(STATUS "bundle root dir: ''${MACOSX_BUNDLE_ROOT_DIR}") diff --git a/pkgs/tools/filesystems/android-file-transfer/default.nix b/pkgs/tools/filesystems/android-file-transfer/default.nix index f0efaaa3231..a8511f8b99a 100644 --- a/pkgs/tools/filesystems/android-file-transfer/default.nix +++ b/pkgs/tools/filesystems/android-file-transfer/default.nix @@ -1,4 +1,14 @@ -{ lib, mkDerivation, fetchFromGitHub, cmake, fuse, readline, pkg-config, qtbase, qttools }: +{ lib +, stdenv +, mkDerivation +, fetchFromGitHub +, cmake +, fuse +, readline +, pkg-config +, qtbase +, qttools +, wrapQtAppsHook }: mkDerivation rec { pname = "android-file-transfer"; @@ -11,14 +21,24 @@ mkDerivation rec { sha256 = "125rq8ji83nw6chfw43i0h9c38hjqh1qjibb0gnf9wrigar9zc8b"; }; - nativeBuildInputs = [ cmake readline pkg-config ]; + patches = [ ./darwin-dont-vendor-dependencies.patch ]; + + nativeBuildInputs = [ cmake readline pkg-config wrapQtAppsHook ]; buildInputs = [ fuse qtbase qttools ]; + postInstall = lib.optionalString stdenv.isDarwin '' + mkdir $out/Applications + mv $out/*.app $out/Applications + for f in $out/Applications/android-file-transfer.app/Contents/MacOS/*; do + wrapQtApp "$f" + done + ''; + meta = with lib; { description = "Reliable MTP client with minimalistic UI"; homepage = "https://whoozle.github.io/android-file-transfer-linux/"; license = licenses.lgpl21Plus; maintainers = [ maintainers.xaverdh ]; - platforms = platforms.linux; + platforms = platforms.unix; }; } From ee18ceae8a7c38fc17eba5bd10f1ed9d07d6c7c1 Mon Sep 17 00:00:00 2001 From: midchildan Date: Sat, 27 Mar 2021 16:03:18 +0900 Subject: [PATCH 35/81] aefs: add darwin build --- pkgs/tools/filesystems/aefs/default.nix | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/filesystems/aefs/default.nix b/pkgs/tools/filesystems/aefs/default.nix index ed47b8f885b..fb6fa01894e 100644 --- a/pkgs/tools/filesystems/aefs/default.nix +++ b/pkgs/tools/filesystems/aefs/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchurl, fuse }: +{ lib, stdenv, fetchurl, fetchpatch, fuse }: stdenv.mkDerivation rec { name = "aefs-0.4pre259-8843b7c"; @@ -8,12 +8,29 @@ stdenv.mkDerivation rec { sha256 = "167hp58hmgdavg2mqn5dx1xgq24v08n8d6psf33jhbdabzx6a6zq"; }; + patches = [ + (fetchpatch { + url = "https://github.com/edolstra/aefs/commit/15d8df8b8d5dc1ee20d27a86c4d23163a67f3123.patch"; + sha256 = "0k36hsyvf8a0ji2hpghgqff2fncj0pllxn8p0rs0aj4h7j2vp4iv"; + }) + ]; + + # autoconf's AC_CHECK_HEADERS and AC_CHECK_LIBS fail to detect libfuse on + # Darwin if FUSE_USE_VERSION isn't set at configure time. + # + # NOTE: Make sure the value of FUSE_USE_VERSION specified here matches the + # actual version used in the source code: + # + # $ tar xf "$(nix-build -A aefs.src)" + # $ grep -R FUSE_USE_VERSION + configureFlags = lib.optional stdenv.isDarwin "CPPFLAGS=-DFUSE_USE_VERSION=26"; + buildInputs = [ fuse ]; meta = with lib; { homepage = "https://github.com/edolstra/aefs"; description = "A cryptographic filesystem implemented in userspace using FUSE"; - platforms = platforms.linux; + platforms = platforms.unix; maintainers = [ maintainers.eelco ]; license = licenses.gpl2; }; From 467898029ec2c2ad969c042f13e1219c3451d0fa Mon Sep 17 00:00:00 2001 From: midchildan Date: Tue, 30 Mar 2021 22:37:30 +0900 Subject: [PATCH 36/81] attr: explain blocker for macOS support --- pkgs/development/libraries/attr/default.nix | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/pkgs/development/libraries/attr/default.nix b/pkgs/development/libraries/attr/default.nix index b7c9287b68b..b81afc24ee9 100644 --- a/pkgs/development/libraries/attr/default.nix +++ b/pkgs/development/libraries/attr/default.nix @@ -31,7 +31,15 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://savannah.nongnu.org/projects/attr/"; description = "Library and tools for manipulating extended attributes"; - platforms = platforms.linux; + platforms = platforms.unix; license = licenses.gpl2Plus; + + # The build failure on Darwin will likely be solved after upgrading the + # macOS SDK in nixpkgs. Check the current SDK version in + # ../../../../os-specific/darwin/apple-sdk/default.nix to see if it has + # been updated to 10.13 or later. Once the requirements are met, building + # it should be straightforward as Homebrew was able to build it without + # patching. + broken = stdenv.isDarwin; }; } From 651f214fb1d73bc64d41fe3dc1b106e1275eecd7 Mon Sep 17 00:00:00 2001 From: midchildan Date: Sat, 27 Mar 2021 16:05:28 +0900 Subject: [PATCH 37/81] boxfs: add darwin build --- pkgs/tools/filesystems/boxfs/default.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/filesystems/boxfs/default.nix b/pkgs/tools/filesystems/boxfs/default.nix index 5637b9af291..ef611afd5d0 100644 --- a/pkgs/tools/filesystems/boxfs/default.nix +++ b/pkgs/tools/filesystems/boxfs/default.nix @@ -37,7 +37,10 @@ in stdenv.mkDerivation { buildInputs = [ curl fuse libxml2 ]; nativeBuildInputs = [ pkg-config ]; - buildFlags = [ "static" ]; + buildFlags = [ + "static" + "CC=${stdenv.cc.targetPrefix}cc" + ] ++ lib.optional stdenv.isDarwin "CFLAGS=-D_BSD_SOURCE"; installPhase = '' mkdir -p $out/bin @@ -55,6 +58,6 @@ in stdenv.mkDerivation { ''; homepage = "https://github.com/drotiro/boxfs2"; license = licenses.gpl3; - platforms = platforms.linux; + platforms = platforms.unix; }; } From 38f75792018c848e0210601893479b007109ff8d Mon Sep 17 00:00:00 2001 From: midchildan Date: Sat, 27 Mar 2021 16:07:00 +0900 Subject: [PATCH 38/81] darling-dmg: add darwin build --- pkgs/tools/filesystems/darling-dmg/default.nix | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pkgs/tools/filesystems/darling-dmg/default.nix b/pkgs/tools/filesystems/darling-dmg/default.nix index b5addf833c1..54d23e770db 100644 --- a/pkgs/tools/filesystems/darling-dmg/default.nix +++ b/pkgs/tools/filesystems/darling-dmg/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, cmake, fuse, zlib, bzip2, openssl, libxml2, icu, lzfse }: +{ lib, stdenv, fetchFromGitHub, cmake, fuse, zlib, bzip2, openssl, libxml2, icu, lzfse, libiconv }: stdenv.mkDerivation rec { pname = "darling-dmg"; @@ -12,7 +12,8 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ cmake ]; - buildInputs = [ fuse openssl zlib bzip2 libxml2 icu lzfse ]; + buildInputs = [ fuse openssl zlib bzip2 libxml2 icu lzfse ] + ++ lib.optionals stdenv.isDarwin [ libiconv ]; CXXFLAGS = [ "-DCOMPILE_WITH_LZFSE=1" @@ -22,8 +23,8 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://www.darlinghq.org/"; description = "Darling lets you open macOS dmgs on Linux"; - platforms = platforms.linux; - license = licenses.gpl3; + platforms = platforms.unix; + license = licenses.gpl3Only; maintainers = with maintainers; [ Luflosi ]; }; } From 6d3a66b6ef5853274b3098071bf5e15bad11305d Mon Sep 17 00:00:00 2001 From: midchildan Date: Sat, 27 Mar 2021 16:08:16 +0900 Subject: [PATCH 39/81] exfat: add darwin build --- pkgs/tools/filesystems/exfat/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/filesystems/exfat/default.nix b/pkgs/tools/filesystems/exfat/default.nix index 8cb552cdc70..488ae337a33 100644 --- a/pkgs/tools/filesystems/exfat/default.nix +++ b/pkgs/tools/filesystems/exfat/default.nix @@ -19,6 +19,6 @@ stdenv.mkDerivation rec { inherit (src.meta) homepage; license = licenses.gpl2Plus; maintainers = with maintainers; [ dywedir ]; - platforms = platforms.linux; + platforms = platforms.unix; }; } From dff6460d276dc4cbad94764dd68edc0b17b161e6 Mon Sep 17 00:00:00 2001 From: midchildan Date: Sat, 27 Mar 2021 16:09:11 +0900 Subject: [PATCH 40/81] httpfs2: add darwin build --- pkgs/tools/filesystems/httpfs/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/filesystems/httpfs/default.nix b/pkgs/tools/filesystems/httpfs/default.nix index c62703c7b52..f107add29c0 100644 --- a/pkgs/tools/filesystems/httpfs/default.nix +++ b/pkgs/tools/filesystems/httpfs/default.nix @@ -29,7 +29,7 @@ stdenv.mkDerivation rec { license = lib.licenses.gpl2Plus; - platforms = lib.platforms.linux; + platforms = lib.platforms.unix; maintainers = [ ]; }; } From f85acdfaa195f67fd4cefe2b41cbd837dd2767f1 Mon Sep 17 00:00:00 2001 From: midchildan Date: Sun, 28 Mar 2021 00:00:57 +0900 Subject: [PATCH 41/81] hubicfuse: add darwin build --- pkgs/tools/filesystems/hubicfuse/default.nix | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/filesystems/hubicfuse/default.nix b/pkgs/tools/filesystems/hubicfuse/default.nix index 4f40bd37abe..0ebc1f23223 100644 --- a/pkgs/tools/filesystems/hubicfuse/default.nix +++ b/pkgs/tools/filesystems/hubicfuse/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, pkg-config, curl, openssl, fuse, libxml2, json_c, file }: +{ lib, stdenv, fetchFromGitHub, fetchpatch, pkg-config, curl, openssl, fuse, libxml2, json_c, file }: stdenv.mkDerivation rec { pname = "hubicfuse"; @@ -11,6 +11,15 @@ stdenv.mkDerivation rec { sha256 = "1x988hfffxgvqxh083pv3lj5031fz03sbgiiwrjpaiywfbhm8ffr"; }; + patches = [ + # Fix Darwin build + # https://github.com/TurboGit/hubicfuse/pull/159 + (fetchpatch { + url = "https://github.com/TurboGit/hubicfuse/commit/b460f40d86bc281a21379158a7534dfb9f283786.patch"; + sha256 = "0nqvcbrgbc5dms8fkz3brlj40yn48p36drabrnc26gvb3hydh5dl"; + }) + ]; + nativeBuildInputs = [ pkg-config ]; buildInputs = [ curl openssl fuse libxml2 json_c file ]; postInstall = '' @@ -22,7 +31,7 @@ stdenv.mkDerivation rec { meta = with lib; { homepage = "https://github.com/TurboGit/hubicfuse"; description = "FUSE-based filesystem to access hubic cloud storage"; - platforms = platforms.linux; + platforms = platforms.unix; license = licenses.mit; maintainers = [ maintainers.jpierre03 ]; }; From 6382f577bbb287fbc7cd24c650968c7984d9d859 Mon Sep 17 00:00:00 2001 From: midchildan Date: Sun, 28 Mar 2021 00:01:45 +0900 Subject: [PATCH 42/81] jmtpfs: add darwin build --- pkgs/tools/filesystems/jmtpfs/default.nix | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/pkgs/tools/filesystems/jmtpfs/default.nix b/pkgs/tools/filesystems/jmtpfs/default.nix index a9d3c40aae3..8589abffc77 100644 --- a/pkgs/tools/filesystems/jmtpfs/default.nix +++ b/pkgs/tools/filesystems/jmtpfs/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, pkg-config, file, fuse, libmtp }: +{ lib, stdenv, fetchFromGitHub, fetchpatch, pkg-config, file, fuse, libmtp }: let version = "0.5"; in stdenv.mkDerivation { @@ -12,14 +12,22 @@ stdenv.mkDerivation { owner = "JasonFerrara"; }; + patches = [ + # Fix Darwin build (https://github.com/JasonFerrara/jmtpfs/pull/12) + (fetchpatch { + url = "https://github.com/JasonFerrara/jmtpfs/commit/b89084303477d1bc4dc9a887ba9cdd75221f497d.patch"; + sha256 = "0s7x3jfk8i86rd5bwhj7mb1lffcdlpj9bd7b41s1768ady91rb29"; + }) + ]; + nativeBuildInputs = [ pkg-config ]; buildInputs = [ file fuse libmtp ]; meta = with lib; { description = "A FUSE filesystem for MTP devices like Android phones"; homepage = "https://github.com/JasonFerrara/jmtpfs"; - license = licenses.gpl3; - platforms = platforms.linux; + license = licenses.gpl3Only; + platforms = platforms.unix; maintainers = [ maintainers.coconnor ]; }; } From 8e71a4574f2121200a6aa5294bf3b54277630931 Mon Sep 17 00:00:00 2001 From: midchildan Date: Sun, 28 Mar 2021 00:10:56 +0900 Subject: [PATCH 43/81] moosefs: add darwin build --- pkgs/tools/filesystems/moosefs/default.nix | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/pkgs/tools/filesystems/moosefs/default.nix b/pkgs/tools/filesystems/moosefs/default.nix index e38b040ec0d..ee0d5eedc92 100644 --- a/pkgs/tools/filesystems/moosefs/default.nix +++ b/pkgs/tools/filesystems/moosefs/default.nix @@ -24,14 +24,30 @@ stdenv.mkDerivation rec { buildInputs = [ fuse libpcap zlib python ]; + buildFlags = lib.optionals stdenv.isDarwin [ "CPPFLAGS=-UHAVE_STRUCT_STAT_ST_BIRTHTIME" ]; + + # Fix the build on macOS with macFUSE installed + postPatch = lib.optionalString stdenv.isDarwin '' + substituteInPlace configure --replace \ + "/usr/local/lib/pkgconfig" "/nonexistent" + ''; + + preBuild = lib.optional stdenv.isDarwin '' + substituteInPlace config.h --replace \ + "#define HAVE_STRUCT_STAT_ST_BIRTHTIME 1" \ + "#undef HAVE_STRUCT_STAT_ST_BIRTHTIME" + ''; + postInstall = '' substituteInPlace $out/sbin/mfscgiserv --replace "datapath=\"$out" "datapath=\"" ''; + doCheck = true; + meta = with lib; { homepage = "https://moosefs.com"; description = "Open Source, Petabyte, Fault-Tolerant, Highly Performing, Scalable Network Distributed File System"; - platforms = platforms.linux; + platforms = platforms.unix; license = licenses.gpl2; maintainers = [ maintainers.mfossen ]; }; From 97edf282ea17cc56531f82991ec0414fea2e92b7 Mon Sep 17 00:00:00 2001 From: midchildan Date: Sun, 28 Mar 2021 00:11:22 +0900 Subject: [PATCH 44/81] romdirfs: add darwin build --- pkgs/tools/filesystems/romdirfs/default.nix | 2 +- pkgs/top-level/all-packages.nix | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/filesystems/romdirfs/default.nix b/pkgs/tools/filesystems/romdirfs/default.nix index b4fa173706e..0304508d41e 100644 --- a/pkgs/tools/filesystems/romdirfs/default.nix +++ b/pkgs/tools/filesystems/romdirfs/default.nix @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { description = "FUSE for access Playstation 2 IOP IOPRP images and BIOS dumps"; homepage = "https://github.com/mlafeldt/romdirfs"; license = licenses.gpl3; - platforms = platforms.linux; + platforms = platforms.unix; maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0752dbfe0c8..6c5058d28ed 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -29848,7 +29848,9 @@ in rmount = callPackage ../tools/filesystems/rmount {}; - romdirfs = callPackage ../tools/filesystems/romdirfs {}; + romdirfs = callPackage ../tools/filesystems/romdirfs { + stdenv = gccStdenv; + }; rss-glx = callPackage ../misc/screensavers/rss-glx { }; From 15204342ee1dd38cacecf4918e9e8ae90db92228 Mon Sep 17 00:00:00 2001 From: midchildan Date: Sun, 28 Mar 2021 00:11:40 +0900 Subject: [PATCH 45/81] svnfs: add darwin build --- pkgs/tools/filesystems/svnfs/default.nix | 26 +++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) diff --git a/pkgs/tools/filesystems/svnfs/default.nix b/pkgs/tools/filesystems/svnfs/default.nix index bef4d6b5cea..a192032aa93 100644 --- a/pkgs/tools/filesystems/svnfs/default.nix +++ b/pkgs/tools/filesystems/svnfs/default.nix @@ -1,14 +1,26 @@ -{ lib, stdenv, fetchurl, automake, autoconf, subversion, fuse, apr, perl }: +{ lib, stdenv, fetchurl, autoreconfHook, subversion, fuse, apr, perl }: -stdenv.mkDerivation { - name = "svnfs-0.4"; +stdenv.mkDerivation rec { + pname = "svnfs"; + version = "0.4"; src = fetchurl { - url = "http://www.jmadden.eu/wp-content/uploads/svnfs/svnfs-0.4.tgz"; + url = "http://www.jmadden.eu/wp-content/uploads/svnfs/svnfs-${version}.tgz"; sha256 = "1lrzjr0812lrnkkwk60bws9k1hq2iibphm0nhqyv26axdsygkfky"; }; - buildInputs = [automake autoconf subversion fuse apr perl]; + nativeBuildInputs = [ autoreconfHook ]; + buildInputs = [ subversion fuse apr perl ]; + + # autoconf's AC_CHECK_HEADERS and AC_CHECK_LIBS fail to detect libfuse on + # Darwin if FUSE_USE_VERSION isn't set at configure time. + # + # NOTE: Make sure the value of FUSE_USE_VERSION specified here matches the + # actual version used in the source code: + # + # $ tar xf "$(nix-build -A svnfs.src)" + # $ grep -R FUSE_USE_VERSION + configureFlags = lib.optionals stdenv.isDarwin [ "CFLAGS=-DFUSE_USE_VERSION=25" ]; # why is this required? preConfigure='' @@ -21,8 +33,8 @@ stdenv.mkDerivation { meta = { description = "FUSE filesystem for accessing Subversion repositories"; homepage = "http://www.jmadden.eu/index.php/svnfs/"; - license = lib.licenses.gpl2; + license = lib.licenses.gpl2Only; maintainers = [lib.maintainers.marcweber]; - platforms = lib.platforms.linux; + platforms = lib.platforms.unix; }; } From cdc642f008fc06eeb6d51561a120c21330924819 Mon Sep 17 00:00:00 2001 From: midchildan Date: Sun, 28 Mar 2021 00:11:52 +0900 Subject: [PATCH 46/81] tmsu: add darwin build Additionally, - remove libfuse dependency TMSU doesn't depend on libfuse and instead uses go-fuse, a pure go reimplementation. - upgrade go-fuse The latest go-fuse release added support for recent versions of macFUSE. --- pkgs/tools/filesystems/tmsu/default.nix | 12 +++++++----- pkgs/tools/filesystems/tmsu/deps.nix | 4 ++-- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/pkgs/tools/filesystems/tmsu/default.nix b/pkgs/tools/filesystems/tmsu/default.nix index 1eac3e03ec9..aa3057202c7 100644 --- a/pkgs/tools/filesystems/tmsu/default.nix +++ b/pkgs/tools/filesystems/tmsu/default.nix @@ -1,4 +1,4 @@ -{ lib, buildGoPackage, fetchFromGitHub, fuse, installShellFiles }: +{ lib, buildGoPackage, fetchFromGitHub, installShellFiles }: buildGoPackage rec { pname = "tmsu"; @@ -14,7 +14,6 @@ buildGoPackage rec { goDeps = ./deps.nix; - buildInputs = [ fuse ]; nativeBuildInputs = [ installShellFiles ]; preBuild = '' @@ -24,7 +23,10 @@ buildGoPackage rec { ''; postInstall = '' - mv $out/bin/{TMSU,tmsu} + # can't do "mv TMSU tmsu" on case-insensitive filesystems + mv $out/bin/{TMSU,tmsu.tmp} + mv $out/bin/{tmsu.tmp,tmsu} + cp src/misc/bin/* $out/bin/ installManPage src/misc/man/tmsu.1 installShellCompletion --zsh src/misc/zsh/_tmsu @@ -34,7 +36,7 @@ buildGoPackage rec { homepage = "http://www.tmsu.org"; description = "A tool for tagging your files using a virtual filesystem"; maintainers = with maintainers; [ pSub ]; - license = licenses.gpl3; - platforms = platforms.linux; + license = licenses.gpl3Plus; + platforms = platforms.unix; }; } diff --git a/pkgs/tools/filesystems/tmsu/deps.nix b/pkgs/tools/filesystems/tmsu/deps.nix index 90e64b434c4..7dee6324b67 100644 --- a/pkgs/tools/filesystems/tmsu/deps.nix +++ b/pkgs/tools/filesystems/tmsu/deps.nix @@ -5,8 +5,8 @@ fetch = { type = "git"; url = "https://github.com/hanwen/go-fuse"; - rev = "730713460d4fc41afdc2533bd37ff60c94c0c586"; - sha256 = "1y44d08fxyis99s6jxdr6dbbw5kv3wb8lkhq3xmr886i4w41lz03"; + rev = "0f728ba15b38579efefc3dc47821882ca18ffea7"; + sha256 = "05ymw2pp58avf19wvi0cgdzqf3d88k1jdf6ldj4hmhbkm3waqf7l"; }; } { From 80651c123ee99f36f478e4248024a0e53ac7ada7 Mon Sep 17 00:00:00 2001 From: midchildan Date: Thu, 1 Apr 2021 22:45:16 +0900 Subject: [PATCH 47/81] docs: add FUSE packaging tip for Darwin --- doc/builders/packages/fuse.section.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/doc/builders/packages/fuse.section.md b/doc/builders/packages/fuse.section.md index 5603481115e..eb0023fcbc3 100644 --- a/doc/builders/packages/fuse.section.md +++ b/doc/builders/packages/fuse.section.md @@ -17,3 +17,29 @@ following, it's a likely sign that you need to have macFUSE installed. Referenced from: /nix/store/w8bi72bssv0bnxhwfw3xr1mvn7myf37x-sshfs-fuse-2.10/bin/sshfs Reason: image not found [1] 92299 abort /nix/store/w8bi72bssv0bnxhwfw3xr1mvn7myf37x-sshfs-fuse-2.10/bin/sshfs + +Package maintainers may often encounter the following error when building FUSE +packages on macOS: + + checking for fuse.h... no + configure: error: No fuse.h found. + +This happens on autoconf based projects that uses `AC_CHECK_HEADERS` or +`AC_CHECK_LIBS` to detect libfuse, and will occur even when the `fuse` package +is included in `buildInputs`. It happens because libfuse headers throw an error +on macOS if the `FUSE_USE_VERSION` macro is undefined. Many proejcts do define +`FUSE_USE_VERSION`, but only inside C source files. This results in the above +error at configure time because the configure script would attempt to compile +sample FUSE programs without defining `FUSE_USE_VERSION`. + +There are two possible solutions for this problem in Nixpkgs: + +1. Pass `FUSE_USE_VERSION` to the configure script by adding + `CFLAGS=-DFUSE_USE_VERSION=25` in `configureFlags`. The actual value would + have to match the definition used in the upstream source code. +2. Remove `AC_CHECK_HEADERS` / `AC_CHECK_LIBS` for libfuse. + +However, a better solution might be to fix the build script upstream to use +`PKG_CHECK_MODULES` instead. This approach wouldn't suffer from the problem that +`AC_CHECK_HEADERS`/`AC_CHECK_LIBS` has at the price of introducing a dependency +on pkg-config. From 3076c747e3c4961a87ed41e9998a153966cb35f7 Mon Sep 17 00:00:00 2001 From: Arijit Basu Date: Wed, 21 Apr 2021 01:57:07 +0530 Subject: [PATCH 48/81] maintainers: add sayanarijit --- maintainers/maintainer-list.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index e22d2ac4774..f718475bd0b 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -8739,6 +8739,12 @@ githubId = 8534888; name = "Savanni D'Gerinel"; }; + sayanarijit = { + email = "sayanarijit@gmail.com"; + github = "sayanarijit"; + githubId = 11632726; + name = "Arijit Basu"; + }; sb0 = { email = "sb@m-labs.hk"; github = "sbourdeauducq"; From 583c3e49ecd2ae870028d813d8567d3c25dab626 Mon Sep 17 00:00:00 2001 From: Arijit Basu Date: Wed, 21 Apr 2021 01:58:04 +0530 Subject: [PATCH 49/81] maintainers: add suryasr007 --- maintainers/maintainer-list.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index f718475bd0b..19ec50804b1 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -9457,6 +9457,12 @@ githubId = 187109; name = "Bjarki Ágúst Guðmundsson"; }; + suryasr007 = { + email = "94suryateja@gmail.com"; + github = "suryasr007"; + githubId = 10533926; + name = "Surya Teja V"; + }; suvash = { email = "suvash+nixpkgs@gmail.com"; github = "suvash"; From c1290daeaa29770559839b9287a7a896c3db11d5 Mon Sep 17 00:00:00 2001 From: Justin Bedo Date: Tue, 29 Sep 2020 14:42:16 +1000 Subject: [PATCH 50/81] sqlitecpp: init 3.1.1 --- .../libraries/sqlitecpp/default.nix | 31 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 33 insertions(+) create mode 100644 pkgs/development/libraries/sqlitecpp/default.nix diff --git a/pkgs/development/libraries/sqlitecpp/default.nix b/pkgs/development/libraries/sqlitecpp/default.nix new file mode 100644 index 00000000000..ffe5e4bbb83 --- /dev/null +++ b/pkgs/development/libraries/sqlitecpp/default.nix @@ -0,0 +1,31 @@ +{ lib, stdenv, fetchFromGitHub, cmake, sqlite, cppcheck, gtest }: + +stdenv.mkDerivation rec { + pname = "SQLiteCpp"; + version = "3.1.1"; + + src = fetchFromGitHub { + owner = "SRombauts"; + repo = pname; + rev = version; + sha256 = "1c2yyipiqswi5sf9xmpsgw6l1illzmcpkjm56agk6kl2hay23lgr"; + }; + + nativeBuildInputs = [ cmake ]; + checkInputs = [ cppcheck gtest ]; + buildInputs = [ sqlite ]; + doCheck = true; + + cmakeFlags = [ + "-DSQLITECPP_INTERNAL_SQLITE=OFF" + "-DSQLITECPP_BUILD_TESTS=ON" + ]; + + meta = with lib; { + homepage = "http://srombauts.github.com/SQLiteCpp"; + description = "C++ SQLite3 wrapper"; + license = licenses.mit; + platforms = platforms.unix; + maintainers = [ maintainers.jbedo maintainers.doronbehar ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 6b22227ce46..e5c127ebe7a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -17249,6 +17249,8 @@ in sqlar = callPackage ../development/libraries/sqlite/sqlar.nix { }; + sqlitecpp = callPackage ../development/libraries/sqlitecpp { }; + sqlite-interactive = appendToName "interactive" (sqlite.override { interactive = true; }).bin; sqlite-jdbc = callPackage ../servers/sql/sqlite/jdbc { }; From 314da8ce3d23dbc9c58f859eef5d78c9aded81a7 Mon Sep 17 00:00:00 2001 From: Arijit Basu Date: Wed, 21 Apr 2021 01:58:35 +0530 Subject: [PATCH 51/81] xplr: init at 0.5.4 --- pkgs/applications/misc/xplr/default.nix | 22 ++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 24 insertions(+) create mode 100644 pkgs/applications/misc/xplr/default.nix diff --git a/pkgs/applications/misc/xplr/default.nix b/pkgs/applications/misc/xplr/default.nix new file mode 100644 index 00000000000..f41fe828938 --- /dev/null +++ b/pkgs/applications/misc/xplr/default.nix @@ -0,0 +1,22 @@ +{ lib, rustPlatform, fetchFromGitHub }: + +rustPlatform.buildRustPackage rec { + name = "xplr"; + version = "0.5.4"; + + src = fetchFromGitHub { + owner = "sayanarijit"; + repo = name; + rev = "v${version}"; + sha256 = "0m28jhkvz46psxbv8g34v34m1znvj51gqizaxlmxbgh9fj3vyfdb"; + }; + + cargoSha256 = "0q2k8bs32vxqbnjdh674waagpzpb9rxlwi4nggqlbzcmbqsy8n6k"; + + meta = with lib; { + description = "A hackable, minimal, fast TUI file explorer"; + homepage = "https://github.com/sayanarijit/xplr"; + license = licenses.mit; + maintainers = with maintainers; [ sayanarijit suryasr007 ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d1e38df0da5..07e9dc51a51 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9272,6 +9272,8 @@ in xe = callPackage ../tools/system/xe { }; + xplr = callPackage ../applications/misc/xplr {}; + testdisk = libsForQt5.callPackage ../tools/system/testdisk { }; testdisk-qt = testdisk.override { enableQt = true; }; From 7e1aee2aa447639c3806264743512203f6613c36 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 21 Apr 2021 10:30:39 +0200 Subject: [PATCH 52/81] python3Packages.ppdeep: init at 20200505 --- .../python-modules/ppdeep/default.nix | 25 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 27 insertions(+) create mode 100644 pkgs/development/python-modules/ppdeep/default.nix diff --git a/pkgs/development/python-modules/ppdeep/default.nix b/pkgs/development/python-modules/ppdeep/default.nix new file mode 100644 index 00000000000..bbb5c3fc923 --- /dev/null +++ b/pkgs/development/python-modules/ppdeep/default.nix @@ -0,0 +1,25 @@ +{ lib +, buildPythonPackage +, fetchPypi +}: + +buildPythonPackage rec { + pname = "ppdeep"; + version = "20200505"; + + src = fetchPypi { + inherit pname version; + sha256 = "1zx1h0ff0wjjkgd0dzjv31i6ag09jw2p9vcssc1iplp60awlpixc"; + }; + + # Project has no tests + doCheck = false; + pythonImportsCheck = [ "ppdeep" ]; + + meta = with lib; { + description = "Python library for computing fuzzy hashes (ssdeep)"; + homepage = "https://github.com/elceef/ppdeep"; + license = with licenses; [ asl20 ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 01219719acc..c42b53e6f61 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5249,6 +5249,8 @@ in { pkuseg = callPackage ../development/python-modules/pkuseg { }; + ppdeep = callPackage ../development/python-modules/ppdeep { }; + pynndescent = callPackage ../development/python-modules/pynndescent { }; pynuki = callPackage ../development/python-modules/pynuki { }; From 3121998f6b83fb55607b3609d4602de55ee05322 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 21 Apr 2021 10:44:06 +0200 Subject: [PATCH 53/81] dnstwist: init at 20201228 --- pkgs/tools/networking/dnstwist/default.nix | 37 ++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 39 insertions(+) create mode 100644 pkgs/tools/networking/dnstwist/default.nix diff --git a/pkgs/tools/networking/dnstwist/default.nix b/pkgs/tools/networking/dnstwist/default.nix new file mode 100644 index 00000000000..e19b4dabd78 --- /dev/null +++ b/pkgs/tools/networking/dnstwist/default.nix @@ -0,0 +1,37 @@ +{ lib +, fetchFromGitHub +, python3 +}: + +python3.pkgs.buildPythonApplication rec { + pname = "dnstwist"; + version = "20201228"; + disabled = python3.pythonOlder "3.6"; + + src = fetchFromGitHub { + owner = "elceef"; + repo = pname; + rev = version; + sha256 = "0bxshi1p0va2f449v6vsm8bav5caa3r3pyknj3zf4n5rvk6say70"; + }; + + propagatedBuildInputs = with python3.pkgs; [ + dnspython + GeoIP + ppdeep + requests + tld + whois + ]; + + # Project has no tests + doCheck = false; + pythonImportsCheck = [ "dnstwist" ]; + + meta = with lib; { + description = "Domain name permutation engine for detecting homograph phishing attacks"; + homepage = "https://github.com/elceef/dnstwist"; + license = with licenses; [ gpl3Only ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 00f21302c23..0beb8a18a73 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -30921,6 +30921,8 @@ in inherit (darwin) libresolv; }; + dnstwist = callPackage ../tools/networking/dnstwist {}; + dsniff = callPackage ../tools/networking/dsniff {}; wal-g = callPackage ../tools/backup/wal-g { }; From 7745b7a9d1c1aea593c45d2645ebe8f27baf9f1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Wed, 21 Apr 2021 06:03:35 +0200 Subject: [PATCH 54/81] isgx: fix support for 5.11 --- pkgs/os-specific/linux/isgx/default.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/isgx/default.nix b/pkgs/os-specific/linux/isgx/default.nix index 1806916b14d..5963d8a0e4f 100644 --- a/pkgs/os-specific/linux/isgx/default.nix +++ b/pkgs/os-specific/linux/isgx/default.nix @@ -17,6 +17,11 @@ stdenv.mkDerivation rec { url = "https://github.com/intel/linux-sgx-driver/commit/276c5c6a064d22358542f5e0aa96b1c0ace5d695.patch"; sha256 = "sha256-PmchqYENIbnJ51G/tkdap/g20LUrJEoQ4rDtqy6hj24="; }) + # Fixes detection with kernel >= 5.11 + (fetchpatch { + url = "https://github.com/intel/linux-sgx-driver/commit/ed2c256929962db1a8805db53bed09bb8f2f4de3.patch"; + sha256 = "sha256-MRbgS4U8FTCP1J1n+rhsvbXxKDytfl6B7YlT9Izq05U="; + }) ]; hardeningDisable = [ "pic" ]; @@ -47,7 +52,5 @@ stdenv.mkDerivation rec { license = with licenses; [ bsd3 /* OR */ gpl2Only ]; maintainers = with maintainers; [ oxalica ]; platforms = platforms.linux; - # The driver is already in kernel >= 5.11.0. - broken = kernelAtLeast "5.11.0"; }; } From 7a89726eb0dc86bd361e221c575eb9eca28ffe89 Mon Sep 17 00:00:00 2001 From: Ilan Joselevich Date: Wed, 21 Apr 2021 15:19:24 +0300 Subject: [PATCH 55/81] nextcloud-client: 3.1.3 -> 3.2.0 --- pkgs/applications/networking/nextcloud-client/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/nextcloud-client/default.nix b/pkgs/applications/networking/nextcloud-client/default.nix index 67ddcf59972..4567f26224a 100644 --- a/pkgs/applications/networking/nextcloud-client/default.nix +++ b/pkgs/applications/networking/nextcloud-client/default.nix @@ -20,13 +20,13 @@ mkDerivation rec { pname = "nextcloud-client"; - version = "3.1.3"; + version = "3.2.0"; src = fetchFromGitHub { owner = "nextcloud"; repo = "desktop"; rev = "v${version}"; - sha256 = "sha256-8Ql6tOvWOjAvMJA87WlT9TbpnbciBsjDxRuYlMVi/m8="; + sha256 = "1nklsa2lx9ayjp8rk1mycjysqqmnq47djig0wygzna5mycl3ji06"; }; patches = [ From 389395b0af8c4ee8debe2aaa5b7ece90c9ba28b6 Mon Sep 17 00:00:00 2001 From: Tim Steinbach Date: Wed, 21 Apr 2021 09:47:42 -0400 Subject: [PATCH 56/81] python3Packages.sagemaker: 2.35.0 -> 2.37.0 --- pkgs/development/python-modules/sagemaker/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/sagemaker/default.nix b/pkgs/development/python-modules/sagemaker/default.nix index f0e7b6233dd..d227b7f8c65 100644 --- a/pkgs/development/python-modules/sagemaker/default.nix +++ b/pkgs/development/python-modules/sagemaker/default.nix @@ -15,11 +15,11 @@ buildPythonPackage rec { pname = "sagemaker"; - version = "2.35.0"; + version = "2.37.0"; src = fetchPypi { inherit pname version; - sha256 = "sha256-12YYUZbctM6oRaC7Sr/hOghAM+s/Cdm5XWHaVU5Gg6Q="; + sha256 = "sha256-96RDi32NHfhFvPeVRhG32EDQJTiwOXEwtSmFZGVBVk0="; }; pythonImportsCheck = [ From 94514eec55a7b3569d71ed7f846b50978f67b516 Mon Sep 17 00:00:00 2001 From: Johannes Schleifenbaum Date: Wed, 21 Apr 2021 16:58:02 +0200 Subject: [PATCH 57/81] protoc-gen-twirp_php: 0.6.0 -> 0.7.1 --- .../development/tools/protoc-gen-twirp_php/default.nix | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/pkgs/development/tools/protoc-gen-twirp_php/default.nix b/pkgs/development/tools/protoc-gen-twirp_php/default.nix index 40df9e974e4..08c8214c637 100644 --- a/pkgs/development/tools/protoc-gen-twirp_php/default.nix +++ b/pkgs/development/tools/protoc-gen-twirp_php/default.nix @@ -2,23 +2,19 @@ buildGoModule rec { pname = "protoc-gen-twirp_php"; - version = "0.6.0"; + version = "0.7.1"; # fetchFromGitHub currently not possible, because go.mod and go.sum are export-ignored src = fetchgit { url = "https://github.com/twirphp/twirp.git"; rev = "v${version}"; - sha256 = "sha256-WnvCdAJIMA4A+f7H61qcVbKNn23bNVOC15vMCEKc+CI="; + sha256 = "sha256-94GN/Gq3RXXg83eUsmIcdF4VuK4syCgD0Zkc5eDiVYE="; }; - vendorSha256 = "sha256-LIMxrWXlK7+JIRmtukdXPqfw8H991FCAOuyEf7ZLSTs="; + vendorSha256 = "sha256-gz4JELCffuh7dyFdBex8/SFZ1/PDXuC/93m3WNHwRss="; subPackages = [ "protoc-gen-twirp_php" ]; - preBuild = '' - go generate ./... - ''; - meta = with lib; { description = "PHP port of Twitch's Twirp RPC framework"; homepage = "https://github.com/twirphp/twirp"; From bb82ab69c4ba236841dd02af9179a272a21cd1e5 Mon Sep 17 00:00:00 2001 From: "\"Kyle Ondy\"" <"kyle@ondy.org"> Date: Wed, 21 Apr 2021 11:09:23 -0400 Subject: [PATCH 58/81] vimPlugins: update --- pkgs/misc/vim-plugins/generated.nix | 90 ++++++++++++++--------------- 1 file changed, 45 insertions(+), 45 deletions(-) diff --git a/pkgs/misc/vim-plugins/generated.nix b/pkgs/misc/vim-plugins/generated.nix index abe66dd9388..a57c3b55d3b 100644 --- a/pkgs/misc/vim-plugins/generated.nix +++ b/pkgs/misc/vim-plugins/generated.nix @@ -257,12 +257,12 @@ let barbar-nvim = buildVimPluginFrom2Nix { pname = "barbar-nvim"; - version = "2021-04-07"; + version = "2021-04-21"; src = fetchFromGitHub { owner = "romgrk"; repo = "barbar.nvim"; - rev = "c5c67f450921dec675b42c7f6f960169411dc7fc"; - sha256 = "17gpmyqqskzmfvqilgdmcp5rb2ddgb8hvjz7ihfyaawp8sy11lv0"; + rev = "54b4376d9a44b45f12b0f6f5bcc46f98b66782e1"; + sha256 = "0nh4rgyix8mj3wag8wpcy68avyrh5ps89a842fqdd5x6054d3apv"; }; meta.homepage = "https://github.com/romgrk/barbar.nvim/"; }; @@ -389,12 +389,12 @@ let chadtree = buildVimPluginFrom2Nix { pname = "chadtree"; - version = "2021-04-20"; + version = "2021-04-21"; src = fetchFromGitHub { owner = "ms-jpq"; repo = "chadtree"; - rev = "c2cfde8a6b1966a2801fe167fc70a9bf07a9531e"; - sha256 = "0g9vg18vg1gpkmas0rbsvvdqf8h6rbvwyd89awc7351rn9x3s69h"; + rev = "ce0ac184e56d1a1865df1f0059ec01317f4210db"; + sha256 = "13v1x0mxzm8fzmf8k6f3wjdx91yki6lqz40wh1897g5zvsfjfvvr"; }; meta.homepage = "https://github.com/ms-jpq/chadtree/"; }; @@ -618,12 +618,12 @@ let compe-tabnine = buildVimPluginFrom2Nix { pname = "compe-tabnine"; - version = "2021-04-18"; + version = "2021-04-21"; src = fetchFromGitHub { owner = "tzachar"; repo = "compe-tabnine"; - rev = "28c6bc60d39c5ccd326e29f5f949dc1869196fd7"; - sha256 = "1dka7jy9ihigid943x26rjhawamwml7pi4z1hzjvawwf0vh73biz"; + rev = "1e81624bb91e79e245832bc0a88a1c194097f641"; + sha256 = "08cav97sj92vfl0y8kkn5kv5qxsfifb7xps3hndlg6vzbjci4vbr"; }; meta.homepage = "https://github.com/tzachar/compe-tabnine/"; }; @@ -882,12 +882,12 @@ let defx-nvim = buildVimPluginFrom2Nix { pname = "defx-nvim"; - version = "2021-04-11"; + version = "2021-04-21"; src = fetchFromGitHub { owner = "Shougo"; repo = "defx.nvim"; - rev = "94a655cd9993b152feb6de4d6168d234d4b3f14b"; - sha256 = "0kram585pmj88gvfs71k50lgawg87qbiisw0plzp41hjrgs0ymkz"; + rev = "3730b008158327d0068b8a9b19d57fd7459bb8b9"; + sha256 = "0bc1gfwsms0mrxjfp7ia4r2rw1b95ih8xgkh02l9b30wp81xdfr3"; }; meta.homepage = "https://github.com/Shougo/defx.nvim/"; }; @@ -1172,12 +1172,12 @@ let deoplete-nvim = buildVimPluginFrom2Nix { pname = "deoplete-nvim"; - version = "2021-04-19"; + version = "2021-04-21"; src = fetchFromGitHub { owner = "Shougo"; repo = "deoplete.nvim"; - rev = "c136761eb87789ec4dc46961acf08af39ec32c3b"; - sha256 = "1gk601x5a8hmyjvgddw1fd4gdjrfxwfz3z3y7w4186zk2bakciaw"; + rev = "187b2bd2beb7802e66c93900430c29b4ab9c20c8"; + sha256 = "0l6i6wybhdzbj6p0x86kygyirhnhc1fj67p4l83v3jdgypqy246a"; }; meta.homepage = "https://github.com/Shougo/deoplete.nvim/"; }; @@ -1647,8 +1647,8 @@ let src = fetchFromGitHub { owner = "lewis6991"; repo = "gitsigns.nvim"; - rev = "499e20ff35493801a50b6e3401fe793f7cdb5b4c"; - sha256 = "0f1w858y9yvixdbpbnl37xfmy5fgi2p70pvdcy4xy60qjsckiglp"; + rev = "6b7b666cc95f91c869b1ef266e10f06807f7ccf0"; + sha256 = "1ya54gkig13adcjgwjmvyssnrdz82rcwimlwk5ff6qqivwcbpsjy"; }; meta.homepage = "https://github.com/lewis6991/gitsigns.nvim/"; }; @@ -3024,12 +3024,12 @@ let nvim-autopairs = buildVimPluginFrom2Nix { pname = "nvim-autopairs"; - version = "2021-04-20"; + version = "2021-04-21"; src = fetchFromGitHub { owner = "windwp"; repo = "nvim-autopairs"; - rev = "bc18313bd533e8f63b08ba4315a0136368e5afa0"; - sha256 = "0wwhlqf98jkc0ij1pp77cykjz7wh0xlwhh9wclkxva1g3ajcyq7d"; + rev = "d83b441b1838a30941af6582e9cb19d93b560b71"; + sha256 = "00h40qgkrydacsj5q8yv6g7m0835dqcxf66i1s2g32wssg6c1y5f"; }; meta.homepage = "https://github.com/windwp/nvim-autopairs/"; }; @@ -3048,12 +3048,12 @@ let nvim-bufferline-lua = buildVimPluginFrom2Nix { pname = "nvim-bufferline-lua"; - version = "2021-04-07"; + version = "2021-04-20"; src = fetchFromGitHub { owner = "akinsho"; repo = "nvim-bufferline.lua"; - rev = "224f2627c471f319626fc7c1ab85f9d7d91bb98a"; - sha256 = "0yxby3p82pjkz8n0vnavbhw0qlva8mfq3nqff4bf1sg9iw0jpfkm"; + rev = "4ebab39af2376b850724dd29c29579c8e024abe6"; + sha256 = "0k671d27m2p0lv4vr99lra740511234f8m6zl2ykkb1b197841cg"; }; meta.homepage = "https://github.com/akinsho/nvim-bufferline.lua/"; }; @@ -3292,8 +3292,8 @@ let src = fetchFromGitHub { owner = "kyazdani42"; repo = "nvim-tree.lua"; - rev = "983963779d6696c5b6b4aa14f874d85f00941b4e"; - sha256 = "16viqhsh1xn5grv631i6fy5kav65g472yyyz0m4wy4gvi2mb7sf2"; + rev = "796628a7651f9399637ad8376bab920fb10493cf"; + sha256 = "1mb7ncp35yhzwzwp6l54dr1y3is705sa63hlx6bf5ny84q13kvxd"; }; meta.homepage = "https://github.com/kyazdani42/nvim-tree.lua/"; }; @@ -3588,12 +3588,12 @@ let plenary-nvim = buildVimPluginFrom2Nix { pname = "plenary-nvim"; - version = "2021-04-18"; + version = "2021-04-20"; src = fetchFromGitHub { owner = "nvim-lua"; repo = "plenary.nvim"; - rev = "bf8038e837dfdf802ca1a294f5e6887fb798bc2a"; - sha256 = "046vz06k78gpklzbmjjkp5ffs1i6znq277i5mnm8a264snf784xb"; + rev = "1a31d076a097ac23c0110537a99b686874ae2cdc"; + sha256 = "1ah2j5bxgg0mqa8nlc76f37apb9i6vx8i1c0vlmk144w9dfmxkis"; }; meta.homepage = "https://github.com/nvim-lua/plenary.nvim/"; }; @@ -4455,12 +4455,12 @@ let telescope-nvim = buildVimPluginFrom2Nix { pname = "telescope-nvim"; - version = "2021-04-17"; + version = "2021-04-21"; src = fetchFromGitHub { owner = "nvim-telescope"; repo = "telescope.nvim"; - rev = "f92b9b1fae70d5fac681a29f0df64549c399f18f"; - sha256 = "176h2sy75hgykzw5kf1vhp29gxk180c3a1rl8rcms8vinn1b95d3"; + rev = "3adeab2bed42597c8495fbe3a2376c746232f2e3"; + sha256 = "0nnqlrzgmg50kdyjmbkr29dfn8ydvdamfihrw0nalvszhh577487"; }; meta.homepage = "https://github.com/nvim-telescope/telescope.nvim/"; }; @@ -5716,12 +5716,12 @@ let vim-elixir = buildVimPluginFrom2Nix { pname = "vim-elixir"; - version = "2021-04-13"; + version = "2021-04-21"; src = fetchFromGitHub { owner = "elixir-editors"; repo = "vim-elixir"; - rev = "294a22cef85e8006fa84b02fc5fbd7a3b8c5abe3"; - sha256 = "0rimmik9hs41bwzkjsgz5jbygg08nlrj0n4m451fpjmwsn0zaklb"; + rev = "c3cb96e153728fbfd050173b4af19118b131f278"; + sha256 = "1v0rgzpnpanics4zhx3y9m6ppa727yc0mvcx065jg2a2a1563sgy"; }; meta.homepage = "https://github.com/elixir-editors/vim-elixir/"; }; @@ -6887,8 +6887,8 @@ let src = fetchFromGitHub { owner = "andymass"; repo = "vim-matchup"; - rev = "5bdf7690ed9afda4684f30aa4b9e7a84827b6fdb"; - sha256 = "1jbzaflx1y6c32m59irj5p29nd1p9krb3jgv6hi9w4002vp48f0y"; + rev = "71b97bac53aa09760e8d8c36767c657b274c468d"; + sha256 = "0ign21d8w6hcrbz9j6c0p1ff0y396wl7snm5dj81m7fck2287pj3"; }; meta.homepage = "https://github.com/andymass/vim-matchup/"; }; @@ -8456,12 +8456,12 @@ let vim-vsnip = buildVimPluginFrom2Nix { pname = "vim-vsnip"; - version = "2021-04-20"; + version = "2021-04-21"; src = fetchFromGitHub { owner = "hrsh7th"; repo = "vim-vsnip"; - rev = "a501eb4c45fbd53e3d8eacb725263bad27174c38"; - sha256 = "13fqpxanlk8y3adq3d1mw4wz5c86jhk72fcq97qw02d1g9lha2b2"; + rev = "395d200728b467e141615f53afe564adc26985b9"; + sha256 = "1g0fhdqr6qmqmhvm3amv22fqb1aacmvd0swmk38w25zzcbl4b4gy"; }; meta.homepage = "https://github.com/hrsh7th/vim-vsnip/"; }; @@ -8744,12 +8744,12 @@ let vimspector = buildVimPluginFrom2Nix { pname = "vimspector"; - version = "2021-04-15"; + version = "2021-04-20"; src = fetchFromGitHub { owner = "puremourning"; repo = "vimspector"; - rev = "a9a26a5a60a7c1d221bc24f0e9f3a0451e76b11b"; - sha256 = "18605fxh0ych1app90k730akxz1c1kf3lhl5apj6ygfdnpk0c1mh"; + rev = "297c0bea56fd3afce5209f47f330880d759c8698"; + sha256 = "04gkw01p5iiyj1xp9p446frg7f9szprm65gjs3w0s0akgbi5zp3g"; fetchSubmodules = true; }; meta.homepage = "https://github.com/puremourning/vimspector/"; @@ -8938,12 +8938,12 @@ let YouCompleteMe = buildVimPluginFrom2Nix { pname = "YouCompleteMe"; - version = "2021-04-19"; + version = "2021-04-20"; src = fetchFromGitHub { owner = "ycm-core"; repo = "YouCompleteMe"; - rev = "a0a3e09dd25cda9951ccdb0eb534ed328fb3c96c"; - sha256 = "1hamis4smj2qhg84gwid0ihy3pwhn8klcyg19f21sl8jlxbfb8a4"; + rev = "c8acf70d23337047af6548dbb8337d3e3a0c0357"; + sha256 = "0l24b07l1bdiwffpj2ajks879w69cjkn1adx9ak6pv98jlmsdzi1"; fetchSubmodules = true; }; meta.homepage = "https://github.com/ycm-core/YouCompleteMe/"; From ebed7846373c7b1b27447d2cdc4eaefd47fe0634 Mon Sep 17 00:00:00 2001 From: "\"Kyle Ondy\"" <"kyle@ondy.org"> Date: Wed, 21 Apr 2021 11:09:47 -0400 Subject: [PATCH 59/81] vimPlugins.git-worktree-nvim: init at 2021-04-19 --- pkgs/misc/vim-plugins/generated.nix | 12 ++++++++++++ pkgs/misc/vim-plugins/vim-plugin-names | 1 + 2 files changed, 13 insertions(+) diff --git a/pkgs/misc/vim-plugins/generated.nix b/pkgs/misc/vim-plugins/generated.nix index a57c3b55d3b..76fa0f32983 100644 --- a/pkgs/misc/vim-plugins/generated.nix +++ b/pkgs/misc/vim-plugins/generated.nix @@ -1629,6 +1629,18 @@ let meta.homepage = "https://github.com/rhysd/git-messenger.vim/"; }; + git-worktree-nvim = buildVimPluginFrom2Nix { + pname = "git-worktree-nvim"; + version = "2021-04-19"; + src = fetchFromGitHub { + owner = "ThePrimeagen"; + repo = "git-worktree.nvim"; + rev = "77c54ff659ec3eba0965e9a54e8569abd084b726"; + sha256 = "0lraa4di5z5jm103bqzr804bjcxa49b131mhpgg4r40zpam9iip1"; + }; + meta.homepage = "https://github.com/ThePrimeagen/git-worktree.nvim/"; + }; + gitignore-vim = buildVimPluginFrom2Nix { pname = "gitignore-vim"; version = "2014-03-16"; diff --git a/pkgs/misc/vim-plugins/vim-plugin-names b/pkgs/misc/vim-plugins/vim-plugin-names index b4fbda1005e..f0f2e260197 100644 --- a/pkgs/misc/vim-plugins/vim-plugin-names +++ b/pkgs/misc/vim-plugins/vim-plugin-names @@ -594,6 +594,7 @@ terryma/vim-multiple-cursors tex/vimpreviewpandoc Th3Whit3Wolf/one-nvim@main theHamsta/nvim-dap-virtual-text +ThePrimeagen/git-worktree.nvim ThePrimeagen/vim-apm thinca/vim-ft-diff_fold thinca/vim-prettyprint From 5fc6ad33afb319c36c0fe765d494c164c1332514 Mon Sep 17 00:00:00 2001 From: 06kellyjac Date: Wed, 21 Apr 2021 16:50:17 +0100 Subject: [PATCH 60/81] waypoint: 0.3.0 -> 0.3.1 --- pkgs/applications/networking/cluster/waypoint/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/networking/cluster/waypoint/default.nix b/pkgs/applications/networking/cluster/waypoint/default.nix index 1f3bf4467d6..d21219f4386 100644 --- a/pkgs/applications/networking/cluster/waypoint/default.nix +++ b/pkgs/applications/networking/cluster/waypoint/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "waypoint"; - version = "0.3.0"; + version = "0.3.1"; src = fetchFromGitHub { owner = "hashicorp"; repo = pname; rev = "v${version}"; - sha256 = "sha256-lB9ELa/okNvtKFDP/vImEdYFJCKRgtAcpBG1kIoAysE="; + sha256 = "sha256-WzKUVfc7oGMh0TamL5b6gsm/BAfSCZ6EB3Hg4Tg/3Hw="; }; deleteVendor = true; @@ -36,7 +36,7 @@ buildGoModule rec { export HOME="$TMPDIR" $out/bin/waypoint --help - $out/bin/waypoint version | grep "Waypoint v${version}" + $out/bin/waypoint version | grep "CLI: v${version}" runHook postInstallCheck ''; From 0a8784d5dbe051a6924d082b094e0b1d98209042 Mon Sep 17 00:00:00 2001 From: Taeer Bar-Yam Date: Wed, 21 Apr 2021 11:56:55 -0400 Subject: [PATCH 61/81] stdenv/{native,nix}: add lib to cc-wrapper args --- pkgs/stdenv/native/default.nix | 2 +- pkgs/stdenv/nix/default.nix | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/stdenv/native/default.nix b/pkgs/stdenv/native/default.nix index b79b81253ad..010b4141e87 100644 --- a/pkgs/stdenv/native/default.nix +++ b/pkgs/stdenv/native/default.nix @@ -129,7 +129,7 @@ in name = "cc-native"; nativeTools = true; nativeLibc = true; - inherit nativePrefix; + inherit lib nativePrefix; bintools = import ../../build-support/bintools-wrapper { name = "bintools"; inherit stdenvNoCC nativePrefix; diff --git a/pkgs/stdenv/nix/default.nix b/pkgs/stdenv/nix/default.nix index a8311f49609..2fb19992bc1 100644 --- a/pkgs/stdenv/nix/default.nix +++ b/pkgs/stdenv/nix/default.nix @@ -24,6 +24,7 @@ bootStages ++ [ initialPath = (import ../common-path.nix) { pkgs = prevStage; }; cc = import ../../build-support/cc-wrapper { + inherit lib; nativeTools = false; nativePrefix = lib.optionalString hostPlatform.isSunOS "/usr"; nativeLibc = true; From de048123a1cc5269d8b40a43d8a4e057b16e70ba Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 21 Apr 2021 18:04:01 +0200 Subject: [PATCH 62/81] badtouch: init at 0.7.3 --- pkgs/tools/security/badtouch/default.nix | 50 ++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 ++ 2 files changed, 54 insertions(+) create mode 100644 pkgs/tools/security/badtouch/default.nix diff --git a/pkgs/tools/security/badtouch/default.nix b/pkgs/tools/security/badtouch/default.nix new file mode 100644 index 00000000000..ea74bbb4fc3 --- /dev/null +++ b/pkgs/tools/security/badtouch/default.nix @@ -0,0 +1,50 @@ +{ lib +, stdenv +, fetchFromGitHub +, installShellFiles +, libcap +, openssl +, pkg-config +, rustPlatform +, Security +, zlib +}: + +rustPlatform.buildRustPackage rec { + pname = "badtouch"; + version = "0.7.3"; + + src = fetchFromGitHub { + owner = "kpcyrd"; + repo = pname; + rev = "v${version}"; + sha256 = "05dzwx9y8zh0y9zd4mibp02255qphc6iqy916fkm3ahaw0rg84h3"; + }; + + cargoSha256 = "0mmglgz037dk3g7qagf1dyss5hvvsdy0m5m1h6c3rk5bp5kjzg87"; + + nativeBuildInputs = [ + installShellFiles + pkg-config + ]; + + buildInputs = [ + libcap + zlib + openssl + ] ++ lib.optional stdenv.isDarwin Security; + + postInstall = '' + installManPage docs/${pname}.1 + ''; + + # Tests requires access to httpin.org + doCheck = false; + + meta = with lib; { + description = "Scriptable network authentication cracker"; + homepage = "https://github.com/kpcyrd/badtouch"; + license = with licenses; [ gpl3Only ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 00f21302c23..68c3b5f8354 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1666,6 +1666,10 @@ in backblaze-b2 = callPackage ../development/tools/backblaze-b2 { }; + badtouch = callPackage ../tools/security/badtouch { + inherit (darwin.apple_sdk.frameworks) Security; + }; + bandwhich = callPackage ../tools/networking/bandwhich { inherit (darwin.apple_sdk.frameworks) Security; }; From 689b77097ed9f469ac30c757bd1bd4e7a0e46755 Mon Sep 17 00:00:00 2001 From: Lancelot SIX Date: Wed, 21 Apr 2021 17:17:31 +0100 Subject: [PATCH 63/81] qgis: 3.16.5 -> 3.16.6 --- pkgs/applications/gis/qgis/unwrapped.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/gis/qgis/unwrapped.nix b/pkgs/applications/gis/qgis/unwrapped.nix index 49c442ee6d2..a8dd7787a52 100644 --- a/pkgs/applications/gis/qgis/unwrapped.nix +++ b/pkgs/applications/gis/qgis/unwrapped.nix @@ -24,7 +24,7 @@ let six ]; in mkDerivation rec { - version = "3.16.5"; + version = "3.16.6"; pname = "qgis"; name = "${pname}-unwrapped-${version}"; @@ -32,7 +32,7 @@ in mkDerivation rec { owner = "qgis"; repo = "QGIS"; rev = "final-${lib.replaceStrings [ "." ] [ "_" ] version}"; - sha256 = "1xkvgj1v2jgp107jyh9xmk1dzbbqxwkqy69z56vsaa8lf9gwgn5h"; + sha256 = "1vnz5kiyjircmhn4vq3fa5j2kvkxpwcsry7jc6nxl0w0dqx1zay1"; }; passthru = { From d3059bfff3f4513f797c9f369e8fa97686f8afdb Mon Sep 17 00:00:00 2001 From: Mihai Fufezan Date: Wed, 21 Apr 2021 18:37:27 +0300 Subject: [PATCH 64/81] orchis: 2021-02-28 -> 2021-04-20 --- pkgs/data/themes/orchis/default.nix | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/pkgs/data/themes/orchis/default.nix b/pkgs/data/themes/orchis/default.nix index cf479021fb1..a53e2f79f6a 100644 --- a/pkgs/data/themes/orchis/default.nix +++ b/pkgs/data/themes/orchis/default.nix @@ -1,18 +1,25 @@ -{ lib, stdenv, fetchFromGitHub, gtk3, gnome-themes-extra, gtk-engine-murrine -, accentColor ? "default" }: +{ lib +, stdenvNoCC +, fetchFromGitHub +, gtk3 +, gnome-themes-extra +, gtk-engine-murrine +, sassc +, accentColor ? "default" +}: -stdenv.mkDerivation rec { +stdenvNoCC.mkDerivation rec { pname = "orchis"; - version = "2021-02-28"; + version = "2021-04-20"; src = fetchFromGitHub { repo = "Orchis-theme"; owner = "vinceliuice"; rev = version; - sha256 = "sha256-HmC2e34n1eThFGgw9OzSgp5VFJOylyozpXgk9SO84+I="; + sha256 = "sha256-cCUmainVTqFztZGpL2z2Zj6zcE2SQBWrec6yNFUMo5M="; }; - nativeBuildInputs = [ gtk3 ]; + nativeBuildInputs = [ gtk3 sassc ]; buildInputs = [ gnome-themes-extra ]; From 045febc92df23689a7c2e5f7cc5e3d9622b98154 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 21 Apr 2021 18:46:40 +0200 Subject: [PATCH 65/81] wprecon: init at 1.6.3a --- pkgs/tools/security/wprecon/default.nix | 27 +++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 29 insertions(+) create mode 100644 pkgs/tools/security/wprecon/default.nix diff --git a/pkgs/tools/security/wprecon/default.nix b/pkgs/tools/security/wprecon/default.nix new file mode 100644 index 00000000000..401692bdf67 --- /dev/null +++ b/pkgs/tools/security/wprecon/default.nix @@ -0,0 +1,27 @@ +{ lib +, buildGoModule +, fetchFromGitHub +}: + +buildGoModule rec { + pname = "wprecon"; + version = "1.6.3a"; + + src = fetchFromGitHub { + owner = "blackbinn"; + repo = pname; + rev = version; + sha256 = "0gqi4799ha3mf8r7ini0wj4ilkfsh80vnnxijfv9a343r6z5w0dn"; + }; + + vendorSha256 = "1sab58shspll96rqy1rp659s0yikqdcx59z9b88d6p4w8a98ns87"; + + meta = with lib; { + description = "WordPress vulnerability recognition tool"; + homepage = "https://github.com/blackbinn/wprecon"; + # License Zero Noncommercial Public License 2.0.1 + # https://github.com/blackbinn/wprecon/blob/master/LICENSE + license = with licenses; [ unfree ]; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 00f21302c23..28edb713f39 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -30637,6 +30637,8 @@ in wordpress = callPackage ../servers/web-apps/wordpress { }; + wprecon = callPackage ../tools/security/wprecon { }; + wraith = callPackage ../applications/networking/irc/wraith { openssl = openssl_1_0_2; }; From 7b29dd9f75c4d5599dd61f411aac124c0b0bbc5d Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Wed, 21 Apr 2021 18:50:35 +0200 Subject: [PATCH 66/81] nvme-cli: 1.13 -> 1.14 --- pkgs/os-specific/linux/nvme-cli/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/os-specific/linux/nvme-cli/default.nix b/pkgs/os-specific/linux/nvme-cli/default.nix index 5e8bb550cf9..b12d4f8c498 100644 --- a/pkgs/os-specific/linux/nvme-cli/default.nix +++ b/pkgs/os-specific/linux/nvme-cli/default.nix @@ -4,13 +4,13 @@ stdenv.mkDerivation rec { pname = "nvme-cli"; - version = "1.13"; + version = "1.14"; src = fetchFromGitHub { owner = "linux-nvme"; repo = "nvme-cli"; rev = "v${version}"; - sha256 = "1d538kp841bjh8h8d9q7inqz56rdcwb3m78zfx8607ddykv7wcqb"; + sha256 = "0dpadz945482srqpsbfx1bh7rc499fgpyzz1flhk9g9xjbpapkzc"; }; nativeBuildInputs = [ pkg-config ]; From c88a223e38d3b36f0d4d12beab10f98282ed449a Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Wed, 21 Apr 2021 18:54:54 +0200 Subject: [PATCH 67/81] nvme-cli: Remove myself as maintainer --- pkgs/os-specific/linux/nvme-cli/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/nvme-cli/default.nix b/pkgs/os-specific/linux/nvme-cli/default.nix index b12d4f8c498..be14a5aebef 100644 --- a/pkgs/os-specific/linux/nvme-cli/default.nix +++ b/pkgs/os-specific/linux/nvme-cli/default.nix @@ -35,6 +35,6 @@ stdenv.mkDerivation rec { ''; license = licenses.gpl2Plus; platforms = platforms.linux; - maintainers = with maintainers; [ primeos tavyc ]; + maintainers = with maintainers; [ tavyc ]; }; } From fd44ecd1d894afda8ba669d56737f6679bd49680 Mon Sep 17 00:00:00 2001 From: Malo Bourgon Date: Mon, 12 Apr 2021 18:56:46 -0700 Subject: [PATCH 68/81] fishPlugins.done: init at 1.16.1 --- pkgs/shells/fish/plugins/default.nix | 2 ++ pkgs/shells/fish/plugins/done.nix | 25 +++++++++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 pkgs/shells/fish/plugins/done.nix diff --git a/pkgs/shells/fish/plugins/default.nix b/pkgs/shells/fish/plugins/default.nix index 50b8eb4d981..c886173096e 100644 --- a/pkgs/shells/fish/plugins/default.nix +++ b/pkgs/shells/fish/plugins/default.nix @@ -6,6 +6,8 @@ lib.makeScope newScope (self: with self; { clownfish = callPackage ./clownfish.nix { }; + done = callPackage ./done.nix { }; + # Fishtape 2.x and 3.x aren't compatible, # but both versions are used in the tests of different other plugins. fishtape = callPackage ./fishtape.nix { }; diff --git a/pkgs/shells/fish/plugins/done.nix b/pkgs/shells/fish/plugins/done.nix new file mode 100644 index 00000000000..25065b21fb1 --- /dev/null +++ b/pkgs/shells/fish/plugins/done.nix @@ -0,0 +1,25 @@ +{ lib, buildFishPlugin, fetchFromGitHub, fishtape }: + +buildFishPlugin rec { + pname = "done"; + version = "1.16.1"; + + src = fetchFromGitHub { + owner = "franciscolourenco"; + repo = "done"; + rev = version; + sha256 = "NFysKzRZgDXXZW/sUlZNu7ZpMCKwbjAhIfspSK3UqCY="; + }; + + checkPlugins = [ fishtape ]; + checkPhase = '' + fishtape test/done.fish + ''; + + meta = { + description = "Automatically receive notifications when long processes finish"; + homepage = "https://github.com/franciscolourenco/done"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ malo ]; + }; +} From fb580e732fe1d5afae3f0b8474eeae65aaf5f4df Mon Sep 17 00:00:00 2001 From: Kevin Rauscher Date: Wed, 21 Apr 2021 19:54:36 +0200 Subject: [PATCH 69/81] metals: 0.10.1 -> 0.10.2 --- pkgs/development/tools/metals/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/tools/metals/default.nix b/pkgs/development/tools/metals/default.nix index 78c99d94c8d..d686067e633 100644 --- a/pkgs/development/tools/metals/default.nix +++ b/pkgs/development/tools/metals/default.nix @@ -2,7 +2,7 @@ stdenv.mkDerivation rec { pname = "metals"; - version = "0.10.1"; + version = "0.10.2"; deps = stdenv.mkDerivation { name = "${pname}-deps-${version}"; @@ -16,7 +16,7 @@ stdenv.mkDerivation rec { ''; outputHashMode = "recursive"; outputHashAlgo = "sha256"; - outputHash = "0z4ddnwx510hnx6w72fxmksmnwxg8p2nqxg7i7xix24gykgmgj5a"; + outputHash = "1yck935pcj9cg3qxzrmvgd16afsckz8wgmzf2rlmii2c1glrbq9c"; }; nativeBuildInputs = [ makeWrapper ]; From 842d0a821cbc8ad0ae6ad092b405317713c41d90 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 21 Apr 2021 21:33:01 +0200 Subject: [PATCH 70/81] python3Packages.yeelight: 0.6.0 -> 0.6.1 --- pkgs/development/python-modules/yeelight/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/yeelight/default.nix b/pkgs/development/python-modules/yeelight/default.nix index 85b282566ee..9d435c1cce6 100644 --- a/pkgs/development/python-modules/yeelight/default.nix +++ b/pkgs/development/python-modules/yeelight/default.nix @@ -9,14 +9,14 @@ buildPythonPackage rec { pname = "yeelight"; - version = "0.6.0"; + version = "0.6.1"; disabled = pythonOlder "3.4"; src = fetchFromGitLab { owner = "stavros"; repo = "python-yeelight"; rev = "v${version}"; - sha256 = "0yycc2pdqaa9y46jycvm0p6braps7ljg2vvljngdqj2l1a2jmv7x"; + sha256 = "sha256-LB7A8E22hyqhVBElrOwtC3IPNkyQkU7ZJ1ScqaXQ6zs="; }; propagatedBuildInputs = [ From 21485c0d414d87d8b6620b4454bfd9f125586919 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Wed, 21 Apr 2021 22:33:03 +0200 Subject: [PATCH 71/81] python3Packages.faadelays: 0.0.6 -> 0.0.7 --- pkgs/development/python-modules/faadelays/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/faadelays/default.nix b/pkgs/development/python-modules/faadelays/default.nix index 3175aabcae8..7cd0e291999 100644 --- a/pkgs/development/python-modules/faadelays/default.nix +++ b/pkgs/development/python-modules/faadelays/default.nix @@ -7,12 +7,12 @@ buildPythonPackage rec { pname = "faadelays"; - version = "0.0.6"; + version = "0.0.7"; disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "02z8p0n9d6n4l6v1m969009gxwmy5v14z108r4f3swd6yrk0h2xd"; + sha256 = "sha256-osZqfSYlKPYZMelBR6YB331iRB4DTjCUlmX7pcrIiGk="; }; propagatedBuildInputs = [ aiohttp ]; From d0a90eb51a873795165c4d2f8f4a187fd550e71a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Wed, 21 Apr 2021 23:39:53 +0200 Subject: [PATCH 72/81] linuxPackages.isgx: limit to x86_64 --- pkgs/os-specific/linux/isgx/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/isgx/default.nix b/pkgs/os-specific/linux/isgx/default.nix index 5963d8a0e4f..3e551e55917 100644 --- a/pkgs/os-specific/linux/isgx/default.nix +++ b/pkgs/os-specific/linux/isgx/default.nix @@ -51,6 +51,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/intel/linux-sgx-driver"; license = with licenses; [ bsd3 /* OR */ gpl2Only ]; maintainers = with maintainers; [ oxalica ]; - platforms = platforms.linux; + platforms = [ "x86_64-linux" ]; }; } From 373ea9e2df13d7c5f6f2bf06cd864a055b04d049 Mon Sep 17 00:00:00 2001 From: Mario Rodas Date: Thu, 22 Apr 2021 00:00:00 +0000 Subject: [PATCH 73/81] zeek: 4.0.0 -> 4.0.1 https://github.com/zeek/zeek/releases/tag/v4.0.1 --- pkgs/applications/networking/ids/zeek/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/ids/zeek/default.nix b/pkgs/applications/networking/ids/zeek/default.nix index a12e914097c..405304f74af 100644 --- a/pkgs/applications/networking/ids/zeek/default.nix +++ b/pkgs/applications/networking/ids/zeek/default.nix @@ -21,11 +21,11 @@ stdenv.mkDerivation rec { pname = "zeek"; - version = "4.0.0"; + version = "4.0.1"; src = fetchurl { url = "https://download.zeek.org/zeek-${version}.tar.gz"; - sha256 = "0m7zy5k2595vf5xr2r4m75rfsdddigrv2hilm1c3zaif4srxmvpj"; + sha256 = "0ficl4i012gfv4mdbdclgvi6gyq338gw9gb6k58k1drw8c7qk6k5"; }; nativeBuildInputs = [ cmake flex bison file ]; From 5cbd461845b64e88800e0bc461f0584d29f158de Mon Sep 17 00:00:00 2001 From: Sandro Date: Thu, 22 Apr 2021 02:33:31 +0200 Subject: [PATCH 74/81] nvme-cli: add mic92 as maintainer MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Jörg Thalheim --- pkgs/os-specific/linux/nvme-cli/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/os-specific/linux/nvme-cli/default.nix b/pkgs/os-specific/linux/nvme-cli/default.nix index be14a5aebef..3a306508488 100644 --- a/pkgs/os-specific/linux/nvme-cli/default.nix +++ b/pkgs/os-specific/linux/nvme-cli/default.nix @@ -35,6 +35,6 @@ stdenv.mkDerivation rec { ''; license = licenses.gpl2Plus; platforms = platforms.linux; - maintainers = with maintainers; [ tavyc ]; + maintainers = with maintainers; [ mic92 ]; }; } From 3238e9f2e0794e4229dafffd99a8ffee44890c8f Mon Sep 17 00:00:00 2001 From: Benjamin Esham Date: Wed, 21 Apr 2021 18:15:47 -0700 Subject: [PATCH 75/81] amber: Fix build (#120126) Co-authored-by: Sandro --- pkgs/tools/text/amber/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/text/amber/default.nix b/pkgs/tools/text/amber/default.nix index 632a318e862..1cd9e74f194 100644 --- a/pkgs/tools/text/amber/default.nix +++ b/pkgs/tools/text/amber/default.nix @@ -1,5 +1,5 @@ { lib, stdenv, fetchFromGitHub, rustPlatform -, Security +, libiconv, Security }: rustPlatform.buildRustPackage rec { @@ -15,7 +15,7 @@ rustPlatform.buildRustPackage rec { cargoSha256 = "sha256-opRinhTmhZxpAwHNiVOLXL8boQf09Y1NXrWQ6HWQYQ0="; - buildInputs = lib.optional stdenv.isDarwin Security; + buildInputs = lib.optionals stdenv.isDarwin [ libiconv Security ]; meta = with lib; { description = "A code search-and-replace tool"; From 3eb8f4d15c6b3fbb0170045df40b43cfd07d5d10 Mon Sep 17 00:00:00 2001 From: Matthieu Coudron Date: Thu, 22 Apr 2021 03:21:36 +0200 Subject: [PATCH 76/81] update.py: allow to disable autocommit (#119182) --- maintainers/scripts/pluginupdate.py | 36 ++++++++++++++++++----------- 1 file changed, 23 insertions(+), 13 deletions(-) diff --git a/maintainers/scripts/pluginupdate.py b/maintainers/scripts/pluginupdate.py index 00a205313be..e7a183952b0 100644 --- a/maintainers/scripts/pluginupdate.py +++ b/maintainers/scripts/pluginupdate.py @@ -460,6 +460,10 @@ def parse_args(editor: Editor): default=30, help="Number of concurrent processes to spawn.", ) + parser.add_argument( + "--no-commit", "-n", action="store_true", default=False, + help="Whether to autocommit changes" + ) return parser.parse_args() @@ -504,24 +508,30 @@ def update_plugins(editor: Editor): redirects = update() rewrite_input(args.input_file, editor.deprecated, redirects) - commit(nixpkgs_repo, f"{editor.name}Plugins: update", [args.outfile]) + + autocommit = not args.no_commit + + if autocommit: + commit(nixpkgs_repo, f"{editor.name}Plugins: update", [args.outfile]) if redirects: update() - commit( - nixpkgs_repo, - f"{editor.name}Plugins: resolve github repository redirects", - [args.outfile, args.input_file, editor.deprecated], - ) + if autocommit: + commit( + nixpkgs_repo, + f"{editor.name}Plugins: resolve github repository redirects", + [args.outfile, args.input_file, editor.deprecated], + ) for plugin_line in args.add_plugins: rewrite_input(args.input_file, editor.deprecated, append=(plugin_line + "\n",)) update() plugin = fetch_plugin_from_pluginline(plugin_line) - commit( - nixpkgs_repo, - "{editor}Plugins.{name}: init at {version}".format( - editor=editor.name, name=plugin.normalized_name, version=plugin.version - ), - [args.outfile, args.input_file], - ) + if autocommit: + commit( + nixpkgs_repo, + "{editor}Plugins.{name}: init at {version}".format( + editor=editor.name, name=plugin.normalized_name, version=plugin.version + ), + [args.outfile, args.input_file], + ) From 897c8e6982de78ba629a77ca4aedae73e0923f10 Mon Sep 17 00:00:00 2001 From: Taeer Bar-Yam Date: Wed, 21 Apr 2021 11:49:18 -0400 Subject: [PATCH 77/81] mpg123: fix cross-compile to windows --- pkgs/applications/audio/mpg123/default.nix | 25 +++++++++++----------- 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/pkgs/applications/audio/mpg123/default.nix b/pkgs/applications/audio/mpg123/default.nix index a3e5b3e50eb..153e8b9940b 100644 --- a/pkgs/applications/audio/mpg123/default.nix +++ b/pkgs/applications/audio/mpg123/default.nix @@ -1,9 +1,9 @@ { lib, stdenv , fetchurl , makeWrapper - , alsaLib , perl +, withConplay ? !stdenv.targetPlatform.isWindows }: stdenv.mkDerivation rec { @@ -14,35 +14,36 @@ stdenv.mkDerivation rec { sha256 = "sha256-UCqX4Nk1vn432YczgCHY8wG641wohPKoPVnEtSRm7wY="; }; - outputs = [ "out" "conplay" ]; + outputs = [ "out" ] ++ lib.optionals withConplay [ "conplay" ]; - nativeBuildInputs = [ makeWrapper ]; + nativeBuildInputs = lib.optionals withConplay [ makeWrapper ]; - buildInputs = [ perl ] ++ lib.optional (!stdenv.isDarwin) alsaLib; + buildInputs = lib.optionals withConplay [ perl ] + ++ lib.optionals (!stdenv.isDarwin && !stdenv.targetPlatform.isWindows) [ alsaLib ]; configureFlags = lib.optional (stdenv.hostPlatform ? mpg123) "--with-cpu=${stdenv.hostPlatform.mpg123.cpu}"; - postInstall = '' + postInstall = lib.optionalString withConplay '' mkdir -p $conplay/bin mv scripts/conplay $conplay/bin/ ''; - preFixup = '' + preFixup = lib.optionalString withConplay '' patchShebangs $conplay/bin/conplay ''; - postFixup = '' + postFixup = lib.optionalString withConplay '' wrapProgram $conplay/bin/conplay \ --prefix PATH : $out/bin ''; - meta = { + meta = with lib; { description = "Fast console MPEG Audio Player and decoder library"; - homepage = "http://mpg123.org"; - license = lib.licenses.lgpl21; - maintainers = [ lib.maintainers.ftrvxmtrx ]; - platforms = lib.platforms.unix; + homepage = "https://mpg123.org"; + license = licenses.lgpl21; + maintainers = [ maintainers.ftrvxmtrx ]; + platforms = platforms.all; }; } From 54d8941a0d2cb8b7b6a1fd0a9e11d1c8da9cf378 Mon Sep 17 00:00:00 2001 From: Lars Jellema Date: Thu, 22 Apr 2021 05:38:16 +0200 Subject: [PATCH 78/81] esbuild: init at 0.11.12 (#120089) Co-authored-by: Fabian Affolter Co-authored-by: Sandro --- pkgs/development/tools/esbuild/default.nix | 22 ++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 24 insertions(+) create mode 100644 pkgs/development/tools/esbuild/default.nix diff --git a/pkgs/development/tools/esbuild/default.nix b/pkgs/development/tools/esbuild/default.nix new file mode 100644 index 00000000000..e23894c42a0 --- /dev/null +++ b/pkgs/development/tools/esbuild/default.nix @@ -0,0 +1,22 @@ +{ buildGoModule, fetchFromGitHub, lib }: + +buildGoModule rec { + pname = "esbuild"; + version = "0.11.12"; + + src = fetchFromGitHub { + owner = "evanw"; + repo = "esbuild"; + rev = "v${version}"; + sha256 = "1mxj4mrq1zbvv25alnc3s36bhnnhghivgwp45a7m3cp1389ffcd1"; + }; + + vendorSha256 = "1n5538yik72x94vzfq31qaqrkpxds5xys1wlibw2gn2am0z5c06q"; + + meta = with lib; { + description = "An extremely fast JavaScript bundler"; + homepage = "https://esbuild.github.io"; + license = licenses.mit; + maintainers = with maintainers; [ lucus16 ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index d6ba1556197..7dac5783292 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1347,6 +1347,8 @@ in enpass = callPackage ../tools/security/enpass { }; + esbuild = callPackage ../development/tools/esbuild { }; + essentia-extractor = callPackage ../tools/audio/essentia-extractor { }; esh = callPackage ../tools/text/esh { }; From 391c5fcb5af55c05d7b65b67758175ad7b9900e5 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Thu, 22 Apr 2021 05:39:12 +0200 Subject: [PATCH 79/81] anevicon: init at 0.1.0 (#120043) Co-authored-by: Sandro --- pkgs/tools/networking/anevicon/default.nix | 39 ++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 4 +++ 2 files changed, 43 insertions(+) create mode 100644 pkgs/tools/networking/anevicon/default.nix diff --git a/pkgs/tools/networking/anevicon/default.nix b/pkgs/tools/networking/anevicon/default.nix new file mode 100644 index 00000000000..95a4bbe9fb8 --- /dev/null +++ b/pkgs/tools/networking/anevicon/default.nix @@ -0,0 +1,39 @@ +{ lib +, stdenv +, fetchFromGitHub +, fetchpatch +, rustPlatform +, Security +}: + +rustPlatform.buildRustPackage rec { + pname = "anevicon"; + version = "0.1.0"; + + src = fetchFromGitHub { + owner = "rozgo"; + repo = pname; + rev = "v${version}"; + sha256 = "1m3ci7g7nn28p6x5m85av3ljgszwlg55f1hmgjnarc6bas5bapl7"; + }; + + cargoSha256 = "1g15v13ysx09fy0b8qddw5fwql2pvwzc2g2h1ndhzpxvfy7fzpr1"; + + buildInputs = lib.optionals stdenv.isDarwin [ Security ]; + + cargoPatches = [ + # Add Cargo.lock file, https://github.com/rozgo/anevicon/pull/1 + (fetchpatch { + name = "cargo-lock-file.patch"; + url = "https://github.com/rozgo/anevicon/commit/205440a0863aaea34394f30f4255fa0bb1704aed.patch"; + sha256 = "02syzm7irn4slr3s5dwwhvg1qx8fdplwlhza8gfkc6ajl7vdc7ri"; + }) + ]; + + meta = with lib; { + description = "UDP-based load generator"; + homepage = "https://github.com/rozgo/anevicon"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7dac5783292..1cd73f2ad01 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1600,6 +1600,10 @@ in novacomd = callPackage ../development/mobile/webos/novacomd.nix { }; }; + anevicon = callPackage ../tools/networking/anevicon { + inherit (darwin.apple_sdk.frameworks) Security; + }; + apprise = with python3Packages; toPythonApplication apprise; aria2 = callPackage ../tools/networking/aria2 { From 1147c815df53e81ffbafad63a03797a7b288954c Mon Sep 17 00:00:00 2001 From: Hunter Jones Date: Wed, 21 Apr 2021 20:51:07 -0500 Subject: [PATCH 80/81] ace: 6.5.11 -> 7.0.1 --- pkgs/development/libraries/ace/default.nix | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/pkgs/development/libraries/ace/default.nix b/pkgs/development/libraries/ace/default.nix index 85df0b43353..8210bdb4425 100644 --- a/pkgs/development/libraries/ace/default.nix +++ b/pkgs/development/libraries/ace/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "ace"; - version = "6.5.11"; + version = "7.0.1"; src = fetchurl { - url = "http://download.dre.vanderbilt.edu/previous_versions/ACE-${version}.tar.bz2"; - sha256 = "0fbbysy6aymys30zh5m2bygs84dwwjnbsdl9ipj1rvfrhq8jbylb"; + url = "https://download.dre.vanderbilt.edu/previous_versions/ACE-${version}.tar.bz2"; + sha256 = "sha256-5nH5a0tBOcGfA07eeh9EjH0vgT3gTRWYHXoeO+QFQjQ="; }; enableParallelBuilding = true; @@ -18,8 +18,9 @@ stdenv.mkDerivation rec { "-Wno-error=format-security" ]; - patchPhase = ''substituteInPlace ./MPC/prj_install.pl \ - --replace /usr/bin/perl "${perl}/bin/perl"''; + postPatch = '' + patchShebangs ./MPC/prj_install.pl + ''; preConfigure = '' export INSTALL_PREFIX=$out @@ -31,10 +32,10 @@ stdenv.mkDerivation rec { ''; meta = with lib; { + homepage = "https://www.dre.vanderbilt.edu/~schmidt/ACE.html"; description = "ADAPTIVE Communication Environment"; - homepage = "http://www.dre.vanderbilt.edu/~schmidt/ACE.html"; license = licenses.doc; + maintainers = with maintainers; [ nico202 ]; platforms = platforms.linux; - maintainers = [ maintainers.nico202 ]; }; } From 6b2d6a52bae6f810135da42da257b56519408fce Mon Sep 17 00:00:00 2001 From: JesusMtnez Date: Thu, 22 Apr 2021 06:13:30 +0200 Subject: [PATCH 81/81] slack: fix update script --- .../networking/instant-messengers/slack/update.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/instant-messengers/slack/update.sh b/pkgs/applications/networking/instant-messengers/slack/update.sh index adef4441109..0bb0d784167 100755 --- a/pkgs/applications/networking/instant-messengers/slack/update.sh +++ b/pkgs/applications/networking/instant-messengers/slack/update.sh @@ -3,8 +3,8 @@ set -eou pipefail -latest_linux_version=$(curl --silent https://slack.com/downloads/linux | sed -n 's/.*Version \([0-9\.]\+\).*/\1/p') -latest_mac_version=$(curl --silent https://slack.com/downloads/mac | sed -n 's/.*Version \([0-9\.]\+\).*/\1/p') +latest_linux_version=$(curl -L --silent https://slack.com/downloads/linux | sed -n 's/.*Version \([0-9\.]\+\).*/\1/p') +latest_mac_version=$(curl -L --silent https://slack.com/downloads/mac | sed -n 's/.*Version \([0-9\.]\+\).*/\1/p') # Double check that the latest mac and linux versions are in sync. if [[ "$latest_linux_version" != "$latest_mac_version" ]]; then