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,53 @@
{
lib,
stdenv,
rustPlatform,
fetchFromGitHub,
btfdump,
rustc,
zlib,
libxml2,
}:
rustPlatform.buildRustPackage rec {
pname = "bpf-linker";
version = "0.9.15";
src = fetchFromGitHub {
owner = "aya-rs";
repo = "bpf-linker";
tag = "v${version}";
hash = "sha256-5HXYtAn6KaFXsiA3Nt0IwmFLOXBhZWYrD8cMZ8rZ1fk=";
};
cargoHash = "sha256-coIcd6WjVQM/b51jwkG8It/wubXx6wuuPlzzelPFE38=";
buildNoDefaultFeatures = true;
buildFeatures = [ "llvm-${lib.versions.major rustc.llvm.version}" ];
nativeBuildInputs = [ rustc.llvm ];
buildInputs = [
zlib
libxml2
];
nativeCheckInputs = [
btfdump
rustc.llvmPackages.clang.cc
];
meta = {
description = "Simple BPF static linker";
mainProgram = "bpf-linker";
homepage = "https://github.com/aya-rs/bpf-linker";
license = with lib.licenses; [
asl20
mit
];
maintainers = with lib.maintainers; [ nickcao ];
# llvm-sys crate locates llvm by calling llvm-config
# which is not available when cross compiling
broken = stdenv.buildPlatform != stdenv.hostPlatform;
};
}

View File

@@ -0,0 +1,86 @@
{
bison,
clangStdenv,
cmake,
cmocka,
doxygen,
fetchFromGitHub,
flex,
gitMinimal,
lcov,
lib,
libbpf,
libelf,
libnl,
nix-update-script,
pkg-config,
sphinx,
tinyxxd,
zlib,
}:
clangStdenv.mkDerivation (finalAttrs: {
pname = "bpfilter";
version = "0.6.0";
src = fetchFromGitHub {
owner = "facebook";
repo = "bpfilter";
tag = "v${finalAttrs.version}";
hash = "sha256-mlJQIvOWF8WL4pX8KTKM1ddEFva+dvj5m2S3sWQJsKE=";
};
nativeBuildInputs = [
bison
cmake
cmocka
doxygen
flex
lcov
pkg-config
sphinx
tinyxxd
];
buildInputs = [
libbpf
libelf
libnl
zlib
];
cmakeFlags = [
"-DDEFAULT_PROJECT_VERSION=${finalAttrs.version}"
"-DNO_TESTS=1" # tries to clone nftables
"-DNO_CHECKS=1"
"-DNO_BENCHMARKS=1"
];
outputs = [
"out"
"lib"
"dev"
];
# invalid with -target bpf
hardeningDisable = [ "zerocallusedregs" ];
preFixup = ''
substituteInPlace $out/lib/systemd/system/bpfilter.service --replace-fail /usr/sbin/bpfilter $out/bin/bpfilter
# workaround for https://github.com/NixOS/nixpkgs/issues/144170
substituteInPlace $lib/lib/pkgconfig/bpfilter.pc --replace-fail \''${prefix}/ ""
'';
passthru.updateScript = nix-update-script { };
meta = {
description = "BPF-based packet filtering framework";
homepage = "https://bpfilter.io";
changelog = "https://github.com/facebook/bpfilter/releases/tag/v${finalAttrs.version}";
license = lib.licenses.gpl2Only;
maintainers = [ lib.maintainers.jmbaur ];
mainProgram = "bpfilter";
platforms = lib.platforms.linux;
};
})

View File

