Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2024-02-13 12:01:40 +00:00 committed by GitHub
commit 6d11c074e2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
39 changed files with 919 additions and 538 deletions

View File

@ -10370,6 +10370,12 @@
githubId = 894884;
name = "Jakub Kozłowski";
};
kud = {
email = "kasa7qi@gmail.com";
github = "KUD-00";
githubId = 70764075;
name = "kud";
};
kupac = {
github = "Kupac";
githubId = 8224569;

View File

@ -36,7 +36,8 @@ in {
description = mdDoc ''
Declarative configuration of firewall rules.
All rules will be stored in `/var/lib/opensnitch/rules`.
All rules will be stored in `/var/lib/opensnitch/rules` by default.
Rules path can be configured with `settings.Rules.Path`.
See [upstream documentation](https://github.com/evilsocket/opensnitch/wiki/Rules)
for available options.
'';
@ -79,15 +80,6 @@ in {
'';
};
DefaultDuration = mkOption {
type = types.enum [
"once" "always" "until restart" "30s" "5m" "15m" "30m" "1h"
];
description = mdDoc ''
Default duration of firewall rule.
'';
};
InterceptUnknown = mkOption {
type = types.bool;
description = mdDoc ''
@ -134,6 +126,30 @@ in {
};
};
Ebpf.ModulesPath = mkOption {
type = types.path;
default = if cfg.settings.ProcMonitorMethod == "ebpf" then "${config.boot.kernelPackages.opensnitch-ebpf}/etc/opensnitchd" else null;
defaultText = literalExpression ''
if cfg.settings.ProcMonitorMethod == "ebpf" then
"\\$\\{config.boot.kernelPackages.opensnitch-ebpf\\}/etc/opensnitchd"
else null;
'';
description = mdDoc ''
Configure eBPF modules path. Used when
`settings.ProcMonitorMethod` is set to `ebpf`.
'';
};
Rules.Path = mkOption {
type = types.path;
default = "/var/lib/opensnitch/rules";
description = mdDoc ''
Path to the directory where firewall rules can be found and will
get stored by the NixOS module.
'';
};
};
};
description = mdDoc ''
@ -151,40 +167,42 @@ in {
systemd = {
packages = [ pkgs.opensnitch ];
services.opensnitchd.wantedBy = [ "multi-user.target" ];
services.opensnitchd = {
wantedBy = [ "multi-user.target" ];
serviceConfig = {
ExecStart = [
""
"${pkgs.opensnitch}/bin/opensnitchd --config-file ${format.generate "default-config.json" cfg.settings}"
];
};
preStart = mkIf (cfg.rules != {}) (let
rules = flip mapAttrsToList predefinedRules (file: content: {
inherit (content) file;
local = "${cfg.settings.Rules.Path}/${file}.json";
});
in ''
# Remove all firewall rules from rules path (configured with
# cfg.settings.Rules.Path) that are symlinks to a store-path, but aren't
# declared in `cfg.rules` (i.e. all networks that were "removed" from
# `cfg.rules`).
find ${cfg.settings.Rules.Path} -type l -lname '${builtins.storeDir}/*' ${optionalString (rules != {}) ''
-not \( ${concatMapStringsSep " -o " ({ local, ... }:
"-name '${baseNameOf local}*'")
rules} \) \
''} -delete
${concatMapStrings ({ file, local }: ''
ln -sf '${file}' "${local}"
'') rules}
'');
};
tmpfiles.rules = [
"d ${cfg.settings.Rules.Path} 0750 root root - -"
"L+ /etc/opensnitchd/system-fw.json - - - - ${pkgs.opensnitch}/etc/opensnitchd/system-fw.json"
];
};
systemd.services.opensnitchd.preStart = mkIf (cfg.rules != {}) (let
rules = flip mapAttrsToList predefinedRules (file: content: {
inherit (content) file;
local = "/var/lib/opensnitch/rules/${file}.json";
});
in ''
# Remove all firewall rules from `/var/lib/opensnitch/rules` that are symlinks to a store-path,
# but aren't declared in `cfg.rules` (i.e. all networks that were "removed" from
# `cfg.rules`).
find /var/lib/opensnitch/rules -type l -lname '${builtins.storeDir}/*' ${optionalString (rules != {}) ''
-not \( ${concatMapStringsSep " -o " ({ local, ... }:
"-name '${baseNameOf local}*'")
rules} \) \
''} -delete
${concatMapStrings ({ file, local }: ''
ln -sf '${file}' "${local}"
'') rules}
if [ ! -f /etc/opensnitchd/system-fw.json ]; then
cp "${pkgs.opensnitch}/etc/opensnitchd/system-fw.json" "/etc/opensnitchd/system-fw.json"
fi
'');
environment.etc = mkMerge [ ({
"opensnitchd/default-config.json".source = format.generate "default-config.json" cfg.settings;
}) (mkIf (cfg.settings.ProcMonitorMethod == "ebpf") {
"opensnitchd/opensnitch.o".source = "${config.boot.kernelPackages.opensnitch-ebpf}/etc/opensnitchd/opensnitch.o";
"opensnitchd/opensnitch-dns.o".source = "${config.boot.kernelPackages.opensnitch-ebpf}/etc/opensnitchd/opensnitch-dns.o";
"opensnitchd/opensnitch-procs.o".source = "${config.boot.kernelPackages.opensnitch-ebpf}/etc/opensnitchd/opensnitch-procs.o";
})];
};
meta.maintainers = with lib.maintainers; [ onny ];
}

View File

