From cf84ace29b6c7ff1e399e2d37761bead905a2879 Mon Sep 17 00:00:00 2001 From: sunrisepeak Date: Mon, 1 Jun 2026 13:18:22 +0800 Subject: [PATCH 1/5] fix: enable xz easy encoder in compat smoke --- pkgs/c/compat.xz.lua | 5 ++ tests/smoke_compat_archive.sh | 153 ++++++++++++++++++++++++++++++++- tests/smoke_compat_portable.sh | 124 ++++++++++++++++++++++++++ 3 files changed, 281 insertions(+), 1 deletion(-) diff --git a/pkgs/c/compat.xz.lua b/pkgs/c/compat.xz.lua index dbfc2e1..e71ac97 100644 --- a/pkgs/c/compat.xz.lua +++ b/pkgs/c/compat.xz.lua @@ -79,6 +79,11 @@ package = { "-DHAVE_DECODER_SPARC=1", "-DHAVE_DECODER_RISCV=1", "-DHAVE_LZIP_DECODER=1", + "-DHAVE_MF_HC3=1", + "-DHAVE_MF_HC4=1", + "-DHAVE_MF_BT2=1", + "-DHAVE_MF_BT3=1", + "-DHAVE_MF_BT4=1", }, sources = { "*/src/common/tuklib_physmem.c", diff --git a/tests/smoke_compat_archive.sh b/tests/smoke_compat_archive.sh index 94d3a41..9fa1e6f 100755 --- a/tests/smoke_compat_archive.sh +++ b/tests/smoke_compat_archive.sh @@ -14,7 +14,11 @@ if [[ -z "$MCPP_BIN" || ! -x "$MCPP_BIN" ]]; then fi TMP="$(mktemp -d)" -trap 'rm -rf "$TMP"' EXIT +if [[ "${MCPP_INDEX_KEEP_SMOKE_TMP:-0}" == "1" ]]; then + echo "KEEP: $TMP" +else + trap 'rm -rf "$TMP"' EXIT +fi SMOKE_CACHE_DIR="${MCPP_INDEX_SMOKE_CACHE_DIR:-}" SMOKE_XPKGS_DIR="${MCPP_INDEX_SMOKE_XPKGS_DIR:-}" @@ -102,6 +106,153 @@ int main() { } EOF +"$MCPP_BIN" build +"$MCPP_BIN" run + +mkdir -p "$TMP/compat-compression-standalone-smoke/src" +cd "$TMP/compat-compression-standalone-smoke" +cat > mcpp.toml < src/main.cpp <<'EOF' +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +static bool same_bytes(const void* actual, size_t actual_size, + const void* expected, size_t expected_size) { + return actual_size == expected_size && + std::memcmp(actual, expected, expected_size) == 0; +} + +int main() { + const uint8_t input[] = "mcpp compat compression smoke"; + const size_t input_size = sizeof(input) - 1; + + uint8_t zlib_compressed[256] = {}; + uLongf zlib_compressed_size = sizeof(zlib_compressed); + if (compress2(zlib_compressed, &zlib_compressed_size, input, + static_cast(input_size), Z_BEST_SPEED) != Z_OK) { + return 1; + } + uint8_t zlib_output[sizeof(input)] = {}; + uLongf zlib_output_size = input_size; + if (uncompress(zlib_output, &zlib_output_size, zlib_compressed, + zlib_compressed_size) != Z_OK || + !same_bytes(zlib_output, zlib_output_size, input, input_size)) { + return 2; + } + + char bzip2_compressed[256] = {}; + unsigned int bzip2_compressed_size = sizeof(bzip2_compressed); + if (BZ2_bzBuffToBuffCompress( + bzip2_compressed, &bzip2_compressed_size, + const_cast(reinterpret_cast(input)), + static_cast(input_size), 1, 0, 30) != BZ_OK) { + return 3; + } + char bzip2_output[sizeof(input)] = {}; + unsigned int bzip2_output_size = input_size; + if (BZ2_bzBuffToBuffDecompress(bzip2_output, &bzip2_output_size, + bzip2_compressed, bzip2_compressed_size, + 0, 0) != BZ_OK || + !same_bytes(bzip2_output, bzip2_output_size, input, input_size)) { + return 4; + } + + char lz4_compressed[256] = {}; + const int lz4_compressed_size = + LZ4_compress_default(reinterpret_cast(input), + lz4_compressed, static_cast(input_size), + sizeof(lz4_compressed)); + if (lz4_compressed_size <= 0) { + return 5; + } + char lz4_output[sizeof(input)] = {}; + const int lz4_output_size = + LZ4_decompress_safe(lz4_compressed, lz4_output, lz4_compressed_size, + sizeof(lz4_output)); + if (lz4_output_size < 0 || + !same_bytes(lz4_output, static_cast(lz4_output_size), input, + input_size)) { + return 6; + } + + std::vector zstd_compressed(ZSTD_compressBound(input_size)); + const size_t zstd_compressed_size = + ZSTD_compress(zstd_compressed.data(), zstd_compressed.size(), input, + input_size, 1); + if (ZSTD_isError(zstd_compressed_size)) { + return 7; + } + std::vector zstd_output(input_size); + const size_t zstd_output_size = + ZSTD_decompress(zstd_output.data(), zstd_output.size(), + zstd_compressed.data(), zstd_compressed_size); + if (ZSTD_isError(zstd_output_size) || + !same_bytes(zstd_output.data(), zstd_output_size, input, input_size)) { + return 8; + } + + std::vector xz_compressed(lzma_stream_buffer_bound(input_size)); + size_t xz_compressed_pos = 0; + if (lzma_easy_buffer_encode(0, LZMA_CHECK_CRC64, nullptr, input, + input_size, xz_compressed.data(), + &xz_compressed_pos, + xz_compressed.size()) != LZMA_OK) { + return 9; + } + uint64_t xz_memlimit = std::numeric_limits::max(); + size_t xz_input_pos = 0; + size_t xz_output_pos = 0; + std::vector xz_output(input_size); + if (lzma_stream_buffer_decode(&xz_memlimit, 0, nullptr, + xz_compressed.data(), &xz_input_pos, + xz_compressed_pos, xz_output.data(), + &xz_output_pos, xz_output.size()) != + LZMA_OK || + !same_bytes(xz_output.data(), xz_output_pos, input, input_size)) { + return 10; + } + + return 0; +} +EOF + "$MCPP_BIN" build "$MCPP_BIN" run echo "OK" diff --git a/tests/smoke_compat_portable.sh b/tests/smoke_compat_portable.sh index 18e375b..ae340b1 100755 --- a/tests/smoke_compat_portable.sh +++ b/tests/smoke_compat_portable.sh @@ -235,6 +235,130 @@ EOF "$MCPP_BIN_POSIX" build "$MCPP_BIN_POSIX" run +make_project "compat-portable-compression-smoke" +cat >> mcpp.toml <<'EOF' + +[dependencies.compat] +zlib = "1.3.2" +bzip2 = "1.0.8" +lz4 = "1.10.0" +xz = "5.8.3" +zstd = "1.5.7" +EOF +cat > src/main.cpp <<'EOF' +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +static bool same_bytes(const void* actual, size_t actual_size, + const void* expected, size_t expected_size) { + return actual_size == expected_size && + std::memcmp(actual, expected, expected_size) == 0; +} + +int main() { + const uint8_t input[] = "mcpp compat compression smoke"; + const size_t input_size = sizeof(input) - 1; + + uint8_t zlib_compressed[256] = {}; + uLongf zlib_compressed_size = sizeof(zlib_compressed); + if (compress2(zlib_compressed, &zlib_compressed_size, input, + static_cast(input_size), Z_BEST_SPEED) != Z_OK) { + return 1; + } + uint8_t zlib_output[sizeof(input)] = {}; + uLongf zlib_output_size = input_size; + if (uncompress(zlib_output, &zlib_output_size, zlib_compressed, + zlib_compressed_size) != Z_OK || + !same_bytes(zlib_output, zlib_output_size, input, input_size)) { + return 2; + } + + char bzip2_compressed[256] = {}; + unsigned int bzip2_compressed_size = sizeof(bzip2_compressed); + if (BZ2_bzBuffToBuffCompress( + bzip2_compressed, &bzip2_compressed_size, + const_cast(reinterpret_cast(input)), + static_cast(input_size), 1, 0, 30) != BZ_OK) { + return 3; + } + char bzip2_output[sizeof(input)] = {}; + unsigned int bzip2_output_size = input_size; + if (BZ2_bzBuffToBuffDecompress(bzip2_output, &bzip2_output_size, + bzip2_compressed, bzip2_compressed_size, + 0, 0) != BZ_OK || + !same_bytes(bzip2_output, bzip2_output_size, input, input_size)) { + return 4; + } + + char lz4_compressed[256] = {}; + const int lz4_compressed_size = + LZ4_compress_default(reinterpret_cast(input), + lz4_compressed, static_cast(input_size), + sizeof(lz4_compressed)); + if (lz4_compressed_size <= 0) { + return 5; + } + char lz4_output[sizeof(input)] = {}; + const int lz4_output_size = + LZ4_decompress_safe(lz4_compressed, lz4_output, lz4_compressed_size, + sizeof(lz4_output)); + if (lz4_output_size < 0 || + !same_bytes(lz4_output, static_cast(lz4_output_size), input, + input_size)) { + return 6; + } + + std::vector zstd_compressed(ZSTD_compressBound(input_size)); + const size_t zstd_compressed_size = + ZSTD_compress(zstd_compressed.data(), zstd_compressed.size(), input, + input_size, 1); + if (ZSTD_isError(zstd_compressed_size)) { + return 7; + } + std::vector zstd_output(input_size); + const size_t zstd_output_size = + ZSTD_decompress(zstd_output.data(), zstd_output.size(), + zstd_compressed.data(), zstd_compressed_size); + if (ZSTD_isError(zstd_output_size) || + !same_bytes(zstd_output.data(), zstd_output_size, input, input_size)) { + return 8; + } + + std::vector xz_compressed(lzma_stream_buffer_bound(input_size)); + size_t xz_compressed_pos = 0; + if (lzma_easy_buffer_encode(0, LZMA_CHECK_CRC64, nullptr, input, + input_size, xz_compressed.data(), + &xz_compressed_pos, + xz_compressed.size()) != LZMA_OK) { + return 9; + } + uint64_t xz_memlimit = std::numeric_limits::max(); + size_t xz_input_pos = 0; + size_t xz_output_pos = 0; + std::vector xz_output(input_size); + if (lzma_stream_buffer_decode(&xz_memlimit, 0, nullptr, + xz_compressed.data(), &xz_input_pos, + xz_compressed_pos, xz_output.data(), + &xz_output_pos, xz_output.size()) != + LZMA_OK || + !same_bytes(xz_output.data(), xz_output_pos, input, input_size)) { + return 10; + } + + return 0; +} +EOF +"$MCPP_BIN_POSIX" build +"$MCPP_BIN_POSIX" run + make_project "compat-portable-imgui-glfw-smoke" cat >> mcpp.toml <<'EOF' From 638f12a9f0466d406a7406cafd9debe300456d04 Mon Sep 17 00:00:00 2001 From: sunrisepeak Date: Mon, 1 Jun 2026 13:54:48 +0800 Subject: [PATCH 2/5] test: avoid Windows max macro in compression smoke --- tests/smoke_compat_archive.sh | 2 +- tests/smoke_compat_portable.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/smoke_compat_archive.sh b/tests/smoke_compat_archive.sh index 9fa1e6f..00ff337 100755 --- a/tests/smoke_compat_archive.sh +++ b/tests/smoke_compat_archive.sh @@ -236,7 +236,7 @@ int main() { xz_compressed.size()) != LZMA_OK) { return 9; } - uint64_t xz_memlimit = std::numeric_limits::max(); + uint64_t xz_memlimit = (std::numeric_limits::max)(); size_t xz_input_pos = 0; size_t xz_output_pos = 0; std::vector xz_output(input_size); diff --git a/tests/smoke_compat_portable.sh b/tests/smoke_compat_portable.sh index ae340b1..008af78 100755 --- a/tests/smoke_compat_portable.sh +++ b/tests/smoke_compat_portable.sh @@ -340,7 +340,7 @@ int main() { xz_compressed.size()) != LZMA_OK) { return 9; } - uint64_t xz_memlimit = std::numeric_limits::max(); + uint64_t xz_memlimit = (std::numeric_limits::max)(); size_t xz_input_pos = 0; size_t xz_output_pos = 0; std::vector xz_output(input_size); From 17e3f24f34c88dcdadc2a0270390d8bf2414ac30 Mon Sep 17 00:00:00 2001 From: sunrisepeak Date: Mon, 1 Jun 2026 14:01:20 +0800 Subject: [PATCH 3/5] ci: cache mcpp registry for smoke jobs --- .github/workflows/validate.yml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/.github/workflows/validate.yml b/.github/workflows/validate.yml index 5df9f2b..49c4ccc 100644 --- a/.github/workflows/validate.yml +++ b/.github/workflows/validate.yml @@ -49,6 +49,14 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + - name: Restore mcpp registry cache + uses: actions/cache@v4 + with: + path: ~/.mcpp/registry + key: mcpp-registry-${{ runner.os }}-0.0.41-${{ hashFiles('pkgs/**/*.lua', 'tests/smoke_compat_*.sh', '.github/workflows/validate.yml') }} + restore-keys: | + mcpp-registry-${{ runner.os }}-0.0.41- + mcpp-registry-${{ runner.os }}- - name: Download mcpp env: MCPP_VERSION: "0.0.41" @@ -90,6 +98,14 @@ jobs: xlings: registry/bin/xlings.exe steps: - uses: actions/checkout@v4 + - name: Restore mcpp registry cache + uses: actions/cache@v4 + with: + path: ~/.mcpp/registry + key: mcpp-registry-${{ runner.os }}-0.0.41-${{ hashFiles('pkgs/**/*.lua', 'tests/smoke_compat_*.sh', '.github/workflows/validate.yml') }} + restore-keys: | + mcpp-registry-${{ runner.os }}-0.0.41- + mcpp-registry-${{ runner.os }}- - name: Download mcpp shell: bash env: From 4015b98c27fe736d225e3b0efebe4d96a54831d0 Mon Sep 17 00:00:00 2001 From: sunrisepeak Date: Mon, 1 Jun 2026 14:10:43 +0800 Subject: [PATCH 4/5] ci: seed mcpp registry cache --- .github/workflows/validate.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/validate.yml b/.github/workflows/validate.yml index 49c4ccc..2fe5da0 100644 --- a/.github/workflows/validate.yml +++ b/.github/workflows/validate.yml @@ -56,7 +56,6 @@ jobs: key: mcpp-registry-${{ runner.os }}-0.0.41-${{ hashFiles('pkgs/**/*.lua', 'tests/smoke_compat_*.sh', '.github/workflows/validate.yml') }} restore-keys: | mcpp-registry-${{ runner.os }}-0.0.41- - mcpp-registry-${{ runner.os }}- - name: Download mcpp env: MCPP_VERSION: "0.0.41" @@ -65,6 +64,8 @@ jobs: "https://github.com/mcpp-community/mcpp/releases/download/v${MCPP_VERSION}/mcpp-${MCPP_VERSION}-linux-x86_64.tar.gz" tar -xzf mcpp.tar.gz root="$PWD/mcpp-${MCPP_VERSION}-linux-x86_64" + mkdir -p "$HOME/.mcpp/registry" + cp -a "$root/registry/." "$HOME/.mcpp/registry/" echo "MCPP=$root/bin/mcpp" >> "$GITHUB_ENV" echo "MCPP_VENDORED_XLINGS=$root/registry/bin/xlings" >> "$GITHUB_ENV" echo "$root/bin" >> "$GITHUB_PATH" @@ -105,7 +106,6 @@ jobs: key: mcpp-registry-${{ runner.os }}-0.0.41-${{ hashFiles('pkgs/**/*.lua', 'tests/smoke_compat_*.sh', '.github/workflows/validate.yml') }} restore-keys: | mcpp-registry-${{ runner.os }}-0.0.41- - mcpp-registry-${{ runner.os }}- - name: Download mcpp shell: bash env: @@ -125,6 +125,8 @@ jobs: esac root="$PWD/$MCPP_ROOT" + mkdir -p "$HOME/.mcpp/registry" + cp -a "$root/registry/." "$HOME/.mcpp/registry/" if [[ "$RUNNER_OS" == "Windows" ]]; then echo "MCPP=$(cygpath -m "$root/${{ matrix.mcpp }}")" >> "$GITHUB_ENV" echo "MCPP_VENDORED_XLINGS=$(cygpath -m "$root/${{ matrix.xlings }}")" >> "$GITHUB_ENV" From 44b7c556ded17f733e3e842042dc0961e669ad18 Mon Sep 17 00:00:00 2001 From: sunrisepeak Date: Mon, 1 Jun 2026 14:58:21 +0800 Subject: [PATCH 5/5] ci: reuse mcpp smoke sandbox --- .github/workflows/validate.yml | 3 +++ pkgs/c/compat.khrplatform.lua | 2 +- pkgs/c/compat.libarchive.lua | 2 +- pkgs/c/compat.x11.lua | 2 +- pkgs/c/compat.xau.lua | 2 +- pkgs/c/compat.xcursor.lua | 2 +- pkgs/c/compat.xdmcp.lua | 2 +- pkgs/c/compat.xext.lua | 2 +- pkgs/c/compat.xfixes.lua | 2 +- pkgs/c/compat.xi.lua | 2 +- pkgs/c/compat.xinerama.lua | 2 +- pkgs/c/compat.xorgproto.lua | 2 +- pkgs/c/compat.xrandr.lua | 2 +- pkgs/c/compat.xrender.lua | 2 +- pkgs/c/compat.xtrans.lua | 2 +- pkgs/c/compat.xz.lua | 2 +- pkgs/c/compat.zstd.lua | 2 +- tests/smoke_compat_archive.sh | 6 +++++- tests/smoke_compat_core.sh | 6 +++++- tests/smoke_compat_imgui.sh | 6 +++++- tests/smoke_compat_imgui_window.sh | 6 +++++- 21 files changed, 39 insertions(+), 20 deletions(-) diff --git a/.github/workflows/validate.yml b/.github/workflows/validate.yml index 2fe5da0..e962739 100644 --- a/.github/workflows/validate.yml +++ b/.github/workflows/validate.yml @@ -70,7 +70,10 @@ jobs: echo "MCPP_VENDORED_XLINGS=$root/registry/bin/xlings" >> "$GITHUB_ENV" echo "$root/bin" >> "$GITHUB_PATH" - name: Run compat smoke tests + env: + MCPP_INDEX_SMOKE_MCPP_HOME: ${{ runner.temp }}/mcpp-smoke-home run: | + mkdir -p "$MCPP_INDEX_SMOKE_MCPP_HOME" "$MCPP" --version timeout 1800 bash tests/smoke_compat_core.sh timeout 1800 bash tests/smoke_compat_imgui.sh diff --git a/pkgs/c/compat.khrplatform.lua b/pkgs/c/compat.khrplatform.lua index cb58baa..3a5118f 100644 --- a/pkgs/c/compat.khrplatform.lua +++ b/pkgs/c/compat.khrplatform.lua @@ -3,7 +3,7 @@ package = { namespace = "compat", name = "compat.khrplatform", description = "Khronos KHR platform header for OpenGL/EGL compat packages", - licenses = {"MIT"}, + licenses = {"Khronos"}, repo = "https://github.com/KhronosGroup/EGL-Registry", type = "package", diff --git a/pkgs/c/compat.libarchive.lua b/pkgs/c/compat.libarchive.lua index 780297c..de75213 100644 --- a/pkgs/c/compat.libarchive.lua +++ b/pkgs/c/compat.libarchive.lua @@ -3,7 +3,7 @@ package = { namespace = "compat", name = "compat.libarchive", description = "Multi-format archive and compression library", - licenses = {"BSD-2-Clause"}, + licenses = {"BSD-2-Clause", "BSD-3-Clause", "BSD-2-Clause-NetBSD", "CC0-1.0", "OpenSSL", "Apache-2.0", "public-domain"}, repo = "https://libarchive.org/", type = "package", diff --git a/pkgs/c/compat.x11.lua b/pkgs/c/compat.x11.lua index c6cee3c..e7f0bd4 100644 --- a/pkgs/c/compat.x11.lua +++ b/pkgs/c/compat.x11.lua @@ -3,7 +3,7 @@ package = { namespace = "compat", name = "compat.x11", description = "Xlib runtime library and public headers built from upstream sources", - licenses = {"MIT"}, + licenses = {"BSD-1-Clause", "HPND-sell-variant", "ISC", "MIT", "MIT-Open-Group", "X11"}, repo = "https://gitlab.freedesktop.org/xorg/lib/libx11", type = "package", diff --git a/pkgs/c/compat.xau.lua b/pkgs/c/compat.xau.lua index b3ee793..01723bc 100644 --- a/pkgs/c/compat.xau.lua +++ b/pkgs/c/compat.xau.lua @@ -3,7 +3,7 @@ package = { namespace = "compat", name = "compat.xau", description = "X authorization file management library", - licenses = {"MIT"}, + licenses = {"MIT-Open-Group"}, repo = "https://gitlab.freedesktop.org/xorg/lib/libxau", type = "package", diff --git a/pkgs/c/compat.xcursor.lua b/pkgs/c/compat.xcursor.lua index 12f914d..5f5c70e 100644 --- a/pkgs/c/compat.xcursor.lua +++ b/pkgs/c/compat.xcursor.lua @@ -3,7 +3,7 @@ package = { namespace = "compat", name = "compat.xcursor", description = "X cursor management runtime library and public headers", - licenses = {"MIT"}, + licenses = {"HPND-sell-variant"}, repo = "https://gitlab.freedesktop.org/xorg/lib/libxcursor", type = "package", diff --git a/pkgs/c/compat.xdmcp.lua b/pkgs/c/compat.xdmcp.lua index 70fe5a2..14ebfd3 100644 --- a/pkgs/c/compat.xdmcp.lua +++ b/pkgs/c/compat.xdmcp.lua @@ -3,7 +3,7 @@ package = { namespace = "compat", name = "compat.xdmcp", description = "X Display Manager Control Protocol library", - licenses = {"MIT"}, + licenses = {"MIT-Open-Group"}, repo = "https://gitlab.freedesktop.org/xorg/lib/libxdmcp", type = "package", diff --git a/pkgs/c/compat.xext.lua b/pkgs/c/compat.xext.lua index f50bf93..c203ad0 100644 --- a/pkgs/c/compat.xext.lua +++ b/pkgs/c/compat.xext.lua @@ -3,7 +3,7 @@ package = { namespace = "compat", name = "compat.xext", description = "X11 miscellaneous extensions runtime library and public headers", - licenses = {"MIT"}, + licenses = {"HPND-sell-variant", "ISC", "MIT", "MIT-Open-Group"}, repo = "https://gitlab.freedesktop.org/xorg/lib/libxext", type = "package", diff --git a/pkgs/c/compat.xfixes.lua b/pkgs/c/compat.xfixes.lua index eb3e23b..28765e5 100644 --- a/pkgs/c/compat.xfixes.lua +++ b/pkgs/c/compat.xfixes.lua @@ -3,7 +3,7 @@ package = { namespace = "compat", name = "compat.xfixes", description = "X Fixes extension runtime library and public headers", - licenses = {"MIT"}, + licenses = {"HPND-sell-variant"}, repo = "https://gitlab.freedesktop.org/xorg/lib/libxfixes", type = "package", diff --git a/pkgs/c/compat.xi.lua b/pkgs/c/compat.xi.lua index 1c15140..903adbf 100644 --- a/pkgs/c/compat.xi.lua +++ b/pkgs/c/compat.xi.lua @@ -3,7 +3,7 @@ package = { namespace = "compat", name = "compat.xi", description = "X Input extension runtime library and public headers", - licenses = {"MIT"}, + licenses = {"MIT-Open-Group"}, repo = "https://gitlab.freedesktop.org/xorg/lib/libxi", type = "package", diff --git a/pkgs/c/compat.xinerama.lua b/pkgs/c/compat.xinerama.lua index 08a146f..f76a0cf 100644 --- a/pkgs/c/compat.xinerama.lua +++ b/pkgs/c/compat.xinerama.lua @@ -3,7 +3,7 @@ package = { namespace = "compat", name = "compat.xinerama", description = "Xinerama extension runtime library and public headers", - licenses = {"MIT"}, + licenses = {"MIT-Open-Group"}, repo = "https://gitlab.freedesktop.org/xorg/lib/libxinerama", type = "package", diff --git a/pkgs/c/compat.xorgproto.lua b/pkgs/c/compat.xorgproto.lua index b692f29..56f4a02 100644 --- a/pkgs/c/compat.xorgproto.lua +++ b/pkgs/c/compat.xorgproto.lua @@ -3,7 +3,7 @@ package = { namespace = "compat", name = "compat.xorgproto", description = "X.Org protocol headers for X11-based compat packages", - licenses = {"MIT"}, + licenses = {}, repo = "https://gitlab.freedesktop.org/xorg/proto/xorgproto", type = "package", diff --git a/pkgs/c/compat.xrandr.lua b/pkgs/c/compat.xrandr.lua index ccf29df..3939072 100644 --- a/pkgs/c/compat.xrandr.lua +++ b/pkgs/c/compat.xrandr.lua @@ -3,7 +3,7 @@ package = { namespace = "compat", name = "compat.xrandr", description = "X Resize, Rotate and Reflect extension runtime library and public headers", - licenses = {"MIT"}, + licenses = {"HPND-sell-variant"}, repo = "https://gitlab.freedesktop.org/xorg/lib/libxrandr", type = "package", diff --git a/pkgs/c/compat.xrender.lua b/pkgs/c/compat.xrender.lua index d91255a..ef3e0f1 100644 --- a/pkgs/c/compat.xrender.lua +++ b/pkgs/c/compat.xrender.lua @@ -3,7 +3,7 @@ package = { namespace = "compat", name = "compat.xrender", description = "X Rendering extension runtime library and public headers", - licenses = {"MIT"}, + licenses = {"HPND-sell-variant"}, repo = "https://gitlab.freedesktop.org/xorg/lib/libxrender", type = "package", diff --git a/pkgs/c/compat.xtrans.lua b/pkgs/c/compat.xtrans.lua index 1264a5a..1c1b56d 100644 --- a/pkgs/c/compat.xtrans.lua +++ b/pkgs/c/compat.xtrans.lua @@ -3,7 +3,7 @@ package = { namespace = "compat", name = "compat.xtrans", description = "X.Org transport layer support headers used by Xlib", - licenses = {"MIT"}, + licenses = {"HPND-sell-variant", "MIT", "MIT-Open-Group"}, repo = "https://gitlab.freedesktop.org/xorg/lib/libxtrans", type = "package", diff --git a/pkgs/c/compat.xz.lua b/pkgs/c/compat.xz.lua index e71ac97..8e2ace7 100644 --- a/pkgs/c/compat.xz.lua +++ b/pkgs/c/compat.xz.lua @@ -3,7 +3,7 @@ package = { namespace = "compat", name = "compat.xz", description = "XZ Utils liblzma compression library", - licenses = {"0BSD", "LGPL-2.1-or-later"}, + licenses = {"0BSD"}, repo = "https://github.com/tukaani-project/xz", type = "package", diff --git a/pkgs/c/compat.zstd.lua b/pkgs/c/compat.zstd.lua index 76b6f64..b99ff6d 100644 --- a/pkgs/c/compat.zstd.lua +++ b/pkgs/c/compat.zstd.lua @@ -3,7 +3,7 @@ package = { namespace = "compat", name = "compat.zstd", description = "Zstandard real-time compression algorithm", - licenses = {"BSD-3-Clause"}, + licenses = {"BSD-3-Clause", "GPL-2.0-only"}, repo = "https://github.com/facebook/zstd", type = "package", diff --git a/tests/smoke_compat_archive.sh b/tests/smoke_compat_archive.sh index 00ff337..374090c 100755 --- a/tests/smoke_compat_archive.sh +++ b/tests/smoke_compat_archive.sh @@ -22,7 +22,11 @@ fi SMOKE_CACHE_DIR="${MCPP_INDEX_SMOKE_CACHE_DIR:-}" SMOKE_XPKGS_DIR="${MCPP_INDEX_SMOKE_XPKGS_DIR:-}" -export MCPP_HOME="$TMP/mcpp-home" +if [[ -n "${MCPP_INDEX_SMOKE_MCPP_HOME:-}" ]]; then + export MCPP_HOME="$MCPP_INDEX_SMOKE_MCPP_HOME" +else + export MCPP_HOME="$TMP/mcpp-home" +fi mkdir -p "$MCPP_HOME" USER_MCPP="${HOME}/.mcpp" diff --git a/tests/smoke_compat_core.sh b/tests/smoke_compat_core.sh index ce26dcc..252d8fd 100755 --- a/tests/smoke_compat_core.sh +++ b/tests/smoke_compat_core.sh @@ -18,7 +18,11 @@ trap 'rm -rf "$TMP"' EXIT SMOKE_CACHE_DIR="${MCPP_INDEX_SMOKE_CACHE_DIR:-}" SMOKE_XPKGS_DIR="${MCPP_INDEX_SMOKE_XPKGS_DIR:-}" -export MCPP_HOME="$TMP/mcpp-home" +if [[ -n "${MCPP_INDEX_SMOKE_MCPP_HOME:-}" ]]; then + export MCPP_HOME="$MCPP_INDEX_SMOKE_MCPP_HOME" +else + export MCPP_HOME="$TMP/mcpp-home" +fi mkdir -p "$MCPP_HOME/registry/data/xpkgs" USER_MCPP="${HOME}/.mcpp" diff --git a/tests/smoke_compat_imgui.sh b/tests/smoke_compat_imgui.sh index 0b4eb50..7875a0c 100755 --- a/tests/smoke_compat_imgui.sh +++ b/tests/smoke_compat_imgui.sh @@ -22,7 +22,11 @@ fi SMOKE_CACHE_DIR="${MCPP_INDEX_SMOKE_CACHE_DIR:-}" SMOKE_XPKGS_DIR="${MCPP_INDEX_SMOKE_XPKGS_DIR:-}" -export MCPP_HOME="$TMP/mcpp-home" +if [[ -n "${MCPP_INDEX_SMOKE_MCPP_HOME:-}" ]]; then + export MCPP_HOME="$MCPP_INDEX_SMOKE_MCPP_HOME" +else + export MCPP_HOME="$TMP/mcpp-home" +fi mkdir -p "$MCPP_HOME" USER_MCPP="${HOME}/.mcpp" diff --git a/tests/smoke_compat_imgui_window.sh b/tests/smoke_compat_imgui_window.sh index 739d972..02f4cab 100755 --- a/tests/smoke_compat_imgui_window.sh +++ b/tests/smoke_compat_imgui_window.sh @@ -23,7 +23,11 @@ fi SMOKE_CACHE_DIR="${MCPP_INDEX_SMOKE_CACHE_DIR:-}" SMOKE_XPKGS_DIR="${MCPP_INDEX_SMOKE_XPKGS_DIR:-}" -export MCPP_HOME="$TMP/mcpp-home" +if [[ -n "${MCPP_INDEX_SMOKE_MCPP_HOME:-}" ]]; then + export MCPP_HOME="$MCPP_INDEX_SMOKE_MCPP_HOME" +else + export MCPP_HOME="$TMP/mcpp-home" +fi mkdir -p "$MCPP_HOME/registry/data/xpkgs" USER_MCPP="${HOME}/.mcpp"