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,
buildGoModule,
fetchFromGitHub,
}:
buildGoModule rec {
pname = "aeacus";
version = "2.1.1";
src = fetchFromGitHub {
owner = "elysium-suite";
repo = "aeacus";
tag = "v${version}";
hash = "sha256-LMsfogcz3CoShQDqyshMshb+iz2r0k5I7NDLXevMakI=";
};
vendorHash = "sha256-WOXOM08UYECdGx+e54n4BgLP3cr+st3qKi8iQXebPvk=";
ldflags = [
"-s"
"-w"
];
# Tests require network access
doCheck = false;
meta = {
description = "Vulnerability remediation scoring system";
homepage = "https://github.com/elysium-suite/aeacus";
changelog = "https://github.com/elysium-suite/aeacus/releases/tag/v${version}";
license = lib.licenses.gpl2Only;
maintainers = with lib.maintainers; [ fab ];
mainProgram = "aeacus";
platforms = lib.platforms.linux;
};
}

View File

@@ -0,0 +1,46 @@
{
lib,
stdenv,
fetchFromGitHub,
autoreconfHook,
fuse,
git,
}:
stdenv.mkDerivation {
pname = "aefs";
version = "unstable-2015-05-06";
src = fetchFromGitHub {
owner = "edolstra";
repo = "aefs";
rev = "e7a9bf8cfa9166668fe1514cc1afd31fc4e10e9a";
hash = "sha256-a3YQWxJ7+bYhf1W1kdIykV8U1R4dcDZJ7K3NvNxbF0s=";
};
# autoconf's AC_CHECK_HEADERS and AC_CHECK_LIBS fail to detect libfuse on
# Darwin if FUSE_USE_VERSION isn't set at configure time.
#
# NOTE: Make sure the value of FUSE_USE_VERSION specified here matches the
# actual version used in the source code:
#
# $ tar xf "$(nix-build -A aefs.src)"
# $ grep -R FUSE_USE_VERSION
configureFlags = lib.optional stdenv.hostPlatform.isDarwin "CPPFLAGS=-DFUSE_USE_VERSION=26";
nativeBuildInputs = [
autoreconfHook
git
];
buildInputs = [ fuse ];
meta = {
homepage = "https://github.com/edolstra/aefs";
description = "Cryptographic filesystem implemented in userspace using FUSE";
maintainers = [ ];
license = lib.licenses.gpl2Plus;
platforms = lib.platforms.unix;
broken = stdenv.hostPlatform.isDarwin;
};
}

View File

@@ -0,0 +1,151 @@
{
lib,
alsa-lib,
boost,
meson,
config,
expat,
fetchFromGitHub,
ffmpeg,
ffms,
fftw,
fontconfig,
freetype,
fribidi,
harfbuzz,
hunspell,
icu,
intltool,
libGL,
libass,
libpulseaudio,
libuchardet,
luajit,
ninja,
openal,
pkg-config,
portaudio,
python3,
stdenv,
wrapGAppsHook3,
wxGTK32,
zlib,
# Boolean guard flags
alsaSupport ? stdenv.hostPlatform.isLinux,
openalSupport ? true,
portaudioSupport ? true,
pulseaudioSupport ? config.pulseaudio or stdenv.hostPlatform.isLinux,
spellcheckSupport ? true,
useBundledLuaJIT ? false,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "aegisub";
version = "3.4.2";
src = fetchFromGitHub {
owner = "TypesettingTools";
repo = "aegisub";
tag = "v${finalAttrs.version}";
hash = "sha256-ho+JG570FWbiYZ86CbCKa52j6UNyPIUh8fxpM3vVU/M=";
};
nativeBuildInputs = [
meson
intltool
ninja
pkg-config
python3
wxGTK32
wrapGAppsHook3
];
buildInputs = [
boost
expat
ffmpeg
ffms
fftw
fontconfig
freetype
fribidi
harfbuzz
icu
libGL
libass
libuchardet
wxGTK32
zlib
]
++ lib.optionals alsaSupport [ alsa-lib ]
++ lib.optionals (openalSupport && !stdenv.hostPlatform.isDarwin) [ openal ]
++ lib.optionals portaudioSupport [ portaudio ]
++ lib.optionals pulseaudioSupport [ libpulseaudio ]
++ lib.optionals spellcheckSupport [ hunspell ]
++ lib.optionals (!useBundledLuaJIT) [ luajit ];
mesonFlags = [
(lib.mesonEnable "alsa" alsaSupport)
(lib.mesonEnable "openal" openalSupport)
(lib.mesonEnable "libpulse" pulseaudioSupport)
(lib.mesonEnable "portaudio" portaudioSupport)
(lib.mesonEnable "avisynth" false)
(lib.mesonEnable "hunspell" spellcheckSupport)
(lib.mesonBool "build_osx_bundle" stdenv.hostPlatform.isDarwin)
(lib.mesonBool "enable_update_checker" false)
(lib.mesonBool "system_luajit" (!useBundledLuaJIT))
];
hardeningDisable = [
"bindnow"
"relro"
];
strictDeps = true;
postPatch = ''
patchShebangs tools/respack.py
# TODO: Tests require wrapped GoogleTest; upstream support for
# system version?
substituteInPlace meson.build \
--replace-fail "subdir('tests')" "# subdir('tests')"
'';
# Inject the version, per the AUR package:
# <https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=aegisub-arch1t3cht&id=bbbea73953858fc7bf2775a0fb92cec49afb586c>
preBuild = ''
cat > git_version.h <<EOF
#define BUILD_GIT_VERSION_NUMBER 0
#define BUILD_GIT_VERSION_STRING "${finalAttrs.version}"
EOF
'';
postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
mkdir -p $out/{Applications,bin}
mv Aegisub.app $out/Applications
makeWrapper $out/Applications/Aegisub.app/Contents/MacOS/aegisub $out/bin/aegisub
'';
meta = {
homepage = "https://github.com/TypesettingTools/Aegisub";
description = "Advanced subtitle editor";
longDescription = ''
Aegisub is a free, cross-platform open source tool for creating and
modifying subtitles. Aegisub makes it quick and easy to time subtitles to
audio, and features many powerful tools for styling them, including a
built-in real-time video preview.
'';
# The Aegisub sources are itself BSD/ISC, but they are linked against GPL'd
# software - so the resulting program will be GPL
license = with lib.licenses; [
bsd3
];
mainProgram = "aegisub";
maintainers = with lib.maintainers; [ wegank ];
platforms = lib.platforms.unix;
};
})

