push sheeet
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s

This commit is contained in:
Dark Steveneq
2025-10-09 14:15:47 +02:00
commit 646b892680
49168 changed files with 5897842 additions and 0 deletions

View File

@@ -0,0 +1,39 @@
{
lib,
stdenv,
fetchFromGitHub,
pkg-config,
cmake,
pcsclite,
libnfc-nci,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "ifdnfc-nci";
version = "0.2.1";
src = fetchFromGitHub {
owner = "StarGate01";
repo = "ifdnfc-nci";
tag = "v${finalAttrs.version}";
sha256 = "sha256-I2MNzmaxQUh4bN3Uytf2bQRthByEaFWM7c79CKZJQZA=";
};
nativeBuildInputs = [
cmake
pkg-config
];
buildInputs = [
pcsclite
libnfc-nci
];
meta = {
description = "PC/SC IFD Handler based on linux_libnfc-nci";
homepage = "https://github.com/StarGate01/ifdnfc-nci";
license = lib.licenses.gpl3Only;
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [ stargate01 ];
};
})

View File

@@ -0,0 +1,58 @@
{
lib,
stdenv,
fetchFromGitHub,
pkg-config,
pcsclite,
autoreconfHook,
libnfc,
}:
stdenv.mkDerivation {
pname = "ifdnfc";
version = "2016-03-01";
src = fetchFromGitHub {
owner = "nfc-tools";
repo = "ifdnfc";
rev = "0e48e8e107dc42f68fb472bb06d257503ad45b1d";
sha256 = "1cxnvhhlcbm8h49rlw5racspb85fmwqqhd3gzzpzy68vrs0b37vg";
};
nativeBuildInputs = [
pkg-config
autoreconfHook
];
buildInputs = [
pcsclite
libnfc
];
configureFlags = [ "--prefix=$(out)" ];
makeFlags = [
"DESTDIR=/"
"usbdropdir=$(out)/pcsc/drivers"
];
meta = with lib; {
description = "PC/SC IFD Handler based on libnfc";
mainProgram = "ifdnfc-activate";
longDescription = ''
libnfc Interface Plugin to be used in <code>services.pcscd.plugins</code>.
It provides support for all readers which are not supported by ccid but by libnfc.
For activating your reader you need to run
<code>ifdnfc-activate yes<code> with this package in your
<code>environment.systemPackages</code>
To use your reader you may need to blacklist your reader kernel modules:
<code>boot.blacklistedKernelModules = [ "pn533" "pn533_usb" "nfc" ];</code>
Supports the pn533 smart-card reader chip which is for example used in
the SCM SCL3711.
'';
homepage = "https://github.com/nfc-tools/ifdnfc";
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = with maintainers; [ makefu ];
};
}

View File

@@ -0,0 +1,33 @@
{
lib,
stdenv,
fetchurl,
}:
stdenv.mkDerivation rec {
pname = "ifenslave";
version = "1.1.0";
src = fetchurl {
url = "mirror://debian/pool/main/i/ifenslave-2.6/ifenslave-2.6_${version}.orig.tar.gz";
sha256 = "0h9hrmy19zdksl7ys250r158b943ihbgkb95n8p4k8l0vqsby5vr";
};
buildPhase = ''
gcc -o ifenslave ifenslave.c
'';
installPhase = ''
mkdir -p $out/bin
cp -a ifenslave $out/bin
'';
hardeningDisable = [ "format" ];
meta = {
description = "Utility for enslaving networking interfaces under a bond";
mainProgram = "ifenslave";
license = lib.licenses.gpl2Only;
platforms = lib.platforms.linux;
};
}

View File

@@ -0,0 +1,32 @@
{
buildGoModule,
lib,
fetchFromGitHub,
}:
buildGoModule {
pname = "iferr";
version = "0-unstable-2024-01-22";
src = fetchFromGitHub {
owner = "koron";
repo = "iferr";
rev = "9c3e2fbe4bd19a7f0338e42bb483562ed4cf4d50";
hash = "sha256-qGuSsdQorb407rDl2o7w7kPCLng3W7YQsqo5JpoZFW8=";
};
vendorHash = null;
ldflags = [
"-s"
"-w"
];
meta = with lib; {
description = ''Generate "if err != nil {" block'';
homepage = "https://github.com/koron/iferr";
license = licenses.mit;
maintainers = with maintainers; [ kalbasit ];
mainProgram = "iferr";
};
}

View File

