···206206 ];
207207208208 # Otherwise GDM will not be able to start correctly and display Wayland sessions
209209- systemd.packages = with pkgs.gnome; [
209209+ systemd.packages = [
210210 gdm
211211 pkgs.gnome-session
212212 pkgs.gnome-shell
···11-import ./make-test-python.nix (
22- { lib, pkgs, ... }:
33- {
44- name = "systemd-initrd-simple";
11+{
22+ name = "systemd-initrd-simple";
5366- nodes.machine =
77- { pkgs, ... }:
88- {
99- testing.initrdBackdoor = true;
1010- boot.initrd.systemd.enable = true;
1111- virtualisation.fileSystems."/".autoResize = true;
1212- };
44+ nodes.machine =
55+ { pkgs, ... }:
66+ {
77+ testing.initrdBackdoor = true;
88+ boot.initrd.systemd.enable = true;
99+ virtualisation.fileSystems."/".autoResize = true;
1010+ };
13111414- testScript = ''
1212+ testScript =
1313+ # python
1414+ ''
1515 import subprocess
16161717 with subtest("testing initrd backdoor"):
···5050 newAvail = machine.succeed("df --output=avail / | sed 1d")
51515252 assert int(oldAvail) < int(newAvail), "File system did not grow"
5353+5454+ with subtest("no warnings from systemd about write permissions"):
5555+ machine.fail("journalctl -b 0 | grep 'is marked world-writable, which is a security risk as it is executed with privileges'")
5356 '';
5454- }
5555-)
5757+}
-2
pkgs/applications/misc/1password-gui/default.nix
···2626 };
27272828 meta = {
2929- # Requires to be installed in "/Application" which is not possible for now (https://github.com/NixOS/nixpkgs/issues/254944)
3030- broken = stdenv.hostPlatform.isDarwin;
3129 description = "Multi-platform password manager";
3230 homepage = "https://1password.com/";
3331 sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
···2727 For example, `{ "org.gnome.evolution" = "EVOLUTION_SCHEMA_PATH"; }`
2828 hardcodes looking for `org.gnome.evolution` into `@EVOLUTION_SCHEMA_PATH@`.
29293030+ - `schemaExistsFunction`: name of the function that is used for checking
3131+ if optional schema exists. Its invocation will be replaced with TRUE
3232+ for known schemas.
3333+3034 - `patches`: A list of patches to apply before generating the patch.
31353236 Example:
···5458 src,
5559 patches ? [ ],
5660 schemaIdToVariableMapping,
6161+ schemaExistsFunction ? null,
5762}:
58635964runCommand "hardcode-gsettings.patch"
···7176 patchPhase
7277 set -x
7378 cp ${builtins.toFile "glib-schema-to-var.json" (builtins.toJSON schemaIdToVariableMapping)} ./glib-schema-to-var.json
7979+ cp ${builtins.toFile "glib-schema-exists-function.json" (builtins.toJSON schemaExistsFunction)} ./glib-schema-exists-function.json
7480 git init
7581 git add -A
7682 spatch --sp-file "${./hardcode-gsettings.cocci}" --dir . --in-place
···3434 return f'"@{schema_to_var[schema_id]}@"'
3535 raise Exception(f"Unknown schema path {schema_id!r}, please add it to ./glib-schema-to-var.json")
36363737+3838+@script:python schema_exists_fn@
3939+fn;
4040+@@
4141+import json
4242+4343+with open("./glib-schema-exists-function.json") as fn_file:
4444+ if (fn := json.load(fn_file)):
4545+ coccinelle.fn = fn
4646+4747+3748@find_cpp_constants@
3849identifier const_name;
3950expression val;
···143154+ schema = g_settings_schema_source_lookup(schema_source, SCHEMA_ID, FALSE);
144155+ settings = g_settings_new_full(schema, NULL, PATH);
145156+}
157157+158158+159159+@replace_schema_exists_fns depends on ever record_cpp_constants || never record_cpp_constants@
160160+// We want to run after #define constants have been collected but even if there are no #defines.
161161+expression SCHEMA_ID;
162162+identifier schema_exists_fn.fn;
163163+@@
164164+-fn(SCHEMA_ID)
165165++true
···11+--- a/CMakeLists.txt
22++++ b/CMakeLists.txt
33+@@ -77,12 +77,8 @@
44+ if (USE_MIMALLOC)
55+ ExternalProject_add(mimalloc
66+ PREFIX mimalloc
77+- GIT_REPOSITORY https://github.com/microsoft/mimalloc
88+- GIT_TAG v2.2.3
99+- # just download, we compile it as part of each stage as it is small
1010+- CONFIGURE_COMMAND ""
1111+- BUILD_COMMAND ""
1212++ SOURCE_DIR "MIMALLOC-SRC"
1313+ INSTALL_COMMAND "")
1414+ list(APPEND EXTRA_DEPENDS mimalloc)
1515+ endif()
1616+
+34-9
pkgs/by-name/le/lean4/package.nix
···88 cadical,
99 pkg-config,
1010 libuv,
1111+ enableMimalloc ? true,
1112 perl,
1213 testers,
1314}:
14151516stdenv.mkDerivation (finalAttrs: {
1617 pname = "lean4";
1717- version = "4.18.0";
1818+ version = "4.19.0";
1919+2020+ # Using a vendored version rather than nixpkgs' version to match the exact version required by
2121+ # Lean. Apparently, even a slight version change can impact greatly the final performance.
2222+ mimalloc-src = fetchFromGitHub {
2323+ owner = "microsoft";
2424+ repo = "mimalloc";
2525+ tag = "v2.2.3";
2626+ hash = "sha256-B0gngv16WFLBtrtG5NqA2m5e95bYVcQraeITcOX9A74=";
2727+ };
18281929 src = fetchFromGitHub {
2030 owner = "leanprover";
2131 repo = "lean4";
2232 tag = "v${finalAttrs.version}";
2323- hash = "sha256-1hVcRO9RbVUgoKTUTFXBqJZwt50/aw/P9dxUdI7RpCc=";
3333+ hash = "sha256-Iw5JSamrty9l6aJ2WwslAolSHfi2q0UO8P8HI1gp+j8=";
2434 };
25352626- postPatch = ''
2727- substituteInPlace src/CMakeLists.txt \
2828- --replace-fail 'set(GIT_SHA1 "")' 'set(GIT_SHA1 "${finalAttrs.src.tag}")'
3636+ postPatch =
3737+ let
3838+ pattern = "\${LEAN_BINARY_DIR}/../mimalloc/src/mimalloc";
3939+ in
4040+ ''
4141+ substituteInPlace src/CMakeLists.txt \
4242+ --replace-fail 'set(GIT_SHA1 "")' 'set(GIT_SHA1 "${finalAttrs.src.tag}")'
29433030- # Remove tests that fails in sandbox.
3131- # It expects `sourceRoot` to be a git repository.
3232- rm -rf src/lake/examples/git/
3333- '';
4444+ # Remove tests that fails in sandbox.
4545+ # It expects `sourceRoot` to be a git repository.
4646+ rm -rf src/lake/examples/git/
4747+ ''
4848+ + (lib.optionalString enableMimalloc ''
4949+ substituteInPlace CMakeLists.txt \
5050+ --replace-fail 'MIMALLOC-SRC' '${finalAttrs.mimalloc-src}'
5151+ for file in src/CMakeLists.txt src/runtime/CMakeLists.txt; do
5252+ substituteInPlace "$file" \
5353+ --replace-fail '${pattern}' '${finalAttrs.mimalloc-src}'
5454+ done
5555+ '');
34563557 preConfigure = ''
3658 patchShebangs stage0/src/bin/ src/bin/
···5274 perl
5375 ];
54767777+ patches = [ ./mimalloc.patch ];
7878+5579 cmakeFlags = [
5680 "-DUSE_GITHASH=OFF"
5781 "-DINSTALL_LICENSE=OFF"
8282+ "-DUSE_MIMALLOC=${if enableMimalloc then "ON" else "OFF"}"
5883 ];
59846085 passthru.tests = {
···1717 # We keep the override around even when the versions match, as
1818 # it's likely to become relevant again after the next Poetry update.
1919 poetry-core = super.poetry-core.overridePythonAttrs (old: rec {
2020- version = "2.1.2";
2020+ version = "2.1.3";
2121 src = fetchFromGitHub {
2222 owner = "python-poetry";
2323 repo = "poetry-core";
2424 tag = version;
2525- hash = "sha256-fNj/LI4A4RjjPzYT+0ekwqmm3qzzZL3aACOe8BHviuk=";
2525+ hash = "sha256-CgaWlqjvBTN7GuerzmO5IiEdXxYH6pmTDj9IsNJlCBE=";
2626 };
2727 });
2828 }
+7-6
pkgs/by-name/po/poetry/unwrapped.nix
···37373838buildPythonPackage rec {
3939 pname = "poetry";
4040- version = "2.1.2";
4040+ version = "2.1.3";
4141 pyproject = true;
42424343 disabled = pythonOlder "3.9";
···4646 owner = "python-poetry";
4747 repo = "poetry";
4848 tag = version;
4949- hash = "sha256-51pO/PP5OwTmi+1uy26CK/1oQ/P21wPBoRVE9Jv0TjA=";
4949+ hash = "sha256-aMmYgFdQhgMd99atAtr5MD0yniaIi+QTPJ0rMI2jMxk=";
5050 };
51515252 build-system = [
···132132 "test_builder_should_execute_build_scripts"
133133 "test_env_system_packages_are_relative_to_lib"
134134 "test_install_warning_corrupt_root"
135135+ "test_no_additional_output_in_verbose_mode"
135136 "test_project_plugins_are_installed_in_project_folder"
136137 "test_application_command_not_found_messages"
137138 # PermissionError: [Errno 13] Permission denied: '/build/pytest-of-nixbld/pytest-0/popen-gw3/test_find_poetry_managed_pytho1/.local/share/pypoetry/python/pypy@3.10.8/bin/python'
···160161 # in the Python script, which runs after the wrapper.
161162 makeWrapperArgs = [ "--unset PYTHONPATH" ];
162163163163- meta = with lib; {
164164- changelog = "https://github.com/python-poetry/poetry/blob/${src.rev}/CHANGELOG.md";
164164+ meta = {
165165+ changelog = "https://github.com/python-poetry/poetry/blob/${src.tag}/CHANGELOG.md";
165166 homepage = "https://python-poetry.org/";
166167 description = "Python dependency management and packaging made easy";
167167- license = licenses.mit;
168168- maintainers = with maintainers; [
168168+ license = lib.licenses.mit;
169169+ maintainers = with lib.maintainers; [
169170 jakewaksbaum
170171 dotlambda
171172 ];
···2020 "DESTDIR=$(out)"
2121 ];
22222323- prePatch = ''
2424- sed -i 's@usb_modeswitch@${usb-modeswitch}/lib/udev/usb_modeswitch@g' 40-usb_modeswitch.rules
2525- '';
2323+ postPatch =
2424+ # bash
2525+ ''
2626+ substituteInPlace 40-usb_modeswitch.rules \
2727+ --replace-fail "usb_modeswitch" "${usb-modeswitch}/lib/udev/usb_modeswitch"
2828+2929+ # Fix issue reported by udevadm verify
3030+ sed -i 's/,,/,/g' 40-usb_modeswitch.rules
3131+ '';
26322733 # we add tcl here so we can patch in support for new devices by dropping config into
2834 # the usb_modeswitch.d directory
···134134 gnused
135135 ;
136136 inherit runtimeShell;
137137- # patch context
138138- OUTPUT = null;
139137 })
140138141139 # Meson does not support using different directories during build and