Merge master into staging-nixos

This commit is contained in:
nixpkgs-ci[bot]
2026-05-13 12:46:26 +00:00
committed by GitHub
254 changed files with 2040 additions and 1465 deletions

View File

@@ -5,13 +5,13 @@
}:
mkLibretroCore {
core = "dosbox-pure";
version = "0-unstable-2026-04-17";
version = "0-unstable-2026-05-12";
src = fetchFromGitHub {
owner = "schellingb";
repo = "dosbox-pure";
rev = "93cf48bb22b30a9bc657511658cf4dbcd9a727eb";
hash = "sha256-QW1wIE4uuyCiI7eJjHsKh6PJd6QJwrBUQa4wkhPyRSE=";
rev = "3a5222c97456e8df90983eb546f4d866b0feb848";
hash = "sha256-FeT1VPOJsZaC9SZbJwbiC0fkVV/WOJ+rOcwf8g+wdeM=";
};
hardeningDisable = [ "format" ];

View File

@@ -11,13 +11,13 @@
}:
mkLibretroCore {
core = "pcsx2";
version = "0-unstable-2026-05-01";
version = "0-unstable-2026-05-13";
src = fetchFromGitHub {
owner = "libretro";
repo = "ps2";
rev = "1b048a1783263a0584e3f663fe46b1a6fd163ff9";
hash = "sha256-5me+ETLmJrVmpkGi1TJ5LWiPp+AKiwHPl7AlG0cp+8o=";
rev = "2b9768b58e743b2e7586051e28896c98dc05fa4e";
hash = "sha256-Du+Z0gF5y5a91/bCfSY7ohubSn4JaaWxB3fkO4aE6e8=";
fetchSubmodules = true;
};

View File

@@ -14,13 +14,13 @@
}:
mkLibretroCore {
core = "play";
version = "0-unstable-2026-04-23";
version = "0-unstable-2026-05-11";
src = fetchFromGitHub {
owner = "jpd002";
repo = "Play-";
rev = "158ec0cbdadc8778093016c9acbec9af45a9aab4";
hash = "sha256-UXvFsFwymGqk7GfI4qMyxEy71PqHLitV9E+C2iavud4=";
rev = "7a2b8d6058c7b89548283be5d380accc85e310a0";
hash = "sha256-AA6l4t+TDz2g/qQM4bVbSnJXsamEXzUqTL7VnvQ1mgc=";
fetchSubmodules = true;
};

View File

@@ -54,13 +54,13 @@
"vendorHash": "sha256-1cvxBtsehwAhF48d/i8qTi6XJxxYMAeq1MAInuUE3Sw="
},
"aminueza_minio": {
"hash": "sha256-UvuHbb8aeh1pKFY9VLUdxwYZVYLRVEFCZrL/NrmpnGc=",
"hash": "sha256-u3kCxgZ0Mg63TinXnncopP2nKpjnmXTUQYTN7g4DIRA=",
"homepage": "https://registry.terraform.io/providers/aminueza/minio",
"owner": "aminueza",
"repo": "terraform-provider-minio",
"rev": "v3.33.1",
"rev": "v3.35.1",
"spdx": "AGPL-3.0",
"vendorHash": "sha256-4Jsi6YkjWakH53Ub/CALDYfL1UC/xWRBvAmJTpHTVtk="
"vendorHash": "sha256-auzaaTEJAluuLdhR3auGH5uCguXO2zQahEVdA6ooOUg="
},
"argoproj-labs_argocd": {
"hash": "sha256-c6+WY4oXL8evvPk/RzVrwtgq4XLB/LzAH5tpjErbE60=",
@@ -228,13 +228,13 @@
"vendorHash": "sha256-F4vFlhpPQUa1q7cFfjRooK4krISfpPxdj8uhvDmZQuY="
},
"cloudscale-ch_cloudscale": {
"hash": "sha256-Ynuyn0L5B7d81WXEHoTI03zFzlEP3LGY4yQIl/WBr/8=",
"hash": "sha256-eVJPfiQAJ3cFgZksO4Fc7X3xVbSKlQKgiK5UeIGwWk8=",
"homepage": "https://registry.terraform.io/providers/cloudscale-ch/cloudscale",
"owner": "cloudscale-ch",
"repo": "terraform-provider-cloudscale",
"rev": "v5.0.2",
"rev": "v5.1.0",
"spdx": "MIT",
"vendorHash": "sha256-WnVdJk74nrCHeP+Y6xdZZTDdfVIyk9TDan5cUU2O//8="
"vendorHash": "sha256-KFax77RX487buIewsrUpe4cFJiCguoahuYhHJqH6edE="
},
"constellix_constellix": {
"deleteVendor": true,
@@ -706,13 +706,13 @@
"vendorHash": null
},
"hetznercloud_hcloud": {
"hash": "sha256-2dKJLOhOkCKsAgjapmF0NvupszhILt+1lSH9TRqH44s=",
"hash": "sha256-oU5XdhAl8/YEIEOF6TxpNEyffLYMrOgWv1D6oJNzJ8Q=",
"homepage": "https://registry.terraform.io/providers/hetznercloud/hcloud",
"owner": "hetznercloud",
"repo": "terraform-provider-hcloud",
"rev": "v1.62.0",
"rev": "v1.63.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-fWnf2l9a7bzXtofA+Aow6F17K+slpMpXEYZPuqDNwfg="
"vendorHash": "sha256-L+T14UUCEUDbpd8UzKAsDzhpXKTmeUwC1XMnwWK4Z8Y="
},
"huaweicloud_huaweicloud": {
"hash": "sha256-CtqPtXccE6I+yDj/7XbjbACMwCGMv+pSEIa5DVh+AGo=",

View File

@@ -8,9 +8,10 @@
self,
lib,
fetchurl,
undmg,
makeWrapper,
writeScript,
writeShellScript,
brotli,
python3,
runCommand,
branch,
@@ -34,7 +35,45 @@ let
enabledDiscordModsCount = builtins.length (lib.filter (x: x) discordMods);
inherit (source) version;
src = fetchurl { inherit (source) url hash; };
src = fetchurl { inherit (source.distro) url hash; };
moduleSrcs = lib.mapAttrs (_: mod: fetchurl { inherit (mod) url hash; }) source.modules;
moduleVersions = lib.mapAttrs (_: mod: mod.version) source.modules;
configDirName = lib.replaceStrings [ " " ] [ "" ] (lib.toLower binaryName);
fixDistroSymlinks = writeScript "discord-fix-distro-symlinks.py" ''
#!${python3.interpreter}
import pathlib
import sys
import tarfile
with tarfile.open(sys.argv[1]) as tar:
for member in tar:
if not member.issym():
continue
parts = pathlib.PurePosixPath(member.name).parts[1:]
if not parts:
continue
path = pathlib.Path(sys.argv[2], *parts)
path.unlink(missing_ok=True)
path.symlink_to(member.linkname)
'';
stageModules = writeShellScript "discord-stage-modules" ''
store_modules="$1"
modules_dir="$HOME/Library/Application Support/${configDirName}/${version}/modules"
if [ ! -f "$modules_dir/installed.json" ]; then
mkdir -p "$modules_dir"
for m in ${lib.concatStringsSep " " (lib.attrNames moduleSrcs)}; do
ln -sfn "$store_modules/$m" "$modules_dir/$m"
done
echo '${builtins.toJSON (lib.mapAttrs (_: mod: { installedVersion = mod; }) moduleVersions)}' \
> "$modules_dir/installed.json"
fi
'';
disableBreakingUpdates =
runCommand "disable-breaking-updates.py"
@@ -62,22 +101,47 @@ stdenv.mkDerivation {
;
nativeBuildInputs = [
undmg
brotli
makeWrapper
];
sourceRoot = ".";
dontUnpack = true;
installPhase = ''
runHook preInstall
mkdir -p $out/Applications
cp -r "${desktopName}.app" $out/Applications
extractDistro() {
local src="$1"
local dest="$2"
local tarball
tarball=$(mktemp)
brotli -d < "$src" > "$tarball"
tar xf "$tarball" --strip-components=1 -C "$dest"
# Discord's distro tarballs store symlinks with mode 000, which makes
# them unreadable on Darwin. Recreate them with normal permissions.
${fixDistroSymlinks} "$tarball" "$dest"
rm "$tarball"
}
extractDistro "$src" "$out/Applications"
${lib.concatStringsSep "\n" (
lib.mapAttrsToList (name: src: ''
mkdir -p "$out/Applications/${desktopName}.app/Contents/Resources/modules/${name}"
extractDistro ${src} "$out/Applications/${desktopName}.app/Contents/Resources/modules/${name}"
'') moduleSrcs
)}
# wrap executable to $out/bin
mkdir -p $out/bin
makeWrapper "$out/Applications/${desktopName}.app/Contents/MacOS/${binaryName}" "$out/bin/${binaryName}" \
--run ${lib.getExe disableBreakingUpdates} \
--run "${stageModules} $out/Applications/${desktopName}.app/Contents/Resources/modules" \
--add-flags ${lib.escapeShellArg commandLineArgs}
runHook postInstall

View File

@@ -87,31 +87,13 @@ let
];
enabledDiscordModsCount = builtins.length (lib.filter (x: x) discordMods);
# Starting with discord-development 0.0.235, the linux tarball ships only a
# small `updater_bootstrap` ELF that downloads the real app at first launch
#
# That binary always fetches the latest version from Discord's CDN with no way
# to pin, making the build impure and the nix version a lie
#
# Instead we fetch the app directly from the distributions API at build time:
# https://updates.discord.com/distributions/app/manifests/latest?channel=...
# The host + module distros are brotli-compressed tars on Discord's CDN at
# predictable URLs with SHA256 hashes in the manifest
isDistro = source.kind == "distro";
inherit (source) version;
src =
if isDistro then
fetchurl { inherit (source.distro) url hash; }
else
fetchurl { inherit (source) url hash; };
src = fetchurl { inherit (source.distro) url hash; };
moduleSrcs = lib.optionalAttrs isDistro (
lib.mapAttrs (_: mod: fetchurl { inherit (mod) url hash; }) source.modules
);
moduleSrcs = lib.mapAttrs (_: mod: fetchurl { inherit (mod) url hash; }) source.modules;
moduleVersions = lib.optionalAttrs isDistro (lib.mapAttrs (_: mod: mod.version) source.modules);
moduleVersions = lib.mapAttrs (_: mod: mod.version) source.modules;
libPath = lib.makeLibraryPath (
[
@@ -218,8 +200,8 @@ stdenv.mkDerivation (finalAttrs: {
libxshmfence
wrapGAppsHook3
makeShellWrapper
]
++ lib.optionals isDistro [ brotli ];
brotli
];
dontWrapGApps = true;
@@ -228,20 +210,20 @@ stdenv.mkDerivation (finalAttrs: {
libgbm
nspr
nss
]
# The new distro layout ships prebuilt `.node` modules:
# discord_dispatch is linked against openssl 1.1, discord_voice against libpulseaudio.
# Ignore the missing dependency on insecure openssl_1_1: discord_dispatch is
# effectively unused in practice.
++ lib.optionals isDistro [ libpulseaudio ];
# The distro layout ships prebuilt `.node` modules:
# discord_dispatch is linked against openssl 1.1, discord_voice against libpulseaudio.
# Ignore the missing dependency on insecure openssl_1_1: discord_dispatch is
# effectively unused in practice.
libpulseaudio
];
strictDeps = true;
dontUnpack = isDistro;
dontUnpack = true;
inherit libPath;
autoPatchelfIgnoreMissingDeps = lib.optionals isDistro [
autoPatchelfIgnoreMissingDeps = [
"libssl.so.1.1"
"libcrypto.so.1.1"
];
@@ -250,41 +232,22 @@ stdenv.mkDerivation (finalAttrs: {
runHook preInstall
mkdir -p $out/{bin,opt/${binaryName},share/icons/hicolor/256x256/apps}
''
+ (
if isDistro then
''
# Distro layout (currently discord-ptb, discord-canary and discord-development):
#
# The host distro is a brotli-compressed tar with all files under a `files/`
# prefix (the channel binary, libffmpeg.so, resources/, etc). Module distros
# follow the same format with module contents under `files/`
#
# The module directory layout must match what Discord's node runtime
# expects: modules/<name>/ (the moduleUpdater extracts zips into
# path.join(moduleInstallPath, moduleName) see processUnzipQueue)
brotli -d < $src | tar xf - --strip-components=1 -C $out/opt/${binaryName}
chmod +x $out/opt/${binaryName}/${binaryName}
# The host distro is a brotli-compressed tar with all files under a `files/`
# prefix (the channel binary, libffmpeg.so, resources/, etc). Module distros
# follow the same format with module contents under `files/`
brotli -d < $src | tar xf - --strip-components=1 -C $out/opt/${binaryName}
chmod +x $out/opt/${binaryName}/${binaryName}
# Extract native modules
${lib.concatStringsSep "\n" (
lib.mapAttrsToList (name: src: ''
mkdir -p $out/opt/${binaryName}/modules/${name}
brotli -d < ${src} | tar xf - --strip-components=1 -C $out/opt/${binaryName}/modules/${name}
'') moduleSrcs
)}
''
else
''
# Tarball layout (stable): the tarball unpacks into a
# directory containing the channel binary directly
mv * $out/opt/${binaryName}
chmod +x $out/opt/${binaryName}/${binaryName}
''
)
+ ''
# The module directory layout must match what Discord's node runtime
# expects: modules/<name>/ (the moduleUpdater extracts zips into
# path.join(moduleInstallPath, moduleName) see processUnzipQueue)
${lib.concatStringsSep "\n" (
lib.mapAttrsToList (name: src: ''
mkdir -p $out/opt/${binaryName}/modules/${name}
brotli -d < ${src} | tar xf - --strip-components=1 -C $out/opt/${binaryName}/modules/${name}
'') moduleSrcs
)}
wrapProgramShell $out/opt/${binaryName}/${binaryName} \
"''${gappsWrapperArgs[@]}" \
@@ -297,7 +260,7 @@ stdenv.mkDerivation (finalAttrs: {
--prefix XDG_DATA_DIRS : "${gtk3}/share/gsettings-schemas/${gtk3.name}/" \
--prefix LD_LIBRARY_PATH : ${finalAttrs.libPath}:$out/opt/${binaryName} \
${lib.strings.optionalString disableUpdates "--run ${lib.getExe disableBreakingUpdates}"} \
${lib.strings.optionalString isDistro ''--run "${stageModules} $out/opt/${binaryName}/modules"''} \
--run "${stageModules} $out/opt/${binaryName}/modules" \
--add-flags ${lib.escapeShellArg commandLineArgs}
ln -s $out/opt/${binaryName}/${binaryName} $out/bin/

View File

@@ -1,242 +1,642 @@
{
"linux-canary": {
"distro": {
"hash": "sha256-4xA+Kh6UiwtoUt5A2kPI5rcbSEc/SoZzJbwFdjMNVpE=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.962/full.distro"
"hash": "sha256-rZ9gCLa8f0k19Dnvxl+/DbBf7zyDciE0WgBxWKLBzQc=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.1033/full.distro"
},
"kind": "distro",
"modules": {
"discord_cloudsync": {
"hash": "sha256-3dcVKm/Sz9bqhEm8xVMtRcWrU6JWtv2Dh8oz/3K489E=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.962/discord_cloudsync/1/full.distro",
"hash": "sha256-/HimiJX86kCnWTPqhvKQnNLFJUmQ7iezvi2n0u/r/Ho=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.1033/discord_cloudsync/1/full.distro",
"version": 1
},
"discord_desktop_core": {
"hash": "sha256-7zcFkh3f9BVjHlevCkZXUFNdeLCkM2+sysuSUyPcQlA=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.962/discord_desktop_core/1/full.distro",
"hash": "sha256-dvzQYjcqPvIGS6OSqNTvaWBUUFtnxfoYq6yLEJUhRts=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.1033/discord_desktop_core/1/full.distro",
"version": 1
},
"discord_dispatch": {
"hash": "sha256-TD1vWHt4y3xkAEc/BV2HZe3tNdP0PTZsXhVeeHvRAU4=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.962/discord_dispatch/1/full.distro",
"hash": "sha256-dHqfDXW60NektT+Su2KYg4FaqH49ddrCQlncdkAltuo=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.1033/discord_dispatch/1/full.distro",
"version": 1
},
"discord_erlpack": {
"hash": "sha256-nv6kKT+ZWfwkH4BvOWtjF8VZoznzYRN0hK8kiTbcX/I=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.962/discord_erlpack/1/full.distro",
"hash": "sha256-1npmkifvbGXFtdajGRKOWI58PHv3UOpmoidgJu+jbtw=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.1033/discord_erlpack/1/full.distro",
"version": 1
},
"discord_game_utils": {
"hash": "sha256-Ru8zXxDGwHrpMnnraAVR0Z7jRA4PRLHX7pBz8jctar8=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.962/discord_game_utils/1/full.distro",
"hash": "sha256-rhzTUbNDM9XPWWwOo5hQk12DWcP32KCiMaHPEKtSjac=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.1033/discord_game_utils/1/full.distro",
"version": 1
},
"discord_krisp": {
"hash": "sha256-zkhTv+8qzyrZBHpZeCzJX6z8HCK0M4Jt6Kr+InbVT80=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.962/discord_krisp/1/full.distro",
"hash": "sha256-H87TILw5hKxfuqUAz5f3/XL9NMGAgnpDS6u0x49pkgE=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.1033/discord_krisp/1/full.distro",
"version": 1
},
"discord_modules": {
"hash": "sha256-j5UE4ZugIF4HTsOgxK3Dfp0WP3Sya1fbDjERxGu2qSM=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.962/discord_modules/1/full.distro",
"hash": "sha256-y0svIIpZtF8d3L/EAEUCQ99J5p5/zpssXNuzYlJ8N6I=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.1033/discord_modules/1/full.distro",
"version": 1
},
"discord_rpc": {
"hash": "sha256-HaUt+G05Im2uNkUB9Ry1c6X/iadc7xLrcEgJCVgpgsY=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.962/discord_rpc/1/full.distro",
"hash": "sha256-telD7FdWiZQQ56fjnZJMSSpxFa3YyWQy2G+OBhuEJ9g=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.1033/discord_rpc/1/full.distro",
"version": 1
},
"discord_spellcheck": {
"hash": "sha256-8cOwisLqnxGsbqPYStBAaKEaALIM0M5d3RPLtoHxClw=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.962/discord_spellcheck/1/full.distro",
"hash": "sha256-oZ3H/uFZJybt+ZrRzYzD2tv6rSZwvYjRH3LbhHaz+uA=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.1033/discord_spellcheck/1/full.distro",
"version": 1
},
"discord_utils": {
"hash": "sha256-hfQu3fT9ON0j8xEAwCRY7/ALYYq/a70W/8HeT3KhZF0=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.962/discord_utils/1/full.distro",
"hash": "sha256-4sLz1RBus6BWq7Eb+Tf0XBy0QDFRfe5Mr3Zb4IwDbt0=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.1033/discord_utils/1/full.distro",
"version": 1
},
"discord_voice": {
"hash": "sha256-JJXt5wHat6AtxW1GIzsPnMHJPzX1DlPgB3kDcg9Bnts=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.962/discord_voice/1/full.distro",
"hash": "sha256-su7qGFOH1fL/zkqbE97NDlSrxRX1aWWT/sfehCIZIvM=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.1033/discord_voice/1/full.distro",
"version": 1
},
"discord_zstd": {
"hash": "sha256-PMlqdAI44AngVh75Eq66zHLEoJkI0262FcFUffPykCk=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.962/discord_zstd/1/full.distro",
"hash": "sha256-Z8hxOdCKyJGt3DBAQ+mkKf37LcQrdkyV79dmgD272Qs=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/linux/x64/1.0.1033/discord_zstd/1/full.distro",
"version": 1
}
},
"version": "1.0.962"
"version": "1.0.1033"
},
"linux-development": {
"distro": {
"hash": "sha256-6MLiRO2GYXkBRQjzOwmKHVqMqGsVjk0E3ocvdYyg8qs=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.976/full.distro"
"hash": "sha256-d7G9+oIKiao7uRL8gsRk2LxzAG5I2J6BcyCPXMOeHw8=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.980/full.distro"
},
"kind": "distro",
"modules": {
"discord_cloudsync": {
"hash": "sha256-6yEFPNHqs5Mk+1V2x4R/ZwFgwb2Z+O9iOrX78/G3ynM=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.976/discord_cloudsync/1/full.distro",
"hash": "sha256-YUa4415UU7/ZqxkOJfbxcoakgWXNj7ilGkKSeK8PkcY=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.980/discord_cloudsync/1/full.distro",
"version": 1
},
"discord_desktop_core": {
"hash": "sha256-Z82Y9I4brUOvGiZhgL5V+wXRFfDH/XazWJG3OMYyo3s=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.976/discord_desktop_core/1/full.distro",
"hash": "sha256-pBEVWEKZjAf5SBYeQkO8WUkvFHZ7MyVOmxmX9EveCM0=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.980/discord_desktop_core/1/full.distro",
"version": 1
},
"discord_dispatch": {
"hash": "sha256-MTjgc8SfL7i4O+QkYQu0Os04iAM1x85AAZxuooI5Oog=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.976/discord_dispatch/1/full.distro",
"hash": "sha256-oRgIGU86rvW6QVF7WCxFC7aVcYTuIw4JTtVKP55Rse8=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.980/discord_dispatch/1/full.distro",
"version": 1
},
"discord_erlpack": {
"hash": "sha256-JQAgkIpev2+1dlfPW/bg/Iek/cL3+V92IpZIa8e+Fp8=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.976/discord_erlpack/1/full.distro",
"hash": "sha256-SJzSCh4NVt8U1ebt0zSvoquk1FCbyMeHKSxFLlIt0L0=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.980/discord_erlpack/1/full.distro",
"version": 1
},
"discord_game_utils": {
"hash": "sha256-ixKdUlXhDVmk3P41gFixSpPJCMnd3c/yLQF1J7DYI+M=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.976/discord_game_utils/1/full.distro",
"hash": "sha256-OM2v5ps8X8h4UG9NOLRFgEm+BVnrEufhOYETYDD9HQQ=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.980/discord_game_utils/1/full.distro",
"version": 1
},
"discord_krisp": {
"hash": "sha256-UJmBXQm0SXbCOjtJN72BZJCViULhpJgc0rgqDrhhNR0=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.976/discord_krisp/1/full.distro",
"hash": "sha256-dLLnwg82KPtDM0VI7xG2S/DF5t9nziB6LQennSpqsOo=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.980/discord_krisp/1/full.distro",
"version": 1
},
"discord_modules": {
"hash": "sha256-+TH9x91upIuX9nwvpF9pX4w58YRqu6+hbF1RSyiykdM=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.976/discord_modules/1/full.distro",
"hash": "sha256-gdH5vvVhTkdE0uMDaoN+3AJTMDe9dfILcUHjSHlwBEk=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.980/discord_modules/1/full.distro",
"version": 1
},
"discord_rpc": {
"hash": "sha256-cGK1qN8jUiw2l9KNbb7eucWWPw191AHzh/4C6T8gI44=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.976/discord_rpc/1/full.distro",
"hash": "sha256-ZzOiBXsAJhpevHteLRUvUzRKpCtGvv69voi2RCar7YE=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.980/discord_rpc/1/full.distro",
"version": 1
},
"discord_spellcheck": {
"hash": "sha256-b/X24WJi2Mi0x7Ynqphmtr6FSYUMSR9dDPPUF/k/TN8=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.976/discord_spellcheck/1/full.distro",
"hash": "sha256-FUcWLGRwAXuf9QyGtJwneOCF/S6FWjCtS4b1P5g3eaI=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.980/discord_spellcheck/1/full.distro",
"version": 1
},
"discord_utils": {
"hash": "sha256-+dslIrgHH5r7sz95Ixb+5DDOQA8PEr4BcqkJTchf3WQ=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.976/discord_utils/1/full.distro",
"hash": "sha256-8evbMbvbKDoaL/Q2JebHQCSgcMkfhan1b3eEpYU9gPI=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.980/discord_utils/1/full.distro",
"version": 1
},
"discord_voice": {
"hash": "sha256-7rg5Ct/BPJaOak0HOeTuYMbfdhHBvI4qML1nnYzZ+IE=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.976/discord_voice/1/full.distro",
"hash": "sha256-HZoqUGlUySWHzBS0fOrM98ycW62n8xTAqn/KeQ1A4tc=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.980/discord_voice/1/full.distro",
"version": 1
},
"discord_zstd": {
"hash": "sha256-XKJNd/9l3PJX1GTHT0hvsB9pqI6oDkAvay2L3bOIk/0=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.976/discord_zstd/1/full.distro",
"hash": "sha256-iFvOlG14dVyDkF9c8q4L8JnxtGNiZCRjy09Lt5FJj/w=",
"url": "https://development.dl2.discordapp.net/distro/app/development/linux/x64/1.0.980/discord_zstd/1/full.distro",
"version": 1
}
},
"version": "1.0.976"
"version": "1.0.980"
},
"linux-ptb": {
"distro": {
"hash": "sha256-dVLGOL//a1mCw0NyekrCemfu9u7pA9t1+UnQ8zmMCwI=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.188/full.distro"
"hash": "sha256-rPe3N7n3QkYa+pS4ZKRfeCnhK/MnkNrJIhr51XPY9XE=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.189/full.distro"
},
"kind": "distro",
"modules": {
"discord_cloudsync": {
"hash": "sha256-cLqmwjFWUnRnBY3iEqpyv2mtuHI4TanGxbI1cT4V9Ic=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.188/discord_cloudsync/1/full.distro",
"hash": "sha256-T/SapvIHT7X8FFgMolRfcgKe6cL3ldQX4goiWlWaW3Q=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.189/discord_cloudsync/1/full.distro",
"version": 1
},
"discord_desktop_core": {
"hash": "sha256-UmAYyAVVwVZINIobQejXSEK01C/oQJBjxBQ1p45AMOg=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.188/discord_desktop_core/1/full.distro",
"hash": "sha256-e4GrIxx0KpQ9qAx4O4rO8jPV17U7XxtRY5Ox72SSmgg=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.189/discord_desktop_core/1/full.distro",
"version": 1
},
"discord_dispatch": {
"hash": "sha256-/WfqrWgqCXSUodMqlhgiHTQAiRSfg1dfA4c3CxKZuJk=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.188/discord_dispatch/1/full.distro",
"hash": "sha256-gZoKMgS/0c0llQWPIc0PmJiqzoV75hdJ6pw3whsmrwU=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.189/discord_dispatch/1/full.distro",
"version": 1
},
"discord_erlpack": {
"hash": "sha256-MXBUoaeC1Refb80mqyZQ6vE8lRV04K5yZbhHMN5XuTY=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.188/discord_erlpack/1/full.distro",
"hash": "sha256-l8xKWZ8kNI6gdiMzEAh0CGAM6Xa1w0Py7znGElZT+a4=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.189/discord_erlpack/1/full.distro",
"version": 1
},
"discord_game_utils": {
"hash": "sha256-P4s5/5aeLjzaD0HwHlpHCWaiVlsq+TFlfEqfCym4rH0=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.188/discord_game_utils/1/full.distro",
"hash": "sha256-cacgFbMHO5HCiwpOCyrB39FVqLFZ7tP1Pp0wr8Q3C80=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.189/discord_game_utils/1/full.distro",
"version": 1
},
"discord_krisp": {
"hash": "sha256-hwLHumM78aJv/OSX1LAxqpUGZmiVWGg2Sc6SmOdg+Oc=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.188/discord_krisp/1/full.distro",
"hash": "sha256-621qH2NG4tkligBd4253HFIZiNefxAeQqYrSmjYG6v8=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.189/discord_krisp/1/full.distro",
"version": 1
},
"discord_modules": {
"hash": "sha256-UGS9Znl5QWiQ5nG2I2GxUmQ3sRaaXcCyPPzh3AjAyQA=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.188/discord_modules/1/full.distro",
"hash": "sha256-xEVg3yscqnLzK3sQdzbmDDG0vFVWxabjyAHRQf5t0pY=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.189/discord_modules/1/full.distro",
"version": 1
},
"discord_rpc": {
"hash": "sha256-izqFS9ePjv+4VTqrrnwdlNCdpQik5Y7D3pmznP74ULA=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.188/discord_rpc/1/full.distro",
"hash": "sha256-p20egYYvTbGGmZD0bF8MqK2wDa5tWKpf/zFX4HfSZ9U=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.189/discord_rpc/1/full.distro",
"version": 1
},
"discord_spellcheck": {
"hash": "sha256-ykwur5DajvoAvNyhTb3wbtduv2NgLhrEEKKI2O/CqC8=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.188/discord_spellcheck/1/full.distro",
"hash": "sha256-7p/cTlPCyFmoA6MiSsxDsbPeUCm32h+UdHBhQafHpk0=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.189/discord_spellcheck/1/full.distro",
"version": 1
},
"discord_utils": {
"hash": "sha256-HKHbGqYK8AyJu+PnVaZIv+HJr6pc6LtnnXI29rSFPmI=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.188/discord_utils/1/full.distro",
"hash": "sha256-WoDot6uM79syGwfaYLdV70zYMKJYLQXcWhddf6rg0mk=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.189/discord_utils/1/full.distro",
"version": 1
},
"discord_voice": {
"hash": "sha256-HL/eZQpc0r+5N7LBFZdUVZWQT4nUtX3gBZlOPR1pLfs=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.188/discord_voice/1/full.distro",
"hash": "sha256-HHOoCOSzfa/EpFPmi7rSluI2iF7YCAxhuN4QMNTCfEg=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.189/discord_voice/1/full.distro",
"version": 1
},
"discord_zstd": {
"hash": "sha256-P/8cVdak4Sz7SfHzi8DJPgZi9LRu6FWWI9hjoe8LY8o=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.188/discord_zstd/1/full.distro",
"hash": "sha256-le4KCmo2owtka6k/KGIkE8mntYZQIkfmgpSHgBRFq0c=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/linux/x64/1.0.189/discord_zstd/1/full.distro",
"version": 1
}
},
"version": "1.0.188"
"version": "1.0.189"
},
"linux-stable": {
"hash": "sha256-N4gdcj8LYiXxvkbZhZyiWr375vaXt6JnwcoqLOKMsGg=",
"kind": "legacy",
"url": "https://stable.dl2.discordapp.net/apps/linux/0.0.134/discord-0.0.134.tar.gz",
"version": "0.0.134"
"distro": {
"hash": "sha256-RlQEGuQlnvISzvNAXtJAEaHSvC/8AhNcfEc8paV9JKA=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/linux/x64/1.0.137/full.distro"
},
"kind": "distro",
"modules": {
"discord_cloudsync": {
"hash": "sha256-9x/7+65hT5mcOOlUcSkWa7As+6Bxdv9vps/ZYgj+8TI=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/linux/x64/1.0.137/discord_cloudsync/1/full.distro",
"version": 1
},
"discord_desktop_core": {
"hash": "sha256-9ocCcvhubWXUCwPewJdKolt0CRbunzVIjWUsser1NA4=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/linux/x64/1.0.137/discord_desktop_core/1/full.distro",
"version": 1
},
"discord_dispatch": {
"hash": "sha256-3Hqi3/5zfmDheMIbWN9l8qb/bNo9/pzfxQqYureCfMI=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/linux/x64/1.0.137/discord_dispatch/1/full.distro",
"version": 1
},
"discord_erlpack": {
"hash": "sha256-lSR9PV2nG5+vgNqpjUrC8ygKv8bfvUk+i+F7nCEjV1Q=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/linux/x64/1.0.137/discord_erlpack/1/full.distro",
"version": 1
},
"discord_game_utils": {
"hash": "sha256-jf3Gf95QmZVjzAB0Ui2eSErP58hNd+YRyyYKe9xtQlQ=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/linux/x64/1.0.137/discord_game_utils/1/full.distro",
"version": 1
},
"discord_krisp": {
"hash": "sha256-jrEaudW1wI4dKIvZd+1/CfybdWainF9TApptzffxQiI=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/linux/x64/1.0.137/discord_krisp/1/full.distro",
"version": 1
},
"discord_modules": {
"hash": "sha256-jN+R1e8aDVXyq6J+1+h8Hienli7pj+xhZU8PUKCtXn8=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/linux/x64/1.0.137/discord_modules/1/full.distro",
"version": 1
},
"discord_rpc": {
"hash": "sha256-f/rSx/dFSmORLVPNvG5iqJb1KN5CBchXEUzwJwP21zU=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/linux/x64/1.0.137/discord_rpc/1/full.distro",
"version": 1
},
"discord_spellcheck": {
"hash": "sha256-t1Y8DGpVQ1pzCz6tScaTnY9KvxSnUnIk26twTVupdX4=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/linux/x64/1.0.137/discord_spellcheck/1/full.distro",
"version": 1
},
"discord_utils": {
"hash": "sha256-FH0Fb4M+L+WETHQBJuFqbS/h0nLlWTTTnV7lp1lqcCU=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/linux/x64/1.0.137/discord_utils/1/full.distro",
"version": 1
},
"discord_voice": {
"hash": "sha256-X5u3XuXdco84LG0lZS0uAgks0XjesxOltYGn0XP3akQ=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/linux/x64/1.0.137/discord_voice/1/full.distro",
"version": 1
},
"discord_zstd": {
"hash": "sha256-tZgzaVh2/CrvtYPOVJE3vrZuWbs9JxQSi74KeNf0mJw=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/linux/x64/1.0.137/discord_zstd/1/full.distro",
"version": 1
}
},
"version": "1.0.137"
},
"osx-canary": {
"hash": "sha256-tR52aLUTW5iLzOQnXVS6muqsu44rXplHeXNKsR3u4Sw=",
"kind": "legacy",
"url": "https://canary.dl2.discordapp.net/apps/osx/0.0.1088/DiscordCanary.dmg",
"version": "0.0.1088"
"distro": {
"hash": "sha256-wQlaOR2PYbfKl4b6kVeM1Uy8dkgXMYUUcl20lAD0xSQ=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/osx/universal/0.0.1102/full.distro"
},
"kind": "distro",
"modules": {
"discord_cloudsync": {
"hash": "sha256-CrGlifM5ueOBujGd/QOJnvDYMwJaldMqS5BVxLYuyyM=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/osx/universal/0.0.1102/discord_cloudsync/1/full.distro",
"version": 1
},
"discord_desktop_core": {
"hash": "sha256-6d3A2/BZxN6Zj0G1g+IP0gtqRlxUhs9LZ9lvZIY2a9A=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/osx/universal/0.0.1102/discord_desktop_core/1/full.distro",
"version": 1
},
"discord_dispatch": {
"hash": "sha256-heZgQ4S8Adc4avG2mynZOGe6yf5TELJyZB6WK8Y/ZmY=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/osx/universal/0.0.1102/discord_dispatch/1/full.distro",
"version": 1
},
"discord_erlpack": {
"hash": "sha256-As8c8MJ7/cGpUD+vTwTSXhFLlmMLdfpj9HkPxj8vDRk=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/osx/universal/0.0.1102/discord_erlpack/1/full.distro",
"version": 1
},
"discord_game_utils": {
"hash": "sha256-wa7oeH1lh/wC9N8LUYFhns5J4wEzG60LH+cbJnvRhD0=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/osx/universal/0.0.1102/discord_game_utils/1/full.distro",
"version": 1
},
"discord_intents": {
"hash": "sha256-2aiIIKV2x60aBDbtnjPzWHINtOCiLvpGSPakSv1ljCU=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/osx/universal/0.0.1102/discord_intents/1/full.distro",
"version": 1
},
"discord_krisp": {
"hash": "sha256-wfB8/FEDm9NLEZsPmOckGY7KW6pv2GECIvyCHumJF9w=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/osx/universal/0.0.1102/discord_krisp/2/full.distro",
"version": 2
},
"discord_ml": {
"hash": "sha256-Ha32zoNYXG/j8tvW1EKWXi0aNXKNsDgu8QVdyCSgrXk=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/osx/universal/0.0.1102/discord_ml/1/full.distro",
"version": 1
},
"discord_modules": {
"hash": "sha256-p8TsMEBjLr32FhoySty10Y8gk+23buKbf2rW/CUZa0o=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/osx/universal/0.0.1102/discord_modules/1/full.distro",
"version": 1
},
"discord_notifications": {
"hash": "sha256-c0UNFWEKjwP8SJsARnXMuwZgCRAVUcxtOZSPz3KbAqY=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/osx/universal/0.0.1102/discord_notifications/1/full.distro",
"version": 1
},
"discord_rpc": {
"hash": "sha256-pLbJODfGx51Ysp58S7aIdZhIvi6an0+BPqHkuYXOvDM=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/osx/universal/0.0.1102/discord_rpc/1/full.distro",
"version": 1
},
"discord_spellcheck": {
"hash": "sha256-TiXMgJ2tLVKEKQFtJ2DG4/pvDDWfGJZo0wiZ8hP37yc=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/osx/universal/0.0.1102/discord_spellcheck/1/full.distro",
"version": 1
},
"discord_utils": {
"hash": "sha256-vkPu6xaH6uZXummgs1zl9k8S5roMJi4BfXI/GxzaJJw=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/osx/universal/0.0.1102/discord_utils/1/full.distro",
"version": 1
},
"discord_voice": {
"hash": "sha256-+8itKyOGtocpt3pUE/qwsemZmUpqZ4jrkjrDzAygi5Q=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/osx/universal/0.0.1102/discord_voice/4/full.distro",
"version": 4
},
"discord_webauthn": {
"hash": "sha256-bKVnWFyBTwTAbYZNb2OvOXEZZsqrjM2pAC/9LflNW7M=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/osx/universal/0.0.1102/discord_webauthn/1/full.distro",
"version": 1
},
"discord_zstd": {
"hash": "sha256-VDckm6+FUaa5OidWc9L0jfP93p/siSOtoFbTnB9sRh0=",
"url": "https://canary.dl2.discordapp.net/distro/app/canary/osx/universal/0.0.1102/discord_zstd/1/full.distro",
"version": 1
}
},
"version": "0.0.1102"
},
"osx-development": {
"hash": "sha256-gyZ2H9dsGYRlkPtRSE7hwRfFl6sr4pK2kB6Jq/51dhE=",
"kind": "legacy",
"url": "https://development.dl2.discordapp.net/apps/osx/1.0.982/DiscordDevelopment.dmg",
"version": "1.0.982"
"distro": {
"hash": "sha256-KuvWcUPFXfj4QW3K8IGS8E0BiffEEMknncjxbMCkvTI=",
"url": "https://development.dl2.discordapp.net/distro/app/development/osx/universal/1.0.987/full.distro"
},
"kind": "distro",
"modules": {
"discord_cloudsync": {
"hash": "sha256-vX0ZzFkcIJGlZ6CVixrc1U1LGDAszZhexXSWFtbSVpk=",
"url": "https://development.dl2.discordapp.net/distro/app/development/osx/universal/1.0.987/discord_cloudsync/1/full.distro",
"version": 1
},
"discord_desktop_core": {
"hash": "sha256-m/+55zUpSXI/nwZKMaIknAzDsYlnCIcxyGoSeLafDEM=",
"url": "https://development.dl2.discordapp.net/distro/app/development/osx/universal/1.0.987/discord_desktop_core/1/full.distro",
"version": 1
},
"discord_dispatch": {
"hash": "sha256-vvofUseRpHi4wMMbOaM2mI8eYYrwlI1F6dfKyZX8jvU=",
"url": "https://development.dl2.discordapp.net/distro/app/development/osx/universal/1.0.987/discord_dispatch/1/full.distro",
"version": 1
},
"discord_erlpack": {
"hash": "sha256-D9/lpVfwXKj26dMrreSLBPaND/4iCMmC9/u3+T1NVPE=",
"url": "https://development.dl2.discordapp.net/distro/app/development/osx/universal/1.0.987/discord_erlpack/1/full.distro",
"version": 1
},
"discord_game_utils": {
"hash": "sha256-vsAIH6YnxbXAiDqDeeLSuinZLmLn+3D6mbdRJb5L99Y=",
"url": "https://development.dl2.discordapp.net/distro/app/development/osx/universal/1.0.987/discord_game_utils/1/full.distro",
"version": 1
},
"discord_intents": {
"hash": "sha256-1JO4nwtiduv+JZqoPparHV1dgjPVKhYeWzDzuUzWTTs=",
"url": "https://development.dl2.discordapp.net/distro/app/development/osx/universal/1.0.987/discord_intents/1/full.distro",
"version": 1
},
"discord_krisp": {
"hash": "sha256-1oO+B/78bZhlQfRl1V1PHH9zMWJb+2mi2DlVK3NCmVk=",
"url": "https://development.dl2.discordapp.net/distro/app/development/osx/universal/1.0.987/discord_krisp/1/full.distro",
"version": 1
},
"discord_ml": {
"hash": "sha256-RunRar9d7lbF9PkOmQwokmjgfFblc0u4pu2gQGtrc/E=",
"url": "https://development.dl2.discordapp.net/distro/app/development/osx/universal/1.0.987/discord_ml/1/full.distro",
"version": 1
},
"discord_modules": {
"hash": "sha256-vkz0ZWMFFatdrMgEWM16AMuWSaFSI+HFFzq3oP+3dJ4=",
"url": "https://development.dl2.discordapp.net/distro/app/development/osx/universal/1.0.987/discord_modules/1/full.distro",
"version": 1
},
"discord_notifications": {
"hash": "sha256-/h00K6D/bZBwea852GO+4+1w4oLDFQP7OlrTsupBcwc=",
"url": "https://development.dl2.discordapp.net/distro/app/development/osx/universal/1.0.987/discord_notifications/1/full.distro",
"version": 1
},
"discord_rpc": {
"hash": "sha256-3f7O1xyYd4XdOe4+RU1o6TCcwYA8VK4oC6/zlQHIWBE=",
"url": "https://development.dl2.discordapp.net/distro/app/development/osx/universal/1.0.987/discord_rpc/1/full.distro",
"version": 1
},
"discord_spellcheck": {
"hash": "sha256-j+rwWr+pq+Cg3NaaF8EoO31lUDt7Za6h/M033CJjaxQ=",
"url": "https://development.dl2.discordapp.net/distro/app/development/osx/universal/1.0.987/discord_spellcheck/1/full.distro",
"version": 1
},
"discord_utils": {
"hash": "sha256-nXryRxbYrJ1cO+wXGfu52oWPIxj5Efs6J4EQqeronrI=",
"url": "https://development.dl2.discordapp.net/distro/app/development/osx/universal/1.0.987/discord_utils/1/full.distro",
"version": 1
},
"discord_voice": {
"hash": "sha256-sEtDXKyrA5Y2yuHzHX06LJUx4zibt2tlZtXmVohyL6c=",
"url": "https://development.dl2.discordapp.net/distro/app/development/osx/universal/1.0.987/discord_voice/1/full.distro",
"version": 1
},
"discord_webauthn": {
"hash": "sha256-kFfptFhrbFkluiBmupcXasbSlq9ygbWkH9S4wTbG0rs=",
"url": "https://development.dl2.discordapp.net/distro/app/development/osx/universal/1.0.987/discord_webauthn/1/full.distro",
"version": 1
},
"discord_zstd": {
"hash": "sha256-2TuxeigNLFPe70njbSaBSmzHsTjb369o7mSxC9XpKVk=",
"url": "https://development.dl2.discordapp.net/distro/app/development/osx/universal/1.0.987/discord_zstd/1/full.distro",
"version": 1
}
},
"version": "1.0.987"
},
"osx-ptb": {
"hash": "sha256-WlygpcUv+CrmQdZyZ0t3EEb58oopHetbKQbKsLUdI1w=",
"kind": "legacy",
"url": "https://ptb.dl2.discordapp.net/apps/osx/0.0.231/DiscordPTB.dmg",
"version": "0.0.231"
"distro": {
"hash": "sha256-LWvTisilV3o7ndSkJylscpjRk/8e6HOG+sEqwss1Xz0=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/osx/universal/0.0.232/full.distro"
},
"kind": "distro",
"modules": {
"discord_cloudsync": {
"hash": "sha256-0TatK0N39jOtnuNPrZqIVvYRBkgieuWLGUnVffNfvIo=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/osx/universal/0.0.232/discord_cloudsync/1/full.distro",
"version": 1
},
"discord_desktop_core": {
"hash": "sha256-mtx5lpSiz/Yw3WfyaHYhetFcTrwH2xtm++23Yp8Zt3g=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/osx/universal/0.0.232/discord_desktop_core/1/full.distro",
"version": 1
},
"discord_dispatch": {
"hash": "sha256-8RcoOm4kw1nZaT3q4YY2SpsMOWojSVRuYA5xOJ8EaUE=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/osx/universal/0.0.232/discord_dispatch/1/full.distro",
"version": 1
},
"discord_erlpack": {
"hash": "sha256-8TDGUAxW5WortWglbmTz3nNWW0WoYL7GPjvgWX2pmoU=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/osx/universal/0.0.232/discord_erlpack/1/full.distro",
"version": 1
},
"discord_game_utils": {
"hash": "sha256-UC5CZ8p3WCEqMmmCD42jiG/7bYEz4rzBX7MDoHHz6Cw=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/osx/universal/0.0.232/discord_game_utils/1/full.distro",
"version": 1
},
"discord_intents": {
"hash": "sha256-xlJ4Y/JtIMNTlUk1kIBvZDBwlzWh5VSNvR4XdrX6k4s=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/osx/universal/0.0.232/discord_intents/1/full.distro",
"version": 1
},
"discord_krisp": {
"hash": "sha256-60GGDVDSWtWanNt0mI7YknvMp0MTt1G3UFgYqiS3GjM=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/osx/universal/0.0.232/discord_krisp/1/full.distro",
"version": 1
},
"discord_ml": {
"hash": "sha256-6Ok4E72wvwBQksVWlN/Jg4b9ejF1AUT8fCT1asiKeMM=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/osx/universal/0.0.232/discord_ml/1/full.distro",
"version": 1
},
"discord_modules": {
"hash": "sha256-JVWqNae2VkLcvZ0y95vhNwgohntziiNy0B+7ILvFu/A=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/osx/universal/0.0.232/discord_modules/1/full.distro",
"version": 1
},
"discord_notifications": {
"hash": "sha256-S9bZdYqI3I7dx2oSIokigivjNy6ftLgm63y+F2u717w=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/osx/universal/0.0.232/discord_notifications/1/full.distro",
"version": 1
},
"discord_rpc": {
"hash": "sha256-FGjHeX1p+TP+o74aVCqqO1LLhcxYwNBpaNa5SkRmbRo=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/osx/universal/0.0.232/discord_rpc/1/full.distro",
"version": 1
},
"discord_spellcheck": {
"hash": "sha256-Lu+cE+Ypla7d2yu26dEkg6lUvkqhc49ZilYCNM33GWw=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/osx/universal/0.0.232/discord_spellcheck/1/full.distro",
"version": 1
},
"discord_utils": {
"hash": "sha256-36eRP9D1M62vivqUBmT8Q69MV223M1tOmVCAoIyUE7o=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/osx/universal/0.0.232/discord_utils/1/full.distro",
"version": 1
},
"discord_voice": {
"hash": "sha256-HH4hoDBaWVPHSoSnUz3D+TS3unVFSS2cCZZ8QUKudE0=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/osx/universal/0.0.232/discord_voice/1/full.distro",
"version": 1
},
"discord_webauthn": {
"hash": "sha256-hWsS4gNEC+y5RWhw6yb3JzSydSFLvpZEAeS2OTTlt1o=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/osx/universal/0.0.232/discord_webauthn/1/full.distro",
"version": 1
},
"discord_zstd": {
"hash": "sha256-tgFVUfraQfI5M/5WTTU6TrvysQPuqHAhiQSo6BzSkp4=",
"url": "https://ptb.dl2.discordapp.net/distro/app/ptb/osx/universal/0.0.232/discord_zstd/1/full.distro",
"version": 1
}
},
"version": "0.0.232"
},
"osx-stable": {
"hash": "sha256-H+Odwt2Ry3C1+OMhVdr9PjAXOnI8vmsUkSBL8dieakc=",
"kind": "legacy",
"url": "https://stable.dl2.discordapp.net/apps/osx/0.0.387/Discord.dmg",
"version": "0.0.387"
"distro": {
"hash": "sha256-G5Ji8fsStgyhwx2XY+l5WUb9cMtIENAKv5k52s2g/3g=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/osx/universal/0.0.389/full.distro"
},
"kind": "distro",
"modules": {
"discord_cloudsync": {
"hash": "sha256-yGdWuaJplBkwUoLwd5uJFIWFF2XjyOwOWY3SJdmx1q0=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/osx/universal/0.0.389/discord_cloudsync/1/full.distro",
"version": 1
},
"discord_desktop_core": {
"hash": "sha256-97utI2ZNnFOCMxJHc7RRoXxZ2GzdFs8ll+N0Imr/LNM=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/osx/universal/0.0.389/discord_desktop_core/1/full.distro",
"version": 1
},
"discord_dispatch": {
"hash": "sha256-XwABjhRMMDKQsmHGeyzRveAxwJJWSIMIJoF8nJQ7SzA=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/osx/universal/0.0.389/discord_dispatch/1/full.distro",
"version": 1
},
"discord_erlpack": {
"hash": "sha256-4nz4TeACvEdhKZzlTMuSKN1uf9LWqm+ro4Gx/kt41Mg=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/osx/universal/0.0.389/discord_erlpack/1/full.distro",
"version": 1
},
"discord_game_utils": {
"hash": "sha256-wKF4difrMuX8m5NsUUVK9sdsBKiTQG1B+ckrBW6LTZQ=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/osx/universal/0.0.389/discord_game_utils/1/full.distro",
"version": 1
},
"discord_intents": {
"hash": "sha256-MHj9MtTcxFs3h2P5MfI/i8f2I64oZ2fKt+ByJPlVMLc=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/osx/universal/0.0.389/discord_intents/1/full.distro",
"version": 1
},
"discord_krisp": {
"hash": "sha256-XCCBJer4RPs/Nk+YKTH1BAVxSFu1XAJNeb5ai4uFaKU=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/osx/universal/0.0.389/discord_krisp/1/full.distro",
"version": 1
},
"discord_ml": {
"hash": "sha256-U1sRjCzeLFg7j/MR6AsC76Ib6ULXs/RqN6FSB3IzCdc=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/osx/universal/0.0.389/discord_ml/1/full.distro",
"version": 1
},
"discord_modules": {
"hash": "sha256-IElPJUwEz2QL0WDWCju8JR7Z81X3t92JHEXhs8NUF8k=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/osx/universal/0.0.389/discord_modules/1/full.distro",
"version": 1
},
"discord_notifications": {
"hash": "sha256-0+XuBfb0lhx3YUAqRRBEAHqDQJa2/8ebcZhnh821ltE=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/osx/universal/0.0.389/discord_notifications/1/full.distro",
"version": 1
},
"discord_rpc": {
"hash": "sha256-i0tChHCi1aSAXsieRg/rxKptU8R3zI3Wxmdxi1Til2s=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/osx/universal/0.0.389/discord_rpc/1/full.distro",
"version": 1
},
"discord_spellcheck": {
"hash": "sha256-MsSCA7Jdk+MeMpsFYcUSmGNbmfnZrTy3LbSUI7e9yOo=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/osx/universal/0.0.389/discord_spellcheck/1/full.distro",
"version": 1
},
"discord_utils": {
"hash": "sha256-2YStzx57sx666H/CTIvmdgTWw+tJOgICx8sY0zVERak=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/osx/universal/0.0.389/discord_utils/1/full.distro",
"version": 1
},
"discord_voice": {
"hash": "sha256-Tag4GSeN+1Y/LK69R4HOxMlFDE9BUg4/EcEDFVXI5Bk=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/osx/universal/0.0.389/discord_voice/1/full.distro",
"version": 1
},
"discord_webauthn": {
"hash": "sha256-ouEP2+k2xZpMxaLD6RiloL94faW4WsVcMFxWYTy7OW4=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/osx/universal/0.0.389/discord_webauthn/1/full.distro",
"version": 1
},
"discord_zstd": {
"hash": "sha256-zUyoJ3i1iYmBCRm6uFTo8QUKly3uDzL4xqebWQ7LH4k=",
"url": "https://stable.dl2.discordapp.net/distro/app/stable/osx/universal/0.0.389/discord_zstd/1/full.distro",
"version": 1
}
},
"version": "0.0.389"
}
}

View File

@@ -4,28 +4,16 @@
from dataclasses import asdict, dataclass, field
from enum import StrEnum
from typing import List
from subprocess import PIPE, Popen
import base64
import json
import urllib.request
import re
import os.path
SRC_NAME = "source"
VERSION_REGEX = re.compile(r"\/([\d.]+)\/")
class Platform(StrEnum):
LINUX = "linux"
MACOS = "osx"
def format_type(self):
if self.value == Platform.LINUX.value:
return "tar.gz"
elif self.value == Platform.MACOS.value:
return "dmg"
raise RuntimeError("Invalid platform")
class Branch(StrEnum):
STABLE = "stable"
@@ -35,8 +23,6 @@ class Branch(StrEnum):
class Kind(StrEnum):
# Single tarball or dmg fetched via discord.com/api/download redirect
LEGACY = "legacy"
# Brotli-compressed host + module distros from the distributions API
DISTRO = "distro"
@@ -57,50 +43,10 @@ def serialize_variant(variant: Variant) -> str:
return f"{variant.platform}-{variant.branch}"
def url_for_variant(variant: Variant) -> str:
return f"https://discord.com/api/download/{variant.branch.value}?platform={variant.platform.value}&format={variant.platform.format_type()}"
def distro_manifest_url_for_variant(variant: Variant) -> str:
return f"https://updates.discord.com/distributions/app/manifests/latest?channel={variant.branch.value}&platform={variant.platform.value}&arch=x64"
def fetch_redirect_url(url: str) -> str:
headers = {"user-agent": "Nixpkgs-Discord-Update-Script/0.0.0"}
# note that urllib follows redirects by default. So we can extract the final url from the response object
req = urllib.request.Request(url, headers=headers)
with urllib.request.urlopen(req) as response:
return response.url
def version_from_url(url: str) -> str:
matches = VERSION_REGEX.search(url)
assert matches, f"Url {url} must contain version number"
version = matches.group(1)
assert version
return version
def prefetch(url: str) -> str:
with Popen(["nix-prefetch-url", "--name", "source", url], stdout=PIPE) as p:
assert p.stdout
b32_hash = p.stdout.read().decode("utf-8").strip()
with Popen(
["nix-hash", "--to-sri", "--type", "sha256", b32_hash], stdout=PIPE
) as p:
assert p.stdout
sri_hash = p.stdout.read().decode("utf-8").strip()
return sri_hash
@dataclass
class LegacySource:
version: str
url: str
hash: str
kind: Kind = Kind.LEGACY
@dataclass
class DistroRef:
url: str
@@ -133,6 +79,10 @@ def version_triple_to_str(triple: list) -> str:
return ".".join(str(x) for x in triple)
def sri_from_sha256_hex(hex_hash: str) -> str:
return "sha256-" + base64.b64encode(bytes.fromhex(hex_hash)).decode("utf-8")
def fetch_distro_source(variant: Variant) -> DistroSource:
manifest = fetch_distro_manifest(variant)
@@ -141,46 +91,37 @@ def fetch_distro_source(variant: Variant) -> DistroSource:
name: DistroModule(
version=mod["full"]["module_version"],
url=mod["full"]["url"],
hash=prefetch(mod["full"]["url"]),
hash=sri_from_sha256_hex(mod["full"]["package_sha256"]),
)
for name, mod in manifest["modules"].items()
}
return DistroSource(
version=version_triple_to_str(manifest["full"]["host_version"]),
distro=DistroRef(url=distro_url, hash=prefetch(distro_url)),
distro=DistroRef(
url=distro_url,
hash=sri_from_sha256_hex(manifest["full"]["package_sha256"]),
),
modules=modules,
)
def fetch_legacy_source(variant: Variant) -> LegacySource:
url = fetch_redirect_url(url_for_variant(variant))
return LegacySource(
version=version_from_url(url),
url=url,
hash=prefetch(url),
)
def main():
variants: List[Variant] = [
Variant(Platform.LINUX, Branch.STABLE, Kind.LEGACY),
Variant(Platform.LINUX, Branch.STABLE, Kind.DISTRO),
Variant(Platform.LINUX, Branch.PTB, Kind.DISTRO),
Variant(Platform.LINUX, Branch.CANARY, Kind.DISTRO),
Variant(Platform.LINUX, Branch.DEVELOPMENT, Kind.DISTRO),
Variant(Platform.MACOS, Branch.STABLE, Kind.LEGACY),
Variant(Platform.MACOS, Branch.PTB, Kind.LEGACY),
Variant(Platform.MACOS, Branch.CANARY, Kind.LEGACY),
Variant(Platform.MACOS, Branch.DEVELOPMENT, Kind.LEGACY),
Variant(Platform.MACOS, Branch.STABLE, Kind.DISTRO),
Variant(Platform.MACOS, Branch.PTB, Kind.DISTRO),
Variant(Platform.MACOS, Branch.CANARY, Kind.DISTRO),
Variant(Platform.MACOS, Branch.DEVELOPMENT, Kind.DISTRO),
]
sources = {}
for v in variants:
source = (
fetch_distro_source(v) if v.kind == Kind.DISTRO else fetch_legacy_source(v)
)
sources[serialize_variant(v)] = asdict(source)
sources[serialize_variant(v)] = asdict(fetch_distro_source(v))
with open(os.path.join(os.path.dirname(__file__), "sources.json"), "w") as f:
json.dump(sources, f, indent=2, sort_keys=True)

View File

@@ -8,16 +8,16 @@
buildNpmPackage (finalAttrs: {
pname = "claude-agent-acp";
version = "0.32.0";
version = "0.33.1";
src = fetchFromGitHub {
owner = "agentclientprotocol";
repo = "claude-agent-acp";
tag = "v${finalAttrs.version}";
hash = "sha256-egYGwkN8iexw42EIhUgKb+QuAKfH4lKts0lftzfHAiY=";
hash = "sha256-FwcIJf/tfH6prDFKtOo7X1mTocibf4Ne6JHOS9ITG8U=";
};
npmDepsHash = "sha256-sUB/S3EycM3FGibAaZMA1T7tCyDu2XfkSg86qcABmYk=";
npmDepsHash = "sha256-y795LyNjSJjTpIqtA5bC/AgeFLghM0yU5xQRD3m+Ajs=";
nativeBuildInputs = [ makeWrapper ];

View File

@@ -13,12 +13,12 @@
}:
stdenv.mkDerivation (finalAttrs: {
pname = "clojure";
version = "1.12.4.1629";
version = "1.12.5.1638";
src = fetchurl {
# https://github.com/clojure/brew-install/releases
url = "https://github.com/clojure/brew-install/releases/download/${finalAttrs.version}/clojure-tools-${finalAttrs.version}.tar.gz";
hash = "sha256-swBF0lh+vAvPHKKoXHXXHcVtfHTefu5tx/3vwl93KM4=";
hash = "sha256-eAfhA0RByuQ8IdigJsHYotIPY/kDmLgDRHCw4uHzF5E=";
};
nativeBuildInputs = [

View File

@@ -6,16 +6,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "complgen";
version = "0.9.1";
version = "0.10.0";
src = fetchFromGitHub {
owner = "adaszko";
repo = "complgen";
tag = "v${finalAttrs.version}";
hash = "sha256-qBn3e0SRu+JTNzBNy3pmtRUESXhFBr+V+2Wb2GFZBGY=";
hash = "sha256-JlHePqZv50mvA5EAfkW11T+fcJaFw2OHFarOMqgs/wA=";
};
cargoHash = "sha256-1clMiilBCZCU05AgoWkEbwWQV+9WWxgKHuOlbGquY4g=";
cargoHash = "sha256-XvjA8SvzgK1FDjCg6tBcfVKMurHejQBGdNeYhedQGK8=";
meta = {
changelog = "https://github.com/adaszko/complgen/blob/v${finalAttrs.version}/CHANGELOG.md";

View File

@@ -19,6 +19,8 @@
libsolv,
libxml2,
libyaml,
libpkgmanifest,
acl,
pcre2,
rpm,
sdbus-cpp_2,
@@ -33,7 +35,7 @@
stdenv.mkDerivation (finalAttrs: {
pname = "dnf5";
version = "5.2.18.0";
version = "5.4.1.0";
outputs = [
"out"
@@ -44,7 +46,7 @@ stdenv.mkDerivation (finalAttrs: {
owner = "rpm-software-management";
repo = "dnf5";
tag = finalAttrs.version;
hash = "sha256-VTuGHHNNdoDfbJ86GOR4a+Fy2s+NSXPH337+AZpLKuo=";
hash = "sha256-wvWOQyY7K9fCds2am8gYpjw9mPl7IbOdHT92b8pwonc=";
};
nativeBuildInputs = [
@@ -71,6 +73,8 @@ stdenv.mkDerivation (finalAttrs: {
librepo
util-linux
libsolv
libpkgmanifest
acl
libxml2
libyaml
pcre2.dev
@@ -86,16 +90,16 @@ stdenv.mkDerivation (finalAttrs: {
env.NIX_CFLAGS_COMPILE = "-Wno-restrict -Wno-maybe-uninitialized";
cmakeFlags = [
"-DWITH_PERL5=OFF"
"-DWITH_PYTHON3=OFF"
"-DWITH_RUBY=OFF"
"-DWITH_SYSTEMD=OFF"
"-DWITH_PLUGIN_RHSM=OFF" # Red Hat Subscription Manager plugin
(lib.cmakeBool "WITH_PERL5" false)
(lib.cmakeBool "WITH_PYTHON3" false)
(lib.cmakeBool "WITH_RUBY" false)
(lib.cmakeBool "WITH_SYSTEMD" false)
(lib.cmakeBool "WITH_PLUGIN_RHSM" false) # Red Hat Subscription Manager plugin
# the cmake package does not handle absolute CMAKE_INSTALL_INCLUDEDIR correctly
# (setting it to an absolute path causes include files to go to $out/$out/include,
# because the absolute path is interpreted with root at $out).
"-DCMAKE_INSTALL_INCLUDEDIR=include"
"-DCMAKE_INSTALL_LIBDIR=lib"
(lib.cmakeFeature "CMAKE_INSTALL_INCLUDEDIR" "include")
(lib.cmakeFeature "CMAKE_INSTALL_LIBDIR" "lib")
];
postBuild = ''

View File

@@ -0,0 +1,34 @@
From f9be45b024e29efa6082cdfe6f47ca6b1110f20a Mon Sep 17 00:00:00 2001
From: poz <poz@poz.pet>
Date: Fri, 9 Jan 2026 03:25:01 +0100
Subject: [PATCH] fix install script
---
themes/install.sh | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/themes/install.sh b/themes/install.sh
index 1dc573f1..b1657b62 100755
--- a/themes/install.sh
+++ b/themes/install.sh
@@ -130,6 +130,7 @@ install() {
ln -s assets/no-events.svg no-events.svg
ln -s assets/process-working.svg process-working.svg
ln -s assets/no-notifications.svg no-notifications.svg
+ cd - > /dev/null
# GTK2 Themes
mkdir -p "${THEME_DIR}/gtk-2.0"
@@ -166,7 +167,11 @@ install() {
cp -r "${SRC_DIR}/main/metacity-1/metacity-theme-3${window}${color}.xml" "${THEME_DIR}/metacity-1/metacity-theme-3.xml"
cp -r "${SRC_DIR}/assets/metacity-1/assets${window}" "${THEME_DIR}/metacity-1/assets"
cp -r "${SRC_DIR}/assets/metacity-1/thumbnail${ELSE_DARK:-}.png" "${THEME_DIR}/metacity-1/thumbnail.png"
- cd "${THEME_DIR}/metacity-1" && ln -s metacity-theme-3.xml metacity-theme-1.xml && ln -s metacity-theme-3.xml metacity-theme-2.xml
+
+ cd "${THEME_DIR}/metacity-1"
+ ln -s metacity-theme-3.xml metacity-theme-1.xml
+ ln -s metacity-theme-3.xml metacity-theme-2.xml
+ cd - > /dev/null
# XFWM4 Themes
mkdir -p "${THEME_DIR}/xfwm4"

View File

@@ -4,19 +4,27 @@
fetchFromGitHub,
gnome-themes-extra,
gtk-engine-murrine,
gtk3,
sassc,
}:
stdenvNoCC.mkDerivation {
pname = "everforest-gtk-theme";
version = "0-unstable-2025-10-15";
version = "0-unstable-2025-10-23";
src = fetchFromGitHub {
owner = "Fausto-Korpsvart";
repo = "Everforest-GTK-Theme";
rev = "930a5dc57f7a06e8c6538d531544e41c56dbb27a";
hash = "sha256-mlJE7gVElWUjJIZnAL5ztchphmaU82llol+YdKqnSxg=";
rev = "9b8be4d6648ae9eaae3dd550105081f8c9054825";
hash = "sha256-XHO6NoXJwwZ8gBzZV/hJnVq5BvkEKYWvqLBQT00dGdE=";
};
patches = [
# remove when merged
# https://github.com/Fausto-Korpsvart/Everforest-GTK-Theme/pull/34
./fix-install-script.patch
];
propagatedUserEnvPkgs = [
gtk-engine-murrine
];
@@ -25,13 +33,34 @@ stdenvNoCC.mkDerivation {
gnome-themes-extra
];
nativeBuildInputs = [
gtk3
sassc
];
dontBuild = true;
dontFixup = true;
dontDropIconThemeCache = true;
postPatch = ''
patchShebangs themes/install.sh
'';
installPhase = ''
runHook preInstall
mkdir -p "$out/share/"{themes,icons}
cp -a icons/* "$out/share/icons/"
cp -a themes/* "$out/share/themes/"
for theme in "$out/share/icons/"*; do
gtk-update-icon-cache "$theme"
done
cd themes
./install.sh --name Everforest --theme all --dest "$out/share/themes"
cd ..
runHook postInstall
'';

View File

@@ -42,7 +42,7 @@
glslang,
hwdata,
stb,
wlroots_0_18,
wlroots_0_19,
libdecor,
lcms,
lib,
@@ -159,7 +159,7 @@ stdenv.mkDerivation (finalAttrs: {
vulkan-headers
]
++ lib.optionals enableExecutable (
wlroots_0_18.buildInputs
wlroots_0_19.buildInputs
++ [
# gamescope uses a custom wlroots branch
libxcomposite

View File

@@ -8,11 +8,11 @@
let
pname = "ledger-live-desktop";
version = "4.2.0";
version = "4.2.2";
src = fetchurl {
url = "https://download.live.ledger.com/${pname}-${version}-linux-x86_64.AppImage";
hash = "sha256-gJ/5/bCNBkNmKgsIxoOvkbE1FLY9KX6TFVOQe/wAVGM=";
hash = "sha256-pDSLP+YN13iRLeQ3RWYZ8AwU1VqzbVw+oazPp4NdXNU=";
};
appimageContents = appimageTools.extractType2 {

View File

@@ -0,0 +1,50 @@
{
lib,
stdenv,
fetchFromGitHub,
cmake,
pkg-config,
yaml-cpp,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "libpkgmanifest";
version = "0.5.9";
strictDeps = true;
__structuredAttrs = true;
src = fetchFromGitHub {
owner = "rpm-software-management";
repo = "libpkgmanifest";
tag = "v${finalAttrs.version}";
hash = "sha256-NWuUu1By7MORITgqac09cOMYrVB91xqiUgxN+7sDPMw=";
};
nativeBuildInputs = [
cmake
pkg-config
];
buildInputs = [
yaml-cpp
];
cmakeFlags = [
(lib.cmakeBool "WITH_DOCS" false)
(lib.cmakeBool "WITH_PYTHON" false)
(lib.cmakeBool "WITH_TESTS" false)
(lib.cmakeBool "WITH_CODE_COVERAGE" false)
(lib.cmakeFeature "CMAKE_INSTALL_INCLUDEDIR" "include")
(lib.cmakeFeature "CMAKE_INSTALL_LIBDIR" "lib")
];
meta = {
description = "Library for working with RPM manifests";
homepage = "https://github.com/rpm-software-management/libpkgmanifest";
license = lib.licenses.lgpl21Only;
maintainers = with lib.maintainers; [ katexochen ];
mainProgram = "libpkgmanifest";
platforms = lib.platforms.all;
};
})

View File

@@ -18,14 +18,14 @@
}:
stdenv.mkDerivation (finalAttrs: {
version = "0.7.35";
version = "0.7.36";
pname = "libsolv";
src = fetchFromGitHub {
owner = "openSUSE";
repo = "libsolv";
rev = finalAttrs.version;
hash = "sha256-DHECjda7s12hSysbaXK2+wM/nXpAOpTn+eSf9XGC3z0=";
hash = "sha256-7a/vAdgW7ma2GHqv1LaQNFA7w1Hmzm6Q/HriNN6hlpE=";
};
cmakeFlags = [

View File

@@ -8,6 +8,7 @@ python3Packages.toPythonApplication (
dependencies =
(oldAttrs.dependencies or [ ])
++ litellm.optional-dependencies.proxy
++ litellm.optional-dependencies.extra_proxy;
++ litellm.optional-dependencies.extra_proxy
++ litellm.optional-dependencies.proxy-runtime;
})
)

View File

@@ -23,13 +23,13 @@ let
in
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "noto-fonts${suffix}";
version = "2026.04.01";
version = "2026.05.01";
src = fetchFromGitHub {
owner = "notofonts";
repo = "notofonts.github.io";
tag = "noto-monthly-release-${finalAttrs.version}";
hash = "sha256-f5A9vFTO+TgZTarN0cDmRZfBQxeqedzJp3KdCnua4Yw=";
hash = "sha256-Zph+4YJGSQ5hubzQjKV6YruGciQEle28YMaYyVh8/Ro=";
};
nativeBuildInputs = [

View File

@@ -35,7 +35,7 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-+ezCz3m6UFgPLfYpGO/EQAhMW/EQV9tEwZqpZDzUteg=";
};
nativeBuildInputs = lib.optionals withSystemd [
nativeBuildInputs = [
pkg-config
];
@@ -90,5 +90,6 @@ stdenv.mkDerivation (finalAttrs: {
description = "Authoritative only, high performance, simple and open source name server";
license = lib.licenses.bsd3;
platforms = lib.platforms.unix;
maintainers = with lib.maintainers; [ ruuda ];
};
})

View File

@@ -8,14 +8,14 @@
python3Packages.buildPythonApplication (finalAttrs: {
pname = "pykickstart";
version = "3.66";
version = "3.72";
pyproject = true;
src = fetchFromGitHub {
owner = "pykickstart";
repo = "pykickstart";
tag = "r${finalAttrs.version}";
hash = "sha256-2PC8QHJGy+7IwRA5u+Kw6LYxkWV9uZ87sB8nd/7t9sw=";
hash = "sha256-wNwCWl+aYMaaESE2HMnFNu9HjQB7MW+2ymSCNr3edis=";
};
build-system = with python3Packages; [

View File

@@ -7,14 +7,14 @@
python3Packages.buildPythonApplication (finalAttrs: {
pname = "pyradio";
version = "0.9.3.11.30";
version = "0.9.3.11.31";
pyproject = true;
src = fetchFromGitHub {
owner = "coderholic";
repo = "pyradio";
tag = finalAttrs.version;
hash = "sha256-b4Euo9rD/A7PjROOaigx2ITel1uA7fa6S6bNi76FeUw=";
hash = "sha256-DZ/HffM53uBYpucIq9UEIIzkIeF/WxXCnC1tB++LD9c=";
};
nativeBuildInputs = [
@@ -28,6 +28,7 @@ python3Packages.buildPythonApplication (finalAttrs: {
netifaces
psutil
python-dateutil
rapidfuzz
requests
rich
];
@@ -53,7 +54,7 @@ python3Packages.buildPythonApplication (finalAttrs: {
'';
meta = {
homepage = "http://www.coderholic.com/pyradio/";
homepage = "https://github.com/coderholic/pyradio";
description = "Curses based internet radio player";
mainProgram = "pyradio";
changelog = "https://github.com/coderholic/pyradio/releases/tag/${finalAttrs.src.tag}";

View File

@@ -25,14 +25,14 @@
clangStdenv.mkDerivation rec {
pname = "sogo";
version = "5.12.7";
version = "5.12.8";
# always update the sope package as well, when updating sogo
src = fetchFromGitHub {
owner = "Alinto";
repo = "sogo";
rev = "SOGo-${version}";
hash = "sha256-HMnJQTC9P6gOVP1hViRtshIS0oWj0AKoRkeNr/udlso=";
hash = "sha256-UkqXOInp6z5x8HzIqD9YOuD1oqXIdTEzC+paf6FDkIg=";
};
nativeBuildInputs = [

View File

@@ -14,7 +14,7 @@
clangStdenv.mkDerivation rec {
pname = "sope";
version = "5.12.7";
version = "5.12.8";
src = fetchFromGitHub {
owner = "Alinto";

View File

@@ -15,13 +15,13 @@ let
in
buildGoModule {
pname = "typescript-go";
version = "0-unstable-2026-05-02";
version = "0-unstable-2026-05-12";
src = fetchFromGitHub {
owner = "microsoft";
repo = "typescript-go";
rev = "2f6504c1b0efb1750abf948fe277981b50214093";
hash = "sha256-PU4euqJAkBvzFzn0UemiFRfDciIi62KejRgcjbi5paQ=";
rev = "01cc06960f62a508d26232175e0fcfd16846ed4f";
hash = "sha256-0xga15jY472BrOJmuWBaGoqThwhG8Bh4CoV+6Zm7ubk=";
fetchSubmodules = false;
};

View File

@@ -27,7 +27,7 @@ buildGoModule (finalAttrs: {
description = "Convert YAML <=> TOML <=> JSON <=> HCL";
license = lib.licenses.asl20;
mainProgram = "yj";
maintainers = [ ];
maintainers = with lib.maintainers; [ xyenon ];
homepage = "https://github.com/sclevine/yj";
};
})

View File

@@ -7,14 +7,14 @@
python3Packages.buildPythonApplication (finalAttrs: {
pname = "zapzap";
version = "6.4.0";
version = "6.4.1";
pyproject = true;
src = fetchFromGitHub {
owner = "rafatosta";
repo = "zapzap";
tag = finalAttrs.version;
hash = "sha256-3iFuJdiye0yt/6b6N1etS1YK+/QDS2p0eYXXtpPQDdE=";
hash = "sha256-GYt7MDj4JCdapZUEXIFGGpt7JpsjW2ZC+lhwyK2yj4c=";
};
nativeBuildInputs = [

View File

@@ -162,11 +162,6 @@ let
in
{
wlroots_0_18 = generic {
version = "0.18.3";
hash = "sha256-D8RapSeH+5JpTtq+OU8PyVZubLhjcebbCBPuSO5Q7kU=";
};
wlroots_0_19 = generic {
version = "0.19.3";
hash = "sha256-J+wSVUtuizaCyCn523chFbE8VtbPjyu5XYv5eLT+GM0=";

View File

@@ -6,7 +6,7 @@
fmt,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "genspio";
version = "0.0.3";
@@ -14,8 +14,8 @@ buildDunePackage rec {
src = fetchFromGitHub {
owner = "hammerlab";
repo = pname;
rev = "${pname}.${version}";
repo = "genspio";
rev = "genspio.${finalAttrs.version}";
sha256 = "sha256:1788cnn10idp5i1hggg4pys7k0w8m3h2p4xa42jipfg4cpj7shaf";
};
@@ -35,4 +35,4 @@ buildDunePackage rec {
license = lib.licenses.asl20;
maintainers = [ ];
};
}
})

View File

@@ -11,7 +11,7 @@
alcotest,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "get-activity";
inherit (get-activity-lib) version src;
@@ -42,7 +42,7 @@ buildDunePackage rec {
homepage = "https://github.com/tarides/get-activity";
description = "Collect activity and format as markdown for a journal";
license = lib.licenses.mit;
changelog = "https://github.com/tarides/get-activity/releases/tag/${version}";
changelog = "https://github.com/tarides/get-activity/releases/tag/${finalAttrs.version}";
maintainers = with lib.maintainers; [ zazedd ];
};
}
})

View File

@@ -13,14 +13,14 @@
alcotest,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "get-activity-lib";
version = "2.0.1";
src = fetchFromGitHub {
owner = "tarides";
repo = "get-activity";
rev = version;
rev = finalAttrs.version;
hash = "sha256-QU/LPIxcem5nFvSxcNApOuBu6UHqLHIXVSOJ2UT0eKA=";
};
@@ -48,7 +48,7 @@ buildDunePackage rec {
homepage = "https://github.com/tarides/get-activity";
description = "Collect activity and format as markdown for a journal (lib)";
license = lib.licenses.mit;
changelog = "https://github.com/tarides/get-activity/releases/tag/${version}";
changelog = "https://github.com/tarides/get-activity/releases/tag/${finalAttrs.version}";
maintainers = with lib.maintainers; [ zazedd ];
};
}
})

View File

@@ -4,7 +4,7 @@
buildDunePackage,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "getopt";
version = "20230213";
@@ -13,7 +13,7 @@ buildDunePackage rec {
src = fetchFromGitHub {
owner = "scemama";
repo = "ocaml-getopt";
rev = version;
rev = finalAttrs.version;
hash = "sha256-oYDm945LgjIW+8x7UrO4FlbHywnu8480aiEVvnjBxc8=";
};
@@ -25,4 +25,4 @@ buildDunePackage rec {
license = lib.licenses.mit;
maintainers = [ lib.maintainers.ulrikstrid ];
};
}
})

View File

@@ -37,14 +37,14 @@
cmdliner,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "git";
version = "3.18.0";
minimalOCamlVersion = "4.08";
src = fetchurl {
url = "https://github.com/mirage/ocaml-git/releases/download/${version}/git-${version}.tbz";
url = "https://github.com/mirage/ocaml-git/releases/download/${finalAttrs.version}/git-${finalAttrs.version}.tbz";
hash = "sha256-kleVYn5tquC0vRaqUGh53xHLIB5l/v446BN48Y1RfUs=";
};
@@ -99,4 +99,4 @@ buildDunePackage rec {
];
homepage = "https://github.com/mirage/ocaml-git";
};
}
})

View File

@@ -11,14 +11,14 @@
stringext,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "github";
version = "4.5.1";
src = fetchFromGitHub {
owner = "mirage";
repo = "ocaml-github";
rev = version;
rev = finalAttrs.version;
sha256 = "sha256-nxHXOdZAvFe5/lKNw7tTJmY86xzfdFT+fW+lnKioyPM=";
};
@@ -40,4 +40,4 @@ buildDunePackage rec {
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ niols ];
};
}
})

View File

@@ -11,14 +11,14 @@
stringext,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "gitlab";
version = "0.1.8";
src = fetchFromGitHub {
owner = "tmcgilchrist";
repo = "ocaml-gitlab";
rev = version;
rev = finalAttrs.version;
hash = "sha256-7pUpH1SoP4eW8ild5j+Tcy+aTXq0+eSkhKUOXJ6Z30k=";
};
@@ -46,7 +46,7 @@ buildDunePackage rec {
homepage = "https://github.com/tmcgilchrist/ocaml-gitlab";
description = "Native OCaml bindings to Gitlab REST API v4";
license = lib.licenses.bsd3;
changelog = "https://github.com/tmcgilchrist/ocaml-gitlab/releases/tag/${version}";
changelog = "https://github.com/tmcgilchrist/ocaml-gitlab/releases/tag/${finalAttrs.version}";
maintainers = with lib.maintainers; [ zazedd ];
};
}
})

View File

@@ -10,14 +10,14 @@
uri,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "gluon";
version = "0.0.9";
minimalOCamlVersion = "5.1";
src = fetchurl {
url = "https://github.com/riot-ml/gluon/releases/download/${version}/gluon-${version}.tbz";
url = "https://github.com/riot-ml/gluon/releases/download/${finalAttrs.version}/gluon-${finalAttrs.version}.tbz";
hash = "sha256-YWJCPokY1A7TGqCGoxJl14oKDVeMNybEEB7KiK92WSo=";
};
@@ -40,8 +40,8 @@ buildDunePackage rec {
meta = {
description = "Minimal, portable, and fast API on top of the operating-system's evented I/O API";
homepage = "https://github.com/riot-ml/gluon";
changelog = "https://github.com/riot-ml/gluon/blob/${version}/CHANGES.md";
changelog = "https://github.com/riot-ml/gluon/blob/${finalAttrs.version}/CHANGES.md";
license = lib.licenses.mit;
maintainers = [ ];
};
}
})

View File

@@ -6,12 +6,12 @@
lib,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "gluten";
version = "0.5.2";
src = fetchurl {
url = "https://github.com/anmonteiro/gluten/releases/download/${version}/gluten-${version}.tbz";
url = "https://github.com/anmonteiro/gluten/releases/download/${finalAttrs.version}/gluten-${finalAttrs.version}.tbz";
hash = "sha256-se7Yn59ggLtL0onMjSUsa88B8D05Vybmb6YGcgfnAV8=";
};
@@ -30,4 +30,4 @@ buildDunePackage rec {
homepage = "https://github.com/anmonteiro/gluten";
maintainers = with lib.maintainers; [ anmonteiro ];
};
}
})

View File

@@ -7,14 +7,14 @@
fmt,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "gmap";
version = "0.3.0";
duneVersion = "3";
src = fetchurl {
url = "https://github.com/hannesm/gmap/releases/download/${version}/gmap-${version}.tbz";
url = "https://github.com/hannesm/gmap/releases/download/${finalAttrs.version}/gmap-${finalAttrs.version}.tbz";
sha256 = "073wa0lrb0jj706j87cwzf1a8d1ff14100mnrjs8z3xc4ri9xp84";
};
@@ -33,4 +33,4 @@ buildDunePackage rec {
license = lib.licenses.isc;
maintainers = [ lib.maintainers.vbgl ];
};
}
})

View File

@@ -12,7 +12,7 @@
graphql-lwt,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "graphql-cohttp";
inherit (graphql) version src;
@@ -28,7 +28,7 @@ buildDunePackage rec {
ocplib-endian
];
checkInputs = lib.optionals doCheck [
checkInputs = lib.optionals finalAttrs.doCheck [
alcotest
cohttp-lwt-unix
graphql-lwt
@@ -45,4 +45,4 @@ buildDunePackage rec {
description = "Run GraphQL servers with cohttp";
};
}
})

View File

@@ -8,7 +8,7 @@
re,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "graphql_parser";
version = "0.14.0";
@@ -16,7 +16,7 @@ buildDunePackage rec {
duneVersion = "3";
src = fetchurl {
url = "https://github.com/andreas/ocaml-graphql-server/releases/download/${version}/graphql-${version}.tbz";
url = "https://github.com/andreas/ocaml-graphql-server/releases/download/${finalAttrs.version}/graphql-${finalAttrs.version}.tbz";
sha256 = "sha256-v4v1ueF+NV7LvYIVinaf4rE450Z1P9OiMAito6/NHAY=";
};
@@ -37,4 +37,4 @@ buildDunePackage rec {
maintainers = [ lib.maintainers.vbgl ];
};
}
})

View File

@@ -7,7 +7,7 @@
dune-configurator,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "gsl";
version = "1.25.1";
@@ -16,7 +16,7 @@ buildDunePackage rec {
src = fetchFromGitHub {
owner = "mmottl";
repo = "gsl-ocaml";
rev = version;
rev = finalAttrs.version;
hash = "sha256-h1jO2RheBBzxiBgig2yEPk4YyBaZxStt5f+KNZqHdBo=";
};
@@ -32,4 +32,4 @@ buildDunePackage rec {
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [ vbgl ];
};
}
})

View File

@@ -8,14 +8,14 @@
gst_all_1,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "gstreamer";
version = "0.3.1";
src = fetchFromGitHub {
owner = "savonet";
repo = "ocaml-gstreamer";
rev = "v${version}";
rev = "v${finalAttrs.version}";
sha256 = "0y8xi1q0ld4hrk96bn6jfh9slyjrxmnlhm662ynacp3yzalp8jji";
};
@@ -40,4 +40,4 @@ buildDunePackage rec {
license = lib.licenses.lgpl21Only;
maintainers = with lib.maintainers; [ dandellion ];
};
}
})

View File

@@ -7,7 +7,7 @@
pkg-config,
sqlite,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "hack_parallel";
version = "1.0.1";
minimalOCamlVersion = "4.08";
@@ -15,7 +15,7 @@ buildDunePackage rec {
src = fetchFromGitHub {
owner = "rvantonder";
repo = "hack_parallel";
rev = version;
rev = finalAttrs.version;
sha256 = "0qjlkw35r4q2cm0n2x0i73zvx1xgrp6axaia2nm8zxpm49mid629";
};
@@ -51,4 +51,4 @@ buildDunePackage rec {
license = lib.licenses.mit;
homepage = "https://github.com/rvantonder/hack_parallel";
};
}
})

View File

@@ -9,14 +9,14 @@
logs,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "happy-eyeballs";
version = "2.0.1";
minimalOCamlVersion = "4.08";
src = fetchurl {
url = "https://github.com/roburio/happy-eyeballs/releases/download/v${version}/happy-eyeballs-${version}.tbz";
url = "https://github.com/roburio/happy-eyeballs/releases/download/v${finalAttrs.version}/happy-eyeballs-${finalAttrs.version}.tbz";
hash = "sha256-slVFiDApMbqF4Yhh5hCjraeCNJbU1JoZXpU1VsNR0mk=";
};
@@ -37,4 +37,4 @@ buildDunePackage rec {
ulrikstrid
];
};
}
})

View File

@@ -4,7 +4,7 @@
fetchzip,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "hc";
version = "0.5";
@@ -12,7 +12,7 @@ buildDunePackage rec {
# upstream git server is misconfigured and cannot be cloned
src = fetchzip {
url = "https://git.zapashcanon.fr/zapashcanon/hc/archive/${version}.tar.gz";
url = "https://git.zapashcanon.fr/zapashcanon/hc/archive/${finalAttrs.version}.tar.gz";
hash = "sha256-oTomFi+e9aCgVpZ9EkxQ/dZz18cW2UcaV0ZIokeBoU0=";
};
@@ -22,8 +22,8 @@ buildDunePackage rec {
description = "Library for hash consing";
homepage = "https://ocaml.org/p/hc/";
downloadPage = "https://git.zapashcanon.fr/zapashcanon/hc";
changelog = "https://git.zapashcanon.fr/zapashcanon/hc/src/tag/${version}/CHANGES.md";
changelog = "https://git.zapashcanon.fr/zapashcanon/hc/src/tag/${finalAttrs.version}/CHANGES.md";
license = lib.licenses.isc;
maintainers = [ lib.maintainers.ethancedwards8 ];
};
}
})

View File

@@ -5,7 +5,7 @@
cstruct,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "hex";
version = "1.5.0";
@@ -13,7 +13,7 @@ buildDunePackage rec {
minimalOCamlVersion = "4.08";
src = fetchurl {
url = "https://github.com/mirage/ocaml-${pname}/releases/download/v${version}/hex-${version}.tbz";
url = "https://github.com/mirage/ocaml-hex/releases/download/v${finalAttrs.version}/hex-${finalAttrs.version}.tbz";
hash = "sha256-LmfuyhsDBJMHowgxtc1pS8stPn8qa0+1l/vbZHNRtNw=";
};
@@ -26,4 +26,4 @@ buildDunePackage rec {
license = lib.licenses.isc;
maintainers = with lib.maintainers; [ vbgl ];
};
}
})

View File

@@ -8,7 +8,7 @@
bigstring,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "hidapi";
version = "1.2.1";
@@ -17,7 +17,7 @@ buildDunePackage rec {
src = fetchFromGitHub {
owner = "vbmithr";
repo = "ocaml-hidapi";
rev = version;
rev = finalAttrs.version;
hash = "sha256-upygm5G46C65lxaiI6kBOzLrWxzW9qWb6efN/t58SRg=";
};
@@ -39,4 +39,4 @@ buildDunePackage rec {
maintainers = [ ];
mainProgram = "ocaml-hid-enumerate";
};
}
})

View File

@@ -6,7 +6,7 @@
xtmpl,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "higlo";
version = "0.10.0";
@@ -14,7 +14,7 @@ buildDunePackage rec {
domain = "framagit.org";
owner = "zoggy";
repo = "higlo";
rev = version;
rev = finalAttrs.version;
hash = "sha256-A5Su4+eBOq/WNdY/3EBQ3KqrRQuaCI1x25cEuoZp4Mo=";
};
@@ -25,8 +25,8 @@ buildDunePackage rec {
meta = {
description = "OCaml library for syntax highlighting";
inherit (src.meta) homepage;
inherit (finalAttrs.src.meta) homepage;
license = lib.licenses.lgpl3;
maintainers = with lib.maintainers; [ regnat ];
};
}
})

View File

@@ -7,14 +7,14 @@
ohex,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "hkdf";
version = "2.0.0";
minimalOCamlVersion = "4.08";
src = fetchurl {
url = "https://github.com/hannesm/ocaml-${pname}/releases/download/v${version}/${pname}-${version}.tbz";
url = "https://github.com/hannesm/ocaml-hkdf/releases/download/v${finalAttrs.version}/hkdf-${finalAttrs.version}.tbz";
hash = "sha256-VLBxJ5viTTn1nK0QNIAGq/8961x0/RGHZN/C/7ITWNM=";
};
@@ -31,4 +31,4 @@ buildDunePackage rec {
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ sternenseemann ];
};
}
})

View File

@@ -6,12 +6,12 @@
faraday,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "hpack";
version = "0.13.0";
src = fetchurl {
url = "https://github.com/anmonteiro/ocaml-h2/releases/download/${version}/h2-${version}.tbz";
url = "https://github.com/anmonteiro/ocaml-h2/releases/download/${finalAttrs.version}/h2-${finalAttrs.version}.tbz";
hash = "sha256-DYm28XgXUpTnogciO+gdW4P8Mbl1Sb7DTwQyo7KoBw8=";
};
@@ -34,4 +34,4 @@ buildDunePackage rec {
anmonteiro
];
};
}
})

View File

@@ -8,7 +8,7 @@
alcotest,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "httpaf";
version = "0.7.1";
@@ -16,8 +16,8 @@ buildDunePackage rec {
src = fetchFromGitHub {
owner = "inhabitedtype";
repo = pname;
rev = version;
repo = "httpaf";
rev = finalAttrs.version;
sha256 = "0zk78af3qyvf6w66mg8sxygr6ndayzqw5s3zfxibvn121xwni26z";
};
@@ -33,6 +33,6 @@ buildDunePackage rec {
description = "High-performance, memory-efficient, and scalable web server for OCaml";
license = lib.licenses.bsd3;
maintainers = [ lib.maintainers.vbgl ];
inherit (src.meta) homepage;
inherit (finalAttrs.src.meta) homepage;
};
}
})

View File

@@ -11,12 +11,12 @@
alcotest,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "httpun-ws";
version = "0.2.0";
src = fetchurl {
url = "https://github.com/anmonteiro/httpun-ws/releases/download/${version}/httpun-ws-${version}.tbz";
url = "https://github.com/anmonteiro/httpun-ws/releases/download/${finalAttrs.version}/httpun-ws-${finalAttrs.version}.tbz";
hash = "sha256-6uDNLg61tPyctthitxFqbw/IUDsuQ5BGvw5vTLLCl/0=";
};
@@ -38,4 +38,4 @@ buildDunePackage rec {
homepage = "https://github.com/anmonteiro/httpun-ws";
maintainers = [ lib.maintainers.vbgl ];
};
}
})

View File

@@ -5,12 +5,12 @@
faraday,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "httpun-types";
version = "0.2.0";
src = fetchurl {
url = "https://github.com/anmonteiro/httpun/releases/download/${version}/httpun-${version}.tbz";
url = "https://github.com/anmonteiro/httpun/releases/download/${finalAttrs.version}/httpun-${finalAttrs.version}.tbz";
hash = "sha256-os4n70yFro4cEAjR49Xok9ayEbk0WGod0pQvfbaHvSw=";
};
@@ -22,4 +22,4 @@ buildDunePackage rec {
license = lib.licenses.bsd3;
maintainers = [ lib.maintainers.vbgl ];
};
}
})

View File

@@ -8,14 +8,14 @@
withLwt ? true,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "hxd";
version = "0.4.0";
minimalOCamlVersion = "4.08";
src = fetchurl {
url = "https://github.com/dinosaure/hxd/releases/download/v${version}/hxd-${version}.tbz";
url = "https://github.com/dinosaure/hxd/releases/download/v${finalAttrs.version}/hxd-${finalAttrs.version}.tbz";
sha256 = "sha256-EAMLciahdQRHGAmtWvwMIAchJkxcbdPVldJIBApxgFg=";
};
@@ -39,4 +39,4 @@ buildDunePackage rec {
maintainers = [ lib.maintainers.sternenseemann ];
mainProgram = "hxd.xxd";
};
}
})

View File

@@ -7,7 +7,7 @@
alcotest,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
minimalOCamlVersion = "4.08";
version = "20221222";
pname = "imagelib";
@@ -15,7 +15,7 @@ buildDunePackage rec {
duneVersion = "3";
src = fetchurl {
url = "https://github.com/rlepigre/ocaml-imagelib/releases/download/${version}/imagelib-${version}.tbz";
url = "https://github.com/rlepigre/ocaml-imagelib/releases/download/${finalAttrs.version}/imagelib-${finalAttrs.version}.tbz";
hash = "sha256-BQ2TVxGlpc6temteK84TKXpx0MtHZSykL/TjKN9xGP0=";
};
@@ -34,4 +34,4 @@ buildDunePackage rec {
maintainers = [ lib.maintainers.vbgl ];
mainProgram = "imagetool";
};
}
})

View File

@@ -19,12 +19,12 @@
lru,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "index";
version = "1.6.2";
src = fetchurl {
url = "https://github.com/mirage/index/releases/download/${version}/index-${version}.tbz";
url = "https://github.com/mirage/index/releases/download/${finalAttrs.version}/index-${finalAttrs.version}.tbz";
hash = "sha256-k4iDUJik7UTuztBw7YaFXASd8SqYMR1JgLm3JOyriGA=";
};
@@ -73,4 +73,4 @@ buildDunePackage rec {
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ vbgl ];
};
}
})

View File

@@ -7,14 +7,14 @@
fileutils, # only for tests
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
version = "2.6";
pname = "inotify";
src = fetchFromGitHub {
owner = "whitequark";
repo = "ocaml-inotify";
rev = "v${version}";
rev = "v${finalAttrs.version}";
hash = "sha256-Vg9uVIx6/OMS1WoJIHwZbSt5ZyFy+Xgw5167FJWGslg=";
};
@@ -31,7 +31,7 @@ buildDunePackage rec {
description = "Bindings for Linuxs filesystem monitoring interface, inotify";
license = lib.licenses.lgpl21;
maintainers = [ lib.maintainers.vbgl ];
inherit (src.meta) homepage;
inherit (finalAttrs.src.meta) homepage;
platforms = lib.platforms.linux;
};
}
})

View File

@@ -5,14 +5,14 @@
stdlib-shims,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "integers";
version = "0.7.0";
src = fetchFromGitHub {
owner = "ocamllabs";
repo = "ocaml-integers";
rev = version;
rev = finalAttrs.version;
sha256 = "sha256-zuUgP1jOiVT0q6GisGpkqx7nybWbARgnAcU8NYqvCzA=";
};
@@ -22,7 +22,7 @@ buildDunePackage rec {
description = "Various signed and unsigned integer types for OCaml";
license = lib.licenses.mit;
homepage = "https://github.com/ocamllabs/ocaml-integers";
changelog = "https://github.com/ocamllabs/ocaml-integers/raw/${version}/CHANGES.md";
changelog = "https://github.com/ocamllabs/ocaml-integers/raw/${finalAttrs.version}/CHANGES.md";
maintainers = [ lib.maintainers.vbgl ];
};
}
})

View File

@@ -5,7 +5,7 @@
zarith_stubs_js ? null,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "integers_stubs_js";
version = "1.0";
@@ -14,8 +14,8 @@ buildDunePackage rec {
src = fetchFromGitHub {
owner = "o1-labs";
repo = pname;
rev = version;
repo = "integers_stubs_js";
rev = finalAttrs.version;
sha256 = "sha256-lg5cX9/LQlVmR42XcI17b6KaatnFO2L9A9ZXfID8mTY=";
};
@@ -26,6 +26,6 @@ buildDunePackage rec {
description = "Javascript stubs for the integers library in js_of_ocaml";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ bezmuth ];
inherit (src.meta) homepage;
inherit (finalAttrs.src.meta) homepage;
};
}
})

View File

@@ -8,7 +8,7 @@
ounit,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "io-page";
version = "3.0.0";
@@ -16,7 +16,7 @@ buildDunePackage rec {
duneVersion = "3";
src = fetchurl {
url = "https://github.com/mirage/${pname}/releases/download/v${version}/${pname}-${version}.tbz";
url = "https://github.com/mirage/io-page/releases/download/v${finalAttrs.version}/io-page-${finalAttrs.version}.tbz";
hash = "sha256-DjbKdNkFa6YQgJDLmLsuvyrweb4/TNvqAiggcj/3hu4=";
};
@@ -34,4 +34,4 @@ buildDunePackage rec {
description = "IO memory page library for Mirage backends";
maintainers = with lib.maintainers; [ vbgl ];
};
}
})

View File

@@ -6,14 +6,14 @@
alcotest,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "iomux";
version = "0.4";
minimalOCamlVersion = "4.08";
src = fetchurl {
url = "https://github.com/haesbaert/ocaml-${pname}/releases/download/v${version}/${pname}-${version}.tbz";
url = "https://github.com/haesbaert/ocaml-iomux/releases/download/v${finalAttrs.version}/iomux-${finalAttrs.version}.tbz";
hash = "sha256-Hjk/rlWUdoSMXHBSUHaxEHDoBqVJ7rrghLBGqXcrqzU=";
};
@@ -26,9 +26,9 @@ buildDunePackage rec {
];
meta = {
homepage = "https://github.com/haesbaert/ocaml-${pname}";
homepage = "https://github.com/haesbaert/ocaml-iomux";
description = "IO Multiplexers for OCaml";
license = with lib.licenses; [ isc ];
maintainers = with lib.maintainers; [ toastal ];
};
}
})

View File

@@ -7,7 +7,7 @@
uutf,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "iri";
version = "1.1.0";
@@ -17,7 +17,7 @@ buildDunePackage rec {
domain = "framagit.org";
owner = "zoggy";
repo = "ocaml-iri";
rev = version;
rev = finalAttrs.version;
hash = "sha256-fh5+0CWplDdGXCotZL2UzjOGil2LR4NppttaquO/ndE=";
};
@@ -31,6 +31,6 @@ buildDunePackage rec {
description = "IRI (RFC3987) native OCaml implementation";
license = lib.licenses.lgpl3;
maintainers = [ lib.maintainers.vbgl ];
inherit (src.meta) homepage;
inherit (finalAttrs.src.meta) homepage;
};
}
})

View File

@@ -7,12 +7,12 @@
logs,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "ppx_irmin";
version = "3.11.0";
src = fetchurl {
url = "https://github.com/mirage/irmin/releases/download/${version}/irmin-${version}.tbz";
url = "https://github.com/mirage/irmin/releases/download/${finalAttrs.version}/irmin-${finalAttrs.version}.tbz";
hash = "sha256-CZlvvMLEPhF6m9jpAoxjXoHMyyZNXgLUJauLBrus29s=";
};
@@ -33,4 +33,4 @@ buildDunePackage rec {
sternenseemann
];
};
}
})

View File

@@ -7,14 +7,14 @@
qcheck-core,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "iter";
version = "1.9";
minimalOCamlVersion = "4.08";
src = fetchurl {
url = "https://github.com/c-cube/iter/releases/download/v${version}/iter-${version}.tbz";
url = "https://github.com/c-cube/iter/releases/download/v${finalAttrs.version}/iter-${finalAttrs.version}.tbz";
hash = "sha256-26nluxUuDQ2wBUw2sqlHZ0eihKdzjxXxGVo+IDXH6Wg=";
};
@@ -36,4 +36,4 @@ buildDunePackage rec {
'';
license = lib.licenses.bsd2;
};
}
})

View File

@@ -11,12 +11,12 @@
zarith,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "jose";
version = "0.10.0";
src = fetchurl {
url = "https://github.com/ulrikstrid/ocaml-jose/releases/download/v${version}/${pname}-${version}.tbz";
url = "https://github.com/ulrikstrid/ocaml-jose/releases/download/v${finalAttrs.version}/jose-${finalAttrs.version}.tbz";
hash = "sha256-F6Odq5JXTkAxdqV3HQusoF+9rvt4BZytslKnsIjJLI8=";
};
@@ -44,4 +44,4 @@ buildDunePackage rec {
marijanp
];
};
}
})

View File

@@ -6,14 +6,14 @@
uri,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "json-data-encoding";
version = "1.0.1";
minimalOCamlVersion = "4.10";
src = fetchFromGitLab {
owner = "nomadic-labs";
repo = "data-encoding";
rev = "v${version}";
rev = "v${finalAttrs.version}";
hash = "sha256-KoA4xX4tNyi6bX5kso/Wof1LA7431EXJ34eD5X4jnd8=";
};
@@ -28,4 +28,4 @@ buildDunePackage rec {
license = lib.licenses.lgpl3;
maintainers = [ lib.maintainers.ulrikstrid ];
};
}
})

View File

@@ -6,12 +6,12 @@
tyxml,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "junit";
version = "2.3.0";
src = fetchurl {
url = "https://github.com/Khady/ocaml-junit/releases/download/${version}/junit-${version}.tbz";
url = "https://github.com/Khady/ocaml-junit/releases/download/${finalAttrs.version}/junit-${finalAttrs.version}.tbz";
hash = "sha256-j+4lfuQEWq8z8ik/zfA5phWqv8km+tGEzqG/63cbhTM=";
};
@@ -28,4 +28,4 @@ buildDunePackage rec {
maintainers = [ ];
homepage = "https://github.com/Khady/ocaml-junit";
};
}
})

View File

@@ -12,7 +12,7 @@
ppx_deriving,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "jwto";
version = "0.4.0";
@@ -23,7 +23,7 @@ buildDunePackage rec {
src = fetchFromGitHub {
owner = "sporto";
repo = "jwto";
rev = version;
rev = finalAttrs.version;
hash = "sha256-TOWwNyrOqboCm8Y4mM6GgtmxGO3NmyDdAX7m8CifA7Y=";
};
@@ -51,4 +51,4 @@ buildDunePackage rec {
jtcoolen
];
};
}
})

View File

@@ -7,12 +7,12 @@
zlib,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "kafka";
version = "0.5";
src = fetchurl {
url = "https://github.com/didier-wenzek/ocaml-kafka/releases/download/${version}/kafka-${version}.tbz";
url = "https://github.com/didier-wenzek/ocaml-kafka/releases/download/${finalAttrs.version}/kafka-${finalAttrs.version}.tbz";
sha256 = "0m9212yap0a00hd0f61i4y4fna3141p77qj3mm7jl1h4q60jdhvy";
};
@@ -28,4 +28,4 @@ buildDunePackage rec {
maintainers = [ lib.maintainers.vbgl ];
broken = lib.versionAtLeast ocaml.version "5.0";
};
}
})

View File

@@ -12,12 +12,12 @@
mdx,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "kcas";
version = "0.7.0";
src = fetchurl {
url = "https://github.com/ocaml-multicore/kcas/releases/download/${version}/kcas-${version}.tbz";
url = "https://github.com/ocaml-multicore/kcas/releases/download/${finalAttrs.version}/kcas-${finalAttrs.version}.tbz";
hash = "sha256-mo/otnkB79QdyVgLw1sZFfkR/Z/l15cRVfEYPPd6H5E=";
};
@@ -42,8 +42,8 @@ buildDunePackage rec {
longDescription = ''
A software transactional memory (STM) implementation based on an atomic lock-free multi-word compare-and-set (MCAS) algorithm enhanced with read-only compare operations and ability to block awaiting for changes.
'';
changelog = "https://raw.githubusercontent.com/ocaml-multicore/kcas/refs/tags/${version}/CHANGES.md";
changelog = "https://raw.githubusercontent.com/ocaml-multicore/kcas/refs/tags/${finalAttrs.version}/CHANGES.md";
license = lib.licenses.isc;
maintainers = [ lib.maintainers.vbgl ];
};
}
})

View File

@@ -8,12 +8,12 @@
ohex,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "kdf";
version = "1.0.0";
src = fetchurl {
url = "https://github.com/robur-coop/kdf/releases/download/v${version}/kdf-${version}.tbz";
url = "https://github.com/robur-coop/kdf/releases/download/v${finalAttrs.version}/kdf-${finalAttrs.version}.tbz";
hash = "sha256-0WFYKw7+ZtlY3WuMnCEGjp9kVM4hg3fWz4eCPexi4M4=";
};
@@ -34,4 +34,4 @@ buildDunePackage rec {
license = lib.licenses.bsd2;
maintainers = [ lib.maintainers.vbgl ];
};
}
})

View File

@@ -9,7 +9,7 @@
zarith,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "kdl";
version = "0.2.0";
@@ -34,7 +34,7 @@ buildDunePackage rec {
src = fetchFromGitHub {
owner = "eilvelia";
repo = "ocaml-kdl";
tag = "v${version}";
tag = "v${finalAttrs.version}";
hash = "sha256-0MiJe0XbWAlS2NvGxLplsgVfCNaA/7iCMx4+F+6FAtM=";
};
@@ -44,4 +44,4 @@ buildDunePackage rec {
maintainers = with lib.maintainers; [ toastal ];
homepage = "https://github.com/eilvelia/ocaml-kdl";
};
}
})

View File

@@ -7,12 +7,12 @@
bigstringaf,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "ke";
version = "0.6";
src = fetchurl {
url = "https://github.com/mirage/ke/releases/download/v${version}/ke-${version}.tbz";
url = "https://github.com/mirage/ke/releases/download/v${finalAttrs.version}/ke-${finalAttrs.version}.tbz";
sha256 = "sha256-YSFyB+IgCwSxd1lzZhD/kggmmmR/hUy1rnLNrA1nIwU=";
};
@@ -33,4 +33,4 @@ buildDunePackage rec {
license = lib.licenses.mit;
maintainers = [ lib.maintainers.vbgl ];
};
}
})

View File

@@ -4,14 +4,14 @@
fetchurl,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "kicadsch";
version = "0.9.0";
minimalOCamlVersion = "4.07";
src = fetchurl {
url = "https://github.com/jnavila/plotkicadsch/releases/download/v${version}/plotkicadsch-${version}.tbz";
url = "https://github.com/jnavila/plotkicadsch/releases/download/v${finalAttrs.version}/plotkicadsch-${finalAttrs.version}.tbz";
sha256 = "sha256-B+vnEPyd3SUzviTdNoyvYk0p7Hrg/XTJm8KxsY8A4jQ=";
};
@@ -21,4 +21,4 @@ buildDunePackage rec {
license = lib.licenses.isc;
maintainers = with lib.maintainers; [ leungbk ];
};
}
})

View File

@@ -7,14 +7,14 @@
ppx_optcomp,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "kqueue";
version = "0.4.0";
minimalOCamlVersion = "4.12";
src = fetchurl {
url = "https://github.com/anuragsoni/kqueue-ml/releases/download/${version}/kqueue-${version}.tbz";
url = "https://github.com/anuragsoni/kqueue-ml/releases/download/${finalAttrs.version}/kqueue-${finalAttrs.version}.tbz";
hash = "sha256-fJHhmAp0EFzR9JH93a+EHy1auwSBKZV/XcBQLCedJLc=";
};
@@ -32,8 +32,8 @@ buildDunePackage rec {
meta = {
description = "OCaml bindings for kqueue event notification interface";
homepage = "https://github.com/anuragsoni/kqueue-ml";
changelog = "https://github.com/anuragsoni/kqueue-ml/blob/${version}/CHANGES.md";
changelog = "https://github.com/anuragsoni/kqueue-ml/blob/${finalAttrs.version}/CHANGES.md";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ sixstring982 ];
};
}
})

View File

@@ -9,14 +9,14 @@
camlp-streams,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
version = "3.1.5";
pname = "lablgtk3";
minimalOCamlVersion = "4.06";
src = fetchurl {
url = "https://github.com/garrigue/lablgtk/releases/download/${version}/lablgtk3-${version}.tbz";
url = "https://github.com/garrigue/lablgtk/releases/download/${finalAttrs.version}/lablgtk3-${finalAttrs.version}.tbz";
hash = "sha256-1IIc2+zzrjdPIDF9Y+Q/5YAww7qWV7UaLoPmUhl+jqw=";
};
@@ -36,4 +36,4 @@ buildDunePackage rec {
license = lib.licenses.lgpl21;
maintainers = [ lib.maintainers.vbgl ];
};
}
})

View File

@@ -18,14 +18,14 @@
yojson,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "lambdapi";
version = "3.0.0";
minimalOCamlVersion = "4.14";
src = fetchurl {
url = "https://github.com/Deducteam/lambdapi/releases/download/${version}/lambdapi-${version}.tbz";
url = "https://github.com/Deducteam/lambdapi/releases/download/${finalAttrs.version}/lambdapi-${finalAttrs.version}.tbz";
hash = "sha256-EGau0mGP2OakAMUUfb9V6pd86NP+LlGKxnhcZ3WhuL4=";
};
@@ -64,7 +64,7 @@ buildDunePackage rec {
homepage = "https://github.com/Deducteam/lambdapi";
description = "Proof assistant based on the λΠ-calculus modulo rewriting";
license = lib.licenses.cecill21;
changelog = "https://github.com/Deducteam/lambdapi/raw/${version}/CHANGES.md";
changelog = "https://github.com/Deducteam/lambdapi/raw/${finalAttrs.version}/CHANGES.md";
maintainers = with lib.maintainers; [ bcdarwin ];
};
}
})

View File

@@ -8,7 +8,7 @@
ounit2,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "lambdasoup";
version = "1.1.1";
@@ -16,8 +16,8 @@ buildDunePackage rec {
src = fetchFromGitHub {
owner = "aantron";
repo = pname;
rev = version;
repo = "lambdasoup";
rev = finalAttrs.version;
hash = "sha256-+d1JPU7OyQgt8pDTlwZraqPHH+OBQD1ycsELKpHT95Y=";
};
@@ -36,4 +36,4 @@ buildDunePackage rec {
maintainers = [ lib.maintainers.vbgl ];
};
}
})

View File

@@ -7,7 +7,7 @@
lame,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "lame";
version = "0.3.7";
@@ -16,7 +16,7 @@ buildDunePackage rec {
src = fetchFromGitHub {
owner = "savonet";
repo = "ocaml-lame";
rev = "v${version}";
rev = "v${finalAttrs.version}";
sha256 = "sha256-/ZzoGFQQrBf17TaBPSFDQ1yHaQnva56YLmscOacrKBI=";
};
@@ -30,4 +30,4 @@ buildDunePackage rec {
license = lib.licenses.gpl2Plus;
maintainers = with lib.maintainers; [ dandellion ];
};
}
})

View File

@@ -5,7 +5,7 @@
ocaml,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "landmarks";
version = "1.5";
minimalOCamlVersion = "4.08";
@@ -13,14 +13,14 @@ buildDunePackage rec {
src = fetchFromGitHub {
owner = "LexiFi";
repo = "landmarks";
tag = "v${version}";
tag = "v${finalAttrs.version}";
hash = "sha256-eIq02D19OzDOrMDHE1Ecrgk+T6s9vj2X6B2HY+z+K8Q=";
};
doCheck = lib.versionAtLeast ocaml.version "4.08" && lib.versionOlder ocaml.version "5.0";
meta = {
inherit (src.meta) homepage;
inherit (finalAttrs.src.meta) homepage;
description = "Simple Profiling Library for OCaml";
longDescription = ''
Landmarks is a simple profiling library for OCaml. It provides
@@ -28,8 +28,8 @@ buildDunePackage rec {
instrumentation of the code may either done by hand, automatically or
semi-automatically using the ppx pepreprocessor (see landmarks-ppx package).
'';
changelog = "https://raw.githubusercontent.com/LexiFi/landmarks/refs/tags/v${version}/CHANGES.md";
changelog = "https://raw.githubusercontent.com/LexiFi/landmarks/refs/tags/v${finalAttrs.version}/CHANGES.md";
maintainers = with lib.maintainers; [ kenran ];
license = lib.licenses.mit;
};
}
})

View File

@@ -6,7 +6,7 @@
xmlplaylist,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "lastfm";
version = "0.3.4";
@@ -15,7 +15,7 @@ buildDunePackage rec {
src = fetchFromGitHub {
owner = "savonet";
repo = "ocaml-lastfm";
rev = "v${version}";
rev = "v${finalAttrs.version}";
sha256 = "sha256-1te9B2+sUmkT/i2K5ueswWAWpvJf9rXob0zR4CMOJlg=";
};
@@ -30,4 +30,4 @@ buildDunePackage rec {
license = lib.licenses.lgpl21Only;
maintainers = with lib.maintainers; [ dandellion ];
};
}
})

View File

@@ -7,7 +7,7 @@
ounit,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "lens";
version = "1.2.5";
@@ -16,7 +16,7 @@ buildDunePackage rec {
src = fetchFromGitHub {
owner = "pdonadeo";
repo = "ocaml-lens";
rev = "v${version}";
rev = "v${finalAttrs.version}";
sha256 = "1k23n7pa945fk6nbaq6nlkag5kg97wsw045ghz4gqp8b9i2im3vn";
};
@@ -37,4 +37,4 @@ buildDunePackage rec {
kazcw
];
};
}
})

View File

@@ -18,12 +18,12 @@
domain-name,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "letsencrypt";
version = "1.1.0";
src = fetchurl {
url = "https://github.com/mmaker/ocaml-letsencrypt/releases/download/v${version}/letsencrypt-${version}.tbz";
url = "https://github.com/mmaker/ocaml-letsencrypt/releases/download/v${finalAttrs.version}/letsencrypt-${finalAttrs.version}.tbz";
hash = "sha256-Iw55GffyG5tWA49hao1z9BX6p4N2+EKuhLIoOwG8EKM=";
};
@@ -57,4 +57,4 @@ buildDunePackage rec {
maintainers = [ lib.maintainers.sternenseemann ];
homepage = "https://github.com/mmaker/ocaml-letsencrypt";
};
}
})

View File

@@ -5,12 +5,12 @@
config,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "libc";
version = "0.0.1";
src = fetchurl {
url = "https://github.com/ocaml-sys/libc.ml/releases/download/${version}/libc-${version}.tbz";
url = "https://github.com/ocaml-sys/libc.ml/releases/download/${finalAttrs.version}/libc-${finalAttrs.version}.tbz";
hash = "sha256-e5x5Yae7V6qOpq+aLZaV+6L9ldy9qDqd9Kc8nkAsENg=";
};
@@ -23,4 +23,4 @@ buildDunePackage rec {
homepage = "https://github.com/ocaml-sys/libc.ml";
license = lib.licenses.mit;
};
}
})

View File

@@ -8,14 +8,14 @@
lilv,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "lilv";
version = "0.1.0";
src = fetchFromGitHub {
owner = "savonet";
repo = "ocaml-lilv";
rev = "v${version}";
rev = "v${finalAttrs.version}";
sha256 = "080ja8c4sxprk5qnldpfzxriag57m9603vny3b4bnwh5xm1id08c";
};
@@ -34,4 +34,4 @@ buildDunePackage rec {
license = lib.licenses.lgpl21Only;
maintainers = with lib.maintainers; [ dandellion ];
};
}
})

View File

@@ -5,7 +5,7 @@
result,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "linenoise";
version = "1.5.1";
@@ -13,8 +13,8 @@ buildDunePackage rec {
src = fetchFromGitHub {
owner = "fxfactorial";
repo = "ocaml-${pname}";
rev = "v${version}";
repo = "ocaml-linenoise";
rev = "v${finalAttrs.version}";
sha256 = "sha256-yWBWMbk1anXaF4hIakTOcRZFCYmxI0xG3bHFFOAyEDA=";
};
@@ -24,6 +24,6 @@ buildDunePackage rec {
description = "OCaml bindings to linenoise";
license = lib.licenses.bsd3;
maintainers = [ lib.maintainers.vbgl ];
inherit (src.meta) homepage;
inherit (finalAttrs.src.meta) homepage;
};
}
})

View File

@@ -7,7 +7,7 @@
liblo,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "lo";
version = "0.2.0";
@@ -16,7 +16,7 @@ buildDunePackage rec {
src = fetchFromGitHub {
owner = "savonet";
repo = "ocaml-lo";
rev = "v${version}";
rev = "v${finalAttrs.version}";
sha256 = "0mi8h6f6syxjkxz493l5c3l270pvxx33pz0k3v5465wqjsnppar2";
};
@@ -36,4 +36,4 @@ buildDunePackage rec {
license = lib.licenses.lgpl21Plus;
maintainers = with lib.maintainers; [ dandellion ];
};
}
})

View File

@@ -7,14 +7,14 @@
qcheck-alcotest,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "lru";
version = "0.3.1";
duneVersion = "3";
src = fetchurl {
url = "https://github.com/pqwy/lru/releases/download/v${version}/lru-${version}.tbz";
url = "https://github.com/pqwy/lru/releases/download/v${finalAttrs.version}/lru-${finalAttrs.version}.tbz";
hash = "sha256-bL4j0np9WyRPhpwLiBQNR/cPQTpkYu81wACTJdSyNv0=";
};
@@ -29,4 +29,4 @@ buildDunePackage rec {
maintainers = [ lib.maintainers.vbgl ];
license = lib.licenses.isc;
};
}
})

View File

@@ -3,7 +3,7 @@
fetchFromGitHub,
buildDunePackage,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "lua-ml";
version = "0.9.4";
@@ -12,14 +12,14 @@ buildDunePackage rec {
src = fetchFromGitHub {
owner = "lindig";
repo = "lua-ml";
tag = version;
tag = finalAttrs.version;
hash = "sha256-kMBTHzmlrRWNpWwG321jYcM61rE1J3YQkygSrfnZ6Wc=";
};
meta = {
description = "Embeddable Lua 2.5 interpreter implemented in OCaml";
inherit (src.meta) homepage;
inherit (finalAttrs.src.meta) homepage;
license = lib.licenses.bsd2;
maintainers = [ lib.maintainers.vbgl ];
};
}
})

View File

@@ -4,14 +4,14 @@
fetchurl,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "lun";
version = "0.0.2";
minimalOCamlVersion = "4.12.0";
src = fetchurl {
url = "https://github.com/robur-coop/lun/releases/download/v${version}/lun-${version}.tbz";
url = "https://github.com/robur-coop/lun/releases/download/v${finalAttrs.version}/lun-${finalAttrs.version}.tbz";
hash = "sha256-1oqjTXY+/jJT1uQOV6iiK9qV9DAmERYsL2BtentmB8I=";
};
@@ -21,4 +21,4 @@ buildDunePackage rec {
license = lib.licenses.isc;
maintainers = [ ];
};
}
})

View File

@@ -8,14 +8,14 @@
yaml,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "lustre-v6";
version = "6.107.4";
minimalOCamlVersion = "4.12";
src = fetchurl {
url = "https://www-verimag.imag.fr/DIST-TOOLS/SYNCHRONE/pool/lustre-v6.v${version}.tgz";
url = "https://www-verimag.imag.fr/DIST-TOOLS/SYNCHRONE/pool/lustre-v6.v${finalAttrs.version}.tgz";
hash = "sha256-baT5ZJtg5oFoJ5eHb3ISsmY6G31UG10KlNXC+ta+M1c=";
};
@@ -36,4 +36,4 @@ buildDunePackage rec {
];
mainProgram = "lv6";
};
}
})

View File

@@ -6,14 +6,14 @@
num,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "lutils";
version = "1.54.1";
minimalOCamlVersion = "4.02";
src = fetchurl {
url = "https://www-verimag.imag.fr/DIST-TOOLS/SYNCHRONE/pool/lutils.v${version}.tgz";
url = "https://www-verimag.imag.fr/DIST-TOOLS/SYNCHRONE/pool/lutils.v${finalAttrs.version}.tgz";
hash = "sha512:d3c3b80286b1aa236ba922d9e18a133721fc80126c8b89520fb811dce9400e217aaa75b5d49e03988be7f6bf5f2e1a391d02ceeaa5ec0a0cd5ce218083a29514";
};
@@ -25,8 +25,8 @@ buildDunePackage rec {
meta = {
homepage = "https://gricad-gitlab.univ-grenoble-alpes.fr/verimag/synchrone/lutils/";
description = "Tools and libs shared by Verimag/synchronous tools (lustre, lutin, rdbg)";
changelog = "https://gricad-gitlab.univ-grenoble-alpes.fr/verimag/synchrone/lutils/-/releases/v${version}";
changelog = "https://gricad-gitlab.univ-grenoble-alpes.fr/verimag/synchrone/lutils/-/releases/v${finalAttrs.version}";
license = lib.licenses.cecill21;
mainProgram = "gnuplot-rif";
};
}
})

View File

@@ -14,12 +14,12 @@ let
version,
sha256,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "luv";
inherit version;
src = fetchurl {
url = "https://github.com/aantron/luv/releases/download/${version}/luv-${version}.tar.gz";
url = "https://github.com/aantron/luv/releases/download/${finalAttrs.version}/luv-${finalAttrs.version}.tar.gz";
inherit sha256;
};
@@ -52,7 +52,7 @@ let
sternenseemann
];
};
};
});
in
{
luv-0-5-12 = generic {

View File

@@ -5,7 +5,6 @@
eio,
lwt,
}:
buildDunePackage (finalAttrs: {
pname = "lwt_eio";
version = if lib.versionAtLeast lwt.version "6.0.0" then "0.6" else "0.5.1";

View File

@@ -6,14 +6,14 @@
lwt,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "lwt_ssl";
version = "1.2.0";
duneVersion = "3";
src = fetchurl {
url = "https://github.com/ocsigen/lwt_ssl/releases/download/${version}/lwt_ssl-${version}.tbz";
url = "https://github.com/ocsigen/lwt_ssl/releases/download/${finalAttrs.version}/lwt_ssl-${finalAttrs.version}.tbz";
hash = "sha256-swIK0nrs83fhw/J0Cgizbcu6mR+EMGZRE1dBBUiImnc=";
};
@@ -28,4 +28,4 @@ buildDunePackage rec {
license = lib.licenses.lgpl21;
maintainers = [ lib.maintainers.vbgl ];
};
}
})

View File

@@ -7,14 +7,14 @@
ounit2,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "macaddr";
version = "5.6.2";
minimalOCamlVersion = "4.04";
src = fetchurl {
url = "https://github.com/mirage/ocaml-ipaddr/releases/download/v${version}/ipaddr-${version}.tbz";
url = "https://github.com/mirage/ocaml-ipaddr/releases/download/v${finalAttrs.version}/ipaddr-${finalAttrs.version}.tbz";
hash = "sha256-CKP6bmQRSQtmYeWxAinqnsa4w3OOn2slWFmxPxRb4TY=";
};
@@ -30,4 +30,4 @@ buildDunePackage rec {
license = lib.licenses.isc;
maintainers = [ ];
};
}
})

View File

@@ -6,7 +6,7 @@
libmad,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "mad";
version = "0.5.3";
@@ -15,7 +15,7 @@ buildDunePackage rec {
src = fetchFromGitHub {
owner = "savonet";
repo = "ocaml-mad";
rev = "v${version}";
rev = "v${finalAttrs.version}";
sha256 = "sha256-rSFzWyUYTrGL7GvVsY5qKdCXqY/XJQkuBerexG838jc=";
};
@@ -28,4 +28,4 @@ buildDunePackage rec {
license = lib.licenses.gpl2Plus;
maintainers = with lib.maintainers; [ dandellion ];
};
}
})

View File

@@ -4,12 +4,12 @@
buildDunePackage,
}:
buildDunePackage rec {
buildDunePackage (finalAttrs: {
pname = "magic-mime";
version = "1.3.1";
src = fetchurl {
url = "https://github.com/mirage/ocaml-magic-mime/releases/download/v${version}/magic-mime-${version}.tbz";
url = "https://github.com/mirage/ocaml-magic-mime/releases/download/v${finalAttrs.version}/magic-mime-${finalAttrs.version}.tbz";
hash = "sha256-4CNNA2Jduh76xY5X44dnLXWl6aYh/0ms/g9gnADxOwg=";
};
@@ -21,4 +21,4 @@ buildDunePackage rec {
license = lib.licenses.isc;
maintainers = with lib.maintainers; [ vbgl ];
};
}
})

Some files were not shown because too many files have changed in this diff Show More