Merge master into haskell-updates

This commit is contained in:
github-actions[bot] 2021-11-13 00:07:15 +00:00 committed by GitHub
commit c6ab946042
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
156 changed files with 2830 additions and 1813 deletions

View file

@ -3660,6 +3660,10 @@
github = "expipiplus1"; github = "expipiplus1";
githubId = 857308; githubId = 857308;
name = "Ellie Hermaszewska"; name = "Ellie Hermaszewska";
keys = [{
longkeyid = "rsa4096/0xC8116E3A0C1CA76A";
fingerprint = "FC1D 3E4F CBCA 80DF E870 6397 C811 6E3A 0C1C A76A";
}];
}; };
extends = { extends = {
email = "sharosari@gmail.com"; email = "sharosari@gmail.com";

View file

@ -479,6 +479,16 @@
RandomX benchmark. RandomX benchmark.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Auto nice daemons
<link xlink:href="https://github.com/Nefelim4ag/Ananicy">ananicy</link>
and
<link xlink:href="https://gitlab.com/ananicy-cpp/ananicy-cpp/">ananicy-cpp</link>.
Available as
<link linkend="opt-services.ananicy.enable">services.ananicy</link>.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</section> </section>
<section xml:id="sec-release-21.11-incompatibilities"> <section xml:id="sec-release-21.11-incompatibilities">

View file

@ -139,6 +139,8 @@ In addition to numerous new and upgraded packages, this release has the followin
- [xmrig](https://github.com/xmrig/xmrig), a high performance, open source, cross platform RandomX, KawPow, CryptoNight and AstroBWT unified CPU/GPU miner and RandomX benchmark. - [xmrig](https://github.com/xmrig/xmrig), a high performance, open source, cross platform RandomX, KawPow, CryptoNight and AstroBWT unified CPU/GPU miner and RandomX benchmark.
- Auto nice daemons [ananicy](https://github.com/Nefelim4ag/Ananicy) and [ananicy-cpp](https://gitlab.com/ananicy-cpp/ananicy-cpp/). Available as [services.ananicy](#opt-services.ananicy.enable).
## Backward Incompatibilities {#sec-release-21.11-incompatibilities} ## Backward Incompatibilities {#sec-release-21.11-incompatibilities}
- The NixOS VM test framework, `pkgs.nixosTest`/`make-test-python.nix`, now requires detaching commands such as `succeed("foo &")` and `succeed("foo | xclip -i")` to close stdout. - The NixOS VM test framework, `pkgs.nixosTest`/`make-test-python.nix`, now requires detaching commands such as `succeed("foo &")` and `succeed("foo | xclip -i")` to close stdout.

View file

@ -485,6 +485,7 @@
./services/mail/roundcube.nix ./services/mail/roundcube.nix
./services/mail/sympa.nix ./services/mail/sympa.nix
./services/mail/nullmailer.nix ./services/mail/nullmailer.nix
./services/misc/ananicy.nix
./services/misc/airsonic.nix ./services/misc/airsonic.nix
./services/misc/ankisyncd.nix ./services/misc/ankisyncd.nix
./services/misc/apache-kafka.nix ./services/misc/apache-kafka.nix

View file

@ -294,7 +294,7 @@ in
}; };
submissionOptions = mkOption { submissionOptions = mkOption {
type = types.attrs; type = with types; attrsOf str;
default = { default = {
smtpd_tls_security_level = "encrypt"; smtpd_tls_security_level = "encrypt";
smtpd_sasl_auth_enable = "yes"; smtpd_sasl_auth_enable = "yes";
@ -312,7 +312,7 @@ in
}; };
submissionsOptions = mkOption { submissionsOptions = mkOption {
type = types.attrs; type = with types; attrsOf str;
default = { default = {
smtpd_sasl_auth_enable = "yes"; smtpd_sasl_auth_enable = "yes";
smtpd_client_restrictions = "permit_sasl_authenticated,reject"; smtpd_client_restrictions = "permit_sasl_authenticated,reject";

View file

@ -0,0 +1,107 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.ananicy;
configFile = pkgs.writeText "ananicy.conf" (generators.toKeyValue { } cfg.settings);
extraRules = pkgs.writeText "extraRules" cfg.extraRules;
servicename = if ((lib.getName cfg.package) == (lib.getName pkgs.ananicy-cpp)) then "ananicy-cpp" else "ananicy";
in
{
options = {
services.ananicy = {
enable = mkEnableOption "Ananicy, an auto nice daemon";
package = mkOption {
type = types.package;
default = pkgs.ananicy;
defaultText = literalExpression "pkgs.ananicy";
example = literalExpression "pkgs.ananicy-cpp";
description = ''
Which ananicy package to use.
'';
};
settings = mkOption {
type = with types; attrsOf (oneOf [ int bool str ]);
default = { };
example = {
apply_nice = false;
};
description = ''
See <link xlink:href="https://github.com/Nefelim4ag/Ananicy/blob/master/ananicy.d/ananicy.conf"/>
'';
};
extraRules = mkOption {
type = types.str;
default = "";
description = ''
Extra rules in json format on separate lines. See:
<link xlink:href="https://github.com/Nefelim4ag/Ananicy#configuration"/>
<link xlink:href="https://gitlab.com/ananicy-cpp/ananicy-cpp/#global-configuration"/>
'';
example = literalExpression ''
'''
{ "name": "eog", "type": "Image-View" }
{ "name": "fdupes", "type": "BG_CPUIO" }
'''
'';
};
};
};
config = mkIf cfg.enable {
environment = {
systemPackages = [ cfg.package ];
etc."ananicy.d".source = pkgs.runCommandLocal "ananicyfiles" { } ''
mkdir -p $out
# ananicy-cpp does not include rules or settings on purpose
cp -r ${pkgs.ananicy}/etc/ananicy.d/* $out
rm $out/ananicy.conf
cp ${configFile} $out/ananicy.conf
${optionalString (cfg.extraRules != "") "cp ${extraRules} $out/nixRules.rules"}
'';
};
# ananicy and ananicy-cpp have different default settings
services.ananicy.settings =
let
mkOD = mkOptionDefault;
in
{
cgroup_load = mkOD true;
type_load = mkOD true;
rule_load = mkOD true;
apply_nice = mkOD true;
apply_ioclass = mkOD true;
apply_ionice = mkOD true;
apply_sched = mkOD true;
apply_oom_score_adj = mkOD true;
apply_cgroup = mkOD true;
} // (if ((lib.getName cfg.package) == (lib.getName pkgs.ananicy-cpp)) then {
# https://gitlab.com/ananicy-cpp/ananicy-cpp/-/blob/master/src/config.cpp#L12
loglevel = mkOD "warn"; # default is info but its spammy
cgroup_realtime_workaround = mkOD true;
} else {
# https://github.com/Nefelim4ag/Ananicy/blob/master/ananicy.d/ananicy.conf
check_disks_schedulers = mkOD true;
check_freq = mkOD 5;
});
systemd = {
# https://gitlab.com/ananicy-cpp/ananicy-cpp/#cgroups applies to both ananicy and -cpp
enableUnifiedCgroupHierarchy = mkDefault false;
packages = [ cfg.package ];
services."${servicename}" = {
wantedBy = [ "default.target" ];
};
};
};
meta = {
maintainers = with maintainers; [ artturin ];
};
}

View file

@ -71,6 +71,14 @@ in {
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
assertions = let
inRange = v: l: r: v >= l && v <= r;
in [
{ assertion = config.location.provider == "manual" ->
inRange config.location.latitude (-90) 90 && inRange config.location.longitude (-180) 180;
message = "You must specify a valid latitude and longitude if manually providing location"; }
];
boot.kernelModules = [ "i2c_dev" ]; boot.kernelModules = [ "i2c_dev" ];
environment.systemPackages = with pkgs; [ clight clightd ]; environment.systemPackages = with pkgs; [ clight clightd ];
services.dbus.packages = with pkgs; [ clight clightd ]; services.dbus.packages = with pkgs; [ clight clightd ];

View file

@ -146,7 +146,7 @@ in
}; };
background = mkOption { background = mkOption {
type = types.path; type = types.either types.path (types.strMatching "^#[0-9]\{6\}$");
# Manual cannot depend on packages, we are actually setting the default in config below. # Manual cannot depend on packages, we are actually setting the default in config below.
defaultText = literalExpression "pkgs.nixos-artwork.wallpapers.simple-dark-gray-bottom.gnomeFilePath"; defaultText = literalExpression "pkgs.nixos-artwork.wallpapers.simple-dark-gray-bottom.gnomeFilePath";
description = '' description = ''

View file

@ -403,6 +403,7 @@ in
samba-wsdd = handleTest ./samba-wsdd.nix {}; samba-wsdd = handleTest ./samba-wsdd.nix {};
sanoid = handleTest ./sanoid.nix {}; sanoid = handleTest ./sanoid.nix {};
sddm = handleTest ./sddm.nix {}; sddm = handleTest ./sddm.nix {};
seafile = handleTest ./seafile.nix {};
searx = handleTest ./searx.nix {}; searx = handleTest ./searx.nix {};
service-runner = handleTest ./service-runner.nix {}; service-runner = handleTest ./service-runner.nix {};
shadow = handleTest ./shadow.nix {}; shadow = handleTest ./shadow.nix {};

View file

@ -1,7 +1,10 @@
{ stdenv, lib, fetchFromGitHub, cmake, pkg-config { stdenv, lib, fetchFromGitHub, cmake, pkg-config
, alsa-lib, asio, avahi, boost17x, flac, libogg, libvorbis, soxr , alsa-lib, asio, avahi, boost17x, flac, libogg, libvorbis, soxr
, pulseaudioSupport ? false, libpulseaudio
, nixosTests }: , nixosTests }:
assert pulseaudioSupport -> libpulseaudio != null;
let let
dependency = { name, version, sha256 }: dependency = { name, version, sha256 }:
@ -50,7 +53,7 @@ stdenv.mkDerivation rec {
boost17x boost17x
alsa-lib asio avahi flac libogg libvorbis alsa-lib asio avahi flac libogg libvorbis
aixlog popl soxr aixlog popl soxr
]; ] ++ lib.optional pulseaudioSupport libpulseaudio;
# Upstream systemd unit files are pretty awful, so we provide our own in a # Upstream systemd unit files are pretty awful, so we provide our own in a
# NixOS module. It might make sense to get that upstreamed... # NixOS module. It might make sense to get that upstreamed...

View file

@ -5,6 +5,7 @@
, pkg-config , pkg-config
, util-linux , util-linux
, hexdump , hexdump
, autoSignDarwinBinariesHook
, wrapQtAppsHook ? null , wrapQtAppsHook ? null
, boost , boost
, libevent , libevent
@ -47,6 +48,7 @@ stdenv.mkDerivation rec {
[ autoreconfHook pkg-config ] [ autoreconfHook pkg-config ]
++ optionals stdenv.isLinux [ util-linux ] ++ optionals stdenv.isLinux [ util-linux ]
++ optionals stdenv.isDarwin [ hexdump ] ++ optionals stdenv.isDarwin [ hexdump ]
++ optionals (stdenv.isDarwin && stdenv.isAarch64) [ autoSignDarwinBinariesHook ]
++ optionals withGui [ wrapQtAppsHook ]; ++ optionals withGui [ wrapQtAppsHook ];
buildInputs = [ boost libevent miniupnpc zeromq zlib ] buildInputs = [ boost libevent miniupnpc zeromq zlib ]

View file

@ -14,17 +14,17 @@ let
archive_fmt = if stdenv.isDarwin then "zip" else "tar.gz"; archive_fmt = if stdenv.isDarwin then "zip" else "tar.gz";
sha256 = { sha256 = {
x86_64-linux = "10p815dv86775ky90m96l11026xkhjwvrrhvviqw6g6hsayjqhia"; x86_64-linux = "0dwpczbxqy3rsqprdiakmqv6s3jzcg2wqxnf1znarx2qffb4ii9x";
x86_64-darwin = "1b8d7iw9v172viczdbcdxhf51dyshmx2665prv2pm0ygsy8yii3p"; x86_64-darwin = "0si76v80r0vhl76gbdwbykk6acifhifz8sb8wiyiiywkinlxs19w";
aarch64-linux = "155sbsmnapnzhkzkaggm80bkarh4l7dbqyhgy40mmdgqpyp3gx1v"; aarch64-linux = "0nwgdvvsblh2r72ys2ng5b084wizkdjd00mm73506mgbs8pzcky4";
aarch64-darwin = "1pnqjih37r4xqfjfrf8mhsbvmn62358rmf50rackqh5as50siwa2"; aarch64-darwin = "0qivq4077g5a4gwkskvvzxaa60w1gpgl67pmdyqn81rina04rdqs";
armv7l-linux = "00k2fmivbsp8fyh9cy6vr6sq031f6marz4sbj1nrlzdl40wd30bi"; armv7l-linux = "0myf96s1vdpllnw0vz0rpmyv2pfirv3p8pqgxxnpw860s2c26f2f";
}.${system}; }.${system};
in in
callPackage ./generic.nix rec { callPackage ./generic.nix rec {
# Please backport all compatible updates to the stable release. # Please backport all compatible updates to the stable release.
# This is important for the extension ecosystem. # This is important for the extension ecosystem.
version = "1.62.1"; version = "1.62.2";
pname = "vscode"; pname = "vscode";
executableName = "code" + lib.optionalString isInsiders "-insiders"; executableName = "code" + lib.optionalString isInsiders "-insiders";

View file

@ -13,10 +13,10 @@ let
archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz"; archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
sha256 = { sha256 = {
x86_64-linux = "1xblrp4xyw2pcifmzjmlbnmk7lhmlj002sfk28kyf1k5wdp54yv9"; x86_64-linux = "19r4883qa73b23xw0fz21bnp9vcvsbn1q77n6pcm1achwpxscrg6";
x86_64-darwin = "0ivvdxc4hmv9sh8ap0qy8yciz9pjkm1p1j60dh57y4ll6fdzbbrd"; x86_64-darwin = "0gv4208vcr75wyp6vji1cg6644f5yfwgkgkiav37218v1wjzb4r0";
aarch64-linux = "0ssm27i12d7gkq31d1zma4zx5n5mgg0a8pj3sdk9jjjsa68b3pyr"; aarch64-linux = "00jzjapyj96bqqq6pz4mdlihwa5g1izkqcp4lqml7hqvmcqrjyrs";
armv7l-linux = "029shxcwnap28ys6lxml3yiiavw4lhnizf35f0a664vdzy1x5dpv"; armv7l-linux = "0daji52lfbgz0by11idai55ip0m859s35vbyvgv655s21aakrs50";
}.${system}; }.${system};
sourceRoot = { sourceRoot = {
@ -31,7 +31,7 @@ in
# Please backport all compatible updates to the stable release. # Please backport all compatible updates to the stable release.
# This is important for the extension ecosystem. # This is important for the extension ecosystem.
version = "1.62.1"; version = "1.62.2";
pname = "vscodium"; pname = "vscodium";
executableName = "codium"; executableName = "codium";

View file

@ -1,5 +1,5 @@
{ mkDerivation, lib, fetchFromGitHub, cmake { mkDerivation, lib, fetchFromGitHub, cmake, substituteAll
, qtscript, qtwebengine, gdal, proj, routino, quazip }: , qtscript, qttranslations, qtwebengine, gdal, proj, routino, quazip }:
mkDerivation rec { mkDerivation rec {
pname = "qmapshack"; pname = "qmapshack";
@ -12,6 +12,14 @@ mkDerivation rec {
sha256 = "1yzgkdjxwyg8ggbxyjwr0zjrx99ckrbz2p2524iii9i7qqn8wfsx"; sha256 = "1yzgkdjxwyg8ggbxyjwr0zjrx99ckrbz2p2524iii9i7qqn8wfsx";
}; };
patches = [
# See https://github.com/NixOS/nixpkgs/issues/86054
(substituteAll {
src = ./fix-qttranslations-path.patch;
inherit qttranslations;
})
];
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];
buildInputs = [ qtscript qtwebengine gdal proj routino quazip ]; buildInputs = [ qtscript qtwebengine gdal proj routino quazip ];

View file

@ -0,0 +1,74 @@
diff --git i/src/qmapshack/setup/CAppSetupLinux.cpp w/src/qmapshack/setup/CAppSetupLinux.cpp
index 63ea06c0..3a03b816 100644
--- i/src/qmapshack/setup/CAppSetupLinux.cpp
+++ w/src/qmapshack/setup/CAppSetupLinux.cpp
@@ -30,7 +30,7 @@ void CAppSetupLinux::initQMapShack()
prepareGdal("", "");
// setup translators
- QString resourceDir = QLibraryInfo::location(QLibraryInfo::TranslationsPath);
+ QLatin1String resourceDir = QLatin1String("@qttranslations@/translations");
QString translationPath = QCoreApplication::applicationDirPath();
translationPath.replace(QRegExp("bin$"), "share/qmapshack/translations");
prepareTranslator(resourceDir, "qt_");
diff --git i/src/qmapshack/setup/CAppSetupMac.cpp w/src/qmapshack/setup/CAppSetupMac.cpp
index ad9b21e9..9dca8a1e 100644
--- i/src/qmapshack/setup/CAppSetupMac.cpp
+++ w/src/qmapshack/setup/CAppSetupMac.cpp
@@ -63,7 +63,7 @@ void CAppSetupMac::initQMapShack()
// setup translators
QString translationPath = getApplicationDir(relTranslationDir).absolutePath();
- prepareTranslator(translationPath, "qt_");
+ prepareTranslator(QLatin1String("@qttranslations@/translations"), "qt_");
prepareTranslator(translationPath, "qmapshack_");
// load and apply style sheet
diff --git i/src/qmaptool/setup/CAppSetupLinux.cpp w/src/qmaptool/setup/CAppSetupLinux.cpp
index dea1c4f3..8da95574 100644
--- i/src/qmaptool/setup/CAppSetupLinux.cpp
+++ w/src/qmaptool/setup/CAppSetupLinux.cpp
@@ -29,7 +29,7 @@ void CAppSetupLinux::initQMapTool()
prepareGdal("", "");
// setup translators
- QString resourceDir = QLibraryInfo::location(QLibraryInfo::TranslationsPath);
+ QLatin1String resourceDir = QLatin1String("@qttranslations@/translations");
QString translationPath = QCoreApplication::applicationDirPath();
translationPath.replace(QRegExp("bin$"), "share/qmaptool/translations");
prepareTranslator(resourceDir, "qt_");
diff --git i/src/qmaptool/setup/CAppSetupMac.cpp w/src/qmaptool/setup/CAppSetupMac.cpp
index 02b27e07..fae27748 100644
--- i/src/qmaptool/setup/CAppSetupMac.cpp
+++ w/src/qmaptool/setup/CAppSetupMac.cpp
@@ -64,7 +64,7 @@ void CAppSetupMac::initQMapTool()
// setup translators
QString translationPath = getApplicationDir(relTranslationDir).absolutePath();
- prepareTranslator(translationPath, "qt_");
+ prepareTranslator(QLatin1String("@qttranslations@/translations"), "qt_");
prepareTranslator(translationPath, "qmaptool_");
migrateDirContent(defaultCachePath());
diff --git i/src/qmt_rgb2pct/main.cpp w/src/qmt_rgb2pct/main.cpp
index 21267d03..d539cec8 100644
--- i/src/qmt_rgb2pct/main.cpp
+++ w/src/qmt_rgb2pct/main.cpp
@@ -50,7 +50,7 @@ static void prepareTranslator(QString translationPath, QString translationPrefix
static void loadTranslations()
{
#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD) || defined(__FreeBSD_kernel__) || defined(__GNU__) || defined(Q_OS_CYGWIN)
- QString resourceDir = QLibraryInfo::location(QLibraryInfo::TranslationsPath);
+ QLatin1String resourceDir = QLatin1String("@qttranslations@/translations");
QString translationPath = QCoreApplication::applicationDirPath();
translationPath.replace(QRegExp("bin$"), "share/" APP_STR "/translations");
prepareTranslator(resourceDir, "qt_");
@@ -61,7 +61,7 @@ static void loadTranslations()
// os x
static QString relTranslationDir = "Resources/translations"; // app
QString translationPath = getApplicationDir(relTranslationDir).absolutePath();
- prepareTranslator(translationPath, "qt_");
+ prepareTranslator(QLatin1String("@qttranslations@/translations"), "qt_");
prepareTranslator(translationPath, APP_STR "_");
#endif

View file

@ -27,21 +27,20 @@
mkDerivation rec { mkDerivation rec {
pname = "calibre"; pname = "calibre";
version = "5.30.0"; version = "5.31.1";
src = fetchurl { src = fetchurl {
url = "https://download.calibre-ebook.com/${version}/${pname}-${version}.tar.xz"; url = "https://download.calibre-ebook.com/${version}/${pname}-${version}.tar.xz";
sha256 = "058dqqxhc3pl4is1idlnc3pz80k4r681d5aj4a26v9acp8j7zy4f"; sha256 = "sha256-3LGEWuHms54ji9GWSyLl8cFWIRBqHY1Jf/CNPJOywrU=";
}; };
# https://sources.debian.org/patches/calibre/5.30.0+dfsg-1 # https://sources.debian.org/patches/calibre/5.31.1+dfsg-1
patches = [ patches = [
# allow for plugin update check, but no calibre version check # allow for plugin update check, but no calibre version check
(fetchpatch { (fetchpatch {
name = "0001_only_plugin_update.patch"; name = "0001-only-plugin-update.patch";
url = url = "https://raw.githubusercontent.com/debian-calibre/calibre/debian/${version}%2Bdfsg-1/debian/patches/0001-only-plugin-update.patch";
"https://sources.debian.org/data/main/c/calibre/${version}%2Bdfsg-1/debian/patches/0001-only-plugin-update.patch"; sha256 = "sha256-dLzO1TWP7Q4nw2a3oN7qlhGCmcA0NKJrZidUnD6hUMA=";
sha256 = "sha256-aGT8rJ/eQKAkmyHBWdY0ouZuWvDwtLVJU5xY6d3hY3k=";
}) })
] ]
++ lib.optional (!unrarSupport) ./dont_build_unrar_plugin.patch; ++ lib.optional (!unrarSupport) ./dont_build_unrar_plugin.patch;

View file

@ -19,9 +19,8 @@ python3.pkgs.buildPythonApplication rec {
# /etc/ in check phase. # /etc/ in check phase.
postPatch = '' postPatch = ''
substituteInPlace Makefile \ substituteInPlace Makefile \
--replace \ --replace "dbus-run-session" "dbus-run-session --config-file=${dbus}/share/dbus-1/session.conf" \
"dbus-run-session" \ --replace '-p $(relpassstore)' '-p $(PASSWORD_STORE_DIR)'
"dbus-run-session --config-file=${dbus}/share/dbus-1/session.conf"
''; '';
propagatedBuildInputs = with python3.pkgs; [ propagatedBuildInputs = with python3.pkgs; [

View file

@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
postPatch = lib.optionalString (conf!=null) "cp ${configFile} config.def.h"; postPatch = lib.optionalString (conf!=null) "cp ${configFile} config.def.h";
makeFlags = [ "CC:=$(CC)" ];
installFlags = [ "PREFIX=$(out)" ]; installFlags = [ "PREFIX=$(out)" ];
meta = with lib; { meta = with lib; {

View file

@ -18,9 +18,9 @@
} }
}, },
"beta": { "beta": {
"version": "96.0.4664.35", "version": "96.0.4664.45",
"sha256": "047zc1hl5iwhrgnypl7r5ga2cx1yz26lf1x5cnvdqmarmmkq380m", "sha256": "01q4fsf2cbx6g9nnaihvc5jj3ap8jq2gf16pnhf7ixzbhgcnm328",
"sha256bin64": "1cw89fafxxhr85x4vzhxv3jkmqfnxjisc7gj9v8y2ixqpn190hjl", "sha256bin64": "1vaazcrlx0999xd9yp25i9kzb8y8g0yqd28xssw7jqwrhz033wgr",
"deps": { "deps": {
"gn": { "gn": {
"version": "2021-09-24", "version": "2021-09-24",

View file

@ -1,24 +1,24 @@
{ stdenv, lib, fetchFromSourcehut, pkg-config, bearssl, scdoc }: { stdenv, lib, fetchFromSourcehut, bearssl, scdoc }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gmni"; pname = "gmni";
version = "unstable-2021-03-26"; version = "1.0";
src = fetchFromSourcehut { src = fetchFromSourcehut {
owner = "~sircmpwn"; owner = "~sircmpwn";
repo = "gmni"; repo = "gmni";
rev = "77b73efbcd3ea7ed9e3e4c0aa19d9247e21d3c87"; rev = version;
sha256 = "1wvnzyv7vyddcd39y6q5aflpnnsdl4k4y5aj5ssb7vgkld0h1b7r"; sha256 = "sha256-3MFNAI/SfFigNfitfFs3o9kkz7JeEflMHiH7iJpLfi4=";
}; };
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [ scdoc ];
buildInputs = [ bearssl scdoc ]; buildInputs = [ bearssl ];
meta = with lib; { meta = with lib; {
description = "A Gemini client"; description = "A Gemini client";
homepage = "https://git.sr.ht/~sircmpwn/gmni"; homepage = "https://git.sr.ht/~sircmpwn/gmni";
license = licenses.gpl3Only; license = licenses.gpl3Only;
maintainers = with maintainers; [ bsima jb55 ]; maintainers = with maintainers; [ bsima jb55 ];
platforms = platforms.all; platforms = platforms.linux;
}; };
} }

View file

@ -69,6 +69,6 @@ buildGoModule rec {
downloadPage = "https://github.com/argoproj/argo-cd"; downloadPage = "https://github.com/argoproj/argo-cd";
homepage = "https://argo-cd.readthedocs.io/en/stable/"; homepage = "https://argo-cd.readthedocs.io/en/stable/";
license = licenses.asl20; license = licenses.asl20;
maintainers = with maintainers; [ shahrukh330 ]; maintainers = with maintainers; [ shahrukh330 bryanasdev000 ];
}; };
} }

View file

@ -1,4 +1,4 @@
{ stdenv, lib, fetchFromGitHub, jq, nix, ... }: { stdenv, lib, fetchFromGitHub, jq, nix, makeWrapper }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "terranix"; pname = "terranix";
@ -11,29 +11,21 @@ stdenv.mkDerivation rec {
sha256 = "sha256-HDiyJGgyDUoLnpL8N+wDm3cM/vEfYYc/p4N1kKH/kLk="; sha256 = "sha256-HDiyJGgyDUoLnpL8N+wDm3cM/vEfYYc/p4N1kKH/kLk=";
}; };
nativeBuildInputs = [ makeWrapper ];
installPhase = '' installPhase = ''
mkdir -p $out/{bin,core,modules,lib} mkdir -p $out/{bin,core,modules,lib}
mv bin core modules lib $out/ mv bin core modules lib $out/
mv $out/bin/terranix-doc-json $out/bin/.wrapper_terranix-doc-json wrapProgram $out/bin/terranix-doc-json \
--prefix PATH : ${lib.makeBinPath [ jq nix ]}
# manual wrapper because makeWrapper expectes executables
wrapper=$out/bin/terranix-doc-json
cat <<EOF>$wrapper
#!/usr/bin/env bash
export PATH=$PATH:${jq}/bin:${nix}/bin
$out/bin/.wrapper_terranix-doc-json "\$@"
EOF
chmod +x $wrapper
''; '';
meta = with lib; { meta = with lib; {
description = "A NixOS like terraform-json generator"; description = "A NixOS like terraform-json generator";
homepage = "https://terranix.org"; homepage = "https://terranix.org";
license = licenses.gpl3; license = licenses.gpl3;
platforms = platforms.linux ++ platforms.darwin; platforms = platforms.unix;
maintainers = with maintainers; [ mrVanDalo ]; maintainers = with maintainers; [ mrVanDalo ];
}; };
} }

View file

@ -5,13 +5,13 @@ buildGoModule rec {
/* Do not use "dev" as a version. If you do, Tilt will consider itself /* Do not use "dev" as a version. If you do, Tilt will consider itself
running in development environment and try to serve assets from the running in development environment and try to serve assets from the
source tree, which is not there once build completes. */ source tree, which is not there once build completes. */
version = "0.22.9"; version = "0.22.15";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tilt-dev"; owner = "tilt-dev";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-h19Cj4ztgypT/j1gB+PbvgDJ7jlJ3CYPEbK62tJeMss="; sha256 = "sha256-Aim80bg1vGRkiIlVqDa4qOFQ+mwSOL75HOPYQYovYlE=";
}; };
vendorSha256 = null; vendorSha256 = null;

View file

@ -17,10 +17,10 @@ in
mkFranzDerivation' rec { mkFranzDerivation' rec {
pname = "ferdi"; pname = "ferdi";
name = "Ferdi"; name = "Ferdi";
version = "5.6.2"; version = "5.6.3";
src = fetchurl { src = fetchurl {
url = "https://github.com/getferdi/ferdi/releases/download/v${version}/ferdi_${version}_amd64.deb"; url = "https://github.com/getferdi/ferdi/releases/download/v${version}/ferdi_${version}_amd64.deb";
sha256 = "sha256-8rB7SnaIaeCXAaKELNO1CnxpV8TyeKRCVamwpATeia4="; sha256 = "sha256-cfX3x0ZRxT6sxMm20uL8lKhMbrI/yiCHVrBTPKIlDSE=";
}; };
extraBuildInputs = [ xorg.libxshmfence ]; extraBuildInputs = [ xorg.libxshmfence ];
meta = with lib; { meta = with lib; {

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, makeWrapper, pkg-config, gtk2, gtk2-x11, gtkspell2, aspell { callPackage, stdenv, fetchurl, makeWrapper, pkg-config, gtk2, gtk2-x11, gtkspell2, aspell
, gst_all_1, libstartup_notification, gettext, perlPackages, libxml2, nss , gst_all_1, libstartup_notification, gettext, perlPackages, libxml2, nss
, nspr, farstream, libXScrnSaver, avahi, dbus, dbus-glib, intltool, libidn , nspr, farstream, libXScrnSaver, avahi, dbus, dbus-glib, intltool, libidn
, lib, python3, libICE, libXext, libSM, libgnt, ncurses, cyrus_sasl, openssl , lib, python3, libICE, libXext, libSM, libgnt, ncurses, cyrus_sasl, openssl
@ -93,7 +93,7 @@ let unwrapped = stdenv.mkDerivation rec {
}; };
in if plugins == [] then unwrapped in if plugins == [] then unwrapped
else import ./wrapper.nix { else callPackage ./wrapper.nix {
inherit makeWrapper symlinkJoin plugins; inherit plugins;
pidgin = unwrapped; pidgin = unwrapped;
} }

View file

@ -1,4 +1,4 @@
{ symlinkJoin, pidgin, makeWrapper, plugins }: { lib, symlinkJoin, pidgin, makeWrapper, plugins }:
let let
extraArgs = map (x: x.wrapArgs or "") plugins; extraArgs = map (x: x.wrapArgs or "") plugins;
@ -11,10 +11,10 @@ in symlinkJoin {
postBuild = '' postBuild = ''
wrapProgram $out/bin/pidgin \ wrapProgram $out/bin/pidgin \
--suffix-each PURPLE_PLUGIN_PATH ':' "$out/lib/purple-${pidgin.majorVersion} $out/lib/pidgin" \ --suffix-each PURPLE_PLUGIN_PATH ':' "$out/lib/purple-${lib.versions.major pidgin.version} $out/lib/pidgin" \
${toString extraArgs} ${toString extraArgs}
wrapProgram $out/bin/finch \ wrapProgram $out/bin/finch \
--suffix-each PURPLE_PLUGIN_PATH ':' "$out/lib/purple-${pidgin.majorVersion}" \ --suffix-each PURPLE_PLUGIN_PATH ':' "$out/lib/purple-${lib.versions.major pidgin.version}" \
${toString extraArgs} ${toString extraArgs}
''; '';
} }

View file

@ -1,25 +1,26 @@
{ fetchFromGitHub { fetchFromGitHub
, lib , lib
, stdenv , stdenv
, gtkmm3
, webkitgtk
, cmake , cmake
, pkg-config , glib-networking
, libappindicator-gtk3
, gst_all_1 , gst_all_1
, gtkmm3
, libappindicator-gtk3
, pcre , pcre
, pkg-config
, webkitgtk
, wrapGAppsHook , wrapGAppsHook
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "whatsapp-for-linux"; pname = "whatsapp-for-linux";
version = "1.2.1"; version = "1.3.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "eneshecan"; owner = "eneshecan";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-dEJRufOqlY+DnJdUaG5WP9hR1qO7KxR6MjKWq1SJB8A="; sha256 = "sha256-VdkCjzmZqP/ZVY1H9FxBGe5rN0nZEPZbMp3MVKL6WLc=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -29,14 +30,15 @@ stdenv.mkDerivation rec {
]; ];
buildInputs = [ buildInputs = [
gtkmm3 glib-networking
webkitgtk gst_all_1.gst-libav
libappindicator-gtk3 gst_all_1.gst-plugins-bad
gst_all_1.gst-plugins-base gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good gst_all_1.gst-plugins-good
gst_all_1.gst-plugins-bad gtkmm3
gst_all_1.gst-libav libappindicator-gtk3
pcre pcre
webkitgtk
]; ];
meta = with lib; { meta = with lib; {

View file

@ -11,13 +11,13 @@ assert (!blas.isILP64) && (!lapack.isILP64);
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "octopus"; pname = "octopus";
version = "10.5"; version = "11.2";
src = fetchFromGitLab { src = fetchFromGitLab {
owner = "octopus-code"; owner = "octopus-code";
repo = "octopus"; repo = "octopus";
rev = version; rev = version;
sha256 = "1bgdkmsp6pwq3b6nxxkimrdmz71wqr8qi25gdzwpcv9wmcf1q27v"; sha256 = "sha256-leEcUSjpiP13l65K9WKN2GXTtTa8vvK/MFxR2zH6Xno=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -5,9 +5,9 @@
} : } :
let let
version = "21.06"; version = "21.10";
# The tag keeps moving, fix a hash instead # The tag keeps moving, fix a hash instead
gitLabRev = "dd982ad4bc94dec8ac1e3e99cb6a7dd249ff71de"; gitLabRev = "117305462bac932106e8e3a0347238b768bcb058";
python = python3.withPackages (ps : with ps; [ six pyparsing ]); python = python3.withPackages (ps : with ps; [ six pyparsing ]);
@ -19,7 +19,7 @@ in stdenv.mkDerivation {
owner = "Molcas"; owner = "Molcas";
repo = "OpenMolcas"; repo = "OpenMolcas";
rev = gitLabRev; rev = gitLabRev;
sha256 = "07dm73n0s7ckif561yb3s9yqxsv39a73kb9qwny4yp39wdvv52hz"; sha256 = "sha256-GMi2dsNBog+TmpmP6fhQcp6Z5Bh2LelV//MqLnvRP5c=";
}; };
patches = [ patches = [
@ -56,7 +56,9 @@ in stdenv.mkDerivation {
"-DOPENBLASROOT=${openblas.dev}" "-DOPENBLASROOT=${openblas.dev}"
]; ];
GAROOT=globalarrays; preConfigure = ''
export GAROOT=${globalarrays};
'';
postConfigure = '' postConfigure = ''
# The Makefile will install pymolcas during the build grrr. # The Makefile will install pymolcas during the build grrr.

View file

@ -1,22 +1,35 @@
{ lib { lib
, python3Packages , fetchFromGitHub
, git
, nodejs
, python3
}: }:
python3Packages.buildPythonApplication rec { python3.pkgs.buildPythonApplication rec {
pname = "cwltool"; pname = "cwltool";
version = "3.1.20210628163208"; version = "3.1.20211104071347";
format = "setuptools";
src = python3Packages.fetchPypi { disabled = python3.pythonOlder "3.6";
inherit pname version;
sha256 = "21b885f725420413d2f87eadc5e81c08a9c91beceda89b35d1a702ec4df47e52"; src = fetchFromGitHub {
owner = "common-workflow-language";
repo = pname;
rev = version;
sha256 = "sha256-tp4SdilW2PKav7b3/BchXYl33W9U0aQH6FPdOhHSvIQ=";
}; };
postPatch = '' postPatch = ''
substituteInPlace setup.py \ substituteInPlace setup.py \
--replace 'prov == 1.5.1' 'prov' --replace 'prov == 1.5.1' 'prov' \
--replace "setup_requires=PYTEST_RUNNER," ""
''; '';
propagatedBuildInputs = with python3Packages; [ nativeBuildInputs = [
git
];
propagatedBuildInputs = with python3.pkgs; [
argcomplete argcomplete
bagit bagit
coloredlogs coloredlogs
@ -24,18 +37,41 @@ python3Packages.buildPythonApplication rec {
prov prov
psutil psutil
pydot pydot
rdflib
requests
ruamel-yaml
schema-salad schema-salad
shellescape shellescape
typing-extensions typing-extensions
]; ];
doCheck = false; # hard to setup checkInputs = with python3.pkgs; [
pythonImportsCheck = [ "cwltool" ]; mock
nodejs
pytest-mock
pytest-xdist
pytestCheckHook
];
disabledTests = [
"test_content_types"
"test_env_filtering"
"test_http_path_mapping"
];
disabledTestPaths = [
"tests/test_udocker.py"
"tests/test_provenance.py"
];
pythonImportsCheck = [
"cwltool"
];
meta = with lib; { meta = with lib; {
description = "Common Workflow Language reference implementation";
homepage = "https://www.commonwl.org"; homepage = "https://www.commonwl.org";
license = with licenses; [ asl20 ]; license = with licenses; [ asl20 ];
description = "Common Workflow Language reference implementation";
maintainers = with maintainers; [ veprbl ]; maintainers = with maintainers; [ veprbl ];
}; };
} }

View file

@ -21,7 +21,6 @@ python3Packages.buildPythonApplication rec {
description = "Tool for visualization of Git repositories"; description = "Tool for visualization of Git repositories";
homepage = "https://github.com/git-big-picture/git-big-picture"; homepage = "https://github.com/git-big-picture/git-big-picture";
license = lib.licenses.gpl3Plus; license = lib.licenses.gpl3Plus;
platforms = lib.platforms.linux;
maintainers = [ lib.maintainers.nthorne ]; maintainers = [ lib.maintainers.nthorne ];
}; };
} }

View file

@ -2,22 +2,25 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "glitter"; pname = "glitter";
version = "1.4.10"; version = "1.5.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "milo123459"; owner = "milo123459";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-5yv0RZfGLS/cxOxettHQHSPldcq+xa+TNj6dDIAmzOM="; sha256 = "sha256-AVHMDDvrSLg0OwoG4I5/W2ttWgBwzOG7553gr9bCDFs=";
}; };
cargoSha256 = "sha256-xG7aic7NCcltz9YmQ4V40/h3OR8Vt5IgApp4yoDbPuc="; cargoSha256 = "sha256-vBzy4gnlJMQwvVieuWuiVOm/HAr6rHkHcLmzY7eklT4=";
# tests require it to be in a git repository # tests require it to be in a git repository
preCheck = '' preCheck = ''
git init git init
''; '';
# error: Found argument '--test-threads' which wasn't expected, or isn't valid in this context
checkFlags = [ "--skip" "runs_correctly" ];
meta = with lib; { meta = with lib; {
description = "A git wrapper that allows you to compress multiple commands into one"; description = "A git wrapper that allows you to compress multiple commands into one";
homepage = "https://github.com/milo123459/glitter"; homepage = "https://github.com/milo123459/glitter";

View file

@ -1,14 +1,14 @@
{ {
"version": "14.4.1", "version": "14.4.2",
"repo_hash": "0sm44iyn32frc7njg6ypgbcip77mj5c3agn3cihk3lz7z5kr48lm", "repo_hash": "0zhac96b6p7p9vpj083ajfsj5a2fwkv602zxv79cjvpd924c5ws2",
"yarn_hash": "0l0lgcgxaira980a1y550pfsm4f2pw97gi8s5pghyfil2v2lyxyw", "yarn_hash": "0l0lgcgxaira980a1y550pfsm4f2pw97gi8s5pghyfil2v2lyxyw",
"owner": "gitlab-org", "owner": "gitlab-org",
"repo": "gitlab", "repo": "gitlab",
"rev": "v14.4.1-ee", "rev": "v14.4.2-ee",
"passthru": { "passthru": {
"GITALY_SERVER_VERSION": "14.4.1", "GITALY_SERVER_VERSION": "14.4.2",
"GITLAB_PAGES_VERSION": "1.46.0", "GITLAB_PAGES_VERSION": "1.46.0",
"GITLAB_SHELL_VERSION": "13.21.1", "GITLAB_SHELL_VERSION": "13.21.1",
"GITLAB_WORKHORSE_VERSION": "14.4.1" "GITLAB_WORKHORSE_VERSION": "14.4.2"
} }
} }

View file

@ -198,7 +198,7 @@ stdenv.mkDerivation {
meta = with lib; { meta = with lib; {
homepage = "http://www.gitlab.com/"; homepage = "http://www.gitlab.com/";
platforms = platforms.linux; platforms = platforms.linux;
maintainers = with maintainers; [ fpletz globin krav talyz yuka ]; maintainers = with maintainers; [ fpletz globin krav talyz yayayayaka yuka ];
} // (if gitlabEnterprise then } // (if gitlabEnterprise then
{ {
license = licenses.unfreeRedistributable; # https://gitlab.com/gitlab-org/gitlab-ee/raw/master/LICENSE license = licenses.unfreeRedistributable; # https://gitlab.com/gitlab-org/gitlab-ee/raw/master/LICENSE

View file

@ -21,7 +21,7 @@ let
}; };
}; };
version = "14.4.1"; version = "14.4.2";
gitaly_package = "gitlab.com/gitlab-org/gitaly/v${lib.versions.major version}"; gitaly_package = "gitlab.com/gitlab-org/gitaly/v${lib.versions.major version}";
in in
@ -33,7 +33,7 @@ buildGoModule {
owner = "gitlab-org"; owner = "gitlab-org";
repo = "gitaly"; repo = "gitaly";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-bATqaB7q3MlyacEiBXdcEDs+xsJUbULVnYTSpEznxFg="; sha256 = "sha256-MzYUSoG+HjW9o2zn6Q9Pd5NfI7hZkw1xFXOXHbbxJvo=";
}; };
vendorSha256 = "sha256-9RhPQosen70E9t1iAoc2SeKs9pYMMpMqgXLekWfKNf8="; vendorSha256 = "sha256-9RhPQosen70E9t1iAoc2SeKs9pYMMpMqgXLekWfKNf8=";

View file

@ -5,7 +5,7 @@ in
buildGoModule rec { buildGoModule rec {
pname = "gitlab-workhorse"; pname = "gitlab-workhorse";
version = "14.4.1"; version = "14.4.2";
src = fetchFromGitLab { src = fetchFromGitLab {
owner = data.owner; owner = data.owner;

View file

@ -3,7 +3,7 @@
attrsOrig @ attrsOrig @
{ baseName { baseName
, version , version
, buildInputs ? [] , nativeBuildInputs ? []
, xBuildFiles ? [ ] , xBuildFiles ? [ ]
, xBuildFlags ? [ "/p:Configuration=Release" ] , xBuildFlags ? [ "/p:Configuration=Release" ]
, outputFiles ? [ "bin/Release/*" ] , outputFiles ? [ "bin/Release/*" ]
@ -19,12 +19,12 @@ attrsOrig @
attrs = { attrs = {
name = "${baseName}-${version}"; name = "${baseName}-${version}";
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [
buildInputs = [ pkg-config
mono
dotnetbuildhelpers
makeWrapper makeWrapper
] ++ buildInputs; dotnetbuildhelpers
mono
] ++ nativeBuildInputs;
configurePhase = '' configurePhase = ''
runHook preConfigure runHook preConfigure
@ -87,7 +87,7 @@ attrsOrig @
then then
echo "$dll already exported by a buildInputs, not re-exporting" echo "$dll already exported by a buildInputs, not re-exporting"
else else
${dotnetbuildhelpers}/bin/create-pkg-config-for-dll.sh "$out/lib/pkgconfig" "$dll" create-pkg-config-for-dll.sh "$out/lib/pkgconfig" "$dll"
fi fi
done done
done done
@ -113,4 +113,4 @@ attrsOrig @
''; '';
}; };
in in
stdenv.mkDerivation (attrs // (builtins.removeAttrs attrsOrig [ "buildInputs" ] )) stdenv.mkDerivation (attrs // (builtins.removeAttrs attrsOrig [ "nativeBuildInputs" ] ))

View file

@ -7,7 +7,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "nototools"; pname = "nototools";
version = "0.2.13"; version = "0.2.16";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
@ -15,7 +15,7 @@ buildPythonPackage rec {
owner = "googlefonts"; owner = "googlefonts";
repo = "nototools"; repo = "nototools";
rev = "v${version}"; rev = "v${version}";
sha256 = "0ggp65xgkf9y7jamncm65lkm84wapsa47abf133pcb702875v8jz"; sha256 = "14rrdamkmhrykff8ln07fq9cm8zwj3k113lzwjcy0lgz23g51jyl";
}; };
postPatch = '' postPatch = ''

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "wireless-regdb"; pname = "wireless-regdb";
version = "2021.07.14"; version = "2021.08.28";
src = fetchurl { src = fetchurl {
url = "https://www.kernel.org/pub/software/network/${pname}/${pname}-${version}.tar.xz"; url = "https://www.kernel.org/pub/software/network/${pname}/${pname}-${version}.tar.xz";
sha256 = "sha256-Li3SFqXxoxC4SXdK9j5jCdlMIgfDR3GlNMR64YsWJ0I="; sha256 = "sha256-z/NwxBDR5tMWrgp/qKxieP3x78pdPWZKynz9Kq+lREY=";
}; };
dontBuild = true; dontBuild = true;

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "binaryen"; pname = "binaryen";
version = "101"; version = "102";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "WebAssembly"; owner = "WebAssembly";
repo = "binaryen"; repo = "binaryen";
rev = "version_${version}"; rev = "version_${version}";
sha256 = "sha256-rNiZQIQqNbc1P2A6UTn0dRHeT3BS+nv1o81aPaJy+5U="; sha256 = "sha256-UlktpY9tyjYNkmiBZM42QGg67kcPo7VDy2B4Ty1YIew=";
}; };
nativeBuildInputs = [ cmake python3 ]; nativeBuildInputs = [ cmake python3 ];

View file

@ -4,8 +4,8 @@ buildDhallGitHubPackage {
name = "grafana"; name = "grafana";
owner = "weeezes"; owner = "weeezes";
repo = "dhall-grafana"; repo = "dhall-grafana";
# 2021-11-06 # 2021-11-12
rev = "9ee0bb643f01db6d9935cf7df1914c32a92730b4"; rev = "d5630dc55deacf5100a99802a4df1d9680b263b3";
sha256 = "0a123r5a33p8kaqs68rx2ycjr72xvxcpcmvpqxgb2jb05mnjj540"; sha256 = "01320hpqgr5r4grsydmdl9yznmly1ssnlc9gcwa8rj1ah0a8xlgz";
dependencies = [ dhallPackages.Prelude ]; dependencies = [ dhallPackages.Prelude ];
} }

View file

@ -15,13 +15,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "libdeltachat"; pname = "libdeltachat";
version = "1.63.0"; version = "1.64.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "deltachat"; owner = "deltachat";
repo = "deltachat-core-rust"; repo = "deltachat-core-rust";
rev = version; rev = version;
sha256 = "1511jh38h7nmn4dpyi1vfxvhybcacc6gavwfifxvb5npirphziga"; sha256 = "04a1ncikapx53jjrx0ac1qi907wlj6javylz4aksg4nfbph6y9j4";
}; };
patches = [ patches = [
@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
cargoDeps = rustPlatform.fetchCargoTarball { cargoDeps = rustPlatform.fetchCargoTarball {
inherit src; inherit src;
name = "${pname}-${version}"; name = "${pname}-${version}";
sha256 = "0hfp2k84mvq11h7q96hkcj3k6f3sxw8wx89acg4hy6lbh8xpy6ai"; sha256 = "0skrzxn99c1gqil7z0dv0xhg883k98v6mh96nycf7whl2d25965x";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -1,28 +1,36 @@
{ lib, stdenv, fetchFromGitHub, cmake, boost, gtest }: { lib, stdenv, fetchFromGitHub, cmake, boost, gtest, zlib }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "lucene++"; pname = "lucene++";
version = "3.0.7"; version = "3.0.8";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "luceneplusplus"; owner = "luceneplusplus";
repo = "LucenePlusPlus"; repo = "LucenePlusPlus";
rev = "rel_${version}"; rev = "rel_${version}";
sha256 = "06b37fly6l27zc6kbm93f6khfsv61w792j8xihfagpcm9cfz2zi1"; sha256 = "12v7r62f7pqh5h210pb74sfx6h70lj4pgfpva8ya2d55fn0qxrr2";
}; };
postPatch = ''
sed -i -e '/Subversion *REQUIRED/d' \
-e '/include.*CMakeExternal/d' \
CMakeLists.txt
'';
cmakeFlags = [ "-DGTEST_INCLUDE_DIR=${gtest}/include" ];
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];
buildInputs = [ boost gtest ]; buildInputs = [ boost gtest zlib ];
doCheck = true; doCheck = true;
checkTarget = "test";
postPatch = ''
substituteInPlace src/test/CMakeLists.txt \
--replace "add_subdirectory(gtest)" ""
'';
checkPhase = ''
runHook preCheck
LD_LIBRARY_PATH=$PWD/src/contrib:$PWD/src/core \
src/test/lucene++-tester
runHook postCheck
'';
postInstall = ''
mv $out/include/pkgconfig $out/lib/
'';
meta = { meta = {
description = "C++ port of the popular Java Lucene search engine"; description = "C++ port of the popular Java Lucene search engine";

View file

@ -17,7 +17,7 @@ in stdenv.mkDerivation {
name = "${pname}-${version}"; name = "${pname}-${version}";
src = fetchurl { src = fetchurl {
url = "https://ftp.pcre.org/pub/pcre/pcre-${version}.tar.bz2"; url = "mirror://sourceforge/project/pcre/pcre/${version}/pcre-${version}.tar.bz2";
sha256 = "0v9nk51wh55pcbnf2jr36yarz8ayajn6d7ywiq2wagivn9c8c40r"; sha256 = "0v9nk51wh55pcbnf2jr36yarz8ayajn6d7ywiq2wagivn9c8c40r";
}; };

View file

@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
sha256 = "0l0m48lnmdlmnaxn2021qi5cj366d9fzfjxkqgcj9bs14pxbgaw4"; sha256 = "0l0m48lnmdlmnaxn2021qi5cj366d9fzfjxkqgcj9bs14pxbgaw4";
}; };
separateDebugInfo = true; separateDebugInfo = !stdenv.hostPlatform.isStatic;
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [ pkg-config ];

View file

@ -22,11 +22,12 @@ stdenv.mkDerivation {
sha256 = "14vm0b162jh8399pgpsikbwq4z5lkrw9vfzy3drqykw09n6nc53z"; sha256 = "14vm0b162jh8399pgpsikbwq4z5lkrw9vfzy3drqykw09n6nc53z";
}; };
strictDeps = true;
nativeBuildInputs = [ autoreconfHook pkg-config ]; nativeBuildInputs = [ autoreconfHook pkg-config ];
propagatedBuildInputs = [ zlib ] propagatedNativeBuildInputs = lib.optional mpiSupport mpi
++ lib.optional mpiSupport mpi
++ lib.optional isOpenmpi openssh ++ lib.optional isOpenmpi openssh
; ;
propagatedBuildInputs = [ zlib ];
inherit debugEnable mpiSupport; inherit debugEnable mpiSupport;
postPatch = '' postPatch = ''

View file

@ -21,6 +21,7 @@ stdenv.mkDerivation {
sha256 = "0vffnf48rzw6d0as4c3x1f31b4kapmdzr1hfj5rz5ngah72gqrph"; sha256 = "0vffnf48rzw6d0as4c3x1f31b4kapmdzr1hfj5rz5ngah72gqrph";
}; };
strictDeps = true;
nativeBuildInputs = [ autoreconfHook pkg-config ]; nativeBuildInputs = [ autoreconfHook pkg-config ];
propagatedBuildInputs = [ p4est-sc ]; propagatedBuildInputs = [ p4est-sc ];
buildInputs = lib.optional withMetis metis; buildInputs = lib.optional withMetis metis;

View file

@ -28,10 +28,12 @@ stdenv.mkDerivation rec {
mpiSupport = !withp4est || p4est.mpiSupport; mpiSupport = !withp4est || p4est.mpiSupport;
withp4est = petsc-withp4est; withp4est = petsc-withp4est;
nativeBuildInputs = [ python3 gfortran ]; strictDeps = true;
buildInputs = [ blas lapack ] nativeBuildInputs = [ python3 gfortran ]
++ lib.optional mpiSupport mpi ++ lib.optional mpiSupport mpi
++ lib.optional (mpiSupport && mpi.pname == "openmpi") openssh ++ lib.optional (mpiSupport && mpi.pname == "openmpi") openssh
;
buildInputs = [ blas lapack ]
++ lib.optional withp4est p4est ++ lib.optional withp4est p4est
; ;

View file

@ -1,6 +1,7 @@
{ stdenv { stdenv
, lib , lib
, fetchFromGitHub , fetchFromGitHub
, fetchpatch
, nixosTests , nixosTests
, substituteAll , substituteAll
, autoreconfHook , autoreconfHook
@ -38,6 +39,12 @@ stdenv.mkDerivation rec {
src = ./fix-paths.patch; src = ./fix-paths.patch;
inherit flatpak; inherit flatpak;
}) })
# Fixes the issue in https://github.com/flatpak/xdg-desktop-portal/issues/636
# Remove it when the next stable release arrives
(fetchpatch {
url = "https://github.com/flatpak/xdg-desktop-portal/commit/d7622e15ff8fef114a6759dde564826d04215a9f.patch";
sha256 = "sha256-vmfxK4ddG6Xon//rpiz6OiBsDLtT0VG5XyBJG3E4PPs=";
})
]; ];
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -3,7 +3,7 @@
}: }:
rec { rec {
version = "0.6.6"; version = "0.6.8";
rSrc = rSrc =
# local build -> `make ci`; `make clean` to restore # local build -> `make ci`; `make clean` to restore
# return to remote source # return to remote source
@ -14,6 +14,6 @@ rec {
owner = "abathur"; owner = "abathur";
repo = "resholve"; repo = "resholve";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-bupf3c9tNPAEMzFEDcvg483bSiwZFuB3ZqveG89dgkE="; hash = "sha256-1bb22GcOIzmQ31ULZuNNCJ8Vcz4Y0+qAhsJ9PhbqnDM=";
}; };
} }

View file

@ -21,10 +21,17 @@
, rSrc , rSrc
, runDemo ? false , runDemo ? false
, binlore , binlore
, sqlite
, util-linux
, gawk
, rlwrap
, gnutar
, bc
}: }:
let let
default_packages = [ bash file findutils gettext ];
parsed_packages = [ coreutils sqlite util-linux gnused gawk findutils rlwrap gnutar bc ];
in in
rec { rec {
re_shunit2 = with shunit2; re_shunit2 = with shunit2;
@ -56,9 +63,6 @@ rec {
"/usr/bin/od" = true; "/usr/bin/od" = true;
}; };
keep = { keep = {
# dynamically defined in shunit2:_shunit_mktempFunc
eval = [ "shunit_condition_" "_shunit_test_" "_shunit_prepForSourcing" ];
# variables invoked as commands; long-term goal is to # variables invoked as commands; long-term goal is to
# resolve the *variable*, but that is complexish, so # resolve the *variable*, but that is complexish, so
# this is where we are... # this is where we are...
@ -166,13 +170,14 @@ rec {
# LOGLEVEL="DEBUG"; # LOGLEVEL="DEBUG";
# default path # default path
RESHOLVE_PATH = "${lib.makeBinPath [ bash file findutils gettext ]}"; RESHOLVE_PATH = "${lib.makeBinPath default_packages}";
# but separate packages for combining as needed # but separate packages for combining as needed
PKG_FILE = "${lib.makeBinPath [ file ]}"; PKG_FILE = "${lib.makeBinPath [ file ]}";
PKG_FINDUTILS = "${lib.makeBinPath [ findutils ]}"; PKG_FINDUTILS = "${lib.makeBinPath [ findutils ]}";
PKG_GETTEXT = "${lib.makeBinPath [ gettext ]}"; PKG_GETTEXT = "${lib.makeBinPath [ gettext ]}";
PKG_COREUTILS = "${lib.makeBinPath [ coreutils ]}"; PKG_COREUTILS = "${lib.makeBinPath [ coreutils ]}";
RESHOLVE_LORE = "${binlore.collect { drvs = [ bash file findutils gettext coreutils ]; } }"; RESHOLVE_LORE = "${binlore.collect { drvs = default_packages ++ [ coreutils ] ++ parsed_packages; } }";
PKG_PARSED = "${lib.makeBinPath parsed_packages}";
# explicit interpreter for demo suite; maybe some better way... # explicit interpreter for demo suite; maybe some better way...
INTERP = "${bash}/bin/bash"; INTERP = "${bash}/bin/bash";

View file

@ -0,0 +1,25 @@
{ lib, buildNimPackage, fetchFromGitHub, python27 }:
buildNimPackage rec {
pname = "python";
version = "1.2";
src = fetchFromGitHub {
owner = "nim-lang";
repo = pname;
rev = "b7c3b2c447a69fdb0a974ba149062e52182fda08";
hash = "sha256-Wl4on0rf4zbNxmwmq/ZkNiPIFCZY+1BdokPQoba2EVI=";
};
postPatch = let pythonLib = "${python27}/lib/libpython2.7.so";
in ''
substituteInPlace src/python.nim \
--replace 'items(LibNames)' "[\"${pythonLib}\"]" \
--replace 'dynlib: dllname' 'dynlib: "${pythonLib}"'
'';
doCheck = true;
meta = with lib;
src.meta // {
description = "Nim wrapper for the Python 2 programming language";
license = [ licenses.mit ];
maintainers = [ maintainers.ehmry ];
};
}

View file

@ -0,0 +1,20 @@
{ lib, buildNimPackage, fetchFromGitHub, rocksdb, stew, tempfile }:
buildNimPackage rec {
pname = "rocksdb";
version = "0.2.0";
src = fetchFromGitHub {
owner = "status-im";
repo = "nim-${pname}";
rev = "5b1307cb1f4c85bb72ff781d810fb8c0148b1183";
hash = "sha256-gjMCB9kpWVi9Qv73/jhoAYw857OmQpry//bDQCtyJo0=";
};
buildInputs = [ stew tempfile ];
propagatedBuildInputs = [ rocksdb ];
doCheck = false;
meta = with lib;
src.meta // {
description = "Nim wrapper for RocksDB";
maintainers = [ maintainers.ehmry ];
};
}

View file

@ -0,0 +1,7 @@
diff --git a/tests/config.nims b/tests/config.nims
index 46348f1..fbe9f5e 100644
--- a/tests/config.nims
+++ b/tests/config.nims
@@ -1 +1,2 @@
switch("path", "..")
+switch("passL", "-lsnappy")

View file

@ -0,0 +1,25 @@
{ lib, buildNimPackage, fetchFromGitHub, snappy }:
buildNimPackage rec {
pname = "snappy";
version = "0.1.0";
src = fetchFromGitHub {
owner = "jangko";
repo = pname;
rev = "d13e2ccb2acaa4e8dedce4f25e8dbf28e19278a6";
hash = "sha256-18CFRuDK+E701MHrCixx22QSVmglTc0EJwrMCsKwayM=";
};
propagatedBuildInputs = [ snappy ];
patches = [ ./config.patch ];
doCheck = true;
preCheck = ''
mkdir $NIX_BUILD_TOP/nimcache/
mv -v tests/data $NIX_BUILD_TOP/nimcache/data
''; # test standards, please
meta = with lib;
src.meta // {
description = "Nim implementation of snappy compression algorithm";
license = [ lib.licenses.mit ];
maintainers = [ maintainers.ehmry ];
};
}

View file

@ -0,0 +1,23 @@
{ lib, buildNimPackage, fetchFromGitHub, python, rocksdb, snappy, spryvm, stew
, tempfile, ui }:
buildNimPackage rec {
pname = "spry";
version = "0.9.0";
src = fetchFromGitHub {
owner = "gokr";
repo = pname;
rev = "098da7bb34a9113d5db5402fecfc76b1c3fa3b36";
hash = "sha256-PfWBrG2Z16tLgcN8JYpHaNMysBbbYX812Lkgk0ItMwE=";
};
buildInputs = [ python rocksdb snappy spryvm stew tempfile ui ];
patches = [ ./nil.patch ];
doCheck = true;
meta = with lib;
src.meta // {
description =
"A Smalltalk and Rebol inspired language implemented as an AST interpreter in Nim";
license = [ licenses.mit ];
maintainers = [ maintainers.ehmry ];
};
}

View file

@ -0,0 +1,35 @@
diff --git a/src/ispry.nim b/src/ispry.nim
index 23ad6c3..dc38a9d 100644
--- a/src/ispry.nim
+++ b/src/ispry.nim
@@ -134,8 +134,8 @@ proc main() =
#discard spry.setBinding(newEvalWord("@"), result)
var output = $result
# Print any result
- if output.isNil:
- output = if suspended: "nil" else: ""
+ if output == "" and suspended:
+ output = "nil"
stdout.write(output & "\n")
# except:
# echo "Oops, sorry about that: " & getCurrentExceptionMsg() & "\n"
diff --git a/src/spry.nim b/src/spry.nim
index 670a280..d81bb4c 100644
--- a/src/spry.nim
+++ b/src/spry.nim
@@ -87,13 +87,13 @@ for kind, key, val in getopt():
of cmdEnd: assert(false) # cannot happen
if eval:
- if filename == nil:
+ if filename == "":
writeHelp()
else:
code = filename
else:
code =
- if filename == nil:
+ if filename == "":
# no filename has been given, so we use stdin
readAll stdin
else:

View file

@ -0,0 +1,21 @@
{ lib, buildNimPackage, fetchFromGitHub, sqlite }:
buildNimPackage rec {
pname = "spryvm";
version = "0.9.3";
src = fetchFromGitHub {
owner = "gokr";
repo = pname;
rev = "36c2b56bb194902d33de7bcf70d3041703e107ab";
hash = "sha256-OxB49ef6qPvSXLsyVl5g2ic/P9MMbF3jRYDWrxNJ0Iw=";
};
propagatedBuildInputs = [ sqlite ];
patches = [ ./nil.patch ];
doCheck = true;
meta = with lib;
src.meta // {
description = "Spry virtual machine";
license = [ licenses.mit ];
maintainers = [ maintainers.ehmry ];
};
}

View file

@ -0,0 +1,21 @@
diff --git a/spryvm/spryui.nim b/spryvm/spryui.nim
index 37f5329..50440e9 100644
--- a/spryvm/spryui.nim
+++ b/spryvm/spryui.nim
@@ -140,14 +140,14 @@ proc addUI*(spry: Interpreter) =
nimMeth("openFile"):
var win = WindowNode(evalArgInfix(spry))
var path = openFile(Window(win.widget))
- if path.isNil:
+ if path == "":
spry.nilVal
else:
newValue($path)
nimMeth("saveFile"):
var win = WindowNode(evalArgInfix(spry))
var path = saveFile(Window(win.widget))
- if path.isNil:
+ if path == "":
spry.nilVal
else:
newValue($path)

View file

@ -0,0 +1,20 @@
{ lib, buildNimPackage, fetchFromGitHub, snappy }:
buildNimPackage rec {
pname = "stew";
version = "0.1.0";
src = fetchFromGitHub {
owner = "status-im";
repo = "nim-${pname}";
rev = "478cc6efdefaabadf0666a3351fb959b78009bcc";
hash = "sha256-txlTF0zNV5kV4KfE744oB3aVLCfWS9BdoKxUmTQTTRY=";
};
doCheck = false;
meta = with lib;
src.meta // {
description =
"Backports, standard library candidates and small utilities that don't yet deserve their own repository";
license = [ lib.licenses.asl20 ];
maintainers = [ maintainers.ehmry ];
};
}

View file

@ -0,0 +1,19 @@
{ lib, buildNimPackage, fetchFromGitHub }:
buildNimPackage rec {
pname = "tempfile";
version = "0.1.7";
src = fetchFromGitHub {
owner = "OpenSystemsLab";
repo = "${pname}.nim";
rev = version;
hash = "sha256-08vvHXVxL1mAcpMzosaHd2FupTJrKJP5JaVcgxN4oYE=";
};
doCheck = false; # impure
meta = with lib;
src.meta // {
description = "Temporary files and folders";
license = [ lib.licenses.mit ];
maintainers = [ maintainers.ehmry ];
};
}

