Merge release-26.05 into staging-next-26.05

This commit is contained in:
nixpkgs-ci[bot]
2026-08-09 00:18:17 +00:00
committed by GitHub
23 changed files with 243 additions and 157 deletions

View File

@@ -12,7 +12,7 @@ const reviewKey = 'check-target-branch'
/**
* @param {{
* github: InstanceType<import('@actions/github/lib/utils').GitHub>,
* context: import('@actions/github/lib/context').Context
* context: typeof import('@actions/github').context
* core: import('@actions/core')
* dry: boolean
* }} CheckTargetBranchProps

View File

@@ -5,7 +5,7 @@ const { getCommitDetailsForPR } = require('./get-pr-commit-details')
/**
* @param {{
* github: InstanceType<import('@actions/github/lib/utils').GitHub>,
* context: import('@actions/github/lib/context').Context,
* context: typeof import('@actions/github').context,
* core: import('@actions/core'),
* repoPath?: string,
* dry: boolean,

View File

@@ -11,13 +11,13 @@
}:
buildGoModule (finalAttrs: {
pname = "alist";
version = "3.57.0";
version = "3.63.0";
src = fetchFromGitHub {
owner = "AlistGo";
repo = "alist";
tag = "v${finalAttrs.version}";
hash = "sha256-wwV65vxNSrGzP7TQ+nnjWS+dcCj/+67WcMPRbNqOVbQ=";
hash = "sha256-G3guBu+SRIF8a4OZzPvnu2Ri1N7VRst4LB/WCykmH58=";
# populate values that require us to use git. By doing this in postFetch we
# can delete .git afterwards and maintain better reproducibility of the src.
leaveDotGit = true;
@@ -38,7 +38,7 @@ buildGoModule (finalAttrs: {
'';
proxyVendor = true;
vendorHash = "sha256-aRnS3LLG25FK1ELKd7K1e5aGLmKnQ7w/3QVe4P9RRLI=";
vendorHash = "sha256-oHuNsTfP216Kd46TNF8oUDGgoABq1NtPiPN1srOFJzE=";
buildInputs = [ fuse ];
@@ -62,6 +62,7 @@ buildGoModule (finalAttrs: {
ldflags+=" -X \"github.com/alist-org/alist/v3/internal/conf.BuiltAt=$(cat SOURCE_DATE_EPOCH)\""
ldflags+=" -X github.com/alist-org/alist/v3/internal/conf.GitCommit=$(cat COMMIT)"
'';
__darwinAllowLocalNetworking = true;
checkFlags =
let
@@ -94,10 +95,10 @@ buildGoModule (finalAttrs: {
passthru = {
updateScript = lib.getExe (callPackage ./update.nix { });
webVersion = "3.57.0";
webVersion = "3.63.0";
web = fetchzip {
url = "https://github.com/AlistGo/alist-web/releases/download/${finalAttrs.passthru.webVersion}/dist.tar.gz";
hash = "sha256-QP1eWlSr7XBX8jUyvXhpmEGIwWaY6wy4M2l/35AiuUg=";
hash = "sha256-uWktKQU9EYPXj88Wj8LbRbuIPqW2u3EBQ5MM82wawtM=";
};
};

View File

@@ -8,13 +8,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "croaring";
version = "4.7.2";
version = "5.0.0";
src = fetchFromGitHub {
owner = "RoaringBitmap";
repo = "CRoaring";
tag = "v${finalAttrs.version}";
hash = "sha256-WSEMkXkR6diE5CV3gQ3tUAodLqNsWmBmrGyXOKg4CJA=";
hash = "sha256-DLVIEFXQCmfSkFIRd6s9VbpdsypuyYgaI+ZwmV55YVs=";
};
# roaring.pc.in cannot handle absolute CMAKE_INSTALL_*DIRs, nor

View File

@@ -0,0 +1,85 @@
From cecdea95801630c87ef1cc502437fedc608631bd Mon Sep 17 00:00:00 2001
From: Michael Catanzaro <mcatanzaro@gnome.org>
Date: Fri, 10 Jul 2026 08:55:09 -0500
Subject: [PATCH] Fix address bar spoofing when userinfo contains : character
Our algorithm for finding the host component of the URL without using a
URL parser is easily defeated by a colon in the userinfo section.
Tighten this up.
It's a real shame that we cannot use a normal URL parser here. But the
goal is to return a pointer into the original string, without mutating
it, so that's not an option.
Fixes #2897
(cherry picked from commit 0dde1d369458ac5c44b74b5ad3c433f825f6f8af)
Co-authored-by: Michael Catanzaro <mcatanzaro@gnome.org>
---
lib/ephy-uri-helpers.c | 7 ++++---
tests/ephy-uri-helpers-test.c | 16 +++++++++++++++-
2 files changed, 19 insertions(+), 4 deletions(-)
diff --git a/lib/ephy-uri-helpers.c b/lib/ephy-uri-helpers.c
index aa11edb43..a67005741 100644
--- a/lib/ephy-uri-helpers.c
+++ b/lib/ephy-uri-helpers.c
@@ -96,11 +96,12 @@ ephy_uri_get_base_domain (const char *hostname)
static const char *
get_first_colon_after_host (const char *authority_start)
{
- const char *search_start = authority_start;
+ const char *userinfo_end = strchr (authority_start, '@');
+ const char *search_start = userinfo_end ? userinfo_end + 1 : authority_start;
/* Skip colons in IPv6 addresses */
- if (authority_start[0] == '[') {
- const char *bracket_close = strchr (authority_start, ']');
+ if (search_start[0] == '[') {
+ const char *bracket_close = strchr (search_start, ']');
if (bracket_close)
search_start = bracket_close;
}
diff --git a/tests/ephy-uri-helpers-test.c b/tests/ephy-uri-helpers-test.c
index daf5b7180..b800419db 100644
--- a/tests/ephy-uri-helpers-test.c
+++ b/tests/ephy-uri-helpers-test.c
@@ -30,12 +30,25 @@ test_ephy_uri_decode (void)
result = ephy_uri_decode ("https://ja.wikipedia.org/wiki/%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8");
g_assert_cmpstr (result, ==, "https://ja.wikipedia.org/wiki/メインページ");
-
g_clear_pointer (&result, g_free);
+
result = ephy_uri_decode ("https://xn--9dbaqfu.xn--4dbrk0ce/");
g_assert_cmpstr (result, ==, "https://כולנו.ישראל/");
}
+static void
+test_ephy_uri_get_decoded_host (void)
+{
+ g_autofree char *result = NULL;
+
+ result = ephy_uri_get_decoded_host ("https://example.com:80@www.gnome.org/");
+ g_assert_cmpstr (result, ==, "www.gnome.org");
+ g_clear_pointer (&result, g_free);
+
+ result = ephy_uri_get_decoded_host ("https://[::1]:8080/");
+ g_assert_cmpstr (result, ==, "[::1]");
+}
+
int
main (int argc,
char *argv[])
@@ -45,6 +58,7 @@ main (int argc,
g_test_init (&argc, &argv, NULL);
g_test_add_func ("/lib/ephy-uri-helpers/decode", test_ephy_uri_decode);
+ g_test_add_func ("/lib/ephy-uri-helpers/get-decoded-host", test_ephy_uri_get_decoded_host);
ret = g_test_run ();
--
GitLab

View File

@@ -5,6 +5,7 @@
meson,
ninja,
gettext,
fetchpatch,
fetchurl,
pkg-config,
gtk4,
@@ -46,6 +47,18 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-Hib5kB8PCL/pQ6pwFjyVMzTH7D1K78jTVOipwUCzNKc=";
};
patches = [
# Required for `CVE-2026-18487.patch` to apply
(fetchpatch {
name = "fix-ipv6-address-prettification.patch";
url = "https://gitlab.gnome.org/GNOME/epiphany/-/commit/e63bfdc7f117c9b60ea54b5760363ab256b9ff2b.patch";
hash = "sha256-9m8R5GUOBCm3xDXVHBDrV/HbjfIDL+D3wUGkkqc4RmA==";
})
# Upstream issue: https://gitlab.gnome.org/GNOME/epiphany/-/work_items/2897
# Upstream PR: https://gitlab.gnome.org/GNOME/epiphany/-/merge_requests/2123
./CVE-2026-18487.patch
];
nativeBuildInputs = [
blueprint-compiler
desktop-file-utils

View File

@@ -30,13 +30,13 @@ let
in
buildGoModule (finalAttrs: {
pname = "frankenphp";
version = "1.12.5";
version = "1.12.6";
src = fetchFromGitHub {
owner = "php";
repo = "frankenphp";
tag = "v${finalAttrs.version}";
hash = "sha256-1f+3w9x6P1euUZr4hC4jOkgEJEbS/MJ11u+chGShCno=";
hash = "sha256-Rj4ClbTP0vqHtCZZNQQHFIVZ/Ep6F7W4MY6CztVV9LQ=";
};
sourceRoot = "${finalAttrs.src.name}/caddy";
@@ -44,7 +44,7 @@ buildGoModule (finalAttrs: {
# frankenphp requires C code that would be removed with `go mod tidy`
# https://github.com/golang/go/issues/26366
proxyVendor = true;
vendorHash = "sha256-d6ZTi1Ihu011eKVdHMiW9oSdPB4SYpDHMFxH65XLGac=";
vendorHash = "sha256-28CWF9AUweUoCBDWtG10XGACpkslEPrVvkj1VDCrTiM=";
buildInputs = [
phpUnwrapped

View File

@@ -1,26 +1,26 @@
{
lib,
rustPlatform,
fetchFromSourcehut,
fetchFromCodeberg,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "kitty-img";
version = "1.1.0";
version = "1.1.1";
src = fetchFromSourcehut {
owner = "~zethra";
src = fetchFromCodeberg {
owner = "sashanoraa";
repo = "kitty-img";
rev = finalAttrs.version;
hash = "sha256-liqLocNIIOmkVWI8H9WU7T352sK7sceVtOX+R0BQ/uk=";
hash = "sha256-r5gt5ESQ/2Z//k6rZtPSp1dnQOYvB6+7T7LUcSryrHY=";
};
cargoHash = "sha256-50M1TUGvjELARt/gvtyAPNL0hG1ekKwdefI9nMEsTo0=";
cargoHash = "sha256-S/f2Q9SpPuAJLr8QkdWjRGwcuE64AhXJMcXMvwAMIUw=";
meta = {
description = "Print images inline in kitty";
homepage = "https://git.sr.ht/~zethra/kitty-img";
changelog = "https://git.sr.ht/~zethra/kitty-img/refs/${finalAttrs.version}";
homepage = "https://codeberg.org/sashanoraa/kitty-img";
changelog = "https://codeberg.org/sashanoraa/kitty-img/releases/tag/${finalAttrs.version}";
license = with lib.licenses; [ mit ];
maintainers = with lib.maintainers; [ gaykitty ];
mainProgram = "kitty-img";

View File

@@ -10,14 +10,15 @@
cassava,
containers,
directory,
doctest-parallel,
extra,
fetchzip,
filelock,
filepath,
fsnotify,
hermes-json,
HUnit,
lib,
MemoTrie,
nix-derivation,
optics,
random,
@@ -27,7 +28,6 @@
stm,
streamly-core,
strict,
strict-types,
terminal-size,
text,
time,
@@ -38,11 +38,12 @@
}:
mkDerivation {
pname = "nix-output-monitor";
version = "2.1.8";
version = "2.2.0";
src = fetchzip {
url = "https://code.maralorn.de/maralorn/nix-output-monitor/archive/v2.1.8.tar.gz";
sha256 = "09zpz9dbllaqngkg6hz0vl4sx3kbvlp4cdk6lqa0kgszrwsdwl9r";
url = "https://code.maralorn.de/maralorn/nix-output-monitor/archive/v2.2.0.tar.gz";
sha256 = "14qlawcwi4zq586rq75msxh19nkwh3zigzl41g7gdj7fzg030rnl";
};
postUnpack = "sourceRoot+=/nix-output-monitor; echo source root reset to $sourceRoot";
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [
@@ -57,8 +58,8 @@ mkDerivation {
extra
filelock
filepath
fsnotify
hermes-json
MemoTrie
nix-derivation
optics
relude
@@ -67,7 +68,6 @@ mkDerivation {
stm
streamly-core
strict
strict-types
terminal-size
text
time
@@ -86,8 +86,8 @@ mkDerivation {
extra
filelock
filepath
fsnotify
hermes-json
MemoTrie
nix-derivation
optics
relude
@@ -96,7 +96,6 @@ mkDerivation {
stm
streamly-core
strict
strict-types
terminal-size
text
time
@@ -114,12 +113,13 @@ mkDerivation {
cassava
containers
directory
doctest-parallel
extra
filelock
filepath
fsnotify
hermes-json
HUnit
MemoTrie
nix-derivation
optics
random
@@ -129,7 +129,6 @@ mkDerivation {
stm
streamly-core
strict
strict-types
terminal-size
text
time
@@ -139,7 +138,7 @@ mkDerivation {
];
homepage = "https://code.maralorn.de/maralorn/nix-output-monitor";
description = "Processes output of Nix commands to show helpful and pretty information";
license = lib.licenses.agpl3Plus;
license = lib.meta.getLicenseFromSpdxId "EUPL-1.2";
mainProgram = "nom";
maintainers = [ lib.maintainers.maralorn ];
}

View File

@@ -12,7 +12,10 @@ let
# nom has unit-tests and golden-tests
# golden-tests call nix and thus cant be run in a nix build.
testTargets = [ "unit-tests" ];
testTargets = [
"unit-tests"
"doc-tests"
];
buildTools = [ installShellFiles ];
postInstall = ''

View File

@@ -25,6 +25,7 @@ EOF
cabal2nix \
--maintainer maralorn \
"https://code.maralorn.de/maralorn/nix-output-monitor/archive/${new_version}.tar.gz" \
--subpath nix-output-monitor \
>> "$derivation_file"
nixfmt "$derivation_file"

View File

@@ -5,6 +5,7 @@
glib,
glib-networking,
gsettings-desktop-schemas,
jdk25,
jdk17,
jdk21,
jdk8,
@@ -12,6 +13,7 @@
jdk8
jdk17
jdk21
jdk25
],
lib,
libGL,
@@ -84,7 +86,7 @@ symlinkJoin {
glibPostInstallHook
gappsWrapperArgsHook
wrapGAppsHook
wrapGApp "$out/bin/noriskclient-launcher-v3"
'';
meta = {

View File

@@ -18,6 +18,12 @@ let
hash = "sha256-SP5Huefj35PHvVzqS8R/DGSBci/hCHoueEb5RupGVqY=";
};
# we need datasets_3 for SpeechT5 embeddings
datasets = python3Packages.datasets_3;
colbert-ai = python3Packages.colbert-ai.override {
inherit datasets;
};
frontend = buildNpmPackage rec {
pname = "open-webui-frontend";
inherit version src;
@@ -107,7 +113,7 @@ python3Packages.buildPythonApplication (finalAttrs: {
chardet
chromadb
cryptography
datasets_3
datasets
ddgs
docx2txt
einops

View File

@@ -1,30 +1,31 @@
{
lib,
fetchFromGitHub,
buildGo126Module,
buildGo127Module,
stdenvNoCC,
nodejs,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
pnpmBuildHook,
nixosTests,
nix-update-script,
versionCheckHook,
}:
buildGo126Module (finalAttrs: {
buildGo127Module (finalAttrs: {
pname = "pocket-id";
version = "2.9.0";
version = "2.12.0";
src = fetchFromGitHub {
owner = "pocket-id";
repo = "pocket-id";
tag = "v${finalAttrs.version}";
hash = "sha256-ZGjlEbx7gU1HHJRRSONFq/nYnubHOjfxQsVYpEHQkGE=";
hash = "sha256-n9yqZs8RlgJk+NByRJ7a+HRY4YkQNNH7xY02BSy/RhE=";
};
sourceRoot = "${finalAttrs.src.name}/backend";
vendorHash = "sha256-elY0YGOOtZtlLnyFiDJ6ZzZULhI183kZgsFmQQAg2EE=";
vendorHash = "sha256-BGIF9ZhPAJrUvX1cahe3EyWM3QLIfkkZaChaBign7io=";
env.CGO_ENABLED = 0;
ldflags = [
@@ -37,8 +38,7 @@ buildGo126Module (finalAttrs: {
'';
checkFlags = [
# requires networking
"-skip=TestOidcService_downloadAndSaveLogoFromURL"
"-tags=unit"
];
# required for TestIsURLPrivate
@@ -59,24 +59,19 @@ buildGo126Module (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpmConfigHook
pnpmBuildHook
pnpm_10
];
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs) pname version src;
pnpm = pnpm_10;
fetcherVersion = 3;
hash = "sha256-lQw+hmJcEBzMe3uOTmRErfHojAHwnRBN6aTy7yK9BCA=";
fetcherVersion = 4;
hash = "sha256-iXWR3idBiafZXCrt1M7UCJQJsA+IL2AU6pRJI7MdY1E=";
};
env.BUILD_OUTPUT_PATH = "dist";
buildPhase = ''
runHook preBuild
pnpm --filter pocket-id-frontend build
runHook postBuild
'';
pnpmWorkspaces = [ "pocket-id-frontend" ];
installPhase = ''
runHook preInstall
@@ -111,6 +106,7 @@ buildGo126Module (finalAttrs: {
marcusramberg
tmarkus
ymstnt
esch
];
platforms = lib.platforms.unix;
};

View File

@@ -42,6 +42,12 @@ stdenv.mkDerivation (finalAttrs: {
ln -s ${libnbtplusplus} source/libraries/libnbtplusplus
'';
# Ensure that instance shortucts point to our final wrapper, rather than this unwrapped version
postPatch = ''
substituteInPlace launcher/minecraft/ShortcutUtils.cpp \
--replace-fail 'QApplication::applicationFilePath()' 'QProcessEnvironment::systemEnvironment().value("NIX_LAUNCHER_WRAPPER", "${placeholder "out"}/bin/prismlauncher")'
'';
nativeBuildInputs = [
cmake
pkg-config

View File

@@ -122,7 +122,10 @@ symlinkJoin {
++ additionalPrograms;
in
[ "--prefix PRISMLAUNCHER_JAVA_PATHS : ${lib.makeSearchPath "bin/java" jdks}" ]
[
"--set NIX_LAUNCHER_WRAPPER ${placeholder "out"}/bin/prismlauncher"
"--prefix PRISMLAUNCHER_JAVA_PATHS : ${lib.makeSearchPath "bin/java" jdks}"
]
++ lib.optionals stdenv.hostPlatform.isLinux [
"--set LD_LIBRARY_PATH ${addDriverRunpath.driverLink}/lib:${lib.makeLibraryPath runtimeLibs}"
"--prefix PATH : ${lib.makeBinPath runtimePrograms}"

View File

@@ -7,13 +7,13 @@
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "privatebin";
version = "2.0.5";
version = "2.0.6";
src = fetchFromGitHub {
owner = "PrivateBin";
repo = "PrivateBin";
tag = finalAttrs.version;
hash = "sha256-om0l9psEus4+XZ+aXQ3DK5iWtQeCfCi2D6lNP+9FM6U=";
hash = "sha256-RSgTbFUbpGUSL7rg/aWkkzDRHt/Iq9w5xDpjEsZLYa8=";
};
installPhase = ''

View File

@@ -854,35 +854,35 @@
"module": "sha256-yEQahybbGk+dTzngaOu0LfalnWR+MqnGHBW1OQ7VklI=",
"pom": "sha256-CPvpfh4ugVoUyvFv9ayHCFEb713ec51gwHE5UYdtomM="
},
"com/stirling#jpdfium-natives-darwin-arm64/1.0.2": {
"jar": "sha256-Jy3uCtUMP9v7CnP0Ax223rRCMG5uxUHpl4JcOR+c4WY=",
"module": "sha256-x1gci7X676q26K4oKG1P/1THjPVo8ofwT/c2Zxb5OkY=",
"pom": "sha256-4BlPDsF6qNpIsPt1sGe3PDoDXeTNPIR/KJ2nZKVdtlQ="
"com/stirling#jpdfium-natives-darwin-arm64/1.0.4": {
"jar": "sha256-GP8LORIvh0q82cihKer3fYKmD0uBk4hCONfB+zwipLY=",
"module": "sha256-VOWBvq3xzyb/6jtJ+GUvaUl0uIup6erhQfuhfabFs34=",
"pom": "sha256-aC3bwLjzZoQtABhpK7zcZ7iJVyztOA2NjjHRC7OjF7Q="
},
"com/stirling#jpdfium-natives-darwin-x64/1.0.2": {
"jar": "sha256-MOknHnAXXSuX9EicEI02bxeD0CZ7u5RD4uPfuMUa7JQ=",
"module": "sha256-ftSn7FE43X1Daf5S3JtKdV5Z284/wIVayo5dXlOVH0g=",
"pom": "sha256-Niue51BiUHVNrKTOWoYlX5JvR2KVkSrZK09LlfkDrv4="
"com/stirling#jpdfium-natives-darwin-x64/1.0.4": {
"jar": "sha256-0fvs/AmgOOrp4plMvxiMoh704aTQIk2nE0SxM/IV8+k=",
"module": "sha256-sJvmpLzTuXOfU1pdiL2EKCWA2RQ1FxEH2Nj1SYM6VGw=",
"pom": "sha256-s+tVZQ2TRMtaHLNK2fFY8o+xHbWNhOBW+R0oLwDRL1c="
},
"com/stirling#jpdfium-natives-linux-arm64/1.0.2": {
"jar": "sha256-PyV9SSpu26fjnBVSjWPk7ZdeqNd+w84to80fyB6RJJQ=",
"module": "sha256-PehWG6orSRJ/x/TMaTH7E0nSclIQFc5apD6Tzg1rtPk=",
"pom": "sha256-vkeoUt2Ol7DbFPuRqA3bfv3RHhmefEQctCfnBGu0PiM="
"com/stirling#jpdfium-natives-linux-arm64/1.0.4": {
"jar": "sha256-gD/T/vKIIHPldxUZ+Q038Z/qJxmloSQBjb9tsVrXtSU=",
"module": "sha256-VMzWnMRzQyulqQa+WrT1mOqgM/bjE3aGrhLdvtmsUsU=",
"pom": "sha256-KG4b/zMv4EkQkJ8Lqhfs8A2YXORJHFElIrTpBLRZNoc="
},
"com/stirling#jpdfium-natives-linux-x64/1.0.2": {
"jar": "sha256-SL8w09JO+B07MMq0/I9zNf11YcoiyIHOzVw+bkOa2fY=",
"module": "sha256-8mm3odjyo8gozfNk8YaFBGP17Wggr1QfY89zoIa6REE=",
"pom": "sha256-0YRWllBTpznT+9RfdlyseRMezCs3JxtEEWHkNMCSTLg="
"com/stirling#jpdfium-natives-linux-x64/1.0.4": {
"jar": "sha256-u0tnfzEDISd2SmScZhV4Bn/Ucxb5Pm//65kVJHMDtf0=",
"module": "sha256-ad5CtEBwXHBGQWZntVz8JhMuSv2yKj4SPHqRAV5NS+g=",
"pom": "sha256-kn/kj5Rb2p2o/dn8IiOMXbIMh9emYopuGceU8X2qbL4="
},
"com/stirling#jpdfium-natives-windows-x64/1.0.2": {
"jar": "sha256-x+zlqBIhD+qUBFbYNQIYiSsDgKLYZFoObz8h5QaYbv8=",
"module": "sha256-B8lrv5noknHeZGIO2spu4fDzJ+KD7MpQSGuz5jW/BEo=",
"pom": "sha256-h5aXa6biCbWGtWe+Z7sbOBVU8fjfDshdBusdpvPoiOw="
"com/stirling#jpdfium-natives-windows-x64/1.0.4": {
"jar": "sha256-R1KlxhnNXsQ3jaS89XlEKvH9Eaob6HHSRiwt7nZYYYg=",
"module": "sha256-GK1CPKIIGydZUPtMM/5d8HmbfbANC/TYlLG9M3YF1Z0=",
"pom": "sha256-d+vYh31gpx840YXxi/YglZlZ9k6e3QfSkIYI7V//5L8="
},
"com/stirling#jpdfium/1.0.2": {
"jar": "sha256-m5vQo+K1whZs+3LV8etFnT047pTIayWhCB98lZ636+Y=",
"module": "sha256-iLo6iB9ancv1mXJFZ1oNBMRwZrx5vDEcmCGFm+Ti07U=",
"pom": "sha256-d6xFgvn13+/ancvKfseKA+cDSckKlHXYmI6bNNbv0KU="
"com/stirling#jpdfium/1.0.4": {
"jar": "sha256-Jh+davgVoFtvYrwXy+j9I84gLu+eP8G/P9PxE0Zc4eM=",
"module": "sha256-IDofIvoyWKJZJT3ZKjCAUba+ExE5Gm+FJh6If93qUoA=",
"pom": "sha256-SBDAt8EqzZjPETiHDbNaNy6idJmNdtvi5Q+kXhNg8/M="
},
"com/sun/activation#all/1.2.0": {
"pom": "sha256-HYUY46x1MqEE5Pe+d97zfJguUwcjxr2z1ncIzOKwwsQ="
@@ -1586,6 +1586,9 @@
"org/apache#apache/37": {
"pom": "sha256-Uk7EeHr/c69rOp+voVTH8YgbZIKZtmP9v8rdoShvI1M="
},
"org/apache#apache/39": {
"pom": "sha256-cXUu1MJDWh2Dhf4KTTMPOdBO/sifDRul0VmNOfc5ekQ="
},
"org/apache/activemq#activemq-bom/6.1.8": {
"pom": "sha256-qUF6jlh2GhfWVwzZClBokbUfd03TKZ7IC4Uxr/TlMHw="
},
@@ -1776,9 +1779,9 @@
"org/apache/logging/log4j#log4j/2.25.4": {
"pom": "sha256-+K6JBKKONPoEw103QGGdroNjJAG6HjE7r9fM9aMADew="
},
"org/apache/pdfbox#fontbox/3.0.7": {
"jar": "sha256-gUnZiXq1BPej83l9VSzYkl71gUm03j+0cOtG10fmj4Y=",
"pom": "sha256-o/xYnFZLQbybtLty0XPM5fjCM10uZtY0SJtqiwS/63o="
"org/apache/pdfbox#fontbox/3.0.8": {
"jar": "sha256-oZFcJOPtvg7OyTiW379tQUJ4ELZjrel71Oi66G7D/as=",
"pom": "sha256-F4Bd6Nrp6AUZZh3RwKYj1plZDyEs7M2x3JhScz8a6W8="
},
"org/apache/pdfbox#jbig2-imageio/3.0.3": {
"jar": "sha256-yAEQ/aVxKFY9PQZWv/eNqL81qTTPVO36EOi3b8Y4mSk=",
@@ -1788,24 +1791,24 @@
"jar": "sha256-KcspUWIvEKz2H9BlbE5vpVYhlKkJX3odJqpCbi9rF+s=",
"pom": "sha256-KOp8SskuCYX3lqi8aJCnvviSZwetrf0eLIVsmwvho4s="
},
"org/apache/pdfbox#pdfbox-io/3.0.7": {
"jar": "sha256-uag4KRl4BpCG77zR9iuBueSmAW5h3SxoEE7p9ML/mXs=",
"pom": "sha256-dCz9VwGuLNV6HS7mG+z+G9FUm6dwTH+xcZN/rQECFLY="
"org/apache/pdfbox#pdfbox-io/3.0.8": {
"jar": "sha256-NqDgQAEBC0x2SFeBdBK5YzmTCxl1XnKJWYBcwDUgYbI=",
"pom": "sha256-ytjpKa+CSTlHcTsDpE0Iwcm3g5qok17Gl5PaWbBrBPc="
},
"org/apache/pdfbox#pdfbox-parent/3.0.7": {
"pom": "sha256-z60fFpQrxTkWiDsxQ/JRfseUc3Es1yNKWopxwQsPrnQ="
"org/apache/pdfbox#pdfbox-parent/3.0.8": {
"pom": "sha256-8DE3PwPA+S+05JIQZFzVPkDpV5IZZVNjzhlkT/d5KD4="
},
"org/apache/pdfbox#pdfbox/3.0.7": {
"jar": "sha256-fO+nF2IjMJUbQ0Or8eXTa8yxH0uiRdeKqnMlHQj+xiM=",
"pom": "sha256-3nkpJ2LYVd1pqOVVyeDm3kD1OP+9l9AS0bs6TQRa0Ec="
"org/apache/pdfbox#pdfbox/3.0.8": {
"jar": "sha256-l2R8+95h68/Aa0z4ybD/yq7gczluzrSn9oNqm5EokDw=",
"pom": "sha256-Gs/OcY7ckA3/dbF6/UQnKwIqTw6RStvnZTHfVoYkA90="
},
"org/apache/pdfbox#preflight/3.0.7": {
"jar": "sha256-ae3MeMB9ZSe6oAYCzn/X+WcoJHVV7xpNmp0LytBSVpM=",
"pom": "sha256-sXRZcjGLrEGdHbpf9RvTh5hUHe9/vlNzIN3B+Bhf9Jw="
"org/apache/pdfbox#preflight/3.0.8": {
"jar": "sha256-N1pdLJPKxIk0NU8UbfkQdOrsnAGBY0bl6VZUNUHofmk=",
"pom": "sha256-qGdPrcs8berlpCr4cidcsEdJOPqUYTBmto12iXl0Q0g="
},
"org/apache/pdfbox#xmpbox/3.0.7": {
"jar": "sha256-pTB9h3ZBA+YZS7+4AKj3msutLfMtWdq8oiUqv5I8QBo=",
"pom": "sha256-fnE6xU8e5I9oIwDC6yft4ZEe9vVZRit38rkS6gPCm1E="
"org/apache/pdfbox#xmpbox/3.0.8": {
"jar": "sha256-8ETS4xbldxSgrfJyrYq/SoY7iXj9F9xbhtz6gTVGmxA=",
"pom": "sha256-KT0RLIe2aDxWAMHy0TmQYE/dtaRPf+AEMNB0ZJ+7d2g="
},
"org/apache/poi#poi-ooxml-lite/5.5.1": {
"jar": "sha256-5uN63rbW7otA7Eka2VXZNNj5mCerBQ8QWxgoblmx2ec=",
@@ -1967,12 +1970,17 @@
"pom": "sha256-WrvkytLCMJR0ZvsgmiJn48xqDTgKajGRWVnTqtm4F2w="
},
"org/bouncycastle#bcpkix-jdk18on/1.77": {
"jar": "sha256-Gsf+jv1bLzjNwWW+WgZ1c0/kSAjauScHIB8DpTXW8bg=",
"pom": "sha256-j7CSbwLixLLcUuR+uwk/kvHTu28UnCpcyl4qZI0sSY0="
},
"org/bouncycastle#bcpkix-jdk18on/1.84": {
"jar": "sha256-yH8W7Z5exhvJQVHp82RqxE5QzUSBIc6ENn+kt+x+wbs=",
"pom": "sha256-wSge1er48+QFVX56UgXLbzzfdT+E3psagVx16965mSo="
},
"org/bouncycastle#bcprov-jdk18on/1.77": {
"jar": "sha256-2ruYwk1yybn1hWM9HfnFzVjZrTc9DNaBNn5qYDpJXVg=",
"pom": "sha256-rROCz80DvN2L4TkTwC9E/UadCnalPPLK71vhgK3DayM="
},
"org/bouncycastle#bcprov-jdk18on/1.84": {
"jar": "sha256-ZNbFphIfzZJxUt0YLL7Tmv4P2mQalw2bzAycsYWLJzE=",
"pom": "sha256-znq7SpG6XSpz/fF6PfR2LjYFoDksx5g+8vGuFs04TMM="
@@ -1981,6 +1989,7 @@
"pom": "sha256-p2e8fzQtGTKJfso8i6zHAEygOAv6dSnyOpc0VJZcffw="
},
"org/bouncycastle#bcutil-jdk18on/1.77": {
"jar": "sha256-lHZzvLxajd4tL6aIpbdZjQym4qdKfqMM2T8E9rOtaPg=",
"pom": "sha256-Fj36ZjL/uSinBcqDciNQys6knM1iPOc2RaXMOw+p5ug="
},
"org/bouncycastle#bcutil-jdk18on/1.84": {

View File

@@ -12,11 +12,8 @@
makeBinaryWrapper,
nodejs,
npmHooks,
pax-utils,
pkg-config,
unzip,
wrapGAppsHook3,
zip,
glib-networking,
jdk25,
@@ -38,56 +35,18 @@ assert isDesktopVariant -> !buildWithFrontend;
let
gradle = gradle_8;
jre = jdk25;
# jpdfium 1.0.2's bundled x86_64 libicudata.so.74 has an erroneous executable
# PT_GNU_STACK; the arm64 archive was checked and already has a non-executable stack.
# Fixed upstream for the next natives release; remove when Stirling-PDF updates jpdfium.
# https://github.com/Stirling-Tools/Stirling-PDF/issues/6869
# https://github.com/Stirling-Tools/JPDFium/pull/19
patchJpdfium = lib.optionalString (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isx86_64) ''
nativeJars=(
"$GRADLE_USER_HOME"/caches/modules-2/files-2.1/com.stirling/jpdfium-natives-linux-x64/*/*/jpdfium-natives-linux-x64-*.jar
)
if (( ''${#nativeJars[@]} != 1 )); then
echo "expected exactly one jpdfium native JAR, found ''${#nativeJars[@]}" >&2
exit 1
fi
nativeJar="''${nativeJars[0]}"
patchDir="$(mktemp -d)"
unzip -q "$nativeJar" natives/linux-x64/libicudata.so.74 -d "$patchDir"
scanelf -X -e "$patchDir/natives/linux-x64/libicudata.so.74"
touch --date=@315532800 "$patchDir/natives/linux-x64/libicudata.so.74"
chmod u+w "$nativeJar"
(cd "$patchDir" && zip -q -X "$nativeJar" natives/linux-x64/libicudata.so.74)
bootJars=( ./app/core/build/libs/stirling-pdf-*.jar )
if (( ''${#bootJars[@]} != 1 )); then
echo "expected exactly one Stirling-PDF JAR, found ''${#bootJars[@]}" >&2
exit 1
fi
bootJar="$(realpath "''${bootJars[0]}")"
nestedJar="BOOT-INF/lib/$(basename "$nativeJar")"
mkdir -p "$patchDir/$(dirname "$nestedJar")"
cp "$nativeJar" "$patchDir/$nestedJar"
touch --date=@315532800 "$patchDir/$nestedJar"
chmod u+w "$bootJar"
(cd "$patchDir" && zip -q -X -0 "$bootJar" "$nestedJar")
rm -rf "$patchDir"
'';
in
stdenv.mkDerivation (finalAttrs: {
__structuredAttrs = true;
pname = "stirling-pdf" + lib.optionalString isDesktopVariant "-desktop";
version = "2.14.2";
version = "2.14.3";
src = fetchFromGitHub {
owner = "Stirling-Tools";
repo = "Stirling-PDF";
tag = "v${finalAttrs.version}";
hash = "sha256-2u4d9K4OEuOw9qE4YgpGXDvVLExVGUKAeXYNCySqy1c=";
hash = "sha256-Jh7F3e7Zho3BlaBZD8xfXSCjwXyF5qQk4VSm8DIwIBY=";
};
patches = [
@@ -111,7 +70,7 @@ stdenv.mkDerivation (finalAttrs: {
name = "${finalAttrs.pname}-${finalAttrs.version}-npm-deps";
inherit (finalAttrs) src patches;
postPatch = "cd ${finalAttrs.npmRoot}";
hash = "sha256-ujvSzang7n6DJZbNU/lDlG0x1265N5LJ6prkPbBYEic=";
hash = "sha256-3JYcOtX0pBMIgUtcK6LoejIhoSR2jpnQRzhePdCfJzI=";
};
cargoRoot = "frontend/editor/src-tauri";
@@ -152,9 +111,6 @@ stdenv.mkDerivation (finalAttrs: {
gradle
jre # one of the tests also require that the `java` command is available on the command line
makeBinaryWrapper
pax-utils
unzip
zip
]
++ lib.optionals (buildWithFrontend || isDesktopVariant) [
nodejs
@@ -185,7 +141,6 @@ stdenv.mkDerivation (finalAttrs: {
# this simulates what the desktop:jlink:jar would do
gradle bootJar
${patchJpdfium}
install -Dm644 ./app/core/build/libs/stirling-pdf-*.jar -t ./frontend/editor/src-tauri/libs
# creates as minimal jre via jlink
@@ -195,8 +150,6 @@ stdenv.mkDerivation (finalAttrs: {
--replace-fail 'MimeType=application/pdf;' 'MimeType=application/pdf;x-scheme-handler/stirlingpdf;'
'';
postBuild = lib.optionalString (!isDesktopVariant) patchJpdfium;
# we use the installPhase from cargo-tauri-hook when we're building the desktop variant
installPhase = lib.optionalString (!isDesktopVariant) ''
runHook preInstall
@@ -209,12 +162,17 @@ stdenv.mkDerivation (finalAttrs: {
'';
postInstall = lib.optionalString (isDesktopVariant && stdenv.hostPlatform.isDarwin) ''
makeWrapper "$out/Applications/Stirling-PDF.app/Contents/MacOS/stirling-pdf" "$out/bin/stirling-pdf"
makeWrapper "$out/Applications/Stirling PDF.app/Contents/MacOS/Stirling-PDF" "$out/bin/stirling-pdf"
'';
passthru = {
tests = {
inherit (nixosTests) stirling-pdf-desktop; # TODO: fix or remove
};
}
// lib.optionalAttrs (!isDesktopVariant) {
# this being optional makes the auto-update PRs always put stirling-pdf in the title
updateScript = nix-update-script { };
tests = { inherit (nixosTests) stirling-pdf-desktop; };
};
meta = {

View File

@@ -14,13 +14,13 @@ let
in
buildNpmPackage (finalAttrs: {
pname = "sub-store-frontend";
version = "2.27.3";
version = "2.29.10";
src = fetchFromGitHub {
owner = "sub-store-org";
repo = "Sub-Store-Front-End";
tag = finalAttrs.version;
hash = "sha256-OO40cItVKlYAQqohxdbJkuX5Wf9y1MaId+ewfCkRjSo=";
hash = "sha256-jQXIwdt9+yndTFBCrs6bZ7dCZ2fmjti0xQAgAGZbC1M=";
};
nativeBuildInputs = [
@@ -33,7 +33,7 @@ buildNpmPackage (finalAttrs: {
inherit (finalAttrs) pname version src;
inherit pnpm;
fetcherVersion = 3;
hash = "sha256-lj93WF3mqvgaD0qnZC+X4ubw8ohz8E5ICWYWbEITYnk=";
hash = "sha256-Pr0l1JxHvpsgfsvQdENbxLehBAn7/X87lPxsbKfNBw0=";
};
npmConfigHook = pnpmConfigHook;

View File

@@ -38,7 +38,7 @@ assert withDocs -> withIntrospection;
stdenv.mkDerivation (finalAttrs: {
pname = "upower";
version = "1.91.1";
version = "1.91.2";
outputs = [
"out"
@@ -52,7 +52,7 @@ stdenv.mkDerivation (finalAttrs: {
owner = "upower";
repo = "upower";
rev = "v${finalAttrs.version}";
hash = "sha256-uXKhg3w1ybuRrIvSRBFRtuHN/eB8i8l3GBKryU+6Voo=";
hash = "sha256-lr7Va7jmC7Hy+kY8YIbAEE5mK3TxU9LtgTKxEyM1QY8=";
};
patches =

View File

@@ -1,5 +1,6 @@
{
alsa-lib,
dav1d,
dbus,
fetchFromGitHub,
lib,
@@ -25,16 +26,16 @@
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "wayvr";
version = "26.2.1";
version = "26.7.1";
src = fetchFromGitHub {
owner = "wlx-team";
repo = "wayvr";
tag = "v${finalAttrs.version}";
hash = "sha256-v1Wkelru825KV+ciXD9esLq39oTyMm/Z4rRbN+jjviY=";
hash = "sha256-SdHN3jDe2QJaRORy452RP7kTMxPOZOB/yjpApUOLhRU=";
};
cargoHash = "sha256-d6iRaOHq+4j90L76bx7+EwCLOY4MxPeqm3ELJ5H9O+8=";
cargoHash = "sha256-eGmlFtlorKG7uygLer3UW6ERLQzdugoYyXVSC2sFh+k=";
nativeBuildInputs = [
pkg-config
@@ -43,6 +44,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
buildInputs = [
alsa-lib
dav1d
dbus
libx11
libxext
@@ -78,6 +80,8 @@ rustPlatform.buildRustPackage (finalAttrs: {
postInstall = ''
install -D wayvr/wayvr.desktop -t $out/share/applications
install -D wayvr/wayvr.svg -t $out/share/icons/hicolor/scalable/apps
rm $out/bin/prost_build
'';
passthru = {

View File

@@ -53,8 +53,8 @@ let
hash = "sha256-WOFDJYhx31FYm2UcBiBdq+xIdmpdu6PCWZm2m1C+WY4=";
};
"11" = {
version = "11.18.0";
hash = "sha256-KcNcqNKih5iP3uPg824H2bk3g/VntXm3/Vt5ikVj3YE=";
version = "11.20.0";
hash = "sha256-NOGYyx5DI3UX7O39MfmuJqbAo+U2bOWKLQX0sh+18Zo=";
};
};