Unverified Commit 26818812 authored by Adam C. Stephens's avatar Adam C. Stephens Committed by GitHub
Browse files

lixPackageSets.git.lix: 2.95.0-pre-20260103 -> 2.96.0-pre-20260317 (#498762)

parents 91fc68a2 97031ddc
Loading
Loading
Loading
Loading
+69 −2
Original line number Diff line number Diff line
@@ -21,6 +21,8 @@ assert lib.assertMsg (

{
  stdenv,
  closureInfo,
  runCommand,
  meson,
  bison,
  boehmgc,
@@ -55,6 +57,7 @@ assert lib.assertMsg (
  openssl,
  pkgsStatic,
  rustc,
  rust-cbindgen,
  toml11,
  pegtl,
  buildPackages,
@@ -94,6 +97,7 @@ assert lib.assertMsg (
  libseccomp,
  pastaFod ? lib.meta.availableOn stdenv.hostPlatform passt,
  passt,
  withPlugins ? lib.versionAtLeast version "2.95" && !enableStatic,

  confDir,
  stateDir,
@@ -106,6 +110,20 @@ let
  hasDtraceSupport = lib.versionAtLeast version "2.93";
  parseToYAML = lib.versionAtLeast version "2.93";
  usesCapnp = lib.versionAtLeast version "2.94";

  mesonCrossFile =
    deps:
    runCommand "lix-cross-file.conf"
      {
        input = ''
          [project options]
          builtin-dep-closure = @deps@
        '';
        passAsFile = [ "input" ];
      }
      ''
        substitute $inputPath $out --replace-fail @deps@ "$(cat ${deps})"
      '';
in
# gcc miscompiles coroutines at least until 13.2, possibly longer
# do not remove this check unless you are sure you (or your users) will not report bugs to Lix upstream about GCC miscompilations.
@@ -138,6 +156,37 @@ stdenv.mkDerivation (finalAttrs: {
  ];
  __structuredAttrs = true;

  # dep closure for builtin builders in meson array form for immediate use
  builtinDeps =
    if stdenv.hostPlatform.isStatic then
      builtins.toFile "lix-static-dep-closure" "[]"
    else
      runCommand "lix-builtin-dep-closure"
        {
          closure = closureInfo {
            # closureInfo does not work all that well for things like lowdown,
            # where it finds only -out but not -lib. we'll take -out and -lib,
            # ignoring -bin, -man, -dev, etc. and hope that'll be good enough.
            rootPaths = lib.flatten (
              map
                (drv: [
                  (drv.out or [ ])
                  (drv.lib or [ ])
                ])
                (
                  lib.subtractLists finalAttrs.disallowedReferences (
                    finalAttrs.buildInputs ++ finalAttrs.propagatedBuildInputs
                  )
                )
            );
          };
        }
        ''
          closure=($(cat $closure/store-paths))
          closure="$(printf ", '%s'" "''${closure[@]}")"
          printf "[%s]" "''${closure:2}" >$out
        '';

  # We only include CMake so that Meson can locate toml11, which only ships CMake dependency metadata.
  dontUseCmakeConfigure = true;

@@ -150,7 +199,11 @@ stdenv.mkDerivation (finalAttrs: {
      ++ lib.optionals finalAttrs.doInstallCheck [
        p.aiohttp
        p.pytest
        p.pytest-timeout
        p.pytest-xdist
        p.pyxattr
        p.tappy
        p.ruff
      ]
      ++ lib.optionals usesCapnp [ p.pycapnp ]
    ))
@@ -171,6 +224,7 @@ stdenv.mkDerivation (finalAttrs: {
  ]
  ++ lib.optionals isLLVMOnly [
    rustc
    rust-cbindgen
    cargo
    rustPlatform.cargoSetupHook
  ]
@@ -185,7 +239,10 @@ stdenv.mkDerivation (finalAttrs: {
  ++ lib.optionals parseToYAML [ yq ]
  ++ lib.optionals usesCapnp [ capnproto ]
  ++ lib.optionals stdenv.hostPlatform.isLinux [ util-linuxMinimal ]
  ++ lib.optionals (lib.versionAtLeast version "2.94") [ zstd ];
  ++ lib.optionals (lib.versionAtLeast version "2.94") [ zstd ]
  ++ lib.optionals (withPlugins && finalAttrs.doInstallCheck) [
    curl
  ];

  buildInputs = [
    boost
@@ -278,6 +335,11 @@ stdenv.mkDerivation (finalAttrs: {
    (lib.mesonBool "enable-embedded-sandbox-shell" (
      stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isStatic
    ))
  ]
  ++ lib.optionals (lib.versionAtLeast version "2.95") [
    (lib.mesonBool "enable-contrib-plugins" withPlugins)
  ]
  ++ [
    (lib.mesonEnable "seccomp-sandboxing" withLibseccomp)

    (lib.mesonOption "store-dir" storeDir)
@@ -307,6 +369,11 @@ stdenv.mkDerivation (finalAttrs: {
      [
        (lib.mesonOption "build-test-env" "${pkgsStatic.busybox}/bin")
        (lib.mesonOption "build-test-shell" "${pkgsStatic.bash}/bin")
      ]
  ++ lib.optionals (lib.versionAtLeast version "2.95") [
    "--${
      if stdenv.hostPlatform != stdenv.buildPlatform then "cross" else "native"
    }-file=${mesonCrossFile finalAttrs.builtinDeps}"
  ];

  ninjaFlags = [ "-v" ];
+4 −4
Original line number Diff line number Diff line
@@ -262,20 +262,20 @@ lib.makeExtensible (
      attrName = "git";

      lix-args = rec {
        version = "2.95.0-pre-20260103_${builtins.substring 0 12 src.rev}";
        version = "2.96.0-pre-20260317_${builtins.substring 0 12 src.rev}";

        src = fetchFromGitea {
          domain = "git.lix.systems";
          owner = "lix-project";
          repo = "lix";
          rev = "d387c9113c73f04bed46dbdd59b6c36de2253d73";
          hash = "sha256-jYUcmXA4FNwoJtxRgH+Be96wQv8h9Y9dByYf+KmcgK4=";
          rev = "96db7c79cf2a9a06725360b0d12e5de583bef07d";
          hash = "sha256-Ixwk38HArs7MZXxdWRkSZFzUhUdlCro+8+M/sO+fE/Y=";
        };

        cargoDeps = rustPlatform.fetchCargoVendor {
          name = "lix-${version}";
          inherit src;
          hash = "sha256-APm8m6SVEAO17BBCka13u85/87Bj+LePP7Y3zHA3Mpg=";
          hash = "sha256-a5XtutX+NS4wOqxeqbscWZMs99teKick5+cQfbCRGxQ=";
        };
      };
    };