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,37 @@
{
lib,
python3Packages,
fetchFromGitHub,
}:
python3Packages.buildPythonApplication rec {
pname = "pferd";
version = "3.8.3";
format = "pyproject";
src = fetchFromGitHub {
owner = "Garmelon";
repo = "PFERD";
tag = "v${version}";
sha256 = "sha256-ea/9+9zRlRfblPYfI40IPjHWPneXaAqtRp0Cb/FT+lg=";
};
nativeBuildInputs = with python3Packages; [
setuptools
];
propagatedBuildInputs = with python3Packages; [
aiohttp
beautifulsoup4
rich
keyring
certifi
];
meta = with lib; {
homepage = "https://github.com/Garmelon/PFERD";
description = "Tool for downloading course-related files from ILIAS";
license = licenses.mit;
maintainers = with maintainers; [ _0xbe7a ];
mainProgram = "pferd";
};
}

View File

@@ -0,0 +1,28 @@
{
lib,
rustPlatform,
fetchFromGitHub,
}:
rustPlatform.buildRustPackage rec {
pname = "pfetch-rs";
version = "2.11.1";
src = fetchFromGitHub {
owner = "Gobidev";
repo = "pfetch-rs";
rev = "v${version}";
hash = "sha256-Kgoo8piv4pNqzw9zQSEj7POSK6l+0KMvaNbvMp+bpF8=";
};
cargoHash = "sha256-36MjBzSzEOVaSnd6dTqYnV+Pi+5EDoUskkYsvYMGrgg=";
meta = {
description = "Rewrite of the pfetch system information tool in Rust";
homepage = "https://github.com/Gobidev/pfetch-rs";
changelog = "https://github.com/Gobidev/pfetch-rs/releases/tag/v${version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ gobidev ];
mainProgram = "pfetch";
};
}

View File

@@ -0,0 +1,48 @@
{
lib,
stdenvNoCC,
fetchFromGitHub,
gitUpdater,
versionCheckHook,
}:
stdenvNoCC.mkDerivation rec {
pname = "pfetch";
version = "1.9.3";
src = fetchFromGitHub {
owner = "Un1q32";
repo = "pfetch";
tag = version;
hash = "sha256-2rBuqqS4jzefueVploU5bs2ZytDvYv5jeSK5jOyz86Y=";
};
dontBuild = true;
installPhase = ''
install -Dm755 -t $out/bin pfetch
'';
nativeInstallCheckInputs = [
versionCheckHook
];
versionCheckProgramArg = "--version";
doInstallCheck = true;
passthru = {
updateScript = gitUpdater { };
};
meta = {
description = "Pretty system information tool written in POSIX sh";
homepage = "https://github.com/Un1q32/pfetch";
changelog = "https://github.com/Un1q32/pfetch/releases/tag/${version}";
license = lib.licenses.mit;
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [
equirosa
phanirithvij
];
mainProgram = "pfetch";
};
}

View File

@@ -0,0 +1,42 @@
{
lib,
stdenv,
rustPlatform,
fetchFromGitHub,
pkg-config,
libpff,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "pff-tools";
version = "0-unstable-2025-07-22";
src = fetchFromGitHub {
owner = "avranju";
repo = "pff-tools";
rev = "d8776cd45e62c82adbbcc04f2f636b569de057ca";
hash = "sha256-MDMrKaq/iz5WdLhh3rv2ODFdaMoaeFtacT8xmRf3Qec=";
};
cargoHash = "sha256-SL+FTuVkgq0ll8SH7FgVapvemarc7ci0KtoGG16zxCM=";
nativeBuildInputs = [
pkg-config
rustPlatform.bindgenHook
];
buildInputs = [
libpff
];
# Tests require a sample PST/OST file.
doCheck = false;
meta = {
description = "Command-line tools to process PFF files";
homepage = "https://github.com/avranju/pff-tools";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ d3vil0p3r ];
mainProgram = "pff-cli";
};
})

View File

