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,42 @@
{
lib,
fetchFromGitHub,
python3,
}:
python3.pkgs.buildPythonApplication rec {
pname = "uddup";
version = "0.9.3";
pyproject = true;
src = fetchFromGitHub {
owner = "rotemreiss";
repo = "uddup";
rev = "v${version}";
sha256 = "1f5dm3772hiik9irnyvbs7wygcafbwi7czw3b47cwhb90b8fi5hg";
};
build-system = with python3.pkgs; [
setuptools
];
dependencies = with python3.pkgs; [
colorama
];
nativeCheckInputs = with python3.pkgs; [
pytestCheckHook
];
pythonImportsCheck = [
"uddup"
];
meta = with lib; {
description = "Tool for de-duplication URLs";
mainProgram = "uddup";
homepage = "https://github.com/rotemreiss/uddup";
license = with licenses; [ mit ];
maintainers = with maintainers; [ fab ];
};
}

View File

@@ -0,0 +1,43 @@
{
lib,
stdenv,
cmake,
fetchgit,
pkg-config,
ubus,
libubox,
ucode,
json_c,
}:
stdenv.mkDerivation {
pname = "udebug";
version = "unstable-2023-12-06";
src = fetchgit {
url = "https://git.openwrt.org/project/udebug.git";
rev = "6d3f51f9fda706f0cf4732c762e4dbe8c21e12cf";
hash = "sha256-5dowoFZn9I2IXMQ3Pz+2Eo3rKfihLzjca84MytQIXcU=";
};
buildInputs = [
ubus
libubox
ucode
json_c
];
nativeBuildInputs = [
cmake
pkg-config
];
meta = with lib; {
description = "OpenWrt debugging helper library/service";
mainProgram = "udebugd";
homepage = "https://git.openwrt.org/?p=project/udebug.git;a=summary";
license = licenses.free;
platforms = platforms.linux;
maintainers = with maintainers; [ mkg20001 ];
};
}

View File

@@ -0,0 +1,54 @@
{
stdenv,
fetchFromGitHub,
multimarkdown,
libnotify,
udev,
systemdLibs,
glib,
pkg-config,
lib,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "udev-block-notify";
version = "0.7.11";
src = fetchFromGitHub {
owner = "eworm-de";
repo = "udev-block-notify";
tag = finalAttrs.version;
hash = "sha256-A0uhfb2mEAAJgxRkv+MWTk/9oFiz3r7deAlu1Kpk+CI=";
};
nativeBuildInputs = [
multimarkdown
pkg-config
];
buildInputs = [
libnotify
udev
systemdLibs
glib
];
installPhase = ''
runHook preInstall
substituteInPlace systemd/udev-block-notify.service \
--replace-fail '/usr/bin/udev-block-notify' "$out/bin/udev-block-notify"
install -D -m0755 udev-block-notify $out/bin/udev-block-notify
install -D -m0644 systemd/udev-block-notify.service $out/lib/systemd/user/udev-block-notify.service
runHook postInstall
'';
meta = {
homepage = "https://github.com/eworm-de/udev-block-notify";
description = "Notify about udev block events";
mainProgram = "udev-block-notify";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ danbulant ];
platforms = lib.platforms.linux;
};
})

View File

@@ -0,0 +1,29 @@
{
lib,
stdenvNoCC,
fetchzip,
}:
stdenvNoCC.mkDerivation rec {
pname = "udev-gothic-nf";
version = "2.1.0";
src = fetchzip {
url = "https://github.com/yuru7/udev-gothic/releases/download/v${version}/UDEVGothic_NF_v${version}.zip";
hash = "sha256-55SHOQD+6eJ2L3+95eofr18fp1nFeBKcZvZq8gfj7rA=";
};
installPhase = ''
runHook preInstall
install -Dm644 *.ttf -t $out/share/fonts/udev-gothic-nf
runHook postInstall
'';
meta = with lib; {
description = "Programming font that combines BIZ UD Gothic, JetBrains Mono and nerd-fonts";
homepage = "https://github.com/yuru7/udev-gothic";
license = licenses.ofl;
maintainers = with maintainers; [ haruki7049 ];
platforms = platforms.all;
};
}

View File