@@ -0,0 +1,55 @@
{
fetchurl,
stdenv,
lib,
php83,
writeShellScript,
nixosTests,
}:
let
version = "4.0.2";
src = fetchurl {
url = "https://github.com/misterunknown/ifm/releases/download/v${version}/cdn.ifm.php";
hash = "sha256-37WbRM6D7JGmd//06zMhxMGIh8ioY8vRUmxX4OHgqBE=";
};
serve_script = writeShellScript "ifm-serve" ''
if [ $# -ne 3 ]; then
echo "Usage: $0 <listen address> <port> <data directory>";
exit 1;
fi
SERVE_DIR=$(dirname "$0")/../php/
IFM_ROOT_DIR="$3" ${lib.getExe php83} -S "$1:$2" -t "$SERVE_DIR"
'';
in
stdenv.mkDerivation {
pname = "ifm";
inherit version src;
dontUnpack = true;
installPhase = ''
runHook preInstall
mkdir -p $out/bin $out/php
cp $src $out/php/index.php
cp ${serve_script} $out/bin/ifm
runHook postInstall
'';
passthru.tests = {
inherit (nixosTests) ifm;
};
meta = {
description = "Improved File Manager, a single-file web-based filemanager";
longDescription = ''
The IFM is a web-based filemanager, which comes as a single file solution using HTML5, CSS3, JavaScript and PHP.
'';
homepage = "https://github.com/misterunknown/ifm";
changelog = "https://github.com/misterunknown/ifm/releases/tag/v${version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ litchipi ];
mainProgram = "ifm";
};
}

View File

@@ -0,0 +1,48 @@
{
lib,
stdenv,
fetchzip,
autoreconfHook,
bison,
flex,
help2man,
perl,
tk,
}:
stdenv.mkDerivation {
pname = "ifm";
version = "2015-11-08";
src = fetchzip {
url = "https://bitbucket.org/zondo/ifm/get/dca0774e4d3a.zip";
sha256 = "14af21qjd5jvsscm6vxpsdrnipdr33g6niagzmykrhyfhwcbjahi";
};
nativeBuildInputs = [
autoreconfHook
bison
flex
help2man
];
buildInputs = [
perl
tk
]; # perl and wish are not run but written as shebangs.
# Workaround build failure on -fno-common toolchains:
# ld: libvars.a(vars-freeze-lex.o):src/libvars/vars-freeze-lex.l:23:
# multiple definition of `line_number'; ifm-main.o:src/ifm-main.c:46: first defined here
env.NIX_CFLAGS_COMPILE = "-fcommon";
enableParallelBuilding = false; # ifm-scan.l:16:10: fatal error: ifm-parse.h: No such file or directory
meta = with lib; {
homepage = "https://bitbucket.org/zondo/ifm";
description = "Interactive fiction mapper";
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ orivej ];
};
}

View File

@@ -0,0 +1,42 @@
{
lib,
stdenv,
fetchurl,
lynx,
}:
stdenv.mkDerivation rec {
pname = "ifmetric";
version = "0.3";
src = fetchurl {
url = "http://0pointer.de/lennart/projects/${pname}/${pname}-${version}.tar.gz";
sha256 = "1v0s5x81jzwnnl7hr254d4nkyc8qcv983pzr6vqmbr9l9q553a0g";
};
buildInputs = [ lynx ];
patches = [
# Fixes an issue related to the netlink API.
# Upstream is largely inactive; this is a Debian patch.
(fetchurl {
url = "https://launchpadlibrarian.net/85974387/10_netlink_fix.patch";
sha256 = "1pnlcr0qvk0bd5243wpg14i387zp978f4xhwwkcqn1cir91x7fbc";
})
];
meta = with lib; {
description = "Tool for setting IP interface metrics";
longDescription = ''
ifmetric is a Linux tool for setting the metrics of all IPv4 routes
attached to a given network interface at once. This may be used to change
the priority of routing IPv4 traffic over the interface. Lower metrics
correlate with higher priorities.
'';
homepage = "http://0pointer.de/lennart/projects/ifmetric";
license = licenses.gpl2Plus;
maintainers = [ maintainers.anna328p ];
platforms = platforms.linux;
mainProgram = "ifmetric";
};
}

View File

@@ -0,0 +1,32 @@
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
version = 3
[[package]]
name = "ifrextractor"
version = "1.5.1"
dependencies = [
"nom",
]
[[package]]
name = "memchr"
version = "2.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
[[package]]
name = "nom"
version = "4.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2ad2a91a8e869eeb30b9cb3119ae87773a8f4ae617f41b1eb9c154b2905f7bd6"
dependencies = [
"memchr",
"version_check",
]
[[package]]
name = "version_check"
version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"

View File