View File

@@ -0,0 +1,98 @@
From 455341880f52b4df3b30490db1c17eb65110c00c Mon Sep 17 00:00:00 2001
From: Alyssa Ross <hi@alyssa.is>
Date: Wed, 29 May 2024 10:29:02 +0200
Subject: [PATCH] Stop using transitional LFS64 APIs
The *64 APIs were intended for transitional use, and have been removed
in musl 1.2.4. Nowadays, the best practice is to set
_FILE_OFFSET_BITS=64 across the board, making all the unsuffixed APIs
will be 64-bit. This fixes building with recent versions of musl, and
avoids the need to remember to use the *64 variants every time to
properly handle large files on 32-bit platforms.
Test: build with musl 1.2.4.
Change-Id: I7fa7a3ae4aa19a765740f5b2af916fd6f0ed0b32
---
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 4de86a4..10c402a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -69,7 +69,7 @@
add_subdirectory(build-config/${AEMU_COMMON_BUILD_CONFIG})
endif()
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-extern-c-compat -Wno-return-type-c-linkage")
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-extern-c-compat -Wno-return-type-c-linkage -D_FILE_OFFSET_BITS=64")
add_subdirectory(base)
add_subdirectory(snapshot)
diff --git a/snapshot/TextureLoader.cpp b/snapshot/TextureLoader.cpp
index 31e02e8..5c21134 100644
--- a/snapshot/TextureLoader.cpp
+++ b/snapshot/TextureLoader.cpp
@@ -46,7 +46,7 @@
void TextureLoader::loadTexture(uint32_t texId, const loader_t& loader) {
android::base::AutoLock scopedLock(mLock);
assert(mIndex.count(texId));
- HANDLE_EINTR(fseeko64(mStream.get(), mIndex[texId], SEEK_SET));
+ HANDLE_EINTR(fseeko(mStream.get(), mIndex[texId], SEEK_SET));
switch (mVersion) {
case 1:
loader(&mStream);
@@ -71,7 +71,7 @@
mDiskSize = size;
}
auto indexPos = mStream.getBe64();
- HANDLE_EINTR(fseeko64(mStream.get(), static_cast<int64_t>(indexPos), SEEK_SET));
+ HANDLE_EINTR(fseeko(mStream.get(), static_cast<int64_t>(indexPos), SEEK_SET));
mVersion = mStream.getBe32();
if (mVersion < 1 || mVersion > 2) {
return false;
diff --git a/snapshot/TextureSaver.cpp b/snapshot/TextureSaver.cpp
index 537626b..c8854e9 100644
--- a/snapshot/TextureSaver.cpp
+++ b/snapshot/TextureSaver.cpp
@@ -50,7 +50,7 @@
[texId](FileIndex::Texture& tex) {
return tex.texId == texId;
}));
- mIndex.textures.push_back({texId, ftello64(mStream.get())});
+ mIndex.textures.push_back({texId, ftello(mStream.get())});
CompressingStream stream(mStream);
saver(&stream, &mBuffer);
@@ -60,7 +60,7 @@
if (mFinished) {
return;
}
- mIndex.startPosInFile = ftello64(mStream.get());
+ mIndex.startPosInFile = ftello(mStream.get());
writeIndex();
mEndTime = base::getHighResTimeUs();
#if SNAPSHOT_PROFILE > 1
@@ -74,7 +74,7 @@
void TextureSaver::writeIndex() {
#if SNAPSHOT_PROFILE > 1
- auto start = ftello64(mStream.get());
+ auto start = ftello(mStream.get());
#endif
mStream.putBe32(static_cast<uint32_t>(mIndex.version));
@@ -83,13 +83,13 @@
mStream.putBe32(b.texId);
mStream.putBe64(static_cast<uint64_t>(b.filePos));
}
- auto end = ftello64(mStream.get());
+ auto end = ftello(mStream.get());
mDiskSize = uint64_t(end);
#if SNAPSHOT_PROFILE > 1
printf("texture: index size: %d\n", int(end - start));
#endif
- fseeko64(mStream.get(), 0, SEEK_SET);
+ fseeko(mStream.get(), 0, SEEK_SET);
mStream.putBe64(static_cast<uint64_t>(mIndex.startPosInFile));
}

View File

@@ -0,0 +1,51 @@
{
lib,
stdenv,
fetchFromGitiles,
cmake,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "aemu";
version = "0.1.2";
src = fetchFromGitiles {
url = "https://android.googlesource.com/platform/hardware/google/aemu";
rev = "v${finalAttrs.version}-aemu-release";
hash = "sha256-8UMm2dXdvmX6rUn4wQWuqI8bamwgf0x/5BQT+7atzjY=";
};
patches = [
# stop using transitional LFS64 APIs, which are removed in musl 1.2.4
# https://android-review.googlesource.com/c/platform/hardware/google/aemu/+/3105640/1
./LFS64.patch
];
nativeBuildInputs = [ cmake ];
cmakeFlags = [
"-DAEMU_COMMON_GEN_PKGCONFIG=ON"
"-DAEMU_COMMON_BUILD_CONFIG=gfxstream"
# "-DENABLE_VKCEREAL_TESTS=OFF"
];
meta = with lib; {
homepage = "https://android.googlesource.com/platform/hardware/google/aemu";
description = "Android emulation utilities library";
maintainers = with maintainers; [ qyliss ];
# The BSD license comes from host-common/VpxFrameParser.cpp, which
# incorporates some code from libvpx, which uses the 3-clause BSD license.
license = with licenses; [
asl20
mit
bsd3
];
# See base/include/aemu/base/synchronization/Lock.h
platforms = [
"x86_64-linux"
"aarch64-linux"
"x86_64-darwin"
"aarch64-darwin"
];
};
})