@@ -0,0 +1,29 @@
{
lib,
stdenvNoCC,
fetchzip,
}:
stdenvNoCC.mkDerivation rec {
pname = "udev-gothic";
version = "2.1.0";
src = fetchzip {
url = "https://github.com/yuru7/udev-gothic/releases/download/v${version}/UDEVGothic_v${version}.zip";
hash = "sha256-9gwBT0GVNPVWoiFIKBUf5sNGkhfJCWhMFRRIGvj5Wto=";
};
installPhase = ''
runHook preInstall
install -Dm644 *.ttf -t $out/share/fonts/udev-gothic
runHook postInstall
'';
meta = with lib; {
description = "Programming font that combines BIZ UD Gothic and JetBrains Mono";
homepage = "https://github.com/yuru7/udev-gothic";
license = licenses.ofl;
maintainers = with maintainers; [ haruki7049 ];
platforms = platforms.all;
};
}

View File

@@ -0,0 +1,27 @@
# shellcheck shell=bash
udevCheckHook() {
runHook preUdevCheck
echo Executing udevCheckPhase
# as per nixos/modules/services/hardware/udev.nix:
# - both /lib and /etc is valid paths for udev rules
# - udev rules are expected to be part of the $bin output
# However, not all udev rules are actually in $bin (some are in $lib or $out).
# This means we have to actually check all outputs here.
for output in $(getAllOutputNames); do
for path in etc lib ; do
if [ -d "${!output}/$path/udev/rules.d" ]; then
@udevadm@ verify --resolve-names=never --no-style "${!output}/$path/udev/rules.d"
fi
done
done
runHook postUdevCheck
echo Finished udevCheckPhase
}
if [[ -z "${dontUdevCheck-}" && -n "@udevadm@" ]]; then
echo "Using udevCheckHook"
preInstallCheckHooks+=(udevCheckHook)
fi

View File

@@ -0,0 +1,25 @@
{
lib,
makeSetupHook,
systemdMinimal,
stdenv,
}:
let
# udev rules can only be checked if systemd (specifically, 'udevadm') can be executed on build platform
# If cross-compiling linux -> non-linux, udev rules are still checked, even if they end up being unused.
# This is not a problem:
# - If there are no udev rules, the hook is a noop
# - If the udev rules are broken, they should be flagged as such
# - if rules are not needed on a target platform where they are broken, they should be deleted from package output
applyHook = lib.meta.availableOn stdenv.buildPlatform systemdMinimal;
in
makeSetupHook {
name = "udev-check-hook";
substitutions = {
udevadm = if applyHook then lib.getExe' systemdMinimal "udevadm" else "";
};
meta = {
description = "Check validity of udev rules in outputs";
maintainers = with lib.maintainers; [ grimmauld ];
};
} ./hook.sh

View File