View file

@ -0,0 +1,24 @@
{ lib, buildNimPackage, fetchFromGitHub, libui, pkg-config }:
buildNimPackage rec {
pname = "ui";
version = "0.9.4";
src = fetchFromGitHub {
owner = "nim-lang";
repo = pname;
rev = "547e1cea8e9fb68c138c422b77af0a3152e50210";
hash = "sha256-rcvC0TO1r2zU7WEYfcsi/qX+nRITwKj7Fkqd4fHgTwU=";
};
propagatedBuildInputs = [ libui ];
propagatedNativeBuildInputs = [ pkg-config ];
postPatch = ''
echo {.passL: r\"$(pkg-config --libs libui)\".} >> ui/rawui.nim
'';
doCheck = true;
meta = with lib;
src.meta // {
description = "Nim bindings to libui";
license = [ licenses.mit ];
maintainers = [ maintainers.ehmry ];
};
}

View file

@ -151,7 +151,7 @@
, "insect" , "insect"
, "intelephense" , "intelephense"
, "ionic" , "ionic"
, {"iosevka": "https://github.com/be5invis/Iosevka/archive/v10.3.1.tar.gz"} , {"iosevka": "https://github.com/be5invis/Iosevka/archive/v11.0.1.tar.gz"}
, "jake" , "jake"
, "javascript-typescript-langserver" , "javascript-typescript-langserver"
, "joplin" , "joplin"

