Merge staging-next-24.05 into staging-24.05

This commit is contained in:
github-actions[bot] 2024-05-25 00:15:19 +00:00 committed by GitHub
commit c535dd71e5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
53 changed files with 2303 additions and 447 deletions

View File

@ -7731,6 +7731,14 @@
fingerprint = "7FC7 98AB 390E 1646 ED4D 8F1F 797F 6238 68CD 00C2";
}];
};
greaka = {
email = "git@greaka.de";
github = "greaka";
githubId = 2805834;
name = "Greaka";
keys =
[{ fingerprint = "6275 FB5C C9AC 9D85 FF9E 44C5 EE92 A5CD C367 118C"; }];
};
greg = {
email = "greg.hellings@gmail.com";
github = "greg-hellings";
@ -11926,6 +11934,14 @@
githubId = 10626;
name = "Andreas Wagner";
};
lpostula = {
email = "lois@postu.la";
github = "loispostula";
githubId = 1423612;
name = "Loïs Postula";
keys =
[{ fingerprint = "0B4A E7C7 D3B7 53F5 3B3D 774C 3819 3C6A 09C3 9ED1"; }];
};
lrewega = {
email = "lrewega@c32.ca";
github = "lrewega";

View File

@ -345,6 +345,16 @@ with lib.maintainers; {
shortName = "freedesktop.org packaging";
};
fslabs = {
# Verify additions to this team with at least one already existing member of the team.
members = [
greaka
lpostula
];
scope = "Group registration for packages maintained by Foresight Spatial Labs.";
shortName = "Foresight Spatial Labs employees";
};
gcc = {
members = [
synthetica

View File

@ -361,7 +361,7 @@ in {
type = types.bool;
example = true;
description = ''
Set the `persistentTimer` option for the
Set the `Persistent` option for the
{manpage}`systemd.timer(5)`
which triggers the backup immediately if the last trigger
was missed (e.g. if the system was powered down).

View File

@ -70,7 +70,9 @@ in {
storage.lookup = mkDefault "db";
storage.blob = mkDefault "blob";
resolver.type = mkDefault "system";
resolver.public-suffix = mkDefault ["https://publicsuffix.org/list/public_suffix_list.dat"];
resolver.public-suffix = lib.mkDefault [
"file://${pkgs.publicsuffix-list}/share/publicsuffix/public_suffix_list.dat"
];
};
systemd.services.stalwart-mail = {

View File

@ -108,7 +108,7 @@ in
type = types.bool;
example = true;
description = ''
Set the `persistentTimer` option for the
Set the `Persistent` option for the
{manpage}`systemd.timer(5)`
which triggers the snapshot immediately if the last trigger
was missed (e.g. if the system was powered down).

View File

@ -260,6 +260,7 @@ in {
description = "Sync timer for Bitwarden Directory Connector";
wantedBy = ["timers.target"];
after = ["network-online.target"];
wants = ["network-online.target"];
timerConfig = {
OnCalendar = cfg.interval;
Unit = "bitwarden-directory-connector-cli.service";

View File

@ -83,6 +83,15 @@ in
} ++ (lib.mapAttrsToList (vhost: conf: {
virtualHosts.${vhost} = {
locations = {
"/".extraConfig = ''
# pass information via X-User and X-Email headers to backend, requires running with --set-xauthrequest flag
proxy_set_header X-User $user;
proxy_set_header X-Email $email;
# if you enabled --cookie-refresh, this is needed for it to work with auth_request
add_header Set-Cookie $auth_cookie;
'';
"/oauth2/auth" = let
maybeQueryArg = name: value:
if value == null then null
@ -102,6 +111,7 @@ in
proxy_pass_request_body off;
'';
};
"@redirectToAuth2ProxyLogin" = {
return = "307 https://${cfg.domain}/oauth2/start?rd=$scheme://$host$request_uri";
extraConfig = ''
@ -114,16 +124,10 @@ in
auth_request /oauth2/auth;
error_page 401 = @redirectToAuth2ProxyLogin;
# pass information via X-User and X-Email headers to backend,
# requires running with --set-xauthrequest flag
# set variables being used in locations."/".extraConfig
auth_request_set $user $upstream_http_x_auth_request_user;
auth_request_set $email $upstream_http_x_auth_request_email;
proxy_set_header X-User $user;
proxy_set_header X-Email $email;
# if you enabled --cookie-refresh, this is needed for it to work with auth_request
auth_request_set $auth_cookie $upstream_http_set_cookie;
add_header Set-Cookie $auth_cookie;
'';
};
}) cfg.virtualHosts)));

View File

@ -427,10 +427,6 @@ in
PrivateTmp = true;
CacheDirectory = "frigate";
CacheDirectoryMode = "0750";
BindPaths = [
"/migrations:${cfg.package}/share/frigate/migrations:ro"
];
};
};
};

View File

@ -1,122 +1,147 @@
# Rudimentary test checking that the Stalwart email server can:
# - receive some message through SMTP submission, then
# - serve this message through IMAP.
{
system ? builtins.currentSystem,
config ? { },
pkgs ? import ../../.. { inherit system config; },
lib ? pkgs.lib,
}:
let
certs = import ./common/acme/server/snakeoil-certs.nix;
domain = certs.domain;
makeTest = import ./make-test-python.nix;
mkTestName =
pkg: "${pkg.pname}_${pkg.version}";
stalwartPackages = {
inherit (pkgs) stalwart-mail_0_6 stalwart-mail;
};
stalwartAtLeast = lib.versionAtLeast;
makeStalwartTest =
{
package,
name ? mkTestName package,
}:
makeTest {
inherit name;
meta.maintainers = with lib.maintainers; [
happysalada pacien onny
];
in import ./make-test-python.nix ({ lib, ... }: {
name = "stalwart-mail";
nodes.machine = { lib, ... }: {
nodes.main = { pkgs, ... }: {
security.pki.certificateFiles = [ certs.ca.cert ];
security.pki.certificateFiles = [ certs.ca.cert ];
services.stalwart-mail = {
enable = true;
settings = {
server.hostname = domain;
certificate."snakeoil" = {
cert = "file://${certs.${domain}.cert}";
private-key = "file://${certs.${domain}.key}";
};
server.tls = {
certificate = "snakeoil";
services.stalwart-mail = {
enable = true;
implicit = false;
};
inherit package;
settings = {
server.hostname = domain;
server.listener = {
"smtp-submission" = {
bind = [ "[::]:587" ];
protocol = "smtp";
};
# TODO: Remove backwards compatibility as soon as we drop legacy version 0.6.0
certificate."snakeoil" = let
certPath = if stalwartAtLeast package.version "0.7.0" then "%{file://${certs.${domain}.cert}}%" else "file://${certs.${domain}.cert}";
keyPath = if stalwartAtLeast package.version "0.7.0" then "%{file:${certs.${domain}.key}}%" else "file://${certs.${domain}.key}";
in {
cert = certPath;
private-key = keyPath;
};
"imap" = {
bind = [ "[::]:143" ];
protocol = "imap";
server.tls = {
certificate = "snakeoil";
enable = true;
implicit = false;
};
server.listener = {
"smtp-submission" = {
bind = [ "[::]:587" ];
protocol = "smtp";
};
"imap" = {
bind = [ "[::]:143" ];
protocol = "imap";
};
};
session.auth.mechanisms = "[plain]";
session.auth.directory = "'in-memory'";
storage.directory = "in-memory";
session.rcpt.directory = "'in-memory'";
queue.outbound.next-hop = "'local'";
directory."in-memory" = {
type = "memory";
# TODO: Remove backwards compatibility as soon as we drop legacy version 0.6.0
principals = let
condition = if stalwartAtLeast package.version "0.7.0" then "class" else "type";
in builtins.map (p: p // { ${condition} = "individual"; }) [
{
name = "alice";
secret = "foobar";
email = [ "alice@${domain}" ];
}
{
name = "bob";
secret = "foobar";
email = [ "bob@${domain}" ];
}
];
};
};
};
resolver.public-suffix = [ ]; # do not fetch from web in sandbox
environment.systemPackages = [
(pkgs.writers.writePython3Bin "test-smtp-submission" { } ''
from smtplib import SMTP
session.auth.mechanisms = "[plain]";
session.auth.directory = "'in-memory'";
storage.directory = "in-memory";
with SMTP('localhost', 587) as smtp:
smtp.starttls()
smtp.login('alice', 'foobar')
smtp.sendmail(
'alice@${domain}',
'bob@${domain}',
"""
From: alice@${domain}
To: bob@${domain}
Subject: Some test message
session.rcpt.directory = "'in-memory'";
queue.outbound.next-hop = "'local'";
This is a test message.
""".strip()
)
'')
(pkgs.writers.writePython3Bin "test-imap-read" { } ''
from imaplib import IMAP4
with IMAP4('localhost') as imap:
imap.starttls()
status, [caps] = imap.login('bob', 'foobar')
assert status == 'OK'
imap.select()
status, [ref] = imap.search(None, 'ALL')
assert status == 'OK'
[msgId] = ref.split()
status, msg = imap.fetch(msgId, 'BODY[TEXT]')
assert status == 'OK'
assert msg[0][1].strip() == b'This is a test message.'
'')
];
directory."in-memory" = {
type = "memory";
principals = [
{
type = "individual";
name = "alice";
secret = "foobar";
email = [ "alice@${domain}" ];
}
{
type = "individual";
name = "bob";
secret = "foobar";
email = [ "bob@${domain}" ];
}
];
};
};
testScript = ''
start_all()
machine.wait_for_unit("stalwart-mail.service")
machine.wait_for_open_port(587)
machine.wait_for_open_port(143)
machine.succeed("test-smtp-submission")
machine.succeed("test-imap-read")
'';
};
environment.systemPackages = [
(pkgs.writers.writePython3Bin "test-smtp-submission" { } ''
from smtplib import SMTP
with SMTP('localhost', 587) as smtp:
smtp.starttls()
smtp.login('alice', 'foobar')
smtp.sendmail(
'alice@${domain}',
'bob@${domain}',
"""
From: alice@${domain}
To: bob@${domain}
Subject: Some test message
This is a test message.
""".strip()
)
'')
(pkgs.writers.writePython3Bin "test-imap-read" { } ''
from imaplib import IMAP4
with IMAP4('localhost') as imap:
imap.starttls()
status, [caps] = imap.login('bob', 'foobar')
assert status == 'OK'
imap.select()
status, [ref] = imap.search(None, 'ALL')
assert status == 'OK'
[msgId] = ref.split()
status, msg = imap.fetch(msgId, 'BODY[TEXT]')
assert status == 'OK'
assert msg[0][1].strip() == b'This is a test message.'
'')
];
};
testScript = /* python */ ''
main.wait_for_unit("stalwart-mail.service")
main.wait_for_open_port(587)
main.wait_for_open_port(143)
main.succeed("test-smtp-submission")
main.succeed("test-imap-read")
'';
meta = {
maintainers = with lib.maintainers; [ happysalada pacien ];
};
})
in
lib.mapAttrs (_: package: makeStalwartTest { inherit package; }) stalwartPackages

View File

@ -135,7 +135,10 @@ stdenv.mkDerivation (finalAttrs: {
inherit nixos-icons;
inherit (perlPackages) ImageMagick;
inherit (python3.pkgs) img2pdf;
pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
pkg-config = testers.hasPkgConfigModules {
package = finalAttrs.finalPackage;
version = lib.head (lib.splitString "-" finalAttrs.version);
};
};
meta = with lib; {

View File

@ -1,11 +1,11 @@
{
stable = {
chromedriver = {
hash_darwin = "sha256-DX0J3xeOK4Dy4BAjbrbu1rnIkmF8nlmy9tMaQhLsFcU=";
hash_darwin = "sha256-1gi+hWrVL+mBB8pHMXnX/8kzRCQqGuut/+wO/9yBABs=";
hash_darwin_aarch64 =
"sha256-hRJeaeQS30srO5M1Gi43VYR/KrjNAhH0XozkEzvcbA0=";
hash_linux = "sha256-CcBQhIsK7mL7VNJCs6ynhrQeXPuB793DysyV1nj90mM=";
version = "125.0.6422.76";
"sha256-skYFjXBvv+2u/K770Dd3uxFYFer6GGx/EgWfAgzE9pI=";
hash_linux = "sha256-67rXlDJeDSpcpEhNQq0rVS2bSWPy3GXVnTo6dwKAnZU=";
version = "125.0.6422.78";
};
deps = {
gn = {
@ -15,8 +15,8 @@
version = "2024-04-10";
};
};
hash = "sha256-m7WeRloS6tGH2AwhkNicpqThUQmS+9w2xFS2dbmu1vw=";
version = "125.0.6422.76";
hash = "sha256-EA8TzemtndFb8qAp4XWNjwWmNRz/P4Keh3k1Cn9qLEU=";
version = "125.0.6422.112";
};
ungoogled-chromium = {
deps = {

View File

@ -1,61 +1,83 @@
{ lib, python3Packages, fetchPypi, stdenv }:
{
lib,
stdenv,
python3Packages,
fetchPypi,
}:
python3Packages.buildPythonApplication rec {
pname = "dyndnsc";
version = "0.6.1";
pyproject = true;
src = fetchPypi {
inherit pname version;
sha256 = "13078d29eea2f9a4ca01f05676c3309ead5e341dab047e0d51c46f23d4b7fbb4";
hash = "sha256-EweNKe6i+aTKAfBWdsMwnq1eNB2rBH4NUcRvI9S3+7Q=";
};
postPatch = ''
substituteInPlace setup.py --replace "bottle==" "bottle>="
substituteInPlace setup.py \
--replace-fail '"pytest-runner"' ""
'';
nativeBuildInputs = with python3Packages; [ pytest-runner ];
propagatedBuildInputs = with python3Packages; [
pythonRelaxDeps = [ "bottle" ];
build-system = with python3Packages; [ setuptools ];
nativeBuildInputs = with python3Packages; [ pythonRelaxDepsHook ];
dependencies = with python3Packages; [
daemonocle
dnspython
json-logging
netifaces
requests
json-logging
setuptools
];
nativeCheckInputs = with python3Packages; [ bottle mock pytest-console-scripts pytestCheckHook ];
disabledTests = [
# dnswanip connects to an external server to discover the
# machine's IP address.
"dnswanip"
] ++ lib.optionals stdenv.isDarwin [
# The tests that spawn a server using Bottle cannot be run on
# macOS or Windows as the default multiprocessing start method
# on those platforms is 'spawn', which requires the code to be
# run to be picklable, which this code isn't.
# Additionaly, other start methods are unsafe and prone to failure
# on macOS; see https://bugs.python.org/issue33725.
"BottleServer"
nativeCheckInputs = with python3Packages; [
bottle
pytest-console-scripts
pytestCheckHook
];
disabledTests =
[
# dnswanip connects to an external server to discover the
# machine's IP address.
"dnswanip"
# AssertionError
"test_null_dummy"
]
++ lib.optionals stdenv.isDarwin [
# The tests that spawn a server using Bottle cannot be run on
# macOS or Windows as the default multiprocessing start method
# on those platforms is 'spawn', which requires the code to be
# run to be picklable, which this code isn't.
# Additionaly, other start methods are unsafe and prone to failure
# on macOS; see https://bugs.python.org/issue33725.
"BottleServer"
];
# Allow tests that bind or connect to localhost on macOS.
__darwinAllowLocalNetworking = true;
meta = with lib; {
description = "Dynamic DNS update client with support for multiple protocols";
mainProgram = "dyndnsc";
longDescription = ''
Dyndnsc is a command line client for sending updates to Dynamic
DNS (DDNS, DynDNS) services. It supports multiple protocols and
services, and it has native support for IPv6. The configuration
file allows using foreign, but compatible services. Dyndnsc
DNS (DDNS, DynDNS) services. It supports multiple protocols and
services, and it has native support for IPv6. The configuration
file allows using foreign, but compatible services. Dyndnsc
ships many different IP detection mechanisms, support for
configuring multiple services in one place and it has a daemon
mode for running unattended. It has a plugin system to provide
mode for running unattended. It has a plugin system to provide
external notification services.
'';
homepage = "https://github.com/infothrill/python-dyndnsc";
changelog = "https://github.com/infothrill/python-dyndnsc/releases/tag/${version}";
license = licenses.mit;
maintainers = with maintainers; [ AluisioASG ];
mainProgram = "dyndnsc";
platforms = platforms.unix;
};
}

View File

@ -1,16 +1,19 @@
{ lib
, python3
, fetchPypi
, fetchFromGitHub
, gitUpdater
}:
python3.pkgs.buildPythonApplication rec {
pname = "ablog";
version = "0.11.8";
version = "0.11.10";
format = "pyproject";
src = fetchPypi {
inherit pname version;
hash = "sha256-PpNBfa4g14l8gm9+PxOFc2NDey031D7Ohutx2OGUeak=";
src = fetchFromGitHub {
owner = "sunpy";
repo = "ablog";
rev = "v${version}";
hash = "sha256-8NyFLGtMJLUkojEhWpWNZz3zlfgGVgSvgk4dDEz1jzs=";
};
nativeBuildInputs = with python3.pkgs; [
@ -31,6 +34,7 @@ python3.pkgs.buildPythonApplication rec {
nativeCheckInputs = with python3.pkgs; [
pytestCheckHook
defusedxml
];
pytestFlagsArray = [
@ -39,6 +43,8 @@ python3.pkgs.buildPythonApplication rec {
"-W" "ignore::sphinx.deprecation.RemovedInSphinx90Warning" # Ignore ImportError
];
passthru.updateScript = gitUpdater { rev-prefix = "v"; };
meta = with lib; {
description = "ABlog for blogging with Sphinx";
mainProgram = "ablog";

View File

@ -37,13 +37,10 @@ stdenv.mkDerivation (finalAttrs: {
];
buildInputs = [
libclang
libffi
libxml2
zlib
];
propagatedBuildInputs = [
] ++ lib.optionals (!stdenv.isDarwin) [
libclang
];
@ -51,6 +48,8 @@ stdenv.mkDerivation (finalAttrs: {
(lib.cmakeOptionType "path" "CLANG_RESOURCE_DIR" "${lib.getDev libclang}")
(lib.cmakeBool "SPHINX_HTML" withHTML)
(lib.cmakeBool "SPHINX_MAN" withManual)
] ++ lib.optionals stdenv.isDarwin [
(lib.cmakeOptionType "path" "Clang_DIR" "${lib.getDev libclang}/lib/cmake/clang")
];
# 97% tests passed, 97 tests failed out of 2881

View File

@ -27,7 +27,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
};
hash = selectSystem {
x86_64-linux = "sha256-q6VIr55hXn47kZrE2i6McEOfp2FBOvwB0CcUnRHFMZs=";
aarch64-linux = "sha256-CQg2+p1P+Bg1uFM1PMTWtweS0TNElXTP7tI7D5WxixM=";
aarch64-linux = "sha256-Xn3X1C31UALBAsZIGyMWdp0HNhJEm5N+7Go7nMs8W64=";
};
in
fetchurl {
@ -61,6 +61,8 @@ stdenvNoCC.mkDerivation (finalAttrs: {
runHook postInstall
'';
passthru.updateScript = ./update.sh;
meta = with lib; {
homepage = "https://dbeaver.io/";
description = "Universal SQL Client for developers, DBA and analysts. Supports MySQL, PostgreSQL, MariaDB, SQLite, and more";

View File

@ -0,0 +1,25 @@
#!/usr/bin/env nix-shell
#!nix-shell -I nixpkgs=./. -i bash -p curl jq
latestVersion=$(curl "https://api.github.com/repos/dbeaver/dbeaver/tags" | jq -r '.[0].name')
currentVersion=$(nix-instantiate --eval -E "with import ./. {}; dbeaver-bin.version" | tr -d '"')
echo "latest version: $latestVersion"
echo "current version: $currentVersion"
if [[ "$latestVersion" == "$currentVersion" ]]; then
echo "package is up-to-date"
exit 0
fi
for i in \
"x86_64-linux linux.gtk.x86_64-nojdk.tar.gz" \
"aarch64-linux linux.gtk.aarch64-nojdk.tar.gz"
do
set -- $i
prefetch=$(nix-prefetch-url "https://github.com/dbeaver/dbeaver/releases/download/$latestVersion/dbeaver-ce-$latestVersion-$2")
hash=$(nix-hash --type sha256 --to-sri $prefetch)
update-source-version dbeaver-bin 0 "sha256-AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=" --system=$1
update-source-version dbeaver-bin $latestVersion $hash --system=$1
done

View File

@ -5,6 +5,7 @@
git,
testers,
makeWrapper,
githooks
}:
buildGoModule rec {
pname = "githooks";
@ -70,7 +71,7 @@ buildGoModule rec {
'';
passthru.tests.version = testers.testVersion {
package = "githooks-cli";
package = githooks;
command = "githooks-cli --version";
inherit version;
};

View File

@ -0,0 +1,40 @@
{
lib,
rustPlatform,
fetchFromGitHub,
stdenv,
darwin,
}:
let
version = "0.1.0-alpha.5";
in
rustPlatform.buildRustPackage {
pname = "gobang";
inherit version;
src = fetchFromGitHub {
owner = "tako8ki";
repo = "gobang";
rev = "v${version}";
hash = "sha256-RinfQhG7iCp0Xcs9kLs3I2/wjkJEgCjFYe3mS+FY9Ak=";
};
cargoPatches = [ ./update-sqlx.patch ];
cargoHash = "sha256-3A3bf7iq1acsWttKmcJmxWM74B0qUIcROBAkjDZFKxE=";
buildInputs =
with darwin.apple_sdk.frameworks;
lib.optionals stdenv.isDarwin [
CoreFoundation
Security
SystemConfiguration
];
meta = {
description = "A cross-platform TUI database management tool written in Rust";
homepage = "https://github.com/tako8ki/gobang";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ figsoda ];
};
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,40 @@
{
lib,
stdenv,
bash,
fetchFromGitHub,
makeWrapper,
}:
stdenv.mkDerivation rec {
pname = "lse";
version = "4.14nw";
src = fetchFromGitHub {
owner = "diego-treitos";
repo = "linux-smart-enumeration";
rev = "refs/tags/${version}";
hash = "sha256-qGLmrbyeyhHG6ONs7TJLTm68xpvxB1iAnMUApfTSqEk=";
};
buildInputs = [ bash ];
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
mkdir -p $out/bin
cp lse.sh $out/bin/lse.sh
wrapProgram $out/bin/lse.sh \
--prefix PATH : ${lib.makeBinPath [ bash ]}
'';
meta = with lib; {
description = "Linux enumeration tool with verbosity levels";
homepage = "https://github.com/diego-treitos/linux-smart-enumeration";
changelog = "https://github.com/diego-treitos/linux-smart-enumeration/releases/tag/${version}";
license = licenses.gpl3Only;
maintainers = with maintainers; [ fab ];
mainProgram = "lse.sh";
platforms = platforms.all;
};
}

View File

@ -6,13 +6,13 @@
stdenvNoCC.mkDerivation rec {
pname = "nuclei-templates";
version = "9.8.6";
version = "9.8.7";
src = fetchFromGitHub {
owner = "projectdiscovery";
repo = "nuclei-templates";
rev = "refs/tags/v${version}";
hash = "sha256-3hJfWSBciJ/UutVBIGisptcxmtWfvSfTbx55cyWxs4k=";
hash = "sha256-Masj0v9WGcLJKd/43T4klwyIM2uqhvuLSW5PBuKzsQg=";
};
installPhase = ''

View File

@ -0,0 +1,66 @@
{
lib,
stdenv,
fetchFromGitHub,
rustPlatform,
meson,
ninja,
pkg-config,
rustc,
cargo,
wrapGAppsHook4,
desktop-file-utils,
libadwaita,
openssl,
darwin,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "share-preview";
version = "0.5.0";
src = fetchFromGitHub {
owner = "rafaelmardojai";
repo = "share-preview";
rev = finalAttrs.version;
hash = "sha256-FqualaTkirB+gBcgkThQpSBHhM4iaXkiGujwBUnUX0E=";
};
cargoDeps = rustPlatform.fetchCargoTarball {
inherit (finalAttrs) src;
name = "share-preview-${finalAttrs.version}";
hash = "sha256-Gh6bQZD1mlkj3XeGp+fF/NShC4PZCZSEqymrsSdX4Ec=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
rustPlatform.cargoSetupHook
rustc
cargo
wrapGAppsHook4
desktop-file-utils
];
buildInputs = [
libadwaita
openssl
] ++ lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.Foundation
darwin.apple_sdk.frameworks.SystemConfiguration
];
env.NIX_CFLAGS_COMPILE = toString (
lib.optionals stdenv.isDarwin [ "-Wno-error=incompatible-function-pointer-types" ]
);
meta = {
description = "Preview and debug websites metadata tags for social media share";
homepage = "https://apps.gnome.org/SharePreview";
license = lib.licenses.gpl3Plus;
mainProgram = "share-preview";
maintainers = with lib.maintainers; [ aleksana ];
platforms = lib.platforms.unix;
};
})

View File

@ -8,12 +8,14 @@ mkCoqDerivation {
release."0.9.1".sha256 = "sha256-lRRY+501x+DqNeItBnbwYIqWLDksinWIY4x/iojRNYU=";
release."0.9.2".sha256 = "sha256-DPYCZS8CzkfgpR+lmYhV2v20ezMtyWp8hdWpuh0OOQU=";
release."0.9.3".sha256 = "sha256-9WX3gsw+4btJLqcGg2W+7Qy+jaZtkfw7vCp8sXYmaWw=";
release."0.9.4".sha256 = "sha256-fXTAsRdPisNhg8Umaa7S7gZ1M8zuPGg426KP9fAkmXQ=";
releaseRev = v: "v${v}";
inherit version;
defaultVersion = with lib.versions; lib.switch [ coq.coq-version mathcomp.version ] [
{ cases = [ (isGe "8.16") (range "2.0.0" "2.1.0") ]; out = "0.9.3"; }
{ cases = [ (isGe "8.16") (range "2.0.0" "2.2.0") ]; out = "0.9.4"; }
{ cases = [ (range "8.16" "8.18") (range "2.0.0" "2.1.0" ) ]; out = "0.9.3"; }
{ cases = [ (range "8.14" "8.18") (range "1.13.0" "1.18.0") ]; out = "0.9.2"; }
{ cases = [ (range "8.14" "8.16") (range "1.13.0" "1.14.0") ]; out = "0.9.1"; }
{ cases = [ (range "8.12" "8.13") (range "1.12.0" "1.14.0") ]; out = "0.9"; }

View File

@ -22,7 +22,11 @@ stdenv.mkDerivation rec {
'';
buildInputs = [ ncurses ];
preBuild = ''
makeFlagsArray+=(CFLAGS="-O2 -std=c89")
'';
makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" "PREFIX=$(out)" ];
enableParallelBuilding = true;
# ...-bash-5.2-p15/bin/bash: line 1: ...-s9fes-20181205/bin/s9help: No such file or directory
# make: *** [Makefile:157: install-util] Error 1

View File

@ -58,10 +58,15 @@ buildPythonPackage rec {
];
disabledTests = [
# calls apache benchmark and fails, no usable output
# Test calls apache benchmark and fails, no usable output
"test_concurrency_error_rates"
];
disabledTestPaths = [
# Benchmark and performance tests are not relevant for Nixpkgs
"tests/performance/"
];
preCheck = ''
${lib.getBin pkgs.redis}/bin/redis-server &
REDIS_PID=$!
@ -83,7 +88,7 @@ buildPythonPackage rec {
description = "Python API Rate Limit Decorator";
homepage = "https://github.com/aio-libs/aiocache";
changelog = "https://github.com/aio-libs/aiocache/releases/tag/v${version}";
license = with licenses; [ bsd3 ];
license = licenses.bsd3;
maintainers = with maintainers; [ fab ];
};
}

View File

@ -4,7 +4,6 @@
certifi,
cryptography,
fetchPypi,
fetchpatch,
openssl,
pylsqpack,
pyopenssl,
@ -16,26 +15,19 @@
buildPythonPackage rec {
pname = "aioquic";
version = "0.9.25";
version = "1.0.0";
pyproject = true;
disabled = pythonOlder "3.8";
src = fetchPypi {
inherit pname version;
hash = "sha256-cHlceJBTJthVwq5SQHIjSq5YbHibgSkuJy0CHpsEMKM=";
hash = "sha256-7THCta+pjFtsr6TzYUnerx3/bFppcB6t0nFnQV+fFmA=";
};
patches = [
(fetchpatch {
url = "https://github.com/aiortc/aioquic/commit/e899593805e0b31325a1d347504eb8e6100fe87d.diff";
hash = "sha256-TTpIIWX/R4k2KxhsN17O9cRW/dN0AARYnju8JTht3D8=";
})
];
build-system = [ setuptools ];
nativeBuildInputs = [ setuptools ];
propagatedBuildInputs = [
dependencies = [
certifi
cryptography
pylsqpack

View File

@ -5,13 +5,16 @@
fetchpatch,
pyopenssl,
pytestCheckHook,
pythonOlder,
setuptools,
}:
buildPythonPackage rec {
pname = "aiosasl";
version = "0.5.0";
pyproject = true;
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "horazont";
@ -28,6 +31,14 @@ buildPythonPackage rec {
})
];
postPatch = ''
# https://github.com/horazont/aiosasl/issues/28
substituteInPlace tests/test_aiosasl.py \
--replace-fail "assertRaisesRegexp" "assertRaisesRegex"
'';
build-system = [ setuptools ];
nativeCheckInputs = [
pyopenssl
pytestCheckHook

View File

@ -1,27 +1,32 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
aiosasl,
aioopenssl,
aiosasl,
babel,
buildPythonPackage,
dnspython,
fetchFromGitHub,
lxml,
multidict,
pyasn1,
pyasn1-modules,
pyasn1,
pyopenssl,
pytestCheckHook,
pythonAtLeast,
pythonOlder,
pythonRelaxDepsHook,
pytz,
setuptools,
sortedcollections,
tzlocal,
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "aioxmpp";
version = "0.13.3";
pyproject = true;
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "horazont";
@ -30,7 +35,15 @@ buildPythonPackage rec {
hash = "sha256-bQPKEM5eKhFI3Kx3U1espdxqjnG4yUgOXmYCrd98PDo=";
};
propagatedBuildInputs = [
pythonRelaxDeps = [
"lxml"
];
build-system = [ setuptools ];
nativeBuildInputs = [ pythonRelaxDepsHook ];
dependencies = [
aiosasl
aioopenssl
babel
@ -60,12 +73,23 @@ buildPythonPackage rec {
disabledTests = [
# AttributeError: 'zoneinfo.ZoneInfo' object has no attribute 'normalize'
"test_convert_field_datetime_default_locale"
] ++ lib.optionals (pythonAtLeast "3.12") [
# asyncio issues
"test_is_abstract"
"Testbackground"
"TestCapturingXSO"
"Testcheck_x509"
"TestClient"
"TestIntegerType"
"TestStanzaStream"
"TestStanzaToken"
"TestXMLStream"
];
meta = {
changelog = "https://github.com/horazont/aioxmpp/blob/${src.rev}/docs/api/changelog.rst";
description = "Pure-python XMPP library for asyncio";
homepage = "https://github.com/horazont/aioxmpp";
changelog = "https://github.com/horazont/aioxmpp/blob/${src.rev}/docs/api/changelog.rst";
license = lib.licenses.lgpl3Plus;
maintainers = with lib.maintainers; [ dotlambda ];
};

View File

@ -2,45 +2,49 @@
lib,
buildPythonPackage,
fetchFromGitHub,
python,
fetchpatch,
setuptools,
mock,
boto,
pytest,
boto3,
pytestCheckHook,
}:
buildPythonPackage rec {
pname = "amazon-kclpy";
version = "2.1.3";
format = "setuptools";
version = "2.1.4";
pyproject = true;
src = fetchFromGitHub {
owner = "awslabs";
repo = "amazon-kinesis-client-python";
rev = "refs/tags/v${version}";
hash = "sha256-3BhccRJd6quElXZSix1aVIqWr9wdcTTziDhnIOLiPPo=";
hash = "sha256-TWIGu7WuoaPhk8cz+hMXvGLIPQ5kly8aj20ZtvTZzwg=";
};
# argparse is just required for python2.6
prePatch = ''
substituteInPlace setup.py \
--replace "'argparse'," ""
'';
propagatedBuildInputs = [
mock
boto
patches = [
(fetchpatch {
name = "remove-deprecated-boto.patch";
url = "https://github.com/awslabs/amazon-kinesis-client-python/commit/bd2c442cdd1b0e2c99d3471c1d3ffcc9161a7c42.patch";
hash = "sha256-5W0qItDGjx1F6IllzLH57XCpToKrAu9mTbzv/1wMXuY=";
})
];
nativeCheckInputs = [ pytest ];
build-system = [ setuptools ];
checkPhase = ''
${python.interpreter} -m pytest
'';
dependencies = [
mock
boto3
];
pythonImportsCheck = [ "amazon_kclpy" ];
nativeCheckInputs = [ pytestCheckHook ];
meta = with lib; {
description = "Amazon Kinesis Client Library for Python";
homepage = "https://github.com/awslabs/amazon-kinesis-client-python";
license = licenses.amazonsl;
license = licenses.asl20;
maintainers = with maintainers; [ psyanticy ];
broken = true;
};
}

View File

@ -2,8 +2,6 @@
lib,
buildPythonPackage,
fetchPypi,
pbr,
appdirs,
cliff,
dogpile-cache,
jsonschema,
@ -11,12 +9,14 @@
openstacksdk,
osc-lib,
oslo-utils,
oslotest,
pbr,
platformdirs,
pyyaml,
requests,
stevedore,
stestr,
requests-mock,
oslotest,
stestr,
stevedore,
}:
buildPythonPackage rec {
@ -30,8 +30,6 @@ buildPythonPackage rec {
};
propagatedBuildInputs = [
pbr
appdirs
cliff
dogpile-cache
jsonschema
@ -39,6 +37,8 @@ buildPythonPackage rec {
openstacksdk
osc-lib
oslo-utils
pbr
platformdirs
pyyaml
requests
stevedore

View File

@ -1,40 +0,0 @@
{
lib,
buildPythonPackage,
numpy,
libsamplerate,
fetchFromGitHub,
}:
buildPythonPackage {
pname = "scikits-samplerate";
version = "0.3.3";
format = "setuptools";
src = fetchFromGitHub {
owner = "cournape";
repo = "samplerate";
rev = "a536c97eb2d6195b5f266ea3cc3a35364c4c2210";
hash = "sha256-7x03Q6VXfP9p8HCk15IDZ9HeqTyi5F1AlGX/otdh8VU=";
};
buildInputs = [ libsamplerate ];
propagatedBuildInputs = [ numpy ];
preConfigure = ''
cat > site.cfg << END
[samplerate]
library_dirs=${libsamplerate.out}/lib
include_dirs=${lib.getDev libsamplerate}/include
END
'';
doCheck = false;
meta = with lib; {
homepage = "https://github.com/cournape/samplerate";
description = "High quality sampling rate convertion from audio data in numpy arrays";
license = licenses.gpl2;
};
}

View File

@ -43,16 +43,16 @@
buildPythonPackage rec {
pname = "strawberry-graphql";
version = "0.219.2";
format = "pyproject";
version = "0.230.0";
pyproject = true;
disabled = pythonOlder "3.8";
disabled = pythonOlder "3.10";
src = fetchFromGitHub {
owner = "strawberry-graphql";
repo = "strawberry";
rev = "refs/tags/${version}";
hash = "sha256-uIUETjzuDnlQp6wM7uxyLRSMT5uyrXFrI9NilcjP0BU=";
hash = "sha256-jhInHoOvPGIEoSddv8+30gY38L6XR5OEATUTdrHbNpA=";
};
patches = [
@ -62,22 +62,16 @@ buildPythonPackage rec {
url = "https://github.com/strawberry-graphql/strawberry/commit/710bb96f47c244e78fc54c921802bcdb48f5f421.patch";
hash = "sha256-ekUZ2hDPCqwXp9n0YjBikwSkhCmVKUzQk7LrPECcD7Y=";
})
(fetchpatch {
# https://github.com/strawberry-graphql/strawberry/pull/3255
name = "fix-tests-with-pydantic_2.patch";
url = "https://github.com/strawberry-graphql/strawberry/commit/0a0dc284ee6d31d4e82ac7ff1ed9fea4dff39fa6.patch";
hash = "sha256-LACWD7XA6YL/apJwhpx3LPCKxKUfa+XWyTLK+Zkxlaw=";
})
];
postPatch = ''
substituteInPlace pyproject.toml \
--replace "--emoji --mypy-ini-file=mypy.ini" "" \
--replace-fail "--emoji --mypy-ini-file=mypy.ini" "" \
'';
nativeBuildInputs = [ poetry-core ];
build-system = [ poetry-core ];
propagatedBuildInputs = [
dependencies = [
graphql-core
python-dateutil
typing-extensions
@ -135,9 +129,8 @@ buildPythonPackage rec {
rich
libcst
];
# starlite = [
# starlite
# ];
# starlite = [ starlite ];
# litestar = [ litestar ];
pyinstrument = [ pyinstrument ];
};
@ -169,16 +162,17 @@ buildPythonPackage rec {
"tests/test_dataloaders.py"
"tests/utils/test_pretty_print.py"
"tests/websockets/test_graphql_transport_ws.py"
"tests/litestar/"
];
__darwinAllowLocalNetworking = true;
meta = with lib; {
description = "A GraphQL library for Python that leverages type annotations";
mainProgram = "strawberry";
homepage = "https://strawberry.rocks";
changelog = "https://github.com/strawberry-graphql/strawberry/blob/${version}/CHANGELOG.md";
license = with licenses; [ mit ];
license = licenses.mit;
maintainers = with maintainers; [ izorkin ];
mainProgram = "strawberry";
};
}

View File

@ -4,25 +4,40 @@
fetchFromGitHub,
requests,
webob,
fetchpatch,
setuptools,
}:
buildPythonPackage rec {
pname = "tokenlib";
version = "0.3.1";
format = "setuptools";
version = "2.0.0";
pyproject = true;
build-system = [ setuptools ];
src = fetchFromGitHub {
owner = "mozilla-services";
repo = pname;
rev = "refs/tags/${version}";
sha256 = "0bq6dqyfwh29pg8ngmrm4mx4q27an9lsj0p9l79p9snn4g2rxzc8";
repo = "tokenlib";
rev = "${version}";
hash = "sha256-+KybaLb4XAcuBARJUhL5gK71jfNMb8YL8dV5Vzf7yXI=";
};
propagatedBuildInputs = [
patches = [
# fix wrong function name in tests
# See https://github.com/mozilla-services/tokenlib/pull/9
(fetchpatch {
url = "https://github.com/mozilla-services/tokenlib/pull/9/commits/cb7ef761f82f36e40069bd1b8684eec05af3b8a3.patch";
hash = "sha256-hc+iydxZu9bFqBD0EQDWMkRs2ibqNAhx6Qxjh6ppKNw=";
})
];
dependencies = [
requests
webob
];
pythonImportsCheck = [ "tokenlib" ];
meta = with lib; {
homepage = "https://github.com/mozilla-services/tokenlib";
description = "Generic support library for signed-token-based auth schemes";

View File

@ -0,0 +1,54 @@
{
lib,
aiohttp,
aioresponses,
buildPythonPackage,
dataclasses-json,
fetchFromGitHub,
marshmallow,
poetry-core,
pytest-asyncio,
pytestCheckHook,
pythonOlder,
websockets,
}:
buildPythonPackage rec {
pname = "weatherflow4py";
version = "0.2.20";
pyproject = true;
disabled = pythonOlder "3.11";
src = fetchFromGitHub {
owner = "jeeftor";
repo = "weatherflow4py";
rev = "refs/tags/v${version}";
hash = "sha256-kkNGhFhciOfhrbjxLM01YC2IRmkdKEbk4EUyDJZJuxU=";
};
build-system = [ poetry-core ];
dependencies = [
aiohttp
dataclasses-json
marshmallow
websockets
];
nativeCheckInputs = [
aioresponses
pytest-asyncio
pytestCheckHook
];
pythonImportsCheck = [ "weatherflow4py" ];
meta = with lib; {
description = "Module to interact with the WeatherFlow REST API";
homepage = "https://github.com/jeeftor/weatherflow4py";
changelog = "https://github.com/jeeftor/weatherflow4py/releases/tag/v${version}";
license = licenses.mit;
maintainers = with maintainers; [ fab ];
};
}

View File

@ -18,6 +18,10 @@ buildPythonPackage rec {
hash = "sha256-mRestRJukaf7ti3vIs/MM/R+zpGmK551j5HAM2chBsE=";
};
patches = [
./remove-typo-in-test-case.patch
];
propagatedBuildInputs = [
paramiko
tornado
@ -27,11 +31,6 @@ buildPythonPackage rec {
pythonImportsCheck = [ "webssh" ];
disabledTests = [
# Test fails with AttributeError (possibly related to paramiko update)
"test_app_with_bad_host_key"
];
meta = with lib; {
description = "Web based SSH client";
mainProgram = "wssh";

View File

@ -0,0 +1,18 @@
---
tests/test_handler.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/test_handler.py b/tests/test_handler.py
index a9ad924..950e672 100644
--- a/tests/test_handler.py
+++ b/tests/test_handler.py
@@ -336,5 +336,5 @@ class TestIndexHandler(unittest.TestCase):
ssh.exec_command.return_value = (stdin, stdout, stderr)
encoding = IndexHandler.get_default_encoding(handler, ssh)
- self.assertEquals("utf-8", encoding)
+ self.assertEqual("utf-8", encoding)
--
2.44.0

View File

@ -1,35 +0,0 @@
{ lib
, rustPlatform
, fetchFromGitHub
, stdenv
, CoreFoundation
, Security
, SystemConfiguration
}:
rustPlatform.buildRustPackage rec {
pname = "gobang";
version = "0.1.0-alpha.5";
src = fetchFromGitHub {
owner = "tako8ki";
repo = pname;
rev = "v${version}";
sha256 = "02glb3hlprpdc72ji0248a7g0vr36yxr0gfbbms2m25v251dyaa6";
};
cargoSha256 = "sha256-Tiefet5gLpiuYY6Scg5fjnaPiZfVl5Gy2oZFdhgNRxY=";
buildInputs = lib.optionals stdenv.isDarwin [
CoreFoundation
Security
SystemConfiguration
];
meta = with lib; {
description = "A cross-platform TUI database management tool written in Rust";
homepage = "https://github.com/tako8ki/gobang";
license = licenses.mit;
maintainers = with maintainers; [ figsoda ];
};
}

View File

@ -5,13 +5,13 @@
buildGoModule rec {
pname = "goimports-reviser";
version = "3.6.4";
version = "3.6.5";
src = fetchFromGitHub {
owner = "incu6us";
repo = "goimports-reviser";
rev = "v${version}";
hash = "sha256-+GVC/qJnqWm5tsn2Y5BPafapp7ct9kqHWlDNxukEZsM=";
hash = "sha256-46s6A1sGqoJR3XihaCkVCxTpManl330mMcJ8hv66zDc=";
};
vendorHash = "sha256-z+FeAXPXKi653im2X2WOP1R9gRl/x7UBnndoEXoxdwA=";

View File

@ -2,7 +2,7 @@
# Do not edit!
{
version = "2024.5.4";
version = "2024.5.5";
components = {
"3_day_blinds" = ps: with ps; [
];
@ -4896,7 +4896,8 @@
pyweatherflowudp
];
"weatherflow_cloud" = ps: with ps; [
]; # missing inputs: weatherflow4py
weatherflow4py
];
"weatherkit" = ps: with ps; [
apple-weatherkit
];
@ -5974,6 +5975,7 @@
"waze_travel_time"
"weather"
"weatherflow"
"weatherflow_cloud"
"weatherkit"
"webhook"
"webostv"

View File

@ -550,7 +550,7 @@ let
extraBuildInputs = extraPackages python.pkgs;
# Don't forget to run update-component-packages.py after updating
hassVersion = "2024.5.4";
hassVersion = "2024.5.5";
in python.pkgs.buildPythonApplication rec {
pname = "homeassistant";
@ -568,13 +568,13 @@ in python.pkgs.buildPythonApplication rec {
owner = "home-assistant";
repo = "core";
rev = "refs/tags/${version}";
hash = "sha256-YJluhc1MCRxeDtn8R9tF2QYA6qCiYpjOpRJaQeay3lk=";
hash = "sha256-WAwLir9+O82kNBAwy0hUdfVxgDb3C4sIRDcyzVxfcuM=";
};
# Secondary source is pypi sdist for translations
sdist = fetchPypi {
inherit pname version;
hash = "sha256-e2evRFP/l2HHcDgMUWQEM7xvvAfLRwdFtz+u2mwXepI=";
hash = "sha256-kcZM+IK96/q2GXeDSJzJTbzbz5mYcHevTDLpKspII6o=";
};
build-system = with python.pkgs; [

View File

@ -0,0 +1,13 @@
{ grafanaPlugin, lib }:
grafanaPlugin {
pname = "grafana-oncall-app";
version = "1.5.1";
zipHash = "sha256-3mC4TJ9ACM9e3e6UKI5vaDwXuW6RjbsOQFJU5v0wjk8=";
meta = with lib; {
description = "Developer-friendly incident response for Grafana";
license = licenses.agpl3Only;
maintainers = lib.teams.fslabs.members;
platforms = platforms.unix;
};
}

View File

@ -8,6 +8,7 @@
grafadruid-druid-datasource = callPackage ./grafadruid-druid-datasource { };
grafana-clickhouse-datasource = callPackage ./grafana-clickhouse-datasource { };
grafana-clock-panel = callPackage ./grafana-clock-panel { };
grafana-oncall-app = callPackage ./grafana-oncall-app { };
grafana-piechart-panel = callPackage ./grafana-piechart-panel { };
grafana-polystat-panel = callPackage ./grafana-polystat-panel { };
grafana-worldmap-panel = callPackage ./grafana-worldmap-panel { };

View File

@ -1,28 +1,34 @@
{ buildGoModule
, fetchFromGitHub
, lib
, stdenv
{
lib,
stdenv,
buildGoModule,
fetchFromGitHub,
}:
buildGoModule rec {
pname = "swego";
version = "1.0";
version = "1.1";
src = fetchFromGitHub {
owner = "nodauf";
repo = "Swego";
rev = "v${version}";
sha256 = "sha256-OlaNDXKaIim5n0niqYIpRliVo7lse76vNxPKF6B6yF0=";
rev = "refs/tags/v${version}";
hash = "sha256-O/wczHyaMev0CpAXoDxiN7TtHDsthG+jaH31SPMEB34=";
};
vendorHash = "sha256-N4HDngQFNCzQ74W52R0khetN6+J7npvBC/bYZBAgLB4=";
vendorHash = "sha256-mJWJdwbZq042//hM3WWp2rnLC1GebckUnsIopbF858Q=";
postInstall = ''
mv $out/bin/src $out/bin/$pname
'';
ldflags = [
"-w"
"-s"
];
meta = with lib; {
description = "Simple Webserver in Golang";
description = "Simple Webserver";
longDescription = ''
Swiss army knife Webserver in Golang. Similar to the Python
SimpleHTTPServer but with many features.

View File

@ -6,6 +6,7 @@
, postgresql
, libiconv
, Security
, SystemConfiguration
, protobuf
, rustfmt
, nixosTests
@ -33,7 +34,7 @@ rustPlatform.buildRustPackage rec {
cargoHash = pinData.serverCargoHash;
buildInputs = [ postgresql ]
++ lib.optionals stdenv.isDarwin [ libiconv Security ];
++ lib.optionals stdenv.isDarwin [ libiconv Security SystemConfiguration ];
# Using OPENSSL_NO_VENDOR is not an option on darwin
# As of version 0.10.35 rust-openssl looks for openssl on darwin

View File

@ -10,16 +10,35 @@
};
meta.license = lib.licenses.agpl3Only;
};
themes.geist = stdenv.mkDerivation rec {
pname = "geist";
version = "2.0.3";
src = fetchzip {
inherit version;
name = pname;
url = "https://github.com/christophery/geist/archive/refs/tags/${version}.zip";
hash = "sha256-c85oRhqu5E5IJlpgqKJRQITur1W7x40obOvHZbPevzU=";
themes = {
geist = stdenv.mkDerivation rec {
pname = "geist";
version = "2.0.3";
src = fetchzip {
inherit version;
name = pname;
url = "https://github.com/christophery/geist/archive/refs/tags/${version}.zip";
hash = "sha256-c85oRhqu5E5IJlpgqKJRQITur1W7x40obOvHZbPevzU=";
};
meta.license = lib.licenses.gpl2Only;
};
proton = stdenv.mkDerivation rec {
pname = "proton";
version = "1.0.1";
src = fetchzip {
inherit version;
name = pname;
url = "https://github.com/christophery/proton/archive/refs/tags/${version}.zip";
hash = "sha256-JgKyLJ3dRqh1uwlsNuffCOM7LPBigGkLVFqftjFAiP4=";
};
installPhase = ''
runHook preInstall
mkdir -p $out
cp -r ./* $out/
runHook postInstall
'';
meta.license = lib.licenses.mit;
};
meta.license = lib.licenses.gpl2Only;
};
}

View File

@ -6,13 +6,13 @@
buildGoModule rec {
pname = "govulncheck";
version = "1.1.0";
version = "1.1.1";
src = fetchFromGitHub {
owner = "golang";
repo = "vuln";
rev = "refs/tags/v${version}";
hash = "sha256-sS58HyrwyRv3zYi8OgiDYnKSbyu2i3KVoSX/0wQbqGw=";
hash = "sha256-aDt4TCbs5yBeJu/Fr95uI3BvPBaclnQMuJYPUXT7S+I=";
};
patches = [
@ -23,7 +23,7 @@ buildGoModule rec {
})
];
vendorHash = "sha256-ZHf//khvBGG+gRBKoKZo4NKoIJCQsbQfe2uT7cAHDcM=";
vendorHash = "sha256-YsZ9CchThybwgUjBg6hDQZ0bEEO18lidbGf9CIfzICc=";
subPackages = [
"cmd/govulncheck"

View File

@ -1,49 +1,27 @@
{ lib
, stdenv
, python3
, fetchPypi
, fetchFromGitHub
, wrapQtAppsHook
, qtbase
, qtwayland
}:
let
python = python3.override {
packageOverrides = self: super: {
pynitrokey = super.pynitrokey.overridePythonAttrs (old: rec {
version = "0.4.45";
src = fetchPypi {
inherit (old) pname;
inherit version;
hash = "sha256-iY4ThrmXP7pEjTYYU4lePVAbuJGTdHX3iKswXzuf7W8=";
};
});
};
};
in python.pkgs.buildPythonApplication rec {
python3.pkgs.buildPythonApplication rec {
pname = "nitrokey-app2";
version = "2.2.2";
version = "2.3.0";
pyproject = true;
disabled = python.pythonOlder "3.9";
disabled = python3.pythonOlder "3.9";
src = fetchFromGitHub {
owner = "Nitrokey";
repo = "nitrokey-app2";
rev = "v${version}";
hash = "sha256-MiyfmsrKZRoe7YMEjR1LHPesfJh6+dcSydoEAgrALJ8=";
hash = "sha256-BSq3ezNt6btQUO1hMVw9bN3VCyUOUhfRFJcHDGkIm6Q=";
};
# https://github.com/Nitrokey/nitrokey-app2/issues/152
#
# pythonRelaxDepsHook does not work here, because it runs in postBuild and
# only modifies the dependencies in the built distribution.
postPatch = ''
substituteInPlace pyproject.toml --replace 'pynitrokey = "' 'pynitrokey = ">='
'';
nativeBuildInputs = with python.pkgs; [
nativeBuildInputs = with python3.pkgs; [
poetry-core
wrapQtAppsHook
];
@ -52,7 +30,7 @@ in python.pkgs.buildPythonApplication rec {
qtwayland
];
propagatedBuildInputs = with python.pkgs; [
propagatedBuildInputs = with python3.pkgs; [
pynitrokey
pyudev
pyside6

View File

@ -1,57 +1,59 @@
{ lib
, fetchFromGitHub
, python3
{
lib,
fetchFromGitHub,
python3,
}:
python3.pkgs.buildPythonApplication rec {
pname = "wapiti";
version = "3.1.8";
format = "pyproject";
pyproject = true;
src = fetchFromGitHub {
owner = "wapiti-scanner";
repo = pname;
repo = "wapiti";
rev = "refs/tags/${version}";
hash = "sha256-2ssbczUa4pTA5Fai+sK1hES8skJMIHxa/R2hNIiEVLs=";
};
postPatch = ''
# Ignore pinned versions
sed -i -e "s/==[0-9.]*//;s/>=[0-9.]*//" pyproject.toml
# Remove code coverage checking
substituteInPlace pyproject.toml \
--replace "--cov --cov-report=xml" ""
'';
nativeBuildInputs = with python3.pkgs; [
setuptools
wheel
];
pythonRelaxDeps = true;
propagatedBuildInputs = with python3.pkgs; [
aiocache
aiohttp
aiosqlite
arsenic
beautifulsoup4
browser-cookie3
dnspython
h11
httpcore
httpx
httpx-ntlm
loguru
mako
markupsafe
mitmproxy
pyasn1
six
sqlalchemy
tld
yaswfp
] ++ httpx.optional-dependencies.brotli
++ httpx.optional-dependencies.socks;
build-system = with python3.pkgs; [ setuptools ];
nativeBuildInputs = with python3.pkgs; [ pythonRelaxDepsHook ];
dependencies =
with python3.pkgs;
[
aiocache
aiohttp
aiosqlite
arsenic
beautifulsoup4
browser-cookie3
dnspython
h11
httpcore
httpx
httpx-ntlm
loguru
mako
markupsafe
mitmproxy
pyasn1
six
sqlalchemy
tld
yaswfp
]
++ httpx.optional-dependencies.brotli
++ httpx.optional-dependencies.socks;
__darwinAllowLocalNetworking = true;
@ -138,9 +140,7 @@ python3.pkgs.buildPythonApplication rec {
"tests/attack/test_mod_ssl.py"
];
pythonImportsCheck = [
"wapitiCore"
];
pythonImportsCheck = [ "wapitiCore" ];
meta = with lib; {
description = "Web application vulnerability scanner";
@ -154,7 +154,7 @@ python3.pkgs.buildPythonApplication rec {
'';
homepage = "https://wapiti-scanner.github.io/";
changelog = "https://github.com/wapiti-scanner/wapiti/blob/${version}/doc/ChangeLog_Wapiti";
license = with licenses; [ gpl2Only ];
license = licenses.gpl2Only;
maintainers = with maintainers; [ fab ];
};
}

View File

@ -3,31 +3,16 @@
, fetchFromGitHub
}:
let
python = python3.override {
packageOverrides = self: super: {
yara-python = super.yara-python.overridePythonAttrs (oldAttrs: rec {
version = "4.2.3";
src = fetchFromGitHub {
owner = "VirusTotal";
repo = "yara-python";
rev = "v${version}";
hash = "sha256-spUQuezQMqaG1hboM0/Gs7siCM6x0b40O+sV7qGGBng=";
};
});
};
};
in
python.pkgs.buildPythonApplication rec {
python3.pkgs.buildPythonApplication rec {
pname = "yaralyzer";
version = "0.9.3";
version = "0.9.4";
pyproject = true;
src = fetchFromGitHub {
owner = "michelcrypt4d4mus";
repo = "yaralyzer";
rev = "refs/tags/v${version}";
hash = "sha256-KGQNonzAZp8c0a3Rjb1WfsEkx5srgRzZfGR3gfNEdzY=";
hash = "sha256-rDb09XJOGWNARR0hhQQ91KXWepsLyR2a6/o3jagh6nA=";
};
pythonRelaxDeps = [
@ -35,12 +20,12 @@ python.pkgs.buildPythonApplication rec {
"rich"
];
nativeBuildInputs = with python.pkgs; [
build-system = with python3.pkgs; [
poetry-core
pythonRelaxDepsHook
];
propagatedBuildInputs = with python.pkgs; [
dependencies = with python3.pkgs; [
chardet
python-dotenv
rich
@ -52,12 +37,12 @@ python.pkgs.buildPythonApplication rec {
"yaralyzer"
];
meta = with lib; {
meta = {
description = "Tool to visually inspect and force decode YARA and regex matches";
homepage = "https://github.com/michelcrypt4d4mus/yaralyzer";
changelog = "https://github.com/michelcrypt4d4mus/yaralyzer/blob/${version}/CHANGELOG.md";
license = licenses.gpl3Only;
maintainers = with maintainers; [ fab ];
changelog = "https://github.com/michelcrypt4d4mus/yaralyzer/blob/v${version}/CHANGELOG.md";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ fab ];
mainProgram = "yaralyze";
};
}

View File

@ -1497,8 +1497,6 @@ with pkgs;
abduco = callPackage ../tools/misc/abduco { };
ablog = callPackage ../applications/misc/ablog { };
acct = callPackage ../tools/system/acct { };
accuraterip-checksum = callPackage ../tools/audio/accuraterip-checksum { };
@ -16020,10 +16018,6 @@ with pkgs;
gocover-cobertura = callPackage ../development/tools/gocover-cobertura { };
gobang = callPackage ../development/tools/database/gobang {
inherit (darwin.apple_sdk.frameworks) CoreFoundation Security SystemConfiguration;
};
goblob = callPackage ../tools/security/goblob { };
gogetdoc = callPackage ../development/tools/gogetdoc { };
@ -25855,7 +25849,7 @@ with pkgs;
leafnode1 = callPackage ../servers/news/leafnode/1.nix { };
lemmy-server = callPackage ../servers/web-apps/lemmy/server.nix {
inherit (darwin.apple_sdk.frameworks) Security;
inherit (darwin.apple_sdk.frameworks) Security SystemConfiguration;
};
lemmy-ui = callPackage ../servers/web-apps/lemmy/ui.nix {

View File

@ -485,6 +485,7 @@ mapAliases ({
sapi-python-client = kbcstorage; # added 2022-04-20
scikitimage = scikit-image; # added 2023-05-14
scikitlearn = scikit-learn; # added 2021-07-21
scikits-samplerate = throw "scikits-samplerate has been removed, it was unsed and unmaintained since 2015"; # added 2024-05-23
selectors34 = throw "selectors34 has been removed: functionality provided by Python itself; archived by upstream."; # added 2021-06-10
sequoia = throw "python3Packages.sequoia was replaced by pysequoia - built from a dedicated repository, with a new API."; # added 2023-06-24
setuptools_dso = setuptools-dso; # added 2024-03-03

View File

@ -13619,10 +13619,6 @@ self: super: with self; {
scikits-odes = callPackage ../development/python-modules/scikits-odes { };
scikits-samplerate = callPackage ../development/python-modules/scikits-samplerate {
inherit (pkgs) libsamplerate;
};
scikit-tda = callPackage ../development/python-modules/scikit-tda { };
scipy = callPackage ../development/python-modules/scipy { };
@ -16830,6 +16826,8 @@ self: super: with self; {
weasyprint = callPackage ../development/python-modules/weasyprint { };
weatherflow4py = callPackage ../development/python-modules/weatherflow4py { };
weaviate-client = callPackage ../development/python-modules/weaviate-client { };
web3 = callPackage ../development/python-modules/web3 { };

View File

@ -3127,10 +3127,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
sha256 = "05i8518ay14kjbma550mv0jm8a6di8yp5phzrd8rj44z9qnrlrp0";
sha256 = "sha256-CQioY4HZ+XOCRoDfTgp1QidmJy8DscDknbfnnCPbETU=";
type = "gem";
};
version = "3.2.6";
version = "3.2.8";
};
rmagick = {
dependencies = ["observer" "pkg-config"];