···4343 createSwDoc("tdf150606-1-min.odt");
44444545 SwXTextDocument* pTextDoc = dynamic_cast<SwXTextDocument*>(mxComponent.get());
4646---- a/sw/qa/extras/layout/layout3.cxx
4747-+++ b/sw/qa/extras/layout/layout3.cxx
4848-@@ -3354,6 +3354,9 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf104209VertRTL)
4949-5050- CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf56408LTR)
4646+--- a/sw/qa/extras/tiledrendering/tiledrendering.cxx
4747++++ b/sw/qa/extras/tiledrendering/tiledrendering.cxx
4848+@@ -4091,6 +4091,8 @@ CPPUNIT_TEST_FIXTURE(SwTiledRenderingTest, testRedlineTooltip)
4949+ // toggling Formatting Marks on/off for one view should have no effect on other views
5050+ CPPUNIT_TEST_FIXTURE(SwTiledRenderingTest, testToggleFormattingMarks)
5151 {
5252-+ return; // requests Noto Sans Hebrew with charset=28, which the font does not have
5353-+ // FIXME: investigate
5252++ return; // fails consistently
5453+
5454+ SwXTextDocument* pXTextDocument = createDoc();
5555+ int nView1 = SfxLokHelper::getView();
5656+5757+--- a/sw/qa/extras/layout/layout4.cxx
5858++++ b/sw/qa/extras/layout/layout4.cxx
5959+@@ -1518,6 +1518,7 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf104209VertRTL)
6060+6161+ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf56408LTR)
6262+ {
6363++ return; // fails due to missing font: Noto Sans Hebrew
5564 // Verify that line breaking a first bidi portion correctly underflows in LTR text
5665 createSwDoc("tdf56408-ltr.fodt");
5766 auto pXmlDoc = parseLayoutDump();
5858-@@ -3368,6 +3371,8 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf56408LTR)
6767+@@ -1532,6 +1532,7 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf56408LTR)
59686060- CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf56408RTL)
6969+ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf56408RTL)
6170 {
6262-+ return; // same Noto Sans Hebrew issue
6363-+
7171++ return; // fails due to missing font: Noto Sans Hebrew
6472 // Verify that line breaking a first bidi portion correctly underflows in RTL text
6573 createSwDoc("tdf56408-rtl.fodt");
6674 auto pXmlDoc = parseLayoutDump();
6767-@@ -3382,6 +3387,8 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf56408RTL)
6868-6969- CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf56408NoUnderflow)
7575+@@ -1546,6 +1547,7 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf56408RTL)
7676+7777+ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf56408NoUnderflow)
7078 {
7171-+ return; // same Noto Sans Hebrew issue
7272-+
7979++ return; // fails due to missing font: Noto Sans Hebrew
7380 // The fix for tdf#56408 introduced a change to line breaking between text with
7481 // direction changes. This test verifies behavior in the trivial case, when a
7582 // break opportunity exists at the direction change boundary.
7676-@@ -3398,6 +3405,8 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf56408NoUnderflow)
8383+@@ -1562,6 +1563,7 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf56408NoUnderflow)
77847878- CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf56408AfterFieldCrash)
8585+ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf56408AfterFieldCrash)
7986 {
8080-+ return; // same Noto Sans Hebrew issue
8181-+
8787++ return; // fails due to missing font: Noto Sans Hebrew
8288 // Verify there is no crash/assertion for underflow after a number field
8389 createSwDoc("tdf56408-after-field.fodt");
8490 }
8585-@@ -3436,6 +3445,8 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf146081)
9191+@@ -1612,6 +1614,7 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf155229RowAtLeast)
86928787- CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf157829LTR)
9393+ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf157829LTR)
8894 {
8989-+ return; // same Noto Sans Hebrew issue
9090-+
9595++ return; // fails due to missing font: Noto Sans Hebrew
9196 // Verify that line breaking inside a bidi portion triggers underflow to previous bidi portions
9297 createSwDoc("tdf157829-ltr.fodt");
9398 auto pXmlDoc = parseLayoutDump();
9494-@@ -3450,6 +3461,8 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf157829LTR)
9999+@@ -1626,6 +1629,7 @@ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf157829LTR)
951009696- CPPUNIT_TEST_FIXTURE(SwLayoutWriter3, TestTdf157829RTL)
101101+ CPPUNIT_TEST_FIXTURE(SwLayoutWriter4, TestTdf157829RTL)
97102 {
9898-+ return; // same Noto Sans Hebrew issue
9999-+
103103++ return; // fails due to missing font: Noto Sans Hebrew
100104 // Verify that line breaking inside a bidi portion triggers underflow to previous bidi portions
101105 createSwDoc("tdf157829-rtl.fodt");
102106 auto pXmlDoc = parseLayoutDump();
103103---- a/sw/qa/extras/tiledrendering/tiledrendering.cxx
104104-+++ b/sw/qa/extras/tiledrendering/tiledrendering.cxx
105105-@@ -4091,6 +4091,8 @@ CPPUNIT_TEST_FIXTURE(SwTiledRenderingTest, testRedlineTooltip)
106106- // toggling Formatting Marks on/off for one view should have no effect on other views
107107- CPPUNIT_TEST_FIXTURE(SwTiledRenderingTest, testToggleFormattingMarks)
107107+--- a/vcl/qa/cppunit/pdfexport/pdfexport2.cxx
108108++++ b/vcl/qa/cppunit/pdfexport/pdfexport2.cxx
109109+@@ -6079,6 +6079,7 @@ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf162750SmallCapsLigature)
110110+111111+ CPPUNIT_TEST_FIXTURE(PdfExportTest2, testTdf164106SplitReorderedClusters)
108112 {
109109-+ return; // fails consistently
110110-+
111111- SwXTextDocument* pXTextDocument = createDoc();
112112- int nView1 = SfxLokHelper::getView();
113113-113113++ return; // fails due to missing font: Noto Sans
114114+ saveAsPDF(u"tdf164106.fodt");
115115+116116+ auto pPdfDocument = parsePDFExport();
···11+# Kanidm release guide
22+33+Kanidm supports one release at any given time, with a 30-day overlap to allow for upgrades from old to new version.
44+Version upgrades are only supported on adjacent releases, with no support for jumping versions.
55+66+To ensure we provide sufficient coverage for upgrading, we will aim to have two or three releases in tree at any given time.
77+Unsupported versions will be marked as vulnerable (lacking an "unsupported" mechanism), but built by hydra to avoid pushing the very large rebuild on users.
88+99+The default version will be updated with each new version, but the default will not be backported.
1010+It is expected that stable users will have to manually specify the version, and update that version, throughout the lifecycle of a NixOS release.
1111+1212+## New release
1313+1414+For example, when upgrading from 1.4 -> 1.5
1515+1616+### Init new version
1717+1818+1. `cp pkgs/by-name/ka/kanidm/1_4.nix pkgs/by-name/ka/kanidm/1_5.nix`
1919+1. `cp -r pkgs/by-name/ka/kanidm/patches/1_4 pkgs/by-name/ka/kanidm/patches/1_5`
2020+1. Update `1_5.nix` hashes/paths, and as needed for upstream changes, `generic.nix`
2121+1. Update `all-packages.nix` to add `kanidm_1_5` and `kanidmWithSecretProvisioning_1_5`, leave default
2222+1. Create commit, `kanidm_1_5: init at 1.5.0` - this is the only commit that will be backported
2323+2424+### Mark previous version deprecated
2525+2626+1. Update `pkgs/by-name/ka/kanidm/1_4.nix` by adding `deprecated = true;`
2727+1. Create commit `kanidm_1_4: update default to 1.5.0, deprecate 1.4.0`
2828+2929+### Update default and mark deprecation
3030+3131+1. `sed -i 's/1_4/1_5/' pkgs/by-name/ka/kanidm/package.nix`
3232+1. Update `all-packages.nix` and set `kanidmWithSecretProvisioning = kanidmWithSecretProvisioning_1_5;`
3333+1. Create commit `kanidm: update default to 1.5.0`
3434+3535+### Backport to stable
3636+3737+1. Manually create a backport using _only_ the init commit
3838+3939+## Remove release
4040+4141+Kanidm versions are supported for 30 days after the release of new versions. Following the example above, 1.5.x superseding 1.4.x in 30 days, do the following near the end of the 30 day window
4242+4343+1. Update `pkgs/top-level/release.nix` and add `kanidm_1_4-1.4.6` to `permittedInsecurePackages`
4444+1. Update `pkgs/top-level/release.nix` and remove `kanidm_1_3-1.3.3` from `permittedInsecurePackages`
4545+1. Remove the third oldest release from `all-packages.nix`, e.g. 1.3.x continuing the example. Remove `kanidm_1_3` and `kanidmWithSecretProvisioning_1_3`
4646+1. Update `pkgs/by-name/ka/kanidm/1_4.nix` by adding `unsupported = true;`
4747+1. Open a PR and backport it to stable
···6677buildGoModule rec {
88 pname = "nkeys";
99- version = "0.4.9";
99+ version = "0.4.10";
10101111 src = fetchFromGitHub {
1212 owner = "nats-io";
1313 repo = pname;
1414 tag = "v${version}";
1515- hash = "sha256-5HmtCzY2EmlnBqg36JcjaaM2ivrM5f719bkWqpxekVI=";
1515+ hash = "sha256-vSjIqeGWS9sDGyrPD11u4ngiZrW6gZfYd08kKXUDXdU=";
1616 };
17171818- vendorHash = "sha256-AJrfHMNjuGO8LbuP4cAVClKWHkqkG+nPzQw+B+nRpxM=";
1818+ vendorHash = "sha256-TtplWIDLUsFXhT5OQVhW3KTfxh1MVY8Hssejy8GBYVQ=";
19192020 meta = with lib; {
2121 description = "Public-key signature system for NATS";
+10
pkgs/by-name/nt/ntopng/package.nix
···8181 -i include/ntop_defines.h
8282 '';
83838484+ # Upstream build system makes
8585+ # $out/share/ntopng/httpdocs/geoip/README.geolocation.md a dangling symlink
8686+ # to ../../doc/README.geolocation.md. Copying the whole doc/ tree adds over
8787+ # 70 MiB to the output size, so only copy the files we need for now.
8888+ # (Ref. noBrokenSymlinks.)
8989+ postInstall = ''
9090+ mkdir -p "$out/share/ntopng/doc"
9191+ cp -r doc/README.geolocation.md "$out/share/ntopng/doc/"
9292+ '';
9393+8494 enableParallelBuilding = true;
85958696 meta = with lib; {
+3-3
pkgs/by-name/or/orchard/package.nix
···7788buildGoModule rec {
99 pname = "orchard";
1010- version = "0.26.4";
1010+ version = "0.27.1";
11111212 src = fetchFromGitHub {
1313 owner = "cirruslabs";
1414 repo = pname;
1515 rev = version;
1616- hash = "sha256-XA4cu7Jou5kGYovGgIpRvpMFBSha0d8sk4WMbp7GpGc=";
1616+ hash = "sha256-2FaB+f2aXEDfqa50EkBo6GN6mStrBnij9+cpLXWIKIg=";
1717 # populate values that require us to use git. By doing this in postFetch we
1818 # can delete .git afterwards and maintain better reproducibility of the src.
1919 leaveDotGit = true;
···2424 '';
2525 };
26262727- vendorHash = "sha256-R4KsR00VAq0fUxHM48212GWy8KJoIOM0R8ycVjjjMO4=";
2727+ vendorHash = "sha256-J0gCkH7B4JxZBQkr1cUvXWuaz7QDQhKPNARZtxq3uDw=";
28282929 nativeBuildInputs = [ installShellFiles ];
3030
···11-diff --git a/snapcraft/utils.py b/snapcraft/utils.py
22-index 999a64ec..4f38b4cd 100644
33---- a/snapcraft/utils.py
44-+++ b/snapcraft/utils.py
55-@@ -94,7 +94,7 @@ def get_os_platform(
66- release = platform.release()
77- machine = platform.machine()
88-99-- if system == "Linux":
1010-+ if system == "Linux" and "NixOS" not in platform.version():
1111- try:
1212- with filepath.open("rt", encoding="utf-8") as release_file:
1313- lines = release_file.readlines()
+3-7
pkgs/by-name/sn/snapcraft/package.nix
···13131414python3Packages.buildPythonApplication rec {
1515 pname = "snapcraft";
1616- version = "8.5.1";
1616+ version = "8.6.1";
17171818 pyproject = true;
1919···2121 owner = "canonical";
2222 repo = "snapcraft";
2323 tag = version;
2424- hash = "sha256-7kIVWbVj5qse3JIdlCvRtVUfSa/rSjn4e8HJdVY3sOA=";
2424+ hash = "sha256-SbxsgvDptkUl8gHAIrJvnzIPOh0/R81n8cgJWBH7BXQ=";
2525 };
26262727 patches = [
···2929 # path for LXD must be adjusted so that it's at the correct location for LXD
3030 # on NixOS. This patch will likely never be accepted upstream.
3131 ./lxd-socket-path.patch
3232- # In certain places, Snapcraft expects an /etc/os-release file to determine
3333- # host info which doesn't exist in our test environment. This is a
3434- # relatively naive patch which helps the test suite pass - without it *many*
3535- # of the tests fail. This patch will likely never be accepted upstream.
3636- ./os-platform.patch
3732 # Snapcraft will try to inject itself as a snap *from the host system* into
3833 # the build system. This patch short-circuits that logic and ensures that
3934 # Snapcraft is installed on the build system from the snap store - because
···118113 build-system = with python3Packages; [ setuptools ];
119114120115 pythonRelaxDeps = [
116116+ "craft-parts"
121117 "docutils"
122118 "jsonschema"
123119 "pygit2"
···11-diff --git a/packages/flutter_tools/lib/src/runner/flutter_command.dart b/packages/flutter_tools/lib/src/runner/flutter_command.dart
22-index b7e624b4e2..edfdde118b 100644
33---- a/packages/flutter_tools/lib/src/runner/flutter_command.dart
44-+++ b/packages/flutter_tools/lib/src/runner/flutter_command.dart
55-@@ -1554,7 +1554,7 @@ Run 'flutter -h' (or 'flutter <command> -h') for available flutter commands and
66-77- // Populate the cache. We call this before pub get below so that the
88- // sky_engine package is available in the flutter cache for pub to find.
99-- if (shouldUpdateCache) {
1010-+ if (false) {
1111- // First always update universal artifacts, as some of these (e.g.
1212- // ios-deploy on macOS) are required to determine `requiredArtifacts`.
1313- final bool offline;
1414-diff --git a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
1515-index 5d6d78639f..90a4dfa555 100644
1616---- a/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
1717-+++ b/packages/flutter_tools/lib/src/runner/flutter_command_runner.dart
1818-@@ -297,7 +297,6 @@ class FlutterCommandRunner extends CommandRunner<void> {
1919- globals.flutterUsage.suppressAnalytics = true;
2020- }
2121-2222-- globals.flutterVersion.ensureVersionFile();
2323- final bool machineFlag = topLevelResults[FlutterGlobalOptions.kMachineFlag] as bool? ?? false;
2424- final bool ci = await globals.botDetector.isRunningOnBot;
2525- final bool redirectedCompletion = !globals.stdio.hasTerminal &&
2626-@@ -306,11 +305,6 @@ class FlutterCommandRunner extends CommandRunner<void> {
2727- final bool versionCheckFlag = topLevelResults[FlutterGlobalOptions.kVersionCheckFlag] as bool? ?? false;
2828- final bool explicitVersionCheckPassed = topLevelResults.wasParsed(FlutterGlobalOptions.kVersionCheckFlag) && versionCheckFlag;
2929-3030-- if (topLevelResults.command?.name != 'upgrade' &&
3131-- (explicitVersionCheckPassed || (versionCheckFlag && !isMachine))) {
3232-- await globals.flutterVersion.checkFlutterVersionFreshness();
3333-- }
3434--
3535- // See if the user specified a specific device.
3636- final String? specifiedDeviceId = topLevelResults[FlutterGlobalOptions.kDeviceIdOption] as String?;
3737- if (specifiedDeviceId != null) {
···11-This patch introduces an intermediate Gradle build step to alter the behavior
22-of flutter_tools' Gradle project, specifically moving the creation of `build`
33-and `.gradle` directories from within the Nix Store to somewhere in `$HOME/.cache/flutter/nix-flutter-tools-gradle/$engineShortRev`.
44-55-Without this patch, flutter_tools' Gradle project tries to generate `build` and `.gradle`
66-directories within the Nix Store. Resulting in read-only errors when trying to build a
77-Flutter Android app at runtime.
88-99-This patch takes advantage of the fact settings.gradle takes priority over settings.gradle.kts to build the intermediate Gradle project
1010-when a Flutter app runs `includeBuild("${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle")`
1111-1212-`rootProject.buildFileName = "/dev/null"` so that the intermediate project doesn't use `build.gradle.kts` that's in the same directory.
1313-1414-The intermediate project makes a `settings.gradle` file in `$HOME/.cache/flutter/nix-flutter-tools-gradle/<short engine rev>/` and `includeBuild`s it.
1515-This Gradle project will build the actual `packages/flutter_tools/gradle` project by setting
1616-`rootProject.projectDir = new File("$settingsDir")` and `apply from: new File("$settingsDir/settings.gradle.kts")`.
1717-1818-Now the `.gradle` will be built in `$HOME/.cache/flutter/nix-flutter-tools-gradle/<short engine rev>/`, but `build` doesn't.
1919-To move `build` to `$HOME/.cache/flutter/nix-flutter-tools-gradle/<short engine rev>/` as well, we need to set `buildDirectory`.
2020-diff --git a/packages/flutter_tools/gradle/settings.gradle b/packages/flutter_tools/gradle/settings.gradle
2121-new file mode 100644
2222-index 0000000000..b2485c94b4
2323---- /dev/null
2424-+++ b/packages/flutter_tools/gradle/settings.gradle
2525-@@ -0,0 +1,19 @@
2626-+rootProject.buildFileName = "/dev/null"
2727-+
2828-+def engineShortRev = (new File("$settingsDir/../../../bin/internal/engine.version")).text.take(10)
2929-+def dir = new File("$System.env.HOME/.cache/flutter/nix-flutter-tools-gradle/$engineShortRev")
3030-+dir.mkdirs()
3131-+def file = new File(dir, "settings.gradle")
3232-+
3333-+file.text = """
3434-+rootProject.projectDir = new File("$settingsDir")
3535-+apply from: new File("$settingsDir/settings.gradle.kts")
3636-+
3737-+gradle.allprojects { project ->
3838-+ project.beforeEvaluate {
3939-+ project.layout.buildDirectory = new File("$dir/build")
4040-+ }
4141-+}
4242-+"""
4343-+
4444-+includeBuild(dir)
···416416 flatcam = throw "flatcam has been removed because it is unmaintained since 2022 and doesn't support Python > 3.10"; # Added 2025-01-25
417417 flutter313 = throw "flutter313 has been removed because it isn't updated anymore, and no packages in nixpkgs use it. If you still need it, use flutter.mkFlutter to get a custom version"; # Added 2024-10-05
418418 flutter316 = throw "flutter316 has been removed because it isn't updated anymore, and no packages in nixpkgs use it. If you still need it, use flutter.mkFlutter to get a custom version"; # Added 2024-10-05
419419+ flutter319 = throw "flutter319 has been removed because it isn't updated anymore, and no packages in nixpkgs use it. If you still need it, use flutter.mkFlutter to get a custom version"; # Added 2024-12-03
419420 flutter322 = throw "flutter322 has been removed because it isn't updated anymore, and no packages in nixpkgs use it. If you still need it, use flutter.mkFlutter to get a custom version"; # Added 2024-10-05
420421 flutter323 = throw "flutter323 has been removed because it isn't updated anymore, and no packages in nixpkgs use it. If you still need it, use flutter.mkFlutter to get a custom version"; # Added 2024-10-05
421422 fluxus = throw "fluxus has been removed because it hasn't been updated in 9 years and depended on insecure Racket 7.9"; # Added 2024-12-06