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,78 @@
{
stdenv,
lib,
fetchFromGitHub,
appstream-glib,
desktop-file-utils,
meson,
ninja,
pantheon,
pkg-config,
python3,
vala,
wrapGAppsHook3,
cairo,
glib,
goocanvas3,
gtk3,
gtksourceview3,
json-glib,
libarchive,
libgee,
libxml2,
}:
stdenv.mkDerivation rec {
pname = "akira";
version = "0.0.16";
src = fetchFromGitHub {
owner = "akiraux";
repo = "Akira";
tag = "v${version}";
sha256 = "sha256-qrqmSCwA0kQVFD1gzutks9gMr7My7nw/KJs/VPisa0w=";
};
nativeBuildInputs = [
appstream-glib
desktop-file-utils
meson
ninja
pkg-config
python3
vala
wrapGAppsHook3
];
buildInputs = [
cairo
glib
goocanvas3
pantheon.granite
gtk3
gtksourceview3
json-glib
libarchive
libgee
libxml2
];
mesonFlags = [ "-Dprofile=default" ];
postPatch = ''
chmod +x build-aux/meson/post_install.py
patchShebangs build-aux/meson/post_install.py
'';
meta = with lib; {
description = "Native Linux Design application built in Vala and GTK";
homepage = "https://github.com/akiraux/Akira";
license = licenses.gpl3Plus;
maintainers = with maintainers; [
Br1ght0ne
];
teams = [ teams.pantheon ];
platforms = platforms.linux;
mainProgram = "com.github.akiraux.akira";
};
}

View File

@@ -0,0 +1,95 @@
{
lib,
stdenv,
fetchFromGitea,
fetchYarnDeps,
writableTmpDirAsHomeHook,
fixup-yarn-lock,
yarn,
nodejs,
git,
python3,
pkg-config,
libsass,
nix-update-script,
xcbuild,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "admin-fe";
version = "2.3.0-2-unstable-2024-04-27";
src = fetchFromGitea {
domain = "akkoma.dev";
owner = "AkkomaGang";
repo = "admin-fe";
rev = "7e16abcbaab10efa6c2c4589660cf99f820a718d";
hash = "sha256-W/2Ay2dNeVQk88lgkyTzKwCNw0kLkfI6+Azlbp0oMm4=";
};
offlineCache = fetchYarnDeps {
yarnLock = finalAttrs.src + "/yarn.lock";
hash = "sha256-acF+YuWXlMZMipD5+XJS+K9vVFRz3wB2fZqc3Hd0Bjc=";
};
nativeBuildInputs = [
fixup-yarn-lock
writableTmpDirAsHomeHook
yarn
nodejs
pkg-config
python3
git
libsass
]
++ lib.optional stdenv.hostPlatform.isDarwin xcbuild;
configurePhase = ''
runHook preConfigure
yarn config --offline set yarn-offline-mirror ${lib.escapeShellArg finalAttrs.offlineCache}
fixup-yarn-lock yarn.lock
substituteInPlace yarn.lock \
--replace-fail '"git://github.com/adobe-webplatform/eve.git#eef80ed"' '"https://github.com/adobe-webplatform/eve.git#eef80ed"'
yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive
patchShebangs node_modules/cross-env
mkdir -p "$HOME/.node-gyp/${nodejs.version}"
echo 9 >"$HOME/.node-gyp/${nodejs.version}/installVersion"
ln -sfv "${nodejs}/include" "$HOME/.node-gyp/${nodejs.version}"
export npm_config_nodedir=${nodejs}
runHook postConfigure
'';
buildPhase = ''
runHook preBuild
pushd node_modules/node-sass
LIBSASS_EXT=auto yarn run build --offline
popd
export NODE_OPTIONS="--openssl-legacy-provider"
yarn run build:prod --offline
runHook postBuild
'';
installPhase = ''
runHook preInstall
cp -R -v dist $out
runHook postInstall
'';
passthru.updateScript = nix-update-script {
extraArgs = [ "--version=branch=stable" ];
};
meta = {
description = "Admin interface for Akkoma";
homepage = "https://akkoma.dev/AkkomaGang/akkoma-fe/";
license = lib.licenses.agpl3Only;
maintainers = with lib.maintainers; [ mvs ];
};
})