View File

@@ -0,0 +1,40 @@
{
lib,
stdenvNoCC,
fetchurl,
}:
stdenvNoCC.mkDerivation rec {
pname = "stops";
version = "0.4.0";
src = fetchurl {
url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${pname}-${version}.tar.bz2";
hash = "sha256-DnmguOAGyw9nv88ekJfbC04Qwbsw5tXEAaKeiCQR/LA=";
};
outputHashMode = "recursive";
outputHash = "sha256-gGHowq7g7MZmnhrpqG+3wNLwQCtpiBB88euIKeQIpJ0=";
subdir = "share/Aeolus/stops";
installPhase = ''
runHook preInstall
mkdir -p $out/${subdir}
cp -r * $out/${subdir}
runHook postInstall
'';
meta = with lib; {
description = "Aeolus synthesizer instrument definitions";
homepage = "http://kokkinizita.linuxaudio.org/linuxaudio/aeolus/index.html";
license = licenses.lgpl3;
platforms = platforms.linux;
maintainers = with maintainers; [
nico202
orivej
];
};
}

View File

@@ -0,0 +1,72 @@
{
lib,
stdenv,
fetchurl,
libclthreads,
zita-alsa-pcmi,
alsa-lib,
libjack2,
libclxclient,
libX11,
libXft,
readline,
aeolus-stops,
}:
stdenv.mkDerivation rec {
pname = "aeolus";
version = "0.10.4";
src = fetchurl {
url = "https://kokkinizita.linuxaudio.org/linuxaudio/downloads/${pname}-${version}.tar.bz2";
sha256 = "sha256-J9xrd/N4LrvGgi89Yj4ob4ZPUAEchrXJJQ+YVJ29Qhk=";
};
buildInputs = [
libclthreads
zita-alsa-pcmi
alsa-lib
libjack2
libclxclient
libX11
libXft
readline
];
postPatch = ''
sed -i source/Makefile -e /ldconfig/d
substituteInPlace source/main.cc --replace /etc/ "$out/etc/"
'';
preBuild = "cd source";
makeFlags = [
"DESTDIR="
"PREFIX=$(out)"
];
postInstall =
let
cfg = ''
# Aeolus system wide default options
# Ignored if ~/.aeolusrc with local options exists
-u -S ${aeolus-stops}/${aeolus-stops.subdir}
'';
in
''
mkdir -p $out/etc
echo -n "${cfg}" > $out/etc/aeolus.conf
'';
meta = {
description = "Synthetized (not sampled) pipe organ emulator";
homepage = "http://kokkinizita.linuxaudio.org/linuxaudio/aeolus/index.html";
license = lib.licenses.lgpl3;
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [
nico202
orivej
];
mainProgram = "aeolus";
};
}

View File

@@ -0,0 +1,104 @@
{
lib,
buildGoModule,
fetchFromSourcehut,
ncurses,
withNotmuch ? true,
notmuch,
scdoc,
python3Packages,
w3m,
dante,
gawk,
versionCheckHook,
nix-update-script,
}:
buildGoModule (finalAttrs: {
pname = "aerc";
version = "0.21.0";
src = fetchFromSourcehut {
owner = "~rjarry";
repo = "aerc";
rev = finalAttrs.version;
hash = "sha256-UBXMAIuB0F7gG0dkpEF/3V4QK6FEbQw2ZLGGmRF884I=";
};
proxyVendor = true;
vendorHash = "sha256-E/DnfiHoDDNNoaNGZC/nvs8DiJ8F2+H2FzxpU7nK+bE=";
nativeBuildInputs = [
scdoc
python3Packages.wrapPython
];
patches = [ ./runtime-libexec.patch ];
postPatch = ''
substituteAllInPlace config/aerc.conf
substituteAllInPlace config/config.go
substituteAllInPlace doc/aerc-config.5.scd
substituteAllInPlace doc/aerc-templates.7.scd
# Prevent buildGoModule from trying to build this
rm contrib/linters.go
'';
makeFlags = [ "PREFIX=${placeholder "out"}" ];
pythonPath = [ python3Packages.vobject ];
buildInputs = [
python3Packages.python
gawk
]
++ lib.optional withNotmuch notmuch;
installPhase = ''
runHook preInstall
make $makeFlags GOFLAGS="$GOFLAGS${lib.optionalString withNotmuch " -tags=notmuch"}" install
runHook postInstall
'';
postFixup = ''
wrapProgram $out/bin/aerc \
--prefix PATH : ${lib.makeBinPath [ ncurses ]}
wrapProgram $out/libexec/aerc/filters/html \
--prefix PATH : ${
lib.makeBinPath [
w3m
dante
]
}
wrapProgram $out/libexec/aerc/filters/html-unsafe \
--prefix PATH : ${
lib.makeBinPath [
w3m
dante
]
}
patchShebangs $out/libexec/aerc/filters
'';
nativeInstallCheckInputs = [ versionCheckHook ];
versionCheckProgramArg = "--version";
doInstallCheck = true;
passthru.updateScript = nix-update-script { };
meta = {
description = "Email client for your terminal";
homepage = "https://aerc-mail.org/";
changelog = "https://git.sr.ht/~rjarry/aerc/tree/${finalAttrs.version}/item/CHANGELOG.md";
maintainers = with lib.maintainers; [
defelo
sikmir
];
mainProgram = "aerc";
license = lib.licenses.mit;
platforms = lib.platforms.unix;
};
})

View File

