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";
githubId = 857308;
name = "Ellie Hermaszewska";
keys = [{
longkeyid = "rsa4096/0xC8116E3A0C1CA76A";
fingerprint = "FC1D 3E4F CBCA 80DF E870 6397 C811 6E3A 0C1C A76A";
}];
};
extends = {
email = "sharosari@gmail.com";

View file

@ -479,6 +479,16 @@
RandomX benchmark.
</para>
</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>
</section>
<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.
- 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}
- 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/sympa.nix
./services/mail/nullmailer.nix
./services/misc/ananicy.nix
./services/misc/airsonic.nix
./services/misc/ankisyncd.nix
./services/misc/apache-kafka.nix

View file

@ -294,7 +294,7 @@ in
};
submissionOptions = mkOption {
type = types.attrs;
type = with types; attrsOf str;
default = {
smtpd_tls_security_level = "encrypt";
smtpd_sasl_auth_enable = "yes";
@ -312,7 +312,7 @@ in
};
submissionsOptions = mkOption {
type = types.attrs;
type = with types; attrsOf str;
default = {
smtpd_sasl_auth_enable = "yes";
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 {
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" ];
environment.systemPackages = with pkgs; [ clight clightd ];
services.dbus.packages = with pkgs; [ clight clightd ];

View file

@ -146,7 +146,7 @@ in
};
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.
defaultText = literalExpression "pkgs.nixos-artwork.wallpapers.simple-dark-gray-bottom.gnomeFilePath";
description = ''

View file

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

View file

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

View file

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

View file

@ -14,17 +14,17 @@ let
archive_fmt = if stdenv.isDarwin then "zip" else "tar.gz";
sha256 = {
x86_64-linux = "10p815dv86775ky90m96l11026xkhjwvrrhvviqw6g6hsayjqhia";
x86_64-darwin = "1b8d7iw9v172viczdbcdxhf51dyshmx2665prv2pm0ygsy8yii3p";
aarch64-linux = "155sbsmnapnzhkzkaggm80bkarh4l7dbqyhgy40mmdgqpyp3gx1v";
aarch64-darwin = "1pnqjih37r4xqfjfrf8mhsbvmn62358rmf50rackqh5as50siwa2";
armv7l-linux = "00k2fmivbsp8fyh9cy6vr6sq031f6marz4sbj1nrlzdl40wd30bi";
x86_64-linux = "0dwpczbxqy3rsqprdiakmqv6s3jzcg2wqxnf1znarx2qffb4ii9x";
x86_64-darwin = "0si76v80r0vhl76gbdwbykk6acifhifz8sb8wiyiiywkinlxs19w";
aarch64-linux = "0nwgdvvsblh2r72ys2ng5b084wizkdjd00mm73506mgbs8pzcky4";
aarch64-darwin = "0qivq4077g5a4gwkskvvzxaa60w1gpgl67pmdyqn81rina04rdqs";
armv7l-linux = "0myf96s1vdpllnw0vz0rpmyv2pfirv3p8pqgxxnpw860s2c26f2f";
}.${system};
in
callPackage ./generic.nix rec {
# Please backport all compatible updates to the stable release.
# This is important for the extension ecosystem.
version = "1.62.1";
version = "1.62.2";
pname = "vscode";
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";
sha256 = {
x86_64-linux = "1xblrp4xyw2pcifmzjmlbnmk7lhmlj002sfk28kyf1k5wdp54yv9";
x86_64-darwin = "0ivvdxc4hmv9sh8ap0qy8yciz9pjkm1p1j60dh57y4ll6fdzbbrd";
aarch64-linux = "0ssm27i12d7gkq31d1zma4zx5n5mgg0a8pj3sdk9jjjsa68b3pyr";
armv7l-linux = "029shxcwnap28ys6lxml3yiiavw4lhnizf35f0a664vdzy1x5dpv";
x86_64-linux = "19r4883qa73b23xw0fz21bnp9vcvsbn1q77n6pcm1achwpxscrg6";
x86_64-darwin = "0gv4208vcr75wyp6vji1cg6644f5yfwgkgkiav37218v1wjzb4r0";
aarch64-linux = "00jzjapyj96bqqq6pz4mdlihwa5g1izkqcp4lqml7hqvmcqrjyrs";
armv7l-linux = "0daji52lfbgz0by11idai55ip0m859s35vbyvgv655s21aakrs50";
}.${system};
sourceRoot = {
@ -31,7 +31,7 @@ in
# Please backport all compatible updates to the stable release.
# This is important for the extension ecosystem.
version = "1.62.1";
version = "1.62.2";
pname = "vscodium";
executableName = "codium";

View file

@ -1,5 +1,5 @@
{ mkDerivation, lib, fetchFromGitHub, cmake
, qtscript, qtwebengine, gdal, proj, routino, quazip }:
{ mkDerivation, lib, fetchFromGitHub, cmake, substituteAll
, qtscript, qttranslations, qtwebengine, gdal, proj, routino, quazip }:
mkDerivation rec {
pname = "qmapshack";
@ -12,6 +12,14 @@ mkDerivation rec {
sha256 = "1yzgkdjxwyg8ggbxyjwr0zjrx99ckrbz2p2524iii9i7qqn8wfsx";
};
patches = [
# See https://github.com/NixOS/nixpkgs/issues/86054
(substituteAll {
src = ./fix-qttranslations-path.patch;
inherit qttranslations;
})
];
nativeBuildInputs = [ cmake ];
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 {
pname = "calibre";
version = "5.30.0";
version = "5.31.1";
src = fetchurl {
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 = [
# allow for plugin update check, but no calibre version check
(fetchpatch {
name = "0001_only_plugin_update.patch";
url =
"https://sources.debian.org/data/main/c/calibre/${version}%2Bdfsg-1/debian/patches/0001-only-plugin-update.patch";
sha256 = "sha256-aGT8rJ/eQKAkmyHBWdY0ouZuWvDwtLVJU5xY6d3hY3k=";
name = "0001-only-plugin-update.patch";
url = "https://raw.githubusercontent.com/debian-calibre/calibre/debian/${version}%2Bdfsg-1/debian/patches/0001-only-plugin-update.patch";
sha256 = "sha256-dLzO1TWP7Q4nw2a3oN7qlhGCmcA0NKJrZidUnD6hUMA=";
})
]
++ lib.optional (!unrarSupport) ./dont_build_unrar_plugin.patch;

View file

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

View file

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

View file

@ -18,9 +18,9 @@
}
},
"beta": {
"version": "96.0.4664.35",
"sha256": "047zc1hl5iwhrgnypl7r5ga2cx1yz26lf1x5cnvdqmarmmkq380m",
"sha256bin64": "1cw89fafxxhr85x4vzhxv3jkmqfnxjisc7gj9v8y2ixqpn190hjl",
"version": "96.0.4664.45",
"sha256": "01q4fsf2cbx6g9nnaihvc5jj3ap8jq2gf16pnhf7ixzbhgcnm328",
"sha256bin64": "1vaazcrlx0999xd9yp25i9kzb8y8g0yqd28xssw7jqwrhz033wgr",
"deps": {
"gn": {
"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 {
pname = "gmni";
version = "unstable-2021-03-26";
version = "1.0";
src = fetchFromSourcehut {
owner = "~sircmpwn";
repo = "gmni";
rev = "77b73efbcd3ea7ed9e3e4c0aa19d9247e21d3c87";
sha256 = "1wvnzyv7vyddcd39y6q5aflpnnsdl4k4y5aj5ssb7vgkld0h1b7r";
rev = version;
sha256 = "sha256-3MFNAI/SfFigNfitfFs3o9kkz7JeEflMHiH7iJpLfi4=";
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ bearssl scdoc ];
nativeBuildInputs = [ scdoc ];
buildInputs = [ bearssl ];
meta = with lib; {
description = "A Gemini client";
homepage = "https://git.sr.ht/~sircmpwn/gmni";
license = licenses.gpl3Only;
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";
homepage = "https://argo-cd.readthedocs.io/en/stable/";
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 {
pname = "terranix";
@ -11,29 +11,21 @@ stdenv.mkDerivation rec {
sha256 = "sha256-HDiyJGgyDUoLnpL8N+wDm3cM/vEfYYc/p4N1kKH/kLk=";
};
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
mkdir -p $out/{bin,core,modules,lib}
mv bin core modules lib $out/
mv $out/bin/terranix-doc-json $out/bin/.wrapper_terranix-doc-json
# 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
wrapProgram $out/bin/terranix-doc-json \
--prefix PATH : ${lib.makeBinPath [ jq nix ]}
'';
meta = with lib; {
description = "A NixOS like terraform-json generator";
homepage = "https://terranix.org";
license = licenses.gpl3;
platforms = platforms.linux ++ platforms.darwin;
platforms = platforms.unix;
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
running in development environment and try to serve assets from the
source tree, which is not there once build completes. */
version = "0.22.9";
version = "0.22.15";
src = fetchFromGitHub {
owner = "tilt-dev";
repo = pname;
rev = "v${version}";
sha256 = "sha256-h19Cj4ztgypT/j1gB+PbvgDJ7jlJ3CYPEbK62tJeMss=";
sha256 = "sha256-Aim80bg1vGRkiIlVqDa4qOFQ+mwSOL75HOPYQYovYlE=";
};
vendorSha256 = null;

View file

@ -17,10 +17,10 @@ in
mkFranzDerivation' rec {
pname = "ferdi";
name = "Ferdi";
version = "5.6.2";
version = "5.6.3";
src = fetchurl {
url = "https://github.com/getferdi/ferdi/releases/download/v${version}/ferdi_${version}_amd64.deb";
sha256 = "sha256-8rB7SnaIaeCXAaKELNO1CnxpV8TyeKRCVamwpATeia4=";
sha256 = "sha256-cfX3x0ZRxT6sxMm20uL8lKhMbrI/yiCHVrBTPKIlDSE=";
};
extraBuildInputs = [ xorg.libxshmfence ];
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
, nspr, farstream, libXScrnSaver, avahi, dbus, dbus-glib, intltool, libidn
, lib, python3, libICE, libXext, libSM, libgnt, ncurses, cyrus_sasl, openssl
@ -93,7 +93,7 @@ let unwrapped = stdenv.mkDerivation rec {
};
in if plugins == [] then unwrapped
else import ./wrapper.nix {
inherit makeWrapper symlinkJoin plugins;
else callPackage ./wrapper.nix {
inherit plugins;
pidgin = unwrapped;
}

View file

@ -1,4 +1,4 @@
{ symlinkJoin, pidgin, makeWrapper, plugins }:
{ lib, symlinkJoin, pidgin, makeWrapper, plugins }:
let
extraArgs = map (x: x.wrapArgs or "") plugins;
@ -11,10 +11,10 @@ in symlinkJoin {
postBuild = ''
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}
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}
'';
}

View file

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

View file

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

View file

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

View file

@ -1,22 +1,35 @@
{ lib
, python3Packages
, fetchFromGitHub
, git
, nodejs
, python3
}:
python3Packages.buildPythonApplication rec {
python3.pkgs.buildPythonApplication rec {
pname = "cwltool";
version = "3.1.20210628163208";
version = "3.1.20211104071347";
format = "setuptools";
src = python3Packages.fetchPypi {
inherit pname version;
sha256 = "21b885f725420413d2f87eadc5e81c08a9c91beceda89b35d1a702ec4df47e52";
disabled = python3.pythonOlder "3.6";
src = fetchFromGitHub {
owner = "common-workflow-language";
repo = pname;
rev = version;
sha256 = "sha256-tp4SdilW2PKav7b3/BchXYl33W9U0aQH6FPdOhHSvIQ=";
};
postPatch = ''
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
bagit
coloredlogs
@ -24,18 +37,41 @@ python3Packages.buildPythonApplication rec {
prov
psutil
pydot
rdflib
requests
ruamel-yaml
schema-salad
shellescape
typing-extensions
];
doCheck = false; # hard to setup
pythonImportsCheck = [ "cwltool" ];
checkInputs = with python3.pkgs; [
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; {
description = "Common Workflow Language reference implementation";
homepage = "https://www.commonwl.org";
license = with licenses; [ asl20 ];
description = "Common Workflow Language reference implementation";
maintainers = with maintainers; [ veprbl ];
};
}

View file

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

View file

@ -2,22 +2,25 @@
rustPlatform.buildRustPackage rec {
pname = "glitter";
version = "1.4.10";
version = "1.5.1";
src = fetchFromGitHub {
owner = "milo123459";
repo = pname;
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
preCheck = ''
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; {
description = "A git wrapper that allows you to compress multiple commands into one";
homepage = "https://github.com/milo123459/glitter";

View file

@ -1,14 +1,14 @@
{
"version": "14.4.1",
"repo_hash": "0sm44iyn32frc7njg6ypgbcip77mj5c3agn3cihk3lz7z5kr48lm",
"version": "14.4.2",
"repo_hash": "0zhac96b6p7p9vpj083ajfsj5a2fwkv602zxv79cjvpd924c5ws2",
"yarn_hash": "0l0lgcgxaira980a1y550pfsm4f2pw97gi8s5pghyfil2v2lyxyw",
"owner": "gitlab-org",
"repo": "gitlab",
"rev": "v14.4.1-ee",
"rev": "v14.4.2-ee",
"passthru": {
"GITALY_SERVER_VERSION": "14.4.1",
"GITALY_SERVER_VERSION": "14.4.2",
"GITLAB_PAGES_VERSION": "1.46.0",
"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; {
homepage = "http://www.gitlab.com/";
platforms = platforms.linux;
maintainers = with maintainers; [ fpletz globin krav talyz yuka ];
maintainers = with maintainers; [ fpletz globin krav talyz yayayayaka yuka ];
} // (if gitlabEnterprise then
{
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}";
in
@ -33,7 +33,7 @@ buildGoModule {
owner = "gitlab-org";
repo = "gitaly";
rev = "v${version}";
sha256 = "sha256-bATqaB7q3MlyacEiBXdcEDs+xsJUbULVnYTSpEznxFg=";
sha256 = "sha256-MzYUSoG+HjW9o2zn6Q9Pd5NfI7hZkw1xFXOXHbbxJvo=";
};
vendorSha256 = "sha256-9RhPQosen70E9t1iAoc2SeKs9pYMMpMqgXLekWfKNf8=";

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

@ -1,28 +1,36 @@
{ lib, stdenv, fetchFromGitHub, cmake, boost, gtest }:
{ lib, stdenv, fetchFromGitHub, cmake, boost, gtest, zlib }:
stdenv.mkDerivation rec {
pname = "lucene++";
version = "3.0.7";
version = "3.0.8";
src = fetchFromGitHub {
owner = "luceneplusplus";
repo = "LucenePlusPlus";
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 ];
buildInputs = [ boost gtest ];
buildInputs = [ boost gtest zlib ];
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 = {
description = "C++ port of the popular Java Lucene search engine";

View file

@ -17,7 +17,7 @@ in stdenv.mkDerivation {
name = "${pname}-${version}";
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";
};

View file

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

View file

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

View file

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

View file

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

View file

@ -1,6 +1,7 @@
{ stdenv
, lib
, fetchFromGitHub
, fetchpatch
, nixosTests
, substituteAll
, autoreconfHook
@ -38,6 +39,12 @@ stdenv.mkDerivation rec {
src = ./fix-paths.patch;
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 = [

View file

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

View file

@ -21,10 +21,17 @@
, rSrc
, runDemo ? false
, binlore
, sqlite
, util-linux
, gawk
, rlwrap
, gnutar
, bc
}:
let
default_packages = [ bash file findutils gettext ];
parsed_packages = [ coreutils sqlite util-linux gnused gawk findutils rlwrap gnutar bc ];
in
rec {
re_shunit2 = with shunit2;
@ -56,9 +63,6 @@ rec {
"/usr/bin/od" = true;
};
keep = {
# dynamically defined in shunit2:_shunit_mktempFunc
eval = [ "shunit_condition_" "_shunit_test_" "_shunit_prepForSourcing" ];
# variables invoked as commands; long-term goal is to
# resolve the *variable*, but that is complexish, so
# this is where we are...
@ -166,13 +170,14 @@ rec {
# LOGLEVEL="DEBUG";
# default path
RESHOLVE_PATH = "${lib.makeBinPath [ bash file findutils gettext ]}";
RESHOLVE_PATH = "${lib.makeBinPath default_packages}";
# but separate packages for combining as needed
PKG_FILE = "${lib.makeBinPath [ file ]}";
PKG_FINDUTILS = "${lib.makeBinPath [ findutils ]}";
PKG_GETTEXT = "${lib.makeBinPath [ gettext ]}";
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...
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"
, "intelephense"
, "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"
, "javascript-typescript-langserver"
, "joplin"

File diff suppressed because it is too large Load diff

View file

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

View file

@ -6,19 +6,25 @@
buildPythonPackage rec {
pname = "adafruit-platformdetect";
version = "3.17.1";
version = "3.17.2";
format = "setuptools";
src = fetchPypi {
pname = "Adafruit-PlatformDetect";
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
doCheck = false;
pythonImportsCheck = [ "adafruit_platformdetect" ];
pythonImportsCheck = [
"adafruit_platformdetect"
];
meta = with lib; {
description = "Platform detection for use by Adafruit libraries";

View file

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

View file

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

View file

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

View file

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

View file

@ -1,6 +1,8 @@
{ lib, isPy3k, pythonOlder, fetchPypi, buildPythonPackage
, pytest
, pytest-cov
{ lib
, buildPythonPackage
, fetchPypi
, pytestCheckHook
, pythonOlder
, sybil
, typing-extensions
}:
@ -8,7 +10,9 @@
buildPythonPackage rec {
pname = "atpublic";
version = "2.3";
disabled = !isPy3k;
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
@ -20,25 +24,25 @@ buildPythonPackage rec {
];
checkInputs = [
pytest pytest-cov sybil
pytestCheckHook
sybil
];
checkPhase = ''
pytest
postPatch = ''
substituteInPlace setup.cfg \
--replace "--cov=public" ""
'';
pythonImportsCheck = [
"public"
];
meta = with lib; {
homepage = "https://public.readthedocs.io/en/latest/";
description = "A decorator and function which populates a module's __all__ and globals";
description = "Python decorator and function which populates a module's __all__ and globals";
homepage = "https://public.readthedocs.io/";
longDescription = ''
This is a very simple decorator and function which populates a module's
__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;
maintainers = with maintainers; [ eadwu ];

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

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

View file

@ -4,6 +4,7 @@
, fetchFromGitHub
, substituteAll
, graphviz
, xdg-utils
, makeFontsConf
, freefont_ttf
, mock
@ -13,7 +14,7 @@
buildPythonPackage rec {
pname = "graphviz";
version = "0.17";
version = "0.18";
disabled = pythonOlder "3.6";
@ -22,13 +23,14 @@ buildPythonPackage rec {
owner = "xflr6";
repo = "graphviz";
rev = version;
sha256 = "sha256-K6z2C7hQH2A9bqgRR4MRqxVAH/k2NQBEelb2/6KDUr0=";
sha256 = "sha256-K98CwG+V+EFwzyawVjRwVhbX2FVfoX7dCAD5PXAWTq8=";
};
patches = [
(substituteAll {
src = ./hardcode-graphviz-path.patch;
src = ./paths.patch;
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";
homepage = "https://github.com/hugapi/hug";
license = licenses.mit;
# Missing support for later falcon releases
broken = true;
};
}

View file

@ -59,6 +59,9 @@ buildPythonPackage rec {
"test_alpha_is_080"
"test_face_and_lines_at_half_visibility"
"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 = [

View file

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

View file

@ -5,6 +5,7 @@
, mock
, nose2
, python
, pythonOlder
, requests
, zope_interface
}:
@ -14,6 +15,8 @@ buildPythonPackage rec {
version = "1.1.0";
format = "setuptools";
disabled = pythonOlder "3.9";
src = fetchPypi {
inherit pname version;
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 {
pname = "nbclient";
version = "0.5.4";
version = "0.5.8";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "6c8ad36a28edad4562580847f9f1636fe5316a51a323ed85a24a4ad37d4aefce";
sha256 = "sha256-NPUsycuDGl2MzXAxU341THXcYaJEh/mYcS0Sid4yCiU=";
};
inherit doCheck;
@ -22,5 +22,6 @@ buildPythonPackage rec {
homepage = "https://github.com/jupyter/nbclient";
description = "A client library for executing notebooks";
license = licenses.bsd3;
maintainers = [ maintainers.erictapen ];
};
}

View file

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

View file

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

View file

@ -8,12 +8,14 @@
buildPythonPackage rec {
pname = "pg8000";
version = "1.22.0";
version = "1.22.1";
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "c5172252fc92142ec104cd5e7231be4580a1a0a814403707bafbf7bb8383a29a";
sha256 = "sha256-/WmtWvJ4HllgjLP02WayNNlhxi8JPt0xlKxF32W40dQ=";
};
propagatedBuildInputs = [
@ -23,7 +25,10 @@ buildPythonPackage rec {
# Tests require a running PostgreSQL instance
doCheck = false;
pythonImportsCheck = [ "pg8000" ];
pythonImportsCheck = [
"pg8000"
];
meta = with lib; {
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 {
pname = "pymetno";
version = "0.8.3";
version = "0.9.0";
format = "setuptools";
src = fetchFromGitHub {
owner = "Danielhiversen";
repo = "PyMetno";
rev = version;
sha256 = "sha256-dvZz+wv9B07yKM4E4fQ9VQOgeil9KxZxcGk6D0kWY4g=";
sha256 = "sha256-2LNDFQObGqxrzswnqbmvCGLxEI0j+cIdv8o+RZM/7sM=";
};
propagatedBuildInputs = [
@ -30,7 +30,7 @@ buildPythonPackage rec {
"metno"
];
# no tests
# Project has no tests
doCheck = false;
meta = with lib; {

View file

@ -1,36 +1,18 @@
{ lib, fetchpatch, fetchFromGitHub, buildPythonPackage, isPy3k,
{ lib, fetchFromGitHub, buildPythonPackage, isPy3k,
isodate, lxml, xmlsec, freezegun }:
buildPythonPackage rec {
pname = "python3-saml";
version = "1.10.1";
version = "1.12.0";
disabled = !isPy3k;
src = fetchFromGitHub {
owner = "onelogin";
repo = "python3-saml";
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 = [
isodate lxml xmlsec
];

View file

@ -1,4 +1,5 @@
{ lib
, black
, buildPythonPackage
, fetchPypi
, cachecontrol
@ -8,15 +9,19 @@
, rdflib-jsonld
, ruamel_yaml
, pytestCheckHook
, pythonOlder
}:
buildPythonPackage rec {
pname = "schema-salad";
version = "8.2.20210918131710";
version = "8.2.20211104054942";
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
sha256 = "464180407f49a3533cd5a5bc7db9254769bc77595ea00562bbe4a50493f7f445";
sha256 = "sha256-1crKyAON8iZBYxP6bhj0MxV3fSpnCh3Lqp8x91KLBT8=";
};
propagatedBuildInputs = [
@ -28,13 +33,20 @@ buildPythonPackage rec {
ruamel_yaml
];
checkInputs = [ pytestCheckHook ];
checkInputs = [
black
pytestCheckHook
];
disabledTests = [
# setup for these tests requires network access
"test_secondaryFiles"
"test_outputBinding"
];
pythonImportsCheck = [ "schema_salad" ];
pythonImportsCheck = [
"schema_salad"
];
meta = with lib; {
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
, fetchPypi
, fetchFromGitHub
, buildPythonPackage
, python
, cython
, numpy
, scipy
@ -11,20 +12,26 @@
, pywavelets
, dask
, cloudpickle
, pytest
, imageio
, tifffile
, pytestCheckHook
}:
buildPythonPackage rec {
let
installedPackageRoot = "${builtins.placeholder "out"}/${python.sitePackages}";
in buildPythonPackage rec {
pname = "scikit-image";
version = "0.18.3";
src = fetchPypi {
inherit pname version;
sha256 = "ecae99f93f4c5e9b1bf34959f4dc596c41f2f6b2fc407d9d9ddf85aebd3137ca";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "v${version}";
sha256 = "0a2h3bw5rkk23k4r04qc9maccg00nddssd7lfsps8nhp5agk1vyh";
};
patches = [ ./add-testing-data.patch ];
nativeBuildInputs = [ cython ];
propagatedBuildInputs = [
@ -41,14 +48,51 @@ buildPythonPackage rec {
tifffile
];
checkInputs = [ pytest ];
checkInputs = [ pytestCheckHook ];
# No tests in archive
doCheck = false;
# (1) The package has cythonized modules, whose .so libs will appear only in the wheel, i.e. in nix store;
# (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 = {
description = "Image processing routines for SciPy";
homepage = "https://scikit-image.org";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ yl3dy ];
};
}

View file

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

View file

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

View file

@ -87,6 +87,6 @@ stdenv.mkDerivation rec {
"riscv32-linux" "riscv64-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