View File

@@ -0,0 +1,98 @@
{
lib,
stdenv,
fetchFromGitea,
fetchYarnDeps,
writableTmpDirAsHomeHook,
fixup-yarn-lock,
yarn,
nodejs,
jpegoptim,
oxipng,
svgo,
nix-update-script,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "akkoma-fe";
version = "3.15.0";
src = fetchFromGitea {
domain = "akkoma.dev";
owner = "AkkomaGang";
repo = "akkoma-fe";
tag = "v${finalAttrs.version}";
hash = "sha256-VKYeJwAc4pMpF1dWBnx5D39ffNk7eGpJI2es+GAxdow=";
};
offlineCache = fetchYarnDeps {
yarnLock = finalAttrs.src + "/yarn.lock";
hash = "sha256-QB523QZX8oBMHWBSFF7MpaWWXc+MgEUaw/2gsCPZ9a4=";
};
nativeBuildInputs = [
writableTmpDirAsHomeHook
fixup-yarn-lock
yarn
nodejs
jpegoptim
oxipng
svgo
];
postPatch = ''
# Build scripts assume to be used within a Git repository checkout
sed -E -i '/^let commitHash =/,/;$/clet commitHash = "${
builtins.substring 0 7 finalAttrs.src.rev
}";' \
build/webpack.prod.conf.js
'';
configurePhase = ''
runHook preConfigure
yarn config --offline set yarn-offline-mirror ${lib.escapeShellArg finalAttrs.offlineCache}
fixup-yarn-lock yarn.lock
yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive
runHook postConfigure
'';
buildPhase = ''
runHook preBuild
export NODE_ENV="production"
export NODE_OPTIONS="--openssl-legacy-provider"
yarn run build --offline
runHook postBuild
'';
installPhase = ''
runHook preInstall
# (Losslessly) optimise compression of image artifacts
find dist -type f -name '*.jpg' -execdir ${jpegoptim}/bin/jpegoptim -w$NIX_BUILD_CORES {} \;
find dist -type f -name '*.png' -execdir ${oxipng}/bin/oxipng -o max -t $NIX_BUILD_CORES {} \;
find dist -type f -name '*.svg' -execdir ${svgo}/bin/svgo {} \;
cp -R -v dist $out
runHook postInstall
'';
passthru.updateScript = nix-update-script {
extraArgs = [
"--version-regex"
''^v(\d+\.\d+\.\d+)$''
];
};
meta = {
description = "Frontend for Akkoma";
homepage = "https://akkoma.dev/AkkomaGang/akkoma-fe/";
license = lib.licenses.agpl3Only;
maintainers = with lib.maintainers; [ mvs ];
};
})

View File