@@ -0,0 +1,33 @@
{
lib,
fetchFromGitHub,
rustPlatform,
}:
rustPlatform.buildRustPackage rec {
pname = "ifrextractor-rs";
version = "1.5.1";
src = fetchFromGitHub {
owner = "LongSoft";
repo = "ifrextractor-rs";
rev = "v${version}";
hash = "sha256-zpoOThjkL2Hu/ytxdqWcr2GXzN4Cm8hph7PJhSF5BlU=";
};
cargoLock = {
lockFile = ./Cargo.lock;
};
postPatch = ''
ln -s ${./Cargo.lock} Cargo.lock
'';
meta = with lib; {
description = "Rust utility to extract UEFI IFR data into human-readable text";
mainProgram = "ifrextractor";
homepage = "https://github.com/LongSoft/IFRExtractor-RS";
license = licenses.bsd2;
maintainers = with maintainers; [ jiegec ];
};
}

View File

@@ -0,0 +1,37 @@
{
lib,
stdenv,
fetchurl,
autoreconfHook,
net-snmp,
}:
stdenv.mkDerivation rec {
pname = "ifstat-legacy";
version = "1.1";
src = fetchurl {
url = "http://gael.roualland.free.fr/ifstat/ifstat-${version}.tar.gz";
sha256 = "01zmv6vk5kh5xmd563xws8a1qnxjb6b6kv59yzz9r3rrghxhd6c5";
};
buildInputs = lib.optional stdenv.hostPlatform.isLinux net-snmp;
nativeBuildInputs = [ autoreconfHook ];
enableParallelBuilding = true;
postInstall = ''
mv $out/bin/ifstat $out/bin/ifstat-legacy
mv $out/share/man/man1/ifstat.1 $out/share/man/man1/ifstat-legacy.1
'';
meta = with lib; {
description = "Report network interfaces bandwith just like vmstat/iostat do for other system counters - legacy version";
homepage = "http://gael.roualland.free.fr/ifstat/";
maintainers = with maintainers; [ peterhoeg ];
platforms = platforms.unix;
license = licenses.gpl2Plus;
mainProgram = "ifstat-legacy";
};
}

View File

@@ -0,0 +1,122 @@
{
lib,
stdenv,
yq,
python3Packages,
fetchFromGitea,
iproute2,
libbpf,
nixosTests,
withBpf ? false,
withConfigValidation ? true,
withShellColor ? false,
withWireguard ? true,
}:
let
version = "2.0.2";
src = fetchFromGitea {
domain = "codeberg.org";
owner = "liske";
repo = "ifstate";
tag = version;
hash = "sha256-ghl2EVSum8KOh9wpFkrLGeIii2cj0a2+yOa48/JwFRk=";
};
docs = stdenv.mkDerivation {
pname = "ifstate-docs";
inherit version src;
nativeBuildInputs = [ yq ];
buildInputs =
with python3Packages;
(
[
mkdocs-material
mkdocs-glightbox
mkdocs-minify-plugin
]
++ mkdocs-material.optional-dependencies.imaging
);
postPatch = ''
# git-revision-date requires a git repository
# privacy and social plugin require internet
yq -yi 'del(.plugins[] | select((type == "object" and (has("git-revision-date-localized") or has("social"))) or (type == "string" and . == "privacy")))' mkdocs.yaml
'';
buildPhase = ''
runHook preBuild
mkdir -p $out
mkdocs build -d $out
runHook postBuild
'';
};
self = python3Packages.buildPythonApplication rec {
pname = "ifstate";
inherit version src;
pyproject = true;
postPatch = ''
substituteInPlace libifstate/routing/__init__.py \
--replace-fail '/usr/share/iproute2' '${iproute2}/share/iproute2'
''
+ lib.optionalString withBpf ''
substituteInPlace libifstate/bpf/ctypes.py \
--replace-fail 'libbpf.so.1' '${libbpf}/lib/libbpf.so.1'
'';
build-system = with python3Packages; [
setuptools
];
dependencies =
with python3Packages;
[
pyroute2
pyyaml
setproctitle
]
++ lib.optional withConfigValidation jsonschema
++ lib.optional withShellColor pygments
++ lib.optional withWireguard wgnlpy;
pythonRemoveDeps = lib.optional (!withConfigValidation) "jsonschema";
# has no unit tests
doCheck = false;
pythonImportsCheck = [
"libifstate"
"ifstate"
];
passthru = {
tests = nixosTests.ifstate;
features = {
inherit
withBpf
withConfigValidation
withShellColor
withWireguard
;
};
# needed for access in schema validaten in module
jsonschema = "${self}/${python3Packages.python.sitePackages}/libifstate/schema/2/ifstate.conf.schema.json";
inherit docs;
};
meta = {
description = "Manage host interface settings in a declarative manner";
homepage = "https://ifstate.net";
changelog = "https://codeberg.org/liske/ifstate/src/tag/${src.tag}/CHANGELOG.md";
platforms = lib.platforms.linux;
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ marcel ];
mainProgram = "ifstatecli";
};
};
in
self

View File

