Merge master into staging-next

This commit is contained in:
github-actions[bot] 2021-03-11 12:21:28 +00:00 committed by GitHub
commit b4d5951d9e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
33 changed files with 388 additions and 64 deletions

View File

@ -72,3 +72,7 @@ This is used with Savannah repositories. The arguments expected are very similar
## `fetchFromRepoOrCz`
This is used with repo.or.cz repositories. The arguments expected are very similar to fetchFromGitHub above.
## `fetchFromSourcehut`
This is used with sourcehut repositories. The arguments expected are very similar to fetchFromGitHub above. Don't forget the tilde (~) in front of the user name!

View File

@ -205,9 +205,8 @@ in
users.groups.privoxy = {};
systemd.tmpfiles.rules = with cfg.settings; [
"d ${certificate-directory} 0770 privoxy privoxy ${cfg.certsLifetime}"
];
systemd.tmpfiles.rules = optional cfg.inspectHttps
"d ${cfg.settings.certificate-directory} 0770 privoxy privoxy ${cfg.certsLifetime}";
systemd.services.privoxy = {
description = "Filtering web proxy";

View File

@ -10,7 +10,7 @@ let
extensions = { enabled, all }:
(with all;
enabled
++ [ imagick ] # Always enabled
++ optional (!cfg.disableImagemagick) imagick
# Optionally enabled depending on caching settings
++ optional cfg.caching.apcu apcu
++ optional cfg.caching.redis redis
@ -303,6 +303,18 @@ in {
};
};
disableImagemagick = mkOption {
type = types.bool;
default = false;
description = ''
Whether to not load the ImageMagick module into PHP.
This is used by the theming app and for generating previews of certain images (e.g. SVG and HEIF).
You may want to disable it for increased security. In that case, previews will still be available
for some images (e.g. JPEG and PNG).
See https://github.com/nextcloud/server/issues/13099
'';
};
caching = {
apcu = mkOption {
type = types.bool;

View File

@ -7,7 +7,7 @@ in {
maintainers = [ globin eqyiel ];
};
nodes = {
nodes = rec {
# The only thing the client needs to do is download a file.
client = { ... }: {
services.davfs2.enable = true;
@ -47,9 +47,14 @@ in {
environment.systemPackages = [ cfg.services.nextcloud.occ ];
};
nextcloudWithoutMagick = args@{ config, pkgs, lib, ... }:
lib.mkMerge
[ (nextcloud args)
{ services.nextcloud.disableImagemagick = true; } ];
};
testScript = let
testScript = { nodes, ... }: let
withRcloneEnv = pkgs.writeScript "with-rclone-env" ''
#!${pkgs.runtimeShell}
export RCLONE_CONFIG_NEXTCLOUD_TYPE=webdav
@ -68,8 +73,19 @@ in {
#!${pkgs.runtimeShell}
diff <(echo 'hi') <(${pkgs.rclone}/bin/rclone cat nextcloud:test-shared-file)
'';
findInClosure = what: drv: pkgs.runCommand "find-in-closure" { exportReferencesGraph = [ "graph" drv ]; inherit what; } ''
test -e graph
grep "$what" graph >$out || true
'';
nextcloudUsesImagick = findInClosure "imagick" nodes.nextcloud.config.system.build.vm;
nextcloudWithoutDoesntUseIt = findInClosure "imagick" nodes.nextcloudWithoutMagick.config.system.build.vm;
in ''
start_all()
assert open("${nextcloudUsesImagick}").read() != ""
assert open("${nextcloudWithoutDoesntUseIt}").read() == ""
nextcloud.start()
client.start()
nextcloud.wait_for_unit("multi-user.target")
# This is just to ensure the nextcloud-occ program is working
nextcloud.succeed("nextcloud-occ status")

View File

@ -90,11 +90,11 @@ in
stdenv.mkDerivation rec {
pname = "brave";
version = "1.21.73";
version = "1.21.74";
src = fetchurl {
url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
sha256 = "12jkj9h1smipqlkidnd3r492yfnncl0b2dmjq22qp2vsrscc3jfg";
sha256 = "2csyjwn5j5+cRmjq0+gHLWvIVjtaSaN9rVZ8ikI0gec=";
};
dontConfigure = true;
@ -160,7 +160,7 @@ stdenv.mkDerivation rec {
meta = with lib; {
homepage = "https://brave.com/";
description = "Privacy-oriented browser for Desktop and Laptop computers";
changelog = "https://github.com/brave/brave-browser/blob/v${version}/CHANGELOG.md";
changelog = "https://github.com/brave/brave-browser/blob/master/CHANGELOG_DESKTOP.md";
longDescription = ''
Brave browser blocks the ads and trackers that slow you down,
chew up your bandwidth, and invade your privacy. Brave lets you

View File

@ -1,5 +1,5 @@
{ lib
, fetchurl
, fetchFromSourcehut
, rustPlatform
, pkg-config
, wrapGAppsHook
@ -15,9 +15,11 @@ rustPlatform.buildRustPackage rec {
pname = "castor";
version = "0.8.16";
src = fetchurl {
url = "https://git.sr.ht/~julienxx/castor/archive/${version}.tar.gz";
sha256 = "1qwsprwazkzcs70h219fhh5jj5s5hm1k120fn3pk4qivii4lyhah";
src = fetchFromSourcehut {
owner = "~julienxx";
repo = pname;
rev = version;
sha256 = "0rwg1w7srjwa23mkypl8zk6674nhph4xsc6nc01f6g5k959szylr";
};
cargoSha256 = "0yn2kfiaz6d8wc8rdqli2pwffp5vb1v3zi7520ysrd5b6fc2csf2";

View File

@ -17,7 +17,7 @@
, protobuf, speechd, libXdamage, cups
, ffmpeg, libxslt, libxml2, at-spi2-core
, jre8
, pipewire_0_2
, pipewire
, libva
, libdrm, wayland, mesa, libxkbcommon # Ozone
@ -140,7 +140,7 @@ let
libXScrnSaver libXcursor libXtst libxshmfence libGLU libGL
pciutils protobuf speechd libXdamage at-spi2-core
jre
pipewire_0_2
pipewire
libva
libdrm wayland mesa.drivers libxkbcommon
] ++ optional gnomeKeyringSupport libgnome-keyring3
@ -263,6 +263,7 @@ let
use_pulseaudio = true;
link_pulseaudio = true;
} // optionalAttrs (chromiumVersionAtLeast "89") {
rtc_pipewire_version = "0.3"; # TODO: Can be removed once ungoogled-chromium is at M90
# Disable PGO (defaults to 2 since M89) because it fails without additional changes:
# error: Could not read profile ../../chrome/build/pgo_profiles/chrome-linux-master-1610647094-405a32bcf15e5a84949640f99f84a5b9f61e2f2e.profdata: Unsupported instrumentation profile format version
chrome_pgo_phase = 0;

View File

@ -2,7 +2,7 @@
, llvmPackages_11, ed, gnugrep, coreutils, xdg-utils
, glib, gtk3, gnome3, gsettings-desktop-schemas, gn, fetchgit
, libva ? null
, pipewire_0_2
, pipewire
, gcc, nspr, nss, runCommand
, lib
@ -161,7 +161,7 @@ in stdenv.mkDerivation {
buildCommand = let
browserBinary = "${chromiumWV}/libexec/chromium/chromium";
libPath = lib.makeLibraryPath [ libva pipewire_0_2 ];
libPath = lib.makeLibraryPath [ libva pipewire ];
in with lib; ''
mkdir -p "$out/bin"

View File

@ -44,19 +44,19 @@
}
},
"ungoogled-chromium": {
"version": "88.0.4324.182",
"sha256": "10av060ix6lgsvv99lyvyy03r0m3zwdg4hddbi6dycrdxk1iyh9h",
"sha256bin64": "1rjg23xiybpnis93yb5zkvglm3r4fds9ip5mgl6f682z5x0yj05b",
"version": "89.0.4389.82",
"sha256": "0yg33d6zldz3j1jghhdci63fn46i10dkz3nb95jdrbv8gd018jfz",
"sha256bin64": "1sqzzillq38qyh85449ncz8bni93mjxb6r4z8y5h8k2w3j38jc0q",
"deps": {
"gn": {
"version": "2020-11-05",
"version": "2021-01-07",
"url": "https://gn.googlesource.com/gn",
"rev": "53d92014bf94c3893886470a1c7c1289f8818db0",
"sha256": "1xcm07qjk6m2czi150fiqqxql067i832adck6zxrishm70c9jbr9"
"rev": "595e3be7c8381d4eeefce62a63ec12bae9ce5140",
"sha256": "08y7cjlgjdbzja5ij31wxc9i191845m01v1hc7y176svk9y0hj1d"
},
"ungoogled-patches": {
"rev": "88.0.4324.182-1",
"sha256": "1c9y1dn9s06pskkjw2r8lsbplak8m2rwh4drixvjpif7b4cgdhay"
"rev": "89.0.4389.82-1",
"sha256": "183w22q6mpmw7s1l65dzvc5i422vl7qax6q4xpgr3krcx4y00878"
}
}
}

View File

@ -25,11 +25,11 @@ assert !withQT -> default != "qt5";
stdenv.mkDerivation rec {
pname = "avidemux";
version = "2.7.6";
version = "2.7.8";
src = fetchurl {
url = "mirror://sourceforge/avidemux/avidemux/${version}/avidemux_${version}.tar.gz";
sha256 = "1kwkn976ppahrcr74bnv6sqx75pzl9y21m1mvr5ksi1m6lgp924s";
sha256 = "sha256-YopAT1If8oEnYHAK4+KqeOWBaw/z+2/QWsPnUkjZdAE=";
};
patches = [

View File

@ -0,0 +1,25 @@
{ fetchzip, lib }:
{ owner
, repo, rev
, domain ? "sr.ht"
, vc ? "git"
, name ? "source"
, ... # For hash agility
} @ args:
with lib;
assert (lib.assertOneOf "vc" vc [ "hg" "git" ]);
let
baseUrl = "https://${vc}.${domain}/${owner}/${repo}";
in fetchzip (recursiveUpdate {
inherit name;
url = "${baseUrl}/archive/${rev}.tar.gz";
meta.homepage = "${baseUrl}/";
extraPostFetch = optionalString (vc == "hg") ''
rm -f "$out/.hg_archival.txt"
''; # impure file; see #12002
} (removeAttrs args [ "owner" "repo" "rev" "domain" "vc" ])) // { inherit rev; }

View File

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "evcxr";
version = "0.7.0";
version = "0.8.1";
src = fetchFromGitHub {
owner = "google";
repo = "evcxr";
rev = "v${version}";
sha256 = "sha256-33XeepqwYmTMcObroPTuxykYuM9qYI1+LV5lZIFSomg=";
sha256 = "sha256-5YbvPDyGaoKPelLep2tVica08SI7Cyo9SLMnE6dmWe4=";
};
cargoSha256 = "sha256-tjCID3YeGkxcq/LqJDMHGNpv1MCXKtcLlDnNkFwx1zU=";
cargoSha256 = "sha256-hqVmNBrvagqhGPWTaBXuY8lULolWIoR5ovEhH5k1tz4=";
RUST_SRC_PATH = "${rustPlatform.rustLibSrc}";

View File

@ -0,0 +1,44 @@
{ lib
, fetchFromGitHub
, buildDunePackage
, bigarray-compat
, containers
, cppo
, ctypes
, integers
, num
, ppxlib
, re
}:
buildDunePackage rec {
pname = "ppx_cstubs";
version = "0.6.1.1";
useDune2 = true;
src = fetchFromGitHub {
owner = "fdopen";
repo = "ppx_cstubs";
rev = version;
sha256 = "0rgg78435ypi6ryhcq5ljkch4qjvra2jqjd47c2hhhcbwvi2ssxh";
};
buildInputs = [
bigarray-compat
containers
cppo
ctypes
integers
num
ppxlib
re
];
meta = with lib; {
homepage = "https://github.com/fdopen/ppx_cstubs";
description = "Preprocessor for easier stub generation with ocaml-ctypes";
license = licenses.mit;
maintainers = [ maintainers.osener ];
};
}

View File

@ -1,15 +1,28 @@
{ lib, fetchurl, buildDunePackage
, cppo, ppxlib, ppx_derivers, result, ounit, ocaml-migrate-parsetree
{ lib
, fetchurl
, buildDunePackage
, cppo
, ppxlib
, ppx_derivers
, result
, ounit
, ocaml-migrate-parsetree
, ocaml-migrate-parsetree-2-1
}:
let params =
if lib.versionAtLeast ppxlib.version "0.15"
then {
if lib.versionAtLeast ppxlib.version "0.20" then {
version = "5.2.1";
sha256 = "11h75dsbv3rs03pl67hdd3lbim7wjzh257ij9c75fcknbfr5ysz9";
useOMP2 = true;
} else if lib.versionAtLeast ppxlib.version "0.15" then {
version = "5.1";
sha256 = "1i64fd7qrfzbam5hfbl01r0sx4iihsahcwqj13smmrjlnwi3nkxh";
useOMP2 = false;
} else {
version = "5.0";
sha256 = "0fkzrn4pdyvf1kl0nwvhqidq01pnq3ql8zk1jd56hb0cxaw851w3";
useOMP2 = false;
}
; in
@ -25,7 +38,13 @@ buildDunePackage rec {
};
buildInputs = [ ppxlib cppo ];
propagatedBuildInputs = [ ocaml-migrate-parsetree ppx_derivers result ];
propagatedBuildInputs = [
(if params.useOMP2
then ocaml-migrate-parsetree-2-1
else ocaml-migrate-parsetree)
ppx_derivers
result
];
doCheck = true;
checkInputs = [ ounit ];

View File

@ -25,6 +25,10 @@ let param = {
sha256 = "1ciy6va2gjrpjs02kha83pzh0x1gkmfsfsdgabbs1v14a8qgfibm";
min_version = "4.07";
};
"0.22.0" = {
sha256 = "0kf7lgcwygf6zlx7rwddqpqvasa6v7xiq0bqal8vxlib6lpg074q";
min_version = "4.07";
};
}."${version}"; in
if param ? max_version && lib.versionAtLeast ocaml.version param.max_version

View File

@ -0,0 +1,29 @@
{ lib, stdenv, buildPythonPackage, fetchFromGitHub, pythonOlder
, six, pytestCheckHook, pytest-benchmark, enum34, numpy, arrow, ruamel_yaml
}:
buildPythonPackage rec {
pname = "construct";
version = "2.10.54";
# no tests in PyPI tarball
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "v${version}";
sha256 = "1mqspsn6bf3ibvih1zna2glkg8iw7vy5zg9gzg0d1m8zcndk2c48";
};
checkInputs = [ pytestCheckHook pytest-benchmark enum34 numpy arrow ruamel_yaml ];
disabledTests = lib.optionals stdenv.isDarwin [ "test_multiprocessing" ];
pytestFlagsArray = [ "--benchmark-disable" ];
meta = with lib; {
description = "Powerful declarative parser (and builder) for binary data";
homepage = "https://construct.readthedocs.org/";
license = licenses.mit;
maintainers = with maintainers; [ dotlambda ];
};
}

View File

@ -0,0 +1,36 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, pymeeus
, pytz
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "convertdate";
version = "2.2.2";
# Tests are not available in the PyPI tarball so use GitHub instead.
src = fetchFromGitHub {
owner = "fitnr";
repo = pname;
rev = "v${version}";
sha256 = "1xgi7x9b9kxm0q51bqnmwdm5lp8vwhx5yk4d1b23r37spz9dbhw5";
};
propagatedBuildInputs = [
pymeeus
pytz
];
checkInputs = [
pytestCheckHook
];
meta = with lib; {
homepage = "https://github.com/fitnr/convertdate";
description = "Utils for converting between date formats and calculating holidays";
license = licenses.mit;
maintainers = with maintainers; [ jluttine ];
};
}

View File

@ -1,5 +1,6 @@
{ lib
, buildPythonPackage
, isPy27
, fetchFromGitHub
, pymeeus
, pytz
@ -10,6 +11,8 @@ buildPythonPackage rec {
pname = "convertdate";
version = "2.3.0";
disabled = isPy27;
# Tests are not available in the PyPI tarball so use GitHub instead.
src = fetchFromGitHub {
owner = "fitnr";

View File

@ -0,0 +1,55 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, mock
, parameterized
, pytestCheckHook
, dateutil
, pytz
, regex
, tzlocal
, convertdate
, umalqurra
, jdatetime
, ruamel_yaml
}:
buildPythonPackage rec {
pname = "dateparser";
version = "0.7.6";
src = fetchFromGitHub {
owner = "scrapinghub";
repo = "dateparser";
rev = "v${version}";
sha256 = "0j3sm4hlx7z0ci5fnjq5n9i02vvlfz0wxa889ydryfknjhy5apqw";
};
checkInputs = [
mock
parameterized
pytestCheckHook
];
pytestFlagsArray = [ "tests" ];
disabledTestPaths = [
"tests/test_dateparser_data_integrity.py" # ImportError: No module named ruamel.yaml
];
propagatedBuildInputs = [
# install_requires
dateutil pytz regex tzlocal
# extra_requires
convertdate umalqurra jdatetime ruamel_yaml
];
pythonImportsCheck = [ "dateparser" ];
meta = with lib; {
description = "Date parsing library designed to parse dates from HTML pages";
homepage = "https://github.com/scrapinghub/dateparser";
license = licenses.bsd3;
maintainers = with maintainers; [ dotlambda ];
};
}

View File

@ -3,13 +3,13 @@
buildPythonPackage rec {
pname = "pystray";
version = "0.16.0";
version = "0.17.2";
src = fetchFromGitHub {
owner = "moses-palmer";
repo = "pystray";
rev = "v${version}";
sha256 = "0q5yqfm5mzffx9vnp9xcnclgjzgs0b7f50i9xmxn1m1iha1zawh1";
sha256 = "sha256-/dU+jwe/3qhypq7e5tawhJKzSryW7EIbmrpP+VLDvHA=";
};
propagatedBuildInputs = [ pillow xlib six ];

View File

@ -0,0 +1,48 @@
{ buildPythonPackage
, lib
, six
, fetchPypi
, pyyaml
, mock
, contextlib2
, wrapt
, pytest
, pytest-httpbin
, yarl
, pythonOlder
, pythonAtLeast
}:
buildPythonPackage rec {
pname = "vcrpy";
version = "3.0.0";
src = fetchPypi {
inherit pname version;
sha256 = "21168d5ae14263a833d4b71acfd8278d8841114f24be1b4ab4a5719d0c7f07bc";
};
checkInputs = [
pytest
pytest-httpbin
];
propagatedBuildInputs = [
pyyaml
wrapt
six
]
++ lib.optionals (pythonOlder "3.3") [ contextlib2 mock ]
++ lib.optionals (pythonAtLeast "3.4") [ yarl ];
checkPhase = ''
py.test --ignore=tests/integration -k "not TestVCRConnection"
'';
meta = with lib; {
description = "Automatically mock your HTTP interactions to simplify and speed up testing";
homepage = "https://github.com/kevin1024/vcrpy";
license = licenses.mit;
};
}

View File

@ -1,5 +1,6 @@
{ buildPythonPackage
, lib
, isPy27
, six
, fetchPypi
, pyyaml
@ -17,6 +18,8 @@ buildPythonPackage rec {
pname = "vcrpy";
version = "4.1.1";
disabled = isPy27;
src = fetchPypi {
inherit pname version;
sha256 = "57095bf22fc0a2d99ee9674cdafebed0f3ba763018582450706f7d3a74fff599";

View File

@ -1,12 +1,14 @@
{ lib, stdenv, fetchhg, meson, ninja, pkg-config, wlroots, wayland, wayland-protocols
{ lib, stdenv, fetchFromSourcehut, meson, ninja, pkg-config, wlroots, wayland, wayland-protocols
, libX11, libGL }:
stdenv.mkDerivation {
name = "glpaper";
stdenv.mkDerivation rec {
pname = "glpaper";
version = "unstable-2020-10-11";
src = fetchhg {
url = "https://hg.sr.ht/~scoopta/glpaper";
src = fetchFromSourcehut {
owner = "~scoopta";
repo = pname;
vc = "hg";
rev = "9e7ec7cd270af330039c395345c7d23c04682267";
sha256 = "sha256-yBHRg6eg+PK/ixuM0MBty3RJY9qcemr3Dt+8SAitqnk=";
};

View File

@ -1,11 +1,12 @@
{ lib, stdenv, fetchgit, port ? "1234" }:
{ lib, stdenv, fetchFromSourcehut, port ? "1234" }:
stdenv.mkDerivation {
pname = "among-sus-unstable";
version = "2020-10-29";
src = fetchgit {
url = "https://git.sr.ht/~martijnbraam/among-sus";
src = fetchFromSourcehut {
owner = "~martijnbraam";
repo = "among-sus";
rev = "1f4c8d800d025d36ac66826937161be3252fbc57";
sha256 = "19jq7ygh9l11dl1h6702bg57m04y35nqd6yqx1rgp1kxwhp45xyh";
};

View File

@ -1,11 +1,12 @@
{ lib, fetchgit, rustPlatform, pkg-config, openssl }:
{ lib, fetchFromSourcehut, rustPlatform, pkg-config, openssl }:
rustPlatform.buildRustPackage rec {
pname = "eidolon";
version = "1.4.6";
src = fetchgit {
url = "https://git.sr.ht/~nicohman/eidolon";
src = fetchFromSourcehut {
owner = "~nicohman";
repo = pname;
rev = version;
sha256 = "1yn3k569pxzw43mmsk97088xpkdc714rks3ncchbb6ccx25kgxrr";
};

View File

@ -772,6 +772,8 @@ let
MLX4_EN_VXLAN = whenOlder "4.8" yes;
MLX5_CORE_EN = option yes;
NVME_MULTIPATH = whenAtLeast "4.15" yes;
PSI = whenAtLeast "4.20" yes;
MODVERSIONS = whenOlder "4.9" yes;

View File

@ -21,6 +21,7 @@
, enableKodiupdate ? true
, enableLastfm ? true
, enableLoadext ? true
, enableLyrics ? true
, enableMpd ? true
, enablePlaylist ? true
, enableReplaygain ? true
@ -59,6 +60,7 @@ let
lastgenre = enableLastfm;
lastimport = enableLastfm;
loadext = enableLoadext;
lyrics = enableLyrics;
mpdstats = enableMpd;
mpdupdate = enableMpd;
playlist = enablePlaylist;
@ -73,7 +75,7 @@ let
pluginsWithoutDeps = [
"bench" "bpd" "bpm" "bucket" "cue" "duplicates" "edit" "embedart"
"export" "filefilter" "fish" "freedesktop" "fromfilename" "ftintitle" "fuzzy"
"hook" "ihate" "importadded" "importfeeds" "info" "inline" "ipfs" "lyrics"
"hook" "ihate" "importadded" "importfeeds" "info" "inline" "ipfs"
"mbcollection" "mbsubmit" "mbsync" "metasync" "missing" "parentwork" "permissions" "play"
"plexupdate" "random" "rewrite" "scrub" "smartplaylist" "spotify" "the"
"types" "unimported" "zero"
@ -130,6 +132,8 @@ in pythonPackages.buildPythonApplication rec {
] ++ lib.optional enableAbsubmit essentia-extractor
++ lib.optional enableAcoustid pythonPackages.pyacoustid
++ lib.optional enableBeatport pythonPackages.requests_oauthlib
++ lib.optional enableConvert ffmpeg
++ lib.optional enableDiscogs pythonPackages.discogs_client
++ lib.optional (enableFetchart
|| enableDeezer
|| enableEmbyupdate
@ -139,10 +143,9 @@ in pythonPackages.buildPythonApplication rec {
|| enableSubsonicplaylist
|| enableSubsonicupdate
|| enableAcousticbrainz) pythonPackages.requests
++ lib.optional enableConvert ffmpeg
++ lib.optional enableDiscogs pythonPackages.discogs_client
++ lib.optional enableKeyfinder keyfinder-cli
++ lib.optional enableLastfm pythonPackages.pylast
++ lib.optional enableLyrics pythonPackages.beautifulsoup4
++ lib.optional enableMpd pythonPackages.mpd2
++ lib.optional enableSonosUpdate pythonPackages.soco
++ lib.optional enableThumbnails pythonPackages.pyxdg

View File

@ -1,4 +1,4 @@
{ lib, fetchFromGitHub, rustPlatform, installShellFiles }:
{ lib, stdenv, fetchFromGitHub, rustPlatform, installShellFiles, libiconv }:
rustPlatform.buildRustPackage rec {
pname = "fselect";
@ -14,6 +14,7 @@ rustPlatform.buildRustPackage rec {
cargoSha256 = "sha256-vVIanMkc0sPzu0L48oOh8wEEUOckR/AYkz81u4OR+fE=";
nativeBuildInputs = [ installShellFiles ];
buildInputs = lib.optional stdenv.isDarwin libiconv;
postInstall = ''
installManPage docs/fselect.1

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "hcxtools";
version = "6.1.5";
version = "6.1.6";
src = fetchFromGitHub {
owner = "ZerBea";
repo = pname;
rev = version;
sha256 = "1xvr89r6287788bx5qbw9sr8jvmajps0rpc7fvh9bfzb6zw2rq6w";
sha256 = "sha256-x6sVFjM2GMGqpoAW7CtCLUoEAYLgulaUKXequQ7DmGQ=";
};
nativeBuildInputs = [ pkg-config ];

View File

@ -2,7 +2,6 @@
, stdenv
, rustPlatform
, fetchCrate
, pinentry
, openssl
, pkg-config
, makeWrapper
@ -40,10 +39,7 @@ rustPlatform.buildRustPackage rec {
buildInputs = lib.optionals stdenv.isDarwin [ Security libiconv ];
postPatch = ''
substituteInPlace src/pinentry.rs \
--replace 'Command::new("pinentry")' 'Command::new("${pinentry}/${pinentry.binaryPath or "bin/pinentry"}")'
'' + lib.optionalString withFzf ''
postPatch = lib.optionalString withFzf ''
patchShebangs bin/rbw-fzf
substituteInPlace bin/rbw-fzf \
--replace fzf ${fzf}/bin/fzf \

View File

@ -482,6 +482,8 @@ in
fetchFromSavannah = callPackage ../build-support/fetchsavannah {};
fetchFromSourcehut = callPackage ../build-support/fetchsourcehut { };
fetchFromGitLab = callPackage ../build-support/fetchgitlab {};
fetchFromGitiles = callPackage ../build-support/fetchgitiles {};

View File

@ -1001,6 +1001,10 @@ let
ppx_cstruct = callPackage ../development/ocaml-modules/cstruct/ppx.nix { };
ppx_cstubs = callPackage ../development/ocaml-modules/ppx_cstubs {
ppxlib = ppxlib.override { version = "0.22.0"; };
};
ppx_derivers = callPackage ../development/ocaml-modules/ppx_derivers {};
ppx_deriving = callPackage ../development/ocaml-modules/ppx_deriving {};

View File

@ -1464,7 +1464,10 @@ in {
constantly = callPackage ../development/python-modules/constantly { };
construct = callPackage ../development/python-modules/construct { };
construct = if isPy27 then
callPackage ../development/python-modules/construct/2.10.54.nix { }
else
callPackage ../development/python-modules/construct { };
consul = callPackage ../development/python-modules/consul { };
@ -1474,7 +1477,10 @@ in {
contextvars = callPackage ../development/python-modules/contextvars { };
convertdate = callPackage ../development/python-modules/convertdate { };
convertdate = if isPy27 then
callPackage ../development/python-modules/convertdate/2.2.x.nix { }
else
callPackage ../development/python-modules/convertdate { };
cookiecutter = callPackage ../development/python-modules/cookiecutter { };
@ -1668,7 +1674,10 @@ in {
inherit (pkgs.llvmPackages) libcxx;
};
dateparser = callPackage ../development/python-modules/dateparser { };
dateparser = if isPy27 then
callPackage ../development/python-modules/dateparser/0.x.nix { }
else
callPackage ../development/python-modules/dateparser { };
datrie = callPackage ../development/python-modules/datrie { };
@ -8367,7 +8376,10 @@ in {
varint = callPackage ../development/python-modules/varint { };
vcrpy = callPackage ../development/python-modules/vcrpy { };
vcrpy = if isPy27 then
callPackage ../development/python-modules/vcrpy/3.nix { }
else
callPackage ../development/python-modules/vcrpy { };
vcver = callPackage ../development/python-modules/vcver { };