@@ -0,0 +1,28 @@
{
lib,
stdenv,
fetchFromGitHub,
cmake,
}:
stdenv.mkDerivation {
pname = "pffft";
version = "0-unstable-2022-04-10";
src = fetchFromGitHub {
owner = "marton78";
repo = "pffft";
rev = "08f5ed2618ac06d7dcc83d209d7253dc215274d5";
sha256 = "sha256-9LfLQ17IRsbEwGQJZzhW2Av4en1KuJVicLrS2AyjUZY=";
};
nativeBuildInputs = [ cmake ];
meta = with lib; {
description = "Pretty Fast FFT (PFFFT) library";
homepage = "https://github.com/marton78/pffft";
license = licenses.bsd3;
maintainers = with maintainers; [ sikmir ];
platforms = platforms.unix;
};
}

View File

@@ -0,0 +1,64 @@
{
autoreconfHook,
fetchFromGitHub,
fftwMpi,
lib,
llvmPackages,
mpi,
precision ? "double",
stdenv,
}:
assert lib.elem precision [
"single"
"double"
"long-double"
];
let
fftw' = fftwMpi.override { inherit precision; };
in
stdenv.mkDerivation (finalAttrs: {
pname = "pfft-${precision}";
version = "1.0.8-alpha";
src = fetchFromGitHub {
owner = "mpip";
repo = "pfft";
rev = "v${finalAttrs.version}";
hash = "sha256-T5nPlkPKjYYRCuT1tSzXNJTPs/o6zwJMv9lPCWOwabw=";
};
outputs = [
"out"
"dev"
];
nativeBuildInputs = [ autoreconfHook ];
preConfigure = ''
export FCFLAGS="-I${lib.getDev fftw'}/include"
'';
configureFlags = [
"--enable-portable-binary"
]
++ lib.optional (precision != "double") "--enable-${precision}";
buildInputs = lib.optional stdenv.cc.isClang llvmPackages.openmp;
propagatedBuildInputs = [
fftw'
mpi
];
doCheck = true;
meta = {
description = "Parallel fast Fourier transforms";
homepage = "https://www-user.tu-chemnitz.de/~potts/workgroup/pippig/software.php.en#pfft";
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ hmenke ];
platforms = lib.platforms.linux;
};
})

View File