@@ -0,0 +1,38 @@
{
lib,
stdenv,
fetchFromGitHub,
libpcap,
yascreen,
}:
stdenv.mkDerivation rec {
pname = "bpfmon";
version = "2.53";
src = fetchFromGitHub {
owner = "bbonev";
repo = "bpfmon";
tag = "v${version}";
hash = "sha256-+W+3RLvgXXtUImzLkJr9mSWExvAUgjMp+lR9sg14VaY=";
};
buildInputs = [
libpcap
yascreen
];
makeFlags = [
"PREFIX=$(out)"
];
meta = {
description = "BPF based visual packet rate monitor";
mainProgram = "bpfmon";
homepage = "https://github.com/bbonev/bpfmon";
changelog = "https://github.com/bbonev/bpfmon/releases/tag/v${version}";
maintainers = with lib.maintainers; [ arezvov ];
license = lib.licenses.gpl2Plus;
platforms = lib.platforms.linux;
};
}

View File

@@ -0,0 +1,12 @@
diff '--color=auto' -ruN a/tools/include/uapi/linux/types.h b/tools/include/uapi/linux/types.h
--- a/tools/include/uapi/linux/types.h 2025-05-18 06:26:10.000000000 +0000
+++ b/tools/include/uapi/linux/types.h 2025-07-04 08:00:39.772748792 +0000
@@ -2,7 +2,7 @@
#ifndef _UAPI_LINUX_TYPES_H
#define _UAPI_LINUX_TYPES_H
-#include <asm-generic/int-ll64.h>
+#include <asm/types.h>
/* copied from linux:include/uapi/linux/types.h */
#define __bitwise

View File

@@ -0,0 +1,91 @@
{
lib,
stdenv,
linuxHeaders,
buildPackages,
libopcodes,
libopcodes_2_38,
libbfd,
libbfd_2_38,
elfutils,
readline,
zlib,
python3,
bison,
flex,
}:
stdenv.mkDerivation rec {
pname = "bpftools";
inherit (linuxHeaders) version src;
separateDebugInfo = true;
patches = [
# fix unknown type name '__vector128' on powerpc64*
# https://www.spinics.net/lists/bpf/msg28613.html
./include-asm-types-for-powerpc64.patch
];
depsBuildBuild = [ buildPackages.stdenv.cc ];
nativeBuildInputs = [
python3
bison
flex
];
buildInputs =
(
if (lib.versionAtLeast version "5.20") then
[
libopcodes
libbfd
]
else
[
libopcodes_2_38
libbfd_2_38
]
)
++ [
elfutils
zlib
readline
];
preConfigure = ''
patchShebangs scripts/bpf_doc.py
cd tools/bpf
substituteInPlace ./bpftool/Makefile \
--replace '/usr/local' "$out" \
--replace '/usr' "$out" \
--replace '/sbin' '/bin'
'';
buildFlags = [
"bpftool"
"bpf_asm"
"bpf_dbg"
];
# needed for cross to riscv64
makeFlags = [ "ARCH=${stdenv.hostPlatform.linuxArch}" ];
installPhase = ''
make -C bpftool install
install -Dm755 -t $out/bin bpf_asm
install -Dm755 -t $out/bin bpf_dbg
'';
meta = with lib; {
homepage = "https://github.com/libbpf/bpftool";
description = "Debugging/program analysis tools for the eBPF subsystem";
license = [
licenses.gpl2Only
licenses.bsd2
];
platforms = platforms.linux;
maintainers = with maintainers; [ thoughtpolice ];
};
}

View File

@@ -0,0 +1,49 @@
{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
elfutils,
zlib,
libbpf,
clangStdenv,
}:
let
pname = "bpftop";
version = "0.7.1";
in
rustPlatform.buildRustPackage.override { stdenv = clangStdenv; } {
inherit pname version;
src = fetchFromGitHub {
owner = "Netflix";
repo = "bpftop";
tag = "v${version}";
hash = "sha256-8vb32+wHOnADpIIfO9mMlGu7GdlA0hS9ij0zSLcrO7A=";
};
cargoHash = "sha256-euiI4R4nCgnwiBA22kzn0c91hjOr0IOOAyFkW5ZadIk=";
buildInputs = [
elfutils
libbpf
zlib
];
nativeBuildInputs = [ pkg-config ];
hardeningDisable = [
"zerocallusedregs"
];
meta = {
description = "Dynamic real-time view of running eBPF programs";
homepage = "https://github.com/Netflix/bpftop";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [
_0x4A6F
luftmensch-luftmensch
mfrw
];
mainProgram = "bpftop";
};
}