@@ -0,0 +1,136 @@
diff --git a/config/aerc.conf b/config/aerc.conf
index fbc1f3ba..9eea2b81 100644
--- a/config/aerc.conf
+++ b/config/aerc.conf
@@ -301,8 +301,7 @@
#
# ${XDG_CONFIG_HOME:-~/.config}/aerc/stylesets
# ${XDG_DATA_HOME:-~/.local/share}/aerc/stylesets
-# /usr/local/share/aerc/stylesets
-# /usr/share/aerc/stylesets
+# @out@/share/aerc/stylesets
#
#stylesets-dirs=
@@ -741,8 +740,8 @@
# ${XDG_DATA_HOME:-~/.local/share}/aerc/filters
# $PREFIX/libexec/aerc/filters
# $PREFIX/share/aerc/filters
-# /usr/libexec/aerc/filters
-# /usr/share/aerc/filters
+# @out@/libexec/aerc/filters
+# @out@/share/aerc/filters
#
# If you want to run a program in your default $PATH which has the same name
# as a builtin filter (e.g. /usr/bin/colorize), use its absolute path.
@@ -845,8 +844,7 @@ text/html=! html
#
# ${XDG_CONFIG_HOME:-~/.config}/aerc/templates
# ${XDG_DATA_HOME:-~/.local/share}/aerc/templates
-# /usr/local/share/aerc/templates
-# /usr/share/aerc/templates
+# @out@/share/aerc/templates
#
#template-dirs=
diff --git a/config/config.go b/config/config.go
index 14c4b233..9f305ffd 100644
--- a/config/config.go
+++ b/config/config.go
@@ -46,10 +46,8 @@ func buildDefaultDirs() []string {
}
// Add fixed fallback locations
- defaultDirs = append(defaultDirs, "/usr/local/libexec/aerc")
- defaultDirs = append(defaultDirs, "/usr/local/share/aerc")
- defaultDirs = append(defaultDirs, "/usr/libexec/aerc")
- defaultDirs = append(defaultDirs, "/usr/share/aerc")
+ defaultDirs = append(defaultDirs, "@out@/libexec/aerc")
+ defaultDirs = append(defaultDirs, "@out@/share/aerc")
return defaultDirs
}
diff --git a/doc/aerc-config.5.scd b/doc/aerc-config.5.scd
index 1e3daaa9..cd118be0 100644
--- a/doc/aerc-config.5.scd
+++ b/doc/aerc-config.5.scd
@@ -13,7 +13,7 @@ _aerc_, which defaults to _~/.config/aerc_. Alternate files can be specified via
command line arguments, see *aerc*(1).
Examples of these config files are typically included with your installation of
-aerc and are usually installed in _/usr/share/aerc_.
+aerc and are usually installed in _@out@/share/aerc_.
Each file uses the ini format, and consists of sections with keys and values.
A line beginning with _#_ is considered a comment and ignored, as are empty
@@ -386,8 +386,7 @@ These options are configured in the *[ui]* section of _aerc.conf_.
```
${XDG_CONFIG_HOME:-~/.config}/aerc/stylesets
${XDG_DATA_HOME:-~/.local/share}/aerc/stylesets
- /usr/local/share/aerc/stylesets
- /usr/share/aerc/stylesets
+ @out@/share/aerc/stylesets
```
*styleset-name* = _<string>_
@@ -1019,7 +1018,7 @@ will be set to the terminal TTY. The filter is expected to implement its own
paging.
aerc ships with some default filters installed in the libexec directory (usually
-_/usr/libexec/aerc/filters_). Note that these may have additional dependencies
+_@out@/libexec/aerc/filters_). Note that these may have additional dependencies
that aerc does not have alone.
The filter commands are invoked with _sh -c command_. The following folders are
@@ -1031,8 +1030,8 @@ ${XDG_CONFIG_HOME:-~/.config}/aerc/filters
${XDG_DATA_HOME:-~/.local/share}/aerc/filters
$PREFIX/libexec/aerc/filters
$PREFIX/share/aerc/filters
-/usr/libexec/aerc/filters
-/usr/share/aerc/filters
+@out@/libexec/aerc/filters
+@out@/share/aerc/filters
```
If you want to run a program in your default *$PATH* which has the same
@@ -1370,7 +1369,7 @@ of the template name. The available symbols and functions are described in
*aerc-templates*(7).
aerc ships with some default templates installed in the share directory (usually
-_/usr/share/aerc/templates_).
+_@out@/share/aerc/templates_).
These options are configured in the *[templates]* section of _aerc.conf_.
@@ -1382,8 +1381,7 @@ These options are configured in the *[templates]* section of _aerc.conf_.
```
${XDG_CONFIG_HOME:-~/.config}/aerc/templates
${XDG_DATA_HOME:-~/.local/share}/aerc/templates
- /usr/local/share/aerc/templates
- /usr/share/aerc/templates
+ @out@/share/aerc/templates
```
*new-message* = _<template_name>_
diff --git a/doc/aerc-templates.7.scd b/doc/aerc-templates.7.scd
index a6deb584..4f91869c 100644
--- a/doc/aerc-templates.7.scd
+++ b/doc/aerc-templates.7.scd
@@ -398,7 +398,7 @@ aerc provides the following additional functions:
Attaches a file to the message being composed.
```
- {{.Attach '/usr/libexec/aerc/filters/html'}}
+ {{.Attach '@out@/libexec/aerc/filters/html'}}
```
*exec*
@@ -581,7 +581,7 @@ aerc provides the following additional functions:
```
{{if eq .OriginalMIMEType "text/html"}}
- {{exec `/usr/libexec/aerc/filters/html` .OriginalText | wrap 72 | quote}}
+ {{exec `@out@/libexec/aerc/filters/html` .OriginalText | wrap 72 | quote}}
{{else}}
{{wrap 72 .OriginalText | trimSignature | quote}}
{{end}}

View File