File diff suppressed because it is too large Load diff

View file

@ -1,30 +1,50 @@
{ lib, buildDunePackage, fetchFromGitHub, ppx_deriving { lib
, alcotest, angstrom-unix, biocaml, gnuplot, gsl, lacaml, menhir, owl, printbox }: , buildDunePackage
, fetchurl
, ppx_deriving
, bppsuite
, alcotest
, angstrom-unix
, biocaml
, core
, gsl
, lacaml
, menhir
, menhirLib
, printbox
}:
buildDunePackage rec { buildDunePackage rec {
pname = "phylogenetics"; pname = "phylogenetics";
version = "unstable-2020-11-23"; version = "0.0.0";
useDune2 = true; useDune2 = true;
src = fetchFromGitHub { src = fetchurl {
owner = "biocaml"; url = "https://github.com/biocaml/phylogenetics/releases/download/v${version}/${pname}-${version}.tbz";
repo = pname; sha256 = "sha256:0knfh2s0jfnsc0vsq5yw5xla7m7i98xd0qv512dyh3jhkh7m00l9";
rev = "e6e10efa0a3a8fd61bf4ab69e91a09549cc1ded6";
sha256 = "0pmypzp0rvlpzm8zpbcfkphwnhrpyfwfv44kshvx2f8nslmksh8c";
}; };
minimumOCamlVersion = "4.08"; # e.g., uses Float.min minimalOCamlVersion = "4.08";
checkInputs = [ alcotest ]; checkInputs = [ alcotest bppsuite ];
buildInputs = [ menhir ]; buildInputs = [ menhir ];
propagatedBuildInputs = [ angstrom-unix biocaml gnuplot gsl lacaml owl ppx_deriving printbox ]; propagatedBuildInputs = [
angstrom-unix
biocaml
core
gsl
lacaml
menhirLib
ppx_deriving
printbox
];
doCheck = false; # many tests require bppsuite doCheck = true;
meta = with lib; { meta = with lib; {
inherit (src.meta) homepage; homepage = "https://github.com/biocaml/phylogenetics";
description = "Bioinformatics library for Ocaml"; description = "Algorithms and datastructures for phylogenetics";
maintainers = [ maintainers.bcdarwin ]; maintainers = [ maintainers.bcdarwin ];
license = licenses.cecill-b; license = licenses.cecill-b;
}; };

View file

@ -6,19 +6,25 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "adafruit-platformdetect"; pname = "adafruit-platformdetect";
version = "3.17.1"; version = "3.17.2";
format = "setuptools";
src = fetchPypi { src = fetchPypi {
pname = "Adafruit-PlatformDetect"; pname = "Adafruit-PlatformDetect";
inherit version; inherit version;
sha256 = "sha256-M+0q1u/ZcAg2Pii/B2n0v+rw/zIAjeVej/VThi9NLwI="; sha256 = "sha256-IA846zNFmBqSUc0oXJ0eA5wj6PzQ28jxO22z5WNOT24=";
}; };
nativeBuildInputs = [ setuptools-scm ]; nativeBuildInputs = [
setuptools-scm
];
# Project has not published tests yet # Project has not published tests yet
doCheck = false; doCheck = false;
pythonImportsCheck = [ "adafruit_platformdetect" ];
pythonImportsCheck = [
"adafruit_platformdetect"
];
meta = with lib; { meta = with lib; {
description = "Platform detection for use by Adafruit libraries"; description = "Platform detection for use by Adafruit libraries";

View file

@ -8,14 +8,16 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "adax"; pname = "adax";
version = "0.1.1"; version = "0.2.0";
format = "setuptools";
disabled = pythonOlder "3.5"; disabled = pythonOlder "3.5";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Danielhiversen"; owner = "Danielhiversen";
repo = "pyadax"; repo = "pyadax";
rev = version; rev = version;
sha256 = "sha256-ekpI5GTLbKjlbWH9GSmpp/3URurc7UN+agxMfyGxrVA="; sha256 = "sha256-EMSX2acklwWOYiEeLHYG5mwdiGnWAUo5dGMiHCmZrko=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View file

@ -1,12 +1,21 @@
{ lib, isPy3k, fetchFromGitHub, buildPythonPackage { lib
, attrs, atpublic }: , atpublic
, attrs
, buildPythonPackage
, fetchFromGitHub
, pytest-mock
, pytestCheckHook
, pythonOlder
, typing-extensions
}:
buildPythonPackage rec { buildPythonPackage rec {
pname = "aiosmtpd"; pname = "aiosmtpd";
version = "1.4.2"; version = "1.4.2";
disabled = !isPy3k; format = "setuptools";
disabled = pythonOlder "3.6";
# Release not published to Pypi
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "aio-libs"; owner = "aio-libs";
repo = pname; repo = pname;
@ -15,19 +24,34 @@ buildPythonPackage rec {
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [
atpublic attrs atpublic
attrs
] ++ lib.optionals (pythonOlder "3.8") [
typing-extensions
]; ];
# Tests need network access checkInputs = [
doCheck = false; pytest-mock
pytestCheckHook
];
disabledTests = [
# Requires git
"test_ge_master"
# Seems to be a sandbox issue
"test_byclient"
];
pythonImportsCheck = [
"aiosmtpd"
];
meta = with lib; { meta = with lib; {
homepage = "https://aiosmtpd.readthedocs.io/en/latest/";
description = "Asyncio based SMTP server"; description = "Asyncio based SMTP server";
homepage = "https://aiosmtpd.readthedocs.io/";
longDescription = '' longDescription = ''
This is a server for SMTP and related protocols, similar in utility to the This is a server for SMTP and related protocols, similar in utility to the
standard library's smtpd.py module, but rewritten to be based on asyncio for standard library's smtpd.py module.
Python 3.
''; '';
license = licenses.asl20; license = licenses.asl20;
maintainers = with maintainers; [ eadwu ]; maintainers = with maintainers; [ eadwu ];

View file

@ -1,27 +1,36 @@
{ lib, fetchFromGitHub, buildPythonPackage, pytestCheckHook }: { lib
, fetchFromGitHub
, buildPythonPackage
, pytestCheckHook
}:
buildPythonPackage rec { buildPythonPackage rec {
pname = "anybadge"; pname = "anybadge";
version = "1.7.0"; version = "1.8.0";
format = "setuptools";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "jongracecox"; owner = "jongracecox";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "1d02fnig04zlrhfqqcf4505vy4p51whl2ifilnx3mkhis9lcwrmr"; sha256 = "sha256-xKHIoV/8qsNMcU5fd92Jjh7d7jTeYN5xakMEjR6qPX8=";
}; };
# setup.py reads its version from the TRAVIS_TAG environment variable # setup.py reads its version from the TRAVIS_TAG environment variable
TRAVIS_TAG = "v${version}"; TRAVIS_TAG = "v${version}";
pythonImportsCheck = [ "anybadge" ]; checkInputs = [
pytestCheckHook
];
checkInputs = [ pytestCheckHook ]; pythonImportsCheck = [
"anybadge"
];
meta = with lib; { meta = with lib; {
description = "A Python project for generating badges for your projects, with a focus on simplicity and flexibility"; description = "Python tool for generating badges for your projects";
license = licenses.mit;
homepage = "https://github.com/jongracecox/anybadge"; homepage = "https://github.com/jongracecox/anybadge";
maintainers = [ maintainers.fabiangd ]; license = licenses.mit;
maintainers = with maintainers; [ fabiangd ];
}; };
} }

View file

@ -19,7 +19,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "anyio"; pname = "anyio";
version = "3.3.1"; version = "3.3.2";
format = "pyproject"; format = "pyproject";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
@ -27,7 +27,7 @@ buildPythonPackage rec {
owner = "agronholm"; owner = "agronholm";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-JQf+OWHV2Vok5FmP7mlzeqbKUlxB+FC1c3ruX2aQEEs="; sha256 = "sha256-XBIrFb/XDneaOf/TeHxyeEfyQ7qQcWO7LJF0k1f4Ark=";
}; };
preBuild = '' preBuild = ''

View file

@ -1,6 +1,8 @@
{ lib, isPy3k, pythonOlder, fetchPypi, buildPythonPackage { lib
, pytest , buildPythonPackage
, pytest-cov , fetchPypi
, pytestCheckHook
, pythonOlder
, sybil , sybil
, typing-extensions , typing-extensions
}: }:
@ -8,7 +10,9 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "atpublic"; pname = "atpublic";
version = "2.3"; version = "2.3";
disabled = !isPy3k; format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
@ -20,25 +24,25 @@ buildPythonPackage rec {
]; ];
checkInputs = [ checkInputs = [
pytest pytest-cov sybil pytestCheckHook
sybil
]; ];
checkPhase = '' postPatch = ''
pytest substituteInPlace setup.cfg \
--replace "--cov=public" ""
''; '';
pythonImportsCheck = [
"public"
];
meta = with lib; { meta = with lib; {
homepage = "https://public.readthedocs.io/en/latest/"; description = "Python decorator and function which populates a module's __all__ and globals";
description = "A decorator and function which populates a module's __all__ and globals"; homepage = "https://public.readthedocs.io/";
longDescription = '' longDescription = ''
This is a very simple decorator and function which populates a module's This is a very simple decorator and function which populates a module's
__all__ and optionally the module globals. __all__ and optionally the module globals.
This provides both a pure-Python implementation and a C implementation. It is
proposed that the C implementation be added to builtins_ for Python 3.6.
This proposal seems to have been rejected, for more information see
https://bugs.python.org/issue26632.
''; '';
license = licenses.asl20; license = licenses.asl20;
maintainers = with maintainers; [ eadwu ]; maintainers = with maintainers; [ eadwu ];

View file

@ -9,7 +9,8 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "bimmer-connected"; pname = "bimmer-connected";
version = "0.7.21"; version = "0.7.22";
format = "setuptools";
disabled = pythonOlder "3.5"; disabled = pythonOlder "3.5";
@ -17,7 +18,7 @@ buildPythonPackage rec {
owner = "bimmerconnected"; owner = "bimmerconnected";
repo = "bimmer_connected"; repo = "bimmer_connected";
rev = version; rev = version;
sha256 = "sha256-98K7FRB//WyCu6NPG0x4ViA8UdMuiANDXshLjx/Yehg="; sha256 = "sha256-tAkgOZvf9nyrAfFRxGkp7O/2oIAdBx+hNZbK9den+5c=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -2,13 +2,13 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "boost-histogram"; pname = "boost-histogram";
version = "1.1.0"; version = "1.2.1";
disabled = !isPy3k; disabled = !isPy3k;
src = fetchPypi { src = fetchPypi {
pname = "boost_histogram"; pname = "boost_histogram";
inherit version; inherit version;
sha256 = "370e8e44a0bac4ebbedb7e62570be3a75a7a3807a297d6e82a94301b4681fc22"; sha256 = "a27842b2f1cfecc509382da2b25b03056354696482b38ec3c0220af0fc9b7579";
}; };
buildInputs = [ boost ]; buildInputs = [ boost ];

View file

@ -6,19 +6,22 @@
, mock , mock
, msgpack , msgpack
, pytestCheckHook , pytestCheckHook
, pythonOlder
, requests , requests
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "cachecontrol"; pname = "cachecontrol";
version = "0.12.8"; version = "0.12.10";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ionrock"; owner = "ionrock";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "0y15xbaqw2lxidwbyrgpy42v3cxgv4ys63fx2586h1szlrd4f3p4"; sha256 = "sha256-mgvL0q10UbPHY1H3tJprke5p8qNl3HNYoeLAERZTcTs=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View file

@ -8,7 +8,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "crownstone-core"; pname = "crownstone-core";
version = "3.0.1"; version = "3.1.0";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.8"; disabled = pythonOlder "3.8";
@ -17,7 +17,7 @@ buildPythonPackage rec {
owner = "crownstone"; owner = "crownstone";
repo = "crownstone-lib-python-core"; repo = "crownstone-lib-python-core";
rev = version; rev = version;
sha256 = "138lignv7c8kkqbqfkdcfpg39gm9x44h7r2j403m4ib7gq420hsn"; sha256 = "sha256-ujS4ho9io7KcoK5w1SCn7UPFg1ho3dgW0HS5HfsYsuU=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View file

@ -8,7 +8,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "crownstone-uart"; pname = "crownstone-uart";
version = "2.1.0"; version = "2.2.0";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.8"; disabled = pythonOlder "3.8";
@ -17,7 +17,7 @@ buildPythonPackage rec {
owner = "crownstone"; owner = "crownstone";
repo = "crownstone-lib-python-uart"; repo = "crownstone-lib-python-uart";
rev = version; rev = version;
sha256 = "0sdz131vmrfp6hrm9iwqw8mj9qazsxg7b85yadib1122w9f3b1zc"; sha256 = "sha256-5K7NzJ7fKOW4Uh1XIlicVkRZuM84qTM5RQc/DfP9OEc=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View file

@ -16,7 +16,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "cyclonedx-python-lib"; pname = "cyclonedx-python-lib";
version = "0.11.0"; version = "0.11.1";
format = "pyproject"; format = "pyproject";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
@ -25,7 +25,7 @@ buildPythonPackage rec {
owner = "CycloneDX"; owner = "CycloneDX";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-FNEtVTcmVyhAri55GjlzQbg21YByAJjmKQvWaYh3xRw="; sha256 = "sha256-+Gu9WaGC2R5TC8XSqDNSJ3t7aMS69IeeKTzytYFcHvE=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -1,26 +1,28 @@
{ lib { lib
, buildPythonPackage
, pythonOlder
, fetchFromGitHub
, aiohttp , aiohttp
, poetry-core
, yarl
, aresponses , aresponses
, buildPythonPackage
, fetchFromGitHub
, poetry-core
, pydantic
, pytest-asyncio , pytest-asyncio
, pytestCheckHook , pytestCheckHook
, pythonOlder
, yarl
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "elgato"; pname = "elgato";
version = "2.1.1"; version = "2.2.0";
disabled = pythonOlder "3.8";
format = "pyproject"; format = "pyproject";
disabled = pythonOlder "3.8";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "frenck"; owner = "frenck";
repo = "python-elgato"; repo = "python-elgato";
rev = "v${version}"; rev = "v${version}";
sha256 = "19z568jjyww7vi8s44anrb66qjz5l22nz4jqcz49ybhf22warmff"; sha256 = "sha256-xsIglJSnvtd3NKqwoRAonPRN+C9KWyar0mrYcC3hPpw=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -29,6 +31,7 @@ buildPythonPackage rec {
propagatedBuildInputs = [ propagatedBuildInputs = [
aiohttp aiohttp
pydantic
yarl yarl
]; ];
@ -45,7 +48,9 @@ buildPythonPackage rec {
--replace "--cov" "" --replace "--cov" ""
''; '';
pythonImportsCheck = [ "elgato" ]; pythonImportsCheck = [
"elgato"
];
meta = with lib; { meta = with lib; {
description = "Python client for Elgato Key Lights"; description = "Python client for Elgato Key Lights";

View file

@ -4,6 +4,7 @@
, fetchFromGitHub , fetchFromGitHub
, substituteAll , substituteAll
, graphviz , graphviz
, xdg-utils
, makeFontsConf , makeFontsConf
, freefont_ttf , freefont_ttf
, mock , mock
@ -13,7 +14,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "graphviz"; pname = "graphviz";
version = "0.17"; version = "0.18";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
@ -22,13 +23,14 @@ buildPythonPackage rec {
owner = "xflr6"; owner = "xflr6";
repo = "graphviz"; repo = "graphviz";
rev = version; rev = version;
sha256 = "sha256-K6z2C7hQH2A9bqgRR4MRqxVAH/k2NQBEelb2/6KDUr0="; sha256 = "sha256-K98CwG+V+EFwzyawVjRwVhbX2FVfoX7dCAD5PXAWTq8=";
}; };
patches = [ patches = [
(substituteAll { (substituteAll {
src = ./hardcode-graphviz-path.patch; src = ./paths.patch;
inherit graphviz; inherit graphviz;
xdgutils = xdg-utils;
}) })
]; ];

View file

@ -1,98 +0,0 @@
diff --git a/graphviz/backend.py b/graphviz/backend.py
index b66e616..3da4ef0 100644
--- a/graphviz/backend.py
+++ b/graphviz/backend.py
@@ -124,7 +124,7 @@ def command(engine: str, format_: str, filepath=None,
raise ValueError(f'unknown formatter: {formatter!r}')
output_format = [f for f in (format_, renderer, formatter) if f is not None]
- cmd = ['dot', '-K%s' % engine, '-T%s' % ':'.join(output_format)]
+ cmd = ['@graphviz@/bin/dot', '-K%s' % engine, '-T%s' % ':'.join(output_format)]
if filepath is None:
rendered = None
@@ -297,7 +297,7 @@ def unflatten(source: str,
if fanout and stagger is None:
raise RequiredArgumentError('fanout given without stagger')
- cmd = ['unflatten']
+ cmd = ['@graphviz@/bin/unflatten']
if stagger is not None:
cmd += ['-l', str(stagger)]
if fanout:
@@ -332,7 +332,7 @@ def version() -> typing.Tuple[int, ...]:
Graphviz Release version entry format:
https://gitlab.com/graphviz/graphviz/-/blob/f94e91ba819cef51a4b9dcb2d76153684d06a913/gen_version.py#L17-20
"""
- cmd = ['dot', '-V']
+ cmd = ['@graphviz@/bin/dot', '-V']
out, _ = run(cmd, check=True, encoding='ascii',
stdout=subprocess.PIPE,
stderr=subprocess.STDOUT)
diff --git a/tests/test_backend.py b/tests/test_backend.py
index e0a0e1c..681f178 100644
--- a/tests/test_backend.py
+++ b/tests/test_backend.py
@@ -54,7 +54,7 @@ def test_run_encoding_mocked(mocker, Popen, input='sp\xe4m', encoding='utf-8'):
m.decode.assert_called_once_with(encoding)
-@pytest.mark.exe
+@pytest.mark.skip(reason='empty $PATH has no effect')
@pytest.mark.usefixtures('empty_path')
@pytest.mark.parametrize('func, args', [
(render, ['dot', 'pdf', 'nonfilepath']),
@@ -148,7 +148,7 @@ def test_render_mocked(capsys, mocker, Popen, quiet): # noqa: N803
assert render('dot', 'pdf', 'nonfilepath', quiet=quiet) == 'nonfilepath.pdf'
- Popen.assert_called_once_with(['dot', '-Kdot', '-Tpdf', '-O', 'nonfilepath'],
+ Popen.assert_called_once_with(['@graphviz@/bin/dot', '-Kdot', '-Tpdf', '-O', 'nonfilepath'],
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
cwd=None, startupinfo=mocker.ANY)
@@ -211,7 +211,7 @@ def test_pipe_pipe_invalid_data_mocked(mocker, Popen, quiet): # noqa: N803
assert e.value.stdout is out
e.value.stdout = mocker.sentinel.new_stdout
assert e.value.stdout is mocker.sentinel.new_stdout
- Popen.assert_called_once_with(['dot', '-Kdot', '-Tpng'],
+ Popen.assert_called_once_with(['@graphviz@/bin/dot', '-Kdot', '-Tpng'],
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
@@ -231,7 +231,7 @@ def test_pipe_mocked(capsys, mocker, Popen, quiet): # noqa: N803
assert pipe('dot', 'png', b'nongraph', quiet=quiet) == b'stdout'
- Popen.assert_called_once_with(['dot', '-Kdot', '-Tpng'],
+ Popen.assert_called_once_with(['@graphviz@/bin/dot', '-Kdot', '-Tpng'],
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
@@ -259,7 +259,7 @@ def test_unflatten_mocked(capsys, mocker, Popen):
proc.communicate.return_value = (b'nonresult', b'')
assert unflatten('nonsource') == 'nonresult'
- Popen.assert_called_once_with(['unflatten'],
+ Popen.assert_called_once_with(['@graphviz@/bin/unflatten'],
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
@@ -290,7 +290,7 @@ def test_version_parsefail_mocked(mocker, Popen): # noqa: N803
with pytest.raises(RuntimeError, match=r'nonversioninfo'):
version()
- Popen.assert_called_once_with(['dot', '-V'],
+ Popen.assert_called_once_with(['@graphviz@/bin/dot', '-V'],
stdout=subprocess.PIPE,
stderr=subprocess.STDOUT,
startupinfo=mocker.ANY)
@@ -312,7 +312,7 @@ def test_version_mocked(mocker, Popen, stdout, expected): # noqa: N803
assert version() == expected
- Popen.assert_called_once_with(['dot', '-V'],
+ Popen.assert_called_once_with(['@graphviz@/bin/dot', '-V'],
stdout=subprocess.PIPE,
stderr=subprocess.STDOUT,
startupinfo=mocker.ANY)

View file

@ -0,0 +1,89 @@
diff --git a/graphviz/backend/dot_command.py b/graphviz/backend/dot_command.py
index d1903e6..6470d11 100644
--- a/graphviz/backend/dot_command.py
+++ b/graphviz/backend/dot_command.py
@@ -10,7 +10,7 @@ from . import parameters
__all__ = ['command']
#: :class:`pathlib.Path` of layout command (``Path('dot')``).
-DOT_BINARY = pathlib.Path('dot')
+DOT_BINARY = pathlib.Path('@graphviz@/bin/dot')
def command(engine: str, format_: str, *,
diff --git a/graphviz/backend/unflattening.py b/graphviz/backend/unflattening.py
index 5ed25d6..8d2faf8 100644
--- a/graphviz/backend/unflattening.py
+++ b/graphviz/backend/unflattening.py
@@ -11,7 +11,7 @@ from . import execute
__all__ = ['unflatten']
#: :class:`pathlib.Path` of unflatten command (``Path('unflatten')``).
-UNFLATTEN_BINARY = pathlib.Path('unflatten')
+UNFLATTEN_BINARY = pathlib.Path('@graphviz@/bin/unflatten')
def unflatten(source: str,
diff --git a/graphviz/backend/viewing.py b/graphviz/backend/viewing.py
index 6d4a4d1..2cc6cd8 100644
--- a/graphviz/backend/viewing.py
+++ b/graphviz/backend/viewing.py
@@ -54,7 +54,7 @@ def view_darwin(filepath, *, quiet: bool) -> None:
@tools.attach(view, 'freebsd')
def view_unixoid(filepath, *, quiet: bool) -> None:
"""Open filepath in the user's preferred application (linux, freebsd)."""
- cmd = ['xdg-open', filepath]
+ cmd = ['@xdgutils@/bin/xdg-open', filepath]
log.debug('view: %r', cmd)
kwargs = {'stderr': subprocess.DEVNULL} if quiet else {}
subprocess.Popen(cmd, **kwargs)
diff --git a/tests/_common.py b/tests/_common.py
index ab93461..7eaca89 100644
--- a/tests/_common.py
+++ b/tests/_common.py
@@ -10,7 +10,7 @@ __all__ = ['EXPECTED_DOT_BINARY', 'EXPECTED_DEFAULT_ENCODING',
'as_cwd',
'check_startupinfo', 'StartupinfoMatcher']
-EXPECTED_DOT_BINARY = pathlib.Path('dot')
+EXPECTED_DOT_BINARY = pathlib.Path('@graphviz@/bin/dot')
EXPECTED_DEFAULT_ENCODING = 'utf-8'
diff --git a/tests/backend/test_execute.py b/tests/backend/test_execute.py
index 05d6525..78484cb 100644
--- a/tests/backend/test_execute.py
+++ b/tests/backend/test_execute.py
@@ -57,6 +57,7 @@ def test_run_check_input_lines_mocked(mocker, sentinel, mock_popen,
mock_sys_stderr.flush.assert_called_once_with()
+@pytest.mark.skip(reason='empty $PATH has no effect')
@pytest.mark.usefixtures('empty_path')
@pytest.mark.parametrize(
'func, args',
diff --git a/tests/backend/test_unflattening.py b/tests/backend/test_unflattening.py
index 033a4d2..7d52689 100644
--- a/tests/backend/test_unflattening.py
+++ b/tests/backend/test_unflattening.py
@@ -8,7 +8,7 @@ import graphviz
import _common
-EXPECTED_UNFLATTEN_BINARY = pathlib.Path('unflatten')
+EXPECTED_UNFLATTEN_BINARY = pathlib.Path('@graphviz@/bin/unflatten')
@pytest.mark.exe
diff --git a/tests/backend/test_viewing.py b/tests/backend/test_viewing.py
index f5acddb..6b34884 100644
--- a/tests/backend/test_viewing.py
+++ b/tests/backend/test_viewing.py
@@ -25,6 +25,6 @@ def test_view(mocker, mock_platform, mock_popen, mock_startfile, quiet):
if mock_platform == 'darwin':
mock_popen.assert_called_once_with(['open', 'nonfilepath'], **kwargs)
elif mock_platform in ('linux', 'freebsd'):
- mock_popen.assert_called_once_with(['xdg-open', 'nonfilepath'], **kwargs)
+ mock_popen.assert_called_once_with(['@xdgutils@/bin/xdg-open', 'nonfilepath'], **kwargs)
else:
raise RuntimeError

View file

@ -47,6 +47,7 @@ buildPythonPackage rec {
description = "A Python framework that makes developing APIs as simple as possible, but no simpler"; description = "A Python framework that makes developing APIs as simple as possible, but no simpler";
homepage = "https://github.com/hugapi/hug"; homepage = "https://github.com/hugapi/hug";
license = licenses.mit; license = licenses.mit;
# Missing support for later falcon releases
broken = true;
}; };
} }

View file

@ -59,6 +59,9 @@ buildPythonPackage rec {
"test_alpha_is_080" "test_alpha_is_080"
"test_face_and_lines_at_half_visibility" "test_face_and_lines_at_half_visibility"
"test_polygon_fully_inside_image__no_rectangular_shape" "test_polygon_fully_inside_image__no_rectangular_shape"
# flaky due to timing-based assertions
"test_imap_batches_output_buffer_size"
"test_imap_batches_unordered_output_buffer_size"
]; ];
disabledTestPaths = [ disabledTestPaths = [

View file

@ -1,9 +1,16 @@
{ lib, buildPythonPackage, fetchPypi, pythonOlder { lib
, bash
, buildPythonPackage
, chardet
, docker , docker
, entrypoints
, escapism , escapism
, fetchFromGitHub
, iso8601
, jinja2 , jinja2
, pkgs-docker , pkgs-docker
, python-json-logger , python-json-logger
, pythonOlder
, pyyaml , pyyaml
, ruamel_yaml , ruamel_yaml
, semver , semver
@ -12,18 +19,24 @@
}: }:
buildPythonPackage rec { buildPythonPackage rec {
version = "2021.8.0"; version = "2021.08.0";
pname = "jupyter-repo2docker"; pname = "jupyter-repo2docker";
disabled = pythonOlder "3.4"; format = "setuptools";
src = fetchPypi { disabled = pythonOlder "3.6";
inherit pname version;
sha256 = "9d1b3c3ec7944ea6b0a234d6fa77293a2d1ed1c080eba8466aba94f811b3465d"; src = fetchFromGitHub {
owner = "jupyterhub";
repo = "repo2docker";
rev = version;
sha256 = "10hcdag7ivyqyiqrmr9c48zynp8d81ic3px1ffgnaysih7lvkwb6";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [
docker docker
entrypoints
escapism escapism
iso8601
jinja2 jinja2
pkgs-docker pkgs-docker
python-json-logger python-json-logger
@ -33,7 +46,7 @@ buildPythonPackage rec {
traitlets traitlets
]; ];
# tests not packaged with pypi release # Tests require a running Docker instance
doCheck = false; doCheck = false;
pythonImportsCheck = [ pythonImportsCheck = [
@ -44,9 +57,9 @@ buildPythonPackage rec {
]; ];
meta = with lib; { meta = with lib; {
homepage = "https://repo2docker.readthedocs.io/en/latest/"; description = "Turn code repositories into Jupyter enabled Docker Images";
description = "Repo2docker: Turn code repositories into Jupyter enabled Docker Images"; homepage = "https://repo2docker.readthedocs.io/";
license = licenses.bsdOriginal; license = licenses.bsdOriginal;
maintainers = [ maintainers.costrouc ]; maintainers = with maintainers; [ costrouc ];
}; };
} }

View file

@ -5,6 +5,7 @@
, mock , mock
, nose2 , nose2
, python , python
, pythonOlder
, requests , requests
, zope_interface , zope_interface
}: }:
@ -14,6 +15,8 @@ buildPythonPackage rec {
version = "1.1.0"; version = "1.1.0";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.9";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "1lfqa9admhvdv71f528jmz2wl0i5cv77v6l64px2pm4zqr9ckkjx"; sha256 = "1lfqa9admhvdv71f528jmz2wl0i5cv77v6l64px2pm4zqr9ckkjx";

View file

@ -0,0 +1,41 @@
{ lib
, aiohttp
, async-timeout
, buildPythonPackage
, fetchFromGitHub
, pythonOlder
}:
buildPythonPackage rec {
pname = "mill-local";
version = "0.1.0";
format = "setuptools";
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "Danielhiversen";
repo = "pyMillLocal";
rev = version;
sha256 = "0q0frwj9yxdmqi5axl7gxirfflgn8xh1932c6lhp9my2v1d0gdrk";
};
propagatedBuildInputs = [
aiohttp
async-timeout
];
# Project has no tests
doCheck = false;
pythonImportsCheck = [
"mill_local"
];
meta = with lib; {
description = "Python module to communicate locally with Mill heaters";
homepage = "https://github.com/Danielhiversen/pyMillLocal";
license = with licenses; [ mit ];
maintainers = with maintainers; [ fab ];
};
}

View file

@ -6,12 +6,12 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "nbclient"; pname = "nbclient";
version = "0.5.4"; version = "0.5.8";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "6c8ad36a28edad4562580847f9f1636fe5316a51a323ed85a24a4ad37d4aefce"; sha256 = "sha256-NPUsycuDGl2MzXAxU341THXcYaJEh/mYcS0Sid4yCiU=";
}; };
inherit doCheck; inherit doCheck;
@ -22,5 +22,6 @@ buildPythonPackage rec {
homepage = "https://github.com/jupyter/nbclient"; homepage = "https://github.com/jupyter/nbclient";
description = "A client library for executing notebooks"; description = "A client library for executing notebooks";
license = licenses.bsd3; license = licenses.bsd3;
maintainers = [ maintainers.erictapen ];
}; };
} }

View file

@ -12,14 +12,16 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "nettigo-air-monitor"; pname = "nettigo-air-monitor";
version = "1.1.1"; version = "1.2.0";
disabled = pythonOlder "3.6"; format = "setuptools";
disabled = pythonOlder "3.8";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "bieniu"; owner = "bieniu";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-OIB1d6XtstUr5P0q/dmyJS7+UbtkFQIiuSnzwcdP1mE="; sha256 = "sha256-KPgBbYGbKpKEPMxywgRvJcSCEYSUQkiPEFqj+bB0g1s=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [
@ -41,7 +43,9 @@ buildPythonPackage rec {
--replace "--cov --cov-report term-missing " "" --replace "--cov --cov-report term-missing " ""
''; '';
pythonImportsCheck = [ "nettigo_air_monitor" ]; pythonImportsCheck = [
"nettigo_air_monitor"
];
meta = with lib; { meta = with lib; {
description = "Python module to get air quality data from Nettigo Air Monitor devices"; description = "Python module to get air quality data from Nettigo Air Monitor devices";

View file

@ -8,15 +8,16 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "open-garage"; pname = "open-garage";
version = "0.1.6"; version = "0.2.0";
format = "setuptools";
disabled = pythonOlder "3.5"; disabled = pythonOlder "3.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Danielhiversen"; owner = "Danielhiversen";
repo = "pyOpenGarage"; repo = "pyOpenGarage";
rev = version; rev = version;
sha256 = "sha256-vm51Fjej0OQ7LftisS/tsnxZxa5c/j7eGIROMsEcXNE="; sha256 = "sha256-iJ7HcJhpTceFpHTUdNZOYDuxUWZGWPmZ9lxD3CyGvk8=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View file

@ -8,12 +8,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "pg8000"; pname = "pg8000";
version = "1.22.0"; version = "1.22.1";
format = "setuptools";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "c5172252fc92142ec104cd5e7231be4580a1a0a814403707bafbf7bb8383a29a"; sha256 = "sha256-/WmtWvJ4HllgjLP02WayNNlhxi8JPt0xlKxF32W40dQ=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [
@ -23,7 +25,10 @@ buildPythonPackage rec {
# Tests require a running PostgreSQL instance # Tests require a running PostgreSQL instance
doCheck = false; doCheck = false;
pythonImportsCheck = [ "pg8000" ];
pythonImportsCheck = [
"pg8000"
];
meta = with lib; { meta = with lib; {
description = "Python driver for PostgreSQL"; description = "Python driver for PostgreSQL";

View file

@ -0,0 +1,34 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, pythonOlder
}:
buildPythonPackage rec {
pname = "pybalboa";
version = "0.13";
format = "setuptools";
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "garbled1";
repo = pname;
rev = version;
sha256 = "0aw5jxpsvzyx05y1mg8d63lxx1i607yb6x19n9jil5wfis95m8pd";
};
# Project has no tests
doCheck = false;
pythonImportsCheck = [
"pybalboa"
];
meta = with lib; {
description = " Python module to interface with a Balboa Spa";
homepage = "https://github.com/garbled1/pybalboa";
license = licenses.asl20;
maintainers = with maintainers; [ fab ];
};
}

View file

@ -0,0 +1,52 @@
{ lib
, aiohttp
, aresponses
, buildPythonPackage
, fetchFromGitHub
, pytestCheckHook
, pytest-asyncio
, pythonOlder
}:
buildPythonPackage rec {
pname = "pylaunches";
version = "1.2.0";
format = "setuptools";
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "ludeeus";
repo = pname;
rev = version;
sha256 = "0mczxkwczyh9kva4xzpmnawy0hjha1fdrwj6igip9w5z1q48zs49";
};
propagatedBuildInputs = [
aiohttp
];
checkInputs = [
aresponses
pytestCheckHook
pytest-asyncio
];
postPatch = ''
# Upstream doesn't set version in the repo
substituteInPlace setup.py \
--replace 'version="main",' 'version="${version}",' \
--replace ', "pytest-runner"' ""
'';
pythonImportsCheck = [
"pylaunches"
];
meta = with lib; {
description = "Python module to get information about upcoming space launches";
homepage = "https://github.com/ludeeus/pylaunches";
license = licenses.mit;
maintainers = with maintainers; [ fab ];
};
}

View file

@ -9,14 +9,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "pymetno"; pname = "pymetno";
version = "0.8.3"; version = "0.9.0";
format = "setuptools"; format = "setuptools";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Danielhiversen"; owner = "Danielhiversen";
repo = "PyMetno"; repo = "PyMetno";
rev = version; rev = version;
sha256 = "sha256-dvZz+wv9B07yKM4E4fQ9VQOgeil9KxZxcGk6D0kWY4g="; sha256 = "sha256-2LNDFQObGqxrzswnqbmvCGLxEI0j+cIdv8o+RZM/7sM=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [
@ -30,7 +30,7 @@ buildPythonPackage rec {
"metno" "metno"
]; ];
# no tests # Project has no tests
doCheck = false; doCheck = false;
meta = with lib; { meta = with lib; {

View file

@ -1,36 +1,18 @@
{ lib, fetchpatch, fetchFromGitHub, buildPythonPackage, isPy3k, { lib, fetchFromGitHub, buildPythonPackage, isPy3k,
isodate, lxml, xmlsec, freezegun }: isodate, lxml, xmlsec, freezegun }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "python3-saml"; pname = "python3-saml";
version = "1.10.1"; version = "1.12.0";
disabled = !isPy3k; disabled = !isPy3k;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "onelogin"; owner = "onelogin";
repo = "python3-saml"; repo = "python3-saml";
rev = "v${version}"; rev = "v${version}";
sha256 = "1yk02xq90bm7p6k091av6gapb5h2ccxzgrbm03sj2x8h0wff9s8k"; sha256 = "sha256-VPUsjuo4FIes8ti0tkR0kT3J3RdUt1wtl4QEahVsc2c=";
}; };
# Remove both patches on update
patches = [
# Remove the dependency on defusedxml
#
# This patch is already merged upstream and does not introduce any
# functionality changes.
(fetchpatch {
url = "https://github.com/onelogin/python3-saml/commit/4b6c4b1f2ed3f6eab70ff4391e595b808ace168c.patch";
sha256 = "sha256-KHyAoX3our3Rz2z4xo0lTBB1XOGuC3Pe+lUDCzK5WQI=";
})
# Update expiry dates for test response XMLs
(fetchpatch {
url = "https://github.com/onelogin/python3-saml/commit/05611bbf6d7d8313adb9c77ff88a9210333ccc38.patch";
sha256 = "sha256-62TwgCXDFYsZIAeqAysJRziMvhUVhGzta/C2wS3v4HY=";
})
];
propagatedBuildInputs = [ propagatedBuildInputs = [
isodate lxml xmlsec isodate lxml xmlsec
]; ];

View file

@ -1,4 +1,5 @@
{ lib { lib
, black
, buildPythonPackage , buildPythonPackage
, fetchPypi , fetchPypi
, cachecontrol , cachecontrol
@ -8,15 +9,19 @@
, rdflib-jsonld , rdflib-jsonld
, ruamel_yaml , ruamel_yaml
, pytestCheckHook , pytestCheckHook
, pythonOlder
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "schema-salad"; pname = "schema-salad";
version = "8.2.20210918131710"; version = "8.2.20211104054942";
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "464180407f49a3533cd5a5bc7db9254769bc77595ea00562bbe4a50493f7f445"; sha256 = "sha256-1crKyAON8iZBYxP6bhj0MxV3fSpnCh3Lqp8x91KLBT8=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [
@ -28,13 +33,20 @@ buildPythonPackage rec {
ruamel_yaml ruamel_yaml
]; ];
checkInputs = [ pytestCheckHook ]; checkInputs = [
black
pytestCheckHook
];
disabledTests = [ disabledTests = [
# setup for these tests requires network access # setup for these tests requires network access
"test_secondaryFiles" "test_secondaryFiles"
"test_outputBinding" "test_outputBinding"
]; ];
pythonImportsCheck = [ "schema_salad" ];
pythonImportsCheck = [
"schema_salad"
];
meta = with lib; { meta = with lib; {
description = "Semantic Annotations for Linked Avro Data"; description = "Semantic Annotations for Linked Avro Data";

View file

@ -0,0 +1,17 @@
diff --git a/skimage/data/setup.py b/skimage/data/setup.py
index 528e9c284ce..ba0e155559c 100644
--- a/skimage/data/setup.py
+++ b/skimage/data/setup.py
@@ -11,7 +11,11 @@ def configuration(parent_package='', top_path=None):
# further notice.
# Testing data and additional datasets should only
# be made available via pooch
- config.add_data_files(*legacy_datasets)
+ # Nix patch: add ALL images to facilitate testing of a fully-built package
+ from pathlib import Path
+ config.add_data_files(
+ *(path.name for path in Path(__file__).parent.glob("*") if path.suffix != ".py")
+ )
# It seems hard to create a consistent hash for README.txt since
# the line endings keep getting converted
config.add_data_files('README.txt')

View file

@ -1,6 +1,7 @@
{ lib { lib
, fetchPypi , fetchFromGitHub
, buildPythonPackage , buildPythonPackage
, python
, cython , cython
, numpy , numpy
, scipy , scipy
@ -11,20 +12,26 @@
, pywavelets , pywavelets
, dask , dask
, cloudpickle , cloudpickle
, pytest
, imageio , imageio
, tifffile , tifffile
, pytestCheckHook
}: }:
buildPythonPackage rec { let
installedPackageRoot = "${builtins.placeholder "out"}/${python.sitePackages}";
in buildPythonPackage rec {
pname = "scikit-image"; pname = "scikit-image";
version = "0.18.3"; version = "0.18.3";
src = fetchPypi { src = fetchFromGitHub {
inherit pname version; owner = pname;
sha256 = "ecae99f93f4c5e9b1bf34959f4dc596c41f2f6b2fc407d9d9ddf85aebd3137ca"; repo = pname;
rev = "v${version}";
sha256 = "0a2h3bw5rkk23k4r04qc9maccg00nddssd7lfsps8nhp5agk1vyh";
}; };
patches = [ ./add-testing-data.patch ];
nativeBuildInputs = [ cython ]; nativeBuildInputs = [ cython ];
propagatedBuildInputs = [ propagatedBuildInputs = [
@ -41,14 +48,51 @@ buildPythonPackage rec {
tifffile tifffile
]; ];
checkInputs = [ pytest ]; checkInputs = [ pytestCheckHook ];
# No tests in archive # (1) The package has cythonized modules, whose .so libs will appear only in the wheel, i.e. in nix store;
doCheck = false; # (2) To stop Python from importing the wrong directory, i.e. the one in the build dir, not the one in nix store, `skimage` dir should be removed or renamed;
# (3) Therefore, tests should be run on the installed package in nix store.
# See e.g. https://discourse.nixos.org/t/cant-import-cythonized-modules-at-checkphase/14207 on why the following is needed.
preCheck = ''
rm -r skimage
'';
disabledTestPaths = [
# Requires network access (actually some data is loaded via `skimage._shared.testing.fetch` in the global scope, which calls `pytest.skip` when a network is unaccessible, leading to a pytest collection error).
"${installedPackageRoot}/skimage/filters/rank/tests/test_rank.py"
];
pytestFlagsArray = [ "${installedPackageRoot}" "--pyargs" "skimage" ] ++ builtins.map (testid: "--deselect=" + testid) [
# These tests require network access
"skimage/data/test_data.py::test_skin"
"skimage/data/tests/test_data.py::test_skin"
"skimage/io/tests/test_io.py::test_imread_http_url"
"skimage/restoration/tests/test_rolling_ball.py::test_ndim"
];
# Check cythonized modules
pythonImportsCheck = [
"skimage"
"skimage._shared"
"skimage.draw"
"skimage.feature"
"skimage.restoration"
"skimage.filters"
"skimage.future.graph"
"skimage.graph"
"skimage.io"
"skimage.measure"
"skimage.morphology"
"skimage.transform"
"skimage.util"
"skimage.segmentation"
];
meta = { meta = {
description = "Image processing routines for SciPy"; description = "Image processing routines for SciPy";
homepage = "https://scikit-image.org"; homepage = "https://scikit-image.org";
license = lib.licenses.bsd3; license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ yl3dy ];
}; };
} }

View file

@ -7,13 +7,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "twitterapi"; pname = "twitterapi";
version = "2.7.5"; version = "2.7.7";
format = "setuptools";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "geduldig"; owner = "geduldig";
repo = "TwitterAPI"; repo = "TwitterAPI";
rev = "v${version}"; rev = "v${version}";
sha256 = "1s5q3gzd69syk8khlyy7ap8gpymvhgqrlv3vp6vdmwnaafjvvyy3"; sha256 = "sha256-KEJ0lAg6Zi2vps+ZPTkT6ts87qnIBL9pFe1tPEzviCI=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [
@ -23,7 +24,10 @@ buildPythonPackage rec {
# Tests are interacting with the Twitter API # Tests are interacting with the Twitter API
doCheck = false; doCheck = false;
pythonImportsCheck = [ "TwitterAPI" ];
pythonImportsCheck = [
"TwitterAPI"
];
meta = with lib; { meta = with lib; {
description = "Python wrapper for Twitter's REST and Streaming APIs"; description = "Python wrapper for Twitter's REST and Streaming APIs";

View file

@ -56,13 +56,13 @@ with py.pkgs;
buildPythonApplication rec { buildPythonApplication rec {
pname = "checkov"; pname = "checkov";
version = "2.0.566"; version = "2.0.568";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "bridgecrewio"; owner = "bridgecrewio";
repo = pname; repo = pname;
rev = version; rev = version;
sha256 = "sha256-Eah4dK23jdHK7s0VF8FLd6KJzHP5YpdLGcM7IXgB880="; sha256 = "sha256-V1YHD0+gXx5wLfhrfze6kAgF1egxXbjf4c2zEc/oT1A=";
}; };
nativeBuildInputs = with py.pkgs; [ nativeBuildInputs = with py.pkgs; [

View file

@ -87,6 +87,6 @@ stdenv.mkDerivation rec {
"riscv32-linux" "riscv64-linux" "riscv32-linux" "riscv64-linux"
"alpha-linux" "alpha-linux"
]; ];
broken = stdenv.isDarwin; # https://hydra.nixos.org/build/128521440/nixlog/2 broken = stdenv.isDarwin || stdenv.hostPlatform.isStatic; # https://hydra.nixos.org/build/128521440/nixlog/2
}; };
} }

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