View File

@@ -0,0 +1,93 @@
{
lib,
stdenv,
fetchFromGitHub,
llvmPackages,
elfutils,
bcc,
libbpf,
libbfd,
libopcodes,
glibc,
cereal,
asciidoctor,
cmake,
pkg-config,
flex,
bison,
util-linux,
nixosTests,
}:
stdenv.mkDerivation rec {
pname = "bpftrace";
version = "0.23.5";
src = fetchFromGitHub {
owner = "bpftrace";
repo = "bpftrace";
rev = "v${version}";
hash = "sha256-Shtf4PSXxUV0Bd7ORYyP06lbWf3LE6BQi7WfTIGDOfk=";
};
buildInputs = with llvmPackages; [
llvm
libclang
elfutils
bcc
libbpf
libbfd
libopcodes
cereal
asciidoctor
];
nativeBuildInputs = [
cmake
pkg-config
flex
bison
llvmPackages.llvm.dev
util-linux
];
cmakeFlags = [
"-DLIBBCC_INCLUDE_DIRS=${bcc}/include"
"-DINSTALL_TOOL_DOCS=OFF"
"-DSYSTEM_INCLUDE_PATHS=${glibc.dev}/include"
];
# Pull BPF scripts into $PATH (next to their bcc program equivalents), but do
# not move them to keep `${pkgs.bpftrace}/share/bpftrace/tools/...` working.
postInstall = ''
ln -sr $out/share/bpftrace/tools/*.bt $out/bin/
# do not use /usr/bin/env for shipped tools
# If someone can get patchShebangs to work here please fix.
sed -i -e "1s:#!/usr/bin/env bpftrace:#!$out/bin/bpftrace:" $out/share/bpftrace/tools/*.bt
'';
outputs = [
"out"
"man"
];
passthru.tests = {
bpf = nixosTests.bpf;
};
meta = {
description = "High-level tracing language for Linux eBPF";
homepage = "https://github.com/bpftrace/bpftrace";
changelog = "https://github.com/bpftrace/bpftrace/releases/tag/v${version}";
mainProgram = "bpftrace";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [
rvl
thoughtpolice
martinetd
mfrw
illustris
];
platforms = lib.platforms.linux;
};
}

View File

@@ -0,0 +1,79 @@
{
lib,
stdenv,
fetchFromGitHub,
clang,
bpftools,
docutils,
libbpf,
libcap,
libnl,
nixosTests,
unstableGitUpdater,
}:
stdenv.mkDerivation rec {
pname = "bpftune";
version = "0-unstable-2025-03-20";
src = fetchFromGitHub {
owner = "oracle";
repo = "bpftune";
rev = "8c6a3ffc09265bd44ed89b75c400ef97959d1aff";
hash = "sha256-TQ8WaGvMcvyeZC4B9gSjJ2k5NOxpTaV4n7Qi36aA78Q=";
};
postPatch = ''
# otherwise shrink rpath would drop $out/lib from rpath
substituteInPlace src/Makefile \
--replace-fail /sbin /bin \
--replace-fail ldconfig true
substituteInPlace src/bpftune.service \
--replace-fail /usr/sbin/bpftune "$out/bin/bpftune"
substituteInPlace src/libbpftune.c \
--replace-fail /lib/modules /run/booted-system/kernel-modules/lib/modules
'';
nativeBuildInputs = [
clang
bpftools
docutils # rst2man
];
buildInputs = [
libbpf
libcap
libnl
];
makeFlags = [
"prefix=${placeholder "out"}"
"confprefix=${placeholder "out"}/etc"
"libdir=lib"
"BPFTUNE_VERSION=${version}"
"NL_INCLUDE=${lib.getDev libnl}/include/libnl3"
"BPF_INCLUDE=${lib.getDev libbpf}/include"
];
hardeningDisable = [
"stackprotector"
"zerocallusedregs"
];
passthru = {
tests = {
inherit (nixosTests) bpftune;
};
updateScript = unstableGitUpdater { };
};
enableParallelBuilding = true;
meta = with lib; {
description = "BPF-based auto-tuning of Linux system parameters";
mainProgram = "bpftune";
homepage = "https://github.com/oracle-samples/bpftune";
license = licenses.gpl2Only;
maintainers = with maintainers; [ nickcao ];
};
}

View File

@@ -0,0 +1,51 @@
{
stdenv,
lib,
fetchurl,
gnuplot,
sox,
flac,
id3v2,
vorbis-tools,
makeWrapper,
}:
let
path = lib.makeBinPath [
gnuplot
sox
flac
id3v2
vorbis-tools
];
in
stdenv.mkDerivation (finalAttrs: {
pname = "bpm-tools";
version = "0.3";
src = fetchurl {
url = "http://www.pogo.org.uk/~mark/bpm-tools/releases/bpm-tools-${finalAttrs.version}.tar.gz";
sha256 = "151vfbs8h3cibs7kbdps5pqrsxhpjv16y2iyfqbxzsclylgfivrp";
};
nativeBuildInputs = [
makeWrapper
];
installFlags = [
"PREFIX=${placeholder "out"}"
];
postFixup = ''
wrapProgram $out/bin/bpm-tag --prefix PATH : "${path}"
wrapProgram $out/bin/bpm-graph --prefix PATH : "${path}"
'';
meta = with lib; {
homepage = "http://www.pogo.org.uk/~mark/bpm-tools/";
description = "Automatically calculate BPM (tempo) of music files";
license = licenses.gpl2Only;
platforms = platforms.all;
maintainers = with maintainers; [ doronbehar ];
};
})

View File

@@ -0,0 +1,46 @@
{
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
cmake,
}:
stdenv.mkDerivation rec {
pname = "bpp-core";
version = "2.4.1";
src = fetchFromGitHub {
owner = "BioPP";
repo = "bpp-core";
rev = "v${version}";
sha256 = "0ma2cl677l7s0n5sffh66cy9lxp5wycm50f121g8rx85p95vkgwv";
};
patches = [
(fetchpatch {
url = "https://github.com/BioPP/bpp-core/commit/d450e8033b06e80dff9c2236fb7ce1f3ced5dcbb.patch";
hash = "sha256-9t68mrK7KNs5BxljKMaA+XskCcKDNv8DNCVUYunoNdw=";
})
];
nativeBuildInputs = [ cmake ];
postFixup = ''
substituteInPlace $out/lib/cmake/bpp-core/bpp-core-targets.cmake \
--replace 'set(_IMPORT_PREFIX' '#set(_IMPORT_PREFIX'
'';
# prevents cmake from exporting incorrect INTERFACE_INCLUDE_DIRECTORIES
# of form /nix/store/.../nix/store/.../include,
# probably due to relative vs absolute path issue
doCheck = !stdenv.hostPlatform.isDarwin;
meta = with lib; {
homepage = "https://github.com/BioPP/bpp-core";
changelog = "https://github.com/BioPP/bpp-core/blob/master/ChangeLog";
description = "C++ bioinformatics libraries and tools";
maintainers = with maintainers; [ bcdarwin ];
license = licenses.cecill20;
};
}

View File

@@ -0,0 +1,38 @@
{
stdenv,
fetchFromGitHub,
cmake,
bpp-core,
bpp-seq,
}:
stdenv.mkDerivation rec {
pname = "bpp-phyl";
inherit (bpp-core) version;
src = fetchFromGitHub {
owner = "BioPP";
repo = "bpp-phyl";
rev = "v${version}";
sha256 = "192zks6wyk903n06c2lbsscdhkjnfwms8p7jblsmk3lvjhdipb20";
};
nativeBuildInputs = [ cmake ];
buildInputs = [
bpp-core
bpp-seq
];
postFixup = ''
substituteInPlace $out/lib/cmake/bpp-phyl/bpp-phyl-targets.cmake \
--replace 'set(_IMPORT_PREFIX' '#set(_IMPORT_PREFIX'
'';
doCheck = !stdenv.hostPlatform.isDarwin;
meta = bpp-core.meta // {
homepage = "https://github.com/BioPP/bpp-phyl";
changelog = "https://github.com/BioPP/bpp-phyl/blob/master/ChangeLog";
};
}

View File

@@ -0,0 +1,41 @@
{
stdenv,
fetchFromGitHub,
cmake,
bpp-core,
bpp-seq,
}:
stdenv.mkDerivation rec {
pname = "bpp-popgen";
inherit (bpp-core) version;
src = fetchFromGitHub {
owner = "BioPP";
repo = "bpp-popgen";
rev = "v${version}";
sha256 = "0bz0fhrq3dri6a0hvfc3zlvrns8mrzzlnicw5pyfa812gc1qwfvh";
};
nativeBuildInputs = [ cmake ];
buildInputs = [
bpp-core
bpp-seq
];
postFixup = ''
substituteInPlace $out/lib/cmake/bpp-popgen/bpp-popgen-targets.cmake \
--replace 'set(_IMPORT_PREFIX' '#set(_IMPORT_PREFIX'
'';
# prevents cmake from exporting incorrect INTERFACE_INCLUDE_DIRECTORIES
# of form /nix/store/.../nix/store/.../include,
# probably due to relative vs absolute path issue
doCheck = !stdenv.hostPlatform.isDarwin;
meta = bpp-core.meta // {
homepage = "https://github.com/BioPP/bpp-popgen";
changelog = "https://github.com/BioPP/bpp-popgen/blob/master/ChangeLog";
};
}

View File

@@ -0,0 +1,37 @@
{
stdenv,
fetchFromGitHub,
cmake,
bpp-core,
}:
stdenv.mkDerivation rec {
pname = "bpp-seq";
inherit (bpp-core) version;
src = fetchFromGitHub {
owner = "BioPP";
repo = "bpp-seq";
rev = "v${version}";
sha256 = "1mc09g8jswzsa4wgrfv59jxn15ys3q8s0227p1j838wkphlwn2qk";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ bpp-core ];
postFixup = ''
substituteInPlace $out/lib/cmake/bpp-seq/bpp-seq-targets.cmake \
--replace 'set(_IMPORT_PREFIX' '#set(_IMPORT_PREFIX'
'';
# prevents cmake from exporting incorrect INTERFACE_INCLUDE_DIRECTORIES
# of form /nix/store/.../nix/store/.../include,
# probably due to relative vs absolute path issue
doCheck = !stdenv.hostPlatform.isDarwin;
meta = bpp-core.meta // {
homepage = "https://github.com/BioPP/bpp-seq";
changelog = "https://github.com/BioPP/bpp-seq/blob/master/ChangeLog";
};
}

View File

@@ -0,0 +1,35 @@
{
stdenv,
fetchFromGitHub,
cmake,
bpp-core,
bpp-seq,
bpp-phyl,
bpp-popgen,
}:
stdenv.mkDerivation rec {
pname = "bppsuite";
inherit (bpp-core) version;
src = fetchFromGitHub {
owner = "BioPP";
repo = "bppsuite";
rev = "v${version}";
sha256 = "1wdwcgczqbc3m116vakvi0129wm3acln3cfc7ivqnalwvi6lrpds";
};
nativeBuildInputs = [ cmake ];
buildInputs = [
bpp-core
bpp-seq
bpp-phyl
bpp-popgen
];
meta = bpp-core.meta // {
homepage = "https://github.com/BioPP/bppsuite";
changelog = "https://github.com/BioPP/bppsuite/blob/master/ChangeLog";
};
}