@@ -0,0 +1,60 @@
From c48f5d57b6e57f42b668c0c6b8744e4620c77320 Mon Sep 17 00:00:00 2001
From: Mikael Voss <mvs@nyantec.com>
Date: Tue, 19 Nov 2024 20:47:27 +0100
Subject: [PATCH] Use magick command from ImageMagick
With ImageMagick version 7 the convert command has been deprecated in
favour of magick. Calling convert instead results in the logs being
spammed with warning messages.
The mogrify Elixir wrapper also runs magick with the mogrify argument
in current releases.
---
lib/pleroma/application_requirements.ex | 8 ++++----
lib/pleroma/helpers/media_helper.ex | 4 ++--
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/lib/pleroma/application_requirements.ex b/lib/pleroma/application_requirements.ex
index c3777d8f1..55ee674a2 100644
--- a/lib/pleroma/application_requirements.ex
+++ b/lib/pleroma/application_requirements.ex
@@ -166,10 +166,10 @@ defp check_system_commands!(:ok) do
filter_commands_statuses = [
check_filter(Pleroma.Upload.Filter.Exiftool.StripMetadata, "exiftool"),
check_filter(Pleroma.Upload.Filter.Exiftool.ReadDescription, "exiftool"),
- check_filter(Pleroma.Upload.Filter.Mogrify, "mogrify"),
- check_filter(Pleroma.Upload.Filter.Mogrifun, "mogrify"),
- check_filter(Pleroma.Upload.Filter.AnalyzeMetadata, "mogrify"),
- check_filter(Pleroma.Upload.Filter.AnalyzeMetadata, "convert"),
+ check_filter(Pleroma.Upload.Filter.Mogrify, "magick"),
+ check_filter(Pleroma.Upload.Filter.Mogrifun, "magick"),
+ check_filter(Pleroma.Upload.Filter.AnalyzeMetadata, "magick"),
+ check_filter(Pleroma.Upload.Filter.AnalyzeMetadata, "magick"),
check_filter(Pleroma.Upload.Filter.AnalyzeMetadata, "ffprobe")
]
diff --git a/lib/pleroma/helpers/media_helper.ex b/lib/pleroma/helpers/media_helper.ex
index cb95d0e68..17cd9629d 100644
--- a/lib/pleroma/helpers/media_helper.ex
+++ b/lib/pleroma/helpers/media_helper.ex
@@ -12,7 +12,7 @@ defmodule Pleroma.Helpers.MediaHelper do
require Logger
def missing_dependencies do
- Enum.reduce([imagemagick: "convert", ffmpeg: "ffmpeg"], [], fn {sym, executable}, acc ->
+ Enum.reduce([imagemagick: "magick", ffmpeg: "ffmpeg"], [], fn {sym, executable}, acc ->
if Pleroma.Utils.command_available?(executable) do
acc
else
@@ -22,7 +22,7 @@ def missing_dependencies do
end
def image_resize(url, options) do
- with executable when is_binary(executable) <- System.find_executable("convert"),
+ with executable when is_binary(executable) <- System.find_executable("magick"),
{:ok, args} <- prepare_image_resize_args(options),
{:ok, env} <- HTTP.get(url, [], []),
{:ok, fifo_path} <- mkfifo() do
--
2.43.0

View File

@@ -0,0 +1,14 @@
config :mime, :types, %{
"application/xml" => ["xml"],
"application/xrd+xml" => ["xrd+xml"],
"application/jrd+json" => ["jrd+json"],
"application/activity+json" => ["activity+json"],
"application/ld+json" => ["activity+json"],
"image/apng" => ["apng"]
}
config :mime, :extensions, %{
"xrd+xml" => "text/plain",
"jrd+json" => "text/plain",
"activity+json" => "text/plain"
}

View File

@@ -0,0 +1,95 @@
{
lib,
beamPackages,
fetchFromGitea,
cmake,
file,
nixosTests,
nix-update-script,
}:
beamPackages.mixRelease rec {
pname = "akkoma";
version = "3.15.2";
src = fetchFromGitea {
domain = "akkoma.dev";
owner = "AkkomaGang";
repo = "akkoma";
tag = "v${version}";
hash = "sha256-GW86OyO/XPIrCS+cPKQ8LG8PdhhfA2rNH1FXFiuL6vM=";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ file ];
patches = [
# See <https://akkoma.dev/AkkomaGang/akkoma/pulls/854>
# Akkoma uses the deprecated “convert” command instead of “magick”, which
# results in the logs being spammed with warning messages. Upstream is
# reluctant to change this, to ensure compatibility with Debian stable,
# which does not yet provide ImageMagick 7.
# Remove this patch once merged upstream.
./akkoma-imagemagick.patch
];
mixFodDeps = beamPackages.fetchMixDeps {
pname = "mix-deps-${pname}";
inherit src version;
hash = "sha256-ygRj0s9J2/nBXR5s9CE7eMRBxsRhKlV/IZrkwPpco14=";
postInstall = ''
substituteInPlace "$out/http_signatures/mix.exs" \
--replace-fail ":logger" ":logger, :public_key"
# Akkoma adds some things to the `mime` package's configuration, which
# requires it to be recompiled. However, we can't just recompile things
# like we would on other systems. Therefore, we need to add it to mime's
# compile-time config too, and also in every package that depends on
# mime, directly or indirectly. We take the lazy way out and just add it
# to every dependency it won't make a difference in packages that don't
# depend on `mime`.
for dep in "$out/"*; do
mkdir -p "$dep/config"
cat ${./mime.exs} >>"$dep/config/config.exs"
done
'';
};
postPatch = ''
# Remove dependency on OS_Mon
sed -E -i 's/(^|\s):os_mon,//' \
mix.exs
'';
dontUseCmakeConfigure = true;
postBuild = ''
# Digest and compress static files
rm -f priv/static/READ_THIS_BEFORE_TOUCHING_FILES_HERE
mix do deps.loadpaths --no-deps-check, phx.digest --no-compile
'';
passthru = {
tests = with nixosTests; {
inherit akkoma akkoma-confined;
};
inherit mixFodDeps;
# Used to make sure the service uses the same version of elixir as
# the package
elixirPackage = beamPackages.elixir;
updateScript = nix-update-script { };
};
meta = {
description = "ActivityPub microblogging server";
homepage = "https://akkoma.social";
changelog = "https://akkoma.dev/AkkomaGang/akkoma/releases/tag/v${version}";
license = lib.licenses.agpl3Only;
maintainers = with lib.maintainers; [ mvs ];
platforms = lib.platforms.unix;
};
}

View File

@@ -0,0 +1,79 @@
{
lib,
buildGoModule,
fetchFromGitHub,
installShellFiles,
makeBinaryWrapper,
azure-cli,
kubectl,
stdenv,
}:
buildGoModule (finalAttrs: {
pname = "aks-mcp-server";
version = "0.0.9";
src = fetchFromGitHub {
owner = "Azure";
repo = "aks-mcp";
rev = "v${finalAttrs.version}";
hash = "sha256-LhFFmzL9jTrUqYlHNMWVZBuiZFB0oFLA409byFWFIl0=";
};
vendorHash = "sha256-tglqpX/SbqcqMXkByrzuadczXLPvPFXvslNkh1rSgWU=";
subPackages = [ "cmd/aks-mcp" ];
nativeBuildInputs = [
installShellFiles
makeBinaryWrapper
];
# Disable CGO and set environment variables
env.CGO_ENABLED = "0";
tags = [ "withoutebpf" ];
ldflags = [
"-s"
"-w"
"-X github.com/Azure/aks-mcp/internal/version.GitVersion=${finalAttrs.version}"
"-X github.com/Azure/aks-mcp/internal/version.GitCommit=${finalAttrs.src.rev}"
"-X github.com/Azure/aks-mcp/internal/version.GitTreeState=clean"
"-X github.com/Azure/aks-mcp/internal/version.BuildDate=1970-01-01T00:00:00Z"
];
checkFlags = [
"-skip=TestAzure"
"-skip=TestExecutor"
"-skip=TestClient"
];
postInstall = ''
wrapProgram $out/bin/aks-mcp \
--set-default AKS_MCP_COLLECT_TELEMETRY false \
--prefix PATH : ${
lib.makeBinPath [
azure-cli
kubectl
]
}
'';
meta = {
description = "Model Context Protocol server for Azure Kubernetes Service";
longDescription = ''
The AKS-MCP server enables AI assistants to interact with Azure Kubernetes
Service clusters through the Model Context Protocol. It translates natural
language requests into AKS operations and provides cluster information,
network details, and resource management capabilities.
'';
homepage = "https://github.com/Azure/aks-mcp";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ priyaananthasankar ];
platforms = lib.platforms.unix; # Now supports both Linux and macOS with withoutebpf
mainProgram = "aks-mcp-server";
};
})