@@ -0,0 +1,54 @@
From bf269dda3c81bb9eaa244b3015d426de38c85ccf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Carles=20Pag=C3=A8s?= <page@ruiec.cat>
Date: Fri, 3 Mar 2017 09:59:09 +0100
Subject: [PATCH] Fix build with unbound 1.6.1
From their changelog: Fix to rename ub_callback_t to ub_callback_type, because POSIX reserves _t typedefs
---
postlicyd/dns.c | 2 +-
postlicyd/dns.h | 2 +-
postlicyd/spf-proto.c | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/postlicyd/dns.c b/postlicyd/dns.c
index d8409c2..97f1c4d 100644
--- a/postlicyd/dns.c
+++ b/postlicyd/dns.c
@@ -123,7 +123,7 @@ static int dns_handler(client_t *event, void *config)
}
bool dns_resolve(const char *hostname, dns_rrtype_t type,
- ub_callback_t callback, void *data)
+ ub_callback_type callback, void *data)
{
if (_G.ctx == NULL) {
_G.ctx = ub_ctx_create();
diff --git a/postlicyd/dns.h b/postlicyd/dns.h
index d84de3b..905b924 100644
--- a/postlicyd/dns.h
+++ b/postlicyd/dns.h
@@ -89,7 +89,7 @@ typedef void (*dns_result_callback_f)(dns_result_t *result, void *data);
*/
__attribute__((nonnull(1,3,4)))
bool dns_resolve(const char *hostname, dns_rrtype_t type,
- ub_callback_t callback, void *data);
+ ub_callback_type callback, void *data);
/** Fetch the DNS record of the given type.
*/
diff --git a/postlicyd/spf-proto.c b/postlicyd/spf-proto.c
index 31cb0a5..79a2d83 100644
--- a/postlicyd/spf-proto.c
+++ b/postlicyd/spf-proto.c
@@ -279,7 +279,7 @@ static bool spf_validate_domain(const char* restrict domain)
}
static bool spf_query(spf_t *spf, const char* query, dns_rrtype_t rtype,
- ub_callback_t cb)
+ ub_callback_type cb)
{
buffer_reset(&_G.query_buffer);
buffer_addstr(&_G.query_buffer, query);
--
2.12.0

View File

@@ -0,0 +1,84 @@
{
stdenv,
lib,
fetchFromGitHub,
git,
gperf,
pcre,
unbound,
libev,
tokyocabinet,
pkg-config,
bash,
libsrs2,
}:
let
version = "0.9";
pfixtoolsSrc = fetchFromGitHub {
owner = "Fruneau";
repo = "pfixtools";
rev = "pfixtools-${version}";
sha256 = "1vmbrw686f41n6xfjphfshn96vl07ynvnsyjdw9yfn9bfnldcjcq";
};
srcRoot = pfixtoolsSrc.name;
libCommonSrc = fetchFromGitHub {
owner = "Fruneau";
repo = "libcommon";
rev = "b07e6bdea3d24748e0d39783d7d817096d10cc67";
sha256 = "14fxldp29j4vmfmhfgwwi37pj8cz0flm1aykkxlbgakz92d4pm35";
};
in
stdenv.mkDerivation {
pname = "pfixtools";
inherit version;
src = pfixtoolsSrc;
patches = [ ./0001-Fix-build-with-unbound-1.6.1.patch ];
nativeBuildInputs = [ pkg-config ];
buildInputs = [
git
gperf
pcre
unbound
libev
tokyocabinet
bash
libsrs2
];
postUnpack = ''
cp -Rp ${libCommonSrc}/* ${srcRoot}/common;
chmod -R +w ${srcRoot}/common;
'';
postPatch = ''
substituteInPlace postlicyd/policy_tokens.sh \
--replace /bin/bash ${bash}/bin/bash;
substituteInPlace postlicyd/*_tokens.sh \
--replace "unsigned int" "size_t"
'';
env.NIX_CFLAGS_COMPILE = "-Wno-error=unused-result -Wno-error=nonnull-compare -Wno-error=format-truncation";
makeFlags = [
"DESTDIR=$(out)"
"prefix="
];
meta = {
description = "Collection of postfix-related tools";
license = with lib.licenses; [ bsd3 ];
homepage = "https://github.com/Fruneau/pfixtools";
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [ jerith666 ];
};
}

View File

@@ -0,0 +1,61 @@
{
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
python3,
wafHook,
waf,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "pflask";
version = "unstable-2018-01-23";
src = fetchFromGitHub {
owner = "ghedo";
repo = "pflask";
rev = "9ac31ffe2ed29453218aac89ae992abbd6e7cc69";
hash = "sha256-bAKPUj/EipZ98kHbZiFZZI3hLVMoQpCrYKMmznpSDhg=";
};
patches = [
# Pull patch pending upstream inclusion for -fno-common toolchain support:
# https://github.com/ghedo/pflask/pull/30
(fetchpatch {
name = "fno-common.patch";
url = "https://github.com/ghedo/pflask/commit/73ba32ec48e1e0e4a56b1bceed4635711526e079.patch";
hash = "sha256-KVuBS7LbYJQv6NXljpSiGGja7ar7W6A6SKzkEjB1B6U=";
})
];
waf-version = "2.0.27";
nativeBuildInputs = [
python3
(wafHook.override {
waf = waf.overrideAttrs (old: {
version = finalAttrs.waf-version;
src = fetchFromGitHub {
inherit (old.src) owner repo;
rev = "waf-${finalAttrs.waf-version}";
hash = "sha256-GeEoD5CHubwR4ndGk7J7czEf0hWtPQr88TqJDPqeK0s=";
};
});
})
];
postInstall = ''
mkdir -p $out/bin
cp build/pflask $out/bin
'';
meta = {
description = "Lightweight process containers for Linux";
mainProgram = "pflask";
homepage = "https://ghedo.github.io/pflask/";
license = lib.licenses.bsd2;
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [ bot-wxt1221 ];
};
})

View File

@@ -0,0 +1,42 @@
{
lib,
fetchurl,
perlPackages,
}:
perlPackages.buildPerlPackage rec {
pname = "pflogsumm";
version = "1.1.3";
src = fetchurl {
url = "https://jimsun.linxnet.com/downloads/${pname}-${version}.tar.gz";
sha256 = "0hkim9s5f1yg5sfs5048jydhy3sbxafls496wcjk0cggxb113py4";
};
outputs = [
"out"
"man"
];
buildInputs = [ perlPackages.DateCalc ];
preConfigure = ''
touch Makefile.PL
'';
doCheck = false;
installPhase = ''
mkdir -p "$out/bin"
mv "pflogsumm.pl" "$out/bin/pflogsumm"
mkdir -p "$out/share/man/man1"
mv "pflogsumm.1" "$out/share/man/man1"
'';
meta = {
homepage = "http://jimsun.linxnet.com/postfix_contrib.html";
maintainers = with lib.maintainers; [ schneefux ];
description = "Postfix activity overview";
mainProgram = "pflogsumm";
license = lib.licenses.gpl2Plus;
};
}

View File

@@ -0,0 +1,45 @@
diff --git a/src/pflotran/makefile b/src/pflotran/makefile
index 17587c91d..7caf73e8c 100644
--- a/src/pflotran/makefile
+++ b/src/pflotran/makefile
@@ -51,7 +51,7 @@ PETSC_MAKE_STOP_ON_ERROR=
# so that PFLOTRAN will be built with the same options as
# the petsc configured in $PETSC_DIR/$PETSC_ARCH
-MYFLAGS = -I.
+MYFLAGS = -I. -L@HDF5_FORTRAN_LIBS@ -I@HDF5_FORTRAN_INCLUDE@
###############################################################################
# Preprocessor flags for special PFLOTRAN features/hacks
@@ -183,7 +183,7 @@ ifdef ug_mpi_scatter_ghost
endif
ifdef have_hdf5
-LIBS += -L${HDF5_LIB} -lhdf5_fortran -lhdf5 -lz
+LIBS += -L${HDF5_LIB} -lhdf5 -lhdf5_fortran -lhdf5_hl_fortran -lhdf5_f90cstub -lz
endif
# Set this accordingly on your platform
@@ -273,7 +273,7 @@ pflotran_rxn_obj = ${pflotran_src}pflotran_rxn.o
# PFLOTRAN executable
pflotran : $(pflotran_obj)
- ${FLINKER} -o pflotran $(pflotran_obj) ${PETSC_LIB} ${LIBS}
+ ${FLINKER} -o pflotran $(pflotran_obj) ${PETSC_LIB} ${LIBS} -lhdf5 -lhdf5_fortran -lhdf5_hl_fortran -lhdf5_f90cstub
# PFLOTRAN as a library
libpflotran.a : $(pflotran_obj)
@@ -286,11 +286,11 @@ libpflotranchem.a : $(chem_obj) $(shared_mode_aux_obj) $(util_obj)
# object files lists below.... This is a workaround.
pflotran_rxn : libpflotranchem.a $(pflotran_rxn_obj)
${FLINKER} -o $@ $(pflotran_rxn_obj) $(chem_obj) $(shared_mode_aux_obj) \
- $(util_obj) ${PETSC_LIB} ${LIBS}
+ $(util_obj) ${PETSC_LIB} ${LIBS} -lhdf5 -lhdf5_fortran -lhdf5_hl_fortran -lhdf5_f90cstub
# PFLOTRAN derivative test
pflotran_derivative : $(pflotran_base_obj) pflotran_derivative.o
- ${FLINKER} -o pflotran_derivative $(pflotran_base_obj) pflotran_derivative.o ${PETSC_LIB} ${LIBS}
+ ${FLINKER} -o pflotran_derivative $(pflotran_base_obj) pflotran_derivative.o ${PETSC_LIB} ${LIBS} -lhdf5 -lhdf5_fortran -lhdf5_hl_fortran -lhdf5_f90cstub
$(SRC_DIR)/pflotran_provenance.F90 : FORCE
ifeq ($(UPDATE_PROVENANCE),1)

View File

@@ -0,0 +1,84 @@
{
stdenv,
lib,
fetchFromBitbucket,
fetchzip,
gfortran,
mpi,
petsc,
blas,
lapack,
parmetis,
hdf5-fortran-mpi,
mpiCheckPhaseHook,
python312Packages,
}:
let
/*
Upstream petsc has lots of fortran api change since 3.22.0
We will keep using older version until pflotran supports the latest petsc.
Pflotran also requires Parmetis support in Petsc to have actual parmetis support.
*/
petsc' =
(petsc.overrideAttrs rec {
version = "3.21.4";
src = fetchzip {
url = "https://web.cels.anl.gov/projects/petsc/download/release-snapshots/petsc-${version}.tar.gz";
hash = "sha256-l7v+ASBL9FLbBmBGTRWDwBihjwLe3uLz+GwXtn8u7e0=";
};
}).override
{
withMetis = true;
withParmetis = true;
python3Packages = python312Packages;
};
in
stdenv.mkDerivation (finalAttrs: {
pname = "PFLOTRAN";
version = "6.0.1";
src = fetchFromBitbucket {
owner = "pflotran";
repo = "pflotran";
rev = "v${finalAttrs.version}";
hash = "sha256-AZXzay6GWbnxONB8Slg8gV0KN1CxGCXbJ45ZeWL1034=";
};
patches = [ ./make.patch ];
nativeBuildInputs = [ gfortran ];
buildInputs = [
petsc'
blas
lapack
hdf5-fortran-mpi
parmetis
];
propagatedBuildInputs = [ mpi ];
propagatedUserEnvPkgs = [ mpi ];
passthru = { inherit mpi; };
enableParallelBuilding = true;
/*
Pflotran does not use a "real" autotools configure script, but a simple bash
script, that is merely named configure. Consequently, many common mechanism
don't work. Thus, we need to help make to figure out some include and library
paths.
*/
preConfigure = ''
substituteInPlace src/pflotran/makefile \
--subst-var-by "HDF5_FORTRAN_LIBS" "${lib.getLib hdf5-fortran-mpi}/lib" \
--subst-var-by "HDF5_FORTRAN_INCLUDE" "${lib.getDev hdf5-fortran-mpi}/include"
'';
meta = with lib; {
description = "Parallel, multi-physics simulation code for subsurface flow and transport";
homepage = "https://pflotran.org/";
license = licenses.lgpl3Only;
maintainers = [ maintainers.sheepforce ];
};
})

View File

@@ -0,0 +1,53 @@
{
lib,
stdenv,
fetchFromGitHub,
buildPackages,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "pforth";
version = "2.0.1";
src = fetchFromGitHub {
owner = "philburk";
repo = "pforth";
rev = "v${finalAttrs.version}";
hash = "sha256-vEjFeHSJl+yAtatYJEnu+r9hmOr/kZOgIbSUXR/c8WU=";
};
# We build the dictionary in a cross-compile compatible way.
# For that, we perform steps, that the Makefile would otherwise do.
buildPhase = ''
runHook preBuild
make -C platforms/unix pfdicapp
pushd fth/
${stdenv.hostPlatform.emulator buildPackages} ../platforms/unix/pforth -i system.fth
${stdenv.hostPlatform.emulator buildPackages} ../platforms/unix/pforth -d pforth.dic <<< "include savedicd.fth sdad bye"
mv pforth.dic pfdicdat.h ../platforms/unix/
popd
make -C platforms/unix pforthapp
runHook postBuild
'';
installPhase = ''
runHook preInstall
install -Dm755 platforms/unix/pforth_standalone $out/bin/pforth
mkdir -p $out/share/pforth
cp -r fth/* $out/share/pforth/
runHook postInstall
'';
meta = {
homepage = "https://www.softsynth.com/pforth/";
description = "Portable Portable ANS-like Forth written in ANSI 'C'";
mainProgram = "pforth";
changelog = "https://github.com/philburk/pforth/blob/v${finalAttrs.version}/RELEASES.md";
license = lib.licenses.bsd0;
maintainers = with lib.maintainers; [
yrashk
];
platforms = lib.platforms.unix;
};
})
# TODO: option for install the non-standalone executable

View File

@@ -0,0 +1,40 @@
{
lib,
stdenv,
fetchFromGitHub,
meson,
ninja,
}:
stdenv.mkDerivation rec {
version = "1.1.1";
pname = "pfsshell";
src = fetchFromGitHub {
owner = "uyjulian";
repo = "pfsshell";
rev = "v${version}";
sha256 = "0cr91al3knsbfim75rzl7rxdsglcc144x0nizn7q4jx5cad3zbn8";
};
nativeBuildInputs = [
meson
ninja
];
# Build errors since 1.1.1 when format hardening is enabled:
# cc1: error: '-Wformat-security' ignored without '-Wformat' [-Werror=format-security]
hardeningDisable = [ "format" ];
meta = with lib; {
inherit (src.meta) homepage;
description = "PFS (PlayStation File System) shell for POSIX-based systems";
platforms = platforms.unix;
license = with licenses; [
gpl2Only # the pfsshell software itself
afl20 # APA, PFS, and iomanX libraries which are compiled together with this package
];
maintainers = with maintainers; [ makefu ];
mainProgram = "pfsshell";
};
}