@ -31,7 +31,7 @@ import ./make-test-python.nix ({ pkgs, ... }: {
enable = true;
settings.DefaultAction = "deny";
rules = {
opensnitch = {
curl = {
name = "curl";
enabled = true;
action = "allow";

View File

@ -1,5 +1,6 @@
{ lib, stdenv
, fetchurl
, fetchpatch
, pkg-config
, desktop-file-utils
, SDL
@ -17,6 +18,14 @@ stdenv.mkDerivation rec {
sha256 = "0dfqgid6wzzyyhc0ha94prxax59wx79hqr25r6if6by9cj4vx4ya";
};
patches = [
# Fix segfault
(fetchpatch {
url = "https://src.fedoraproject.org/rpms/sfxr/raw/223e58e68857c2018ced635e8209bb44f3616bf8/f/sfxr-sdl-gcc8x.patch";
hash = "sha256-etn4AutkNrhEDH9Ep8MhH9JSJEd7V/JXwjQua5uhAmg=";
})
];
postPatch = ''
substituteInPlace Makefile --replace "usr/" ""
substituteInPlace sdlkit.h --replace \

View File

@ -810,8 +810,8 @@ dependencies = [
[[package]]
name = "enolib"
version = "0.3.0"
source = "git+https://codeberg.org/simonrepp/enolib-rs?tag=0.3.0#e5739943579f23d43300f83a06988c47e9719f1a"
version = "0.4.0"
source = "git+https://codeberg.org/simonrepp/enolib-rs?tag=0.4.0#dc22b9114b210a6f3e16815c0d1d43bcbed551d5"
[[package]]
name = "equivalent"
@ -837,7 +837,7 @@ dependencies = [
[[package]]
name = "faircamp"
version = "0.11.0"
version = "0.12.0"
dependencies = [
"actix-files",
"actix-web",

View File

@ -16,20 +16,20 @@
rustPlatform.buildRustPackage rec {
pname = "faircamp";
version = "0.11.0";
version = "0.12.0";
src = fetchFromGitea {
domain = "codeberg.org";
owner = "simonrepp";
repo = "faircamp";
rev = version;
hash = "sha256-CD5wCvONlgNTXpFcCHCLdJ/lJsC2VTleKt9+ZX5znZo=";
hash = "sha256-AYvykiPdVeWMEoDgPHlTHDcPrk3VgNQJFXulbO/3Ars=";
};
cargoLock = {
lockFile = ./Cargo.lock;
outputHashes = {
"enolib-0.3.0" = "sha256-nw1nnIh2r4JFcUb3D21BcjeieDTYRIza8Lrq1yD+ZYQ=";
"enolib-0.4.0" = "sha256-lfvQHdQSHAzeOULrvIj7MIYtNaIwc0bXC5q1KK9UGvU=";
};
};

View File

@ -25,13 +25,13 @@
stdenv.mkDerivation rec {
pname = "minder";
version = "1.16.2";
version = "1.16.3";
src = fetchFromGitHub {
owner = "phase1geo";
repo = pname;
rev = version;
sha256 = "sha256-/XtJCj1ratUTNXRp7zsBp10tQjyiaDN9623/UChBu9c=";
sha256 = "sha256-YDsWWC4exh+9V87WyjdMdCH1arjBct3oEXbvaFyAaMY=";
};
nativeBuildInputs = [

View File

@ -8,11 +8,11 @@
stdenv.mkDerivation rec {
pname = "snapmaker-luban";
version = "4.9.1";
version = "4.10.2";
src = fetchurl {
url = "https://github.com/Snapmaker/Luban/releases/download/v${version}/snapmaker-luban-${version}-linux-x64.tar.gz";
sha256 = "sha256-qLeF1trBrp53xkiAhybPTHUKuXYHQYfZ3tsmPPJlvUM=";
sha256 = "sha256-unxI0L8pcF6iWWa57GpYv/aYsApKAKfRaes3uXE7izM=";
};
nativeBuildInputs = [

View File

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "talosctl";
version = "1.6.1";
version = "1.6.4";
src = fetchFromGitHub {
owner = "siderolabs";
repo = "talos";
rev = "v${version}";
hash = "sha256-xJKYnKJ0qvgVZ2I7O+qYO/ujuW03B+DykXO/ZYLgoyU=";
hash = "sha256-2ZccpOqddgq51Q1AxV1uK9fThPMtJIL66ZGU51k2eL0=";
};
vendorHash = "sha256-CIDCUIk0QFSHM2gc1XpD6Ih11zXbCDDeSf5vf6loI9w=";
vendorHash = "sha256-BC3RMhpYmyELJDzOva31QsTmrPeptMcfDYNK3q8D+dw=";
ldflags = [ "-s" "-w" ];

File diff suppressed because it is too large Load Diff

View File

@ -21,14 +21,14 @@
stdenv.mkDerivation rec {
pname = "flare";
version = "0.11.2";
version = "0.12.0";
src = fetchFromGitLab {
domain = "gitlab.com";
owner = "schmiddi-on-mobile";
repo = pname;
repo = "flare";
rev = version;
hash = "sha256-p6G+FbSiBkaF/qlUOPdPdgTqrrKFAOuIaCr6DCv+az4=";
hash = "sha256-Dg5UhVTmxiwPIbU8fG/ehX9Zp8WI2V+JoOEI7P1Way4=";
};
cargoDeps = rustPlatform.importCargoLock {
@ -36,8 +36,8 @@ stdenv.mkDerivation rec {
outputHashes = {
"curve25519-dalek-4.0.0" = "sha256-KUXvYXeVvJEQ/+dydKzXWCZmA2bFa2IosDzaBL6/Si0=";
"libsignal-protocol-0.1.0" = "sha256-FCrJO7porlY5FrwZ2c67UPd4tgN7cH2/3DTwfPjihwM=";
"libsignal-service-0.1.0" = "sha256-Ul1mg+oQ8te364Jc2gOBoiq2udYsw9UBret/O9VU9ec=";
"presage-0.6.0-dev" = "sha256-0Z2ySXMZZ4wpyesxOikhra/eN7K3I+ElAh7vAaNSbb0=";
"libsignal-service-0.1.0" = "sha256-lzyUUP1mhxxIU+xCr+5VAoeEO6FlDgeEJtWhm9avJb8=";
"presage-0.6.0-dev" = "sha256-PqMz6jJuL/4LVY3kNFQ9NmKt3D6cwQkGiPs2QJsL01A=";
};
};

View File

@ -11,13 +11,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "dayon";
version = "13.0.0";
version = "13.0.1";
src = fetchFromGitHub {
owner = "RetGal";
repo = "dayon";
rev = "v${finalAttrs.version}";
hash = "sha256-2Fo+LQvsrDvqEudZxzQBtJHGxrRYUyNyhrPV1xS49pQ=";
hash = "sha256-nevDC4kfVSgfmJZiCj82mc+/yZcIgub3CP9qi9ISF3o=";
};
nativeBuildInputs = [

View File

@ -1,41 +1,31 @@
{ lib
, buildNpmPackage
, fetchFromGitHub
, fetchpatch
}:
buildNpmPackage {
}: buildNpmPackage rec {
pname = "arrpc";
version = "3.2.0";
version = "3.3.0";
src = fetchFromGitHub {
owner = "OpenAsar";
repo = "arrpc";
# Release commits are not tagged
# release: 3.2.0
rev = "9c3e981437b75606c74ef058c67d1a8c083ce49a";
hash = "sha256-tsO58q6tqqXCJLjZmLQGt1VtKsuoqWmh5SlnuDtJafg=";
# release: 3.3.0
rev = "c6e23e7eb733ad396d3eebc328404cc656fed581";
hash = "sha256-OeEFNbmGp5SWVdJJwXZUkkNrei9jyuPc+4E960l8VRA=";
};
# Make installation less cumbersome
# Remove after next release
patches = [
(fetchpatch {
# https://github.com/OpenAsar/arrpc/pull/50
url = "https://github.com/OpenAsar/arrpc/commit/7fa6c90204450eb3952ce9cddfecb0a5ba5e4313.patch";
hash = "sha256-qFlrbe2a4x811wpmWUcGDe2CPlt9x3HI+/t0P2v4kPc=";
})
];
npmDepsHash = "sha256-vxx0w6UjwxIK4cgpivtjNbIgkb4wKG4ijSHdP/FeQZ4=";
npmDepsHash = "sha256-YlSUGncpY0MyTiCfZcPsfcNx3fR+SCtkOFWbjOPLUzk=";
dontNpmBuild = true;
meta = with lib; {
meta = {
# ideally we would do blob/${version}/changelog.md here
# upstream does not tag releases
changelog = "https://github.com/OpenAsar/arrpc/blob/${src.rev}/changelog.md";
description = "Open Discord RPC server for atypical setups";
homepage = "https://arrpc.openasar.dev/";
license = licenses.mit;
maintainers = with maintainers; [ anomalocaris ];
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ anomalocaris NotAShelf ];
mainProgram = "arrpc";
};
}

View File

@ -9,12 +9,12 @@
, bzip2
}:
stdenv.mkDerivation rec {
pname = "libewf-ewf";
stdenv.mkDerivation (finalAttrs: {
pname = "libewf-legacy";
version = "20140814";
src = fetchurl {
url = "https://github.com/libyal/libewf-legacy/releases/download/${version}/libewf-${version}.tar.gz";
url = "https://github.com/libyal/libewf-legacy/releases/download/${finalAttrs.version}/libewf-${finalAttrs.version}.tar.gz";
hash = "sha256-OM3QXwnaIDeo66UNjzmu6to53SxgCMn/rE9VTPlX5BQ=";
};
@ -29,4 +29,4 @@ stdenv.mkDerivation rec {
maintainers = with lib.maintainers; [ d3vil0p3r ];
platforms = lib.platforms.unix;
};
}
})

View File

@ -0,0 +1,48 @@
{ lib
, fetchFromGitHub
, python3Packages
, bash
}:
python3Packages.buildPythonApplication rec {
pname = "marcel";
version = "0.22.2";
pyproject = true;
src = fetchFromGitHub {
owner = "geophile";
repo = "marcel";
rev = "refs/tags/v${version}";
hash = "sha256-CiAIY4qXv5V2VOsi+vat7OvFcmeFpIrmHCfqlY+JRXc=";
};
nativeBuildInputs = with python3Packages; [
setuptools
];
buildInputs = [
bash
];
pythonPath = with python3Packages; [
dill
psutil
];
# The tests use sudo and try to read/write $HOME/.local/share/marcel and /tmp
doCheck = false;
postFixup = ''
wrapProgram $out/bin/marcel \
--prefix PATH : "$program_PATH:${lib.getBin bash}/bin" \
--prefix PYTHONPATH : "$program_PYTHONPATH"
'';
meta = with lib; {
description = "A modern shell";
homepage = "https://github.com/geophile/marcel";
license = licenses.gpl3Only;
maintainers = with maintainers; [ kud ];
mainProgram = "marcel";
};
}

View File

@ -0,0 +1,61 @@
{ lib
, fetchFromGitHub
, python3Packages
, gnome-menus
, gtk3
, intltool
, gobject-introspection
, wrapGAppsHook
, testers
, menulibre
}:
python3Packages.buildPythonApplication rec {
name = "menulibre";
version = "2.2.3";
src = fetchFromGitHub {
owner = "bluesabre";
repo = "menulibre";
rev = "menulibre-${version}";
hash = "sha256-E0ukq3q4YaakOI2mDs3dh0ncZX/dqspCA+97r3JwWyA=";
};
propagatedBuildInputs = with python3Packages; [
pygobject3
gnome-menus
psutil
distutils-extra
];
nativeBuildInputs = [
gtk3
intltool
gobject-introspection
wrapGAppsHook
];
postPatch = ''
substituteInPlace setup.py \
--replace-fail 'data_dir =' "data_dir = '$out/share/menulibre' #" \
--replace-fail 'update_desktop_file(desktop_file, script_path)' ""
'';
preBuild = ''
export HOME=$TMPDIR
'';
passthru.tests.version = testers.testVersion {
package = menulibre;
command = "HOME=$TMPDIR menulibre --version | cut -d' ' -f2";
};
meta = with lib; {
description = "An advanced menu editor with an easy-to-use interface";
homepage = "https://bluesabre.org/projects/menulibre";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ lelgenio ];
mainProgram = "menulibre";
platforms = platforms.linux;
};
}

View File

@ -2,16 +2,16 @@
buildNpmPackage rec {
pname = "mystmd";
version = "1.1.38";
version = "1.1.40";
src = fetchFromGitHub {
owner = "executablebooks";
repo = "mystmd";
rev = "mystmd@${version}";
hash = "sha256-kshYS4mWqlWpF4pSetk6mpOn0/XCUF13M5qbZD/pNxQ=";
hash = "sha256-RN3jrcTLdVnG4QF3OCg12S5faaYqkEhWGW7BaZKli4M=";
};
npmDepsHash = "sha256-+aqS5khw/fDKOGAvOVFopcwoZAsgmmUQzOljZSUlArA=";
npmDepsHash = "sha256-VZO5VXwmBpTdUdlBPgRz2P9Q7xDc1GaBrHEGnvYXx/E=";
dontNpmInstall = true;

View File

@ -1,19 +1,18 @@
{ python3Packages
, fetchFromGitHub
, qtwayland
, wrapQtAppsHook
, qt5
, lib
}:
python3Packages.buildPythonApplication rec {
pname = "opensnitch-ui";
version = "1.6.4";
version = "1.6.5.1";
src = fetchFromGitHub {
owner = "evilsocket";
repo = "opensnitch";
rev = "refs/tags/v${version}";
hash = "sha256-fkRykhcjWZ4MDl2HZ1ZFaQmEeRYhiCBeUxG/Eu7D8NA=";
hash = "sha256-IVrAAHzLS7A7cYhRk+IUx8/5TGKeqC7M/7iXOpPe2ZA=";
};
postPatch = ''
@ -23,21 +22,22 @@ python3Packages.buildPythonApplication rec {
nativeBuildInputs = [
python3Packages.pyqt5
wrapQtAppsHook
qt5.wrapQtAppsHook
];
buildInputs = [
qtwayland
qt5.qtwayland
];
propagatedBuildInputs = with python3Packages; [
grpcio-tools
pyqt5
unidecode
unicode-slugify
pyinotify
notify2
pyasn
pyinotify
pyqt5
qt-material
unicode-slugify
unidecode
];
preBuild = ''

View File

@ -1,19 +1,19 @@
module github.com/evilsocket/opensnitch/daemon
go 1.14
go 1.17
require (
github.com/fsnotify/fsnotify v1.4.7
github.com/golang/protobuf v1.5.0
github.com/google/gopacket v1.1.14
github.com/google/gopacket v1.1.19
github.com/google/nftables v0.1.0
github.com/google/uuid v1.3.0
github.com/iovisor/gobpf v0.2.0
github.com/varlink/go v0.4.0
github.com/vishvananda/netlink v0.0.0-20210811191823-e1a867c6b452
github.com/vishvananda/netlink v1.1.1-0.20220115184804-dd687eb2f2d4
github.com/vishvananda/netns v0.0.0-20200728191858-db3c7e526aae
golang.org/x/net v0.0.0-20211209124913-491a49abca63
golang.org/x/sys v0.0.0-20211205182925-97ca703d548d
golang.org/x/net v0.17.0
golang.org/x/sys v0.13.0
google.golang.org/grpc v1.32.0
google.golang.org/protobuf v1.26.0
)
@ -24,10 +24,9 @@ require (
github.com/josharian/native v0.0.0-20200817173448-b6b71def0850 // indirect
github.com/mdlayher/netlink v1.4.2 // indirect
github.com/mdlayher/socket v0.0.0-20211102153432-57e3fa563ecb // indirect
golang.org/x/mod v0.5.1 // indirect
golang.org/x/text v0.3.7 // indirect
golang.org/x/tools v0.1.8 // indirect
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 // indirect
golang.org/x/mod v0.8.0 // indirect
golang.org/x/text v0.13.0 // indirect
golang.org/x/tools v0.6.0 // indirect
google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55 // indirect
honnef.co/go/tools v0.2.2 // indirect
)

View File

@ -29,8 +29,8 @@ github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.6 h1:BKbKCqvP6I+rmFHt06ZmyQtvB8xAkWdhFyr0ZUNZcxQ=
github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/gopacket v1.1.14 h1:1+TEhSu8Mh154ZBVjyd1Nt2Bb7cnyOeE3GQyb1WGLqI=
github.com/google/gopacket v1.1.14/go.mod h1:UCLx9mCmAwsVbn6qQl1WIEt2SO7Nd2fD0th1TBAsqBw=
github.com/google/gopacket v1.1.19 h1:ves8RnFZPGiFnTS0uPQStjwru6uO6h+nlr9j6fL7kF8=
github.com/google/gopacket v1.1.19/go.mod h1:iJ8V8n6KS+z2U1A8pUwu8bW5SyEMkXJB8Yo/Vo+TKTo=
github.com/google/nftables v0.1.0 h1:T6lS4qudrMufcNIZ8wSRrL+iuwhsKxpN+zFLxhUWOqk=
github.com/google/nftables v0.1.0/go.mod h1:b97ulCCFipUC+kSin+zygkvUVpx0vyIAwxXFdY3PlNc=
github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I=
@ -76,25 +76,32 @@ github.com/mdlayher/socket v0.0.0-20211102153432-57e3fa563ecb/go.mod h1:nFZ1EtZY
github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
github.com/varlink/go v0.4.0 h1:+/BQoUO9eJK/+MTSHwFcJch7TMsb6N6Dqp6g0qaXXRo=
github.com/varlink/go v0.4.0/go.mod h1:DKg9Y2ctoNkesREGAEak58l+jOC6JU2aqZvUYs5DynU=
github.com/vishvananda/netlink v0.0.0-20210811191823-e1a867c6b452 h1:xe1bLd/sNkKVWdZuAb2+4JeMQMYyQ7Av38iRrE1lhm8=
github.com/vishvananda/netlink v0.0.0-20210811191823-e1a867c6b452/go.mod h1:twkDnbuQxJYemMlGd4JFIcuhgX83tXhKS2B/PRMpOho=
github.com/vishvananda/netlink v1.1.1-0.20220115184804-dd687eb2f2d4 h1:fB26rIBlWTVJyEB6ONHdoEvUbvwoudH0/cMEXHiD1RU=
github.com/vishvananda/netlink v1.1.1-0.20220115184804-dd687eb2f2d4/go.mod h1:twkDnbuQxJYemMlGd4JFIcuhgX83tXhKS2B/PRMpOho=
github.com/vishvananda/netns v0.0.0-20180720170159-13995c7128cc/go.mod h1:ZjcWmFBXmLKZu9Nxj3WKYEafiSqer2rnvPr0en9UNpI=
github.com/vishvananda/netns v0.0.0-20200728191858-db3c7e526aae h1:4hwBBUfQCFe3Cym0ZtKyq7L16eZUtYKs+BaHDN6mAns=
github.com/vishvananda/netns v0.0.0-20200728191858-db3c7e526aae/go.mod h1:DD4vA1DwXk04H54A1oHXtwZmA0grkVMdPxx/VGLCah0=
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
github.com/yuin/goldmark v1.4.0/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
github.com/yuin/goldmark v1.4.1/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.14.0/go.mod h1:MVFd36DqK4CsrnJYDkBA3VC4m2GkXAM0PvzMCn4JQf4=
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU=
golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY=
golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg=
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.5.1 h1:OJxoQ/rynoF0dcCdI7cLPktw/hR2cueqYfjm43oqK38=
golang.org/x/mod v0.5.1/go.mod h1:5OXOZSfqPIIbmVBIIKWRFfZjPR0E5r58TLhUjH0a2Ro=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/mod v0.8.0 h1:LUYupSeNrTNCGzR/hVBk2NHZO4hXcVaW1k4Qx7rjPx8=
golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
@ -117,14 +124,21 @@ golang.org/x/net v0.0.0-20210928044308-7d9f5e0b762b/go.mod h1:9nx3DQGgdP8bBQD5qx
golang.org/x/net v0.0.0-20211015210444-4f30a5c0130f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20211020060615-d418f374d309/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20211201190559-0a0e4e1bb54c/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20211209124913-491a49abca63 h1:iocB37TsdFuN6IBRZ+ry36wrkoV51/tl5vOWqkcPGvY=
golang.org/x/net v0.0.0-20211209124913-491a49abca63/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=
golang.org/x/net v0.17.0 h1:pVaXccu2ozPjCXewfr1S7xza/zcXTity9cCdXQYSjIM=
golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE=
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o=
golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
@ -148,30 +162,46 @@ golang.org/x/sys v0.0.0-20210216163648-f7da38b97c65/go.mod h1:h1NjWce9XRLGQEsW7w
golang.org/x/sys v0.0.0-20210305230114-8fe3ee5dd75b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
golang.org/x/sys v0.0.0-20210525143221-35b2ab0089ea/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210809222454-d867a43fc93e/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210906170528-6f6e22806c34/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20211019181941-9d821ace8654/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20211025201205-69cdffdb9359/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20211124211545-fe61309f8881/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20211205182925-97ca703d548d h1:FjkYO/PPp4Wi0EAUOVLxePm7qVW4r4ctbWpURyuOD0E=
golang.org/x/sys v0.0.0-20211205182925-97ca703d548d/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.13.0 h1:Af8nKPmuFypiUBjVoU9V20FiaFXOcuZI21p0ycVYYGE=
golang.org/x/sys v0.13.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo=
golang.org/x/term v0.13.0/go.mod h1:LTmsnFJwVN6bCy1rVCoS+qHT1HhALEFxKncY3WNNh4U=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
golang.org/x/text v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk=
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
golang.org/x/text v0.13.0 h1:ablQoSUd0tRdKxZewP80B+BaqeKJuVhuRxj/dkrun3k=
golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY=
golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28=
golang.org/x/tools v0.1.0/go.mod h1:xkSsbof2nBLbhDlRMhhhyNLN/zl3eTqcnHD5viDpcZ0=
golang.org/x/tools v0.1.7/go.mod h1:LGqMHiF4EqQNHR1JncWGqT5BVaXmza+X+BDGol+dOxo=
golang.org/x/tools v0.1.8 h1:P1HhGGuLW4aAclzjtmJdf0mJOjVUZUzOTqkAkWL+l6w=
golang.org/x/tools v0.1.8/go.mod h1:nABZi5QlRsZVlzPpHl034qft6wpY4eDcsTt5AaioBiU=
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
golang.org/x/tools v0.6.0 h1:BOw41kyTf3PuCW1pVQf8+Cyg8pMlkYB1oo9iJ6D/lKM=
golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=

View File

@ -18,13 +18,13 @@
buildGoModule rec {
pname = "opensnitch";
version = "1.6.4";
version = "1.6.5";
src = fetchFromGitHub {
owner = "evilsocket";
repo = "opensnitch";
rev = "v${version}";
hash = "sha256-fkRykhcjWZ4MDl2HZ1ZFaQmEeRYhiCBeUxG/Eu7D8NA=";
rev = "refs/tags/v${version}";
hash = "sha256-2HHyecgiodWhQkkn3eo0RJNroD7HaK6Je/+x9IqZfWE=";
};
postPatch = ''
@ -47,7 +47,7 @@ buildGoModule rec {
protoc-gen-go-grpc
];
vendorHash = "sha256-bUzGWpQxeXzvkzQ7G53ljQJq6wwqiXqbi6bgeFlNvvM=";
vendorHash = "sha256-PX41xeUJb/WKv3+z5kbRmJNP1vFu8x35NZvN2Dgp4CQ=";
preBuild = ''
# Fix inconsistent vendoring build error
@ -64,13 +64,18 @@ buildGoModule rec {
cp system-fw.json $out/etc/opensnitchd/
substitute default-config.json $out/etc/opensnitchd/default-config.json \
--replace "/var/log/opensnitchd.log" "/dev/stdout"
# Do not mkdir rules path
sed -i '8d' opensnitchd.service
# Fixup hardcoded paths
substitute opensnitchd.service $out/lib/systemd/system/opensnitchd.service \
--replace "/usr/local/bin/opensnitchd" "$out/bin/opensnitchd" \
--replace "/etc/opensnitchd/rules" "/var/lib/opensnitch/rules" \
--replace "/bin/mkdir" "${coreutils}/bin/mkdir"
--replace "/usr/local/bin/opensnitchd" "$out/bin/opensnitchd"
'';
ldflags = [ "-s" "-w" "-X github.com/evilsocket/opensnitch/daemon/core.Version=${version}" ];
ldflags = [
"-s"
"-w"
"-X github.com/evilsocket/opensnitch/daemon/core.Version=${version}"
];
postInstall = ''
wrapProgram $out/bin/opensnitchd \

View File

@ -1,14 +1,14 @@
{ lib, stdenv, fetchurl, meson, ninja, pkg-config, python3
, libGLU, libepoxy, libX11, libdrm, mesa
, libGLU, libepoxy, libX11, libdrm, mesa, gitUpdater
}:
stdenv.mkDerivation rec {
pname = "virglrenderer";
version = "1.0.0";
version = "1.0.1";
src = fetchurl {
url = "https://gitlab.freedesktop.org/virgl/virglrenderer/-/archive/${version}/virglrenderer-${version}.tar.bz2";
hash = "sha256-KMGPP2MeuATHFXKr5oW9HuFOMmmYpmkVLvMvQi0cEdg=";
hash = "sha256-U8uPrdCPUmDuV4M/wkiFZUgUOLx6jjTz4RTRLMnZ25o=";
};
separateDebugInfo = true;
@ -17,6 +17,13 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ meson ninja pkg-config python3 ];
passthru = {
updateScript = gitUpdater {
url = "https://gitlab.freedesktop.org/virgl/virglrenderer.git";
rev-prefix = "virglrenderer-";
};
};
meta = with lib; {
description = "A virtual 3D GPU library that allows a qemu guest to use the host GPU for accelerated 3D rendering";
homepage = "https://virgil3d.github.io/";

View File

@ -0,0 +1,67 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, grpcio
, protobuf
, pytest-asyncio
, pytest-mock
, pytestCheckHook
, pythonOlder
, setuptools
, setuptools-scm
}:
buildPythonPackage rec {
pname = "aetcd";
version = "1.0.0a4";
pyproject = true;
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "martyanov";
repo = "aetcd";
rev = "refs/tags/v${version}";
hash = "sha256-g49ppfh8dyGpZeu/HdTDX8RAk5VTcZmqENRpNY12qkg=";
};
postPatch = ''
substituteInPlace setup.py \
--replace-fail "setuptools_scm==6.3.2" "setuptools_scm"
substituteInPlace setup.cfg \
--replace-fail "--cov=aetcd" ""
'';
nativeBuildInputs = [
setuptools
setuptools-scm
];
propagatedBuildInputs = [
grpcio
protobuf
];
nativeCheckInputs = [
pytest-asyncio
pytest-mock
pytestCheckHook
];
pythonImportsCheck = [
"aetcd"
];
disabledTestPaths = [
# Tests require a running ectd instance
"tests/integration/"
];
meta = with lib; {
description = "Python asyncio-based client for etcd";
homepage = "https://github.com/martyanov/aetcd";
changelog = "https://github.com/martyanov/aetcd/blob/v${version}/docs/changelog.rst";
license = licenses.asl20;
maintainers = with maintainers; [ fab ];
};
}

View File

@ -1,32 +1,37 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, hatchling
, freezegun
, graphql-core
, hatchling
, httpx
, pytest-asyncio
, pytest-mock
, pytestCheckHook
, pythonOlder
, snapshottest
, python-multipart
, starlette
, syrupy
, typing-extensions
, werkzeug
}:
buildPythonPackage rec {
pname = "ariadne";
version = "0.21.0";
format = "pyproject";
version = "0.22.0";
pyproject = true;
disabled = pythonOlder "3.7";
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "mirumee";
repo = pname;
rev = "refs/tags/${version}";
hash = "sha256-T5J0xAF33PDkC8sDOzHADpQJxwdXwKary0y/jaUJ9Fk=";
repo = "ariadne";
# https://github.com/mirumee/ariadne/issues/1157
#rev = "refs/tags/${version}";
rev = "refs/tags/022.0";
hash = "sha256-GMBtW2gZbF1m0BrKhYEkSaZYt5tIGmP/ipy6WC1H1pg=";
};
patches = [
./remove-opentracing.patch
];
@ -43,10 +48,12 @@ buildPythonPackage rec {
nativeCheckInputs = [
freezegun
httpx
pytest-asyncio
pytest-mock
pytestCheckHook
snapshottest
python-multipart
syrupy
werkzeug
];
@ -54,6 +61,10 @@ buildPythonPackage rec {
"ariadne"
];
pytestFlagsArray = [
"--snapshot-update"
];
disabledTests = [
# TypeError: TestClient.request() got an unexpected keyword argument 'content'
"test_attempt_parse_request_missing_content_type_raises_bad_request_error"

View File

@ -18,7 +18,7 @@
buildPythonPackage rec {
pname = "hahomematic";
version = "2024.2.2";
version = "2024.2.3";
pyproject = true;
disabled = pythonOlder "3.11";
@ -27,7 +27,7 @@ buildPythonPackage rec {
owner = "danielperna84";
repo = "hahomematic";
rev = "refs/tags/${version}";
hash = "sha256-d4LULYnnP/8RnbZcJJXadOri/Pl3dTTDi2cVJAYKhnI=";
hash = "sha256-T2318TnVzvteRADOjoTP7ulIhTyeTbCFX1/KpwWXjlI=";
};
__darwinAllowLocalNetworking = true;

View File

@ -13,7 +13,7 @@
buildPythonPackage rec {
pname = "jc";
version = "1.25.0";
version = "1.25.1";
format = "setuptools";
disabled = pythonOlder "3.6";
@ -21,7 +21,7 @@ buildPythonPackage rec {
owner = "kellyjonbrazil";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-viB/avMED5xllmkrF+WpsQbF/b7pyr3p3p+8vJk72+k=";
hash = "sha256-A9bmnamoRwDG/HFDjdBvnfGB+XqpAdLVnHeHtSf07zg=";
};
propagatedBuildInputs = [ ruamel-yaml xmltodict pygments ];

View File

@ -13,7 +13,7 @@
buildPythonPackage rec {
pname = "levenshtein";
version = "0.24.0";
version = "0.25.0";
pyproject = true;
disabled = pythonOlder "3.8";
@ -22,7 +22,7 @@ buildPythonPackage rec {
owner = "maxbachmann";
repo = "Levenshtein";
rev = "refs/tags/v${version}";
hash = "sha256-Vf12MBfy4IoTsXSYdKBMjxyMCaba21fiG0g1bPmrUmI=";
hash = "sha256-MkzIwTZU8hqPDOlfN4qADCKjGJIQrNhhOmVRAnAfNK0=";
fetchSubmodules = true; ## for vendored `rapidfuzz-cpp`
};

View File

@ -1,10 +1,13 @@
{ lib
, aetcd
, buildPythonPackage
, coredis
, deprecated
, fetchFromGitHub
, etcd3
, fetchFromGitHub
, hiro
, importlib-resources
, motor
, packaging
, pymemcache
, pymongo
@ -20,13 +23,13 @@
buildPythonPackage rec {
pname = "limits";
version = "3.7.0";
format = "setuptools";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "alisaifee";
repo = pname;
repo = "limits";
rev = "refs/tags/${version}";
# Upstream uses versioneer, which relies on git attributes substitution.
# This leads to non-reproducible archives on github. Remove the substituted
@ -37,37 +40,66 @@ buildPythonPackage rec {
hash = "sha256-0h3ofungHkjycUvNJ3jf+VB/GSrshgUDECN2YoPGzzg=";
};
propagatedBuildInputs = [
deprecated
importlib-resources
packaging
setuptools
typing-extensions
];
nativeCheckInputs = [
etcd3
hiro
pymemcache
pymongo
pytest-asyncio
pytest-lazy-fixture
pytestCheckHook
redis
];
postPatch = ''
substituteInPlace pytest.ini \
--replace "--cov=limits" "" \
--replace "-K" ""
--replace-fail "--cov=limits" "" \
--replace-fail "-K" ""
substituteInPlace setup.py \
--replace "versioneer.get_version()" "'${version}'"
--replace-fail "versioneer.get_version()" "'${version}'"
# Recreate _version.py, deleted at fetch time due to non-reproducibility.
echo 'def get_versions(): return {"version": "${version}"}' > limits/_version.py
'';
nativeBuildInputs = [
setuptools
];
propagatedBuildInputs = [
deprecated
importlib-resources
packaging
typing-extensions
];
passthru.optional-dependencies = {
redis = [
redis
];
rediscluster = [
redis
];
memcached = [
pymemcache
];
mongodb = [
pymongo
];
etcd = [
etcd3
];
async-redis = [
coredis
];
# async-memcached = [
# emcache # Missing module
# ];
async-mongodb = [
motor
];
async-etcd = [
aetcd
];
};
nativeCheckInputs = [
hiro
pytest-asyncio
pytest-lazy-fixture
pytestCheckHook
] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
pythonImportsCheck = [
"limits"
];
@ -82,6 +114,7 @@ buildPythonPackage rec {
meta = with lib; {
description = "Rate limiting using various strategies and storage backends such as redis & memcached";
homepage = "https://github.com/alisaifee/limits";
changelog = "https://github.com/alisaifee/limits/releases/tag/${version}";
license = licenses.mit;
maintainers = with maintainers; [ ];
};

View File

@ -116,6 +116,9 @@ buildPythonPackage rec {
xgboost
];
# Test startup hangs with 0.43.0 and Hydra ends with a timeout
doCheck = false;
disabledTestPaths = [
# The resulting plots look sane, but does not match pixel-perfectly with the baseline.
# Likely due to a matplotlib version mismatch, different backend, or due to missing fonts.
@ -133,15 +136,6 @@ buildPythonPackage rec {
pythonImportsCheck = [
"shap"
"shap.explainers"
"shap.explainers.other"
"shap.plots"
"shap.plots.colors"
"shap.benchmark"
"shap.maskers"
"shap.utils"
"shap.actions"
"shap.models"
];
meta = with lib; {

View File

@ -10,37 +10,26 @@
, pytestCheckHook
, pythonAtLeast
, pythonOlder
, pythonRelaxDepsHook
, redis
, starlette
}:
buildPythonPackage rec {
pname = "slowapi";
version = "0.1.8";
format = "pyproject";
version = "0.1.9";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "laurentS";
repo = pname;
repo = "slowapi";
rev = "refs/tags/v${version}";
hash = "sha256-xgHz8b95SXf/GwzKPfQ/RHbUNJfCx6+7a2HB8+6hjsw=";
hash = "sha256-R/Mr+Qv22AN7HCDGmAUVh4efU8z4gMIyhC0AuKmxgdE=";
};
pythonRelaxDeps = [
"limits"
];
postPatch = ''
substituteInPlace pyproject.toml \
--replace '["redis^3.4.1"]' '["redis"]'
'';
nativeBuildInputs = [
poetry-core
pythonRelaxDepsHook
];
propagatedBuildInputs = [

View File

@ -1,6 +1,7 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, fetchpatch
, hatchling
, textual
, universal-pathlib
@ -10,12 +11,15 @@
, paramiko
, requests
, s3fs
, pythonOlder
}:
buildPythonPackage rec {
pname = "textual-universal-directorytree";
version = "1.0.2";
format = "pyproject";
pyproject = true;
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "juftin";
@ -24,6 +28,15 @@ buildPythonPackage rec {
hash = "sha256-FL2bwPGqBmDn33Rhj7+VEpuqB4znEAw+GGAODTs25oo=";
};
patches = [
# universal-pathlib upgrade, https://github.com/juftin/textual-universal-directorytree/pull/2
(fetchpatch {
name = "universal-pathlib-upgrade.patch";
url = "https://github.com/juftin/textual-universal-directorytree/commit/e445aff21ddf756e3f180c8308a75c41487667c3.patch";
hash = "sha256-Fftx8rrLPb6lQ+HBdB5Ai55LHMWEO6XftmFfZXbXIyk=";
})
];
nativeBuildInputs = [
hatchling
];
@ -44,7 +57,9 @@ buildPythonPackage rec {
];
};
pythonImportsCheck = [ "textual_universal_directorytree" ];
pythonImportsCheck = [
"textual_universal_directorytree"
];
meta = with lib; {
description = "Textual plugin for a DirectoryTree compatible with remote filesystems";

View File

@ -1,4 +1,4 @@
{ lib, stdenv, fetchurl, libxslt, docbook_xsl, makeWrapper }:
{ lib, stdenv, fetchurl, libxslt, docbook_xsl, gettext, libiconv, makeWrapper }:
stdenv.mkDerivation rec {
pname = "xdg-user-dirs";
@ -9,7 +9,9 @@ stdenv.mkDerivation rec {
sha256 = "sha256-7G8G10lc26N6cyA5+bXhV4vLKWV2/eDaQO2y9SIg3zw=";
};
nativeBuildInputs = [ makeWrapper libxslt docbook_xsl ];
buildInputs = lib.optionals stdenv.isDarwin [ libiconv ];
nativeBuildInputs = [ makeWrapper libxslt docbook_xsl ] ++ lib.optionals stdenv.isDarwin [ gettext ];
preFixup = ''
# fallback values need to be last
@ -22,6 +24,6 @@ stdenv.mkDerivation rec {
description = "A tool to help manage well known user directories like the desktop folder and the music folder";
license = licenses.gpl2;
maintainers = with maintainers; [ ];
platforms = platforms.linux;
platforms = platforms.unix;
};
}

View File

@ -10,7 +10,8 @@
}: let
name = "tmux-sessionizer";
version = "0.3.2";
# v0.4.1 is not released yet, but v0.4.0 has version discrepancy between Cargo.toml and Cargo.lock and does not build
version = "0.4.0-unstable-2024-02-06";
in rustPlatform.buildRustPackage {
pname = name;
@ -19,16 +20,20 @@ in rustPlatform.buildRustPackage {
src = fetchFromGitHub {
owner = "jrmoulton";
repo = name;
rev = "v${version}";
hash = "sha256-8RQ67v2Cw681zikxYnq0Pb2ybh26w8mUbHKAC4TjYWA=";
rev = "79ab43a4087aa7e4e865cab6a181dfd24c6e7a90";
hash = "sha256-gzbCeNZML2ygIy/H3uT9apahqI+4hmrTwgXvcZq4Xog=";
};
cargoHash = "sha256-ZOWoUBna8U0A/sYwXMf4Z7Vi+KqM7VinWhmtO8Q0HtU=";
cargoHash = "sha256-Zvr2OH2pKtX60EApUSWhBV4cACMLl750UOiS3nN3J3Q=";
passthru.tests.version = testers.testVersion {
package = tmux-sessionizer;
version = "0.4.1";
};
# Needed to get openssl-sys to use pkg-config.
OPENSSL_NO_VENDOR = 1;
nativeBuildInputs = [ pkg-config ];
buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security ];

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "tmux-xpanes";
version = "4.1.4";
version = "4.2.0";
src = fetchFromGitHub {
owner = "greymd";
repo = pname;
rev = "v${version}";
sha256 = "sha256-kS8VrD0CT350Y1ql6ta47nXdEzmuqEpFJeXRw58yMGc=";
sha256 = "sha256-PF2K2A49c5djQqSO7ZLFyBwPZaJRK58qZTFpY7n+Z0w=";
};
buildInputs = [ openssl perl ];

View File

@ -10,7 +10,7 @@
buildPythonPackage rec {
pname = "octodns-bind";
version = "0.0.5";
version = "0.0.6";
pyproject = true;
disabled = pythonOlder "3.8";
@ -19,7 +19,7 @@ buildPythonPackage rec {
owner = "octodns";
repo = "octodns-bind";
rev = "v${version}";
hash = "sha256-0ia/xYarrOiLZa8KU0s5wtCGtXIyxSl6OcwNkSJb/rA=";
hash = "sha256-IxZr7Wds8wLfJg6rqCtJ59Sg/mCIJ1g9jDJ8CTM7O8w=";
};
nativeBuildInputs = [

View File

@ -21,11 +21,11 @@ let
in
stdenv.mkDerivation (finalAttrs: {
pname = "openvpn";
version = "2.6.8";
version = "2.6.9";
src = fetchurl {
url = "https://swupdate.openvpn.net/community/releases/openvpn-${finalAttrs.version}.tar.gz";
hash = "sha256-Xt4VZcim2IAQD38jUxen7p7qg9UFLbVUfxOp52r3gF0=";
hash = "sha256-4I0UfhW0UI380dZhih8h8UlfmBeo2twe3fBTL6EW1+M=";
};
nativeBuildInputs = [ pkg-config ];

View File

@ -19,13 +19,13 @@ let
libtokencap = callPackage ./libtokencap.nix { inherit aflplusplus; };
aflplusplus = stdenvNoCC.mkDerivation rec {
pname = "aflplusplus";
version = "4.09c";
version = "4.10c";
src = fetchFromGitHub {
owner = "AFLplusplus";
repo = "AFLplusplus";
rev = "v${version}";
sha256 = "sha256-SQQJpR3+thi4iyrowkOD878nRHNgBJqqUdRFhtqld4k=";
sha256 = "sha256-elghcBw2tIttQo7bkMFRCx8iNqxwY0NCz0343wc8hWA=";
};
enableParallelBuilding = true;

View File

@ -11476,10 +11476,6 @@ with pkgs;
openfortivpn = callPackage ../tools/networking/openfortivpn { };
opensnitch = callPackage ../tools/networking/opensnitch/daemon.nix { };
opensnitch-ui = libsForQt5.callPackage ../tools/networking/opensnitch/ui.nix { };
obexfs = callPackage ../tools/bluetooth/obexfs { };
obexftp = callPackage ../tools/bluetooth/obexftp { };

View File

@ -105,6 +105,8 @@ self: super: with self; {
aesedb = callPackage ../development/python-modules/aesedb { };
aetcd = callPackage ../development/python-modules/aetcd { };
afdko = callPackage ../development/python-modules/afdko { };
affine = callPackage ../development/python-modules/affine { };