@@ -0,0 +1,14 @@
diff --git a/src/device-info.h b/src/device-info.h
index 6cb3683..ddac24c 100644
--- a/src/device-info.h
+++ b/src/device-info.h
@@ -18,7 +18,8 @@
// intltool
#include <glib/gi18n.h>
-
+// stat
+#include <sys/stat.h>
typedef struct device_t {
struct udev_device *udevice;

View File

@@ -0,0 +1,65 @@
{
lib,
stdenv,
fetchFromGitHub,
acl,
glib,
intltool,
pkg-config,
udev,
util-linux,
}:
stdenv.mkDerivation rec {
pname = "udevil";
version = "0.4.4";
src = fetchFromGitHub {
owner = "IgnorantGuru";
repo = "udevil";
rev = version;
sha256 = "0nd44r8rbxifx4x4m24z5aji1c6k1fhw8cmf5s43wd5qys0bcdad";
};
nativeBuildInputs = [
pkg-config
intltool
];
buildInputs = [
glib
udev
];
preConfigure = ''
substituteInPlace src/Makefile.in --replace "-o root -g root" ""
# do not set setuid bit in nix store
substituteInPlace src/Makefile.in --replace 4755 0755
'';
configureFlags = [
"--with-mount-prog=${util-linux}/bin/mount"
"--with-umount-prog=${util-linux}/bin/umount"
"--with-losetup-prog=${util-linux}/bin/losetup"
"--with-setfacl-prog=${acl.bin}/bin/setfacl"
"--sysconfdir=${placeholder "out"}/etc"
];
postInstall = ''
substituteInPlace $out/lib/systemd/system/devmon@.service \
--replace /usr/bin/devmon "$out/bin/devmon"
'';
patches = [
# sys/stat.h header missing on src/device-info.h
./device-info-sys-stat.patch
];
meta = with lib; {
homepage = "https://ignorantguru.github.io/udevil/";
description = "Mount without password";
license = licenses.gpl3Plus;
maintainers = [ ];
platforms = platforms.linux;
};
}

View File

@@ -0,0 +1,53 @@
{
lib,
stdenv,
fetchFromGitHub,
ncurses,
readline,
autoreconfHook,
pkg-config,
}:
stdenv.mkDerivation rec {
pname = "udftools";
version = "2.3";
src = fetchFromGitHub {
owner = "pali";
repo = "udftools";
tag = version;
hash = "sha256-SUdwJpJfbs6LhcyNMPJUhhpp/3htwT/EVep7+4PRgto=";
};
nativeBuildInputs = [
autoreconfHook
pkg-config
];
buildInputs = [
ncurses
readline
];
hardeningDisable = [ "fortify" ];
env.NIX_CFLAGS_COMPILE = "-std=gnu99";
preConfigure = ''
sed -e '1i#include <limits.h>' -i cdrwtool/cdrwtool.c -i pktsetup/pktsetup.c
sed -e 's@[(]char[*][)]spm [+]=@spm = ((char*) spm) + @' -i wrudf/wrudf.c
sed -e '38i#include <string.h>' -i wrudf/wrudf-cdrw.c
sed -e '12i#include <string.h>' -i wrudf/wrudf-cdr.c
sed -e '37i#include <stdlib.h>' -i wrudf/ide-pc.c
sed -e '46i#include <sys/sysmacros.h>' -i mkudffs/main.c
sed -e "s@\$(DESTDIR)/lib/udev/rules.d@$out/lib/udev/rules.d@" -i pktsetup/Makefile.am
'';
meta = {
description = "UDF tools";
homepage = "https://github.com/pali/udftools";
maintainers = with lib.maintainers; [ raskin ];
platforms = lib.platforms.linux;
license = lib.licenses.gpl2Plus;
};
}

View File

@@ -0,0 +1,25 @@
From 4952ceece60ff2e7eabec45411b8824da6673bff Mon Sep 17 00:00:00 2001
From: m <m@linuxistsuper.de>
Date: Sun, 5 Mar 2023 11:25:40 +0100
Subject: [PATCH] update version in lock file
---
Cargo.lock | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Cargo.lock b/Cargo.lock
index d571155..ca28bef 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -1554,7 +1554,7 @@ checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642"
[[package]]
name = "udict"
-version = "0.1.1"
+version = "0.1.2"
dependencies = [
"reqwest",
"scraper",
--
2.38.4

View File

@@ -0,0 +1,41 @@
{
lib,
rustPlatform,
fetchFromGitHub,
pkg-config,
openssl,
}:
rustPlatform.buildRustPackage rec {
pname = "udict";
version = "0.1.2";
src = fetchFromGitHub {
owner = "lsmb";
repo = "udict";
rev = "v${version}";
hash = "sha256-vcyzMw2tWil4MULEkf25S6kXzqMG6JXIx6GibxxspkY=";
};
cargoHash = "sha256-KlWzcJtNBTLCDDH01vI1mn9H7LUqni5o/Q6PsNeI7HE=";
cargoPatches = [
./0001-update-version-in-lock-file.patch
];
nativeBuildInputs = [
pkg-config
];
buildInputs = [
openssl
];
meta = with lib; {
description = "Urban Dictionary CLI - written in Rust";
homepage = "https://github.com/lsmb/udict";
license = licenses.mit;
maintainers = [ ];
mainProgram = "udict";
};
}

View File

@@ -0,0 +1,100 @@
{
stdenv,
lib,
fetchurl,
unzip,
makeWrapper,
jre8,
libXtst,
gdal,
}:
let
pname = "udig";
version = "2.0.0";
srcs = {
x86_64-linux = fetchurl {
url = "http://udig.refractions.net/files/downloads/udig-${version}.linux.gtk.x86_64.zip";
hash = "sha256-ijuSWq1jSsB8K653bjcUdNwVGZscDaTuegBr01oNEg4=";
};
x86_64-darwin = fetchurl {
url = "http://udig.refractions.net/files/downloads/udig-${version}.macosx.cocoa.x86_64.zip";
hash = "sha256-Ihk3InHB3/tEYRqH2ozhokz2GN8Gfig5DJkO/8P1LJs=";
};
};
src =
srcs.${stdenv.hostPlatform.system} or (throw "unsupported system ${stdenv.hostPlatform.system}");
meta = with lib; {
description = "User-friendly Desktop Internet GIS";
homepage = "http://udig.refractions.net/";
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
license = with licenses; [
epl10
bsd3
];
maintainers = with maintainers; [ sikmir ];
platforms = builtins.attrNames srcs;
mainProgram = "udig";
};
linux = stdenv.mkDerivation {
inherit
pname
version
src
meta
;
nativeBuildInputs = [
unzip
makeWrapper
];
installPhase = ''
install -dm755 $out/bin $out/opt/udig
cp -r . $out/opt/udig
makeWrapper $out/opt/udig/udig.sh $out/bin/udig \
--prefix PATH : ${jre8}/bin \
--prefix LD_LIBRARY_PATH : ${
lib.makeLibraryPath [
libXtst
gdal
]
}
'';
postFixup = ''
patchelf \
--set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \
$out/opt/udig/udig_internal
'';
};
darwin = stdenv.mkDerivation {
inherit
pname
version
src
meta
;
nativeBuildInputs = [
unzip
makeWrapper
];
postPatch = ''
substituteInPlace configuration/config.ini \
--replace "\$LOCALAPPDATA\$" "@user.home"
'';
installPhase = ''
mkdir -p $out/Applications/udig
cp -R . $out/Applications/udig
wrapProgram $out/Applications/udig/udig.app/Contents/MacOS/udig_internal \
--prefix DYLD_LIBRARY_PATH : ${lib.makeLibraryPath [ gdal ]}
'';
};
in
if stdenv.hostPlatform.isDarwin then darwin else linux

View File

@@ -0,0 +1,55 @@
{
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
autoreconfHook,
python3,
}:
stdenv.mkDerivation {
pname = "udis86";
version = "unstable-2014-12-25";
src = fetchFromGitHub {
owner = "vmt";
repo = "udis86";
rev = "56ff6c87c11de0ffa725b14339004820556e343d";
hash = "sha256-bmm1rgzZeStQJXEmcT8vnplsnmgN3LJlYs7COmqsDU8=";
};
patches = [
(fetchpatch {
name = "support-python3-for-building";
url = "https://github.com/vmt/udis86/commit/3c05ce60372cb2eba39d6eb87ac05af8a664e1b1.patch";
hash = "sha256-uF4Cwt7UMkyd0RX6cCMQt9xvkkUNQvTDH/Z/6nHtVT8=";
})
];
nativeBuildInputs = [
autoreconfHook
python3
];
configureFlags = [
"--enable-shared"
];
outputs = [
"bin"
"out"
"dev"
"lib"
];
meta = with lib; {
homepage = "https://udis86.sourceforge.net";
license = licenses.bsd2;
maintainers = with maintainers; [ timor ];
mainProgram = "udcli";
description = ''
Easy-to-use, minimalistic x86 disassembler library (libudis86)
'';
platforms = platforms.all;
};
}

View File

@@ -0,0 +1,17 @@
diff --git a/udiskie/locale.py b/udiskie/locale.py
index f12bea9..450e38b 100644
--- a/udiskie/locale.py
+++ b/udiskie/locale.py
@@ -10,10 +10,8 @@ from gettext import translation
testdirs = [
# manual override:
os.environ.get('TEXTDOMAINDIR'),
- # editable installation:
- os.path.join(os.path.dirname(__file__), '../build/locale'),
- # user or virtualenv installation:
- os.path.join(sys.prefix, 'share/locale'),
+ # Nix installation:
+ os.path.join('@out@', 'share/locale'),
]
testfile = 'en_US/LC_MESSAGES/udiskie.mo'
localedir = next(

View File

@@ -0,0 +1,112 @@
{
lib,
asciidoc,
fetchFromGitHub,
gobject-introspection,
gtk3,
installShellFiles,
libappindicator-gtk3,
libnotify,
librsvg,
python3Packages,
udisks2,
wrapGAppsHook3,
testers,
udiskie,
}:
python3Packages.buildPythonApplication rec {
pname = "udiskie";
version = "2.5.8";
pyproject = true;
src = fetchFromGitHub {
owner = "coldfix";
repo = "udiskie";
rev = "v${version}";
hash = "sha256-FFp1+7cCfkMI74rEAez8aJsaplEUa3madoSx+lwplzE=";
};
patches = [
./locale-path.patch
];
postPatch = ''
substituteInPlace udiskie/locale.py --subst-var out
'';
nativeBuildInputs = [
asciidoc # Man page
gobject-introspection
installShellFiles
wrapGAppsHook3
];
build-system = with python3Packages; [
setuptools
];
dontWrapGApps = true;
buildInputs = [
gtk3
libappindicator-gtk3
libnotify
librsvg # SVG icons
udisks2
];
dependencies = with python3Packages; [
docopt
keyutils
pygobject3
pyyaml
];
postBuild = ''
make -C doc
'';
postInstall = ''
installManPage doc/udiskie.8
installShellCompletion \
--bash completions/bash/* \
--zsh completions/zsh/*
'';
preFixup = ''
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
nativeCheckInputs = with python3Packages; [
pytestCheckHook
];
passthru.tests.version = testers.testVersion {
package = udiskie;
};
meta = with lib; {
homepage = "https://github.com/coldfix/udiskie";
changelog = "https://github.com/coldfix/udiskie/blob/${src.rev}/CHANGES.rst";
description = "Removable disk automounter for udisks";
longDescription = ''
udiskie is a udisks2 front-end that allows to manage removeable media such
as CDs or flash drives from userspace.
Its features include:
- automount removable media
- notifications
- tray icon
- command line tools for manual un-/mounting
- LUKS encrypted devices
- unlocking with keyfiles (requires udisks 2.6.4)
- loop devices (mounting iso archives)
- password caching (requires python keyutils 0.3)
'';
license = licenses.mit;
maintainers = with maintainers; [ dotlambda ];
};
}

View File

@@ -0,0 +1,60 @@
{
lib,
stdenv,
fetchurl,
}:
# this expression is mostly based on debian's packaging
# https://tracker.debian.org/media/packages/u/udns/rules-0.6-1
stdenv.mkDerivation rec {
pname = "udns";
version = "0.6";
configurePhase = "./configure --enable-ipv6";
buildPhase = "make staticlib sharedlib rblcheck_s dnsget_s";
src = fetchurl {
url = "http://www.corpit.ru/mjt/udns/${pname}-${version}.tar.gz";
sha256 = "sha256-aWotDVGNqYXZdaZeEdFm8/V829HUI3aguFMH9JYBxug=";
};
# udns uses a very custom build and hardcodes a .so name in a few places.
# Instead of fighting with it to apply the standard dylib script, change
# the right place in the Makefile itself.
postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
substituteInPlace Makefile.in \
--replace --soname, -install_name,$out/lib/
'';
installPhase = ''
runHook preInstall
mkdir -p $out/bin
mkdir -p $out/include
mkdir -p $out/lib
mkdir -p $out/share/man/man1
mkdir -p $out/share/man/man3
cp dnsget_s $out/bin/dnsget
cp rblcheck_s $out/bin/rblcheck
cp udns.h $out/include/
cp libudns.a $out/lib/
cp libudns.so.0 $out/lib/
ln -rs $out/lib/libudns.so.0 $out/lib/libudns.so
cp dnsget.1 rblcheck.1 $out/share/man/man1
cp udns.3 $out/share/man/man3
runHook postInstall
'';
# keep man3
outputDevdoc = "out";
meta = with lib; {
homepage = "http://www.corpit.ru/mjt/udns.html";
description = "Async-capable DNS stub resolver library";
license = licenses.lgpl21Plus;
maintainers = [ maintainers.womfoo ];
platforms = platforms.unix;
};
}

View File

@@ -0,0 +1,71 @@
{
lib,
fetchFromGitHub,
singularity,
python3Packages,
testers,
udocker,
}:
python3Packages.buildPythonApplication rec {
pname = "udocker";
version = "1.3.17";
pyproject = true;
src = fetchFromGitHub {
owner = "indigo-dc";
repo = "udocker";
tag = version;
hash = "sha256-P49fkLvdCm/Eco+nD3SGM04PRQatBzq9CHlayueQetk=";
};
postPatch = ''
substituteInPlace setup.py \
--replace-fail "'pytest-runner'," ""
'';
# crun patchelf proot runc fakechroot
# are download statistically linked during runtime
buildInputs = [
singularity
];
build-system = with python3Packages; [
setuptools
];
dependencies = with python3Packages; [
pycurl
];
nativeCheckInputs = with python3Packages; [
pytestCheckHook
];
disabledTests = [
"test_02__load_structure"
"test_05__get_volume_bindings"
];
disabledTestPaths = [
# Network
"tests/unit/test_curl.py"
"tests/unit/test_dockerioapi.py"
];
pythonImportsCheck = [ "udocker" ];
passthru = {
tests.version = testers.testVersion { package = udocker; };
};
meta = {
description = "Basic user tool to execute simple docker containers in user space without root privileges";
homepage = "https://indigo-dc.gitbooks.io/udocker";
changelog = "https://github.com/indigo-dc/udocker/releases/tag/${version}";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ bzizou ];
platforms = lib.platforms.linux;
mainProgram = "udocker";
};
}

View File

@@ -0,0 +1,55 @@
{
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
cmake,
makeWrapper,
iptables,
}:
stdenv.mkDerivation rec {
pname = "udp2raw";
version = "20230206.0";
src = fetchFromGitHub {
owner = "wangyu-";
repo = "udp2raw";
rev = version;
hash = "sha256-mchSaqw6sOJ7+dydCM8juP7QMOVUrPL4MFA79Rvyjdo=";
};
patches = [
# Add install target to CMakeLists.txt
# https://github.com/wangyu-/udp2raw/pull/469
(fetchpatch {
url = "https://github.com/wangyu-/udp2raw/commit/4559e6d47bb69fda0fbd3fb4b7d04ddb1cf5e2ae.patch";
hash = "sha256-2csZdXmMW89tjXhN5QIK0rnMSXlFjLvwGnmieeKRX90=";
})
];
postPatch = ''
echo 'const char *gitversion = "${version}";' > git_version.h
# Adress sanitization crashes the application, reported upstream at https://github.com/wangyu-/udp2raw/issues/474
substituteInPlace CMakeLists.txt --replace "sanitize=address," "sanitize="
'';
nativeBuildInputs = [
cmake
makeWrapper
];
postInstall = ''
wrapProgram "$out/bin/udp2raw" --prefix PATH : "${lib.makeBinPath [ iptables ]}"
'';
meta = {
homepage = "https://github.com/wangyu-/udp2raw";
description = "Tunnel which turns UDP traffic into encrypted UDP/FakeTCP/ICMP traffic by using a raw socket";
mainProgram = "udp2raw";
license = lib.licenses.mit;
changelog = "https://github.com/wangyu-/udp2raw/releases/tag/${version}";
maintainers = with lib.maintainers; [ chvp ];
platforms = lib.platforms.linux;
};
}

View File

@@ -0,0 +1,31 @@
{
stdenv,
cmake,
libpcap,
fetchFromGitHub,
lib,
}:
stdenv.mkDerivation rec {
pname = "updreplay";
version = "1.1.0";
nativeBuildInputs = [ cmake ];
buildInputs = [ libpcap ];
src = fetchFromGitHub {
owner = "rigtorp";
repo = "udpreplay";
rev = "v${version}";
hash = "sha256-kF9a3pjQbFKf25NKyK7uSq0AAO6JK7QeChLhm9Z3wEA=";
};
meta = with lib; {
description = "Replay UDP packets from a pcap file";
longDescription = ''
udpreplay is a lightweight alternative to tcpreplay for replaying UDP unicast and multicast streams from a pcap file.
'';
homepage = "https://github.com/rigtorp/udpreplay";
license = licenses.mit;
maintainers = [ maintainers.considerate ];
platforms = platforms.linux;
mainProgram = "udpreplay";
};
}

View File

@@ -0,0 +1,56 @@
{
lib,
stdenv,
fetchFromGitHub,
cmake,
versionCheckHook,
nix-update-script,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "udpspeeder";
version = "20230206.0";
src = fetchFromGitHub {
owner = "wangyu-";
repo = "UDPspeeder";
tag = finalAttrs.version;
hash = "sha256-hrwkPSxY1DTEXt9vxDECDEJaoTDzBUS7rVI609uZwdU=";
};
preBuild = ''
echo "const char *gitversion = \"${finalAttrs.version}\";" > git_version.h # From Makefile
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I$PWD"
'';
nativeBuildInputs = [
cmake
];
installPhase = ''
runHook preInstall
install -Dm755 ./speederv2 $out/bin/speederv2
runHook postInstall
'';
nativeCheckInputs = [
versionCheckHook
];
doInstallCheck = true;
passthru = {
updateScript = nix-update-script { };
};
meta = {
homepage = "https://github.com/wangyu-/UDPspeeder";
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [ bot-wxt1221 ];
license = lib.licenses.mit;
changelog = "https://github.com/wangyu-/UDPspeeder/releases/tag/${finalAttrs.version}";
description = "Tunnel which Improves your Network Quality on a High-latency Lossy Link by using Forward Error Correction, possible for All Traffics(TCP/UDP/ICMP)";
mainProgram = "speederv2";
};
})

View File

@@ -0,0 +1,32 @@
{
lib,
rustPlatform,
fetchFromGitHub,
}:
rustPlatform.buildRustPackage rec {
pname = "udpt";
version = "3.1.2";
src = fetchFromGitHub {
owner = "naim94a";
repo = "udpt";
rev = "v${version}";
sha256 = "sha256-dWZRl5OiuEmCx7+Id0/feCohH5k/HA47nbPUEo8BBwQ=";
};
cargoHash = "sha256-AtqtANpxsmvdEoISyGZKDVR7/IxMBPwGGNelgf7ZlH4=";
postInstall = ''
install -D udpt.toml $out/share/udpt/udpt.toml
'';
meta = {
description = "Lightweight UDP torrent tracker";
homepage = "https://naim94a.github.io/udpt";
license = lib.licenses.gpl3;
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [ makefu ];
mainProgram = "udpt-rs";
};
}

View File

@@ -0,0 +1,30 @@
{
lib,
stdenv,
fetchurl,
}:
stdenv.mkDerivation rec {
pname = "udptunnel";
version = "19";
src = fetchurl {
url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/udptunnel/udptunnel-r${version}.tar.gz";
sha256 = "1hkrn153rdyrp9g15z4d5dq44cqlnby2bfplp6z0g3862lnv7m3l";
};
installPhase = ''
mkdir -p $out/bin $out/share/udptunnel
cp udptunnel $out/bin
cp README COPYING* $out/share/udptunnel
'';
meta = {
homepage = "https://code.google.com/archive/p/udptunnel/";
description = "Tunnels TCP over UDP packets";
license = lib.licenses.gpl3Plus;
maintainers = [ ];
platforms = with lib.platforms; linux;
mainProgram = "udptunnel";
};
}

View File

@@ -0,0 +1,33 @@
{
lib,
buildGoModule,
fetchFromGitHub,
}:
buildGoModule rec {
pname = "udpx";
version = "1.0.7";
src = fetchFromGitHub {
owner = "nullt3r";
repo = "udpx";
tag = "v${version}";
hash = "sha256-IRnGi3TmCyxmJKAd8ZVRoSHDao+3Xt4F5QfHvNahvGo=";
};
vendorHash = null;
ldflags = [
"-s"
"-w"
];
meta = {
description = "Single-packet UDP scanner";
mainProgram = "udpx";
homepage = "https://github.com/nullt3r/udpx";
changelog = "https://github.com/nullt3r/udpx/releases/tag/v${version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ fab ];
};
}

View File

@@ -0,0 +1,51 @@
{
lib,
stdenv,
fetchFromGitHub,
autoreconfHook,
bison,
expat,
file,
flex,
texinfo,
}:
stdenv.mkDerivation {
pname = "udunits";
version = "unstable-2021-03-17";
src = fetchFromGitHub {
owner = "Unidata";
repo = "UDUNITS-2";
rev = "c83da987387db1174cd2266b73dd5dd556f4476b";
hash = "sha256-+HW21+r65OroCxMK2/B5fe7zHs4hD4xyoJK2bhdJGyQ=";
};
nativeBuildInputs = [
autoreconfHook
texinfo
bison
flex
file
];
buildInputs = [
expat
];
meta = with lib; {
homepage = "https://www.unidata.ucar.edu/software/udunits/";
description = "C-based package for the programatic handling of units of physical quantities";
longDescription = ''
The UDUNITS package supports units of physical quantities. Its C library
provides for arithmetic manipulation of units and for conversion of
numeric values between compatible units. The package contains an extensive
unit database, which is in XML format and user-extendable. The package
also contains a command-line utility for investigating units and
converting values.
'';
license = licenses.asl20;
maintainers = with maintainers; [ pSub ];
platforms = platforms.all;
mainProgram = "udunits2";
};
}