@@ -0,0 +1,59 @@
From ad754664a05808bdbb976906a86ad0b08f16eb32 Mon Sep 17 00:00:00 2001
From: wxt <3264117476@qq.com>
Date: Tue, 24 Sep 2024 20:38:19 +0800
Subject: [PATCH] update time-rs
---
Cargo.lock | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
diff --git a/Cargo.lock b/Cargo.lock
index 0a159ae..cf6b1c4 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -2468,6 +2468,12 @@ dependencies = [
"num-traits",
]
+[[package]]
+name = "num-conv"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9"
+
[[package]]
name = "num-integer"
version = "0.1.45"
@@ -3579,12 +3585,13 @@ dependencies = [
[[package]]
name = "time"
-version = "0.3.31"
+version = "0.3.36"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f657ba42c3f86e7680e53c8cd3af8abbe56b5491790b46e22e19c0d57463583e"
+checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885"
dependencies = [
"deranged",
"itoa",
+ "num-conv",
"powerfmt",
"serde",
"time-core",
@@ -3599,10 +3606,11 @@ checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3"
[[package]]
name = "time-macros"
-version = "0.2.16"
+version = "0.2.18"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26197e33420244aeb70c3e8c78376ca46571bc4e701e4791c2cd9f57dcb3a43f"
+checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf"
dependencies = [
+ "num-conv",
"time-core",
]
--
2.46.0

View File

@@ -0,0 +1,49 @@
{
lib,
rustPlatform,
fetchgit,
nix-update-script,
pkg-config,
openssl,
}:
rustPlatform.buildRustPackage rec {
pname = "aerogramme";
version = "0.3.0";
src = fetchgit {
url = "https://git.deuxfleurs.fr/Deuxfleurs/aerogramme/";
tag = version;
hash = "sha256-ER+P/XGqNzTLwDLK5EBZq/Dl29ZZKl2FdxDb+oLEJ8Y=";
};
cargoPatches = [
./0001-update-time-rs.patch
];
cargoHash = "sha256-GPj8qhfKgfAadQD9DJafN4ec8L6oY62PS/w/ljkPHpw=";
# disable network tests as Nix sandbox breaks them
doCheck = false;
env = {
# get openssl-sys to use pkg-config
OPENSSL_NO_VENDOR = true;
RUSTC_BOOTSTRAP = true;
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ openssl ];
passthru.updateScript = nix-update-script { };
meta = {
description = "Encrypted e-mail storage over Garage";
homepage = "https://aerogramme.deuxfleurs.fr/";
license = lib.licenses.eupl12;
maintainers = with lib.maintainers; [ supinie ];
teams = with lib.teams; [ ngi ];
mainProgram = "aerogramme";
platforms = lib.platforms.linux;
};
}

View File

@@ -0,0 +1,11 @@
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -323,7 +323,7 @@ if (BUILD_AERON_ARCHIVE_API)
"${CMAKE_CURRENT_SOURCE_DIR}}/aeron-archive/src/main/java/*.java")
add_custom_command(OUTPUT ${AERON_ALL_JAR}
- COMMAND ${CMAKE_COMMAND} -E env JAVA_HOME=$ENV{JAVA_HOME} BUILD_JAVA_HOME=$ENV{BUILD_JAVA_HOME} BUILD_JAVA_VERSION=$ENV{BUILD_JAVA_VERSION} ${GRADLE_WRAPPER} :aeron-all:clean :aeron-all:assemble --no-daemon -x javadoc --console=plain -q
+ COMMAND ln --symbolic ${CMAKE_CURRENT_SOURCE_DIR}/aeron-all.jar ${AERON_ALL_JAR}
DEPENDS ${AERON_ALL_SOURCES}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
COMMENT "Generating aeron-all jar")

View File

@@ -0,0 +1,11 @@
--- a/aeron-archive/src/main/cpp/CMakeLists.txt
+++ b/aeron-archive/src/main/cpp/CMakeLists.txt
@@ -59,7 +59,7 @@ set(GENERATED_CODECS
${ARCHIVE_CODEC_TARGET_DIR}/aeron_archive_client/RecordingSignalEvent.h)
add_custom_command(OUTPUT ${GENERATED_CODECS}
- COMMAND ${CMAKE_COMMAND} -E env JAVA_HOME=$ENV{JAVA_HOME} BUILD_JAVA_HOME=$ENV{BUILD_JAVA_HOME} BUILD_JAVA_VERSION=$ENV{BUILD_JAVA_VERSION} ${GRADLE_WRAPPER} -Dcodec.target.dir=${ARCHIVE_CODEC_TARGET_DIR} :aeron-archive:generateCppCodecs --no-daemon --console=plain -q
+ COMMAND ${CMAKE_COMMAND} -E env JAVA_HOME=$ENV{JAVA_HOME} BUILD_JAVA_HOME=$ENV{BUILD_JAVA_HOME} BUILD_JAVA_VERSION=$ENV{BUILD_JAVA_VERSION} java -cp sbe.jar -Dsbe.output.dir=${ARCHIVE_CODEC_TARGET_DIR} -Dsbe.target.language=Cpp -Dsbe.target.namespace=aeron.archive.client uk.co.real_logic.sbe.SbeTool ${ARCHIVE_CODEC_SCHEMA_DIR}/aeron-archive-codecs.xml
DEPENDS ${CODEC_SCHEMA} aeron-all-jar
WORKING_DIRECTORY ${ARCHIVE_CODEC_WORKING_DIR}
COMMENT "Generating C++ Archive codecs")

View File

@@ -0,0 +1,127 @@
{
autoPatchelfHook,
aeron,
cmake,
fetchFromGitHub,
fetchMavenArtifact,
jdk11,
lib,
libbsd,
libuuid,
makeWrapper,
patchelf,
stdenv,
zlib,
}:
let
version = aeron.version;
sbeAll_1_31_1 = fetchMavenArtifact {
groupId = "uk.co.real-logic";
version = "1.31.1";
artifactId = "sbe-all";
hash = "sha512-Ypsk8PbShFOxm49u1L+TTuApaW6ECTSee+hHEhmY/jNi5AymHXBWwDMBMkzC25aowiHLJS5EnzLk6hu9Lea93Q==";
};
sbeAll = sbeAll_1_31_1;
in
stdenv.mkDerivation {
pname = "aeron-cpp";
inherit version;
src = fetchFromGitHub {
owner = "real-logic";
repo = "aeron";
tag = version;
hash = "sha256-sROEZVOfScrlqMLbfrPtw3LQCQ5TfMcrLiP6j/Z9rSM=";
};
patches = [
./aeron-all.patch
# Use pre-built aeron-all.jar from Maven repo, avoiding Gradle
./aeron-archive-sbe.patch
# Use SBE tool to generate C++ codecs, avoiding Gradle
];
buildInputs = [
libbsd
libuuid
zlib
];
nativeBuildInputs = [
autoPatchelfHook
cmake
jdk11
makeWrapper
patchelf
];
configurePhase = ''
runHook preConfigure
mkdir --parents cppbuild/Release
(
cd cppbuild/Release
cmake \
-G "CodeBlocks - Unix Makefiles" \
-DCMAKE_BUILD_TYPE=Release \
-DAERON_TESTS=OFF \
-DAERON_SYSTEM_TESTS=OFF \
-DAERON_BUILD_SAMPLES=OFF \
-DCMAKE_INSTALL_PREFIX:PATH=../../install \
../..
)
runHook postConfigure
'';
buildPhase = ''
runHook preBuild
ln --symbolic "${aeron.jar}" ./aeron-all.jar
ln --symbolic "${sbeAll.jar}" ./sbe.jar
mkdir --parents aeron-all/build/libs
(
cd cppbuild/Release
make -j $NIX_BUILD_CORES \
aeron \
aeron_archive_client \
aeron_client_shared \
aeron_driver \
aeron_client \
aeron_driver_static \
aeronmd
make install
)
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir --parents "$out"
cp --archive --verbose --target-directory="$out" install/*
runHook postInstall
'';
meta = with lib; {
description = "Aeron Messaging C++ Library";
homepage = "https://aeron.io/";
license = licenses.asl20;
mainProgram = "aeronmd";
maintainers = [ maintainers.vaci ];
sourceProvenance = [
sourceTypes.fromSource
sourceTypes.binaryBytecode
];
};
}

View File

@@ -0,0 +1,132 @@
{
lib,
stdenv,
fetchMavenArtifact,
jdk11,
makeWrapper,
}:
let
pname = "aeron";
version = "1.44.1";
groupId = "io.aeron";
aeronAll_1_40_0 = fetchMavenArtifact {
inherit groupId;
version = "1.40.0";
artifactId = "aeron-all";
hash = "sha512-NyhYaQqOWcSBwzwpje6DMAp36CEgGSNXBSdaRrDyP+Fn2Z0nvh5o2czog6GKKtbjH9inYfyyF/21gehfgLF6qA==";
};
aeronSamples_1_40_0 = fetchMavenArtifact {
inherit groupId;
version = "1.40.0";
artifactId = "aeron-samples";
hash = "sha512-vyAq4mfLDDyaVk7wcIpPvPcxSt92Ek8mxfuuZwaX+0Wu9oJCpwbnjvS9+bvzcE4qSGxzY6eJIIX6nMdw0LkACg==";
};
aeronAll_1_42_1 = fetchMavenArtifact {
inherit groupId;
artifactId = "aeron-all";
version = "1.42.1";
hash = "sha512-pjX+JopK6onDwElMIroj+ZXrKwdPj5H2uPg08XgNlrK1rAkHo9MUT8weBGbuFVFDLeqOZrHj0bt1wJ9XgYY5aA==";
};
aeronSamples_1_42_1 = fetchMavenArtifact {
inherit groupId;
version = "1.42.1";
artifactId = "aeron-samples";
hash = "sha512-4JnHn22vJf2lmOg6ev5PD+/YiaL3KgfuyWAK92djX3KBVXO7ERMY2kH79dveVCJG1rbekvE1j1pnjaAIxwJcqg==";
};
aeronAll_1_43_0 = fetchMavenArtifact {
inherit groupId;
artifactId = "aeron-all";
version = "1.43.0";
hash = "sha512-ZKjUA1Kp++RLnCNUOi2K/iGc4zIIR4pC4j8qPfO+rcgp7ghZfgsXO8sB+JD307kzeikUXnPFX7ef28DlzI8s8Q==";
};
aeronSamples_1_43_0 = fetchMavenArtifact {
inherit groupId;
version = "1.43.0";
artifactId = "aeron-samples";
hash = "sha512-a/ti4Kd8WwzOzDGMgdYk0pxsu8vRA4kRD9cm4D3S+r6xc/rL8ECHVoogOMDeabDd1EYSIbx/sKE01BJOW7BVsg==";
};
aeronAll_1_44_1 = fetchMavenArtifact {
inherit groupId;
artifactId = "aeron-all";
version = "1.44.1";
hash = "sha256-O80bWp7F6mRh3me1znzpfFfFEpvvMVjL4PrAt7+3Fq0=";
};
aeronSamples_1_44_1 = fetchMavenArtifact {
inherit groupId;
version = "1.44.1";
artifactId = "aeron-samples";
hash = "sha256-ZSuTed45BRzr4JJuGeXghUgEifv/FpnCzTNJWa+nwjo=";
};
aeronAll = aeronAll_1_44_1;
aeronSamples = aeronSamples_1_44_1;
in
stdenv.mkDerivation {
inherit pname version;
buildInputs = [
aeronAll
aeronSamples
];
nativeBuildInputs = [
makeWrapper
];
dontUnpack = true;
dontConfigure = true;
dontBuild = true;
installPhase = ''
runHook preInstall
mkdir --parents "$out/share/java"
ln --symbolic "${aeronAll.jar}" "$out/share/java/${pname}-all.jar"
ln --symbolic "${aeronSamples.jar}" "$out/share/java/${pname}-samples.jar"
runHook postInstall
'';
postFixup = ''
function wrap {
makeWrapper "${jdk11}/bin/java" "$out/bin/$1" \
--add-flags "--add-opens java.base/sun.nio.ch=ALL-UNNAMED" \
--add-flags "--class-path ${aeronAll.jar}" \
--add-flags "$2"
}
wrap "${pname}-media-driver" io.aeron.driver.MediaDriver
wrap "${pname}-stat" io.aeron.samples.AeronStat
wrap "${pname}-archiving-media-driver" io.aeron.archive.ArchivingMediaDriver
wrap "${pname}-archive-tool" io.aeron.archive.ArchiveTool
wrap "${pname}-logging-agent" io.aeron.agent.DynamicLoggingAgent
wrap "${pname}-clustered-media-driver" io.aeron.cluster.ClusteredMediaDriver
wrap "${pname}-cluster-tool" io.aeron.cluster.ClusterTool
'';
passthru = {
jar = aeronAll.jar;
};
meta = with lib; {
description = "Low-latency messaging library";
homepage = "https://aeron.io/";
license = licenses.asl20;
mainProgram = "${pname}-media-driver";
maintainers = [ maintainers.vaci ];
sourceProvenance = [
sourceTypes.binaryBytecode
];
};
}

View File

@@ -0,0 +1,61 @@
{
fetchzip,
gitUpdater,
installShellFiles,
lib,
stdenv,
versionCheckHook,
}:
let
appName = "AeroSpace.app";
version = "0.19.2-Beta";
in
stdenv.mkDerivation {
pname = "aerospace";
inherit version;
src = fetchzip {
url = "https://github.com/nikitabobko/AeroSpace/releases/download/v${version}/AeroSpace-v${version}.zip";
sha256 = "sha256-6RyGw84GhGwULzN0ObjsB3nzRu1HYQS/qoCvzVWOYWQ=";
};
nativeBuildInputs = [ installShellFiles ];
installPhase = ''
runHook preInstall
mkdir -p $out/Applications
mv ${appName} $out/Applications
cp -R bin $out
mkdir -p $out/share
runHook postInstall
'';
postInstall = ''
installManPage manpage/*
installShellCompletion --bash shell-completion/bash/aerospace
installShellCompletion --fish shell-completion/fish/aerospace.fish
installShellCompletion --zsh shell-completion/zsh/_aerospace
'';
doInstallCheck = true;
nativeInstallCheckInputs = [
versionCheckHook
];
passthru.updateScript = gitUpdater {
url = "https://github.com/nikitabobko/AeroSpace.git";
rev-prefix = "v";
};
meta = {
license = lib.licenses.mit;
mainProgram = "aerospace";
homepage = "https://github.com/nikitabobko/AeroSpace";
description = "i3-like tiling window manager for macOS";
platforms = lib.platforms.darwin;
maintainers = with lib.maintainers; [ alexandru0-dev ];
sourceProvenance = [ lib.sourceTypes.binaryNativeCode ];
};
}

View File

@@ -0,0 +1,56 @@
{
lib,
stdenv,
fetchFromGitHub,
autoconf,
automake,
cmake,
libtool,
openssl,
zlib,
}:
stdenv.mkDerivation rec {
pname = "aerospike-server";
version = "8.0.0.10";
src = fetchFromGitHub {
owner = "aerospike";
repo = "aerospike-server";
rev = version;
hash = "sha256-RZqlU6vF8w/w8YZRmDV1x/X6tMQ+I1HEwx2WA3zS7mc=";
fetchSubmodules = true;
};
nativeBuildInputs = [
autoconf
automake
cmake
libtool
];
buildInputs = [
openssl
zlib
];
dontUseCmakeConfigure = true;
preBuild = ''
patchShebangs build/gen_version
substituteInPlace build/gen_version --replace 'git describe' 'echo ${version}'
'';
installPhase = ''
mkdir -p $out/bin
cp target/Linux-x86_64/bin/asd $out/bin/asd
'';
meta = {
description = "Flash-optimized, in-memory, NoSQL database";
mainProgram = "asd";
homepage = "https://aerospike.com/";
license = lib.licenses.agpl3Only;
platforms = [ "x86_64-linux" ];
maintainers = with lib.maintainers; [ kalbasit ];
};
}

View File

@@ -0,0 +1,43 @@
{
lib,
stdenv,
fetchurl,
libiconv,
}:
stdenv.mkDerivation rec {
version = "3.16";
pname = "aescrypt";
src = fetchurl {
url = "https://www.aescrypt.com/download/v3/linux/aescrypt-${version}.tgz";
sha256 = "sha256-4uGS0LReq5dI7+Wel7ZWzFXx+utZWi93q4TUSw7AhNI=";
};
NIX_LDFLAGS = lib.optionalString stdenv.hostPlatform.isDarwin "-liconv";
preBuild = ''
substituteInPlace src/Makefile --replace "CC=gcc" "CC?=gcc"
cd src
'';
installPhase = ''
mkdir -p $out/bin
cp aescrypt $out/bin
cp aescrypt_keygen $out/bin
'';
buildInputs = [ libiconv ];
meta = with lib; {
description = "Encrypt files with Advanced Encryption Standard (AES)";
homepage = "https://www.aescrypt.com/";
license = licenses.gpl2Only;
maintainers = with maintainers; [
lovek323
qknight
];
platforms = lib.platforms.all;
hydraPlatforms = with platforms; unix;
};
}

View File

@@ -0,0 +1,28 @@
{
lib,
stdenv,
fetchurl,
}:
stdenv.mkDerivation rec {
pname = "aesfix";
version = "1.0.1";
src = fetchurl {
url = "https://citpsite.s3.amazonaws.com/memory-content/src/aesfix-${version}.tar.gz";
sha256 = "sha256-exd+h2yu5qrkjwEjEC8R32WUpzhIP5pH8sdv6BzARdQ=";
};
installPhase = ''
runHook preInstall
mkdir -p $out/bin
cp aesfix $out/bin
runHook postInstall
'';
meta = with lib; {
description = "Correct bit errors in an AES key schedules";
mainProgram = "aesfix";
homepage = "https://citp.princeton.edu/our-work/memory/";
maintainers = with maintainers; [ fedx-sudo ];
};
}

View File

@@ -0,0 +1,31 @@
{
lib,
stdenv,
fetchurl,
}:
stdenv.mkDerivation rec {
pname = "aeskeyfind";
version = "1.0";
src = fetchurl {
url = "https://citpsite.s3.amazonaws.com/memory-content/src/aeskeyfind-${version}.tar.gz";
sha256 = "sha256-FBflwbYehruVJ9sfW+4ZlaDuqCR12zy8iA4Ev3Bgg+Q=";
};
installPhase = ''
runHook preInstall
mkdir -p $out/bin
cp aeskeyfind $out/bin
runHook postInstall
'';
meta = with lib; {
description = "Locates 128-bit and 256-bit AES keys in a captured memory image";
mainProgram = "aeskeyfind";
homepage = "https://citp.princeton.edu/our-work/memory/";
license = licenses.bsd3;
maintainers = with maintainers; [ fedx-sudo ];
};
}

View File

@@ -0,0 +1,38 @@
{
lib,
stdenv,
fetchurl,
sharutils,
makeWrapper,
}:
stdenv.mkDerivation rec {
pname = "aespipe";
version = "2.4j";
src = fetchurl {
url = "mirror://sourceforge/loop-aes/aespipe/aespipe-v${version}.tar.bz2";
sha256 = "sha256-RI/h5YYSwYSVFkXd2Sb8W9tk/E8vgox2bIKqESfpo+I=";
};
nativeBuildInputs = [ makeWrapper ];
configureFlags = [
"--enable-padlock"
"--enable-intelaes"
];
postInstall = ''
cp bz2aespipe $out/bin
wrapProgram $out/bin/bz2aespipe \
--prefix PATH : $out/bin:${lib.makeBinPath [ sharutils ]}
'';
meta = {
description = "AES encrypting or decrypting pipe";
homepage = "https://loop-aes.sourceforge.net/aespipe.README";
license = lib.licenses.gpl2Only;
maintainers = [ ];
platforms = lib.platforms.unix;
};
}

View File

@@ -0,0 +1,53 @@
{
lib,
stdenv,
fetchFromGitHub,
lv2,
libX11,
libGL,
libGLU,
libgbm,
cmake,
}:
stdenv.mkDerivation rec {
pname = "aether-lv2";
version = "1.2.1";
src = fetchFromGitHub {
owner = "Dougal-s";
repo = "aether";
tag = "v${version}";
sha256 = "0xhih4smjxn87s0f4gaab51d8594qlp0lyypzxl5lm37j1i9zigs";
fetchSubmodules = true;
};
nativeBuildInputs = [ cmake ];
buildInputs = [
lv2
libX11
libGL
libGLU
libgbm
];
env.NIX_CFLAGS_COMPILE = toString [
# Needed with GCC 12
"-Wno-error=array-bounds"
"-Wno-error=stringop-overflow"
];
installPhase = ''
mkdir -p $out/lib/lv2
cp -r aether.lv2 $out/lib/lv2
'';
meta = with lib; {
homepage = "https://dougal-s.github.io/Aether/";
description = "Algorithmic reverb LV2 based on Cloudseed";
maintainers = [ maintainers.magnetophon ];
platforms = platforms.linux;
license = licenses.mit;
};
}

View File

@@ -0,0 +1,56 @@
{
lib,
gccStdenv,
fetchurl,
fetchpatch,
zlib,
ncurses,
}:
let
stdenv = gccStdenv;
in
stdenv.mkDerivation rec {
pname = "aewan";
version = "1.0.01";
src = fetchurl {
url = "mirror://sourceforge/aewan/${pname}-${version}.tar.gz";
sha256 = "5266dec5e185e530b792522821c97dfa5f9e3892d0dca5e881d0c30ceac21817";
};
patches = [
# Pull patch pending upstream inclusion:
# https://sourceforge.net/p/aewan/bugs/13/
(fetchpatch {
url = "https://sourceforge.net/p/aewan/bugs/13/attachment/aewan-cvs-ncurses-6.3.patch";
sha256 = "0pgpk1l3d6d5y37lvvavipwnmv9gmpfdy21jkz6baxhlkgf43r4p";
# patch is in CVS diff format, add 'a/' prefix
extraPrefix = "";
})
# https://sourceforge.net/p/aewan/bugs/14/
(fetchpatch {
url = "https://sourceforge.net/p/aewan/bugs/14/attachment/aewan-1.0.01-fix-incompatible-function-pointer-types.patch";
sha256 = "sha256-NlnsOe/OCMXCrehBq20e0KOMcWt5rUv9fIvu9eoOMqw=";
})
# https://sourceforge.net/p/aewan/bugs/16/
(fetchpatch {
url = "https://sourceforge.net/p/aewan/bugs/16/attachment/implicit-function-declaration.patch";
sha256 = "sha256-RWFJRDaYoiQySkB2L09JHSX90zgIJ9q16IrPhg03Ruc=";
# patch is in CVS diff format, add 'a/' prefix
extraPrefix = "";
})
];
buildInputs = [
zlib
ncurses
];
meta = {
description = "Ascii-art Editor Without A Name";
homepage = "https://aewan.sourceforge.net/";
license = lib.licenses.gpl2Plus;
platforms = lib.platforms.unix;
};
}