Merge master into staging-next
This commit is contained in:
commit
d8ae99a0c9
|
@ -136,6 +136,24 @@ in
|
|||
packages = [ atop (lib.mkIf cfg.netatop.enable cfg.netatop.package) ];
|
||||
services =
|
||||
mkService cfg.atopService.enable "atop" [ atop ]
|
||||
// lib.mkIf cfg.atopService.enable {
|
||||
# always convert logs to newer version first
|
||||
# XXX might trigger TimeoutStart but restarting atop.service will
|
||||
# convert remainings logs and start eventually
|
||||
atop.serviceConfig.ExecStartPre = pkgs.writeShellScript "atop-update-log-format" ''
|
||||
set -e -u
|
||||
for logfile in "$LOGPATH"/atop_*
|
||||
do
|
||||
${atop}/bin/atopconvert "$logfile" "$logfile".new
|
||||
# only replace old file if version was upgraded to avoid
|
||||
# false positives for atop-rotate.service
|
||||
if ! ${pkgs.diffutils}/bin/cmp -s "$logfile" "$logfile".new
|
||||
then
|
||||
${pkgs.coreutils}/bin/mv -v -f "$logfile".new "$logfile"
|
||||
fi
|
||||
done
|
||||
'';
|
||||
}
|
||||
// mkService cfg.atopacctService.enable "atopacct" [ atop ]
|
||||
// mkService cfg.netatop.enable "netatop" [ cfg.netatop.package ]
|
||||
// mkService cfg.atopgpu.enable "atopgpu" [ atop ];
|
||||
|
|
|
@ -2,14 +2,13 @@
|
|||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.libreddit;
|
||||
|
||||
args = concatStringsSep " " ([
|
||||
"--port ${toString cfg.port}"
|
||||
"--address ${cfg.address}"
|
||||
] ++ optional cfg.redirect "--redirect-https");
|
||||
let
|
||||
cfg = config.services.libreddit;
|
||||
|
||||
args = concatStringsSep " " ([
|
||||
"--port ${toString cfg.port}"
|
||||
"--address ${cfg.address}"
|
||||
]);
|
||||
in
|
||||
{
|
||||
options = {
|
||||
|
@ -30,12 +29,6 @@ in
|
|||
description = "The port to listen on";
|
||||
};
|
||||
|
||||
redirect = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = "Enable the redirecting to HTTPS";
|
||||
};
|
||||
|
||||
openFirewall = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
|
@ -56,6 +49,31 @@ in
|
|||
AmbientCapabilities = lib.mkIf (cfg.port < 1024) [ "CAP_NET_BIND_SERVICE" ];
|
||||
Restart = "on-failure";
|
||||
RestartSec = "2s";
|
||||
# Hardening
|
||||
CapabilityBoundingSet = if (cfg.port < 1024) then [ "CAP_NET_BIND_SERVICE" ] else [ "" ];
|
||||
DeviceAllow = [ "" ];
|
||||
LockPersonality = true;
|
||||
MemoryDenyWriteExecute = true;
|
||||
PrivateDevices = true;
|
||||
# A private user cannot have process capabilities on the host's user
|
||||
# namespace and thus CAP_NET_BIND_SERVICE has no effect.
|
||||
PrivateUsers = (cfg.port >= 1024);
|
||||
ProcSubset = "pid";
|
||||
ProtectClock = true;
|
||||
ProtectControlGroups = true;
|
||||
ProtectHome = true;
|
||||
ProtectHostname = true;
|
||||
ProtectKernelLogs = true;
|
||||
ProtectKernelModules = true;
|
||||
ProtectKernelTunables = true;
|
||||
ProtectProc = "invisible";
|
||||
RestrictAddressFamilies = [ "AF_INET" "AF_INET6" ];
|
||||
RestrictNamespaces = true;
|
||||
RestrictRealtime = true;
|
||||
RestrictSUIDSGID = true;
|
||||
SystemCallArchitectures = "native";
|
||||
SystemCallFilter = [ "@system-service" "~@privileged" "~@resources" ];
|
||||
UMask = "0077";
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -108,7 +108,7 @@ in {
|
|||
-i ${pkgs.writeText "dmarc-exporter.json.template" json} \
|
||||
-o ''${STATE_DIRECTORY}/dmarc-exporter.json
|
||||
|
||||
exec ${pkgs.prometheus-dmarc-exporter}/bin/prometheus-dmarc-exporter \
|
||||
exec ${pkgs.dmarc-metrics-exporter}/bin/dmarc-metrics-exporter \
|
||||
--configuration /var/lib/prometheus-dmarc-exporter/dmarc-exporter.json \
|
||||
${optionalString cfg.debug "--debug"}
|
||||
''}";
|
||||
|
|
|
@ -6,14 +6,16 @@ with lib;
|
|||
name = "libreddit";
|
||||
meta.maintainers = with maintainers; [ fab ];
|
||||
|
||||
nodes.machine =
|
||||
{ pkgs, ... }:
|
||||
{ services.libreddit.enable = true; };
|
||||
nodes.machine = {
|
||||
services.libreddit.enable = true;
|
||||
# Test CAP_NET_BIND_SERVICE
|
||||
services.libreddit.port = 80;
|
||||
};
|
||||
|
||||
testScript = ''
|
||||
machine.wait_for_unit("libreddit.service")
|
||||
machine.wait_for_open_port("8080")
|
||||
# The service wants to get data from https://www.reddit.com
|
||||
machine.succeed("curl http://localhost:8080/")
|
||||
machine.wait_for_open_port("80")
|
||||
# Query a page that does not require Internet access
|
||||
machine.succeed("curl --fail http://localhost:80/settings")
|
||||
'';
|
||||
})
|
||||
|
|
|
@ -4786,6 +4786,18 @@ final: prev:
|
|||
meta.homepage = "https://github.com/roxma/nvim-completion-manager/";
|
||||
};
|
||||
|
||||
nvim-config-local = buildVimPluginFrom2Nix {
|
||||
pname = "nvim-config-local";
|
||||
version = "2022-03-26";
|
||||
src = fetchFromGitHub {
|
||||
owner = "klen";
|
||||
repo = "nvim-config-local";
|
||||
rev = "af59d6344e555917209f7304709bbff7cea9b5cc";
|
||||
sha256 = "1wg6g4rqpj12sjj0g1qxqgcpkzr7x82lk90lf6qczim97r3lj9hy";
|
||||
};
|
||||
meta.homepage = "https://github.com/klen/nvim-config-local/";
|
||||
};
|
||||
|
||||
nvim-cursorline = buildVimPluginFrom2Nix {
|
||||
pname = "nvim-cursorline";
|
||||
version = "2022-04-15";
|
||||
|
|
|
@ -403,6 +403,7 @@ https://github.com/norcalli/nvim-colorizer.lua/,,
|
|||
https://github.com/terrortylor/nvim-comment/,,
|
||||
https://github.com/hrsh7th/nvim-compe/,,
|
||||
https://github.com/roxma/nvim-completion-manager/,,
|
||||
https://github.com/klen/nvim-config-local/,,
|
||||
https://github.com/yamatsum/nvim-cursorline/,,
|
||||
https://github.com/mfussenegger/nvim-dap/,,
|
||||
https://github.com/rcarriga/nvim-dap-ui/,,
|
||||
|
|
|
@ -45,13 +45,13 @@ in
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "imagemagick";
|
||||
version = "7.1.0-35";
|
||||
version = "7.1.0-36";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ImageMagick";
|
||||
repo = "ImageMagick";
|
||||
rev = version;
|
||||
hash = "sha256-KLS7gKUVeOAA89Kfrk07JzSXEF6TH6AgfheECbWi0lE=";
|
||||
hash = "sha256-fl83O3vVHp12+Vj3WT0NOWe5a6ufmtFlxVlbUhIzfB0=";
|
||||
};
|
||||
|
||||
outputs = [ "out" "dev" "doc" ]; # bin/ isn't really big
|
||||
|
|
|
@ -2,8 +2,10 @@
|
|||
, mkDerivation
|
||||
, fetchFromGitHub
|
||||
, fetchurl
|
||||
, povray
|
||||
, qmake
|
||||
, qttools
|
||||
, substituteAll
|
||||
, zlib
|
||||
}:
|
||||
|
||||
|
@ -14,26 +16,35 @@ set the variable LEOCAD_LIB=/path/to/libs/ or use option -l /path/to/libs/
|
|||
|
||||
let
|
||||
parts = fetchurl {
|
||||
url = "https://web.archive.org/web/20190715142541/https://www.ldraw.org/library/updates/complete.zip";
|
||||
url = "https://web.archive.org/web/20210705153544/https://www.ldraw.org/library/updates/complete.zip";
|
||||
sha256 = "sha256-PW3XCbFwRaNkx4EgCnl2rXH7QgmpNgjTi17kZ5bladA=";
|
||||
};
|
||||
|
||||
in
|
||||
mkDerivation rec {
|
||||
pname = "leocad";
|
||||
version = "21.03";
|
||||
version = "21.06";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "leozide";
|
||||
repo = "leocad";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-69Ocfk5dBXwcRqAZWEP9Xg41o/tAQo76dIOk9oYhCUE=";
|
||||
sha256 = "1ifbxngkbmg6d8vv08amxbnfvlyjdwzykrjp98lbwvgb0b843ygq";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ qmake qttools ];
|
||||
|
||||
buildInputs = [ zlib ];
|
||||
|
||||
propagatedBuildInputs = [ povray ];
|
||||
|
||||
patches = [
|
||||
(substituteAll {
|
||||
src = ./povray.patch;
|
||||
inherit povray;
|
||||
})
|
||||
];
|
||||
|
||||
qmakeFlags = [
|
||||
"INSTALL_PREFIX=${placeholder "out"}"
|
||||
"DISABLE_UPDATE_CHECK=1"
|
||||
|
|
72
pkgs/applications/graphics/leocad/povray.patch
Normal file
72
pkgs/applications/graphics/leocad/povray.patch
Normal file
|
@ -0,0 +1,72 @@
|
|||
From 6e7dd2c763e2cc79db4cd7173921a4e72ce9b95e Mon Sep 17 00:00:00 2001
|
||||
From: Elias Probst <mail@eliasprobst.eu>
|
||||
Date: Tue, 5 Oct 2021 02:55:18 +0200
|
||||
Subject: [PATCH] Don't use configurable POV-ray path.
|
||||
|
||||
Once the POV-ray path is configurable, it'll be written to the LeoCAD
|
||||
profile, which will break upon the next update of POV-ray which will
|
||||
have a different Nix store path.
|
||||
|
||||
Signed-off-by: Elias Probst <mail@eliasprobst.eu>
|
||||
---
|
||||
common/lc_application.cpp | 1 -
|
||||
common/lc_profile.cpp | 2 +-
|
||||
qt/lc_qpreferencesdialog.cpp | 3 ++-
|
||||
qt/lc_renderdialog.cpp | 2 +-
|
||||
4 files changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/common/lc_application.cpp b/common/lc_application.cpp
|
||||
index cbdec82e..21974510 100644
|
||||
--- a/common/lc_application.cpp
|
||||
+++ b/common/lc_application.cpp
|
||||
@@ -1267,7 +1267,6 @@ void lcApplication::ShowPreferencesDialog()
|
||||
lcSetProfileString(LC_PROFILE_DEFAULT_AUTHOR_NAME, Options.DefaultAuthor);
|
||||
lcSetProfileString(LC_PROFILE_PARTS_LIBRARY, Options.LibraryPath);
|
||||
lcSetProfileString(LC_PROFILE_MINIFIG_SETTINGS, Options.MinifigSettingsPath);
|
||||
- lcSetProfileString(LC_PROFILE_POVRAY_PATH, Options.POVRayPath);
|
||||
lcSetProfileString(LC_PROFILE_POVRAY_LGEO_PATH, Options.LGEOPath);
|
||||
lcSetProfileString(LC_PROFILE_LANGUAGE, Options.Language);
|
||||
lcSetProfileInt(LC_PROFILE_CHECK_UPDATES, Options.CheckForUpdates);
|
||||
diff --git a/common/lc_profile.cpp b/common/lc_profile.cpp
|
||||
index 1975b586..911c4fb0 100644
|
||||
--- a/common/lc_profile.cpp
|
||||
+++ b/common/lc_profile.cpp
|
||||
@@ -132,7 +132,7 @@ static lcProfileEntry gProfileEntries[LC_NUM_PROFILE_KEYS] =
|
||||
lcProfileEntry("HTML", "ImageWidth", 640), // LC_PROFILE_HTML_IMAGE_WIDTH
|
||||
lcProfileEntry("HTML", "ImageHeight", 480), // LC_PROFILE_HTML_IMAGE_HEIGHT
|
||||
|
||||
- lcProfileEntry("POVRay", "Path", "/usr/bin/povray"), // LC_PROFILE_POVRAY_PATH
|
||||
+ lcProfileEntry("POVRay", "Path", "@povray@/bin/povray"), // LC_PROFILE_POVRAY_PATH
|
||||
lcProfileEntry("POVRay", "LGEOPath", ""), // LC_PROFILE_POVRAY_LGEO_PATH
|
||||
lcProfileEntry("POVRay", "Width", 1280), // LC_PROFILE_POVRAY_WIDTH
|
||||
lcProfileEntry("POVRay", "Height", 720), // LC_PROFILE_POVRAY_HEIGHT
|
||||
diff --git a/qt/lc_qpreferencesdialog.cpp b/qt/lc_qpreferencesdialog.cpp
|
||||
index 89f86aad..c239763f 100644
|
||||
--- a/qt/lc_qpreferencesdialog.cpp
|
||||
+++ b/qt/lc_qpreferencesdialog.cpp
|
||||
@@ -55,7 +55,8 @@ lcQPreferencesDialog::lcQPreferencesDialog(QWidget* Parent, lcPreferencesDialogO
|
||||
ui->partsLibrary->setText(mOptions->LibraryPath);
|
||||
ui->ColorConfigEdit->setText(mOptions->ColorConfigPath);
|
||||
ui->MinifigSettingsEdit->setText(mOptions->MinifigSettingsPath);
|
||||
- ui->povrayExecutable->setText(mOptions->POVRayPath);
|
||||
+ ui->povrayExecutable->hide();
|
||||
+ ui->povrayExecutableBrowse->hide();
|
||||
ui->lgeoPath->setText(mOptions->LGEOPath);
|
||||
ui->authorName->setText(mOptions->DefaultAuthor);
|
||||
ui->mouseSensitivity->setValue(mOptions->Preferences.mMouseSensitivity);
|
||||
diff --git a/qt/lc_renderdialog.cpp b/qt/lc_renderdialog.cpp
|
||||
index bd8a9102..96794738 100644
|
||||
--- a/qt/lc_renderdialog.cpp
|
||||
+++ b/qt/lc_renderdialog.cpp
|
||||
@@ -184,7 +184,7 @@ void lcRenderDialog::on_RenderButton_clicked()
|
||||
#endif
|
||||
|
||||
#ifdef Q_OS_LINUX
|
||||
- POVRayPath = lcGetProfileString(LC_PROFILE_POVRAY_PATH);
|
||||
+ POVRayPath = QDir::cleanPath(QLatin1String("@povray@/bin/povray"));
|
||||
Arguments.append("+FN");
|
||||
Arguments.append("-D");
|
||||
#endif
|
||||
--
|
||||
2.33.0
|
||||
|
|
@ -15,12 +15,12 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "mkgmap";
|
||||
version = "4902";
|
||||
version = "4904";
|
||||
|
||||
src = fetchsvn {
|
||||
url = "https://svn.mkgmap.org.uk/mkgmap/mkgmap/trunk";
|
||||
rev = version;
|
||||
sha256 = "sha256-djqa6loaFUYfAhgmF6Lm+4M4Xgzyiw1bXqK4XWqT/tY=";
|
||||
sha256 = "sha256-43gJkpk19Ef3vUbRNt3VDstxCLJl6smsAjtcrovGjEE=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
|
|
@ -29,7 +29,6 @@ buildGoModule rec {
|
|||
doCheck = !stdenv.isDarwin;
|
||||
|
||||
meta = with lib; {
|
||||
broken = (stdenv.isLinux && stdenv.isAarch64);
|
||||
description = "CloudFlare Tunnel daemon (and DNS-over-HTTPS client)";
|
||||
homepage = "https://www.cloudflare.com/products/tunnel";
|
||||
license = licenses.asl20;
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "dnscontrol";
|
||||
version = "3.16.1";
|
||||
version = "3.16.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "StackExchange";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-WnUOHUGIALHd0Ne+WzturRxomznpgVjVLBM1wvVAA4M=";
|
||||
sha256 = "sha256-lzE35PT0QLlZ2jftXpDDvr4S3zD1DOpZVXrGGnzvpc8=";
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-fjmKBRkXZQkN6fofy+H7DS76H+J0x6tRgv0fV/2rCwY=";
|
||||
vendorSha256 = "sha256-M+Kzw2ZmKV527rPUJ1codtXWN0/5tmph7GMBTze4C7c=";
|
||||
|
||||
subPackages = [ "." ];
|
||||
|
||||
|
|
|
@ -1,51 +0,0 @@
|
|||
{ stdenv
|
||||
, lib
|
||||
, fetchurl
|
||||
, undmg
|
||||
}:
|
||||
|
||||
let
|
||||
appName = "LibreOffice.app";
|
||||
version = "7.2.5";
|
||||
dist = {
|
||||
aarch64-darwin = {
|
||||
arch = "aarch64";
|
||||
sha256 = "bdbcb9a98211f866ca089d440aebcd1d313aa99e8ab4104aae4e65ea3cee74ca";
|
||||
};
|
||||
|
||||
x86_64-darwin = {
|
||||
arch = "x86_64";
|
||||
sha256 = "0b7ef18ed08341ac6c15339fe9a161ad17f6b469009d987cfc7d50c628d12a4e";
|
||||
};
|
||||
}."${stdenv.hostPlatform.system}";
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
inherit version;
|
||||
pname = "libreoffice";
|
||||
src = fetchurl {
|
||||
url = "https://download.documentfoundation.org/libreoffice/stable/${version}/mac/${dist.arch}/LibreOffice_${version}_MacOS_${dist.arch}.dmg";
|
||||
inherit (dist) sha256;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ undmg ];
|
||||
sourceRoot = "${appName}";
|
||||
dontPatch = true;
|
||||
dontConfigure = true;
|
||||
dontBuild = true;
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstallPhase
|
||||
mkdir -p $out/{Applications/${appName},bin}
|
||||
cp -R . $out/Applications/${appName}
|
||||
ln -s $out/Applications/${appName}/Contents/MacOS/soffice $out/bin
|
||||
runHook postInstallPhase
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Comprehensive, professional-quality productivity suite, a variant of openoffice.org";
|
||||
homepage = "https://libreoffice.org/";
|
||||
license = licenses.lgpl3;
|
||||
maintainers = with maintainers; [ tricktron ];
|
||||
platforms = [ "aarch64-darwin" "x86_64-darwin" ];
|
||||
};
|
||||
}
|
80
pkgs/applications/office/libreoffice/darwin/default.nix
Normal file
80
pkgs/applications/office/libreoffice/darwin/default.nix
Normal file
|
@ -0,0 +1,80 @@
|
|||
{ stdenvNoCC
|
||||
, lib
|
||||
, fetchurl
|
||||
, undmg
|
||||
, writeScript
|
||||
, callPackage
|
||||
}:
|
||||
|
||||
let
|
||||
appName = "LibreOffice.app";
|
||||
scriptName = "soffice";
|
||||
version = "7.3.3";
|
||||
|
||||
dist = {
|
||||
aarch64-darwin = rec {
|
||||
arch = "aarch64";
|
||||
archSuffix = arch;
|
||||
url = "https://download.documentfoundation.org/libreoffice/stable/${version}/mac/${arch}/LibreOffice_${version}_MacOS_${archSuffix}.dmg";
|
||||
sha256 = "50ed3deb8d9c987516e2687ebb865bca15486c69da79f1b6d74381e43f2ec863";
|
||||
};
|
||||
|
||||
x86_64-darwin = rec {
|
||||
arch = "x86_64";
|
||||
archSuffix = "x86-64";
|
||||
url = "https://download.documentfoundation.org/libreoffice/stable/${version}/mac/${arch}/LibreOffice_${version}_MacOS_${archSuffix}.dmg";
|
||||
sha256 = "fb2f9bb90eee34a22af3a2bf2854ef5b76098302b3c41d13d4f543f0d72b994f";
|
||||
};
|
||||
};
|
||||
in
|
||||
stdenvNoCC.mkDerivation {
|
||||
inherit version;
|
||||
pname = "libreoffice";
|
||||
src = fetchurl {
|
||||
inherit (dist.${stdenvNoCC.hostPlatform.system} or
|
||||
(throw "Unsupported system: ${stdenvNoCC.hostPlatform.system}")) url sha256;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ undmg ];
|
||||
sourceRoot = "${appName}";
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $out/{Applications/${appName},bin}
|
||||
cp -R . $out/Applications/${appName}
|
||||
cat > $out/bin/${scriptName} << EOF
|
||||
#!${stdenvNoCC.shell}
|
||||
open -na $out/Applications/${appName} --args "$@"
|
||||
EOF
|
||||
chmod +x $out/bin/${scriptName}
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru.updateScript =
|
||||
let
|
||||
defaultNixFile = builtins.toString ./default.nix;
|
||||
updateNix = builtins.toString ./update.nix;
|
||||
aarch64Url = dist."aarch64-darwin".url;
|
||||
x86_64Url = dist."x86_64-darwin".url;
|
||||
in
|
||||
writeScript "update-libreoffice.sh"
|
||||
''
|
||||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i bash --argstr aarch64Url ${aarch64Url} --argstr x86_64Url ${x86_64Url} --argstr version ${version} ${updateNix}
|
||||
set -eou pipefail
|
||||
|
||||
# reset version first so that both platforms are always updated and in sync
|
||||
update-source-version libreoffice-bin 0 ${lib.fakeSha256} --file=${defaultNixFile} --system=aarch64-darwin
|
||||
update-source-version libreoffice-bin $newVersion $newAarch64Sha256 --file=${defaultNixFile} --system=aarch64-darwin
|
||||
update-source-version libreoffice-bin 0 ${lib.fakeSha256} --file=${defaultNixFile} --system=x86_64-darwin
|
||||
update-source-version libreoffice-bin $newVersion $newX86_64Sha256 --file=${defaultNixFile} --system=x86_64-darwin
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Comprehensive, professional-quality productivity suite, a variant of openoffice.org";
|
||||
homepage = "https://libreoffice.org/";
|
||||
license = licenses.lgpl3;
|
||||
maintainers = with maintainers; [ tricktron ];
|
||||
platforms = [ "x86_64-darwin" "aarch64-darwin" ];
|
||||
};
|
||||
}
|
50
pkgs/applications/office/libreoffice/darwin/update-test.nix
Normal file
50
pkgs/applications/office/libreoffice/darwin/update-test.nix
Normal file
|
@ -0,0 +1,50 @@
|
|||
# run the tests with nixt <absolutePath to parent dir> -v
|
||||
|
||||
{ pkgs ? import <nixpkgs> { }, nixt }:
|
||||
let
|
||||
inherit (import ./update-utils.nix { inherit (pkgs) lib; })
|
||||
extractLatestVersionFromHtml
|
||||
extractSha256FromHtml
|
||||
getLatestStableVersion;
|
||||
in
|
||||
nixt.mkSuite "LibreOffice Updater"
|
||||
{
|
||||
"should extract latest stable version from html" =
|
||||
let
|
||||
latestVersionHtmlMock =
|
||||
''
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
||||
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<title>Index of /libreoffice/stable</title>
|
||||
<link rel="stylesheet" href="/mirrorbrain.css" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<h1>Index of /libreoffice/stable</h1>
|
||||
<table><tr><th> </th><th><a href="?C=N;O=D">Name</a></th><th><a href="?C=M;O=A">Last modified</a></th><th><a href="?C=S;O=A">Size</a></th><th>Metadata</th></tr><tr><th colspan="5"><hr /></th></tr>
|
||||
<tr><td valign="top"> </td><td><a href="/libreoffice/">Parent Directory</a></td><td> </td><td align="right"> - </td><td> </td></tr>
|
||||
<tr><td valign="top"> </td><td><a href="7.2.7/">7.2.7/</a></td><td align="right">10-Mar-2022 11:12 </td><td align="right"> - </td><td> </td></tr>
|
||||
<tr><td valign="top"> </td><td><a href="7.3.3/">7.3.3/</a></td><td align="right">12-May-2022 10:06 </td><td align="right"> - </td><td> </td></tr>
|
||||
<tr><td valign="top"> </td><td><a href="7.2.6/">7.2.6/</a></td><td align="right">05-May-2022 07:57 </td><td align="right"> - </td><td> </td></tr>
|
||||
<tr><th colspan="5"><hr /></th></tr>
|
||||
</table>
|
||||
<address>Apache Server at <a href="mailto:hostmaster@documentfoundation.org">download.documentfoundation.org</a> Port 80</address>
|
||||
<br/><address><a href="http://mirrorbrain.org/">MirrorBrain</a> powered by <a href="http://httpd.apache.org/">Apache</a></address>
|
||||
</body></html>
|
||||
'';
|
||||
|
||||
actual = extractLatestVersionFromHtml latestVersionHtmlMock;
|
||||
|
||||
in
|
||||
"7.3.3" == actual;
|
||||
|
||||
"should extract latest stable version from website" = (builtins.compareVersions getLatestStableVersion "7.3.3") >= 0;
|
||||
|
||||
"should extract sha256 from html" =
|
||||
let
|
||||
sha256Html = "50ed3deb8d9c987516e2687ebb865bca15486c69da79f1b6d74381e43f2ec863 LibreOffice_7.3.3_MacOS_aarch64.dmg\n";
|
||||
actual = extractSha256FromHtml sha256Html;
|
||||
in
|
||||
"50ed3deb8d9c987516e2687ebb865bca15486c69da79f1b6d74381e43f2ec863" == actual;
|
||||
}
|
51
pkgs/applications/office/libreoffice/darwin/update-utils.nix
Normal file
51
pkgs/applications/office/libreoffice/darwin/update-utils.nix
Normal file
|
@ -0,0 +1,51 @@
|
|||
{ lib }:
|
||||
let
|
||||
# extractLatestVersionFromHtml :: String -> String
|
||||
extractLatestVersionFromHtml = htmlString:
|
||||
let
|
||||
majorMinorPatchGroup = "([0-9]+\\.[0-9]+\\.[0-9]+)";
|
||||
splittedVersions = builtins.split "href=\"${majorMinorPatchGroup}" htmlString;
|
||||
stableVersions = builtins.concatLists
|
||||
(builtins.filter (e: builtins.isList e)
|
||||
splittedVersions);
|
||||
in
|
||||
if stableVersions == [ ]
|
||||
then abort "Failed to extract versions from html."
|
||||
else lib.last (builtins.sort builtins.lessThan stableVersions);
|
||||
|
||||
# getHtml :: String -> String
|
||||
getHtml = url:
|
||||
builtins.readFile (builtins.fetchurl url);
|
||||
|
||||
# getLatestStableVersion :: String
|
||||
getLatestStableVersion =
|
||||
extractLatestVersionFromHtml
|
||||
(getHtml "https://download.documentfoundation.org/libreoffice/stable/");
|
||||
|
||||
# extractSha256FromHtml :: String -> String
|
||||
extractSha256FromHtml = htmlString:
|
||||
let
|
||||
sha256 = (builtins.match ".*([0-9a-fA-F]{64}).*" htmlString);
|
||||
in
|
||||
if sha256 == [ ]
|
||||
then abort "Failed to extract sha256 from html."
|
||||
else builtins.head sha256;
|
||||
|
||||
# getSha256 :: String -> String
|
||||
getSha256 = dmgUrl: oldVersion: newVersion:
|
||||
extractSha256FromHtml (getHtml (getSha256Url dmgUrl oldVersion newVersion));
|
||||
|
||||
# getSha256Url :: String -> String -> String -> String
|
||||
getSha256Url = dmgUrl: oldVersion: newVersion:
|
||||
(builtins.replaceStrings [ oldVersion ] [ newVersion ] dmgUrl) + ".sha256";
|
||||
|
||||
in
|
||||
{
|
||||
inherit
|
||||
extractLatestVersionFromHtml
|
||||
getHtml
|
||||
getLatestStableVersion
|
||||
extractSha256FromHtml
|
||||
getSha256
|
||||
getSha256Url;
|
||||
}
|
18
pkgs/applications/office/libreoffice/darwin/update.nix
Normal file
18
pkgs/applications/office/libreoffice/darwin/update.nix
Normal file
|
@ -0,0 +1,18 @@
|
|||
# Impure functions, for passthru.updateScript runtime only
|
||||
{ aarch64Url
|
||||
, x86_64Url
|
||||
, version
|
||||
, pkgs ? import ../../../../../default.nix { }
|
||||
,
|
||||
}:
|
||||
let
|
||||
inherit (import ./update-utils.nix { inherit (pkgs) lib; })
|
||||
getLatestStableVersion
|
||||
getSha256;
|
||||
in
|
||||
pkgs.mkShell rec {
|
||||
buildInputs = [ pkgs.common-updater-scripts ];
|
||||
newVersion = getLatestStableVersion;
|
||||
newAarch64Sha256 = getSha256 aarch64Url version newVersion;
|
||||
newX86_64Sha256 = getSha256 x86_64Url version newVersion;
|
||||
}
|
|
@ -25,11 +25,11 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "PortfolioPerformance";
|
||||
version = "0.57.2";
|
||||
version = "0.58.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/buchen/portfolio/releases/download/${version}/PortfolioPerformance-${version}-linux.gtk.x86_64.tar.gz";
|
||||
sha256 = "sha256-ftLKlNzr46iL/V+P3J1wtoUByGHHl7wrh4xctU4JYkM=";
|
||||
sha256 = "sha256-hm7iIYv4egd79G+LfetFSFLQRnfechJIY3k5Dys63vY=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
48
pkgs/development/python-modules/bite-parser/default.nix
Normal file
48
pkgs/development/python-modules/bite-parser/default.nix
Normal file
|
@ -0,0 +1,48 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, pythonOlder
|
||||
, fetchPypi
|
||||
, poetry-core
|
||||
, pytest-asyncio
|
||||
, pytestCheckHook
|
||||
, typing-extensions
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "bite-parser";
|
||||
version = "0.1.1";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "8021100bfbd6cc6056605361e763a3591efdea38014b3d8aa76c74c74de4ead4";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace 'python = "^3.7,<=3.10"' 'python = "^3.7,<3.11"' \
|
||||
--replace poetry.masonry.api poetry.core.masonry.api
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
poetry-core
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
pytest-asyncio
|
||||
pytestCheckHook
|
||||
typing-extensions
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "bite" ];
|
||||
|
||||
meta = {
|
||||
description = "Asynchronous parser taking incremental bites out of your byte input stream";
|
||||
homepage = "https://github.com/jgosmann/bite-parser";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ dotlambda ];
|
||||
};
|
||||
}
|
|
@ -0,0 +1,66 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, pythonOlder
|
||||
, fetchFromGitHub
|
||||
, more-properties
|
||||
, typing-inspect
|
||||
, toolz
|
||||
, toposort
|
||||
, bson
|
||||
, pytestCheckHook
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "dataclasses-serialization";
|
||||
version = "1.3.1";
|
||||
|
||||
# upstream requires >= 3.6 but only 3.7 includes dataclasses
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "madman-bob";
|
||||
repo = "python-dataclasses-serialization";
|
||||
rev = version;
|
||||
hash = "sha256-jLMR2D01KgzHHRP0zduMBJt8xgBmIquWLCjZYLo2/AA=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
mv pypi_upload/setup.py .
|
||||
substituteInPlace setup.py \
|
||||
--replace "project_root = Path(__file__).parents[1]" "project_root = Path(__file__).parents[0]"
|
||||
|
||||
# dataclasses is included in Python 3.7
|
||||
substituteInPlace requirements.txt \
|
||||
--replace dataclasses ""
|
||||
|
||||
# https://github.com/madman-bob/python-dataclasses-serialization/issues/16
|
||||
sed -i '/(\(Dict\|List\)/d' tests/test_json.py tests/test_bson.py
|
||||
'';
|
||||
|
||||
propagatedBuildInputs = [
|
||||
more-properties
|
||||
typing-inspect
|
||||
toolz
|
||||
toposort
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
bson
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"dataclasses_serialization.bson"
|
||||
"dataclasses_serialization.json"
|
||||
"dataclasses_serialization.serializer_base"
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Serialize/deserialize Python dataclasses to various other data formats";
|
||||
homepage = "https://github.com/madman-bob/python-dataclasses-serialization";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ dotlambda ];
|
||||
};
|
||||
}
|
38
pkgs/development/python-modules/docformatter/default.nix
Normal file
38
pkgs/development/python-modules/docformatter/default.nix
Normal file
|
@ -0,0 +1,38 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, pythonOlder
|
||||
, fetchPypi
|
||||
, untokenize
|
||||
, pytestCheckHook
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "docformatter";
|
||||
version = "1.4";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "064e6d81f04ac96bc0d176cbaae953a0332482b22d3ad70d47c8a7f2732eef6f";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
untokenize
|
||||
];
|
||||
|
||||
checkInputs = [
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "docformatter" ];
|
||||
|
||||
meta = {
|
||||
description = "Formats docstrings to follow PEP 257";
|
||||
homepage = "https://github.com/myint/docformatter";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ dotlambda ];
|
||||
};
|
||||
}
|
|
@ -9,14 +9,14 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "google-re2";
|
||||
version = "0.2.20220401";
|
||||
version = "0.2.20220601";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-v3G+MvFV8gq9LJqj/zrtlTjRm0ZNxTh0UdQSPiwFHY4=";
|
||||
hash = "sha256-zBCYPcqgsyYKTNHAfHrcH6aWfbz6zJwajxHkwRjHeQU=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
|
|
@ -7,14 +7,14 @@
|
|||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
version = "1.0.0";
|
||||
version = "1.0.1";
|
||||
pname = "gpsoauth";
|
||||
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1c4d6a980625b8ab6f6f1cf3e30d9b10a6c61ababb2b60bfe4870649e9c82be0";
|
||||
sha256 = "sha256-wxLyvrNwT3QQHGLCxaIFdRG7OJpECMpynE+lgAGtFk0=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ pycryptodomex requests ];
|
||||
|
|
|
@ -7,12 +7,12 @@
|
|||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
version = "5.3.2";
|
||||
version = "5.4.0";
|
||||
pname = "gspread";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-MZdm2Q2wUFYpP37grSs1UDoaQGg6dYl6KSI5jNIBYoM=";
|
||||
sha256 = "sha256-thcrYvqJnj5BmdLQ6hAItkMFVUugjT06lukSOCT97Eg=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ requests google-auth google-auth-oauthlib ];
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "llfuse";
|
||||
version = "1.4.1";
|
||||
version = "1.4.2";
|
||||
|
||||
disabled = pythonOlder "3.5";
|
||||
|
||||
|
@ -22,7 +22,7 @@ buildPythonPackage rec {
|
|||
owner = "python-llfuse";
|
||||
repo = "python-llfuse";
|
||||
rev = "release-${version}";
|
||||
sha256 = "1dcpdg6cpkmdbyg66fgrylj7dp9zqzg5bf23y6m6673ykgxlv480";
|
||||
hash = "sha256-TnZnv439fLvg0WM96yx0dPSSz8Mrae6GDC9LiLFrgQ8=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cython pkg-config ];
|
||||
|
|
46
pkgs/development/python-modules/more-properties/default.nix
Normal file
46
pkgs/development/python-modules/more-properties/default.nix
Normal file
|
@ -0,0 +1,46 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, pythonOlder
|
||||
, fetchFromGitHub
|
||||
, pytestCheckHook
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "more-properties";
|
||||
version = "1.1.1";
|
||||
|
||||
# upstream requires >= 3.6 but only 3.7 includes dataclasses
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "madman-bob";
|
||||
repo = "python-more-properties";
|
||||
rev = version;
|
||||
hash = "sha256-dKG97rw5IG19m7u3ZDBM2yGScL5cFaKBvGZxPVJaUTE=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
mv pypi_upload/setup.py .
|
||||
substituteInPlace setup.py \
|
||||
--replace "project_root = Path(__file__).parents[1]" "project_root = Path(__file__).parents[0]"
|
||||
|
||||
# dataclasses is included in Python 3.7
|
||||
substituteInPlace requirements.txt \
|
||||
--replace dataclasses ""
|
||||
'';
|
||||
|
||||
checkInputs = [
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "more_properties" ];
|
||||
|
||||
meta = {
|
||||
description = "A collection of property variants";
|
||||
homepage = "https://github.com/madman-bob/python-more-properties";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ dotlambda ];
|
||||
};
|
||||
}
|
|
@ -1,12 +1,12 @@
|
|||
{ lib
|
||||
, fetchFromGitHub
|
||||
}: rec {
|
||||
version = "3.1.0";
|
||||
version = "3.3.0";
|
||||
src = fetchFromGitHub {
|
||||
owner = "openrazer";
|
||||
repo = "openrazer";
|
||||
rev = "v${version}";
|
||||
sha256 = "133szhi0xsfbnjw47xbvyidflxd8fp7pv78vk5wf9s5ch3hpnvxs";
|
||||
sha256 = "1lw2cpj2xzwcsn5igrqj3f6m2v5n6zp1xa9vv3j9f9r2fbb48jcl";
|
||||
};
|
||||
meta = with lib; {
|
||||
homepage = "https://openrazer.github.io/";
|
||||
|
|
|
@ -83,12 +83,19 @@ buildPythonPackage rec {
|
|||
] ++ lib.optionals stdenv.isDarwin [
|
||||
# Requires loopback networking
|
||||
"--deselect=pyarrow/tests/test_ipc.py::test_socket_"
|
||||
"--deselect=pyarrow/tests/test_flight.py::test_never_sends_data"
|
||||
"--deselect=pyarrow/tests/test_flight.py::test_large_descriptor"
|
||||
"--deselect=pyarrow/tests/test_flight.py::test_large_metadata_client"
|
||||
"--deselect=pyarrow/tests/test_flight.py::test_none_action_side_effect"
|
||||
];
|
||||
|
||||
dontUseSetuptoolsCheck = true;
|
||||
preCheck = ''
|
||||
shopt -s extglob
|
||||
rm -r pyarrow/!(tests)
|
||||
'' + lib.optionalString stdenv.isDarwin ''
|
||||
# OSError: [Errno 24] Too many open files
|
||||
ulimit -n 1024
|
||||
'';
|
||||
|
||||
pythonImportsCheck = [ "pyarrow" ] ++ map (module: "pyarrow.${module}") ([
|
||||
|
@ -104,7 +111,6 @@ buildPythonPackage rec {
|
|||
] ++ lib.optionals (!stdenv.isDarwin) [ "plasma" ]);
|
||||
|
||||
meta = with lib; {
|
||||
broken = stdenv.isDarwin;
|
||||
description = "A cross-language development platform for in-memory data";
|
||||
homepage = "https://arrow.apache.org/";
|
||||
license = licenses.asl20;
|
||||
|
|
|
@ -1,22 +1,45 @@
|
|||
{ stdenv, lib, buildPythonPackage, fetchPypi, pkg-config, fuse3, trio, pytestCheckHook, pytest-trio, which, pythonAtLeast }:
|
||||
{ lib
|
||||
, buildPythonPackage
|
||||
, pythonOlder
|
||||
, fetchFromGitHub
|
||||
, cython
|
||||
, pkg-config
|
||||
, fuse3
|
||||
, trio
|
||||
, python
|
||||
, pytestCheckHook
|
||||
, pytest-trio
|
||||
, which
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyfuse3";
|
||||
version = "3.2.1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "22d146dac59a8429115e9a93317975ea54b35e0278044a94d3fac5b4ad5f7e33";
|
||||
disabled = pythonOlder "3.5";
|
||||
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "libfuse";
|
||||
repo = "pyfuse3";
|
||||
rev = "release-${version}";
|
||||
hash = "sha256-JGbp2bSI/Rvyys1xMd2o34KlqqBsV6B9LhuuNopayYA=";
|
||||
};
|
||||
|
||||
disabled = pythonAtLeast "3.10";
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
nativeBuildInputs = [
|
||||
cython
|
||||
pkg-config
|
||||
];
|
||||
|
||||
buildInputs = [ fuse3 ];
|
||||
|
||||
propagatedBuildInputs = [ trio ];
|
||||
|
||||
preBuild = ''
|
||||
${python.pythonForBuild.interpreter} setup.py build_cython
|
||||
'';
|
||||
|
||||
checkInputs = [
|
||||
pytestCheckHook
|
||||
pytest-trio
|
||||
|
@ -27,10 +50,15 @@ buildPythonPackage rec {
|
|||
# Checks if a /usr/bin directory exists, can't work on NixOS
|
||||
disabledTests = [ "test_listdir" ];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"pyfuse3"
|
||||
"pyfuse3_asyncio"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Python 3 bindings for libfuse 3 with async I/O support";
|
||||
homepage = "https://github.com/libfuse/pyfuse3";
|
||||
license = licenses.lgpl2Plus;
|
||||
maintainers = with maintainers; [ nyanloutre ];
|
||||
maintainers = with maintainers; [ nyanloutre dotlambda ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,44 +1,44 @@
|
|||
{ lib
|
||||
, stdenv
|
||||
, buildPythonPackage
|
||||
, fetchPypi
|
||||
, pythonOlder
|
||||
, asdf
|
||||
, astropy
|
||||
, setuptools-scm
|
||||
, astropy-helpers
|
||||
, astropy-extension-helpers
|
||||
, astropy-helpers
|
||||
, beautifulsoup4
|
||||
, buildPythonPackage
|
||||
, drms
|
||||
, fetchPypi
|
||||
, glymur
|
||||
, h5netcdf
|
||||
, hypothesis
|
||||
, lxml
|
||||
, matplotlib
|
||||
, numpy
|
||||
, pandas
|
||||
, parfive
|
||||
, pytestCheckHook
|
||||
, pytest-astropy
|
||||
, pytestCheckHook
|
||||
, pytest-mock
|
||||
, python-dateutil
|
||||
, pythonOlder
|
||||
, scikitimage
|
||||
, scipy
|
||||
, setuptools-scm
|
||||
, sqlalchemy
|
||||
, towncrier
|
||||
, tqdm
|
||||
, zeep
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "sunpy";
|
||||
version = "3.1.6";
|
||||
version = "4.0.0";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-mI5W4EDzTk3GryTQbnmvP+ks3VJDzw4drew9wD9+tIE=";
|
||||
hash = "sha256-01eGYls8eE2e3vzDYXz5D1xQs7pxpmHt89aBKCvVdLg=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -47,32 +47,59 @@ buildPythonPackage rec {
|
|||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
asdf
|
||||
astropy
|
||||
astropy-helpers
|
||||
beautifulsoup4
|
||||
drms
|
||||
glymur
|
||||
h5netcdf
|
||||
matplotlib
|
||||
numpy
|
||||
pandas
|
||||
parfive
|
||||
python-dateutil
|
||||
scikitimage
|
||||
scipy
|
||||
sqlalchemy
|
||||
towncrier
|
||||
tqdm
|
||||
zeep
|
||||
];
|
||||
|
||||
passthru.optional-dependencies = {
|
||||
asdf = [
|
||||
asdf
|
||||
# asdf-astropy
|
||||
];
|
||||
database = [
|
||||
sqlalchemy
|
||||
];
|
||||
image = [
|
||||
scikitimage
|
||||
scipy
|
||||
];
|
||||
net = [
|
||||
beautifulsoup4
|
||||
drms
|
||||
python-dateutil
|
||||
tqdm
|
||||
zeep
|
||||
];
|
||||
jpeg2000 = [
|
||||
glymur
|
||||
lxml
|
||||
];
|
||||
timeseries = [
|
||||
# cdflib
|
||||
h5netcdf
|
||||
# h5py
|
||||
matplotlib
|
||||
pandas
|
||||
];
|
||||
};
|
||||
|
||||
checkInputs = [
|
||||
hypothesis
|
||||
pytest-astropy
|
||||
pytest-mock
|
||||
pytestCheckHook
|
||||
];
|
||||
] ++ passthru.optional-dependencies.asdf
|
||||
++ passthru.optional-dependencies.database
|
||||
++ passthru.optional-dependencies.image
|
||||
++ passthru.optional-dependencies.net
|
||||
++ passthru.optional-dependencies.timeseries;
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.cfg \
|
||||
--replace " --dist no" ""
|
||||
'';
|
||||
|
||||
# darwin has write permission issues
|
||||
doCheck = stdenv.isLinux;
|
||||
|
@ -86,18 +113,16 @@ buildPythonPackage rec {
|
|||
"test_sunpy_warnings_logging"
|
||||
"test_main_nonexisting_module"
|
||||
"test_main_stdlib_module"
|
||||
"test_find_dependencies"
|
||||
];
|
||||
|
||||
disabledTestPaths = [
|
||||
"sunpy/io/special/asdf/schemas/sunpy.org/sunpy/coordinates/frames/helioprojective-1.0.0.yaml"
|
||||
"sunpy/io/special/asdf/schemas/sunpy.org/sunpy/coordinates/frames/heliocentric-1.0.0.yaml"
|
||||
"sunpy/io/special/asdf/schemas/sunpy.org/sunpy/coordinates/frames/heliographic_carrington-*.yaml"
|
||||
"sunpy/io/special/asdf/schemas/sunpy.org/sunpy/coordinates/frames/geocentricearthequatorial-1.0.0.yaml"
|
||||
"sunpy/io/special/asdf/schemas/sunpy.org/sunpy/coordinates/frames/geocentricsolarecliptic-1.0.0.yaml"
|
||||
"sunpy/io/special/asdf/schemas/sunpy.org/sunpy/coordinates/frames/heliocentricearthecliptic-1.0.0.yaml"
|
||||
"sunpy/io/special/asdf/schemas/sunpy.org/sunpy/coordinates/frames/heliocentricinertial-1.0.0.yaml"
|
||||
"sunpy/io/special/asdf/schemas/sunpy.org/sunpy/map/generic_map-1.0.0.yaml"
|
||||
# requires mpl-animators package
|
||||
# Tests are very slow
|
||||
"sunpy/net/tests/test_fido.py"
|
||||
# asdf.extensions plugin issue
|
||||
"sunpy/io/special/asdf/resources/schemas/"
|
||||
"sunpy/io/special/asdf/resources/manifests/sunpy-1.0.0.yaml"
|
||||
# Requires mpl-animators package
|
||||
"sunpy/map/tests/test_compositemap.py"
|
||||
"sunpy/map/tests/test_mapbase.py"
|
||||
"sunpy/map/tests/test_mapsequence.py"
|
||||
|
@ -109,8 +134,12 @@ buildPythonPackage rec {
|
|||
"sunpy/visualization/animator/tests/test_mapsequenceanimator.py"
|
||||
"sunpy/visualization/animator/tests/test_wcs.py"
|
||||
"sunpy/visualization/colormaps/tests/test_cm.py"
|
||||
# requires cdflib package
|
||||
# Requires cdflib package
|
||||
"sunpy/timeseries/tests/test_timeseries_factory.py"
|
||||
# Requires jplephem
|
||||
"sunpy/image/tests/test_transform.py"
|
||||
"sunpy/io/special/asdf/tests/test_coordinate_frames.py"
|
||||
"sunpy/io/special/asdf/tests/test_genericmap.py"
|
||||
# distutils is deprecated
|
||||
"sunpy/io/setup_package.py"
|
||||
];
|
||||
|
|
|
@ -5,12 +5,12 @@
|
|||
|
||||
buildPythonPackage rec {
|
||||
pname = "types-setuptools";
|
||||
version = "57.4.15";
|
||||
version = "57.4.17";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-ZQUozoA1hgKdfxU/Mq7S26prsoiLIzM0r4DXumPtPIc=";
|
||||
sha256 = "sha256-nVVvyvaAihzq1KqkHlwHph8BUqh1gR4SOXOOuk4LexY=";
|
||||
};
|
||||
|
||||
# Module doesn't have tests
|
||||
|
|
80
pkgs/development/python-modules/xsdata/default.nix
Normal file
80
pkgs/development/python-modules/xsdata/default.nix
Normal file
|
@ -0,0 +1,80 @@
|
|||
{ lib
|
||||
, buildPythonPackage
|
||||
, pythonOlder
|
||||
, fetchPypi
|
||||
, click
|
||||
, click-default-group
|
||||
, docformatter
|
||||
, jinja2
|
||||
, toposort
|
||||
, lxml
|
||||
, requests
|
||||
, pytestCheckHook
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "xsdata";
|
||||
version = "22.5";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "701dcda5a4a07df3a642f8fb6f73f0e2e18224d359bcb7f4212b3c29d7af72c2";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace setup.cfg \
|
||||
--replace "--benchmark-skip" ""
|
||||
'';
|
||||
|
||||
passthru.optional-dependencies = {
|
||||
cli = [
|
||||
click
|
||||
click-default-group
|
||||
docformatter
|
||||
jinja2
|
||||
toposort
|
||||
];
|
||||
lxml = [
|
||||
lxml
|
||||
];
|
||||
soap = [
|
||||
requests
|
||||
];
|
||||
};
|
||||
|
||||
checkInputs = [
|
||||
pytestCheckHook
|
||||
] ++ passthru.optional-dependencies.cli
|
||||
++ passthru.optional-dependencies.lxml
|
||||
++ passthru.optional-dependencies.soap;
|
||||
|
||||
disabledTestPaths = [
|
||||
"tests/integration/benchmarks"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"xsdata.formats.dataclass.context"
|
||||
"xsdata.formats.dataclass.models.elements"
|
||||
"xsdata.formats.dataclass.models.generics"
|
||||
"xsdata.formats.dataclass.parsers"
|
||||
"xsdata.formats.dataclass.parsers.handlers"
|
||||
"xsdata.formats.dataclass.parsers.nodes"
|
||||
"xsdata.formats.dataclass.serializers"
|
||||
"xsdata.formats.dataclass.serializers.config"
|
||||
"xsdata.formats.dataclass.serializers.mixins"
|
||||
"xsdata.formats.dataclass.serializers.writers"
|
||||
"xsdata.models.config"
|
||||
"xsdata.utils.text"
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Python XML Binding";
|
||||
homepage = "https://github.com/tefra/xsdata";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ dotlambda ];
|
||||
};
|
||||
}
|
|
@ -3,14 +3,14 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "glpaper";
|
||||
version = "unstable-2020-10-11";
|
||||
version = "unstable-2022-05-15";
|
||||
|
||||
src = fetchFromSourcehut {
|
||||
owner = "~scoopta";
|
||||
repo = pname;
|
||||
vc = "hg";
|
||||
rev = "9e7ec7cd270af330039c395345c7d23c04682267";
|
||||
sha256 = "sha256-yBHRg6eg+PK/ixuM0MBty3RJY9qcemr3Dt+8SAitqnk=";
|
||||
rev = "f89e60b7941fb60f1069ed51af9c5bb4917aab35";
|
||||
sha256 = "sha256-E7FKjt3NL0aAEibfaq+YS2IVvpjNjInA+Rs8SU63/3M=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ meson ninja pkg-config ];
|
||||
|
|
|
@ -1,59 +0,0 @@
|
|||
{ stdenv, lib, fetchurl, buildEnv, makeWrapper
|
||||
, xorg, alsa-lib, dbus, glib, gtk2, atk, pango, freetype, fontconfig
|
||||
, gdk-pixbuf, cairo, nss, nspr, gconf, expat, systemd, libcap
|
||||
, libnotify}:
|
||||
let
|
||||
bits = if stdenv.hostPlatform.system == "x86_64-linux" then "x64"
|
||||
else "ia32";
|
||||
|
||||
nwEnv = buildEnv {
|
||||
name = "nwjs-env";
|
||||
paths = [
|
||||
xorg.libX11 xorg.libXrender glib gtk2 atk pango cairo gdk-pixbuf
|
||||
freetype fontconfig xorg.libXcomposite alsa-lib xorg.libXdamage
|
||||
xorg.libXext xorg.libXfixes nss nspr gconf expat dbus
|
||||
xorg.libXtst xorg.libXi xorg.libXcursor xorg.libXrandr libcap
|
||||
libnotify
|
||||
];
|
||||
|
||||
extraOutputsToInstall = [ "lib" "out" ];
|
||||
};
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
pname = "nwjs";
|
||||
version = "0.12.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://dl.nwjs.io/v${version}/nwjs-v${version}-linux-${bits}.tar.gz";
|
||||
sha256 = if bits == "x64" then
|
||||
"1i5ipn5x188cx54pbbmjj1bz89vvcfx5z1c7pqy2xzglkyb2xsyg" else
|
||||
"117gx6yjbcya64yg2vybcfyp591sid209pg8a33k9afbsmgz684c";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/share/nwjs
|
||||
cp -R * $out/share/nwjs
|
||||
|
||||
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $out/share/nwjs/nw
|
||||
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $out/share/nwjs/nwjc
|
||||
|
||||
ln -s ${lib.getLib systemd}/lib/libudev.so $out/share/nwjs/libudev.so.0
|
||||
|
||||
patchelf --set-rpath "${nwEnv}/lib:${nwEnv}/lib64:${lib.makeLibraryPath [ stdenv.cc.cc ]}:$out/share/nwjs" $out/share/nwjs/nw
|
||||
patchelf --set-rpath "${nwEnv}/lib:${nwEnv}/lib64:$out/share/nwjs" $out/share/nwjs/nwjc
|
||||
|
||||
mkdir -p $out/bin
|
||||
ln -s $out/share/nwjs/nw $out/bin
|
||||
ln -s $out/share/nwjs/nwjc $out/bin
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
||||
meta = with lib; {
|
||||
description = "An app runtime based on Chromium and node.js";
|
||||
homepage = "https://nwjs.io/";
|
||||
platforms = ["i686-linux" "x86_64-linux"];
|
||||
maintainers = [ maintainers.offline ];
|
||||
license = licenses.bsd3;
|
||||
};
|
||||
}
|
|
@ -14,6 +14,12 @@ stdenv.mkDerivation rec {
|
|||
url = "https://github.com/gnif/LookingGlass/commit/a9b5302a517e19d7a2da114acf71ef1e69cfb497.patch";
|
||||
sha256 = "017nxlk2f7kyjp6llwa74dbczdb1jk8v791qld81dxhzkm9dyqqx";
|
||||
stripLen = 1;
|
||||
})
|
||||
++ lib.optional (kernel.kernelAtLeast "5.18") (fetchpatch {
|
||||
name = "kvmfr-5.18.patch";
|
||||
url = "https://github.com/gnif/LookingGlass/commit/c7029f95042fe902843cb6acbfc75889e93dc210.patch";
|
||||
sha256 = "sha256-6DpL17XWj8BKpiBdKdCPC51MWKLIo6PixQ9UaygT2Zg=";
|
||||
stripLen = 1;
|
||||
});
|
||||
|
||||
makeFlags = [
|
||||
|
@ -35,6 +41,6 @@ stdenv.mkDerivation rec {
|
|||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ j-brn ];
|
||||
platforms = [ "x86_64-linux" ];
|
||||
broken = kernel.kernelOlder "5.3" && kernel.kernelAtLeast "5.18";
|
||||
broken = kernel.kernelOlder "5.3";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -41,6 +41,8 @@ stdenv.mkDerivation (common // {
|
|||
runHook postInstall
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = common.meta // {
|
||||
description = "An entirely open source Linux driver that allows you to manage your Razer peripherals on GNU/Linux";
|
||||
broken = kernel.kernelOlder "4.19";
|
||||
|
|
|
@ -1,62 +0,0 @@
|
|||
{ poetry2nix, pkgs, lib }:
|
||||
|
||||
let
|
||||
inherit (poetry2nix.mkPoetryPackages {
|
||||
projectDir = ./.;
|
||||
overrides = [
|
||||
poetry2nix.defaultPoetryOverrides
|
||||
(import ./poetry-git-overlay.nix { inherit pkgs; })
|
||||
(self: super: {
|
||||
dmarc-metrics-exporter = super.dmarc-metrics-exporter.overridePythonAttrs ({ nativeBuildInputs ? [ ], meta ? {}, ... }: {
|
||||
nativeBuildInputs = nativeBuildInputs ++ [ self.poetry ];
|
||||
meta = with lib; meta // {
|
||||
license = licenses.mit;
|
||||
homepage = "https://github.com/jgosmann/dmarc-metrics-exporter/";
|
||||
description = " Export Prometheus metrics from DMARC reports";
|
||||
maintainers = with maintainers; [ ma27 ];
|
||||
};
|
||||
});
|
||||
more-properties = super.more-properties.overridePythonAttrs (old: {
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "madman-bob";
|
||||
repo = "python-more-properties";
|
||||
rev = old.version;
|
||||
sha256 = "sha256-dKG97rw5IG19m7u3ZDBM2yGScL5cFaKBvGZxPVJaUTE=";
|
||||
};
|
||||
postPatch = ''
|
||||
sed -i -e '/dataclasses/d' requirements.txt
|
||||
cp ./pypi_upload/setup.py setup.py
|
||||
substituteInPlace setup.py \
|
||||
--replace "parents[1]" "parents[0]"
|
||||
'';
|
||||
});
|
||||
dataclasses-serialization = super.dataclasses-serialization.overridePythonAttrs (old: {
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "madman-bob";
|
||||
repo = "python-dataclasses-serialization";
|
||||
rev = old.version;
|
||||
sha256 = "sha256-jLMR2D01KgzHHRP0zduMBJt8xgBmIquWLCjZYLo2/AA=";
|
||||
};
|
||||
postPatch = ''
|
||||
sed -i -e '/dataclasses/d' requirements.txt
|
||||
cp ./pypi_upload/setup.py setup.py
|
||||
substituteInPlace setup.py \
|
||||
--replace "parents[1]" "parents[0]"
|
||||
'';
|
||||
});
|
||||
dataclasses = null;
|
||||
bite-parser = super.bite-parser.overridePythonAttrs (old: {
|
||||
nativeBuildInputs = old.nativeBuildInputs ++ [ self.poetry ];
|
||||
});
|
||||
})
|
||||
];
|
||||
}) python;
|
||||
env = python.withPackages (p: [ p.dmarc-metrics-exporter ]);
|
||||
in
|
||||
|
||||
(pkgs.writeShellScriptBin "prometheus-dmarc-exporter" ''
|
||||
export PYTHONPATH="${env}/lib/${env.libPrefix}/site-packages''${PYTHONPATH:+:}''${PYTHONPATH}"
|
||||
exec ${env}/bin/python3 -m dmarc_metrics_exporter "$@"
|
||||
'') // {
|
||||
inherit (python.pkgs.dmarc-metrics-exporter) meta;
|
||||
}
|
|
@ -1,14 +0,0 @@
|
|||
{ pkgs }:
|
||||
self: super: {
|
||||
|
||||
dmarc-metrics-exporter = super.dmarc-metrics-exporter.overridePythonAttrs (
|
||||
_: {
|
||||
src = pkgs.fetchgit {
|
||||
url = "https://github.com/jgosmann/dmarc-metrics-exporter.git";
|
||||
rev = "3f1a0161d7ed51b9de48c056dcbc545b6375e872";
|
||||
sha256 = "18sndv32ig0xq7s42hvkdxbb9qxvycmnrawm3x22cp7zfidgfkh2";
|
||||
};
|
||||
}
|
||||
);
|
||||
|
||||
}
|
|
@ -1,503 +0,0 @@
|
|||
[[package]]
|
||||
name = "asgiref"
|
||||
version = "3.5.0"
|
||||
description = "ASGI specs, helper code, and adapters"
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=3.7"
|
||||
|
||||
[package.dependencies]
|
||||
typing-extensions = {version = "*", markers = "python_version < \"3.8\""}
|
||||
|
||||
[package.extras]
|
||||
tests = ["pytest", "pytest-asyncio", "mypy (>=0.800)"]
|
||||
|
||||
[[package]]
|
||||
name = "bite-parser"
|
||||
version = "0.1.1"
|
||||
description = "Asynchronous parser taking incremental bites out of your byte input stream."
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=3.7,<=3.10"
|
||||
|
||||
[[package]]
|
||||
name = "click"
|
||||
version = "8.0.4"
|
||||
description = "Composable command line interface toolkit"
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=3.6"
|
||||
|
||||
[package.dependencies]
|
||||
colorama = {version = "*", markers = "platform_system == \"Windows\""}
|
||||
importlib-metadata = {version = "*", markers = "python_version < \"3.8\""}
|
||||
|
||||
[[package]]
|
||||
name = "colorama"
|
||||
version = "0.4.4"
|
||||
description = "Cross-platform colored terminal text."
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*"
|
||||
|
||||
[[package]]
|
||||
name = "dataclasses"
|
||||
version = "0.6"
|
||||
description = "A backport of the dataclasses module for Python 3.6"
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = "*"
|
||||
|
||||
[[package]]
|
||||
name = "dataclasses-serialization"
|
||||
version = "1.3.1"
|
||||
description = "Serialize/deserialize Python dataclasses to various other data formats"
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=3.6"
|
||||
|
||||
[package.dependencies]
|
||||
dataclasses = "*"
|
||||
more-properties = ">=1.1.0"
|
||||
toolz = "*"
|
||||
toposort = "*"
|
||||
typing-inspect = "*"
|
||||
|
||||
[[package]]
|
||||
name = "dmarc-metrics-exporter"
|
||||
version = "0.5.1"
|
||||
description = "Export Prometheus metrics from DMARC reports."
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = "^3.7,<3.10"
|
||||
develop = false
|
||||
|
||||
[package.dependencies]
|
||||
bite-parser = "^0.1.1"
|
||||
dataclasses-serialization = "^1.3.1"
|
||||
prometheus_client = "^0.11.0"
|
||||
typing-extensions = "^4.0.1"
|
||||
uvicorn = {version = "^0.15.0", extras = ["standard"]}
|
||||
xsdata = "^21.9"
|
||||
|
||||
[package.source]
|
||||
type = "git"
|
||||
url = "https://github.com/jgosmann/dmarc-metrics-exporter.git"
|
||||
reference = "v0.5.1"
|
||||
resolved_reference = "3f1a0161d7ed51b9de48c056dcbc545b6375e872"
|
||||
|
||||
[[package]]
|
||||
name = "h11"
|
||||
version = "0.13.0"
|
||||
description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1"
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=3.6"
|
||||
|
||||
[package.dependencies]
|
||||
typing-extensions = {version = "*", markers = "python_version < \"3.8\""}
|
||||
|
||||
[[package]]
|
||||
name = "httptools"
|
||||
version = "0.2.0"
|
||||
description = "A collection of framework independent HTTP protocol utils."
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = "*"
|
||||
|
||||
[package.extras]
|
||||
test = ["Cython (==0.29.22)"]
|
||||
|
||||
[[package]]
|
||||
name = "importlib-metadata"
|
||||
version = "4.11.1"
|
||||
description = "Read metadata from Python packages"
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=3.7"
|
||||
|
||||
[package.dependencies]
|
||||
typing-extensions = {version = ">=3.6.4", markers = "python_version < \"3.8\""}
|
||||
zipp = ">=0.5"
|
||||
|
||||
[package.extras]
|
||||
docs = ["sphinx", "jaraco.packaging (>=8.2)", "rst.linker (>=1.9)"]
|
||||
perf = ["ipython"]
|
||||
testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.0.1)", "packaging", "pyfakefs", "flufl.flake8", "pytest-perf (>=0.9.2)", "pytest-black (>=0.3.7)", "pytest-mypy (>=0.9.1)", "importlib-resources (>=1.3)"]
|
||||
|
||||
[[package]]
|
||||
name = "more-properties"
|
||||
version = "1.1.1"
|
||||
description = "A collection of property variants"
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=3.6"
|
||||
|
||||
[package.dependencies]
|
||||
dataclasses = "*"
|
||||
|
||||
[[package]]
|
||||
name = "mypy-extensions"
|
||||
version = "0.4.3"
|
||||
description = "Experimental type system extensions for programs checked with the mypy typechecker."
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = "*"
|
||||
|
||||
[[package]]
|
||||
name = "prometheus-client"
|
||||
version = "0.11.0"
|
||||
description = "Python client for the Prometheus monitoring system."
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
|
||||
|
||||
[package.extras]
|
||||
twisted = ["twisted"]
|
||||
|
||||
[[package]]
|
||||
name = "python-dotenv"
|
||||
version = "0.19.2"
|
||||
description = "Read key-value pairs from a .env file and set them as environment variables"
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=3.5"
|
||||
|
||||
[package.extras]
|
||||
cli = ["click (>=5.0)"]
|
||||
|
||||
[[package]]
|
||||
name = "pyyaml"
|
||||
version = "6.0"
|
||||
description = "YAML parser and emitter for Python"
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=3.6"
|
||||
|
||||
[[package]]
|
||||
name = "toolz"
|
||||
version = "0.11.2"
|
||||
description = "List processing tools and functional utilities"
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=3.5"
|
||||
|
||||
[[package]]
|
||||
name = "toposort"
|
||||
version = "1.7"
|
||||
description = "\"Implements a topological sort algorithm.\""
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = "*"
|
||||
|
||||
[[package]]
|
||||
name = "typing-extensions"
|
||||
version = "4.1.1"
|
||||
description = "Backported and Experimental Type Hints for Python 3.6+"
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=3.6"
|
||||
|
||||
[[package]]
|
||||
name = "typing-inspect"
|
||||
version = "0.7.1"
|
||||
description = "Runtime inspection utilities for typing module."
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = "*"
|
||||
|
||||
[package.dependencies]
|
||||
mypy-extensions = ">=0.3.0"
|
||||
typing-extensions = ">=3.7.4"
|
||||
|
||||
[[package]]
|
||||
name = "uvicorn"
|
||||
version = "0.15.0"
|
||||
description = "The lightning-fast ASGI server."
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = "*"
|
||||
|
||||
[package.dependencies]
|
||||
asgiref = ">=3.4.0"
|
||||
click = ">=7.0"
|
||||
colorama = {version = ">=0.4", optional = true, markers = "sys_platform == \"win32\" and extra == \"standard\""}
|
||||
h11 = ">=0.8"
|
||||
httptools = {version = ">=0.2.0,<0.3.0", optional = true, markers = "extra == \"standard\""}
|
||||
python-dotenv = {version = ">=0.13", optional = true, markers = "extra == \"standard\""}
|
||||
PyYAML = {version = ">=5.1", optional = true, markers = "extra == \"standard\""}
|
||||
typing-extensions = {version = "*", markers = "python_version < \"3.8\""}
|
||||
uvloop = {version = ">=0.14.0,<0.15.0 || >0.15.0,<0.15.1 || >0.15.1", optional = true, markers = "sys_platform != \"win32\" and sys_platform != \"cygwin\" and platform_python_implementation != \"PyPy\" and extra == \"standard\""}
|
||||
watchgod = {version = ">=0.6", optional = true, markers = "extra == \"standard\""}
|
||||
websockets = {version = ">=9.1", optional = true, markers = "extra == \"standard\""}
|
||||
|
||||
[package.extras]
|
||||
standard = ["websockets (>=9.1)", "httptools (>=0.2.0,<0.3.0)", "watchgod (>=0.6)", "python-dotenv (>=0.13)", "PyYAML (>=5.1)", "uvloop (>=0.14.0,!=0.15.0,!=0.15.1)", "colorama (>=0.4)"]
|
||||
|
||||
[[package]]
|
||||
name = "uvloop"
|
||||
version = "0.16.0"
|
||||
description = "Fast implementation of asyncio event loop on top of libuv"
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=3.7"
|
||||
|
||||
[package.extras]
|
||||
dev = ["Cython (>=0.29.24,<0.30.0)", "pytest (>=3.6.0)", "Sphinx (>=4.1.2,<4.2.0)", "sphinxcontrib-asyncio (>=0.3.0,<0.4.0)", "sphinx-rtd-theme (>=0.5.2,<0.6.0)", "aiohttp", "flake8 (>=3.9.2,<3.10.0)", "psutil", "pycodestyle (>=2.7.0,<2.8.0)", "pyOpenSSL (>=19.0.0,<19.1.0)", "mypy (>=0.800)"]
|
||||
docs = ["Sphinx (>=4.1.2,<4.2.0)", "sphinxcontrib-asyncio (>=0.3.0,<0.4.0)", "sphinx-rtd-theme (>=0.5.2,<0.6.0)"]
|
||||
test = ["aiohttp", "flake8 (>=3.9.2,<3.10.0)", "psutil", "pycodestyle (>=2.7.0,<2.8.0)", "pyOpenSSL (>=19.0.0,<19.1.0)", "mypy (>=0.800)"]
|
||||
|
||||
[[package]]
|
||||
name = "watchgod"
|
||||
version = "0.7"
|
||||
description = "Simple, modern file watching and code reload in python."
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=3.5"
|
||||
|
||||
[[package]]
|
||||
name = "websockets"
|
||||
version = "10.2"
|
||||
description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)"
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=3.7"
|
||||
|
||||
[[package]]
|
||||
name = "xsdata"
|
||||
version = "21.12"
|
||||
description = "Python XML Binding"
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=3.6"
|
||||
|
||||
[package.dependencies]
|
||||
importlib-metadata = {version = "*", markers = "python_version < \"3.8\""}
|
||||
|
||||
[package.extras]
|
||||
cli = ["click (>=5.0)", "click-default-group (>=1.2)", "docformatter", "jinja2 (>=2.10)", "toposort (>=1.5)"]
|
||||
docs = ["furo", "sphinx", "sphinx-autobuild", "sphinx-autodoc-typehints", "sphinx-copybutton", "sphinx-inline-tabs"]
|
||||
lxml = ["lxml (>=4.4.1)"]
|
||||
soap = ["requests"]
|
||||
test = ["codecov", "pre-commit", "pytest", "pytest-benchmark", "pytest-cov", "tox"]
|
||||
|
||||
[[package]]
|
||||
name = "zipp"
|
||||
version = "3.7.0"
|
||||
description = "Backport of pathlib-compatible object wrapper for zip files"
|
||||
category = "main"
|
||||
optional = false
|
||||
python-versions = ">=3.7"
|
||||
|
||||
[package.extras]
|
||||
docs = ["sphinx", "jaraco.packaging (>=8.2)", "rst.linker (>=1.9)"]
|
||||
testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.0.1)", "jaraco.itertools", "func-timeout", "pytest-black (>=0.3.7)", "pytest-mypy"]
|
||||
|
||||
[metadata]
|
||||
lock-version = "1.1"
|
||||
python-versions = "^3.7,<3.10"
|
||||
content-hash = "60bf34673c42fc90f369a810cb542b1b03c8e52cd019e7a9e86650de19544d01"
|
||||
|
||||
[metadata.files]
|
||||
asgiref = [
|
||||
{file = "asgiref-3.5.0-py3-none-any.whl", hash = "sha256:88d59c13d634dcffe0510be048210188edd79aeccb6a6c9028cdad6f31d730a9"},
|
||||
{file = "asgiref-3.5.0.tar.gz", hash = "sha256:2f8abc20f7248433085eda803936d98992f1343ddb022065779f37c5da0181d0"},
|
||||
]
|
||||
bite-parser = [
|
||||
{file = "bite-parser-0.1.1.tar.gz", hash = "sha256:8021100bfbd6cc6056605361e763a3591efdea38014b3d8aa76c74c74de4ead4"},
|
||||
{file = "bite_parser-0.1.1-py3-none-any.whl", hash = "sha256:96803e7d63112e81544c9747fbd50cca61097dcf5973ae6cc710f3a96646600a"},
|
||||
]
|
||||
click = [
|
||||
{file = "click-8.0.4-py3-none-any.whl", hash = "sha256:6a7a62563bbfabfda3a38f3023a1db4a35978c0abd76f6c9605ecd6554d6d9b1"},
|
||||
{file = "click-8.0.4.tar.gz", hash = "sha256:8458d7b1287c5fb128c90e23381cf99dcde74beaf6c7ff6384ce84d6fe090adb"},
|
||||
]
|
||||
colorama = [
|
||||
{file = "colorama-0.4.4-py2.py3-none-any.whl", hash = "sha256:9f47eda37229f68eee03b24b9748937c7dc3868f906e8ba69fbcbdd3bc5dc3e2"},
|
||||
{file = "colorama-0.4.4.tar.gz", hash = "sha256:5941b2b48a20143d2267e95b1c2a7603ce057ee39fd88e7329b0c292aa16869b"},
|
||||
]
|
||||
dataclasses = [
|
||||
{file = "dataclasses-0.6-py3-none-any.whl", hash = "sha256:454a69d788c7fda44efd71e259be79577822f5e3f53f029a22d08004e951dc9f"},
|
||||
{file = "dataclasses-0.6.tar.gz", hash = "sha256:6988bd2b895eef432d562370bb707d540f32f7360ab13da45340101bc2307d84"},
|
||||
]
|
||||
dataclasses-serialization = [
|
||||
{file = "dataclasses_serialization-1.3.1-py3-none-any.whl", hash = "sha256:34294b1a68944c8d8ac00d2a53aecb8499301401aec6d024ba829ac3931e3b2a"},
|
||||
{file = "dataclasses_serialization-1.3.1.tar.gz", hash = "sha256:7f9cf6b11e0650ab89691b1a0050dcce3aef4d389dd4540a53316c4151485921"},
|
||||
]
|
||||
dmarc-metrics-exporter = []
|
||||
h11 = [
|
||||
{file = "h11-0.13.0-py3-none-any.whl", hash = "sha256:8ddd78563b633ca55346c8cd41ec0af27d3c79931828beffb46ce70a379e7442"},
|
||||
{file = "h11-0.13.0.tar.gz", hash = "sha256:70813c1135087a248a4d38cc0e1a0181ffab2188141a93eaf567940c3957ff06"},
|
||||
]
|
||||
httptools = [
|
||||
{file = "httptools-0.2.0-cp35-cp35m-macosx_10_14_x86_64.whl", hash = "sha256:79dbc21f3612a78b28384e989b21872e2e3cf3968532601544696e4ed0007ce5"},
|
||||
{file = "httptools-0.2.0-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:78d03dd39b09c99ec917d50189e6743adbfd18c15d5944392d2eabda688bf149"},
|
||||
{file = "httptools-0.2.0-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:a23166e5ae2775709cf4f7ad4c2048755ebfb272767d244e1a96d55ac775cca7"},
|
||||
{file = "httptools-0.2.0-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:3ab1f390d8867f74b3b5ee2a7ecc9b8d7f53750bd45714bf1cb72a953d7dfa77"},
|
||||
{file = "httptools-0.2.0-cp36-cp36m-win_amd64.whl", hash = "sha256:a7594f9a010cdf1e16a58b3bf26c9da39bbf663e3b8d46d39176999d71816658"},
|
||||
{file = "httptools-0.2.0-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:01b392a166adcc8bc2f526a939a8aabf89fe079243e1543fd0e7dc1b58d737cb"},
|
||||
{file = "httptools-0.2.0-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:80ffa04fe8c8dfacf6e4cef8277347d35b0442c581f5814f3b0cf41b65c43c6e"},
|
||||
{file = "httptools-0.2.0-cp37-cp37m-win_amd64.whl", hash = "sha256:d5682eeb10cca0606c4a8286a3391d4c3c5a36f0c448e71b8bd05be4e1694bfb"},
|
||||
{file = "httptools-0.2.0-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:a289c27ccae399a70eacf32df9a44059ca2ba4ac444604b00a19a6c1f0809943"},
|
||||
{file = "httptools-0.2.0-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:813871f961edea6cb2fe312f2d9b27d12a51ba92545380126f80d0de1917ea15"},
|
||||
{file = "httptools-0.2.0-cp38-cp38-win_amd64.whl", hash = "sha256:cc9be041e428c10f8b6ab358c6b393648f9457094e1dcc11b4906026d43cd380"},
|
||||
{file = "httptools-0.2.0-cp39-cp39-macosx_10_14_x86_64.whl", hash = "sha256:b08d00d889a118f68f37f3c43e359aab24ee29eb2e3fe96d64c6a2ba8b9d6557"},
|
||||
{file = "httptools-0.2.0-cp39-cp39-manylinux1_x86_64.whl", hash = "sha256:fd3b8905e21431ad306eeaf56644a68fdd621bf8f3097eff54d0f6bdf7262065"},
|
||||
{file = "httptools-0.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:200fc1cdf733a9ff554c0bb97a4047785cfaad9875307d6087001db3eb2b417f"},
|
||||
{file = "httptools-0.2.0.tar.gz", hash = "sha256:94505026be56652d7a530ab03d89474dc6021019d6b8682281977163b3471ea0"},
|
||||
]
|
||||
importlib-metadata = [
|
||||
{file = "importlib_metadata-4.11.1-py3-none-any.whl", hash = "sha256:e0bc84ff355328a4adfc5240c4f211e0ab386f80aa640d1b11f0618a1d282094"},
|
||||
{file = "importlib_metadata-4.11.1.tar.gz", hash = "sha256:175f4ee440a0317f6e8d81b7f8d4869f93316170a65ad2b007d2929186c8052c"},
|
||||
]
|
||||
more-properties = [
|
||||
{file = "more_properties-1.1.1-py3-none-any.whl", hash = "sha256:0992c49041cb2600e5ff4d8414bdf5761551f5404d00a4e553ced4f14d34b0bb"},
|
||||
{file = "more_properties-1.1.1.tar.gz", hash = "sha256:47b136857d89c72b53def0fade2f2e0a23a95071c3eb87d5a77cfc91554f106c"},
|
||||
]
|
||||
mypy-extensions = [
|
||||
{file = "mypy_extensions-0.4.3-py2.py3-none-any.whl", hash = "sha256:090fedd75945a69ae91ce1303b5824f428daf5a028d2f6ab8a299250a846f15d"},
|
||||
{file = "mypy_extensions-0.4.3.tar.gz", hash = "sha256:2d82818f5bb3e369420cb3c4060a7970edba416647068eb4c5343488a6c604a8"},
|
||||
]
|
||||
prometheus-client = [
|
||||
{file = "prometheus_client-0.11.0-py2.py3-none-any.whl", hash = "sha256:b014bc76815eb1399da8ce5fc84b7717a3e63652b0c0f8804092c9363acab1b2"},
|
||||
{file = "prometheus_client-0.11.0.tar.gz", hash = "sha256:3a8baade6cb80bcfe43297e33e7623f3118d660d41387593758e2fb1ea173a86"},
|
||||
]
|
||||
python-dotenv = [
|
||||
{file = "python-dotenv-0.19.2.tar.gz", hash = "sha256:a5de49a31e953b45ff2d2fd434bbc2670e8db5273606c1e737cc6b93eff3655f"},
|
||||
{file = "python_dotenv-0.19.2-py2.py3-none-any.whl", hash = "sha256:32b2bdc1873fd3a3c346da1c6db83d0053c3c62f28f1f38516070c4c8971b1d3"},
|
||||
]
|
||||
pyyaml = [
|
||||
{file = "PyYAML-6.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53"},
|
||||
{file = "PyYAML-6.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c"},
|
||||
{file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc"},
|
||||
{file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a80a78046a72361de73f8f395f1f1e49f956c6be882eed58505a15f3e430962b"},
|
||||
{file = "PyYAML-6.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5"},
|
||||
{file = "PyYAML-6.0-cp310-cp310-win32.whl", hash = "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513"},
|
||||
{file = "PyYAML-6.0-cp310-cp310-win_amd64.whl", hash = "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a"},
|
||||
{file = "PyYAML-6.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86"},
|
||||
{file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f"},
|
||||
{file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92"},
|
||||
{file = "PyYAML-6.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:98c4d36e99714e55cfbaaee6dd5badbc9a1ec339ebfc3b1f52e293aee6bb71a4"},
|
||||
{file = "PyYAML-6.0-cp36-cp36m-win32.whl", hash = "sha256:0283c35a6a9fbf047493e3a0ce8d79ef5030852c51e9d911a27badfde0605293"},
|
||||
{file = "PyYAML-6.0-cp36-cp36m-win_amd64.whl", hash = "sha256:07751360502caac1c067a8132d150cf3d61339af5691fe9e87803040dbc5db57"},
|
||||
{file = "PyYAML-6.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:819b3830a1543db06c4d4b865e70ded25be52a2e0631ccd2f6a47a2822f2fd7c"},
|
||||
{file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:473f9edb243cb1935ab5a084eb238d842fb8f404ed2193a915d1784b5a6b5fc0"},
|
||||
{file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0ce82d761c532fe4ec3f87fc45688bdd3a4c1dc5e0b4a19814b9009a29baefd4"},
|
||||
{file = "PyYAML-6.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:231710d57adfd809ef5d34183b8ed1eeae3f76459c18fb4a0b373ad56bedcdd9"},
|
||||
{file = "PyYAML-6.0-cp37-cp37m-win32.whl", hash = "sha256:c5687b8d43cf58545ade1fe3e055f70eac7a5a1a0bf42824308d868289a95737"},
|
||||
{file = "PyYAML-6.0-cp37-cp37m-win_amd64.whl", hash = "sha256:d15a181d1ecd0d4270dc32edb46f7cb7733c7c508857278d3d378d14d606db2d"},
|
||||
{file = "PyYAML-6.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0b4624f379dab24d3725ffde76559cff63d9ec94e1736b556dacdfebe5ab6d4b"},
|
||||
{file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:213c60cd50106436cc818accf5baa1aba61c0189ff610f64f4a3e8c6726218ba"},
|
||||
{file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9fa600030013c4de8165339db93d182b9431076eb98eb40ee068700c9c813e34"},
|
||||
{file = "PyYAML-6.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:277a0ef2981ca40581a47093e9e2d13b3f1fbbeffae064c1d21bfceba2030287"},
|
||||
{file = "PyYAML-6.0-cp38-cp38-win32.whl", hash = "sha256:d4eccecf9adf6fbcc6861a38015c2a64f38b9d94838ac1810a9023a0609e1b78"},
|
||||
{file = "PyYAML-6.0-cp38-cp38-win_amd64.whl", hash = "sha256:1e4747bc279b4f613a09eb64bba2ba602d8a6664c6ce6396a4d0cd413a50ce07"},
|
||||
{file = "PyYAML-6.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:055d937d65826939cb044fc8c9b08889e8c743fdc6a32b33e2390f66013e449b"},
|
||||
{file = "PyYAML-6.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e61ceaab6f49fb8bdfaa0f92c4b57bcfbea54c09277b1b4f7ac376bfb7a7c174"},
|
||||
{file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d67d839ede4ed1b28a4e8909735fc992a923cdb84e618544973d7dfc71540803"},
|
||||
{file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cba8c411ef271aa037d7357a2bc8f9ee8b58b9965831d9e51baf703280dc73d3"},
|
||||
{file = "PyYAML-6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:40527857252b61eacd1d9af500c3337ba8deb8fc298940291486c465c8b46ec0"},
|
||||
{file = "PyYAML-6.0-cp39-cp39-win32.whl", hash = "sha256:b5b9eccad747aabaaffbc6064800670f0c297e52c12754eb1d976c57e4f74dcb"},
|
||||
{file = "PyYAML-6.0-cp39-cp39-win_amd64.whl", hash = "sha256:b3d267842bf12586ba6c734f89d1f5b871df0273157918b0ccefa29deb05c21c"},
|
||||
{file = "PyYAML-6.0.tar.gz", hash = "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2"},
|
||||
]
|
||||
toolz = [
|
||||
{file = "toolz-0.11.2-py3-none-any.whl", hash = "sha256:a5700ce83414c64514d82d60bcda8aabfde092d1c1a8663f9200c07fdcc6da8f"},
|
||||
{file = "toolz-0.11.2.tar.gz", hash = "sha256:6b312d5e15138552f1bda8a4e66c30e236c831b612b2bf0005f8a1df10a4bc33"},
|
||||
]
|
||||
toposort = [
|
||||
{file = "toposort-1.7-py2.py3-none-any.whl", hash = "sha256:8ed8e109e96ae30bf66da2d2155e4eb9989d9c5c743c837e37d9774a4eddd804"},
|
||||
{file = "toposort-1.7.tar.gz", hash = "sha256:ddc2182c42912a440511bd7ff5d3e6a1cabc3accbc674a3258c8c41cbfbb2125"},
|
||||
]
|
||||
typing-extensions = [
|
||||
{file = "typing_extensions-4.1.1-py3-none-any.whl", hash = "sha256:21c85e0fe4b9a155d0799430b0ad741cdce7e359660ccbd8b530613e8df88ce2"},
|
||||
{file = "typing_extensions-4.1.1.tar.gz", hash = "sha256:1a9462dcc3347a79b1f1c0271fbe79e844580bb598bafa1ed208b94da3cdcd42"},
|
||||
]
|
||||
typing-inspect = [
|
||||
{file = "typing_inspect-0.7.1-py2-none-any.whl", hash = "sha256:b1f56c0783ef0f25fb064a01be6e5407e54cf4a4bf4f3ba3fe51e0bd6dcea9e5"},
|
||||
{file = "typing_inspect-0.7.1-py3-none-any.whl", hash = "sha256:3cd7d4563e997719a710a3bfe7ffb544c6b72069b6812a02e9b414a8fa3aaa6b"},
|
||||
{file = "typing_inspect-0.7.1.tar.gz", hash = "sha256:047d4097d9b17f46531bf6f014356111a1b6fb821a24fe7ac909853ca2a782aa"},
|
||||
]
|
||||
uvicorn = [
|
||||
{file = "uvicorn-0.15.0-py3-none-any.whl", hash = "sha256:17f898c64c71a2640514d4089da2689e5db1ce5d4086c2d53699bf99513421c1"},
|
||||
{file = "uvicorn-0.15.0.tar.gz", hash = "sha256:d9a3c0dd1ca86728d3e235182683b4cf94cd53a867c288eaeca80ee781b2caff"},
|
||||
]
|
||||
uvloop = [
|
||||
{file = "uvloop-0.16.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:6224f1401025b748ffecb7a6e2652b17768f30b1a6a3f7b44660e5b5b690b12d"},
|
||||
{file = "uvloop-0.16.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:30ba9dcbd0965f5c812b7c2112a1ddf60cf904c1c160f398e7eed3a6b82dcd9c"},
|
||||
{file = "uvloop-0.16.0-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:bd53f7f5db562f37cd64a3af5012df8cac2c464c97e732ed556800129505bd64"},
|
||||
{file = "uvloop-0.16.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:772206116b9b57cd625c8a88f2413df2fcfd0b496eb188b82a43bed7af2c2ec9"},
|
||||
{file = "uvloop-0.16.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b572256409f194521a9895aef274cea88731d14732343da3ecdb175228881638"},
|
||||
{file = "uvloop-0.16.0-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:04ff57aa137230d8cc968f03481176041ae789308b4d5079118331ab01112450"},
|
||||
{file = "uvloop-0.16.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3a19828c4f15687675ea912cc28bbcb48e9bb907c801873bd1519b96b04fb805"},
|
||||
{file = "uvloop-0.16.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:e814ac2c6f9daf4c36eb8e85266859f42174a4ff0d71b99405ed559257750382"},
|
||||
{file = "uvloop-0.16.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:bd8f42ea1ea8f4e84d265769089964ddda95eb2bb38b5cbe26712b0616c3edee"},
|
||||
{file = "uvloop-0.16.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:647e481940379eebd314c00440314c81ea547aa636056f554d491e40503c8464"},
|
||||
{file = "uvloop-0.16.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e0d26fa5875d43ddbb0d9d79a447d2ace4180d9e3239788208527c4784f7cab"},
|
||||
{file = "uvloop-0.16.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:6ccd57ae8db17d677e9e06192e9c9ec4bd2066b77790f9aa7dede2cc4008ee8f"},
|
||||
{file = "uvloop-0.16.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:089b4834fd299d82d83a25e3335372f12117a7d38525217c2258e9b9f4578897"},
|
||||
{file = "uvloop-0.16.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:98d117332cc9e5ea8dfdc2b28b0a23f60370d02e1395f88f40d1effd2cb86c4f"},
|
||||
{file = "uvloop-0.16.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1e5f2e2ff51aefe6c19ee98af12b4ae61f5be456cd24396953244a30880ad861"},
|
||||
{file = "uvloop-0.16.0.tar.gz", hash = "sha256:f74bc20c7b67d1c27c72601c78cf95be99d5c2cdd4514502b4f3eb0933ff1228"},
|
||||
]
|
||||
watchgod = [
|
||||
{file = "watchgod-0.7-py3-none-any.whl", hash = "sha256:d6c1ea21df37847ac0537ca0d6c2f4cdf513562e95f77bb93abbcf05573407b7"},
|
||||
{file = "watchgod-0.7.tar.gz", hash = "sha256:48140d62b0ebe9dd9cf8381337f06351e1f2e70b2203fa9c6eff4e572ca84f29"},
|
||||
]
|
||||
websockets = [
|
||||
{file = "websockets-10.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d5396710f86a306cf52f87fd8ea594a0e894ba0cc5a36059eaca3a477dc332aa"},
|
||||
{file = "websockets-10.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b22bdc795e62e71118b63e14a08bacfa4f262fd2877de7e5b950f5ac16b0348f"},
|
||||
{file = "websockets-10.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5b04270b5613f245ec84bb2c6a482a9d009aefad37c0575f6cda8499125d5d5c"},
|
||||
{file = "websockets-10.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f5c335dc0e7dc271ef36df3f439868b3c790775f345338c2f61a562f1074187b"},
|
||||
{file = "websockets-10.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:6a009eb551c46fd79737791c0c833fc0e5b56bcd1c3057498b262d660b92e9cd"},
|
||||
{file = "websockets-10.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a10c0c1ee02164246f90053273a42d72a3b2452a7e7486fdae781138cf7fbe2d"},
|
||||
{file = "websockets-10.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:7b38a5c9112e3dbbe45540f7b60c5204f49b3cb501b40950d6ab34cd202ab1d0"},
|
||||
{file = "websockets-10.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:2aa9b91347ecd0412683f28aabe27f6bad502d89bd363b76e0a3508b1596402e"},
|
||||
{file = "websockets-10.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b7fe45ae43ac814beb8ca09d6995b56800676f2cfa8e23f42839dc69bba34a42"},
|
||||
{file = "websockets-10.2-cp310-cp310-win32.whl", hash = "sha256:cef40a1b183dcf39d23b392e9dd1d9b07ab9c46aadf294fff1350fb79146e72b"},
|
||||
{file = "websockets-10.2-cp310-cp310-win_amd64.whl", hash = "sha256:c21a67ab9a94bd53e10bba21912556027fea944648a09e6508415ad14e37c325"},
|
||||
{file = "websockets-10.2-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:cb316b87cbe3c0791c2ad92a5a36bf6adc87c457654335810b25048c1daa6fd5"},
|
||||
{file = "websockets-10.2-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f14bd10e170abc01682a9f8b28b16e6f20acf6175945ef38db6ffe31b0c72c3f"},
|
||||
{file = "websockets-10.2-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:fa35c5d1830d0fb7b810324e9eeab9aa92e8f273f11fdbdc0741dcded6d72b9f"},
|
||||
{file = "websockets-10.2-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:71a4491cfe7a9f18ee57d41163cb6a8a3fa591e0f0564ca8b0ed86b2a30cced4"},
|
||||
{file = "websockets-10.2-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:6193bbc1ee63aadeb9a4d81de0e19477401d150d506aee772d8380943f118186"},
|
||||
{file = "websockets-10.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:8beac786a388bb99a66c3be4ab0fb38273c0e3bc17f612a4e0a47c4fc8b9c045"},
|
||||
{file = "websockets-10.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:c67d9cacb3f6537ca21e9b224d4fd08481538e43bcac08b3d93181b0816def39"},
|
||||
{file = "websockets-10.2-cp37-cp37m-win32.whl", hash = "sha256:a03a25d95cc7400bd4d61a63460b5d85a7761c12075ee2f51de1ffe73aa593d3"},
|
||||
{file = "websockets-10.2-cp37-cp37m-win_amd64.whl", hash = "sha256:f8296b8408ec6853b26771599990721a26403e62b9de7e50ac0a056772ac0b5e"},
|
||||
{file = "websockets-10.2-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:7bb9d8a6beca478c7e9bdde0159bd810cc1006ad6a7cb460533bae39da692ca2"},
|
||||
{file = "websockets-10.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:05f6e9757017270e7a92a2975e2ae88a9a582ffc4629086fd6039aa80e99cd86"},
|
||||
{file = "websockets-10.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:1c9031e90ebfc486e9cdad532b94004ade3aa39a31d3c46c105bb0b579cd2490"},
|
||||
{file = "websockets-10.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82bc33db6d8309dc27a3bee11f7da2288ad925fcbabc2a4bb78f7e9c56249baf"},
|
||||
{file = "websockets-10.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:24b879ba7db12bb525d4e58089fcbe6a3df3ce4666523183654170e86d372cbe"},
|
||||
{file = "websockets-10.2-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:cf931c33db9c87c53d009856045dd524e4a378445693382a920fa1e0eb77c36c"},
|
||||
{file = "websockets-10.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:669e54228a4d9457abafed27cbf0e2b9f401445c4dfefc12bf8e4db9751703b8"},
|
||||
{file = "websockets-10.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:bffc65442dd35c473ca9790a3fa3ba06396102a950794f536783f4b8060af8dd"},
|
||||
{file = "websockets-10.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d4d110a84b63c5cfdd22485acc97b8b919aefeecd6300c0c9d551e055b9a88ea"},
|
||||
{file = "websockets-10.2-cp38-cp38-win32.whl", hash = "sha256:117383d0a17a0dda349f7a8790763dde75c1508ff8e4d6e8328b898b7df48397"},
|
||||
{file = "websockets-10.2-cp38-cp38-win_amd64.whl", hash = "sha256:0b66421f9f13d4df60cd48ab977ed2c2b6c9147ae1a33caf5a9f46294422fda1"},
|
||||
{file = "websockets-10.2-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:ac081aa0307f263d63c5ff0727935c736c8dad51ddf2dc9f5d0c4759842aefaa"},
|
||||
{file = "websockets-10.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b4059e2ccbe6587b6dc9a01db5fc49ead9a884faa4076eea96c5ec62cb32f42a"},
|
||||
{file = "websockets-10.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9ca2ca05a4c29179f06cf6727b45dba5d228da62623ec9df4184413d8aae6cb9"},
|
||||
{file = "websockets-10.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:97950c7c844ec6f8d292440953ae18b99e3a6a09885e09d20d5e7ecd9b914cf8"},
|
||||
{file = "websockets-10.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:98f57b3120f8331cd7440dbe0e776474f5e3632fdaa474af1f6b754955a47d71"},
|
||||
{file = "websockets-10.2-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a72b92f96e5e540d5dda99ee3346e199ade8df63152fa3c737260da1730c411f"},
|
||||
{file = "websockets-10.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:038afef2a05893578d10dadbdbb5f112bd115c46347e1efe99f6a356ff062138"},
|
||||
{file = "websockets-10.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:f09f46b1ff6d09b01c7816c50bd1903cf7d02ebbdb63726132717c2fcda835d5"},
|
||||
{file = "websockets-10.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:2349fa81b6b959484bb2bda556ccb9eb70ba68987646a0f8a537a1a18319fb03"},
|
||||
{file = "websockets-10.2-cp39-cp39-win32.whl", hash = "sha256:bef03a51f9657fb03d8da6ccd233fe96e04101a852f0ffd35f5b725b28221ff3"},
|
||||
{file = "websockets-10.2-cp39-cp39-win_amd64.whl", hash = "sha256:1c1f3b18c8162e3b09761d0c6a0305fd642934202541cc511ef972cb9463261e"},
|
||||
{file = "websockets-10.2-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:5a38a0175ae82e4a8c4bac29fc01b9ee26d7d5a614e5ee11e7813c68a7d938ce"},
|
||||
{file = "websockets-10.2-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c6e56606842bb24e16e36ae7eb308d866b4249cf0be8f63b212f287eeb76b124"},
|
||||
{file = "websockets-10.2-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:0f73cb2526d6da268e86977b2c4b58f2195994e53070fe567d5487c6436047e6"},
|
||||
{file = "websockets-10.2-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:0cd02f36d37e503aca88ab23cc0a1a0e92a263d37acf6331521eb38040dcf77b"},
|
||||
{file = "websockets-10.2-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:56d48eebe9e39ce0d68701bce3b21df923aa05dcc00f9fd8300de1df31a7c07c"},
|
||||
{file = "websockets-10.2.tar.gz", hash = "sha256:8351c3c86b08156337b0e4ece0e3c5ec3e01fcd14e8950996832a23c99416098"},
|
||||
]
|
||||
xsdata = [
|
||||
{file = "xsdata-21.12-py3-none-any.whl", hash = "sha256:857ef5d1c1fdee09f7f1a0a0e8f2771c0469dcc60b28f9b2a7b2a0d2aba3a58f"},
|
||||
{file = "xsdata-21.12.tar.gz", hash = "sha256:baba44a2909fc928f783b0cdde4e1a96d5c632414588b9934aa8adf5f60002e8"},
|
||||
]
|
||||
zipp = [
|
||||
{file = "zipp-3.7.0-py3-none-any.whl", hash = "sha256:b47250dd24f92b7dd6a0a8fc5244da14608f3ca90a5efcd37a3b1642fac9a375"},
|
||||
{file = "zipp-3.7.0.tar.gz", hash = "sha256:9f50f446828eb9d45b267433fd3e9da8d801f614129124863f9c51ebceafb87d"},
|
||||
]
|
|
@ -1,14 +0,0 @@
|
|||
[tool.poetry]
|
||||
name = "dmarc-metrics-exporter-env"
|
||||
version = "0.5.1"
|
||||
description = ""
|
||||
authors = []
|
||||
|
||||
[tool.poetry.dependencies]
|
||||
python = "^3.7,<3.10"
|
||||
dmarc-metrics-exporter = {git="https://github.com/jgosmann/dmarc-metrics-exporter.git", tag = "v0.5.1"}
|
||||
bite-parser = "0.1.1"
|
||||
|
||||
[build-system]
|
||||
requires = ["poetry-core>=1.0.0"]
|
||||
build-backend = "poetry.core.masonry.api"
|
|
@ -1,5 +0,0 @@
|
|||
#!/usr/bin/env nix-shell
|
||||
#! nix-shell -i bash -p poetry poetry2nix.cli
|
||||
set -eu
|
||||
poetry lock
|
||||
poetry2nix lock
|
|
@ -0,0 +1,69 @@
|
|||
{ lib
|
||||
, python3
|
||||
, fetchpatch
|
||||
}:
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "dmarc-metrics-exporter";
|
||||
version = "0.5.1";
|
||||
|
||||
disabled = python3.pythonOlder "3.7";
|
||||
|
||||
format = "pyproject";
|
||||
|
||||
src = python3.pkgs.fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "22ec361f9a4c86abefbfab541f588597e21bf4fbedf2911f230e560b2ec3503a";
|
||||
};
|
||||
|
||||
patches = [
|
||||
# https://github.com/jgosmann/dmarc-metrics-exporter/pull/23
|
||||
(fetchpatch {
|
||||
url = "https://github.com/jgosmann/dmarc-metrics-exporter/commit/3fe401f5dfb9e0304601a2a89ac987ff853b7cba.patch";
|
||||
hash = "sha256-MjVLlFQMp2r3AhBMu1lEmRm0Y2H9FdvCfPgAK5kvwWE=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace 'python = "^3.7,<3.10"' 'python = "^3.7,<3.11"' \
|
||||
--replace poetry.masonry.api poetry.core.masonry.api \
|
||||
--replace '"^' '">='
|
||||
'';
|
||||
|
||||
nativeBuildInputs = with python3.pkgs; [
|
||||
poetry-core
|
||||
];
|
||||
|
||||
propagatedBuildInputs = with python3.pkgs; [
|
||||
bite-parser
|
||||
dataclasses-serialization
|
||||
prometheus-client
|
||||
typing-extensions
|
||||
uvicorn
|
||||
xsdata
|
||||
];
|
||||
|
||||
checkInputs = with python3.pkgs; [
|
||||
aiohttp
|
||||
pytest-asyncio
|
||||
pytestCheckHook
|
||||
requests
|
||||
];
|
||||
|
||||
disabledTestPaths = [
|
||||
# require networking
|
||||
"dmarc_metrics_exporter/tests/test_e2e.py"
|
||||
"dmarc_metrics_exporter/tests/test_imap_client.py"
|
||||
"dmarc_metrics_exporter/tests/test_imap_queue.py"
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "dmarc_metrics_exporter" ];
|
||||
|
||||
meta = {
|
||||
description = "Export Prometheus metrics from DMARC reports";
|
||||
homepage = "https://github.com/jgosmann/dmarc-metrics-exporter";
|
||||
license = lib.licenses.mit;
|
||||
maintainers = with lib.maintainers; [ ma27 ];
|
||||
};
|
||||
}
|
|
@ -27,6 +27,7 @@ python3.pkgs.buildPythonApplication rec {
|
|||
'';
|
||||
|
||||
nativeBuildInputs = with python3.pkgs; [
|
||||
cython
|
||||
setuptools-scm
|
||||
# For building documentation:
|
||||
sphinx
|
||||
|
@ -43,12 +44,9 @@ python3.pkgs.buildPythonApplication rec {
|
|||
];
|
||||
|
||||
propagatedBuildInputs = with python3.pkgs; [
|
||||
cython
|
||||
llfuse
|
||||
msgpack
|
||||
packaging
|
||||
] ++ lib.optionals (!stdenv.isDarwin) [
|
||||
pyfuse3
|
||||
(if stdenv.isLinux then pyfuse3 else llfuse)
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
|
|
|
@ -1,44 +0,0 @@
|
|||
{ lib, stdenv, pkgs, fetchFromGitHub, nix, node_webkit, makeDesktopItem
|
||||
, writeScript }:
|
||||
let
|
||||
nixui = (import ./nixui.nix {
|
||||
inherit pkgs;
|
||||
inherit (stdenv.hostPlatform) system;
|
||||
})."nixui-git+https://github.com/matejc/nixui.git#0.2.1";
|
||||
script = writeScript "nixui" ''
|
||||
#! ${stdenv.shell}
|
||||
export PATH="${nix}/bin:\$PATH"
|
||||
${node_webkit}/bin/nw ${nixui}/lib/node_modules/nixui/
|
||||
'';
|
||||
desktop = makeDesktopItem {
|
||||
name = "nixui";
|
||||
exec = script;
|
||||
icon = "${nixui}/lib/node_modules/nixui/img/128.png";
|
||||
desktopName = "NixUI";
|
||||
genericName = "NixUI";
|
||||
};
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "nixui";
|
||||
version = "0.2.1";
|
||||
src = fetchFromGitHub {
|
||||
owner = "matejc";
|
||||
repo = "nixui";
|
||||
rev = version;
|
||||
sha256 = "sha256-KisdzZIB4wYkJojGyG9SCsR+9d6EGuDX6mro/yiJw6s=";
|
||||
};
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
ln -s ${script} $out/bin/nixui
|
||||
|
||||
mkdir -p $out/share/applications
|
||||
ln -s ${desktop}/share/applications/* $out/share/applications/
|
||||
'';
|
||||
meta = {
|
||||
description = "NodeWebkit user interface for Nix";
|
||||
homepage = "https://github.com/matejc/nixui";
|
||||
license = lib.licenses.asl20;
|
||||
maintainers = [ lib.maintainers.matejc ];
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
}
|
|
@ -1,4 +0,0 @@
|
|||
#!/usr/bin/env nix-shell
|
||||
#! nix-shell -i bash -p nodePackages.node2nix
|
||||
|
||||
exec node2nix --nodejs-10 -i pkg.json -c nixui.nix -e ../../../development/node-packages/node-env.nix --no-copy-node-env
|
|
@ -1,17 +0,0 @@
|
|||
# This file has been generated by node2nix 1.9.0. Do not edit!
|
||||
|
||||
{pkgs ? import <nixpkgs> {
|
||||
inherit system;
|
||||
}, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-10_x"}:
|
||||
|
||||
let
|
||||
nodeEnv = import ../../../development/node-packages/node-env.nix {
|
||||
inherit (pkgs) stdenv lib python2 runCommand writeTextFile writeShellScript;
|
||||
inherit pkgs nodejs;
|
||||
libtool = if pkgs.stdenv.isDarwin then pkgs.darwin.cctools else null;
|
||||
};
|
||||
in
|
||||
import ./node-packages.nix {
|
||||
inherit (pkgs) fetchurl nix-gitignore stdenv lib fetchgit;
|
||||
inherit nodeEnv;
|
||||
}
|
108
pkgs/tools/package-management/nixui/node-packages.nix
generated
108
pkgs/tools/package-management/nixui/node-packages.nix
generated
|
@ -1,108 +0,0 @@
|
|||
# This file has been generated by node2nix 1.9.0. Do not edit!
|
||||
|
||||
{nodeEnv, fetchurl, fetchgit, nix-gitignore, stdenv, lib, globalBuildInputs ? []}:
|
||||
|
||||
let
|
||||
sources = {
|
||||
"async-0.2.10" = {
|
||||
name = "async";
|
||||
packageName = "async";
|
||||
version = "0.2.10";
|
||||
src = fetchurl {
|
||||
url = "https://registry.npmjs.org/async/-/async-0.2.10.tgz";
|
||||
sha1 = "b6bbe0b0674b9d719708ca38de8c237cb526c3d1";
|
||||
};
|
||||
};
|
||||
"binary-search-tree-0.2.4" = {
|
||||
name = "binary-search-tree";
|
||||
packageName = "binary-search-tree";
|
||||
version = "0.2.4";
|
||||
src = fetchurl {
|
||||
url = "https://registry.npmjs.org/binary-search-tree/-/binary-search-tree-0.2.4.tgz";
|
||||
sha1 = "14fe106366a59ca8efb68c0ae30c36aaff0cd510";
|
||||
};
|
||||
};
|
||||
"isnumber-1.0.0" = {
|
||||
name = "isnumber";
|
||||
packageName = "isnumber";
|
||||
version = "1.0.0";
|
||||
src = fetchurl {
|
||||
url = "https://registry.npmjs.org/isnumber/-/isnumber-1.0.0.tgz";
|
||||
sha1 = "0e3f9759b581d99dd85086f0ec2a74909cfadd01";
|
||||
};
|
||||
};
|
||||
"mkdirp-0.3.5" = {
|
||||
name = "mkdirp";
|
||||
packageName = "mkdirp";
|
||||
version = "0.3.5";
|
||||
src = fetchurl {
|
||||
url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz";
|
||||
sha1 = "de3e5f8961c88c787ee1368df849ac4413eca8d7";
|
||||
};
|
||||
};
|
||||
"nedb-1.0.2" = {
|
||||
name = "nedb";
|
||||
packageName = "nedb";
|
||||
version = "1.0.2";
|
||||
src = fetchurl {
|
||||
url = "https://registry.npmjs.org/nedb/-/nedb-1.0.2.tgz";
|
||||
sha1 = "309f10ba29f2002f74a92fb870b8a53ba2131593";
|
||||
};
|
||||
};
|
||||
"underscore-1.12.0" = {
|
||||
name = "underscore";
|
||||
packageName = "underscore";
|
||||
version = "1.12.0";
|
||||
src = fetchurl {
|
||||
url = "https://registry.npmjs.org/underscore/-/underscore-1.12.0.tgz";
|
||||
sha512 = "21rQzss/XPMjolTiIezSu3JAjgagXKROtNrYFEOWK109qY1Uv2tVjPTZ1ci2HgvQDA16gHYSthQIJfB+XId/rQ==";
|
||||
};
|
||||
};
|
||||
"underscore-1.4.4" = {
|
||||
name = "underscore";
|
||||
packageName = "underscore";
|
||||
version = "1.4.4";
|
||||
src = fetchurl {
|
||||
url = "https://registry.npmjs.org/underscore/-/underscore-1.4.4.tgz";
|
||||
sha1 = "61a6a32010622afa07963bf325203cf12239d604";
|
||||
};
|
||||
};
|
||||
};
|
||||
in
|
||||
{
|
||||
"nixui-git+https://github.com/matejc/nixui.git#0.2.1" = nodeEnv.buildNodePackage {
|
||||
name = "nixui";
|
||||
packageName = "nixui";
|
||||
version = "0.2.1";
|
||||
src = fetchgit {
|
||||
url = "https://github.com/matejc/nixui.git";
|
||||
rev = "845a5f4a33f1d0c509c727c130d0792a5b450a38";
|
||||
sha256 = "2a2b1dcd9201e306242688c6c86f520ac47ef5de841ae0d7ea6ae8ff2889c3ab";
|
||||
};
|
||||
dependencies = [
|
||||
sources."async-0.2.10"
|
||||
(sources."binary-search-tree-0.2.4" // {
|
||||
dependencies = [
|
||||
sources."underscore-1.4.4"
|
||||
];
|
||||
})
|
||||
sources."isnumber-1.0.0"
|
||||
sources."mkdirp-0.3.5"
|
||||
(sources."nedb-1.0.2" // {
|
||||
dependencies = [
|
||||
sources."underscore-1.4.4"
|
||||
];
|
||||
})
|
||||
sources."underscore-1.12.0"
|
||||
];
|
||||
buildInputs = globalBuildInputs;
|
||||
meta = {
|
||||
description = "nix-env frontend written with Polymer";
|
||||
homepage = "https://github.com/matejc/nixui";
|
||||
license = "Apache-2.0";
|
||||
};
|
||||
production = true;
|
||||
bypassCache = true;
|
||||
reconstructLock = true;
|
||||
};
|
||||
}
|
|
@ -1,3 +0,0 @@
|
|||
[
|
||||
{ "nixui": "git+https://github.com/matejc/nixui.git#0.2.1" }
|
||||
]
|
|
@ -909,6 +909,7 @@ mapAliases ({
|
|||
nix_2_6 = nixVersions.nix_2_6;
|
||||
nixopsUnstable = nixops_unstable; # Added 2022-03-03
|
||||
nixosTest = testers.nixosTest; # Added 2022-05-05
|
||||
nixui = throw "nixui has been removed from nixpkgs, due to the project being unmaintained"; # Added 2022-05-23
|
||||
nmap-unfree = nmap; # Added 2021-04-06
|
||||
nmap-graphical = throw "nmap graphical support has been removed due to its python2 dependency"; # Added 2022-04-26
|
||||
nmap_graphical = throw "nmap graphical support has been removed due to its python2 dependency"; # Modified 2022-04-26
|
||||
|
@ -1098,6 +1099,7 @@ mapAliases ({
|
|||
proglodyte-wasm = throw "proglodyte-wasm has been removed from nixpkgs, because it is unmaintained since 5 years with zero github stars"; # Added 2021-06-30
|
||||
proj_5 = throw "Proj-5 has been removed from nixpkgs, use proj instead"; # Added 2021-04-12
|
||||
prometheus-cups-exporter = throw "outdated and broken by design; removed by developer"; # Added 2021-03-16
|
||||
prometheus-dmarc-exporter = dmarc-metrics-exporter; # added 2022-05-31
|
||||
prometheus-mesos-exporter = throw "prometheus-mesos-exporter is deprecated and archived by upstream"; # Added 2022-04-05
|
||||
proxytunnel = throw "proxytunnel has been removed from nixpkgs, because it has not been update upstream since it was added to nixpkgs in 2008 and has therefore bitrotted."; # added 2021-12-15
|
||||
pulseaudio-hsphfpd = throw "pulseaudio-hsphfpd upstream has been abandoned"; # Added 2022-03-23
|
||||
|
@ -1427,6 +1429,7 @@ mapAliases ({
|
|||
winpdb = throw "winpdb has been removed: abandoned by upstream"; # Added 2022-04-22
|
||||
winusb = throw "'winusb' has been renamed to/replaced by 'woeusb'"; # Converted to throw 2022-02-22
|
||||
wireguard = throw "'wireguard' has been renamed to/replaced by 'wireguard-tools'"; # Converted to throw 2022-02-22
|
||||
wormhole-rs = magic-wormhole-rs; # Added 2022-05-30. preserve, reason: Arch package name, main binary name
|
||||
wmii_hg = wmii;
|
||||
wxmupen64plus = throw "wxmupen64plus was removed because the upstream disappeared"; # Added 2022-01-31
|
||||
|
||||
|
|
|
@ -7673,11 +7673,11 @@ with pkgs;
|
|||
|
||||
mani = callPackage ../development/tools/mani { };
|
||||
|
||||
mapcache = callPackage ../servers/mapcache { };
|
||||
mapcache = callPackage ../servers/geospatial/mapcache { };
|
||||
|
||||
mapserver = callPackage ../servers/mapserver { };
|
||||
mapserver = callPackage ../servers/geospatial/mapserver { };
|
||||
|
||||
martin = callPackage ../servers/martin {
|
||||
martin = callPackage ../servers/geospatial/martin {
|
||||
inherit (darwin.apple_sdk.frameworks) Security;
|
||||
};
|
||||
|
||||
|
@ -10895,7 +10895,7 @@ with pkgs;
|
|||
|
||||
tidy-viewer = callPackage ../tools/text/tidy-viewer { };
|
||||
|
||||
tile38 = callPackage ../servers/tile38 { };
|
||||
tile38 = callPackage ../servers/geospatial/tile38 { };
|
||||
|
||||
tiled = libsForQt5.callPackage ../applications/editors/tiled { };
|
||||
|
||||
|
@ -11511,7 +11511,7 @@ with pkgs;
|
|||
|
||||
td = callPackage ../tools/misc/td { };
|
||||
|
||||
tegola = callPackage ../servers/tegola {};
|
||||
tegola = callPackage ../servers/geospatial/tegola {};
|
||||
|
||||
tftp-hpa = callPackage ../tools/networking/tftp-hpa {};
|
||||
|
||||
|
@ -13088,7 +13088,7 @@ with pkgs;
|
|||
|
||||
remarkable2-toolchain = callPackage ../development/tools/misc/remarkable/remarkable2-toolchain { };
|
||||
|
||||
t-rex = callPackage ../servers/t-rex {
|
||||
t-rex = callPackage ../servers/geospatial/t-rex {
|
||||
inherit (darwin.apple_sdk.frameworks) Security;
|
||||
};
|
||||
|
||||
|
@ -15935,11 +15935,6 @@ with pkgs;
|
|||
sdk = true;
|
||||
};
|
||||
|
||||
# only kept for nixui, see https://github.com/matejc/nixui/issues/27
|
||||
nwjs_0_12 = callPackage ../development/tools/node-webkit/nw12.nix {
|
||||
gconf = gnome2.GConf;
|
||||
};
|
||||
|
||||
nrfutil = callPackage ../development/tools/misc/nrfutil { };
|
||||
|
||||
obelisk = callPackage ../development/tools/ocaml/obelisk { menhir = ocamlPackages.menhir; };
|
||||
|
@ -21714,6 +21709,8 @@ with pkgs;
|
|||
|
||||
dkimproxy = callPackage ../servers/mail/dkimproxy { };
|
||||
|
||||
dmarc-metrics-exporter = callPackage ../servers/monitoring/prometheus/dmarc-metrics-exporter { };
|
||||
|
||||
do-agent = callPackage ../servers/monitoring/do-agent { };
|
||||
|
||||
dodgy = with python3Packages; toPythonApplication dodgy;
|
||||
|
@ -21964,7 +21961,7 @@ with pkgs;
|
|||
|
||||
mattermost-desktop = callPackage ../applications/networking/instant-messengers/mattermost-desktop { };
|
||||
|
||||
mbtileserver = callPackage ../servers/mbtileserver { };
|
||||
mbtileserver = callPackage ../servers/geospatial/mbtileserver { };
|
||||
|
||||
memcached = callPackage ../servers/memcached {};
|
||||
|
||||
|
@ -22206,9 +22203,9 @@ with pkgs;
|
|||
|
||||
tomcat-native = callPackage ../servers/http/tomcat/tomcat-native.nix { };
|
||||
|
||||
pg_featureserv = callPackage ../servers/pg_featureserv { };
|
||||
pg_featureserv = callPackage ../servers/geospatial/pg_featureserv { };
|
||||
|
||||
pg_tileserv = callPackage ../servers/pg_tileserv { };
|
||||
pg_tileserv = callPackage ../servers/geospatial/pg_tileserv { };
|
||||
|
||||
pies = callPackage ../servers/pies { };
|
||||
|
||||
|
@ -22440,7 +22437,6 @@ with pkgs;
|
|||
prometheus-blackbox-exporter = callPackage ../servers/monitoring/prometheus/blackbox-exporter.nix { };
|
||||
prometheus-collectd-exporter = callPackage ../servers/monitoring/prometheus/collectd-exporter.nix { };
|
||||
prometheus-consul-exporter = callPackage ../servers/monitoring/prometheus/consul-exporter.nix { };
|
||||
prometheus-dmarc-exporter = callPackage ../servers/monitoring/prometheus/dmarc-exporter { };
|
||||
prometheus-dnsmasq-exporter = callPackage ../servers/monitoring/prometheus/dnsmasq-exporter.nix { };
|
||||
prometheus-dovecot-exporter = callPackage ../servers/monitoring/prometheus/dovecot-exporter.nix { };
|
||||
prometheus-domain-exporter = callPackage ../servers/monitoring/prometheus/domain-exporter.nix { };
|
||||
|
@ -27807,9 +27803,10 @@ with pkgs;
|
|||
boost = boost175;
|
||||
};
|
||||
|
||||
libreoffice = if stdenv.isDarwin
|
||||
then callPackage ../applications/office/libreoffice/darwin.nix {}
|
||||
else hiPrio libreoffice-still;
|
||||
libreoffice-bin = callPackage ../applications/office/libreoffice/darwin { };
|
||||
|
||||
libreoffice = hiPrio libreoffice-still;
|
||||
|
||||
libreoffice-unwrapped = (hiPrio libreoffice-still).libreoffice;
|
||||
|
||||
libreoffice-args = {
|
||||
|
@ -34308,8 +34305,6 @@ with pkgs;
|
|||
|
||||
nixos-install-tools = callPackage ../tools/nix/nixos-install-tools { };
|
||||
|
||||
nixui = callPackage ../tools/package-management/nixui { node_webkit = nwjs_0_12; };
|
||||
|
||||
nixdoc = callPackage ../tools/nix/nixdoc {};
|
||||
|
||||
dnadd = callPackage ../tools/nix/dnadd { };
|
||||
|
|
|
@ -1257,6 +1257,8 @@ in {
|
|||
|
||||
bitcoinrpc = callPackage ../development/python-modules/bitcoinrpc { };
|
||||
|
||||
bite-parser = callPackage ../development/python-modules/bite-parser { };
|
||||
|
||||
bitlist = callPackage ../development/python-modules/bitlist { };
|
||||
|
||||
bitmath = callPackage ../development/python-modules/bitmath { };
|
||||
|
@ -2087,6 +2089,8 @@ in {
|
|||
|
||||
dataclasses-json = callPackage ../development/python-modules/dataclasses-json { };
|
||||
|
||||
dataclasses-serialization = callPackage ../development/python-modules/dataclasses-serialization { };
|
||||
|
||||
datadiff = callPackage ../development/python-modules/datadiff { };
|
||||
|
||||
datadog = callPackage ../development/python-modules/datadog { };
|
||||
|
@ -2486,6 +2490,8 @@ in {
|
|||
|
||||
doc8 = callPackage ../development/python-modules/doc8 { };
|
||||
|
||||
docformatter = callPackage ../development/python-modules/docformatter { };
|
||||
|
||||
docker = callPackage ../development/python-modules/docker { };
|
||||
|
||||
dockerfile-parse = callPackage ../development/python-modules/dockerfile-parse { };
|
||||
|
@ -5454,6 +5460,8 @@ in {
|
|||
|
||||
more-itertools = callPackage ../development/python-modules/more-itertools { };
|
||||
|
||||
more-properties = callPackage ../development/python-modules/more-properties { };
|
||||
|
||||
moretools = callPackage ../development/python-modules/moretools { };
|
||||
|
||||
morphys = callPackage ../development/python-modules/morphys { };
|
||||
|
@ -11269,6 +11277,8 @@ in {
|
|||
|
||||
xpybutil = callPackage ../development/python-modules/xpybutil { };
|
||||
|
||||
xsdata = callPackage ../development/python-modules/xsdata { };
|
||||
|
||||
xstatic-bootbox = callPackage ../development/python-modules/xstatic-bootbox { };
|
||||
|
||||
xstatic-bootstrap = callPackage ../development/python-modules/xstatic-bootstrap { };
|
||||
|
|
Loading…
Reference in a new issue