@@ -0,0 +1,49 @@
{
lib,
stdenv,
fetchurl,
ncurses,
libpcap,
nixosTests,
}:
stdenv.mkDerivation rec {
pname = "iftop";
version = "1.0pre4";
src = fetchurl {
url = "http://ex-parrot.com/pdw/iftop/download/iftop-${version}.tar.gz";
sha256 = "15sgkdyijb7vbxpxjavh5qm5nvyii3fqcg9mzvw7fx8s6zmfwczp";
};
# Explicitly link against libgcc_s, to work around the infamous
# "libgcc_s.so.1 must be installed for pthread_cancel to work".
LDFLAGS = lib.optionalString stdenv.hostPlatform.isLinux "-lgcc_s";
buildInputs = [
ncurses
libpcap
];
# Workaround build failure on -fno-common toolchains like upstream
# gcc-10. Otherwise build fails as:
# ld: tui.o:/build/iftop-1.0pre4/ui_common.h:41: multiple definition of `service_hash';
# iftop.o:/build/iftop-1.0pre4/ui_common.h:41: first defined here
env.NIX_CFLAGS_COMPILE = "-fcommon";
passthru.tests = { inherit (nixosTests) iftop; };
meta = with lib; {
description = "Display bandwidth usage on a network interface";
longDescription = ''
iftop does for network usage what top(1) does for CPU usage. It listens
to network traffic on a named interface and displays a table of current
bandwidth usage by pairs of hosts.
'';
license = licenses.gpl2Plus;
homepage = "http://ex-parrot.com/pdw/iftop/";
platforms = platforms.unix;
maintainers = [ ];
mainProgram = "iftop";
};
}

View File

@@ -0,0 +1,48 @@
{
lib,
stdenv,
fetchFromGitHub,
autoreconfHook,
pkg-config,
fuse,
usbmuxd,
libimobiledevice,
}:
stdenv.mkDerivation {
pname = "ifuse";
version = "1.1.4+date=2022-04-04";
src = fetchFromGitHub {
owner = "libimobiledevice";
repo = "ifuse";
rev = "6f5b8e410f9615b3369ca5eb5367745e13d83b92";
hash = "sha256-KbuJLS2BWua9DnhLv2KtsQObin0PQwXQwEdgi3lSAPk=";
};
nativeBuildInputs = [
autoreconfHook
pkg-config
];
buildInputs = [
fuse
usbmuxd
libimobiledevice
];
meta = with lib; {
homepage = "https://github.com/libimobiledevice/ifuse";
description = "Fuse filesystem implementation to access the contents of iOS devices";
longDescription = ''
Mount directories of an iOS device locally using fuse. By default the media
directory is mounted, options allow to also mount the sandbox container of an
app, an app's documents folder or even the root filesystem on jailbroken
devices.
'';
license = licenses.lgpl21Plus;
platforms = platforms.unix;
maintainers = [ ];
mainProgram = "ifuse";
};
}

View File

@@ -0,0 +1,59 @@
{
lib,
stdenv,
fetchFromGitHub,
rustPlatform,
makeWrapper,
networkmanager,
iw,
}:
rustPlatform.buildRustPackage rec {
pname = "ifwifi";
version = "1.2.0";
src = fetchFromGitHub {
owner = "araujobsd";
repo = "ifwifi";
rev = version;
sha256 = "sha256-DPMCwyKqGJrav0wASBky9bS1bvJ3xaGsDzsk1bKaH1U=";
};
cargoHash = "sha256-oxuOc9FSKYq6UjimZPLayJ+5xsWzh3gZV/mVpPbPWHk=";
nativeBuildInputs = [ makeWrapper ];
postInstall = ''
wrapProgram "$out/bin/ifwifi" \
--prefix PATH : "${
lib.makeBinPath (
# `ifwifi` runtime dep
[ networkmanager ]
# `wifiscanner` crate's runtime deps
++ (lib.optional stdenv.hostPlatform.isLinux iw)
# ++ (lib.optional stdenv.hostPlatform.isDarwin airport) # airport isn't packaged
)
}"
'';
doCheck = true;
meta = with lib; {
description = "Simple wrapper over nmcli using wifiscanner made in rust";
mainProgram = "ifwifi";
longDescription = ''
In the author's words:
I felt bothered because I never remember the long and tedious command
line to setup my wifi interface. So, I wanted to develop something
using rust to simplify the usage of nmcli, and I met the wifiscanner
project that gave me almost everything I wanted to create this tool.
'';
homepage = "https://github.com/araujobsd/ifwifi";
license = with licenses; [ bsd2 ];
maintainers = [ ];
# networkmanager doesn't work on darwin
# even though the `wifiscanner` crate would work
platforms = with platforms; linux; # ++ darwin;
};
}