diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 965f6f203b..699a834a87 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -2,9 +2,6 @@ "name": "Terra Devcontainer", "image": "ghcr.io/terrapkg/builder:frawhide", "runArgs": ["--privileged"], - "features": { - "ghcr.io/devcontainers/features/common-utils:2": {} - }, "customizations": { "vscode": { "extensions": [ diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml index a7ba3a8c91..37938e795b 100644 --- a/.github/ISSUE_TEMPLATE/bug.yml +++ b/.github/ISSUE_TEMPLATE/bug.yml @@ -29,6 +29,7 @@ body: description: Which version of Terra are you using? options: - frawhide + - f44 - f43 - f42 - el10 diff --git a/.github/workflows/autobuild.yml b/.github/workflows/autobuild.yml index 7d44efae7e..ab3adfb9f4 100644 --- a/.github/workflows/autobuild.yml +++ b/.github/workflows/autobuild.yml @@ -3,6 +3,9 @@ name: Automatically build packages permissions: contents: read + attestations: write + artifact-metadata: write + id-token: write on: push: paths: @@ -30,7 +33,7 @@ jobs: - name: Set workspace as safe run: git config --global --add safe.directory "$GITHUB_WORKSPACE" - name: Checkout - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 with: fetch-depth: 0 - name: Generate build matrix @@ -56,6 +59,7 @@ jobs: merge-multiple: true path: ./artifacts - name: Generate test catalog + id: catalog # run appstream-builder, then add step summary run: | set -x @@ -71,50 +75,64 @@ jobs: --veto-ignore=missing-info 2>&1 | tee asb.log - name: Run appstreamcli validate + if: steps.catalog.outcome == 'success' run: | - echo "## AppStream MetaInfo Validation" >> $GITHUB_STEP_SUMMARY - echo "" >> $GITHUB_STEP_SUMMARY - echo '```xml' >> $GITHUB_STEP_SUMMARY - for file in output/test.xml.gz; do - appstreamcli validate $file >> $GITHUB_STEP_SUMMARY || true + if stat output/test.xml.gz &>/dev/null; then + echo "## AppStream MetaInfo Validation" >> $GITHUB_STEP_SUMMARY echo "" >> $GITHUB_STEP_SUMMARY - done - echo '```' >> $GITHUB_STEP_SUMMARY + echo '```xml' >> $GITHUB_STEP_SUMMARY + appstreamcli validate output/test.xml.gz >> $GITHUB_STEP_SUMMARY | true + echo "" >> $GITHUB_STEP_SUMMARY + echo '```' >> $GITHUB_STEP_SUMMARY + else + echo "Nothing to do." + fi + - name: Export logs id: export_logs + if: steps.catalog.outcome == 'success' run: | - echo "## AppStream Builder Log" >> $GITHUB_STEP_SUMMARY - echo "" >> $GITHUB_STEP_SUMMARY - echo '```log' >> $GITHUB_STEP_SUMMARY - cat asb.log >> $GITHUB_STEP_SUMMARY - echo '```' >> $GITHUB_STEP_SUMMARY - echo '---' >> $GITHUB_STEP_SUMMARY + if stat output/*.xml.gz &>/dev/null; then + echo "## AppStream Builder Log" >> $GITHUB_STEP_SUMMARY + echo "" >> $GITHUB_STEP_SUMMARY + echo '```log' >> $GITHUB_STEP_SUMMARY + cat asb.log >> $GITHUB_STEP_SUMMARY + echo '```' >> $GITHUB_STEP_SUMMARY + echo '---' >> $GITHUB_STEP_SUMMARY + else + echo "Nothing to do." + fi - name: Report Summary id: report_summary + if: steps.export_logs.outcome == 'success' run: | echo "## AppStream Builder Report" >> $GITHUB_STEP_SUMMARY echo "" >> $GITHUB_STEP_SUMMARY - if grep -q "veto" asb.log; then - echo "::group::Vetoed packages" - echo "### Vetoed packages" >> $GITHUB_STEP_SUMMARY + if stat output/*.xml.gz &>/dev/null; then + if grep -q "veto" asb.log; then + echo "::group::Vetoed packages" + echo "### Vetoed packages" >> $GITHUB_STEP_SUMMARY + echo "" >> $GITHUB_STEP_SUMMARY + echo '```xml' >> $GITHUB_STEP_SUMMARY + echo "$(grep -i 'veto' asb.log)" >> $GITHUB_STEP_SUMMARY + echo '```' >> $GITHUB_STEP_SUMMARY + echo "::warning file=asb.log::Some packages were vetoed during AppStream generation. Please review the 'Vetoed packages' section in the summary for details." + echo "::endgroup::" + fi + echo "## Full Data Summary" >> $GITHUB_STEP_SUMMARY echo "" >> $GITHUB_STEP_SUMMARY - echo '```xml' >> $GITHUB_STEP_SUMMARY - echo "$(grep -i 'veto' asb.log)" >> $GITHUB_STEP_SUMMARY - echo '```' >> $GITHUB_STEP_SUMMARY - echo "::warning file=asb.log::Some packages were vetoed during AppStream generation. Please review the 'Vetoed packages' section in the summary for details." - echo "::endgroup::" + echo "### Generated Appstream files:" >> $GITHUB_STEP_SUMMARY + echo "" >> $GITHUB_STEP_SUMMARY + for file in output/*.xml.gz; do + echo "#### \`$file\`" >> $GITHUB_STEP_SUMMARY + echo "" >> $GITHUB_STEP_SUMMARY + echo '```xml' >> $GITHUB_STEP_SUMMARY + zcat "$file" >> $GITHUB_STEP_SUMMARY || true + echo '```' >> $GITHUB_STEP_SUMMARY + echo "" >> $GITHUB_STEP_SUMMARY + done + else + echo "No appstream files found." >> $GITHUB_STEP_SUMMARY fi - echo "## Full Data Summary" >> $GITHUB_STEP_SUMMARY - echo "" >> $GITHUB_STEP_SUMMARY - echo "### Generated Appstream files:" >> $GITHUB_STEP_SUMMARY - echo "" >> $GITHUB_STEP_SUMMARY - for file in output/*.xml.gz; do - echo "#### \`$file\`" >> $GITHUB_STEP_SUMMARY - echo "" >> $GITHUB_STEP_SUMMARY - echo '```xml' >> $GITHUB_STEP_SUMMARY - zcat "$file" >> $GITHUB_STEP_SUMMARY - echo '```' >> $GITHUB_STEP_SUMMARY - echo "" >> $GITHUB_STEP_SUMMARY - done diff --git a/.github/workflows/bootstrap.yml b/.github/workflows/bootstrap.yml index fd3858c6de..c35b1fbbf4 100644 --- a/.github/workflows/bootstrap.yml +++ b/.github/workflows/bootstrap.yml @@ -1,6 +1,9 @@ name: Bootstrap Andaman and Subatomic permissions: contents: read + attestations: write + artifact-metadata: write + id-token: write on: workflow_dispatch: @@ -21,7 +24,7 @@ jobs: dnf5 swap -y --setopt=install_weak_deps=False systemd-standalone-sysusers systemd dnf5 install -y --setopt=install_weak_deps=False curl wget git-core openssl-devel cargo podman fuse-overlayfs dnf5-plugins rpmbuild script - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 with: ref: f${{ matrix.version }} fetch-depth: 1 @@ -34,11 +37,11 @@ jobs: dnf5 install -y ./anda-build/rpm/rpms/anda-*.rpm - name: Install build dependencies - run: dnf5 builddep -y anda/terra/{mock-configs,srpm-macros}/*.spec anda/tools/buildsys/{anda,subatomic}/*.spec + run: dnf5 builddep -y anda/terra/{mock-configs,srpm-macros}/*.spec anda/{buildsys/anda,tools/subatomic}/*.spec - name: Install Anda run: | - rpmbuild -bb anda/tools/buildsys/anda/*.spec --undefine=_disable_source_fetch -D "_sourcedir $(pwd)/anda/tools/buildsys/anda/" -D "_rpmdir $(pwd)/anda-build/rpm/rpms/" + rpmbuild -bb anda/buildsys/anda/*.spec --undefine=_disable_source_fetch -D "_sourcedir $(pwd)/anda/buildsys/anda/" -D "_rpmdir $(pwd)/anda-build/rpm/rpms/" mv ./anda-build/rpm/rpms/*/anda-*.rpm ./anda-build/rpm/rpms/ dnf5 install -y ./anda-build/rpm/rpms/anda-*.rpm @@ -58,7 +61,7 @@ jobs: run: anda build -D "vendor Terra" -D "__python %{__python3}" -rrpmbuild anda/terra/appstream-helper/pkg - name: Build Subatomic - run: anda build -D "vendor Terra" -rrpmbuild anda/tools/buildsys/subatomic/pkg + run: anda build -D "vendor Terra" -rrpmbuild anda/tools/subatomic/pkg - name: Install Subatomic run: dnf5 install -y ./anda-build/rpm/rpms/subatomic-*.rpm @@ -79,3 +82,10 @@ jobs: --server https://subatomic.fyralabs.com \ --token ${{ secrets.SUBATOMIC_TOKEN }} \ terra${{ matrix.version }}-source anda-build/rpm/srpm/* + + - name: Attest build provenance + uses: actions/attest-build-provenance@a2bbfa25375fe432b6a289bc6b6cd05ecd0c4c32 # v4.1.0 + with: + subject-path: | + anda-build/rpm/rpms/* + anda-build/rpm/srpm/* diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9c9cc09a85..28e0af35fc 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,6 +1,9 @@ name: Manual Builds permissions: contents: read + attestations: write + artifact-metadata: write + id-token: write on: workflow_dispatch: inputs: @@ -29,7 +32,7 @@ jobs: options: --cap-add=SYS_ADMIN --privileged steps: - name: Checkout - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 with: fetch-depth: 0 - name: Setup Git diff --git a/.github/workflows/json-build.yml b/.github/workflows/json-build.yml index 6fa66c3906..a5232bd3e0 100644 --- a/.github/workflows/json-build.yml +++ b/.github/workflows/json-build.yml @@ -1,6 +1,9 @@ name: JSON Build permissions: contents: read + attestations: write + artifact-metadata: write + id-token: write on: workflow_call: inputs: @@ -42,13 +45,13 @@ jobs: pkg: ${{ fromJson(inputs.packages) }} version: ["rawhide"] fail-fast: false - runs-on: ${{ inputs.custom_builder && inputs.custom_builder || (matrix.pkg.arch == 'aarch64' && matrix.pkg.labels['large']) && 'arm64-lg' || matrix.pkg.arch == 'aarch64' && 'ubuntu-22.04-arm' || matrix.pkg.labels['large'] && format('cirun-x86-64-lg--{0}', github.run_id) || 'ubuntu-22.04' }} + runs-on: ${{ inputs.custom_builder && inputs.custom_builder || (matrix.pkg.arch == 'aarch64' && matrix.pkg.labels['large']) && format('cirun-arm64-lg--{0}', github.run_id) || matrix.pkg.arch == 'aarch64' && 'ubuntu-22.04-arm' || matrix.pkg.labels['large'] && format('cirun-x86-64-lg--{0}', github.run_id) || 'ubuntu-22.04' }} container: image: ghcr.io/terrapkg/builder:f${{ matrix.version }} options: --cap-add=SYS_ADMIN --privileged steps: - name: Checkout - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 with: fetch-depth: 0 @@ -58,7 +61,7 @@ jobs: - name: Configure sccache id: sccache if: ${{ !contains(matrix.pkg.labels.sccache, '0') }} - uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0 + uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0 env: SCCACHE_GHA_VERSION: ${{ matrix.version }}-${{ matrix.pkg.arch }}-${{ matrix.pkg.pkg }} SCCACHE_GHA_CACHE_FROM: ${{ matrix.version }}-${{ matrix.pkg.arch }}-${{ matrix.pkg.pkg }} @@ -86,7 +89,7 @@ jobs: - name: Report Cache Summary if: steps.sccache.outcome == 'success' - uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8.0.0 + uses: actions/github-script@3a2844b7e9c422d3c10d287c895573f7108da1b3 # v9.0.0 with: script: | const script = require('./.github/scripts/sccache-stats.js') @@ -99,7 +102,7 @@ jobs: x=${NAME//\//@} echo "name=$x" >> $GITHUB_OUTPUT - - uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 + - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: ${{ steps.art.outputs.name }} compression-level: 0 # The RPMs are already compressed :p @@ -125,6 +128,14 @@ jobs: --token ${{ secrets.SUBATOMIC_TOKEN }} \ terra${{ matrix.version }}${{ matrix.pkg.labels['subrepo'] && '-$subrepo' || '' }}-source anda-build/rpm/srpm/* + - name: Attest build provenance + if: inputs.publish + uses: actions/attest-build-provenance@a2bbfa25375fe432b6a289bc6b6cd05ecd0c4c32 # v4.1.0 + with: + subject-path: | + anda-build/rpm/rpms/* + anda-build/rpm/srpm/* + - name: Notify Madoguchi (Success) if: inputs.publish && success() run: ./.github/workflows/mg.sh true "${{matrix.pkg.pkg}}" "${{matrix.version}}" "${{matrix.pkg.arch}}" "${{github.run_id}}" "${{secrets.MADOGUCHI_JWT}}" "$GITHUB_SHA" diff --git a/.github/workflows/scorecard.yml b/.github/workflows/scorecard.yml index ab737e169b..039ff7772b 100644 --- a/.github/workflows/scorecard.yml +++ b/.github/workflows/scorecard.yml @@ -34,7 +34,7 @@ jobs: steps: - name: "Checkout code" - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 with: persist-credentials: false @@ -64,7 +64,7 @@ jobs: # Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF # format to the repository Actions tab. - name: "Upload artifact" - uses: actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0 + uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 with: name: SARIF file path: results.sarif @@ -73,6 +73,6 @@ jobs: # Upload the results to GitHub's code scanning dashboard (optional). # Commenting out will disable upload of results to your repo's Code Scanning dashboard - name: "Upload to code-scanning" - uses: github/codeql-action/upload-sarif@38697555549f1db7851b81482ff19f1fa5c4fedc # v4 + uses: github/codeql-action/upload-sarif@8aad20d150bbac5944a9f9d289da16a4b0d87c1e # v4 with: sarif_file: results.sarif diff --git a/.github/workflows/sync.yml b/.github/workflows/sync.yml index b51cce456a..6da91e59e6 100644 --- a/.github/workflows/sync.yml +++ b/.github/workflows/sync.yml @@ -27,7 +27,7 @@ jobs: git config --global commit.gpgsign true - name: Backport Action - uses: sorenlouv/backport-github-action@9460b7102fea25466026ce806c9ebf873ac48721 # v11.0.0 + uses: sorenlouv/backport-github-action@85813678d776774a19ec5af56bd3a04305946f8a # v12.0.0 with: github_token: ${{ secrets.RABONEKO_BACKPORT_GITHUB_TOKEN }} auto_backport_label_prefix: sync- diff --git a/.github/workflows/update-branch.yml b/.github/workflows/update-branch.yml index 47b7ef26c1..e46e20be6c 100644 --- a/.github/workflows/update-branch.yml +++ b/.github/workflows/update-branch.yml @@ -24,7 +24,7 @@ jobs: options: --cap-add=SYS_ADMIN --privileged steps: - name: Checkout - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 with: ref: ${{ matrix.branch }} fetch-depth: 0 diff --git a/.github/workflows/update-comps.yml b/.github/workflows/update-comps.yml index f9f0dab48e..15609c4dae 100644 --- a/.github/workflows/update-comps.yml +++ b/.github/workflows/update-comps.yml @@ -20,7 +20,7 @@ jobs: container: image: ghcr.io/terrapkg/builder:frawhide steps: - - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 - name: Push to subatomic run: | branch=${{ github.ref_name }} diff --git a/.github/workflows/update-nightly.yml b/.github/workflows/update-nightly.yml index 0e8d987fc8..403e7d2ba0 100644 --- a/.github/workflows/update-nightly.yml +++ b/.github/workflows/update-nightly.yml @@ -16,7 +16,7 @@ jobs: options: --cap-add=SYS_ADMIN --privileged steps: - name: Checkout - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 with: fetch-depth: 0 ssh-key: ${{ secrets.SSH_AUTHENTICATION_KEY }} diff --git a/.github/workflows/update-weekly.yml b/.github/workflows/update-weekly.yml index 4a5c328231..8074bdb5d0 100644 --- a/.github/workflows/update-weekly.yml +++ b/.github/workflows/update-weekly.yml @@ -16,7 +16,7 @@ jobs: options: --cap-add=SYS_ADMIN --privileged steps: - name: Checkout - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 with: fetch-depth: 0 ssh-key: ${{ secrets.SSH_AUTHENTICATION_KEY }} diff --git a/.github/workflows/update.yml b/.github/workflows/update.yml index 24bddfa103..d91a0ab01b 100644 --- a/.github/workflows/update.yml +++ b/.github/workflows/update.yml @@ -16,7 +16,7 @@ jobs: options: --cap-add=SYS_ADMIN --privileged steps: - name: Checkout - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 with: fetch-depth: 0 ssh-key: ${{ secrets.SSH_AUTHENTICATION_KEY }} diff --git a/.gitignore b/.gitignore index 9161afd3f9..4910acc325 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ anda-build/ **/*.nupkg **/*.rpm **/*.kate-swp +**/.DS_Store diff --git a/README.md b/README.md index 54093e8368..c1347223a4 100644 --- a/README.md +++ b/README.md @@ -7,13 +7,13 @@ Terra is a rolling-release Fedora repository for all the software you need. With Terra, you can install the latest packages knowing that quality and security are assured. -See the introduction at [our website](https://terra.fyralabs.com). +See the introduction at [our website](https://terrapkg.com). This monorepo contains the package manifests for all packages in Terra. ## Installation -The latest detailed instructions are available in our Devdocs: https://developer.fyralabs.com/terra/installing +The latest detailed instructions are available in our docs: https://docs.terrapkg.com/usage/installing ### Fedora @@ -34,7 +34,7 @@ On Fedora, you can optionally install the Terra subrepos. Extra care and caution - Install `terra-release-extras` to enable the Extras subrepo. This repo contains packages which conflict with Fedora packages in some way, such as being a patched version of the same package. - Install `terra-release-mesa` to install the Mesa subrepo which contains a patched and codec complete Mesa. - Install `terra-release-nvidia` to install the NVIDIA subrepo which contains NVIDIA drivers. -- Install `terra-release-multimedia` for multimedia packages in Terra. This repository is currently considered a work in progress. +- Install `terra-release-multimedia` for multimedia packages in Terra. **This repository is currently considered unstable and a work in progress.** ### Enterprise Linux (EL) @@ -56,13 +56,13 @@ sudo dnf install --nogpgcheck --repofrompath 'terra,https://repos.fyralabs.com/t First of all, thanks for being interested in contributing to Terra! If you have any questions about contributing, please [join our chats](https://wiki.ultramarine-linux.org/en/community/community/). -- [Contribution Guide](https://developer.fyralabs.com/terra/contributing) -- [FAQ](https://developer.fyralabs.com/terra/faq) -- [Guidelines](https://developer.fyralabs.com/terra/guidelines) +- [Contribution Guide](https://docs.terrapkg.com/contributing/getting-started) +- [FAQ](https://docs.terrapkg.com/reference/faq) +- [Guidelines](https://docs.terrapkg.com/contributing/guidelines) ## Documentation -Our documentation can be found on our [Devdocs](https://developer.fyralabs.com/terra/). +Our documentation can be found on our [docs site](https://docs.terrapkg.com). ## Searching Packages @@ -72,6 +72,6 @@ Our documentation can be found on our [Devdocs](https://developer.fyralabs.com/t Feel free to reach out by [joining our community](https://wiki.ultramarine-linux.org/en/community/community/). We're always happy to help! -- [Contribution Guide](https://developer.fyralabs.com/terra/contributing) -- [FAQ](https://developer.fyralabs.com/terra/faq) -- [Guidelines](https://developer.fyralabs.com/terra/guidelines) +- [Contribution Guide](https://docs.terrapkg.com/contributing/getting-started) +- [FAQ](https://docs.terrapkg.com/reference/faq) +- [Guidelines](https://docs.terrapkg.com/contributing/guidelines) diff --git a/anda/apps/KTailctl/KTailctl.spec b/anda/apps/KTailctl/KTailctl.spec new file mode 100644 index 0000000000..fd3410975e --- /dev/null +++ b/anda/apps/KTailctl/KTailctl.spec @@ -0,0 +1,74 @@ +Name: ktailctl +Version: 0.21.5 +Release: 1%{?dist} +Summary: A GUI to monitor and manage Tailscale on your Linux desktop +License: GPL-3.0-only +URL: https://github.com/f-koehler/KTailctl +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz + +BuildRequires: cmake +BuildRequires: extra-cmake-modules +BuildRequires: gcc-c++ +BuildRequires: golang +BuildRequires: json-devel +BuildRequires: golang +BuildRequires: kf6-breeze-icons-devel +BuildRequires: kf6-kconfig-devel +BuildRequires: kf6-kcoreaddons-devel +BuildRequires: kf6-kdbusaddons-devel +BuildRequires: kf6-kguiaddons-devel +BuildRequires: kf6-ki18n-devel +BuildRequires: kf6-kirigami-addons-devel +BuildRequires: kf6-kirigami-devel +BuildRequires: kf6-knotifications-devel +BuildRequires: kf6-kwindowsystem-devel +BuildRequires: qt6-qtbase-devel +BuildRequires: qt6-qtdeclarative-devel +BuildRequires: qt6-qtsvg-devel + +Requires: tailscale +Requires: kf5-qqc2-desktop-style +Requires: hicolor-icon-theme + +Provides: KTailctl + +Packager: Owen Zimmerman + +%description +%{summary}. + +%package static +%pkg_static_files + +%prep +%autosetup -n KTailctl-%{version} +cd src/wrapper +go mod vendor + +%conf +%cmake + +%build +%cmake_build + +%install +%cmake_install + +%files +%doc README.md +%license LICENSE.txt +%{_bindir}/ktailctl +%{_libdir}/qt6/qml/org/fkoehler/KTailctl/Components/*.qml +%{_libdir}/qt6/qml/org/fkoehler/KTailctl/Components/*.version +%{_libdir}/qt6/qml/org/fkoehler/KTailctl/Components/*.qmltypes +%{_libdir}/qt6/qml/org/fkoehler/KTailctl/Components/qmldir +# Exclusive libs that the package needs to run +%{_libdir}/qt6/qml/org/fkoehler/KTailctl/Components/libktailctl_components.so +%{_libdir}/libktailctl_wrapper_logging.so +%{_appsdir}/org.fkoehler.KTailctl.desktop +%{_scalableiconsdir}/org.fkoehler.KTailctl.svg +%{_metainfodir}/org.fkoehler.KTailctl.metainfo.xml + +%changelog +* Sat May 23 2026 Owen Zimmerman - 0.21.5-1 +- Initial commit diff --git a/anda/apps/KTailctl/anda.hcl b/anda/apps/KTailctl/anda.hcl new file mode 100644 index 0000000000..00907a20bf --- /dev/null +++ b/anda/apps/KTailctl/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "KTailctl.spec" + } +} diff --git a/anda/apps/KTailctl/update.rhai b/anda/apps/KTailctl/update.rhai new file mode 100644 index 0000000000..64025dab4f --- /dev/null +++ b/anda/apps/KTailctl/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("f-koehler/KTailctl")); diff --git a/anda/apps/anki-bin/anki-bin.spec b/anda/apps/anki-bin/anki-bin.spec index 2e5f31d091..10eb2e63c3 100644 --- a/anda/apps/anki-bin/anki-bin.spec +++ b/anda/apps/anki-bin/anki-bin.spec @@ -1,10 +1,10 @@ -%global xurl https://files.pythonhosted.org/packages/22/1c/37fe0377fd5fbfe27b17db20679d76aeb1cef7be3ddfb22e24c0bb62cf96/anki-25.9.2-cp39-abi3-manylinux_2_36_x86_64.whl -%global aurl https://files.pythonhosted.org/packages/c1/49/484a786ea0e1b3659de9478f2546368c5970da60a1cd403cec1fa2f81d65/anki-25.9.2-cp39-abi3-manylinux_2_36_aarch64.whl -%global qurl https://files.pythonhosted.org/packages/e5/d4/26016857a780290264866e1818b1a408106c379906fbd186a0aa26eb1054/aqt-25.9.2-py3-none-any.whl +%global xurl https://files.pythonhosted.org/packages/2b/bc/36972ebb0c09effa41a1dc5f1e9c19b9fd85675cc3196f43559eeb3d0ceb/anki-25.9.4-cp39-abi3-manylinux_2_36_x86_64.whl +%global aurl https://files.pythonhosted.org/packages/cb/8e/42e0a2e8f8e6da78571ff8e79dd65eef1602390d03349839a2f4397fdcb5/anki-25.9.4-cp39-abi3-manylinux_2_36_aarch64.whl +%global qurl https://files.pythonhosted.org/packages/83/a1/a8e8c5bc7dda44c0decfdeb128ca308d65d7beca1a4131230e9abadef439/aqt-25.9.4-py3-none-any.whl Name: anki-bin -Version: 25.9.2 -Release: 1%?dist +Version: 25.9.4 +Release: 1%{?dist} Summary: Flashcard program for using space repetition learning (Installed with wheel) License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5 URL: https://apps.ankiweb.net/ diff --git a/anda/apps/anki-qt5/anki-qt5.spec b/anda/apps/anki-qt5/anki-qt5.spec index 3bd44e88d1..bcb1a19f23 100644 --- a/anda/apps/anki-qt5/anki-qt5.spec +++ b/anda/apps/anki-qt5/anki-qt5.spec @@ -1,6 +1,6 @@ Name: anki-qt5 -Version: 25.09.2 -Release: 1%?dist +Version: 25.09.4 +Release: 1%{?dist} Summary: Flashcard program for using space repetition learning License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5 URL: https://apps.ankiweb.net/ diff --git a/anda/apps/anki/anki.spec b/anda/apps/anki/anki.spec index 3ce12bc4f1..d36cc32e69 100644 --- a/anda/apps/anki/anki.spec +++ b/anda/apps/anki/anki.spec @@ -1,6 +1,6 @@ Name: anki -Version: 25.09.2 -Release: 1%?dist +Version: 25.09.4 +Release: 1%{?dist} Summary: Flashcard program for using space repetition learning License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5 URL: https://apps.ankiweb.net/ diff --git a/anda/apps/audacity-freeworld/audacity-freeworld.spec b/anda/apps/audacity-freeworld/audacity-freeworld.spec index aebd30e47e..d586ff07d4 100644 --- a/anda/apps/audacity-freeworld/audacity-freeworld.spec +++ b/anda/apps/audacity-freeworld/audacity-freeworld.spec @@ -1,12 +1,12 @@ %global __requires_exclude ^lib-.*.so %global __provides_exclude ^lib-.*.so -%global ver Audacity-3.7.7 +%global ver Audacity-3.7.8 %global sanitized_ver %(echo %{ver} | sed 's/Audacity-//g') Name: audacity-freeworld Version: %{sanitized_ver} -Release: 1%?dist +Release: 1%{?dist} Summary: Multitrack audio editor License: GPLv2 URL: https://www.audacityteam.org/ diff --git a/anda/apps/auto-cpufreq/anda.hcl b/anda/apps/auto-cpufreq/anda.hcl new file mode 100644 index 0000000000..850557c4c1 --- /dev/null +++ b/anda/apps/auto-cpufreq/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "auto-cpufreq.spec" + } +} diff --git a/anda/apps/auto-cpufreq/auto-cpufreq.spec b/anda/apps/auto-cpufreq/auto-cpufreq.spec new file mode 100644 index 0000000000..2930bb05b3 --- /dev/null +++ b/anda/apps/auto-cpufreq/auto-cpufreq.spec @@ -0,0 +1,87 @@ +%global _desc Automatic CPU speed & power optimizer for Linux. + +Name: python-auto-cpufreq +Version: 3.0.0 +Release: 3%?dist +Summary: Automatic CPU speed & power optimizer for Linux +License: LGPL-3.0-or-later +URL: https://foolcontrol.org/?p=4603 +Source0: https://github.com/AdnanHodzic/auto-cpufreq/archive/refs/tags/v%{version}.tar.gz +Patch0: prevent-install-and-copy.patch + +BuildRequires: python3-devel +BuildRequires: python3-wheel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +BuildRequires: python3-installer +BuildRequires: systemd-rpm-macros +BuildRequires: python3-poetry-core +BuildRequires: python3-poetry-dynamic-versioning +BuildArch: noarch + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-auto-cpufreq +Summary: %{summary} +%{?python_provide:%python_provide python3-auto-cpufreq} + +%description -n python3-auto-cpufreq +%_desc + +%prep +%git_clone https://github.com/AdnanHodzic/auto-cpufreq.git %{version} +%patch -P0 -p1 + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files auto_cpufreq +mkdir -p %{buildroot}%{_datadir}/polkit-1/actions/ +install -Dm644 scripts/org.auto-cpufreq.pkexec.policy %{buildroot}%{_datadir}/polkit-1/actions/ +install -Dm644 images/icon.png %{buildroot}%{_hicolordir}/512x512/apps/auto-cpufreq.png +install -Dm644 images/icon.png %{buildroot}%{_datadir}/%{name}/icon.png + +mkdir -p %{buildroot}%{_datadir}/auto-cpufreq/scripts/ +mkdir -p %{buildroot}/opt/auto-cpufreq/ +mkdir -p %{buildroot}%{_appsdir}/ +mkdir -p %{buildroot}%{_unitdir}/ + +install -Dm755 scripts/auto-cpufreq-install.sh %{buildroot}%{_datadir}/auto-cpufreq/scripts/ +install -Dm755 scripts/auto-cpufreq-remove.sh %{buildroot}%{_datadir}/auto-cpufreq/scripts/ +install -Dm644 scripts/auto-cpufreq.service %{buildroot}%{_unitdir}/auto-cpufreq.service +install -Dm755 scripts/cpufreqctl.sh %{buildroot}%{_datadir}/auto-cpufreq/scripts/ +install -Dm644 scripts/style.css %{buildroot}%{_datadir}/auto-cpufreq/scripts/ +install -Dm644 scripts/auto-cpufreq-gtk.desktop %{buildroot}%{_appsdir}/ + +%post +%systemd_post auto-cpufreq.service + +%preun +%systemd_preun auto-cpufreq.service + +%postun +%systemd_postun_with_restart auto-cpufreq.service + +%files -n python3-auto-cpufreq -f %{pyproject_files} +%doc README.md +%license LICENSE +%{_bindir}/auto-cpufreq +%{_bindir}/auto-cpufreq-gtk +%{_datadir}/polkit-1/actions/org.auto-cpufreq.pkexec.policy +%{_hicolordir}/512x512/apps/auto-cpufreq.png +%{_datadir}/%{name}/icon.png +%{_unitdir}/auto-cpufreq.service +%{_datadir}/auto-cpufreq/scripts/ +%{_appsdir}/auto-cpufreq-gtk.desktop + +%changelog +* Tue Apr 07 2026 Owen Zimmerman +- Add install fix patch + +* Sun Apr 05 2026 Owen Zimmerman +- Initial commit diff --git a/anda/apps/auto-cpufreq/prevent-install-and-copy.patch b/anda/apps/auto-cpufreq/prevent-install-and-copy.patch new file mode 100644 index 0000000000..776b61452b --- /dev/null +++ b/anda/apps/auto-cpufreq/prevent-install-and-copy.patch @@ -0,0 +1,101 @@ +diff --git a/auto_cpufreq/core.py b/auto_cpufreq/core.py +index f03e7de..2dff5fb 100755 +--- a/auto_cpufreq/core.py ++++ b/auto_cpufreq/core.py +@@ -277,19 +277,12 @@ def get_current_gov(): + ) + + def cpufreqctl(): +- """ +- deploy cpufreqctl.auto-cpufreq script +- """ +- if not (IS_INSTALLED_WITH_SNAP or os.path.isfile("/usr/local/bin/cpufreqctl.auto-cpufreq")): +- copy(SCRIPTS_DIR / "cpufreqctl.sh", "/usr/local/bin/cpufreqctl.auto-cpufreq") +- call(["chmod", "a+x", "/usr/local/bin/cpufreqctl.auto-cpufreq"]) ++ # scripts are already in the correct place ++ pass + + def cpufreqctl_restore(): +- """ +- remove cpufreqctl.auto-cpufreq script +- """ +- if not IS_INSTALLED_WITH_SNAP and os.path.isfile("/usr/local/bin/cpufreqctl.auto-cpufreq"): +- os.remove("/usr/local/bin/cpufreqctl.auto-cpufreq") ++ #no need to restore ++ pass + + def footer(l=79): print("\n" + "-" * l + "\n") + +@@ -307,31 +300,8 @@ def remove_complete_msg(): + footer() + + def deploy_daemon(): +- print("\n" + "-" * 21 + " Deploying auto-cpufreq as a daemon " + "-" * 22 + "\n") +- +- cpufreqctl() # deploy cpufreqctl script func call +- +- bluetooth_disable() # turn off bluetooth on boot +- +- auto_cpufreq_stats_path.touch(exist_ok=True) +- +- print("\n* Deploy auto-cpufreq install script") +- copy(SCRIPTS_DIR / "auto-cpufreq-install.sh", "/usr/local/bin/auto-cpufreq-install") +- call(["chmod", "a+x", "/usr/local/bin/auto-cpufreq-install"]) +- +- print("\n* Deploy auto-cpufreq remove script") +- copy(SCRIPTS_DIR / "auto-cpufreq-remove.sh", "/usr/local/bin/auto-cpufreq-remove") +- call(["chmod", "a+x", "/usr/local/bin/auto-cpufreq-remove"]) +- +- # output warning if gnome power profile is running +- gnome_power_detect_install() +- gnome_power_svc_disable() +- +- tuned_svc_disable() +- +- tlp_service_detect() # output warning if TLP service is detected +- +- call("/usr/local/bin/auto-cpufreq-install", shell=True) ++ # prevent needless copying and system changes ++ pass + + def deploy_daemon_performance(): + print("\n" + "-" * 21 + " Deploying auto-cpufreq as a daemon (performance) " + "-" * 22 + "\n") +@@ -363,37 +333,7 @@ def deploy_daemon_performance(): + + call("/usr/local/bin/auto-cpufreq-install", shell=True) + +-def remove_daemon(): +- # check if auto-cpufreq is installed +- if not os.path.exists("/usr/local/bin/auto-cpufreq-remove"): +- print("\nauto-cpufreq daemon is not installed.\n") +- sys.exit(1) +- +- print("\n" + "-" * 21 + " Removing auto-cpufreq daemon " + "-" * 22 + "\n") +- +- bluetooth_enable() # turn on bluetooth on boot +- +- # output warning if gnome power profile is stopped +- gnome_power_rm_reminder() +- gnome_power_svc_enable() +- +- tuned_svc_enable() +- +- # run auto-cpufreq daemon remove script +- call("/usr/local/bin/auto-cpufreq-remove", shell=True) +- +- # remove auto-cpufreq-remove +- os.remove("/usr/local/bin/auto-cpufreq-remove") +- +- # delete override pickle if it exists +- if os.path.exists(governor_override_state): os.remove(governor_override_state) +- +- # delete stats file +- if auto_cpufreq_stats_path.exists(): +- if auto_cpufreq_stats_file is not None: auto_cpufreq_stats_file.close() +- auto_cpufreq_stats_path.unlink() +- +- cpufreqctl_restore() # restore original cpufrectl script ++def remove_daemon(): pass + + def gov_check(): + for gov in AVAILABLE_GOVERNORS: diff --git a/anda/apps/auto-cpufreq/update.rhai b/anda/apps/auto-cpufreq/update.rhai new file mode 100644 index 0000000000..46dee26f1d --- /dev/null +++ b/anda/apps/auto-cpufreq/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("AdnanHodzic/auto-cpufreq")); diff --git a/anda/apps/bazzite-portal/bazzite-portal.spec b/anda/apps/bazzite-portal/bazzite-portal.spec index 74d29485e8..f1c0010c19 100644 --- a/anda/apps/bazzite-portal/bazzite-portal.spec +++ b/anda/apps/bazzite-portal/bazzite-portal.spec @@ -1,13 +1,13 @@ Name: bazzite-portal -Version: 0.1.6 -Release: 3%?dist +Version: 0.2.3 +Release: 1%{?dist} Summary: Bazzite Portal is a tabbed frontend for curated script execution, with a focus on distro specific QOL shortcuts URL: https://github.com/ublue-os/yafti-gtk Source0: https://github.com/ublue-os/yafti-gtk/archive/refs/tags/v%{version}.tar.gz License: GPL-3.0-only Requires: python3-gobject Requires: python3-PyYAML -Requires: gtk3 +Requires: gtk4 Provides: Bazzite-Portal BuildArch: noarch Packager: Zacharias Xenakis @@ -35,5 +35,8 @@ install -Dm 644 io.github.ublue_os.yafti_gtk.metainfo.xml %{buildroot}%{_metainf %{_metainfodir}/io.github.ublue_os.yafti_gtk.metainfo.xml %changelog +* Sun Apr 19 2026 Xarishark +- Upgraded to GTK4 + * Wed Jan 28 2026 Xarishark -- Initial commit \ No newline at end of file +- Initial commit diff --git a/anda/apps/bazzite-updater/anda.hcl b/anda/apps/bazzite-updater/anda.hcl new file mode 100644 index 0000000000..05d4e66eac --- /dev/null +++ b/anda/apps/bazzite-updater/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "bazzite-updater.spec" + } +} diff --git a/anda/apps/bazzite-updater/bazzite-updater.spec b/anda/apps/bazzite-updater/bazzite-updater.spec new file mode 100644 index 0000000000..191c49f870 --- /dev/null +++ b/anda/apps/bazzite-updater/bazzite-updater.spec @@ -0,0 +1,77 @@ +%global appid io.github.rfrench3.bazzite-updater + +Name: bazzite-updater +Version: 0.7.3 +Release: 1%{?dist} +Summary: Update your Bazzite system + +License: GPL-2.0-or-later AND BSD-3-Clause AND CC0-1.0 +URL: https://github.com/rfrench3/bazzite-updater +Source0: %{url}/archive/refs/tags/%{version}.tar.gz + +Packager: Robert French + +BuildRequires: desktop-file-utils +BuildRequires: libappstream-glib +BuildRequires: systemd-rpm-macros + +BuildRequires: cmake +BuildRequires: extra-cmake-modules +BuildRequires: kf6-rpm-macros +BuildRequires: cmake(SDL3) +BuildRequires: cmake(Qt6Core) +BuildRequires: cmake(Qt6Gui) +BuildRequires: cmake(Qt6Qml) +BuildRequires: cmake(Qt6QuickControls2) +BuildRequires: cmake(Qt6Svg) +BuildRequires: cmake(Qt6Widgets) + +BuildRequires: cmake(KF6Kirigami) +BuildRequires: cmake(KF6CoreAddons) +BuildRequires: cmake(KF6Config) +BuildRequires: cmake(KF6I18n) +BuildRequires: cmake(KF6IconThemes) +BuildRequires: cmake(KF6KirigamiAddons) + +Requires: kf6-kirigami%{?_isa} +Requires: kf6-kirigami-addons%{?_isa} +Requires: kf6-qqc2-desktop-style%{?_isa} +Requires: which%{?_isa} +Requires: qt6-controllable%{?_isa} +Requires: uupd%{?_isa} +Requires: hicolor-icon-theme + +Provides: bazzite-updater = %{evr} + +%description +This is a convenient, easy-to-use interface for updating your Bazzite system. +- Simple and powerful +- Full support for all input types (keyboard/mouse, controller, touchscreen) + +%prep +%autosetup + +%conf +%cmake + +%build +%cmake_build + +%install +%cmake_install + +%check +appstream-util validate-relax --nonet %{buildroot}%{_kf6_metainfodir}/%{appid}.*.xml || : +desktop-file-validate %{buildroot}%{_kf6_datadir}/applications/%{appid}.desktop + +%files +%license LICENSES/{BSD-3-Clause.txt,CC0-1.0.txt,GPL-2.0-or-later.txt} +%doc README.md +%{_bindir}/bazzite-updater +%{_appsdir}/%{appid}.desktop +%{_metainfodir}/%{appid}.*.xml +%{_scalableiconsdir}/%{appid}.svg + +%changelog +* Thu Feb 05 2026 Robert French +- Initial rpm build of Bazzite Updater diff --git a/anda/apps/bazzite-updater/update.rhai b/anda/apps/bazzite-updater/update.rhai new file mode 100644 index 0000000000..b5fc4f0b9f --- /dev/null +++ b/anda/apps/bazzite-updater/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("rfrench3/bazzite-updater")); \ No newline at end of file diff --git a/anda/apps/bitwarden/cli.bin/bitwarden-cli.bin.spec b/anda/apps/bitwarden/cli.bin/bitwarden-cli.bin.spec index 63aca8e17f..e92e227551 100644 --- a/anda/apps/bitwarden/cli.bin/bitwarden-cli.bin.spec +++ b/anda/apps/bitwarden/cli.bin/bitwarden-cli.bin.spec @@ -1,5 +1,5 @@ Name: bitwarden-cli.bin -Version: 2026.2.0 +Version: 2026.5.0 Release: 1%{?dist} Summary: Bitwarden command-line client License: GPL-3.0-only diff --git a/anda/apps/bitwarden/cli/bitwarden-cli.spec b/anda/apps/bitwarden/cli/bitwarden-cli.spec index fd0df86f79..e36b04eef3 100644 --- a/anda/apps/bitwarden/cli/bitwarden-cli.spec +++ b/anda/apps/bitwarden/cli/bitwarden-cli.spec @@ -6,7 +6,7 @@ %endif Name: bitwarden-cli -Version: 2026.2.0 +Version: 2026.5.0 Release: 1%{?dist} Summary: Bitwarden command-line client License: GPL-3.0-only diff --git a/anda/apps/chdig/chdig.spec b/anda/apps/chdig/chdig.spec index 9215c32d57..d6247f0239 100644 --- a/anda/apps/chdig/chdig.spec +++ b/anda/apps/chdig/chdig.spec @@ -1,7 +1,7 @@ %undefine __brp_mangle_shebangs Name: chdig -Version: 26.3.1 +Version: 26.5.1 Release: 1%{?dist} Summary: Dig into ClickHouse with TUI interface URL: https://github.com/azat/chdig diff --git a/anda/apps/chrultrabook-tools/chrultrabook-tools.spec b/anda/apps/chrultrabook-tools/chrultrabook-tools.spec index 0f7e915247..87a4b6d203 100644 --- a/anda/apps/chrultrabook-tools/chrultrabook-tools.spec +++ b/anda/apps/chrultrabook-tools/chrultrabook-tools.spec @@ -1,7 +1,7 @@ %undefine __brp_mangle_shebangs Name: chrultrabook-tools -Version: 3.1.4 +Version: 3.1.6 Release: 1%{?dist} Summary: User-friendly configuration utility for Chromebooks running an alternate OS URL: https://github.com/death7654/Chrultrabook-Tools diff --git a/anda/apps/coolercontrol/coolercontrol.spec b/anda/apps/coolercontrol/coolercontrol.spec index 2980a4d6af..26c67629c5 100644 --- a/anda/apps/coolercontrol/coolercontrol.spec +++ b/anda/apps/coolercontrol/coolercontrol.spec @@ -8,7 +8,7 @@ for background device management, as well as a GUI to expertly customize your se %global __brp_mangle_shebangs %{nil} Name: coolercontrol -Version: 4.1.0 +Version: 4.3.1 Release: 1%{?dist} Summary: Cooling device control for Linux ExclusiveArch: x86_64 aarch64 diff --git a/anda/apps/discord-canary-openasar/discord-canary-openasar.spec b/anda/apps/discord-canary-openasar/discord-canary-openasar.spec index 7c63cee0d3..6d67b26822 100644 --- a/anda/apps/discord-canary-openasar/discord-canary-openasar.spec +++ b/anda/apps/discord-canary-openasar/discord-canary-openasar.spec @@ -6,7 +6,7 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: discord-canary-openasar -Version: 0.0.930 +Version: 1.0.1260 Release: 1%{?dist} Summary: A snappier Discord rewrite with features like further customization and theming License: MIT AND https://discord.com/terms diff --git a/anda/apps/discord-canary/discord-canary.spec b/anda/apps/discord-canary/discord-canary.spec index 3c304355d2..92a1f2f305 100644 --- a/anda/apps/discord-canary/discord-canary.spec +++ b/anda/apps/discord-canary/discord-canary.spec @@ -1,20 +1,17 @@ -%define debug_package %{nil} -%global _build_id_links none - -# Exclude private libraries -%global __requires_exclude libffmpeg.so -%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so - Name: discord-canary -Version: 0.0.930 +Version: 1.0.1260 Release: 1%{?dist} Summary: Free Voice and Text Chat for Gamers URL: discord.com -Source0: https://dl-canary.discordapp.net/apps/linux/%{version}/discord-canary-%{version}.tar.gz -License: https://discord.com/terms -Requires: glibc GConf2 nspr >= 4.13 nss >= 3.27 libX11 >= 1.6 libXtst >= 1.2 +Source0: https://dl-canary.discordapp.net/apps/linux/%{version}/%{name}-%{version}.tar.gz +Source1: https://discord.com/terms#/terms.html +License: Proprietary +Requires: zenity Group: Applications/Internet ExclusiveArch: x86_64 + +%electronmeta -D + %description All-in-one voice and text chat for gamers that's free, secure, and works on both your desktop and phone. @@ -25,23 +22,23 @@ both your desktop and phone. %build %install -rm -rf $RPM_BUILD_ROOT -mkdir -p %{buildroot}%{_bindir} -mkdir -p %{buildroot}%{_datadir}/discord-canary -cp -rv * %{buildroot}%{_datadir}/discord-canary -mkdir -p %{buildroot}%{_datadir}/applications/ -mkdir -p %{buildroot}%{_datadir}/pixmaps -ln -s %_datadir/discord-canary/discord-canary.desktop %{buildroot}%{_datadir}/applications/ -ln -s %_datadir/discord-canary/discord.png %{buildroot}%{_datadir}/pixmaps/discord-canary.png -ln -s %_datadir/discord-canary/DiscordCanary %buildroot%_bindir/discord-canary +install -Dpm755 updater_bootstrap -t %{buildroot}%{_datadir}/%{name} +install -Dpm755 %{name} -t %{buildroot}%{_bindir} +install -Dpm644 discord.png %{buildroot}%{_datadir}/pixmaps/%{name}.png +%desktop_file_install %{name}.desktop +cp %{SOURCE1} -t . %files -%_bindir/discord-canary -%{_datadir}/discord-canary/ -%{_datadir}/applications/discord-canary.desktop -%{_datadir}/pixmaps/discord-canary.png +%license terms.html +%{_bindir}/%{name} +%{_datadir}/%{name}/ +%{_appsdir}/%{name}.desktop +%{_datadir}/pixmaps/%{name}.png %changelog +* Tue May 5 2026 Gilver E. - 1.0.1025-2 +- Update build for new bootstrap format + * Thu Dec 01 2022 root - 0.0.144-1 - new version diff --git a/anda/apps/discord-openasar/discord-openasar.spec b/anda/apps/discord-openasar/discord-openasar.spec index 7ff5c8245f..d80b6494b6 100644 --- a/anda/apps/discord-openasar/discord-openasar.spec +++ b/anda/apps/discord-openasar/discord-openasar.spec @@ -6,7 +6,7 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: discord-openasar -Version: 0.0.130 +Version: 1.0.142 Release: 1%{?dist} Summary: A snappier Discord rewrite with features like further customization and theming License: MIT AND https://discord.com/terms diff --git a/anda/apps/discord-ptb-openasar/discord-ptb-openasar.spec b/anda/apps/discord-ptb-openasar/discord-ptb-openasar.spec index 8c14abbcbd..e995e56661 100644 --- a/anda/apps/discord-ptb-openasar/discord-ptb-openasar.spec +++ b/anda/apps/discord-ptb-openasar/discord-ptb-openasar.spec @@ -6,7 +6,7 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: discord-ptb-openasar -Version: 0.0.184 +Version: 1.0.195 Release: 1%{?dist} Summary: A snappier Discord rewrite with features like further customization and theming License: MIT AND https://discord.com/terms diff --git a/anda/apps/discord-ptb/discord-ptb.spec b/anda/apps/discord-ptb/discord-ptb.spec index 7cf7522703..2c4b114cf8 100644 --- a/anda/apps/discord-ptb/discord-ptb.spec +++ b/anda/apps/discord-ptb/discord-ptb.spec @@ -1,24 +1,17 @@ -%define debug_package %{nil} -%global _build_id_links none - -# Exclude private libraries -%global __requires_exclude libffmpeg.so -%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so - Name: discord-ptb -Version: 0.0.184 +Version: 1.0.195 Release: 1%{?dist} Summary: Free Voice and Text Chat for Gamers. URL: https://discord.com -Source0: https://dl-ptb.discordapp.net/apps/linux/%{version}/discord-ptb-%{version}.tar.gz -License: https://discord.com/terms -Requires: glibc GConf2 -Requires: nspr >= 4.13 -Requires: nss >= 3.27 -Requires: libX11 >= 1.6 -Requires: libXtst >= 1.2 +Source0: https://dl-ptb.discordapp.net/apps/linux/%{version}/%{name}-%{version}.tar.gz +Source1: https://discord.com/terms#/terms.html +License: Proprietary +Requires: zenity Group: Applications/Internet ExclusiveArch: x86_64 + +%electronmeta -D + %description All-in-one voice and text chat for gamers that's free, secure, and works on both your desktop and phone. @@ -29,23 +22,23 @@ both your desktop and phone. %build %install -rm -rf $RPM_BUILD_ROOT -mkdir -p %{buildroot}%{_bindir} -mkdir -p %{buildroot}%{_datadir}/discord-ptb -cp -rv * %{buildroot}%{_datadir}/discord-ptb -mkdir -p %{buildroot}%{_datadir}/applications/ -mkdir -p %{buildroot}%{_datadir}/pixmaps -ln -s %_datadir/discord-ptb/discord-ptb.desktop %{buildroot}%{_datadir}/applications/ -ln -s %_datadir/discord-ptb/discord.png %{buildroot}%{_datadir}/pixmaps/discord-ptb.png -ln -s %_datadir/discord-ptb/Discord %buildroot%_bindir/discord-ptb +install -Dpm755 updater_bootstrap -t %{buildroot}%{_datadir}/%{name} +install -Dpm755 %{name} -t %{buildroot}%{_bindir} +install -Dpm644 discord.png %{buildroot}%{_datadir}/pixmaps/%{name}.png +%desktop_file_install %{name}.desktop +cp %{SOURCE1} -t . %files -%_bindir/discord-ptb -%{_datadir}/discord-ptb/ -%{_datadir}/applications/discord-ptb.desktop -%{_datadir}/pixmaps/discord-ptb.png +%license terms.html +%{_bindir}/%{name} +%{_datadir}/%{name}/ +%{_appsdir}/%{name}.desktop +%{_datadir}/pixmaps/%{name}.png %changelog +* Tue May 5 2026 Gilver E. - 1.0.189-2 +- Update build for new bootstrap format + * Thu Nov 17 2022 madonuko - 0.0.35-1 - new version diff --git a/anda/apps/discord/discord.spec b/anda/apps/discord/discord.spec index c448966d20..40687561d5 100644 --- a/anda/apps/discord/discord.spec +++ b/anda/apps/discord/discord.spec @@ -1,24 +1,17 @@ -%define debug_package %{nil} -%global _build_id_links none +Name: discord +Version: 1.0.142 +Release: 1%{?dist} +Summary: Free Voice and Text Chat for Gamers +URL: https://discord.com +Source0: https://dl.discordapp.net/apps/linux/%{version}/%{name}-%{version}.tar.gz +Source1: https://discord.com/terms#/terms.html +License: Proprietary +Requires: zenity +Group: Applications/Internet +ExclusiveArch: x86_64 -# Exclude private libraries -%global __requires_exclude libffmpeg.so -%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so +%electronmeta -D -Name: discord -Version: 0.0.130 -Release: 1%{?dist} -Summary: Free Voice and Text Chat for Gamers -URL: https://discord.com -Source0: https://dl.discordapp.net/apps/linux/%{version}/discord-%{version}.tar.gz -License: https://discord.com/terms -Requires: glibc GConf2 -Requires: nspr >= 4.13 -Requires: nss >= 3.27 -Requires: libX11 >= 1.6 -Requires: libXtst >= 1.2 -Group: Applications/Internet -ExclusiveArch: x86_64 %description All-in-one voice and text chat for gamers that's free, secure, and works on both your desktop and phone. @@ -29,22 +22,23 @@ both your desktop and phone. %build %install -rm -rf $RPM_BUILD_ROOT -mkdir -p %{buildroot}%{_bindir} -mkdir -p %{buildroot}%{_datadir}/discord -cp -rv * %{buildroot}%{_datadir}/discord -mkdir -p %{buildroot}%{_datadir}/applications/ -mkdir -p %{buildroot}%{_datadir}/pixmaps -ln -s %_datadir/discord/discord.desktop %{buildroot}%{_datadir}/applications/discord.desktop -ln -s %_datadir/discord/discord.png %{buildroot}%{_datadir}/pixmaps/discord.png -ln -s %_datadir/discord/Discord %buildroot%_bindir/discord +install -Dpm755 updater_bootstrap -t %{buildroot}%{_datadir}/%{name} +install -Dpm755 %{name} -t %{buildroot}%{_bindir} +install -Dpm644 %{name}.png -t %{buildroot}%{_datadir}/pixmaps +%desktop_file_install %{name}.desktop +cp %{SOURCE1} -t . %files -%_bindir/discord -%{_datadir}/discord/ -%{_datadir}/applications/discord.desktop -%{_datadir}/pixmaps/discord.png +%license terms.html +%{_bindir}/%{name} +%{_datadir}/%{name}/ +%{_appsdir}/%{name}.desktop +%{_datadir}/pixmaps/%{name}.png %changelog +* Tue May 5 2026 Gilver E. - 1.0.136-4 +- Remove unused files from package +* Mon May 4 2026 Gilver E. - 1.0.136-2 +- Updated /usr/bin symlink * Thu Jan 19 2023 madonuko - 0.0.143-1 - Initial package diff --git a/anda/apps/envision/envision.spec b/anda/apps/envision/envision.spec index 60ff91854c..7abed0752e 100644 --- a/anda/apps/envision/envision.spec +++ b/anda/apps/envision/envision.spec @@ -1,5 +1,5 @@ -%global commit 2f731053537044b1f72b259bea795473ea0c205a -%global commit_date 20260324 +%global commit 373646a12620a82e9684d79c1066f9b48bf3eed1 +%global commit_date 20260613 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: envision-nightly diff --git a/anda/apps/falcond-gui/falcond-gui.spec b/anda/apps/falcond-gui/falcond-gui.spec index ce7e7c0bee..6017aff3a4 100644 --- a/anda/apps/falcond-gui/falcond-gui.spec +++ b/anda/apps/falcond-gui/falcond-gui.spec @@ -1,6 +1,8 @@ +%global appid com.pikaos.falcondgui + Name: falcond-gui -Version: 1.0.2 -Release: 1%?dist +Version: 1.0.3 +Release: 1%{?dist} Summary: A GTK4/LibAdwaita application to control and monitor the Falcond gaming optimization daemon SourceLicense: MIT License: (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND CC0-1.0 AND ISC AND (MIT OR Apache-2.0) AND MIT AND (Unlicense OR MIT) @@ -30,12 +32,12 @@ falcond-gui provides a user-friendly graphical interface for managing falcond. I %install %cargo_install -desktop-file-install res/%{name}.desktop -install -Dm644 res/falcond.png -t %{buildroot}%{_hicolordir}/512x512/apps/ +%desktop_file_install res/%{appid}.desktop +install -Dm644 res/%{appid}.png -t %{buildroot}%{_hicolordir}/512x512/apps/ %{cargo_license_online} > LICENSE.dependencies %check -desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop +%desktop_file_validate %{buildroot}%{_datadir}/applications/%{appid}.desktop %posttrans /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor/ &>/dev/null || : @@ -44,8 +46,8 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop %doc ../README.md %license ../LICENSE.md %{_bindir}/%{name} -%{_hicolordir}/512x512/apps/falcond.png -%{_appsdir}/%{name}.desktop +%{_hicolordir}/512x512/apps/%{appid}.png +%{_appsdir}/%{appid}.desktop %changelog * Thu Jan 1 2026 Gilver E. - 1.0.0-1 diff --git a/anda/apps/falcond-gui/update.rhai b/anda/apps/falcond-gui/update.rhai index 9c81c2f668..7661da48e9 100644 --- a/anda/apps/falcond-gui/update.rhai +++ b/anda/apps/falcond-gui/update.rhai @@ -1 +1 @@ -rpm.version(get("https://git.pika-os.com/api/v1/repos/general-packages/falcond-gui/releases").json_arr()[0].tag_name); +rpm.version(gitea("git.pika-os.com", "general-packages/falcond-gui")); diff --git a/anda/apps/feishin/feishin.spec b/anda/apps/feishin/feishin.spec index c06011ce24..f36b787f45 100644 --- a/anda/apps/feishin/feishin.spec +++ b/anda/apps/feishin/feishin.spec @@ -6,7 +6,7 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: feishin -Version: 1.9.0 +Version: 1.13.0 Release: 1%{?dist} Summary: A modern self-hosted music player License: GPL-3.0 diff --git a/anda/apps/flameshot/flameshot-nightly.spec b/anda/apps/flameshot/flameshot-nightly.spec index c1ecf28847..60a6eb03f3 100644 --- a/anda/apps/flameshot/flameshot-nightly.spec +++ b/anda/apps/flameshot/flameshot-nightly.spec @@ -1,9 +1,9 @@ #? https://github.com/flameshot-org/flameshot/blob/master/packaging/rpm/fedora/flameshot.spec %global ver 13.3.0 -%global commit bdb1eda421937f2d28d588255343e895f68438a8 +%global commit e79773b9895539980c0434182ca9154180c1e8f0 %global shortcommit %{sub %{commit} 1 7} -%global commit_date 20260329 +%global commit_date 20260613 %global devel_name QtColorWidgets %global _distro_extra_cflags -fuse-ld=mold %global _distro_extra_cxxflags -fuse-ld=mold diff --git a/anda/apps/framework-tool-tui/anda.hcl b/anda/apps/framework-tool-tui/anda.hcl new file mode 100644 index 0000000000..3f7dd905a1 --- /dev/null +++ b/anda/apps/framework-tool-tui/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "framework-tool-tui.spec" + } +} diff --git a/anda/apps/framework-tool-tui/framework-tool-tui.spec b/anda/apps/framework-tool-tui/framework-tool-tui.spec new file mode 100644 index 0000000000..8812b7ca78 --- /dev/null +++ b/anda/apps/framework-tool-tui/framework-tool-tui.spec @@ -0,0 +1,53 @@ +%undefine __brp_mangle_shebangs + +Name: framework-tool-tui +Version: 0.8.3 +Release: 1%{?dist} +Summary: A TUI for controlling and monitoring Framework Computers hardware built in Rust +URL: https://github.com/grouzen/framework-tool-tui +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz +License: MIT AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR BSL-1.0) AND (MIT OR Apache-2.0) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND BSD-3-Clause AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MPL-2.0 AND Zlib AND (Unlicense OR MIT) +BuildRequires: anda-srpm-macros +BuildRequires: cargo-rpm-macros +BuildRequires: pkgconfig(libudev) +BuildArch: x86_64 + +Packager: Owen Zimmerman + +%description +A snappy TUI dashboard for controlling and monitoring your Framework Laptop +hardware — charging, privacy, lighting, USB PD ports, and more. + +%package doc +Summary: Documentations for %{name} +BuildArch: noarch + +%description doc +Documentations for %{name}. + +%prep +%autosetup +%cargo_prep_online + +%build +%cargo_build + +%install +install -Dm755 target/rpm/framework-tool-tui %{buildroot}%{_bindir}/framework-tool-tui +%{cargo_license_online} > LICENSE.dependencies + +mkdir -p %{buildroot}%{_docdir}/%{name}/ +cp -r docs/*.md %{buildroot}%{_docdir}/%{name}/ + +%files +%{_bindir}/framework-tool-tui +%license LICENSE +%license LICENSE.dependencies +%doc README.md + +%files doc +%{_docdir}/%{name}/ + +%changelog +* Thu Apr 23 2026 Owen Zimmerman +- Initial commit diff --git a/anda/apps/framework-tool-tui/update.rhai b/anda/apps/framework-tool-tui/update.rhai new file mode 100644 index 0000000000..458dfc2ca0 --- /dev/null +++ b/anda/apps/framework-tool-tui/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("grouzen/framework-tool-tui")); diff --git a/anda/apps/goofcord/nightly/goofcord-nightly.spec b/anda/apps/goofcord/nightly/goofcord-nightly.spec index 5d9ce0d71d..e0973cfb08 100644 --- a/anda/apps/goofcord/nightly/goofcord-nightly.spec +++ b/anda/apps/goofcord/nightly/goofcord-nightly.spec @@ -1,7 +1,7 @@ -%global commit 779d684b0f37775c8d4889d8b61a5d2db7925896 +%global commit 7cd0395ebd3e0591c0ae4f850f22425b0be30a45 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260315 -%global ver 2.1.1^ +%global commit_date 20260612 +%global ver 2.2.1^ %global base_name goofcord %global git_name GoofCord %global appid io.github.milkshiift.GoofCord diff --git a/anda/apps/goofcord/stable/goofcord.spec b/anda/apps/goofcord/stable/goofcord.spec index ac1813f643..ca79bf1ea9 100644 --- a/anda/apps/goofcord/stable/goofcord.spec +++ b/anda/apps/goofcord/stable/goofcord.spec @@ -2,7 +2,7 @@ %global appid io.github.milkshiift.GoofCord Name: goofcord -Version: 2.1.1 +Version: 2.2.1 Release: 1%{?dist} License: OSL-3.0 Summary: A privacy-minded Legcord fork. diff --git a/anda/apps/gurk/gurk.spec b/anda/apps/gurk/gurk.spec index d088ef6423..1960a6f593 100644 --- a/anda/apps/gurk/gurk.spec +++ b/anda/apps/gurk/gurk.spec @@ -1,8 +1,8 @@ %undefine __brp_mangle_shebangs Name: gurk -Version: 0.9.0 -Release: 1%?dist +Version: 0.9.3 +Release: 1%{?dist} Summary: Signal Messenger client for terminal License: AGPL-3.0-or-later AND (MIT OR Apache-2.0) AND Unicode-3.0 AND (0BSD OR MIT OR Apache-2.0) AND Apache-2.0 AND ISC AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-3-Clause AND (BSD-3-Clause OR Apache-2.0) AND (BSD-3-Clause OR MIT OR Apache-2.0) AND BSL-1.0 AND CDLA-Permissive-2.0 AND MIT AND (MIT OR Apache-2.0) AND (MIT OR Apache-2.0 OR BSD-1-Clause) AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Zlib OR Apache-2.0) AND MPL-2.0 AND (Unlicense OR MIT) AND Zlib AND (Zlib OR Apache-2.0 OR MIT) URL: https://github.com/boxdot/gurk-rs diff --git a/anda/apps/halloy/halloy.spec b/anda/apps/halloy/halloy.spec index 4870a2e773..7cbecb7a2c 100644 --- a/anda/apps/halloy/halloy.spec +++ b/anda/apps/halloy/halloy.spec @@ -4,7 +4,7 @@ %global crate halloy Name: halloy -Version: 2026.5 +Version: 2026.7.2 Release: 1%{?dist} Summary: An open-source IRC client written in Rust, with the Iced GUI library Packager: Yoong jin diff --git a/anda/apps/helium-browser-bin/helium-browser-bin.spec b/anda/apps/helium-browser-bin/helium-browser-bin.spec index 8b166e9294..6547435be3 100644 --- a/anda/apps/helium-browser-bin/helium-browser-bin.spec +++ b/anda/apps/helium-browser-bin/helium-browser-bin.spec @@ -11,7 +11,7 @@ %endif Name: helium-browser-bin -Version: 0.10.7.1 +Version: 0.13.3.1 Release: 1%{?dist} Summary: Private, fast, and honest web browser based on Chromium diff --git a/anda/apps/juce/juce.spec b/anda/apps/juce/juce.spec index a99fbc23f1..545ff2789b 100644 --- a/anda/apps/juce/juce.spec +++ b/anda/apps/juce/juce.spec @@ -1,7 +1,7 @@ Name: juce -Version: 8.0.12 -Release: 3%{?dist} -License: AGPL-3.0 +Version: 8.0.13 +Release: 1%{?dist} +License: AGPL-3.0-or-later Summary: framework for audio application and plug-in development URL: https://juce.com Source: https://github.com/juce-framework/JUCE/archive/refs/tags/%{version}.tar.gz @@ -46,10 +46,12 @@ Documentation files for %{name} %prep %autosetup -p1 -n JUCE-%{version} -%build +%conf %cmake -DJUCER_ENABLE_GPL_MODE=1 \ -DJUCE_BUILD_EXTRAS=ON \ -DJUCE_TOOL_INSTALL_DIR=bin + +%build %cmake_build pushd docs/doxygen diff --git a/anda/apps/komikku/komikku.spec b/anda/apps/komikku/komikku.spec index 2bce6cc216..f2304f5ae5 100644 --- a/anda/apps/komikku/komikku.spec +++ b/anda/apps/komikku/komikku.spec @@ -3,10 +3,9 @@ %global gtk4_version 4.14.4 %global libadwaita_version 1.5.1 %global pure_protobuf_version 2.0.0 -%global raw_ver v50.0.1 Name: komikku -Version: 50.0.1 +Version: 50.6.0 %forgemeta Release: 1%{?dist} Summary: A manga reader for GNOME @@ -15,7 +14,7 @@ BuildArch: noarch License: GPL-3.0-or-later URL: https://apps.gnome.org/Komikku/ -Source0: https://codeberg.org/valos/%{appname}/archive/%{raw_ver}.tar.gz#/%{name}-%{version}.tar.gz +Source0: https://codeberg.org/valos/%{appname}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz BuildRequires: desktop-file-utils BuildRequires: intltool diff --git a/anda/apps/komikku/update.rhai b/anda/apps/komikku/update.rhai index 13da8a9cef..4fddd2b9d3 100644 --- a/anda/apps/komikku/update.rhai +++ b/anda/apps/komikku/update.rhai @@ -1,4 +1 @@ -let latest_tag = get("https://codeberg.org/api/v1/repos/valos/Komikku/tags").json_arr()[0].name; -let new_version = find("([\\.\\d]+)", latest_tag, 1); -rpm.global("raw_ver", latest_tag); -rpm.version(new_version); +rpm.version(codeberg("valos/Komikku")); diff --git a/anda/apps/kopia/kopia.spec b/anda/apps/kopia/kopia.spec index 7d9ea4fef5..0a96a1b15d 100644 --- a/anda/apps/kopia/kopia.spec +++ b/anda/apps/kopia/kopia.spec @@ -3,7 +3,7 @@ Name: kopia %electronmeta -D -Version: 0.22.3 +Version: 0.23.0 Release: 1%{?dist} Summary: A backup/restore tool that allows you to create encrypted snapshots @@ -43,6 +43,7 @@ A graphical user interface for %{name}. %build %global gomodulesmode GO111MODULE=on %gobuild -o %{name} . +echo "Electron Builder" > %{rpmbuilddir}/webapp-tool.txt pushd app %npm_build -B diff --git a/anda/apps/legcord/nightly/anda.hcl b/anda/apps/legcord/nightly/anda.hcl index 993068d0b8..bfbaa2b100 100644 --- a/anda/apps/legcord/nightly/anda.hcl +++ b/anda/apps/legcord/nightly/anda.hcl @@ -4,6 +4,5 @@ project pkg { } labels { nightly = 1 - mock = 1 } } diff --git a/anda/apps/legcord/nightly/legcord-nightly.spec b/anda/apps/legcord/nightly/legcord-nightly.spec index 4c4dd048ec..ac506d88e4 100644 --- a/anda/apps/legcord/nightly/legcord-nightly.spec +++ b/anda/apps/legcord/nightly/legcord-nightly.spec @@ -1,19 +1,16 @@ -%global commit c7fe14088cc22c3838250cd7837bc1eb20b44194 -%global commit_date 20260328 +%global commit 7d933c652919899e46a6dfa0ac08dac36c492d95 +%global commit_date 20260614 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global debug_package %nil -%global __strip /bin/true -%global __provides_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*))$ -%ifnarch aarch64 -%global __requires_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*)|(.*\\aarch64*\\.so.*))$ -%elifarch aarch64 -%global __requires_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*)|(.*\\x86_64*\\.so.*)|(.*\\x86-64*\\.so.*))$ -%endif +# terrible evil no good very bad hack +# fix one day +%global __requires_exclude_from (.*)lib(.*)so(.*) Name: legcord-nightly +%electronmeta -D Version: %commit_date.%shortcommit Release: 1%{?dist} -License: OSL-3.0 +License: OSL-3.0 AND %{electron_license} Summary: Custom lightweight Discord client designed to enhance your experience URL: https://github.com/Legcord/Legcord Group: Applications/Internet @@ -31,38 +28,21 @@ while keeping everything lightweight. %git_clone %{url}.git %{commit} %build -pnpm install -pnpm run build -pnpm run package --linux AppImage tar.gz +echo "Electron Builder" > %{rpmbuilddir}/webapp-tool.txt +%pnpm_build -r build %install -mkdir -p %{buildroot}%{_datadir}/legcord -%ifarch aarch64 -mv dist/linux-arm64-unpacked/* %{buildroot}%{_datadir}/legcord -%else -mv dist/linux-unpacked/* -t %{buildroot}%{_datadir}/legcord -%endif - -mkdir -p %{buildroot}%{_bindir} -ln -sf %{_datadir}/legcord/legcord %{buildroot}%{_bindir}/legcord -install -Dm644 dist/.icon-set/icon_16.png %{buildroot}%{_iconsdir}/hicolor/16x16/apps/legcord.png -install -Dm644 dist/.icon-set/icon_32.png %{buildroot}%{_iconsdir}/hicolor/32x32/apps/legcord.png -install -Dm644 dist/.icon-set/icon_48x48.png %{buildroot}%{_iconsdir}/hicolor/48x48/apps/legcord.png -install -Dm644 dist/.icon-set/icon_64.png %{buildroot}%{_iconsdir}/hicolor/64x64/apps/legcord.png -install -Dm644 dist/.icon-set/icon_128.png %{buildroot}%{_iconsdir}/hicolor/128x128/apps/legcord.png -install -Dm644 dist/.icon-set/icon_256.png %{buildroot}%{_iconsdir}/hicolor/256x256/apps/legcord.png -install -Dm644 dist/.icon-set/icon_512.png %{buildroot}%{_iconsdir}/hicolor/512x512/apps/legcord.png -install -Dm644 dist/.icon-set/icon_1024.png %{buildroot}%{_iconsdir}/hicolor/1024x1024/apps/legcord.png +%electron_install -i legcord -l -I dist/.icon-set/icon_16.png -I dist/.icon-set/icon_32.png -I dist/.icon-set/icon_48x48.png -I dist/.icon-set/icon_64.png -I dist/.icon-set/icon_128.png -I dist/.icon-set/icon_256.png -I dist/.icon-set/icon_512.png -I dist/.icon-set/icon_1024.png dist/Legcord-*.AppImage --appimage-extract '*.desktop' -desktop-file-install --set-key=Exec --set-value="%{_datadir}/legcord/legcord %U" squashfs-root/legcord.desktop +%desktop_file_install -k Exec,Icon -v "%{_libdir}/legcord-nightly/Legcord",legcord -u %U -f squashfs-root/Legcord.desktop %files %doc README.md %license license.txt -%{_bindir}/legcord -%{_datadir}/applications/legcord.desktop -%{_datadir}/legcord/ +%{_bindir}/legcord-nightly +%{_datadir}/applications/Legcord.desktop +%{_libdir}/legcord-nightly/ %{_iconsdir}/hicolor/16x16/apps/legcord.png %{_iconsdir}/hicolor/32x32/apps/legcord.png %{_iconsdir}/hicolor/48x48/apps/legcord.png @@ -73,6 +53,9 @@ desktop-file-install --set-key=Exec --set-value="%{_datadir}/legcord/legcord %U" %{_iconsdir}/hicolor/1024x1024/apps/legcord.png %changelog +* Mon May 18 2026 june-fish - 1.2.4-1 +- Use electron macros + * Fri Nov 22 2024 owen - 1.0.2-2 - Add nightly package. diff --git a/anda/apps/legcord/stable/anda.hcl b/anda/apps/legcord/stable/anda.hcl index 3a5fd3890d..644535f337 100644 --- a/anda/apps/legcord/stable/anda.hcl +++ b/anda/apps/legcord/stable/anda.hcl @@ -2,7 +2,4 @@ project pkg { rpm { spec = "legcord.spec" } - labels { - mock =1 - } } diff --git a/anda/apps/legcord/stable/legcord.spec b/anda/apps/legcord/stable/legcord.spec index 1ebe509f14..cf0ea0b736 100644 --- a/anda/apps/legcord/stable/legcord.spec +++ b/anda/apps/legcord/stable/legcord.spec @@ -1,17 +1,14 @@ -%define debug_package %nil +%global debug_package %nil -# Exclude private libraries -%global __provides_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*))$ -%ifnarch aarch64 -%global __requires_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*)|(.*\\aarch64*\\.so.*))$ -%elifarch aarch64 -%global __requires_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*)|(.*\\x86_64*\\.so.*)|(.*\\x86-64*\\.so.*))$ -%endif +# terrible evil no good very bad hack +# fix one day +%global __requires_exclude_from (.*)lib(.*)so(.*) Name: legcord -Version: 1.2.2 -Release: 1%?dist -License: OSL-3.0 +%electronmeta -D +Version: 1.2.4 +Release: 1%{?dist} +License: OSL-3.0 AND %{electron_license} Summary: Custom lightweight Discord client designed to enhance your experience URL: https://github.com/Legcord/Legcord Group: Applications/Internet @@ -30,38 +27,21 @@ while keeping everything lightweight. %git_clone %url v%version %build -pnpm install -pnpm run build -pnpm run package --linux AppImage tar.gz +echo "Electron Builder" > %{rpmbuilddir}/webapp-tool.txt +%pnpm_build -r build %install -mkdir -p %{buildroot}%{_datadir}/legcord -%ifarch aarch64 -mv dist/linux-arm64-unpacked/* %{buildroot}%{_datadir}/legcord -%else -mv dist/linux-unpacked/* -t %{buildroot}%{_datadir}/legcord -%endif - -mkdir -p %{buildroot}%{_bindir} -ln -sf %{_datadir}/legcord/legcord %{buildroot}%{_bindir}/legcord -install -Dm644 dist/.icon-set/icon_16.png %{buildroot}%{_iconsdir}/hicolor/16x16/apps/legcord.png -install -Dm644 dist/.icon-set/icon_32.png %{buildroot}%{_iconsdir}/hicolor/32x32/apps/legcord.png -install -Dm644 dist/.icon-set/icon_48x48.png %{buildroot}%{_iconsdir}/hicolor/48x48/apps/legcord.png -install -Dm644 dist/.icon-set/icon_64.png %{buildroot}%{_iconsdir}/hicolor/64x64/apps/legcord.png -install -Dm644 dist/.icon-set/icon_128.png %{buildroot}%{_iconsdir}/hicolor/128x128/apps/legcord.png -install -Dm644 dist/.icon-set/icon_256.png %{buildroot}%{_iconsdir}/hicolor/256x256/apps/legcord.png -install -Dm644 dist/.icon-set/icon_512.png %{buildroot}%{_iconsdir}/hicolor/512x512/apps/legcord.png -install -Dm644 dist/.icon-set/icon_1024.png %{buildroot}%{_iconsdir}/hicolor/1024x1024/apps/legcord.png +%electron_install -i legcord -l -I dist/.icon-set/icon_16.png -I dist/.icon-set/icon_32.png -I dist/.icon-set/icon_48x48.png -I dist/.icon-set/icon_64.png -I dist/.icon-set/icon_128.png -I dist/.icon-set/icon_256.png -I dist/.icon-set/icon_512.png -I dist/.icon-set/icon_1024.png dist/Legcord-*.AppImage --appimage-extract '*.desktop' -desktop-file-install --set-key=Exec --set-value="%{_datadir}/legcord/legcord %U" squashfs-root/legcord.desktop +%desktop_file_install -k Exec,Icon -v "%{_libdir}/legcord/Legcord",legcord -u %U -f squashfs-root/Legcord.desktop %files %doc README.md %license license.txt %{_bindir}/legcord -%{_datadir}/applications/legcord.desktop -%{_datadir}/legcord/ +%{_datadir}/applications/Legcord.desktop +%{_libdir}/legcord/ %{_iconsdir}/hicolor/16x16/apps/legcord.png %{_iconsdir}/hicolor/32x32/apps/legcord.png %{_iconsdir}/hicolor/48x48/apps/legcord.png @@ -72,6 +52,9 @@ desktop-file-install --set-key=Exec --set-value="%{_datadir}/legcord/legcord %U" %{_iconsdir}/hicolor/1024x1024/apps/legcord.png %changelog +* Mon May 18 2026 june-fish - 1.2.4-1 +- Use electron macros + * Mon Oct 21 2024 madonuko - 1.0.2-2 - Rename to LegCord. diff --git a/anda/apps/mount-manager/anda.hcl b/anda/apps/mount-manager/anda.hcl new file mode 100644 index 0000000000..60155b5016 --- /dev/null +++ b/anda/apps/mount-manager/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "mount-manager.spec" + } +} diff --git a/anda/apps/mount-manager/mount-manager.spec b/anda/apps/mount-manager/mount-manager.spec new file mode 100644 index 0000000000..ea50f3fe3b --- /dev/null +++ b/anda/apps/mount-manager/mount-manager.spec @@ -0,0 +1,42 @@ +Name: mount-manager +Version: 0.1.5 +Release: 1%{?dist} +Summary: SMB Mount Manager helps users mount SMB shares through a simple GTK interface. It checks the share, asks for credentials, tests the mount, and creates a startup mount managed by systemd. +URL: https://github.com/Xarishark/mount-manager +Source0: https://github.com/Xarishark/mount-manager/archive/refs/tags/v%{version}.tar.gz +License: GPL-3.0-only +Requires: cifs-utils +Requires: gtk4 +Requires: polkit +Requires: python3-gobject +Provides: SMB-Mount-Manager +BuildArch: noarch +Packager: Zacharias Xenakis + +%description +%{summary}. + +%prep +%autosetup -n mount-manager-%{version} + +%build + +%install +install -Dm 755 mount_manager.py %{buildroot}%{_bindir}/mount-manager +install -Dm 644 data/applications/io.github.xarishark.mount-manager.desktop %{buildroot}%{_appsdir}/io.github.xarishark.mount-manager.desktop +install -Dm 644 data/icons/hicolor/scalable/apps/io.github.xarishark.mount-manager.svg %{buildroot}%{_scalableiconsdir}/io.github.xarishark.mount-manager.svg +install -Dm 644 data/metainfo/io.github.xarishark.mount-manager.metainfo.xml %{buildroot}%{_metainfodir}/io.github.xarishark.mount-manager.metainfo.xml + +%files +%doc README.md +%license LICENSE +%{_bindir}/mount-manager +%{_appsdir}/io.github.xarishark.mount-manager.desktop +%{_scalableiconsdir}/io.github.xarishark.mount-manager.svg +%{_metainfodir}/io.github.xarishark.mount-manager.metainfo.xml + +%changelog +* Fri May 15 2026 Zacharias Xenakis +- Initial package +* Fri May 15 2026 Zacharias Xenakis +- migrated to new source GIT diff --git a/anda/apps/mount-manager/update.rhai b/anda/apps/mount-manager/update.rhai new file mode 100644 index 0000000000..e44028aafe --- /dev/null +++ b/anda/apps/mount-manager/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("Xarishark/mount-manager")); diff --git a/anda/apps/mpv/mpv-nightly.spec b/anda/apps/mpv/mpv-nightly.spec index fd9b2091c0..97581e354a 100644 --- a/anda/apps/mpv/mpv-nightly.spec +++ b/anda/apps/mpv/mpv-nightly.spec @@ -1,9 +1,9 @@ # Disable X11 for RHEL 10+ %bcond x11 %[%{undefined rhel} || 0%{?rhel} < 10] -%global commit 4f9f1ffaf375c14058024215423b969f44d48b2f +%global commit 7d245fd100fc0d87edcc559b0676a326dc8c5801 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260329 +%global commit_date 20260613 %global ver 0.41.0 Name: mpv-nightly @@ -21,6 +21,7 @@ BuildRequires: gcc BuildRequires: libappstream-glib BuildRequires: libatomic BuildRequires: meson +BuildRequires: cmake BuildRequires: python3-docutils BuildRequires: perl(Encode) diff --git a/anda/apps/peazip/peazip.spec b/anda/apps/peazip/peazip.spec index 649a3e5789..8b94e0852b 100644 --- a/anda/apps/peazip/peazip.spec +++ b/anda/apps/peazip/peazip.spec @@ -2,8 +2,8 @@ %define debug_package %nil Name: peazip -Version: 10.9.0 -Release: 1%?dist +Version: 11.1.0 +Release: 1%{?dist} Summary: Free Zip / Unzip software and Rar file extractor. Cross-platform file and archive manager License: LGPL-3.0-only URL: https://peazip.github.io diff --git a/anda/apps/proton-vpn/proton-vpn.spec b/anda/apps/proton-vpn/proton-vpn.spec index 2957e849d6..5b6f33dbff 100644 --- a/anda/apps/proton-vpn/proton-vpn.spec +++ b/anda/apps/proton-vpn/proton-vpn.spec @@ -1,7 +1,7 @@ -%global metainfo_commit eddfed5f7e2cd6f097cd11ad1bc8773c22a418a1 +%global metainfo_commit 47f57d55cc9897a31ac8d0a6411def15cddfe1c4 Name: proton-vpn-gtk-app -Version: 4.15.1 +Version: 4.16.5 Release: 2%{?dist} Summary: Official ProtonVPN Linux app License: GPL-3.0-only diff --git a/anda/apps/protontricks/protontricks.spec b/anda/apps/protontricks/protontricks.spec index d2f3ef4bae..a3ec316aa3 100644 --- a/anda/apps/protontricks/protontricks.spec +++ b/anda/apps/protontricks/protontricks.spec @@ -3,7 +3,7 @@ Name: terra-%{pypi_name} Version: 1.14.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Simple wrapper that does winetricks things for Proton enabled games BuildArch: noarch diff --git a/anda/apps/rasputin/rasputin.spec b/anda/apps/rasputin/rasputin.spec index 189c7043b4..6bd9be5d33 100644 --- a/anda/apps/rasputin/rasputin.spec +++ b/anda/apps/rasputin/rasputin.spec @@ -1,5 +1,5 @@ -%global commit b8a8e25fdc8a9f7c479535144ca8f99a31aa299f -%global commit_date 20260325 +%global commit d4283e2e9bae6a95673227e41d2c345d7780990a +%global commit_date 20260519 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: rasputin diff --git a/anda/apps/resources/anda.hcl b/anda/apps/resources/anda.hcl new file mode 100644 index 0000000000..31976df9ef --- /dev/null +++ b/anda/apps/resources/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "resources.spec" + } +} diff --git a/anda/apps/resources/resources.spec b/anda/apps/resources/resources.spec new file mode 100644 index 0000000000..59285dbdf3 --- /dev/null +++ b/anda/apps/resources/resources.spec @@ -0,0 +1,70 @@ +Name: resources +Version: 1.10.2 +Release: 1%{?dist} +Summary: Keep an eye on system resources +License: GPL-3.0-or-later +URL: https://gitlab.gnome.org/GNOME/Incubator/resources +Source0: %{url}/-/archive/v%{version}/resources-v%{version}.tar.gz +Packager: Owen Zimmerman + +BuildRequires: meson +BuildRequires: gcc +BuildRequires: cargo +BuildRequires: ninja-build +BuildRequires: desktop-file-utils +BuildRequires: pkgconfig(gtk4) +BuildRequires: pkgconfig(libadwaita-1) + +Requires: cairo +Requires: graphene +Requires: gtk4 +Requires: hicolor-icon-theme +Requires: libadwaita +Requires: libgcc +Requires: polkit + + +%description +Resources is a simple yet powerful monitor for your system resources +and processes, written in Rust and using GTK 4 and libadwaita for its GUI. +It’s capable of displaying usage and details of your CPU, memory, GPUs, NPUs, +network interfaces and block devices. It’s also capable of listing and +terminating running graphical applications as well as processes. + +Resources is not a program that will try to display every single possible +piece of information about each tiny part of your device. Instead, it aims +to strike a balance between information richness, user-friendliness and a +balanced user interface — showing you most of the information most +of you need most of the time. + +%prep +%autosetup -n %{name}-v%{version} + +%conf +%meson + +%build +%meson_build + +%install +%meson_install +%find_lang resources + +%files -f resources.lang +%doc README.md +%license LICENSE +%{_bindir}/resources +%{_libexecdir}/resources/resources-adjust +%{_libexecdir}/resources/resources-kill +%{_libexecdir}/resources/resources-processes +%{_appsdir}/net.nokyan.Resources.Devel.desktop +%{_datadir}/glib-2.0/schemas/net.nokyan.Resources.Devel.gschema.xml +%{_datadir}/polkit-1/actions/net.nokyan.Resources.Devel.policy +%{_datadir}/resources/resources.gresource +%{_scalableiconsdir}/net.nokyan.Resources.Devel.svg +%{_hicolordir}/symbolic/apps/net.nokyan.Resources.Devel-symbolic.svg +%{_metainfodir}/net.nokyan.Resources.Devel.metainfo.xml + +%changelog +* Sat May 16 2026 Owen Zimmerman +- Initial commit diff --git a/anda/apps/resources/update.rhai b/anda/apps/resources/update.rhai new file mode 100644 index 0000000000..8c2a0b5626 --- /dev/null +++ b/anda/apps/resources/update.rhai @@ -0,0 +1 @@ +rpm.version(gitlab_tag("https://gitlab.gnome.org", "39041")); diff --git a/anda/apps/rp-appset/rp-appset.spec b/anda/apps/rp-appset/rp-appset.spec index f1f4147efe..453626687e 100644 --- a/anda/apps/rp-appset/rp-appset.spec +++ b/anda/apps/rp-appset/rp-appset.spec @@ -1,5 +1,5 @@ -%global commit b8a8e25fdc8a9f7c479535144ca8f99a31aa299f -%global commit_date 20260325 +%global commit d4283e2e9bae6a95673227e41d2c345d7780990a +%global commit_date 20260519 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: appset diff --git a/anda/apps/rp-bookshelf/rp-bookshelf.spec b/anda/apps/rp-bookshelf/rp-bookshelf.spec index dc27c53aac..202f05fd6a 100644 --- a/anda/apps/rp-bookshelf/rp-bookshelf.spec +++ b/anda/apps/rp-bookshelf/rp-bookshelf.spec @@ -1,10 +1,10 @@ -%global commit a720bf5041fd832a278378fd6f5cf9a0b3f8cc6f -%global commit_date 20251217 +%global commit 8d837571ef02a4c1c4d74e419ebc59d66b47b685 +%global commit_date 20260521 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: rp-bookshelf Version: 0~%commit_date.git~%shortcommit -Release: 1%?dist +Release: 1%{?dist} Summary: Browser for Raspberry Pi Press publications in PDF format License: BSD-3-Clause URL: https://github.com/raspberrypi-ui/bookshelf diff --git a/anda/apps/rpcc/rpcc.spec b/anda/apps/rpcc/rpcc.spec index 58bf36a020..66eef78cda 100644 --- a/anda/apps/rpcc/rpcc.spec +++ b/anda/apps/rpcc/rpcc.spec @@ -1,10 +1,10 @@ -%global commit 353e04bf0bc1866cba1f599cd76050890d33ba23 -%global commit_date 20260123 +%global commit 0e6cd08585bccd8f56c69bf8785777c2e3e67c4a +%global commit_date 20260520 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: rpcc Version: 0~%commit_date.git~%shortcommit -Release: 1%?dist +Release: 1%{?dist} Summary: Raspberry Pi Control Centre - an extensible settings application for the Raspberry Pi Desktop License: BSD-3-Clause URL: https://github.com/raspberrypi-ui/rpcc @@ -36,8 +36,10 @@ A number of packages contain plugins which are installed as standard on Raspberr %prep %autosetup -n rpcc-%commit -%build +%conf %meson + +%build %meson_build %install diff --git a/anda/apps/rpinters/rpinters.spec b/anda/apps/rpinters/rpinters.spec index 6435280952..2b327d635e 100644 --- a/anda/apps/rpinters/rpinters.spec +++ b/anda/apps/rpinters/rpinters.spec @@ -1,10 +1,10 @@ -%global commit 0fee3911afdaabbdcf4e8214e3472198a1c0c9db -%global commit_date 20260304 +%global commit 697168fa320f7d0cabeb5edcf9778fff48e32be2 +%global commit_date 20260519 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: rpinters Version: 0~%commit_date.git~%shortcommit -Release: 1%?dist +Release: 1%{?dist} Summary: Raspberry Pi printing utility module License: GPL-2+ AND BSD-3-Clause URL: https://github.com/raspberrypi-ui/rpinters diff --git a/anda/apps/ruffle/ruffle-nightly.spec b/anda/apps/ruffle/ruffle-nightly.spec index e592f28a34..54ce4bc467 100644 --- a/anda/apps/ruffle/ruffle-nightly.spec +++ b/anda/apps/ruffle/ruffle-nightly.spec @@ -1,4 +1,4 @@ -%global ver 2026-03-29 +%global ver 2026-06-14 %global goodver %(echo %ver | sed 's/-//g') %global __brp_mangle_shebangs %{nil} %bcond_without mold @@ -23,6 +23,7 @@ BuildRequires: pkgconfig(alsa) BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(libudev) BuildRequires: pkgconfig(xcb-cursor) +BuildRequires: pkgconfig(openssl) Packager: madonuko %description %_description diff --git a/anda/apps/rustnet/rustnet.spec b/anda/apps/rustnet/rustnet.spec index bdd6e17249..50780caba2 100644 --- a/anda/apps/rustnet/rustnet.spec +++ b/anda/apps/rustnet/rustnet.spec @@ -1,5 +1,5 @@ Name: rustnet -Version: 1.1.0 +Version: 1.3.0 Release: 1%{?dist} Summary: A cross-platform network monitoring terminal UI tool built with Rust License: Apache-2.0 AND (MIT OR Apache-2.0) AND Unicode-3.0 AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 AND ISC) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND Apache-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-2-Clause AND (BSD-3-Clause OR Apache-2.0) AND BSL-1.0 AND ISC AND (LGPL-2.1-only OR BSD-2-Clause) AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) AND Zlib diff --git a/anda/apps/scrcpy/scrcpy.spec b/anda/apps/scrcpy/scrcpy.spec index ceb22441b1..c462f93e1a 100644 --- a/anda/apps/scrcpy/scrcpy.spec +++ b/anda/apps/scrcpy/scrcpy.spec @@ -19,8 +19,8 @@ %endif Name: scrcpy -Version: 3.3.4 -Release: 1%?dist +Version: 4.0 +Release: 1%{?dist} Summary: Display and control your Android device License: Apache-2.0 AND Proprietary URL: https://github.com/Genymobile/scrcpy @@ -46,7 +46,7 @@ BuildRequires: python3-sdkmanager Requires: %{name}-server # Gradle here really wants Java 21-23 to work properly # Java 25 breaks the build -BuildRequires: java-21-openjdk-devel +BuildRequires: java-latest-openjdk-devel BuildConflicts: dkms-nvidia akmod-nvidia Requires: android-tools diff --git a/anda/apps/signal-desktop/fix-runtime.patch b/anda/apps/signal-desktop/fix-runtime.patch index 7fe4b4760e..d8a60f0026 100644 --- a/anda/apps/signal-desktop/fix-runtime.patch +++ b/anda/apps/signal-desktop/fix-runtime.patch @@ -4,7 +4,7 @@ ] }, "engines": { -- "node": "24.14.0" +- "node": "24.15.0" + "node": ">= 22" }, "build": { diff --git a/anda/apps/signal-desktop/signal-desktop.spec b/anda/apps/signal-desktop/signal-desktop.spec index 280bb073b9..d5fd09861b 100644 --- a/anda/apps/signal-desktop/signal-desktop.spec +++ b/anda/apps/signal-desktop/signal-desktop.spec @@ -2,7 +2,7 @@ Name: signal-desktop %electronmeta -aD -Version: 8.4.1 +Version: 8.14.0 Release: 1%{?dist} Summary: A private messenger for Windows, macOS, and Linux URL: https://signal.org @@ -70,9 +70,11 @@ pushd sticker-creator popd %dnl %pnpm_build -r generate,build:policy-files,generate,build:esbuild:prod %{__pnpm} run generate -%{__pnpm} run build-linux +%{__pnpm} run build-linux --%{_electron_cpu} --linux AppImage +echo "Electron Builder" > %{rpmbuilddir}/webapp-tool.txt %install +mv ./packages/mute-state-change/LICENSE ./packages/mute-state-change/LICENSE.mute-state-change %electron_install -i signal -l -I build/icons/png %desktop_file_install %{SOURCE1} @@ -82,13 +84,15 @@ install -Dm644 $OUTDIR/resources/$policy %{buildroot}%{_datadir}/polkit-1/rules. rm $OUTDIR/resources/$policy done +mv LICENSE LICENSE.signal-desktop + %terra_appstream -o %{SOURCE2} %check %desktop_file_validate %{buildroot}%{_appsdir}/signal.desktop %files -%license LICENSE +%license LICENSE.signal-desktop %doc README.md CONTRIBUTING.md ACKNOWLEDGMENTS.md %license bundled_licenses/* %{_bindir}/signal-desktop @@ -100,6 +104,9 @@ done %{_metainfodir}/org.signal.Signal.metainfo.xml %changelog +* Sun Jun 14 2026 june-fish +- Fix license name conflicts + * Mon Dec 22 2025 Owen Zimmerman - Use more electron macros, correct build failures diff --git a/anda/apps/snow/snow.spec b/anda/apps/snow/snow.spec index ad8c741a60..8eb14dde25 100644 --- a/anda/apps/snow/snow.spec +++ b/anda/apps/snow/snow.spec @@ -1,6 +1,6 @@ Name: snow -Version: 1.3.1 -Release: 1%?dist +Version: 1.4.1 +Release: 1%{?dist} Summary: Classic Macintosh emulator URL: https://github.com/twvd/snow Source0: %url/archive/refs/tags/v%version.tar.gz diff --git a/anda/apps/spotify-launcher/spotify-launcher.spec b/anda/apps/spotify-launcher/spotify-launcher.spec index 5cabbdf1bd..7fac3283da 100644 --- a/anda/apps/spotify-launcher/spotify-launcher.spec +++ b/anda/apps/spotify-launcher/spotify-launcher.spec @@ -1,6 +1,6 @@ Name: spotify-launcher -Version: 0.6.5 -Release: 2%?dist +Version: 0.6.6 +Release: 1%{?dist} Summary: Client for spotify's apt repository in Rust License: Apache-2.0 AND MIT AND ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND BSD-3-Clause AND CDLA-Permissive-2.0 AND ISC AND (ISC AND (Apache-2.0 OR ISC)) AND (ISC AND (Apache-2.0 OR ISC) AND OpenSSL) AND (MIT OR Apache-2.0) AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND MPL-2.0 AND Unicode-3.0 AND (Unlicense OR MIT) AND Zlib Packager: veuxit @@ -10,7 +10,7 @@ URL: https://github.com/kpcyrd/spotify-launcher Source0: https://github.com/kpcyrd/spotify-launcher/archive/refs/tags/v%{version}.tar.gz BuildRequires: cargo cargo-rpm-macros anda-srpm-macros pkgconfig(liblzma) desktop-file-utils -Requires: sequoia-sqv zenity alsa-lib gtk3 desktop-file-utils openssl nss at-spi2-atk libcurl libSM +Requires: sequoia-sqv zenity alsa-lib gtk3 desktop-file-utils openssl nss at-spi2-atk libcurl libSM libayatana-appindicator-gtk3 %description diff --git a/anda/apps/subtitleedit/subtitleedit.spec b/anda/apps/subtitleedit/subtitleedit.spec index ef47f57046..ca1e4ab417 100644 --- a/anda/apps/subtitleedit/subtitleedit.spec +++ b/anda/apps/subtitleedit/subtitleedit.spec @@ -2,8 +2,8 @@ %global realname subtitleedit Name: %realname.bin -Version: 4.0.15 -Release: 1%?dist +Version: 4.0.16 +Release: 1%{?dist} Summary: An advanced subtitle editor and converter License: GPL-3.0-only URL: https://www.nikse.dk/SubtitleEdit diff --git a/anda/tools/buildsys/anda/anda.hcl b/anda/apps/tauon/anda.hcl similarity index 50% rename from anda/tools/buildsys/anda/anda.hcl rename to anda/apps/tauon/anda.hcl index 603eef82af..8240804b26 100644 --- a/anda/tools/buildsys/anda/anda.hcl +++ b/anda/apps/tauon/anda.hcl @@ -1,5 +1,5 @@ project pkg { rpm { - spec = "rust-anda.spec" + spec = "tauon.spec" } } diff --git a/anda/apps/tauon/tauon.spec b/anda/apps/tauon/tauon.spec new file mode 100644 index 0000000000..b7057f4e79 --- /dev/null +++ b/anda/apps/tauon/tauon.spec @@ -0,0 +1,69 @@ +%global _desc A music player for the desktop. Designed to be powerful and streamlined, putting the user in control of their music collection. + +%undefine __brp_mangle_shebangs + +Name: python-tauon +Version: 10.0.1 +Release: 2%{?dist} +Summary: A music player for the desktop. Designed to be powerful and streamlined +License: GPL-3.0-or-later +URL: https://tauonmusicbox.rocks/ +Source0: https://github.com/Taiko2k/Tauon/archive/refs/tags/v%{version}.tar.gz + +BuildRequires: python3-devel +BuildRequires: python3-wheel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +BuildRequires: gcc +BuildRequires: make +BuildRequires: flac-devel +BuildRequires: mpg123-devel +BuildRequires: libvorbis-devel +BuildRequires: opusfile-devel +BuildRequires: libsamplerate-devel +BuildRequires: libopenmpt-devel +BuildRequires: wavpack-devel +BuildRequires: game-music-emu-devel + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-tauon +Summary: %{summary} +%{?python_provide:%python_provide python3-tauon} + +%description -n python3-tauon +%_desc + +%prep +%git_clone https://github.com/Taiko2k/Tauon v%{version} + +%pyproject_patch_dependency pypresence:drop_constraints + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files tauon +%find_lang tauon +install -Dm644 extra/tauonmb.desktop %{buildroot}%{_appsdir}/tauonmb.desktop +install -Dm644 extra/tauonmb-symbolic.svg %{buildroot}%{_scalableiconsdir}/tauonmb-symbolic.svg +install -Dm644 extra/tauonmb.svg %{buildroot}%{_scalableiconsdir}/tauonmb.svg +install -Dm755 extra/tauonmb.sh %{buildroot}/opt/tauon/tauonmb.sh + +%files -n python3-tauon -f %{pyproject_files} -f tauon.lang +%doc README.md CHANGELOG.md CONTRIBUTING.md +%license LICENSE +%{_bindir}/tauonmb +%{python3_sitearch}/phazor.cpython-314-*-linux-gnu.so +%{_appsdir}/tauonmb.desktop +%{_scalableiconsdir}/tauonmb-symbolic.svg +%{_scalableiconsdir}/tauonmb.svg +/opt/tauon/tauonmb.sh + +%changelog +* Sat Mar 28 2026 Owen Zimmerman +- Initial commit diff --git a/anda/apps/tauon/update.rhai b/anda/apps/tauon/update.rhai new file mode 100644 index 0000000000..601e35ff3b --- /dev/null +++ b/anda/apps/tauon/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("Taiko2k/Tauon")); diff --git a/anda/apps/throne/Sagernet.SingBox.Version.txt b/anda/apps/throne/Sagernet.SingBox.Version.txt index 79ec631df1..1bae8c2a79 100644 --- a/anda/apps/throne/Sagernet.SingBox.Version.txt +++ b/anda/apps/throne/Sagernet.SingBox.Version.txt @@ -1 +1 @@ -v1.13.43 \ No newline at end of file +v1.13.13 \ No newline at end of file diff --git a/anda/apps/throne/throne.spec b/anda/apps/throne/throne.spec index cd0b2e97ce..ae5bb67601 100644 --- a/anda/apps/throne/throne.spec +++ b/anda/apps/throne/throne.spec @@ -1,7 +1,7 @@ #? https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=throne-git Name: throne -Version: 1.1.1 +Version: 1.1.6 Release: 1%{?dist} Summary: Qt based cross-platform GUI proxy configuration manager (backend: sing-box) URL: https://github.com/throneproj/Throne diff --git a/anda/apps/ttop/ttop.spec b/anda/apps/ttop/ttop.spec index e1fd92a9b0..ae3cd95bb9 100644 --- a/anda/apps/ttop/ttop.spec +++ b/anda/apps/ttop/ttop.spec @@ -1,6 +1,6 @@ Name: ttop -Version: 1.5.7 -Release: 1%?dist +Version: 1.6.1 +Release: 1%{?dist} Summary: System monitoring tool with historical data service, triggers and top-like TUI License: MIT URL: https://github.com/inv2004/ttop diff --git a/anda/apps/voicevox/voicevox.spec b/anda/apps/voicevox/voicevox.spec index e932a6dd99..9aba51ee0e 100644 --- a/anda/apps/voicevox/voicevox.spec +++ b/anda/apps/voicevox/voicevox.spec @@ -13,8 +13,8 @@ %global __requires_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*))$ Name: voicevox -Version: 0.25.1 -Release: 1%?dist +Version: 0.25.2 +Release: 1%{?dist} Summary: Free Japanese text-to-speech editor License: LGPL-3.0 URL: https://voicevox.hiroshiba.jp diff --git a/anda/apps/wavemon/anda.hcl b/anda/apps/wavemon/anda.hcl new file mode 100644 index 0000000000..ddf5adf02d --- /dev/null +++ b/anda/apps/wavemon/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "wavemon.spec" + } +} diff --git a/anda/apps/wavemon/update.rhai b/anda/apps/wavemon/update.rhai new file mode 100644 index 0000000000..f56cea9e0b --- /dev/null +++ b/anda/apps/wavemon/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("uoaerg/wavemon")); diff --git a/anda/apps/wavemon/wavemon.spec b/anda/apps/wavemon/wavemon.spec new file mode 100644 index 0000000000..5f6b3e8327 --- /dev/null +++ b/anda/apps/wavemon/wavemon.spec @@ -0,0 +1,48 @@ +Name: wavemon +Version: 0.9.7 +Release: 1%{?dist} +Summary: ncurses-based monitoring application for wireless network devices on Linux +License: GPL-3.0-or-later +URL: https://github.com/uoaerg/wavemon +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz +Packager: Owen Zimmerman + +BuildRequires: gcc +BuildRequires: ncurses-devel +BuildRequires: pkgconfig(libnl-3.0) +BuildRequires: autoconf +BuildRequires: automake + +%description +%{summary}. + +%prep +%autosetup +sed -e '/^CFLAGS=/d' -i configure.ac +sed -r 's|\?=|=|g' -i Makefile.in +autoreconf -fiv + +%conf +CFLAGS="$RPM_OPT_FLAGS -fPIC -pie -Wl,-z,relro -Wl,-z,now" +CXXFLAGS="$RPM_OPT_FLAGS -fPIC -pie -Wl,-z,relro -Wl,-z,now" +export CFLAGS +export CXXFLAGS +%configure + +%build +%make_build + +%install +%make_install +# Delete wrong placed readme and license +rm -rf %{buildroot}%{_datadir}/%{name}/* + +%files +%doc README.md +%license LICENSE +%{_mandir}/man*/%{name}*.* +%{_bindir}/%{name} + +%changelog +* Tue May 19 2026 Owen Zimmerman +- Initial commit diff --git a/anda/apps/winetricks/git/winetricks-git.spec b/anda/apps/winetricks/git/winetricks-git.spec index d02bcac45e..5d87f36b35 100644 --- a/anda/apps/winetricks/git/winetricks-git.spec +++ b/anda/apps/winetricks/git/winetricks-git.spec @@ -1,13 +1,13 @@ # Fedora sometimes sources the snapshots under stable versions and just bumps release # For user clarity I have separated these into different packages -%global commit b792287f5bec9086916aa9b81788e0ea38f02c24 +%global commit 08304e81f9ac9a83c552a6bd78689040d174bf95 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global ver 20260125 -%global commit_date 20260222 +%global commit_date 20260531 Name: winetricks-git Version: %{ver}^%{commit_date}git.%{shortcommit} -Release: 1%?dist +Release: 1%{?dist} Summary: Work around common problems in Wine; Winetricks Git builds License: LGPL-2.1-or-later URL: https://github.com/Winetricks/winetricks diff --git a/anda/buildsys/anda/anda.hcl b/anda/buildsys/anda/anda.hcl new file mode 100644 index 0000000000..a430c7e9ff --- /dev/null +++ b/anda/buildsys/anda/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "anda.spec" + } +} diff --git a/anda/buildsys/anda/anda.spec b/anda/buildsys/anda/anda.spec new file mode 100644 index 0000000000..78fbc02bd4 --- /dev/null +++ b/anda/buildsys/anda/anda.spec @@ -0,0 +1,77 @@ +# Work around a bug in rustc 1.95.0 with GCC +%global toolchain clang +%global crate anda + +Name: anda +Version: 0.7.1 +Release: 1%{?dist} +Summary: Andaman Build toolchain +SourceLicense: MIT +License: ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 AND ISC) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND Apache-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-3-Clause AND BSL-1.0 AND CDLA-Permissive-2.0 AND ISC AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND MPL-2.0-or-later AND MPL-2.0-only AND Unicode-3.0 AND (Unlicense OR MIT) +URL: https://crates.io/crates/anda +Source0: https://github.com/FyraLabs/anda/archive/refs/tags/%{version}.tar.gz +%if %["%{toolchain}" == "clang"] +BuildRequires: clang +%else +BuildRequires: gcc +%endif +BuildRequires: rust-packaging >= 21 +BuildRequires: anda-srpm-macros +BuildRequires: openssl-devel +%if %{defined fedora} +BuildRequires: openssl-devel-engine +%endif +BuildRequires: git-core +BuildRequires: libgit2-devel +BuildRequires: libssh2-devel +BuildRequires: mold +Requires: mock +Requires: rpm-build +Requires: createrepo_c +Requires: git-core +Requires: libgit2 +%if 0%{?fedora} >= 42 +Requires: mock-filesystem +Requires: util-linux-script +%endif +Packager: Terra Packaging Team + +%description +Andaman Build toolchain. + +%pkg_completion -bfz + +%prep +%autosetup -n %{crate}-%{version} +%cargo_prep_online +%{__cargo} fetch --locked + +%build +%{cargo_build} --frozen +%{cargo_license_online} > LICENSE.dependencies +%{__cargo} run --release -p xtask -- manpage +%{__cargo} run --release -p xtask -- completion + +%install +%crate_install_bin + +# Install shell completions +COMPDIR="target/assets/completion" + +install -Dm644 $COMPDIR/bash/anda.bash -t %{buildroot}%{bash_completions_dir} +install -Dm644 $COMPDIR/zsh/_anda -t %{buildroot}%{zsh_completions_dir} +install -Dm644 $COMPDIR/fish/anda.fish -t %{buildroot}%{fish_completions_dir} + +# Install man pages +install -Dm644 target/assets/man_pages/* -t %{buildroot}%{_mandir}/man1 + +%files +%doc README.md +%license LICENSE.dependencies LICENSE.md +%{_bindir}/anda +%{_mandir}/man1/anda*.1.* + +%changelog +* Sun May 3 2026 Gilver E. - 0.5.4-2 +- Fix build on Fedora 43 +- Add shell completions subpackages diff --git a/anda/tools/buildsys/anda/update.rhai b/anda/buildsys/anda/update.rhai similarity index 100% rename from anda/tools/buildsys/anda/update.rhai rename to anda/buildsys/anda/update.rhai diff --git a/anda/buildsys/bsc/anda.hcl b/anda/buildsys/bsc/anda.hcl new file mode 100644 index 0000000000..cc0f26d3ef --- /dev/null +++ b/anda/buildsys/bsc/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "bsc.spec" + } +} diff --git a/anda/buildsys/bsc/bsc.spec b/anda/buildsys/bsc/bsc.spec new file mode 100644 index 0000000000..1b7122389c --- /dev/null +++ b/anda/buildsys/bsc/bsc.spec @@ -0,0 +1,85 @@ +%define debug_package %{nil} +%global __provides_exclude_from ^%{_libdir}/bsc/SAT/.* +%global __requires_exclude libstp\\.so\\.1|libyices\\.so\\.2\\.6 + +Name: bsc +Version: 2026.01 +Release: 1%{?dist} +Summary: Bluespec Compiler (BSC) + +License: BSD-3-Clause AND BSD-2-Clause AND MIT AND LGPL-2.0-or-later AND AND BSL-1.0 +URL: https://github.com/B-Lang-org/bsc +Source: %{url}/archive/refs/tags/%{version}.tar.gz + +BuildRequires: ghc +BuildRequires: ghc-regex-compat-devel +BuildRequires: ghc-syb-devel +BuildRequires: ghc-old-time-devel +BuildRequires: ghc-split-devel +BuildRequires: ghc-strict-concurrency-devel +BuildRequires: gperf +BuildRequires: gcc-c++ +BuildRequires: autoconf +BuildRequires: flex +BuildRequires: bison +BuildRequires: zlib-ng-compat-devel +BuildRequires: tcl-devel + +# For check +BuildRequires: binutils +BuildRequires: iverilog + +Provides: bundled(stp) +Provides: bundled(yices) + +Packager: Owen Zimmerman + +%description +Compiler, simulator, and tools for the Bluespec Hardware Description Language. +Bluespec is a single language for digital electronic hardware designs that +comes in two syntactic flavors, which are interchangeable: + + Bluespec SystemVerilog (BSV) + Bluespec Haskell (BH, or "Bluespec Classic") + +Bluespec is a high-level hardware description language. It has a variety of +advanced features including a powerful type system that can prevent errors prior +to synthesis time, and its most distinguishing feature, Guarded Atomic Actions, +allow you to define hardware components in a modular manner based on their +invariants, and let the compiler pick a scheduler. + +%prep +%git_clone %{url} %{version} + +%build +%make_build install-src GHCJOBS=%{_smp_build_ncpus} + +%install +mkdir -p %{buildroot}%{_datadir}/bsc/ +mkdir -p %{buildroot}%{_bindir} +cp -r inst/ %{buildroot}%{_datadir}/bsc/ + +# https://github.com/B-Lang-org/bsc/blob/main/INSTALL.md#overview +# Note this is symlinking the wrapper scripts, not the ELFs +%{__ln_s} -f %{_datadir}/bsc/inst/bin/bsc %{buildroot}%{_bindir}/bsc +%{__ln_s} -f %{_datadir}/bsc/inst/bin/bluetcl %{buildroot}%{_bindir}/bluetcl + +# Patch wrapper scripts to use correct paths +for wrapper in %{buildroot}%{_datadir}/bsc/inst/bin/bsc %{buildroot}%{_datadir}/bsc/inst/bin/bluetcl; do + sed -i 's|BLUESPECDIR="$(cd ${BINDIR}/../lib; echo $PWD)"|BLUESPECDIR="%{_datadir}/bsc/inst/lib"|' $wrapper + sed -i 's|BLUESPECEXEC=${BINDIR}/core/${SCRIPTNAME}|BLUESPECEXEC="%{_datadir}/bsc/inst/bin/core/${SCRIPTNAME}"|' $wrapper +done + +%check +%{make_build} check-smoke + +%files +%doc README.md DEVELOP.md +%license COPYING LICENSES/ +%{_bindir}/bsc +%{_bindir}/bluetcl +%{_datadir}/bsc/* + +%changelog +* Fri Apr 24 2026 Owen Zimmerman +- Initial commit diff --git a/anda/buildsys/bsc/update.rhai b/anda/buildsys/bsc/update.rhai new file mode 100644 index 0000000000..69381aa080 --- /dev/null +++ b/anda/buildsys/bsc/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("B-Lang-org/bsc")); diff --git a/anda/tools/buildsys/gradle/anda.hcl b/anda/buildsys/gradle/anda.hcl similarity index 78% rename from anda/tools/buildsys/gradle/anda.hcl rename to anda/buildsys/gradle/anda.hcl index da5869ef05..81e72434b7 100644 --- a/anda/tools/buildsys/gradle/anda.hcl +++ b/anda/buildsys/gradle/anda.hcl @@ -2,6 +2,6 @@ project pkg { arches = ["x86_64"] rpm { spec = "gradle.spec" - extra_repos = ["https://packages.adoptium.net/artifactory/rpm/fedora/\\$releasever/\\$basearch"] + extra_repos = ["https://packages.adoptium.net/artifactory/rpm/fedora/rawhide/\\$basearch"] } } diff --git a/anda/tools/buildsys/gradle/ci_setup.rhai b/anda/buildsys/gradle/ci_setup.rhai similarity index 100% rename from anda/tools/buildsys/gradle/ci_setup.rhai rename to anda/buildsys/gradle/ci_setup.rhai diff --git a/anda/tools/buildsys/gradle/gradle.spec b/anda/buildsys/gradle/gradle.spec similarity index 98% rename from anda/tools/buildsys/gradle/gradle.spec rename to anda/buildsys/gradle/gradle.spec index e36645dc05..b73a8c5334 100644 --- a/anda/tools/buildsys/gradle/gradle.spec +++ b/anda/buildsys/gradle/gradle.spec @@ -1,5 +1,5 @@ Name: gradle -Version: 9.4.1 +Version: 9.5.1 Release: 1%{?dist} Summary: Powerful build system for the JVM URL: https://gradle.org/ @@ -41,6 +41,7 @@ export PATH="/usr/lib/jvm/java-21-openjdk/bin:${PATH}" -Pgradle_installPath="$(pwd)/dist" \ -Porg.gradle.ignoreBuildJavaVersionCheck=true \ --warning-mode all \ + -Dorg.gradle.unsafe.isolated-projects=false \ --no-configuration-cache %install diff --git a/anda/tools/buildsys/gradle/update.rhai b/anda/buildsys/gradle/update.rhai similarity index 100% rename from anda/tools/buildsys/gradle/update.rhai rename to anda/buildsys/gradle/update.rhai diff --git a/anda/tools/buildsys/katsu/anda.hcl b/anda/buildsys/katsu/anda.hcl similarity index 100% rename from anda/tools/buildsys/katsu/anda.hcl rename to anda/buildsys/katsu/anda.hcl diff --git a/anda/tools/buildsys/katsu/katsu.spec b/anda/buildsys/katsu/katsu.spec similarity index 100% rename from anda/tools/buildsys/katsu/katsu.spec rename to anda/buildsys/katsu/katsu.spec diff --git a/anda/tools/buildsys/katsu/update.rhai b/anda/buildsys/katsu/update.rhai similarity index 100% rename from anda/tools/buildsys/katsu/update.rhai rename to anda/buildsys/katsu/update.rhai diff --git a/anda/tools/buildsys/mise/anda.hcl b/anda/buildsys/mise/anda.hcl similarity index 64% rename from anda/tools/buildsys/mise/anda.hcl rename to anda/buildsys/mise/anda.hcl index e99cc8f2d0..bec28911ba 100644 --- a/anda/tools/buildsys/mise/anda.hcl +++ b/anda/buildsys/mise/anda.hcl @@ -2,4 +2,7 @@ project pkg { rpm { spec = "rust-mise.spec" } + labels { + large = 1 + } } diff --git a/anda/tools/buildsys/mise/mise-fix-metadata-auto.diff b/anda/buildsys/mise/mise-fix-metadata-auto.diff similarity index 73% rename from anda/tools/buildsys/mise/mise-fix-metadata-auto.diff rename to anda/buildsys/mise/mise-fix-metadata-auto.diff index 3198f7e1f2..7eb4cc5dc7 100644 --- a/anda/tools/buildsys/mise/mise-fix-metadata-auto.diff +++ b/anda/buildsys/mise/mise-fix-metadata-auto.diff @@ -1,15 +1,16 @@ ---- mise-2026.2.10/Cargo.toml 2006-07-24T01:21:28+00:00 -+++ mise-2026.2.10/Cargo.toml 2026-02-12T15:02:18.584012+00:00 -@@ -575,30 +575,6 @@ +--- mise-2026.5.6/Cargo.toml 2006-07-24T01:21:28+00:00 ++++ mise-2026.5.6/Cargo.toml 2026-05-13T07:19:23.400768+00:00 +@@ -624,31 +624,6 @@ optional = true default-features = false -[target."cfg(windows)".dependencies.self_update] --version = "0.42" +-version = "0.44" -features = [ - "archive-zip", - "compression-zip-deflate", - "signatures", +- "reqwest", - "rustls", -] -optional = true @@ -26,12 +27,12 @@ -] - -[target."cfg(windows)".dependencies.zipsign-api] --version = "0.1" +-version = "0.2" - [lints.clippy] borrowed_box = "allow" -@@ -615,3 +591,4 @@ +@@ -663,3 +638,4 @@ [profile.serious] lto = true inherits = "release" diff --git a/anda/tools/buildsys/mise/rust-mise.spec b/anda/buildsys/mise/rust-mise.spec similarity index 99% rename from anda/tools/buildsys/mise/rust-mise.spec rename to anda/buildsys/mise/rust-mise.spec index 1c026adf12..0e13234270 100644 --- a/anda/tools/buildsys/mise/rust-mise.spec +++ b/anda/buildsys/mise/rust-mise.spec @@ -5,7 +5,7 @@ %global crate mise Name: rust-mise -Version: 2026.3.17 +Version: 2026.6.9 Release: 1%{?dist} Summary: Front-end to your dev env diff --git a/anda/tools/buildsys/mise/update.rhai b/anda/buildsys/mise/update.rhai similarity index 100% rename from anda/tools/buildsys/mise/update.rhai rename to anda/buildsys/mise/update.rhai diff --git a/anda/tools/buildsys/muon/anda.hcl b/anda/buildsys/muon/anda.hcl similarity index 56% rename from anda/tools/buildsys/muon/anda.hcl rename to anda/buildsys/muon/anda.hcl index 0a22d891b8..fd3534d4f4 100644 --- a/anda/tools/buildsys/muon/anda.hcl +++ b/anda/buildsys/muon/anda.hcl @@ -2,4 +2,7 @@ project pkg { rpm { spec = "muon.spec" } + labels { + subrepo = "extras" + } } diff --git a/anda/buildsys/muon/fix-tracy-header-placement-quirk.patch b/anda/buildsys/muon/fix-tracy-header-placement-quirk.patch new file mode 100644 index 0000000000..66995d6f33 --- /dev/null +++ b/anda/buildsys/muon/fix-tracy-header-placement-quirk.patch @@ -0,0 +1,13 @@ +diff --git a/include/tracy.h b/include/tracy.h +index 8bbc923f..ae58c877 100644 +--- a/include/tracy.h ++++ b/include/tracy.h +@@ -4,7 +4,7 @@ + */ + + #ifdef TRACY_ENABLE +-#include "tracy/TracyC.h" ++#include "tracy/tracy/TracyC.h" + + #define TracyCZoneAutoS TracyCZoneN(tctx_func, __func__, true) + #define TracyCZoneAutoE TracyCZoneEnd(tctx_func) diff --git a/anda/buildsys/muon/muon.spec b/anda/buildsys/muon/muon.spec new file mode 100644 index 0000000000..5a6538904d --- /dev/null +++ b/anda/buildsys/muon/muon.spec @@ -0,0 +1,64 @@ +Name: muon +Version: 0.5.0 +Release: 4%{?dist} +Summary: A meson-compatible build system + +# https://git.sr.ht/~lattis/muon/tree/master/item/LICENSES +License: GPL-3.0-only AND Apache-2.0 AND Unlicense AND MIT AND Python-2.0 +URL: https://muon.build/ +Source: https://git.sr.ht/~lattis/muon/archive/%{version}.tar.gz +Patch0: fix-tracy-header-placement-quirk.patch +# mdbook removed multilingual support, this patch can be removed when this package next bumps +Patch1: remove-multilingual-field.patch + +BuildRequires: meson +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: cmake +BuildRequires: libcurl-devel +BuildRequires: libarchive-devel +BuildRequires: libpkgconf-devel +BuildRequires: scdoc +BuildRequires: git-core +BuildRequires: pkgconfig(tracy) +BuildRequires: pkgconfig(libattr) +BuildRequires: pkgconfig(bzip2) +BuildRequires: pkgconfig(libb2) +BuildRequires: pkgconfig(liblz4) +BuildRequires: pkgconfig(libzstd) +BuildRequires: pkgconfig(liblzma) +BuildRequires: pkgconfig(lzo2) +BuildRequires: pkgconfig(libxml-2.0) +BuildRequires: pkgconfig(libacl) +BuildRequires: python3-pyyaml +BuildRequires: mandoc +BuildRequires: mdbook + +Packager: Owen Zimmerman + +%description +An implementation of the meson build system in c99 with minimal dependencies. + +%prep +%autosetup -p1 + +%conf +%meson --wrap-mode=nofallback + +%build +%meson_build + +%install +%meson_install + +%files +%license LICENSES/ +%doc README.md +%{_bindir}/muon +%{_mandir}/man1/muon* +%{_mandir}/man5/meson* +%{_mandir}/man3/meson-reference.3.* + +%changelog +* Mon Apr 20 2026 Owen Zimmerman +- Update spec, add tracy patch diff --git a/anda/buildsys/muon/remove-multilingual-field.patch b/anda/buildsys/muon/remove-multilingual-field.patch new file mode 100644 index 0000000000..e0867fb189 --- /dev/null +++ b/anda/buildsys/muon/remove-multilingual-field.patch @@ -0,0 +1,25 @@ +From 776a9a30eded21206df1e643d888233472a2dbbf Mon Sep 17 00:00:00 2001 +From: Stone Tickle +Date: Thu, 27 Nov 2025 09:14:02 -0500 +Subject: [PATCH] remove multilingual field + +Signed-off-by: Owen-sz +--- + doc/book/book.toml | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/doc/book/book.toml b/doc/book/book.toml +index f51e1836..b96e9792 100644 +--- a/doc/book/book.toml ++++ b/doc/book/book.toml +@@ -1,7 +1,6 @@ + [book] + authors = ["Stone Tickle"] + language = "en" +-multilingual = false + src = "src" + title = "Muon Docs" + +-- +2.53.0 + diff --git a/anda/buildsys/muon/update.rhai b/anda/buildsys/muon/update.rhai new file mode 100644 index 0000000000..2497cb3059 --- /dev/null +++ b/anda/buildsys/muon/update.rhai @@ -0,0 +1 @@ +rpm.version(sourcehut("~lattis/muon")); diff --git a/anda/tools/buildsys/ops2deb/anda.hcl b/anda/buildsys/ops2deb/anda.hcl similarity index 100% rename from anda/tools/buildsys/ops2deb/anda.hcl rename to anda/buildsys/ops2deb/anda.hcl diff --git a/anda/buildsys/ops2deb/ops2deb.spec b/anda/buildsys/ops2deb/ops2deb.spec new file mode 100644 index 0000000000..a2eef9ec7d --- /dev/null +++ b/anda/buildsys/ops2deb/ops2deb.spec @@ -0,0 +1,50 @@ +%global pypi_name ops2deb +%global _desc Generate Debian packages for common devops tools such as kubectl, kustomize, helm. + +Name: python-%{pypi_name} +Version: 2.7.0 +Release: 1%?dist +Summary: Generate Debian packages for common devops tools such as kubectl, kustomize, helm +License: MIT +URL: https://github.com/upciti/ops2deb +Source0: %{pypi_source} +Patch0: versions.patch +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-poetry + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} -p1 + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md +%license LICENSE +%{_bindir}/ops2deb + +%changelog +* Thu Apr 23 2026 Owen Zimmerman +- Switch to modern python packaging methods + +* Fri Apr 28 2023 madonuko - 2.4.1-1 +- Initial package. diff --git a/anda/tools/buildsys/ops2deb/update.rhai b/anda/buildsys/ops2deb/update.rhai similarity index 100% rename from anda/tools/buildsys/ops2deb/update.rhai rename to anda/buildsys/ops2deb/update.rhai diff --git a/anda/buildsys/ops2deb/versions.patch b/anda/buildsys/ops2deb/versions.patch new file mode 100644 index 0000000000..a01e2a5097 --- /dev/null +++ b/anda/buildsys/ops2deb/versions.patch @@ -0,0 +1,18 @@ +diff --git a/pyproject.toml b/pyproject.toml +index 29b753f..926abf8 100644 +--- a/pyproject.toml ++++ b/pyproject.toml +@@ -18,10 +18,10 @@ packages = [ + ] + + [tool.poetry.dependencies] +-python = ">=3.10,<3.12" ++python = ">=3.10" + httpx = ">=0.20.0" +-semver = "3.0.2" +-"ruamel.yaml" = "0.18.14" ++semver = ">3.0.2" ++"ruamel.yaml" = ">0.18.14" + python-debian = ">=0.1.42" + PyYAML = "^6" + typer = ">=0.6.1" diff --git a/anda/desktops/budgie/budgie-extras/budgie-extras.spec b/anda/desktops/budgie/budgie-extras/budgie-extras.spec index d15bd56002..7bfeae3d61 100644 --- a/anda/desktops/budgie/budgie-extras/budgie-extras.spec +++ b/anda/desktops/budgie/budgie-extras/budgie-extras.spec @@ -1,8 +1,8 @@ Name: budgie-extras -Version: 2.2.2 -Release: 1%{?dist} +Version: 2.2.3 +Release: 2%{?dist} -License: GPL-3.0 +License: GPL-3.0-or-later Summary: Additional Budgie Desktop enhancements for user experience URL: https://ubuntubudgie.org/ @@ -14,7 +14,7 @@ BuildRequires: meson BuildRequires: vala BuildRequires: intltool -BuildRequires: pkgconfig(budgie-1.0) +BuildRequires: pkgconfig(budgie-3.0) BuildRequires: pkgconfig(gee-0.8) BuildRequires: pkgconfig(gnome-settings-daemon) BuildRequires: pkgconfig(json-glib-1.0) @@ -25,6 +25,9 @@ BuildRequires: pkgconfig(libnma) BuildRequires: pkgconfig(libnotify) BuildRequires: pkgconfig(libsoup-2.4) BuildRequires: pkgconfig(libwnck-3.0) +BuildRequires: pkgconfig(libpeas-2) +BuildRequires: pkgconfig(libxfce4windowing-0) +BuildRequires: pkgconfig(gtk-layer-shell-0) BuildRequires: pkgconfig(appstream) BuildRequires: pkgconfig(granite) @@ -38,22 +41,16 @@ Requires: budgie-applet-clockworks Requires: budgie-applet-countdown Requires: budgie-applet-dropby Requires: budgie-applet-fuzzyclock -Requires: budgie-applet-hotcorners Requires: budgie-applet-kangaroo -Requires: budgie-applet-keyboard-autoswitch Requires: budgie-applet-network-manager Requires: budgie-applet-quickchar Requires: budgie-applet-quicknote Requires: budgie-applet-recentlyused -Requires: budgie-applet-rotation-lock Requires: budgie-applet-showtime Requires: budgie-applet-takeabreak Requires: budgie-applet-visualspace Requires: budgie-applet-wallstreet Requires: budgie-applet-weathershow -Requires: budgie-applet-window-shuffler -Requires: budgie-applet-workspace-stopwatch -Requires: budgie-applet-wpreviews Requires: budgie-applet-wswitcher # Fix for https://github.com/UbuntuBudgie/budgie-extras/issues/233, don't know how stenstorp did not notice this Requires: xinput @@ -129,13 +126,6 @@ Summary: Shows the time in a Fuzzy Way %description -n budgie-applet-fuzzyclock %{summary} -%package -n budgie-applet-hotcorners -Requires: budgie-extras-common -Summary: Applet providing hotcorners capabilities for the Budgie Desktop -%description -n budgie-applet-hotcorners -The hotcorners applet allow user defined commands to be executed -when the mouse cursor is pushed into a corner of the main desktop. - %package -n budgie-applet-kangaroo Requires: budgie-extras-common Summary: Applet to allow quick file-browsing @@ -144,15 +134,6 @@ The kangaroo applet allows for quick & easy browsing, across (possibly) many directory layers, without having to do a single mouse click. -%package -n budgie-applet-keyboard-autoswitch -Requires: budgie-extras-common -Summary: Applet adding the ability to set a different keyboard layout per application -%description -n budgie-applet-keyboard-autoswitch -The Keyboard Auto Switcher applet provides the user the ability to set -a different keyboard layout per application. Exceptions to the default -layout can be set by simply choosing a different layout using the -Keyboard Layout applet. - %package -n budgie-applet-network-manager Requires: budgie-extras-common Summary: A fork of Wingpanel Network Indicator, ported to budgie desktop @@ -181,12 +162,11 @@ Summary: Applet displays files recently accessed for the Budgie Desktop The recentlyused applet displays the users files that have been opened or created within a configurable period of time. -%package -n budgie-applet-rotation-lock +%package -n budgie-applet-screencast Requires: budgie-extras-common -Summary: Applet to lock or unlock the screen rotation -%description -n budgie-applet-rotation-lock -The Rotation Lock applet provides the user an easy way to lock or -unlock the screen rotation. +Summary: Applet wrapper around wf-recorder +%description -n budgie-applet-screencast +Applet wrapper around wf-recorder. Allows recording of whole screen displays or areas. %package -n budgie-applet-showtime Requires: budgie-extras-common @@ -227,31 +207,6 @@ Summary: Applet to display the weather and forecast The weathershow applet displays daily and three hourly weather forecasts on both the desktop and a Popover. -%package -n budgie-applet-window-shuffler -Requires: budgie-extras-common -Requires: budgie-extras-daemon -Summary: Budgie Window Shuffler -%description -n budgie-applet-window-shuffler -%{summary} - -%package -n budgie-applet-workspace-stopwatch -Requires: budgie-extras-common -Summary: An applet to keep track of usage per workspace -%description -n budgie-applet-workspace-stopwatch -Workspace Timer Applet is an applet to keep track of usage per workspace, e.g. -to find out how much minutes/hours were actually spent on a job. Workspaces can -be freely named, custom names and all data are rmembered, also after -logout/restart, until the RESET button is pressed. The log file is updated -onworkspace switch/clicking the icon for popup or else every 30 seconds. Time -during suspend is automatically retracted from a workspace' time. - -%package -n budgie-applet-wpreviews -Requires: budgie-extras-common -Requires: budgie-extras-daemon -Summary: Applet providing window previews capabilities for the Budgie Desktop -%description -n budgie-applet-wpreviews -The Previews applet shows an overview of windows in an expose like way. - %package -n budgie-applet-wswitcher Requires: budgie-extras-common Requires: budgie-extras-daemon @@ -266,8 +221,14 @@ workspaces. %prep %autosetup -p1 +find . -name "meson.build" -exec sed -i "s/dependency('budgie-1.0')/dependency('budgie-3.0')/g" {} + +find . -name "meson.build" -exec sed -i "s/dependency('libpeas-1.0')/dependency('libpeas-2')/g" {} + +find . -name "meson.build" -exec sed -i "s/dependency('libpeas-gtk-1.0')/dependency('libpeas-2')/g" {} + + +%conf +%meson -Dfor-wayland=true + %build -%meson %meson_build %install @@ -282,7 +243,6 @@ rm -f %{buildroot}%{_bindir}/quickchar %{__ln_s} -fv %{_bindir}/quickchar %{_libdir}/quickchar/quickchar - %files %files common @@ -294,103 +254,91 @@ rm -f %{buildroot}%{_bindir}/quickchar %{_bindir}/budgie-extras-daemon %{_libdir}/budgie-extras-daemon/invoke.py %{_datadir}/budgie-desktop/layouts/*.layout -%{_datadir}/budgie-extras-daemon %{_mandir}/man1/budgie-extras-daemon.1.gz %files -n budgie-applet-app-launcher %{_datadir}/pixmaps/budgie-app-launcher*.svg %{_libdir}/budgie-desktop/plugins/budgie-app-launcher +%{_metainfodir}/org.ubuntubudgie.applauncher.metainfo.xml %files -n budgie-applet-applications-menu %{_libdir}/budgie-desktop/plugins/applications-menu %{_datadir}/glib-2.0/schemas/org.ubuntubudgie.plugins.budgie-appmenu.gschema.xml -#%%{_datadir}/glib-2.0/schemas/io.elementary.desktop.wingpanel.applications-menu.gschema.xml %files -n budgie-applet-brightness-controller %{_libdir}/budgie-desktop/plugins/budgie-brightness-controller %{_datadir}/pixmaps/budgie-brightness-controller-1-symbolic.svg +%{_metainfodir}/org.ubuntubudgie.brightnesscontroller.metainfo.xml %files -n budgie-applet-clockworks %{_libdir}/budgie-desktop/plugins/budgie-clockworks %{_datadir}/glib-2.0/schemas/*budgie-clockworks*.xml %{_datadir}/pixmaps/budgie-clockworks*.svg +%{_metainfodir}/org.ubuntubudgie.clockworks.metainfo.xml %files -n budgie-applet-countdown %{_libdir}/budgie-desktop/plugins/budgie-countdown %{_datadir}/glib-2.0/schemas/org.ubuntubudgie.plugins.budgie-countdown.gschema.xml %{_datadir}/pixmaps/budgie-countdown-symbolic.svg %{_datadir}/pixmaps/cr_*.png +%{_metainfodir}/org.ubuntubudgie.countdown.metainfo.xml %files -n budgie-applet-dropby %{_libdir}/budgie-desktop/plugins/budgie-dropby %{_datadir}/glib-2.0/schemas/org.ubuntubudgie.plugins.budgie-dropby.gschema.xml %{_datadir}/pixmaps/budgie-dropby*.svg +%{_metainfodir}/org.ubuntubudgie.dropby.metainfo.xml %files -n budgie-applet-fuzzyclock %{_libdir}/budgie-desktop/plugins/budgie-fuzzyclock - -%files -n budgie-applet-hotcorners -%{_libdir}/budgie-desktop/plugins/budgie-hotcorners -%config %{_sysconfdir}/xdg/autostart/org.ubuntubudgie.budgie-extras.HotCorners-autostart.desktop -%{_datadir}/glib-2.0/schemas/org.ubuntubudgie.budgie-extras.HotCorners.gschema.xml -%{_datadir}/applications/org.ubuntubudgie.budgie-extras.HotCorners.desktop -%{_datadir}/budgie-hotcorners -/usr/libexec/budgie-hotcorners/ - -%{_datadir}/pixmaps/budgie-hotcorners-symbolic.svg -%{_datadir}/pixmaps/budgie-hotcgui-*.svg -%{_datadir}/icons/hicolor/scalable/apps/org.ubuntubudgie.budgie-extras.hotcorners.svg +%{_metainfodir}/org.ubuntubudgie.fuzzyclock.metainfo.xml %files -n budgie-applet-kangaroo %{_libdir}/budgie-desktop/plugins/budgie-kangaroo %{_datadir}/pixmaps/budgie-foldertrack-symbolic.svg - -%files -n budgie-applet-keyboard-autoswitch -%{_libdir}/budgie-desktop/plugins/budgie-keyboard-autoswitch -%{_datadir}/pixmaps/budgie-keyboard-autoswitch-symbolic.svg +%{_metainfodir}/org.ubuntubudgie.kangaroo.metainfo.xml %files -n budgie-applet-network-manager %{_libdir}/budgie-desktop/plugins/budgie-network-manager %files -n budgie-applet-quickchar -%config %{_sysconfdir}/xdg/autostart/quickchar-autostart.desktop %ghost %{_bindir}/quickchar -%{_libdir}/quickchar -%{_datadir}/applications/org.ubuntubudgie.quickchar.desktop -%{_datadir}/glib-2.0/schemas/org.ubuntubudgie.quickchar.gschema.xml -%{_datadir}/quickchar/chardata -%{_datadir}/icons/hicolor/scalable/apps/org.ubuntubudgie.quickchar.svg -%{_mandir}/man1/quickchar.1.gz -%{_datadir}/metainfo/org.ubuntubudgie.quickchar.metainfo.xml %files -n budgie-applet-quicknote %{_libdir}/budgie-desktop/plugins/budgie-quicknote %{_datadir}/glib-2.0/schemas/org.ubuntubudgie.plugins.quicknote.gschema.xml %{_datadir}/pixmaps/budgie-quicknote-symbolic.svg +%{_metainfodir}/org.ubuntubudgie.quicknote.metainfo.xml %files -n budgie-applet-recentlyused %{_libdir}/budgie-desktop/plugins/budgie-recentlyused %{_datadir}/glib-2.0/schemas/org.ubuntubudgie.plugins.budgie-recentlyused.gschema.xml +%{_metainfodir}/org.ubuntubudgie.recentlyused.metainfo.xml -%files -n budgie-applet-rotation-lock -%{_libdir}/budgie-desktop/plugins/budgie-rotation-lock -%{_datadir}/pixmaps/budgie-rotation-*.svg +%files -n budgie-applet-screencast +%{_libdir}/budgie-desktop/plugins/budgie-screencast/BudgieScreencast.plugin +%{_libdir}/budgie-desktop/plugins/budgie-screencast/libbudgie-screencast.so +%{_datadir}/glib-2.0/schemas/org.ubuntubudgie.budgie-screencast.gschema.xml +%{_datadir}/pixmaps/budgie-screencast-symbolic.svg %files -n budgie-applet-showtime -%{_libdir}/budgie-desktop/plugins/budgie-showtime -%{_datadir}/glib-2.0/schemas/org.ubuntubudgie.plugins.budgie-showtime.gschema.xml +%{_libdir}/budgie-desktop/raven-plugins/org.ubuntubudgie.raven.widget.budgie-showtime/* %{_datadir}/pixmaps/showtimenew-symbolic.svg +%{_metainfodir}/org.ubuntubudgie.showtime.metainfo.xml %files -n budgie-applet-takeabreak %{_libdir}/budgie-desktop/plugins/budgie-takeabreak %{_datadir}/glib-2.0/schemas/org.ubuntubudgie.plugins.takeabreak.gschema.xml +%{_datadir}/glib-2.0/schemas/org.ubuntubudgie.raven.widget.budgie-showtime.gschema.xml %{_datadir}/pixmaps/takeabreak*.svg +%{_metainfodir}/org.ubuntubudgie.takeabreak.metainfo.xml %files -n budgie-applet-visualspace %config %{_sysconfdir}/xdg/autostart/visualspace-autostart.desktop %{_libdir}/budgie-desktop/plugins/budgie-visualspace %{_datadir}/glib-2.0/schemas/org.ubuntubudgie.plugins.budgie-visualspace.gschema.xml %{_datadir}/pixmaps/visualspace-symbolic.svg +%{_metainfodir}/org.ubuntubudgie.visualspace.metainfo.xml %files -n budgie-applet-wallstreet %config %{_sysconfdir}/xdg/autostart/wallstreet-autostart.desktop @@ -406,42 +354,18 @@ rm -f %{buildroot}%{_bindir}/quickchar %{_datadir}/budgie-desktop/budgie-weathershow/weather_icons/* %{_datadir}/glib-2.0/schemas/org.ubuntubudgie.plugins.weathershow.gschema.xml %{_datadir}/pixmaps/budgie-wticon-symbolic.svg - -%files -n budgie-applet-window-shuffler -%config %{_sysconfdir}/xdg/autostart/layoutspopup-autostart.desktop -%config %{_sysconfdir}/xdg/autostart/dragsnap-autostart.desktop -%config %{_sysconfdir}/xdg/autostart/shuffler*.desktop -%{_libdir}/budgie-window-shuffler -%{_datadir}/applications/org.ubuntubudgie.shufflercontrol.desktop -%{_datadir}/icons/hicolor/scalable/apps/org.ubuntubudgie.shuffler-control.svg -%{_datadir}/glib-2.0/schemas/org.ubuntubudgie.windowshuffler.gschema.xml -%{_datadir}/glib-2.0/schemas/org.ubuntubudgie.plugins.budgie-shufflerapplet.gschema.xml -%{_datadir}/pixmaps/shuffler-*.svg -%{_datadir}/pixmaps/shufflerapplet-*.svg -%{_datadir}/pixmaps/dragsnapimg*.svg -%{_libdir}/budgie-desktop/plugins/budgie-window-shuffler/ShufflerAPplet.plugin -%{_libdir}/budgie-desktop/plugins/budgie-window-shuffler/libshufflerapplet.so -%{_datadir}/metainfo/org.ubuntubudgie.shufflercontrol.metainfo.xml - -%files -n budgie-applet-workspace-stopwatch -%{_libdir}/budgie-desktop/plugins/budgie-workspace-stopwatch -%{_datadir}/pixmaps/budgie-wstopwatch-symbolic.svg - -%files -n budgie-applet-wpreviews -%config %{_sysconfdir}/xdg/autostart/previews-*.desktop -%{_libdir}/budgie-previews -%{_datadir}/applications/org.ubuntubudgie.previewscontrols.desktop -%{_datadir}/metainfo/org.ubuntubudgie.previewscontrols.metainfo.xml -%{_datadir}/glib-2.0/schemas/org.ubuntubudgie.budgie-wpreviews.gschema.xml -%{_datadir}/pixmaps/budgie_wpreviews_*.png -%{_datadir}/icons/hicolor/scalable/apps/org.ubuntubudgie.budgiewpreviews.svg +%{_metainfodir}/org.ubuntubudgie.weathershow.metainfo.xml %files -n budgie-applet-wswitcher -%{_libdir}/budgie-desktop/plugins/budgie-wswitcher +%{_libdir}/budgie-desktop/raven-plugins/org.ubuntubudgie.raven.widget.budgie-wswitcher/* %{_datadir}/glib-2.0/schemas/org.ubuntubudgie.plugins.budgie-wswitcher.gschema.xml %{_datadir}/pixmaps/budgie-wsw-symbolic.svg +%{_metainfodir}/org.ubuntubudgie.wswitcher.metainfo.xml %changelog +* Tue Jun 02 2026 Owen Zimmerman - 2.2.3-1 +- Update for 2.2.3 + * Thu Jun 09 2022 Cappy Ishihara - 1.4.0-1 - Updated to 1.4.0 - Added requirements for Workspace Overview diff --git a/anda/desktops/cagebreak/cagebreak.spec b/anda/desktops/cagebreak/cagebreak.spec index f939cb8ec0..c34a0927b5 100644 --- a/anda/desktops/cagebreak/cagebreak.spec +++ b/anda/desktops/cagebreak/cagebreak.spec @@ -1,11 +1,11 @@ -%global tag 3.1.0 +%global tag 3.2.1 %global forgeurl https://github.com/project-repo/cagebreak %forgemeta Name: cagebreak Version: %{tag} Release: 1%{?dist} -Summary: A wayland tiling compositor inspired by Ratpoison +Summary: A wayland tiling compositor inspired by Ratpoison License: MIT URL: %{forgeurl} @@ -16,7 +16,7 @@ Packager: metcya BuildRequires: meson BuildRequires: gcc BuildRequires: scdoc -BuildRequires: pkgconfig(wlroots-0.19) +BuildRequires: pkgconfig(wlroots-0.20) BuildRequires: pkgconfig(wayland-protocols) BuildRequires: pkgconfig(wayland-server) BuildRequires: pkgconfig(wayland-cursor) @@ -43,7 +43,7 @@ conceptually based on the X11 window manager ratpoison. %build %meson -Dxwayland=true -Dman-pages=true -%meson_build +%meson_build %install %meson_install diff --git a/anda/desktops/driftwm/driftwm.spec b/anda/desktops/driftwm/driftwm.spec index 30a2224988..db1e4f82ec 100644 --- a/anda/desktops/driftwm/driftwm.spec +++ b/anda/desktops/driftwm/driftwm.spec @@ -1,5 +1,5 @@ Name: driftwm -Version: 0.1.2 +Version: 0.11.0 Release: 1%{?dist} Summary: A trackpad-first infinite canvas Wayland compositor License: GPL-3.0-or-later @@ -31,6 +31,15 @@ BuildRequires: mesa-libgbm-devel export PREFIX=/usr %make_install +%post +%systemd_user_post driftwm.service + +%preun +%systemd_user_preun driftwm.service + +%postun +%systemd_user_postun_with_restart driftwm.service + %files %doc README.md %license LICENSE LICENSE.dependencies @@ -38,8 +47,13 @@ export PREFIX=/usr %{_bindir}/driftwm-session %{_datadir}/wayland-sessions/driftwm.desktop %{_datadir}/xdg-desktop-portal/driftwm-portals.conf -%{_sysconfdir}/driftwm/config.toml +%{_sysconfdir}/driftwm/config.reference.toml +%{_datadir}/driftwm/wallpapers/animated/*.glsl +%{_datadir}/driftwm/wallpapers/static/*.glsl +%{_datadir}/driftwm/wallpapers/textured/*.glsl %{_datadir}/driftwm/wallpapers/*.glsl +%{_userunitdir}/driftwm-shutdown.target +%{_userunitdir}/driftwm.service %changelog * Tue Mar 17 2026 Owen Zimmerman - 0.1.0-1 diff --git a/anda/desktops/elementary/capnet-assist/anda.hcl b/anda/desktops/elementary/capnet-assist/anda.hcl new file mode 100644 index 0000000000..644f0f79b1 --- /dev/null +++ b/anda/desktops/elementary/capnet-assist/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "capnet-assist.spec" + } +} diff --git a/anda/desktops/elementary/capnet-assist/capnet-assist.spec b/anda/desktops/elementary/capnet-assist/capnet-assist.spec new file mode 100644 index 0000000000..85d9f8808c --- /dev/null +++ b/anda/desktops/elementary/capnet-assist/capnet-assist.spec @@ -0,0 +1,50 @@ +%global appid io.elementary.capnet-assist + +Name: capnet-assist +Version: 8.0.2 +Release: 1%?dist +Summary: Captive Network Assistant automatically opens to help you get connected +License: GPL-3.0-only +URL: https://github.com/elementary/capnet-assist +Source0: %url/archive/refs/tags/%version.tar.gz +BuildRequires: meson gettext vala desktop-file-utils +BuildRequires: pkgconfig(gcr-4) +BuildRequires: pkgconfig(gio-2.0) +BuildRequires: pkgconfig(glib-2.0) +BuildRequires: pkgconfig(gobject-2.0) +BuildRequires: pkgconfig(granite-7) >= 7.0.0 +BuildRequires: pkgconfig(gtk4) +BuildRequires: pkgconfig(libadwaita-1) >= 1.0.0 +BuildRequires: pkgconfig(webkitgtk-6.0) + +%description +Log into captive portals—like Wi-Fi networks at coffee shops, airports, and trains—with ease. Captive Network Assistant automatically opens to help you get connected. + +%prep +%autosetup + +%build +%meson +%meson_build + +%install +%meson_install + +%terra_appstream -o %buildroot%_metainfodir/%appid.metainfo.xml +%find_lang %appid + +%check +%desktop_file_validate %buildroot%_appsdir/%appid.desktop + +%files -f %appid.lang +%doc README.md +%license COPYING +%_bindir/%appid +%_appsdir/%appid.desktop +%_datadir/glib-2.0/schemas/%appid.gschema.xml +%_hicolordir/*/apps/%appid.svg +%_metainfodir/%appid.metainfo.xml + +%changelog +* Tue Apr 07 2026 madonuko - 8.0.2-1 +- Initial package. diff --git a/anda/desktops/elementary/capnet-assist/update.rhai b/anda/desktops/elementary/capnet-assist/update.rhai new file mode 100644 index 0000000000..fc7813e120 --- /dev/null +++ b/anda/desktops/elementary/capnet-assist/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("elementary/capnet-assist")); diff --git a/anda/desktops/gnome/gnome-shell-extension-appmenu-is-back/gnome-shell-extension-appmenu-is-back.spec b/anda/desktops/gnome/gnome-shell-extension-appmenu-is-back/gnome-shell-extension-appmenu-is-back.spec index c9adbfaafb..7e6a391c8c 100644 --- a/anda/desktops/gnome/gnome-shell-extension-appmenu-is-back/gnome-shell-extension-appmenu-is-back.spec +++ b/anda/desktops/gnome/gnome-shell-extension-appmenu-is-back/gnome-shell-extension-appmenu-is-back.spec @@ -3,7 +3,7 @@ Name: gnome-shell-extension-%{extension} Version: 12 -Release: 3%?dist +Release: 4%{?dist} Summary: GNOME Shell extension to bring back the app menu License: GPL-3.0-only URL: https://github.com/fthx/appmenu-is-back @@ -12,7 +12,7 @@ BuildArch: noarch Source0: https://github.com/fthx/appmenu-is-back/archive/refs/tags/v%{version}.tar.gz -Requires: (gnome-shell >= 48~ with gnome-shell < 50~) +Requires: gnome-shell >= 48~ Recommends: gnome-extensions-app %description diff --git a/anda/desktops/gnome/gnome-shell-extension-battery_time/gnome-shell-extension-battery_time.spec b/anda/desktops/gnome/gnome-shell-extension-battery_time/gnome-shell-extension-battery_time.spec index 5da29b0b8d..cc519e905a 100644 --- a/anda/desktops/gnome/gnome-shell-extension-battery_time/gnome-shell-extension-battery_time.spec +++ b/anda/desktops/gnome/gnome-shell-extension-battery_time/gnome-shell-extension-battery_time.spec @@ -1,13 +1,13 @@ -%global commit 0df5f952843a296bf9f9b61b36c5fae5d851700b -%global commit_date 20250925 +%global commit bb8f2e646679f592bd50a175ea784f1a1d69dc8b +%global commit_date 20260519 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global extension battery_time -%global uuid %{extension}@pomoke +%global uuid %{extension}@typeof.pw Name: gnome-shell-extension-%{extension} Version: 0~%{commit_date}git.%{shortcommit} -Release: 2%?dist +Release: 2%{?dist} Summary: Battery remaining time extension for GNOME Shell License: GPL-2.0-only URL: https://github.com/pomoke/battery_time @@ -18,7 +18,7 @@ Source0: %url/archive/%commit/battery_time-%commit.tar.gz # License declared in README Source1: https://scancode-licensedb.aboutcode.org/gpl-2.0.LICENSE -Requires: (gnome-shell >= 48~ with gnome-shell < 50~) +Requires: gnome-shell >= 48~ Recommends: gnome-extensions-app Packager: Owen Zimmerman diff --git a/anda/desktops/gnome/gnome-shell-extension-gpu-supergfxctl-switch/anda.hcl b/anda/desktops/gnome/gnome-shell-extension-gpu-supergfxctl-switch/anda.hcl deleted file mode 100644 index 3870cb13d0..0000000000 --- a/anda/desktops/gnome/gnome-shell-extension-gpu-supergfxctl-switch/anda.hcl +++ /dev/null @@ -1,6 +0,0 @@ -project pkg { - arches = ["x86_64"] - rpm { - spec = "gnome-shell-extension-gpu-supergfxctl-switch.spec" - } -} diff --git a/anda/desktops/gnome/gnome-shell-extension-gpu-supergfxctl-switch/gnome-shell-extension-gpu-supergfxctl-switch.spec b/anda/desktops/gnome/gnome-shell-extension-gpu-supergfxctl-switch/gnome-shell-extension-gpu-supergfxctl-switch.spec deleted file mode 100644 index bcf2bd1c92..0000000000 --- a/anda/desktops/gnome/gnome-shell-extension-gpu-supergfxctl-switch/gnome-shell-extension-gpu-supergfxctl-switch.spec +++ /dev/null @@ -1,39 +0,0 @@ -%global commit 1de26db2ea4166fdca85306300b12bdc24f2c955 -%global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20250925 -%global ver 11 -%global extension gpu-switcher-supergfxctl -%global uuid %{extension}@chikobara.github.io - -Name: gnome-shell-extension-%{extension} -Version: %ver^%commit_date.%shortcommit -Release: 2%?dist -Summary: GPU Profile switcher Gnome-Shell-Extension for ASUS laptops using Supergfxctl -License: GPL-3.0-only -URL: https://github.com/chikobara/GPU-Switcher-Supergfxctl - -Source0: %url/archive/%commit.tar.gz - -Requires: (gnome-shell >= 48~ with gnome-shell < 50~) asusctl supergfxctl -Recommends: gnome-extensions-app - -BuildArch: noarch - -%description -GPU Profile switcher Gnome-Shell-Extension for ASUS laptops using Supergfxctl - -%prep -%autosetup -n GPU-Switcher-Supergfxctl-%{commit} -p1 - -%install -install -Dm644 metadata.json %{buildroot}%{_gnomeextensionsdir}/metadata.json -install -Dm644 extension.js %{buildroot}%{_gnomeextensionsdir}/extension.js - -%files -%license LICENSE -%doc README.md -%{_gnomeextensionsdir} - -%changelog -* Mon Oct 27 2025 june-fish - 11 -- Initial Package diff --git a/anda/desktops/gnome/gnome-shell-extension-gpu-supergfxctl-switch/update.rhai b/anda/desktops/gnome/gnome-shell-extension-gpu-supergfxctl-switch/update.rhai deleted file mode 100644 index 10ce2bdccd..0000000000 --- a/anda/desktops/gnome/gnome-shell-extension-gpu-supergfxctl-switch/update.rhai +++ /dev/null @@ -1,9 +0,0 @@ -if filters.contains("nightly") { - rpm.global("commit", gh_commit("chikobara/GPU-Switcher-Supergfxctl")); - if rpm.changed() { - let v = find("\"version\": ([.\\d]+)\n", gh_rawfile("chikobara/GPU-Switcher-Supergfxctl", "main", "metadata.json"), 1); - rpm.global("ver", v); - rpm.global("commit_date", date()); - rpm.release(); - } -} diff --git a/anda/desktops/gnome/gnome-shell-extension-grand-theft-focus/gnome-shell-extension-grand-theft-focus.spec b/anda/desktops/gnome/gnome-shell-extension-grand-theft-focus/gnome-shell-extension-grand-theft-focus.spec index 928de9d56d..cf0c9db1ad 100644 --- a/anda/desktops/gnome/gnome-shell-extension-grand-theft-focus/gnome-shell-extension-grand-theft-focus.spec +++ b/anda/desktops/gnome/gnome-shell-extension-grand-theft-focus/gnome-shell-extension-grand-theft-focus.spec @@ -1,9 +1,9 @@ %global extension grand-theft-focus -%global uuid %{extension}@zalckos +%global uuid %{extension}@zalckos.github.com Name: gnome-shell-extension-%{extension} -Version: 9 -Release: 3%?dist +Version: 10 +Release: 3%{?dist} Summary: GNOME extension that removes the 'Window is ready' notification and brings the window into focus instead License: AGPL-3.0-only URL: https://github.com/zalckos/GrandTheftFocus @@ -12,7 +12,7 @@ BuildArch: noarch Source0: https://github.com/zalckos/GrandTheftFocus/archive/refs/tags/v%version.tar.gz -Requires: (gnome-shell >= 48~ with gnome-shell < 50~) +Requires: gnome-shell >= 48~ Recommends: gnome-extensions-app Packager: Owen Zimmerman diff --git a/anda/desktops/gnome/gnome-shell-extension-grand-theft-focus/update.rhai b/anda/desktops/gnome/gnome-shell-extension-grand-theft-focus/update.rhai index 9c32bed9ab..d2933c6ae8 100644 --- a/anda/desktops/gnome/gnome-shell-extension-grand-theft-focus/update.rhai +++ b/anda/desktops/gnome/gnome-shell-extension-grand-theft-focus/update.rhai @@ -1 +1 @@ -rpm.version(gh_tag("zalckos/GrandTheftFocus")); +rpm.version(gnome_extensions("grand-theft-focus@zalckos.github.com")); diff --git a/anda/desktops/gnome/gnome-shell-extension-multi-monitors-bar/gnome-shell-extension-multi-monitors-bar.spec b/anda/desktops/gnome/gnome-shell-extension-multi-monitors-bar/gnome-shell-extension-multi-monitors-bar.spec index 2105e365a6..9cfda1abb6 100644 --- a/anda/desktops/gnome/gnome-shell-extension-multi-monitors-bar/gnome-shell-extension-multi-monitors-bar.spec +++ b/anda/desktops/gnome/gnome-shell-extension-multi-monitors-bar/gnome-shell-extension-multi-monitors-bar.spec @@ -1,5 +1,5 @@ -%global commit 376fe37ca7e6b8535fa7de1629cdca5d311cef88 -%global commit_date 20260328 +%global commit bd8475a3f103360945450a9fa8e8cf32034527b6 +%global commit_date 20260610 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global extension multi-monitors-bar @@ -17,7 +17,7 @@ BuildArch: noarch Source0: %url/archive/%commit/multi-monitors-bar_fapv2-%commit.tar.gz # README declared the license, but they do not provide a license file -Requires: (gnome-shell >= 48~ with gnome-shell < 50~) +Requires: gnome-shell >= 48~ Recommends: gnome-extensions-app Packager: Owen Zimmerman diff --git a/anda/desktops/gnome/gnome-shell-extension-vicinae/gnome-shell-extension-vicinae.spec b/anda/desktops/gnome/gnome-shell-extension-vicinae/gnome-shell-extension-vicinae.spec index f4a13d56fd..2cef2a42db 100644 --- a/anda/desktops/gnome/gnome-shell-extension-vicinae/gnome-shell-extension-vicinae.spec +++ b/anda/desktops/gnome/gnome-shell-extension-vicinae/gnome-shell-extension-vicinae.spec @@ -1,7 +1,7 @@ %global uuid vicinae@dagimg-dot.netlify.app Name: gnome-shell-extension-vicinae -Version: 1.6.1 +Version: 1.6.2 Release: 1%{?dist} License: MIT URL: https://github.com/dagimg-dot/vicinae-gnome-extension @@ -12,7 +12,7 @@ Packager: metcya BuildArch: noarch BuildRequires: bun-bin glib2-devel -Requires: (gnome-shell >= 48~ with gnome-shell < 50~) +Requires: gnome-shell >= 48~ Requires: vicinae Recommends: gnome-extensions-app Provides: gnome-shell-extension-vicinae-gnome-extension @@ -22,7 +22,7 @@ Companion GNOME extension for Vicinae launcher with clipboard monitoring, window management APIs, and paste-to-active-window capabilities. %prep -%autosetup -n vicinae-gnome-extension-%{version} +%autosetup -n gnome-extension-%{version} %build %{__bun} i && %{__bun} run build diff --git a/anda/desktops/gnome/gnome-shell/gnome-shell.spec b/anda/desktops/gnome/gnome-shell/gnome-shell.spec index 7692aec5b0..f22b79af03 100644 --- a/anda/desktops/gnome/gnome-shell/gnome-shell.spec +++ b/anda/desktops/gnome/gnome-shell/gnome-shell.spec @@ -1,6 +1,6 @@ %global tarball_version %%(echo %{version} | tr '~' '.') %global major_version 50 -%global minor_version 0 +%global minor_version 2 %if 0%{?rhel} %global portal_helper 0 @@ -10,7 +10,7 @@ Name: gnome-shell Version: %{major_version}.%{minor_version} -Release: 1%{?dist}.switcheroo +Release: 2%{?dist}.switcheroo Summary: Window management and application launching for GNOME Provides: gnome-shell.switcheroo = %version-%release diff --git a/anda/desktops/hyprland/hyprutils/hyprutils.nightly.spec b/anda/desktops/hyprland/hyprutils/hyprutils.nightly.spec index e2663047c0..31654ad851 100644 --- a/anda/desktops/hyprland/hyprutils/hyprutils.nightly.spec +++ b/anda/desktops/hyprland/hyprutils/hyprutils.nightly.spec @@ -1,10 +1,10 @@ #? https://src.fedoraproject.org/rpms/hyprutils/blob/rawhide/f/hyprutils.spec %global realname hyprutils -%global ver 0.11.1 +%global ver 0.13.1 -%global commit 762166b516432ce4b02bfbae365f1daa6f88f76d -%global commit_date 20260327 +%global commit 40ede2e7bdec80ba5d4c443160d905e9f841ae5f +%global commit_date 20260601 %global shortcommit %{sub %commit 1 7} Name: %realname.nightly diff --git a/anda/desktops/hyprland/hyprwayland-scanner/hyprwayland-scanner.nightly.spec b/anda/desktops/hyprland/hyprwayland-scanner/hyprwayland-scanner.nightly.spec index ed74bb36cd..03001fbc1f 100644 --- a/anda/desktops/hyprland/hyprwayland-scanner/hyprwayland-scanner.nightly.spec +++ b/anda/desktops/hyprland/hyprwayland-scanner/hyprwayland-scanner.nightly.spec @@ -1,10 +1,10 @@ #? https://src.fedoraproject.org/rpms/hyprwayland-scanner/blob/rawhide/f/hyprwayland-scanner.spec %global realname hyprwayland-scanner -%global ver 0.4.5 -%global commit 0a692d4a645165eebd65f109146b8861e3a925e7 +%global ver 0.4.6 +%global commit b8632713a6beaf28b56f2a7b0ab2fb7088dbb404 %global shortcommit %{sub %commit 1 7} -%global commit_date 20260303 +%global commit_date 20260426 Name: %realname.nightly Version: %ver^%{commit_date}git.%shortcommit diff --git a/anda/desktops/kde/lightdm-kde-greeter/lightdm-kde-greeter.spec b/anda/desktops/kde/lightdm-kde-greeter/lightdm-kde-greeter.spec index c3f69401c9..c0ef17ec79 100644 --- a/anda/desktops/kde/lightdm-kde-greeter/lightdm-kde-greeter.spec +++ b/anda/desktops/kde/lightdm-kde-greeter/lightdm-kde-greeter.spec @@ -1,7 +1,7 @@ -%global commit 447d0a976d6512af692009ab3faafeb014a87756 +%global commit b58d624095da102fef99b5825ad6dc78a5cec5a1 Name: lightdm-kde-greeter -Version: 6.1.5 +Version: 6.1.6 Release: 1%{?dist} Summary: Login screen using the LightDM framework License: GPL-3.0-or-later diff --git a/anda/desktops/kde/plasma6-applet-appgrid/anda.hcl b/anda/desktops/kde/plasma6-applet-appgrid/anda.hcl new file mode 100644 index 0000000000..efc7b5f9be --- /dev/null +++ b/anda/desktops/kde/plasma6-applet-appgrid/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "plasma6-applet-appgrid.spec" + } +} diff --git a/anda/desktops/kde/plasma6-applet-appgrid/plasma6-applet-appgrid.spec b/anda/desktops/kde/plasma6-applet-appgrid/plasma6-applet-appgrid.spec new file mode 100644 index 0000000000..23a520316f --- /dev/null +++ b/anda/desktops/kde/plasma6-applet-appgrid/plasma6-applet-appgrid.spec @@ -0,0 +1,80 @@ +Name: plasma6-applet-appgrid +Version: 1.9.0 +Release: 1%{?dist} +Summary: A modern fullscreen application launcher for KDE Plasma +# Main code: GPL-2.0-or-later +# dev.xarbit.appgrid.metainfo.xml: CC0-1.0 +License: GPL-2.0-or-later AND CC0-1.0 +URL: https://appgrid.xarbit.dev +Packager: hilltty <49129010+hilltty@users.noreply.github.com> +Source0: https://github.com/xarbit/plasma6-applet-appgrid/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz + +BuildRequires: cmake +BuildRequires: extra-cmake-modules +BuildRequires: gcc-c++ +BuildRequires: gettext +BuildRequires: kf6-rpm-macros +BuildRequires: cmake(Qt6Quick) +BuildRequires: cmake(Qt6Gui) +BuildRequires: cmake(Qt6DBus) +BuildRequires: cmake(KF6Service) +BuildRequires: cmake(KF6I18n) +BuildRequires: cmake(KF6CoreAddons) +BuildRequires: cmake(KF6KIO) +BuildRequires: cmake(KF6WindowSystem) +BuildRequires: cmake(KF6Package) +BuildRequires: cmake(KF6Runner) +BuildRequires: cmake(Plasma) +BuildRequires: cmake(PlasmaQuick) +BuildRequires: cmake(LayerShellQt) +BuildRequires: cmake(KF6IconThemes) +BuildRequires: cmake(PlasmaActivities) +BuildRequires: cmake(LibKWorkspace) + +Requires: plasma-workspace +Requires: plasma-desktop +Requires: kf6-kiconthemes + +%description +A modern application launcher for KDE Plasma. It offers unified +search, favorites, categories, and both a panel and a centered popup +presentation. + +%prep +%autosetup -n plasma6-applet-appgrid-%{version} + +%conf +%cmake -DAPPGRID_VERSION_OVERRIDE=%{version} + +%build +%cmake_build + +%install +%cmake_install +%find_lang dev.xarbit.appgrid --with-kde + +%files -f dev.xarbit.appgrid.lang +%license LICENSE +%doc README.md +%{_libdir}/qt6/plugins/plasma/applets/dev.xarbit.appgrid.so +%{_libdir}/qt6/plugins/plasma/applets/dev.xarbit.appgrid.panel.so +%{_datadir}/plasma/plasmoids/dev.xarbit.appgrid/ +%{_datadir}/plasma/plasmoids/dev.xarbit.appgrid.panel/ +%{_metainfodir}/dev.xarbit.appgrid.metainfo.xml +%{_datadir}/icons/hicolor/scalable/apps/dev.xarbit.appgrid.svg + +%changelog +* Fri May 29 2026 hilltty <49129010+hilltty@users.noreply.github.com> - 1.8.5-1 +- pass version to cmake, update description + +* Mon May 25 2026 hilltty <49129010+hilltty@users.noreply.github.com> - 1.8.0-1 +- fix: add cmake(PlasmaActivities) BuildRequires, add icon to files + +* Tue May 19 2026 hilltty <49129010+hilltty@users.noreply.github.com> - 1.7.10-1 +- Sync with upstream: add icon to files, update Requires, update URL + +* Sat Apr 25 2026 hilltty <49129010+hilltty@users.noreply.github.com> - 1.7.8-1 +- Update to 1.7.8 + +* Thu Apr 24 2026 hilltty <49129010+hilltty@users.noreply.github.com> - 1.2.1-1 +- Initial package diff --git a/anda/desktops/kde/plasma6-applet-appgrid/update.rhai b/anda/desktops/kde/plasma6-applet-appgrid/update.rhai new file mode 100644 index 0000000000..acfe50ecd6 --- /dev/null +++ b/anda/desktops/kde/plasma6-applet-appgrid/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("xarbit/plasma6-applet-appgrid")); diff --git a/anda/desktops/lomiri-unity/frame/frame.spec b/anda/desktops/lomiri-unity/frame/frame.spec index eff103791c..ac7da8587c 100644 --- a/anda/desktops/lomiri-unity/frame/frame.spec +++ b/anda/desktops/lomiri-unity/frame/frame.spec @@ -33,7 +33,7 @@ developing applications that use %{name}. %prep %autosetup -c -p1 -%build +%conf NOCONFIGURE=1 \ ./autogen.sh @@ -44,6 +44,7 @@ export PYTHON --disable-silent-rules \ --disable-static +%build %make_build %install diff --git a/anda/desktops/lomiri-unity/geis/geis.spec b/anda/desktops/lomiri-unity/geis/geis.spec index a83c0dd4f4..94f5f302f8 100644 --- a/anda/desktops/lomiri-unity/geis/geis.spec +++ b/anda/desktops/lomiri-unity/geis/geis.spec @@ -37,7 +37,7 @@ developing applications that use %{name}. %prep %autosetup -n geis-%{version}+16.04.20160126 -p1 -%build +%conf NOCONFIGURE=1 \ ./autogen.sh @@ -48,6 +48,7 @@ export PYTHON --disable-silent-rules \ --disable-static +%build %make_build %install diff --git a/anda/desktops/lomiri-unity/libunity-misc/libunity-misc.spec b/anda/desktops/lomiri-unity/libunity-misc/libunity-misc.spec index 6398562321..9a20428285 100644 --- a/anda/desktops/lomiri-unity/libunity-misc/libunity-misc.spec +++ b/anda/desktops/lomiri-unity/libunity-misc/libunity-misc.spec @@ -32,14 +32,17 @@ developing applications that use %{name}. %prep %autosetup -n libunity-misc-%{version}+14.04.20140115 + +%conf find ./ -type f -exec sed -i 's/-Werror//' {} \; NOCONFIGURE=1 \ ./autogen.sh -%build %configure \ --disable-silent-rules \ --disable-static + +%build %make_build %install diff --git a/anda/desktops/lomiri-unity/lomiri-api/lomiri-api.spec b/anda/desktops/lomiri-unity/lomiri-api/lomiri-api.spec index f0738793e0..f3e9435f2e 100644 --- a/anda/desktops/lomiri-unity/lomiri-api/lomiri-api.spec +++ b/anda/desktops/lomiri-unity/lomiri-api/lomiri-api.spec @@ -3,8 +3,8 @@ %forgemeta Name: lomiri-api -Version: 0.3.0 -Release: 1%?dist +Version: 0.3.2 +Release: 1%{?dist} Summary: API for Lomiri License: LGPL-3.0-or-later diff --git a/anda/desktops/lomiri-unity/lomiri-app-launch/lomiri-app-launch.spec b/anda/desktops/lomiri-unity/lomiri-app-launch/lomiri-app-launch.spec index f5993637c6..4cf59a5276 100644 --- a/anda/desktops/lomiri-unity/lomiri-app-launch/lomiri-app-launch.spec +++ b/anda/desktops/lomiri-unity/lomiri-app-launch/lomiri-app-launch.spec @@ -1,5 +1,5 @@ %global forgeurl https://gitlab.com/ubports/development/core/lomiri-app-launch -%global commit f4b7c634dc4f95086dcda70113fbc2f6ce22eed7 +%global commit c40aaeecbc1a1634f961ed6ce2b5f5cb0e5196e3 %forgemeta Name: lomiri-app-launch diff --git a/anda/desktops/lomiri-unity/lomiri-download-manager/lomiri-download-manager.spec b/anda/desktops/lomiri-unity/lomiri-download-manager/lomiri-download-manager.spec index 96f8c635bb..3c5b75197a 100644 --- a/anda/desktops/lomiri-unity/lomiri-download-manager/lomiri-download-manager.spec +++ b/anda/desktops/lomiri-unity/lomiri-download-manager/lomiri-download-manager.spec @@ -1,10 +1,10 @@ %global forgeurl https://gitlab.com/ubports/development/core/lomiri-download-manager -%global commit ff2bc3a8f57b6124ca866c108c49aabcbe22bdf8 +%global commit 0939d480c72871b3270cc529e16902fd41bfdda5 %forgemeta Name: lomiri-download-manager -Version: 0.3.0 -Release: 1%?dist +Version: 0.3.1 +Release: 1%{?dist} Summary: Upload Download Manager for Lomiri License: LGPLv3 URL: https://gitlab.com/ubports/development/core/lomiri-download-manager diff --git a/anda/desktops/lomiri-unity/lomiri-settings-components/lomiri-settings-components.spec b/anda/desktops/lomiri-unity/lomiri-settings-components/lomiri-settings-components.spec index 5eb61ebeb3..9aaa1fe248 100644 --- a/anda/desktops/lomiri-unity/lomiri-settings-components/lomiri-settings-components.spec +++ b/anda/desktops/lomiri-unity/lomiri-settings-components/lomiri-settings-components.spec @@ -1,10 +1,10 @@ %global forgeurl https://gitlab.com/ubports/development/core/lomiri-settings-components -%global commit 91a0a1f94b90d8e3371ab47b769bcd058ac57a74 +%global commit 7bfc33d16ca234af8c88477cfbb2a95f3b7d8c9a %forgemeta Name: lomiri-settings-components -Version: 1.1.3 -Release: 1%?dist +Version: 1.2.0 +Release: 1%{?dist} Summary: The system settings components for Lomiri License: GPLv3 AND LGPLv3 URL: https://gitlab.com/ubports/development/core/lomiri-settings-components diff --git a/anda/desktops/lomiri-unity/lomiri-system-settings/lomiri-system-settings.spec b/anda/desktops/lomiri-unity/lomiri-system-settings/lomiri-system-settings.spec index 6d2f5b703f..b7b6728ff1 100644 --- a/anda/desktops/lomiri-unity/lomiri-system-settings/lomiri-system-settings.spec +++ b/anda/desktops/lomiri-unity/lomiri-system-settings/lomiri-system-settings.spec @@ -1,5 +1,5 @@ %global forgeurl https://gitlab.com/ubports/development/core/lomiri-system-settings -%global commit edf02eaf9794967ebb4bbe1efe6087a4e65aae17 +%global commit e6b254aec0b827849bccab1337c3ca030168f892 %forgemeta Name: lomiri-system-settings diff --git a/anda/desktops/lomiri-unity/lomiri-ui-toolkit/lomiri-ui-toolkit.spec b/anda/desktops/lomiri-unity/lomiri-ui-toolkit/lomiri-ui-toolkit.spec index 927e4f6b24..f21618a554 100644 --- a/anda/desktops/lomiri-unity/lomiri-ui-toolkit/lomiri-ui-toolkit.spec +++ b/anda/desktops/lomiri-unity/lomiri-ui-toolkit/lomiri-ui-toolkit.spec @@ -1,9 +1,9 @@ %global forgeurl https://gitlab.com/ubports/development/core/lomiri-ui-toolkit -%global commit 1b9919232ef77285765b6fdf3c963039f8a2e462 +%global commit 32d39be4d36abc5de7dc3cc8ab2aecb74a7505ce %forgemeta Name: lomiri-ui-toolkit -Version: 1.3.5904 +Version: 1.3.5906 Release: 1%{?dist} Summary: QML components to ease the creation of beautiful applications in QML for Lomiri diff --git a/anda/desktops/lomiri-unity/nux/nux.spec b/anda/desktops/lomiri-unity/nux/nux.spec index c42fe66afb..8ac24413bc 100644 --- a/anda/desktops/lomiri-unity/nux/nux.spec +++ b/anda/desktops/lomiri-unity/nux/nux.spec @@ -1,6 +1,6 @@ Name: nux Version: 4.0.8 -Release: %autorelease +Release: 1%{?dist} Summary: An OpenGL toolkit License: GPL-3.0-or-later AND LGPL-3.0-or-later AND LGPL-2.0-or-later @@ -51,7 +51,7 @@ Requires: %{name}%{?_isa} = %{version}-%{release} %autosetup -n nux-%{version} -p1 for i in debian/patches/*.patch; do patch -p1 < $i; done -%build +%conf NOCONFIGURE=1 \ ./autogen.sh @@ -60,6 +60,7 @@ NOCONFIGURE=1 \ --disable-silent-rules \ --disable-static +%build %make_build %install diff --git a/anda/desktops/lomiri-unity/nux/update.rhai b/anda/desktops/lomiri-unity/nux/update.rhai new file mode 100644 index 0000000000..a50d44a7f3 --- /dev/null +++ b/anda/desktops/lomiri-unity/nux/update.rhai @@ -0,0 +1,2 @@ +let v = find(`Latest version is ([\d.]+)`, get("https://launchpad.net/nux"), 1); +rpm.version(v); diff --git a/anda/desktops/lomiri-unity/unity-greeter/unity-greeter.spec b/anda/desktops/lomiri-unity/unity-greeter/unity-greeter.spec index bbd6de1364..b99b54067a 100644 --- a/anda/desktops/lomiri-unity/unity-greeter/unity-greeter.spec +++ b/anda/desktops/lomiri-unity/unity-greeter/unity-greeter.spec @@ -2,10 +2,10 @@ Name: unity-greeter Version: 25.04.1 -Release: 1%?dist +Release: 2%?dist Summary: Unity Greeter for Lightdm -License: GPL-3.0 +License: GPL-3.0-or-later URL: https://launchpad.net/unity-greeter Source0: http://archive.ubuntu.com/ubuntu/pool/universe/u/unity-greeter/unity-greeter_%version-0ubuntu%rn.tar.xz Patch1: 0001-Remove-libido.patch @@ -35,12 +35,13 @@ It is implemented as a LightDM greeter. %prep %autosetup -p1 -%build +%conf NOCONFIGURE=1 \ ./autogen.sh %configure --disable-static +%build %make_build %install diff --git a/anda/desktops/lomiri-unity/unity-scope-home/unity-scope-home.spec b/anda/desktops/lomiri-unity/unity-scope-home/unity-scope-home.spec index 3d9c527ee3..a0d6babb9a 100644 --- a/anda/desktops/lomiri-unity/unity-scope-home/unity-scope-home.spec +++ b/anda/desktops/lomiri-unity/unity-scope-home/unity-scope-home.spec @@ -1,7 +1,7 @@ Name: unity-scope-home Summary: Home scope that aggregates results from multiple scopes Version: 19.04.20190412 -Release: %autorelease +Release: 1%{?dist} License: GPL-3.0 URL: https://launchpad.net/unity-scope-home Source0: http://archive.ubuntu.com/ubuntu/pool/universe/u/unity-scope-home/unity-scope-home_6.8.2+%{version}.orig.tar.gz @@ -32,12 +32,14 @@ Theme and icons for Unity. %prep %autosetup -c -p1 -%build +%conf NOCONFIGURE=1 \ ./autogen.sh # Cannot build with Fedora's libunity %configure --disable-static + +%build %make_build %install diff --git a/anda/desktops/lomiri-unity/unity-shell/unity-shell.spec b/anda/desktops/lomiri-unity/unity-shell/unity-shell.spec index f5b6561ba7..acd54b5ad1 100644 --- a/anda/desktops/lomiri-unity/unity-shell/unity-shell.spec +++ b/anda/desktops/lomiri-unity/unity-shell/unity-shell.spec @@ -1,4 +1,4 @@ -%define archive unity_7.7.1+26.04.20260306-0ubuntu2.tar.xz +%define archive unity_7.7.1+26.04.20260306-0ubuntu3.tar.xz Name: unity-shell Version: 7.7.1 diff --git a/anda/desktops/mangowm/mangowm.spec b/anda/desktops/mangowm/mangowm.spec index 4f41e5362d..892252f518 100644 --- a/anda/desktops/mangowm/mangowm.spec +++ b/anda/desktops/mangowm/mangowm.spec @@ -1,7 +1,7 @@ %global mangowc_ver 0.12.5-1 Name: mangowm -Version: 0.12.8 +Version: 0.14.2 Release: 1%{?dist} Summary: A modern, lightweight, high-performance Wayland compositor built on dwl License: GPL-3.0-or-later AND MIT AND X11 AND CC0-1.0 @@ -21,7 +21,8 @@ BuildRequires: pkgconfig(xkbcommon) BuildRequires: pkgconfig(libinput) BuildRequires: pkgconfig(wayland-client) BuildRequires: pkgconfig(libpcre2-8) -BuildRequires: pkgconfig(scenefx-0.4) +BuildRequires: pkgconfig(libcjson) +BuildRequires: scenefx-devel Conflicts: mangowc < %{mangowc_ver} Obsoletes: mangowc < %{mangowc_ver} @@ -54,6 +55,7 @@ dwl — crafted for speed, flexibility, and a customizable desktop experience. %{_sysconfdir}/mango/config.conf %{_datadir}/wayland-sessions/mango.desktop %{_datadir}/xdg-desktop-portal/mango-portals.conf +%{_mandir}/man1/mmsg.1.* %changelog * Wed Mar 04 2026 metcya - 0.12.5-1 diff --git a/anda/desktops/mate/dock-applet/mate-dock-applet.spec b/anda/desktops/mate/dock-applet/mate-dock-applet.spec index 368cc92480..2aa2fd33f3 100644 --- a/anda/desktops/mate/dock-applet/mate-dock-applet.spec +++ b/anda/desktops/mate/dock-applet/mate-dock-applet.spec @@ -17,10 +17,12 @@ Packager: madonuko %prep %autosetup + +%conf autoreconf -fi +%configure --with-gtk3 %build -%configure --with-gtk3 %make_build %install diff --git a/anda/desktops/mate/indicators/datetime/ayatana-indicator-datetime.spec b/anda/desktops/mate/indicators/datetime/ayatana-indicator-datetime.spec index d66ec12981..b6fcbafcfd 100644 --- a/anda/desktops/mate/indicators/datetime/ayatana-indicator-datetime.spec +++ b/anda/desktops/mate/indicators/datetime/ayatana-indicator-datetime.spec @@ -1,7 +1,7 @@ Name: ayatana-indicator-datetime Summary: A GTK implementation of the StatusNotifierItem Specification -Version: 25.4.0 -Release: 1%?dist +Version: 26.6.0 +Release: 1%{?dist} License: GPL-3.0 URL: https://github.com/AyatanaIndicators/ayatana-indicator-datetime Source0: %{url}/archive/refs/tags/%{version}.tar.gz diff --git a/anda/desktops/mate/indicators/session/ayatana-indicator-session.spec b/anda/desktops/mate/indicators/session/ayatana-indicator-session.spec index 9ff7fc8609..a9013c86b2 100644 --- a/anda/desktops/mate/indicators/session/ayatana-indicator-session.spec +++ b/anda/desktops/mate/indicators/session/ayatana-indicator-session.spec @@ -1,7 +1,7 @@ Name: ayatana-indicator-session Summary: Ayatana Indicator Session Applet -Version: 24.5.1 -Release: 1%?dist +Version: 26.6.0 +Release: 1%{?dist} License: GPL-3.0 URL: https://github.com/AyatanaIndicators/ayatana-indicator-session Source0: %{url}/archive/refs/tags/%{version}.tar.gz diff --git a/anda/desktops/mate/indicators/sound/ayatana-indicator-sound.spec b/anda/desktops/mate/indicators/sound/ayatana-indicator-sound.spec index 46730f6994..8e64e6f3de 100644 --- a/anda/desktops/mate/indicators/sound/ayatana-indicator-sound.spec +++ b/anda/desktops/mate/indicators/sound/ayatana-indicator-sound.spec @@ -1,7 +1,7 @@ Name: ayatana-indicator-sound Summary: Ayatana Indicator Sound Applet -Version: 24.5.2 -Release: 1%?dist +Version: 24.5.3 +Release: 1%{?dist} License: GPLv3 URL: https://github.com/AyatanaIndicators/ayatana-indicator-sound Source0: %{url}/archive/refs/tags/%{version}.tar.gz diff --git a/anda/desktops/niri/iio-niri/iio-niri.spec b/anda/desktops/niri/iio-niri/iio-niri.spec index 74807f5854..a4499a06b6 100644 --- a/anda/desktops/niri/iio-niri/iio-niri.spec +++ b/anda/desktops/niri/iio-niri/iio-niri.spec @@ -1,5 +1,5 @@ Name: iio-niri -Version: 1.3.0 +Version: 2.2.0 Release: 1%{?dist} Summary: Autorotation daemon for niri URL: https://github.com/Zhaith-Izaliel/iio-niri @@ -30,5 +30,8 @@ Packager: Tulip Blossom %{_bindir}/%{name} %changelog +* Fri May 05 2026 Tulip Blossom - 2.0.0-1 +- Update package and add autoupdate definitions + * Fri Mar 13 2026 Tulip Blossom - Initial commit diff --git a/anda/desktops/niri/iio-niri/update.rhai b/anda/desktops/niri/iio-niri/update.rhai new file mode 100644 index 0000000000..b5009ad134 --- /dev/null +++ b/anda/desktops/niri/iio-niri/update.rhai @@ -0,0 +1 @@ +rpm.version(find(`version = "([\d.]+)"`, gh_rawfile("Zhaith-Izaliel/iio-niri", "master", "Cargo.toml"), 1)); diff --git a/anda/desktops/niri/nirius/nirius.spec b/anda/desktops/niri/nirius/nirius.spec index 102fd4f134..a1c743e44c 100644 --- a/anda/desktops/niri/nirius/nirius.spec +++ b/anda/desktops/niri/nirius/nirius.spec @@ -1,5 +1,5 @@ Name: nirius -Version: 0.6.1 +Version: 0.0.0 Release: 1%{?dist} Summary: Utility commands for niri diff --git a/anda/desktops/niri/nirius/update.rhai b/anda/desktops/niri/nirius/update.rhai new file mode 100644 index 0000000000..df37c6fbd8 --- /dev/null +++ b/anda/desktops/niri/nirius/update.rhai @@ -0,0 +1 @@ +rpm.version(sourcehut("~tsdh/nirius")); diff --git a/anda/desktops/noctalia-git/anda.hcl b/anda/desktops/noctalia-git/anda.hcl new file mode 100644 index 0000000000..bb739e75cb --- /dev/null +++ b/anda/desktops/noctalia-git/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "noctalia-git.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/desktops/noctalia-git/noctalia-git.spec b/anda/desktops/noctalia-git/noctalia-git.spec new file mode 100644 index 0000000000..015c9a1cc1 --- /dev/null +++ b/anda/desktops/noctalia-git/noctalia-git.spec @@ -0,0 +1,89 @@ +%global debug_package %{nil} + +%global ver 5.0.0 + +%global commit 65e127f88a528a953ca87ba9011665303ee35d24 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260608 + +Name: noctalia-git +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +Summary: A lightweight Wayland shell and bar built directly on Wayland + OpenGL ES, with no Qt or GTK dependency + +License: MIT +URL: https://github.com/noctalia-dev/noctalia +Source0: https://github.com/noctalia-dev/noctalia/archive/%{commit}/noctalia-%{commit}.tar.gz + +BuildRequires: meson +BuildRequires: gcc-c++ +BuildRequires: git +BuildRequires: pipewire-devel +BuildRequires: sdbus-cpp-devel +BuildRequires: pkgconfig(cairo) +BuildRequires: pkgconfig(egl) +BuildRequires: pkgconfig(freetype2) +BuildRequires: pkgconfig(fontconfig) +BuildRequires: pkgconfig(glesv2) +BuildRequires: pkgconfig(glib-2.0) +BuildRequires: pkgconfig(jemalloc) +BuildRequires: pkgconfig(libcurl) +BuildRequires: pkgconfig(libqalculate) +BuildRequires: pkgconfig(librsvg-2.0) +BuildRequires: pkgconfig(libwebp) +BuildRequires: pkgconfig(libxml-2.0) +BuildRequires: pkgconfig(pam) +BuildRequires: pkgconfig(pango) +BuildRequires: pkgconfig(polkit-gobject-1) +BuildRequires: pkgconfig(wayland-client) +BuildRequires: pkgconfig(wayland-protocols) +BuildRequires: pkgconfig(xkbcommon) + +Provides: desktop-notification-daemon +Provides: PolicyKit-authentication-agent + +Requires: hicolor-icon-theme +Requires: dejavu-sans-fonts +Requires: libwebp + +Recommends: ddcutil +Recommends: gpu-screen-recorder +Recommends: power-profiles-daemon + +Packager: Cypress Reed + +%description +A lightweight Wayland shell and bar built directly on Wayland + OpenGL ES, with no Qt or GTK dependency. + +%prep +%autosetup -n noctalia-%{commit} +# Manually insert commit hash +sed -i "s/'unknown'/'%{shortcommit}'/g" meson.build + +%conf +%meson + +%build +%meson_build + +%install +%meson_install +install -d %{buildroot}%{_licensedir}/%{name}/third_party +find third_party -type f \( -name "LICENSE*" -o -name "COPYING*" -o -name "NOTICE*" \) | while read -r file; do + # Create the destination subdirectory + dest_dir="%{buildroot}%{_licensedir}/%{name}/$(dirname "$file")" + install -d "$dest_dir" + # Copy the file to its specific subfolder + install -p -m 0644 "$file" "$dest_dir/" +done + +%files +%doc README.md +%license LICENSE +%{_licensedir}/%{name}/third_party/ +%{_bindir}/noctalia +%{_datadir}/noctalia/ + +%changelog +* Fri Jun 05 2026 Cypress Reed +- Port to terra from Fedora COPR lionheartp/Hyprland diff --git a/anda/desktops/noctalia-git/update.rhai b/anda/desktops/noctalia-git/update.rhai new file mode 100644 index 0000000000..5ebe190122 --- /dev/null +++ b/anda/desktops/noctalia-git/update.rhai @@ -0,0 +1,6 @@ +rpm.global("commit", get("https://api.github.com/repos/noctalia-dev/noctalia/commits/main").json().sha); +if rpm.changed() { + // rpm.global("ver", gh("noctalia-dev/noctalia")); + rpm.global("commit_date", date()); + rpm.release(); +} diff --git a/anda/desktops/noctalia-qs/VERSION_qt6-qtbase.txt b/anda/desktops/noctalia-qs/VERSION_qt6-qtbase.txt new file mode 100644 index 0000000000..fac714a322 --- /dev/null +++ b/anda/desktops/noctalia-qs/VERSION_qt6-qtbase.txt @@ -0,0 +1 @@ +6.11.1 diff --git a/anda/desktops/noctalia-qs/anda.hcl b/anda/desktops/noctalia-qs/anda.hcl index 2f51b5f5ef..96830e8080 100644 --- a/anda/desktops/noctalia-qs/anda.hcl +++ b/anda/desktops/noctalia-qs/anda.hcl @@ -1,5 +1,8 @@ project pkg { - rpm { - spec = "noctalia-qs.spec" - } + rpm { + spec = "noctalia-qs.spec" + } + labels { + updbranch = 1 + } } diff --git a/anda/desktops/noctalia-qs/noctalia-qs.spec b/anda/desktops/noctalia-qs/noctalia-qs.spec index 499277b82b..a7f26d713c 100644 --- a/anda/desktops/noctalia-qs/noctalia-qs.spec +++ b/anda/desktops/noctalia-qs/noctalia-qs.spec @@ -1,14 +1,14 @@ -%global commit 12dba9653ae2c0dd24bf2633e2572a8093b0df5e +%global commit fb0cc1557d8321fb2e3f34e94beddefe56211e04 Name: noctalia-qs -Version: 0.0.10 -Release: 2%{?dist} +Version: 0.0.12 +Release: 5%{?dist} Summary: Flexible QtQuick based desktop shell toolkit License: LGPL-3.0-only AND GPL-3.0-only URL: https://github.com/noctalia-dev/noctalia-qs Source0: https://github.com/noctalia-dev/noctalia-qs/archive/refs/tags/v%{version}.tar.gz -Packager: Willow C Reed +Packager: Cypress Reed BuildRequires: cmake BuildRequires: cmake(Qt6Core) @@ -73,12 +73,18 @@ Flexible QtQuick based desktop shell toolkit. %{_libdir}/qt6/qml/Quickshell %changelog -* Sun Mar 29 2026 Willow C Reed +* Thu Jun 04 2026 Cypress Reed +- Update email and name (was Willow Reed or Willow C Reed) (I'm official now!) + +* Thu May 21 2026 Cypress Reed +- Add update script so that release bumps when Qt updates its minor version, triggering a rebuild + +* Sun Mar 29 2026 Cypress Reed - Add provides for a polkit agent and desktop notification daemon (so gnome doesn't get installed) -* Thu Mar 05 2026 Willow C Reed -- Fix reision to actually be defined as a specific git commit since it never gets initialized rn +* Thu Mar 05 2026 Cypress Reed +- Fix revision to actually be defined as a specific git commit since it never gets initialized rn - Also fix that noctalia-qs is replacing quickshell overall and not just for noctlaia users -* Fri Feb 27 2026 Willow C Reed -- Initial commit based on quickshell spec \ No newline at end of file +* Fri Feb 27 2026 Cypress Reed +- Initial commit based on quickshell spec diff --git a/anda/desktops/noctalia-qs/update.rhai b/anda/desktops/noctalia-qs/update.rhai index 7872e1741f..d54c2b9e2d 100644 --- a/anda/desktops/noctalia-qs/update.rhai +++ b/anda/desktops/noctalia-qs/update.rhai @@ -1,7 +1,19 @@ -let release = get(`https://api.github.com/repos/noctalia-dev/noctalia-qs/tags`).json_arr()[0]; +import "andax/bump_extras.rhai" as bump; +import "andax/spec.rhai" as spec; -rpm.version(release.name); +let version = find(`quickshell VERSION "([\d.]+)"`, gh_rawfile("noctalia-dev/noctalia-qs", "master", "CMakeLists.txt"), 1); + +rpm.version(version); if rpm.changed() { - rpm.global("commit", release.commit.sha); + let commit = get(`https://api.github.com/repos/noctalia-dev/noctalia-qs/tags`).json_arr()[0].commit.sha; + rpm.global("commit", commit); +} + +open_file("anda/desktops/noctalia-qs/VERSION_qt6-qtbase.txt", "w").write(bump::bodhi("qt6-qtbase", bump::as_bodhi_ver(labels.branch))); // will trig rebuild when changed + +let dir = sub(`/[^/]+$`, "", __script_path); +if sh("[[ `git status " + dir + " --porcelain` ]] && exit 1 || exit 0", #{}).ctx.rc == 1 { + let rel = spec::get_release(rpm).parse_int(); + rpm.release(rel + 1); } \ No newline at end of file diff --git a/anda/desktops/noctalia-shell/noctalia-shell.spec b/anda/desktops/noctalia-shell/noctalia-shell.spec index 00306eb0b4..d8b15e45d4 100644 --- a/anda/desktops/noctalia-shell/noctalia-shell.spec +++ b/anda/desktops/noctalia-shell/noctalia-shell.spec @@ -1,7 +1,7 @@ %global debug_package %{nil} Name: noctalia-shell -Version: 4.7.1 +Version: 4.7.7 Release: 1%{?dist} Summary: A Quickshell-based custom shell setup @@ -23,7 +23,7 @@ Recommends: power-profiles-daemon Recommends: wlsunset Recommends: gpu-screen-recorder -Packager: Willow Reed +Packager: Cypress Reed %description A beautiful, minimal desktop shell for Wayland that actually gets out of your way. Built on Quickshell with a warm lavender aesthetic that you can easily customize to match your vibe. @@ -43,11 +43,14 @@ cp -r ./* %{buildroot}/etc/xdg/quickshell/noctalia-shell/ %{_sysconfdir}/xdg/quickshell/noctalia-shell/ %changelog -* Mon Mar 09 2026 Willow C Reed +* Thu Jun 04 2026 Cypress Reed +- Update email and name (was Willow Reed or Willow C Reed) (I'm official now!) + +* Mon Mar 09 2026 Cypress Reed - switch gpu-screen-recorder to be recommended as it's a plugin and not required anymore. also switched source to be based on version. -* Fri Feb 27 2026 Willow C Reed +* Fri Feb 27 2026 Cypress Reed - Change required quickshell to Noctalia's version -* Fri Jan 02 2026 Willow Reed +* Fri Jan 02 2026 Cypress Reed - Initial commit \ No newline at end of file diff --git a/anda/desktops/noctalia-shell/update.rhai b/anda/desktops/noctalia-shell/update.rhai index 1c9be28be7..b80a58a4e6 100644 --- a/anda/desktops/noctalia-shell/update.rhai +++ b/anda/desktops/noctalia-shell/update.rhai @@ -1 +1,6 @@ -rpm.version(gh("noctalia-dev/noctalia-shell")); +let v = gh("noctalia-dev/noctalia-shell"); +v.crop(1); + +if v < "5" { + rpm.version(v); +} \ No newline at end of file diff --git a/anda/desktops/satty/anda.hcl b/anda/desktops/satty/anda.hcl new file mode 100644 index 0000000000..2afc889c3f --- /dev/null +++ b/anda/desktops/satty/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "satty.spec" + } +} diff --git a/anda/desktops/satty/satty.spec b/anda/desktops/satty/satty.spec new file mode 100644 index 0000000000..e43cd2b270 --- /dev/null +++ b/anda/desktops/satty/satty.spec @@ -0,0 +1,51 @@ +Name: satty +Version: 0.21.1 +Release: 1%{?dist} +Summary: Modern screenshot annotation tool +URL: https://github.com/Satty-org/Satty +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz +BuildRequires: cargo-rpm-macros +BuildRequires: libadwaita-devel +BuildRequires: libepoxy-devel +SourceLicense: MPL-2.0 +License: %{SourceLicense} AND (MIT OR Apache-2.0) AND Unicode-3.0 AND Apache-2.0 AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (BSD-3-Clause OR Apache-2.0) AND CC0-1.0 AND (CC0-1.0 OR Apache-2.0) AND ISC AND MIT AND (MIT OR Apache-2.0) AND (MIT OR Apache-2.0 OR Zlib) AND (Unlicense OR MIT) AND Zlib AND (Zlib OR Apache-2.0 OR MIT) +Packager: Tulip Blossom + +%description +%{summary}. + +%pkg_completion -BeNfz + +%prep +%autosetup -n Satty-%{version} +%cargo_prep_online + +%build +%cargo_build -a +%{cargo_license_online -a} > LICENSE.dependencies + +%install +install -Dpm0755 -t %{buildroot}%{_bindir} ./target/rpm/satty +install -Dpm0644 -t %{buildroot}%{_appsdir}/ ./satty.desktop +install -Dpm0644 -t %{buildroot}%{_scalableiconsdir}/ ./assets/satty.svg +install -Dpm0644 -t %{buildroot}%{fish_completions_dir}/ ./completions/satty.fish +install -Dpm0644 -t %{buildroot}%{zsh_completions_dir}/ ./completions/_satty +install -Dpm0644 ./completions/satty.bash %{buildroot}%{bash_completions_dir}/satty +install -Dpm0644 -t %{buildroot}%{elvish_completions_dir}/ ./completions/satty.elv +install -Dpm0644 -t %{buildroot}%{nushell_completions_dir}/ ./completions/satty.nu +install -Dpm0644 -t %{buildroot}%{_metainfodir}/ ./org.satty.Satty.metainfo.xml + +%files +%doc README.md +%license LICENSE LICENSE.dependencies +%{_bindir}/%{name} +%{_appsdir}/satty.desktop +%{_scalableiconsdir}/satty.svg +%{_metainfodir}/org.satty.Satty.metainfo.xml + +%changelog +* Thu Jun 04 2026 Owen Zimmerman 0.21.0-1 +- Update for 0.21.0 + +* Sun Mar 29 2026 Tulip Blossom +- Initial commit diff --git a/anda/desktops/satty/update.rhai b/anda/desktops/satty/update.rhai new file mode 100644 index 0000000000..4cb90fd002 --- /dev/null +++ b/anda/desktops/satty/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("Satty-org/Satty")); diff --git a/anda/desktops/scroll/50-systemd-user.conf b/anda/desktops/scroll/50-systemd-user.conf new file mode 100644 index 0000000000..71207a438a --- /dev/null +++ b/anda/desktops/scroll/50-systemd-user.conf @@ -0,0 +1,16 @@ +# sway does not set DISPLAY/WAYLAND_DISPLAY in the systemd user environment +# See FS#63021 +# Adapted from xorg's 50-systemd-user.sh, which achieves a similar goal. + +# Upstream refuses to set XDG_CURRENT_DESKTOP so we have to. +exec systemctl --user set-environment XDG_CURRENT_DESKTOP=scroll +exec systemctl --user import-environment DISPLAY \ + SCROLLSOCK \ + WAYLAND_DISPLAY \ + XDG_CURRENT_DESKTOP + +exec hash dbus-update-activation-environment 2>/dev/null && \ + dbus-update-activation-environment --systemd DISPLAY \ + SCROLLSOCK \ + XDG_CURRENT_DESKTOP=scroll \ + WAYLAND_DISPLAY diff --git a/anda/desktops/scroll/anda.hcl b/anda/desktops/scroll/anda.hcl new file mode 100644 index 0000000000..5b0626f4d1 --- /dev/null +++ b/anda/desktops/scroll/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "scroll.spec" + } +} diff --git a/anda/desktops/scroll/scroll-portals.conf b/anda/desktops/scroll/scroll-portals.conf new file mode 100644 index 0000000000..aebea31a93 --- /dev/null +++ b/anda/desktops/scroll/scroll-portals.conf @@ -0,0 +1,5 @@ +[preferred] +default=gtk +org.freedesktop.impl.portal.ScreenCast=wlr +org.freedesktop.impl.portal.Screenshot=wlr +org.freedesktop.impl.portal.Inhibit=none diff --git a/anda/desktops/scroll/scroll.spec b/anda/desktops/scroll/scroll.spec new file mode 100644 index 0000000000..2f7cee24fb --- /dev/null +++ b/anda/desktops/scroll/scroll.spec @@ -0,0 +1,93 @@ +Name: scroll +Version: 1.12.15 +Release: 1%{?dist} +Summary: i3-compatible Wayland compositor (sway) with a PaperWM layout like niri or hyprscroller +License: MIT +URL: https://github.com/dawsers/scroll +Source0: %{url}/archive/refs/tags/%{version}.tar.gz +# https://aur.archlinux.org/cgit/aur.git/tree/?h=sway-scroll +Source1: 50-systemd-user.conf +Source2: scroll-portals.conf + +Packager: Owen Zimmerman + +BuildRequires: meson +BuildRequires: cmake +BuildRequires: ninja-build +BuildRequires: gcc +BuildRequires: pkgconfig(libdrm) +BuildRequires: pkgconfig(wayland-protocols) +BuildRequires: pkgconfig(wayland-server) +BuildRequires: pkgconfig(gbm) +BuildRequires: pkgconfig(glslang) +BuildRequires: pkgconfig(libseat) +BuildRequires: pkgconfig(hwdata) +BuildRequires: pkgconfig(libdisplay-info) +BuildRequires: pkgconfig(libliftoff) +BuildRequires: pkgconfig(xcb-renderutil) +BuildRequires: pkgconfig(xwayland) +BuildRequires: pkgconfig(xcb-ewmh) +BuildRequires: pkgconfig(xcb-errors) +BuildRequires: pkgconfig(json-c) +BuildRequires: pkgconfig(lua) +BuildRequires: pkgconfig(scdoc) +BuildRequires: pkgconfig(vulkan) +BuildRequires: pkgconfig(libinput) +BuildRequires: pkgconfig(libevdev) +BuildRequires: pkgconfig(xkbcommon) +BuildRequires: pkgconfig(pixman-1) +BuildRequires: pkgconfig(egl) +BuildRequires: pkgconfig(lcms2) +BuildRequires: pkgconfig(libpcre2-8) +BuildRequires: pkgconfig(cairo) +BuildRequires: pkgconfig(pango) +BuildRequires: pkgconfig(gdk-pixbuf-2.0) + +Provides: sway-scroll + +%description +%{summary}. + +%prep +%autosetup + +%pkg_completion -B scroll scrollbar scrollmsg +%pkg_completion -f scroll scrollmsg scrollnag +%pkg_completion -z scroll scrollmsg + +%build +%meson -D sd-bus-provider=libsystemd +%meson_build + +%install +%meson_install +install -Dm644 %{S:1} %{buildroot}%{_sysconfdir}/scroll/config.d/50-systemd-user.conf +install -Dm644 %{S:2} %{buildroot}%{_datadir}/xdg-desktop-portal/scroll-portals.conf + +%files +%doc README.md CONTRIBUTING.md +%license LICENSE +%{_bindir}/scroll +%{_bindir}/scrollbar +%{_bindir}/scrollmsg +%{_bindir}/scrollnag +%{_sysconfdir}/scroll/config +%{_sysconfdir}/scroll/config.d/50-systemd-user.conf +%{_datadir}/backgrounds/scroll/*png +%{_datadir}/xdg-desktop-portal/scroll-portals.conf +%{_iconsdir}/scroll.png +%{_mandir}/man1/scroll.1.* +%{_mandir}/man1/scrollmsg.1.* +%{_mandir}/man1/scrollnag.1.* +%{_mandir}/man5/scroll-bar.5.* +%{_mandir}/man5/scroll-input.5.* +%{_mandir}/man5/scroll-output.5.* +%{_mandir}/man5/scroll.5.* +%{_mandir}/man5/scrollnag.5.* +%{_mandir}/man7/scroll-ipc.7.* +%{_mandir}/man7/scrollbar-protocol.7.* +%{_datadir}/wayland-sessions/scroll.desktop + +%changelog +* Sun Apr 12 2026 Owen Zimmerman - 1.12.8-1 +- Initial commit diff --git a/anda/desktops/scroll/update.rhai b/anda/desktops/scroll/update.rhai new file mode 100644 index 0000000000..43498f46c8 --- /dev/null +++ b/anda/desktops/scroll/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("dawsers/scroll")); diff --git a/anda/desktops/singularity/libsingularity/anda.hcl b/anda/desktops/singularity/libsingularity/anda.hcl new file mode 100644 index 0000000000..05077c6ca3 --- /dev/null +++ b/anda/desktops/singularity/libsingularity/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "libsingularity.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/desktops/singularity/libsingularity/libsingularity.spec b/anda/desktops/singularity/libsingularity/libsingularity.spec new file mode 100644 index 0000000000..b182e3b472 --- /dev/null +++ b/anda/desktops/singularity/libsingularity/libsingularity.spec @@ -0,0 +1,57 @@ +%global commit ee69ac8e462224798c9c619b57a0699112fe7d7a +%global commit_date 20260613 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) + +Name: libsingularity +Summary: GTK4 application and widget framework for the Singularity Desktop Environment +Version: 0~%{commit_date}git.%{shortcommit} +Release: 1%{?dist} +License: LGPL-2.1-or-later +URL: https://github.com/singularityos-lab/libsingularity +Source0: %url/archive/%commit/libsingularity-%commit.tar.gz +BuildRequires: meson +BuildRequires: cmake +BuildRequires: gcc +BuildRequires: vala +BuildRequires: pkgconfig(gtk4) +BuildRequires: pkgconfig(gtk4-layer-shell-0) +BuildRequires: pkgconfig(gee-0.8) +BuildRequires: pkgconfig(json-glib-1.0) +BuildRequires: pkgconfig(libpeas-2) +BuildRequires: pkgconfig(libsoup-3.0) +BuildRequires: pkgconfig(gtksourceview-5) + +Packager: Owen Zimmerman + +%description +A GTK4 application and widget framework for the Singularity Desktop Environment. + +%prep +%autosetup -n libsingularity-%{commit} + +%package devel +%pkg_devel_files + +%conf +%meson + +%build +%meson_build + +%install +%meson_install +%{__ln_s} -f %{_datadir}/vala/vapi/singularity-1.0.vapi %{buildroot}%{_datadir}/vala/vapi/libsingularity-1.0.vapi + +%files +%license LICENSE +%doc README.md CONTRIBUTING.md +%{_libdir}/girepository-1.0/Singularity-1.0.typelib +%{_libdir}/libsingularity.so.0 +%{_libdir}/libsingularity.so.0.1.0 +%{_datadir}/vala/vapi/singularity-1.0.vapi +%{_datadir}/vala/vapi/libsingularity-1.0.vapi +%{_datadir}/vala/vapi/singularity-1.0.deps + +%changelog +* Sat May 16 2026 Owen Zimmerman +- Initial commit diff --git a/anda/desktops/singularity/libsingularity/update.rhai b/anda/desktops/singularity/libsingularity/update.rhai new file mode 100644 index 0000000000..6479219608 --- /dev/null +++ b/anda/desktops/singularity/libsingularity/update.rhai @@ -0,0 +1,5 @@ +rpm.global("commit", gh_commit("singularityos-lab/libsingularity")); +if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); +} diff --git a/anda/desktops/singularity/vetro/anda.hcl b/anda/desktops/singularity/vetro/anda.hcl new file mode 100644 index 0000000000..41a5f571be --- /dev/null +++ b/anda/desktops/singularity/vetro/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "vetro.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/desktops/singularity/vetro/update.rhai b/anda/desktops/singularity/vetro/update.rhai new file mode 100644 index 0000000000..a6369722f8 --- /dev/null +++ b/anda/desktops/singularity/vetro/update.rhai @@ -0,0 +1,5 @@ +rpm.global("commit", gh_commit("singularityos-lab/vetro")); +if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); +} diff --git a/anda/desktops/singularity/vetro/vetro.spec b/anda/desktops/singularity/vetro/vetro.spec new file mode 100644 index 0000000000..8f83d0607a --- /dev/null +++ b/anda/desktops/singularity/vetro/vetro.spec @@ -0,0 +1,42 @@ +%global commit 0a7bd367676f67e1c15a304ba135fe6fecdbc604 +%global commit_date 20260605 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) + +%global goipath github.com/singularityos-lab/vetro +Version: 0~%{commit_date}git.%{shortcommit} + +%gometa -f + +Name: vetro +Release: 1%{?dist} +Summary: Declarative GTK4 UI transpiler with a built-in Language Server Protocol (LSP) server +URL: https://github.com/singularityos-lab/vetro +Source0: %{url}/archive/%{commit}/vetro-%{commit}.tar.gz +License: MIT +BuildRequires: golang + +Packager: Owen Zimmerman + +%description +%{summary}. + +%gopkg + +%prep +%autosetup -n vetro-%{commit} + +%build +%define gomodulesmode GO111MODULE=on +%gobuild -o %{gobuilddir}/bin/vetro . + +%install +install -Dm755 %{gobuilddir}/bin/vetro %{buildroot}%{_bindir}/vetro + +%files +%{_bindir}/vetro +%license LICENSE +%doc README.md + +%changelog +* Sat May 16 2026 Owen Zimmerman +- Initial commit diff --git a/anda/desktops/somewm/somewm.spec b/anda/desktops/somewm/somewm.spec index 12de8feb11..9caa130fed 100644 --- a/anda/desktops/somewm/somewm.spec +++ b/anda/desktops/somewm/somewm.spec @@ -1,17 +1,18 @@ Name: somewm -Version: 0.5.0 -Release: 1%?dist +Version: 1.4.1 +Release: 1%{?dist} Summary: Wayland compositor that brings AwesomeWM's Lua API to Wayland -License: GPL-3.0 +License: GPL-3.0-or-later URL: https://github.com/trip-zip/somewm -Source: %{url}/archive/%{version}.tar.gz +Source: %{url}/archive/refs/tags/v%{version}.tar.gz Packager: Owen Zimmerman BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: meson -BuildRequires: pkgconfig(wlroots) +BuildRequires: cmake +BuildRequires: pkgconfig(pam) BuildRequires: pkgconfig(luajit) BuildRequires: lua-lgi-compat BuildRequires: pkgconfig(wlroots-0.19) @@ -34,23 +35,44 @@ The goal is 100% compatibility with AwesomeWM's Lua configuration. %prep %autosetup -%build +%package devel +%pkg_devel_files + +%conf %meson -Dwerror=false + +%build %meson_build %install %meson_install +%post +%systemd_post somewm.service + +%preun +%systemd_preun somewm.service + +%postun +%systemd_postun_with_restart somewm.service + %files %doc README.md CHANGELOG.md %license LICENSE licenses/ %{_bindir}/%{name} %{_bindir}/%{name}-client +%{_bindir}/somewm-session %{_sysconfdir}/xdg/%{name}/rc.lua %{_datadir}/%{name}/ %{_datadir}/wayland-sessions/%{name}.desktop +%{_datadir}/xdg-desktop-portal/portals/somewm.portal %{_mandir}/man1/somewm.1.* +%{_userunitdir}/somewm-shutdown.target +%{_userunitdir}/somewm.service %changelog +* Sun May 10 2026 Owen Zimmerman +- Update spec for 1.4.1 + * Sun Jan 04 2026 Owen Zimmerman - Initial commit diff --git a/anda/stardust/armillary/nightly/anda.hcl b/anda/desktops/stardust/armillary/nightly/anda.hcl similarity index 100% rename from anda/stardust/armillary/nightly/anda.hcl rename to anda/desktops/stardust/armillary/nightly/anda.hcl diff --git a/anda/stardust/armillary/nightly/stardust-armillary-nightly.spec b/anda/desktops/stardust/armillary/nightly/stardust-armillary-nightly.spec similarity index 100% rename from anda/stardust/armillary/nightly/stardust-armillary-nightly.spec rename to anda/desktops/stardust/armillary/nightly/stardust-armillary-nightly.spec diff --git a/anda/stardust/armillary/nightly/update.rhai b/anda/desktops/stardust/armillary/nightly/update.rhai similarity index 100% rename from anda/stardust/armillary/nightly/update.rhai rename to anda/desktops/stardust/armillary/nightly/update.rhai diff --git a/anda/stardust/armillary/stable/anda.hcl b/anda/desktops/stardust/armillary/stable/anda.hcl similarity index 100% rename from anda/stardust/armillary/stable/anda.hcl rename to anda/desktops/stardust/armillary/stable/anda.hcl diff --git a/anda/stardust/armillary/stable/stardust-armillary.spec b/anda/desktops/stardust/armillary/stable/stardust-armillary.spec similarity index 100% rename from anda/stardust/armillary/stable/stardust-armillary.spec rename to anda/desktops/stardust/armillary/stable/stardust-armillary.spec diff --git a/anda/stardust/armillary/stable/update.rhai b/anda/desktops/stardust/armillary/stable/update.rhai similarity index 100% rename from anda/stardust/armillary/stable/update.rhai rename to anda/desktops/stardust/armillary/stable/update.rhai diff --git a/anda/stardust/atmosphere/nightly/anda.hcl b/anda/desktops/stardust/atmosphere/nightly/anda.hcl similarity index 100% rename from anda/stardust/atmosphere/nightly/anda.hcl rename to anda/desktops/stardust/atmosphere/nightly/anda.hcl diff --git a/anda/stardust/atmosphere/nightly/stardust-atmosphere-nightly.spec b/anda/desktops/stardust/atmosphere/nightly/stardust-atmosphere-nightly.spec similarity index 100% rename from anda/stardust/atmosphere/nightly/stardust-atmosphere-nightly.spec rename to anda/desktops/stardust/atmosphere/nightly/stardust-atmosphere-nightly.spec diff --git a/anda/stardust/atmosphere/nightly/update.rhai b/anda/desktops/stardust/atmosphere/nightly/update.rhai similarity index 100% rename from anda/stardust/atmosphere/nightly/update.rhai rename to anda/desktops/stardust/atmosphere/nightly/update.rhai diff --git a/anda/stardust/atmosphere/stable/anda.hcl b/anda/desktops/stardust/atmosphere/stable/anda.hcl similarity index 100% rename from anda/stardust/atmosphere/stable/anda.hcl rename to anda/desktops/stardust/atmosphere/stable/anda.hcl diff --git a/anda/stardust/atmosphere/stable/stardust-atmosphere.spec b/anda/desktops/stardust/atmosphere/stable/stardust-atmosphere.spec similarity index 100% rename from anda/stardust/atmosphere/stable/stardust-atmosphere.spec rename to anda/desktops/stardust/atmosphere/stable/stardust-atmosphere.spec diff --git a/anda/stardust/atmosphere/stable/update.rhai b/anda/desktops/stardust/atmosphere/stable/update.rhai similarity index 100% rename from anda/stardust/atmosphere/stable/update.rhai rename to anda/desktops/stardust/atmosphere/stable/update.rhai diff --git a/anda/stardust/black-hole/nightly/anda.hcl b/anda/desktops/stardust/black-hole/nightly/anda.hcl similarity index 100% rename from anda/stardust/black-hole/nightly/anda.hcl rename to anda/desktops/stardust/black-hole/nightly/anda.hcl diff --git a/anda/stardust/black-hole/nightly/stardust-black-hole-nightly.spec b/anda/desktops/stardust/black-hole/nightly/stardust-black-hole-nightly.spec similarity index 100% rename from anda/stardust/black-hole/nightly/stardust-black-hole-nightly.spec rename to anda/desktops/stardust/black-hole/nightly/stardust-black-hole-nightly.spec diff --git a/anda/stardust/black-hole/nightly/update.rhai b/anda/desktops/stardust/black-hole/nightly/update.rhai similarity index 100% rename from anda/stardust/black-hole/nightly/update.rhai rename to anda/desktops/stardust/black-hole/nightly/update.rhai diff --git a/anda/stardust/black-hole/stable/anda.hcl b/anda/desktops/stardust/black-hole/stable/anda.hcl similarity index 100% rename from anda/stardust/black-hole/stable/anda.hcl rename to anda/desktops/stardust/black-hole/stable/anda.hcl diff --git a/anda/stardust/black-hole/stable/stardust-black-hole.spec b/anda/desktops/stardust/black-hole/stable/stardust-black-hole.spec similarity index 100% rename from anda/stardust/black-hole/stable/stardust-black-hole.spec rename to anda/desktops/stardust/black-hole/stable/stardust-black-hole.spec diff --git a/anda/stardust/black-hole/stable/update.rhai b/anda/desktops/stardust/black-hole/stable/update.rhai similarity index 100% rename from anda/stardust/black-hole/stable/update.rhai rename to anda/desktops/stardust/black-hole/stable/update.rhai diff --git a/anda/stardust/comet/nightly/anda.hcl b/anda/desktops/stardust/comet/nightly/anda.hcl similarity index 100% rename from anda/stardust/comet/nightly/anda.hcl rename to anda/desktops/stardust/comet/nightly/anda.hcl diff --git a/anda/stardust/comet/nightly/stardust-comet-nightly.spec b/anda/desktops/stardust/comet/nightly/stardust-comet-nightly.spec similarity index 100% rename from anda/stardust/comet/nightly/stardust-comet-nightly.spec rename to anda/desktops/stardust/comet/nightly/stardust-comet-nightly.spec diff --git a/anda/stardust/comet/nightly/update.rhai b/anda/desktops/stardust/comet/nightly/update.rhai similarity index 100% rename from anda/stardust/comet/nightly/update.rhai rename to anda/desktops/stardust/comet/nightly/update.rhai diff --git a/anda/stardust/comet/stable/anda.hcl b/anda/desktops/stardust/comet/stable/anda.hcl similarity index 100% rename from anda/stardust/comet/stable/anda.hcl rename to anda/desktops/stardust/comet/stable/anda.hcl diff --git a/anda/stardust/comet/stable/stardust-comet.spec b/anda/desktops/stardust/comet/stable/stardust-comet.spec similarity index 100% rename from anda/stardust/comet/stable/stardust-comet.spec rename to anda/desktops/stardust/comet/stable/stardust-comet.spec diff --git a/anda/stardust/comet/stable/update.rhai b/anda/desktops/stardust/comet/stable/update.rhai similarity index 100% rename from anda/stardust/comet/stable/update.rhai rename to anda/desktops/stardust/comet/stable/update.rhai diff --git a/anda/stardust/flatland/nightly/anda.hcl b/anda/desktops/stardust/flatland/nightly/anda.hcl similarity index 100% rename from anda/stardust/flatland/nightly/anda.hcl rename to anda/desktops/stardust/flatland/nightly/anda.hcl diff --git a/anda/stardust/flatland/nightly/stardust-flatland-nightly.spec b/anda/desktops/stardust/flatland/nightly/stardust-flatland-nightly.spec similarity index 95% rename from anda/stardust/flatland/nightly/stardust-flatland-nightly.spec rename to anda/desktops/stardust/flatland/nightly/stardust-flatland-nightly.spec index 405ed12a86..d1b2c6d669 100644 --- a/anda/stardust/flatland/nightly/stardust-flatland-nightly.spec +++ b/anda/desktops/stardust/flatland/nightly/stardust-flatland-nightly.spec @@ -1,5 +1,5 @@ -%global commit 948ba046e7b030500cdbc1f43f0c8e2af93747aa -%global commit_date 20260320 +%global commit a8694174290e02aaf454747e1232e4db0d7ef916 +%global commit_date 20260426 %global shortcommit %(c=%{commit}; echo ${c:0:7}) # Exclude input files from mangling %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ diff --git a/anda/stardust/flatland/nightly/update.rhai b/anda/desktops/stardust/flatland/nightly/update.rhai similarity index 100% rename from anda/stardust/flatland/nightly/update.rhai rename to anda/desktops/stardust/flatland/nightly/update.rhai diff --git a/anda/stardust/flatland/stable/anda.hcl b/anda/desktops/stardust/flatland/stable/anda.hcl similarity index 100% rename from anda/stardust/flatland/stable/anda.hcl rename to anda/desktops/stardust/flatland/stable/anda.hcl diff --git a/anda/stardust/flatland/stable/stardust-flatland.spec b/anda/desktops/stardust/flatland/stable/stardust-flatland.spec similarity index 100% rename from anda/stardust/flatland/stable/stardust-flatland.spec rename to anda/desktops/stardust/flatland/stable/stardust-flatland.spec diff --git a/anda/stardust/flatland/stable/update.rhai b/anda/desktops/stardust/flatland/stable/update.rhai similarity index 100% rename from anda/stardust/flatland/stable/update.rhai rename to anda/desktops/stardust/flatland/stable/update.rhai diff --git a/anda/stardust/gravity/nightly/anda.hcl b/anda/desktops/stardust/gravity/nightly/anda.hcl similarity index 100% rename from anda/stardust/gravity/nightly/anda.hcl rename to anda/desktops/stardust/gravity/nightly/anda.hcl diff --git a/anda/stardust/gravity/nightly/stardust-gravity-nightly.spec b/anda/desktops/stardust/gravity/nightly/stardust-gravity-nightly.spec similarity index 100% rename from anda/stardust/gravity/nightly/stardust-gravity-nightly.spec rename to anda/desktops/stardust/gravity/nightly/stardust-gravity-nightly.spec diff --git a/anda/stardust/gravity/nightly/update.rhai b/anda/desktops/stardust/gravity/nightly/update.rhai similarity index 100% rename from anda/stardust/gravity/nightly/update.rhai rename to anda/desktops/stardust/gravity/nightly/update.rhai diff --git a/anda/stardust/gravity/stable/anda.hcl b/anda/desktops/stardust/gravity/stable/anda.hcl similarity index 100% rename from anda/stardust/gravity/stable/anda.hcl rename to anda/desktops/stardust/gravity/stable/anda.hcl diff --git a/anda/stardust/gravity/stable/stardust-gravity.spec b/anda/desktops/stardust/gravity/stable/stardust-gravity.spec similarity index 100% rename from anda/stardust/gravity/stable/stardust-gravity.spec rename to anda/desktops/stardust/gravity/stable/stardust-gravity.spec diff --git a/anda/stardust/gravity/stable/update.rhai b/anda/desktops/stardust/gravity/stable/update.rhai similarity index 100% rename from anda/stardust/gravity/stable/update.rhai rename to anda/desktops/stardust/gravity/stable/update.rhai diff --git a/anda/stardust/magnetar/anda.hcl b/anda/desktops/stardust/magnetar/anda.hcl similarity index 100% rename from anda/stardust/magnetar/anda.hcl rename to anda/desktops/stardust/magnetar/anda.hcl diff --git a/anda/stardust/magnetar/stardust-magnetar.spec b/anda/desktops/stardust/magnetar/stardust-magnetar.spec similarity index 100% rename from anda/stardust/magnetar/stardust-magnetar.spec rename to anda/desktops/stardust/magnetar/stardust-magnetar.spec diff --git a/anda/stardust/magnetar/update.rhai b/anda/desktops/stardust/magnetar/update.rhai similarity index 100% rename from anda/stardust/magnetar/update.rhai rename to anda/desktops/stardust/magnetar/update.rhai diff --git a/anda/stardust/non-spatial-input/nightly/anda.hcl b/anda/desktops/stardust/non-spatial-input/nightly/anda.hcl similarity index 100% rename from anda/stardust/non-spatial-input/nightly/anda.hcl rename to anda/desktops/stardust/non-spatial-input/nightly/anda.hcl diff --git a/anda/stardust/non-spatial-input/nightly/stardust-non-spatial-input-nightly.spec b/anda/desktops/stardust/non-spatial-input/nightly/stardust-non-spatial-input-nightly.spec similarity index 95% rename from anda/stardust/non-spatial-input/nightly/stardust-non-spatial-input-nightly.spec rename to anda/desktops/stardust/non-spatial-input/nightly/stardust-non-spatial-input-nightly.spec index 5f58c41449..ee0b8cb2e0 100644 --- a/anda/stardust/non-spatial-input/nightly/stardust-non-spatial-input-nightly.spec +++ b/anda/desktops/stardust/non-spatial-input/nightly/stardust-non-spatial-input-nightly.spec @@ -1,5 +1,5 @@ -%global commit f14a78e4c572f24a63aa4e06629e42929f097388 -%global commit_date 20260320 +%global commit 9281c15fae057f82ffed44a36266f2a7d79bf641 +%global commit_date 20260612 %global shortcommit %(c=%{commit}; echo ${c:0:7}) # Exclude input files from mangling %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ diff --git a/anda/stardust/non-spatial-input/nightly/update.rhai b/anda/desktops/stardust/non-spatial-input/nightly/update.rhai similarity index 100% rename from anda/stardust/non-spatial-input/nightly/update.rhai rename to anda/desktops/stardust/non-spatial-input/nightly/update.rhai diff --git a/anda/stardust/non-spatial-input/stable/anda.hcl b/anda/desktops/stardust/non-spatial-input/stable/anda.hcl similarity index 100% rename from anda/stardust/non-spatial-input/stable/anda.hcl rename to anda/desktops/stardust/non-spatial-input/stable/anda.hcl diff --git a/anda/stardust/non-spatial-input/stable/stardust-non-spatial-input.spec b/anda/desktops/stardust/non-spatial-input/stable/stardust-non-spatial-input.spec similarity index 100% rename from anda/stardust/non-spatial-input/stable/stardust-non-spatial-input.spec rename to anda/desktops/stardust/non-spatial-input/stable/stardust-non-spatial-input.spec diff --git a/anda/stardust/non-spatial-input/stable/update.rhai b/anda/desktops/stardust/non-spatial-input/stable/update.rhai similarity index 100% rename from anda/stardust/non-spatial-input/stable/update.rhai rename to anda/desktops/stardust/non-spatial-input/stable/update.rhai diff --git a/anda/stardust/protostar/nightly/anda.hcl b/anda/desktops/stardust/protostar/nightly/anda.hcl similarity index 100% rename from anda/stardust/protostar/nightly/anda.hcl rename to anda/desktops/stardust/protostar/nightly/anda.hcl diff --git a/anda/stardust/protostar/nightly/stardust-protostar-nightly.spec b/anda/desktops/stardust/protostar/nightly/stardust-protostar-nightly.spec similarity index 96% rename from anda/stardust/protostar/nightly/stardust-protostar-nightly.spec rename to anda/desktops/stardust/protostar/nightly/stardust-protostar-nightly.spec index b05bda4816..68b1b6ad70 100644 --- a/anda/stardust/protostar/nightly/stardust-protostar-nightly.spec +++ b/anda/desktops/stardust/protostar/nightly/stardust-protostar-nightly.spec @@ -1,5 +1,5 @@ -%global commit 1a615bf48958b47781600ca1bb2fb9585e90925f -%global commit_date 20260320 +%global commit 4f2f5b032280ea391bf5e7af9b13ab5e0eb21340 +%global commit_date 20260425 %global shortcommit %(c=%{commit}; echo ${c:0:7}) # Exclude input files from mangling %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ diff --git a/anda/stardust/protostar/nightly/update.rhai b/anda/desktops/stardust/protostar/nightly/update.rhai similarity index 100% rename from anda/stardust/protostar/nightly/update.rhai rename to anda/desktops/stardust/protostar/nightly/update.rhai diff --git a/anda/stardust/protostar/stable/anda.hcl b/anda/desktops/stardust/protostar/stable/anda.hcl similarity index 100% rename from anda/stardust/protostar/stable/anda.hcl rename to anda/desktops/stardust/protostar/stable/anda.hcl diff --git a/anda/stardust/protostar/stable/stardust-protostar.spec b/anda/desktops/stardust/protostar/stable/stardust-protostar.spec similarity index 100% rename from anda/stardust/protostar/stable/stardust-protostar.spec rename to anda/desktops/stardust/protostar/stable/stardust-protostar.spec diff --git a/anda/stardust/protostar/stable/update.rhai b/anda/desktops/stardust/protostar/stable/update.rhai similarity index 100% rename from anda/stardust/protostar/stable/update.rhai rename to anda/desktops/stardust/protostar/stable/update.rhai diff --git a/anda/stardust/server/nightly/anda.hcl b/anda/desktops/stardust/server/nightly/anda.hcl similarity index 100% rename from anda/stardust/server/nightly/anda.hcl rename to anda/desktops/stardust/server/nightly/anda.hcl diff --git a/anda/stardust/server/nightly/stardust-server-nightly.spec b/anda/desktops/stardust/server/nightly/stardust-server-nightly.spec similarity index 96% rename from anda/stardust/server/nightly/stardust-server-nightly.spec rename to anda/desktops/stardust/server/nightly/stardust-server-nightly.spec index 4f24c56cc3..fd37192095 100644 --- a/anda/stardust/server/nightly/stardust-server-nightly.spec +++ b/anda/desktops/stardust/server/nightly/stardust-server-nightly.spec @@ -1,5 +1,5 @@ -%global commit c86af4767110d1f82904c03ae08306178f9970f4 -%global commit_date 20260320 +%global commit 08092c3376e809190b349083497fb8c96c637c82 +%global commit_date 20260429 %global shortcommit %(c=%{commit}; echo ${c:0:7}) # Exclude input files from mangling %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ diff --git a/anda/stardust/server/nightly/update.rhai b/anda/desktops/stardust/server/nightly/update.rhai similarity index 100% rename from anda/stardust/server/nightly/update.rhai rename to anda/desktops/stardust/server/nightly/update.rhai diff --git a/anda/stardust/server/stable/anda.hcl b/anda/desktops/stardust/server/stable/anda.hcl similarity index 100% rename from anda/stardust/server/stable/anda.hcl rename to anda/desktops/stardust/server/stable/anda.hcl diff --git a/anda/stardust/server/stable/stardust-server.spec b/anda/desktops/stardust/server/stable/stardust-server.spec similarity index 100% rename from anda/stardust/server/stable/stardust-server.spec rename to anda/desktops/stardust/server/stable/stardust-server.spec diff --git a/anda/stardust/server/stable/update.rhai b/anda/desktops/stardust/server/stable/update.rhai similarity index 100% rename from anda/stardust/server/stable/update.rhai rename to anda/desktops/stardust/server/stable/update.rhai diff --git a/anda/stardust/solar-sailer/nightly/anda.hcl b/anda/desktops/stardust/solar-sailer/nightly/anda.hcl similarity index 100% rename from anda/stardust/solar-sailer/nightly/anda.hcl rename to anda/desktops/stardust/solar-sailer/nightly/anda.hcl diff --git a/anda/stardust/solar-sailer/nightly/stardust-solar-sailer-nightly.spec b/anda/desktops/stardust/solar-sailer/nightly/stardust-solar-sailer-nightly.spec similarity index 100% rename from anda/stardust/solar-sailer/nightly/stardust-solar-sailer-nightly.spec rename to anda/desktops/stardust/solar-sailer/nightly/stardust-solar-sailer-nightly.spec diff --git a/anda/stardust/solar-sailer/nightly/update.rhai b/anda/desktops/stardust/solar-sailer/nightly/update.rhai similarity index 100% rename from anda/stardust/solar-sailer/nightly/update.rhai rename to anda/desktops/stardust/solar-sailer/nightly/update.rhai diff --git a/anda/stardust/solar-sailer/stable/anda.hcl b/anda/desktops/stardust/solar-sailer/stable/anda.hcl similarity index 100% rename from anda/stardust/solar-sailer/stable/anda.hcl rename to anda/desktops/stardust/solar-sailer/stable/anda.hcl diff --git a/anda/stardust/solar-sailer/stable/stardust-solar-sailer.spec b/anda/desktops/stardust/solar-sailer/stable/stardust-solar-sailer.spec similarity index 100% rename from anda/stardust/solar-sailer/stable/stardust-solar-sailer.spec rename to anda/desktops/stardust/solar-sailer/stable/stardust-solar-sailer.spec diff --git a/anda/stardust/solar-sailer/stable/update.rhai b/anda/desktops/stardust/solar-sailer/stable/update.rhai similarity index 100% rename from anda/stardust/solar-sailer/stable/update.rhai rename to anda/desktops/stardust/solar-sailer/stable/update.rhai diff --git a/anda/stardust/telescope/nightly/anda.hcl b/anda/desktops/stardust/telescope/nightly/anda.hcl similarity index 100% rename from anda/stardust/telescope/nightly/anda.hcl rename to anda/desktops/stardust/telescope/nightly/anda.hcl diff --git a/anda/stardust/telescope/nightly/libexec.patch b/anda/desktops/stardust/telescope/nightly/libexec.patch similarity index 100% rename from anda/stardust/telescope/nightly/libexec.patch rename to anda/desktops/stardust/telescope/nightly/libexec.patch diff --git a/anda/stardust/telescope/nightly/stardust-telescope-nightly.spec b/anda/desktops/stardust/telescope/nightly/stardust-telescope-nightly.spec similarity index 100% rename from anda/stardust/telescope/nightly/stardust-telescope-nightly.spec rename to anda/desktops/stardust/telescope/nightly/stardust-telescope-nightly.spec diff --git a/anda/stardust/telescope/nightly/update.rhai b/anda/desktops/stardust/telescope/nightly/update.rhai similarity index 100% rename from anda/stardust/telescope/nightly/update.rhai rename to anda/desktops/stardust/telescope/nightly/update.rhai diff --git a/anda/stardust/telescope/stable/anda.hcl b/anda/desktops/stardust/telescope/stable/anda.hcl similarity index 100% rename from anda/stardust/telescope/stable/anda.hcl rename to anda/desktops/stardust/telescope/stable/anda.hcl diff --git a/anda/stardust/telescope/stable/libexec.patch b/anda/desktops/stardust/telescope/stable/libexec.patch similarity index 100% rename from anda/stardust/telescope/stable/libexec.patch rename to anda/desktops/stardust/telescope/stable/libexec.patch diff --git a/anda/stardust/telescope/stable/stardust-telescope.spec b/anda/desktops/stardust/telescope/stable/stardust-telescope.spec similarity index 100% rename from anda/stardust/telescope/stable/stardust-telescope.spec rename to anda/desktops/stardust/telescope/stable/stardust-telescope.spec diff --git a/anda/stardust/telescope/stable/update.rhai b/anda/desktops/stardust/telescope/stable/update.rhai similarity index 100% rename from anda/stardust/telescope/stable/update.rhai rename to anda/desktops/stardust/telescope/stable/update.rhai diff --git a/anda/desktops/sway/nwg-look/nwg-look.spec b/anda/desktops/sway/nwg-look/nwg-look.spec index cd594cd2d8..7f46c4ef6c 100644 --- a/anda/desktops/sway/nwg-look/nwg-look.spec +++ b/anda/desktops/sway/nwg-look/nwg-look.spec @@ -1,12 +1,12 @@ %dnl %define debug_package %{nil} %global goipath github.com/nwg-piotr/nwg-look -Version: 1.0.6 +Version: 1.1.1 %gometa -f Name: nwg-look -Release: 1%?dist +Release: 1%{?dist} Summary: GTK3 settings editor adapted to work in the wlroots environment License: MIT diff --git a/anda/desktops/swayfx/swayfx.spec b/anda/desktops/swayfx/swayfx.spec index 1fb8767b37..5f2b248b52 100644 --- a/anda/desktops/swayfx/swayfx.spec +++ b/anda/desktops/swayfx/swayfx.spec @@ -1,4 +1,4 @@ -%global swayVersion 1.11 +%global swayVersion 1.12 Name: swayfx Version: 0.5.2 diff --git a/anda/desktops/swayfx/update.rhai b/anda/desktops/swayfx/update.rhai index 86957d3c78..21a9ca66e5 100644 --- a/anda/desktops/swayfx/update.rhai +++ b/anda/desktops/swayfx/update.rhai @@ -1 +1,3 @@ -rpm.version(gh("willPower3309/swayfx")); \ No newline at end of file +rpm.version(gh("willPower3309/swayfx")); + +rpm.global("swayVersion", gh("swaywm/sway")); diff --git a/anda/desktops/waylands/swww/anda.hcl b/anda/desktops/waylands/awww/anda.hcl similarity index 54% rename from anda/desktops/waylands/swww/anda.hcl rename to anda/desktops/waylands/awww/anda.hcl index 8f4e2ba38a..2b91018274 100644 --- a/anda/desktops/waylands/swww/anda.hcl +++ b/anda/desktops/waylands/awww/anda.hcl @@ -1,5 +1,5 @@ project pkg { rpm { - spec = "swww.spec" + spec = "awww.spec" } } diff --git a/anda/desktops/waylands/swww/swww.spec b/anda/desktops/waylands/awww/awww.spec similarity index 69% rename from anda/desktops/waylands/swww/swww.spec rename to anda/desktops/waylands/awww/awww.spec index 5eeb6cd0b1..5214e74da7 100644 --- a/anda/desktops/waylands/swww/swww.spec +++ b/anda/desktops/waylands/awww/awww.spec @@ -1,11 +1,11 @@ -Name: swww -Version: 0.11.2 -Release: 1%?dist +Name: awww +Version: 0.12.1 +Release: 2%?dist Summary: Wallpaper daemon for Wayland SourceLicense: GPL-3.0-only License: (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND BSD-3-Clause AND MIT AND (MIT OR Apache-2.0) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Zlib OR Apache-2.0) AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) -URL: https://github.com/LGFae/swww -Source0: %url/archive/refs/tags/v%version.tar.gz +URL: https://codeberg.org/LGFae/awww +Source0: %url/archive/v%version.tar.gz Packager: madonuko BuildRequires: anda-srpm-macros rust-packaging rpm_macro(bash_completions_dir) mold BuildRequires: scdoc @@ -15,8 +15,10 @@ BuildRequires: pkgconfig(xkbcommon) BuildRequires: pkgconfig(wayland-client) BuildRequires: pkgconfig(wayland-protocols) +Obsoletes: swww < %{evr} + %description -swww is a wallpaper daemon for Wayland that is controlled +awww is a wallpaper daemon for Wayland that is controlled at runtime. It uses LZ4 compression for frame animations for animated wallpapers. @@ -50,7 +52,7 @@ BuildArch: noarch Zsh command-line completion support for %{name}. %prep -%autosetup +%autosetup -n %{name} %cargo_prep_online %build @@ -62,34 +64,30 @@ Zsh command-line completion support for %{name}. (cd client && %{cargo_install}) & (cd daemon && %{cargo_install}) & wait -install -Dm644 -T completions/swww.bash %buildroot%bash_completions_dir/swww -install -Dm644 -T completions/swww.fish %buildroot%fish_completions_dir/swww.fish -install -Dm644 -T completions/_swww %buildroot%zsh_completions_dir/_swww -install -Dm644 -t %buildroot%_mandir/man1 doc/generated/swww*1 +install -Dm644 -T completions/awww.bash %buildroot%bash_completions_dir/awww +install -Dm644 -T completions/awww.fish %buildroot%fish_completions_dir/awww.fish +install -Dm644 -T completions/_awww %buildroot%zsh_completions_dir/_awww +install -Dm644 -t %buildroot%_mandir/man1 doc/generated/awww*1 %files %doc CHANGELOG.md README.md %license LICENSE LICENSE.dependencies -%_bindir/swww -%_bindir/swww-daemon -%_mandir/man1/%name-clear-cache.1.gz -%_mandir/man1/%name-clear.1.gz -%_mandir/man1/%name-daemon.1.gz -%_mandir/man1/%name-img.1.gz -%_mandir/man1/%name-kill.1.gz -%_mandir/man1/%name-query.1.gz -%_mandir/man1/%name-restore.1.gz -%_mandir/man1/%name.1.gz +%{_bindir}/awww +%{_bindir}/awww-daemon +%{_mandir}/man1/%name.1.gz +%{_mandir}/man1/%name-*.1.gz %files bash-completion -%bash_completions_dir/swww +%bash_completions_dir/awww %files fish-completion -%fish_completions_dir/swww.fish +%fish_completions_dir/awww.fish %files zsh-completion -%zsh_completions_dir/_swww +%zsh_completions_dir/_awww %changelog +* Sat May 09 2026 - 0.12.1-1 +- replace swww with awww * Tue Dec 24 2024 madonuko - 0.9.5-1 - Initial package diff --git a/anda/desktops/waylands/awww/update.rhai b/anda/desktops/waylands/awww/update.rhai new file mode 100644 index 0000000000..de1371518f --- /dev/null +++ b/anda/desktops/waylands/awww/update.rhai @@ -0,0 +1 @@ +rpm.version(codeberg("LGFae/awww")); diff --git a/anda/desktops/waylands/mangobar/anda.hcl b/anda/desktops/waylands/mangobar/anda.hcl new file mode 100644 index 0000000000..90be7645da --- /dev/null +++ b/anda/desktops/waylands/mangobar/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "mangobar.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/desktops/waylands/mangobar/mangobar.spec b/anda/desktops/waylands/mangobar/mangobar.spec new file mode 100644 index 0000000000..ca6c69d62a --- /dev/null +++ b/anda/desktops/waylands/mangobar/mangobar.spec @@ -0,0 +1,50 @@ +%global commit c0138d9067d6a779c753aa7da72ce85d44f528da +%global commit_date 20260527 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) + +Name: mangobar +Version: 0~%{commit_date}git.%{shortcommit} +Release: 1%{?dist} +Summary: A suckless-esc bar for mangowc +URL: https://github.com/Gur0v/mangobar +Source0: %{url}/archive/%{commit}/mangobar-%{commit}.tar.gz +SourceLicense: GPL-3.0-or-later +License: %{sourcelicense} AND (Apache-2.0 OR MIT) AND MIT AND GPL-3.0 AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND Apache-2.0 AND (Unlicense OR MIT) + +BuildRequires: rust +BuildRequires: cargo-rpm-macros +BuildRequires: gtk4 +BuildRequires: gtk4-devel +BuildRequires: gtk4-layer-shell +BuildRequires: gtk4-layer-shell-devel +BuildRequires: gdk-pixbuf2 +BuildRequires: gdk-pixbuf2-devel +BuildRequires: wireplumber + +Suggests: mangowm +Packager: Its-J + +%description +%{summary}. + +%prep +%autosetup -n mangobar-%{commit} +%cargo_prep_online + +%build +%cargo_build + +%install +install -Dm 755 target/rpm/mangobar %{buildroot}%{_bindir}/mangobar +%cargo_license_summary_online +%{cargo_license_online} > LICENSE.dependencies + +%files +%{_bindir}/mangobar +%license LICENSE +%license LICENSE.dependencies +%doc README.md + +%changelog +* Sat May 23 2026 Its-J +- Package mangobar diff --git a/anda/desktops/waylands/mangobar/update.rhai b/anda/desktops/waylands/mangobar/update.rhai new file mode 100644 index 0000000000..864ae82f8b --- /dev/null +++ b/anda/desktops/waylands/mangobar/update.rhai @@ -0,0 +1,5 @@ +rpm.global("commit", gh_commit("Gur0v/mangobar")); +if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); +} diff --git a/anda/desktops/waylands/sway-audio-idle-inhibit/sway-audio-idle-inhibit.spec b/anda/desktops/waylands/sway-audio-idle-inhibit/sway-audio-idle-inhibit.spec index c33d4645fd..cd2b269a99 100644 --- a/anda/desktops/waylands/sway-audio-idle-inhibit/sway-audio-idle-inhibit.spec +++ b/anda/desktops/waylands/sway-audio-idle-inhibit/sway-audio-idle-inhibit.spec @@ -15,8 +15,10 @@ BuildRequires: pkgconfig(libsystemd) %prep %autosetup -n SwayAudioIdleInhibit-%version -%build +%conf %meson -Dlogind-provider=systemd + +%build %meson_build %install diff --git a/anda/desktops/waylands/swaylock-effects/swaylock-effects.spec b/anda/desktops/waylands/swaylock-effects/swaylock-effects.spec index e159f77edf..d4bd582c65 100644 --- a/anda/desktops/waylands/swaylock-effects/swaylock-effects.spec +++ b/anda/desktops/waylands/swaylock-effects/swaylock-effects.spec @@ -30,23 +30,20 @@ Conflicts: swaylock %description swaylock-effects is a fork of swaylock which adds built-in screenshots and image manipulation effects like blurring. - %pkg_completion -Bfz %binary_name - %prep %autosetup -n %{name}-%{commit} +%conf +%meson %build -%meson %meson_build - %install %meson_install - %files %license LICENSE %doc README.md @@ -54,7 +51,6 @@ swaylock-effects is a fork of swaylock which adds built-in screenshots and image %{_mandir}/man1/%{binary_name}.1.gz %config(noreplace) %{_sysconfdir}/pam.d/%{binary_name} - %changelog * Tue Feb 04 2025 sadlerm - Initial package diff --git a/anda/desktops/waylands/swww/update.rhai b/anda/desktops/waylands/swww/update.rhai deleted file mode 100644 index da227c1d0a..0000000000 --- a/anda/desktops/waylands/swww/update.rhai +++ /dev/null @@ -1 +0,0 @@ -rpm.version(gh("LGFae/swww")); diff --git a/anda/desktops/waylands/vibepanel/anda.hcl b/anda/desktops/waylands/vibepanel/anda.hcl new file mode 100644 index 0000000000..416d24f2bc --- /dev/null +++ b/anda/desktops/waylands/vibepanel/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "vibepanel.spec" + } +} diff --git a/anda/desktops/waylands/vibepanel/update.rhai b/anda/desktops/waylands/vibepanel/update.rhai new file mode 100644 index 0000000000..5562243d33 --- /dev/null +++ b/anda/desktops/waylands/vibepanel/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("prankstr/vibepanel")); diff --git a/anda/desktops/waylands/vibepanel/vibepanel.spec b/anda/desktops/waylands/vibepanel/vibepanel.spec new file mode 100644 index 0000000000..6b11bf2b65 --- /dev/null +++ b/anda/desktops/waylands/vibepanel/vibepanel.spec @@ -0,0 +1,52 @@ +Name: vibepanel +Version: 0.15.0 +Release: 1%{?dist} +Summary: GTK4 panel for Wayland with notifications, OSD, and quick settings – between a status bar and a desktop shell +URL: https://github.com/prankstr/vibepanel +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz +SourceLicense: MIT +License: %{sourcelicense} AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (MIT OR Apache-2.0 OR Zlib) AND (0BSD OR MIT OR Apache-2.0) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND Apache-2.0 AND MPL-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND CC0-1.0 AND Apache-2.0 AND ISC AND (BSD-3-Clause OR Apache-2.0) AND ISC AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (Unlicense OR MIT) + +BuildRequires: rust +BuildRequires: cargo-rpm-macros +BuildRequires: gcc +BuildRequires: gtk4-devel +BuildRequires: gtk4-layer-shell-devel +BuildRequires: pulseaudio-libs-devel +BuildRequires: systemd-devel +BuildRequires: dbus-devel + +Requires: gtk4 +Requires: gtk4-layer-shell +Requires: pulseaudio-libs +Requires: upower +Requires: NetworkManager +Requires: bluez + +Recommends: power-profiles-daemon + +Packager: Its-J + +%description +%{summary}. + +%prep +%autosetup -n vibepanel-%{version} +%cargo_prep_online + +%build +%cargo_build + +%install +install -Dm 755 target/rpm/vibepanel %{buildroot}%{_bindir}/vibepanel +%{cargo_license_online} > LICENSE.dependencies + +%files +%{_bindir}/vibepanel +%license LICENSE +%license LICENSE.dependencies +%doc README.md + +%changelog +* Sat May 23 2026 Its-J +- Package vibepanel diff --git a/anda/desktops/waylands/walker/walker.spec b/anda/desktops/waylands/walker/walker.spec index 7a81dd620e..9f7167f839 100644 --- a/anda/desktops/waylands/walker/walker.spec +++ b/anda/desktops/waylands/walker/walker.spec @@ -4,7 +4,7 @@ # prevent library files from being installed %global cargo_install_lib 0 -%global upstream_version v2.15.2 +%global upstream_version v2.16.2 %global ver %{sub %upstream_version 2} Name: walker diff --git a/anda/desktops/waylands/wpaperd/wpaperd.spec b/anda/desktops/waylands/wpaperd/wpaperd.spec index 88e02a43a1..c3f1075cb6 100644 --- a/anda/desktops/waylands/wpaperd/wpaperd.spec +++ b/anda/desktops/waylands/wpaperd/wpaperd.spec @@ -1,8 +1,8 @@ %bcond check 0 Name: wpaperd -Version: 1.2.2 -Release: 2%?dist +Version: 1.3.0 +Release: 1%{?dist} Summary: Modern wallpaper daemon for Wayland License: (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND BSD-2-Clause AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-3-Clause AND CC0-1.0 AND (CC0-1.0 OR Apache-2.0) AND (CC0-1.0 OR Artistic-2.0) AND GPL-3.0+ AND ISC AND MIT AND (MIT OR Apache-2.0) AND (MIT OR Apache-2.0 OR NCSA) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Zlib OR Apache-2.0) AND MPL-2.0 AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) SourceLicense: GPL-3.0-or-later diff --git a/anda/desktops/waypaper/waypaper.spec b/anda/desktops/waypaper/waypaper.spec index 2b6b047d72..9620b83659 100644 --- a/anda/desktops/waypaper/waypaper.spec +++ b/anda/desktops/waypaper/waypaper.spec @@ -4,8 +4,8 @@ %define _python_dist_allow_version_zero 1 Name: python-%{pypi_name} -Version: 2.7 -Release: 1%?dist +Version: 2.8 +Release: 1%{?dist} Summary: GUI wallpaper manager for Wayland and Xorg Linux systems License: GPL-3.0-only URL: https://github.com/anufrievroman/waypaper diff --git a/anda/devs/android-studio/canary/android-studio-canary.spec b/anda/devs/android-studio/canary/android-studio-canary.spec index 8ef72dc2a2..0c6ab167d5 100644 --- a/anda/devs/android-studio/canary/android-studio-canary.spec +++ b/anda/devs/android-studio/canary/android-studio-canary.spec @@ -16,7 +16,7 @@ %global __requires_exclude ^libaaudio\\.so.*|^libandroid\\.so.*|^libmediandk\\.so.*|^liblog\\.so.*|^libc\\.so.*|^libm\\.so.*|^libdl\\.so.*|^libcrypt\\.so.*|^libstdc\\+\\+\\.so.*|^libncursesw\\.so.*|^libtinfo\\.so.*|^libnsl\\.so.*|^libpanelw\\.so.*$ Name: android-studio-canary -Version: 2025.3.4.2 +Version: 2026.1.2.7 Release: 1%{?dist} Summary: Official IDE for Android development (Canary build) License: Apache-2.0 @@ -24,7 +24,7 @@ Packager: veuxit ExclusiveArch: x86_64 URL: https://developer.android.com/studio/preview -%define suffixS panda4-canary2 +%define suffixS quail2-canary7 Source0: https://dl.google.com/dl/android/studio/ide-zips/%{version}/android-studio-%{suffixS}-linux.tar.gz diff --git a/anda/devs/android-studio/stable/android-studio.spec b/anda/devs/android-studio/stable/android-studio.spec index e6a9457e42..2b2466e70e 100644 --- a/anda/devs/android-studio/stable/android-studio.spec +++ b/anda/devs/android-studio/stable/android-studio.spec @@ -16,15 +16,15 @@ %global __requires_exclude ^libaaudio\\.so.*|^libandroid\\.so.*|^libmediandk\\.so.*|^liblog\\.so.*|^libc\\.so.*|^libm\\.so.*|^libdl\\.so.*|^libcrypt\\.so.*|^libstdc\\+\\+\\.so.*|^libncursesw\\.so.*|^libtinfo\\.so.*|^libnsl\\.so.*|^libpanelw\\.so.*$ Name: android-studio -Version: 2025.3.2.6 -Release: 1%?dist +Version: 2026.1.1.9 +Release: 1%{?dist} Summary: Official IDE for Android development License: Apache-2.0 Packager: veuxit , like-engels ExclusiveArch: x86_64 URL: https://developer.android.com/studio -%define suffixS panda2 +%define suffixS quail1-patch1 Source0: https://dl.google.com/dl/android/studio/ide-zips/%{version}/android-studio-%{suffixS}-linux.tar.gz diff --git a/anda/devs/asar/asar.spec b/anda/devs/asar/asar.spec index dca20789ab..2064b61085 100644 --- a/anda/devs/asar/asar.spec +++ b/anda/devs/asar/asar.spec @@ -7,7 +7,7 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: asar -Version: 4.1.2 +Version: 4.2.0 Release: 1%{?dist} Summary: Simple extensive tar-like archive format with indexing License: MIT diff --git a/anda/devs/asdf/asdf.spec b/anda/devs/asdf/asdf.spec index b66ddc8224..30e9053806 100644 --- a/anda/devs/asdf/asdf.spec +++ b/anda/devs/asdf/asdf.spec @@ -12,7 +12,7 @@ # https://github.com/asdf-vm/asdf %global goipath github.com/asdf-vm/asdf -Version: 0.18.1 +Version: 0.19.0 %gometa -f @@ -25,7 +25,7 @@ more.} SECURITY.md ballad-of-asdf.md help.txt version.txt Name: asdf -Release: 1%?dist +Release: 1%{?dist} Summary: Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more License: MIT diff --git a/anda/devs/backport/anda.hcl b/anda/devs/backport/anda.hcl index 37ceb921f6..fa16c40570 100644 --- a/anda/devs/backport/anda.hcl +++ b/anda/devs/backport/anda.hcl @@ -1,4 +1,5 @@ project pkg { + arches = ["x86_64"] rpm { spec = "nodejs-backport.spec" } diff --git a/anda/devs/backport/nodejs-backport.spec b/anda/devs/backport/nodejs-backport.spec index 4a9bb8c6ab..130bb9f7fe 100644 --- a/anda/devs/backport/nodejs-backport.spec +++ b/anda/devs/backport/nodejs-backport.spec @@ -3,11 +3,11 @@ %bcond test 0 Name: nodejs-%{npm_name} -Version: 11.0.1 +Version: 12.0.1 Release: 1%{?dist} Summary: Backport GitHub commits SourceLicense: Apache-2.0 -License: 0BSD AND Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND CC0-1.0 AND ISC AND MIT AND (MIT OR CC0-1.0) AND (WTFPL OR ISC) +License: MIT AND ISC AND Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause URL: https://github.com/sorenlouv/%{npm_name} Source0: http://registry.npmjs.org/%{npm_name}/-/%{npm_name}-%{version}.tgz BuildRequires: anda-srpm-macros >= 0.3.0 @@ -17,6 +17,7 @@ BuildRequires: nodejs-license-checker %if %{with test} BuildRequires: yarnpkg %endif +Requires: git-core Obsoletes: node-backport <= 10.2.0 BuildArch: noarch Packager: Gilver E. @@ -26,7 +27,9 @@ A simple CLI tool that automates the process of backporting commits on a GitHub %prep %npm_prep +%if %{with test} %fetch_node_tests /src/test/ /tests/ +%endif %build # Empty build section, because RPM reasons @@ -50,6 +53,8 @@ A simple CLI tool that automates the process of backporting commits on a GitHub %{_bindir}/%{npm_name} %changelog +* Sun May 3 2026 Gilver E. - 12.0.0-2 +- Added explicit dependency on git-core * Wed Jan 21 2026 Gilver E. - 10.2.0-3 - Fixed package name and licenses * Wed Jul 2 2025 Gilver E. - 9.6.6-1 diff --git a/anda/devs/backport/setup.sh b/anda/devs/backport/setup.sh deleted file mode 100755 index a6a7359998..0000000000 --- a/anda/devs/backport/setup.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/bash - -## Some sources need to be fetched BEFORE the build process -# Also I'm just better at scripting in Bash and calling the Rhai sh function hundreds of times times sounded like hell -# Have I mentioned I hate runtime languages? - -node=backport -# Enable logs for debugging -set -x -# I guess just $PWD doesn't work for this -builddir=$(pwd)/anda/devs/$node - -# We only need the tests folder so sourcing the whole repo is overkill, Git can make a tarball of specific directories - -pushd $builddir -ver=$(cat ./*.spec | grep -P -m1 'Version:' | sed -e 's/Version://g' -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//') -url=$(sed -n 's/^URL:\s\(.*\)$/\1/p' ./*.spec | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//' -e "s/%{module}/$node/") -dir=$node - -git clone --recurse-submodules -j$(nproc) $url.git - -pushd $dir -# I'm not sure why .tar.bz2 is the tar format of choice for this but it's also what Fedora does so it's what I'm doing -git archive --format=tar --prefix=tests/ v${ver}:src/test/ | bzip2 > ../tests-${ver}.tar.bz2 -popd -rm -rf $dir - -exit 0 diff --git a/anda/devs/bun/bun-bin.spec b/anda/devs/bun/bun-bin.spec index 3a9be7624f..e3f63c4f8d 100644 --- a/anda/devs/bun/bun-bin.spec +++ b/anda/devs/bun/bun-bin.spec @@ -8,8 +8,8 @@ %global appid sh.oven.bun Name: bun-bin -Version: 1.3.10 -Release: 1%?dist +Version: 1.3.14 +Release: 1%{?dist} Summary: Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one License: MIT URL: https://bun.sh diff --git a/anda/devs/codium/codium.spec b/anda/devs/codium/codium.spec index 2066feda0b..8a6fb05b5c 100644 --- a/anda/devs/codium/codium.spec +++ b/anda/devs/codium/codium.spec @@ -1,7 +1,7 @@ %global appid com.vscodium.VSCodium Name: codium -Version: 1.112.01907 +Version: 1.121.03429 %electronmeta -D %global __requires_exclude %{__requires_exclude}|libcurl.so|libmsalruntime.so Release: 1%{?dist} diff --git a/anda/devs/deno/rust-deno.spec b/anda/devs/deno/rust-deno.spec index 43c3587f07..d26a70f8bc 100644 --- a/anda/devs/deno/rust-deno.spec +++ b/anda/devs/deno/rust-deno.spec @@ -6,7 +6,7 @@ %global crate deno Name: rust-deno -Version: 2.7.9 +Version: 2.8.3 Release: 1%{?dist} Summary: Deno executable diff --git a/anda/devs/edit/edit.spec b/anda/devs/edit/edit.spec index d7e7137bea..91a8538e1b 100644 --- a/anda/devs/edit/edit.spec +++ b/anda/devs/edit/edit.spec @@ -7,8 +7,8 @@ An editor that pays homage to the classic MS-DOS Editor, but with a modern inter %global appstream_component console-application Name: %{crate} -Version: 1.2.1 -Release: 4%{?dist} +Version: 2.0.0 +Release: 1%{?dist} Summary: A simple editor for simple needs. SourceLicense: MIT License: MIT AND (MIT OR Apache-2.0) @@ -37,7 +37,9 @@ Packager: Gilver E. %install %crate_install_bin -%{cargo_license_online} > LICENSE.dependencies +pushd crates/edit +%{cargo_license_online} > ../../LICENSE.dependencies +popd install -Dm644 assets/edit.svg %{buildroot}%{_iconsdir}/hicolor/scalable/apps/%{appid}.svg sed -i "s|^Icon=edit$|Icon=%{appid}|g" assets/%{appid}.desktop diff --git a/anda/devs/flutter/flutter.spec b/anda/devs/flutter/flutter.spec index f82250b647..5f1c4f2792 100644 --- a/anda/devs/flutter/flutter.spec +++ b/anda/devs/flutter/flutter.spec @@ -1,5 +1,5 @@ Name: flutter -Version: 3.41.6 +Version: 3.44.2 Release: 1%{?dist} Summary: SDK for crafting beautiful, fast user experiences from a single codebase License: BSD-3-Clause diff --git a/anda/devs/ghostty/nightly/ghostty-nightly.spec b/anda/devs/ghostty/nightly/ghostty-nightly.spec index c4ea290a36..815ceb4014 100644 --- a/anda/devs/ghostty/nightly/ghostty-nightly.spec +++ b/anda/devs/ghostty/nightly/ghostty-nightly.spec @@ -1,6 +1,6 @@ -%global commit debcffbadb75221a030319c075fae12cfe114176 +%global commit 5659cef41f4f2f7a478d0800a11836fa17e64d66 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global fulldate 2026-03-29 +%global fulldate 2026-06-10 %global commit_date %(echo %{fulldate} | sed 's/-//g') %global public_key RWQlAjJC23149WL2sEpT/l0QKy7hMIFhYdQOFy0Z7z7PbneUgvlsnYcV %global ver 1.3.2 diff --git a/anda/devs/lowfi/rust-lowfi.spec b/anda/devs/lowfi/rust-lowfi.spec index 34edd93a94..994e1c3922 100644 --- a/anda/devs/lowfi/rust-lowfi.spec +++ b/anda/devs/lowfi/rust-lowfi.spec @@ -2,7 +2,7 @@ %global crate lowfi Name: rust-lowfi -Version: 2.0.5 +Version: 2.0.6 Release: 1%{?dist} Summary: Extremely simple lofi player diff --git a/anda/devs/micro/micro-nightly.spec b/anda/devs/micro/micro-nightly.spec index 5a2342ce84..472e6326bf 100644 --- a/anda/devs/micro/micro-nightly.spec +++ b/anda/devs/micro/micro-nightly.spec @@ -12,8 +12,8 @@ # Naming variable as something other than "commit" is necessary # to stop %%gometa from putting commit hash in release -%global commit_hash 4d04ad7290c3200c140732b2a1ed11924cc68cf8 -%global commit_date 20260329 +%global commit_hash 363cd2bb4020c7b422260e40a11b1effcfbe462d +%global commit_date 20260612 %global shortcommit %{sub %{commit_hash} 1 7} %global ver 2.0.15 diff --git a/anda/devs/neovide/neovide.spec b/anda/devs/neovide/neovide.spec index b6b13b242d..3bb5eb17cc 100644 --- a/anda/devs/neovide/neovide.spec +++ b/anda/devs/neovide/neovide.spec @@ -2,8 +2,8 @@ %global raw_forgeurl https://raw.githubusercontent.com/%{crate}/%{crate} Name: rust-neovide -Version: 0.15.2 -Release: 1%?dist +Version: 0.16.2 +Release: 1%{?dist} Summary: No Nonsense Neovim Client in Rust License: MIT diff --git a/anda/devs/powershell/powershell.spec b/anda/devs/powershell/powershell.spec index 59bf21cab4..8d5139dae9 100644 --- a/anda/devs/powershell/powershell.spec +++ b/anda/devs/powershell/powershell.spec @@ -18,7 +18,7 @@ %bcond test 1 Name: powershell -Version: 7.6.0 +Version: 7.6.2 Release: 1%{?dist} Summary: A cross-platform automation and configuration tool/framework SourceLicense: MIT @@ -36,9 +36,13 @@ BuildRequires: jq BuildRequires: nuget BuildRequires: unzip %if %{with test} +BuildRequires: aspnetcore-targeting-pack-%{dotnet_version} BuildRequires: glibc-all-langpacks BuildRequires: iputils +BuildRequires: hostname BuildRequires: langpacks-en +BuildRequires: ncurses +BuildRequires: openssl %endif Requires: dotnet-hostfxr-%{dotnet_version} Requires: dotnet-runtime-%{dotnet_version} @@ -52,6 +56,7 @@ Packager: Gilver E. %package doc Summary: Documentation files for PowerShell Requires: %{name} = %{evr} +BuildArch: noarch %description doc This package contains documentation for PowerShell. @@ -65,10 +70,9 @@ sed -i 's|add key=.*"|add key="nuget.org" value="https://api.nuget.org/v3/index. jq '.sdk.version = "%{dotnet_version}.0" | .sdk.rollForward = "feature"' global.json > _global.json mv _global.json global.json -%build export NUGET_PACKAGES="$PWD/nuget" -export DOTNET_NOLOGO=true -export DOTNET_CLI_TELEMETRY_OPTOUT=true +export DOTNET_NOLOGO=1 +export DOTNET_CLI_TELEMETRY_OPTOUT=1 dotnet restore src/powershell-unix -p:PublishReadyToRun=true dotnet restore src/TypeCatalogGen @@ -83,6 +87,11 @@ dotnet restore test/tools/TestService -p:RuntimeIdentifiers=linux-%{darch} dotnet restore test/tools/WebListener -p:RuntimeIdentifiers=linux-%{darch} dotnet restore test/tools/NamedPipeConnection/src/code +%build +NUGET_PACKAGES="$PWD/nuget" ; export NUGET_PACKAGES +DOTNET_NOLOGO=1 ; export DOTNET_NOLOGO +DOTNET_CLI_TELEMETRY_OPTOUT=1 ; export DOTNET_CLI_TELEMETRY_OPTOUT + pushd src/ResGen dotnet run --no-restore popd @@ -113,15 +122,15 @@ dotnet publish \ src/powershell-unix/ grep 'Microsoft.NETCore.App' "$INCFILE" | sed 's/;//' | while read -r assembly; do - install -Dm755 -t lib/ref "$assembly" + install -Dm755 -t lib/ref "$assembly" done -cp -a $NUGET_PACKAGES/microsoft.powershell.archive/1.2.5/. lib/Modules/Microsoft.PowerShell.Archive -cp -a $NUGET_PACKAGES/microsoft.powershell.psresourceget/1.1.1/. lib/Modules/Microsoft.PowerShell.PSResourceGet -cp -a $NUGET_PACKAGES/packagemanagement/1.4.8.1/. lib/Modules/PackageManagement -cp -a $NUGET_PACKAGES/powershellget/2.2.5/. lib/Modules/PowerShellGet -cp -a $NUGET_PACKAGES/psreadline/2.3.6/. lib/Modules/PSReadLine -cp -a $NUGET_PACKAGES/threadjob/2.0.3/. lib/Modules/ThreadJob +cp -a "$NUGET_PACKAGES/microsoft.powershell.archive/1.2.5/." lib/Modules/Microsoft.PowerShell.Archive +cp -a "$NUGET_PACKAGES/microsoft.powershell.psresourceget/1.2.0/." lib/Modules/Microsoft.PowerShell.PSResourceGet +cp -a "$NUGET_PACKAGES/packagemanagement/1.4.8.1/." lib/Modules/PackageManagement +cp -a "$NUGET_PACKAGES/powershellget/2.2.5/." lib/Modules/PowerShellGet +cp -a "$NUGET_PACKAGES/psreadline/2.4.5/." lib/Modules/PSReadLine +cp -a "$NUGET_PACKAGES/microsoft.powershell.threadjob/2.2.0/." lib/Modules/Microsoft.PowerShell.ThreadJob # Restore-PSPester unzip -ud temp_pester %{SOURCE1} @@ -146,18 +155,24 @@ install -Dpm644 assets/powershell_128.svg %{buildroot}%{_scalableiconsdir}/%{nam %if %{with test} %check -export NUGET_PACKAGES="$PWD/nuget" -export DOTNET_NOLOGO=true -export DOTNET_CLI_TELEMETRY_OPTOUT=true +NUGET_PACKAGES="$PWD/nuget" ; export NUGET_PACKAGES +DOTNET_NOLOGO=1 ; export DOTNET_NOLOGO +DOTNET_CLI_TELEMETRY_OPTOUT=1 ; export DOTNET_CLI_TELEMETRY_OPTOUT # Remove tests that fail in CIs rm test/powershell/engine/Help/HelpSystem.Tests.ps1 +rm test/powershell/engine/Help/UpdatableHelpSystem.Tests.ps1 +rm test/powershell/Host/PSVersionTable.Tests.ps1 +rm test/powershell/Host/Startup.Tests.ps1 rm test/powershell/Modules/Microsoft.PowerShell.Management/Start-Process.Tests.ps1 rm test/powershell/Modules/Microsoft.PowerShell.Utility/Format-Table.Tests.ps1 rm test/powershell/Language/Parser/RedirectionOperator.Tests.ps1 rm test/powershell/Language/Scripting/NativeExecution/NativeWindowsTildeExpansion.Tests.ps1 rm test/powershell/Modules/Microsoft.PowerShell.Utility/WebCmdlets.Tests.ps1 rm test/powershell/Modules/Microsoft.PowerShell.PSResourceGet/Microsoft.PowerShell.PSResourceGet.Tests.ps1 +rm test/powershell/dsc/dsc.profileresource.Tests.ps1 +rm test/powershell/engine/Remoting/SSHRemotingCmdlets.Tests.ps1 +rm test/powershell/Host/TabCompletion/TabCompletion.Tests.ps1 # Fails on timezone format rm test/powershell/Modules/Microsoft.PowerShell.Management/TimeZone.Tests.ps1 @@ -183,15 +198,15 @@ dotnet publish \ test/tools/TestAlc for project in TestExe TestService UnixSocket WebListener; do - dotnet publish \ - --no-restore \ - --runtime linux-%{darch} \ - --self-contained \ - --configuration Debug \ - --output test/tools/$project/bin \ - test/tools/$project - export PATH="$PATH:$PWD/test/tools/$project/bin/Debug/net%{dotnet_version}/linux-%{darch}" - done + dotnet publish \ + --no-restore \ + --runtime linux-%{darch} \ + --self-contained \ + --configuration Debug \ + --output test/tools/$project/bin \ + test/tools/$project + export PATH="$PATH:$PWD/test/tools/$project/bin/Debug/net%{dotnet_version}/linux-%{darch}" +done dotnet publish \ --no-restore \ @@ -200,11 +215,13 @@ dotnet publish \ --output test/tools/Modules/Microsoft.PowerShell.NamedPipeConnection \ test/tools/NamedPipeConnection/src/code + install -Dm644 -t test/tools/Modules/Microsoft.PowerShell.NamedPipeConnection \ test/tools/NamedPipeConnection/src/Microsoft.PowerShell.NamedPipeConnection.psd1 export LANG="en_US.UTF-8" export LC_ALL="$LANG" +export TERM="xterm-256color" # shellcheck disable=SC2016 lib/pwsh -noprofile -command ' @@ -235,5 +252,7 @@ lib/pwsh -noprofile -command ' %doc ADOPTERS.md %changelog +* Wed May 13 2026 Gilver E. - 7.6.1-1 +- Update to 7.6.1 * Wed Dec 24 2025 Gilver E. - 7.5.4-1 - Initial package diff --git a/anda/devs/rio/rio.spec b/anda/devs/rio/rio.spec index a03c4a3b4a..b8bd24f2d2 100644 --- a/anda/devs/rio/rio.spec +++ b/anda/devs/rio/rio.spec @@ -1,11 +1,11 @@ %global crate rioterm +%global appid com.rioterm.Rio %global _description %{expand: A hardware-accelerated terminal emulator focusing to run in desktops and browsers.} -%bcond docs 1 Name: rio -Version: 0.2.37 -Release: 2%{?dist} +Version: 0.4.7 +Release: 1%{?dist} Summary: A hardware-accelerated terminal written in Rust. SourceLicense: MIT License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND Apache-2.0 AND BSD-2-Clause AND BSL-1.0 AND (CC0-1.0 OR Apache-2.0 OR Apache-2.0 WITH LLVM-exception) AND (CC0-1.0 OR MIT-0 OR Apache-2.0) AND CC0-1.0 AND ISC AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND (MPL-2.0 OR GPL-3.0-only) AND MPL-2.0+ AND MPL-2.0 AND Unicode-3.0 AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) AND Zlib @@ -17,6 +17,7 @@ BuildRequires: desktop-file-utils BuildRequires: freetype-devel BuildRequires: cmake BuildRequires: gcc-c++ +BuildRequires: glslc BuildRequires: libxcb-devel BuildRequires: libxkbcommon-devel BuildRequires: mold @@ -25,10 +26,9 @@ BuildRequires: pkgconfig(alsa) Requires: freetype Requires: fontconfig Requires: hicolor-icon-theme +Requires: ncurses-term Obsoletes: %{crate} < %{version}-%{release} -%if %{with docs} -Suggests: %{name}-doc = %{version}-%{release} -%endif +Obsoletes: %{name}-doc < %{evr} Packager: Gilver E. %description %_description @@ -40,14 +40,6 @@ Requires: %{name} = %{version}-%{release} %description devel This package contains the development libraries for Rio. -%if %{with docs} -%package doc -Summary: Documentation for Rio - -%description doc -This package contains all official documentation files for the Rio terminal. -%endif - %prep %autosetup -n %{name}-%{version} %cargo_prep_online @@ -59,7 +51,8 @@ sed -i 's/Exec=.*/Exec=%{crate}/g' misc/%{name}.desktop %install install -Dm755 target/rpm/%{name} %{buildroot}%{_bindir}/%{crate} install -Dm755 target/rpm/*.so -t %{buildroot}%{_libdir} -install -Dm644 docs/static/assets/%{name}-logo.svg %{buildroot}%{_iconsdir}/hicolor/scalable/apps/%{name}.svg +install -Dm644 misc/logo.svg %{buildroot}%{_scalableiconsdir}/%{name}.svg +install -Dm644 misc/%{appid}.metainfo.xml -t %{buildroot}%{_metainfodir} desktop-file-install misc/%{name}.desktop %{cargo_license_online -a} > LICENSE.dependencies @@ -73,17 +66,12 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop %{_bindir}/%{crate} %{_datadir}/applications/%{name}.desktop %{_iconsdir}/hicolor/scalable/apps/%{name}.svg +%{_metainfodir}/%{appid}.metainfo.xml %files devel %{_libdir}/librio_backend.so -%{_libdir}/librio_proc_macros.so %{_libdir}/libsugarloaf.so -%if %{with docs} -%files doc -%doc docs/docs/* -%endif - %changelog * Mon May 5 2025 Gilver E. - 0.2.13-1 - Added doc package diff --git a/anda/devs/shibuya/python-shibuya.spec b/anda/devs/shibuya/python-shibuya.spec index 952c478d16..c8745c4c28 100644 --- a/anda/devs/shibuya/python-shibuya.spec +++ b/anda/devs/shibuya/python-shibuya.spec @@ -5,8 +5,8 @@ A responsive, good looking with modern design documentation theme for Sphinx, wi %bcond docs 0 Name: python-%{pypi_name} -Version: 2026.1.9 -Release: 2%{?dist} +Version: 2026.5.19 +Release: 1%{?dist} Summary: A clean, responsive, and customizable Sphinx documentation theme with light/dark mode License: BSD-3-Clause URL: https://shibuya.lepture.com diff --git a/anda/devs/tracy/tracy.spec b/anda/devs/tracy/tracy.spec index eb1b3e601a..6605a44ea7 100644 --- a/anda/devs/tracy/tracy.spec +++ b/anda/devs/tracy/tracy.spec @@ -1,12 +1,42 @@ +%if 0%{?fedora} >= 44 +%global gcc_compat 15 +%global __cc gcc-%{gcc_compat} +%global __cxx g++-%{gcc_compat} +%endif + Name: tracy Version: 0.13.1 -Release: 2%?dist +Release: 4%?dist Summary: A real time, nanosecond resolution, remote telemetry, hybrid frame and sampling profiler for games and other applications License: BSD-3-Clause URL: https://github.com/wolfpld/tracy Source0: https://github.com/wolfpld/tracy/archive/refs/tags/v%version.tar.gz -BuildRequires: pkgconfig(egl) pkgconfig(glfw3) pkgconfig(freetype2) pkgconfig(dbus-1) pkgconfig(libunwind) pkgconfig(libdebuginfod) pkgconfig(tbb) pkgconfig(wayland-client) pkgconfig(wayland-protocols) pkgconfig(xkbcommon) pkgconfig(capstone) pkgconfig(openssl) pkgconfig(pugixml) pkgconfig(libcurl) pkgconfig(libxslt) pkgconfig(libnghttp2) pkgconfig(libidn2) pkgconfig(libssh2) tbb expat libxml2 openssl-libs -BuildRequires: cmake gcc gcc-c++ meson +BuildRequires: pkgconfig(egl) +BuildRequires: pkgconfig(glfw3) +BuildRequires: pkgconfig(freetype2) +BuildRequires: pkgconfig(dbus-1) +BuildRequires: pkgconfig(libunwind) +BuildRequires: pkgconfig(libdebuginfod) +BuildRequires: pkgconfig(tbb) +BuildRequires: pkgconfig(wayland-client) +BuildRequires: pkgconfig(wayland-protocols) +BuildRequires: pkgconfig(xkbcommon) +BuildRequires: pkgconfig(capstone) +BuildRequires: pkgconfig(openssl) +BuildRequires: pkgconfig(pugixml) +BuildRequires: pkgconfig(libcurl) +BuildRequires: pkgconfig(libxslt) +BuildRequires: pkgconfig(libnghttp2) +BuildRequires: pkgconfig(libidn2) +BuildRequires: pkgconfig(libssh2) +BuildRequires: tbb +BuildRequires: expat +BuildRequires: libxml2 +BuildRequires: openssl-libs +BuildRequires: cmake +BuildRequires: meson +BuildRequires: gcc%{?gcc_compat} +BuildRequires: gcc%{?gcc_compat}-c++ Packager: Owen Zimmerman @@ -15,6 +45,7 @@ Tracy is a real time, nanosecond resolution, remote telemetry, hybrid frame and %package devel Summary: Development files for the tracy package +Requires: tracy = %{evr} %description devel Development files for the tracy package. @@ -22,8 +53,10 @@ Development files for the tracy package. %prep %autosetup -%build +%conf %meson -Dcpp_std=c++17 + +%build %meson_build for project in capture csvexport import update profiler do @@ -72,6 +105,9 @@ install -Dm644 icon/application-tracy.svg %buildroot%_iconsdir/hicolor/scalable/ %_includedir/tracy/* %changelog +* Tue Apr 21 2026 Owen Zimmerman - 0.13.1-2 +- Make gcc15 the default compiler on Fedora 44+ + * Mon Jan 19 2026 Owen Zimmerman - 0.13.1-1 - Fix compile issues, update for 0.13.1 diff --git a/anda/devs/turbowarp/turbowarp.spec b/anda/devs/turbowarp/turbowarp.spec index 052b9fe652..1d93897d70 100644 --- a/anda/devs/turbowarp/turbowarp.spec +++ b/anda/devs/turbowarp/turbowarp.spec @@ -2,8 +2,8 @@ Name: turbowarp-desktop %electronmeta -D -Version: 1.15.2 -Release: 1%?dist +Version: 1.16.0 +Release: 1%{?dist} Summary: A better offline editor for Scratch 3 URL: https://desktop.turbowarp.org/ License: GPL-3.0-only AND %{electron_license} @@ -94,6 +94,7 @@ Packager: junefish %build %npm_build -c -B -r fetch,webpack:prod +echo "Electron Builder" > %{rpmbuilddir}/webapp-tool.txt %install %electron_install -i %appid -I build/ diff --git a/anda/devs/yarn-berry/yarnpkg-berry.spec b/anda/devs/yarn-berry/yarnpkg-berry.spec index 49bbe211ba..644360dbae 100644 --- a/anda/devs/yarn-berry/yarnpkg-berry.spec +++ b/anda/devs/yarn-berry/yarnpkg-berry.spec @@ -1,7 +1,7 @@ %bcond bootstrap 0 Name: yarnpkg-berry -Version: 4.13.0 +Version: 4.16.0 Release: 1%{?dist} Summary: Active development version of Yarn License: BSD-2-Clause diff --git a/anda/devs/zed/nightly/zed-nightly.spec b/anda/devs/zed/nightly/zed-nightly.spec index 7e543ef727..d227e14bd3 100644 --- a/anda/devs/zed/nightly/zed-nightly.spec +++ b/anda/devs/zed/nightly/zed-nightly.spec @@ -1,11 +1,11 @@ -%global commit 6694a3bd14bba5d52c375cc4c3ce9681445cbc22 +%global commit df9c9f055e55c891e627ffe17cce51ac9e20c648 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260329 -%global ver 0.231.0 +%global commit_date 20260614 +%global ver 1.8.0 %bcond_with check %bcond_with debug_no_build -%bcond nightly 1 +%bcond nightly 0 %if 0%{?with_debug_no_build} %global debug_package %{nil} @@ -19,13 +19,14 @@ %global appstream_component desktop-application %global rustflags_debuginfo 0 +%global toolchain clang Name: zed-nightly Version: %ver^%commit_date.%shortcommit Release: 1%{?dist} Summary: Zed is a high-performance, multiplayer code editor -SourceLicense: AGPL-3.0-only AND Apache-2.0 AND GPL-3.0-or-later -License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 AND ISC) AND AGPL.3.0-only AND AGPL-3.0-or-later AND (Apache-2.0 OR BSL-1.0 OR MIT) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception) AND Apache-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR MIT OR Apache-2.0) AND BSD-2-Clause AND (CC0-1.0 OR Apache-2.0 OR Apache-2.0 WITH LLVM-exception) AND (CC0-1.0 OR Apache-2.0) AND (CC0-1.0 OR MIT-0 OR Apache-2.0) AND CC0-1.0 AND GPL-3.0-or-later AND (ISC AND (Apache-2.0 OR ISC) AND OpenSSL) AND (ISC AND (Apache-2.0 OR ISC)) AND ISC AND (MIT AND (MIT OR Apache-2.0)) AND (MIT AND BSD-3-Clause) AND (MIT OR Apache-2.0 OR CC0-1.0) AND (MIT OR Apache-2.0 OR NCSA) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND MPL-2.0 AND Unicode-3.0 AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) AND Zlib +SourceLicense: Apache-2.0 AND GPL-3.0-or-later +License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND NCSA) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 AND ISC) AND (Apache-2.0 OR BSL-1.0 OR MIT) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR GPL-2.0-only) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 OR MIT/BSL-1.0/CC0-1.0) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception) AND Apache-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR MIT OR Apache-2.0) AND BSD-2-Clause AND (CC0-1.0 OR Apache-2.0 OR Apache-2.0 WITH LLVM-exception) AND (CC0-1.0 OR Apache-2.0) AND (CC0-1.0 OR MIT-0 OR Apache-2.0) AND CC0-1.0 AND GPL-3.0-or-later AND (ISC AND (Apache-2.0 OR ISC) AND OpenSSL) AND (ISC AND (Apache-2.0 OR ISC)) AND ISC AND (MIT AND (MIT OR Apache-2.0)) AND (MIT AND BSD-3-Clause) AND (MIT OR Apache-2.0 OR CC0-1.0) AND (MIT OR Apache-2.0 OR NCSA) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND MPL-2.0 AND Unicode-3.0 AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) AND Zlib URL: https://zed.dev/ Source0: https://github.com/zed-industries/zed/archive/%{commit}.tar.gz Source1: override.xml @@ -174,7 +175,6 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/%appid.desktop %files %doc CODE_OF_CONDUCT.md %doc README.md -%license LICENSE-AGPL %license LICENSE-APACHE %license LICENSE-GPL %if %{without debug_no_build} diff --git a/anda/devs/zed/preview/zed-preview.spec b/anda/devs/zed/preview/zed-preview.spec index 3b7c976c4b..bae18b8f06 100644 --- a/anda/devs/zed/preview/zed-preview.spec +++ b/anda/devs/zed/preview/zed-preview.spec @@ -1,3 +1,5 @@ +%global toolchain clang + %bcond_with check %bcond_with debug_no_build @@ -5,7 +7,7 @@ %global debug_package %{nil} %endif -%global ver 0.230.0-pre +%global ver 1.7.2-pre # Exclude input files from mangling %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ @@ -19,9 +21,8 @@ Name: zed-preview Version: %(echo %ver | sed 's/-/~/') Release: 1%{?dist} Summary: Zed is a high-performance, multiplayer code editor -SourceLicense: AGPL-3.0-only AND Apache-2.0 AND GPL-3.0-or-later -License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 AND ISC) AND AGPL.3.0-only AND AGPL-3.0-or-later AND (Apache-2.0 OR BSL-1.0 OR MIT) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception) AND Apache-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR MIT OR Apache-2.0) AND BSD-2-Clause AND (CC0-1.0 OR Apache-2.0 OR Apache-2.0 WITH LLVM-exception) AND (CC0-1.0 OR Apache-2.0) AND (CC0-1.0 OR MIT-0 OR Apache-2.0) AND CC0-1.0 AND GPL-3.0-or-later AND (ISC AND (Apache-2.0 OR ISC) AND OpenSSL) AND (ISC AND (Apache-2.0 OR ISC)) AND ISC AND (MIT AND (MIT OR Apache-2.0)) AND (MIT AND BSD-3-Clause) AND (MIT OR Apache-2.0 OR CC0-1.0) AND (MIT OR Apache-2.0 OR NCSA) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND MPL-2.0 AND Unicode-3.0 AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) AND Zlib -URL: https://zed.dev/ +SourceLicense: Apache-2.0 AND GPL-3.0-or-later +License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND NCSA) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 AND ISC) AND (Apache-2.0 OR BSL-1.0 OR MIT) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR GPL-2.0-only) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 OR MIT/BSL-1.0/CC0-1.0) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception) AND Apache-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR MIT OR Apache-2.0) AND BSD-2-Clause AND (CC0-1.0 OR Apache-2.0 OR Apache-2.0 WITH LLVM-exception) AND (CC0-1.0 OR Apache-2.0) AND (CC0-1.0 OR MIT-0 OR Apache-2.0) AND CC0-1.0 AND GPL-3.0-or-later AND (ISC AND (Apache-2.0 OR ISC) AND OpenSSL) AND (ISC AND (Apache-2.0 OR ISC)) AND ISC AND (MIT AND (MIT OR Apache-2.0)) AND (MIT AND BSD-3-Clause) AND (MIT OR Apache-2.0 OR CC0-1.0) AND (MIT OR Apache-2.0 OR NCSA) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND MPL-2.0 AND Unicode-3.0 AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) AND ZlibURL: https://zed.dev/ Source0: https://github.com/zed-industries/zed/archive/refs/tags/v%{ver}.tar.gz Source1: override.xml @@ -164,7 +165,6 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/%appid.desktop %files %doc CODE_OF_CONDUCT.md %doc README.md -%license LICENSE-AGPL %license LICENSE-APACHE %license LICENSE-GPL %if %{without debug_no_build} diff --git a/anda/devs/zed/stable/zed.spec b/anda/devs/zed/stable/zed.spec index e9ec48cc68..951846bfed 100644 --- a/anda/devs/zed/stable/zed.spec +++ b/anda/devs/zed/stable/zed.spec @@ -1,3 +1,5 @@ +%global toolchain clang + %bcond_with check %bcond_with debug_no_build @@ -15,7 +17,7 @@ %global rustflags_debuginfo 0 Name: zed -Version: 0.229.0 +Version: 1.6.3 Release: 1%{?dist} Summary: Zed is a high-performance, multiplayer code editor SourceLicense: AGPL-3.0-only AND Apache-2.0 AND GPL-3.0-or-later diff --git a/anda/devs/zsh-autocomplete/anda.hcl b/anda/devs/zsh-autocomplete/anda.hcl index 6385138a40..ec306c6517 100644 --- a/anda/devs/zsh-autocomplete/anda.hcl +++ b/anda/devs/zsh-autocomplete/anda.hcl @@ -1,4 +1,5 @@ project pkg { + arches = ["x86_64"] rpm { spec = "zsh-autocomplete.spec" } diff --git a/anda/devs/zsh-autocomplete/zsh-autocomplete.spec b/anda/devs/zsh-autocomplete/zsh-autocomplete.spec index 663cce953d..d2c315a854 100644 --- a/anda/devs/zsh-autocomplete/zsh-autocomplete.spec +++ b/anda/devs/zsh-autocomplete/zsh-autocomplete.spec @@ -1,5 +1,3 @@ -%define debug_package %nil - Name: zsh-autocomplete Version: 25.03.19 Release: 1%?dist @@ -8,6 +6,7 @@ License: MIT URL: https://github.com/marlonrichert/zsh-autocomplete Source0: %url/archive/refs/tags/%version.tar.gz Packager: madonuko +BuildArch: noarch %description This plugin for Zsh adds real-time type-ahead autocompletion to your command diff --git a/anda/fonts/geist/geist.spec b/anda/fonts/geist/geist.spec index 577d99b9b2..ccf2e92a35 100644 --- a/anda/fonts/geist/geist.spec +++ b/anda/fonts/geist/geist.spec @@ -1,4 +1,4 @@ -%global ver 1.8.0 +%global ver v1.7.2 Name: geist-font Version: %(echo %ver | sed 's/^geist@//') diff --git a/anda/fonts/iosevka/iosevka-fonts.spec b/anda/fonts/iosevka/iosevka-fonts.spec index 5286f4fcea..6d088534d2 100644 --- a/anda/fonts/iosevka/iosevka-fonts.spec +++ b/anda/fonts/iosevka/iosevka-fonts.spec @@ -52,7 +52,7 @@ %global fontdescription %{expand: Versatile typeface for code, from code.} -Version: 34.3.0 +Version: 34.6.3 Release: 1%{?dist} Packager: Cappy Ishihara Summary: Versatile typeface for code, from code. diff --git a/anda/fonts/juliamono/juliamono.spec b/anda/fonts/juliamono/juliamono.spec index 1494c19c6c..c16492e87e 100644 --- a/anda/fonts/juliamono/juliamono.spec +++ b/anda/fonts/juliamono/juliamono.spec @@ -1,6 +1,6 @@ Name: juliamono-fonts Version: 0.062 -Release: 1%?dist +Release: 2%?dist URL: https://juliamono.netlify.app/ Source0: https://github.com/cormullion/juliamono/archive/refs/tags/v%{version}.tar.gz License: OFL-1.1 @@ -8,7 +8,7 @@ Summary: A monospaced font with reasonable unicode support Requires: xorg-x11-font-utils BuildArch: noarch Provides: JuliaMono-fonts -Packager: Its-J +Packager: Its-J %description @@ -29,5 +29,8 @@ install -Dm644 *.ttf %{buildroot}%{_fontbasedir}/juliamono/ %{_fontbasedir}/juliamono/*.ttf %changelog -* Fri Nov 21 2025 Its-J -- Package JuliaMono \ No newline at end of file +* Tue Apr 14 2026 Its-J +- Add email to my previous contributor attributions + +* Fri Nov 21 2025 Its-J +- Package JuliaMono diff --git a/anda/fonts/sarasa-gothic/sarasa-gothic-fonts.spec b/anda/fonts/sarasa-gothic/sarasa-gothic-fonts.spec index a435e105fd..ee6f30f91a 100644 --- a/anda/fonts/sarasa-gothic/sarasa-gothic-fonts.spec +++ b/anda/fonts/sarasa-gothic/sarasa-gothic-fonts.spec @@ -1,5 +1,5 @@ Name: sarasa-gothic-fonts -Version: 1.0.37 +Version: 1.0.39 Release: 1%{?dist} URL: https://github.com/be5invis/Sarasa-Gothic Source0: %url/releases/download/v%version/Sarasa-TTC-%version.7z diff --git a/anda/games/chess-tui/rust-chess-tui.spec b/anda/games/chess-tui/rust-chess-tui.spec index bac8b542a9..2046adf809 100644 --- a/anda/games/chess-tui/rust-chess-tui.spec +++ b/anda/games/chess-tui/rust-chess-tui.spec @@ -4,8 +4,8 @@ %global crate chess-tui Name: rust-chess-tui -Version: 2.5.1 -Release: 1%?dist +Version: 2.7.1 +Release: 1%{?dist} Summary: Rusty chess game in your terminal 🦀 License: MIT diff --git a/anda/games/emulationstation-de/emulationstation-de.spec b/anda/games/emulationstation-de/emulationstation-de.spec index 43a09221f8..6f7b5681f2 100644 --- a/anda/games/emulationstation-de/emulationstation-de.spec +++ b/anda/games/emulationstation-de/emulationstation-de.spec @@ -8,8 +8,8 @@ %bcond_with kms Name: emulationstation-de -Version: 3.4.0 -Release: 1%?dist +Version: 3.4.1 +Release: 1%{?dist} Summary: ES-DE is a frontend for browsing and launching games from your multi-platform collection. Packager: Cappy Ishihara License: MIT diff --git a/anda/games/gamescope-session-opengamepadui/gamescope-session-opengamepadui.spec b/anda/games/gamescope-session-opengamepadui/gamescope-session-opengamepadui.spec index f7fa08edeb..43dbae5a53 100644 --- a/anda/games/gamescope-session-opengamepadui/gamescope-session-opengamepadui.spec +++ b/anda/games/gamescope-session-opengamepadui/gamescope-session-opengamepadui.spec @@ -1,6 +1,6 @@ -%global commit 72df08d154fefb6354f6bb1a8d8cf587e86ee227 +%global commit 88087a086ab732211c466b41f5d64229ce51c050 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260327 +%global commit_date 20260411 Name: gamescope-session-opengamepadui Version: 0~%{commit_date}git.%{shortcommit} diff --git a/anda/games/gamescope-session-opengamepadui/update.rhai b/anda/games/gamescope-session-opengamepadui/update.rhai index ad1104c154..5dc68937a3 100644 --- a/anda/games/gamescope-session-opengamepadui/update.rhai +++ b/anda/games/gamescope-session-opengamepadui/update.rhai @@ -1,7 +1,5 @@ -if filters.contains("nightly") { - rpm.global("commit", gh_commit("OpenGamingCollective/gamescope-session-steam")); - if rpm.changed() { +rpm.global("commit", gh_commit("OpenGamingCollective/gamescope-session-opengamepadui")); +if rpm.changed() { rpm.release(); rpm.global("commit_date", date()); - } } diff --git a/anda/games/gamescope-session-steam/gamescope-session-steam.spec b/anda/games/gamescope-session-steam/gamescope-session-steam.spec index aa79e95566..4fc849bd2a 100644 --- a/anda/games/gamescope-session-steam/gamescope-session-steam.spec +++ b/anda/games/gamescope-session-steam/gamescope-session-steam.spec @@ -1,8 +1,8 @@ %define debug_package %nil -%global commit 72df08d154fefb6354f6bb1a8d8cf587e86ee227 +%global commit 1019f9a2a98b7aaa180c3739901244854b126787 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260325 +%global commit_date 20260518 Name: gamescope-session-steam Version: 0~%{commit_date}git.%{shortcommit} @@ -28,6 +28,10 @@ BuildArch: noarch install -Dpm0755 -t "%buildroot%_bindir/" ".%_bindir/steam-http-loader" install -Dpm0755 -t "%buildroot%_bindir/" ".%_bindir/steamos-select-branch" install -Dpm0755 -t "%buildroot%_bindir/" ".%_bindir/steamos-session-select" +install -Dpm0755 -t "%buildroot%_bindir/" ".%_bindir/steamos-update" +install -Dpm0755 -t "%buildroot%_bindir/steamos-polkit-helpers/" ".%_bindir/steamos-polkit-helpers/jupiter-biosupdate" +install -Dpm0755 -t "%buildroot%_bindir/steamos-polkit-helpers/" ".%_bindir/steamos-polkit-helpers/steamos-select-branch" +install -Dpm0755 -t "%buildroot%_bindir/steamos-polkit-helpers/" ".%_bindir/steamos-polkit-helpers/steamos-update" install -Dpm0644 -t "%buildroot%_datadir/applications/" ".%_datadir/applications/steam_http_loader.desktop" install -Dpm0644 -t "%buildroot%_datadir/applications/" ".%_datadir/applications/gamescope-mimeapps.list" install -Dpm0755 -t "%buildroot%_datadir/gamescope-session-plus/sessions.d/" ".%_datadir/gamescope-session-plus/sessions.d/steam" @@ -40,6 +44,10 @@ install -Dpm0644 -t "%buildroot%_datadir/wayland-sessions/" ".%_datadir/wayland- %{_bindir}/steam-http-loader %{_bindir}/steamos-select-branch %{_bindir}/steamos-session-select +%{_bindir}/steamos-update +%{_bindir}/steamos-polkit-helpers/jupiter-biosupdate +%{_bindir}/steamos-polkit-helpers/steamos-select-branch +%{_bindir}/steamos-polkit-helpers/steamos-update %{_datadir}/applications/gamescope-mimeapps.list %{_datadir}/applications/steam_http_loader.desktop %{_datadir}/gamescope-session-plus/sessions.d/steam diff --git a/anda/games/heroic-games-launcher/heroic-games-launcher.spec b/anda/games/heroic-games-launcher/heroic-games-launcher.spec index 5d311e425d..cd82b3014b 100644 --- a/anda/games/heroic-games-launcher/heroic-games-launcher.spec +++ b/anda/games/heroic-games-launcher/heroic-games-launcher.spec @@ -2,14 +2,14 @@ %global git_name %(echo %{org_name} | sed 's/-//g') %global appid com.heroicgameslauncher.hgl %global shortname heroic -%global legendary_version 0.20.42 +%global legendary_version 0.20.43 %global gogdl_version 1.2.1 %global nile_version 1.1.2 %global comet_version 0.2.0 Name: %{shortname}-games-launcher -Version: 2.20.1 -Release: 1%?dist +Version: 2.22.0 +Release: 1%{?dist} Summary: A games launcher for GOG, Amazon, and Epic Games License: GPL-3.0-only AND MIT AND BSD-3-Clause URL: https://heroicgameslauncher.com diff --git a/anda/games/inputplumber/inputplumber.spec b/anda/games/inputplumber/inputplumber.spec index 6bb7daf804..b00b973af8 100644 --- a/anda/games/inputplumber/inputplumber.spec +++ b/anda/games/inputplumber/inputplumber.spec @@ -1,7 +1,7 @@ %global __brp_mangle_shebangs %{nil} Name: inputplumber -Version: 0.75.2 +Version: 0.77.5 Release: 1%{?dist} Summary: Open source input router and remapper daemon for Linux License: GPL-3.0-or-later @@ -52,6 +52,7 @@ keyboards) and translate their input to a variety of virtual device formats. %_datadir/dbus-1/system.d/org.shadowblip.InputPlumber.conf %_datadir/inputplumber/ %{_udevrulesdir}/99-inputplumber-device-setup.rules +%{_udevrulesdir}/50-8bitdo-u2-controller.rules %{_datadir}/polkit-1/actions/org.shadowblip.InputPlumber.policy %{_datadir}/polkit-1/rules.d/org.shadowblip.InputPlumber.rules diff --git a/anda/games/launcher.moe/anime-game-launcher/anime-game-launcher.spec b/anda/games/launcher.moe/anime-game-launcher/anime-game-launcher.spec index a23f6941ec..e88f75d9e5 100644 --- a/anda/games/launcher.moe/anime-game-launcher/anime-game-launcher.spec +++ b/anda/games/launcher.moe/anime-game-launcher/anime-game-launcher.spec @@ -2,8 +2,8 @@ %global crate anime-game-launcher %global appid moe.launcher.an-anime-game-launcher Name: %{crate} -Version: 3.18.0 -Release: 1%?dist +Version: 3.19.6 +Release: 1%{?dist} Summary: An Anime Game Launcher for Linux with automatic patching and telemetry disabling License: GPL-3.0-or-later @@ -53,6 +53,7 @@ BuildRequires: protobuf-devel protobuf-compiler %install %crate_install_bin +install -Dm644 assets/moe.launcher.an-anime-game-launcher.metainfo.xml %{buildroot}%{_metainfodir}/moe.launcher.an-anime-game-launcher.metainfo.xml install -Dm644 assets/images/icon.png %{buildroot}%{_datadir}/icons/hicolor/512x512/apps/%{appid}.png desktop-file-install \ --set-icon="%{appid}" \ @@ -70,7 +71,11 @@ desktop-file-validate %{buildroot}/%{_datadir}/applications/anime-game-launcher. %{_datadir}/applications/anime-game-launcher.desktop %{_bindir}/%{crate} %{_datadir}/icons/hicolor/512x512/apps/%{appid}.png +%{_metainfodir}/moe.launcher.an-anime-game-launcher.metainfo.xml %changelog +* Mon Dec 08 2025 Owen Zimmerman +- Install metainfo + * Sat Sep 20 2025 Cappy Ishihara - Initial package diff --git a/anda/games/launcher.moe/honkers-railway-launcher/honkers-railway-launcher.spec b/anda/games/launcher.moe/honkers-railway-launcher/honkers-railway-launcher.spec index c449956491..4b6a694870 100644 --- a/anda/games/launcher.moe/honkers-railway-launcher/honkers-railway-launcher.spec +++ b/anda/games/launcher.moe/honkers-railway-launcher/honkers-railway-launcher.spec @@ -2,8 +2,8 @@ %global crate honkers-railway-launcher %global appid moe.launcher.the-honkers-railway-launcher Name: %{crate} -Version: 1.14.4 -Release: 1%?dist +Version: 1.15.1 +Release: 1%{?dist} Summary: The Honkers Railway launcher for Linux with automatic patching and telemetry disabling License: GPL-3.0-or-later diff --git a/anda/games/launcher.moe/sleepy-launcher/sleepy-launcher.spec b/anda/games/launcher.moe/sleepy-launcher/sleepy-launcher.spec index 8ee3aaded9..2a231b1586 100644 --- a/anda/games/launcher.moe/sleepy-launcher/sleepy-launcher.spec +++ b/anda/games/launcher.moe/sleepy-launcher/sleepy-launcher.spec @@ -2,8 +2,8 @@ %global crate sleepy-launcher %global appid moe.launcher.sleepy-launcher Name: %{crate} -Version: 1.6.2 -Release: 1%?dist +Version: 1.6.6 +Release: 1%{?dist} Summary: Sleepy Game Launcher for Linux with automatic patching and telemetry disabling License: GPL-3.0-or-later diff --git a/anda/games/osu-lazer/osu-lazer.spec b/anda/games/osu-lazer/osu-lazer.spec index e9bfd4c8c5..01967c9343 100644 --- a/anda/games/osu-lazer/osu-lazer.spec +++ b/anda/games/osu-lazer/osu-lazer.spec @@ -1,9 +1,9 @@ -%define osuresver 2026.305.0 +%define osuresver 2026.516.0 %global debug_package %{nil} %define __strip /bin/true Name: osu-lazer -Version: 2026.305.0 +Version: 2026.518.0 Release: 1%{?dist} Summary: The future of osu! and the beginning of an open era! Commonly known by the codename osu!lazer. Pew pew. ExclusiveArch: x86_64 diff --git a/anda/games/prismlauncher-nightly/0001-find-cmark-with-pkgconfig.patch b/anda/games/prismlauncher-nightly/0001-find-cmark-with-pkgconfig.patch deleted file mode 100644 index d41ef66bec..0000000000 --- a/anda/games/prismlauncher-nightly/0001-find-cmark-with-pkgconfig.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 5a38fc2c9a329e88c8337af541dfeccaeff1fefb Mon Sep 17 00:00:00 2001 -From: seth -Date: Sun, 15 Jan 2023 14:47:49 -0500 -Subject: [PATCH] find cmark with pkgconfig - -Signed-off-by: seth ---- - cmake/Findcmark.cmake | 59 +++++++++++++++++++++++++++++++++++++++++++ - 1 file changed, 59 insertions(+) - create mode 100755 cmake/Findcmark.cmake - -diff --git a/cmake/Findcmark.cmake b/cmake/Findcmark.cmake -new file mode 100755 -index 00000000..9858e5df ---- /dev/null -+++ b/cmake/Findcmark.cmake -@@ -0,0 +1,59 @@ -+# SPDX-FileCopyrightText: 2019 Black Hat -+# SPDX-License-Identifier: GPL-3.0-only -+ -+# -+# CMake module to search for the cmark library -+# -+ -+# first try to find cmark-config.cmake -+# path to a file not in the search path can be set with 'cmake -Dcmark_DIR=some/path/' -+find_package(cmark CONFIG QUIET) -+if(cmark_FOUND AND TARGET cmark::cmark) -+ # found it! -+ return() -+endif() -+ -+find_package(PkgConfig QUIET) -+if(PKG_CONFIG_FOUND) -+ pkg_check_modules(PC_CMARK QUIET cmark) -+endif() -+ -+if(NOT CMARK_INCLUDE_DIR) -+ find_path(CMARK_INCLUDE_DIR -+ NAMES cmark.h -+ PATHS -+ ${PC_CMARK_INCLUDEDIR} -+ ${PC_CMARK_INCLUDE_DIRS} -+ /usr/include -+ /usr/local/include) -+endif() -+ -+if(NOT CMARK_LIBRARY) -+ find_library(CMARK_LIBRARY -+ NAMES cmark -+ HINTS -+ ${PC_CMARK_LIBDIR} -+ ${PC_CMARK_LIBRARY_DIRS} -+ /usr/lib -+ /usr/local/lib) -+endif() -+ -+if(NOT TARGET cmark::cmark) -+ add_library(cmark::cmark UNKNOWN IMPORTED) -+ set_target_properties(cmark::cmark -+ PROPERTIES INTERFACE_INCLUDE_DIRECTORIES -+ ${CMARK_INCLUDE_DIR}) -+ set_property(TARGET cmark::cmark APPEND -+ PROPERTY IMPORTED_LOCATION ${CMARK_LIBRARY}) -+endif() -+ -+include(FindPackageHandleStandardArgs) -+find_package_handle_standard_args(cmark -+ DEFAULT_MSG -+ CMARK_INCLUDE_DIR -+ CMARK_LIBRARY) -+ -+mark_as_advanced(CMARK_LIBRARY CMARK_INCLUDE_DIR) -+ -+set(CMARK_LIBRARIES ${CMARK_LIBRARY}) -+set(CMARK_INCLUDE_DIRS ${CMARK_INCLUDE_DIR}) --- -2.39.0 - diff --git a/anda/games/prismlauncher-nightly/anda.hcl b/anda/games/prismlauncher-nightly/anda.hcl index 061a1307db..fdc18bbc52 100644 --- a/anda/games/prismlauncher-nightly/anda.hcl +++ b/anda/games/prismlauncher-nightly/anda.hcl @@ -1,7 +1,7 @@ project pkg { rpm { spec = "prismlauncher-nightly.spec" - extra_repos = ["https://packages.adoptium.net/artifactory/rpm/fedora/\\$releasever/\\$basearch"] + extra_repos = ["https://packages.adoptium.net/artifactory/rpm/fedora/rawhide/\\$basearch"] } labels { nightly = 1 diff --git a/anda/games/prismlauncher-nightly/prismlauncher-nightly.spec b/anda/games/prismlauncher-nightly/prismlauncher-nightly.spec index 1ad8738c79..71aac024e3 100644 --- a/anda/games/prismlauncher-nightly/prismlauncher-nightly.spec +++ b/anda/games/prismlauncher-nightly/prismlauncher-nightly.spec @@ -3,10 +3,10 @@ %global name_pretty %{quote:Prism Launcher (Nightly)} %global appid org.prismlauncher.PrismLauncher-nightly -%global commit 01a4a6a528765b4302ff9e17ed8c247f4b5f90a1 +%global commit 5f59aa58294b24e178e30a408230dda3d98ea5b0 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260329 +%global commit_date 20260612 %global snapshot_info %{commit_date}.%{shortcommit} # Change this variables if you want to use custom keys @@ -20,13 +20,12 @@ %global build_platform terra Name: prismlauncher-nightly -Version: 11.0^%{snapshot_info} +Version: 12.0^%{snapshot_info} Release: 1%{?dist} Summary: Minecraft launcher with ability to manage multiple instances License: GPL-3.0-only AND Apache-2.0 AND LGPL-3.0-only AND GPL-3.0-or-later AND GPL-2.0-or-later AND ISC AND OFL-1.1 AND LGPL-2.1-only AND MIT AND BSD-2-Clause-FreeBSD AND BSD-3-Clause AND LGPL-3.0-or-later Group: Amusements/Games URL: https://prismlauncher.org/ -Patch0: 0001-find-cmark-with-pkgconfig.patch Source2: nightly.xml BuildRequires: cmake >= 3.15 @@ -38,16 +37,12 @@ BuildRequires: terra-appstream-helper # Make sure you have Adoptium's repositories enabled # https://fedoraproject.org/wiki/Changes/ThirdPartyLegacyJdks # https://adoptium.net/installation/linux/#_centosrhelfedora_instructions -%if 0%{?fedora} > 41 BuildRequires: temurin-17-jdk -%else -BuildRequires: java-17-openjdk-devel -%endif BuildRequires: anda-srpm-macros BuildRequires: desktop-file-utils BuildRequires: libappstream-glib BuildRequires: tomlplusplus-devel -BuildRequires: cmake(ghc_filesystem) +BuildRequires: vulkan-headers BuildRequires: pkgconfig(libqrencode) BuildRequires: pkgconfig(libarchive) BuildRequires: pkgconfig(gamemode) @@ -60,8 +55,6 @@ BuildRequires: cmake(Qt%{qt_version}Widgets) >= %{min_qt_version} BuildRequires: cmake(Qt%{qt_version}Xml) >= %{min_qt_version} BuildRequires: cmake(Qt%{qt_version}NetworkAuth) >= %{min_qt_version} -BuildRequires: cmake(Qt6Core5Compat) - BuildRequires: pkgconfig(libcmark) BuildRequires: pkgconfig(scdoc) BuildRequires: pkgconfig(zlib) @@ -72,11 +65,6 @@ Requires(postun): desktop-file-utils Requires: qt%{qt_version}-qtimageformats Requires: qt%{qt_version}-qtsvg Requires: javapackages-filesystem -# See note above -%if 0%{?fedora} && 0%{?fedora} < 42 -Recommends: java-17-openjdk -Suggests: java-1.8.0-openjdk -%endif # xrandr needed for LWJGL [2.9.2, 3) https://github.com/LWJGL/lwjgl/issues/128 Recommends: xrandr @@ -97,13 +85,11 @@ multiple installations of Minecraft at once (Fork of MultiMC) %prep %git_clone https://github.com/%{nice_name}/%{nice_name}.git %{commit} -rm -rf libraries/{extra-cmake-modules,zlib}/ - # Do not set RPATH sed -i "s|\$ORIGIN/||" CMakeLists.txt -%build +%conf %cmake \ -DLauncher_QT_VERSION_MAJOR="%{qt_version}" \ -DLauncher_BUILD_PLATFORM="%{build_platform}" \ @@ -116,8 +102,12 @@ sed -i "s|\$ORIGIN/||" CMakeLists.txt %if "%{curseforge_key}" != "default" -DLauncher_CURSEFORGE_API_KEY="%{curseforge_key}" \ %endif - -DBUILD_TESTING=OFF - + -DBUILD_TESTING=OFF \ +%if 0%{?fedora} > 43 + -DCMAKE_CXX_FLAGS="$CXXFLAGS -Wno-error=sfinae-incomplete" +%endif + +%build %cmake_build diff --git a/anda/games/prismlauncher/anda.hcl b/anda/games/prismlauncher/anda.hcl index 3a35d4fe52..fc4ef0f47c 100644 --- a/anda/games/prismlauncher/anda.hcl +++ b/anda/games/prismlauncher/anda.hcl @@ -1,7 +1,7 @@ project pkg { rpm { spec = "prismlauncher.spec" - extra_repos = ["https://packages.adoptium.net/artifactory/rpm/fedora/\\$releasever/\\$basearch"] + extra_repos = ["https://packages.adoptium.net/artifactory/rpm/fedora/rawhide/\\$basearch"] } labels { mock = 1 diff --git a/anda/games/prismlauncher/prismlauncher.spec b/anda/games/prismlauncher/prismlauncher.spec index 4c7cff5acf..8afe76fe12 100644 --- a/anda/games/prismlauncher/prismlauncher.spec +++ b/anda/games/prismlauncher/prismlauncher.spec @@ -13,8 +13,8 @@ %global build_platform terra Name: prismlauncher -Version: 10.0.5 -Release: 1%?dist +Version: 11.0.2 +Release: 2%{?dist} Summary: Minecraft launcher with ability to manage multiple instances # see COPYING.md for more information # each file in the source also contains a SPDX-License-Identifier header that declares its license @@ -31,15 +31,10 @@ BuildRequires: gcc-c++ # Make sure you have Adoptium's repositories enabled # https://fedoraproject.org/wiki/Changes/ThirdPartyLegacyJdks # https://adoptium.net/installation/linux/#_centosrhelfedora_instructions -%if 0%{?fedora} > 41 BuildRequires: temurin-17-jdk -%else -BuildRequires: java-17-openjdk-devel -%endif BuildRequires: anda-srpm-macros BuildRequires: desktop-file-utils BuildRequires: libappstream-glib -BuildRequires: cmake(ghc_filesystem) BuildRequires: cmake(Qt%{qt_version}Concurrent) >= %{min_qt_version} BuildRequires: cmake(Qt%{qt_version}Core) >= %{min_qt_version} BuildRequires: cmake(Qt%{qt_version}Gui) >= %{min_qt_version} @@ -49,12 +44,11 @@ BuildRequires: cmake(Qt%{qt_version}Widgets) >= %{min_qt_version} BuildRequires: cmake(Qt%{qt_version}Xml) >= %{min_qt_version} BuildRequires: cmake(Qt%{qt_version}NetworkAuth) >= %{min_qt_version} BuildRequires: tomlplusplus-devel +BuildRequires: vulkan-headers BuildRequires: pkgconfig(libqrencode) BuildRequires: pkgconfig(libarchive) BuildRequires: pkgconfig(gamemode) -BuildRequires: cmake(Qt6Core5Compat) - BuildRequires: pkgconfig(libcmark) BuildRequires: pkgconfig(scdoc) BuildRequires: pkgconfig(zlib) @@ -65,12 +59,7 @@ Requires(postun): desktop-file-utils Requires: qt%{qt_version}-qtimageformats Requires: qt%{qt_version}-qtsvg Requires: javapackages-filesystem -Recommends: java-21-openjdk -# See note above -%if 0%{?fedora} && 0%{?fedora} < 42 -Recommends: java-17-openjdk -Suggests: java-1.8.0-openjdk -%endif +Recommends: java-25-openjdk # xrandr needed for LWJGL [2.9.2, 3) https://github.com/LWJGL/lwjgl/issues/128 Recommends: xrandr @@ -90,13 +79,10 @@ multiple installations of Minecraft at once (Fork of MultiMC) %prep %autosetup -n PrismLauncher-%{version} -rm -rf libraries/{extra-cmake-modules,filesystem,zlib} - # Do not set RPATH sed -i "s|\$ORIGIN/||" CMakeLists.txt - -%build +%conf %cmake \ -DLauncher_QT_VERSION_MAJOR="%{qt_version}" \ -DLauncher_BUILD_PLATFORM="%{build_platform}" \ @@ -109,8 +95,12 @@ sed -i "s|\$ORIGIN/||" CMakeLists.txt %if "%{curseforge_key}" != "default" -DLauncher_CURSEFORGE_API_KEY="%{curseforge_key}" \ %endif - -DBUILD_TESTING=OFF + -DBUILD_TESTING=OFF \ +%if 0%{?fedora} > 43 + -DCMAKE_CXX_FLAGS="$CXXFLAGS -Wno-error=sfinae-incomplete" +%endif +%build %cmake_build @@ -134,7 +124,7 @@ sed -i "s|\$ORIGIN/||" CMakeLists.txt %{_appsdir}/org.prismlauncher.PrismLauncher.desktop %{_scalableiconsdir}/org.prismlauncher.PrismLauncher.svg %{_hicolordir}/256x256/apps/org.prismlauncher.PrismLauncher.png -%{_datadir}/mime/packages/modrinth-mrpack-mime.xml +%{_datadir}/mime/packages/org.prismlauncher.PrismLauncher.xml %{_datadir}/qlogging-categories%{qt_version}/prismlauncher.categories %{_mandir}/man?/prismlauncher.* %{_metainfodir}/org.prismlauncher.PrismLauncher.metainfo.xml diff --git a/anda/games/protonplus/anda.hcl b/anda/games/protonplus/anda.hcl new file mode 100644 index 0000000000..a199943121 --- /dev/null +++ b/anda/games/protonplus/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "protonplus.spec" + } +} diff --git a/anda/games/protonplus/protonplus.spec b/anda/games/protonplus/protonplus.spec new file mode 100644 index 0000000000..0f1c31c546 --- /dev/null +++ b/anda/games/protonplus/protonplus.spec @@ -0,0 +1,56 @@ +%define appid com.vysp3r.ProtonPlus + +Name: protonplus +Version: 0.5.20 +Release: 1%{?dist} +Summary: A modern compatibility tools manager +License: GPL-3.0-or-later +URL: https://github.com/Vysp3r/ProtonPlus +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz +Packager: Owen Zimmerman + +BuildRequires: meson +BuildRequires: ninja-build +BuildRequires: gcc +BuildRequires: vala +BuildRequires: pkgconfig(gtk4) +BuildRequires: pkgconfig(libadwaita-1) +BuildRequires: pkgconfig(json-glib-1.0) +BuildRequires: pkgconfig(libsoup-3.0) +BuildRequires: pkgconfig(gee-0.8) +BuildRequires: pkgconfig(libarchive) +BuildRequires: desktop-file-utils + +Provides: ProtonPlus + +%description +ProtonPlus is a modern compatibility tools manager for Linux. +It allows you to easily manage and update various compatibility +tools like Proton, Wine, DXVK, and VKD3D across different launchers. + +%prep +%autosetup -n ProtonPlus-%{version} + +%conf +%meson + +%build +%meson_build + +%install +%meson_install + +%find_lang %{appid} + +%files -f %{appid}.lang +%doc README.md CODE_OF_CONDUCT.md CONTRIBUTING.md SECURITY.md +%license LICENSE.md +%{_bindir}/protonplus +%{_metainfodir}/%{appid}.metainfo.xml +%{_appsdir}/%{appid}.desktop +%{_datadir}/glib-2.0/schemas/%{appid}.gschema.xml +%{_hicolordir}/*/apps/%{appid}.png + +%changelog +* Mon May 04 2026 Owen Zimmerman +- Initial commit diff --git a/anda/games/protonplus/update.rhai b/anda/games/protonplus/update.rhai new file mode 100644 index 0000000000..6f494c1fc0 --- /dev/null +++ b/anda/games/protonplus/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("Vysp3r/ProtonPlus")); diff --git a/anda/games/rom-properties/anda.hcl b/anda/games/rom-properties/anda.hcl new file mode 100644 index 0000000000..28bc44a710 --- /dev/null +++ b/anda/games/rom-properties/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "rom-properties.spec" + } +} diff --git a/anda/games/rom-properties/rom-properties.spec b/anda/games/rom-properties/rom-properties.spec new file mode 100644 index 0000000000..51a4f0790b --- /dev/null +++ b/anda/games/rom-properties/rom-properties.spec @@ -0,0 +1,199 @@ +Name: rom-properties +Version: 2.7.1 +Release: 1%{?dist} +Summary: File browser extension for managing video game ROM and disc images +License: GPL-2.0-only +URL: https://github.com/GerbilSoft/%{name} +Packager: Kyle Gospodnetich + +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz + +BuildRequires: cmake +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: pkgconf +BuildRequires: gettext-devel +BuildRequires: libseccomp-devel +BuildRequires: libcurl-devel +BuildRequires: nettle-devel +BuildRequires: zlib-devel +BuildRequires: lz4-devel +BuildRequires: lzo-devel +BuildRequires: libzstd-devel +BuildRequires: tinyxml2-devel +BuildRequires: libpng-devel +BuildRequires: libjpeg-turbo-devel +BuildRequires: pugixml-devel +BuildRequires: qt5-qtbase-devel +BuildRequires: qt6-qtbase-devel +BuildRequires: qt6-qttools +BuildRequires: extra-cmake-modules +BuildRequires: kf6-kio-devel +BuildRequires: kf6-kwidgetsaddons-devel +BuildRequires: kf6-kfilemetadata-devel +BuildRequires: kf6-kcrash-devel +BuildRequires: glib2-devel +BuildRequires: gtk4-devel +BuildRequires: gdk-pixbuf2-devel +BuildRequires: nautilus-devel +BuildRequires: cairo-devel +BuildRequires: gsound-devel +BuildRequires: gtk3-devel + +Requires: %{name}-common = %{version}-%{release} +Recommends: %{name}-utils = %{version}-%{release} +Recommends: lz4 +Recommends: lzo + +%description +This shell extension adds a few nice features to file browsers for managing +video game ROM and disc images. + +%prep +%autosetup -p1 -n %{name}-%{version} + +%build +%cmake \ + -DBUILD_GTK3=ON \ + -DBUILD_GTK4=ON \ + -DBUILD_KDE4=OFF \ + -DBUILD_KF5=OFF \ + -DBUILD_KF6=ON \ + -DBUILD_XFCE=OFF \ + -DSPLIT_DEBUG=OFF \ + -DUSE_INTERNAL_XML=OFF +%cmake_build + +%install +%cmake_install + +%files +%{_defaultdocdir}/%{name}/ +%{_libdir}/libromdata.* + +%package cli +Summary: CLI tools for rom-properties +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description cli +Command-line interface tools for rom-properties. + +%files cli +%{_bindir}/rpcli + +%package common +Summary: Common files for rom-properties +BuildArch: noarch + +%description common +Common files for rom-properties. + +%files common +%{_datadir}/%{name}/amiibo-data.bin +%{_datadir}/applications/com.gerbilsoft.rom-properties.rp-config.desktop +%{_datadir}/metainfo/com.gerbilsoft.rom-properties.metainfo.xml +%{_datadir}/mime/packages/rom-properties.xml +%{_datadir}/locale/*/LC_MESSAGES/rom-properties.mo + +%package gtk4 +Summary: GTK4 integration for rom-properties +Requires: %{name}%{?_isa} = %{version}-%{release} +Recommends: %{name}-localsearch3 = %{version}-%{release} + +%description gtk4 +GNOME/Nautilus file manager integration for rom-properties. + +%files gtk4 +%{_libdir}/nautilus/extensions-4/rom-properties-gtk4.so + +%package gtk3 +Summary: GTK3 integration for rom-properties +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description gtk3 +GTK3 file manager integration for rom-properties. Provides extensions +for Nautilus, Caja, Nemo, and Thunar. + +%files gtk3 +%{_libdir}/nautilus/extensions-3.0/rom-properties-gtk3.so +%{_libdir}/caja/extensions-2.0/rom-properties-gtk3.so +%{_datadir}/caja/extensions/rom-properties-gtk3.caja-extension +%{_libdir}/nemo/extensions-3.0/rom-properties-gtk3.so +%{_libdir}/thunarx-3/rom-properties-gtk3.so + +%package kf6 +Summary: KDE6 integration for rom-properties +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description kf6 +KDE Plasma 6 file manager integration for rom-properties. + +%files kf6 +%{_datadir}/kio/servicemenus/rp-convert-to-png.desktop +%{_libdir}/qt6/plugins/kf6/propertiesdialog/xattrview-kf6.so +%{_libdir}/qt6/plugins/kf6/kfilemetadata/kfilemetadata_rom-properties-kf6.so +%{_libdir}/qt6/plugins/kf6/overlayicon/overlayiconplugin_rom-properties-kf6.so +%{_libdir}/qt6/plugins/kf6/propertiesdialog/rom-properties-kf6.so +%{_libdir}/qt6/plugins/kf6/thumbcreator/RomThumbnailCreator-kf6.so + +%package utils +Summary: Utilities for rom-properties +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description utils +Utility programs for rom-properties including the thumbnail generator +and configuration tool. + +%files utils +%{_libexecdir}/rp-download +%{_libexecdir}/rp-thumbnail +%{_datadir}/thumbnailers/rom-properties.thumbnailer +%{_bindir}/rp-stub +%{_bindir}/rp-config + +%package localsearch3 +Summary: GNOME localsearch3 integration for rom-properties +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description localsearch3 +GNOME localsearch 3.0 extract modules for rom-properties, providing +full-text search integration for ROM and disc image metadata. + +%files localsearch3 +%{_libdir}/localsearch-3.0/extract-modules/libextract-rom-properties.so +%{_datadir}/localsearch3/extract-rules/14-rp-application-packages.rule +%{_datadir}/localsearch3/extract-rules/14-rp-audio.rule +%{_datadir}/localsearch3/extract-rules/14-rp-banners.rule +%{_datadir}/localsearch3/extract-rules/14-rp-cd-images.rule +%{_datadir}/localsearch3/extract-rules/14-rp-disk-images.rule +%{_datadir}/localsearch3/extract-rules/14-rp-executables.rule +%{_datadir}/localsearch3/extract-rules/14-rp-rom-images.rule +%{_datadir}/localsearch3/extract-rules/14-rp-save-files.rule +%{_datadir}/localsearch3/extract-rules/14-rp-textures.rule + +%package thumbnailer-dbus +Summary: D-Bus thumbnailer service for rom-properties +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description thumbnailer-dbus +D-Bus specialized thumbnailer service for rom-properties. + +%files thumbnailer-dbus +%{_bindir}/rp-thumbnailer-dbus +%{_datadir}/dbus-1/services/com.gerbilsoft.rom-properties.SpecializedThumbnailer1.service +%{_datadir}/thumbnailers/com.gerbilsoft.rom-properties.SpecializedThumbnailer1.service + +%package apparmor +Summary: AppArmor profiles for rom-properties +Requires: %{name}%{?_isa} = %{version}-%{release} +BuildArch: noarch + +%description apparmor +AppArmor profiles for rom-properties utilities. + +%files apparmor +%{_sysconfdir}/apparmor.d/ + +%changelog +* Fri Apr 03 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/games/rom-properties/update.rhai b/anda/games/rom-properties/update.rhai new file mode 100644 index 0000000000..8d59fb7019 --- /dev/null +++ b/anda/games/rom-properties/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("GerbilSoft/rom-properties")); diff --git a/anda/games/rpcs3/rpcs3.spec b/anda/games/rpcs3/rpcs3.spec index 3789fd4437..ad39f29387 100644 --- a/anda/games/rpcs3/rpcs3.spec +++ b/anda/games/rpcs3/rpcs3.spec @@ -9,8 +9,8 @@ # GLIBCXX_ASSERTIONS is known to break RPCS3 %global build_cflags %(echo "%{__build_flags_lang_c}" | sed 's|-Wp,-D_GLIBCXX_ASSERTIONS ||g') %{?_distro_extra_cflags} %global build_cxxflags %(echo "%{__build_flags_lang_cxx}" | sed 's|-Wp,-D_GLIBCXX_ASSERTIONS ||g') %{?_distro_extra_cflags} -%global commit aa7cf5ea153ececef87d0dc0982522ea690b281e -%global ver 0.0.40-19125 +%global commit 0fda2dd60f2293750cc9cae210c4fdf703f2e716 +%global ver 0.0.41-19467 Name: rpcs3 Version: %(echo %{ver} | sed 's/-/^/g') @@ -21,6 +21,7 @@ URL: https://github.com/RPCS3/rpcs3 Source0: %{url}/archive/%{commit}/%{name}-%{commit}.tar.gz BuildRequires: anda-srpm-macros glew openal-soft cmake vulkan-validation-layers git-core mold BuildRequires: llvm%{?llvm_major}-devel +# Looking at the CMakeLists.txt, this is the intended compiler and there are no fixes for GCC on aarch64 BuildRequires: clang%{?llvm_major} BuildRequires: cmake(FAudio) BuildRequires: cmake(OpenAL) @@ -64,8 +65,7 @@ BuildRequires: qt6-qtbase-private-devel vulkan-devel jack-audio-connection-kit- %prep %git_clone %url %commit -%build -# Looking at the CMakeLists.txt, this is the intended compiler and there are no fixes for GCC on aarch64 +%conf %if %{defined llvm_major} export LLVM_DIR=%{_libdir}/llvm%{?llvm_major}/%{_lib}/cmake %endif @@ -74,8 +74,6 @@ export LLVM_DIR=%{_libdir}/llvm%{?llvm_major}/%{_lib}/cmake -DCMAKE_SKIP_RPATH=ON \ -DBUILD_SHARED_LIBS:BOOL=OFF \ -DUSE_NATIVE_INSTRUCTIONS=OFF \ - -DCMAKE_C_FLAGS="$CFLAGS" \ - -DCMAKE_CXX_FLAGS="$CXXFLAGS" \ -DSTATIC_LINK_LLVM=OFF \ -DUSE_SYSTEM_FAUDIO=ON \ -DUSE_SDL=ON \ @@ -88,14 +86,13 @@ export LLVM_DIR=%{_libdir}/llvm%{?llvm_major}/%{_lib}/cmake -DUSE_SYSTEM_ZLIB=ON \ -DUSE_SYSTEM_OPENCV=ON \ -DUSE_SYSTEM_CURL=ON \ - -DUSE_SYSTEM_FLATBUFFERS=OFF \ -DUSE_SYSTEM_PUGIXML=OFF \ -DUSE_SYSTEM_WOLFSSL=OFF \ - -DCMAKE_C_COMPILER="$CC" \ - -DCMAKE_CXX_COMPILER="$CXX" \ -DCMAKE_LINKER=mold \ -DCMAKE_SHARED_LINKER_FLAGS="$LDFLAGS -fuse-ld=mold" \ - -DCMAKE_EXE_LINKER_FLAGS="$LDFLAGS -fuse-ld=mold" + -DCMAKE_EXE_LINKER_FLAGS="$LDFLAGS -fuse-ld=mold" + +%build %cmake_build %install diff --git a/anda/games/steam/anda.hcl b/anda/games/steam/anda.hcl index 266d6b3074..ef9f29ae84 100644 --- a/anda/games/steam/anda.hcl +++ b/anda/games/steam/anda.hcl @@ -1,5 +1,5 @@ project pkg { - arches = ["i386"] + arches = ["x86_64"] rpm { spec = "steam.spec" } diff --git a/anda/games/steam/steam.spec b/anda/games/steam/steam.spec index bc423ccb40..40d5d4a8fa 100644 --- a/anda/games/steam/steam.spec +++ b/anda/games/steam/steam.spec @@ -1,16 +1,15 @@ # Binary package, no debuginfo should be generated %global debug_package %{nil} - -%global appstream_id com.valvesoftware.Steam +%global appid com.valvesoftware.Steam Name: steam Version: 1.0.0.85 -Release: 3%?dist +Release: 11%{?dist} Summary: Installer for the Steam software distribution service # Redistribution and repackaging for Linux is allowed, see license file. udev rules are MIT. License: Steam License Agreement and MIT URL: http://www.steampowered.com/ -ExclusiveArch: i686 +ExclusiveArch: x86_64 Packager: Cappy Ishihara Source0: https://repo.steampowered.com/%{name}/archive/beta/%{name}_%{version}.tar.gz @@ -40,79 +39,94 @@ BuildRequires: libappstream-glib BuildRequires: make BuildRequires: systemd +# Required for the basic runtime +Requires: glibc(x86-32) +Requires: libdrm(x86-32) +Requires: libglvnd-glx(x86-32) +Requires: libnsl(x86-32) + # Required to run the initial setup Requires: tar Requires: zenity Requires: xz -# Most games use OpenGL, some games already use Vulkan. Vulkan is also required -# for Steam Play to run Windows games through emulation. i686 version of these -# packages are necessary even on x86_64 systems for running 32bit games. Pull in -# native arch drivers as well, by not specifying _isa macro, native arch -# packages are preferred. This will make sure people have all necessary drivers -# for both i686 and x86_64 games. -Requires: mesa-dri-drivers%{?_isa} +# Required for basic gaming, also for native 32 bit games: Requires: mesa-dri-drivers -Requires: mesa-vulkan-drivers%{?_isa} +Requires: mesa-dri-drivers(x86-32) Requires: mesa-vulkan-drivers -Requires: vulkan-loader%{?_isa} +Requires: mesa-vulkan-drivers(x86-32) Requires: vulkan-loader +Requires: vulkan-loader(x86-32) -# Minimum requirements for starting the steam client using system libraries -Requires: alsa-lib%{?_isa} -Requires: fontconfig%{?_isa} -Requires: gtk2%{?_isa} -Requires: libICE%{?_isa} -Requires: libnsl%{?_isa} -Requires: libpng%{?_isa} -Requires: libXext%{?_isa} -Requires: libXinerama%{?_isa} -Requires: libXtst%{?_isa} -Requires: libXScrnSaver%{?_isa} -Requires: mesa-libGL%{?_isa} -Requires: mesa-libEGL%{?_isa} -Requires: NetworkManager-libnm%{?_isa} -Requires: nss%{?_isa} -Requires: pulseaudio-libs%{?_isa} +# Hardware stuff (permissions on devices, hardware updater, etc.): +Recommends: hidapi +Requires: steam-devices -# Required for sending out crash reports to Valve -Requires: libcurl%{?_isa} - -# Workaround for mesa-libGL dependency bug: -# https://bugzilla.redhat.com/show_bug.cgi?id=1168475 -Requires: systemd-libs%{?_isa} +# These libraries are also part of the Ubuntu runtime at: +# ~/.local/share/Steam/ubuntu12_32 +# ~/.local/share/Steam/ubuntu12_64 +# Steam client uses the system ones if available; so override where there is a +# benefit using the native system libaries or just to match when the native 64 +# bit packages are already installed. +Requires: bzip2-libs +Requires: bzip2-libs(x86-32) +Requires: fontconfig +Requires: fontconfig(x86-32) +Requires: libICE +Requires: libICE(x86-32) +Requires: libnsl +Requires: libnsl(x86-32) +Requires: libXext +Requires: libXext(x86-32) +Requires: libXinerama +Requires: libXinerama(x86-32) +Requires: libXtst +Requires: libXtst(x86-32) +Requires: libva +Requires: libva(x86-32) +Requires: libvdpau +Requires: libvdpau(x86-32) +Requires: mesa-libGL +Requires: mesa-libGL(x86-32) +Requires: NetworkManager-libnm +Requires: NetworkManager-libnm(x86-32) +Requires: nss +Requires: nss(x86-32) +Requires: openal-soft +Requires: openal-soft(x86-32) +Requires: pipewire-libs +Requires: pipewire-libs(x86-32) +Requires: pulseaudio-libs +Requires: pulseaudio-libs(x86-32) +%if %{defined fedora} +Requires: SDL3 +Requires: SDL3(x86-32) +%endif +# The client does not override only the ones linked at: +# ~/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_32 +# ~/.local/share/Steam/ubuntu12_32/steam-runtime/pinned_libs_64 +# At the moment of writing, the pinned ones belong to these packages: +# gtk2 +# libcurl +# libdbusmenu +# libdbusmenu-gtk2 +# mesa-libGLU +# And yes, the "ubuntu12_32" directory twice above is not a typo. Windows style (system32...). # Required for the firewall rules # http://fedoraproject.org/wiki/PackagingDrafts/ScriptletSnippets/Firewalld Requires: firewalld-filesystem Requires(post): firewalld-filesystem -# Required for hardware encoding/decoding during Remote Play (intel/radeon/amdgpu/nouveau) -Requires: libva%{?_isa} -Requires: libvdpau%{?_isa} - -# Required for having a functioning menu on the tray icon -Requires: libdbusmenu-gtk3%{?_isa} >= 16.04.0 - # Required by Feral interactive games -Requires: libatomic%{?_isa} +Requires: libatomic +Requires: libatomic(x86-32) # Required by Shank -Requires: (alsa-plugins-pulseaudio%{?_isa} if pulseaudio) -Requires: (pipewire-alsa%{?_isa} if pipewire) - -# Patched for Wayland -# https://github.com/ValveSoftware/steam-for-linux/issues/8853 -# https://github.com/negativo17/steam/issues/9 -%if 0%{?fedora} >= 40 -Requires: SDL2%{?_isa} -%endif +Requires: (alsa-plugins-pulseaudio if pulseaudio) # Game performance is increased with gamemode (for games that support it) Recommends: (falcond or gamemode) -Recommends: (gamemode%{?_isa} if gamemode(x86-64)) -Recommends: (gnome-shell-extension-appindicator if gnome-shell) - Recommends: (gnome-shell-extension-appindicator if gnome-shell) # Proton uses xdg-desktop-portal to open URLs from inside a container @@ -127,8 +141,8 @@ Recommends: xdg-user-dirs # Allow using Steam Runtime Launch Options Recommends: gobject-introspection -Requires: steam-devices - +# Automatic loading of the ntsync module +Recommends: ntsync-autoload # -rm is usually better for Steam Recommends: udev-joystick-blacklist-rm Requires: (udev-joystick-blacklist-rm or udev-joystick-blacklist) @@ -143,6 +157,21 @@ and screenshot functionality, and many social features. This package contains the installer for the Steam software distribution service. +%package arch-transition +Summary: Transition package for migrating Steam from i686 to x86_64 +Requires: %{name} = %{evr} +Provides: steam = 1.0.0.85-11 +Obsoletes: steam < 1.0.0.85-11 +BuildArch: noarch + +%description arch-transition +This package is used to migrate Steam installations from the +legacy i686 package layout to the x86_64 package layout. + +It exists only to handle package replacement and dependency +changes during upgrades, and can be safely removed once the +transition is complete. + %prep %autosetup -p1 -n %{name}-launcher @@ -174,13 +203,7 @@ desktop-file-edit --remove-key=X-KDE-RunOnDiscreteGpu %{buildroot}%{_datadir}/ap %check desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop -appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/%{appstream_id}.metainfo.xml - -%if 0%{?fedora} >= 44 -%post -# Workaround for https://fedoraproject.org/wiki/Changes/droppingOfCertPemFile#Temporary_fix -update-ca-trust extract --rhbz2387674 -%endif +appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/%{appid}.metainfo.xml %files %license COPYING steam_subscriber_agreement.txt @@ -192,16 +215,19 @@ update-ca-trust extract --rhbz2387674 %{_datadir}/pixmaps/%{name}.png %{_datadir}/pixmaps/%{name}_tray_mono.png %{_prefix}/lib/%{name}/ -%{_libdir}/%{name}/ %{_mandir}/man6/%{name}.* -%{_metainfodir}/%{appstream_id}.metainfo.xml +%{_metainfodir}/%{appid}.metainfo.xml %config(noreplace) %{_sysconfdir}/profile.d/%{name}.*sh %dir %{_prefix}/lib/systemd/system.conf.d/ %{_prefix}/lib/systemd/system.conf.d/01-steam.conf %dir %{_prefix}/lib/systemd/user.conf.d/ %{_prefix}/lib/systemd/user.conf.d/01-steam.conf +%files arch-transition + %changelog +* Fri Jun 5 2026 Gilver E. - 1.0.0.85-11 +- Update for architecture transition * Sun Sep 01 2024 Simone Caronni - 1.0.0.81-1 - Update to 1.0.0.81. diff --git a/anda/games/steamos-manager-powerstation/steamos-manager-powerstation.spec b/anda/games/steamos-manager-powerstation/steamos-manager-powerstation.spec index c0578c4844..807344f010 100644 --- a/anda/games/steamos-manager-powerstation/steamos-manager-powerstation.spec +++ b/anda/games/steamos-manager-powerstation/steamos-manager-powerstation.spec @@ -1,6 +1,6 @@ -%global commit 7b4d0f49351a60d1f93d48f081b4c0e35e10fa6d +%global commit 37d1cb6f98e02b76221190b10af3c6e1c6b7534d %global shortcommit %{sub %{commit} 0 7} -%global commitdate 20260325 +%global commitdate 20260528 Name: steamos-manager-powerstation Version: 0~%{commitdate}.git%{shortcommit} @@ -58,7 +58,6 @@ make -f /usr/share/selinux/devel/Makefile -C data/selinux steamos_manager.pp %install %{cargo_license_online -a} > LICENSE.dependencies %make_install -rm %{buildroot}%{_unitdir}/sddm.service.d/reset-oneshot-boot.conf # steamOS specific rm %{buildroot}%{_userunitdir}/orca.service # not used by anyone apparently, steamOS specific(?) install -D -m644 data/selinux/steamos_manager.pp %{buildroot}%{_datadir}/selinux/packages/steamos_manager.pp install -d %{buildroot}%{_userunitdir}/gamescope-session-plus.service.wants/steamos-manager.service @@ -101,6 +100,7 @@ fi %{_datadir}/steamos-manager/platform.toml %{_prefix}/lib/steamos-manager %{_unitdir}/steamos-manager.service +%{_unitdir}/sddm.service.d/reset-oneshot-boot.conf %{_userunitdir}/steamos-manager.service %{_userunitdir}/steamos-manager-configure-cecd.service %{_userunitdir}/steamos-manager-session-cleanup.service diff --git a/anda/games/steamos-manager-powerstation/steamos_manager.te b/anda/games/steamos-manager-powerstation/steamos_manager.te index 6a4cf229c2..9fba120bb7 100644 --- a/anda/games/steamos-manager-powerstation/steamos_manager.te +++ b/anda/games/steamos-manager-powerstation/steamos_manager.te @@ -1,4 +1,4 @@ -policy_module(steamos_manager, 1.0.0) +policy_module(steamos_manager, 1.0.1) ######################################## # Init @@ -19,6 +19,15 @@ files_config_file(steamos_manager_conf_t) # Allow systemd to manage the service (start/stop/status) init_dbus_chat(steamos_manager_t) +# Query systemd and overall system status (init_t:system status) +init_status(steamos_manager_t) + +# D-Bus +gen_require(` + type systemd_unit_file_t; +') +allow steamos_manager_t systemd_unit_file_t:service status; + ######################################## # Process permissions ######################################## @@ -72,11 +81,30 @@ domain_read_all_domains_state(steamos_manager_t) # Tracefs and debugfs ######################################## -# ftrace access: /sys/kernel/tracing/instances/steamos-manager/ -# debugfs access: /sys/kernel/debug/ath11k/ +# ftrace access +# debugfs access kernel_read_debugfs(steamos_manager_t) kernel_manage_debugfs(steamos_manager_t) +gen_require(` + type tracefs_t; +') +allow steamos_manager_t tracefs_t:dir { search write getattr setattr read open create add_name remove_name rmdir }; +allow steamos_manager_t tracefs_t:file { getattr setattr create open read write append unlink }; + +######################################## +# Cgroup access +######################################## + +# Search the cgroup hierarchy under /sys/fs/cgroup +fs_search_cgroup_dirs(steamos_manager_t) + +# Read cgroup interface files +gen_require(` + type cgroup_t; +') +allow steamos_manager_t cgroup_t:file { getattr open read }; + ######################################## # Device access ######################################## @@ -94,11 +122,34 @@ optional_policy(` gen_require(` type hidraw_device_t; ') - allow steamos_manager_t hidraw_device_t:chr_file { open read write getattr ioctl }; + allow steamos_manager_t hidraw_device_t:chr_file { open read write getattr ioctl watch watch_reads }; +') + +optional_policy(` + gen_require(` + type usb_device_t; + ') + allow steamos_manager_t usb_device_t:chr_file { getattr watch watch_reads }; ') # /dev/input/event* — inputplumber dev_rw_input_dev(steamos_manager_t) +dev_getattr_all_chr_files(steamos_manager_t) +dev_getattr_all_blk_files(steamos_manager_t) + +optional_policy(` + gen_require(` + type hugetlbfs_t; + ') + allow steamos_manager_t hugetlbfs_t:dir getattr; +') + +optional_policy(` + gen_require(` + type proc_kcore_t; + ') + allow steamos_manager_t proc_kcore_t:file getattr; +') # Udev events via netlink socket allow steamos_manager_t self:netlink_kobject_uevent_socket { create bind getattr read setopt }; @@ -168,6 +219,17 @@ corecmd_exec_shell(steamos_manager_t) # Execute libraries/scripts under /usr/lib/ paths libs_exec_lib_files(steamos_manager_t) +optional_policy(` + gen_require(` + type dmidecode_exec_t; + ') + can_exec(steamos_manager_t, dmidecode_exec_t) +') + +optional_policy(` + sysnet_exec_ifconfig(steamos_manager_t) +') + ######################################## # Network and IPC ######################################## @@ -185,6 +247,27 @@ corenet_tcp_connect_all_ports(steamos_manager_t) logging_send_syslog_msg(steamos_manager_t) +######################################## +# bootupd (bootloader management) +######################################## + +# steamos-manager invokes bootupctl, which runs in its own bootupd_t domain. +optional_policy(` + gen_require(` + type bootupd_t; + type mount_var_run_t; + ') + + # NSS user/group lookups: /etc/passwd, systemd-userdbd, systemd-homed + auth_use_nsswitch(bootupd_t) + + # Read /proc system state + kernel_read_system_state(bootupd_t) + + # Search the mount runtime directory under /run + allow bootupd_t mount_var_run_t:dir search; +') + ######################################## # Miscellaneous ######################################## diff --git a/anda/games/steamos-manager/steamos-manager.spec b/anda/games/steamos-manager/steamos-manager.spec index c6b076f4be..df933921db 100644 --- a/anda/games/steamos-manager/steamos-manager.spec +++ b/anda/games/steamos-manager/steamos-manager.spec @@ -1,6 +1,6 @@ Name: steamos-manager -Version: 26.0.1 -Release: 1%?dist +Version: 26.3.0 +Release: 1%{?dist} Summary: SteamOS Manager is a system daemon that aims to abstract Steam's interactions with the operating system. License: MIT AND (MIT OR Apache-2.0) AND Unicode-3.0 AND Apache-2.0 OR BSL-1.0 AND Apache-2.0 OR MIT AND Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT AND BSD-3-Clause OR MIT OR Apache-2.0 AND ISC AND LGPL-2.1 OR MIT OR Apache-2.0 AND MIT AND MIT OR Apache-2.0 AND MIT OR Apache-2.0 OR LGPL-2.1-or-later AND Unlicense OR MIT AND Zlib OR Apache-2.0 OR MIT URL: https://gitlab.steamos.cloud/holo/steamos-manager diff --git a/anda/games/terra-gamescope/terra-gamescope.spec b/anda/games/terra-gamescope/terra-gamescope.spec index 2de32bd0e0..06e056b5f4 100755 --- a/anda/games/terra-gamescope/terra-gamescope.spec +++ b/anda/games/terra-gamescope/terra-gamescope.spec @@ -2,11 +2,11 @@ %global _default_patch_fuzz 2 %global build_timestamp %(date +"%Y%m%d") -%global gamescope_commit 402bfb81bc25943cac9061eb022fe229c5414f5e +%global gamescope_commit 7c5ebe991af905c17fa26f6287704ff07dcf69ca %define short_commit %(echo %{gamescope_commit} | cut -c1-8) Name: terra-gamescope -Version: 136.%{short_commit} +Version: 137.%{short_commit} Release: 1%?dist Summary: Micro-compositor for video games on Wayland diff --git a/anda/apps/twintaillauncher/anda.hcl b/anda/games/twintaillauncher/anda.hcl similarity index 58% rename from anda/apps/twintaillauncher/anda.hcl rename to anda/games/twintaillauncher/anda.hcl index 62f910e857..81a75d1435 100644 --- a/anda/apps/twintaillauncher/anda.hcl +++ b/anda/games/twintaillauncher/anda.hcl @@ -1,5 +1,4 @@ -project "pkg" { - arches = ["x86_64"] +project pkg { rpm { spec = "twintaillauncher.spec" } diff --git a/anda/apps/twintaillauncher/twintaillauncher.spec b/anda/games/twintaillauncher/twintaillauncher.spec similarity index 50% rename from anda/apps/twintaillauncher/twintaillauncher.spec rename to anda/games/twintaillauncher/twintaillauncher.spec index 769fcdeaaa..aa39395498 100644 --- a/anda/apps/twintaillauncher/twintaillauncher.spec +++ b/anda/games/twintaillauncher/twintaillauncher.spec @@ -6,19 +6,28 @@ Name: twintaillauncher -Version: 1.1.15 +Version: 2.2.1 Release: 1%{?dist} Summary: A multi-platform launcher for your anime games Packager: Yoong Jin -SourceLicense: GPL-3.0-or-later -License: GPL-3.0-or-later AND (((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR Apache-2.0 OR MIT) AND (Apache-2.0) AND (Apache-2.0 AND ISC) AND (Apache-2.0 AND MIT) AND (Apache-2.0 OR Apache-2.0 WITH LLVM-exception OR CC0-1.0) AND (Apache-2.0 OR Apache-2.0 WITH LLVM-exception OR MIT) AND (Apache-2.0 OR BSD-2-Clause OR MIT) AND (Apache-2.0 OR BSD-3-Clause) AND (Apache-2.0 OR BSD-3-Clause OR MIT) AND (Apache-2.0 OR BSL-1.0 OR MIT) AND (Apache-2.0 OR CC0-1.0 OR MIT-0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR LGPL-2.1-or-later OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 OR MIT OR Zlib) AND (Apache-2.0 WITH LLVM-exception) AND (BSD-2-Clause) AND (BSD-3-Clause) AND (BSD-3-Clause AND MIT) AND (BSD-3-Clause OR MIT) AND CC0-1.0 AND (CC0-1.0 OR MIT-0) AND (CDLA-Permissive-2.0) AND ISC AND (ISC AND (Apache-2.0 OR ISC)) AND (ISC AND (Apache-2.0 OR ISC) AND OpenSSL) AND (LGPL-3.0-or-later OR MIT) AND MIT AND (MIT OR Unlicense) AND MPL-2.0 AND Unicode-3.0 AND Zlib AND bzip2-1.0.6) +SourceLicense: GPL-3.0-only +License: GPL-3.0-only AND (((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR Apache-2.0 OR MIT) AND (Apache-2.0) AND (Apache-2.0 AND ISC) AND (Apache-2.0 AND MIT) AND (Apache-2.0 OR Apache-2.0 WITH LLVM-exception OR CC0-1.0) AND (Apache-2.0 OR Apache-2.0 WITH LLVM-exception OR MIT) AND (Apache-2.0 OR BSD-2-Clause OR MIT) AND (Apache-2.0 OR BSD-3-Clause) AND (Apache-2.0 OR BSD-3-Clause OR MIT) AND (Apache-2.0 OR BSL-1.0 OR MIT) AND (Apache-2.0 OR CC0-1.0 OR MIT-0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR LGPL-2.1-or-later OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 OR MIT OR Zlib) AND (Apache-2.0 WITH LLVM-exception) AND (BSD-2-Clause) AND (BSD-3-Clause) AND (BSD-3-Clause AND MIT) AND (BSD-3-Clause OR MIT) AND CC0-1.0 AND (CC0-1.0 OR MIT-0) AND (CDLA-Permissive-2.0) AND ISC AND (ISC AND (Apache-2.0 OR ISC)) AND (ISC AND (Apache-2.0 OR ISC) AND OpenSSL) AND (LGPL-3.0-or-later OR MIT) AND MIT AND (MIT OR Unlicense) AND MPL-2.0 AND Unicode-3.0 AND Zlib AND bzip2-1.0.6) URL: https://twintaillauncher.app/ Source0: https://github.com/TwintailTeam/TwintailLauncher/archive/refs/tags/ttl-v%{version}.tar.gz -ExclusiveArch: x86_64 - +Requires: cairo +Requires: desktop-file-utils +Requires: gdk-pixbuf2 +Requires: glib2 +Requires: gtk3 Requires: hicolor-icon-theme +Requires: libappindicator-gtk3 +Requires: libayatana-appindicator-gtk3 +Requires: pango +Requires: webkit2gtk4.1 +Requires: mangohud +Requires: gamemode # Build requires BuildRequires: pnpm @@ -40,19 +49,19 @@ TTL is an all-in-one tool for downloading, managing, and launching your favorite %prep %autosetup -n TwintailLauncher-ttl-v%{version} -cd src-tauri -cargo update -cd .. %tauri_prep +%{__pnpm} import %build -%pnpm_build +%pnpm_build -F %install %tauri_install -mkdir -p %{buildroot}/%{_libdir}/twintaillauncher/resources -mv %{buildroot}/%{_datadir}/cargo/registry/twintaillauncher-%{version}/resources/ %{buildroot}/%{_libdir}/twintaillauncher/resources +mkdir -p %{buildroot}%{_prefix}/lib/twintaillauncher/resources + +#app expects files to be present there +mv %{buildroot}/%{_datadir}/cargo/registry/twintaillauncher-%{version}/resources %{buildroot}/usr/lib/twintaillauncher rm -rf %{buildroot}/%{_datadir}/cargo/registry/twintaillauncher-%{version} @@ -64,23 +73,26 @@ rm -rf %{buildroot}/%{_datadir}/cargo/registry/twintaillauncher-%{version} install -Dm644 public/launcher-icon.png %{buildroot}%{_hicolordir}/512x512/apps/%{name}.png install -Dm644 public/launcher-icon-128.png %{buildroot}%{_hicolordir}/128x128/apps/%{name}.png - - %files %license LICENSE.dependencies %license LICENSE %doc README.md %{_bindir}/twintaillauncher -%{_libdir}/twintaillauncher/resources +%{_prefix}/lib/%{name}/resources %{_hicolordir}/512x512/apps/%{name}.png %{_hicolordir}/128x128/apps/%{name}.png -%_appsdir/twintaillauncher.desktop - - - +%{_appsdir}/%{name}.desktop %changelog +* Sat May 9 2026 Gilver E. - 2.1.0-2 +- Enable aarch64 builds +* Wed Apr 15 2026 Yoong Jin - 2.0.0-3 +- Fix folders +- filx perms +* Sat Apr 4 2026 Yoong Jin - 2.0.0-2 +- Fix folders +- Update License * Thu Feb 19 2026 Yoong Jin - 1.1.15-1 - Fix resources * Tue Feb 3 2026 Yoong Jin - 1.1.15-0 diff --git a/anda/apps/twintaillauncher/update.rhai b/anda/games/twintaillauncher/update.rhai similarity index 100% rename from anda/apps/twintaillauncher/update.rhai rename to anda/games/twintaillauncher/update.rhai diff --git a/anda/games/udev-joystick-blacklist/udev-joystick-blacklist.spec b/anda/games/udev-joystick-blacklist/udev-joystick-blacklist.spec index 6ca72d26e0..03fd03f672 100644 --- a/anda/games/udev-joystick-blacklist/udev-joystick-blacklist.spec +++ b/anda/games/udev-joystick-blacklist/udev-joystick-blacklist.spec @@ -1,12 +1,12 @@ -%global commit a1ace571823be5979c135e9cb8e9ae103c7641ac +%global commit 1c5c9ccb69ea4ae42251aaa4c5a40a54766e6551 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20250715 +%global commit_date 20260415 Name: udev-joystick-blacklist Version: 0^%{commit_date}git%{shortcommit} -Release: 4%{?dist} +Release: 2%{?dist} Summary: Fix for keyboard/mouse/tablet being detected as joysticks in Linux -License: Public Domain +License: LicenseRef-Fedora-Public-Domain URL: https://github.com/denilsonsa/udev-joystick-blacklist Source0: %{url}/archive/%{commit}.tar.gz BuildRequires: systemd-rpm-macros diff --git a/anda/games/vulkan-low-latency-layer/anda.hcl b/anda/games/vulkan-low-latency-layer/anda.hcl new file mode 100644 index 0000000000..aa25923b8a --- /dev/null +++ b/anda/games/vulkan-low-latency-layer/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64", "aarch64"] + rpm { + spec = "vulkan-low-latency-layer.spec" + } +} diff --git a/anda/games/vulkan-low-latency-layer/update.rhai b/anda/games/vulkan-low-latency-layer/update.rhai new file mode 100644 index 0000000000..00ee4c8e1a --- /dev/null +++ b/anda/games/vulkan-low-latency-layer/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("Korthos-Software/low_latency_layer")); diff --git a/anda/games/vulkan-low-latency-layer/vulkan-low-latency-layer.spec b/anda/games/vulkan-low-latency-layer/vulkan-low-latency-layer.spec new file mode 100644 index 0000000000..ad43f3f03c --- /dev/null +++ b/anda/games/vulkan-low-latency-layer/vulkan-low-latency-layer.spec @@ -0,0 +1,45 @@ +Name: vulkan-low-latency-layer +Version: 0.2.0 +Release: 1%{?dist} +Summary: Vulkan layer for hardware agnostic input latency reduction +Packager: Kyle Gospodnetich + +License: MIT +URL: https://github.com/Korthos-Software/low_latency_layer +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz + +BuildRequires: cmake +BuildRequires: gcc-c++ +BuildRequires: vulkan-headers +BuildRequires: cmake(VulkanUtilityLibraries) +BuildRequires: pkgconfig(vulkan) + +Requires: vulkan-loader + +%description +A Vulkan layer that reduces click-to-photon latency by +implementing both AMD and NVIDIA's latency reduction technologies, +providing hardware-agnostic implementations of the VK_NV_low_latency2 +and VK_AMD_anti_lag device extensions. + +%prep +%autosetup -n low_latency_layer-%{version} + +%conf +%cmake + +%build +%cmake_build + +%install +%cmake_install + +%files +%license LICENSE +%doc README.md +%{_libdir}/libVkLayer_KORTHOS_LowLatency.so +%{_datadir}/vulkan/implicit_layer.d/low_latency_layer.json + +%changelog +* Fri May 22 2026 Kyle Gospodnetich - 0.1.0-1 +- Initial package diff --git a/anda/langs/amaranth/amaranth.spec b/anda/langs/amaranth/amaranth.spec index 24940614b4..8b683c43b7 100644 --- a/anda/langs/amaranth/amaranth.spec +++ b/anda/langs/amaranth/amaranth.spec @@ -5,7 +5,7 @@ Name: python-%{pypi_name} Version: 0.5.8 -Release: 2%?dist +Release: 3%?dist Summary: A modern hardware definition language and toolchain based on Python License: BSD-2-Clause URL: https://github.com/amaranth-lang/amaranth @@ -54,8 +54,6 @@ export PDM_BUILD_SCM_VERSION=%{version} %doc README.md CONTRIBUTING.txt %license LICENSE.txt %{_bindir}/amaranth-rpc -%ghost %python3_sitelib/__pycache__/*.cpython-*.pyc -%ghost %python3_sitelib/%{name}/subcommands/__pycache__/*.cpython-*.pyc %changelog * Sun Sep 28 2025 Owen Zimmerman diff --git a/anda/langs/crystal/blahaj/blahaj.spec b/anda/langs/crystal/blahaj/blahaj.spec index d10a2a3908..6b01be237b 100644 --- a/anda/langs/crystal/blahaj/blahaj.spec +++ b/anda/langs/crystal/blahaj/blahaj.spec @@ -5,7 +5,7 @@ Summary: Gay sharks at your local terminal - lolcat-like CLI tool License: BSD-2-Clause URL: https://blahaj.geopjr.dev/ Source0: https://codeberg.org/GeopJr/BLAHAJ/archive/v%{version}.tar.gz -BuildRequires: crystal shards make gcc libyaml-devel pcre-devel libgc-devel libevent-devel bash +BuildRequires: crystal shards make gcc libyaml-devel pcre2-devel libgc-devel libevent-devel bash ExclusiveArch: x86_64 %description diff --git a/anda/langs/crystal/blahaj/update.rhai b/anda/langs/crystal/blahaj/update.rhai index 0eed23daed..474744cf5f 100644 --- a/anda/langs/crystal/blahaj/update.rhai +++ b/anda/langs/crystal/blahaj/update.rhai @@ -1,3 +1 @@ -import "andax/bump_extras.rhai" as bump; - -rpm.version(bump::codeberg("GeopJr/BLAHAJ")); +rpm.version(codeberg("GeopJr/BLAHAJ")); diff --git a/anda/langs/crystal/crystal/crystal.spec b/anda/langs/crystal/crystal/crystal.spec index feac01fc7e..cc7ac5fa13 100644 --- a/anda/langs/crystal/crystal/crystal.spec +++ b/anda/langs/crystal/crystal/crystal.spec @@ -2,8 +2,8 @@ %global bootstrap_version 1.17.1 Name: crystal -Version: 1.19.1 -Release: 1%?dist +Version: 1.20.2 +Release: 2%{?dist} Summary: A general-purpose, object-oriented programming language License: Apache-2.0 Packager: Carl Hörberg diff --git a/anda/langs/crystal/shards/shards.spec b/anda/langs/crystal/shards/shards.spec index 7178a2fdea..7a17f5d48e 100644 --- a/anda/langs/crystal/shards/shards.spec +++ b/anda/langs/crystal/shards/shards.spec @@ -1,13 +1,13 @@ Name: shards Version: 0.20.0 -Release: 1%?dist +Release: 2%?dist Summary: Dependency manager for the Crystal language License: Apache-2.0 Packager: Carl Hörberg URL: https://crystal-lang.org/ Source0: https://github.com/crystal-lang/shards/archive/refs/tags/v%version.tar.gz BuildRequires: crystal make -BuildRequires: gcc gc-devel libyaml-devel pcre-devel +BuildRequires: gcc gc-devel libyaml-devel pcre2-devel Suggests: git make Supplements: crystal @@ -15,7 +15,7 @@ Supplements: crystal Shards is a dependency manager for the Crystal programming language. It allows you to easily manage and install external libraries (called "shards") that your Crystal projects depend on. %prep -%setup -q +%autosetup %build %make_build release=1 FLAGS="--link-flags=\"%{build_ldflags}\"" @@ -24,6 +24,8 @@ Shards is a dependency manager for the Crystal programming language. It allows y %make_install PREFIX=%{_prefix} %files +%license LICENSE +%doc README.md CHANGELOG.md %{_bindir}/shards %{_mandir}/man1/shards.1.gz %{_mandir}/man5/shard.yml.5.gz diff --git a/anda/langs/dart/dart.spec b/anda/langs/dart/dart.spec index 69f866849c..4d5de71184 100644 --- a/anda/langs/dart/dart.spec +++ b/anda/langs/dart/dart.spec @@ -1,7 +1,7 @@ %define debug_package %{nil} Name: dart -Version: 3.11.4 +Version: 3.12.2 Release: 1%{?dist} Summary: The Dart Language License: BSD-3-Clause diff --git a/anda/langs/go/elephant/golang-github-abenz1267-elephant.spec b/anda/langs/go/elephant/golang-github-abenz1267-elephant.spec index e4c0a4e969..a165c4ae51 100644 --- a/anda/langs/go/elephant/golang-github-abenz1267-elephant.spec +++ b/anda/langs/go/elephant/golang-github-abenz1267-elephant.spec @@ -10,11 +10,11 @@ %global __requires_exclude %{?__requires_exclude:%{__requires_exclude}|}^golang\\(.*\\)$ %endif -%global providers 1password archlinuxpkgs bitwarden bluetooth bookmarks calc clipboard desktopapplications dnfpackages files menus niriactions nirisessions providerlist runner snippets symbols todo unicode websearch windows wireplumber +%global providers 1password archlinuxpkgs bitwarden bluetooth bookmarks calc clipboard desktopapplications dnfpackages files menus niriactions nirisessions playerctl providerlist runner snippets symbols todo unicode websearch windows wireplumber # https://github.com/abenz1267/elephant %global goipath github.com/abenz1267/elephant -Version: 2.20.3 +Version: 2.21.0 %gometa -f diff --git a/anda/langs/go/gendesk/golang-github-xyproto-gendesk.spec b/anda/langs/go/gendesk/golang-github-xyproto-gendesk.spec index 3195bd60da..89cac32a28 100644 --- a/anda/langs/go/gendesk/golang-github-xyproto-gendesk.spec +++ b/anda/langs/go/gendesk/golang-github-xyproto-gendesk.spec @@ -5,7 +5,7 @@ # https://github.com/xyproto/gendesk %global goipath github.com/xyproto/gendesk -Version: 1.0.10 +Version: 1.0.15 %global tag 1.0.9 %global commit f074161864697100fdc21a99e09b567e82aeb1b9 @@ -20,7 +20,7 @@ of information.} %global godocs README.md Name: %{goname} -Release: 1%?dist +Release: 1%{?dist} Summary: Generate .desktop files and download .png icons License: BSD-3-Clause diff --git a/anda/langs/go/gh-act/gh-act.spec b/anda/langs/go/gh-act/gh-act.spec index a65163519a..d59539aea5 100644 --- a/anda/langs/go/gh-act/gh-act.spec +++ b/anda/langs/go/gh-act/gh-act.spec @@ -12,7 +12,7 @@ # https://github.com/nektos/act %global goipath github.com/nektos/act -Version: 0.2.86 +Version: 0.2.89 %gometa -f diff --git a/anda/langs/go/glow/golang-github-charmbracelet-glow.spec b/anda/langs/go/glow/golang-github-charmbracelet-glow.spec index fc26d74694..aa9d1c2762 100644 --- a/anda/langs/go/glow/golang-github-charmbracelet-glow.spec +++ b/anda/langs/go/glow/golang-github-charmbracelet-glow.spec @@ -3,7 +3,7 @@ # https://github.com/charmbracelet/glow %global goipath github.com/charmbracelet/glow -Version: 2.1.1 +Version: 2.1.2 %gometa -f @@ -15,7 +15,7 @@ Render markdown on the CLI, with pizzazz! 💅🏻.} %global godocs README.md Name: %{goname} -Release: 1%?dist +Release: 1%{?dist} Summary: Render markdown on the CLI, with pizzazz! 💅🏻 License: MIT diff --git a/anda/langs/go/google-grpc/golang-google-grpc.terra.spec b/anda/langs/go/google-grpc/golang-google-grpc.terra.spec index 425088d4f9..de8aabe2c6 100644 --- a/anda/langs/go/google-grpc/golang-google-grpc.terra.spec +++ b/anda/langs/go/google-grpc/golang-google-grpc.terra.spec @@ -11,7 +11,7 @@ # https://github.com/grpc/grpc-go %global goipath google.golang.org/grpc %global forgeurl https://github.com/grpc/grpc-go -Version: 1.79.3 +Version: 1.81.1 %gometa -L diff --git a/anda/langs/go/lazygit/golang-github-jesseduffield-lazygit.spec b/anda/langs/go/lazygit/golang-github-jesseduffield-lazygit.spec index 028064c393..4c87d16c07 100644 --- a/anda/langs/go/lazygit/golang-github-jesseduffield-lazygit.spec +++ b/anda/langs/go/lazygit/golang-github-jesseduffield-lazygit.spec @@ -2,7 +2,7 @@ # https://github.com/jesseduffield/lazygit %global goipath github.com/jesseduffield/lazygit -Version: 0.60.0 +Version: 0.62.2 %gometa -f diff --git a/anda/langs/go/pop/pop.spec b/anda/langs/go/pop/pop.spec index 04f3863ffb..52df281777 100644 --- a/anda/langs/go/pop/pop.spec +++ b/anda/langs/go/pop/pop.spec @@ -1,12 +1,12 @@ %global debug_package %{nil} %global goipath github.com/charmbracelet/pop -Version: 0.2.0 +Version: 0.2.1 %gometa -f Name: pop -Release: 1%?dist +Release: 1%{?dist} Summary: Send emails from your terminal URL: https://github.com/charmbracelet/%{name} Source0: https://github.com/charmbracelet/%{name}/archive/refs/tags/v%{version}.tar.gz diff --git a/anda/langs/go/v2ray/nightly/v2ray-nightly.spec b/anda/langs/go/v2ray/nightly/v2ray-nightly.spec index ca3df7f0de..13547bcdf3 100644 --- a/anda/langs/go/v2ray/nightly/v2ray-nightly.spec +++ b/anda/langs/go/v2ray/nightly/v2ray-nightly.spec @@ -1,7 +1,7 @@ -%global commit cf7577f650f97226d34a4e7ab6e30b765a15677a +%global commit 63f97f5a5616bf008033225461fce5686a157da6 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global ver v5.47.0 -%global commit_date 20260327 +%global ver v5.49.0 +%global commit_date 20260611 %global goipath github.com/v2fly/v2ray-core Version: %{ver}^%{commit_date}git.%{shortcommit} diff --git a/anda/langs/go/v2ray/stable/v2ray.spec b/anda/langs/go/v2ray/stable/v2ray.spec index 0d60b7ac94..ae13fbaa82 100644 --- a/anda/langs/go/v2ray/stable/v2ray.spec +++ b/anda/langs/go/v2ray/stable/v2ray.spec @@ -1,5 +1,5 @@ %global goipath github.com/v2fly/v2ray-core -Version: 5.48.0 +Version: 5.51.2 %global golicenses LICENSE %global godocs README.md SECURITY.md diff --git a/anda/langs/go/v2raya/nightly/v2raya-nightly.spec b/anda/langs/go/v2raya/nightly/v2raya-nightly.spec index d8690b3cfd..7aaf69171d 100644 --- a/anda/langs/go/v2raya/nightly/v2raya-nightly.spec +++ b/anda/langs/go/v2raya/nightly/v2raya-nightly.spec @@ -1,7 +1,7 @@ -%global commit 981e9cbec25ae8994ff6ab53ddb38eab75630984 +%global commit 074305b21bb3797eac2415aa5c385a579cd5943c %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global ver v2.2.7.5 -%global commit_date 20260318 +%global commit_date 20260505 %global goipath github.com/v2rayA/v2rayA Version: %{ver}^%{commit_date}git.%{shortcommit} diff --git a/anda/langs/go/v2raya/stable/v2raya.spec b/anda/langs/go/v2raya/stable/v2raya.spec index ef6d62c08d..a2e8fc250b 100644 --- a/anda/langs/go/v2raya/stable/v2raya.spec +++ b/anda/langs/go/v2raya/stable/v2raya.spec @@ -1,5 +1,5 @@ %global goipath github.com/v2rayA/v2rayA -Version: 2.3.3 +Version: 2.4.0 %global golicenses LICENSE %global godocs README.md diff --git a/anda/langs/go/xray/nightly/xray-nightly.spec b/anda/langs/go/xray/nightly/xray-nightly.spec index 7343139d75..e81cda2783 100644 --- a/anda/langs/go/xray/nightly/xray-nightly.spec +++ b/anda/langs/go/xray/nightly/xray-nightly.spec @@ -1,7 +1,7 @@ -%global commit d2758a023cd7f4174a5a5fa4ff66e487d4342ba0 +%global commit da21a8f77f31b295e77e1b55e9ef408ca3bf9402 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global ver v26.3.27 -%global commit_date 20260328 +%global commit_date 20260610 %global goipath github.com/XTLS/Xray-core Version: %{ver}^%{commit_date}git.%{shortcommit} diff --git a/anda/langs/go/xray/stable/xray.spec b/anda/langs/go/xray/stable/xray.spec index 7c15dcb2f1..2326b8d970 100644 --- a/anda/langs/go/xray/stable/xray.spec +++ b/anda/langs/go/xray/stable/xray.spec @@ -1,7 +1,7 @@ # Disabled because compiled without debug %global goipath github.com/XTLS/Xray-core -Version: 26.3.27 +Version: 26.6.1 %global golicenses LICENSE %global godocs README.md SECURITY.md CODE_OF_CONDUCT.md diff --git a/anda/langs/groovy/groovy-docs/groovy-docs.spec b/anda/langs/groovy/groovy-docs/groovy-docs.spec index f27dab6968..046fe88acc 100644 --- a/anda/langs/groovy/groovy-docs/groovy-docs.spec +++ b/anda/langs/groovy/groovy-docs/groovy-docs.spec @@ -1,5 +1,5 @@ Name: groovy-docs -Version: 5.0.5 +Version: 5.0.6 Release: 1%{?dist} Summary: Documentation for the Groovy programming language URL: https://groovy-lang.org/ diff --git a/anda/langs/groovy/groovy.spec b/anda/langs/groovy/groovy.spec index 50e10c642d..b445f34c25 100644 --- a/anda/langs/groovy/groovy.spec +++ b/anda/langs/groovy/groovy.spec @@ -1,5 +1,5 @@ Name: groovy -Version: 5.0.5 +Version: 5.0.6 Release: 1%{?dist} Summary: A multi-faceted language for the Java platform BuildArch: noarch diff --git a/anda/langs/haskell/ghc-bv/anda.hcl b/anda/langs/haskell/ghc-bv/anda.hcl new file mode 100644 index 0000000000..a98449cf81 --- /dev/null +++ b/anda/langs/haskell/ghc-bv/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "ghc-bv.spec" + } +} diff --git a/anda/langs/haskell/ghc-bv/ghc-bv.spec b/anda/langs/haskell/ghc-bv/ghc-bv.spec new file mode 100644 index 0000000000..d5700ac8b0 --- /dev/null +++ b/anda/langs/haskell/ghc-bv/ghc-bv.spec @@ -0,0 +1,110 @@ +# generated by cabal-rpm-2.3.2 +# https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/ + +%global pkg_name bv +%global pkgver %{pkg_name}-%{version} +%{?haskell_setup} + +Name: ghc-%{pkg_name} +Version: 0.5 +Release: 1%{?dist} +Summary: Bit-vector arithmetic library + +License: BSD-3-Clause +URL: https://hackage.haskell.org/package/bv +# Begin cabal-rpm sources: +Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz +# End cabal-rpm sources + +# Begin cabal-rpm deps: +BuildRequires: ghc-rpm-macros +BuildRequires: ghc-Cabal-devel +BuildRequires: ghc-base-devel +%if %{with ghc_prof} +BuildRequires: ghc-base-prof +%endif +# End cabal-rpm deps + +Packager: Owen Zimmerman + +%description +Bit-vectors implemented as a thin wrapper over integers. + + +%package devel +Summary: Haskell %{pkg_name} library development files +Provides: %{name}-static = %{version}-%{release} +Provides: %{name}-static%{?_isa} = %{version}-%{release} +%if %{defined ghc_version} +Requires: ghc-compiler = %{ghc_version} +%endif +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +This package provides the Haskell %{pkg_name} library development files. + + +%if %{with haddock} +%package doc +Summary: Haskell %{pkg_name} library documentation +BuildArch: noarch +Requires: ghc-filesystem + +%description doc +This package provides the Haskell %{pkg_name} library documentation. +%endif + + +%if %{with ghc_prof} +%package prof +Summary: Haskell %{pkg_name} profiling library +Requires: %{name}-devel%{?_isa} = %{version}-%{release} +Supplements: (%{name}-devel and ghc-prof) + +%description prof +This package provides the Haskell %{pkg_name} profiling library. +%endif + + +%prep +# Begin cabal-rpm setup: +%setup -q -n %{pkgver} +# End cabal-rpm setup + + +%build +# Begin cabal-rpm build: +%ghc_lib_build +# End cabal-rpm build + + +%install +# Begin cabal-rpm install +%ghc_lib_install +# End cabal-rpm install + + +%files -f %{name}.files +# Begin cabal-rpm files: +%license LICENSE +# End cabal-rpm files + + +%files devel -f %{name}-devel.files +%doc CHANGES.md README.md + + +%if %{with haddock} +%files doc -f %{name}-doc.files +%license LICENSE +%endif + + +%if %{with ghc_prof} +%files prof -f %{name}-prof.files +%endif + + +%changelog +* Tue Apr 28 2026 Owen Zimmerman - 0.5-1 +- Initial commit diff --git a/anda/langs/haskell/ghc-bv/update.rhai b/anda/langs/haskell/ghc-bv/update.rhai new file mode 100644 index 0000000000..b9eef8f71e --- /dev/null +++ b/anda/langs/haskell/ghc-bv/update.rhai @@ -0,0 +1 @@ +rpm.version(hackage("bv")); diff --git a/anda/langs/haskell/ghc-freer-simple/anda.hcl b/anda/langs/haskell/ghc-freer-simple/anda.hcl new file mode 100644 index 0000000000..f9e83dd772 --- /dev/null +++ b/anda/langs/haskell/ghc-freer-simple/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "ghc-freer-simple.spec" + } +} diff --git a/anda/langs/haskell/ghc-freer-simple/ghc-freer-simple.spec b/anda/langs/haskell/ghc-freer-simple/ghc-freer-simple.spec new file mode 100644 index 0000000000..38cdd7f687 --- /dev/null +++ b/anda/langs/haskell/ghc-freer-simple/ghc-freer-simple.spec @@ -0,0 +1,134 @@ +# generated by cabal-rpm-2.3.2 +# https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/ + +%global pkg_name freer-simple +%global pkgver %{pkg_name}-%{version} +%{?haskell_setup} + +# testsuite missing deps: QuickCheck tasty tasty-hunit tasty-quickcheck + +Name: ghc-%{pkg_name} +Version: 1.2.1.2 +Release: 1%{?dist} +Summary: A friendly effect system for Haskell + +License: BSD-3-Clause +URL: https://hackage.haskell.org/package/freer-simple +# Begin cabal-rpm sources: +Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz +Source1: https://hackage.haskell.org/package/%{pkgver}/%{pkg_name}.cabal#/%{pkgver}.cabal +# End cabal-rpm sources + +# Begin cabal-rpm deps: +BuildRequires: ghc-rpm-macros +BuildRequires: ghc-Cabal-devel +BuildRequires: ghc-base-devel +BuildRequires: ghc-natural-transformation-devel +BuildRequires: ghc-template-haskell-devel +BuildRequires: ghc-transformers-base-devel +%if %{with ghc_prof} +BuildRequires: ghc-base-prof +BuildRequires: ghc-natural-transformation-prof +BuildRequires: ghc-template-haskell-prof +BuildRequires: ghc-transformers-base-prof +%endif +# End cabal-rpm deps + +Packager: Owen Zimmerman + +%description +An implementation of an effect system for Haskell (a fork of +), which is +based on the work of Oleg Kiselyov et al.: + +* * * + +The key features are: + +* An efficient effect system for Haskell - as a library! * Reimplementations of +several common Haskell monad transformers as effects. * Core components for +defining your own Effects. + + +%package devel +Summary: Haskell %{pkg_name} library development files +Provides: %{name}-static = %{version}-%{release} +Provides: %{name}-static%{?_isa} = %{version}-%{release} +%if %{defined ghc_version} +Requires: ghc-compiler = %{ghc_version} +%endif +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +This package provides the Haskell %{pkg_name} library development files. + + +%if %{with haddock} +%package doc +Summary: Haskell %{pkg_name} library documentation +BuildArch: noarch +Requires: ghc-filesystem + +%description doc +This package provides the Haskell %{pkg_name} library documentation. +%endif + + +%if %{with ghc_prof} +%package prof +Summary: Haskell %{pkg_name} profiling library +Requires: %{name}-devel%{?_isa} = %{version}-%{release} +Supplements: (%{name}-devel and ghc-prof) + +%description prof +This package provides the Haskell %{pkg_name} profiling library. +%endif + + +%prep +# Begin cabal-rpm setup: +%setup -q -n %{pkgver} +cp -bp %{SOURCE1} %{pkg_name}.cabal +# End cabal-rpm setup + + +%build +# Begin cabal-rpm build: +%ghc_lib_build +# End cabal-rpm build + + +%install +# Begin cabal-rpm install +%ghc_lib_install +# End cabal-rpm install + + +%files -f %{name}.files +# Begin cabal-rpm files: +%license LICENSE +# End cabal-rpm files + + +%files devel -f %{name}-devel.files +%doc CHANGELOG.md README.md examples +%{_bindir}/freer-simple-examples + + +%if %{with haddock} +%files doc -f %{name}-doc.files +%license LICENSE +%endif + + +%if %{with ghc_prof} +%files prof -f %{name}-prof.files +%endif + + +%changelog +* Tue Apr 28 2026 Owen Zimmerman - 1.2.1.2-1 +- Initial commit diff --git a/anda/langs/haskell/ghc-freer-simple/update.rhai b/anda/langs/haskell/ghc-freer-simple/update.rhai new file mode 100644 index 0000000000..b4c88e609e --- /dev/null +++ b/anda/langs/haskell/ghc-freer-simple/update.rhai @@ -0,0 +1 @@ +rpm.version(hackage("freer-simple")); diff --git a/anda/langs/haskell/ghc-language-bluespec/anda.hcl b/anda/langs/haskell/ghc-language-bluespec/anda.hcl new file mode 100644 index 0000000000..6234b99a7a --- /dev/null +++ b/anda/langs/haskell/ghc-language-bluespec/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "ghc-language-bluespec.spec" + } +} diff --git a/anda/langs/haskell/ghc-language-bluespec/ghc-language-bluespec.spec b/anda/langs/haskell/ghc-language-bluespec/ghc-language-bluespec.spec new file mode 100644 index 0000000000..5b21bc0714 --- /dev/null +++ b/anda/langs/haskell/ghc-language-bluespec/ghc-language-bluespec.spec @@ -0,0 +1,127 @@ +# generated by cabal-rpm-2.3.2 +# https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/ + +%global pkg_name language-bluespec +%global pkgver %{pkg_name}-%{version} +%{?haskell_setup} + +Name: ghc-%{pkg_name} +Version: 0.1 +Release: 1%{?dist} +Summary: An implementation of the Bluespec Haskell AST + +License: BSD-3-Clause +URL: https://hackage.haskell.org/package/language-bluespec +# Begin cabal-rpm sources: +Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz +Source1: https://hackage.haskell.org/package/%{pkgver}/%{pkg_name}.cabal#/%{pkgver}.cabal +# End cabal-rpm sources + +# Begin cabal-rpm deps: +BuildRequires: ghc-rpm-macros +BuildRequires: ghc-Cabal-devel +BuildRequires: ghc-base-devel +BuildRequires: ghc-containers-devel +BuildRequires: ghc-pretty-devel +BuildRequires: ghc-text-devel +%if %{with ghc_prof} +BuildRequires: ghc-base-prof +BuildRequires: ghc-containers-prof +BuildRequires: ghc-pretty-prof +BuildRequires: ghc-text-prof +%endif +# End cabal-rpm deps + +Packager: Owen Zimmerman + +%description +This package contains an implementation of the language's AST. In particular, this implements the Bluespec Haskell +(BH) syntax, also known as Bluespec Classic. We may add support for the +Bluespec SystemVerilog (BSV) syntax at a later date. To our knowledge, there is +no formal grammar that describes the syntax of BH or BSV, so this package is +based off of the code in the . Although the Bluespec compiler is written in Haskell, it is not +particularly simple to depend on the compiler as a library, so this package +exists to extract out the relevant compiler code into a simple-to-use library. + + +%package devel +Summary: Haskell %{pkg_name} library development files +Provides: %{name}-static = %{version}-%{release} +Provides: %{name}-static%{?_isa} = %{version}-%{release} +%if %{defined ghc_version} +Requires: ghc-compiler = %{ghc_version} +%endif +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +This package provides the Haskell %{pkg_name} library development +files. + + +%if %{with haddock} +%package doc +Summary: Haskell %{pkg_name} library documentation +BuildArch: noarch +Requires: ghc-filesystem + +%description doc +This package provides the Haskell %{pkg_name} library documentation. +%endif + + +%if %{with ghc_prof} +%package prof +Summary: Haskell %{pkg_name} profiling library +Requires: %{name}-devel%{?_isa} = %{version}-%{release} +Supplements: (%{name}-devel and ghc-prof) + +%description prof +This package provides the Haskell %{pkg_name} profiling library. +%endif + + +%prep +# Begin cabal-rpm setup: +%setup -q -n %{pkgver} +cp -bp %{SOURCE1} %{pkg_name}.cabal +# End cabal-rpm setup + + +%build +# Begin cabal-rpm build: +%ghc_lib_build +# End cabal-rpm build + + +%install +# Begin cabal-rpm install +%ghc_lib_install +# End cabal-rpm install + + +%files -f %{name}.files +# Begin cabal-rpm files: +%license LICENSE +# End cabal-rpm files + + +%files devel -f %{name}-devel.files +%doc CHANGELOG.md README.md + + +%if %{with haddock} +%files doc -f %{name}-doc.files +%license LICENSE +%endif + + +%if %{with ghc_prof} +%files prof -f %{name}-prof.files +%endif + + +%changelog +* Tue Apr 28 2026 Owen Zimmerman - 0.1-1 +- Initial Commit diff --git a/anda/langs/haskell/ghc-language-bluespec/update.rhai b/anda/langs/haskell/ghc-language-bluespec/update.rhai new file mode 100644 index 0000000000..1cddac58c3 --- /dev/null +++ b/anda/langs/haskell/ghc-language-bluespec/update.rhai @@ -0,0 +1 @@ +rpm.version(hackage("language-bluespec")); diff --git a/anda/langs/haskell/ghc-libriscv/anda.hcl b/anda/langs/haskell/ghc-libriscv/anda.hcl new file mode 100644 index 0000000000..9bda3866d7 --- /dev/null +++ b/anda/langs/haskell/ghc-libriscv/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "ghc-libriscv.spec" + } +} diff --git a/anda/langs/haskell/ghc-libriscv/bytestring-ver-fix.patch b/anda/langs/haskell/ghc-libriscv/bytestring-ver-fix.patch new file mode 100644 index 0000000000..31dc9cbd69 --- /dev/null +++ b/anda/langs/haskell/ghc-libriscv/bytestring-ver-fix.patch @@ -0,0 +1,13 @@ +diff --git a/libriscv.cabal b/libriscv.cabal +index 25e48fa..22e204a 100644 +--- a/libriscv.cabal ++++ b/libriscv.cabal +@@ -91,7 +91,7 @@ library + , base >= 4.15.0.0 && <4.20.0.0 + , array ^>= 0.5.4.0 + , filepath ^>= 1.4.2.1 +- , bytestring >= 0.10.10 && <0.12 ++ , bytestring >= 0.10.10 + , exceptions ^>= 0.10.4 + , melf ^>= 1.3.0 + , freer-simple ^>= 1.2.1.2 diff --git a/anda/langs/haskell/ghc-libriscv/ghc-libriscv.spec b/anda/langs/haskell/ghc-libriscv/ghc-libriscv.spec new file mode 100644 index 0000000000..f88e6904a7 --- /dev/null +++ b/anda/langs/haskell/ghc-libriscv/ghc-libriscv.spec @@ -0,0 +1,166 @@ +# generated by cabal-rpm-2.3.2 +# https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/ + +%global pkg_name libriscv +%global pkgver %{pkg_name}-%{version} +%{?haskell_setup} + +# testsuite missing deps: bv tasty tasty-hunit + +Name: ghc-%{pkg_name} +Version: 0.1.0.0 +Release: 1%{?dist} +Summary: A versatile, flexible and executable formal model for the RISC-V architecture + +License: MIT +URL: https://hackage.haskell.org/package/libriscv +# Begin cabal-rpm sources: +Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz +# End cabal-rpm sources +Patch0: bytestring-ver-fix.patch +# Begin cabal-rpm deps: +BuildRequires: ghc-rpm-macros +BuildRequires: ghc-Cabal-devel +BuildRequires: ghc-array-devel +BuildRequires: ghc-base-devel +BuildRequires: ghc-bv-devel +BuildRequires: ghc-bytestring-devel +BuildRequires: ghc-containers-devel +BuildRequires: ghc-exceptions-devel +BuildRequires: ghc-extra-devel +BuildRequires: ghc-file-embed-devel +BuildRequires: ghc-filepath-devel +BuildRequires: ghc-freer-simple-devel +BuildRequires: ghc-melf-devel +BuildRequires: ghc-optparse-applicative-devel +BuildRequires: ghc-parameterized-utils-devel +BuildRequires: ghc-template-haskell-devel +BuildRequires: ghc-transformers-devel +BuildRequires: ghc-yaml-devel +%if %{with ghc_prof} +BuildRequires: ghc-array-prof +BuildRequires: ghc-base-prof +BuildRequires: ghc-bv-prof +BuildRequires: ghc-bytestring-prof +BuildRequires: ghc-containers-prof +BuildRequires: ghc-exceptions-prof +BuildRequires: ghc-extra-prof +BuildRequires: ghc-file-embed-prof +BuildRequires: ghc-filepath-prof +BuildRequires: ghc-freer-simple-prof +BuildRequires: ghc-melf-prof +BuildRequires: ghc-optparse-applicative-prof +BuildRequires: ghc-parameterized-utils-prof +BuildRequires: ghc-template-haskell-prof +BuildRequires: ghc-transformers-prof +BuildRequires: ghc-yaml-prof +%endif +# End cabal-rpm deps + +Packager: Owen Zimmerman + +%description +A formal model for the /Instruction Set +Architecture/ (ISA). Contrary to other Haskell RISC-V ISA models, like + or +, LibRISCV is +specifically tailored to the creation of custom ISA interpreters. To this end, +it is designed for flexibility, allowing a versatile representation of +instruction operands. For example, instruction operands can be + expressions +for of binary +code. + +LibRISCV abstractly describes instruction semantics using an /Embedded Domain +Specific Language/ (EDSL) with . This Haskell library is intended to build custom interpreters for this +free monad. The entry point for this purpose is the +'LibRISCV.Semantics.buildAST' function which obtains the free monad AST based +on an entry address. The entry address can be obtained from a provided ELF +loader implementation, this "Loader" module is also responsible for loading +binary instructions into a provided memory implementation. Refer to provided +example interpreters in the for practical usage instruction. More detailed information on +LibRISCV and its concepts is also available in a +. + + +%package devel +Summary: Haskell %{pkg_name} library development files +Provides: %{name}-static = %{version}-%{release} +Provides: %{name}-static%{?_isa} = %{version}-%{release} +%if %{defined ghc_version} +Requires: ghc-compiler = %{ghc_version} +%endif +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +This package provides the Haskell %{pkg_name} library development files. + + +%if %{with haddock} +%package doc +Summary: Haskell %{pkg_name} library documentation +BuildArch: noarch +Requires: ghc-filesystem + +%description doc +This package provides the Haskell %{pkg_name} library documentation. +%endif + + +%if %{with ghc_prof} +%package prof +Summary: Haskell %{pkg_name} profiling library +Requires: %{name}-devel%{?_isa} = %{version}-%{release} +Supplements: (%{name}-devel and ghc-prof) + +%description prof +This package provides the Haskell %{pkg_name} profiling library. +%endif + + +%prep +# Begin cabal-rpm setup: +%setup -q -n %{pkgver} +%patch -P0 -p1 +# End cabal-rpm setup + + +%build +# Begin cabal-rpm build: +%ghc_lib_build +# End cabal-rpm build + + +%install +# Begin cabal-rpm install +%ghc_lib_install +# End cabal-rpm install + + +%files -f %{name}.files +# Begin cabal-rpm files: +%license LICENSE.txt +%{_datadir}/%{pkgver} +# End cabal-rpm files + + +%files devel -f %{name}-devel.files +%{_bindir}/riscv-tiny + + +%if %{with haddock} +%files doc -f %{name}-doc.files +%license LICENSE.txt +%endif + + +%if %{with ghc_prof} +%files prof -f %{name}-prof.files +%endif + + +%changelog +* Tue Apr 28 2026 Owen Zimmerman - 0.1.0.0-1 +- Initial commit diff --git a/anda/langs/haskell/ghc-libriscv/update.rhai b/anda/langs/haskell/ghc-libriscv/update.rhai new file mode 100644 index 0000000000..9c9aa8a431 --- /dev/null +++ b/anda/langs/haskell/ghc-libriscv/update.rhai @@ -0,0 +1 @@ +rpm.version(hackage("libriscv")); diff --git a/anda/langs/haskell/ghc-melf/anda.hcl b/anda/langs/haskell/ghc-melf/anda.hcl new file mode 100644 index 0000000000..9f2bd57c22 --- /dev/null +++ b/anda/langs/haskell/ghc-melf/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "ghc-melf.spec" + } +} diff --git a/anda/langs/haskell/ghc-melf/ghc-melf.spec b/anda/langs/haskell/ghc-melf/ghc-melf.spec new file mode 100644 index 0000000000..128aabd055 --- /dev/null +++ b/anda/langs/haskell/ghc-melf/ghc-melf.spec @@ -0,0 +1,133 @@ +# generated by cabal-rpm-2.3.2 +# https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/ + +%global pkg_name melf +%global pkgver %{pkg_name}-%{version} +%{?haskell_setup} + +# testsuite missing deps: tasty tasty-golden tasty-hunit prettyprinter + +Name: ghc-%{pkg_name} +Version: 1.3.1 +Release: 1%{?dist} +Summary: An Elf parser + +License: BSD-3-Clause +URL: https://hackage.haskell.org/package/melf +# Begin cabal-rpm sources: +Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz +Source1: https://hackage.haskell.org/package/%{pkgver}/%{pkg_name}.cabal#/%{pkgver}.cabal +# End cabal-rpm sources + +# Begin cabal-rpm deps: +BuildRequires: ghc-rpm-macros +BuildRequires: ghc-Cabal-devel +BuildRequires: ghc-base-devel +BuildRequires: ghc-binary-devel +BuildRequires: ghc-bytestring-devel +BuildRequires: ghc-exceptions-devel +BuildRequires: ghc-lens-devel +BuildRequires: ghc-mtl-devel +BuildRequires: ghc-optparse-applicative-devel +BuildRequires: ghc-prettyprinter-devel +BuildRequires: ghc-template-haskell-devel +%if %{with ghc_prof} +BuildRequires: ghc-base-prof +BuildRequires: ghc-binary-prof +BuildRequires: ghc-bytestring-prof +BuildRequires: ghc-exceptions-prof +BuildRequires: ghc-lens-prof +BuildRequires: ghc-mtl-prof +BuildRequires: ghc-optparse-applicative-prof +BuildRequires: ghc-prettyprinter-prof +BuildRequires: ghc-template-haskell-prof +%endif +# End cabal-rpm deps + +Packager: Owen Zimmerman + +%description +Parser for ELF object format. + + +%package devel +Summary: Haskell %{pkg_name} library development files +Provides: %{name}-static = %{version}-%{release} +Provides: %{name}-static%{?_isa} = %{version}-%{release} +%if %{defined ghc_version} +Requires: ghc-compiler = %{ghc_version} +%endif +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +This package provides the Haskell %{pkg_name} library development files. + + +%if %{with haddock} +%package doc +Summary: Haskell %{pkg_name} library documentation +BuildArch: noarch +Requires: ghc-filesystem + +%description doc +This package provides the Haskell %{pkg_name} library documentation. +%endif + + +%if %{with ghc_prof} +%package prof +Summary: Haskell %{pkg_name} profiling library +Requires: %{name}-devel%{?_isa} = %{version}-%{release} +Supplements: (%{name}-devel and ghc-prof) + +%description prof +This package provides the Haskell %{pkg_name} profiling library. +%endif + + +%prep +# Begin cabal-rpm setup: +%setup -q -n %{pkgver} +cp -bp %{SOURCE1} %{pkg_name}.cabal +# End cabal-rpm setup + + +%build +# Begin cabal-rpm build: +%ghc_lib_build +# End cabal-rpm build + + +%install +# Begin cabal-rpm install +%ghc_lib_install +# End cabal-rpm install + + +%files -f %{name}.files +# Begin cabal-rpm files: +%license LICENSE +%{_datadir}/%{pkgver} +# End cabal-rpm files + + +%files devel -f %{name}-devel.files +%doc ChangeLog.md README.md examples +%{_bindir}/hobjdump +%{_bindir}/hobjlayout + + +%if %{with haddock} +%files doc -f %{name}-doc.files +%license LICENSE +%endif + + +%if %{with ghc_prof} +%files prof -f %{name}-prof.files +%endif + + +%changelog +* Tue Apr 28 2026 Owen Zimmerman - 1.3.1-1 +- Initial commit diff --git a/anda/langs/haskell/ghc-melf/update.rhai b/anda/langs/haskell/ghc-melf/update.rhai new file mode 100644 index 0000000000..886984bb33 --- /dev/null +++ b/anda/langs/haskell/ghc-melf/update.rhai @@ -0,0 +1 @@ +rpm.version(hackage("melf")); diff --git a/anda/langs/haskell/ghc-strict-concurrency/anda.hcl b/anda/langs/haskell/ghc-strict-concurrency/anda.hcl new file mode 100644 index 0000000000..8ad01471ab --- /dev/null +++ b/anda/langs/haskell/ghc-strict-concurrency/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "ghc-strict-concurrency.spec" + } +} diff --git a/anda/langs/haskell/ghc-strict-concurrency/ghc-strict-concurrency.spec b/anda/langs/haskell/ghc-strict-concurrency/ghc-strict-concurrency.spec new file mode 100644 index 0000000000..06207ba55e --- /dev/null +++ b/anda/langs/haskell/ghc-strict-concurrency/ghc-strict-concurrency.spec @@ -0,0 +1,119 @@ +# generated by cabal-rpm-2.3.2 +# https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/ + +%global pkg_name strict-concurrency +%global pkgver %{pkg_name}-%{version} +%{?haskell_setup} + +Name: ghc-%{pkg_name} +Version: 0.2.4.3 +Release: 1%{?dist} +Summary: Strict concurrency abstractions + +License: BSD-3-Clause +URL: https://hackage.haskell.org/package/strict-concurrency +# Begin cabal-rpm sources: +Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz +Source1: https://hackage.haskell.org/package/%{pkgver}/%{pkg_name}.cabal#/%{pkgver}.cabal +# End cabal-rpm sources + +# Begin cabal-rpm deps: +BuildRequires: dos2unix +BuildRequires: ghc-rpm-macros +BuildRequires: ghc-Cabal-devel +BuildRequires: ghc-base-devel +BuildRequires: ghc-deepseq-devel +%if %{with ghc_prof} +BuildRequires: ghc-base-prof +BuildRequires: ghc-deepseq-prof +%endif +# End cabal-rpm deps + +Packager: Owen Zimmerman + +%description +This package provides head normal form strict versions of some standard Haskell +concurrency abstractions (MVars,Chans), which provide control over where +evaluation takes place not offered by the default lazy types. This may be +useful for deciding when and where evaluation occurs, leading to improved time +or space use, depending on the circumstances. + + +%package devel +Summary: Haskell %{pkg_name} library development files +Provides: %{name}-static = %{version}-%{release} +Provides: %{name}-static%{?_isa} = %{version}-%{release} +%if %{defined ghc_version} +Requires: ghc-compiler = %{ghc_version} +%endif +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +This package provides the Haskell %{pkg_name} library development +files. + + +%if %{with haddock} +%package doc +Summary: Haskell %{pkg_name} library documentation +BuildArch: noarch +Requires: ghc-filesystem + +%description doc +This package provides the Haskell %{pkg_name} library documentation. +%endif + + +%if %{with ghc_prof} +%package prof +Summary: Haskell %{pkg_name} profiling library +Requires: %{name}-devel%{?_isa} = %{version}-%{release} +Supplements: (%{name}-devel and ghc-prof) + +%description prof +This package provides the Haskell %{pkg_name} profiling library. +%endif + + +%prep +# Begin cabal-rpm setup: +%setup -q -n %{pkgver} +dos2unix -k -n %{SOURCE1} %{pkg_name}.cabal +# End cabal-rpm setup + + +%build +# Begin cabal-rpm build: +%ghc_lib_build +# End cabal-rpm build + + +%install +# Begin cabal-rpm install +%ghc_lib_install +# End cabal-rpm install + + +%files -f %{name}.files +# Begin cabal-rpm files: +%license LICENSE +# End cabal-rpm files + + +%files devel -f %{name}-devel.files + + +%if %{with haddock} +%files doc -f %{name}-doc.files +%license LICENSE +%endif + + +%if %{with ghc_prof} +%files prof -f %{name}-prof.files +%endif + + +%changelog +* Sun Apr 26 2026 Owen Zimmerman - 0.2.4.3-1 +- Initial commit diff --git a/anda/langs/haskell/ghc-strict-concurrency/update.rhai b/anda/langs/haskell/ghc-strict-concurrency/update.rhai new file mode 100644 index 0000000000..c04176e585 --- /dev/null +++ b/anda/langs/haskell/ghc-strict-concurrency/update.rhai @@ -0,0 +1 @@ +rpm.version(hackage("strict-concurrency")); diff --git a/anda/langs/holyc/holyc/holyc.spec b/anda/langs/holyc/holyc/holyc.spec index cc4a496e70..5bc9a5a0cf 100644 --- a/anda/langs/holyc/holyc/holyc.spec +++ b/anda/langs/holyc/holyc/holyc.spec @@ -1,8 +1,8 @@ -%global ver 0.0.10 +%global ver 0.0.12 Name: holyc Version: %{ver}~beta -Release: 3%{?dist} +Release: 1%{?dist} Summary: HolyC compiler and transpiler License: BSD-2-Clause URL: https://holyc-lang.com diff --git a/anda/langs/kotlin/kotlin-native/kotlin-native.spec b/anda/langs/kotlin/kotlin-native/kotlin-native.spec index 0561f14ab6..709f7cc78c 100644 --- a/anda/langs/kotlin/kotlin-native/kotlin-native.spec +++ b/anda/langs/kotlin/kotlin-native/kotlin-native.spec @@ -1,8 +1,7 @@ %define _binaries_in_noarch_packages_terminate_build 0 -BuildRoot: %{_tmppath}/%{name}-%{version}-build Name: kotlin-native -Version: 2.3.20 +Version: 2.4.0 Release: 1%{?dist} Summary: LLVM backend for the Kotlin compiler ExclusiveArch: x86_64 diff --git a/anda/langs/kotlin/kotlin/kotlin.spec b/anda/langs/kotlin/kotlin/kotlin.spec index 4f23ea0c40..29d5da57cc 100644 --- a/anda/langs/kotlin/kotlin/kotlin.spec +++ b/anda/langs/kotlin/kotlin/kotlin.spec @@ -1,7 +1,6 @@ -BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildArch: noarch Name: kotlin -Version: 2.3.20 +Version: 2.4.0 Release: 1%{?dist} Summary: Statically typed programming language diff --git a/anda/langs/lily/lily.spec b/anda/langs/lily/lily.spec index 94eb02687e..7cabc6f1ef 100644 --- a/anda/langs/lily/lily.spec +++ b/anda/langs/lily/lily.spec @@ -22,8 +22,10 @@ Requires: %{name} %prep %autosetup -n %{name}-%{version} -%build +%conf %cmake + +%build %cmake_build %install diff --git a/anda/langs/lua/lua-language-server/lua-language-server.spec b/anda/langs/lua/lua-language-server/lua-language-server.spec index 5637a5c0ea..d5a0ba6e6f 100644 --- a/anda/langs/lua/lua-language-server/lua-language-server.spec +++ b/anda/langs/lua/lua-language-server/lua-language-server.spec @@ -1,8 +1,8 @@ %define debug_package %{nil} Name: lua-language-server -Version: 3.17.1 -Release: 2%?dist +Version: 3.18.2 +Release: 1%{?dist} License: MIT URL: https://luals.github.io/ Source: https://github.com/LuaLS/lua-language-server/archive/refs/tags/%version.tar.gz diff --git a/anda/langs/lua/luamake/luamake.spec b/anda/langs/lua/luamake/luamake.spec index a2fd5bb78c..68c54f6ccb 100644 --- a/anda/langs/lua/luamake/luamake.spec +++ b/anda/langs/lua/luamake/luamake.spec @@ -2,7 +2,7 @@ Name: luamake Version: 1.7 -Release: 1%?dist +Release: 2%{?dist} License: MIT URL: https://github.com/actboy168/luamake Source: https://github.com/actboy168/luamake/archive/refs/tags/v%version.tar.gz @@ -10,6 +10,8 @@ Summary: A platform independent configuration and build system that uses BuildRequires: gcc-c++ make ninja-build glibc lua gcc cmake libstdc++-devel libstdc++-static libcxx libcxx-devel +Packager: Owen Zimmerman + %description %summary. diff --git a/anda/langs/nim/grabnim/grabnim.spec b/anda/langs/nim/grabnim/grabnim.spec index a4375c8609..8f30b5c2dc 100644 --- a/anda/langs/nim/grabnim/grabnim.spec +++ b/anda/langs/nim/grabnim/grabnim.spec @@ -1,5 +1,5 @@ -%global commit 87cd8e863e1544302647b876a20ef8e1388fe5ea -%global commit_date 20260221 +%global commit b1e34319a18e87fa83afbb7494a3bcc59da4f289 +%global commit_date 20260611 %global shortcommit %{sub %commit 1 7} Name: grabnim diff --git a/anda/langs/nim/grabnim/update.rhai b/anda/langs/nim/grabnim/update.rhai index 75f215ef43..ab49b8c798 100644 --- a/anda/langs/nim/grabnim/update.rhai +++ b/anda/langs/nim/grabnim/update.rhai @@ -1,6 +1,4 @@ -import "andax/bump_extras.rhai" as bump; - -rpm.global("commit", bump::codeberg_commit("janAkali/grabnim")); +rpm.global("commit", codeberg_commit("janAkali/grabnim")); if rpm.changed() { rpm.global("commit_date", date()); } diff --git a/anda/langs/nim/nim-nightly/nim-nightly.spec b/anda/langs/nim/nim-nightly/nim-nightly.spec index 387dd621f6..ee04c3c297 100644 --- a/anda/langs/nim/nim-nightly/nim-nightly.spec +++ b/anda/langs/nim/nim-nightly/nim-nightly.spec @@ -1,8 +1,8 @@ %global csrc_commit 561b417c65791cd8356b5f73620914ceff845d10 -%global commit 78282b241f16c66e40782775ee1d4c16b8af8d6f +%global commit 9d7c0cc68369a5040dc969a6ca6f69f005ee6cf0 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global ver 2.3.1 -%global commit_date 20260329 +%global commit_date 20260614 %global debug_package %nil Name: nim-nightly @@ -12,10 +12,7 @@ Summary: Imperative, multi-paradigm, compiled programming language License: MIT and BSD URL: https://nim-lang.org Source0: https://github.com/nim-lang/Nim/archive/%commit.tar.gz -Source1: nim.1 -Source2: nimgrep.1 -Source4: nimsuggest.1 -BuildRequires: gcc mold git gcc-c++ nodejs openssl-devel pkgconfig(bash-completion) gc-devel pcre pcre-devel +BuildRequires: gcc mold git gcc-c++ nodejs openssl-devel pkgconfig(bash-completion) gc-devel help2man Requires: redhat-rpm-config gcc Conflicts: choosenim # somehow wrong name and never noticed @@ -57,8 +54,13 @@ order of priority). This package provides documentation and reference manual for the language and its standard library. + %endif +%pkg_completion -Bz nim nimble +%pkg_completion -Bn nimgrep +%pkg_completion -Bn nimpretty +%pkg_completion -Bn nimsuggest %prep %autosetup -n Nim-%commit @@ -81,17 +83,14 @@ nim c --noNimblePath --skipUserCfg --skipParentCfg --hints:off -d:danger koch.ni koch boot -d:release -d:nimStrictMode --lib:lib %ifarch x86_64 -koch docs & +./koch docs --skipUserCfg --skipParentCfg --hints:off & %endif (cd lib; nim c --app:lib -d:danger -d:createNimRtl -t:-fPIE -l:-pie nimrtl.nim) & koch tools --skipUserCfg --skipParentCfg --hints:off -d:release -t:-fPIE -l:-pie & -nim c -d:danger -t:-fPIE -l:-pie nimsuggest/nimsuggest.nim & wait -%ifarch x86_64 -sed -i '/ - 2.3.1^20260522.561b417 +- more manfiles +- no more nimgrep manfile (cannot generate) +- no longer dep on pcre diff --git a/anda/langs/nim/nim/nim.spec b/anda/langs/nim/nim/nim.spec index b13b753f54..91a106df47 100644 --- a/anda/langs/nim/nim/nim.spec +++ b/anda/langs/nim/nim/nim.spec @@ -2,8 +2,8 @@ %global debug_package %{nil} Name: nim -Version: 2.2.8 -Release: 1%?dist +Version: 2.2.10 +Release: 1%{?dist} Summary: Imperative, multi-paradigm, compiled programming language License: MIT and BSD URL: https://nim-lang.org @@ -11,7 +11,7 @@ Source1: nim.1 Source2: nimgrep.1 Source3: nimble.1 Source4: nimsuggest.1 -BuildRequires: gcc mold git-core gcc-c++ nodejs openssl-devel pkgconfig(bash-completion) gc-devel pcre-devel +BuildRequires: gcc mold git-core gcc-c++ nodejs openssl-devel pkgconfig(bash-completion) gc-devel pcre2-devel BuildRequires: redhat-rpm-config anda-srpm-macros Requires: gcc Recommends: nim-tools diff --git a/anda/langs/python/PyMusicLooper/PyMusicLooper.spec b/anda/langs/python/PyMusicLooper/PyMusicLooper.spec index e15441be05..b5e1233425 100644 --- a/anda/langs/python/PyMusicLooper/PyMusicLooper.spec +++ b/anda/langs/python/PyMusicLooper/PyMusicLooper.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 3.6.0 -Release: 1%?dist +Release: 2%?dist Summary: A python program for repeating music endlessly and creating seamless music loops, with play/export/tagging support License: MIT URL: https://github.com/arkrow/PyMusicLooper diff --git a/anda/langs/python/accelerate/accelerate.spec b/anda/langs/python/accelerate/accelerate.spec index b0ee0275e1..61d403a81a 100644 --- a/anda/langs/python/accelerate/accelerate.spec +++ b/anda/langs/python/accelerate/accelerate.spec @@ -4,8 +4,8 @@ %global _desc A simple way to launch, train, and use PyTorch models on almost any device and distributed configuration, automatic mixed precision (including fp8), and easy-to-configure FSDP and DeepSpeed support. Name: python-%{pypi_name} -Version: 1.13.0 -Release: 1%?dist +Version: 1.14.0 +Release: 1%{?dist} Summary: A simple way to launch, train, and use PyTorch models on almost any device and distributed configuration License: Apache-2.0 URL: https://github.com/huggingface/accelerate diff --git a/anda/langs/python/antlr4-runtime/antlr4-runtime.spec b/anda/langs/python/antlr4-runtime/antlr4-runtime.spec index 53aa863566..b80962cdba 100644 --- a/anda/langs/python/antlr4-runtime/antlr4-runtime.spec +++ b/anda/langs/python/antlr4-runtime/antlr4-runtime.spec @@ -9,7 +9,7 @@ Name: python-%{pypi_name} Version: %{ver}^%{commit_date}git.%{shortcommit} -Release: 1%?dist +Release: 2%?dist Summary: Python 3 runtime libraries for ANTLR 4 License: BSD URL: https://www.antlr.org/ diff --git a/anda/langs/python/apeye-core/apeye-core.spec b/anda/langs/python/apeye-core/apeye-core.spec index 03217556d0..e0341191cf 100644 --- a/anda/langs/python/apeye-core/apeye-core.spec +++ b/anda/langs/python/apeye-core/apeye-core.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 1.1.5 -Release: 1%?dist +Release: 2%?dist Summary: Core (offline) functionality for the apeye library License: BSD-3-Clause URL: https://github.com/domdfcoding/apeye-core diff --git a/anda/langs/python/asyncclick/anda.hcl b/anda/langs/python/asyncclick/anda.hcl new file mode 100644 index 0000000000..b2c253a9cc --- /dev/null +++ b/anda/langs/python/asyncclick/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "asyncclick.spec" + } +} diff --git a/anda/langs/python/asyncclick/asyncclick.spec b/anda/langs/python/asyncclick/asyncclick.spec new file mode 100644 index 0000000000..44b06e1ddc --- /dev/null +++ b/anda/langs/python/asyncclick/asyncclick.spec @@ -0,0 +1,47 @@ +%global pypi_name asyncclick +%global _desc Python composable command line utility, trio-compatible version. + +Name: python-%{pypi_name} +Version: 8.3.0.7 +Release: 1%{?dist} +Summary: Python composable command line utility, trio-compatible version +License: BSD-3-Clause +URL: https://github.com/python-trio/asyncclick/ +Source0: %{pypi_source} + +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +BuildRequires: python3-wheel +BuildRequires: python3-flit-core +BuildArch: noarch + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md +%license LICENSE.txt + +%changelog +* Sun Jun 07 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/asyncclick/update.rhai b/anda/langs/python/asyncclick/update.rhai new file mode 100644 index 0000000000..b10633a2ef --- /dev/null +++ b/anda/langs/python/asyncclick/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("asyncclick")); diff --git a/anda/langs/python/audioop-lts/audioop-lts.spec b/anda/langs/python/audioop-lts/audioop-lts.spec index b34deacc15..9ad8ce96f3 100644 --- a/anda/langs/python/audioop-lts/audioop-lts.spec +++ b/anda/langs/python/audioop-lts/audioop-lts.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.2.2 -Release: 1%?dist +Release: 2%?dist Summary: An LTS port of Python's `audioop` module License: PSF-2.0 URL: https://github.com/AbstractUmbra/audioop diff --git a/anda/langs/python/av/av.spec b/anda/langs/python/av/av.spec index c06e0cda04..13700e8809 100644 --- a/anda/langs/python/av/av.spec +++ b/anda/langs/python/av/av.spec @@ -2,7 +2,7 @@ %global _desc Pythonic bindings for FFmpeg's libraries. Name: python-%{pypi_name} -Version: 17.0.0 +Version: 17.1.0 Release: 1%{?dist} Summary: Pythonic bindings for FFmpeg's libraries License: BSD-3-Clause diff --git a/anda/langs/python/bash-kernel/python-bash-kernel.spec b/anda/langs/python/bash-kernel/python-bash-kernel.spec index 3d722015b6..400e1131c0 100644 --- a/anda/langs/python/bash-kernel/python-bash-kernel.spec +++ b/anda/langs/python/bash-kernel/python-bash-kernel.spec @@ -5,7 +5,7 @@ Name: python-%{real_name} Version: 0.10.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Bash kernel for Jupyter License: BSD-3-Clause URL: https://github.com/takluyver/bash_kernel diff --git a/anda/langs/python/bitsandbytes/anda.hcl b/anda/langs/python/bitsandbytes/anda.hcl new file mode 100644 index 0000000000..0d68eae1b2 --- /dev/null +++ b/anda/langs/python/bitsandbytes/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "bitsandbytes.spec" + } +} diff --git a/anda/langs/python/bitsandbytes/bitsandbytes.spec b/anda/langs/python/bitsandbytes/bitsandbytes.spec new file mode 100644 index 0000000000..ba6bda4026 --- /dev/null +++ b/anda/langs/python/bitsandbytes/bitsandbytes.spec @@ -0,0 +1,49 @@ +%global pypi_name bitsandbytes +%global _desc Accessible large language models via k-bit quantization for PyTorch. + +Name: python-%{pypi_name} +Version: 0.49.2 +Release: 2%{?dist} +Summary: Accessible large language models via k-bit quantization for PyTorch +License: MIT +URL: https://huggingface.co/docs/bitsandbytes/main/en/index +Source0: https://github.com/bitsandbytes-foundation/bitsandbytes/archive/refs/tags/%{version}.tar.gz + +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-scikit-build-core +BuildRequires: python3-pip +BuildRequires: python3-hatchling +BuildRequires: python3-wheel +BuildRequires: python3-cmake +BuildRequires: gcc-c++ + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md CHANGELOG.md CODE_OF_CONDUCT.md CONTRIBUTING.md +%license LICENSE + +%changelog +* Tue May 05 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/bitsandbytes/update.rhai b/anda/langs/python/bitsandbytes/update.rhai new file mode 100644 index 0000000000..c33e1d7b49 --- /dev/null +++ b/anda/langs/python/bitsandbytes/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("bitsandbytes")); diff --git a/anda/langs/python/buttplug-py/anda.hcl b/anda/langs/python/buttplug-py/anda.hcl new file mode 100644 index 0000000000..2dc686be7a --- /dev/null +++ b/anda/langs/python/buttplug-py/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "buttplug-py.spec" + } +} diff --git a/anda/langs/python/buttplug-py/buttplug-py.spec b/anda/langs/python/buttplug-py/buttplug-py.spec new file mode 100644 index 0000000000..fd8bdd0c74 --- /dev/null +++ b/anda/langs/python/buttplug-py/buttplug-py.spec @@ -0,0 +1,46 @@ +%global pypi_name buttplug +%global _desc Python implementation of core message system and client for the Buttplug Sex Toy Protocol Standard. + +Name: python-%{pypi_name} +Version: 1.0.0 +Release: 2%?dist +Summary: Python implementation of core message system and client for the Buttplug Sex Toy Protocol Standard +License: BSD-3-Clause AND MIT AND Apache-2.0 AND X11 +URL: buttplug-py.docs.buttplug.io +Source0: https://github.com/buttplugio/buttplug-py/archive/refs/tags/%{version}.tar.gz +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +BuildRequires: python3-hatchling + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-py-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md CHANGELOG.md CODE_OF_CONDUCT.md CONTRIBUTING.md +%license LICENSE + +%changelog +* Fri Apr 17 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/buttplug-py/update.rhai b/anda/langs/python/buttplug-py/update.rhai new file mode 100644 index 0000000000..a4f5f6f8c4 --- /dev/null +++ b/anda/langs/python/buttplug-py/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("buttplug")); diff --git a/anda/langs/python/click-logging/click-logging.spec b/anda/langs/python/click-logging/click-logging.spec index 8ef2e0631d..60d8593f00 100644 --- a/anda/langs/python/click-logging/click-logging.spec +++ b/anda/langs/python/click-logging/click-logging.spec @@ -3,9 +3,9 @@ Name: python-%{pypi_name} Version: 1.0.1 -Release: 1%?dist +Release: 2%?dist Summary: Simple and beautiful logging for click applications -License: GPL-3.0 +License: MIT URL: https://github.com/Toilal/click-logging # Cannot pull from pypi due to the pypi source not having required install files, causing the build to fail Source0: %url/archive/refs/tags/v%version.tar.gz diff --git a/anda/langs/python/click_params/click_params.spec b/anda/langs/python/click_params/click_params.spec index 7d3f02277d..5acc8517b0 100644 --- a/anda/langs/python/click_params/click_params.spec +++ b/anda/langs/python/click_params/click_params.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.5.0 -Release: 1%?dist +Release: 2%?dist Summary: Bunch of click parameters to use License: Apache-2.0 URL: https://click-params.readthedocs.io/en/stable/ diff --git a/anda/langs/python/cobs/cobs.spec b/anda/langs/python/cobs/cobs.spec index 642759e7aa..345ae88a78 100644 --- a/anda/langs/python/cobs/cobs.spec +++ b/anda/langs/python/cobs/cobs.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 1.2.2 -Release: 1%?dist +Release: 2%?dist Summary: Python functions for encoding and decoding COBS License: MIT URL: https://pypi.org/project/cobs/ diff --git a/anda/langs/python/colorthief/python-colorthief.spec b/anda/langs/python/colorthief/python-colorthief.spec index 637e2db45a..56eec07edd 100644 --- a/anda/langs/python/colorthief/python-colorthief.spec +++ b/anda/langs/python/colorthief/python-colorthief.spec @@ -8,7 +8,7 @@ ExcludeArch: %{ix86} Name: python-%{pypi_name} Version: 0.2.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Grabs the dominant color or a representative color palette from an image # https://gitlab.com/fedora/legal/fedora-license-data/-/issues/382 diff --git a/anda/langs/python/colorz/python-colorz.spec b/anda/langs/python/colorz/python-colorz.spec index 1cea5133cd..f5c1034962 100644 --- a/anda/langs/python/colorz/python-colorz.spec +++ b/anda/langs/python/colorz/python-colorz.spec @@ -2,7 +2,7 @@ Name: python-%{pypi_name} Version: 1.0.3 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Color scheme generator License: MIT URL: https://github.com/metakirby5/colorz diff --git a/anda/langs/python/consolekit/anda.hcl b/anda/langs/python/consolekit/anda.hcl index 42675cf9ac..b6209800b6 100644 --- a/anda/langs/python/consolekit/anda.hcl +++ b/anda/langs/python/consolekit/anda.hcl @@ -3,6 +3,4 @@ project pkg { rpm { spec = "consolekit.spec" } - labels { - } } diff --git a/anda/langs/python/consolekit/consolekit.spec b/anda/langs/python/consolekit/consolekit.spec index dc7728918a..c94df919f5 100644 --- a/anda/langs/python/consolekit/consolekit.spec +++ b/anda/langs/python/consolekit/consolekit.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 1.13.0 -Release: 1%?dist +Release: 2%?dist Summary: Additional utilities for click License: MIT URL: https://consolekit.readthedocs.io/en/latest/ diff --git a/anda/langs/python/curl_cffi/curl_cffi.spec b/anda/langs/python/curl_cffi/curl_cffi.spec index f50a21b059..723bf495c5 100644 --- a/anda/langs/python/curl_cffi/curl_cffi.spec +++ b/anda/langs/python/curl_cffi/curl_cffi.spec @@ -5,8 +5,8 @@ %global _version 0.14.0b2 Name: python-%{pypi_name} -Version: 0.14.0 -Release: 1%?dist +Version: 0.15.0 +Release: 2%{?dist} Summary: Python binding for curl-impersonate fork via cffi.. License: MIT URL: https://github.com/lexiforest/curl_cffi diff --git a/anda/langs/python/darkdetect/darkdetect.spec b/anda/langs/python/darkdetect/darkdetect.spec index 05f1797cd3..32838685f0 100644 --- a/anda/langs/python/darkdetect/darkdetect.spec +++ b/anda/langs/python/darkdetect/darkdetect.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.8.0 -Release: 1%?dist +Release: 2%?dist Summary: Detect OS Dark Mode from Python License: BSD-3-Clause URL: https://github.com/albertosottile/darkdetect diff --git a/anda/langs/python/dataclasses-json/dataclasses-json.spec b/anda/langs/python/dataclasses-json/dataclasses-json.spec index 7141310177..0f2eb56d04 100644 --- a/anda/langs/python/dataclasses-json/dataclasses-json.spec +++ b/anda/langs/python/dataclasses-json/dataclasses-json.spec @@ -1,23 +1,21 @@ %global pypi_name dataclasses-json %global _desc Easily serialize Data Classes to and from JSON. -%define _python_dist_allow_version_zero %{nil} - Name: python-%{pypi_name} Version: 0.6.7 -Release: 1%?dist +Release: 2%{?dist} Summary: Easily serialize Data Classes to and from JSON License: MIT URL: https://github.com/lidatong/dataclasses-json -Source0: %url/archive/refs/tags/v%version.tar.gz +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz BuildArch: noarch BuildRequires: python3-devel +BuildRequires: python3-build BuildRequires: python3-pip +BuildRequires: python3-poetry-core BuildRequires: python3-poetry-dynamic-versioning - -Requires: python3-marshmallow -Requires: python3-typing-inspect +BuildRequires: python3-pyproject-metadata Packager: Owen Zimmerman @@ -31,15 +29,8 @@ Summary: %{summary} %description -n python3-%{pypi_name} %_desc -%package -n python3-%{pypi_name}-doc -Summary: documentation for python3-%{pypi_name} - -%description -n python3-%{pypi_name}-doc -documentation for python3-%{pypi_name}. - %prep -%autosetup -n dataclasses-json-%{version} -sed -i '/\[tool.poetry-dynamic-versioning\]/,+1d' pyproject.toml +%git_clone %{url}.git v%{version} %build %pyproject_wheel @@ -53,5 +44,8 @@ sed -i '/\[tool.poetry-dynamic-versioning\]/,+1d' pyproject.toml %license LICENSE %changelog +* Mon May 04 2026 Owen Zimmerman +- Switch to git source, clean up spec + * Wed Jan 07 2026 Owen Zimmerman - Initial commit diff --git a/anda/langs/python/datasets/anda.hcl b/anda/langs/python/datasets/anda.hcl new file mode 100644 index 0000000000..b876eff6df --- /dev/null +++ b/anda/langs/python/datasets/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "datasets.spec" + } +} diff --git a/anda/langs/python/datasets/datasets.spec b/anda/langs/python/datasets/datasets.spec new file mode 100644 index 0000000000..f9b6768d57 --- /dev/null +++ b/anda/langs/python/datasets/datasets.spec @@ -0,0 +1,50 @@ +%global pypi_name datasets +%global _desc The largest hub of ready-to-use datasets for AI models with fast, easy-to-use and efficient data manipulation tools. + +Name: python-%{pypi_name} +Version: 5.0.0 +Release: 2%{?dist} +Summary: The largest hub of ready-to-use datasets for AI models with fast, easy-to-use and efficient data manipulation tools +License: Apache-2.0 +URL: https://github.com/huggingface/datasets +Source0: %{pypi_source} + +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-importlib-metadata +BuildRequires: python3-wheel +BuildRequires: python3-setuptools +BuildArch: noarch + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} + +%pyproject_patch_dependency pyarrow:drop_constraints + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md +%license LICENSE +%{_bindir}/datasets-cli + +%changelog +* Sun May 24 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/datasets/update.rhai b/anda/langs/python/datasets/update.rhai new file mode 100644 index 0000000000..f9a78949d7 --- /dev/null +++ b/anda/langs/python/datasets/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("datasets")); diff --git a/anda/langs/python/deprecation-alias/deprecation-alias.spec b/anda/langs/python/deprecation-alias/deprecation-alias.spec index 2941427117..481863ae51 100644 --- a/anda/langs/python/deprecation-alias/deprecation-alias.spec +++ b/anda/langs/python/deprecation-alias/deprecation-alias.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.4.0 -Release: 1%?dist +Release: 2%?dist Summary: A wrapper around 'deprecation' providing support for deprecated aliases License: Apache-2.0 URL: https://github.com/domdfcoding/deprecation-alias diff --git a/anda/langs/python/diffq/diffq.spec b/anda/langs/python/diffq/diffq.spec index bb7d1e5adb..962216e0f1 100644 --- a/anda/langs/python/diffq/diffq.spec +++ b/anda/langs/python/diffq/diffq.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.2.4 -Release: 1%?dist +Release: 2%?dist Summary: DiffQ performs differentiable quantization using pseudo quantization noise License: CC-BY-NC-4.0 URL: https://github.com/facebookresearch/diffq diff --git a/anda/langs/python/dirsync/anda.hcl b/anda/langs/python/dirsync/anda.hcl new file mode 100644 index 0000000000..e020703ef7 --- /dev/null +++ b/anda/langs/python/dirsync/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "dirsync.spec" + } +} diff --git a/anda/langs/python/dirsync/dirsync.spec b/anda/langs/python/dirsync/dirsync.spec new file mode 100644 index 0000000000..9c354faa22 --- /dev/null +++ b/anda/langs/python/dirsync/dirsync.spec @@ -0,0 +1,46 @@ +%global pypi_name dirsync +%global _desc Advanced directory tree synchronisation tool. + +Name: python-%{pypi_name} +Version: 2.2.6 +Release: 2%{?dist} +Summary: Advanced directory tree synchronisation tool +License: MIT +URL: https://github.com/domdfcoding/deprecation-alias +Source0: %{pypi_source} + +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-setuptools +BuildArch: noarch + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.rst +%license LICENSE.txt +%{_bindir}/%{pypi_name} + +%changelog +* Mon May 04 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/dirsync/update.rhai b/anda/langs/python/dirsync/update.rhai new file mode 100644 index 0000000000..1b94711ff1 --- /dev/null +++ b/anda/langs/python/dirsync/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("dirsync")); diff --git a/anda/langs/python/dist-meta/dist-meta.spec b/anda/langs/python/dist-meta/dist-meta.spec index 749cc6d049..8cf7ab32ef 100644 --- a/anda/langs/python/dist-meta/dist-meta.spec +++ b/anda/langs/python/dist-meta/dist-meta.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.9.0 -Release: 1%?dist +Release: 2%?dist Summary: Parse and create Python distribution metadata License: MIT URL: https://dist-meta.readthedocs.io/en/latest/ diff --git a/anda/langs/python/dom_toml/dom_toml.spec b/anda/langs/python/dom_toml/dom_toml.spec index f9284e134b..d80f9e5c46 100644 --- a/anda/langs/python/dom_toml/dom_toml.spec +++ b/anda/langs/python/dom_toml/dom_toml.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 2.3.0 -Release: 1%?dist +Release: 2%?dist Summary: Dom's tools for Tom's Obvious, Minimal Language License: MIT URL: https://dom-toml.readthedocs.io/en/latest/ diff --git a/anda/langs/python/dora-search/anda.hcl b/anda/langs/python/dora-search/anda.hcl index ff36648dd3..3a88fc08de 100644 --- a/anda/langs/python/dora-search/anda.hcl +++ b/anda/langs/python/dora-search/anda.hcl @@ -1,4 +1,5 @@ project pkg { + arches = ["x86_64"] rpm { spec = "dora-search.spec" } diff --git a/anda/langs/python/dora-search/dora-search.spec b/anda/langs/python/dora-search/dora-search.spec index c625cbc48b..6b069392db 100644 --- a/anda/langs/python/dora-search/dora-search.spec +++ b/anda/langs/python/dora-search/dora-search.spec @@ -1,11 +1,9 @@ %global pypi_name dora-search %global _desc Dora is an experiment management framework. It expresses grid searches as pure python files as part of your repo. It identifies experiments with a unique hash signature. Scale up to hundreds of experiments without losing your sanity. -%define debug_package %{nil} - Name: python-%{pypi_name} Version: 0.1.12 -Release: 1%?dist +Release: 2%?dist Summary: Experiment management framework License: MIT URL: https://github.com/facebookresearch/dora @@ -14,6 +12,7 @@ Source0: %url/archive/refs/tags/v%version.tar.gz BuildRequires: python3-devel BuildRequires: python3-pip BuildRequires: python3-setuptools +BuildArch: noarch Packager: Owen Zimmerman diff --git a/anda/langs/python/dotty-dict/dotty-dict.spec b/anda/langs/python/dotty-dict/dotty-dict.spec index c0d0470825..5acb0554cf 100644 --- a/anda/langs/python/dotty-dict/dotty-dict.spec +++ b/anda/langs/python/dotty-dict/dotty-dict.spec @@ -3,11 +3,11 @@ Name: python-%{pypi_name} Version: 1.3.1 -Release: 1%?dist +Release: 2%?dist Summary: Dictionary wrapper for quick access to deeply nested keys License: MIT URL: https://github.com/pawelzny/dotty_dict -Source0: %url/archive/refs/tags/v%{version}.tar.gz +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz BuildArch: noarch BuildRequires: python3-devel diff --git a/anda/langs/python/enum-tools/enum-tools.spec b/anda/langs/python/enum-tools/enum-tools.spec index 0c50face23..7f8fd3d45f 100644 --- a/anda/langs/python/enum-tools/enum-tools.spec +++ b/anda/langs/python/enum-tools/enum-tools.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.13.0 -Release: 1%?dist +Release: 2%?dist Summary: Tools to expand Python's enum module License: LGPL-3.0-or-later URL: https://enum-tools.readthedocs.io/en/latest/ diff --git a/anda/langs/python/fast-colorthief/python-fast-colorthief.spec b/anda/langs/python/fast-colorthief/python-fast-colorthief.spec index 5745656369..e94c5e2aee 100644 --- a/anda/langs/python/fast-colorthief/python-fast-colorthief.spec +++ b/anda/langs/python/fast-colorthief/python-fast-colorthief.spec @@ -6,7 +6,7 @@ Name: python-%{pypi_name} Version: 0.0.5 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Faster version of Colorthief License: MIT URL: https://github.com/bedapisl/fast-colorthief diff --git a/anda/langs/python/faster-whisper/anda.hcl b/anda/langs/python/faster-whisper/anda.hcl new file mode 100644 index 0000000000..740ef5a125 --- /dev/null +++ b/anda/langs/python/faster-whisper/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "faster-whisper.spec" + } +} diff --git a/anda/langs/python/faster-whisper/faster-whisper.spec b/anda/langs/python/faster-whisper/faster-whisper.spec new file mode 100644 index 0000000000..61105ff33f --- /dev/null +++ b/anda/langs/python/faster-whisper/faster-whisper.spec @@ -0,0 +1,49 @@ +%global pypi_name faster-whisper +%global _desc Faster Whisper transcription with CTranslate2. + +Name: python-%{pypi_name} +Version: 1.2.1 +Release: 2%?dist +Summary: Faster Whisper transcription with CTranslate2 +License: MIT +URL: https://github.com/SYSTRAN/faster-whisper +Source0: %url/archive/refs/tags/v%version.tar.gz +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-build +BuildRequires: python3-installer +BuildRequires: python3-wheel +BuildRequires: python3-poetry-core +BuildRequires: python3-pip +BuildRequires: python3-setuptools + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n faster-whisper-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files faster_whisper + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md +%license LICENSE + +%changelog +* Sun Apr 12 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/faster-whisper/update.rhai b/anda/langs/python/faster-whisper/update.rhai new file mode 100644 index 0000000000..49762b8517 --- /dev/null +++ b/anda/langs/python/faster-whisper/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("faster-whisper")); diff --git a/anda/langs/python/ffmpeg-python/ffmpeg-python.spec b/anda/langs/python/ffmpeg-python/ffmpeg-python.spec index 6f7f0c3a43..57097849ba 100644 --- a/anda/langs/python/ffmpeg-python/ffmpeg-python.spec +++ b/anda/langs/python/ffmpeg-python/ffmpeg-python.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.2.0 -Release: 1%?dist +Release: 2%?dist Summary: Python bindings for FFmpeg - with complex filtering support License: Apache-2.0 URL: https://github.com/kkroening/ffmpeg-python diff --git a/anda/langs/python/future/future.spec b/anda/langs/python/future/future.spec index fd232f5624..a0e9afcfcb 100644 --- a/anda/langs/python/future/future.spec +++ b/anda/langs/python/future/future.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 1.0.0 -Release: 1%?dist +Release: 2%?dist Summary: Easy, clean, reliable Python 2/3 compatibility License: MIT URL: https://github.com/manrajgrover/halo diff --git a/anda/langs/python/fx2/fx2.spec b/anda/langs/python/fx2/fx2.spec index c6872789af..b46b74cb66 100644 --- a/anda/langs/python/fx2/fx2.spec +++ b/anda/langs/python/fx2/fx2.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.13 -Release: 2%?dist +Release: 3%?dist Summary: Chip support package for Cypress EZ-USB FX2 series microcontrollers License: 0BSD URL: https://github.com/whitequark/libfx2 diff --git a/anda/langs/python/gay/gay.spec b/anda/langs/python/gay/gay.spec index 7ca257a703..671b681f53 100644 --- a/anda/langs/python/gay/gay.spec +++ b/anda/langs/python/gay/gay.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 1.3.4 -Release: 2%?dist +Release: 3%?dist Summary: Colour your text / terminal to be more gay License: MIT URL: https://github.com/ms-jpq/gay diff --git a/anda/langs/python/geventwebsocket/anda.hcl b/anda/langs/python/geventwebsocket/anda.hcl new file mode 100644 index 0000000000..0f26d7b84d --- /dev/null +++ b/anda/langs/python/geventwebsocket/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "geventwebsocket.spec" + } +} diff --git a/anda/langs/python/geventwebsocket/geventwebsocket.spec b/anda/langs/python/geventwebsocket/geventwebsocket.spec new file mode 100644 index 0000000000..7fbd2f0dec --- /dev/null +++ b/anda/langs/python/geventwebsocket/geventwebsocket.spec @@ -0,0 +1,45 @@ +%global pypi_name gevent-websocket +%global _desc gevent-websocket is a WebSocket library for the gevent networking library. + +Name: python-%{pypi_name} +Version: 0.10.1 +Release: 2%{?dist} +Summary: gevent-websocket is a WebSocket library for the gevent networking library +License: Apache-2.0 +URL: https://github.com/cynepiaadmin/geventwebsocket +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files geventwebsocket + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.rst +%license LICENSE + +%changelog +* Thu May 07 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/geventwebsocket/update.rhai b/anda/langs/python/geventwebsocket/update.rhai new file mode 100644 index 0000000000..1056e6da0c --- /dev/null +++ b/anda/langs/python/geventwebsocket/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("gevent-websocket")); diff --git a/anda/langs/python/gpt-image/gpt-image.spec b/anda/langs/python/gpt-image/gpt-image.spec index 6c2ec4c6a9..05ab50e2a5 100644 --- a/anda/langs/python/gpt-image/gpt-image.spec +++ b/anda/langs/python/gpt-image/gpt-image.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.9.1 -Release: 1%?dist +Release: 2%?dist Summary: Tool to create GPT disk image files License: MIT URL: https://github.com/swysocki/gpt-image diff --git a/anda/langs/python/haishoku/python-haishoku.spec b/anda/langs/python/haishoku/python-haishoku.spec index a6457861ad..9f1e04d77a 100644 --- a/anda/langs/python/haishoku/python-haishoku.spec +++ b/anda/langs/python/haishoku/python-haishoku.spec @@ -6,7 +6,7 @@ Haishoku is a development tool for grabbing the dominant color or representative Name: python-%{pypi_name} Version: 1.1.8 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A development tool for grabbing the dominant color or representative color palette from an image License: MIT URL: https://github.com/LanceGin/haishoku diff --git a/anda/langs/python/halo/halo.spec b/anda/langs/python/halo/halo.spec index b82b3a2a41..998e6b47cb 100644 --- a/anda/langs/python/halo/halo.spec +++ b/anda/langs/python/halo/halo.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.0.31 -Release: 1%?dist +Release: 2%?dist Summary: Beautiful spinners for terminal, IPython and Jupyter License: MIT URL: https://github.com/manrajgrover/halo diff --git a/anda/langs/python/handy-archives/handy-archives.spec b/anda/langs/python/handy-archives/handy-archives.spec index 6fe2094ca4..f9e9803350 100644 --- a/anda/langs/python/handy-archives/handy-archives.spec +++ b/anda/langs/python/handy-archives/handy-archives.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.2.0 -Release: 1%?dist +Release: 2%?dist Summary: Some handy archive helpers for Python License: MIT URL: https://handy-archives.readthedocs.io/en/latest/ diff --git a/anda/langs/python/hf-xet/xf-xet.spec b/anda/langs/python/hf-xet/xf-xet.spec index 094227a843..de83843e77 100644 --- a/anda/langs/python/hf-xet/xf-xet.spec +++ b/anda/langs/python/hf-xet/xf-xet.spec @@ -2,12 +2,12 @@ %global _desc xet client tech, used in huggingface_hub. Name: python-%{pypi_name} -Version: 1.4.2 +Version: 1.5.1 Release: 1%{?dist} Summary: xet client tech, used in huggingface_hub License: Apache-2.0 URL: https://github.com/huggingface/xet-core -Source0: %url/archive/refs/tags/v%version.tar.gz +Source0: %{url}/releases/download/%{version}/hf_xet-%{version}.tar.gz BuildRequires: python3-devel BuildRequires: python3-pip @@ -40,7 +40,7 @@ Summary: documentation for python3-%{pypi_name} documentation for python3-%{pypi_name}. %prep -%autosetup -n xet-core-%{version} +%autosetup -n hf_xet-%{version} %build %pyproject_wheel diff --git a/anda/langs/python/hydra-colorlog/hydra-colorlog.spec b/anda/langs/python/hydra-colorlog/hydra-colorlog.spec index 71a17f48cf..e384766cdd 100644 --- a/anda/langs/python/hydra-colorlog/hydra-colorlog.spec +++ b/anda/langs/python/hydra-colorlog/hydra-colorlog.spec @@ -5,7 +5,7 @@ Name: python-%{pypi_name} Version: 1.2.0 -Release: 1%?dist +Release: 2%?dist Summary: Hydra is a framework for elegantly configuring complex applications License: MIT URL: https://github.com/facebookresearch/hydra @@ -14,7 +14,7 @@ Source0: %url/archive/refs/tags/v%version.tar.gz BuildRequires: python3-devel BuildRequires: python3-pip BuildRequires: python3-setuptools -BuildRequires: java-21-openjdk-devel +BuildRequires: java-latest-openjdk-devel Packager: Owen Zimmerman diff --git a/anda/langs/python/ignis/python-ignis.spec b/anda/langs/python/ignis/python-ignis.spec index b5074acdc0..e54841ba67 100644 --- a/anda/langs/python/ignis/python-ignis.spec +++ b/anda/langs/python/ignis/python-ignis.spec @@ -1,6 +1,6 @@ Name: python-ignis Version: 0.5.1 -Release: 2%?dist +Release: 3%?dist Summary: A widget framework for building desktop shells, written and configurable in Python License: LGPL-2.1-or-later diff --git a/anda/langs/python/imageio-ffmpeg/imageio-ffmpeg.spec b/anda/langs/python/imageio-ffmpeg/imageio-ffmpeg.spec index eef40aa382..8551690bff 100644 --- a/anda/langs/python/imageio-ffmpeg/imageio-ffmpeg.spec +++ b/anda/langs/python/imageio-ffmpeg/imageio-ffmpeg.spec @@ -3,11 +3,11 @@ Name: python-%{pypi_name} Version: 0.6.0 -Release: 1%?dist +Release: 2%?dist Summary: FFMPEG wrapper for Python License: BSD-2-Clause URL: https://github.com/imageio/imageio-ffmpeg -Source0: %url/archive/refs/tags/v%{version}.tar.gz +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz BuildArch: noarch BuildRequires: python3-devel diff --git a/anda/langs/python/iterable-io/iterable-io.spec b/anda/langs/python/iterable-io/iterable-io.spec index 6bbbdb7fca..a130f4112a 100644 --- a/anda/langs/python/iterable-io/iterable-io.spec +++ b/anda/langs/python/iterable-io/iterable-io.spec @@ -1,9 +1,10 @@ -%global pypi_name iterable-io +%global pypi_name iterable_io +%global real_name iterable-io %global _desc Python library to adapt iterables to a file-like interface. -Name: python-%{pypi_name} -Version: 1.0.1 -Release: 1%?dist +Name: python-%{real_name} +Version: 1.0.4 +Release: 2%{?dist} Summary: Python library to adapt iterables to a file-like interface # According to README @@ -18,22 +19,23 @@ BuildRequires: python3-devel BuildRequires: python3-wheel BuildRequires: python3-setuptools BuildRequires: python3-pip +BuildRequires: python3-hatchling Packager: Owen Zimmerman %description %_desc -%package -n python3-%{pypi_name} +%package -n python3-%{real_name} Summary: %{summary} Provides: iterable-io -%{?python_provide:%python_provide python3-%{pypi_name}} +%{?python_provide:%python_provide python3-%{real_name}} -%description -n python3-%{pypi_name} +%description -n python3-%{real_name} %_desc %prep -%autosetup -n iterable-io-%{version} +%autosetup -n %{pypi_name}-%{version} %build %pyproject_wheel @@ -43,7 +45,7 @@ install -Dm644 %{SOURCE1} %{buildroot}%{_defaultlicensedir}/%{name}/LICENSE %pyproject_install %pyproject_save_files iterableio -%files -n python3-%{pypi_name} -f %{pyproject_files} +%files -n python3-%{real_name} -f %{pyproject_files} %doc README.md %{_defaultlicensedir}/%{name}/LICENSE %ghost %python3_sitelib/__pycache__/*.cpython-*.pyc diff --git a/anda/langs/python/jade/jade.spec b/anda/langs/python/jade/jade.spec index d59938d50a..2641488874 100644 --- a/anda/langs/python/jade/jade.spec +++ b/anda/langs/python/jade/jade.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.1.0 -Release: 1%?dist +Release: 2%?dist Summary: Exoplanet evolution code License: LGPL-3.0 URL: https://gitlab.unige.ch/spice_dune/jade diff --git a/anda/langs/python/jellyfin-apiclient-python/jellyfin-apiclient-python.spec b/anda/langs/python/jellyfin-apiclient-python/jellyfin-apiclient-python.spec index 7af264a1e4..8b2ecb4065 100644 --- a/anda/langs/python/jellyfin-apiclient-python/jellyfin-apiclient-python.spec +++ b/anda/langs/python/jellyfin-apiclient-python/jellyfin-apiclient-python.spec @@ -2,10 +2,10 @@ %global _desc Python API Client for Jellyfin. Name: python-%{pypi_name} -Version: 1.11.0 -Release: 1%?dist +Version: 1.12.0 +Release: 2%{?dist} Summary: Python API Client for Jellyfin -License: GPL-3.0 +License: GPL-3.0-or-later URL: https://github.com/jellyfin/jellyfin-apiclient-python Source0: %url/archive/refs/tags/v%version.tar.gz BuildArch: noarch diff --git a/anda/langs/python/jschon/jschon.spec b/anda/langs/python/jschon/jschon.spec index 6207922308..db6fc54777 100644 --- a/anda/langs/python/jschon/jschon.spec +++ b/anda/langs/python/jschon/jschon.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.11.1 -Release: 2%?dist +Release: 3%?dist Summary: An object-oriented JSON Schema implementation for Python License: MIT URL: https://github.com/marksparkza/jschon diff --git a/anda/langs/python/julius/julius.spec b/anda/langs/python/julius/julius.spec index 32474ffd24..e34964368c 100644 --- a/anda/langs/python/julius/julius.spec +++ b/anda/langs/python/julius/julius.spec @@ -2,8 +2,8 @@ %global _desc Fast PyTorch based DSP for audio and 1D signals. Name: python-%{pypi_name} -Version: 0.2.7 -Release: 1%?dist +Version: 0.2.8 +Release: 2%{?dist} Summary: Fast PyTorch based DSP for audio and 1D signals License: MIT URL: https://github.com/adefossez/julius @@ -15,6 +15,7 @@ BuildRequires: python3-build BuildRequires: python3-wheel BuildRequires: python3-setuptools BuildRequires: python3-pip +BuildRequires: python3-hatchling Packager: Owen Zimmerman diff --git a/anda/langs/python/jupyter-sphinx/python-jupyter-sphinx.spec b/anda/langs/python/jupyter-sphinx/python-jupyter-sphinx.spec index 9a92f4d1d6..6a9d7a7859 100644 --- a/anda/langs/python/jupyter-sphinx/python-jupyter-sphinx.spec +++ b/anda/langs/python/jupyter-sphinx/python-jupyter-sphinx.spec @@ -7,7 +7,7 @@ Name: python-jupyter-sphinx Version: 0.5.3 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Jupyter Sphinx extensions License: BSD-3-Clause URL: https://jupyter-sphinx.readthedocs.io/ diff --git a/anda/langs/python/jxlpy/jxlpy.spec b/anda/langs/python/jxlpy/jxlpy.spec index 2b6ba77903..2d9b0e7d5c 100644 --- a/anda/langs/python/jxlpy/jxlpy.spec +++ b/anda/langs/python/jxlpy/jxlpy.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.9.5 -Release: 1%?dist +Release: 2%?dist Summary: Cython bindings and Pillow plugin for JPEG XL License: MIT URL: https://github.com/olokelo/jxlpy diff --git a/anda/langs/python/latex2mathml/latex2mathml.spec b/anda/langs/python/latex2mathml/latex2mathml.spec index f4e3b86803..3c04419960 100644 --- a/anda/langs/python/latex2mathml/latex2mathml.spec +++ b/anda/langs/python/latex2mathml/latex2mathml.spec @@ -2,12 +2,12 @@ %global _desc Pure Python library for LaTeX to MathML conversion. Name: python-%{pypi_name} -Version: 3.79.0 -Release: 1%{?dist} +Version: 3.81.0 +Release: 2%{?dist} Summary: Pure Python library for LaTeX to MathML conversion License: MIT URL: https://github.com/roniemartinez/latex2mathml -Source0: %{pypi_source} +Source0: %{url}/archive/refs/tags/%{version}.tar.gz BuildArch: noarch BuildRequires: python3-devel @@ -18,6 +18,8 @@ BuildRequires: python3-poetry-core BuildRequires: python3-installer BuildRequires: python3-build BuildRequires: python3-hatchling +BuildRequires: python3-importlib-metadata +BuildRequires: python3-uv-build Packager: Owen Zimmerman diff --git a/anda/langs/python/lhotse/anda.hcl b/anda/langs/python/lhotse/anda.hcl new file mode 100644 index 0000000000..e5e6e4be9f --- /dev/null +++ b/anda/langs/python/lhotse/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "lhotse.spec" + } +} diff --git a/anda/langs/python/lhotse/lhotse.spec b/anda/langs/python/lhotse/lhotse.spec new file mode 100644 index 0000000000..5bac05938f --- /dev/null +++ b/anda/langs/python/lhotse/lhotse.spec @@ -0,0 +1,46 @@ +%global pypi_name lhotse +%global _desc Tools for handling multimodal data in machine learning projects. + +Name: python-%{pypi_name} +Version: 1.33.0 +Release: 2%{?dist} +Summary: Tools for handling multimodal data in machine learning projects +License: Apache-2.0 +URL: https://lhotse.readthedocs.io/en/latest/ +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%git_clone https://github.com/lhotse-speech/lhotse.git %{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md +%license LICENSE +%{_bindir}/lhotse + +%changelog +* Sun May 24 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/lhotse/update.rhai b/anda/langs/python/lhotse/update.rhai new file mode 100644 index 0000000000..5115d3c16a --- /dev/null +++ b/anda/langs/python/lhotse/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("lhotse")); diff --git a/anda/langs/python/librosa/librosa.spec b/anda/langs/python/librosa/librosa.spec index 9b6a2286b3..da9b04267b 100644 --- a/anda/langs/python/librosa/librosa.spec +++ b/anda/langs/python/librosa/librosa.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.11.0 -Release: 1%?dist +Release: 2%?dist Summary: Python library for audio and music analysis License: MIT URL: https://librosa.org diff --git a/anda/langs/python/log_symbols/log_symbols.spec b/anda/langs/python/log_symbols/log_symbols.spec index 2acf6b403a..dec29219e1 100644 --- a/anda/langs/python/log_symbols/log_symbols.spec +++ b/anda/langs/python/log_symbols/log_symbols.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.0.14 -Release: 1%?dist +Release: 2%?dist Summary: Colored symbols for various log levels for Python License: MIT URL: https://github.com/manrajgrover/py-log-symbols diff --git a/anda/langs/python/magic-wormhole/magic-wormhole.spec b/anda/langs/python/magic-wormhole/magic-wormhole.spec index 6c2b6d76c7..762f67ba81 100644 --- a/anda/langs/python/magic-wormhole/magic-wormhole.spec +++ b/anda/langs/python/magic-wormhole/magic-wormhole.spec @@ -2,8 +2,8 @@ %global _desc get things from one computer to another, safely. Name: python-%{pypi_name} -Version: 0.23.0 -Release: 1%{?dist} +Version: 0.24.0 +Release: 3%{?dist} Summary: get things from one computer to another, safely License: MIT URL: https://github.com/magic-wormhole/magic-wormhole @@ -34,6 +34,8 @@ Provides: magic-wormhole %prep %autosetup -n magic-wormhole-%{version} +%pyproject_patch_dependency autobahn:drop_constraints + %build %pyproject_wheel diff --git a/anda/langs/python/materialyoucolor/python-materialyoucolor.spec b/anda/langs/python/materialyoucolor/python-materialyoucolor.spec index f3f85fb1b4..e5f550c045 100644 --- a/anda/langs/python/materialyoucolor/python-materialyoucolor.spec +++ b/anda/langs/python/materialyoucolor/python-materialyoucolor.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 3.0.2 -Release: 1%?dist +Release: 2%?dist Summary: Material You color generation algorithms in pure python! License: MIT URL: https://github.com/T-Dynamos/materialyoucolor-python diff --git a/anda/langs/python/mdtex2html/mdtex2html.spec b/anda/langs/python/mdtex2html/mdtex2html.spec index 92c03668bc..ce0ce708eb 100644 --- a/anda/langs/python/mdtex2html/mdtex2html.spec +++ b/anda/langs/python/mdtex2html/mdtex2html.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 1.3.2 -Release: 1%?dist +Release: 2%?dist Summary: python3-library to convert Markdown with included LaTeX-Formulas to HTML with MathML License: LGPL-2.1 URL: https://github.com/polarwinkel/mdtex2html diff --git a/anda/langs/python/milc/milc.spec b/anda/langs/python/milc/milc.spec index 34559c904f..77328558d3 100644 --- a/anda/langs/python/milc/milc.spec +++ b/anda/langs/python/milc/milc.spec @@ -2,8 +2,8 @@ %global _desc Batteries-Included Python 3 CLI Framework. Name: python-%{pypi_name} -Version: 1.10.0 -Release: 1%{?dist} +Version: 2.0.0 +Release: 2%{?dist} Summary: Batteries-Included Python 3 CLI Framework License: MIT URL: https://github.com/clueboard/milc diff --git a/anda/langs/python/mistletoe/mistletoe.spec b/anda/langs/python/mistletoe/mistletoe.spec index e19f0798e4..331b00e30f 100644 --- a/anda/langs/python/mistletoe/mistletoe.spec +++ b/anda/langs/python/mistletoe/mistletoe.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 1.5.1 -Release: 1%?dist +Release: 2%?dist Summary: A rough port of Node.js's EventEmitter to Python with a few tricks of its own License: MIT URL: https://github.com/miyuchina/mistletoe diff --git a/anda/langs/python/mpegdash/anda.hcl b/anda/langs/python/mpegdash/anda.hcl new file mode 100644 index 0000000000..e991509a82 --- /dev/null +++ b/anda/langs/python/mpegdash/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "mpegdash.spec" + } +} diff --git a/anda/langs/python/mpegdash/mpegdash.spec b/anda/langs/python/mpegdash/mpegdash.spec new file mode 100644 index 0000000000..66c4c25ab4 --- /dev/null +++ b/anda/langs/python/mpegdash/mpegdash.spec @@ -0,0 +1,45 @@ +%global pypi_name mpegdash +%global _desc MPEG-DASH MPD(Media Presentation Description) Parser. + +Name: python-%{pypi_name} +Version: 0.4.1 +Release: 2%?dist +Summary: MPEG-DASH MPD(Media Presentation Description) Parser +License: MIT +URL: https://github.com/sangwonl/python-mpegdash +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md +%license LICENSE + +%changelog +* Sun Mar 29 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/mpegdash/update.rhai b/anda/langs/python/mpegdash/update.rhai new file mode 100644 index 0000000000..8a8261bbc7 --- /dev/null +++ b/anda/langs/python/mpegdash/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("mpegdash")); diff --git a/anda/langs/python/mpv/python-mpv.spec b/anda/langs/python/mpv/python-mpv.spec index e7b422f89f..1e43aa9eb6 100644 --- a/anda/langs/python/mpv/python-mpv.spec +++ b/anda/langs/python/mpv/python-mpv.spec @@ -4,7 +4,7 @@ Name: python-%{pypi_name} Version: 1.0.8 -Release: 3%?dist +Release: 4%?dist Summary: Python interface to the awesome mpv media player License: GPL-2.0+ OR LGPL-2.1+ URL: https://github.com/jaseg/python-mpv diff --git a/anda/langs/python/musdb/musdb.spec b/anda/langs/python/musdb/musdb.spec index ea6c1eddf5..e8c1a7d217 100644 --- a/anda/langs/python/musdb/musdb.spec +++ b/anda/langs/python/musdb/musdb.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.4.3 -Release: 1%?dist +Release: 2%?dist Summary: Python parser and tools for MUSDB18 Music Separation Dataset License: MIT URL: https://github.com/sigsep/sigsep-mus-db diff --git a/anda/langs/python/museval/museval.spec b/anda/langs/python/museval/museval.spec index 17acf45ce6..48718e620b 100644 --- a/anda/langs/python/museval/museval.spec +++ b/anda/langs/python/museval/museval.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.4.1 -Release: 1%?dist +Release: 2%?dist Summary: Source separation evaluation tools for python License: MIT URL: https://github.com/sigsep/sigsep-mus-eval diff --git a/anda/langs/python/numba/numba.spec b/anda/langs/python/numba/numba.spec index 9e8234147c..a01cf27d02 100644 --- a/anda/langs/python/numba/numba.spec +++ b/anda/langs/python/numba/numba.spec @@ -1,13 +1,14 @@ %global pypi_name numba Name: python-%{pypi_name} -Version: 0.64.0 -Release: 1%?dist +Version: 0.65.1 +Release: 3%{?dist} Summary: NumPy aware dynamic Python compiler using LLVM License: BSD-2-Clause AND MIT AND BSD-3-Clause URL: https://numba.pydata.org # PyPi source does not include all files Source0: https://github.com/numba/numba/archive/refs/tags/%version.tar.gz +Patch0: remove-llvmlite-version-req.patch # This package is intentionally not noarch BuildRequires: python3-devel @@ -36,7 +37,7 @@ Numba is an open source, NumPy-aware optimizing compiler for Python sponsored by Numba can compile a large subset of numerically-focused Python, including many NumPy functions. Additionally, Numba has support for automatic parallelization of loops, generation of GPU-accelerated code, and creation of ufuncs and C callbacks. %prep -%autosetup -n numba-%{version} +%autosetup -n numba-%{version} -p1 %build %pyproject_wheel diff --git a/anda/langs/python/numba/remove-llvmlite-version-req.patch b/anda/langs/python/numba/remove-llvmlite-version-req.patch new file mode 100644 index 0000000000..f2e9e35c1d --- /dev/null +++ b/anda/langs/python/numba/remove-llvmlite-version-req.patch @@ -0,0 +1,13 @@ +diff --git a/setup.py b/setup.py +index 282b8f42e..24c865f0a 100644 +--- a/setup.py ++++ b/setup.py +@@ -24,7 +24,7 @@ max_python_version = "3.15" # exclusive + min_numpy_build_version = "2.0.0rc1" + min_numpy_run_version = "1.22" + max_numpy_run_version = "2.5" +-min_llvmlite_version = "0.47.0dev0" ++min_llvmlite_version = "0.44" + max_llvmlite_version = "0.48" + + if sys.platform.startswith('linux'): diff --git a/anda/langs/python/omegaconf/omegaconf.spec b/anda/langs/python/omegaconf/omegaconf.spec index aeb4f904e0..ea99669179 100644 --- a/anda/langs/python/omegaconf/omegaconf.spec +++ b/anda/langs/python/omegaconf/omegaconf.spec @@ -2,8 +2,8 @@ %global _desc Flexible Python configuration system. The last one you will ever need. Name: python-%{pypi_name} -Version: 2.3.0 -Release: 1%?dist +Version: 2.3.1 +Release: 1%{?dist} Summary: Flexible Python configuration system. The last one you will ever need License: BSD-3-Clause URL: https://github.com/omry/omegaconf diff --git a/anda/langs/python/open-unmix-pytorch/anda.hcl b/anda/langs/python/open-unmix-pytorch/anda.hcl new file mode 100644 index 0000000000..d8dcdc32f2 --- /dev/null +++ b/anda/langs/python/open-unmix-pytorch/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "open-unmix-pytorch.spec" + } +} diff --git a/anda/langs/python/open-unmix-pytorch/open-unmix-pytorch.spec b/anda/langs/python/open-unmix-pytorch/open-unmix-pytorch.spec new file mode 100644 index 0000000000..961f4237a0 --- /dev/null +++ b/anda/langs/python/open-unmix-pytorch/open-unmix-pytorch.spec @@ -0,0 +1,47 @@ +%global pypi_name openunmix +%global _desc Open-Unmix - Music Source Separation for PyTorch. + +Name: python-%{pypi_name} +Version: 1.3.0 +Release: 2%{?dist} +Summary: Open-Unmix - Music Source Separation for PyTorch +License: MIT +URL: https://github.com/sigsep/open-unmix-pytorch +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-setuptools +BuildRequires: python3-wheel + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md +%license LICENSE +%{_bindir}/umx + +%changelog +* Mon May 04 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/open-unmix-pytorch/update.rhai b/anda/langs/python/open-unmix-pytorch/update.rhai new file mode 100644 index 0000000000..acf60671ab --- /dev/null +++ b/anda/langs/python/open-unmix-pytorch/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("openunmix")); diff --git a/anda/langs/python/openai-whisper/openai-whisper.spec b/anda/langs/python/openai-whisper/openai-whisper.spec index f1ee8200b3..03a4eb44ca 100644 --- a/anda/langs/python/openai-whisper/openai-whisper.spec +++ b/anda/langs/python/openai-whisper/openai-whisper.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 20250625 -Release: 1%?dist +Release: 2%?dist Summary: Robust Speech Recognition via Large-Scale Weak Supervision License: MIT URL: https://github.com/openai/whisper diff --git a/anda/langs/python/opencc/anda.hcl b/anda/langs/python/opencc/anda.hcl new file mode 100644 index 0000000000..8a2a74ce34 --- /dev/null +++ b/anda/langs/python/opencc/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "opencc.spec" + } +} diff --git a/anda/langs/python/opencc/opencc.spec b/anda/langs/python/opencc/opencc.spec new file mode 100644 index 0000000000..a1de791aa9 --- /dev/null +++ b/anda/langs/python/opencc/opencc.spec @@ -0,0 +1,47 @@ +%global pypi_name opencc +%global _desc Open Chinese Convert. + +Name: python-%{pypi_name} +Version: 1.3.1 +Release: 2%{?dist} +Summary: Open Chinese Convert +License: Apache-2.0 +URL: https://github.com/BYVoid/OpenCC +Source0: %{pypi_source} + +BuildRequires: python3-devel +BuildRequires: python3-wheel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +BuildRequires: gcc-c++ +BuildRequires: cmake + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md AUTHORS +%license LICENSE + +%changelog +* Sun Mar 29 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/opencc/update.rhai b/anda/langs/python/opencc/update.rhai new file mode 100644 index 0000000000..df2b57b416 --- /dev/null +++ b/anda/langs/python/opencc/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("opencc")); diff --git a/anda/langs/python/peft/anda.hcl b/anda/langs/python/peft/anda.hcl new file mode 100644 index 0000000000..7e35b698f0 --- /dev/null +++ b/anda/langs/python/peft/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "peft.spec" + } +} diff --git a/anda/langs/python/peft/peft.spec b/anda/langs/python/peft/peft.spec new file mode 100644 index 0000000000..1c45ceb774 --- /dev/null +++ b/anda/langs/python/peft/peft.spec @@ -0,0 +1,45 @@ +%global pypi_name peft +%global _desc PEFT: State-of-the-art Parameter-Efficient Fine-Tuning. + +Name: python-%{pypi_name} +Version: 0.19.1 +Release: 2%{?dist} +Summary: PEFT: State-of-the-art Parameter-Efficient Fine-Tuning +License: Apache-2.0 +URL: https://github.com/huggingface/peft +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-setuptools +BuildRequires: python3-pip +BuildRequires: python3-devel + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md +%license LICENSE + +%changelog +* Mon May 04 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/peft/update.rhai b/anda/langs/python/peft/update.rhai new file mode 100644 index 0000000000..364e788afc --- /dev/null +++ b/anda/langs/python/peft/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("peft")); diff --git a/anda/langs/python/pgpy13/pgpy13.spec b/anda/langs/python/pgpy13/pgpy13.spec index 380c345f53..a751e3406f 100644 --- a/anda/langs/python/pgpy13/pgpy13.spec +++ b/anda/langs/python/pgpy13/pgpy13.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.6.1rc1 -Release: 1%?dist +Release: 2%?dist Summary: Pretty Good Privacy for Python License: BSD-3-Clause URL: https://github.com/memory/PGPy diff --git a/anda/langs/python/pillow-heif/python3-pillow-heif.spec b/anda/langs/python/pillow-heif/python3-pillow-heif.spec index f162a76407..7d90464fe1 100644 --- a/anda/langs/python/pillow-heif/python3-pillow-heif.spec +++ b/anda/langs/python/pillow-heif/python3-pillow-heif.spec @@ -6,8 +6,8 @@ %bcond_with doc Name: python-%{srcname} -Version: 1.3.0 -Release: 1%?dist +Version: 1.4.0 +Release: 1%{?dist} Summary: Python library for working with HEIF images and plugin for Pillow License: BSD-3-Clause diff --git a/anda/langs/python/pip-system-certs/python-pip-system-certs.spec b/anda/langs/python/pip-system-certs/python-pip-system-certs.spec index d373ae0dce..0795c7ada4 100644 --- a/anda/langs/python/pip-system-certs/python-pip-system-certs.spec +++ b/anda/langs/python/pip-system-certs/python-pip-system-certs.spec @@ -4,7 +4,7 @@ Name: python-%{pypi_name} Version: %{pypi_version} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Live patches pip to use system certs by default License: BSD-2-Clause diff --git a/anda/langs/python/pkgcore/pkgcore.spec b/anda/langs/python/pkgcore/pkgcore.spec index 3b100b741c..9bfe90ea31 100644 --- a/anda/langs/python/pkgcore/pkgcore.spec +++ b/anda/langs/python/pkgcore/pkgcore.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.12.33 -Release: 1%?dist +Release: 2%?dist Summary: A framework for package management License: BSD-3-Clause URL: https://pkgcore.github.io/pkgcore diff --git a/anda/langs/python/plexapi/anda.hcl b/anda/langs/python/plexapi/anda.hcl new file mode 100644 index 0000000000..1b822bf3cd --- /dev/null +++ b/anda/langs/python/plexapi/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "plexapi.spec" + } +} diff --git a/anda/langs/python/plexapi/plexapi.spec b/anda/langs/python/plexapi/plexapi.spec new file mode 100644 index 0000000000..1917d229ab --- /dev/null +++ b/anda/langs/python/plexapi/plexapi.spec @@ -0,0 +1,46 @@ +%global pypi_name plexapi +%global _desc Python bindings for the Plex API. + +Name: python-%{pypi_name} +Version: 4.18.1 +Release: 2%{?dist} +Summary: Python bindings for the Plex API +License: BSD-3-Clause +URL: https://github.com/pushingkarmaorg/python-plexapi +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-setuptools + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +Provides: %{pypi_name} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.rst +%license LICENSE.txt + +%changelog +* Sun Mar 29 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/plexapi/update.rhai b/anda/langs/python/plexapi/update.rhai new file mode 100644 index 0000000000..e764dd50d7 --- /dev/null +++ b/anda/langs/python/plexapi/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("plexapi")); diff --git a/anda/langs/python/posthog/posthog.spec b/anda/langs/python/posthog/posthog.spec index 7b395780cd..7c4ea97c1e 100644 --- a/anda/langs/python/posthog/posthog.spec +++ b/anda/langs/python/posthog/posthog.spec @@ -2,7 +2,7 @@ %global _desc Send usage data from your Python code to PostHog. Name: python-%{pypi_name} -Version: 7.9.12 +Version: 7.18.3 Release: 1%{?dist} Summary: Send usage data from your Python code to PostHog License: MIT diff --git a/anda/langs/python/protobuf/python3-protobuf.spec b/anda/langs/python/protobuf/python3-protobuf.spec index 15b439a95e..603066de6a 100644 --- a/anda/langs/python/protobuf/python3-protobuf.spec +++ b/anda/langs/python/protobuf/python3-protobuf.spec @@ -2,7 +2,7 @@ %global pypi_name protobuf Name: python-%{pypi_name} -Version: 7.34.1 +Version: 7.35.1 Release: 1%{?dist} Summary: Protocol Buffers diff --git a/anda/langs/python/proton-core/anda.hcl b/anda/langs/python/proton-core/anda.hcl index a653ad4946..7eec800b00 100644 --- a/anda/langs/python/proton-core/anda.hcl +++ b/anda/langs/python/proton-core/anda.hcl @@ -3,7 +3,4 @@ project pkg { rpm { spec = "proton-core.spec" } - labels { - subrepo = "extras" - } } diff --git a/anda/langs/python/proton-core/proton-core.spec b/anda/langs/python/proton-core/proton-core.spec index 28cf1ab883..139e701a04 100644 --- a/anda/langs/python/proton-core/proton-core.spec +++ b/anda/langs/python/proton-core/proton-core.spec @@ -4,7 +4,7 @@ Name: python-proton-core Version: 0.7.0 -Release: 1%?dist +Release: 2%?dist Summary: %{unmangled_name} library License: GPL-3.0-or-later URL: https://github.com/ProtonVPN/%{github_repo_name} diff --git a/anda/langs/python/proton-keyring-linux/anda.hcl b/anda/langs/python/proton-keyring-linux/anda.hcl new file mode 100644 index 0000000000..f4b7eb0666 --- /dev/null +++ b/anda/langs/python/proton-keyring-linux/anda.hcl @@ -0,0 +1,6 @@ + project pkg { + arches = ["x86_64"] + rpm { + spec = "proton-keyring-linux.spec" + } + } diff --git a/anda/langs/python/proton-keyring-linux/proton-keyring-linux.spec b/anda/langs/python/proton-keyring-linux/proton-keyring-linux.spec new file mode 100644 index 0000000000..786a1ce842 --- /dev/null +++ b/anda/langs/python/proton-keyring-linux/proton-keyring-linux.spec @@ -0,0 +1,45 @@ +%global _desc Python3 Proton linux keyring base implementation. + +Name: python-proton-keyring-linux +Version: 0.2.2 +Release: 1%{?dist} +Summary: Python3 Proton linux keyring base implementation +License: GPL-3.0-or-later +URL: https://github.com/ProtonVPN/python-proton-keyring-linux +Source0: %url/archive/refs/tags/v%version.tar.gz +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-setuptools + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-proton-keyring-linux +Summary: %{summary} +Provides: proton-keyring-linux +%{?python_provide:%python_provide python3-proton-keyring-linux} + +%description -n python3-proton-keyring-linux +%_desc + +%prep +%autosetup -n python-proton-keyring-linux-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files proton + +%files -n python3-proton-keyring-linux -f %{pyproject_files} +%doc CODEOWNERS +%license LICENSE + +%changelog +* Mon Apr 27 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/proton-keyring-linux/update.rhai b/anda/langs/python/proton-keyring-linux/update.rhai new file mode 100644 index 0000000000..fa6403a7cb --- /dev/null +++ b/anda/langs/python/proton-keyring-linux/update.rhai @@ -0,0 +1 @@ +rpm.version(gh_tag("ProtonVPN/python-proton-keyring-linux")); diff --git a/anda/langs/python/proton-vpn-api-core/proton-vpn-api-core.spec b/anda/langs/python/proton-vpn-api-core/proton-vpn-api-core.spec index 2a11b5a32f..2842105bb0 100644 --- a/anda/langs/python/proton-vpn-api-core/proton-vpn-api-core.spec +++ b/anda/langs/python/proton-vpn-api-core/proton-vpn-api-core.spec @@ -4,7 +4,7 @@ %global __requires_exclude ^python3\\.14dist\\(proton-vpn-local-agent\\)$ Name: python-%{pypi_name} -Version: 4.17.2 +Version: 5.2.5 Release: 1%{?dist} Summary: A facade to the other Proton VPN components License: GPL-3.0-Only diff --git a/anda/langs/python/proton-vpn-local-agent/proton-vpn-local-agent.spec b/anda/langs/python/proton-vpn-local-agent/proton-vpn-local-agent.spec index 1ceef4dd18..60e47c4a29 100644 --- a/anda/langs/python/proton-vpn-local-agent/proton-vpn-local-agent.spec +++ b/anda/langs/python/proton-vpn-local-agent/proton-vpn-local-agent.spec @@ -4,8 +4,8 @@ %global _desc Proton VPN local agent written in Rust. Name: python-%{pypi_name} -Version: 1.6.1 -Release: 1%{?dist} +Version: 1.6.3 +Release: 2%{?dist} Summary: Proton VPN local agent written in Rust License: GPL-3.0-only URL: https://github.com/ProtonVPN/local-agent-rs diff --git a/anda/langs/python/proxy-tools/proxy-tools.spec b/anda/langs/python/proxy-tools/proxy-tools.spec index 5aa2d160d7..b15fe7e74e 100644 --- a/anda/langs/python/proxy-tools/proxy-tools.spec +++ b/anda/langs/python/proxy-tools/proxy-tools.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.1.0 -Release: 1%?dist +Release: 2%?dist Summary: Simple (hopefuly useful) Proxy (as in the GoF design pattern) implementation for Python License: BSD-2-clause URL: https://github.com/jtushman/proxy_tools diff --git a/anda/langs/python/publicdotcom-cli/anda.hcl b/anda/langs/python/publicdotcom-cli/anda.hcl new file mode 100644 index 0000000000..edfba72f6e --- /dev/null +++ b/anda/langs/python/publicdotcom-cli/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "publicdotcom-cli.spec" + } +} diff --git a/anda/langs/python/publicdotcom-cli/publicdotcom-cli.spec b/anda/langs/python/publicdotcom-cli/publicdotcom-cli.spec new file mode 100644 index 0000000000..a9ba6f6778 --- /dev/null +++ b/anda/langs/python/publicdotcom-cli/publicdotcom-cli.spec @@ -0,0 +1,46 @@ +%global pypi_name publicdotcom_cli +%global real_name publicdotcom-cli +%global _desc Command-line client for the Public.com Trading API. + +Name: python-%{real_name} +Version: 1.1.0 +Release: 2%?dist +Summary: Command-line client for the Public.com Trading API +License: Apache-2.0 +URL: https://github.com/PublicDotCom/publicdotcom-cli +Source0: %{pypi_source} +BuildArch: noarch +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-setuptools +BuildRequires: python3-hatchling + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{real_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{real_name}} + +%description -n python3-%{real_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} + +%files -n python3-%{real_name} -f %{pyproject_files} +%doc README.md +%{_bindir}/public + +%changelog +* Thu May 07 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/publicdotcom-cli/update.rhai b/anda/langs/python/publicdotcom-cli/update.rhai new file mode 100644 index 0000000000..098cbea22d --- /dev/null +++ b/anda/langs/python/publicdotcom-cli/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("publicdotcom-cli")); diff --git a/anda/langs/python/publicdotcom-py/anda.hcl b/anda/langs/python/publicdotcom-py/anda.hcl new file mode 100644 index 0000000000..61b7ccb89a --- /dev/null +++ b/anda/langs/python/publicdotcom-py/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "publicdotcom-py.spec" + } +} diff --git a/anda/langs/python/publicdotcom-py/publicdotcom-py.spec b/anda/langs/python/publicdotcom-py/publicdotcom-py.spec new file mode 100644 index 0000000000..9d4d1dfa2b --- /dev/null +++ b/anda/langs/python/publicdotcom-py/publicdotcom-py.spec @@ -0,0 +1,46 @@ +%global pypi_name publicdotcom_py +%global real_name publicdotcom-py +%global _desc A Python SDK for interacting with the Public Trading API, providing a simple and intuitive interface for trading operations, market data retrieval, and account management. + +Name: python-%{real_name} +Version: 0.1.15 +Release: 2%{?dist} +Summary: Python SDK for interacting with the Public Trading API +License: Apache-2.0 +URL: https://github.com/PublicDotCom/publicdotcom-py +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-setuptools + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{real_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{real_name}} + +%description -n python3-%{real_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files public_api_sdk + +%files -n python3-%{real_name} -f %{pyproject_files} +%doc README.md +%license LICENCE + +%changelog +* Thu May 07 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/publicdotcom-py/update.rhai b/anda/langs/python/publicdotcom-py/update.rhai new file mode 100644 index 0000000000..45bd02a092 --- /dev/null +++ b/anda/langs/python/publicdotcom-py/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("publicdotcom-py")); diff --git a/anda/langs/python/py-spinners/py-spinners.spec b/anda/langs/python/py-spinners/py-spinners.spec index da2827b417..43c0da1013 100644 --- a/anda/langs/python/py-spinners/py-spinners.spec +++ b/anda/langs/python/py-spinners/py-spinners.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.0.24 -Release: 1%?dist +Release: 2%?dist Summary: More than 60 spinners for terminal, python wrapper for amazing node library cli-spinners License: MIT URL: https://pypi.org/project/spinners/ diff --git a/anda/langs/python/pyee/pyee.spec b/anda/langs/python/pyee/pyee.spec index 53ed6e9416..edbcc04c9d 100644 --- a/anda/langs/python/pyee/pyee.spec +++ b/anda/langs/python/pyee/pyee.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 13.0.1 -Release: 1%?dist +Release: 2%?dist Summary: A rough port of Node.js's EventEmitter to Python with a few tricks of its own License: MIT URL: https://github.com/jfhbrook/pyee diff --git a/anda/langs/python/pyfluidsynth/pyfluidsynth.spec b/anda/langs/python/pyfluidsynth/pyfluidsynth.spec index 6b105a8db5..b360948da7 100644 --- a/anda/langs/python/pyfluidsynth/pyfluidsynth.spec +++ b/anda/langs/python/pyfluidsynth/pyfluidsynth.spec @@ -2,8 +2,8 @@ %global _desc Python bindings for FluidSynth. Name: python-%{pypi_name} -Version: 1.3.4 -Release: 1%?dist +Version: 1.4.0 +Release: 2%{?dist} Summary: Python bindings for FluidSynth License: LGPL-2.1 URL: https://github.com/nwhitehead/pyfluidsynth @@ -35,14 +35,12 @@ Summary: %{summary} %install %pyproject_install +%pyproject_save_files fluidsynth -%files -n python3-%{pypi_name} +%files -n python3-%{pypi_name} -f %{pyproject_files} %doc README.md %license LICENSE -%{_usr}/lib/python3.14/site-packages/__pycache__/fluidsynth.*.pyc -%{_usr}/lib/python3.14/site-packages/__pycache__/fluidsynth.*.*.pyc -%{_usr}/lib/python3.14/site-packages/fluidsynth.py -%{_usr}/lib/python3.14/site-packages/%{pypi_name}-%{version}.dist-info/* +%{python3_sitelib}/fluidsynth.py %changelog * Sat Jan 24 2026 Owen Zimmerman diff --git a/anda/langs/python/pygment-styles/python-pygments-styles.spec b/anda/langs/python/pygment-styles/python-pygments-styles.spec index 8b1346f32e..37ea01e7c9 100644 --- a/anda/langs/python/pygment-styles/python-pygments-styles.spec +++ b/anda/langs/python/pygment-styles/python-pygments-styles.spec @@ -3,7 +3,7 @@ Name: python-%{real_name} Version: 0.3.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A collection of Pygments styles License: BSD-3-Clause URL: https://pygments-styles.org diff --git a/anda/langs/python/pyproject-parser/pyproject-parser.spec b/anda/langs/python/pyproject-parser/pyproject-parser.spec index f639e92dc5..2140cd0b23 100644 --- a/anda/langs/python/pyproject-parser/pyproject-parser.spec +++ b/anda/langs/python/pyproject-parser/pyproject-parser.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.14.0 -Release: 1%?dist +Release: 2%?dist Summary: Parser for 'pyproject.toml' License: MIT URL: https://pyproject-parser.readthedocs.io/en/latest/ diff --git a/anda/langs/python/pyprojectize/pyprojectize.spec b/anda/langs/python/pyprojectize/pyprojectize.spec index 0ab44f7b96..f325511bc9 100644 --- a/anda/langs/python/pyprojectize/pyprojectize.spec +++ b/anda/langs/python/pyprojectize/pyprojectize.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 1a7 -Release: 1%?dist +Release: 2%?dist Summary: Convert a spec file from py3_build etc. macros to pyproject_* License: MIT-0 URL: https://github.com/hroncok/pyprojectize diff --git a/anda/langs/python/pysdl3/anda.hcl b/anda/langs/python/pysdl3/anda.hcl new file mode 100644 index 0000000000..6746293d9c --- /dev/null +++ b/anda/langs/python/pysdl3/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "pysdl3.spec" + } +} diff --git a/anda/langs/python/pysdl3/pysdl3.spec b/anda/langs/python/pysdl3/pysdl3.spec new file mode 100644 index 0000000000..48be788b0d --- /dev/null +++ b/anda/langs/python/pysdl3/pysdl3.spec @@ -0,0 +1,45 @@ +%global pypi_name pysdl3 +%global _desc A pure Python wrapper for SDL3. + +Name: python-%{pypi_name} +Version: 0.9.11b1 +Release: 2%{?dist} +Summary: A pure Python wrapper for SDL3 +License: MIT +URL: https://pysdl3.readthedocs.io/ +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files sdl3 + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md +%license LICENSE + +%changelog +* Sun Mar 29 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/pysdl3/update.rhai b/anda/langs/python/pysdl3/update.rhai new file mode 100644 index 0000000000..9c5edad2fc --- /dev/null +++ b/anda/langs/python/pysdl3/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("pysdl3")); diff --git a/anda/langs/python/python-mpv-jsonipc/python-mpv-jsonipc.spec b/anda/langs/python/python-mpv-jsonipc/python-mpv-jsonipc.spec index ebf65afadf..46b214be93 100644 --- a/anda/langs/python/python-mpv-jsonipc/python-mpv-jsonipc.spec +++ b/anda/langs/python/python-mpv-jsonipc/python-mpv-jsonipc.spec @@ -2,8 +2,8 @@ %global _desc Python API to MPV using JSON IPC. Name: python-%{pypi_name} -Version: 1.2.1 -Release: 1%?dist +Version: 1.2.2 +Release: 2%{?dist} Summary: Python API to MPV using JSON IPC License: Apache-2.0 URL: https://github.com/iwalton3/python-mpv-jsonipc diff --git a/anda/langs/python/python-soxr/python-soxr.spec b/anda/langs/python/python-soxr/python-soxr.spec index 5ce61f4ef1..1b4ed66af5 100644 --- a/anda/langs/python/python-soxr/python-soxr.spec +++ b/anda/langs/python/python-soxr/python-soxr.spec @@ -4,8 +4,8 @@ %global _desc Fast and high quality sample-rate conversion library for Python. Name: python-%{pypi_name} -Version: 1.0.0 -Release: 1%?dist +Version: 1.1.0 +Release: 2%{?dist} Summary: Fast and high quality sample-rate conversion library for Python License: LGPL-2.1 URL: https://github.com/dofuuz/python-soxr diff --git a/anda/langs/python/pyvcd/pyvcd.spec b/anda/langs/python/pyvcd/pyvcd.spec index ac21995c04..8b799570f7 100644 --- a/anda/langs/python/pyvcd/pyvcd.spec +++ b/anda/langs/python/pyvcd/pyvcd.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.4.1 -Release: 1%?dist +Release: 2%?dist Summary: Python package for writing Value Change Dump (VCD) files License: MIT URL: https://github.com/SanDisk-Open-Source/pyvcd diff --git a/anda/langs/python/pywal16/python-pywal16.spec b/anda/langs/python/pywal16/python-pywal16.spec index 8b3b4e2907..d0aa00c613 100644 --- a/anda/langs/python/pywal16/python-pywal16.spec +++ b/anda/langs/python/pywal16/python-pywal16.spec @@ -3,8 +3,8 @@ Pywal is a tool that generates a color palette from the dominant colors in an image. It then applies the colors system-wide and on-the-fly in all of your favourite programs.} Name: python-%{pypi_name} -Version: 3.8.14 -Release: 1%?dist +Version: 3.8.15 +Release: 2%{?dist} Summary: 16 color fork of the original Pywal License: MIT URL: https://github.com/eylles/pywal16 diff --git a/anda/langs/python/pywebview/pywebview.spec b/anda/langs/python/pywebview/pywebview.spec index 4f3b8e3321..e3bb2fb7da 100644 --- a/anda/langs/python/pywebview/pywebview.spec +++ b/anda/langs/python/pywebview/pywebview.spec @@ -2,8 +2,8 @@ %global _desc Build GUI for your Python program with JavaScript, HTML, and CSS. Name: python-%{pypi_name} -Version: 6.1 -Release: 1%?dist +Version: 6.2.1 +Release: 2%{?dist} Summary: Build GUI for your Python program with JavaScript, HTML, and CSS License: BSD-3-Clause URL: https://github.com/r0x0r/pywebview diff --git a/anda/langs/python/pyzmq/pyzmq.spec b/anda/langs/python/pyzmq/pyzmq.spec index 012b2ec954..2c3a6bde86 100644 --- a/anda/langs/python/pyzmq/pyzmq.spec +++ b/anda/langs/python/pyzmq/pyzmq.spec @@ -5,7 +5,7 @@ Name: python-%{pypi_name} Version: 27.1.0 -Release: 1%?dist +Release: 2%?dist Summary: Python bindings for zeromq License: MIT URL: https://github.com/zeromq/pyzmq diff --git a/anda/langs/python/ratelimit/anda.hcl b/anda/langs/python/ratelimit/anda.hcl new file mode 100644 index 0000000000..95418dd483 --- /dev/null +++ b/anda/langs/python/ratelimit/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "ratelimit.spec" + } +} diff --git a/anda/langs/python/ratelimit/ratelimit.spec b/anda/langs/python/ratelimit/ratelimit.spec new file mode 100644 index 0000000000..f40a95584a --- /dev/null +++ b/anda/langs/python/ratelimit/ratelimit.spec @@ -0,0 +1,45 @@ +%global pypi_name ratelimit +%global _desc API Rate Limit Decorator. + +Name: python-%{pypi_name} +Version: 2.2.1 +Release: 2%?dist +Summary: API Rate Limit Decorator +License: MIT +URL: https://github.com/tomasbasham/ratelimit +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.rst +%license LICENSE.txt + +%changelog +* Sun Mar 29 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/ratelimit/update.rhai b/anda/langs/python/ratelimit/update.rhai new file mode 100644 index 0000000000..84cdc8f003 --- /dev/null +++ b/anda/langs/python/ratelimit/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("ratelimit")); diff --git a/anda/langs/python/retrying/retrying.spec b/anda/langs/python/retrying/retrying.spec index 3a999c1c69..a99ac9aaf0 100644 --- a/anda/langs/python/retrying/retrying.spec +++ b/anda/langs/python/retrying/retrying.spec @@ -5,7 +5,7 @@ Name: python-%{pypi_name} Version: 1.4.2 -Release: 1%?dist +Release: 2%?dist Summary: General-purpose retrying library License: Apache-2.0 URL: https://github.com/groodt/retrying diff --git a/anda/langs/python/screeninfo/screeninfo.spec b/anda/langs/python/screeninfo/screeninfo.spec index 4bc95b2bc9..a4e1b385ca 100644 --- a/anda/langs/python/screeninfo/screeninfo.spec +++ b/anda/langs/python/screeninfo/screeninfo.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.8.1 -Release: 1%?dist +Release: 2%?dist Summary: Fetch location and size of physical screens License: MIT URL: https://github.com/rr-/screeninfo diff --git a/anda/langs/python/shippinglabel/shippinglabel.spec b/anda/langs/python/shippinglabel/shippinglabel.spec index 724a7121c1..3319adc099 100644 --- a/anda/langs/python/shippinglabel/shippinglabel.spec +++ b/anda/langs/python/shippinglabel/shippinglabel.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 2.3.0 -Release: 1%?dist +Release: 2%?dist Summary: Utilities for handling packages License: MIT URL: https://shippinglabel.readthedocs.io/en/latest/ diff --git a/anda/langs/python/smbus2/smbus2.spec b/anda/langs/python/smbus2/smbus2.spec index ecc6fb0246..17a0c9ec24 100644 --- a/anda/langs/python/smbus2/smbus2.spec +++ b/anda/langs/python/smbus2/smbus2.spec @@ -2,8 +2,8 @@ %global _desc A drop-in replacement for smbus-cffi/smbus-python in pure Python. Name: python-%{pypi_name} -Version: 0.6.0 -Release: 1%?dist +Version: 0.6.1 +Release: 2%{?dist} Summary: A drop-in replacement for smbus-cffi/smbus-python in pure Python License: MIT URL: https://github.com/kplindegaard/smbus2 diff --git a/anda/langs/python/snakeoil/snakeoil.spec b/anda/langs/python/snakeoil/snakeoil.spec index 206c78165b..fe992ab159 100644 --- a/anda/langs/python/snakeoil/snakeoil.spec +++ b/anda/langs/python/snakeoil/snakeoil.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.11.0 -Release: 1%?dist +Release: 2%?dist Summary: Implements optimized versions of common functionality License: BSD-3-Clause URL: https://pkgcore.github.io/snakeoil diff --git a/anda/langs/python/sounddevice/sounddevice.spec b/anda/langs/python/sounddevice/sounddevice.spec index 3aaf34a7d8..03092fc0a8 100644 --- a/anda/langs/python/sounddevice/sounddevice.spec +++ b/anda/langs/python/sounddevice/sounddevice.spec @@ -3,8 +3,8 @@ Name: python-%{pypi_name} Version: 0.5.5 -Release: 1%?dist -Summary: 🔉 Play and Record Sound with Python 🐍 +Release: 2%?dist +Summary: Play and Record Sound with Python 🐍 License: MIT URL: https://python-sounddevice.rtfd.io/ Source0: %{pypi_source} diff --git a/anda/langs/python/spake2/spake2.spec b/anda/langs/python/spake2/spake2.spec index d223f203db..4e16085e72 100644 --- a/anda/langs/python/spake2/spake2.spec +++ b/anda/langs/python/spake2/spake2.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.9 -Release: 1%?dist +Release: 2%?dist Summary: pure-python implementation of the SPAKE2 Password-Authenticated Key Exchange algorithm License: MIT URL: https://github.com/warner/python-spake2 diff --git a/anda/langs/python/sphinxcontrib-moderncmakedomain/python-sphinxcontrib-moderncmakedomain.spec b/anda/langs/python/sphinxcontrib-moderncmakedomain/python-sphinxcontrib-moderncmakedomain.spec index 1a5b467be7..5207add0db 100644 --- a/anda/langs/python/sphinxcontrib-moderncmakedomain/python-sphinxcontrib-moderncmakedomain.spec +++ b/anda/langs/python/sphinxcontrib-moderncmakedomain/python-sphinxcontrib-moderncmakedomain.spec @@ -12,7 +12,7 @@ Name: python-%{real_name} Version: 3.29.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Sphinx domain for modern CMake License: BSD-3-Clause URL: https://github.com/scikit-build/moderncmakedomain diff --git a/anda/langs/python/srt-equalizer/srt-equalizer.spec b/anda/langs/python/srt-equalizer/srt-equalizer.spec index 953347cf21..5ecf3100d6 100644 --- a/anda/langs/python/srt-equalizer/srt-equalizer.spec +++ b/anda/langs/python/srt-equalizer/srt-equalizer.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.1.12 -Release: 1%?dist +Release: 2%?dist Summary: A Python module to transform subtitle line lengths, splitting into multiple subtitle fragments if necessary License: MIT URL: https://github.com/peterk/srt_equalizer diff --git a/anda/langs/python/srt/srt.spec b/anda/langs/python/srt/srt.spec index 148ea46697..1ce9aa788e 100644 --- a/anda/langs/python/srt/srt.spec +++ b/anda/langs/python/srt/srt.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 3.5.3 -Release: 1%?dist +Release: 2%?dist Summary: A simple library and set of tools for parsing, modifying, and composing SRT files License: MIT URL: https://github.com/cdown/srt diff --git a/anda/langs/python/stable-ts/anda.hcl b/anda/langs/python/stable-ts/anda.hcl new file mode 100644 index 0000000000..748ffbba2c --- /dev/null +++ b/anda/langs/python/stable-ts/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "stable-ts.spec" + } +} diff --git a/anda/langs/python/stable-ts/stable-ts.spec b/anda/langs/python/stable-ts/stable-ts.spec new file mode 100644 index 0000000000..b83b5264a3 --- /dev/null +++ b/anda/langs/python/stable-ts/stable-ts.spec @@ -0,0 +1,50 @@ +%global pypi_name stable_ts +%global real_name stable-ts +%global _desc Transcription, forced alignment, and audio indexing with OpenAI's Whisper. + +Name: python-%{real_name} +Version: 2.19.1 +Release: 3%{?dist} +Summary: Transcription, forced alignment, and audio indexing with OpenAI's Whisper +License: MIT +URL: https://github.com/jianfch/stable-ts +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-wheel +BuildRequires: python3-setuptools +BuildRequires: python3-pip + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{real_name} +Summary: %{summary} +Obsoletes: python3-%{pypi_name} < %{evr} +%{?python_provide:%python_provide python3-%{real_name}} + +%description -n python3-%{real_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} +sed -i "s/openai-whisper==20230308/openai-whisper/" setup.py + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files stable_whisper + +%files -n python3-%{real_name} -f %{pyproject_files} +%doc README.md +%license LICENSE +%{_bindir}/%{real_name} + +%changelog +* Mon May 04 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/stable-ts/update.rhai b/anda/langs/python/stable-ts/update.rhai new file mode 100644 index 0000000000..41e2d84d6f --- /dev/null +++ b/anda/langs/python/stable-ts/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("stable-ts")); diff --git a/anda/langs/python/standard-aifc/standard-aifc.spec b/anda/langs/python/standard-aifc/standard-aifc.spec index 7ff63fa7b3..c877c070bc 100644 --- a/anda/langs/python/standard-aifc/standard-aifc.spec +++ b/anda/langs/python/standard-aifc/standard-aifc.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 3.13.0 -Release: 1%?dist +Release: 2%?dist Summary: Standard library aifc redistribution License: PSF-2.0 URL: https://github.com/youknowone/python-deadlib diff --git a/anda/langs/python/standard-asynchat/standard-asynchat.spec b/anda/langs/python/standard-asynchat/standard-asynchat.spec index 8022aad8e0..20cabcecc4 100644 --- a/anda/langs/python/standard-asynchat/standard-asynchat.spec +++ b/anda/langs/python/standard-asynchat/standard-asynchat.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 3.13.0 -Release: 1%?dist +Release: 2%?dist Summary: Standard library asynchat redistribution License: PSF-2.0 URL: https://github.com/youknowone/python-deadlib diff --git a/anda/langs/python/standard-chunk/standard-chunk.spec b/anda/langs/python/standard-chunk/standard-chunk.spec index c179ecdc74..d3e5c92a05 100644 --- a/anda/langs/python/standard-chunk/standard-chunk.spec +++ b/anda/langs/python/standard-chunk/standard-chunk.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 3.13.0 -Release: 1%?dist +Release: 2%?dist Summary: Standard library chunk redistribution License: PSF-2.0 URL: https://github.com/youknowone/python-deadlib diff --git a/anda/langs/python/standard-sunau/standard-sunau.spec b/anda/langs/python/standard-sunau/standard-sunau.spec index febc32dc9b..e16598e4d9 100644 --- a/anda/langs/python/standard-sunau/standard-sunau.spec +++ b/anda/langs/python/standard-sunau/standard-sunau.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 3.13.0 -Release: 1%?dist +Release: 2%?dist Summary: Standard library sunau redistribution License: PSF-2.0 URL: https://github.com/youknowone/python-deadlib diff --git a/anda/langs/python/stempeg/stempeg.spec b/anda/langs/python/stempeg/stempeg.spec index b74c053b04..cdef32c7c0 100644 --- a/anda/langs/python/stempeg/stempeg.spec +++ b/anda/langs/python/stempeg/stempeg.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.2.6 -Release: 1%?dist +Release: 2%?dist Summary: Python I/O for STEM audio files License: MIT URL: https://faroit.com/stempeg/ diff --git a/anda/langs/python/submitit/submitit.spec b/anda/langs/python/submitit/submitit.spec index 39ff45ce90..483612afaf 100644 --- a/anda/langs/python/submitit/submitit.spec +++ b/anda/langs/python/submitit/submitit.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 1.5.4 -Release: 1%?dist +Release: 2%?dist Summary: Python 3.8+ toolbox for submitting jobs to Slurm License: MIT URL: https://github.com/facebookincubator/submitit @@ -14,6 +14,7 @@ BuildRequires: python3-devel BuildRequires: python3-wheel BuildRequires: python3-setuptools BuildRequires: python3-pip +BuildRequires: python3-flit-core Packager: Owen Zimmerman diff --git a/anda/langs/python/superisoupdater/remove-version-reqs.patch b/anda/langs/python/superisoupdater/remove-version-reqs.patch deleted file mode 100644 index e367b49cb3..0000000000 --- a/anda/langs/python/superisoupdater/remove-version-reqs.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff --git a/requirements.txt b/requirements.txt -index f450174..94ac9b8 100644 ---- a/requirements.txt -+++ b/requirements.txt -@@ -1,4 +1,4 @@ --beautifulsoup4==4.12.2 --requests==2.31.0 --tqdm==4.65.0 --PGPy13==0.6.1rc1 -\ No newline at end of file -+beautifulsoup4 -+requests -+tqdm -+PGPy13 -diff --git a/setup.py b/setup.py -index aa41242..348b51c 100644 ---- a/setup.py -+++ b/setup.py -@@ -43,10 +43,10 @@ setup( - package_data={"": ["config.toml.default"]}, - python_requires=">=3.10, <4", - install_requires=[ -- "beautifulsoup4==4.12.2", -- "requests==2.31.0", -- "tqdm==4.65.0", -- "PGPy13==0.6.1rc1", -+ "beautifulsoup4", -+ "requests", -+ "tqdm", -+ "PGPy13", - ], # Optional - # extras_require={ - # "dev": [""], diff --git a/anda/langs/python/superisoupdater/superisoupdater.spec b/anda/langs/python/superisoupdater/superisoupdater.spec index 2e3aa362b0..c2887e29a7 100644 --- a/anda/langs/python/superisoupdater/superisoupdater.spec +++ b/anda/langs/python/superisoupdater/superisoupdater.spec @@ -2,13 +2,12 @@ %global _desc A powerful tool to conveniently update all of your ISOs! Name: python-%{pypi_name} -Version: 1.5.1 +Version: 2.4.1 Release: 1%{?dist} Summary: %{_desc} -License: GPLv3 +License: GPL-3.0-or-later URL: https://github.com/JoshuaVandaele/SuperISOUpdater Source0: %url/archive/refs/tags/%{version}.tar.gz -Patch0: remove-version-reqs.patch BuildArch: noarch BuildRequires: python3-devel @@ -33,7 +32,9 @@ Provides: superisoupdater %{_desc} %prep -%autosetup -p1 -n SuperISOUpdater-%{version} +%autosetup -n SuperISOUpdater-%{version} + +%pyproject_patch_dependency requests-cache:drop_constraints %build %pyproject_wheel @@ -46,17 +47,17 @@ Provides: superisoupdater %doc README.md %license LICENSE %{_bindir}/sisou -%ghost %{python3_sitelib}/__pycache__/*.cpython-*.pyc -%ghost %{python3_sitelib}/%{name}/subcommands/__pycache__/*.cpython-*.pyc %{python3_sitelib}/sisou-%{version}.dist-info/* %{python3_sitelib}/config/*.py %{python3_sitelib}/config/__pycache__/*.cpython-*.pyc %{python3_sitelib}/config/__pycache__/*.cpython-*.*-*.pyc -%{python3_sitelib}/config/config.toml.default %{python3_sitelib}/modules/*.py +%{python3_sitelib}/config/sisou.toml.default +%{python3_sitelib}/modules/mirrors/ %{python3_sitelib}/modules/__pycache__/*.pyc %{python3_sitelib}/modules/updaters/*.py %{python3_sitelib}/modules/updaters/__pycache__/*.pyc +%{_prefix}/sisou/config/sisou.toml.default %changelog * Wed Oct 08 2025 Owen Zimmerman diff --git a/anda/langs/python/synapse-s3-storage-provider/synapse-s3-storage-provider.spec b/anda/langs/python/synapse-s3-storage-provider/synapse-s3-storage-provider.spec index 43f8eba74e..c1558316f1 100644 --- a/anda/langs/python/synapse-s3-storage-provider/synapse-s3-storage-provider.spec +++ b/anda/langs/python/synapse-s3-storage-provider/synapse-s3-storage-provider.spec @@ -2,8 +2,8 @@ %global _desc Synapse storage provider to fetch and store media in Amazon S3. Name: python-%{pypi_name} -Version: 1.6.0 -Release: 1%?dist +Version: 1.6.1 +Release: 2%{?dist} Summary: Synapse storage provider to fetch and store media in Amazon S3 License: Apache-2.0 URL: https://github.com/matrix-org/synapse-s3-storage-provider diff --git a/anda/langs/python/tekore/anda.hcl b/anda/langs/python/tekore/anda.hcl new file mode 100644 index 0000000000..cdfb820b46 --- /dev/null +++ b/anda/langs/python/tekore/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "tekore.spec" + } +} diff --git a/anda/langs/python/tekore/tekore.spec b/anda/langs/python/tekore/tekore.spec new file mode 100644 index 0000000000..a067d13ac1 --- /dev/null +++ b/anda/langs/python/tekore/tekore.spec @@ -0,0 +1,45 @@ +%global pypi_name tekore +%global _desc Spotify Web API client for Python 3. + +Name: python-%{pypi_name} +Version: 6.1.1 +Release: 2%?dist +Summary: Spotify Web API client for Python 3 +License: MIT +URL: https://tekore.readthedocs.io/en/stable/ +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc readme_pypi.rst +%license LICENSE + +%changelog +* Thu Oct 23 2025 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/tekore/update.rhai b/anda/langs/python/tekore/update.rhai new file mode 100644 index 0000000000..5bd0687472 --- /dev/null +++ b/anda/langs/python/tekore/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("tekore")); diff --git a/anda/langs/python/tidalapi/anda.hcl b/anda/langs/python/tidalapi/anda.hcl new file mode 100644 index 0000000000..61c09996d6 --- /dev/null +++ b/anda/langs/python/tidalapi/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "tidalapi.spec" + } +} diff --git a/anda/langs/python/tidalapi/tidalapi.spec b/anda/langs/python/tidalapi/tidalapi.spec new file mode 100644 index 0000000000..52d6ca0b1f --- /dev/null +++ b/anda/langs/python/tidalapi/tidalapi.spec @@ -0,0 +1,46 @@ +%global pypi_name tidalapi +%global _desc Python API for TIDAL music streaming service. + +Name: python-%{pypi_name} +Version: 0.8.11 +Release: 2%?dist +Summary: Python API for TIDAL music streaming service +License: LGPL-3.0-or-later +URL: https://github.com/matrix-org/synapse-s3-storage-provider +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +BuildRequires: python3-poetry-core + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.rst HISTORY.rst +%license LICENSE + +%changelog +* Sun Mar 29 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/tidalapi/update.rhai b/anda/langs/python/tidalapi/update.rhai new file mode 100644 index 0000000000..558dc53d97 --- /dev/null +++ b/anda/langs/python/tidalapi/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("tidalapi")); diff --git a/anda/langs/python/tokenizers/tokenizers.spec b/anda/langs/python/tokenizers/tokenizers.spec index 63e03995c8..6da107f291 100644 --- a/anda/langs/python/tokenizers/tokenizers.spec +++ b/anda/langs/python/tokenizers/tokenizers.spec @@ -2,8 +2,8 @@ %global _desc Fast State-of-the-Art Tokenizers optimized for Research and Production. Name: python-%{pypi_name} -Version: 0.22.2 -Release: 1%?dist +Version: 0.23.1 +Release: 2%{?dist} Summary: Fast State-of-the-Art Tokenizers optimized for Research and Production License: Apache-2.0 URL: https://github.com/huggingface/tokenizers diff --git a/anda/langs/python/torrentp/anda.hcl b/anda/langs/python/torrentp/anda.hcl new file mode 100644 index 0000000000..a4f3f25f91 --- /dev/null +++ b/anda/langs/python/torrentp/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "torrentp.spec" + } +} diff --git a/anda/langs/python/torrentp/torrentp.spec b/anda/langs/python/torrentp/torrentp.spec new file mode 100644 index 0000000000..e66328d4e5 --- /dev/null +++ b/anda/langs/python/torrentp/torrentp.spec @@ -0,0 +1,47 @@ +%global pypi_name torrentp +%global _desc Python torrent downloader - Download from torrent with .torrent file or magnet link, with just 3 lines of python code. + +Name: python-%{pypi_name} +Version: 0.2.7 +Release: 1%{?dist} +Summary: Python torrent downloader - Download from torrent with .torrent file or magnet link, with just 3 lines of python code +License: BSD-2-Clause +URL: https://github.com/iw4p/torrentp +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} +%pyproject_patch_dependency rich:drop_constraints + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md +%license LICENSE +%{_bindir}/torrentp + +%changelog +* Sun Jun 07 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/torrentp/update.rhai b/anda/langs/python/torrentp/update.rhai new file mode 100644 index 0000000000..9f038e875f --- /dev/null +++ b/anda/langs/python/torrentp/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("torrentp")); diff --git a/anda/langs/python/transformers/anda.hcl b/anda/langs/python/transformers/anda.hcl new file mode 100644 index 0000000000..19dbd51d96 --- /dev/null +++ b/anda/langs/python/transformers/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "transformers.spec" + } +} diff --git a/anda/langs/python/transformers/transformers.spec b/anda/langs/python/transformers/transformers.spec new file mode 100644 index 0000000000..a2fc293069 --- /dev/null +++ b/anda/langs/python/transformers/transformers.spec @@ -0,0 +1,50 @@ +%global pypi_name transformers +%global _desc The model-definition framework for state-of-the-art machine learning models. + +Name: python-%{pypi_name} +Version: 5.12.0 +Release: 1%{?dist} +Summary: The model-definition framework for state-of-the-art machine learning models +License: Apache-2.0 +URL: https://huggingface.co/docs/transformers/index +Source0: %{pypi_source} +Patch0: versions.patch +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} -p1 + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files transformers + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md +%license LICENSE +%{_bindir}/transformers + +%changelog +* Mon May 04 2026 Owen Zimmerman +- Update spec for version 5.7.0 + +* Sat Jan 10 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/transformers/update.rhai b/anda/langs/python/transformers/update.rhai new file mode 100644 index 0000000000..8ec179c575 --- /dev/null +++ b/anda/langs/python/transformers/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("transformers")); diff --git a/anda/langs/python/transformers/versions.patch b/anda/langs/python/transformers/versions.patch new file mode 100644 index 0000000000..1ab99bd632 --- /dev/null +++ b/anda/langs/python/transformers/versions.patch @@ -0,0 +1,22 @@ +diff --git a/setup.py b/setup.py +index d24f3bb665..0f0a2803a1 100644 +--- a/setup.py ++++ b/setup.py +@@ -86,7 +86,7 @@ _deps = [ + "fugashi>=1.0", + "GitPython<3.1.19", + "hf-doc-builder", +- "huggingface-hub>=1.5.0,<2.0", ++ "huggingface-hub", + "ipadic>=1.0.0,<2.0", + "jinja2>=3.1.0", + "jmespath>=1.0.1", +@@ -147,7 +147,7 @@ _deps = [ + "tomli", + "tiktoken", + "timm>=1.0.23", +- "tokenizers>=0.22.0,<=0.23.0", ++ "tokenizers>=0.22.0", + "torch>=2.4", + "torchaudio", + "torchvision", diff --git a/anda/langs/python/treetable/treetable.spec b/anda/langs/python/treetable/treetable.spec index fe3aaff265..1638353620 100644 --- a/anda/langs/python/treetable/treetable.spec +++ b/anda/langs/python/treetable/treetable.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.2.6 -Release: 1%?dist +Release: 2%?dist Summary: Print in ascii art a table with a tree-like structure License: Unlicense URL: https://github.com/adefossez/treetable diff --git a/anda/langs/python/txtorcon/txtorcon.spec b/anda/langs/python/txtorcon/txtorcon.spec index 745fd70d95..c2812ea97c 100644 --- a/anda/langs/python/txtorcon/txtorcon.spec +++ b/anda/langs/python/txtorcon/txtorcon.spec @@ -2,8 +2,8 @@ %global _desc Twisted-based asynchronous Tor control protocol implementation. Includes unit-tests, examples, state-tracking code and configuration abstraction. Name: python-%{pypi_name} -Version: 24.8.0 -Release: 1%?dist +Version: 26.6.0 +Release: 2%{?dist} Summary: Twisted-based asynchronous Tor control protocol implementation. Includes unit-tests, examples, state-tracking code and configuration abstraction License: MIT URL: https://github.com/meejah/txtorcon diff --git a/anda/langs/python/types-colorama/types-colorama.spec b/anda/langs/python/types-colorama/types-colorama.spec index 8257ff64cd..44891ab8a7 100644 --- a/anda/langs/python/types-colorama/types-colorama.spec +++ b/anda/langs/python/types-colorama/types-colorama.spec @@ -1,5 +1,5 @@ -%global commit 2ded3a24a15ed58fa6ccc61fd770c8ffc3ba0aca -%global commit_date 20260329 +%global commit feeb9aa8dde3ae9269b13f3bae435b82d8538b76 +%global commit_date 20260614 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global pypi_name types-colorama diff --git a/anda/langs/python/upiano/upiano.spec b/anda/langs/python/upiano/upiano.spec index 4345218d4c..79512e40ab 100644 --- a/anda/langs/python/upiano/upiano.spec +++ b/anda/langs/python/upiano/upiano.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.1.2 -Release: 1%?dist +Release: 4%?dist Summary: Terminal Piano App License: MIT URL: https://github.com/eliasdorneles/upiano @@ -17,6 +17,8 @@ BuildRequires: python3-setuptools BuildRequires: python3-pip BuildRequires: python3-poetry-core +Requires: fluidsynth + Packager: Owen Zimmerman %description @@ -33,6 +35,9 @@ Summary: %{summary} %autosetup -n upiano-%{version} cp %{SOURCE1} . +%pyproject_patch_dependency pyfluidsynth:drop_constraints +%pyproject_patch_dependency textual:drop_constraints + %build %pyproject_wheel diff --git a/anda/langs/python/uroman/anda.hcl b/anda/langs/python/uroman/anda.hcl new file mode 100644 index 0000000000..3bda26f105 --- /dev/null +++ b/anda/langs/python/uroman/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "uroman.spec" + } +} diff --git a/anda/langs/python/uroman/update.rhai b/anda/langs/python/uroman/update.rhai new file mode 100644 index 0000000000..169a84812a --- /dev/null +++ b/anda/langs/python/uroman/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("uroman")); diff --git a/anda/langs/python/uroman/uroman.spec b/anda/langs/python/uroman/uroman.spec new file mode 100644 index 0000000000..f664d84f0d --- /dev/null +++ b/anda/langs/python/uroman/uroman.spec @@ -0,0 +1,52 @@ +%global pypi_name uroman +%global _desc Universal Romanizer that can convert any unicode script to roman (latin) script. + +Name: python-%{pypi_name} +Version: 1.3.1.1 +Release: 2%{?dist} +Summary: Universal Romanizer that can convert any unicode script to roman (latin) script +License: GPL-3.0-or-later +URL: https://github.com/isi-nlp/uroman +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-wheel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +BuildRequires: python3-hatchling + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} +rm -r %{buildroot}%{python3_sitelib}/LICENSE.txt +rm -r %{buildroot}%{python3_sitelib}/README.md +rm -r %{buildroot}%{python3_sitelib}/pyproject.toml +rm -r %{buildroot}%{python3_sitelib}/requirements.txt + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md +%license LICENSE.txt +%{_bindir}/uroman + +%changelog +* Sun May 24 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/vulkan/anda.hcl b/anda/langs/python/vulkan/anda.hcl new file mode 100644 index 0000000000..1c563a199c --- /dev/null +++ b/anda/langs/python/vulkan/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "vulkan.spec" + } +} diff --git a/anda/langs/python/vulkan/update.rhai b/anda/langs/python/vulkan/update.rhai new file mode 100644 index 0000000000..e6574d5949 --- /dev/null +++ b/anda/langs/python/vulkan/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("vulkan")); diff --git a/anda/langs/python/vulkan/vulkan.spec b/anda/langs/python/vulkan/vulkan.spec new file mode 100644 index 0000000000..7b89975487 --- /dev/null +++ b/anda/langs/python/vulkan/vulkan.spec @@ -0,0 +1,48 @@ +%define debug_package %{nil} + +%global pypi_name vulkan +%global _desc The ultimate Python binding for Vulkan API. + +Name: python-%{pypi_name} +Version: 1.3.275.1 +Release: 2%{?dist} +Summary: The ultimate Python binding for Vulkan API +License: Apache-2.0 +URL: https://github.com/realitix/vulkan +Source0: %{pypi_source} + +BuildRequires: python3-wheel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +BuildRequires: python3-devel +BuildRequires: gcc + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{pypi_name}-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files %{pypi_name} + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md +%license LICENSE + +%changelog +* Mon May 04 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/west/west.spec b/anda/langs/python/west/west.spec index f7d40f232c..107d4f6997 100644 --- a/anda/langs/python/west/west.spec +++ b/anda/langs/python/west/west.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 1.5.0 -Release: 2%?dist +Release: 3%?dist Summary: West, Zephyr's meta-tool License: Apache-2.0 URL: https://github.com/zephyrproject-rtos/west diff --git a/anda/langs/python/wget/anda.hcl b/anda/langs/python/wget/anda.hcl new file mode 100644 index 0000000000..34e120a05f --- /dev/null +++ b/anda/langs/python/wget/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "wget.spec" + } +} diff --git a/anda/langs/python/wget/update.rhai b/anda/langs/python/wget/update.rhai new file mode 100644 index 0000000000..e1b4acd9d8 --- /dev/null +++ b/anda/langs/python/wget/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("wget")); diff --git a/anda/langs/python/wget/wget.spec b/anda/langs/python/wget/wget.spec new file mode 100644 index 0000000000..19887f0671 --- /dev/null +++ b/anda/langs/python/wget/wget.spec @@ -0,0 +1,50 @@ +%global pypi_name wget +%global _desc Pure Python download utility. + +%global commit fdd3a0f8404ccab90f939f9952af139e6c55142a +%global commit_date 20141004 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) + +Name: python-%{pypi_name} +Version: 3.2 +Release: 2%{?dist} +Summary: Pure Python download utility +License: LicenseRef-Fedora-Public-Domain +URL: https://pypi.org/project/wget/ +Source0: https://github.com/steveej/python-wget/archive/%commit/python-wget-%commit.zip +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-importlib-metadata +BuildRequires: python3-wheel +BuildRequires: python3-setuptools + +Packager: Its-J + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n %{name}-%{commit} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files wget + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.txt + +%changelog +* Sun May 24 2026 Its-J +- Initial commit diff --git a/anda/langs/python/whey/whey.spec b/anda/langs/python/whey/whey.spec index 11b6c0dbce..18a8651897 100644 --- a/anda/langs/python/whey/whey.spec +++ b/anda/langs/python/whey/whey.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 0.1.1 -Release: 1%?dist +Release: 2%?dist Summary: A simple Python wheel builder for simple projects License: MIT URL: https://github.com/deepin-community/python-whey diff --git a/anda/langs/python/yamale/yamale.spec b/anda/langs/python/yamale/yamale.spec index bc70a64261..f9a5eb3f1f 100644 --- a/anda/langs/python/yamale/yamale.spec +++ b/anda/langs/python/yamale/yamale.spec @@ -3,7 +3,7 @@ Name: python-%{pypi_name} Version: 6.1.0 -Release: 2%?dist +Release: 3%?dist Summary: A schema and validator for YAML License: MIT URL: https://github.com/23andMe/Yamale diff --git a/anda/langs/python/zipstream-ng/zipstream-ng.spec b/anda/langs/python/zipstream-ng/zipstream-ng.spec index ea421e2221..9a653ab29c 100644 --- a/anda/langs/python/zipstream-ng/zipstream-ng.spec +++ b/anda/langs/python/zipstream-ng/zipstream-ng.spec @@ -1,9 +1,11 @@ +%global __brp_mangle_shebangs_exclude_from /usr/lib/python3.14/site-packages/zipstream/ + %global pypi_name zipstream-ng %global _desc 🔉 A modern and easy to use streamable zip file generator Name: python-%{pypi_name} -Version: 1.9.0 -Release: 1%?dist +Version: 1.9.2 +Release: 2%{?dist} Summary: A modern and easy to use streamable zip file generator License: LGPL-3.0-only URL: https://github.com/pR0Ps/zipstream-ng @@ -14,6 +16,7 @@ BuildRequires: python3-devel BuildRequires: python3-wheel BuildRequires: python3-setuptools BuildRequires: python3-pip +BuildRequires: python3-hatchling Packager: Owen Zimmerman @@ -42,9 +45,6 @@ Provides: zipstream-ng %doc README.md CHANGELOG.md docs/zipserver.rst %license LICENSE %{_bindir}/zipserver -%ghost %python3_sitelib/__pycache__/*.cpython-*.pyc -%ghost %python3_sitelib/%{name}/subcommands/__pycache__/*.cpython-*.pyc -%python3_sitelib/zipstream_ng-%version.dist-info/* %changelog * Mon Nov 03 2025 Owen Zimmerman diff --git a/anda/langs/rust/bacon/rust-bacon.spec b/anda/langs/rust/bacon/rust-bacon.spec index 8472334b82..638330ba0a 100644 --- a/anda/langs/rust/bacon/rust-bacon.spec +++ b/anda/langs/rust/bacon/rust-bacon.spec @@ -5,8 +5,8 @@ %global features "sound,clipboard" Name: rust-bacon -Version: 3.22.0 -Release: 1%?dist +Version: 3.23.0 +Release: 1%{?dist} Summary: Background rust compiler Packager: metcya diff --git a/anda/langs/rust/dysk/rust-dysk.spec b/anda/langs/rust/dysk/rust-dysk.spec index 21f798887d..a97f42b1aa 100644 --- a/anda/langs/rust/dysk/rust-dysk.spec +++ b/anda/langs/rust/dysk/rust-dysk.spec @@ -4,8 +4,8 @@ %global crate dysk Name: rust-dysk -Version: 3.6.0 -Release: 1%?dist +Version: 3.6.1 +Release: 1%{?dist} Summary: Give information on mounted filesystems License: MIT diff --git a/anda/langs/rust/fresh/fresh.spec b/anda/langs/rust/fresh/fresh.spec index ac994d5872..2823b61943 100644 --- a/anda/langs/rust/fresh/fresh.spec +++ b/anda/langs/rust/fresh/fresh.spec @@ -1,7 +1,7 @@ %undefine __brp_mangle_shebangs Name: fresh -Version: 0.2.20 +Version: 0.4.0 Release: 1%{?dist} Summary: Text editor for your terminal: easy, powerful and fast URL: https://getfresh.dev diff --git a/anda/langs/rust/gitoxide/rust-gitoxide.spec b/anda/langs/rust/gitoxide/rust-gitoxide.spec index e3a074cc66..c5e42b5c26 100644 --- a/anda/langs/rust/gitoxide/rust-gitoxide.spec +++ b/anda/langs/rust/gitoxide/rust-gitoxide.spec @@ -5,7 +5,7 @@ %global crate gitoxide Name: rust-gitoxide -Version: 0.52.0 +Version: 0.54.0 Release: 1%{?dist} Summary: Command-line application for interacting with git repositories diff --git a/anda/langs/rust/jellyfin-rpc/rust-jellyfin-rpc-cli.spec b/anda/langs/rust/jellyfin-rpc/rust-jellyfin-rpc-cli.spec index 51fbebd0dd..7eed036285 100644 --- a/anda/langs/rust/jellyfin-rpc/rust-jellyfin-rpc-cli.spec +++ b/anda/langs/rust/jellyfin-rpc/rust-jellyfin-rpc-cli.spec @@ -5,8 +5,8 @@ %global crate jellyfin-rpc-cli Name: rust-jellyfin-rpc-cli -Version: 1.3.4 -Release: 1%?dist +Version: 1.3.5 +Release: 1%{?dist} Summary: Displays the content you're currently watching on Discord! License: GPL-3.0-or-later diff --git a/anda/langs/rust/lan-mouse/lan-mouse.spec b/anda/langs/rust/lan-mouse/lan-mouse.spec index 4e360c1414..cdfb9020ae 100644 --- a/anda/langs/rust/lan-mouse/lan-mouse.spec +++ b/anda/langs/rust/lan-mouse/lan-mouse.spec @@ -3,8 +3,8 @@ %global rustflags_debuginfo 1 Name: lan-mouse -Version: 0.10.0 -Release: %autorelease +Version: 0.11.0 +Release: 1%{?dist} Summary: Software KVM Switch / mouse & keyboard sharing software for Local Area Networks License: GPL-3.0-or-later diff --git a/anda/langs/rust/ouch/rust-ouch.spec b/anda/langs/rust/ouch/rust-ouch.spec index 73300e87ef..53a9b31389 100644 --- a/anda/langs/rust/ouch/rust-ouch.spec +++ b/anda/langs/rust/ouch/rust-ouch.spec @@ -1,21 +1,23 @@ # Generated by rust2rpm 27 %bcond check 1 +%global __brp_mangle_shebangs %{nil} %global crate ouch Name: rust-ouch -Version: 0.6.1 -Release: 1%?dist +Version: 0.8.0 +Release: 1%{?dist} Summary: Command-line utility for easily compressing and decompressing files and directories License: MIT URL: https://crates.io/crates/ouch Source: %{crates_source} # Automatically generated patch to strip dependencies and normalize metadata -Patch: ouch-fix-metadata-auto.diff +%dnl Patch: ouch-fix-metadata-auto.diff BuildRequires: anda-srpm-macros cargo-rpm-macros >= 24 BuildRequires: gcc-c++ +BuildRequires: clang-devel %global _description %{expand: A command-line utility for easily compressing and decompressing files @@ -39,7 +41,7 @@ License: (0BSD OR MIT OR Apache-2.0) AND Apache-2.0 AND (Apache-2.0 OR MI %{_bindir}/ouch %prep -%autosetup -n %{crate}-%{version} -p1 +%autosetup -n %{crate}-%{version} %cargo_prep_online %build diff --git a/anda/langs/rust/rnote/rnote.spec b/anda/langs/rust/rnote/rnote.spec index 52cec34f5f..780f004ca6 100644 --- a/anda/langs/rust/rnote/rnote.spec +++ b/anda/langs/rust/rnote/rnote.spec @@ -1,7 +1,7 @@ %global rustflags_debuginfo 1 Name: rnote -Version: 0.14.0 +Version: 0.14.2 Release: 1%{?dist} Summary: Sketch and take handwritten notes License: GPL-3.0 diff --git a/anda/langs/rust/run0-sudo-shim/run0-sudo-shim.spec b/anda/langs/rust/run0-sudo-shim/run0-sudo-shim.spec index 57c6aa373b..d5587abdc0 100644 --- a/anda/langs/rust/run0-sudo-shim/run0-sudo-shim.spec +++ b/anda/langs/rust/run0-sudo-shim/run0-sudo-shim.spec @@ -1,6 +1,6 @@ Name: run0-sudo-shim -Version: 1.2.0 -Release: 1%?dist +Version: 1.3.1 +Release: 1%{?dist} Summary: An imitation of sudo, using run0 internally SourceLicense: BSD-3-Clause License: (Apache-2.0 OR MIT) AND BSD-3-Clause AND MIT diff --git a/anda/langs/rust/starship/rust-starship.spec b/anda/langs/rust/starship/rust-starship.spec index 2c2ca896f2..ea49b6f1b1 100644 --- a/anda/langs/rust/starship/rust-starship.spec +++ b/anda/langs/rust/starship/rust-starship.spec @@ -4,15 +4,13 @@ %global crate starship Name: rust-starship -Version: 1.24.2 -Release: 1%?dist +Version: 1.25.1 +Release: 1%{?dist} Summary: Minimal, blazing-fast, and infinitely customizable prompt for any shell! ☄🌌️ License: ISC URL: https://crates.io/crates/starship Source: %{crates_source} -# Automatically generated patch to strip dependencies and normalize metadata -Patch: starship-fix-metadata-auto.diff BuildRequires: cargo-rpm-macros >= 24 BuildRequires: anda-srpm-macros diff --git a/anda/langs/rust/starship/starship-fix-metadata-auto.diff b/anda/langs/rust/starship/starship-fix-metadata-auto.diff deleted file mode 100644 index ce9f689d72..0000000000 --- a/anda/langs/rust/starship/starship-fix-metadata-auto.diff +++ /dev/null @@ -1,29 +0,0 @@ ---- a/Cargo.toml 2025-04-27 10:52:14.000000000 -0500 -+++ b/Cargo.toml 2025-04-27 12:39:59.385400385 -0500 -@@ -265,22 +265,6 @@ - ] - default-features = false - --[target."cfg(windows)".dependencies.deelevate] --version = "0.2.0" -- --[target."cfg(windows)".dependencies.windows] --version = "0.61.0" --features = [ -- "Win32_Foundation", -- "Win32_UI_Shell", -- "Win32_Security", -- "Win32_System_Threading", -- "Win32_Storage_FileSystem", --] -- --[target."cfg(windows)".build-dependencies.winres] --version = "0.1.12" -- - [profile.bench] - lto = "thin" - codegen-units = 16 - [dev-dependencies] - mockall = "0.13.1" - tempfile = "3.19.1" - diff --git a/anda/langs/rust/tectonic/rust-tectonic.spec b/anda/langs/rust/tectonic/rust-tectonic.spec index 580e87869b..4aa91177f7 100644 --- a/anda/langs/rust/tectonic/rust-tectonic.spec +++ b/anda/langs/rust/tectonic/rust-tectonic.spec @@ -4,7 +4,7 @@ %global crate tectonic Name: rust-tectonic -Version: 0.15.0 +Version: 0.16.9 Release: 1%{?dist} Summary: Modernized, complete, embeddable TeX/LaTeX engine diff --git a/anda/langs/rust/television/rust-television.spec b/anda/langs/rust/television/rust-television.spec index 8f5ae8cd8f..ba285ad512 100644 --- a/anda/langs/rust/television/rust-television.spec +++ b/anda/langs/rust/television/rust-television.spec @@ -5,7 +5,7 @@ %global crate television Name: rust-television -Version: 0.15.4 +Version: 0.15.8 Release: 1%{?dist} Summary: Very fast, portable and hackable fuzzy finder for the terminal diff --git a/anda/langs/rust/usage/rust-usage-cli.spec b/anda/langs/rust/usage/rust-usage-cli.spec index 509fa84c7c..0464d5552c 100644 --- a/anda/langs/rust/usage/rust-usage-cli.spec +++ b/anda/langs/rust/usage/rust-usage-cli.spec @@ -4,7 +4,7 @@ %global crate usage-cli Name: rust-usage-cli -Version: 3.2.0 +Version: 3.5.0 Release: 1%{?dist} Summary: CLI for working with usage-based CLIs diff --git a/anda/langs/rust/wild/rust-wild-linker.spec b/anda/langs/rust/wild/rust-wild-linker.spec index 296e08539e..f4d2f8624f 100644 --- a/anda/langs/rust/wild/rust-wild-linker.spec +++ b/anda/langs/rust/wild/rust-wild-linker.spec @@ -4,8 +4,8 @@ %global crate wild-linker Name: rust-wild-linker -Version: 0.8.0 -Release: 1%?dist +Version: 0.9.0 +Release: 1%{?dist} Summary: Very fast linker for Linux License: MIT OR Apache-2.0 diff --git a/anda/langs/rust/yazi/yazi.spec b/anda/langs/rust/yazi/yazi.spec index c19630dbb9..a1c4e59321 100644 --- a/anda/langs/rust/yazi/yazi.spec +++ b/anda/langs/rust/yazi/yazi.spec @@ -1,8 +1,8 @@ %undefine __brp_mangle_shebangs Name: yazi -Version: 26.1.22 -Release: 2%?dist +Version: 26.5.6 +Release: 1%{?dist} Summary: Blazing fast terminal file manager written in Rust, based on async I/O URL: https://yazi-rs.github.io/ Source0: https://github.com/sxyazi/yazi/archive/refs/tags/v%version.tar.gz diff --git a/anda/langs/rust/zellij/rust-zellij.spec b/anda/langs/rust/zellij/rust-zellij.spec index fe411b0901..95bace45f5 100644 --- a/anda/langs/rust/zellij/rust-zellij.spec +++ b/anda/langs/rust/zellij/rust-zellij.spec @@ -5,7 +5,7 @@ %global crate zellij Name: rust-zellij -Version: 0.44.0 +Version: 0.44.3 Release: 1%{?dist} Summary: Terminal workspace with batteries included diff --git a/anda/langs/rust/zoi/anda.hcl b/anda/langs/rust/zoi/anda.hcl index fa1c2c3a2b..566c999b68 100644 --- a/anda/langs/rust/zoi/anda.hcl +++ b/anda/langs/rust/zoi/anda.hcl @@ -2,4 +2,7 @@ project pkg { rpm { spec = "rust-zoi-rs.spec" } + labels { + sccache = 0 + } } diff --git a/anda/langs/rust/zoi/rust-zoi-rs.spec b/anda/langs/rust/zoi/rust-zoi-rs.spec index 51c4c518d3..0b9c26b903 100644 --- a/anda/langs/rust/zoi/rust-zoi-rs.spec +++ b/anda/langs/rust/zoi/rust-zoi-rs.spec @@ -1,7 +1,7 @@ %define __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ %global crate zoi-rs -%global crate_version 1.9.4 +%global crate_version 1.18.5 Name: rust-zoi-rs Version: %(echo %crate_version | sed 's/-/~/g') @@ -11,8 +11,6 @@ SourceLicense: Apache-2.0 License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND (0BSD OR MIT OR Apache-2.0) AND Apache-2.0 AND (Apache-2.0 AND ISC) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND BSD-2-Clause AND BSD-3-Clause AND BSL-1.0 AND CDLA-Permissive-2.0 AND ISC AND LGPL-2.0-or-later AND MIT AND (MIT OR Apache-2.0) AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (MIT OR Zlib OR Apache-2.0) AND MPL-2.0 AND MPL-2.0+ AND Unicode-3.0 AND (Unlicense OR MIT) AND Zlib URL: https://crates.io/crates/zoi-rs Source: %{crates_source %{crate} %{crate_version}} -# Automatically generated patch to strip dependencies and normalize metadata -Patch: zoi-rs-fix-metadata-auto.diff BuildRequires: cargo BuildRequires: gcc-c++ BuildRequires: rpm_macro(cargo_install) @@ -49,12 +47,14 @@ Requires: git %doc RELEASE.md %doc SECURITY.md %{_bindir}/zoi +%{_bindir}/zoi-mini %pkg_completion -Befz zoi -n %{crate} %package devel Summary: %{summary} BuildArch: noarch +Requires: %{name}-%{crate} = %{evr} %description devel %{_description} @@ -62,18 +62,12 @@ This package contains library source intended for building other packages which use the "%{crate}" crate. %files devel -%license %{crate_instdir}/LICENSE -%doc %{crate_instdir}/CHANGELOG.md -%doc %{crate_instdir}/CODE_OF_CONDUCT.md -%doc %{crate_instdir}/PACKAGING.md -%doc %{crate_instdir}/README.md -%doc %{crate_instdir}/RELEASE.md -%doc %{crate_instdir}/SECURITY.md %{crate_instdir}/ %package -n %{name}+default-devel Summary: %{summary} BuildArch: noarch +Requires: %{name}-%{crate} = %{evr} %description -n %{name}+default-devel %{_description} diff --git a/anda/langs/rust/zoi/zoi-rs-fix-metadata-auto.diff b/anda/langs/rust/zoi/zoi-rs-fix-metadata-auto.diff deleted file mode 100644 index 1d59e54d5b..0000000000 --- a/anda/langs/rust/zoi/zoi-rs-fix-metadata-auto.diff +++ /dev/null @@ -1,13 +0,0 @@ ---- zoi-rs-1.3.1/Cargo.toml 1970-01-01T00:00:01+00:00 -+++ zoi-rs-1.3.1/Cargo.toml 2025-10-31T16:56:25.441725+00:00 -@@ -223,9 +223,7 @@ - [build-dependencies.dotenvy] - version = "0.15.7" - --[target."cfg(windows)".dependencies.winreg] --version = "0.55.0" -- - [lints.clippy] - too_many_arguments = "allow" - type_complexity = "allow" -+ diff --git a/anda/langs/vala/vala-language-server-nightly/vala-language-server-nightly.spec b/anda/langs/vala/vala-language-server-nightly/vala-language-server-nightly.spec index e131cb14eb..712eccb69c 100644 --- a/anda/langs/vala/vala-language-server-nightly/vala-language-server-nightly.spec +++ b/anda/langs/vala/vala-language-server-nightly/vala-language-server-nightly.spec @@ -1,16 +1,16 @@ %global real_name vala-language-server -%global commit c66ce433375815fb65d3aefddf68122817c0073d +%global commit 8fab39f867a15dc3f1d24bc0ae455f6e019230bd %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20250927 +%global commit_date 20260508 %global snapshot_info %{commit_date}.%{shortcommit} %global verrel 0.48.7 Name: vala-language-server-nightly Summary: Language server for the Vala programming language Version: 0.48.7^%{snapshot_info} -Release: 1%?dist +Release: 1%{?dist} # The entire source is LGPLv2+, except plugins/gnome-builder/vala_langserv.py, which is GPLv3+. # It is not installed when the "plugins" meson option is set to false. # Since GNOME Builder 41, the VLS the plugin has been included. diff --git a/anda/langs/vala/vala-nightly/vala-nightly.spec b/anda/langs/vala/vala-nightly/vala-nightly.spec index 509f4d183a..1c7c3c33e4 100644 --- a/anda/langs/vala/vala-nightly/vala-nightly.spec +++ b/anda/langs/vala/vala-nightly/vala-nightly.spec @@ -3,11 +3,11 @@ %global priority 90 %global real_name vala -%global commit 2c9e91b4a0387b8e6e2fbd11a9b335cdc63896cd +%global commit c5d31b3fcdb9d564dc3340714a129f72a072391f %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global repo https://gitlab.gnome.org/GNOME/%{real_name}.git -%global commit_date 20260327 +%global commit_date 20260528 %global snapshot_info %{commit_date}.%{shortcommit} Name: vala-nightly @@ -138,12 +138,15 @@ cd %{real_name}-%{commit} git checkout %{commit} -%build +%conf cd %{real_name}-%{commit} ./autogen.sh --help %configure # Don't use rpath! sed -i 's|/lib /usr/lib|/lib /usr/lib /lib64 /usr/lib64|' libtool + +%build +cd %{real_name}-%{commit} %make_build %install diff --git a/anda/langs/zig/bootstrap/0000-remove-native-lib-directories-from-rpath.patch b/anda/langs/zig/bootstrap/0000-remove-native-lib-directories-from-rpath.patch index 034d8ed0f3..24db5827b6 100644 --- a/anda/langs/zig/bootstrap/0000-remove-native-lib-directories-from-rpath.patch +++ b/anda/langs/zig/bootstrap/0000-remove-native-lib-directories-from-rpath.patch @@ -1,6 +1,18 @@ ---- a/src/main.zig 2025-12-27 19:19:30.000000000 -0600 -+++ b/src/main.zig 2025-12-31 08:25:12.962257290 -0600 -@@ -3998,6 +3998,15 @@ +From a865b3569ace118cc1c1cd8d5d130ec316b0307d Mon Sep 17 00:00:00 2001 +From: Jan200101 +Date: Tue, 14 Apr 2026 19:04:40 +0200 +Subject: [PATCH 1/2] remove native lib directories from rpath + +Signed-off-by: Jan200101 +--- + src/main.zig | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/src/main.zig b/src/main.zig +index 0395a21a5f..86b6d9f86b 100644 +--- a/src/main.zig ++++ b/src/main.zig +@@ -4102,6 +4102,15 @@ fn createModule( try create_module.lib_directories.ensureUnusedCapacity(arena, paths.lib_dirs.items.len); for (paths.lib_dirs.items) |path| addLibDirectoryWarn2(io, &create_module.lib_directories, path, true); @@ -16,3 +28,6 @@ } if (create_module.libc_paths_file) |paths_file| { +-- +2.53.0 + diff --git a/anda/langs/zig/bootstrap/0001-Remove-unsupported-LLVM-targets-for-EPEL.patch b/anda/langs/zig/bootstrap/0001-Remove-unsupported-LLVM-targets-for-EPEL.patch new file mode 100644 index 0000000000..a8b942f129 --- /dev/null +++ b/anda/langs/zig/bootstrap/0001-Remove-unsupported-LLVM-targets-for-EPEL.patch @@ -0,0 +1,254 @@ +From 803935baf6a4730426afbb746adfd00c0ffc0f39 Mon Sep 17 00:00:00 2001 +From: Jan200101 +Date: Tue, 14 Apr 2026 19:20:26 +0200 +Subject: [PATCH 2/2] Remove unsupported LLVM targets for RHEL + +LLVM for RHEL is only build with a subset of targets +this blocks zig at the configuration stage. +This commit simply swaps them out with the one from +https://src.fedoraproject.org/rpms/llvm/blob/rawhide/f/llvm.spec + +Signed-off-by: Jan200101 +--- + cmake/Findllvm.cmake | 2 +- + src/codegen/llvm.zig | 97 ++++++++++---------------------------------- + src/target.zig | 43 +++++++++++--------- + 3 files changed, 45 insertions(+), 97 deletions(-) + +diff --git a/cmake/Findllvm.cmake b/cmake/Findllvm.cmake +index 0c08d4f0ac..ed4da12044 100644 +--- a/cmake/Findllvm.cmake ++++ b/cmake/Findllvm.cmake +@@ -83,7 +83,7 @@ if(ZIG_USE_LLVM_CONFIG) + OUTPUT_STRIP_TRAILING_WHITESPACE) + string(REPLACE " " ";" LLVM_TARGETS_BUILT "${LLVM_TARGETS_BUILT_SPACES}") + +- set(ZIG_LLVM_REQUIRED_TARGETS "AArch64;AMDGPU;ARM;AVR;BPF;Hexagon;Lanai;LoongArch;Mips;MSP430;NVPTX;PowerPC;RISCV;SPIRV;Sparc;SystemZ;VE;WebAssembly;X86;XCore") ++ set(ZIG_LLVM_REQUIRED_TARGETS "X86;AMDGPU;PowerPC;NVPTX;SystemZ;AArch64;BPF;WebAssembly;RISCV") + + set(ZIG_LLVM_REQUIRED_TARGETS_ENABLED TRUE) + foreach(TARGET_NAME IN LISTS ZIG_LLVM_REQUIRED_TARGETS) +diff --git a/src/codegen/llvm.zig b/src/codegen/llvm.zig +index 1ba3b272da..1ac1f6adc8 100644 +--- a/src/codegen/llvm.zig ++++ b/src/codegen/llvm.zig +@@ -4736,20 +4736,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void { + bindings.LLVMInitializeAMDGPUAsmPrinter(); + bindings.LLVMInitializeAMDGPUAsmParser(); + }, +- .thumb, .thumbeb, .arm, .armeb => { +- bindings.LLVMInitializeARMTarget(); +- bindings.LLVMInitializeARMTargetInfo(); +- bindings.LLVMInitializeARMTargetMC(); +- bindings.LLVMInitializeARMAsmPrinter(); +- bindings.LLVMInitializeARMAsmParser(); +- }, +- .avr => { +- bindings.LLVMInitializeAVRTarget(); +- bindings.LLVMInitializeAVRTargetInfo(); +- bindings.LLVMInitializeAVRTargetMC(); +- bindings.LLVMInitializeAVRAsmPrinter(); +- bindings.LLVMInitializeAVRAsmParser(); +- }, + .bpfel, .bpfeb => { + bindings.LLVMInitializeBPFTarget(); + bindings.LLVMInitializeBPFTargetInfo(); +@@ -4757,34 +4743,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void { + bindings.LLVMInitializeBPFAsmPrinter(); + bindings.LLVMInitializeBPFAsmParser(); + }, +- .hexagon => { +- bindings.LLVMInitializeHexagonTarget(); +- bindings.LLVMInitializeHexagonTargetInfo(); +- bindings.LLVMInitializeHexagonTargetMC(); +- bindings.LLVMInitializeHexagonAsmPrinter(); +- bindings.LLVMInitializeHexagonAsmParser(); +- }, +- .lanai => { +- bindings.LLVMInitializeLanaiTarget(); +- bindings.LLVMInitializeLanaiTargetInfo(); +- bindings.LLVMInitializeLanaiTargetMC(); +- bindings.LLVMInitializeLanaiAsmPrinter(); +- bindings.LLVMInitializeLanaiAsmParser(); +- }, +- .mips, .mipsel, .mips64, .mips64el => { +- bindings.LLVMInitializeMipsTarget(); +- bindings.LLVMInitializeMipsTargetInfo(); +- bindings.LLVMInitializeMipsTargetMC(); +- bindings.LLVMInitializeMipsAsmPrinter(); +- bindings.LLVMInitializeMipsAsmParser(); +- }, +- .msp430 => { +- bindings.LLVMInitializeMSP430Target(); +- bindings.LLVMInitializeMSP430TargetInfo(); +- bindings.LLVMInitializeMSP430TargetMC(); +- bindings.LLVMInitializeMSP430AsmPrinter(); +- bindings.LLVMInitializeMSP430AsmParser(); +- }, + .nvptx, .nvptx64 => { + bindings.LLVMInitializeNVPTXTarget(); + bindings.LLVMInitializeNVPTXTargetInfo(); +@@ -4806,13 +4764,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void { + bindings.LLVMInitializeRISCVAsmPrinter(); + bindings.LLVMInitializeRISCVAsmParser(); + }, +- .sparc, .sparc64 => { +- bindings.LLVMInitializeSparcTarget(); +- bindings.LLVMInitializeSparcTargetInfo(); +- bindings.LLVMInitializeSparcTargetMC(); +- bindings.LLVMInitializeSparcAsmPrinter(); +- bindings.LLVMInitializeSparcAsmParser(); +- }, + .s390x => { + bindings.LLVMInitializeSystemZTarget(); + bindings.LLVMInitializeSystemZTargetInfo(); +@@ -4843,13 +4794,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void { + bindings.LLVMInitializeXtensaAsmParser(); + } + }, +- .xcore => { +- bindings.LLVMInitializeXCoreTarget(); +- bindings.LLVMInitializeXCoreTargetInfo(); +- bindings.LLVMInitializeXCoreTargetMC(); +- bindings.LLVMInitializeXCoreAsmPrinter(); +- // There is no LLVMInitializeXCoreAsmParser function. +- }, + .m68k => { + if (build_options.llvm_has_m68k) { + bindings.LLVMInitializeM68kTarget(); +@@ -4868,13 +4812,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void { + bindings.LLVMInitializeCSKYAsmParser(); + } + }, +- .ve => { +- bindings.LLVMInitializeVETarget(); +- bindings.LLVMInitializeVETargetInfo(); +- bindings.LLVMInitializeVETargetMC(); +- bindings.LLVMInitializeVEAsmPrinter(); +- bindings.LLVMInitializeVEAsmParser(); +- }, + .arc => { + if (build_options.llvm_has_arc) { + bindings.LLVMInitializeARCTarget(); +@@ -4884,21 +4821,29 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void { + // There is no LLVMInitializeARCAsmParser function. + } + }, +- .loongarch32, .loongarch64 => { +- bindings.LLVMInitializeLoongArchTarget(); +- bindings.LLVMInitializeLoongArchTargetInfo(); +- bindings.LLVMInitializeLoongArchTargetMC(); +- bindings.LLVMInitializeLoongArchAsmPrinter(); +- bindings.LLVMInitializeLoongArchAsmParser(); +- }, ++ ++ // Disabled LLVM targets ++ .thumb, ++ .thumbeb, ++ .arm, ++ .armeb, ++ .avr, ++ .hexagon, ++ .lanai, ++ .mips, ++ .mipsel, ++ .mips64, ++ .mips64el, ++ .msp430, ++ .sparc, ++ .sparc64, ++ .xcore, ++ .ve, ++ .loongarch32, ++ .loongarch64, + .spirv32, + .spirv64, +- => { +- bindings.LLVMInitializeSPIRVTarget(); +- bindings.LLVMInitializeSPIRVTargetInfo(); +- bindings.LLVMInitializeSPIRVTargetMC(); +- bindings.LLVMInitializeSPIRVAsmPrinter(); +- }, ++ => unreachable, + + // LLVM does does not have a backend for these. + .alpha, +diff --git a/src/target.zig b/src/target.zig +index 3d04c06f5e..9e19836815 100644 +--- a/src/target.zig ++++ b/src/target.zig +@@ -185,23 +185,12 @@ pub fn hasLlvmSupport(target: *const std.Target, ofmt: std.Target.ObjectFormat) + } + + return switch (target.cpu.arch) { +- .arm, +- .armeb, + .aarch64, + .aarch64_be, + .arc, +- .avr, + .bpfel, + .bpfeb, +- .hexagon, +- .loongarch32, +- .loongarch64, + .m68k, +- .mips, +- .mipsel, +- .mips64, +- .mips64el, +- .msp430, + .powerpc, + .powerpcle, + .powerpc64, +@@ -211,24 +200,38 @@ pub fn hasLlvmSupport(target: *const std.Target, ofmt: std.Target.ObjectFormat) + .riscv32be, + .riscv64, + .riscv64be, +- .sparc, +- .sparc64, +- .spirv32, +- .spirv64, + .s390x, +- .thumb, +- .thumbeb, + .x86, + .x86_64, +- .xcore, + .nvptx, + .nvptx64, +- .lanai, + .wasm32, + .wasm64, +- .ve, + => true, + ++ // Disabled LLVM targets ++ .thumb, ++ .thumbeb, ++ .arm, ++ .armeb, ++ .avr, ++ .hexagon, ++ .lanai, ++ .mips, ++ .mipsel, ++ .mips64, ++ .mips64el, ++ .msp430, ++ .sparc, ++ .sparc64, ++ .xcore, ++ .ve, ++ .loongarch32, ++ .loongarch64, ++ .spirv32, ++ .spirv64, ++ => false, ++ + // LLVM backend exists but can produce neither assembly nor object files. + .csky, + .xtensa, +-- +2.53.0 + diff --git a/anda/langs/zig/bootstrap/setup.sh b/anda/langs/zig/bootstrap/setup.sh index 6e22aaf020..0fa264cc13 100755 --- a/anda/langs/zig/bootstrap/setup.sh +++ b/anda/langs/zig/bootstrap/setup.sh @@ -1,6 +1,6 @@ #!/usr/bin/bash -version=0.16.0-dev.3028+a85495ca2 +version=0.17.0-dev.857+2b2b85c5f mirrors=() @@ -21,8 +21,8 @@ if [ "$1" == "fetch" ]; then randomize_mirrors done echo -e "\033[0;32mNote:\033[0m Selected mirror $mirror" - curl -A "rpmdev-spectool" -H "Accept-Encoding: identity" -O ${mirror}/zig-${version}.tar.xz?source=terra.fyralabs.com - curl -A "rpmdev-spectool" -H "Accept-Encoding: identity" -O ${mirror}/zig-${version}.tar.xz.minisig?source=terra.fyralabs.com + curl -A "rpmdev-spectool" -H "Accept-Encoding: identity" -O ${mirror}/zig-${version}.tar.xz?source=terrapkg.com + curl -A "rpmdev-spectool" -H "Accept-Encoding: identity" -O ${mirror}/zig-${version}.tar.xz.minisig?source=terrapkg.com elif [ "$1" == "version" ]; then echo $version # Grab a random mirror. For debugging purposes. diff --git a/anda/langs/zig/bootstrap/update.rhai b/anda/langs/zig/bootstrap/update.rhai index 51ab4017b1..ddbcbc1d86 100644 --- a/anda/langs/zig/bootstrap/update.rhai +++ b/anda/langs/zig/bootstrap/update.rhai @@ -8,4 +8,10 @@ if rpm.changed() { // Update the Zig version in the script let dir = sub(`/[^/]+$`, "", __script_path); sh(`sed -i 's|version=.*|version=${v}|' setup.sh`, #{ "cwd": dir }); + // Update the needed LLVM version + let rawfile = codeberg_rawfile("ziglang/zig", "master", "README.md"); + let l = find(`releases\.llvm\.org/download\.html#([\d.]+)`, rawfile, 1); + rpm.global("llvm_version", l); + l.truncate(2); + rpm.define("llvm_compat", l); } diff --git a/anda/langs/zig/bootstrap/zig-master-bootstrap.spec b/anda/langs/zig/bootstrap/zig-master-bootstrap.spec index fd381837e2..1248690903 100644 --- a/anda/langs/zig/bootstrap/zig-master-bootstrap.spec +++ b/anda/langs/zig/bootstrap/zig-master-bootstrap.spec @@ -2,15 +2,20 @@ %global zig_arches x86_64 aarch64 riscv64 %{mips64} # Signing key from https://ziglang.org/download/ %global public_key RWSGOq2NVecA2UPNdBUZykf1CCb147pkmdtYxgb3Ti+JO/wCYvhbAb/U -# Not needed yet -%if 0%{?fedora} >= 42 || 0%{?rhel} >= 9 -%define llvm_compat 20 +%if 0%{?fedora} >= 46 +%define llvm_compat 22 %endif -%global llvm_version 20.0.0 -%global ver 0.16.0-dev.3028+a85495ca2 +%global llvm_version 22.0.0 +%global ver 0.17.0-dev.857+2b2b85c5f %bcond bootstrap 1 %bcond docs %{without bootstrap} %bcond test 1 +# GCC < 16.0 miscompiles on RISC-V +%ifarch riscv64 +%if 0%{?fedora} < 44 +%global toolchain clang +%endif +%endif %global archive_name zig-%{ver}.tar.xz %global zig_cache_dir %{builddir}/zig-cache %global zig_build_options %{shrink: \ @@ -47,13 +52,20 @@ URL: https://ziglang.org Source0: %{archive_name} Source1: %{archive_name}.minisig Patch0: 0000-remove-native-lib-directories-from-rpath.patch +%if %{defined rhel} +Patch1: 0001-Remove-unsupported-LLVM-targets-for-EPEL.patch +%endif BuildRequires: cmake +%if %["%{toolchain}" == "clang"] +BuildRequires: clang +%else BuildRequires: gcc BuildRequires: gcc-c++ +%endif BuildRequires: libxml2-devel -BuildRequires: llvm-devel -BuildRequires: clang-devel -BuildRequires: lld-devel +BuildRequires: llvm%{?llvm_compat}-devel +BuildRequires: clang%{?llvm_compat}-devel +BuildRequires: lld%{?llvm_compat}-devel BuildRequires: zlib-devel # for man page generation BuildRequires: help2man @@ -73,7 +85,7 @@ Requires: %{name}-libs = %{version} # Apache-2.0 WITH LLVM-exception OR NCSA OR MIT Provides: bundled(compiler-rt) = %{llvm_version} # LGPL-2.1-or-later AND SunPro AND LGPL-2.1-or-later WITH GCC-exception-2.0 AND BSD-3-Clause AND GPL-2.0-or-later AND LGPL-2.1-or-later WITH GNU-compiler-exception AND GPL-2.0-only AND ISC AND LicenseRef-Fedora-Public-Domain AND HPND AND CMU-Mach AND LGPL-2.0-or-later AND Unicode-3.0 AND GFDL-1.1-or-later AND GPL-1.0-or-later AND FSFUL AND MIT AND Inner-Net-2.0 AND X11 AND GPL-2.0-or-later WITH GCC-exception-2.0 AND GFDL-1.3-only AND GFDL-1.1-only -Provides: bundled(glibc) = 2.41 +Provides: bundled(glibc) = 2.43 # Apache-2.0 WITH LLVM-exception OR MIT OR NCSA Provides: bundled(libcxx) = %{llvm_version} # Apache-2.0 WITH LLVM-exception OR MIT OR NCSA @@ -112,7 +124,11 @@ Zig Standard Library rm -f stage1/zig1.wasm %endif -%build +%conf +# Force the correct LLVM version +%if %{defined llvm_compat} +export LLVM_DIR=%{_libdir}/llvm%{?llvm_compat}/%{_lib}/cmake +%endif # zig doesn't know how to dynamically link llvm on its own so we need cmake to generate a header ahead of time # if we provide the header we need to also build zigcpp @@ -123,7 +139,7 @@ rm -f stage1/zig1.wasm -DCMAKE_C_FLAGS_RELWITHDEBINFO:STRING="-DNDEBUG -Wno-unused" \ -DCMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING="-DNDEBUG -Wno-unused" \ \ - -DZIG_EXTRA_BUILD_ARGS:STRING="--verbose;--build-id=sha1" \ + -DZIG_EXTRA_BUILD_ARGS:STRING="--verbose;--build-id=sha1;-Dno-langref=true" \ -DZIG_SHARED_LLVM:BOOL=true \ -DZIG_PIE:BOOL=true \ \ @@ -132,6 +148,7 @@ rm -f stage1/zig1.wasm \ -DZIG_VERSION:STRING="%(v=%{ver}; echo ${v:0:6})" +%build %if %{with bootstrap} %cmake_build --target stage3 %else @@ -149,14 +166,16 @@ help2man --no-discard-stderr --no-info "./zig-out/bin/zig" --version-option=vers # Zig has an extremely annoying issue with transitive failures when trying to build the docs, retry until it succeeds max=3 attempt=1 -while ./zig-out/bin/zig build docs \ +while + ./zig-out/bin/zig build docs \ --verbose \ --global-cache-dir "%{zig_cache_dir}" \ - -Dversion-string="%(v=%{ver}; echo ${v:0:6})"; [[ $? -ne 0 ]]; + -Dversion-string="%(v=%{ver}; echo ${v:0:6})" + [[ $? != 0 ]] do - echo "Transitive failure. Trying again." + echo "Transitive failure. Trying again." >&2 - if [[ $attempt -eq $max ]] + if [[ $attempt == $max ]] then break fi diff --git a/anda/langs/zig/master/0000-remove-native-lib-directories-from-rpath.patch b/anda/langs/zig/master/0000-remove-native-lib-directories-from-rpath.patch index 034d8ed0f3..24db5827b6 100644 --- a/anda/langs/zig/master/0000-remove-native-lib-directories-from-rpath.patch +++ b/anda/langs/zig/master/0000-remove-native-lib-directories-from-rpath.patch @@ -1,6 +1,18 @@ ---- a/src/main.zig 2025-12-27 19:19:30.000000000 -0600 -+++ b/src/main.zig 2025-12-31 08:25:12.962257290 -0600 -@@ -3998,6 +3998,15 @@ +From a865b3569ace118cc1c1cd8d5d130ec316b0307d Mon Sep 17 00:00:00 2001 +From: Jan200101 +Date: Tue, 14 Apr 2026 19:04:40 +0200 +Subject: [PATCH 1/2] remove native lib directories from rpath + +Signed-off-by: Jan200101 +--- + src/main.zig | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/src/main.zig b/src/main.zig +index 0395a21a5f..86b6d9f86b 100644 +--- a/src/main.zig ++++ b/src/main.zig +@@ -4102,6 +4102,15 @@ fn createModule( try create_module.lib_directories.ensureUnusedCapacity(arena, paths.lib_dirs.items.len); for (paths.lib_dirs.items) |path| addLibDirectoryWarn2(io, &create_module.lib_directories, path, true); @@ -16,3 +28,6 @@ } if (create_module.libc_paths_file) |paths_file| { +-- +2.53.0 + diff --git a/anda/langs/zig/master/0001-Remove-unsupported-LLVM-targets-for-EPEL.patch b/anda/langs/zig/master/0001-Remove-unsupported-LLVM-targets-for-EPEL.patch new file mode 100644 index 0000000000..a8b942f129 --- /dev/null +++ b/anda/langs/zig/master/0001-Remove-unsupported-LLVM-targets-for-EPEL.patch @@ -0,0 +1,254 @@ +From 803935baf6a4730426afbb746adfd00c0ffc0f39 Mon Sep 17 00:00:00 2001 +From: Jan200101 +Date: Tue, 14 Apr 2026 19:20:26 +0200 +Subject: [PATCH 2/2] Remove unsupported LLVM targets for RHEL + +LLVM for RHEL is only build with a subset of targets +this blocks zig at the configuration stage. +This commit simply swaps them out with the one from +https://src.fedoraproject.org/rpms/llvm/blob/rawhide/f/llvm.spec + +Signed-off-by: Jan200101 +--- + cmake/Findllvm.cmake | 2 +- + src/codegen/llvm.zig | 97 ++++++++++---------------------------------- + src/target.zig | 43 +++++++++++--------- + 3 files changed, 45 insertions(+), 97 deletions(-) + +diff --git a/cmake/Findllvm.cmake b/cmake/Findllvm.cmake +index 0c08d4f0ac..ed4da12044 100644 +--- a/cmake/Findllvm.cmake ++++ b/cmake/Findllvm.cmake +@@ -83,7 +83,7 @@ if(ZIG_USE_LLVM_CONFIG) + OUTPUT_STRIP_TRAILING_WHITESPACE) + string(REPLACE " " ";" LLVM_TARGETS_BUILT "${LLVM_TARGETS_BUILT_SPACES}") + +- set(ZIG_LLVM_REQUIRED_TARGETS "AArch64;AMDGPU;ARM;AVR;BPF;Hexagon;Lanai;LoongArch;Mips;MSP430;NVPTX;PowerPC;RISCV;SPIRV;Sparc;SystemZ;VE;WebAssembly;X86;XCore") ++ set(ZIG_LLVM_REQUIRED_TARGETS "X86;AMDGPU;PowerPC;NVPTX;SystemZ;AArch64;BPF;WebAssembly;RISCV") + + set(ZIG_LLVM_REQUIRED_TARGETS_ENABLED TRUE) + foreach(TARGET_NAME IN LISTS ZIG_LLVM_REQUIRED_TARGETS) +diff --git a/src/codegen/llvm.zig b/src/codegen/llvm.zig +index 1ba3b272da..1ac1f6adc8 100644 +--- a/src/codegen/llvm.zig ++++ b/src/codegen/llvm.zig +@@ -4736,20 +4736,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void { + bindings.LLVMInitializeAMDGPUAsmPrinter(); + bindings.LLVMInitializeAMDGPUAsmParser(); + }, +- .thumb, .thumbeb, .arm, .armeb => { +- bindings.LLVMInitializeARMTarget(); +- bindings.LLVMInitializeARMTargetInfo(); +- bindings.LLVMInitializeARMTargetMC(); +- bindings.LLVMInitializeARMAsmPrinter(); +- bindings.LLVMInitializeARMAsmParser(); +- }, +- .avr => { +- bindings.LLVMInitializeAVRTarget(); +- bindings.LLVMInitializeAVRTargetInfo(); +- bindings.LLVMInitializeAVRTargetMC(); +- bindings.LLVMInitializeAVRAsmPrinter(); +- bindings.LLVMInitializeAVRAsmParser(); +- }, + .bpfel, .bpfeb => { + bindings.LLVMInitializeBPFTarget(); + bindings.LLVMInitializeBPFTargetInfo(); +@@ -4757,34 +4743,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void { + bindings.LLVMInitializeBPFAsmPrinter(); + bindings.LLVMInitializeBPFAsmParser(); + }, +- .hexagon => { +- bindings.LLVMInitializeHexagonTarget(); +- bindings.LLVMInitializeHexagonTargetInfo(); +- bindings.LLVMInitializeHexagonTargetMC(); +- bindings.LLVMInitializeHexagonAsmPrinter(); +- bindings.LLVMInitializeHexagonAsmParser(); +- }, +- .lanai => { +- bindings.LLVMInitializeLanaiTarget(); +- bindings.LLVMInitializeLanaiTargetInfo(); +- bindings.LLVMInitializeLanaiTargetMC(); +- bindings.LLVMInitializeLanaiAsmPrinter(); +- bindings.LLVMInitializeLanaiAsmParser(); +- }, +- .mips, .mipsel, .mips64, .mips64el => { +- bindings.LLVMInitializeMipsTarget(); +- bindings.LLVMInitializeMipsTargetInfo(); +- bindings.LLVMInitializeMipsTargetMC(); +- bindings.LLVMInitializeMipsAsmPrinter(); +- bindings.LLVMInitializeMipsAsmParser(); +- }, +- .msp430 => { +- bindings.LLVMInitializeMSP430Target(); +- bindings.LLVMInitializeMSP430TargetInfo(); +- bindings.LLVMInitializeMSP430TargetMC(); +- bindings.LLVMInitializeMSP430AsmPrinter(); +- bindings.LLVMInitializeMSP430AsmParser(); +- }, + .nvptx, .nvptx64 => { + bindings.LLVMInitializeNVPTXTarget(); + bindings.LLVMInitializeNVPTXTargetInfo(); +@@ -4806,13 +4764,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void { + bindings.LLVMInitializeRISCVAsmPrinter(); + bindings.LLVMInitializeRISCVAsmParser(); + }, +- .sparc, .sparc64 => { +- bindings.LLVMInitializeSparcTarget(); +- bindings.LLVMInitializeSparcTargetInfo(); +- bindings.LLVMInitializeSparcTargetMC(); +- bindings.LLVMInitializeSparcAsmPrinter(); +- bindings.LLVMInitializeSparcAsmParser(); +- }, + .s390x => { + bindings.LLVMInitializeSystemZTarget(); + bindings.LLVMInitializeSystemZTargetInfo(); +@@ -4843,13 +4794,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void { + bindings.LLVMInitializeXtensaAsmParser(); + } + }, +- .xcore => { +- bindings.LLVMInitializeXCoreTarget(); +- bindings.LLVMInitializeXCoreTargetInfo(); +- bindings.LLVMInitializeXCoreTargetMC(); +- bindings.LLVMInitializeXCoreAsmPrinter(); +- // There is no LLVMInitializeXCoreAsmParser function. +- }, + .m68k => { + if (build_options.llvm_has_m68k) { + bindings.LLVMInitializeM68kTarget(); +@@ -4868,13 +4812,6 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void { + bindings.LLVMInitializeCSKYAsmParser(); + } + }, +- .ve => { +- bindings.LLVMInitializeVETarget(); +- bindings.LLVMInitializeVETargetInfo(); +- bindings.LLVMInitializeVETargetMC(); +- bindings.LLVMInitializeVEAsmPrinter(); +- bindings.LLVMInitializeVEAsmParser(); +- }, + .arc => { + if (build_options.llvm_has_arc) { + bindings.LLVMInitializeARCTarget(); +@@ -4884,21 +4821,29 @@ pub fn initializeLLVMTarget(arch: std.Target.Cpu.Arch) void { + // There is no LLVMInitializeARCAsmParser function. + } + }, +- .loongarch32, .loongarch64 => { +- bindings.LLVMInitializeLoongArchTarget(); +- bindings.LLVMInitializeLoongArchTargetInfo(); +- bindings.LLVMInitializeLoongArchTargetMC(); +- bindings.LLVMInitializeLoongArchAsmPrinter(); +- bindings.LLVMInitializeLoongArchAsmParser(); +- }, ++ ++ // Disabled LLVM targets ++ .thumb, ++ .thumbeb, ++ .arm, ++ .armeb, ++ .avr, ++ .hexagon, ++ .lanai, ++ .mips, ++ .mipsel, ++ .mips64, ++ .mips64el, ++ .msp430, ++ .sparc, ++ .sparc64, ++ .xcore, ++ .ve, ++ .loongarch32, ++ .loongarch64, + .spirv32, + .spirv64, +- => { +- bindings.LLVMInitializeSPIRVTarget(); +- bindings.LLVMInitializeSPIRVTargetInfo(); +- bindings.LLVMInitializeSPIRVTargetMC(); +- bindings.LLVMInitializeSPIRVAsmPrinter(); +- }, ++ => unreachable, + + // LLVM does does not have a backend for these. + .alpha, +diff --git a/src/target.zig b/src/target.zig +index 3d04c06f5e..9e19836815 100644 +--- a/src/target.zig ++++ b/src/target.zig +@@ -185,23 +185,12 @@ pub fn hasLlvmSupport(target: *const std.Target, ofmt: std.Target.ObjectFormat) + } + + return switch (target.cpu.arch) { +- .arm, +- .armeb, + .aarch64, + .aarch64_be, + .arc, +- .avr, + .bpfel, + .bpfeb, +- .hexagon, +- .loongarch32, +- .loongarch64, + .m68k, +- .mips, +- .mipsel, +- .mips64, +- .mips64el, +- .msp430, + .powerpc, + .powerpcle, + .powerpc64, +@@ -211,24 +200,38 @@ pub fn hasLlvmSupport(target: *const std.Target, ofmt: std.Target.ObjectFormat) + .riscv32be, + .riscv64, + .riscv64be, +- .sparc, +- .sparc64, +- .spirv32, +- .spirv64, + .s390x, +- .thumb, +- .thumbeb, + .x86, + .x86_64, +- .xcore, + .nvptx, + .nvptx64, +- .lanai, + .wasm32, + .wasm64, +- .ve, + => true, + ++ // Disabled LLVM targets ++ .thumb, ++ .thumbeb, ++ .arm, ++ .armeb, ++ .avr, ++ .hexagon, ++ .lanai, ++ .mips, ++ .mipsel, ++ .mips64, ++ .mips64el, ++ .msp430, ++ .sparc, ++ .sparc64, ++ .xcore, ++ .ve, ++ .loongarch32, ++ .loongarch64, ++ .spirv32, ++ .spirv64, ++ => false, ++ + // LLVM backend exists but can produce neither assembly nor object files. + .csky, + .xtensa, +-- +2.53.0 + diff --git a/anda/langs/zig/master/update.rhai b/anda/langs/zig/master/update.rhai index f9a73b7fd5..57939139b8 100644 --- a/anda/langs/zig/master/update.rhai +++ b/anda/langs/zig/master/update.rhai @@ -6,4 +6,10 @@ if rpm.changed() { let r = bump::madoguchi_json("zig-master", labels.branch).rel; let r = sub(`(?m)(\.fc.*?|)$`, "", r).parse_int(); rpm.release(r + 1); + // Update the needed LLVM version + let rawfile = codeberg_rawfile("ziglang/zig", "master", "README.md"); + let l = find(`releases\.llvm\.org/download\.html#([\d.]+)`, rawfile, 1); + rpm.global("llvm_version", l); + l.truncate(2); + rpm.define("llvm_compat", l); } diff --git a/anda/langs/zig/master/zig-master.spec b/anda/langs/zig/master/zig-master.spec index e3e2e5c2f9..9af4a51455 100644 --- a/anda/langs/zig/master/zig-master.spec +++ b/anda/langs/zig/master/zig-master.spec @@ -2,19 +2,24 @@ %global zig_arches x86_64 aarch64 riscv64 %{mips64} # Signing key from https://ziglang.org/download/ %global public_key RWSGOq2NVecA2UPNdBUZykf1CCb147pkmdtYxgb3Ti+JO/wCYvhbAb/U -# Not needed yet -%if 0%{?fedora} >= 42 || 0%{?rhel} >= 9 -%define llvm_compat 20 +%if 0%{?fedora} >= 46 +%define llvm_compat 22 %endif -%global llvm_version 20.0.0 +%global llvm_version 22.0.0 %bcond bootstrap 0 %bcond docs %{without bootstrap} %bcond test 1 +# GCC < 16.0 miscompiles on RISC-V +%ifarch riscv64 +%if 0%{?fedora} < 44 +%global toolchain clang +%endif +%endif %global zig_cache_dir %{builddir}/zig-cache Name: zig-master -Version: 0.16.0~dev.2694+74f361a5c -Release: 2%?dist +Version: 0.17.0~dev.813+2153f8143 +Release: 2%{?dist} Summary: Master builds of the Zig language License: MIT AND NCSA AND LGPL-2.1-or-later AND LGPL-2.1-or-later WITH GCC-exception-2.0 AND GPL-2.0-or-later AND GPL-2.0-or-later WITH GCC-exception-2.0 AND BSD-3-Clause AND Inner-Net-2.0 AND ISC AND LicenseRef-Fedora-Public-Domain AND GFDL-1.1-or-later AND ZPL-2.1 URL: https://ziglang.org @@ -22,13 +27,20 @@ URL: https://ziglang.org Source0: %{archive_name} Source1: %{archive_name}.minisig Patch0: 0000-remove-native-lib-directories-from-rpath.patch +%if %{defined rhel} +Patch1: 0001-Remove-unsupported-LLVM-targets-for-EPEL.patch +%endif BuildRequires: cmake +%if %["%{toolchain}" == "clang"] +BuildRequires: clang +%else BuildRequires: gcc BuildRequires: gcc-c++ +%endif BuildRequires: libxml2-devel -BuildRequires: llvm-devel -BuildRequires: clang-devel -BuildRequires: lld-devel +BuildRequires: llvm%{?llvm_compat}-devel +BuildRequires: clang%{?llvm_compat}-devel +BuildRequires: lld%{?llvm_compat}-devel BuildRequires: zlib-devel # for man page generation BuildRequires: help2man @@ -48,7 +60,7 @@ Requires: %{name}-libs = %{version} # Apache-2.0 WITH LLVM-exception OR NCSA OR MIT Provides: bundled(compiler-rt) = %{llvm_version} # LGPL-2.1-or-later AND SunPro AND LGPL-2.1-or-later WITH GCC-exception-2.0 AND BSD-3-Clause AND GPL-2.0-or-later AND LGPL-2.1-or-later WITH GNU-compiler-exception AND GPL-2.0-only AND ISC AND LicenseRef-Fedora-Public-Domain AND HPND AND CMU-Mach AND LGPL-2.0-or-later AND Unicode-3.0 AND GFDL-1.1-or-later AND GPL-1.0-or-later AND FSFUL AND MIT AND Inner-Net-2.0 AND X11 AND GPL-2.0-or-later WITH GCC-exception-2.0 AND GFDL-1.3-only AND GFDL-1.1-only -Provides: bundled(glibc) = 2.41 +Provides: bundled(glibc) = 2.43 # Apache-2.0 WITH LLVM-exception OR MIT OR NCSA Provides: bundled(libcxx) = %{llvm_version} # Apache-2.0 WITH LLVM-exception OR MIT OR NCSA @@ -124,7 +136,11 @@ Documentation for Zig. For more information, visit %{url} rm -f stage1/zig1.wasm %endif -%build +%conf +# Force the correct LLVM version +%if %{defined llvm_compat} +export LLVM_DIR=%{_libdir}/llvm%{?llvm_compat}/%{_lib}/cmake +%endif # zig doesn't know how to dynamically link llvm on its own so we need cmake to generate a header ahead of time # if we provide the header we need to also build zigcpp @@ -135,7 +151,7 @@ rm -f stage1/zig1.wasm -DCMAKE_C_FLAGS_RELWITHDEBINFO:STRING="-DNDEBUG -Wno-unused" \ -DCMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING="-DNDEBUG -Wno-unused" \ \ - -DZIG_EXTRA_BUILD_ARGS:STRING="--verbose;--build-id=sha1" \ + -DZIG_EXTRA_BUILD_ARGS:STRING="--verbose;--build-id=sha1;-Dno-langref=true" \ -DZIG_SHARED_LLVM:BOOL=true \ -DZIG_PIE:BOOL=true \ \ @@ -144,6 +160,8 @@ rm -f stage1/zig1.wasm \ -DZIG_VERSION:STRING="%(v=%{version_no_tilde}; echo ${v:0:6})" + +%build %if %{with bootstrap} %cmake_build --target stage3 %else @@ -161,14 +179,16 @@ help2man --no-discard-stderr --no-info "./zig-out/bin/zig" --version-option=vers # Zig has an extremely annoying issue with transitive failures when trying to build the docs, retry until it succeeds max=3 attempt=1 -while ./zig-out/bin/zig build docs \ +while + ./zig-out/bin/zig build docs \ --verbose \ --global-cache-dir "%{zig_cache_dir}" \ - -Dversion-string="%(v=%{version_no_tilde}; echo ${v:0:6})"; [[ $? -ne 0 ]]; + -Dversion-string="%(v=%{version_no_tilde}; echo ${v:0:6})" + [[ $? != 0 ]] do - echo "Transitive failure. Trying again." + echo "Transitive failure. Trying again." >&2 - if [[ $attempt -eq $max ]] + if [[ $attempt == $max ]] then break fi diff --git a/anda/lib/VK_hdr_layer/VK_hdr_layer.spec b/anda/lib/VK_hdr_layer/VK_hdr_layer.spec new file mode 100644 index 0000000000..7dc32cd0dc --- /dev/null +++ b/anda/lib/VK_hdr_layer/VK_hdr_layer.spec @@ -0,0 +1,83 @@ +%global commit 57b26b8927b133566be13a7702f74a62109bad15 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260325 + +Name: VK_hdr_layer +Version: 0^%{commitdate}git%{shortcommit} +Release: 1%{?dist} +Epoch: 1 +Summary: Vulkan Wayland HDR WSI Layer +License: MIT +URL: https://github.com/zamundaaa/VK_hdr_layer +Source: %{url}/archive/%{commit}/%{name}-%{shortcommit}.tar.gz +BuildRequires: gcc-c++ +BuildRequires: meson >= 0.58 +BuildRequires: pkgconfig(vulkan) +BuildRequires: vulkan-headers +BuildRequires: pkgconfig(wayland-scanner) +# Temporary solution until upstream builds with newer VKroots +%dnl BuildRequires: pkgconfig(vkroots) +BuildRequires: pkgconfig(wayland-client) +# KWin is the main reference supported compositor +Enhances: kwin-wayland >= 6.3 +Obsoletes: VK_hdr_layer < 1:0^20250416git3b276e6 +Packager: Gilver E. + +%description +Vulkan layer utilizing a small color management/HDR +protocol for experimentation. +The proposed mainline protocol for color management is +wp_color_management. + +This implements the following vulkan extensions, +if the protocol is supported by the compositor. + +* VK_EXT_swapchain_colorspace +* VK_EXT_hdr_metadata + + +%prep +%dnl %autosetup -n %{name}-%{commit} -p1 +%git_clone %{url}.git %{commit} + +%conf +%meson --libdir=%{_libdir}/%{name} + +%build +%meson_build + +%install +%meson_install --skip-subprojects=vkroots + +%files +%license LICENSE +%doc README.md +%{_libdir}/%{name}/libVkLayer_hdr_wsi.so +%{_datadir}/vulkan/implicit_layer.d/VkLayer_hdr_wsi.*.json + + +%changelog +* Sat Apr 18 2026 Gilver E. - 1:0^20260325git57b26b8-1 +- Adopt for Terra + +* Fri Jan 16 2026 Fedora Release Engineering - 0~git20250416.3b276e6-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Fri Jan 16 2026 Fedora Release Engineering - 0~git20250416.3b276e6-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Wed Jul 23 2025 Fedora Release Engineering - 0~git20250416.3b276e6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Mon Apr 21 2025 Neal Gompa - 0~git20250416.3b276e6-1 +- Update to git snapshot with support for finalized color management protocol + +* Thu Jan 16 2025 Fedora Release Engineering - 0~git20241018.e173f26-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Fri Oct 18 2024 Neal Gompa - 0~git20241018.e173f26-1 +- Update to git snapshot +- Install library to private subdirectory + +* Sun Sep 08 2024 Neal Gompa - 0~git20240427.e47dc6d-1 +- Initial package diff --git a/anda/lib/VK_hdr_layer/anda.hcl b/anda/lib/VK_hdr_layer/anda.hcl new file mode 100644 index 0000000000..27b519c219 --- /dev/null +++ b/anda/lib/VK_hdr_layer/anda.hcl @@ -0,0 +1,11 @@ +project pkg { + arches = ["x86_64", "aarch64", "i386"] + rpm { + spec = "VK_hdr_layer.spec" + } + labels { + subrepo = "nvidia" + nightly = 1 + mock = 1 + } +} diff --git a/anda/lib/VK_hdr_layer/update.rhai b/anda/lib/VK_hdr_layer/update.rhai new file mode 100644 index 0000000000..e576ab0d01 --- /dev/null +++ b/anda/lib/VK_hdr_layer/update.rhai @@ -0,0 +1,5 @@ +rpm.global("commit", gh_commit("zamundaaa/VK_hdr_layer")); +if rpm.changed() { + rpm.release(); + rpm.global("commitdate", date()); +} diff --git a/anda/lib/apparmor/apparmor.spec b/anda/lib/apparmor/apparmor.spec index 11469af322..554ad8bf34 100644 --- a/anda/lib/apparmor/apparmor.spec +++ b/anda/lib/apparmor/apparmor.spec @@ -6,7 +6,7 @@ %bcond_with tests Name: apparmor -Version: 4.1.7 +Version: 5.0.1 Release: 1%{?dist} Summary: AppArmor userspace components @@ -38,6 +38,7 @@ BuildRequires: systemd-rpm-macros BuildRequires: autoconf-archive BuildRequires: gawk BuildRequires: which +BuildRequires: libzstd-devel %if %{with tests} BuildRequires: %{_bindir}/runtest BuildRequires: %{_bindir}/prove @@ -143,10 +144,11 @@ changehat abilities exposed through libapparmor. %prep %autosetup -p1 -n %name-v%normver + +%conf sed -i 's/@VERSION@/%normver/g' libraries/libapparmor/swig/python/setup.py.in sed -i 's/${VERSION}/%normver/g' utils/Makefile -%build export PYTHON=%{__python3} export PYTHON_VERSION=3 export PYTHON_VERSIONS=python3 @@ -154,8 +156,12 @@ export PYTHON_VERSIONS=python3 pushd libraries/libapparmor ./autogen.sh %configure \ - --with-python \ + --with-python +popd +%build + +pushd libraries/libapparmor %make_build VERSION=%normver popd diff --git a/anda/lib/args-hxx/args-hxx.spec b/anda/lib/args-hxx/args-hxx.spec index 634a4fbcd2..4b96f671b3 100644 --- a/anda/lib/args-hxx/args-hxx.spec +++ b/anda/lib/args-hxx/args-hxx.spec @@ -1,8 +1,8 @@ %define debug_package %nil Name: args-hxx -Version: 6.4.8 -Release: 1%?dist +Version: 6.4.16 +Release: 1%{?dist} Summary: A simple header-only C++ argument parser library License: MIT URL: https://github.com/Taywee/args diff --git a/anda/lib/astal/ags/ags.spec b/anda/lib/astal/ags/ags.spec index f7fbd594dc..758750820e 100644 --- a/anda/lib/astal/ags/ags.spec +++ b/anda/lib/astal/ags/ags.spec @@ -12,7 +12,7 @@ # https://github.com/Aylur/ags %global goipath github.com/Aylur/ags -Version: 3.1.1 +Version: 3.1.2 %gometa -f @@ -23,7 +23,7 @@ Scaffolding CLI for Astal+TypeScript.} %global godocs docs README.md Name: ags -Release: 1%?dist +Release: 1%{?dist} Summary: Scaffolding CLI for Astal+TypeScript License: GPL-3.0-only diff --git a/anda/lib/astal/astal-gtk/astal-gtk.spec b/anda/lib/astal/astal-gtk/astal-gtk.spec index b55d311a50..7e0bb554a0 100644 --- a/anda/lib/astal/astal-gtk/astal-gtk.spec +++ b/anda/lib/astal/astal-gtk/astal-gtk.spec @@ -1,6 +1,6 @@ -%global commit 41b50290c6a1cdce7b482897c22fe49286912b9a -%global shortcommit 41b5029 -%global commit_date 20260320 +%global commit 271851bbc07748100382ae7caf6ef71c70c01bfc +%global shortcommit 271851b +%global commit_date 20260602 Name: astal Version: 0^%commit_date.%commit diff --git a/anda/lib/astal/astal/astal.spec b/anda/lib/astal/astal/astal.spec index 132381214b..6db2b80e9e 100644 --- a/anda/lib/astal/astal/astal.spec +++ b/anda/lib/astal/astal/astal.spec @@ -1,7 +1,7 @@ -%global commit 41b50290c6a1cdce7b482897c22fe49286912b9a +%global commit 948805f6e8cf7f8c08eba06ab1db1eef0e75e3a0 %global shortcommit %{sub %commit 1 7} -%global commit_date 20260320 +%global commit_date 20260613 Name: astal Version: 0^%commit_date.%shortcommit diff --git a/anda/lib/audec/libaudec.spec b/anda/lib/audec/libaudec.spec index 21c72412f3..65891801d0 100644 --- a/anda/lib/audec/libaudec.spec +++ b/anda/lib/audec/libaudec.spec @@ -32,8 +32,10 @@ This package contains the development files for the %name package. rm -r tests %endif -%build +%conf %meson + +%build %meson_build %install diff --git a/anda/lib/audec/update.rhai b/anda/lib/audec/update.rhai new file mode 100644 index 0000000000..f7ab7b7c02 --- /dev/null +++ b/anda/lib/audec/update.rhai @@ -0,0 +1 @@ +print(sourcehut("~alextee/libaudec")); diff --git a/anda/lib/backtrace/libbacktrace-nightly.spec b/anda/lib/backtrace/libbacktrace-nightly.spec index 97bfcf26d3..480bbba05d 100644 --- a/anda/lib/backtrace/libbacktrace-nightly.spec +++ b/anda/lib/backtrace/libbacktrace-nightly.spec @@ -1,8 +1,8 @@ %global debug_package %nil -%global commit b9e40069c0b47a722286b94eb5231f7f05c08713 +%global commit 549b81b43b46c0f361680561a626bf0e7b79dcbd %global shortcommit %(c=%commit; echo ${c:0:7}) -%global commit_date 20251107 +%global commit_date 20260603 %global _desc %{expand: A C library that may be linked into a C/C++ program to produce symbolic backtraces. @@ -10,7 +10,7 @@ A C library that may be linked into a C/C++ program to produce symbolic backtrac Name: libbacktrace-nightly Version: 1.0^%commit_date.%shortcommit -Release: 1%?dist +Release: 1%{?dist} Summary: Library to produce symbolic backtraces License: BSD-3-Clause URL: https://github.com/ianlancetaylor/libbacktrace @@ -36,13 +36,15 @@ This package contains the development files for the %name package. %prep %autosetup -n libbacktrace-%commit -%build +%conf autoreconf -fiv %configure \ --disable-static \ --enable-shared \ --with-system-libunwind \ --enable-silent-rules + +%build %make_build %check diff --git a/anda/lib/breakpad/breakpad.spec b/anda/lib/breakpad/breakpad.spec index 01f71de917..ed9f88fca8 100644 --- a/anda/lib/breakpad/breakpad.spec +++ b/anda/lib/breakpad/breakpad.spec @@ -14,7 +14,7 @@ BuildRequires: pkgconfig(gtest) BuildRequires: pkgconfig(zlib) BuildRequires: anda-srpm-macros -Packager: Willow Reed +Packager: Cypress Reed %description A set of client and server components which implement a crash-reporting system. @@ -32,11 +32,13 @@ mkdir -p src/third_party/lss cd src/third_party/lss tar -xzf %{SOURCE1} --strip-components=0 -%build +%conf export CFLAGS="$CFLAGS -Wno-error" export CXXFLAGS="$CXXFLAGS -Wno-error" %configure + +%build %make_build %install @@ -59,5 +61,8 @@ rm -rf %{buildroot}%{_docdir}/breakpad-0.1 %{_libexecdir}/core_handler %changelog -* Fri Jan 02 2026 Willow Reed +* Thu Jun 04 2026 Cypress Reed +- Update email and name (was Willow Reed or Willow C Reed) (I'm official now!) + +* Fri Jan 02 2026 Cypress Reed - Initial commit diff --git a/anda/lib/breakpad/update.rhai b/anda/lib/breakpad/update.rhai index df846a57b8..ec009aeafc 100644 --- a/anda/lib/breakpad/update.rhai +++ b/anda/lib/breakpad/update.rhai @@ -1 +1 @@ -rpm.version(gh("https://github.com/google/breakpad")); \ No newline at end of file +rpm.version(gh("google/breakpad")); diff --git a/anda/lib/cmake-extras/cmake-extras.spec b/anda/lib/cmake-extras/cmake-extras.spec index ac7a1a9375..65f6e54bf6 100644 --- a/anda/lib/cmake-extras/cmake-extras.spec +++ b/anda/lib/cmake-extras/cmake-extras.spec @@ -4,9 +4,9 @@ Name: cmake-extras Version: 1.9 -Release: 1%?dist +Release: 2%?dist Summary: A collection of add-ons for the CMake build tool -License: GPL-3.0 +License: GPL-3.0-or-later URL: https://gitlab.com/ubports/development/core/cmake-extras Source0: %{url}/-/archive/%commit/cmake-extras-%commit.tar.gz BuildArch: noarch @@ -31,8 +31,14 @@ sed -i 's/#!\/bin\/sh/#!\/usr\/bin\/sh/' src/CopyrightTest/check_copyright.sh sed -i 's/python/python3/' src/IncludeChecker/include_checker.py sed -i 'sX/usr/lib/qt5X${CMAKE_LIBDIR}/qt5X' src/QmlPlugins/QmlPluginsConfig.cmake +%conf +%if 0%{?fedora} >= 44 + %cmake -DCMAKE_POLICY_VERSION_MINIMUM=3.5 +%else + %cmake +%endif + %build -%cmake %cmake_build %install diff --git a/anda/lib/cmark-gfm/cmark-gfm.spec b/anda/lib/cmark-gfm/cmark-gfm.spec index 225eff124c..095b7f2144 100644 --- a/anda/lib/cmark-gfm/cmark-gfm.spec +++ b/anda/lib/cmark-gfm/cmark-gfm.spec @@ -43,7 +43,7 @@ Development files for %{name}. %autosetup -p1 %build -%cmake +%cmake -DCMAKE_POLICY_VERSION_MINIMUM=3.5 %cmake_build %install diff --git a/anda/lib/davs2/davs2.spec b/anda/lib/davs2/davs2.spec index c89632dde4..c1465e48b3 100644 --- a/anda/lib/davs2/davs2.spec +++ b/anda/lib/davs2/davs2.spec @@ -4,10 +4,10 @@ Name: davs2 Version: 1.7 -Release: 1%{?shortcommit:.%{date}git%{shortcommit}}%{?dist} +Release: 2%{?shortcommit:.%{date}git%{shortcommit}}%{?dist} Summary: An open-source decoder of AVS2-P2/IEEE1857.4 video coding standard URL: https://github.com/pkuvcl/%{name} -License: GPLv2 +License: GPL-2.0-or-later %if %len %{commit0} != 0 Source0: https://github.com/pkuvcl/%{name}/archive/%{commit0}/%{name}-%{commit0}.tar.gz#/%{name}-%{shortcommit0}.tar.gz @@ -50,7 +50,7 @@ This package contains the shared library development files. %autosetup %endif -%build +%conf cd build/linux %configure \ --bit-depth='8' \ @@ -67,6 +67,8 @@ sed -i \ -e 's|CFLAGS=.*%{optflags}|CFLAGS=%{optflags}|g' \ config.mak +%build +cd build/linux %make_build %install diff --git a/anda/lib/deviceinfo/deviceinfo.spec b/anda/lib/deviceinfo/deviceinfo.spec index a60e87c428..53f08b3bfa 100644 --- a/anda/lib/deviceinfo/deviceinfo.spec +++ b/anda/lib/deviceinfo/deviceinfo.spec @@ -4,17 +4,18 @@ Name: deviceinfo Version: 0.2.4 -Release: 1%?dist +Release: 2%?dist Summary: Library to detect and configure devices -License: GPLv3+ +License: GPL-3.0-or-later URL: https://gitlab.com/ubports/development/core/deviceinfo Source0: %{url}/-/archive/%commit/deviceinfo-%commit.tar.gz -Source1: https://salsa.debian.org/ubports-team/deviceinfo/-/raw/master/debian/device-info.1 BuildRequires: cmake BuildRequires: cmake-extras BuildRequires: pkgconfig(yaml-cpp) BuildRequires: gcc-c++ +BuildRequires: gtest-devel +BuildRequires: gmock-devel %description Library to detect and configure devices for Lomiri. @@ -30,13 +31,15 @@ developing applications that use %{name}. %prep %autosetup -n deviceinfo-%commit -%build +%conf %cmake + +%build %cmake_build %install %cmake_install -install -Dm644 '%{SOURCE1}' %{buildroot}%{_mandir}/man1/device-info.1 +install -Dm644 tools/device-info.1 %{buildroot}%{_mandir}/man1/device-info.1 %files %license LICENSE diff --git a/anda/lib/directxshadercompiler/DirectXShaderCompiler.spec b/anda/lib/directxshadercompiler/DirectXShaderCompiler.spec index 61a791ba5d..3a4eb97e68 100644 --- a/anda/lib/directxshadercompiler/DirectXShaderCompiler.spec +++ b/anda/lib/directxshadercompiler/DirectXShaderCompiler.spec @@ -3,8 +3,8 @@ # Metadata. Name: DirectXShaderCompiler -Version: 1.9.2602 -Release: 1%?dist +Version: 1.10.2605.24 +Release: 1%{?dist} Summary: A Direct X Shader compiler. License: MIT Packager: libffi diff --git a/anda/lib/dwarfs/dwarfs.spec b/anda/lib/dwarfs/dwarfs.spec index 3d8f674c77..fb842901a3 100644 --- a/anda/lib/dwarfs/dwarfs.spec +++ b/anda/lib/dwarfs/dwarfs.spec @@ -5,8 +5,8 @@ A fast high compression read-only file system for Linux and Windows.} %global _distro_extra_cxxflags -include %{_includedir}/c++/*/cstdint Name: dwarfs -Version: 0.15.1 -Release: 2%{?dist} +Version: 0.15.3 +Release: 1%{?dist} Summary: A fast high compression read-only file system for Linux, Windows and macOS License: GPL-3.0-or-later URL: https://github.com/mhx/%{name} diff --git a/anda/lib/fdk-aac/anda.hcl b/anda/lib/fdk-aac/anda.hcl index 1c976b995e..37bf464291 100644 --- a/anda/lib/fdk-aac/anda.hcl +++ b/anda/lib/fdk-aac/anda.hcl @@ -4,8 +4,8 @@ project pkg { spec = "fdk-aac.spec" } labels { - mock=1 + mock = 1 subrepo = "multimedia" - weekly = 1 + updbranch = 1 } } diff --git a/anda/lib/fdk-aac/fdk-aac.spec b/anda/lib/fdk-aac/fdk-aac.spec index 071a69aee1..7fe0d33a91 100644 --- a/anda/lib/fdk-aac/fdk-aac.spec +++ b/anda/lib/fdk-aac/fdk-aac.spec @@ -35,9 +35,11 @@ This package contains libraries and header files for developing applications tha %prep %autosetup -n %{name}-%{version} -%build +%conf autoreconf -vif %configure --disable-static + +%build %make_build %install diff --git a/anda/lib/fdk-aac/update.rhai b/anda/lib/fdk-aac/update.rhai index 9b3efb2d09..9ec7817f5b 100644 --- a/anda/lib/fdk-aac/update.rhai +++ b/anda/lib/fdk-aac/update.rhai @@ -1 +1,3 @@ -rpm.version(gh_tag("mstorsjo/fdk-aac")); +import "andax/bump_extras.rhai" as bump; + +rpm.version(bump::bodhi("fdk-aac-free", bump::as_bodhi_ver(labels.branch))); diff --git a/anda/lib/glaze/glaze.spec b/anda/lib/glaze/glaze.spec index a451a516a9..e0fe09e46a 100644 --- a/anda/lib/glaze/glaze.spec +++ b/anda/lib/glaze/glaze.spec @@ -2,7 +2,7 @@ %global debug_package %{nil} Name: glaze-devel -Version: 7.2.2 +Version: 7.8.1 Release: 1%{?dist} License: MIT URL: https://stephenberry.github.io/glaze diff --git a/anda/lib/gmenuharness/gmenuharness.spec b/anda/lib/gmenuharness/gmenuharness.spec index 555efbce71..4b2f7cb55f 100644 --- a/anda/lib/gmenuharness/gmenuharness.spec +++ b/anda/lib/gmenuharness/gmenuharness.spec @@ -4,9 +4,9 @@ Name: gmenuharness Version: 0.1.4 -Release: %autorelease +Release: 2%{?dist} Summary: GMenu harness library -License: LGPLv3 +License: LGPL-3.0-or-later URL: https://gitlab.com/ubports/development/core/gmenuharness Source0: %{url}/-/archive/%commit/gmenuharness-%commit.tar.gz diff --git a/anda/lib/grail/grail.spec b/anda/lib/grail/grail.spec index 8ee1dd6911..48cae7d135 100644 --- a/anda/lib/grail/grail.spec +++ b/anda/lib/grail/grail.spec @@ -38,7 +38,7 @@ developing applications that use %{name}. %prep %autosetup -n grail-%{version} -%build +%conf autoreconf --force --install PYTHON=%{__python3} export PYTHON @@ -49,6 +49,7 @@ export PYTHON --with-x11 \ --disable-static +%build %make_build %install diff --git a/anda/lib/inputtino/inputtino.spec b/anda/lib/inputtino/inputtino.spec index 0a17d1a316..1442d0ab72 100644 --- a/anda/lib/inputtino/inputtino.spec +++ b/anda/lib/inputtino/inputtino.spec @@ -1,4 +1,4 @@ -%global commit f4ce2b0df536ef309e9ff318f75b460f7097d7c1 +%global commit b887f6a37a4f6babea66ee7b9a79bc8f520d7554 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global commitdate 20250816 diff --git a/anda/lib/libayatana-appindicator-glib/libayatana-appindicator-glib.spec b/anda/lib/libayatana-appindicator-glib/libayatana-appindicator-glib.spec index c290528f63..4882695a2e 100644 --- a/anda/lib/libayatana-appindicator-glib/libayatana-appindicator-glib.spec +++ b/anda/lib/libayatana-appindicator-glib/libayatana-appindicator-glib.spec @@ -2,8 +2,8 @@ Name: libayatana-appindicator-glib Summary: Ayatana Application Indicators Shared Library -Version: 2.0.1 -Release: 2%?dist +Version: 2.0.3 +Release: 1%{?dist} License: GPL-3.0-or-later Packager: veuxit URL: https://github.com/AyatanaIndicators/libayatana-appindicator-glib @@ -25,8 +25,10 @@ Ayatana Application Indicators Shared Library (GLib-2.0 reimplementation, 100% G %prep %autosetup -n %{name}-%{version} +%conf +%cmake + %build -%cmake %cmake_build %install diff --git a/anda/lib/libayatana-common/libayatana-common.spec b/anda/lib/libayatana-common/libayatana-common.spec index d649cd8f52..73b48c73ba 100644 --- a/anda/lib/libayatana-common/libayatana-common.spec +++ b/anda/lib/libayatana-common/libayatana-common.spec @@ -1,8 +1,8 @@ Name: libayatana-common Summary: Common functions for Ayatana System Indicators -Version: 0.9.11 -Release: 2%?dist -License: GPL-3.0 +Version: 0.9.12 +Release: 1%{?dist} +License: GPL-3.0-or-later URL: https://github.com/AyatanaIndicators/libayatana-common Source0: %{url}/archive/refs/tags/%{version}.tar.gz @@ -17,6 +17,8 @@ BuildRequires: pkgconfig(gobject-introspection-1.0) BuildRequires: vala-devel BuildRequires: vala BuildRequires: intltool +BuildRequires: gcc-c++ +BuildRequires: gtest-devel %description The Ayatana Indicators project is the continuation of Application Indicators @@ -33,11 +35,12 @@ This package contains the development header files for %{name}. %prep %autosetup -n %{name}-%{version} -%build +%conf %cmake -DENABLE_LOMIRI_FEATURES=ON \ -DENABLE_TESTS=ON \ -DENABLE_COVERAGE=OFF +%build %cmake_build %install diff --git a/anda/lib/libbismuth/libbismuth.spec b/anda/lib/libbismuth/libbismuth.spec index be80f6c288..d1cb9d8cb8 100644 --- a/anda/lib/libbismuth/libbismuth.spec +++ b/anda/lib/libbismuth/libbismuth.spec @@ -33,13 +33,13 @@ for writing applications with libbismuth. %prep %autosetup -n libbismuth-%{version} -%build +%conf %meson + +%build %meson_build %install -# Install licenses -mkdir -p licenses %meson_install rm -rf %{buildroot}%{_bindir}/blueprint-compiler diff --git a/anda/lib/libde265/libde265.spec b/anda/lib/libde265/libde265.spec index 68750a6a2f..56d99ccf24 100644 --- a/anda/lib/libde265/libde265.spec +++ b/anda/lib/libde265/libde265.spec @@ -1,6 +1,6 @@ Name: libde265 Summary: Open H.265 video codec implementation -Version: 1.0.18 +Version: 1.1.1 Release: 1%{?dist} License: LGPL-3.0-or-later URL: https://www.libde265.org/ @@ -41,9 +41,11 @@ Various sample and test applications using %{name} are provided by this package. %prep %autosetup -%build +%conf autoreconf -vif %configure --disable-silent-rules --disable-static --enable-encoder + +%build %make_build %install diff --git a/anda/lib/libfiber/libfiber.spec b/anda/lib/libfiber/libfiber.spec index 7a7095e49c..0d887f16a0 100644 --- a/anda/lib/libfiber/libfiber.spec +++ b/anda/lib/libfiber/libfiber.spec @@ -7,12 +7,12 @@ The library enables developers to write highly concurrent applications using syn Name: libfiber-devel Version: 1.1.0 -Release: 1%?dist +Release: 2%?dist URL: https://deepwiki.com/iqiyi/libfiber Source0: https://github.com/iqiyi/libfiber/archive/refs/tags/v%version.tar.gz Patch0: add-missing-header.patch Summary: The high performance c/c++ coroutine/fiber library for Linux/FreeBSD/MacOS/Windows, supporting select/poll/epoll/kqueue/iouring/iocp/windows GUI -License: LGPL-3.0 +License: LGPL-3.0-or-later ExclusiveArch: x86_64 Packager: Owen Zimmerman diff --git a/anda/lib/libtrueforce/anda.hcl b/anda/lib/libtrueforce/anda.hcl new file mode 100644 index 0000000000..6b598949a3 --- /dev/null +++ b/anda/lib/libtrueforce/anda.hcl @@ -0,0 +1,10 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "libtrueforce.spec" + } + labels { + updbranch = 1 + mock = 1 + } +} diff --git a/anda/lib/libtrueforce/libtrueforce.spec b/anda/lib/libtrueforce/libtrueforce.spec new file mode 100644 index 0000000000..06ceb70d96 --- /dev/null +++ b/anda/lib/libtrueforce/libtrueforce.spec @@ -0,0 +1,70 @@ +%global commit 1635bbd0ea044d1c3681b1843b5a0f3e878d0ed0 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260504 +%global debug_package %{nil} + +Name: libtrueforce +Version: 1.3.11^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +Summary: Native Linux implementation of the Logitech Trueforce SDK +License: GPL-2.0-only +URL: https://github.com/mescon/logitech-rs50-linux-driver +Source0: %{url}/archive/%{commit}.tar.gz#/%{name}-%{shortcommit}.tar.gz +BuildRequires: gcc +BuildRequires: make +Requires: logitech-rs50-linux-driver +Provides: trueforce-sdk = %{?epoch:%{epoch}:}%{version} +Packager: Luan V. + + +%description +Native Linux implementation of the Logitech Trueforce SDK +(trueforce_sdk_x64.dll, version 1.3.11). Supports both the RS50 (046d:c276) and +the G Pro Racing Wheel (046d:c272 / 046d:c268) the two wheels use byte-for-byte +identical init and streaming packets, so the same library drives both. See +docs/TRUEFORCE_PROTOCOL.md in the parent repo for the protocol documentation. + +%package static +Summary: Static library for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description static +The %{name}-static package contains the static library for %{name}. + + +%package devel +Summary: Development files for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +The %{name}-devel package contains libraries and header files for +developing applications that use %{name}. + +%prep +%autosetup -c -n %{name}-%{commit} +mv ./logitech-rs50-linux-driver-%{commit}/userspace/%{name}/* . +mv ./logitech-rs50-linux-driver-%{commit}/docs/TRUEFORCE_PROTOCOL.md . +rm -rf ./logitech-rs50-linux-driver-%{commit} + +%build +%make_build PREFIX=%{_prefix} LIBDIR=%{_libdir} CFLAGS="%{build_cflags}" + +%install +%make_install PREFIX=%{_prefix} LIBDIR=%{_libdir} +install -D -m644 %{name}.a %{buildroot}%{_libdir}/ + +%files +%doc README.md TRUEFORCE_PROTOCOL.md +%{_libdir}/*.so.* + +%files devel +%{_libdir}/*.so +%{_includedir}/trueforce.h + +%files static +%{_libdir}/*.a + + +%changelog +* Fri May 01 2026 Luan V. - 1.3.11^20260430git.df7f149-1 +- Initial package diff --git a/anda/lib/libtrueforce/update.rhai b/anda/lib/libtrueforce/update.rhai new file mode 100644 index 0000000000..d55bf59bae --- /dev/null +++ b/anda/lib/libtrueforce/update.rhai @@ -0,0 +1,9 @@ + let c = sh("cat anda/system/logitech-rs50-linux-driver/kmod-common/logitech-rs50-linux-driver.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; +c.pop(); +rpm.global("commit", c); +if rpm.changed() { + rpm.release(); + let d = sh("cat anda/system/logitech-rs50-linux-driver/kmod-common/logitech-rs50-linux-driver.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; + d.pop(); + rpm.global("commitdate", d); +} diff --git a/anda/lib/libusermetrics/libusermetrics.spec b/anda/lib/libusermetrics/libusermetrics.spec index 5e299fa946..10f9928671 100644 --- a/anda/lib/libusermetrics/libusermetrics.spec +++ b/anda/lib/libusermetrics/libusermetrics.spec @@ -1,8 +1,8 @@ Name: libusermetrics Version: 1.4.1 -Release: 1%?dist +Release: 2%?dist Summary: library for retrieving anonymous metrics about users -License: GPLv3 AND LGPLv3 AND LGPLv2 +License: GPL-3.0-or-later AND LGPL-3.0-or-later AND LGPL-2.1-or-later URL: https://gitlab.com/ubports/development/core/libusermetrics Source0: %url/-/archive/%version/libusermetrics-%version.tar.gz @@ -20,6 +20,8 @@ BuildRequires: pkgconfig(libqtdbustest-1) BuildRequires: pkgconfig(libapparmor) BuildRequires: qdjango-devel BuildRequires: fdupes +BuildRequires: gmock-devel +BuildRequires: gtest-devel %description library for retrieving anonymous metrics about users @@ -55,7 +57,7 @@ The %{name}-doc contains documentation for %{name}. %files -f %{name}.lang %doc ChangeLog %license LGPL_EXCEPTION.txt LICENSE.GPL LICENSE.LGPL LICENSE.LGPL-3 -%{_sysconfdir}/dbus-1/system.d/com.lomiri.UserMetrics.conf +%{_datadir}/dbus-1/system.d/com.lomiri.UserMetrics.conf %{_bindir}/usermetricsinput %{_bindir}/usermetricsinput-increment %{_libdir}/libusermetricsinput.so.* diff --git a/anda/lib/lsp-dsp/liblsp-dsp.spec b/anda/lib/lsp-dsp/liblsp-dsp.spec index 46079f0578..99d7a8814d 100644 --- a/anda/lib/lsp-dsp/liblsp-dsp.spec +++ b/anda/lib/lsp-dsp/liblsp-dsp.spec @@ -3,7 +3,7 @@ #define _empty_manifest_terminate_build 0 Name: liblsp-dsp -Version: 1.0.34 +Version: 1.0.36 Release: 1%{?dist} Summary: DSP library for signal processing License: LGPL-3.0 diff --git a/anda/lib/mesa-compat/0001-c11-threads-fix-build-on-fedora-44.patch b/anda/lib/mesa-compat/0001-c11-threads-fix-build-on-fedora-44.patch new file mode 100644 index 0000000000..71322c9a45 --- /dev/null +++ b/anda/lib/mesa-compat/0001-c11-threads-fix-build-on-fedora-44.patch @@ -0,0 +1,47 @@ +From 6e3646c81143477008e448d3b0b5c349169e4112 Mon Sep 17 00:00:00 2001 +From: Dave Airlie +Date: Fri, 7 Nov 2025 13:14:56 +1000 +Subject: [PATCH] c11/threads: fix build on fedora 44. + +glibc is now including once_init in stdlib.h + +https://patchwork.sourceware.org/project/glibc/patch/78061085-f04a-0c45-107b-5a8a15521083@redhat.com/#213088 + +Just fix up our use of it. +--- + src/c11/impl/threads_posix.c | 2 +- + src/c11/threads.h | 3 +++ + 2 files changed, 4 insertions(+), 1 deletion(-) + +diff --git a/src/c11/impl/threads_posix.c b/src/c11/impl/threads_posix.c +index 3b8692482bb..4769c029bad 100644 +--- a/src/c11/impl/threads_posix.c ++++ b/src/c11/impl/threads_posix.c +@@ -49,7 +49,7 @@ impl_thrd_routine(void *p) + void + call_once(once_flag *flag, void (*func)(void)) + { +- pthread_once(flag, func); ++ pthread_once((pthread_once_t *)flag, func); + } + + +diff --git a/src/c11/threads.h b/src/c11/threads.h +index dbcb3459a9b..053636f6674 100644 +--- a/src/c11/threads.h ++++ b/src/c11/threads.h +@@ -118,8 +118,11 @@ typedef pthread_cond_t cnd_t; + typedef pthread_t thrd_t; + typedef pthread_key_t tss_t; + typedef pthread_mutex_t mtx_t; ++#ifndef __once_flag_defined ++#define __once_flag_defined 1 + typedef pthread_once_t once_flag; + # define ONCE_FLAG_INIT PTHREAD_ONCE_INIT ++#endif + # ifdef PTHREAD_DESTRUCTOR_ITERATIONS + # define TSS_DTOR_ITERATIONS PTHREAD_DESTRUCTOR_ITERATIONS + # else +-- +2.51.1 + diff --git a/anda/lib/mesa-compat/cd129dbf8af2d16b1243f2ce287ff69c6a5dc557.patch b/anda/lib/mesa-compat/cd129dbf8af2d16b1243f2ce287ff69c6a5dc557.patch new file mode 100644 index 0000000000..59efa33fe3 --- /dev/null +++ b/anda/lib/mesa-compat/cd129dbf8af2d16b1243f2ce287ff69c6a5dc557.patch @@ -0,0 +1,54 @@ +From cd129dbf8af2d16b1243f2ce287ff69c6a5dc557 Mon Sep 17 00:00:00 2001 +From: no92 +Date: Wed, 27 Aug 2025 16:02:31 +0200 +Subject: [PATCH] gallivm: support LLVM 21 + +LLVM PR#146819 changed the signature of `setObjectLinkingLayerCreator`, +dropping the Triple argument. The PR was first included in the LLVM 21 +series, and the new signature is gated behind a version check for that. + +`LLVMOrcThreadSafeContextGetContext` was removed in LLVM commit b18e5b6, +and the ORC examples in the LLVM tree seem to just create a context +instead, which we replicate here. + +With this commit, mesa successfully builds the llvmpipe gallium driver +on riscv64 with LLVM 21.1.0. + +Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13785 +Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13852 + +Reviewed-by: David Heidelberg +Part-of: +--- + src/gallium/auxiliary/gallivm/lp_bld_init_orc.cpp | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/src/gallium/auxiliary/gallivm/lp_bld_init_orc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_init_orc.cpp +index 6651ea439da86..e5d8e461dd6c0 100644 +--- a/src/gallium/auxiliary/gallivm/lp_bld_init_orc.cpp ++++ b/src/gallium/auxiliary/gallivm/lp_bld_init_orc.cpp +@@ -339,7 +339,12 @@ LPJit::LPJit() :jit_dylib_count(0) { + .setJITTargetMachineBuilder(std::move(JTMB)) + #ifdef USE_JITLINK + .setObjectLinkingLayerCreator( ++#if LLVM_VERSION_MAJOR >= 21 ++ /* LLVM 21 removed the Triple argument */ ++ [&](ExecutionSession &ES) { ++#else + [&](ExecutionSession &ES, const llvm::Triple &TT) { ++#endif + return std::make_unique( + ES, ExitOnErr(llvm::jitlink::InProcessMemoryManager::Create())); + }) +@@ -551,7 +556,7 @@ init_gallivm_state(struct gallivm_state *gallivm, const char *name, + gallivm->cache = cache; + + gallivm->_ts_context = context->ref; +- gallivm->context = LLVMOrcThreadSafeContextGetContext(context->ref); ++ gallivm->context = LLVMContextCreate(); + + gallivm->module_name = LPJit::get_unique_name(name); + gallivm->module = LLVMModuleCreateWithNameInContext(gallivm->module_name, +-- +GitLab + diff --git a/anda/lib/mesa-compat/mesa-compat.spec b/anda/lib/mesa-compat/mesa-compat.spec index 059903ac53..b3d67f5693 100644 --- a/anda/lib/mesa-compat/mesa-compat.spec +++ b/anda/lib/mesa-compat/mesa-compat.spec @@ -1,21 +1,30 @@ %global origname mesa +# We've gotten a report that enabling LTO for mesa breaks some games. See +# https://bugzilla.redhat.com/show_bug.cgi?id=1862771 for details. +# Disable LTO for now +%global _lto_cflags %nil + Name: %{origname}-compat Summary: Mesa graphics libraries - legacy compatibility libraries %global ver 25.0.7 Version: %{lua:ver = string.gsub(rpm.expand("%{ver}"), "-", "~"); print(ver)} -Release: 2%{?dist} +Release: 3%{?dist} Epoch: 1 License: MIT AND BSD-3-Clause AND SGI-B-2.0 URL: http://www.mesa3d.org - Source0: https://archive.mesa3d.org/mesa-%{ver}.tar.xz # src/gallium/auxiliary/postprocess/pp_mlaa* have an ... interestingly worded license. # Source1 contains email correspondence clarifying the license terms. # Fedora opts to ignore the optional part of clause 2 and treat that code as 2 clause BSD. Source1: Mesa-MLAA-License-Clarification-Email.txt -# Keep Mesa builds relatively the same -Patch0: bazzite.patch +# fix c11/threads builds problem on f44 +Patch0: 0001-c11-threads-fix-build-on-fedora-44.patch +# Support LLVM 21 +Patch1: cd129dbf8af2d16b1243f2ce287ff69c6a5dc557.patch + +# Older version of the Bazzite/OGC patches +Patch2: bazzite.patch BuildRequires: meson >= 1.3.0 BuildRequires: gcc @@ -44,7 +53,9 @@ BuildRequires: python3-pyyaml Summary: Mesa XA state tracker Provides: libxatracker%{?_isa} Provides: mesa-libxatracker%{?_isa} -Obsoletes: mesa-libxatracker < %{?epoch:%{epoch}:}25.3 +Obsoletes: mesa-libxatracker < 25.3 +# New things should not rely on this as this library is dead upstream +Provides: deprecated() %description libxatracker %{summary}. @@ -52,7 +63,9 @@ Obsoletes: mesa-libxatracker < %{?epoch:%{epoch}:}25.3 %package libxatracker-devel Summary: Mesa XA state tracker development package Requires: %{name}-libxatracker%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} -Obsoletes: mesa-libxatracker-devel < %{?epoch:%{epoch}:}25.3 +Obsoletes: mesa-libxatracker-devel < 25.3 +# New things should not rely on this as this library is dead upstream +Provides: deprecated() %description libxatracker-devel %{summary}. @@ -81,11 +94,6 @@ Provides: deprecated() cp %{SOURCE1} docs/ %build -# We've gotten a report that enabling LTO for mesa breaks some games. See -# https://bugzilla.redhat.com/show_bug.cgi?id=1862771 for details. -# Disable LTO for now -%define _lto_cflags %{nil} - %meson \ -Dplatforms= \ -Dosmesa=true \ @@ -149,4 +157,5 @@ rm -rf %{buildroot}%{_includedir}/KHR %{_libdir}/pkgconfig/xatracker.pc %changelog -%autochangelog +* Sun Apr 26 2026 Gilver E. - 25.0.7-3 +- Updated build for Fedora 44 diff --git a/anda/lib/mesa/mesa.spec b/anda/lib/mesa/mesa.spec index 830da80b99..06f818d3e2 100644 --- a/anda/lib/mesa/mesa.spec +++ b/anda/lib/mesa/mesa.spec @@ -84,10 +84,10 @@ Name: %{srcname} Summary: Mesa graphics libraries -%global ver 26.0.3 +%global ver 26.1.0 Epoch: 1 Version: %{lua:ver = string.gsub(rpm.expand("%{ver}"), "-", "~"); print(ver)} -Release: 1 +Release: 1%{?dist} Packager: Kyle Gospodnetich License: MIT AND BSD-3-Clause AND SGI-B-2.0 URL: https://mesa3d.org @@ -130,7 +130,7 @@ BuildRequires: systemd-devel # We only check for the minimum version of pkgconfig(libdrm) needed so that the # SRPMs for each arch still have the same build dependencies. See: # https://bugzilla.redhat.com/show_bug.cgi?id=1859515 -BuildRequires: pkgconfig(libdrm) >= 2.4.122 +BuildRequires: pkgconfig(libdrm) >= 2.4.133 %if 0%{?with_libunwind} BuildRequires: pkgconfig(libunwind) %endif @@ -191,6 +191,9 @@ BuildRequires: rust-toolset BuildRequires: cargo-rpm-macros %endif %endif +%if 0%{?with_opencl} +BuildRequires: libstdc++-static +%endif %if 0%{?with_nvk} BuildRequires: cbindgen %endif @@ -207,7 +210,7 @@ BuildRequires: glslang BuildRequires: pkgconfig(vulkan) %endif %if 0%{?with_d3d12} -BuildRequires: pkgconfig(DirectX-Headers) >= 1.618.1 +BuildRequires: pkgconfig(DirectX-Headers) >= 1.619.1 %endif %description @@ -268,11 +271,11 @@ Provides: libEGL-devel%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} %package dri-drivers Summary: Mesa-based DRI drivers Requires: %{name}-filesystem%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} +Requires: %{name}-libgbm%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} Obsoletes: %{name}-libglapi < %{?epoch:%{epoch}:}25.0.0~rc2-1 -Provides: %{name}-libglapi >= %{?epoch:%{epoch}:}25.0.0~rc2-1 - Obsoletes: %{name}-va-drivers < %{?epoch:%{epoch}:}26.0.0-5 -Provides: %{name}-va-drivers >= %{?epoch:%{epoch}:}26.0.0-5 +Provides: %{name}-va-drivers = %{?epoch:%{epoch}:}%{version}-%{release} +Provides: %{name}-va-drivers%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} Obsoletes: %{name}-vaapi-drivers < %{?epoch:%{epoch}:}22.2.0-5 %description dri-drivers @@ -343,8 +346,6 @@ Summary: Mesa Vulkan drivers Requires: vulkan%{_isa} Requires: %{name}-filesystem%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} Obsoletes: mesa-vulkan-devel < %{?epoch:%{epoch}:}%{version}-%{release} -# Bad change from upstream Fedora -#Obsoletes: VK_hdr_layer < 1 %description vulkan-drivers The drivers with support for the Vulkan API. @@ -503,7 +504,7 @@ rm -vf %{buildroot}%{_libdir}/dri/apple_dri.so # glvnd needs a default provider for indirect rendering where it cannot # determine the vendor -ln -s %{_libdir}/libGLX_mesa.so.0 %{buildroot}%{_libdir}/libGLX_system.so.0 +ln -s libGLX_mesa.so.0 %{buildroot}%{_libdir}/libGLX_system.so.0 %files filesystem %doc docs/Mesa-MLAA-License-Clarification-Email.txt diff --git a/anda/lib/nvidia/cuda-cccl/cuda-cccl.spec b/anda/lib/nvidia/cuda-cccl/cuda-cccl.spec index 81c1cbc2db..2d56283532 100644 --- a/anda/lib/nvidia/cuda-cccl/cuda-cccl.spec +++ b/anda/lib/nvidia/cuda-cccl/cuda-cccl.spec @@ -5,7 +5,7 @@ Name: %(echo %real_name | tr '_' '-') Epoch: 1 -Version: 13.2.27 +Version: 13.2.75 Release: 1%{?dist} Summary: CXX Core Compute Libraries License: CUDA Toolkit diff --git a/anda/lib/nvidia/cuda-cudart/cuda-cudart.spec b/anda/lib/nvidia/cuda-cudart/cuda-cudart.spec index b1847c606c..b088a0226f 100644 --- a/anda/lib/nvidia/cuda-cudart/cuda-cudart.spec +++ b/anda/lib/nvidia/cuda-cudart/cuda-cudart.spec @@ -8,7 +8,7 @@ Name: %(echo %real_name | tr '_' '-') Epoch: 1 -Version: 13.2.51 +Version: 13.3.29 Release: 1%{?dist} Summary: CUDA Runtime API library License: CUDA Toolkit diff --git a/anda/lib/nvidia/cuda-cudnn/cuda-cudnn.spec b/anda/lib/nvidia/cuda-cudnn/cuda-cudnn.spec index fcd6385665..71267dba6c 100644 --- a/anda/lib/nvidia/cuda-cudnn/cuda-cudnn.spec +++ b/anda/lib/nvidia/cuda-cudnn/cuda-cudnn.spec @@ -2,10 +2,10 @@ %global __strip /bin/true %global _missing_build_ids_terminate_build 0 %global _build_id_links none -%global cuda_version 12 +%global cuda_version 13 Name: cuda-cudnn -Version: 9.20.0.48 +Version: 9.23.1.3 Release: 1%{?dist} Epoch: 1 Summary: NVIDIA CUDA Deep Neural Network library (cuDNN) diff --git a/anda/lib/nvidia/cuda-culibos/cuda-culibos.spec b/anda/lib/nvidia/cuda-culibos/cuda-culibos.spec index 5beaca96ec..ac30881f6e 100644 --- a/anda/lib/nvidia/cuda-culibos/cuda-culibos.spec +++ b/anda/lib/nvidia/cuda-culibos/cuda-culibos.spec @@ -8,7 +8,7 @@ Name: %(echo %real_name | tr '_' '-')-devel Epoch: 1 -Version: 13.2.51 +Version: 13.3.33 Release: 1%{?dist} Summary: CUDA Culibos Math development library License: CUDA Toolkit diff --git a/anda/lib/nvidia/cuda-cuobjdump/cuda-cuobjdump.spec b/anda/lib/nvidia/cuda-cuobjdump/cuda-cuobjdump.spec index baea244292..aa66714977 100644 --- a/anda/lib/nvidia/cuda-cuobjdump/cuda-cuobjdump.spec +++ b/anda/lib/nvidia/cuda-cuobjdump/cuda-cuobjdump.spec @@ -8,7 +8,7 @@ Name: %(echo %real_name | tr '_' '-') Epoch: 1 -Version: 13.2.51 +Version: 13.3.29 Release: 1%{?dist} Summary: Utility to extract information from CUDA binary files License: CUDA Toolkit diff --git a/anda/lib/nvidia/cuda-cupti/cuda-cupti.spec b/anda/lib/nvidia/cuda-cupti/cuda-cupti.spec index 66bb6d277d..ba6ddfe531 100644 --- a/anda/lib/nvidia/cuda-cupti/cuda-cupti.spec +++ b/anda/lib/nvidia/cuda-cupti/cuda-cupti.spec @@ -8,7 +8,7 @@ Name: %(echo %real_name | tr '_' '-') Epoch: 1 -Version: 13.2.23 +Version: 13.3.35 Release: 1%{?dist} Summary: NVIDIA CUDA Profiling Tools Interface (CUPTI) library License: CUDA Toolkit diff --git a/anda/lib/nvidia/cuda-cuxxfilt/cuda-cuxxfilt.spec b/anda/lib/nvidia/cuda-cuxxfilt/cuda-cuxxfilt.spec index 28f2aa445e..6dcccc115f 100644 --- a/anda/lib/nvidia/cuda-cuxxfilt/cuda-cuxxfilt.spec +++ b/anda/lib/nvidia/cuda-cuxxfilt/cuda-cuxxfilt.spec @@ -8,7 +8,7 @@ Name: %(echo %real_name | tr '_' '-') Epoch: 1 -Version: 13.2.51 +Version: 13.3.29 Release: 1%{?dist} Summary: CUDA cuxxfilt (demangler) License: CUDA Toolkit diff --git a/anda/lib/nvidia/cuda-gdb/cuda-gdb.spec b/anda/lib/nvidia/cuda-gdb/cuda-gdb.spec index b9f6900585..03c474d5cb 100644 --- a/anda/lib/nvidia/cuda-gdb/cuda-gdb.spec +++ b/anda/lib/nvidia/cuda-gdb/cuda-gdb.spec @@ -7,10 +7,10 @@ Name: %(echo %real_name | tr '_' '-') Epoch: 1 -Version: 13.2.20 +Version: 13.3.27 Release: 1%{?dist} Summary: CUDA GDB -License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ and GPLv2+ with exceptions and GPL+ and LGPLv2+ and LGPLv3+ and BSD and Public Domain and GFDL +License: GPL-3.0-or-later AND GPL-3.0-or-later with exceptions AND GPL-2.0-or-later AND GPL-2.0-or-later with exceptions AND GPL-1.0-or-later AND LGPL-2.0-or-later AND LGPL-3.0-or-later AND BSD AND LicenseRef-Fedora-Public-Domain AND GFDL URL: https://developer.nvidia.com/cuda-toolkit ExclusiveArch: x86_64 aarch64 diff --git a/anda/lib/nvidia/cuda-nvdisasm/cuda-nvdisasm.spec b/anda/lib/nvidia/cuda-nvdisasm/cuda-nvdisasm.spec index 6f408811ad..5c3ba80d0f 100644 --- a/anda/lib/nvidia/cuda-nvdisasm/cuda-nvdisasm.spec +++ b/anda/lib/nvidia/cuda-nvdisasm/cuda-nvdisasm.spec @@ -8,7 +8,7 @@ Name: %(echo %real_name | tr '_' '-') Epoch: 1 -Version: 13.2.51 +Version: 13.3.29 Release: 1%{?dist} Summary: Utility to extract information from CUDA binary files License: CUDA Toolkit diff --git a/anda/lib/nvidia/cuda-nvml/cuda-nvml.spec b/anda/lib/nvidia/cuda-nvml/cuda-nvml.spec index b38388e1b0..2e58cbe62e 100644 --- a/anda/lib/nvidia/cuda-nvml/cuda-nvml.spec +++ b/anda/lib/nvidia/cuda-nvml/cuda-nvml.spec @@ -8,7 +8,7 @@ Name: cuda-nvml Epoch: 1 -Version: 13.2.51 +Version: 13.3.29 Release: 1%{?dist} Summary: NVIDIA Management library (NVML) License: CUDA Toolkit diff --git a/anda/lib/nvidia/cuda-nvprune/cuda-nvprune.spec b/anda/lib/nvidia/cuda-nvprune/cuda-nvprune.spec index 7caf40cde9..b4a577b7b9 100644 --- a/anda/lib/nvidia/cuda-nvprune/cuda-nvprune.spec +++ b/anda/lib/nvidia/cuda-nvprune/cuda-nvprune.spec @@ -8,7 +8,7 @@ Name: %(echo %real_name | tr '_' '-') Epoch: 1 -Version: 13.2.51 +Version: 13.3.29 Release: 1%{?dist} Summary: CUDA nvprune License: CUDA Toolkit diff --git a/anda/lib/nvidia/cuda-nvrtc/cuda-nvrtc.spec b/anda/lib/nvidia/cuda-nvrtc/cuda-nvrtc.spec index 402f03985b..20ad6478be 100644 --- a/anda/lib/nvidia/cuda-nvrtc/cuda-nvrtc.spec +++ b/anda/lib/nvidia/cuda-nvrtc/cuda-nvrtc.spec @@ -8,7 +8,7 @@ Name: %(echo %real_name | tr '_' '-') Epoch: 1 -Version: 13.2.51 +Version: 13.3.33 Release: 1%{?dist} Summary: CUDA runtime compilation library (NVRTC) License: CUDA Toolkit diff --git a/anda/lib/nvidia/cuda-nvtx/cuda-nvtx.spec b/anda/lib/nvidia/cuda-nvtx/cuda-nvtx.spec index fa1aa0cb79..c01bd7338a 100644 --- a/anda/lib/nvidia/cuda-nvtx/cuda-nvtx.spec +++ b/anda/lib/nvidia/cuda-nvtx/cuda-nvtx.spec @@ -8,7 +8,7 @@ Name: %(echo %real_name | tr '_' '-') Epoch: 1 -Version: 13.2.20 +Version: 13.3.29 Release: 1%{?dist} Summary: NVIDIA Tools Extension (NVTX) library License: CUDA Toolkit diff --git a/anda/lib/nvidia/cuda-profiler/cuda-profiler.spec b/anda/lib/nvidia/cuda-profiler/cuda-profiler.spec index b760028b04..56cff10f83 100644 --- a/anda/lib/nvidia/cuda-profiler/cuda-profiler.spec +++ b/anda/lib/nvidia/cuda-profiler/cuda-profiler.spec @@ -5,7 +5,7 @@ Name: cuda-profiler Epoch: 1 -Version: 13.2.20 +Version: 13.3.27 Release: 1%{?dist} Summary: CUDA Profiler API License: CUDA Toolkit diff --git a/anda/lib/nvidia/cuda-sandbox/cuda-sandbox.spec b/anda/lib/nvidia/cuda-sandbox/cuda-sandbox.spec index 106a77a903..6b44011535 100644 --- a/anda/lib/nvidia/cuda-sandbox/cuda-sandbox.spec +++ b/anda/lib/nvidia/cuda-sandbox/cuda-sandbox.spec @@ -8,7 +8,7 @@ Name: cuda-sandbox Epoch: 1 -Version: 13.2.51 +Version: 13.3.29 Release: 1%{?dist} Summary: CUDA nvsandboxutils License: CUDA Toolkit diff --git a/anda/lib/nvidia/cuda-sanitizer/cuda-sanitizer.spec b/anda/lib/nvidia/cuda-sanitizer/cuda-sanitizer.spec index f4a035ebb0..58151b33f3 100644 --- a/anda/lib/nvidia/cuda-sanitizer/cuda-sanitizer.spec +++ b/anda/lib/nvidia/cuda-sanitizer/cuda-sanitizer.spec @@ -8,7 +8,7 @@ Name: cuda-sanitizer Epoch: 1 -Version: 13.2.23 +Version: 13.3.27 Release: 1%{?dist} Summary: CUDA Compute Sanitizer API License: CUDA Toolkit diff --git a/anda/lib/nvidia/cuda/cuda.spec b/anda/lib/nvidia/cuda/cuda.spec index 1fc8190472..6ab7b6fd32 100644 --- a/anda/lib/nvidia/cuda/cuda.spec +++ b/anda/lib/nvidia/cuda/cuda.spec @@ -2,7 +2,7 @@ %global major_package_version 13-0 Name: cuda -Version: 13.2.51 +Version: 13.3.40 Release: 1%{?dist} Summary: NVIDIA Compute Unified Device Architecture Toolkit Epoch: 1 diff --git a/anda/lib/nvidia/libcublas/libcublas.spec b/anda/lib/nvidia/libcublas/libcublas.spec index d5dc19cce7..8e3e01a4fd 100644 --- a/anda/lib/nvidia/libcublas/libcublas.spec +++ b/anda/lib/nvidia/libcublas/libcublas.spec @@ -6,7 +6,7 @@ Name: libcublas Epoch: 1 -Version: 13.3.0.5 +Version: 13.5.1.27 Release: 1%{?dist} Summary: NVIDIA CUDA Basic Linear Algebra Subroutines (cuBLAS) libraries License: CUDA Toolkit diff --git a/anda/lib/nvidia/libcudla/libcudla.spec b/anda/lib/nvidia/libcudla/libcudla.spec index ed66cb4c27..d149a2f7f9 100644 --- a/anda/lib/nvidia/libcudla/libcudla.spec +++ b/anda/lib/nvidia/libcudla/libcudla.spec @@ -6,7 +6,7 @@ Name: libcudla Epoch: 1 -Version: 13.2.51 +Version: 13.3.29 Release: 1%{?dist} Summary: NVIDIA CUDA Deep Learning Accelerator (DLA) engines (Jetson Xavier + Orin) License: CUDA Toolkit diff --git a/anda/lib/nvidia/libcufft/libcufft.spec b/anda/lib/nvidia/libcufft/libcufft.spec index f6e411e9ed..1af10a9d10 100644 --- a/anda/lib/nvidia/libcufft/libcufft.spec +++ b/anda/lib/nvidia/libcufft/libcufft.spec @@ -6,7 +6,7 @@ Name: libcufft Epoch: 2 -Version: 12.2.0.37 +Version: 12.3.0.29 Release: 1%{?dist} Summary: NVIDIA CUDA Fast Fourier Transform library (cuFFT) libraries License: CUDA Toolkit diff --git a/anda/lib/nvidia/libcufile/libcufile.spec b/anda/lib/nvidia/libcufile/libcufile.spec index 7766c3eefe..a2f5d529a4 100644 --- a/anda/lib/nvidia/libcufile/libcufile.spec +++ b/anda/lib/nvidia/libcufile/libcufile.spec @@ -6,7 +6,7 @@ Name: libcufile Epoch: 1 -Version: 1.17.0.44 +Version: 1.18.0.66 Release: 1%{?dist} Summary: NVIDIA GPUDirect Storage library (cuFile) License: CUDA Toolkit diff --git a/anda/lib/nvidia/libcurand/libcurand.spec b/anda/lib/nvidia/libcurand/libcurand.spec index 31075e048f..c575b58ff5 100644 --- a/anda/lib/nvidia/libcurand/libcurand.spec +++ b/anda/lib/nvidia/libcurand/libcurand.spec @@ -6,7 +6,7 @@ Name: libcurand Epoch: 2 -Version: 10.4.2.51 +Version: 10.4.3.29 Release: 1%{?dist} Summary: NVIDIA CUDA Random Number Generation library (cuRAND) License: CUDA Toolkit diff --git a/anda/lib/nvidia/libcusolver/libcusolver.spec b/anda/lib/nvidia/libcusolver/libcusolver.spec index 7319553cd9..8a4ee7bf3b 100644 --- a/anda/lib/nvidia/libcusolver/libcusolver.spec +++ b/anda/lib/nvidia/libcusolver/libcusolver.spec @@ -6,7 +6,7 @@ Name: libcusolver Epoch: 2 -Version: 12.1.0.51 +Version: 12.2.2.18 Release: 1%{?dist} Summary: NVIDIA cuSOLVER library License: CUDA Toolkit diff --git a/anda/lib/nvidia/libcusparse/libcusparse.spec b/anda/lib/nvidia/libcusparse/libcusparse.spec index 25100ab7f2..7d63693edc 100644 --- a/anda/lib/nvidia/libcusparse/libcusparse.spec +++ b/anda/lib/nvidia/libcusparse/libcusparse.spec @@ -6,7 +6,7 @@ Name: libcusparse Epoch: 1 -Version: 12.7.9.17 +Version: 12.8.1.7 Release: 1%{?dist} Summary: NVIDIA CUDA Sparse Matrix library (cuSPARSE) library License: CUDA Toolkit diff --git a/anda/lib/nvidia/libcusparselt/libcusparselt.spec b/anda/lib/nvidia/libcusparselt/libcusparselt.spec index 4c98a932dd..5f38c74b14 100644 --- a/anda/lib/nvidia/libcusparselt/libcusparselt.spec +++ b/anda/lib/nvidia/libcusparselt/libcusparselt.spec @@ -5,7 +5,7 @@ %global cuda_version 13 Name: libcusparselt -Version: 0.9.0.3 +Version: 0.9.1.1 Release: 1%{?dist} Summary: CUDA Library for Sparse Matrix-Matrix Multiplication License: NVIDIA License diff --git a/anda/lib/nvidia/libnpp/libnpp.spec b/anda/lib/nvidia/libnpp/libnpp.spec index ca5f88982a..f7223c4b91 100644 --- a/anda/lib/nvidia/libnpp/libnpp.spec +++ b/anda/lib/nvidia/libnpp/libnpp.spec @@ -6,7 +6,7 @@ Name: libnpp Epoch: 1 -Version: 13.1.0.44 +Version: 13.1.2.48 Release: 1%{?dist} Summary: NVIDIA Performance Primitives libraries License: CUDA Toolkit diff --git a/anda/lib/nvidia/libnvfatbin/libnvfatbin.spec b/anda/lib/nvidia/libnvfatbin/libnvfatbin.spec index c24c64ab4d..21b4d2de30 100644 --- a/anda/lib/nvidia/libnvfatbin/libnvfatbin.spec +++ b/anda/lib/nvidia/libnvfatbin/libnvfatbin.spec @@ -6,7 +6,7 @@ Name: libnvfatbin Epoch: 1 -Version: 13.2.51 +Version: 13.3.29 Release: 1%{?dist} Summary: CUDA Fatbin Creator API License: CUDA Toolkit diff --git a/anda/lib/nvidia/libnvidia-container/libnvidia-container.spec b/anda/lib/nvidia/libnvidia-container/libnvidia-container.spec index d03a43deca..ba07dba280 100644 --- a/anda/lib/nvidia/libnvidia-container/libnvidia-container.spec +++ b/anda/lib/nvidia/libnvidia-container/libnvidia-container.spec @@ -1,8 +1,8 @@ %global _major 1 Name: libnvidia-container -Version: 1.18.2 -Release: 1%?dist +Version: 1.19.0 +Release: 1%{?dist} Summary: NVIDIA container runtime library License: BSD-3-Clause AND Apache-2.0 AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND GPL-2.0-only Vendor: NVIDIA Corporation diff --git a/anda/lib/nvidia/libnvjitlink/libnvjitlink.spec b/anda/lib/nvidia/libnvjitlink/libnvjitlink.spec index 74c3261610..8370a21283 100644 --- a/anda/lib/nvidia/libnvjitlink/libnvjitlink.spec +++ b/anda/lib/nvidia/libnvjitlink/libnvjitlink.spec @@ -6,7 +6,7 @@ Name: libnvjitlink Epoch: 1 -Version: 13.2.51 +Version: 13.3.33 Release: 1%{?dist} Summary: NVIDIA compiler library for JIT LTO functionality License: CUDA Toolkit diff --git a/anda/lib/nvidia/libnvjpeg/libnvjpeg.spec b/anda/lib/nvidia/libnvjpeg/libnvjpeg.spec index 54f9c120fe..ecbde9fe72 100644 --- a/anda/lib/nvidia/libnvjpeg/libnvjpeg.spec +++ b/anda/lib/nvidia/libnvjpeg/libnvjpeg.spec @@ -6,7 +6,7 @@ Name: libnvjpeg Epoch: 1 -Version: 13.0.4.44 +Version: 13.2.0.21 Release: 1%{?dist} Summary: CUDA NVIDIA JPEG decoder (nvJPEG) License: CUDA Toolkit diff --git a/anda/lib/nvidia/libnvjpeg2k/libnvjpeg2k.spec b/anda/lib/nvidia/libnvjpeg2k/libnvjpeg2k.spec index 6861258f7a..2eb650e7dc 100644 --- a/anda/lib/nvidia/libnvjpeg2k/libnvjpeg2k.spec +++ b/anda/lib/nvidia/libnvjpeg2k/libnvjpeg2k.spec @@ -3,8 +3,8 @@ %global _missing_build_ids_terminate_build 0 Name: libnvjpeg2k -Version: 0.9.1.47 -Release: 1%?dist +Version: 0.10.0.49 +Release: 1%{?dist} Summary: NVIDIA JPEG 2K decoder (nvJPEG2000) License: NVIDIA EULA URL: https://developer.nvidia.com/nvjpeg diff --git a/anda/lib/nvidia/libnvptxcompiler-devel/libnvptxcompiler-devel.spec b/anda/lib/nvidia/libnvptxcompiler-devel/libnvptxcompiler-devel.spec index f1b2883050..8bdfc7d93f 100644 --- a/anda/lib/nvidia/libnvptxcompiler-devel/libnvptxcompiler-devel.spec +++ b/anda/lib/nvidia/libnvptxcompiler-devel/libnvptxcompiler-devel.spec @@ -8,7 +8,7 @@ Name: %{real_name}-devel Epoch: 1 -Version: 13.2.51 +Version: 13.3.33 Release: 1%{?dist} Summary: CUDA nvptxcompiler License: CUDA Toolkit diff --git a/anda/lib/nvidia/libnvvm/libnvvm.spec b/anda/lib/nvidia/libnvvm/libnvvm.spec index 2a24c02cb5..0cc5b8ccfc 100644 --- a/anda/lib/nvidia/libnvvm/libnvvm.spec +++ b/anda/lib/nvidia/libnvvm/libnvvm.spec @@ -7,7 +7,7 @@ %global major_package_version 13-0 Name: %(echo %real_name | tr '_' '-') -Version: 13.2.51 +Version: 13.3.33 Release: 1%{?dist} Summary: CUDA NVVM License: CUDA Toolkit diff --git a/anda/lib/qmenumodel/qmenumodel.spec b/anda/lib/qmenumodel/qmenumodel.spec index b1ddc17c87..797407c4e8 100644 --- a/anda/lib/qmenumodel/qmenumodel.spec +++ b/anda/lib/qmenumodel/qmenumodel.spec @@ -1,8 +1,8 @@ Name: qmenumodel -Version: 0.9.2 -Release: %autorelease +Version: 0.10.0 +Release: 1%{?dist} Summary: Qt5 renderer for Ayatana Indicators -License: LGPL-3.0 +License: LGPL-3.0-or-later URL: https://github.com/AyatanaIndicators/qmenumodel Source0: https://releases.ayatana-indicators.org/source/qmenumodel/qmenumodel-%{version}.tar.gz @@ -32,8 +32,10 @@ developing applications that use %{name}. %prep %autosetup -n qmenumodel-%{version} -p1 -%build +%conf %cmake -DENABLE_TESTS=ON -DENABLE_COVERAGE=ON -DGENERATE_DOC=ON + +%build %cmake_build %install @@ -43,12 +45,10 @@ developing applications that use %{name}. %doc README %license COPYING.LGPL %{_libdir}/libqmenumodel.so.* -%dir %{_qt5_qmldir}/QMenuModel.1 %{_qt5_qmldir}/QMenuModel.1/libqmenumodel-qml.so %{_qt5_qmldir}/QMenuModel.1/qmldir %files devel -%dir %{_includedir}/qmenumodel %{_includedir}/qmenumodel/*.h %{_libdir}/libqmenumodel.so %{_libdir}/pkgconfig/qmenumodel.pc diff --git a/anda/lib/qt5-qtsystems/anda.hcl b/anda/lib/qt5-qtsystems/anda.hcl index d7bddba70f..1121db2045 100644 --- a/anda/lib/qt5-qtsystems/anda.hcl +++ b/anda/lib/qt5-qtsystems/anda.hcl @@ -2,4 +2,7 @@ project pkg { rpm { spec = "qt5-qtsystems.spec" } + labels { + mock = 1 + } } diff --git a/anda/lib/qt5-qtsystems/qt5-qtsystems.spec b/anda/lib/qt5-qtsystems/qt5-qtsystems.spec index ae765e5ede..f690f83091 100644 --- a/anda/lib/qt5-qtsystems/qt5-qtsystems.spec +++ b/anda/lib/qt5-qtsystems/qt5-qtsystems.spec @@ -4,9 +4,9 @@ Name: qt5-qtsystems Summary: Qt5 Mobility Framework Version: 5.15 -Release: %autorelease +Release: 2%{?dist} -License: GPL-3.0 +License: GPL-3.0-or-later URL: https://invent.kde.org/qt/qt/qtsystems Source0: %{url}/-/archive/%commit/qt5-mobility-%commit.tar.gz Source1: https://salsa.debian.org/qt-kde-team/qt/qtsystems/-/archive/master/qtsystems-master.tar.gz @@ -136,15 +136,12 @@ cp -a ./include/* %{buildroot}%{_qt5_includedir} %{_libdir}/libQt5SystemInfo.so.* %{_qt5_bindir}/servicefw %{_qt5_bindir}/sfwlisten -%dir %{_qt5_qmldir}/QtPublishSubscribe %{_qt5_qmldir}/QtPublishSubscribe/*.so %{_qt5_qmldir}/QtPublishSubscribe/qmldir %{_qt5_qmldir}/QtPublishSubscribe/*.qmltypes -%dir %{_qt5_qmldir}/QtServiceFramework %{_qt5_qmldir}/QtServiceFramework/*.so %{_qt5_qmldir}/QtServiceFramework/qmldir %{_qt5_qmldir}/QtServiceFramework/*.qmltypes -%dir %{_qt5_qmldir}/QtSystemInfo %{_qt5_qmldir}/QtSystemInfo/*.so %{_qt5_qmldir}/QtSystemInfo/qmldir %{_qt5_qmldir}/QtSystemInfo/*.qmltypes @@ -156,11 +153,8 @@ cp -a ./include/* %{buildroot}%{_qt5_includedir} %{_libdir}/libQt5ServiceFramework.so %{_libdir}/libQt5SystemInfo.so %{_libdir}/pkgconfig/*.pc -%dir %{_libdir}/cmake/Qt5PublishSubscribe %{_libdir}/cmake/Qt5PublishSubscribe/*.cmake -%dir %{_libdir}/cmake/Qt5ServiceFramework %{_libdir}/cmake/Qt5ServiceFramework/*.cmake -%dir %{_libdir}/cmake/Qt5SystemInfo %{_libdir}/cmake/Qt5SystemInfo/*.cmake %{_qt5_archdatadir}/mkspecs/modules/*.pri %{_qt5_includedir}/QtPublishSubscribe/ @@ -175,7 +169,6 @@ cp -a ./include/* %{buildroot}%{_qt5_includedir} %{_qt5_docdir}/html/qtsysteminfo/ %files examples -%dir %{_qt5_examplesdir}/systeminfo %{_qt5_examplesdir}/systeminfo/*.pro %{_qt5_examplesdir}/systeminfo/inputinfo/ %{_qt5_examplesdir}/systeminfo/qml-battery/ diff --git a/anda/lib/qt6-controllable/anda.hcl b/anda/lib/qt6-controllable/anda.hcl new file mode 100644 index 0000000000..9f362fc61d --- /dev/null +++ b/anda/lib/qt6-controllable/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "qt6-controllable.spec" + } +} \ No newline at end of file diff --git a/anda/lib/qt6-controllable/qt6-controllable.spec b/anda/lib/qt6-controllable/qt6-controllable.spec new file mode 100644 index 0000000000..5f0433aa90 --- /dev/null +++ b/anda/lib/qt6-controllable/qt6-controllable.spec @@ -0,0 +1,63 @@ +%global appid io.github.rfrench3.controllable + +Name: qt6-controllable +Version: 0.2.0 +Release: 1%{?dist} +Summary: QML module for controller support + +License: GPL-2.0-or-later +URL: https://github.com/rfrench3/controllable +Source0: %{url}/archive/refs/tags/%{version}.tar.gz + +Packager: Robert French + +BuildRequires: desktop-file-utils +BuildRequires: libappstream-glib +BuildRequires: cmake +BuildRequires: extra-cmake-modules +BuildRequires: kf6-rpm-macros + +BuildRequires: cmake(SDL3) +BuildRequires: cmake(Qt6Core) +BuildRequires: cmake(Qt6Gui) +BuildRequires: cmake(Qt6Qml) +BuildRequires: cmake(Qt6QuickControls2) + +BuildRequires: cmake(KF6I18n) + +Requires: kf6-ki18n + +Provides: qt6-controllable = %{evr} + +%description +A QML module that provides support for controllers. + +%prep +%autosetup -n controllable-%{version} + +%conf +%cmake + +%build +%cmake_build + +%install +%cmake_install + +%check +appstream-util validate-relax --nonet %{buildroot}%{_kf6_metainfodir}/%{orgname}.*.xml || : + +%files +%license LICENSE.txt +%doc README.md +%{_kf6_metainfodir}/%{appid}.*.xml +%{_kf6_libdir}/libqt6-controllable.so +%{_kf6_qmldir}/io/github/rfrench3/controllable/* + + + +%changelog +* Tue May 12 2026 Robert French +- Initial tests for rpm package +* Sun Apr 26 2026 Robert French +- First day of splitting this module off of bazzite updater diff --git a/anda/lib/qt6-controllable/update.rhai b/anda/lib/qt6-controllable/update.rhai new file mode 100644 index 0000000000..2f728155e2 --- /dev/null +++ b/anda/lib/qt6-controllable/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("rfrench3/controllable")); \ No newline at end of file diff --git a/anda/lib/quickjs-ng/quickjs-ng.spec b/anda/lib/quickjs-ng/quickjs-ng.spec index 77cc9285ba..e55f9ff084 100644 --- a/anda/lib/quickjs-ng/quickjs-ng.spec +++ b/anda/lib/quickjs-ng/quickjs-ng.spec @@ -1,7 +1,7 @@ %global _distro_extra_cflags -Wno-discarded-qualifiers -Wno-maybe-uninitialized Name: quickjs-ng -Version: 0.13.0 +Version: 0.15.1 Release: 1%{?dist} License: MIT Summary: A mighty JavaScript engine @@ -33,7 +33,7 @@ Requires: %{name}-libs%{_isa} = %evr %pkg_devel_files %files devel -%{_libdir}/cmake/quickjs/*.cmake +%{_libdir}/cmake/qjs/*.cmake %package examples diff --git a/anda/lib/rda/librda.spec b/anda/lib/rda/librda.spec index 49a5b19ecc..632562c14b 100644 --- a/anda/lib/rda/librda.spec +++ b/anda/lib/rda/librda.spec @@ -1,9 +1,9 @@ Name: librda Version: 0.0.5 -Release: 1%?dist +Release: 2%?dist Summary: Remote Desktop Awareness Shared Library Group: System Environment/Libraries -License: LGPL2.1+ or GPL3+ +License: LGPL-2.1-or-later AND GPL-3.0-or-later URL: https://github.com/ArcticaProject/librda Source0: %url/archive/refs/tags/%version.tar.gz Requires: glib2 glibc @@ -16,10 +16,12 @@ BuildRequires: clang gcc make autoconf libtool gettext-devel %prep %autosetup -%build +%conf autoupdate autoreconf -vfi %configure --disable-static --enable-x2go --enable-ogon + +%build %make_build %install diff --git a/anda/lib/rtmpdump/rtmpdump.spec b/anda/lib/rtmpdump/rtmpdump.spec index 27e9873f3c..0e6581ac0b 100644 --- a/anda/lib/rtmpdump/rtmpdump.spec +++ b/anda/lib/rtmpdump/rtmpdump.spec @@ -4,10 +4,9 @@ Name: rtmpdump Version: 2.6^%{commit_date}git%{shortcommit} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Toolkit for RTMP streams -# The tools are GPLv2+, but the he library is LGPLv2+. -License: GPLv2+ +License: GPL-2.0-or-later AND LGPL-2.0-or-later URL: https://git.ffmpeg.org/gitweb/%{name}.git BuildRequires: gcc BuildRequires: git diff --git a/anda/lib/sdbus-cpp/sdbus-cpp.terra.spec b/anda/lib/sdbus-cpp/sdbus-cpp.terra.spec index 1d2dcc4de6..eaa8022cd7 100644 --- a/anda/lib/sdbus-cpp/sdbus-cpp.terra.spec +++ b/anda/lib/sdbus-cpp/sdbus-cpp.terra.spec @@ -4,8 +4,8 @@ %global realname sdbus-cpp Name: %realname.terra -Version: 2.2.1 -Release: 1%?dist +Version: 2.3.1 +Release: 1%{?dist} Summary: High-level C++ D-Bus library License: LGPL-2.1-only @@ -98,7 +98,7 @@ mv %{buildroot}%{_sysconfdir}/dbus-1/system.d/org.sdbuscpp.integrationtests.conf rm -rf %{buildroot}%{_sysconfdir} # temporary bundle sdbus-cpp-1 to allow dnf5 rebuild -cp %{_libdir}/libsdbus-c++.so.1.* %{buildroot}%{_libdir} +%dnl cp %{_libdir}/libsdbus-c++.so.1.* %{buildroot}%{_libdir} %files @@ -111,7 +111,7 @@ cp %{_libdir}/libsdbus-c++.so.1.* %{buildroot}%{_libdir} %{_libdir}/libsdbus-c++.so.%{libso_major}{,.*} # temporary bundle sdbus-cpp-1 to allow dnf5 rebuild -%{_libdir}/libsdbus-c++.so.1{,.*} +%dnl %{_libdir}/libsdbus-c++.so.1{,.*} %files devel diff --git a/anda/lib/tdlib/anda.hcl b/anda/lib/tdlib/anda.hcl index bedb540c20..cf2cff9a96 100644 --- a/anda/lib/tdlib/anda.hcl +++ b/anda/lib/tdlib/anda.hcl @@ -4,5 +4,6 @@ project pkg { } labels { nightly = 1 + large = 1 } } diff --git a/anda/lib/tdlib/tdlib-nightly.spec b/anda/lib/tdlib/tdlib-nightly.spec index 7bdbb22f43..497df21261 100644 --- a/anda/lib/tdlib/tdlib-nightly.spec +++ b/anda/lib/tdlib/tdlib-nightly.spec @@ -1,6 +1,6 @@ -%global commit 0ae923c493bceb75433de2682ba8ae29cc7bf88d -%global ver 1.8.62 -%global commit_date 20260318 +%global commit a17f87c4cff7b90b278d12b91ba0614383aaee82 +%global ver 1.8.65 +%global commit_date 20260614 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: tdlib-nightly diff --git a/anda/lib/vo-aacenc/vo-aacenc.spec b/anda/lib/vo-aacenc/vo-aacenc.spec index 4960ce342f..3c7badc407 100644 --- a/anda/lib/vo-aacenc/vo-aacenc.spec +++ b/anda/lib/vo-aacenc/vo-aacenc.spec @@ -24,8 +24,10 @@ developing applications that use %{name}. %prep %autosetup -n %{name}-%{version} -%build +%conf %configure --disable-static + +%build make %{?_smp_mflags} %install diff --git a/anda/lib/wails/v3/wails3.spec b/anda/lib/wails/v3/wails3.spec index 73bcd0eb1d..a34467c2af 100644 --- a/anda/lib/wails/v3/wails3.spec +++ b/anda/lib/wails/v3/wails3.spec @@ -1,4 +1,4 @@ -%global ver v3.0.0-alpha.74 +%global ver webview2/v1.0.24 %global sanitized_ver %(echo %{ver} | sed 's/-/~/g') %global goipath github.com/wailsapp/wails/v3 @@ -32,7 +32,7 @@ Provides: wails-v3 %gopkg %prep -%git_clone https://github.com/wailsapp/wails v3-alpha +%git_clone https://github.com/wailsapp/wails v3-beta %build pushd v3/cmd/wails3 diff --git a/anda/lib/xavs/xavs.spec b/anda/lib/xavs/xavs.spec index 54ee4d9312..c875b11a73 100644 --- a/anda/lib/xavs/xavs.spec +++ b/anda/lib/xavs/xavs.spec @@ -1,8 +1,13 @@ +%global commit r55 +%global date 20110821 + +%global _pkg_extra_cflags "-Wno-int-conversion -Wno-declaration-missing-parameter-type" + Name: xavs -Version: 0.1.55 -Release: 1%{?dist} +Version: 0.1.55^%{date}svn%{commit} +Release: 2%{?dist} Summary: AVS1 (First-generation AVS Standards) library -License: GPLv2 +License: GPL-2.0-only URL: https://xavs.sourceforge.net/ Patch0: %{name}-cflags.patch BuildRequires: autoconf @@ -10,7 +15,7 @@ BuildRequires: automake BuildRequires: gcc BuildRequires: libtool BuildRequires: subversion -#BuildRequires: yasm +%dnl BuildRequires: yasm %description AVS is a complete standard system including system, video, audio, and digital @@ -35,16 +40,17 @@ The %{name}-devel package contains libraries and header files for developing applications that use %{name}. %prep -svn co https://svn.code.sf.net/p/xavs/code/trunk %{name} +svn co -r %{commit} https://svn.code.sf.net/p/xavs/code/trunk %{name} %setup -T -D -n %{name} %autopatch -p1 -%build +%conf %configure \ --disable-asm \ --enable-pic \ - --enable-shared \ - --extra-cflags="-Wno-int-conversion -Wno-declaration-missing-parameter-type" + --enable-shared + +%build %make_build %install diff --git a/anda/lib/xavs2/xavs2.spec b/anda/lib/xavs2/xavs2.spec index 6867cb68b3..43b15a63f0 100644 --- a/anda/lib/xavs2/xavs2.spec +++ b/anda/lib/xavs2/xavs2.spec @@ -49,7 +49,7 @@ This package contains the shared library development files. %autosetup %endif -%build +%conf cd build/linux export CFLAGS="%{optflags} -Wno-incompatible-pointer-types" %configure \ @@ -67,6 +67,8 @@ sed -i \ -e 's|CFLAGS=.*%{optflags}|CFLAGS=%{optflags}|g' \ config.mak +%build +cd build/linux %make_build %install diff --git a/anda/lib/zlib/zlib.spec b/anda/lib/zlib/zlib.spec index 67324b9dab..96fb36cb6e 100644 --- a/anda/lib/zlib/zlib.spec +++ b/anda/lib/zlib/zlib.spec @@ -19,14 +19,10 @@ BuildRequires: gcc %pkg_static_files %prep -%autosetup -export CFLAGS="%optflags" -export LDFLAGS="%build_ldflags" -./configure --libdir=%_libdir \ - --includedir=%_includedir \ - --sysconfdir=%_sysconfdir \ - --localstatedir=%_localstatedir \ - --prefix=%_prefix +%autosetup + +%conf +%configure %build %make_build @@ -41,5 +37,8 @@ export LDFLAGS="%build_ldflags" %_libdir/libz.so.* %changelog +* Tue Apr 21 2026 Owen Zimmerman +- Use %conf and %configure + * Wed Nov 26 2025 metcya - package zlib diff --git a/anda/misc/activate-linux/activate-linux.spec b/anda/misc/activate-linux/activate-linux.spec index e231a38f60..05c3db48e5 100644 --- a/anda/misc/activate-linux/activate-linux.spec +++ b/anda/misc/activate-linux/activate-linux.spec @@ -1,5 +1,5 @@ -%global commit 347a579411fe871a6a1a4b9989384dddcd477ad5 -%global date 20251104 +%global commit cdca637ba63e8a56bda47fe90e55409d3344120d +%global date 20260520 %global short %(c=%{commit}; echo ${c:0:7}) %global ver 1.1.0 @@ -7,7 +7,7 @@ Name: activate-linux Summary: The "Activate Windows" watermark ported to Linux Version: %{ver}^%{date}git.%{short} License: GPL-3.0-only -Release: 1%?dist +Release: 1%{?dist} URL: https://github.com/MrGlockenspiel/activate-linux Source0: %{url}/archive/%{commit}.tar.gz BuildRequires: clang diff --git a/anda/misc/android-udev-rules/android-udev-rules.spec b/anda/misc/android-udev-rules/android-udev-rules.spec index b7dd5cd982..93f56ce189 100644 --- a/anda/misc/android-udev-rules/android-udev-rules.spec +++ b/anda/misc/android-udev-rules/android-udev-rules.spec @@ -1,7 +1,7 @@ #? https://github.com/M0Rf30/android-udev-rules/blob/main/rpm/android-udev-rules.spec Name: android-udev-rules -Version: 20250525 -Release: 1%?dist +Version: 20260423 +Release: 1%{?dist} Summary: Udev rules to connect Android devices to your linux box License: GPL-3.0-or-later URL: https://github.com/M0Rf30/android-udev-rules diff --git a/anda/misc/arrpc/arrpc.spec b/anda/misc/arrpc/arrpc.spec index 343cb0449a..511c3fa4f6 100644 --- a/anda/misc/arrpc/arrpc.spec +++ b/anda/misc/arrpc/arrpc.spec @@ -1,10 +1,10 @@ %define debug_package %nil %define __strip /bin/true -%global commit 87c7c6f67ab8ad440e2ca0bdabce9626226bc25b +%global commit d4ce31f313eaf864f46576ee98fbf88c9ef47036 Name: arrpc -Version: 3.6.0 -Release: 1%?dist +Version: 3.7.0 +Release: 1%{?dist} Summary: Open Discord RPC server for atypical setups License: MIT URL: https://arrpc.openasar.dev diff --git a/anda/misc/click/click.spec b/anda/misc/click/click.spec index 57d8d2815c..d7a24b24e3 100644 --- a/anda/misc/click/click.spec +++ b/anda/misc/click/click.spec @@ -4,9 +4,9 @@ Name: click Version: 0.5.2 -Release: 2%?dist +Release: 4%?dist Summary: An app building method -License: LGPL-3.0 +License: LGPL-3.0-or-later URL: https://gitlab.com/ubports/development/core/click Source0: %{url}/-/archive/%commit/click-%commit.tar.gz @@ -58,12 +58,14 @@ Provides HTML and Manpage (documentation) for Click. %prep %autosetup -n click-%commit -%build +%conf NOCONFIGURE=1 \ ./autogen.sh export CFLAGS="$CFLAGS -Wno-implicit-function-declaration" %configure + +%build %make_build %install diff --git a/anda/misc/exquisite-linux-templates/update.rhai b/anda/misc/exquisite-linux-templates/update.rhai index 7f6a3c1afd..0eca0b00d7 100644 --- a/anda/misc/exquisite-linux-templates/update.rhai +++ b/anda/misc/exquisite-linux-templates/update.rhai @@ -1,6 +1,4 @@ -import "andax/bump_extras.rhai" as bump; - -rpm.global("commit", bump::codeberg_commit("nathandyer/exquisite-linux-templates")); +rpm.global("commit", codeberg_commit("nathandyer/exquisite-linux-templates")); if rpm.changed() { rpm.global("commit_date", date()); } diff --git a/anda/misc/fx-autoconfig/anda.hcl b/anda/misc/fx-autoconfig/anda.hcl new file mode 100644 index 0000000000..d76c74f4d9 --- /dev/null +++ b/anda/misc/fx-autoconfig/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "fx-autoconfig.spec" + } +} diff --git a/anda/misc/fx-autoconfig/fx-autoconfig.spec b/anda/misc/fx-autoconfig/fx-autoconfig.spec new file mode 100644 index 0000000000..2df1ea1ae2 --- /dev/null +++ b/anda/misc/fx-autoconfig/fx-autoconfig.spec @@ -0,0 +1,39 @@ +%global commit d469a80f12e286c0e937d8b93c01dfc2d55dca8f +%global commit_date 20260504 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) + +Name: fx-autoconfig +Version: 0~%{commit_date}git.%{shortcommit} +Release: 1%{?dist} +Summary: Firefox userChrome.js manager +Packager: Anna Simmons + +License: MPL-2.0 +URL: https://github.com/MrOtherGuy/fx-autoconfig +Source0: https://github.com/MrOtherGuy/fx-autoconfig/archive/%commit.tar.gz +Requires: firefox +BuildArch: noarch + +%description +%{summary}. + +%prep +%autosetup -n fx-autoconfig-%commit + +%build + +%install +mkdir -p %{buildroot}%{_libdir}/firefox + +install -Dm644 program/config.js %{buildroot}%{_libdir}/firefox/ +cp -pr program/defaults %{buildroot}%{_libdir}/firefox/defaults + +%files +%license LICENSE +%doc readme.md +%{_libdir}/firefox/config.js +%{_libdir}/firefox/defaults/ + +%changelog +* Thu May 21 2026 Anna Simmons +- Initial package build diff --git a/anda/misc/fx-autoconfig/update.rhai b/anda/misc/fx-autoconfig/update.rhai new file mode 100644 index 0000000000..af3101ce9c --- /dev/null +++ b/anda/misc/fx-autoconfig/update.rhai @@ -0,0 +1,5 @@ +rpm.global("commit", gh_commit("MrOtherGuy/fx-autoconfig")); +if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); +} diff --git a/anda/misc/gradle-completions/gradle-completions.spec b/anda/misc/gradle-completions/gradle-completions.spec index 463bdb7342..016abccdac 100644 --- a/anda/misc/gradle-completions/gradle-completions.spec +++ b/anda/misc/gradle-completions/gradle-completions.spec @@ -1,5 +1,5 @@ Name: gradle-completions -Version: 9.4.1 +Version: 9.5.0 Release: 1%{?dist} Summary: Gradle tab completion for bash and zsh License: MIT diff --git a/anda/misc/gsettings-ubuntu-touch-schemas/gsettings-ubuntu-touch-schemas.spec b/anda/misc/gsettings-ubuntu-touch-schemas/gsettings-ubuntu-touch-schemas.spec index df48349ea7..36b9f38015 100644 --- a/anda/misc/gsettings-ubuntu-touch-schemas/gsettings-ubuntu-touch-schemas.spec +++ b/anda/misc/gsettings-ubuntu-touch-schemas/gsettings-ubuntu-touch-schemas.spec @@ -1,6 +1,6 @@ Name: gsettings-ubuntu-touch-schemas Version: 0.0.7+21.10.20210712 -Release: %autorelease +Release: 1%{?dist} Summary: Shared GSettings schemas for Ubuntu touch and Unity BuildArch: noarch @@ -23,11 +23,13 @@ settings shared by various components of a Ubuntu environment. %prep %autosetup -c -%build +%conf NOCONFIGURE=1 \ ./autogen.sh %configure + +%build %make_build %install diff --git a/anda/misc/hollywood/hollywood.spec b/anda/misc/hollywood/hollywood.spec index 35594b8b17..fdb40420ea 100644 --- a/anda/misc/hollywood/hollywood.spec +++ b/anda/misc/hollywood/hollywood.spec @@ -48,6 +48,7 @@ background of any excellent schlock technothriller. %build +%global _libdir /usr/lib %install mkdir -p %{buildroot}%{_libdir}/hollywood mkdir -p %{buildroot}%{_datadir}/wallstreet diff --git a/anda/misc/icoextract-thumbnailer/icoextract-thumbnailer.spec b/anda/misc/icoextract-thumbnailer/icoextract-thumbnailer.spec index 4b0a68fb24..3e10392081 100644 --- a/anda/misc/icoextract-thumbnailer/icoextract-thumbnailer.spec +++ b/anda/misc/icoextract-thumbnailer/icoextract-thumbnailer.spec @@ -1,6 +1,6 @@ Name: icoextract-thumbnailer -Version: 0.2.0 -Release: 1%?dist +Version: 0.3.0 +Release: 1%{?dist} Summary: XDG-compatible thumbnailer for Windows PE executables URL: https://github.com/jlu5/icoextract/ diff --git a/anda/misc/kew/anda.hcl b/anda/misc/kew/anda.hcl new file mode 100644 index 0000000000..a72c67e69c --- /dev/null +++ b/anda/misc/kew/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "kew.spec" + } +} diff --git a/anda/misc/kew/kew.spec b/anda/misc/kew/kew.spec new file mode 100644 index 0000000000..869298052b --- /dev/null +++ b/anda/misc/kew/kew.spec @@ -0,0 +1,50 @@ +%define debug_package %{nil} + +Name: kew +Version: 4.0.0 +Release: 1%{?dist} +Summary: Music for the Shell +URL: https://codeberg.org/ravachol/kew +Source0: %{url}/archive/v%{version}.tar.gz +License: GPL-2.0-or-later +BuildRequires: make +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: libatomic +BuildRequires: pkgconfig(taglib) +BuildRequires: pkgconfig(fftw3f) +BuildRequires: pkgconfig(chafa) +BuildRequires: pkgconfig(opus) +BuildRequires: pkgconfig(opusfile) +BuildRequires: pkgconfig(vorbis) +BuildRequires: pkgconfig(vorbisfile) +BuildRequires: pkgconfig(ogg) + +Packager: Owen Zimmerman + +%description +%{summary}. + +%prep +%git_clone https://codeberg.org/ravachol/kew.git v%{version} + +%build +%make_build + +%install +%make_install PREFIX=/usr + +%find_lang kew + +%files -f kew.lang +%license LICENSE +%doc README.md +%lang(zh_CN) %doc README_zh_CN.md +%{_bindir}/kew +%{_datadir}/kew/themes/*.theme +%{_datadir}/kew/themes/*.txt +%{_mandir}/man1/kew.1.* + +%changelog +* Thu Apr 09 2026 Owen Zimmerman +- Initial commit diff --git a/anda/misc/kew/update.rhai b/anda/misc/kew/update.rhai new file mode 100644 index 0000000000..2a85ca96ea --- /dev/null +++ b/anda/misc/kew/update.rhai @@ -0,0 +1 @@ +rpm.version(codeberg("ravachol/kew")); diff --git a/anda/misc/openbangla-keyboard/openbangla-keyboard-nightly.spec b/anda/misc/openbangla-keyboard/openbangla-keyboard-nightly.spec index 26e00ea44b..f6a71f0bda 100644 --- a/anda/misc/openbangla-keyboard/openbangla-keyboard-nightly.spec +++ b/anda/misc/openbangla-keyboard/openbangla-keyboard-nightly.spec @@ -1,6 +1,6 @@ %global ver 2.0.0 -%global commit 0db9d248e61600053eb6ec96d639da54a0bd06f8 -%global commit_date 20260324 +%global commit 06d91e18e3e6ecac8f138a1a84edd5ffe0637a7c +%global commit_date 20260514 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: openbangla-keyboard-nightly diff --git a/anda/misc/prime-run/prime-run.spec b/anda/misc/prime-run/prime-run.spec index 6b9d547dfe..546d7e5a0c 100644 --- a/anda/misc/prime-run/prime-run.spec +++ b/anda/misc/prime-run/prime-run.spec @@ -1,10 +1,10 @@ Name: prime-run Version: 1.0.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A simple script to run an application with NVIDIA PRIME GPU offloading License: MIT -URL: https://terra.fyralabs.com +URL: https://terrapkg.com Source0: prime-run.sh # Bash script diff --git a/anda/misc/sass/sass.spec b/anda/misc/sass/sass.spec index b2e25c5fbb..e5f843a6db 100644 --- a/anda/misc/sass/sass.spec +++ b/anda/misc/sass/sass.spec @@ -4,7 +4,7 @@ %define _build_id_links none Name: sass -Version: 1.98.0 +Version: 1.101.0 Release: 1%{?dist} Summary: The reference implementation of Sass, written in Dart License: MIT diff --git a/anda/misc/senpai/senpai.spec b/anda/misc/senpai/senpai.spec index 1e33ba23d0..80adb72b2d 100644 --- a/anda/misc/senpai/senpai.spec +++ b/anda/misc/senpai/senpai.spec @@ -1,8 +1,8 @@ %global appid org.sr.ht.delthas.senpai Name: senpai -Version: 0.4.1 -Release: 3%?dist +Version: 0.0.0 +Release: 1%{?dist} Summary: Your everyday IRC student License: ISC URL: https://sr.ht/~delthas/senpai/ diff --git a/anda/misc/senpai/update.rhai b/anda/misc/senpai/update.rhai index 7427ad0a82..5ab877bc7a 100644 --- a/anda/misc/senpai/update.rhai +++ b/anda/misc/senpai/update.rhai @@ -1 +1 @@ -rpm.version(gh("delthas/senpai")); +rpm.version(sourcehut("~delthas/senpai")); diff --git a/anda/misc/shitpost/shitpost.spec b/anda/misc/shitpost/shitpost.spec index 06e9c80e59..f4d1c0f290 100644 --- a/anda/misc/shitpost/shitpost.spec +++ b/anda/misc/shitpost/shitpost.spec @@ -1,6 +1,6 @@ Name: shitpost Version: 1 -Release: 1%?dist +Release: 2%?dist Summary: A tool to create memes using CLI License: WTFPL URL: https://redd.it/5ezk1f @@ -8,7 +8,7 @@ Source0: https://raw.githubusercontent.com/magnus-ISU/aur-scripts/master/ Requires: bash BuildArch: noarch -Packager: Its-J +Packager: Its-J %description %{summary}. @@ -24,5 +24,8 @@ install -Dm 755 %{SOURCE0} %{buildroot}%{_bindir}/shitpost %{_bindir}/shitpost %changelog -* Sun Nov 09 2025 Its-J +* Tue Apr 14 2026 Its-J +- Add email to my previous contributor attributions + +* Sun Nov 09 2025 Its-J - Package shitpost diff --git a/anda/misc/signal-cli/signal-cli.spec b/anda/misc/signal-cli/signal-cli.spec index b1ff1843cb..72a3bf6e1d 100644 --- a/anda/misc/signal-cli/signal-cli.spec +++ b/anda/misc/signal-cli/signal-cli.spec @@ -3,7 +3,7 @@ %define debug_package %{nil} Name: signal-cli -Version: 0.14.1 +Version: 0.14.5 Release: 1%{?dist} Summary: signal-cli provides an unofficial commandline, JSON-RPC and dbus interface for the Signal messenger License: GPL-3.0-only @@ -14,8 +14,8 @@ BuildArch: noarch BuildRequires: gcc-c++ BuildRequires: gradle BuildRequires: anda-srpm-macros -BuildRequires: java-21-openjdk -BuildRequires: java-21-openjdk-devel +BuildRequires: java-25-openjdk +BuildRequires: java-25-openjdk-devel BuildRequires: systemd-rpm-macros BuildRequires: make BuildRequires: asciidoc diff --git a/anda/misc/tail-tray/anda.hcl b/anda/misc/tail-tray/anda.hcl new file mode 100644 index 0000000000..a317bddfb9 --- /dev/null +++ b/anda/misc/tail-tray/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "tail-tray.spec" + } +} diff --git a/anda/misc/tail-tray/tail-tray.spec b/anda/misc/tail-tray/tail-tray.spec new file mode 100644 index 0000000000..5c5b6c839e --- /dev/null +++ b/anda/misc/tail-tray/tail-tray.spec @@ -0,0 +1,46 @@ +Name: tail-tray +Version: 0.2.33 +Release: 1%{?dist} +Summary: Tailscale tray menu and UI for the KDE Plasma Desktop +License: GPL-3.0-or-later +URL: https://github.com/SneWs/tail-tray +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz + +BuildRequires: cmake +BuildRequires: gcc-c++ +BuildRequires: glib2-devel +BuildRequires: gettext +BuildRequires: qt6-qtbase-devel +BuildRequires: qt6-qttools-devel + +Requires: tailscale +Suggests: davfs2 + +Packager: Owen Zimmerman + +%description +%{summary}. + +%prep +%autosetup + +%conf +%cmake + +%build +%cmake_build + +%install +%cmake_install + +%files +%doc README.md +%license LICENSE +%{_bindir}/%{name} +%{_appsdir}/%{name}.desktop +%{_scalableiconsdir}/tail-tray-dark.svg +%{_scalableiconsdir}/tail-tray.svg + +%changelog +* Sat May 23 2026 Owen Zimmerman +- Initial commit diff --git a/anda/misc/tail-tray/update.rhai b/anda/misc/tail-tray/update.rhai new file mode 100644 index 0000000000..bcb25762b9 --- /dev/null +++ b/anda/misc/tail-tray/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("SneWs/tail-tray")); diff --git a/anda/misc/uwufetch/uwufetch.spec b/anda/misc/uwufetch/uwufetch.spec index 2568591181..3de4f761db 100644 --- a/anda/misc/uwufetch/uwufetch.spec +++ b/anda/misc/uwufetch/uwufetch.spec @@ -1,6 +1,6 @@ -%global commit 7fb542d732253d36cb5ae0a02972d3949c34d721 +%global commit b02d6d4ed86129f87dff0be9e0abe091ea7e159f %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global fulldate 2026-03-28 +%global fulldate 2026-04-14 %global commit_date %(echo %{fulldate} | sed 's/-//g') %global ver 2.1 %global debug_package %{nil} diff --git a/anda/misc/v2ray-domain-list-community/v2ray-domain-list-community.spec b/anda/misc/v2ray-domain-list-community/v2ray-domain-list-community.spec index ed0d4df117..3105245259 100644 --- a/anda/misc/v2ray-domain-list-community/v2ray-domain-list-community.spec +++ b/anda/misc/v2ray-domain-list-community/v2ray-domain-list-community.spec @@ -1,7 +1,7 @@ -%global commit af7fd77ebcd4dcc740fcb26cb6a2407236f6e24c +%global commit 5e1035c6f2458efa45ac825a798960ed0c310110 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global ver 20260326050832 -%global commit_date 20260327 +%global ver 20260613160425 +%global commit_date 20260614 Name: v2ray-domain-list-community Version: %{ver}^%{commit_date}git.%{shortcommit} diff --git a/anda/misc/v2ray-geoip/v2ray-geoip.spec b/anda/misc/v2ray-geoip/v2ray-geoip.spec index d2b1bde3d2..fdbbbe655f 100644 --- a/anda/misc/v2ray-geoip/v2ray-geoip.spec +++ b/anda/misc/v2ray-geoip/v2ray-geoip.spec @@ -1,14 +1,14 @@ -%global commit 7a6498ae1cacdc6ec3356ad29d9566d7f0242f56 +%global commit ce6485980843245f8dc13ec0d0b2258fb04435d2 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global ver 202603050223 -%global commit_date 20260122 +%global ver 202605120112 +%global commit_date 20260512 %global year %{gsub %commit_date %%d%%d%%d%%d$ %{quote:}} %global month %{gsub %commit_date %%d%%d%%d%%d(%%d%%d)%%d%%d %%1} Name: v2ray-geoip Version: %{ver}^%{commit_date}git.%{shortcommit} -Release: 1%?dist +Release: 1%{?dist} Summary: GeoIP for V2Ray License: CC-BY-SA-4.0 Packager: veuxit diff --git a/anda/misc/vencord-installer/dev.vencord.Installer.desktop b/anda/misc/vencord-installer/dev.vencord.Installer.desktop new file mode 100644 index 0000000000..1bdd1e7134 --- /dev/null +++ b/anda/misc/vencord-installer/dev.vencord.Installer.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Name=Vencord Installer +Type=Application +GenericName=Discord Mod Installer +Comment=Install and manage Vencord on your Discord installation +Exec=vencord-installer +Icon=dev.vencord.Installer +Categories=Network;InstantMessaging; +Keywords=discord;vencord;mod; +StartupNotify=true diff --git a/anda/misc/vencord-installer/dev.vencord.Installer.policy b/anda/misc/vencord-installer/dev.vencord.Installer.policy new file mode 100644 index 0000000000..2659c50d04 --- /dev/null +++ b/anda/misc/vencord-installer/dev.vencord.Installer.policy @@ -0,0 +1,20 @@ + + + + Vencord + https://vencord.dev + + + Run the Vencord Installer + Authentication is required to patch Discord with Vencord + + auth_admin + auth_admin + auth_admin_keep + + /usr/bin/vencord-installer + true + + diff --git a/anda/misc/vencord-installer/vencord-installer.spec b/anda/misc/vencord-installer/vencord-installer.spec index db34bea370..9d8e7e6bf7 100644 --- a/anda/misc/vencord-installer/vencord-installer.spec +++ b/anda/misc/vencord-installer/vencord-installer.spec @@ -20,14 +20,18 @@ A cross platform gui/cli app for installing Vencord.} %global godocs README.md Name: vencord-installer -Release: 1%{?dist} +Release: 2%{?dist} Provides: golang-github-vencord-installer = %{version}-%{release} Summary: A cross platform gui/cli app for installing Vencord Packager: Cappy Ishihara License: GPL-3.0-only URL: %{gourl} + Source: %{gosource} Source1: %appid.metainfo.xml +Source2: dev.vencord.Installer.desktop +Source3: dev.vencord.Installer.policy + BuildRequires: go-rpm-macros BuildRequires: go-srpm-macros BuildRequires: anda-srpm-macros @@ -43,6 +47,7 @@ BuildRequires: wayland-devel BuildRequires: libxkbcommon-devel BuildRequires: wayland-protocols-devel BuildRequires: extra-cmake-modules +BuildRequires: desktop-file-utils %description %{common_description} @@ -122,12 +127,17 @@ export CGO_LDFLAGS="${LDFLAGS}" install -m 0755 -vd %{buildroot}%{_bindir} install -m 0755 -vp %{gobuilddir}/bin/* %{buildroot}%{_bindir}/ %terra_appstream -o %{SOURCE1} +%desktop_file_install %{S:2} +install -Dm644 %{SOURCE3} %{buildroot}%{_datadir}/polkit-1/actions/%{appid} %files %license LICENSE %doc README.md %{_bindir}/vencord-installer %{_datadir}/metainfo/%appid.metainfo.xml +%{_datadir}/applications/%{appid}.desktop +%{_datadir}/polkit-1/actions/%{appid} + %files cli %license LICENSE diff --git a/anda/multimedia/LCEVCdec/LCEVCdec.spec b/anda/multimedia/LCEVCdec/LCEVCdec.spec index f0ef271b46..95e9123b61 100644 --- a/anda/multimedia/LCEVCdec/LCEVCdec.spec +++ b/anda/multimedia/LCEVCdec/LCEVCdec.spec @@ -9,8 +9,8 @@ %bcond docs 0 Name: LCEVCdec -Version: 4.0.3 -Release: 1%{?dist} +Version: 4.1.0 +Release: 2%{?dist} Summary: MPEG-5 LCEVC Decoder License: BSD-3-Clause-Clear URL: https://docs.v-nova.com/v-nova/lcevc/lcevc-sdk-overview diff --git a/anda/multimedia/LCEVCdec/VERSION_ffmpeg.txt b/anda/multimedia/LCEVCdec/VERSION_ffmpeg.txt index a8a1887568..0e79152459 100644 --- a/anda/multimedia/LCEVCdec/VERSION_ffmpeg.txt +++ b/anda/multimedia/LCEVCdec/VERSION_ffmpeg.txt @@ -1 +1 @@ -7.1.2 +8.1.1 diff --git a/anda/multimedia/LCEVCdec/anda.hcl b/anda/multimedia/LCEVCdec/anda.hcl index e97d525175..75416452a6 100644 --- a/anda/multimedia/LCEVCdec/anda.hcl +++ b/anda/multimedia/LCEVCdec/anda.hcl @@ -7,5 +7,6 @@ project pkg { labels { mock = 1 subrepo = "multimedia" + updbranch = 1 } } diff --git a/anda/multimedia/deadbeef-mpris2-plugin/deadbeef-mpris2-plugin.spec b/anda/multimedia/deadbeef-mpris2-plugin/deadbeef-mpris2-plugin.spec index d5ae65c335..e0a1609032 100644 --- a/anda/multimedia/deadbeef-mpris2-plugin/deadbeef-mpris2-plugin.spec +++ b/anda/multimedia/deadbeef-mpris2-plugin/deadbeef-mpris2-plugin.spec @@ -30,13 +30,14 @@ will only support version two. %prep %autosetup + +%conf autoreconf -fiv - - -%build %configure \ --disable-silent-rules \ --disable-static + +%build %{make_build} diff --git a/anda/multimedia/deadbeef/deadbeef.spec b/anda/multimedia/deadbeef/deadbeef.spec index 649106268f..17d0aa6642 100644 --- a/anda/multimedia/deadbeef/deadbeef.spec +++ b/anda/multimedia/deadbeef/deadbeef.spec @@ -74,7 +74,7 @@ sed -i "s|size_t|std::size_t|" external/ddb_dsp_libretro/sinc_resampler.h sed -i -re 's/^(.*)\s+([-]msse3)\s+(.*)$/\1 \3/g' external/ddb_dsp_libretro/Makefile.am %endif -# Regenerate the build files +%conf autoreconf -fiv # Remove exec permission from source files @@ -86,7 +86,6 @@ do sed -i "s|$data Shortcut Group|X-$data Shortcut Group|" deadbeef.desktop.in done -%build %configure \ --enable-ffmpeg \ --docdir=%{_defaultdocdir}/%{name}-%{version} \ @@ -102,8 +101,9 @@ done --enable-gtk3 \ --disable-pulse \ --enable-pipewire -%make_build +%build +%make_build %install %make_install @@ -119,7 +119,6 @@ sed -i -e "s!MP3!MP3;!" %{buildroot}%{_datadir}/applications/%{name}.desktop %check desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop - %files -f %{name}.lang %doc README ChangeLog AUTHORS %license COPYING @@ -131,13 +130,11 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop %{_datadir}/pixmaps/%{name}.png %{_iconsdir}/hicolor/*/apps/* - %files plugins %{_libdir}/%{name}/convpresets %{_libdir}/%{name}/*.so %{_libdir}/%{name}/data68 - %changelog * Fri May 30 2025 Leigh Scott - 1.10.0-2 - Rebuild for new flac .so version diff --git a/anda/multimedia/ffmpeg/.gitignore b/anda/multimedia/ffmpeg/.gitignore new file mode 100644 index 0000000000..5505c91bc5 --- /dev/null +++ b/anda/multimedia/ffmpeg/.gitignore @@ -0,0 +1,3 @@ +# FFmpeg keys +ffmpeg-devel.asc +ffmpeg.keyring diff --git a/anda/multimedia/ffmpeg/VERSION_x264.txt b/anda/multimedia/ffmpeg/VERSION_x264.txt index cd71b913c4..f899867926 100644 --- a/anda/multimedia/ffmpeg/VERSION_x264.txt +++ b/anda/multimedia/ffmpeg/VERSION_x264.txt @@ -1 +1 @@ -0.165 +0^20250910git0480cb0 \ No newline at end of file diff --git a/anda/multimedia/ffmpeg/VERSION_x265.txt b/anda/multimedia/ffmpeg/VERSION_x265.txt index 8a36cd142b..8012ebbba2 100644 --- a/anda/multimedia/ffmpeg/VERSION_x265.txt +++ b/anda/multimedia/ffmpeg/VERSION_x265.txt @@ -1 +1 @@ -4.1 \ No newline at end of file +4.2 \ No newline at end of file diff --git a/anda/multimedia/ffmpeg/anda.hcl b/anda/multimedia/ffmpeg/anda.hcl index 002c167e92..a6ef9db24e 100644 --- a/anda/multimedia/ffmpeg/anda.hcl +++ b/anda/multimedia/ffmpeg/anda.hcl @@ -2,7 +2,7 @@ project pkg { arches = ["x86_64", "aarch64", "i386"] rpm { spec = "ffmpeg.spec" - extra_repos = ["https://repos.fyralabs.com/terrarawhide-nvidia", "https://repos.fyralabs.com/terrarawhide-multimedia"] + extra_repos = ["https://repos.fyralabs.com/terrarawhide-multimedia"] } labels { updbranch = 1 diff --git a/anda/multimedia/ffmpeg/enable_decoders b/anda/multimedia/ffmpeg/enable_decoders new file mode 100644 index 0000000000..b03967c46d --- /dev/null +++ b/anda/multimedia/ffmpeg/enable_decoders @@ -0,0 +1,479 @@ +## module name # reason for enablement in ffmpeg (usually there is another package that already got legal review) +aac +aasc +libfdk_aac # fdk-aac-free +ac3 +acelp_kelvin +adpcm_4xm +adpcm_adx +adpcm_afc +adpcm_agm +adpcm_aica +adpcm_argo +adpcm_ct +adpcm_dtk +adpcm_ea +adpcm_ea_maxis_xa +adpcm_ea_r1 +adpcm_ea_r2 +adpcm_ea_r3 +adpcm_ea_xas +adpcm_g722 +adpcm_g726 +adpcm_g726le +adpcm_ima_acorn +adpcm_ima_alp +adpcm_ima_amv +adpcm_ima_apc +adpcm_ima_apm +adpcm_ima_cunning +adpcm_ima_dat4 +adpcm_ima_dk3 +adpcm_ima_dk4 +adpcm_ima_ea_eacs +adpcm_ima_ea_sead +adpcm_ima_iss +adpcm_ima_moflex +adpcm_ima_mtf +adpcm_ima_oki +adpcm_ima_qt +adpcm_ima_rad +adpcm_ima_smjpeg +adpcm_ima_ssi +adpcm_ima_wav +adpcm_ima_ws +adpcm_ms +adpcm_mtaf +adpcm_psx +adpcm_sbpro_2 +adpcm_sbpro_3 +adpcm_sbpro_4 +adpcm_swf +adpcm_thp +adpcm_thp_le +adpcm_vima +adpcm_xa +adpcm_xmd +adpcm_yamaha +adpcm_zork +aic +alac +alias_pix +amrnb +amrwb +amv +anm +ansi # trivial +anull +apac +ape +apng # animated png +apv +arbc +argo +ass # trivial +asv1 +asv2 +atrac1 +atrac3 +atrac3al +atrac3p +atrac3pal +aura +aura2 +av1 # libaom +av1_qsv # libaom +bethsoftvid # trivial +bfi # trivial +bink +binkaudio_dct +binkaudio_rdft +bintext +bitpacked # trivial +bmp # trivial +bmv_audio +bmv_video +bonk +brender_pix +c93 +cbd2_dpcm +ccaption +cdgraphics +cdtoons +cdxl +cinepak +clearvideo +cljr +cook +cpia +cscd +cyuv +dca +dds +derf_dpcm +dfa +dfpwm +dirac # dirac +dnxhd +dnxhr +dolby_e +dpx +dsd_lsbf +dsd_msbf +dsicinaudio +dsicinvideo +dss_sp +dvaudio +dvbsub +dvdsub +dvvideo +dxa +dxtory +eacmv +eamad +eatgq +eatgv +eatqi +eightbps +eightsvx_exp +eightsvx_fib +escape124 +escape130 +evrc +exr # openEXR +ffv1 # ffmpeg +ffvhuff # ffmpeg +ffwavesynth # pseudo +fits +flac # libFLAC +flashsv +flashsv2 +flic +flv +fmvc +fourxm +ftr # fdk-aac +g723_1 +g729 +gdv +gem +gif # libpng +gremlin_dpcm +gsm # libgsm +gsm_ms +h261 +h263 +h263_v4l2m2m # hardware +h263i +h263p +hap +hca +hcom +hdr +hnm4_video +hq_hqa +hqx +huffyuv # trivial+zlib +hymt # huffyuv-mt +iac +idcin +idf +iff_ilbm +ilbc # ilbc +imc +indeo2 +indeo3 +indeo4 +indeo5 +interplay_acm +interplay_dpcm +interplay_video +ipu +jacosub +jpeg2000 # openjpeg2 +jpegls +jv +kgv1 +kmvc +lagarith +libaribb24 # aribb24 +libaribcaption # libaribcaption +libaom # libaom +libaom_av1 # libaom +libcodec2 # codec2 +libdav1d # av1 +libgsm # libgsm +libgsm_ms # libgsm +libilbc # ilbc +libjxl # libjxl +liblc3 # liblc3 +libopencore_amrnb # opencore-amr +libopencore_amrwb # opencore-amr +libopenh264 # openh264 +libopenjpeg # openjpeg +libopus # opus +librsvg # librsvg +libschroedinger # schroedinger +libspeex # speex +libvorbis # libvorbis +libvpx_vp8 # libvpx +libvpx_vp9 # libvpx +libxevd +libzvbi_teletext # zvbi +loco +lscr +m101 +mace3 +mace6 +mdec +media100 +metasound +microdvd +mimic +misc4 +mjpeg # mjpegtools +mjpeg_qsv # mjpegtools +mjpegb +mlp +mmvideo +motionpixels +movtext +mp1 # twolame/lame +mp1float # twolame/lame +mp2 # twolame +mp2float # twolame +mp3 # lame +mp3adu +mp3adufloat +mp3float # lame +mp3on4 +mp3on4float +mpc7 +mpc8 +mpeg1_v4l2m2m +mpeg1video +mpeg2_qsv +mpeg2_v4l2m2m +mpeg2video +mpeg4 +mpeg4_v4l2m2m # hardware +mpegvideo +mpl2 +msa1 +mscc +msmpeg4v1 +msmpeg4v2 +msmpeg4v3 +msnsiren +msp2 +msrle +mss1 +msvideo1 +mszh +mts2 +mv30 +mvc1 +mvc2 +mvdv +mvha +mwsc +mxpeg +nellymoser +nuv +on2avc +opus # libopus +paf_audio +paf_video +pam # trivial +pbm # trivial +pcm_alaw # trivial +pcm_bluray +pcm_dvd +pcm_f16le # trivial +pcm_f24le # trivial +pcm_f32be # trivial +pcm_f32le # trivial +pcm_f64be # trivial +pcm_f64le # trivial +pcm_lxf # trivial +pcm_mulaw # trivial +pcm_s16be # trivial +pcm_s16be_planar # trivial +pcm_s16le # trivial +pcm_s16le_planar # trivial +pcm_s24be # trivial +pcm_s24daud # trivial +pcm_s24le # trivial +pcm_s24le_planar # trivial +pcm_s32be # trivial +pcm_s32le # trivial +pcm_s32le_planar # trivial +pcm_s64be # trivial +pcm_s64le # trivial +pcm_s8 # trivial +pcm_s8_planar # trivial +pcm_sga # trivial +pcm_u16be # trivial +pcm_u16le # trivial +pcm_u24be # trivial +pcm_u24le # trivial +pcm_u32be # trivial +pcm_u32le # trivial +pcm_u8 # trivial +pcm_vidc # trivial +pcx +pfm # trivial +pgm # trivial +pgmyuv # trivial +pgssub # mkvtoolnix +pgx +phm # trivial +photocd +pictor +pjs +png # libpng +ppm # trivial +prores +prores_raw +prosumer +psd +ptx +qcelp +qdm2 +qdmc +qdraw +qoa +qoi +qpeg +qtrle +r10k +r210 +ra_144 +ra_288 +rasc +rawvideo # trivial +realtext +rka +rl2 +roq +roq_dpcm +rpza +rscc +rv10 +rv20 +s302m +sami +sanm +sbc +screenpresso +sdx2_dpcm +sgi # trivial +sgirle # trivial +shorten +simbiosis_imx +sipr +siren +smackaud +smacker +smc +smvjpeg +snow +sol_dpcm +sonic +sp5x +speedhq +speex +srgc +srt # trivial +ssa # trivial +stl +subrip +subviewer +subviewer1 +sunrast # trivial +svq1 +svq3 +tak +targa # trivial +targa_y216 +tdsc +text # trivial +theora # libtheora +thp +tiertexseqvideo +tiff # libtiff +tmv +truehd +truemotion1 +truemotion2 +truemotion2rt +truespeech +tscc +tscc2 +tta +twinvq +txd +ulti +utvideo +v210 # trivial +v210x # trivial +v308 # trivial +v408 # trivial +v410 # trivial +vb +vble +vcr1 +vmdaudio +vmdvideo +vmnc +vnull +vorbis # libvorbis +vp3 # libav +vp4 # libav +vp5 # libav +vp6 # libav +vp6a # libav +vp6f # libav +vp7 # libav +vp8 # libvpx +vp8_qsv # libvpx +vp8_v4l2m2m # libvpx +vp9 # libvpx +vp9_qsv # libvpx +vp9_v4l2m2m # libvpx +vplayer +vqa +vqc +wady_dpcm +wavarc +wavpack +wbmp +wcmv +webp # libwebp +webvtt # trivial +wmav1 +wmav2 +wmavoice +wmv1 +wmv2 +wnv1 +wrapped_avframe # passthrough +ws_snd1 +xan_dpcm +xan_wc3 +xan_wc4 +xbin +xbm # trivial +xface +xl +xpm +xsub +xwd # xwd +y41p # trivial +ylc +yop +yuv4 # trivial +zero12v +zerocodec +zlib # zlib +zmbv # dosbox diff --git a/anda/multimedia/ffmpeg/enable_encoders b/anda/multimedia/ffmpeg/enable_encoders new file mode 100644 index 0000000000..d49e1a9514 --- /dev/null +++ b/anda/multimedia/ffmpeg/enable_encoders @@ -0,0 +1,216 @@ +## module name # reason for enablement in ffmpeg (usually there is another package that already got legal review) +a64multi +a64multi5 +aac +libfdk_aac # fdk-aac-free +ac3 +adpcm_adx +adpcm_argo +adpcm_g722 +adpcm_g726 +adpcm_g726le +adpcm_ima_alp +adpcm_ima_amv +adpcm_ima_apm +adpcm_ima_qt +adpcm_ima_ssi +adpcm_ima_wav +adpcm_ima_ws +adpcm_ms +adpcm_swf +adpcm_yamaha +alac +alias_pix +amv +anull +apng # libpng +ass # trivial +asv1 +asv2 +av1_amf +av1_nvenc +av1_qsv +av1_vaapi +bitpacked # trivial +bmp # trivial +cinepak +cljr +dca +dfpwm +dnxhd +dnxhr +dpx +dvbsub +dvdsub +dvvideo +exr +ffv1 +ffvhuff # trivial+zlib +flac # libFLAC +flashsv +flashsv2 +flv +g723_1 +gif # libpng +h261 +h263 +h263_v4l2m2m # hardware +h263p +h264_amf # hardware +h264_nvenc # hardware +h264_qsv # hardware +h264_v4l2m2m # hardware +h264_vaapi # hardware +hap +hdr +hevc_amf # hardware +hevc_nvenc # hardware +hevc_qsv # hardware +hevc_v4l2m2m # hardware +hevc_vaapi # hardware +huffyuv # trivial+zlib +ilbc # ilbc +jpeg2000 +jpegls +libaom +libaom_av1 # libaom +libcodec2 # codec2 +libgsm # libgsm +libgsm_ms # libgsm +libilbc # ilbc +libjxl # libjxl +liblc3 # liblc3 +libmp3lame # lame +liboapv +libopencore_amrnb +libopenh264 # openh264 +libopenjpeg # openjpeg +libopus # opus +librav1e # rav1e +libspeex # speex +libsvtav1 +libtheora # libtheora +libtwolame # twolame +libvo_amrwbenc +libvorbis # libvorbis +libvpx_vp8 # libvpx +libvpx_vp9 # libvpx +libwebp # libwebp +libwebp_anim # libwebp +libxeve +libxvid # xvidcore +mjpeg # mjpegtools +mjpeg_qsv # mjpegtools +mjpeg_vaapi # mjpegtools +mlp +movtext +mp2 # twolame +mp2fixed # twolame +mpeg1video +mpeg2_qsv +mpeg2_vaapi +mpeg2video +mpeg4 +mpeg4_v4l2m2m # hardware +msmpeg4v2 +msmpeg4v3 +msvideo1 +nellymoser +opus # opus +pam +pbm # trivial +pcm_alaw # trivial +pcm_f32be # trivial +pcm_f32le # trivial +pcm_f64be # trivial +pcm_f64le # trivial +pcm_mulaw # trivial +pcm_s16be # trivial +pcm_s16be_planar # trivial +pcm_s16le # trivial +pcm_s16le_planar # trivial +pcm_s24be # trivial +pcm_s24le # trivial +pcm_s24le_planar # trivial +pcm_s32be # trivial +pcm_s32le # trivial +pcm_s32le_planar # trivial +pcm_s8 # trivial +pcm_s8_planar # trivial +pcm_u16be # trivial +pcm_u16le # trivial +pcm_u24be # trivial +pcm_u24le # trivial +pcm_u32be # trivial +pcm_u32le # trivial +pcm_u8 # trivial +pcx +pgm # trivial +pgmyuv # trivial +phm # trivial +png # libpng +ppm # trivial +prores +prores_aw +prores_ks +qoi +qtrle +r10k # trivial +r210 # trivial +ra_144 +rawvideo # trivial +roq +roq_dpcm +rpza +rv10 +rv20 +s302m +sbc +sgi # trivial +smc +snow +sonic +sonic_ls +speedhq +srt # trivial +ssa # trivial +subrip # trivial +sunrast # trivial +svq1 +targa # trivial +text # trivial +tiff # libtiff +truehd +tta +ttml +utvideo +v210 # trivial +v308 # trivial +v408 # trivial +v410 # trivial +vc1_qsv # hardware +vc1_v4l2m2m # hardware +vc2 # dirac +vnull +vorbis # libvorbis +vp8_qsv # libvpx +vp8_v4l2m2m # libvpx +vp8_vaapi # libvpx +vp9_qsv # libvpx +vp9_vaapi # libvpx +wavpack +wbmp +webvtt # trivial +wmav1 +wmav2 +wmv1 +wmv2 +wrapped_avframe # passthrough +xbm # (X11) +xface +xsub +xwd # xwd +y41p # trivial +yuv4 # trivial +zlib # zlib +zmbv # dosbox diff --git a/anda/multimedia/ffmpeg/ffmpeg-HandBrake.patch b/anda/multimedia/ffmpeg/ffmpeg-HandBrake.patch index e34c256b10..40eaff17d7 100644 --- a/anda/multimedia/ffmpeg/ffmpeg-HandBrake.patch +++ b/anda/multimedia/ffmpeg/ffmpeg-HandBrake.patch @@ -1,878 +1,65 @@ -diff -Naur ffmpeg-7.1.2.old/configure ffmpeg-7.1.2/configure ---- ffmpeg-7.1.2.old/configure 2025-10-27 10:07:02.407490033 +0100 -+++ ffmpeg-7.1.2/configure 2025-10-27 10:07:02.458434476 +0100 -@@ -2466,6 +2466,7 @@ - kCMVideoCodecType_HEVC - kCMVideoCodecType_HEVCWithAlpha - kCMVideoCodecType_VP9 -+ kCMVideoCodecType_AV1 - kCVPixelFormatType_420YpCbCr10BiPlanarVideoRange - kCVPixelFormatType_422YpCbCr8BiPlanarVideoRange - kCVPixelFormatType_422YpCbCr10BiPlanarVideoRange -@@ -3172,6 +3173,8 @@ - av1_vaapi_hwaccel_select="av1_decoder" - av1_vdpau_hwaccel_deps="vdpau VdpPictureInfoAV1" - av1_vdpau_hwaccel_select="av1_decoder" -+av1_videotoolbox_hwaccel_deps="videotoolbox" -+av1_videotoolbox_hwaccel_select="av1_decoder" - av1_vulkan_hwaccel_deps="vulkan" - av1_vulkan_hwaccel_select="av1_decoder" - h263_vaapi_hwaccel_deps="vaapi" -@@ -3342,6 +3345,7 @@ - av1_mediacodec_decoder_deps="mediacodec" - av1_mediacodec_encoder_deps="mediacodec" - av1_mediacodec_encoder_select="extract_extradata_bsf" -+av1_mf_encoder_deps="mediafoundation" - av1_nvenc_encoder_deps="nvenc NV_ENC_PIC_PARAMS_AV1" - av1_nvenc_encoder_select="atsc_a53" - av1_qsv_decoder_select="qsvdec" -@@ -6724,6 +6728,7 @@ - check_func_headers CoreMedia/CMFormatDescription.h kCMVideoCodecType_HEVC "-framework CoreMedia" - check_func_headers CoreMedia/CMFormatDescription.h kCMVideoCodecType_HEVCWithAlpha "-framework CoreMedia" - check_func_headers CoreMedia/CMFormatDescription.h kCMVideoCodecType_VP9 "-framework CoreMedia" -+ check_func_headers CoreMedia/CMFormatDescription.h kCMVideoCodecType_AV1 "-framework CoreMedia" - check_func_headers CoreVideo/CVPixelBuffer.h kCVPixelFormatType_420YpCbCr10BiPlanarVideoRange "-framework CoreVideo" - check_func_headers CoreVideo/CVPixelBuffer.h kCVPixelFormatType_422YpCbCr8BiPlanarVideoRange "-framework CoreVideo" - check_func_headers CoreVideo/CVPixelBuffer.h kCVPixelFormatType_422YpCbCr10BiPlanarVideoRange "-framework CoreVideo" -diff -Naur ffmpeg-7.1.2.old/libavcodec/ac3dec.c ffmpeg-7.1.2/libavcodec/ac3dec.c ---- ffmpeg-7.1.2.old/libavcodec/ac3dec.c 2025-10-27 10:07:00.254471036 +0100 -+++ ffmpeg-7.1.2/libavcodec/ac3dec.c 2025-10-27 10:07:02.463169316 +0100 -@@ -253,72 +253,6 @@ - } - - /** -- * Parse the 'sync info' and 'bit stream info' from the AC-3 bitstream. -- * GetBitContext within AC3DecodeContext must point to -- * the start of the synchronized AC-3 bitstream. -- */ --static int ac3_parse_header(AC3DecodeContext *s) --{ -- GetBitContext *gbc = &s->gbc; -- int i; -- -- /* read the rest of the bsi. read twice for dual mono mode. */ -- i = !s->channel_mode; -- do { -- s->dialog_normalization[(!s->channel_mode)-i] = -get_bits(gbc, 5); -- if (s->dialog_normalization[(!s->channel_mode)-i] == 0) { -- s->dialog_normalization[(!s->channel_mode)-i] = -31; -- } -- if (s->target_level != 0) { -- s->level_gain[(!s->channel_mode)-i] = powf(2.0f, -- (float)(s->target_level - -- s->dialog_normalization[(!s->channel_mode)-i])/6.0f); -- } -- if (s->compression_exists[(!s->channel_mode)-i] = get_bits1(gbc)) { -- s->heavy_dynamic_range[(!s->channel_mode)-i] = -- AC3_HEAVY_RANGE(get_bits(gbc, 8)); -- } -- if (get_bits1(gbc)) -- skip_bits(gbc, 8); //skip language code -- if (get_bits1(gbc)) -- skip_bits(gbc, 7); //skip audio production information -- } while (i--); -- -- skip_bits(gbc, 2); //skip copyright bit and original bitstream bit -- -- /* skip the timecodes or parse the Alternate Bit Stream Syntax */ -- if (s->bitstream_id != 6) { -- if (get_bits1(gbc)) -- skip_bits(gbc, 14); //skip timecode1 -- if (get_bits1(gbc)) -- skip_bits(gbc, 14); //skip timecode2 -- } else { -- if (get_bits1(gbc)) { -- s->preferred_downmix = get_bits(gbc, 2); -- s->center_mix_level_ltrt = get_bits(gbc, 3); -- s->surround_mix_level_ltrt = av_clip(get_bits(gbc, 3), 3, 7); -- s->center_mix_level = get_bits(gbc, 3); -- s->surround_mix_level = av_clip(get_bits(gbc, 3), 3, 7); -- } -- if (get_bits1(gbc)) { -- s->dolby_surround_ex_mode = get_bits(gbc, 2); -- s->dolby_headphone_mode = get_bits(gbc, 2); -- skip_bits(gbc, 10); // skip adconvtyp (1), xbsi2 (8), encinfo (1) -- } -- } -- -- /* skip additional bitstream info */ -- if (get_bits1(gbc)) { -- i = get_bits(gbc, 6); -- do { -- skip_bits(gbc, 8); -- } while (i--); -- } -- -- return 0; --} -- --/** - * Common function to parse AC-3 or E-AC-3 frame header - */ - static int parse_frame_header(AC3DecodeContext *s) -@@ -375,10 +309,25 @@ - s->dba_syntax = 1; - s->skip_syntax = 1; - memset(s->channel_uses_aht, 0, sizeof(s->channel_uses_aht)); -- return ac3_parse_header(s); -+ /* volume control params */ -+ for (int i = 0; i < (s->channel_mode ? 1 : 2); i++) { -+ s->dialog_normalization[i] = hdr.dialog_normalization[i]; -+ if (s->dialog_normalization[i] == 0) { -+ s->dialog_normalization[i] = -31; -+ } -+ if (s->target_level != 0) { -+ s->level_gain[i] = powf(2.0f, -+ (float)(s->target_level - s->dialog_normalization[i])/6.0f); -+ } -+ s->compression_exists[i] = hdr.compression_exists[i]; -+ if (s->compression_exists[i]) { -+ s->heavy_dynamic_range[i] = AC3_HEAVY_RANGE(hdr.heavy_dynamic_range[i]); -+ } -+ } -+ return 0; - } else if (CONFIG_EAC3_DECODER) { - s->eac3 = 1; -- return ff_eac3_parse_header(s); -+ return ff_eac3_parse_header(s, &hdr); - } else { - av_log(s->avctx, AV_LOG_ERROR, "E-AC-3 support not compiled in\n"); - return AVERROR(ENOSYS); -@@ -1562,6 +1511,9 @@ - av_log(avctx, AV_LOG_ERROR, "invalid frame type\n"); - } - break; -+ case AC3_PARSE_ERROR_CHANNEL_MAP: -+ av_log(avctx, AV_LOG_ERROR, "invalid channel map\n"); -+ return AVERROR_INVALIDDATA; - case AC3_PARSE_ERROR_CRC: - break; - default: // Normal AVERROR do not try to recover. -diff -Naur ffmpeg-7.1.2.old/libavcodec/ac3dec.h ffmpeg-7.1.2/libavcodec/ac3dec.h ---- ffmpeg-7.1.2.old/libavcodec/ac3dec.h 2025-10-27 10:07:00.587473974 +0100 -+++ ffmpeg-7.1.2/libavcodec/ac3dec.h 2025-10-27 10:07:02.463287298 +0100 -@@ -255,11 +255,12 @@ - AVChannelLayout downmix_layout; - } AC3DecodeContext; - -+struct AC3HeaderInfo; - /** - * Parse the E-AC-3 frame header. - * This parses both the bit stream info and audio frame header. - */ --static int ff_eac3_parse_header(AC3DecodeContext *s); -+static int ff_eac3_parse_header(AC3DecodeContext *s, const struct AC3HeaderInfo *hdr); - - /** - * Decode mantissas in a single channel for the entire frame. -diff -Naur ffmpeg-7.1.2.old/libavcodec/ac3defs.h ffmpeg-7.1.2/libavcodec/ac3defs.h ---- ffmpeg-7.1.2.old/libavcodec/ac3defs.h 2025-10-27 10:07:00.586473965 +0100 -+++ ffmpeg-7.1.2/libavcodec/ac3defs.h 2025-10-27 10:07:02.463340118 +0100 -@@ -34,6 +34,8 @@ - #define AC3_CRITICAL_BANDS 50 - #define AC3_MAX_CPL_BANDS 18 - -+#define EAC3_SR_CODE_REDUCED 3 -+ - /* exponent encoding strategy */ - #define EXP_REUSE 0 - #define EXP_NEW 1 -diff -Naur ffmpeg-7.1.2.old/libavcodec/ac3_parser.c ffmpeg-7.1.2/libavcodec/ac3_parser.c ---- ffmpeg-7.1.2.old/libavcodec/ac3_parser.c 2025-10-27 10:07:00.290471354 +0100 -+++ ffmpeg-7.1.2/libavcodec/ac3_parser.c 2025-10-27 10:07:02.462962336 +0100 -@@ -73,6 +73,217 @@ - return i; - } - -+/** -+ * Parse the 'sync info' and 'bit stream info' from the AC-3 bitstream. -+ * GetBitContext within AC3DecodeContext must point to -+ * the start of the synchronized AC-3 bitstream. -+ */ -+static int ac3_parse_header(GetBitContext *gbc, AC3HeaderInfo *hdr) -+{ -+ /* read the rest of the bsi. read twice for dual mono mode. */ -+ for (int i = 0; i < (hdr->channel_mode ? 1 : 2); i++) { -+ hdr->dialog_normalization[i] = -get_bits(gbc, 5); -+ hdr->compression_exists[i] = get_bits1(gbc); -+ if (hdr->compression_exists[i]) -+ hdr->heavy_dynamic_range[i] = get_bits(gbc, 8); -+ if (get_bits1(gbc)) -+ skip_bits(gbc, 8); //skip language code -+ if (get_bits1(gbc)) -+ skip_bits(gbc, 7); //skip audio production information -+ } -+ -+ skip_bits(gbc, 2); //skip copyright bit and original bitstream bit -+ -+ /* skip the timecodes or parse the Alternate Bit Stream Syntax */ -+ if (hdr->bitstream_id != 6) { -+ if (get_bits1(gbc)) -+ skip_bits(gbc, 14); //skip timecode1 -+ if (get_bits1(gbc)) -+ skip_bits(gbc, 14); //skip timecode2 -+ } else { -+ if (get_bits1(gbc)) { -+ hdr->preferred_downmix = get_bits(gbc, 2); -+ hdr->center_mix_level_ltrt = get_bits(gbc, 3); -+ hdr->surround_mix_level_ltrt = av_clip(get_bits(gbc, 3), 3, 7); -+ hdr->center_mix_level = get_bits(gbc, 3); -+ hdr->surround_mix_level = av_clip(get_bits(gbc, 3), 3, 7); -+ } -+ if (get_bits1(gbc)) { -+ hdr->dolby_surround_ex_mode = get_bits(gbc, 2); -+ hdr->dolby_headphone_mode = get_bits(gbc, 2); -+ skip_bits(gbc, 10); // skip adconvtyp (1), xbsi2 (8), encinfo (1) -+ } -+ } -+ -+ /* skip additional bitstream info */ -+ if (get_bits1(gbc)) { -+ int i = get_bits(gbc, 6); -+ do { -+ skip_bits(gbc, 8); -+ } while (i--); -+ } -+ -+ return 0; -+} -+ -+static int eac3_parse_header(GetBitContext *gbc, AC3HeaderInfo *hdr) -+{ -+ if (hdr->frame_type == EAC3_FRAME_TYPE_RESERVED) -+ return AC3_PARSE_ERROR_FRAME_TYPE; -+ if (hdr->substreamid) -+ return AC3_PARSE_ERROR_FRAME_TYPE; -+ -+ skip_bits(gbc, 5); // skip bitstream id -+ -+ /* volume control params */ -+ for (int i = 0; i < (hdr->channel_mode ? 1 : 2); i++) { -+ hdr->dialog_normalization[i] = -get_bits(gbc, 5); -+ hdr->compression_exists[i] = get_bits1(gbc); -+ if (hdr->compression_exists[i]) -+ hdr->heavy_dynamic_range[i] = get_bits(gbc, 8); -+ } -+ -+ /* dependent stream channel map */ -+ if (hdr->frame_type == EAC3_FRAME_TYPE_DEPENDENT) { -+ hdr->channel_map_present = get_bits1(gbc); -+ if (hdr->channel_map_present) { -+ int64_t channel_layout = 0; -+ int channel_map = get_bits(gbc, 16); -+ -+ for (int i = 0; i < 16; i++) -+ if (channel_map & (1 << (EAC3_MAX_CHANNELS - i - 1))) -+ channel_layout |= ff_eac3_custom_channel_map_locations[i][1]; -+ -+ if (av_popcount64(channel_layout) > EAC3_MAX_CHANNELS) { -+ return AC3_PARSE_ERROR_CHANNEL_MAP; -+ } -+ hdr->channel_map = channel_map; -+ } -+ } -+ -+ /* mixing metadata */ -+ if (get_bits1(gbc)) { -+ /* center and surround mix levels */ -+ if (hdr->channel_mode > AC3_CHMODE_STEREO) { -+ hdr->preferred_downmix = get_bits(gbc, 2); -+ if (hdr->channel_mode & 1) { -+ /* if three front channels exist */ -+ hdr->center_mix_level_ltrt = get_bits(gbc, 3); -+ hdr->center_mix_level = get_bits(gbc, 3); -+ } -+ if (hdr->channel_mode & 4) { -+ /* if a surround channel exists */ -+ hdr->surround_mix_level_ltrt = av_clip(get_bits(gbc, 3), 3, 7); -+ hdr->surround_mix_level = av_clip(get_bits(gbc, 3), 3, 7); -+ } -+ } -+ -+ /* lfe mix level */ -+ if (hdr->lfe_on && (hdr->lfe_mix_level_exists = get_bits1(gbc))) { -+ hdr->lfe_mix_level = get_bits(gbc, 5); -+ } -+ -+ /* info for mixing with other streams and substreams */ -+ if (hdr->frame_type == EAC3_FRAME_TYPE_INDEPENDENT) { -+ for (int i = 0; i < (hdr->channel_mode ? 1 : 2); i++) { -+ // TODO: apply program scale factor -+ if (get_bits1(gbc)) { -+ skip_bits(gbc, 6); // skip program scale factor -+ } -+ } -+ if (get_bits1(gbc)) { -+ skip_bits(gbc, 6); // skip external program scale factor -+ } -+ /* skip mixing parameter data */ -+ switch(get_bits(gbc, 2)) { -+ case 1: skip_bits(gbc, 5); break; -+ case 2: skip_bits(gbc, 12); break; -+ case 3: { -+ int mix_data_size = (get_bits(gbc, 5) + 2) << 3; -+ skip_bits_long(gbc, mix_data_size); -+ break; -+ } -+ } -+ /* skip pan information for mono or dual mono source */ -+ if (hdr->channel_mode < AC3_CHMODE_STEREO) { -+ for (int i = 0; i < (hdr->channel_mode ? 1 : 2); i++) { -+ if (get_bits1(gbc)) { -+ /* note: this is not in the ATSC A/52B specification -+ reference: ETSI TS 102 366 V1.1.1 -+ section: E.1.3.1.25 */ -+ skip_bits(gbc, 8); // skip pan mean direction index -+ skip_bits(gbc, 6); // skip reserved paninfo bits -+ } -+ } -+ } -+ /* skip mixing configuration information */ -+ if (get_bits1(gbc)) { -+ for (int i = 0; i < hdr->num_blocks; i++) { -+ if (hdr->num_blocks == 1 || get_bits1(gbc)) { -+ skip_bits(gbc, 5); -+ } -+ } -+ } -+ } -+ } -+ -+ /* informational metadata */ -+ if (get_bits1(gbc)) { -+ hdr->bitstream_mode = get_bits(gbc, 3); -+ skip_bits(gbc, 2); // skip copyright bit and original bitstream bit -+ if (hdr->channel_mode == AC3_CHMODE_STEREO) { -+ hdr->dolby_surround_mode = get_bits(gbc, 2); -+ hdr->dolby_headphone_mode = get_bits(gbc, 2); -+ } -+ if (hdr->channel_mode >= AC3_CHMODE_2F2R) { -+ hdr->dolby_surround_ex_mode = get_bits(gbc, 2); -+ } -+ for (int i = 0; i < (hdr->channel_mode ? 1 : 2); i++) { -+ if (get_bits1(gbc)) { -+ skip_bits(gbc, 8); // skip mix level, room type, and A/D converter type -+ } -+ } -+ if (hdr->sr_code != EAC3_SR_CODE_REDUCED) { -+ skip_bits1(gbc); // skip source sample rate code -+ } -+ } -+ -+ /* converter synchronization flag -+ If frames are less than six blocks, this bit should be turned on -+ once every 6 blocks to indicate the start of a frame set. -+ reference: RFC 4598, Section 2.1.3 Frame Sets */ -+ if (hdr->frame_type == EAC3_FRAME_TYPE_INDEPENDENT && hdr->num_blocks != 6) { -+ skip_bits1(gbc); // skip converter synchronization flag -+ } -+ -+ /* original frame size code if this stream was converted from AC-3 */ -+ if (hdr->frame_type == EAC3_FRAME_TYPE_AC3_CONVERT && -+ (hdr->num_blocks == 6 || get_bits1(gbc))) { -+ skip_bits(gbc, 6); // skip frame size code -+ } -+ -+ /* additional bitstream info */ -+ if (get_bits1(gbc)) { -+ int addbsil = get_bits(gbc, 6); -+ for (int i = 0; i < addbsil + 1; i++) { -+ if (i == 0) { -+ /* In this 8 bit chunk, the LSB is equal to flag_ec3_extension_type_a -+ which can be used to detect Atmos presence */ -+ skip_bits(gbc, 7); -+ hdr->eac3_extension_type_a = get_bits1(gbc); -+ if (hdr->eac3_extension_type_a) { -+ hdr->complexity_index_type_a = get_bits(gbc, 8); -+ i++; -+ } -+ } else { -+ skip_bits(gbc, 8); // skip additional bit stream info -+ } -+ } -+ } -+ -+ return 0; -+} -+ - int ff_ac3_parse_header(GetBitContext *gbc, AC3HeaderInfo *hdr) - { - int frame_size_code; -@@ -133,6 +344,10 @@ - hdr->frame_size = ff_ac3_frame_size_tab[frame_size_code][hdr->sr_code] * 2; - hdr->frame_type = EAC3_FRAME_TYPE_AC3_CONVERT; //EAC3_FRAME_TYPE_INDEPENDENT; - hdr->substreamid = 0; -+ -+ int ret = ac3_parse_header(gbc, hdr); -+ if (ret < 0) -+ return ret; - } else { - /* Enhanced AC-3 */ - hdr->crc1 = 0; -@@ -165,6 +380,10 @@ - hdr->bit_rate = 8LL * hdr->frame_size * hdr->sample_rate / - (hdr->num_blocks * 256); - hdr->channels = ff_ac3_channels_tab[hdr->channel_mode] + hdr->lfe_on; -+ -+ int ret = eac3_parse_header(gbc, hdr); -+ if (ret < 0) -+ return ret; - } - hdr->channel_layout = ff_ac3_channel_layout_tab[hdr->channel_mode]; - if (hdr->lfe_on) -@@ -202,9 +421,13 @@ - { - GetBitContext gb; - AC3HeaderInfo hdr; -+ uint8_t tmp[32 + AV_INPUT_BUFFER_PADDING_SIZE]; - int err; - -- err = init_get_bits8(&gb, buf, size); -+ size = FFMIN(32, size); -+ memcpy(tmp, buf, size); -+ memset(tmp + size, 0, AV_INPUT_BUFFER_PADDING_SIZE); -+ err = init_get_bits8(&gb, tmp, size); - if (err < 0) - return AVERROR_INVALIDDATA; - err = ff_ac3_parse_header(&gb, &hdr); -diff -Naur ffmpeg-7.1.2.old/libavcodec/ac3_parser_internal.h ffmpeg-7.1.2/libavcodec/ac3_parser_internal.h ---- ffmpeg-7.1.2.old/libavcodec/ac3_parser_internal.h 2025-10-27 10:07:00.519473374 +0100 -+++ ffmpeg-7.1.2/libavcodec/ac3_parser_internal.h 2025-10-27 10:07:02.463059088 +0100 -@@ -46,6 +46,7 @@ - int substreamid; ///< substream identification - int center_mix_level; ///< Center mix level index - int surround_mix_level; ///< Surround mix level index -+ uint8_t channel_map_present; - uint16_t channel_map; - int num_blocks; ///< number of audio blocks - int dolby_surround_mode; -@@ -62,6 +63,23 @@ - uint64_t channel_layout; - int8_t ac3_bit_rate_code; - /** @} */ -+ -+ /** @name enhanced eac3 extension coded elements -+ * @{ -+ */ -+ int8_t dialog_normalization[2]; -+ uint8_t compression_exists[2]; -+ uint8_t heavy_dynamic_range[2]; -+ uint8_t center_mix_level_ltrt; ///< Center mix level index -+ uint8_t surround_mix_level_ltrt; ///< Surround mix level index -+ uint8_t dolby_headphone_mode; -+ uint8_t dolby_surround_ex_mode; -+ uint8_t lfe_mix_level_exists; -+ uint8_t lfe_mix_level; -+ uint8_t preferred_downmix; -+ uint8_t eac3_extension_type_a; -+ uint8_t complexity_index_type_a; -+ /** @} */ - } AC3HeaderInfo; - - typedef enum { -@@ -71,6 +89,7 @@ - AC3_PARSE_ERROR_FRAME_SIZE = -0x4030c0a, - AC3_PARSE_ERROR_FRAME_TYPE = -0x5030c0a, - AC3_PARSE_ERROR_CRC = -0x6030c0a, -+ AC3_PARSE_ERROR_CHANNEL_MAP = -0x7030c0a, - } AC3ParseError; - - /** -diff -Naur ffmpeg-7.1.2.old/libavcodec/allcodecs.c ffmpeg-7.1.2/libavcodec/allcodecs.c ---- ffmpeg-7.1.2.old/libavcodec/allcodecs.c 2025-10-27 10:07:01.864539025 +0100 -+++ ffmpeg-7.1.2/libavcodec/allcodecs.c 2025-10-27 10:07:02.458796899 +0100 -@@ -839,6 +839,7 @@ - extern const FFCodec ff_av1_qsv_decoder; - extern const FFCodec ff_av1_qsv_encoder; - extern const FFCodec ff_av1_amf_encoder; -+extern const FFCodec ff_av1_mf_encoder; - extern const FFCodec ff_av1_vaapi_encoder; - extern const FFCodec ff_libopenh264_encoder; - extern const FFCodec ff_libopenh264_decoder; -diff -Naur ffmpeg-7.1.2.old/libavcodec/amfenc_av1.c ffmpeg-7.1.2/libavcodec/amfenc_av1.c ---- ffmpeg-7.1.2.old/libavcodec/amfenc_av1.c 2025-10-27 10:07:00.536473524 +0100 -+++ ffmpeg-7.1.2/libavcodec/amfenc_av1.c 2025-10-27 10:07:02.440481173 +0100 -@@ -116,6 +116,7 @@ - { "none", "no adaptive quantization", 0, AV_OPT_TYPE_CONST, {.i64 = AMF_VIDEO_ENCODER_AV1_AQ_MODE_NONE }, 0, 0, VE, .unit = "adaptive_quantisation_mode" }, - { "caq", "context adaptive quantization", 0, AV_OPT_TYPE_CONST, {.i64 = AMF_VIDEO_ENCODER_AV1_AQ_MODE_CAQ }, 0, 0, VE, .unit = "adaptive_quantisation_mode" }, - -+ { "forced_idr", "Force I frames to be IDR frames", OFFSET(forced_idr), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, - - { "align", "alignment mode", OFFSET(align), AV_OPT_TYPE_INT, {.i64 = AMF_VIDEO_ENCODER_AV1_ALIGNMENT_MODE_NO_RESTRICTIONS }, AMF_VIDEO_ENCODER_AV1_ALIGNMENT_MODE_64X16_ONLY, AMF_VIDEO_ENCODER_AV1_ALIGNMENT_MODE_NO_RESTRICTIONS, VE, .unit = "align" }, - { "64x16", "", 0, AV_OPT_TYPE_CONST, {.i64 = AMF_VIDEO_ENCODER_AV1_ALIGNMENT_MODE_64X16_ONLY }, 0, 0, VE, .unit = "align" }, -@@ -186,6 +187,8 @@ - AMFRate framerate; - AMFSize framesize = AMFConstructSize(avctx->width, avctx->height); - amf_int64 color_depth; -+ amf_int64 color_primaries; -+ amf_int64 transfer_characteristic; - amf_int64 color_profile; - enum AVPixelFormat pix_fmt; - -@@ -238,7 +241,11 @@ - } - - /// Color profile -+ color_primaries = ff_amf_get_color_primaries(avctx); -+ transfer_characteristic = ff_amf_get_transfer_characteristic(avctx); - color_profile = ff_amf_get_color_profile(avctx); -+ AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_AV1_OUTPUT_COLOR_PRIMARIES, color_primaries); -+ AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_AV1_OUTPUT_TRANSFER_CHARACTERISTIC, transfer_characteristic); - AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_AV1_OUTPUT_COLOR_PROFILE, color_profile); - - /// Color Depth -@@ -250,16 +257,6 @@ - } - - AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_AV1_COLOR_BIT_DEPTH, color_depth); -- AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_AV1_OUTPUT_COLOR_PROFILE, color_profile); -- if (color_depth == AMF_COLOR_BIT_DEPTH_8) { -- /// Color Transfer Characteristics (AMF matches ISO/IEC) -- AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_AV1_OUTPUT_TRANSFER_CHARACTERISTIC, AMF_COLOR_TRANSFER_CHARACTERISTIC_BT709); -- /// Color Primaries (AMF matches ISO/IEC) -- AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_AV1_OUTPUT_COLOR_PRIMARIES, AMF_COLOR_PRIMARIES_BT709); -- } else { -- AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_AV1_OUTPUT_TRANSFER_CHARACTERISTIC, AMF_COLOR_TRANSFER_CHARACTERISTIC_SMPTE2084); -- AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_AV1_OUTPUT_COLOR_PRIMARIES, AMF_COLOR_PRIMARIES_BT2020); -- } - - profile_level = avctx->level; - if (profile_level == AV_LEVEL_UNKNOWN) { -diff -Naur ffmpeg-7.1.2.old/libavcodec/amfenc.c ffmpeg-7.1.2/libavcodec/amfenc.c ---- ffmpeg-7.1.2.old/libavcodec/amfenc.c 2025-10-27 10:07:00.387472209 +0100 -+++ ffmpeg-7.1.2/libavcodec/amfenc.c 2025-10-27 10:07:02.445244447 +0100 -@@ -415,10 +415,6 @@ +From 21520e59d165b9f614d312db4114053d06d04750 Mon Sep 17 00:00:00 2001 +From: Terra Packaging Team +Date: Sun, 31 May 2026 03:05:02 -0500 +Subject: [PATCH] Patch for HandBrake + +Patch based off a very similar patch by Negativo17 but formatted as a Git patch. + +See: https://github.com/HandBrake/HandBrake/tree/2f464fcf93d411ebdd969b39d67739ed658c5e58 +--- + libavcodec/amfenc.c | 4 - + libavcodec/av1dec.c | 14 + + libavcodec/ccaption_dec.c | 9 +- + libavcodec/dvdsubdec.c | 42 ++- + libavcodec/libdav1d.c | 14 + + libavcodec/mfenc.c | 13 +- + libavcodec/nvenc.c | 4 +- + libavcodec/pgssubdec.c | 554 ++++++++++++++++++----------- + libavcodec/qsvenc.c | 49 +++ + libavcodec/qsvenc.h | 8 +- + libavcodec/qsvenc_av1.c | 4 + + libavcodec/videotoolbox.c | 22 +- + libavfilter/vf_vpp_qsv.c | 6 +- + libavformat/isom.h | 3 + + libavformat/matroskaenc.c | 10 + + libavformat/mov.c | 204 ++++++++++- + libavformat/movenc.c | 231 +++++++++--- + libavutil/frame.h | 6 + + libavutil/hwcontext_d3d11va.c | 45 ++- + libavutil/hwcontext_videotoolbox.c | 12 +- + libavutil/side_data.c | 1 + + 21 files changed, 963 insertions(+), 292 deletions(-) + +diff --git a/libavcodec/amfenc.c b/libavcodec/amfenc.c +index 329ce29..86fa5ec 100644 +--- a/libavcodec/amfenc.c ++++ b/libavcodec/amfenc.c +@@ -173,10 +173,6 @@ static int amf_init_encoder(AVCodecContext *avctx) else pix_fmt = avctx->pix_fmt; - if (pix_fmt == AV_PIX_FMT_P010) { -- AMF_RETURN_IF_FALSE(ctx, ctx->version >= AMF_MAKE_FULL_VERSION(1, 4, 32, 0), AVERROR_UNKNOWN, "10-bit encoder is not supported by AMD GPU drivers versions lower than 23.30.\n"); +- AMF_RETURN_IF_FALSE(ctx, amf_device_ctx->version >= AMF_MAKE_FULL_VERSION(1, 4, 32, 0), AVERROR_UNKNOWN, "10-bit encoder is not supported by AMD GPU drivers versions lower than 23.30.\n"); - } - - ctx->format = amf_av_to_amf_format(pix_fmt); + ctx->format = av_av_to_amf_format(pix_fmt); AMF_RETURN_IF_FALSE(ctx, ctx->format != AMF_SURFACE_UNKNOWN, AVERROR(EINVAL), "Format %s is not supported\n", av_get_pix_fmt_name(pix_fmt)); -@@ -766,11 +762,50 @@ - switch (avctx->codec->id) { - case AV_CODEC_ID_H264: - AMF_ASSIGN_PROPERTY_INT64(res, surface, AMF_VIDEO_ENCODER_INSERT_AUD, !!ctx->aud); -+ switch (frame->pict_type) { -+ case AV_PICTURE_TYPE_I: -+ if (ctx->forced_idr) { -+ AMF_ASSIGN_PROPERTY_INT64(res, surface, AMF_VIDEO_ENCODER_INSERT_SPS, 1); -+ AMF_ASSIGN_PROPERTY_INT64(res, surface, AMF_VIDEO_ENCODER_INSERT_PPS, 1); -+ AMF_ASSIGN_PROPERTY_INT64(res, surface, AMF_VIDEO_ENCODER_FORCE_PICTURE_TYPE, AMF_VIDEO_ENCODER_PICTURE_TYPE_IDR); -+ } else { -+ AMF_ASSIGN_PROPERTY_INT64(res, surface, AMF_VIDEO_ENCODER_FORCE_PICTURE_TYPE, AMF_VIDEO_ENCODER_PICTURE_TYPE_I); -+ } -+ break; -+ case AV_PICTURE_TYPE_P: -+ AMF_ASSIGN_PROPERTY_INT64(res, surface, AMF_VIDEO_ENCODER_FORCE_PICTURE_TYPE, AMF_VIDEO_ENCODER_PICTURE_TYPE_P); -+ break; -+ case AV_PICTURE_TYPE_B: -+ AMF_ASSIGN_PROPERTY_INT64(res, surface, AMF_VIDEO_ENCODER_FORCE_PICTURE_TYPE, AMF_VIDEO_ENCODER_PICTURE_TYPE_B); -+ break; -+ } - break; - case AV_CODEC_ID_HEVC: - AMF_ASSIGN_PROPERTY_INT64(res, surface, AMF_VIDEO_ENCODER_HEVC_INSERT_AUD, !!ctx->aud); -+ switch (frame->pict_type) { -+ case AV_PICTURE_TYPE_I: -+ if (ctx->forced_idr) { -+ AMF_ASSIGN_PROPERTY_INT64(res, surface, AMF_VIDEO_ENCODER_HEVC_INSERT_HEADER, 1); -+ AMF_ASSIGN_PROPERTY_INT64(res, surface, AMF_VIDEO_ENCODER_HEVC_FORCE_PICTURE_TYPE, AMF_VIDEO_ENCODER_HEVC_PICTURE_TYPE_IDR); -+ } else { -+ AMF_ASSIGN_PROPERTY_INT64(res, surface, AMF_VIDEO_ENCODER_HEVC_FORCE_PICTURE_TYPE, AMF_VIDEO_ENCODER_HEVC_PICTURE_TYPE_I); -+ } -+ break; -+ case AV_PICTURE_TYPE_P: -+ AMF_ASSIGN_PROPERTY_INT64(res, surface, AMF_VIDEO_ENCODER_HEVC_FORCE_PICTURE_TYPE, AMF_VIDEO_ENCODER_HEVC_PICTURE_TYPE_P); -+ break; -+ } -+ break; -+ case AV_CODEC_ID_AV1: -+ if (frame->pict_type == AV_PICTURE_TYPE_I) { -+ if (ctx->forced_idr) { -+ AMF_ASSIGN_PROPERTY_INT64(res, surface, AMF_VIDEO_ENCODER_AV1_FORCE_INSERT_SEQUENCE_HEADER, 1); -+ AMF_ASSIGN_PROPERTY_INT64(res, surface, AMF_VIDEO_ENCODER_AV1_FORCE_FRAME_TYPE, AMF_VIDEO_ENCODER_AV1_FORCE_FRAME_TYPE_KEY); -+ } else { -+ AMF_ASSIGN_PROPERTY_INT64(res, surface, AMF_VIDEO_ENCODER_AV1_FORCE_FRAME_TYPE, AMF_VIDEO_ENCODER_AV1_FORCE_FRAME_TYPE_INTRA_ONLY); -+ } -+ } - break; -- //case AV_CODEC_ID_AV1 not supported - default: - break; - } -@@ -878,6 +913,115 @@ - return ret; - } - -+int ff_amf_get_color_primaries(AVCodecContext *avctx) -+{ -+ amf_int64 color_primaries = AMF_COLOR_PRIMARIES_UNDEFINED; -+ switch (avctx->color_primaries) { -+ case AVCOL_PRI_BT709: -+ color_primaries = AMF_COLOR_PRIMARIES_BT709; -+ break; -+ case AVCOL_PRI_UNSPECIFIED: -+ color_primaries = AMF_COLOR_PRIMARIES_UNSPECIFIED; -+ break; -+ case AVCOL_PRI_RESERVED: -+ color_primaries = AMF_COLOR_PRIMARIES_RESERVED; -+ break; -+ case AVCOL_PRI_BT470M: -+ color_primaries = AMF_COLOR_PRIMARIES_BT470M; -+ break; -+ case AVCOL_PRI_BT470BG: -+ color_primaries = AMF_COLOR_PRIMARIES_BT470BG; -+ break; -+ case AVCOL_PRI_SMPTE170M: -+ color_primaries = AMF_COLOR_PRIMARIES_SMPTE170M; -+ break; -+ case AVCOL_PRI_SMPTE240M: -+ color_primaries = AMF_COLOR_PRIMARIES_SMPTE240M; -+ break; -+ case AVCOL_PRI_FILM: -+ color_primaries = AMF_COLOR_PRIMARIES_FILM; -+ break; -+ case AVCOL_PRI_BT2020: -+ color_primaries = AMF_COLOR_PRIMARIES_BT2020; -+ break; -+ case AVCOL_PRI_SMPTE428: -+ color_primaries = AMF_COLOR_PRIMARIES_SMPTE428; -+ break; -+ case AVCOL_PRI_SMPTE431: -+ color_primaries = AMF_COLOR_PRIMARIES_SMPTE431; -+ break; -+ case AVCOL_PRI_SMPTE432: -+ color_primaries = AMF_COLOR_PRIMARIES_SMPTE432; -+ break; -+ case AVCOL_PRI_EBU3213: -+ color_primaries = AMF_COLOR_PRIMARIES_JEDEC_P22; -+ break; -+ } -+ return color_primaries; -+} -+ -+int ff_amf_get_transfer_characteristic(AVCodecContext *avctx) -+{ -+ amf_int64 transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_UNDEFINED; -+ switch (avctx->color_trc) { -+ case AVCOL_TRC_BT709: -+ transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_BT709; -+ break; -+ case AVCOL_TRC_UNSPECIFIED: -+ transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_UNSPECIFIED; -+ break; -+ case AVCOL_TRC_RESERVED: -+ transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_RESERVED; -+ break; -+ case AVCOL_TRC_GAMMA22: -+ transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_GAMMA22; -+ break; -+ case AVCOL_TRC_GAMMA28: -+ transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_GAMMA28; -+ break; -+ case AVCOL_TRC_SMPTE170M: -+ transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_SMPTE170M; -+ break; -+ case AVCOL_TRC_SMPTE240M: -+ transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_SMPTE240M; -+ break; -+ case AVCOL_TRC_LINEAR: -+ transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_LINEAR; -+ break; -+ case AVCOL_TRC_LOG: -+ transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_LOG; -+ break; -+ case AVCOL_TRC_LOG_SQRT: -+ transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_LOG_SQRT; -+ break; -+ case AVCOL_TRC_IEC61966_2_4: -+ transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_IEC61966_2_4; -+ break; -+ case AVCOL_TRC_BT1361_ECG: -+ transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_BT1361_ECG; -+ break; -+ case AVCOL_TRC_IEC61966_2_1: -+ transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_IEC61966_2_1; -+ break; -+ case AVCOL_TRC_BT2020_10: -+ transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_BT2020_10; -+ break; -+ case AVCOL_TRC_BT2020_12: -+ transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_BT2020_12; -+ break; -+ case AVCOL_TRC_SMPTE2084: -+ transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_SMPTE2084; -+ break; -+ case AVCOL_TRC_SMPTE428: -+ transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_SMPTE428; -+ break; -+ case AVCOL_TRC_ARIB_STD_B67: -+ transfer_characteristic = AMF_COLOR_TRANSFER_CHARACTERISTIC_ARIB_STD_B67; -+ break; -+ } -+ return transfer_characteristic; -+} -+ - int ff_amf_get_color_profile(AVCodecContext *avctx) - { - amf_int64 color_profile = AMF_VIDEO_CONVERTER_COLOR_PROFILE_UNKNOWN; -diff -Naur ffmpeg-7.1.2.old/libavcodec/amfenc.h ffmpeg-7.1.2/libavcodec/amfenc.h ---- ffmpeg-7.1.2.old/libavcodec/amfenc.h 2025-10-27 10:07:00.322471636 +0100 -+++ ffmpeg-7.1.2/libavcodec/amfenc.h 2025-10-27 10:07:02.440421671 +0100 -@@ -114,6 +114,7 @@ - int max_b_frames; - int qvbr_quality_level; - int hw_high_motion_quality_boost; -+ int forced_idr; - - // HEVC - specific options - -@@ -173,6 +174,8 @@ - */ - extern const enum AVPixelFormat ff_amf_pix_fmts[]; - -+int ff_amf_get_color_primaries(AVCodecContext *avctx); -+int ff_amf_get_transfer_characteristic(AVCodecContext *avctx); - int ff_amf_get_color_profile(AVCodecContext *avctx); - - /** -diff -Naur ffmpeg-7.1.2.old/libavcodec/amfenc_h264.c ffmpeg-7.1.2/libavcodec/amfenc_h264.c ---- ffmpeg-7.1.2.old/libavcodec/amfenc_h264.c 2025-10-27 10:07:00.604474124 +0100 -+++ ffmpeg-7.1.2/libavcodec/amfenc_h264.c 2025-10-27 10:07:02.440571423 +0100 -@@ -133,6 +133,7 @@ - { "me_half_pel", "Enable ME Half Pixel", OFFSET(me_half_pel), AV_OPT_TYPE_BOOL, { .i64 = -1 }, -1, 1, VE }, - { "me_quarter_pel", "Enable ME Quarter Pixel", OFFSET(me_quarter_pel),AV_OPT_TYPE_BOOL, { .i64 = -1 }, -1, 1, VE }, - -+ { "forced_idr", "Force I frames to be IDR frames", OFFSET(forced_idr) , AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, VE }, - { "aud", "Inserts AU Delimiter NAL unit", OFFSET(aud) , AV_OPT_TYPE_BOOL, { .i64 = -1 }, -1, 1, VE }, - - -@@ -201,6 +202,8 @@ - AMFRate framerate; - AMFSize framesize = AMFConstructSize(avctx->width, avctx->height); - int deblocking_filter = (avctx->flags & AV_CODEC_FLAG_LOOP_FILTER) ? 1 : 0; -+ amf_int64 color_primaries; -+ amf_int64 transfer_characteristic; - amf_int64 color_profile; - enum AVPixelFormat pix_fmt; - -@@ -273,7 +276,11 @@ - AMF_ASSIGN_PROPERTY_RATIO(res, ctx->encoder, AMF_VIDEO_ENCODER_ASPECT_RATIO, ratio); - } - -+ color_primaries = ff_amf_get_color_primaries(avctx); -+ transfer_characteristic = ff_amf_get_transfer_characteristic(avctx); - color_profile = ff_amf_get_color_profile(avctx); -+ AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_OUTPUT_COLOR_PRIMARIES, color_primaries); -+ AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_OUTPUT_TRANSFER_CHARACTERISTIC, transfer_characteristic); - AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_OUTPUT_COLOR_PROFILE, color_profile); - - /// Color Range (Support for older Drivers) -@@ -287,10 +294,6 @@ - AMF_RETURN_IF_FALSE(ctx, pix_fmt != AV_PIX_FMT_P010, AVERROR_INVALIDDATA, "10-bit input video is not supported by AMF H264 encoder\n"); - - AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_COLOR_BIT_DEPTH, AMF_COLOR_BIT_DEPTH_8); -- /// Color Transfer Characteristics (AMF matches ISO/IEC) -- AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_OUTPUT_TRANSFER_CHARACTERISTIC, (amf_int64)avctx->color_trc); -- /// Color Primaries (AMF matches ISO/IEC) -- AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_OUTPUT_COLOR_PRIMARIES, (amf_int64)avctx->color_primaries); - - // autodetect rate control method - if (ctx->rate_control_mode == AMF_VIDEO_ENCODER_RATE_CONTROL_METHOD_UNKNOWN) { -diff -Naur ffmpeg-7.1.2.old/libavcodec/amfenc_hevc.c ffmpeg-7.1.2/libavcodec/amfenc_hevc.c ---- ffmpeg-7.1.2.old/libavcodec/amfenc_hevc.c 2025-10-27 10:07:00.324471654 +0100 -+++ ffmpeg-7.1.2/libavcodec/amfenc_hevc.c 2025-10-27 10:07:02.440657756 +0100 -@@ -100,6 +100,7 @@ - { "me_half_pel", "Enable ME Half Pixel", OFFSET(me_half_pel), AV_OPT_TYPE_BOOL,{ .i64 = -1 }, -1, 1, VE }, - { "me_quarter_pel", "Enable ME Quarter Pixel ", OFFSET(me_quarter_pel),AV_OPT_TYPE_BOOL,{ .i64 = -1 }, -1, 1, VE }, - -+ { "forced_idr", "Force I frames to be IDR frames", OFFSET(forced_idr) ,AV_OPT_TYPE_BOOL,{ .i64 = 0 }, 0, 1, VE }, - { "aud", "Inserts AU Delimiter NAL unit", OFFSET(aud) ,AV_OPT_TYPE_BOOL,{ .i64 = -1 }, -1, 1, VE }, - - -@@ -167,6 +168,8 @@ - AMFSize framesize = AMFConstructSize(avctx->width, avctx->height); - int deblocking_filter = (avctx->flags & AV_CODEC_FLAG_LOOP_FILTER) ? 1 : 0; - amf_int64 color_depth; -+ amf_int64 color_primaries; -+ amf_int64 transfer_characteristic; - amf_int64 color_profile; - enum AVPixelFormat pix_fmt; - -@@ -241,7 +244,11 @@ - AMF_ASSIGN_PROPERTY_RATIO(res, ctx->encoder, AMF_VIDEO_ENCODER_HEVC_ASPECT_RATIO, ratio); - } - -+ color_primaries = ff_amf_get_color_primaries(avctx); -+ transfer_characteristic = ff_amf_get_transfer_characteristic(avctx); - color_profile = ff_amf_get_color_profile(avctx); -+ AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_HEVC_OUTPUT_COLOR_PRIMARIES, color_primaries); -+ AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_HEVC_OUTPUT_TRANSFER_CHARACTERISTIC, transfer_characteristic); - AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_HEVC_OUTPUT_COLOR_PROFILE, color_profile); - /// Color Range (Support for older Drivers) - AMF_ASSIGN_PROPERTY_BOOL(res, ctx->encoder, AMF_VIDEO_ENCODER_HEVC_NOMINAL_RANGE, !!(avctx->color_range == AVCOL_RANGE_JPEG)); -@@ -253,15 +260,6 @@ - color_depth = AMF_COLOR_BIT_DEPTH_10; - } - AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_HEVC_COLOR_BIT_DEPTH, color_depth); -- if (color_depth == AMF_COLOR_BIT_DEPTH_8) { -- /// Color Transfer Characteristics (AMF matches ISO/IEC) -- AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_HEVC_OUTPUT_TRANSFER_CHARACTERISTIC, AMF_COLOR_TRANSFER_CHARACTERISTIC_BT709); -- /// Color Primaries (AMF matches ISO/IEC) -- AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_HEVC_OUTPUT_COLOR_PRIMARIES, AMF_COLOR_PRIMARIES_BT709); -- } else { -- AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_HEVC_OUTPUT_TRANSFER_CHARACTERISTIC, AMF_COLOR_TRANSFER_CHARACTERISTIC_SMPTE2084); -- AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_HEVC_OUTPUT_COLOR_PRIMARIES, AMF_COLOR_PRIMARIES_BT2020); -- } - - // Picture control properties - AMF_ASSIGN_PROPERTY_INT64(res, ctx->encoder, AMF_VIDEO_ENCODER_HEVC_NUM_GOPS_PER_IDR, ctx->gops_per_idr); -diff -Naur ffmpeg-7.1.2.old/libavcodec/av1dec.c ffmpeg-7.1.2/libavcodec/av1dec.c ---- ffmpeg-7.1.2.old/libavcodec/av1dec.c 2025-10-27 10:07:00.478473013 +0100 -+++ ffmpeg-7.1.2/libavcodec/av1dec.c 2025-10-27 10:07:02.454638605 +0100 -@@ -541,6 +541,7 @@ - CONFIG_AV1_NVDEC_HWACCEL + \ - CONFIG_AV1_VAAPI_HWACCEL + \ - CONFIG_AV1_VDPAU_HWACCEL + \ -+ CONFIG_AV1_VIDEOTOOLBOX_HWACCEL + \ - CONFIG_AV1_VULKAN_HWACCEL) - enum AVPixelFormat pix_fmts[HWACCEL_MAX + 2], *fmtp = pix_fmts; - -@@ -568,6 +569,9 @@ - #if CONFIG_AV1_VDPAU_HWACCEL - *fmtp++ = AV_PIX_FMT_VDPAU; - #endif -+#if CONFIG_AV1_VIDEOTOOLBOX_HWACCEL -+ *fmtp++ = AV_PIX_FMT_VIDEOTOOLBOX; -+#endif - #if CONFIG_AV1_VULKAN_HWACCEL - *fmtp++ = AV_PIX_FMT_VULKAN; - #endif -@@ -592,6 +596,9 @@ - #if CONFIG_AV1_VDPAU_HWACCEL - *fmtp++ = AV_PIX_FMT_VDPAU; - #endif -+#if CONFIG_AV1_VIDEOTOOLBOX_HWACCEL -+ *fmtp++ = AV_PIX_FMT_VIDEOTOOLBOX; -+#endif - #if CONFIG_AV1_VULKAN_HWACCEL - *fmtp++ = AV_PIX_FMT_VULKAN; - #endif -@@ -1002,6 +1009,8 @@ - break; - } - case ITU_T_T35_PROVIDER_CODE_DOLBY: { +diff --git a/libavcodec/av1dec.c b/libavcodec/av1dec.c +index 2b3a36a..5dc813d 100644 +--- a/libavcodec/av1dec.c ++++ b/libavcodec/av1dec.c +@@ -1019,6 +1019,8 @@ FF_ENABLE_DEPRECATION_WARNINGS + if (ret < 0) + return ret; + } else if (country_code == ITU_T_T35_COUNTRY_CODE_US && provider_code == ITU_T_T35_PROVIDER_CODE_DOLBY) { + AVBufferRef *rpu_buf; + AVFrameSideData *rpu; int provider_oriented_code = bytestream2_get_be32(&gb); - if (itut_t35->itu_t_t35_country_code != ITU_T_T35_COUNTRY_CODE_US || - provider_oriented_code != 0x800) -@@ -1014,6 +1023,18 @@ - break; // ignore + if (provider_oriented_code != 0x800) + return 0; // ignore +@@ -1030,6 +1032,18 @@ FF_ENABLE_DEPRECATION_WARNINGS + return 0; // ignore } + rpu_buf = av_buffer_alloc(itut_t35->payload_size); @@ -890,110 +77,14 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/av1dec.c ffmpeg-7.1.2/libavcodec/av1dec.c ret = ff_dovi_attach_side_data(&s->dovi, frame); if (ret < 0) return ret; -@@ -1439,6 +1460,10 @@ - - if (raw_tile_group && (s->tile_num == raw_tile_group->tg_end + 1)) { - int show_frame = s->raw_frame_header->show_frame; -+ // Set nb_unit to point at the next OBU, to indicate which -+ // OBUs have been processed for this current frame. (If this -+ // frame gets output, we set nb_unit to this value later too.) -+ s->nb_unit = i + 1; - if (avctx->hwaccel && s->cur_frame.f) { - ret = FF_HW_SIMPLE_CALL(avctx, end_frame); - if (ret < 0) { -@@ -1449,6 +1474,8 @@ - - update_reference_list(avctx); - -+ // Set start_unit to indicate the first OBU of the next frame. -+ s->start_unit = s->nb_unit; - raw_tile_group = NULL; - s->raw_frame_header = NULL; - -@@ -1478,7 +1505,7 @@ - s->raw_frame_header = NULL; - av_packet_unref(s->pkt); - ff_cbs_fragment_reset(&s->current_obu); -- s->nb_unit = 0; -+ s->nb_unit = s->start_unit = 0; - } - if (!ret && !frame->buf[0]) - ret = AVERROR(EAGAIN); -@@ -1505,7 +1532,7 @@ - return ret; - } - -- s->nb_unit = 0; -+ s->nb_unit = s->start_unit = 0; - av_log(avctx, AV_LOG_DEBUG, "Total OBUs on this packet: %d.\n", - s->current_obu.nb_units); - } -@@ -1526,7 +1553,7 @@ - - av1_frame_unref(&s->cur_frame); - s->operating_point_idc = 0; -- s->nb_unit = 0; -+ s->nb_unit = s->start_unit = 0; - s->raw_frame_header = NULL; - s->raw_seq = NULL; - s->cll = NULL; -@@ -1594,6 +1621,9 @@ - #if CONFIG_AV1_VDPAU_HWACCEL - HWACCEL_VDPAU(av1), - #endif -+#if CONFIG_AV1_VIDEOTOOLBOX_HWACCEL -+ HWACCEL_VIDEOTOOLBOX(av1), -+#endif - #if CONFIG_AV1_VULKAN_HWACCEL - HWACCEL_VULKAN(av1), - #endif -diff -Naur ffmpeg-7.1.2.old/libavcodec/av1dec.h ffmpeg-7.1.2/libavcodec/av1dec.h ---- ffmpeg-7.1.2.old/libavcodec/av1dec.h 2025-10-27 10:07:00.402472342 +0100 -+++ ffmpeg-7.1.2/libavcodec/av1dec.h 2025-10-27 10:07:02.454762738 +0100 -@@ -114,7 +114,8 @@ - AV1Frame ref[AV1_NUM_REF_FRAMES]; - AV1Frame cur_frame; - -- int nb_unit; -+ int nb_unit; ///< The index of the next OBU to be processed. -+ int start_unit; ///< The index of the first OBU of the current frame. - - // AVOptions - int operating_point; -diff -Naur ffmpeg-7.1.2.old/libavcodec/bsf/hevc_mp4toannexb.c ffmpeg-7.1.2/libavcodec/bsf/hevc_mp4toannexb.c ---- ffmpeg-7.1.2.old/libavcodec/bsf/hevc_mp4toannexb.c 2025-10-27 10:07:00.449472757 +0100 -+++ ffmpeg-7.1.2/libavcodec/bsf/hevc_mp4toannexb.c 2025-10-27 10:07:02.435022530 +0100 -@@ -125,6 +125,7 @@ - AVPacket *in; - GetByteContext gb; - -+ int has_sps = 0, has_pps = 0; - int got_irap = 0; - int i, ret = 0; - -@@ -158,11 +159,14 @@ - } - - nalu_type = (bytestream2_peek_byte(&gb) >> 1) & 0x3f; -+ has_sps = (has_sps || nalu_type == HEVC_NAL_SPS); -+ has_pps = (has_pps || nalu_type == HEVC_NAL_PPS); - - /* prepend extradata to IRAP frames */ - is_irap = nalu_type >= HEVC_NAL_BLA_W_LP && - nalu_type <= HEVC_NAL_RSV_IRAP_VCL23; -- add_extradata = is_irap && !got_irap; -+ /* ignore the extradata if IRAP frame has sps and pps */ -+ add_extradata = is_irap && !got_irap && !(has_sps && has_pps); - extra_size = add_extradata * ctx->par_out->extradata_size; - got_irap |= is_irap; - -diff -Naur ffmpeg-7.1.2.old/libavcodec/ccaption_dec.c ffmpeg-7.1.2/libavcodec/ccaption_dec.c ---- ffmpeg-7.1.2.old/libavcodec/ccaption_dec.c 2025-10-27 10:07:00.593474027 +0100 -+++ ffmpeg-7.1.2/libavcodec/ccaption_dec.c 2025-10-27 10:07:02.429490227 +0100 -@@ -889,12 +889,13 @@ +diff --git a/libavcodec/ccaption_dec.c b/libavcodec/ccaption_dec.c +index 9b6c766..399296e 100644 +--- a/libavcodec/ccaption_dec.c ++++ b/libavcodec/ccaption_dec.c +@@ -893,12 +893,13 @@ static int decode(AVCodecContext *avctx, AVSubtitle *sub, if (ctx->buffer[bidx].str[0] || ctx->real_time) { - ff_dlog(ctx, "cdp writing data (%s)\n", ctx->buffer[bidx].str); + ff_dlog(avctx, "cdp writing data (%s)\n", ctx->buffer[bidx].str); - start_time = ctx->buffer_time[0]; - sub->pts = start_time; - end_time = ctx->buffer_time[1]; @@ -1008,10 +99,11 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/ccaption_dec.c ffmpeg-7.1.2/libavcodec/cc else sub->end_display_time = -1; ret = ff_ass_add_rect2(sub, ctx->buffer[bidx].str, ctx->readorder++, 0, NULL, NULL, &nb_rect_allocated); -diff -Naur ffmpeg-7.1.2.old/libavcodec/dvdsubdec.c ffmpeg-7.1.2/libavcodec/dvdsubdec.c ---- ffmpeg-7.1.2.old/libavcodec/dvdsubdec.c 2025-10-27 10:07:00.303471468 +0100 -+++ ffmpeg-7.1.2/libavcodec/dvdsubdec.c 2025-10-27 10:07:02.428490218 +0100 -@@ -45,6 +45,8 @@ +diff --git a/libavcodec/dvdsubdec.c b/libavcodec/dvdsubdec.c +index 9f9845b..1beb1fc 100644 +--- a/libavcodec/dvdsubdec.c ++++ b/libavcodec/dvdsubdec.c +@@ -45,6 +45,8 @@ typedef struct DVDSubContext int buf_size; int forced_subs_only; uint8_t used_color[256]; @@ -1020,7 +112,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/dvdsubdec.c ffmpeg-7.1.2/libavcodec/dvdsu } DVDSubContext; static void yuv_a_to_rgba(const uint8_t *ycbcr, const uint8_t *alpha, uint32_t *rgba, int num_values) -@@ -230,7 +232,10 @@ +@@ -230,7 +232,10 @@ static int decode_dvd_subtitles(void *logctx, DVDSubContext *ctx, uint32_t size; int64_t offset1, offset2; @@ -1032,7 +124,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/dvdsubdec.c ffmpeg-7.1.2/libavcodec/dvdsu return -1; if (AV_RB16(buf) == 0) { /* HD subpicture with 4-byte offsets */ -@@ -243,15 +248,22 @@ +@@ -243,15 +248,21 @@ static int decode_dvd_subtitles(void *logctx, DVDSubContext *ctx, cmd_pos = 2; } @@ -1041,15 +133,14 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/dvdsubdec.c ffmpeg-7.1.2/libavcodec/dvdsu + size = READ_OFFSET(buf + (big_offsets ? 2 : 0)); - cmd_pos = READ_OFFSET(buf + cmd_pos); ++ if (size == 0) ++ return -1; - if (cmd_pos < 0 || cmd_pos > buf_size - 2 - offset_size) { - if (cmd_pos > size) { -- av_log(ctx, AV_LOG_ERROR, "Discarding invalid packet\n"); +- av_log(logctx, AV_LOG_ERROR, "Discarding invalid packet\n"); - return 0; - } -+ if (size == 0) -+ return -1; -+ + if (buf_size < size) return AVERROR(EAGAIN); + @@ -1061,7 +152,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/dvdsubdec.c ffmpeg-7.1.2/libavcodec/dvdsu } while (cmd_pos > 0 && cmd_pos < buf_size - 2 - offset_size) { -@@ -524,10 +536,13 @@ +@@ -524,10 +535,13 @@ static int dvdsub_decode(AVCodecContext *avctx, AVSubtitle *sub, int appended = 0; int is_menu; @@ -1075,8 +166,8 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/dvdsubdec.c ffmpeg-7.1.2/libavcodec/dvdsu return ret; } buf = ctx->buf; -@@ -538,7 +553,12 @@ - is_menu = decode_dvd_subtitles(ctx, sub, buf, buf_size); +@@ -538,7 +552,12 @@ static int dvdsub_decode(AVCodecContext *avctx, AVSubtitle *sub, + is_menu = decode_dvd_subtitles(avctx, ctx, sub, buf, buf_size); if (is_menu == AVERROR(EAGAIN)) { *data_size = 0; - return appended ? 0 : append_to_cached_buf(avctx, buf, buf_size); @@ -1089,7 +180,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/dvdsubdec.c ffmpeg-7.1.2/libavcodec/dvdsu } if (is_menu < 0) { -@@ -547,9 +567,10 @@ +@@ -547,9 +566,10 @@ static int dvdsub_decode(AVCodecContext *avctx, AVSubtitle *sub, reset_rects(sub); *data_size = 0; @@ -1101,7 +192,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/dvdsubdec.c ffmpeg-7.1.2/libavcodec/dvdsu goto no_subtitle; if (ctx->forced_subs_only && !(sub->rects[0]->flags & AV_SUBTITLE_FLAG_FORCED)) -@@ -557,6 +578,8 @@ +@@ -557,6 +577,8 @@ static int dvdsub_decode(AVCodecContext *avctx, AVSubtitle *sub, ctx->buf_size = 0; *data_size = 1; @@ -1110,15 +201,15 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/dvdsubdec.c ffmpeg-7.1.2/libavcodec/dvdsu return buf_size; } -@@ -682,6 +705,7 @@ +@@ -683,6 +705,7 @@ static av_cold int dvdsub_init(AVCodecContext *avctx) av_log(avctx, AV_LOG_DEBUG, " 0x%06"PRIx32, ctx->palette[i]); av_log(avctx, AV_LOG_DEBUG, "\n"); } + ctx->pts = AV_NOPTS_VALUE; - return 1; + return 0; } -@@ -698,6 +722,7 @@ +@@ -699,6 +722,7 @@ static const AVOption options[] = { { "palette", "set the global palette", OFFSET(palette_str), AV_OPT_TYPE_STRING, { .str = NULL }, 0, 0, SD }, { "ifo_palette", "obtain the global palette from .IFO file", OFFSET(ifo_str), AV_OPT_TYPE_STRING, { .str = NULL }, 0, 0, SD }, { "forced_subs_only", "Only show forced subtitles", OFFSET(forced_subs_only), AV_OPT_TYPE_BOOL, {.i64 = 0}, 0, 1, SD}, @@ -1126,297 +217,88 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/dvdsubdec.c ffmpeg-7.1.2/libavcodec/dvdsu { NULL } }; static const AVClass dvdsub_class = { -diff -Naur ffmpeg-7.1.2.old/libavcodec/eac3dec.c ffmpeg-7.1.2/libavcodec/eac3dec.c ---- ffmpeg-7.1.2.old/libavcodec/eac3dec.c 2025-10-27 10:07:00.490473118 +0100 -+++ ffmpeg-7.1.2/libavcodec/eac3dec.c 2025-10-27 10:07:02.463392296 +0100 -@@ -53,8 +53,6 @@ - EAC3_GAQ_124 - } EAC3GaqMode; - --#define EAC3_SR_CODE_REDUCED 3 -- - static void ff_eac3_apply_spectral_extension(AC3DecodeContext *s) - { - int bin, bnd, ch, i; -@@ -287,7 +285,7 @@ - } - } - --static int ff_eac3_parse_header(AC3DecodeContext *s) -+static int ff_eac3_parse_header(AC3DecodeContext *s, const AC3HeaderInfo *hdr) - { - int i, blk, ch; - int ac3_exponent_strategy, parse_aht_info, parse_spx_atten_data; -@@ -323,11 +321,10 @@ - avpriv_request_sample(s->avctx, "Reduced sampling rate"); - return AVERROR_PATCHWELCOME; - } -- skip_bits(gbc, 5); // skip bitstream id - - /* volume control params */ - for (i = 0; i < (s->channel_mode ? 1 : 2); i++) { -- s->dialog_normalization[i] = -get_bits(gbc, 5); -+ s->dialog_normalization[i] = hdr->dialog_normalization[i]; - if (s->dialog_normalization[i] == 0) { - s->dialog_normalization[i] = -31; +diff --git a/libavcodec/libdav1d.c b/libavcodec/libdav1d.c +index 14ec984..90aa2ba 100644 +--- a/libavcodec/libdav1d.c ++++ b/libavcodec/libdav1d.c +@@ -415,6 +415,8 @@ FF_ENABLE_DEPRECATION_WARNINGS + if (res < 0) + return res; + } else if (country_code == ITU_T_T35_COUNTRY_CODE_US && provider_code == ITU_T_T35_PROVIDER_CODE_DOLBY) { ++ AVBufferRef *rpu_buf; ++ AVFrameSideData *rpu; + int provider_oriented_code = bytestream2_get_be32(&gb); + if (provider_oriented_code != 0x800) + return 0; // ignore +@@ -426,6 +428,18 @@ FF_ENABLE_DEPRECATION_WARNINGS + return 0; // ignore } -@@ -335,147 +332,30 @@ - s->level_gain[i] = powf(2.0f, - (float)(s->target_level - s->dialog_normalization[i])/6.0f); - } -- s->compression_exists[i] = get_bits1(gbc); -- if (s->compression_exists[i]) { -- s->heavy_dynamic_range[i] = AC3_HEAVY_RANGE(get_bits(gbc, 8)); -+ if (hdr->compression_exists[i]) { -+ s->heavy_dynamic_range[i] = AC3_HEAVY_RANGE(hdr->heavy_dynamic_range[i]); - } - } -- /* dependent stream channel map */ -- if (s->frame_type == EAC3_FRAME_TYPE_DEPENDENT) { -- if (get_bits1(gbc)) { -- int64_t channel_layout = 0; -- int channel_map = get_bits(gbc, 16); -- av_log(s->avctx, AV_LOG_DEBUG, "channel_map: %0X\n", channel_map); -- -- for (i = 0; i < 16; i++) -- if (channel_map & (1 << (EAC3_MAX_CHANNELS - i - 1))) -- channel_layout |= ff_eac3_custom_channel_map_locations[i][1]; -- -- if (av_popcount64(channel_layout) > EAC3_MAX_CHANNELS) { -- return AVERROR_INVALIDDATA; -- } -- s->channel_map = channel_map; -- } -- } -+ s->channel_map = hdr->channel_map; - - /* mixing metadata */ -- if (get_bits1(gbc)) { -- /* center and surround mix levels */ -- if (s->channel_mode > AC3_CHMODE_STEREO) { -- s->preferred_downmix = get_bits(gbc, 2); -- if (s->channel_mode & 1) { -- /* if three front channels exist */ -- s->center_mix_level_ltrt = get_bits(gbc, 3); -- s->center_mix_level = get_bits(gbc, 3); -- } -- if (s->channel_mode & 4) { -- /* if a surround channel exists */ -- s->surround_mix_level_ltrt = av_clip(get_bits(gbc, 3), 3, 7); -- s->surround_mix_level = av_clip(get_bits(gbc, 3), 3, 7); -- } -- } -- -- /* lfe mix level */ -- if (s->lfe_on && (s->lfe_mix_level_exists = get_bits1(gbc))) { -- s->lfe_mix_level = get_bits(gbc, 5); -- } -- -- /* info for mixing with other streams and substreams */ -- if (s->frame_type == EAC3_FRAME_TYPE_INDEPENDENT) { -- for (i = 0; i < (s->channel_mode ? 1 : 2); i++) { -- // TODO: apply program scale factor -- if (get_bits1(gbc)) { -- skip_bits(gbc, 6); // skip program scale factor -- } -- } -- if (get_bits1(gbc)) { -- skip_bits(gbc, 6); // skip external program scale factor -- } -- /* skip mixing parameter data */ -- switch(get_bits(gbc, 2)) { -- case 1: skip_bits(gbc, 5); break; -- case 2: skip_bits(gbc, 12); break; -- case 3: { -- int mix_data_size = (get_bits(gbc, 5) + 2) << 3; -- skip_bits_long(gbc, mix_data_size); -- break; -- } -- } -- /* skip pan information for mono or dual mono source */ -- if (s->channel_mode < AC3_CHMODE_STEREO) { -- for (i = 0; i < (s->channel_mode ? 1 : 2); i++) { -- if (get_bits1(gbc)) { -- /* note: this is not in the ATSC A/52B specification -- reference: ETSI TS 102 366 V1.1.1 -- section: E.1.3.1.25 */ -- skip_bits(gbc, 8); // skip pan mean direction index -- skip_bits(gbc, 6); // skip reserved paninfo bits -- } -- } -- } -- /* skip mixing configuration information */ -- if (get_bits1(gbc)) { -- for (blk = 0; blk < s->num_blocks; blk++) { -- if (s->num_blocks == 1 || get_bits1(gbc)) { -- skip_bits(gbc, 5); -- } -- } -- } -- } -- } -+ s->preferred_downmix = hdr->preferred_downmix; -+ s->center_mix_level_ltrt = hdr->center_mix_level_ltrt; -+ s->center_mix_level = hdr->center_mix_level; -+ s->surround_mix_level_ltrt = hdr->surround_mix_level_ltrt; -+ s->surround_mix_level = hdr->surround_mix_level; -+ s->lfe_mix_level_exists = hdr->lfe_mix_level_exists; -+ s->lfe_mix_level = hdr->lfe_mix_level; -+ s->dolby_surround_mode = hdr->dolby_surround_mode; -+ s->dolby_headphone_mode = hdr->dolby_headphone_mode; -+ s->dolby_surround_ex_mode = hdr->dolby_surround_ex_mode; - - /* informational metadata */ -- if (get_bits1(gbc)) { -- s->bitstream_mode = get_bits(gbc, 3); -- skip_bits(gbc, 2); // skip copyright bit and original bitstream bit -- if (s->channel_mode == AC3_CHMODE_STEREO) { -- s->dolby_surround_mode = get_bits(gbc, 2); -- s->dolby_headphone_mode = get_bits(gbc, 2); -- } -- if (s->channel_mode >= AC3_CHMODE_2F2R) { -- s->dolby_surround_ex_mode = get_bits(gbc, 2); -- } -- for (i = 0; i < (s->channel_mode ? 1 : 2); i++) { -- if (get_bits1(gbc)) { -- skip_bits(gbc, 8); // skip mix level, room type, and A/D converter type -- } -- } -- if (s->bit_alloc_params.sr_code != EAC3_SR_CODE_REDUCED) { -- skip_bits1(gbc); // skip source sample rate code -- } -- } -- -- /* converter synchronization flag -- If frames are less than six blocks, this bit should be turned on -- once every 6 blocks to indicate the start of a frame set. -- reference: RFC 4598, Section 2.1.3 Frame Sets */ -- if (s->frame_type == EAC3_FRAME_TYPE_INDEPENDENT && s->num_blocks != 6) { -- skip_bits1(gbc); // skip converter synchronization flag -- } -- -- /* original frame size code if this stream was converted from AC-3 */ -- if (s->frame_type == EAC3_FRAME_TYPE_AC3_CONVERT && -- (s->num_blocks == 6 || get_bits1(gbc))) { -- skip_bits(gbc, 6); // skip frame size code -- } -+ s->bitstream_mode = hdr->bitstream_mode; - - /* additional bitstream info */ -- if (get_bits1(gbc)) { -- int addbsil = get_bits(gbc, 6); -- for (i = 0; i < addbsil + 1; i++) { -- if (i == 0) { -- /* In this 8 bit chunk, the LSB is equal to flag_ec3_extension_type_a -- which can be used to detect Atmos presence */ -- skip_bits(gbc, 7); -- if (get_bits1(gbc)) { -- s->eac3_extension_type_a = 1; -- } -- } else { -- skip_bits(gbc, 8); // skip additional bit stream info -- } -- } -- } -+ s->eac3_extension_type_a = hdr->eac3_extension_type_a; - - /* audio frame syntax flags, strategy data, and per-frame data */ - -diff -Naur ffmpeg-7.1.2.old/libavcodec/hwaccels.h ffmpeg-7.1.2/libavcodec/hwaccels.h ---- ffmpeg-7.1.2.old/libavcodec/hwaccels.h 2025-10-27 10:07:00.251471009 +0100 -+++ ffmpeg-7.1.2/libavcodec/hwaccels.h 2025-10-27 10:07:02.454807062 +0100 -@@ -26,6 +26,7 @@ - extern const struct FFHWAccel ff_av1_nvdec_hwaccel; - extern const struct FFHWAccel ff_av1_vaapi_hwaccel; - extern const struct FFHWAccel ff_av1_vdpau_hwaccel; -+extern const struct FFHWAccel ff_av1_videotoolbox_hwaccel; - extern const struct FFHWAccel ff_av1_vulkan_hwaccel; - extern const struct FFHWAccel ff_h263_vaapi_hwaccel; - extern const struct FFHWAccel ff_h263_videotoolbox_hwaccel; -diff -Naur ffmpeg-7.1.2.old/libavcodec/libdav1d.c ffmpeg-7.1.2/libavcodec/libdav1d.c ---- ffmpeg-7.1.2.old/libavcodec/libdav1d.c 2025-10-27 10:07:00.474472977 +0100 -+++ ffmpeg-7.1.2/libavcodec/libdav1d.c 2025-10-27 10:07:02.436286040 +0100 -@@ -563,6 +563,8 @@ - break; - } - case ITU_T_T35_PROVIDER_CODE_DOLBY: { -+ AVBufferRef *rpu_buf; -+ AVFrameSideData *rpu; - int provider_oriented_code = bytestream2_get_be32(&gb); - if (itut_t35->country_code != ITU_T_T35_COUNTRY_CODE_US || - provider_oriented_code != 0x800) -@@ -575,6 +577,18 @@ - break; // ignore - } - -+ rpu_buf = av_buffer_alloc(itut_t35->payload_size); -+ if (rpu_buf) { -+ memcpy(rpu_buf->data, itut_t35->payload, itut_t35->payload_size); -+ rpu = av_frame_new_side_data_from_buf(frame, AV_FRAME_DATA_DOVI_RPU_BUFFER_T35, rpu_buf); -+ if (!rpu) { -+ av_buffer_unref(&rpu_buf); -+ goto fail; -+ } -+ } else { -+ goto fail; ++ rpu_buf = av_buffer_alloc(itut_t35->payload_size); ++ if (rpu_buf) { ++ memcpy(rpu_buf->data, itut_t35->payload, itut_t35->payload_size); ++ rpu = av_frame_new_side_data_from_buf(frame, AV_FRAME_DATA_DOVI_RPU_BUFFER_T35, rpu_buf); ++ if (!rpu) { ++ av_buffer_unref(&rpu_buf); ++ return AVERROR(ENOMEM); + } ++ } else { ++ return AVERROR(ENOMEM); ++ } + - res = ff_dovi_attach_side_data(&dav1d->dovi, frame); - if (res < 0) - goto fail; -diff -Naur ffmpeg-7.1.2.old/libavcodec/Makefile ffmpeg-7.1.2/libavcodec/Makefile ---- ffmpeg-7.1.2.old/libavcodec/Makefile 2025-10-27 10:07:01.865180885 +0100 -+++ ffmpeg-7.1.2/libavcodec/Makefile 2025-10-27 10:07:02.454516424 +0100 -@@ -1008,6 +1008,7 @@ - OBJS-$(CONFIG_AV1_NVDEC_HWACCEL) += nvdec_av1.o - OBJS-$(CONFIG_AV1_VAAPI_HWACCEL) += vaapi_av1.o - OBJS-$(CONFIG_AV1_VDPAU_HWACCEL) += vdpau_av1.o -+OBJS-$(CONFIG_AV1_VIDEOTOOLBOX_HWACCEL) += videotoolbox_av1.o - OBJS-$(CONFIG_AV1_VULKAN_HWACCEL) += vulkan_decode.o vulkan_av1.o - OBJS-$(CONFIG_H263_VAAPI_HWACCEL) += vaapi_mpeg4.o - OBJS-$(CONFIG_H263_VIDEOTOOLBOX_HWACCEL) += videotoolbox.o -diff -Naur ffmpeg-7.1.2.old/libavcodec/mfenc.c ffmpeg-7.1.2/libavcodec/mfenc.c ---- ffmpeg-7.1.2.old/libavcodec/mfenc.c 2025-10-27 10:07:00.524473418 +0100 -+++ ffmpeg-7.1.2/libavcodec/mfenc.c 2025-10-27 10:07:02.459027162 +0100 -@@ -1315,3 +1315,4 @@ - - MF_ENCODER(VIDEO, h264, H264, venc_opts, VFMTS, VCAPS, defaults); - MF_ENCODER(VIDEO, hevc, HEVC, venc_opts, VFMTS, VCAPS, defaults); -+MF_ENCODER(VIDEO, av1, AV1, venc_opts, VFMTS, VCAPS, defaults); -diff -Naur ffmpeg-7.1.2.old/libavcodec/mf_utils.c ffmpeg-7.1.2/libavcodec/mf_utils.c ---- ffmpeg-7.1.2.old/libavcodec/mf_utils.c 2025-10-27 10:07:00.467472915 +0100 -+++ ffmpeg-7.1.2/libavcodec/mf_utils.c 2025-10-27 10:07:02.458887429 +0100 -@@ -240,6 +240,7 @@ - GUID_ENTRY(MFMediaType_Video), - GUID_ENTRY(MFAudioFormat_PCM), - GUID_ENTRY(MFAudioFormat_Float), -+ GUID_ENTRY(ff_MFVideoFormat_AV1), - GUID_ENTRY(MFVideoFormat_H264), - GUID_ENTRY(MFVideoFormat_H264_ES), - GUID_ENTRY(ff_MFVideoFormat_HEVC), -@@ -507,6 +508,7 @@ - const CLSID *ff_codec_to_mf_subtype(enum AVCodecID codec) + res = ff_dovi_attach_side_data(&dav1d->dovi, frame); + if (res < 0) + return res; +diff --git a/libavcodec/mfenc.c b/libavcodec/mfenc.c +index 541f7fb..b517352 100644 +--- a/libavcodec/mfenc.c ++++ b/libavcodec/mfenc.c +@@ -904,6 +904,8 @@ static int64_t mf_encv_input_score(AVCodecContext *avctx, IMFMediaType *type) + static int mf_encv_input_adjust(AVCodecContext *avctx, IMFMediaType *type) { - switch (codec) { -+ case AV_CODEC_ID_AV1: return &ff_MFVideoFormat_AV1; - case AV_CODEC_ID_H264: return &MFVideoFormat_H264; - case AV_CODEC_ID_HEVC: return &ff_MFVideoFormat_HEVC; - case AV_CODEC_ID_AC3: return &MFAudioFormat_Dolby_AC3; -diff -Naur ffmpeg-7.1.2.old/libavcodec/mf_utils.h ffmpeg-7.1.2/libavcodec/mf_utils.h ---- ffmpeg-7.1.2.old/libavcodec/mf_utils.h 2025-10-27 10:07:00.429472580 +0100 -+++ ffmpeg-7.1.2/libavcodec/mf_utils.h 2025-10-27 10:07:02.458955668 +0100 -@@ -113,6 +113,7 @@ + enum AVPixelFormat pix_fmt = ff_media_type_to_pix_fmt((IMFAttributes *)type); ++ AVRational framerate; ++ + if (avctx->pix_fmt == AV_PIX_FMT_D3D11) { + if (pix_fmt != AV_PIX_FMT_NV12 && pix_fmt != AV_PIX_FMT_D3D11) { + av_log(avctx, AV_LOG_ERROR, "unsupported input pixel format set\n"); +@@ -916,7 +918,16 @@ static int mf_encv_input_adjust(AVCodecContext *avctx, IMFMediaType *type) + } + } - DEFINE_MEDIATYPE_GUID(ff_MFVideoFormat_HEVC, 0x43564548); // FCC('HEVC') - DEFINE_MEDIATYPE_GUID(ff_MFVideoFormat_HEVC_ES, 0x53564548); // FCC('HEVS') -+DEFINE_MEDIATYPE_GUID(ff_MFVideoFormat_AV1, 0x31305641); // FCC('AV01') +- //ff_MFSetAttributeSize((IMFAttributes *)type, &MF_MT_FRAME_SIZE, avctx->width, avctx->height); ++ ff_MFSetAttributeSize((IMFAttributes *)type, &MF_MT_FRAME_SIZE, avctx->width, avctx->height); ++ IMFAttributes_SetUINT32(type, &MF_MT_INTERLACE_MODE, MFVideoInterlace_Progressive); ++ ++ if (avctx->framerate.num > 0 && avctx->framerate.den > 0) { ++ framerate = avctx->framerate; ++ } else { ++ framerate = av_inv_q(avctx->time_base); ++ } ++ ++ ff_MFSetAttributeRatio((IMFAttributes *)type, &MF_MT_FRAME_RATE, framerate.num, framerate.den); + return 0; + } +diff --git a/libavcodec/nvenc.c b/libavcodec/nvenc.c +index 3922305..8c02815 100644 +--- a/libavcodec/nvenc.c ++++ b/libavcodec/nvenc.c +@@ -680,7 +680,9 @@ static int nvenc_check_capabilities(AVCodecContext *avctx) - // This enum is missing from mingw-w64's codecapi.h by v7.0.0. -diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssubdec.c ---- ffmpeg-7.1.2.old/libavcodec/pgssubdec.c 2025-10-27 10:07:00.318471601 +0100 -+++ ffmpeg-7.1.2/libavcodec/pgssubdec.c 2025-10-27 10:07:02.446191090 +0100 + #ifdef NVENC_HAVE_MVHEVC + ctx->multiview_supported = nvenc_check_cap(avctx, NV_ENC_CAPS_SUPPORT_MVHEVC_ENCODE) > 0; +- if(ctx->profile == NV_ENC_HEVC_PROFILE_MULTIVIEW_MAIN && !ctx->multiview_supported) { ++ if (avctx->codec_id == AV_CODEC_ID_HEVC && ++ ctx->profile == NV_ENC_HEVC_PROFILE_MULTIVIEW_MAIN && ++ !ctx->multiview_supported) { + av_log(avctx, AV_LOG_WARNING, "Multiview not supported by the device\n"); + return AVERROR(ENOSYS); + } +diff --git a/libavcodec/pgssubdec.c b/libavcodec/pgssubdec.c +index 20583c9..b43ce23 100644 +--- a/libavcodec/pgssubdec.c ++++ b/libavcodec/pgssubdec.c @@ -35,9 +35,11 @@ #include "libavutil/opt.h" @@ -1432,7 +314,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu enum SegmentType { PALETTE_SEGMENT = 0x14, -@@ -48,57 +50,80 @@ +@@ -48,57 +50,80 @@ enum SegmentType { }; typedef struct PGSSubObjectRef { @@ -1536,7 +418,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu static void flush_cache(AVCodecContext *avctx) { PGSSubContext *ctx = avctx->priv_data; -@@ -106,8 +131,11 @@ +@@ -106,8 +131,11 @@ static void flush_cache(AVCodecContext *avctx) for (i = 0; i < ctx->objects.count; i++) { av_freep(&ctx->objects.object[i].rle); @@ -1549,7 +431,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu } ctx->objects.count = 0; ctx->palettes.count = 0; -@@ -144,6 +172,7 @@ +@@ -144,6 +172,7 @@ static av_cold int init_decoder(AVCodecContext *avctx) static av_cold int close_decoder(AVCodecContext *avctx) { @@ -1557,7 +439,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu flush_cache(avctx); return 0; -@@ -159,48 +188,51 @@ +@@ -159,48 +188,51 @@ static av_cold int close_decoder(AVCodecContext *avctx) * @param buf pointer to the RLE data to process * @param buf_size size of the RLE data to process */ @@ -1626,7 +508,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu if (avctx->err_recognition & AV_EF_EXPLODE) { return AVERROR_INVALIDDATA; } -@@ -209,13 +241,11 @@ +@@ -209,13 +241,11 @@ static int decode_rle(AVCodecContext *avctx, AVSubtitleRect *rect, } } @@ -1643,7 +525,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu return 0; } -@@ -237,7 +267,7 @@ +@@ -237,7 +267,7 @@ static int parse_object_segment(AVCodecContext *avctx, uint8_t sequence_desc; unsigned int rle_bitmap_len, width, height; @@ -1652,7 +534,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu if (buf_size <= 4) return AVERROR_INVALIDDATA; -@@ -260,57 +290,71 @@ +@@ -260,57 +290,71 @@ static int parse_object_segment(AVCodecContext *avctx, /* Read the Sequence Description to determine if start of RLE data or appended to previous RLE */ sequence_desc = bytestream_get_byte(&buf); @@ -1696,17 +578,16 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu + /* Get bitmap dimensions from data */ + width = bytestream_get_be16(&buf); + height = bytestream_get_be16(&buf); -+ + +- /* Get bitmap dimensions from data */ +- width = bytestream_get_be16(&buf); +- height = bytestream_get_be16(&buf); + /* Make sure the bitmap is not too large */ + if (MAX_OBJECT_WH < width || MAX_OBJECT_WH < height || !width || !height) { + av_log(avctx, AV_LOG_ERROR, "Bitmap dimensions (%dx%d) invalid.\n", width, height); + return AVERROR_INVALIDDATA; + } -- /* Get bitmap dimensions from data */ -- width = bytestream_get_be16(&buf); -- height = bytestream_get_be16(&buf); -- - /* Make sure the bitmap is not too large */ - if (avctx->width < width || avctx->height < height || !width || !height) { - av_log(avctx, AV_LOG_ERROR, "Bitmap dimensions (%dx%d) invalid.\n", width, height); @@ -1738,14 +619,10 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu - object->rle_remaining_len = 0; - return AVERROR(ENOMEM); + memcpy(object->rle + object->rle_data_len, buf, buf_size); - } ++ } + object->rle_data_len += buf_size; + object->rle_remaining_len -= buf_size; - -- memcpy(object->rle, buf, buf_size); -- object->rle_data_len = buf_size; -- object->rle_remaining_len = rle_bitmap_len - buf_size; -- ++ + /* Last in sequence object definition (can be both first and last) */ + if (sequence_desc & 0x40) { + /* Attempt decoding if data is valid */ @@ -1761,11 +638,16 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu + if (avctx->err_recognition & AV_EF_EXPLODE) + return AVERROR_INVALIDDATA; + } -+ } + } +- +- memcpy(object->rle, buf, buf_size); +- object->rle_data_len = buf_size; +- object->rle_remaining_len = rle_bitmap_len - buf_size; +- return 0; } -@@ -318,7 +362,7 @@ +@@ -318,7 +362,7 @@ static int parse_object_segment(AVCodecContext *avctx, * Parse the palette segment packet. * * The palette segment contains details of the palette, @@ -1774,7 +656,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu * * @param avctx contains the current codec context * @param buf pointer to the packet to process -@@ -391,13 +435,17 @@ +@@ -391,13 +435,17 @@ static int parse_presentation_segment(AVCodecContext *avctx, int64_t pts) { PGSSubContext *ctx = avctx->priv_data; @@ -1793,7 +675,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu ctx->presentation.pts = pts; ff_dlog(avctx, "Video Dimensions %dx%d\n", -@@ -406,88 +454,121 @@ +@@ -406,88 +454,121 @@ static int parse_presentation_segment(AVCodecContext *avctx, if (ret < 0) return ret; @@ -1863,50 +745,29 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu - for (i = 0; i < ctx->presentation.object_count; i++) - { - PGSSubObjectRef *const object = &ctx->presentation.objects[i]; -- ++ if (buf_end - buf < 8) { ++ av_log(avctx, AV_LOG_ERROR, "Insufficient space for object\n"); ++ ctx->presentation.object_count = i; ++ return AVERROR_INVALIDDATA; ++ } + - if (buf_end - buf < 8) { -- av_log(avctx, AV_LOG_ERROR, "Insufficent space for object\n"); +- av_log(avctx, AV_LOG_ERROR, "Insufficient space for object\n"); - ctx->presentation.object_count = i; - return AVERROR_INVALIDDATA; - } -- -- object->id = bytestream_get_be16(&buf); -- object->window_id = bytestream_get_byte(&buf); -- object->composition_flag = bytestream_get_byte(&buf); -- -- object->x = bytestream_get_be16(&buf); -- object->y = bytestream_get_be16(&buf); -- -- // If cropping -- if (object->composition_flag & 0x80) { -- object->crop_x = bytestream_get_be16(&buf); -- object->crop_y = bytestream_get_be16(&buf); -- object->crop_w = bytestream_get_be16(&buf); -- object->crop_h = bytestream_get_be16(&buf); -- } -- -- ff_dlog(avctx, "Subtitle Placement x=%d, y=%d\n", -- object->x, object->y); -- -- if (object->x > avctx->width || object->y > avctx->height) { -- av_log(avctx, AV_LOG_ERROR, "Subtitle out of video bounds. x = %d, y = %d, video width = %d, video height = %d.\n", -- object->x, object->y, -- avctx->width, avctx->height); -- object->y = object->x = 0; -- if (avctx->err_recognition & AV_EF_EXPLODE) { -+ if (buf_end - buf < 8) { -+ av_log(avctx, AV_LOG_ERROR, "Insufficent space for object\n"); -+ ctx->presentation.object_count = i; - return AVERROR_INVALIDDATA; - } -+ + object->id = bytestream_get_be16(&buf); + object->window_id = bytestream_get_byte(&buf); + object->composition_flag = bytestream_get_byte(&buf); -+ + +- object->id = bytestream_get_be16(&buf); +- object->window_id = bytestream_get_byte(&buf); +- object->composition_flag = bytestream_get_byte(&buf); + object->x = bytestream_get_be16(&buf); + object->y = bytestream_get_be16(&buf); -+ + +- object->x = bytestream_get_be16(&buf); +- object->y = bytestream_get_be16(&buf); + // If cropping + if (object->composition_flag & 0x80) { + object->crop_x = bytestream_get_be16(&buf); @@ -1914,15 +775,23 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu + object->crop_w = bytestream_get_be16(&buf); + object->crop_h = bytestream_get_be16(&buf); + } -+ + +- // If cropping +- if (object->composition_flag & 0x80) { +- object->crop_x = bytestream_get_be16(&buf); +- object->crop_y = bytestream_get_be16(&buf); +- object->crop_w = bytestream_get_be16(&buf); +- object->crop_h = bytestream_get_be16(&buf); + /* Placement is checked at decode after cropping. */ + ff_dlog(avctx, "Subtitle Placement x=%d, y=%d\n", + object->x, object->y); } - } ++ } + return 0; +} -+ + +- ff_dlog(avctx, "Subtitle Placement x=%d, y=%d\n", +- object->x, object->y); +/** + * Parse the window segment packet. + * @@ -1935,12 +804,21 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu + int buf_size) +{ + PGSSubContext *ctx = (PGSSubContext *)avctx->priv_data; -+ + +- if (object->x > avctx->width || object->y > avctx->height) { +- av_log(avctx, AV_LOG_ERROR, "Subtitle out of video bounds. x = %d, y = %d, video width = %d, video height = %d.\n", +- object->x, object->y, +- avctx->width, avctx->height); +- object->y = object->x = 0; +- if (avctx->err_recognition & AV_EF_EXPLODE) { +- return AVERROR_INVALIDDATA; +- } +- } + // 1 byte: number of windows defined + if (bytestream_get_byte(&buf) > MAX_OBJECT_REFS) { + av_log(avctx, AV_LOG_ERROR, "Too many windows defined.\n"); + return AVERROR_INVALIDDATA; -+ } + } + /* TODO: mask objects with windows when transfering to the graphic plane + * Window Segment Structure @@ -1968,7 +846,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu * * @param avctx contains the current codec context * @param data pointer to the data pertaining the subtitle to display -@@ -500,26 +581,33 @@ +@@ -500,26 +581,33 @@ static int display_end_segment(AVCodecContext *avctx, AVSubtitle *sub, PGSSubContext *ctx = avctx->priv_data; int64_t pts; PGSSubPalette *palette; @@ -2010,7 +888,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu palette = find_palette(ctx->presentation.palette_id, &ctx->palettes); if (!palette) { // Missing palette. Should only happen with damaged streams. -@@ -528,57 +616,128 @@ +@@ -528,57 +616,128 @@ static int display_end_segment(AVCodecContext *avctx, AVSubtitle *sub, avsubtitle_free(sub); return AVERROR_INVALIDDATA; } @@ -2022,6 +900,20 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu - return AVERROR(ENOMEM); - sub->rects[sub->num_rects++] = rect; - rect->type = SUBTITLE_BITMAP; +- +- /* Process bitmap */ +- object = find_object(ctx->presentation.objects[i].id, &ctx->objects); +- if (!object) { +- // Missing object. Should only happen with damaged streams. +- av_log(avctx, AV_LOG_ERROR, "Invalid object id %d\n", +- ctx->presentation.objects[i].id); +- if (avctx->err_recognition & AV_EF_EXPLODE) +- return AVERROR_INVALIDDATA; +- // Leaves rect empty with 0 width and height. +- continue; +- } +- if (ctx->presentation.objects[i].composition_flag & 0x40) +- rect->flags |= AV_SUBTITLE_FLAG_FORCED; + for (i = 0; i < ctx->plane.count; i++) { + const PGSSubObjectRef *sub_object = &ctx->presentation.objects[i]; + AVSubtitleRect *const gp_rect = &ctx->plane.visible_rect[i]; @@ -2044,25 +936,10 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu + } + if (sub_object->composition_flag & 0x40) + gp_rect->flags |= AV_SUBTITLE_FLAG_FORCED; - -- /* Process bitmap */ -- object = find_object(ctx->presentation.objects[i].id, &ctx->objects); -- if (!object) { -- // Missing object. Should only happen with damaged streams. -- av_log(avctx, AV_LOG_ERROR, "Invalid object id %d\n", -- ctx->presentation.objects[i].id); -- if (avctx->err_recognition & AV_EF_EXPLODE) -- return AVERROR_INVALIDDATA; -- // Leaves rect empty with 0 width and height. -- continue; -- } -- if (ctx->presentation.objects[i].composition_flag & 0x40) -- rect->flags |= AV_SUBTITLE_FLAG_FORCED; ++ + gp_rect->x = sub_object->x; + gp_rect->y = sub_object->y; - -- rect->x = ctx->presentation.objects[i].x; -- rect->y = ctx->presentation.objects[i].y; ++ + if (object->rle) { + int out_of_picture = 0; + gp_rect->w = object->w; @@ -2099,10 +976,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu + gp_rect->linesize[0] = sub_object->crop_w; + } + } - -- if (object->rle) { -- rect->w = object->w; -- rect->h = object->h; ++ + /* Make sure the subtitle is not out of picture. */ + if (avctx->width < gp_rect->x + gp_rect->w || !gp_rect->w) + out_of_picture = 1; @@ -2120,13 +994,26 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu + continue; + } -- rect->linesize[0] = object->w; +- rect->x = ctx->presentation.objects[i].x; +- rect->y = ctx->presentation.objects[i].y; + if (!object->bitmap_size || object->rle_remaining_len) { + gp_rect->w = 0; + gp_rect->h = 0; + continue; + } +- if (object->rle) { +- rect->w = object->w; +- rect->h = object->h; ++ gp_rect->data[0] = av_malloc_array(gp_rect->w, gp_rect->h); ++ if (!gp_rect->data[0]) ++ return AVERROR(ENOMEM); + +- rect->linesize[0] = object->w; ++ if (sub_object->composition_flag & 0x80) { ++ /* Copy cropped bitmap. */ ++ int y; + - if (object->rle_remaining_len) { - av_log(avctx, AV_LOG_ERROR, "RLE data length %u is %u bytes shorter than expected\n", - object->rle_data_len, object->rle_remaining_len); @@ -2138,14 +1025,6 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu - if ((avctx->err_recognition & AV_EF_EXPLODE) || - ret == AVERROR(ENOMEM)) { - return ret; -+ gp_rect->data[0] = av_malloc_array(gp_rect->w, gp_rect->h); -+ if (!gp_rect->data[0]) -+ return AVERROR(ENOMEM); -+ -+ if (sub_object->composition_flag & 0x80) { -+ /* Copy cropped bitmap. */ -+ int y; -+ + for (y = 0; y < sub_object->crop_h; y++) { + memcpy(&gp_rect->data[0][y * sub_object->crop_w], + &object->bitmap[(sub_object->crop_y + y) * @@ -2181,7 +1060,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu rect->data[1] = av_mallocz(AVPALETTE_SIZE); if (!rect->data[1]) return AVERROR(ENOMEM); -@@ -641,14 +800,7 @@ +@@ -641,14 +800,7 @@ static int decode(AVCodecContext *avctx, AVSubtitle *sub, ret = parse_presentation_segment(avctx, buf, segment_length, sub->pts); break; case WINDOW_SEGMENT: @@ -2197,24 +1076,11 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/pgssubdec.c ffmpeg-7.1.2/libavcodec/pgssu break; case DISPLAY_SEGMENT: if (*got_sub_ptr) { -diff -Naur ffmpeg-7.1.2.old/libavcodec/qsvenc_av1.c ffmpeg-7.1.2/libavcodec/qsvenc_av1.c ---- ffmpeg-7.1.2.old/libavcodec/qsvenc_av1.c 2025-10-27 10:07:00.531473480 +0100 -+++ ffmpeg-7.1.2/libavcodec/qsvenc_av1.c 2025-10-27 10:07:02.443863055 +0100 -@@ -189,6 +189,10 @@ - { "tile_cols", "Number of columns for tiled encoding", OFFSET(qsv.tile_cols), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, UINT16_MAX, VE }, - { "tile_rows", "Number of rows for tiled encoding", OFFSET(qsv.tile_rows), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, UINT16_MAX, VE }, - { "look_ahead_depth", "Depth of look ahead in number frames, available when extbrc option is enabled", OFFSET(qsv.look_ahead_depth), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 100, VE }, -+#if QSV_HAVE_EXT_AV1_SCC -+ { "palette_mode", "Enable palette mode of Screen Content Tool for encoding", OFFSET(qsv.palette_mode), AV_OPT_TYPE_BOOL, { .i64 = 0}, 0, 1, VE}, -+ { "intrabc", "Enable intra block copy of Screen Content Tool for encoding", OFFSET(qsv.intrabc), AV_OPT_TYPE_BOOL, { .i64 = 0}, 0, 1, VE}, -+#endif - { NULL }, - }; - -diff -Naur ffmpeg-7.1.2.old/libavcodec/qsvenc.c ffmpeg-7.1.2/libavcodec/qsvenc.c ---- ffmpeg-7.1.2.old/libavcodec/qsvenc.c 2025-10-27 10:07:00.592474018 +0100 -+++ ffmpeg-7.1.2/libavcodec/qsvenc.c 2025-10-27 10:07:02.443621469 +0100 -@@ -494,6 +494,9 @@ +diff --git a/libavcodec/qsvenc.c b/libavcodec/qsvenc.c +index fc1b879..eb0c116 100644 +--- a/libavcodec/qsvenc.c ++++ b/libavcodec/qsvenc.c +@@ -492,6 +492,9 @@ static void dump_video_av1_param(AVCodecContext *avctx, QSVEncContext *q, mfxExtAV1BitstreamParam *av1_bs_param = (mfxExtAV1BitstreamParam *)coding_opts[1]; mfxExtCodingOption2 *co2 = (mfxExtCodingOption2*)coding_opts[2]; mfxExtCodingOption3 *co3 = (mfxExtCodingOption3*)coding_opts[3]; @@ -2224,7 +1090,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/qsvenc.c ffmpeg-7.1.2/libavcodec/qsvenc.c av_log(avctx, AV_LOG_VERBOSE, "profile: %s; level: %"PRIu16"\n", print_profile(avctx->codec_id, info->CodecProfile), info->CodecLevel); -@@ -566,6 +569,13 @@ +@@ -564,6 +567,13 @@ static void dump_video_av1_param(AVCodecContext *avctx, QSVEncContext *q, print_threestate(av1_bs_param->WriteIVFHeaders)); av_log(avctx, AV_LOG_VERBOSE, "LowDelayBRC: %s\n", print_threestate(co3->LowDelayBRC)); av_log(avctx, AV_LOG_VERBOSE, "MaxFrameSize: %d;\n", co2->MaxFrameSize); @@ -2238,7 +1104,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/qsvenc.c ffmpeg-7.1.2/libavcodec/qsvenc.c } #endif -@@ -1282,6 +1292,28 @@ +@@ -1280,6 +1290,28 @@ static int init_video_param(AVCodecContext *avctx, QSVEncContext *q) } #endif @@ -2267,7 +1133,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/qsvenc.c ffmpeg-7.1.2/libavcodec/qsvenc.c if (!check_enc_param(avctx,q)) { av_log(avctx, AV_LOG_ERROR, "some encoding parameters are not supported by the QSV " -@@ -1389,11 +1421,21 @@ +@@ -1387,11 +1419,21 @@ static int qsv_retrieve_enc_av1_params(AVCodecContext *avctx, QSVEncContext *q) .Header.BufferSz = sizeof(co3), }; @@ -2289,7 +1155,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/qsvenc.c ffmpeg-7.1.2/libavcodec/qsvenc.c }; if (!QSV_RUNTIME_VERSION_ATLEAST(q->ver, 2, 5)) { -@@ -1842,6 +1884,13 @@ +@@ -1840,6 +1882,13 @@ int ff_qsv_enc_init(AVCodecContext *avctx, QSVEncContext *q) return ret; } @@ -2303,9 +1169,10 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/qsvenc.c ffmpeg-7.1.2/libavcodec/qsvenc.c q->avctx = avctx; return 0; -diff -Naur ffmpeg-7.1.2.old/libavcodec/qsvenc.h ffmpeg-7.1.2/libavcodec/qsvenc.h ---- ffmpeg-7.1.2.old/libavcodec/qsvenc.h 2025-10-27 10:07:00.282471283 +0100 -+++ ffmpeg-7.1.2/libavcodec/qsvenc.h 2025-10-27 10:07:02.443799916 +0100 +diff --git a/libavcodec/qsvenc.h b/libavcodec/qsvenc.h +index 4bc77f2..2e0a19b 100644 +--- a/libavcodec/qsvenc.h ++++ b/libavcodec/qsvenc.h @@ -38,6 +38,7 @@ #define QSV_HAVE_EXT_VP9_TILES QSV_VERSION_ATLEAST(1, 29) @@ -2314,7 +1181,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/qsvenc.h ffmpeg-7.1.2/libavcodec/qsvenc.h #if defined(_WIN32) || defined(__CYGWIN__) #define QSV_HAVE_AVBR 1 -@@ -188,10 +189,13 @@ +@@ -188,10 +189,13 @@ typedef struct QSVEncContext { mfxFrameSurface1 **opaque_surfaces; AVBufferRef *opaque_alloc_buf; #endif @@ -2329,7 +1196,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/qsvenc.h ffmpeg-7.1.2/libavcodec/qsvenc.h int nb_extparam_internal; mfxExtBuffer **extparam_str; -@@ -319,6 +323,8 @@ +@@ -319,6 +323,8 @@ typedef struct QSVEncContext { int dual_gfx; AVDictionary *qsv_params; @@ -2338,157 +1205,26 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/qsvenc.h ffmpeg-7.1.2/libavcodec/qsvenc.h } QSVEncContext; int ff_qsv_enc_init(AVCodecContext *avctx, QSVEncContext *q); -diff -Naur ffmpeg-7.1.2.old/libavcodec/videotoolbox_av1.c ffmpeg-7.1.2/libavcodec/videotoolbox_av1.c ---- ffmpeg-7.1.2.old/libavcodec/videotoolbox_av1.c 1970-01-01 01:00:00.000000000 +0100 -+++ ffmpeg-7.1.2/libavcodec/videotoolbox_av1.c 2025-10-27 10:07:02.455024552 +0100 -@@ -0,0 +1,105 @@ -+/* -+ * Videotoolbox hardware acceleration for AV1 -+ * Copyright (c) 2023 Jan Ekström -+ * Copyright (c) 2024 Ruslan Chernenko -+ * Copyright (c) 2024 Martin Storsjö -+ * -+ * This file is part of FFmpeg. -+ * -+ * FFmpeg is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU Lesser General Public -+ * License as published by the Free Software Foundation; either -+ * version 2.1 of the License, or (at your option) any later version. -+ * -+ * FFmpeg is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ * Lesser General Public License for more details. -+ * -+ * You should have received a copy of the GNU Lesser General Public -+ * License along with FFmpeg; if not, write to the Free Software -+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -+ */ -+ -+#include "libavutil/mem.h" -+ -+#include "av1dec.h" -+#include "hwaccel_internal.h" -+#include "internal.h" -+#include "vt_internal.h" -+ -+CFDataRef ff_videotoolbox_av1c_extradata_create(AVCodecContext *avctx) -+{ -+ AV1DecContext *s = avctx->priv_data; -+ uint8_t *buf; -+ CFDataRef data; -+ if (!s->raw_seq) -+ return NULL; -+ -+ buf = av_malloc(s->seq_data_ref->size + 4); -+ if (!buf) -+ return NULL; -+ buf[0] = 0x81; // version and marker (constant) -+ buf[1] = s->raw_seq->seq_profile << 5 | s->raw_seq->seq_level_idx[0]; -+ buf[2] = s->raw_seq->seq_tier[0] << 7 | -+ s->raw_seq->color_config.high_bitdepth << 6 | -+ s->raw_seq->color_config.twelve_bit << 5 | -+ s->raw_seq->color_config.mono_chrome << 4 | -+ s->raw_seq->color_config.subsampling_x << 3 | -+ s->raw_seq->color_config.subsampling_y << 2 | -+ s->raw_seq->color_config.chroma_sample_position; -+ -+ if (s->raw_seq->initial_display_delay_present_flag) -+ buf[3] = 0 << 5 | -+ s->raw_seq->initial_display_delay_present_flag << 4 | -+ s->raw_seq->initial_display_delay_minus_1[0]; -+ else -+ buf[3] = 0x00; -+ memcpy(buf + 4, s->seq_data_ref->data, s->seq_data_ref->size); -+ data = CFDataCreate(kCFAllocatorDefault, buf, s->seq_data_ref->size + 4); -+ av_free(buf); -+ return data; -+}; -+ -+ -+static int videotoolbox_av1_start_frame(AVCodecContext *avctx, -+ const uint8_t *buffer, -+ uint32_t size) -+{ -+ return 0; -+} -+ -+static int videotoolbox_av1_decode_slice(AVCodecContext *avctx, -+ const uint8_t *buffer, -+ uint32_t size) -+{ -+ return 0; -+} -+ -+static int videotoolbox_av1_end_frame(AVCodecContext *avctx) -+{ -+ const AV1DecContext *s = avctx->priv_data; -+ VTContext *vtctx = avctx->internal->hwaccel_priv_data; -+ AVFrame *frame = s->cur_frame.f; -+ -+ vtctx->bitstream_size = 0; -+ for (int i = s->start_unit; i < s->nb_unit; i++) -+ ff_videotoolbox_buffer_append(vtctx, s->current_obu.units[i].data, -+ s->current_obu.units[i].data_size); -+ return ff_videotoolbox_common_end_frame(avctx, frame); -+} -+ -+const FFHWAccel ff_av1_videotoolbox_hwaccel = { -+ .p.name = "av1_videotoolbox", -+ .p.type = AVMEDIA_TYPE_VIDEO, -+ .p.id = AV_CODEC_ID_AV1, -+ .p.pix_fmt = AV_PIX_FMT_VIDEOTOOLBOX, -+ .alloc_frame = ff_videotoolbox_alloc_frame, -+ .start_frame = videotoolbox_av1_start_frame, -+ .decode_slice = videotoolbox_av1_decode_slice, -+ .end_frame = videotoolbox_av1_end_frame, -+ .frame_params = ff_videotoolbox_frame_params, -+ .init = ff_videotoolbox_common_init, -+ .uninit = ff_videotoolbox_uninit, -+ .priv_data_size = sizeof(VTContext), -+}; -diff -Naur ffmpeg-7.1.2.old/libavcodec/videotoolbox.c ffmpeg-7.1.2/libavcodec/videotoolbox.c ---- ffmpeg-7.1.2.old/libavcodec/videotoolbox.c 2025-10-27 10:07:00.379472139 +0100 -+++ ffmpeg-7.1.2/libavcodec/videotoolbox.c 2025-10-27 10:07:02.456490466 +0100 -@@ -56,6 +56,10 @@ - enum { kCMVideoCodecType_VP9 = 'vp09' }; - #endif - -+#if !HAVE_KCMVIDEOCODECTYPE_AV1 -+enum { kCMVideoCodecType_AV1 = 'av01' }; +diff --git a/libavcodec/qsvenc_av1.c b/libavcodec/qsvenc_av1.c +index c7aa6e5..5edb5f3 100644 +--- a/libavcodec/qsvenc_av1.c ++++ b/libavcodec/qsvenc_av1.c +@@ -189,6 +189,10 @@ static const AVOption options[] = { + { "tile_cols", "Number of columns for tiled encoding", OFFSET(qsv.tile_cols), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, UINT16_MAX, VE }, + { "tile_rows", "Number of rows for tiled encoding", OFFSET(qsv.tile_rows), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, UINT16_MAX, VE }, + { "look_ahead_depth", "Depth of look ahead in number frames, available when extbrc option is enabled", OFFSET(qsv.look_ahead_depth), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 100, VE }, ++#if QSV_HAVE_EXT_AV1_SCC ++ { "palette_mode", "Enable palette mode of Screen Content Tool for encoding", OFFSET(qsv.palette_mode), AV_OPT_TYPE_BOOL, { .i64 = 0}, 0, 1, VE}, ++ { "intrabc", "Enable intra block copy of Screen Content Tool for encoding", OFFSET(qsv.intrabc), AV_OPT_TYPE_BOOL, { .i64 = 0}, 0, 1, VE}, +#endif -+ - #define VIDEOTOOLBOX_ESDS_EXTRADATA_PADDING 12 + { NULL }, + }; - typedef struct VTHWFrame { -@@ -92,6 +96,26 @@ - return 0; - } - -+int ff_videotoolbox_buffer_append(VTContext *vtctx, -+ const uint8_t *buffer, -+ uint32_t size) -+{ -+ void *tmp; -+ -+ tmp = av_fast_realloc(vtctx->bitstream, -+ &vtctx->allocated_size, -+ vtctx->bitstream_size + size); -+ -+ if (!tmp) -+ return AVERROR(ENOMEM); -+ -+ vtctx->bitstream = tmp; -+ memcpy(vtctx->bitstream + vtctx->bitstream_size, buffer, size); -+ vtctx->bitstream_size += size; -+ -+ return 0; -+} -+ - static int videotoolbox_postproc_frame(void *avctx, AVFrame *frame) - { - int ret; -@@ -108,9 +132,6 @@ +diff --git a/libavcodec/videotoolbox.c b/libavcodec/videotoolbox.c +index 2cd22cb..247ac19 100644 +--- a/libavcodec/videotoolbox.c ++++ b/libavcodec/videotoolbox.c +@@ -132,9 +132,6 @@ static int videotoolbox_postproc_frame(void *avctx, AVFrame *frame) frame->crop_top = 0; frame->crop_bottom = 0; @@ -2498,7 +1234,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/videotoolbox.c ffmpeg-7.1.2/libavcodec/vi frame->data[3] = (uint8_t*)ref->pixbuf; if (ref->hw_frames_ctx) { -@@ -790,7 +811,7 @@ +@@ -820,7 +817,7 @@ static CFDictionaryRef videotoolbox_buffer_attributes_create(int width, #if TARGET_OS_IPHONE CFDictionarySetValue(buffer_attributes, kCVPixelBufferOpenGLESCompatibilityKey, kCFBooleanTrue); #else @@ -2507,28 +1243,7 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/videotoolbox.c ffmpeg-7.1.2/libavcodec/vi #endif CFRelease(io_surface_properties); -@@ -847,6 +868,13 @@ - CFDictionarySetValue(avc_info, CFSTR("vpcC"), data); - break; - #endif -+#if CONFIG_AV1_VIDEOTOOLBOX_HWACCEL -+ case kCMVideoCodecType_AV1 : -+ data = ff_videotoolbox_av1c_extradata_create(avctx); -+ if (data) -+ CFDictionarySetValue(avc_info, CFSTR("av1C"), data); -+ break; -+#endif - default: - break; - } -@@ -912,10 +940,30 @@ - case AV_CODEC_ID_VP9 : - videotoolbox->cm_codec_type = kCMVideoCodecType_VP9; - break; -+ case AV_CODEC_ID_AV1 : -+ videotoolbox->cm_codec_type = kCMVideoCodecType_AV1; -+ break; - default : +@@ -956,6 +953,23 @@ static int videotoolbox_start(AVCodecContext *avctx) break; } @@ -2552,31 +1267,11 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/videotoolbox.c ffmpeg-7.1.2/libavcodec/vi #if defined(MAC_OS_X_VERSION_10_9) && !TARGET_OS_IPHONE && (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_9) && AV_HAS_BUILTIN(__builtin_available) if (avctx->codec_id == AV_CODEC_ID_PRORES) { if (__builtin_available(macOS 10.9, *)) { -diff -Naur ffmpeg-7.1.2.old/libavcodec/vt_internal.h ffmpeg-7.1.2/libavcodec/vt_internal.h ---- ffmpeg-7.1.2.old/libavcodec/vt_internal.h 2025-10-27 10:07:00.531473480 +0100 -+++ ffmpeg-7.1.2/libavcodec/vt_internal.h 2025-10-27 10:07:02.455086969 +0100 -@@ -56,6 +56,9 @@ - int ff_videotoolbox_buffer_copy(VTContext *vtctx, - const uint8_t *buffer, - uint32_t size); -+int ff_videotoolbox_buffer_append(VTContext *vtctx, -+ const uint8_t *buffer, -+ uint32_t size); - int ff_videotoolbox_uninit(AVCodecContext *avctx); - int ff_videotoolbox_h264_start_frame(AVCodecContext *avctx, - const uint8_t *buffer, -@@ -64,6 +67,7 @@ - const uint8_t *buffer, - uint32_t size); - int ff_videotoolbox_common_end_frame(AVCodecContext *avctx, AVFrame *frame); -+CFDataRef ff_videotoolbox_av1c_extradata_create(AVCodecContext *avctx); - CFDataRef ff_videotoolbox_avcc_extradata_create(AVCodecContext *avctx); - CFDataRef ff_videotoolbox_hvcc_extradata_create(AVCodecContext *avctx); - CFDataRef ff_videotoolbox_vpcc_extradata_create(AVCodecContext *avctx); -diff -Naur ffmpeg-7.1.2.old/libavfilter/vf_vpp_qsv.c ffmpeg-7.1.2/libavfilter/vf_vpp_qsv.c ---- ffmpeg-7.1.2.old/libavfilter/vf_vpp_qsv.c 2025-10-27 10:07:00.764475536 +0100 -+++ ffmpeg-7.1.2/libavfilter/vf_vpp_qsv.c 2025-10-27 10:07:02.461658339 +0100 -@@ -494,9 +494,9 @@ +diff --git a/libavfilter/vf_vpp_qsv.c b/libavfilter/vf_vpp_qsv.c +index 4de99d6..182bbf7 100644 +--- a/libavfilter/vf_vpp_qsv.c ++++ b/libavfilter/vf_vpp_qsv.c +@@ -494,9 +494,9 @@ static int vpp_set_frame_ext_params(AVFilterContext *ctx, const AVFrame *in, AVF outvsi_conf.Header.BufferId = MFX_EXTBUFF_VIDEO_SIGNAL_INFO_OUT; outvsi_conf.Header.BufferSz = sizeof(mfxExtVideoSignalInfo); outvsi_conf.VideoFullRange = (out->color_range == AVCOL_RANGE_JPEG); @@ -2589,10 +1284,11 @@ diff -Naur ffmpeg-7.1.2.old/libavfilter/vf_vpp_qsv.c ffmpeg-7.1.2/libavfilter/vf outvsi_conf.ColourDescriptionPresent = 1; if (memcmp(&vpp->invsi_conf, &invsi_conf, sizeof(mfxExtVideoSignalInfo)) || -diff -Naur ffmpeg-7.1.2.old/libavformat/isom.h ffmpeg-7.1.2/libavformat/isom.h ---- ffmpeg-7.1.2.old/libavformat/isom.h 2025-10-27 10:07:00.909476815 +0100 -+++ ffmpeg-7.1.2/libavformat/isom.h 2025-10-27 10:07:02.422783282 +0100 -@@ -272,6 +272,9 @@ +diff --git a/libavformat/isom.h b/libavformat/isom.h +index d7e1385..8fbc4d0 100644 +--- a/libavformat/isom.h ++++ b/libavformat/isom.h +@@ -282,6 +282,9 @@ typedef struct MOVStreamContext { MOVEncryptionIndex *encryption_index; } cenc; @@ -2600,12 +1296,13 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/isom.h ffmpeg-7.1.2/libavformat/isom.h + int fallback; + struct IAMFDemuxContext *iamf; + int iamf_stream_offset; } MOVStreamContext; - -diff -Naur ffmpeg-7.1.2.old/libavformat/matroskaenc.c ffmpeg-7.1.2/libavformat/matroskaenc.c ---- ffmpeg-7.1.2.old/libavformat/matroskaenc.c 2025-10-27 10:07:00.955477221 +0100 -+++ ffmpeg-7.1.2/libavformat/matroskaenc.c 2025-10-27 10:07:02.430490236 +0100 -@@ -2933,6 +2933,16 @@ +diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c +index 2c85672..8250c96 100644 +--- a/libavformat/matroskaenc.c ++++ b/libavformat/matroskaenc.c +@@ -2994,6 +2994,16 @@ static int mkv_check_new_extra_data(AVFormatContext *s, const AVPacket *pkt) case AV_CODEC_ID_AAC: if (side_data_size && mkv->track.bc) { int output_sample_rate = 0; @@ -2622,10 +1319,11 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/matroskaenc.c ffmpeg-7.1.2/libavformat/m ret = get_aac_sample_rates(s, mkv, side_data, side_data_size, &track->sample_rate, &output_sample_rate); if (ret < 0) -diff -Naur ffmpeg-7.1.2.old/libavformat/mov.c ffmpeg-7.1.2/libavformat/mov.c ---- ffmpeg-7.1.2.old/libavformat/mov.c 2025-10-27 10:07:00.889476639 +0100 -+++ ffmpeg-7.1.2/libavformat/mov.c 2025-10-27 10:07:02.447584145 +0100 -@@ -56,6 +56,7 @@ +diff --git a/libavformat/mov.c b/libavformat/mov.c +index 222d79e..eb0de62 100644 +--- a/libavformat/mov.c ++++ b/libavformat/mov.c +@@ -57,6 +57,7 @@ #include "libavcodec/mpegaudiodecheader.h" #include "libavcodec/mlp_parse.h" #include "avformat.h" @@ -2633,7 +1331,7 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/mov.c ffmpeg-7.1.2/libavformat/mov.c #include "internal.h" #include "avio_internal.h" #include "demux.h" -@@ -131,6 +132,33 @@ +@@ -131,6 +132,33 @@ static int mov_metadata_int8_no_padding(MOVContext *c, AVIOContext *pb, return 0; } @@ -2667,7 +1365,7 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/mov.c ffmpeg-7.1.2/libavformat/mov.c static int mov_metadata_gnre(MOVContext *c, AVIOContext *pb, unsigned len, const char *key) { -@@ -342,6 +370,73 @@ +@@ -342,6 +370,73 @@ static int mov_metadata_hmmt(MOVContext *c, AVIOContext *pb, unsigned len) return 0; } @@ -2741,15 +1439,7 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/mov.c ffmpeg-7.1.2/libavformat/mov.c static int mov_read_udta_string(MOVContext *c, AVIOContext *pb, MOVAtom atom) { char tmp_key[AV_FOURCC_MAX_STRING_SIZE] = {0}; -@@ -354,6 +449,7 @@ - int (*parse)(MOVContext*, AVIOContext*, unsigned, const char*) = NULL; - int raw = 0; - int num = 0; -+ AVDictionary *metadata; - - switch (atom.type) { - case MKTAG( '@','P','R','M'): key = "premiere_version"; raw = 1; break; -@@ -364,35 +460,71 @@ +@@ -370,36 +465,71 @@ static int mov_read_udta_string(MOVContext *c, AVIOContext *pb, MOVAtom atom) case MKTAG( 'a','k','I','D'): key = "account_type"; parse = mov_metadata_int8_no_padding; break; case MKTAG( 'a','p','I','D'): key = "account_id"; break; @@ -2806,6 +1496,7 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/mov.c ffmpeg-7.1.2/libavformat/mov.c return mov_metadata_loci(c, pb, atom.size); case MKTAG( 'm','a','n','u'): key = "make"; break; case MKTAG( 'm','o','d','l'): key = "model"; break; +- case MKTAG( 'n','a','m','e'): key = "name"; break; + case MKTAG( 'n','a','m','e'): key = "title"; raw = 1; break; case MKTAG( 'p','c','s','t'): key = "podcast"; parse = mov_metadata_int8_no_padding; break; @@ -2824,7 +1515,7 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/mov.c ffmpeg-7.1.2/libavformat/mov.c case MKTAG( 's','o','a','a'): key = "sort_album_artist"; break; case MKTAG( 's','o','a','l'): key = "sort_album"; break; case MKTAG( 's','o','a','r'): key = "sort_artist"; break; -@@ -401,6 +533,8 @@ +@@ -408,6 +538,8 @@ static int mov_read_udta_string(MOVContext *c, AVIOContext *pb, MOVAtom atom) case MKTAG( 's','o','s','n'): key = "sort_show"; break; case MKTAG( 's','t','i','k'): key = "media_type"; parse = mov_metadata_int8_no_padding; break; @@ -2833,7 +1524,7 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/mov.c ffmpeg-7.1.2/libavformat/mov.c case MKTAG( 't','r','k','n'): key = "track"; parse = mov_metadata_track_or_disc_number; break; case MKTAG( 't','v','e','n'): key = "episode_id"; break; -@@ -410,17 +544,23 @@ +@@ -417,17 +549,23 @@ static int mov_read_udta_string(MOVContext *c, AVIOContext *pb, MOVAtom atom) case MKTAG( 't','v','s','h'): key = "show"; break; case MKTAG( 't','v','s','n'): key = "season_number"; parse = mov_metadata_int8_bypass_padding; break; @@ -2858,7 +1549,7 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/mov.c ffmpeg-7.1.2/libavformat/mov.c case MKTAG(0xa9,'e','d','1'): key = "edit_date"; break; case MKTAG(0xa9,'e','n','c'): key = "encoder"; break; case MKTAG(0xa9,'f','m','t'): key = "original_format"; break; -@@ -428,23 +568,45 @@ +@@ -435,23 +573,45 @@ static int mov_read_udta_string(MOVContext *c, AVIOContext *pb, MOVAtom atom) case MKTAG(0xa9,'g','r','p'): key = "grouping"; break; case MKTAG(0xa9,'h','s','t'): key = "host_computer"; break; case MKTAG(0xa9,'i','n','f'): key = "comment"; break; @@ -2904,40 +1595,7 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/mov.c ffmpeg-7.1.2/libavformat/mov.c } retry: if (c->itunes_metadata && atom.size > 8) { -@@ -571,17 +733,23 @@ - } - str[str_size] = 0; - } -- c->fc->event_flags |= AVFMT_EVENT_FLAG_METADATA_UPDATED; -- av_dict_set(&c->fc->metadata, key, str, 0); -+ if (c->trak_index < 0) { -+ metadata = c->fc->metadata; -+ c->fc->event_flags |= AVFMT_EVENT_FLAG_METADATA_UPDATED; -+ if (!strcmp(key, "encoder")) { -+ int major, minor, micro; -+ if (sscanf(str, "HandBrake %d.%d.%d", &major, &minor, µ) == 3) { -+ c->handbrake_version = 1000000*major + 1000*minor + micro; -+ } -+ } -+ } -+ else { -+ metadata = c->fc->streams[c->trak_index]->metadata; -+ } -+ av_dict_set(&metadata, key, str, 0); - if (*language && strcmp(language, "und")) { - snprintf(key2, sizeof(key2), "%s-%s", key, language); -- av_dict_set(&c->fc->metadata, key2, str, 0); -- } -- if (!strcmp(key, "encoder")) { -- int major, minor, micro; -- if (sscanf(str, "HandBrake %d.%d.%d", &major, &minor, µ) == 3) { -- c->handbrake_version = 1000000*major + 1000*minor + micro; -- } -+ av_dict_set(&metadata, key2, str, 0); - } - } - -@@ -9088,6 +9256,23 @@ +@@ -9514,6 +9674,22 @@ fail: return ret; } @@ -2956,12 +1614,11 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/mov.c ffmpeg-7.1.2/libavformat/mov.c + + return 0; +} -+ + static const MOVParseTableEntry mov_default_parse_table[] = { { MKTAG('A','C','L','R'), mov_read_aclr }, { MKTAG('A','P','R','G'), mov_read_avid }, -@@ -9190,6 +9375,7 @@ +@@ -9616,6 +9792,7 @@ static const MOVParseTableEntry mov_default_parse_table[] = { { MKTAG('v','p','c','C'), mov_read_vpcc }, { MKTAG('m','d','c','v'), mov_read_mdcv }, { MKTAG('c','l','l','i'), mov_read_clli }, @@ -2969,7 +1626,7 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/mov.c ffmpeg-7.1.2/libavformat/mov.c { MKTAG('d','v','c','C'), mov_read_dvcc_dvvc }, { MKTAG('d','v','v','C'), mov_read_dvcc_dvvc }, { MKTAG('d','v','w','C'), mov_read_dvcc_dvvc }, -@@ -10374,6 +10560,23 @@ +@@ -11071,6 +11248,23 @@ static int mov_read_header(AVFormatContext *s) err = ff_replaygain_export(st, s->metadata); if (err < 0) return err; @@ -2979,9 +1636,9 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/mov.c ffmpeg-7.1.2/libavformat/mov.c + AVPacketSideData *sd; + int *fallback; + sd = av_packet_side_data_new(&st->codecpar->coded_side_data, -+ &st->codecpar->nb_coded_side_data, -+ AV_PKT_DATA_FALLBACK_TRACK, -+ sizeof(int), 0); ++ &st->codecpar->nb_coded_side_data, ++ AV_PKT_DATA_FALLBACK_TRACK, ++ sizeof(int), 0); + if (!sd) + return AVERROR(ENOMEM); + fallback = (int*)sd->data; @@ -2993,9 +1650,10 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/mov.c ffmpeg-7.1.2/libavformat/mov.c break; case AVMEDIA_TYPE_VIDEO: if (sc->display_matrix) { -diff -Naur ffmpeg-7.1.2.old/libavformat/movenc.c ffmpeg-7.1.2/libavformat/movenc.c ---- ffmpeg-7.1.2.old/libavformat/movenc.c 2025-10-27 10:07:00.933477027 +0100 -+++ ffmpeg-7.1.2/libavformat/movenc.c 2025-10-27 10:07:02.463726465 +0100 +diff --git a/libavformat/movenc.c b/libavformat/movenc.c +index fe6b259..89ec962 100644 +--- a/libavformat/movenc.c ++++ b/libavformat/movenc.c @@ -28,6 +28,7 @@ #include "movenc.h" @@ -3004,78 +1662,39 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/movenc.c ffmpeg-7.1.2/libavformat/movenc #include "avio_internal.h" #include "dovi_isom.h" #include "riff.h" -@@ -393,6 +394,8 @@ - uint16_t chan_loc; - /* if there is no dependent substream, then one bit reserved instead */ - } substream[1]; /* TODO: support 8 independent substreams */ -+ /* indicates the decoding complexity, 8 bits */ -+ uint8_t complexity_index_type_a; - }; +@@ -1001,6 +1002,15 @@ static int mov_write_chan_tag(AVFormatContext *s, AVIOContext *pb, MOVTrack *tra + if (track->multichannel_as_mono) + return 0; - static int mov_write_ac3_tag(AVFormatContext *s, AVIOContext *pb, MOVTrack *track) -@@ -474,6 +477,8 @@ - info->data_rate = FFMAX(info->data_rate, hdr->bit_rate / 1000); - info->ac3_bit_rate_code = FFMAX(info->ac3_bit_rate_code, - hdr->ac3_bit_rate_code); -+ info->complexity_index_type_a = hdr->complexity_index_type_a; -+ - num_blocks = hdr->num_blocks; - - if (!info->ec3_done) { -@@ -532,8 +537,6 @@ - int parent = hdr->substreamid; - - while (cumul_size != pkt->size) { -- GetBitContext gbc; -- int i; - ret = avpriv_ac3_parse_header(&hdr, pkt->data + cumul_size, pkt->size - cumul_size); - if (ret < 0) - goto end; -@@ -544,20 +547,9 @@ - info->substream[parent].num_dep_sub++; - ret /= 8; - -- /* header is parsed up to lfeon, but custom channel map may be needed */ -- init_get_bits8(&gbc, pkt->data + cumul_size + ret, pkt->size - cumul_size - ret); -- /* skip bsid */ -- skip_bits(&gbc, 5); -- /* skip volume control params */ -- for (i = 0; i < (hdr->channel_mode ? 1 : 2); i++) { -- skip_bits(&gbc, 5); // skip dialog normalization -- if (get_bits1(&gbc)) { -- skip_bits(&gbc, 8); // skip compression gain word -- } -- } - /* get the dependent stream channel map, if exists */ -- if (get_bits1(&gbc)) -- info->substream[parent].chan_loc |= (get_bits(&gbc, 16) >> 5) & 0x1f; -+ if (hdr->channel_map_present) -+ info->substream[parent].chan_loc |= (hdr->channel_map >> 5) & 0x1f; - else - info->substream[parent].chan_loc |= hdr->channel_mode; - cumul_size += hdr->frame_size; -@@ -614,7 +606,7 @@ - } - - info = track->eac3_priv; -- size = 2 + ((32 * (info->num_ind_sub + 1) + 7) >> 3); -+ size = 2 + (4 * (info->num_ind_sub + 1)) + (2 * !!info->complexity_index_type_a); - buf = av_malloc(size); - if (!buf) { - return AVERROR(ENOMEM); -@@ -639,6 +631,11 @@ - put_bits(&pbc, 9, info->substream[i].chan_loc); - } - } -+ if (info->complexity_index_type_a) { -+ put_bits(&pbc, 7, 0); /* reserved */ -+ put_bits(&pbc, 1, 1); // flag_eac3_extension_type_a -+ put_bits(&pbc, 8, info->complexity_index_type_a); ++ // Custom channels layout is not handled properly for these formats ++ // unset it for now, it will fallback to the layout stored in the extradata ++ // TODO: find the reason ++ if (track->par->codec_id == AV_CODEC_ID_AAC || ++ track->par->codec_id == AV_CODEC_ID_ALAC) ++ { ++ return 0; + } - flush_put_bits(&pbc); - size = put_bytes_output(&pbc); ++ + ret = ff_mov_get_channel_layout_tag(track->par, &layout_tag, + &bitmap, &channel_desc); -@@ -4055,6 +4052,41 @@ +@@ -1373,11 +1383,13 @@ static int mov_write_audio_tag(AVFormatContext *s, AVIOContext *pb, MOVMuxContex + int64_t pos = avio_tell(pb); + int version = 0; + uint32_t tag = track->tag; ++ int lpcm_flags = 0; + int ret = 0; + + if (track->mode == MODE_MOV) { +- if (track->timescale > UINT16_MAX || !track->par->ch_layout.nb_channels) { +- if (mov_get_lpcm_flags(track->par->codec_id)) ++ lpcm_flags = mov_get_lpcm_flags(track->par->codec_id); ++ if (track->timescale > UINT16_MAX || track->par->ch_layout.nb_channels > 2 || lpcm_flags) { ++ if (lpcm_flags) + tag = AV_RL32("lpcm"); + version = 2; + } else if (track->audio_vbr || mov_pcm_le_gt16(track->par->codec_id) || +@@ -4244,6 +4256,41 @@ static int mov_write_udta_sdp(AVIOContext *pb, MOVTrack *track) return len + 24; } @@ -3117,7 +1736,7 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/movenc.c ffmpeg-7.1.2/libavformat/movenc static int mov_write_track_metadata(AVIOContext *pb, AVStream *st, const char *tag, const char *str) { -@@ -4129,8 +4161,23 @@ +@@ -4318,8 +4365,23 @@ static int mov_write_track_udta_tag(AVIOContext *pb, MOVMuxContext *mov, if (ret < 0) return ret; @@ -3142,7 +1761,7 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/movenc.c ffmpeg-7.1.2/libavformat/movenc if (mov->mode & MODE_MP4) { if ((ret = mov_write_track_kinds(pb_buf, st)) < 0) -@@ -4505,20 +4552,66 @@ +@@ -4694,20 +4756,66 @@ static int mov_write_trkn_tag(AVIOContext *pb, MOVMuxContext *mov, return size; } @@ -3212,7 +1831,7 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/movenc.c ffmpeg-7.1.2/libavformat/movenc avio_wb32(pb, size); ffio_wfourcc(pb, name); -@@ -4526,7 +4619,9 @@ +@@ -4715,7 +4823,9 @@ static int mov_write_int8_metadata(AVFormatContext *s, AVIOContext *pb, ffio_wfourcc(pb, "data"); avio_wb32(pb, 0x15); avio_wb32(pb, 0); @@ -3223,7 +1842,7 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/movenc.c ffmpeg-7.1.2/libavformat/movenc else avio_w8 (pb, num); return size; -@@ -4582,6 +4677,8 @@ +@@ -4771,6 +4881,8 @@ static int mov_write_ilst_tag(AVIOContext *pb, MOVMuxContext *mov, mov_write_string_metadata(s, pb, "\251lyr", "lyrics" , 1); mov_write_string_metadata(s, pb, "desc", "description",1); mov_write_string_metadata(s, pb, "ldes", "synopsis" , 1); @@ -3232,7 +1851,7 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/movenc.c ffmpeg-7.1.2/libavformat/movenc mov_write_string_metadata(s, pb, "tvsh", "show" , 1); mov_write_string_metadata(s, pb, "tven", "episode_id",1); mov_write_string_metadata(s, pb, "tvnn", "network" , 1); -@@ -4592,10 +4689,67 @@ +@@ -4781,10 +4893,67 @@ static int mov_write_ilst_tag(AVIOContext *pb, MOVMuxContext *mov, mov_write_int8_metadata (s, pb, "hdvd", "hd_video", 1); mov_write_int8_metadata (s, pb, "pgap", "gapless_playback",1); mov_write_int8_metadata (s, pb, "cpil", "compilation", 1); @@ -3300,7 +1919,7 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/movenc.c ffmpeg-7.1.2/libavformat/movenc return update_size(pb, pos); } -@@ -4727,35 +4881,6 @@ +@@ -4916,35 +5085,6 @@ static int ascii_to_wc(AVIOContext *pb, const uint8_t *b) return 0; } @@ -3336,7 +1955,7 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/movenc.c ffmpeg-7.1.2/libavformat/movenc static int mov_write_chpl_tag(AVIOContext *pb, AVFormatContext *s) { int64_t pos = avio_tell(pb); -@@ -4794,14 +4919,14 @@ +@@ -4983,14 +5123,14 @@ static int mov_write_udta_tag(AVIOContext *pb, MOVMuxContext *mov, return ret; if (mov->mode & MODE_3GP) { @@ -3359,37 +1978,117 @@ diff -Naur ffmpeg-7.1.2.old/libavformat/movenc.c ffmpeg-7.1.2/libavformat/movenc mov_write_loci_tag(s, pb_buf); } else if (mov->mode == MODE_MOV && !(mov->flags & FF_MOV_FLAG_USE_MDTA)) { // the title field breaks gtkpod with mp4 and my suspicion is that stuff is not valid in mp4 mov_write_string_metadata(s, pb_buf, "\251ART", "artist", 0); -diff -Naur ffmpeg-7.1.2.old/libavutil/frame.c ffmpeg-7.1.2/libavutil/frame.c ---- ffmpeg-7.1.2.old/libavutil/frame.c 2025-10-27 10:07:00.804475889 +0100 -+++ ffmpeg-7.1.2/libavutil/frame.c 2025-10-27 10:07:02.436386459 +0100 -@@ -45,6 +45,7 @@ - [AV_FRAME_DATA_FILM_GRAIN_PARAMS] = { "Film grain parameters" }, - [AV_FRAME_DATA_DETECTION_BBOXES] = { "Bounding boxes for object detection and classification" }, - [AV_FRAME_DATA_DOVI_RPU_BUFFER] = { "Dolby Vision RPU Data" }, -+ [AV_FRAME_DATA_DOVI_RPU_BUFFER_T35] = { "Dolby Vision RPU ITU T35 Data" }, - [AV_FRAME_DATA_DOVI_METADATA] = { "Dolby Vision Metadata" }, - [AV_FRAME_DATA_LCEVC] = { "LCEVC NAL data" }, - [AV_FRAME_DATA_VIEW_ID] = { "View ID" }, -diff -Naur ffmpeg-7.1.2.old/libavutil/frame.h ffmpeg-7.1.2/libavutil/frame.h ---- ffmpeg-7.1.2.old/libavutil/frame.h 2025-10-27 10:07:00.786475730 +0100 -+++ ffmpeg-7.1.2/libavutil/frame.h 2025-10-27 10:07:02.436480126 +0100 -@@ -201,6 +201,12 @@ +@@ -7542,6 +7682,7 @@ static int mov_create_chapter_track(AVFormatContext *s, int tracknum) + track->tag = MKTAG('t','e','x','t'); + track->timescale = mov->movie_timescale; + track->par = avcodec_parameters_alloc(); ++ track->language = mov->tracks[0].language; + if (!track->par) + return AVERROR(ENOMEM); + track->par->codec_type = AVMEDIA_TYPE_SUBTITLE; +@@ -7779,7 +7920,7 @@ static int mov_create_dvd_sub_decoder_specific_info(MOVTrack *track, + int i, width = 720, height = 480; + int have_palette = 0, have_size = 0; + uint32_t palette[16]; +- char *cur = track->extradata[track->last_stsd_index]; ++ char *cur = st->codecpar->extradata; + + while (cur && *cur) { + if (strncmp("palette:", cur, 8) == 0) { +diff --git a/libavutil/frame.h b/libavutil/frame.h +index 771c9ce..4aba0c8 100644 +--- a/libavutil/frame.h ++++ b/libavutil/frame.h +@@ -200,6 +200,12 @@ enum AVFrameSideDataType { + */ AV_FRAME_DATA_DOVI_RPU_BUFFER, - /** ++ /** + * Dolby Vision RPU ITU T35 raw data, suitable for passing to SVT-AV1 + * or other libraries. Array of uint8_t. + */ + AV_FRAME_DATA_DOVI_RPU_BUFFER_T35, + -+ /** + /** * Parsed Dolby Vision metadata, suitable for passing to a software * implementation. The payload is the AVDOVIMetadata struct defined in - * libavutil/dovi_meta.h. -diff -Naur ffmpeg-7.1.2.old/libavutil/hwcontext_videotoolbox.c ffmpeg-7.1.2/libavutil/hwcontext_videotoolbox.c ---- ffmpeg-7.1.2.old/libavutil/hwcontext_videotoolbox.c 2025-10-27 10:07:00.813475968 +0100 -+++ ffmpeg-7.1.2/libavutil/hwcontext_videotoolbox.c 2025-10-27 10:07:02.457067390 +0100 -@@ -183,7 +183,8 @@ +diff --git a/libavutil/hwcontext_d3d11va.c b/libavutil/hwcontext_d3d11va.c +index 418fe9d..4369d80 100644 +--- a/libavutil/hwcontext_d3d11va.c ++++ b/libavutil/hwcontext_d3d11va.c +@@ -85,6 +85,9 @@ typedef struct D3D11VAFramesContext { + int nb_surfaces; + int nb_surfaces_used; + ++ int max_retries; ++ int retries; ++ + DXGI_FORMAT format; + + ID3D11Texture2D *staging_texture; +@@ -260,7 +263,9 @@ static AVBufferRef *d3d11va_pool_alloc(void *opaque, size_t size) + ID3D11Texture2D_GetDesc(hwctx->texture, &texDesc); + + if (s->nb_surfaces_used >= texDesc.ArraySize) { +- av_log(ctx, AV_LOG_ERROR, "Static surface pool size exceeded.\n"); ++ if (s->retries >= s->max_retries) { ++ av_log(ctx, AV_LOG_ERROR, "Static surface pool size exceeded.\n"); ++ } + return NULL; + } + +@@ -346,20 +351,34 @@ static int d3d11va_frames_init(AVHWFramesContext *ctx) + static int d3d11va_get_buffer(AVHWFramesContext *ctx, AVFrame *frame) + { + AVD3D11FrameDescriptor *desc; ++ D3D11VAFramesContext *s = ctx->hwctx; ++ s->retries = 0; ++ s->max_retries = 50; + +- frame->buf[0] = av_buffer_pool_get(ctx->pool); +- if (!frame->buf[0]) +- return AVERROR(ENOMEM); +- +- desc = (AVD3D11FrameDescriptor *)frame->buf[0]->data; +- +- frame->data[0] = (uint8_t *)desc->texture; +- frame->data[1] = (uint8_t *)desc->index; +- frame->format = AV_PIX_FMT_D3D11; +- frame->width = ctx->width; +- frame->height = ctx->height; ++ /** ++ * Loop until a buffer becomes available from the pool. ++ * In a full hardware pipeline, all buffers may be temporarily in use by ++ * other modules (encoder/filter/decoder). Rather than immediately failing ++ * with ENOMEM, we wait for a buffer to be released back to the pool, which ++ * maintains pipeline flow and prevents unnecessary allocation failures ++ * during normal operation. ++ */ ++ while (s->retries < s->max_retries) { ++ frame->buf[0] = av_buffer_pool_get(ctx->pool); ++ if (frame->buf[0]) { ++ desc = (AVD3D11FrameDescriptor *)frame->buf[0]->data; ++ frame->data[0] = (uint8_t *)desc->texture; ++ frame->data[1] = (uint8_t *)desc->index; ++ frame->format = AV_PIX_FMT_D3D11; ++ frame->width = ctx->width; ++ frame->height = ctx->height; ++ return 0; ++ } + +- return 0; ++ av_usleep(1000); ++ } ++ ++ return AVERROR(ENOMEM); + } + + static int d3d11va_transfer_get_formats(AVHWFramesContext *ctx, +diff --git a/libavutil/hwcontext_videotoolbox.c b/libavutil/hwcontext_videotoolbox.c +index 2764097..9c5c999 100644 +--- a/libavutil/hwcontext_videotoolbox.c ++++ b/libavutil/hwcontext_videotoolbox.c +@@ -191,7 +191,8 @@ static int vt_pool_alloc(AVHWFramesContext *ctx) VTFramesContext *fctx = ctx->hwctx; AVVTFramesContext *hw_ctx = &fctx->p; CVReturn err; @@ -3399,7 +2098,7 @@ diff -Naur ffmpeg-7.1.2.old/libavutil/hwcontext_videotoolbox.c ffmpeg-7.1.2/liba uint32_t cv_pixfmt; CFMutableDictionaryRef attributes, iosurface_properties; -@@ -216,6 +217,15 @@ +@@ -224,6 +225,15 @@ static int vt_pool_alloc(AVHWFramesContext *ctx) CFRelease(w); CFRelease(h); @@ -3415,27 +2114,18 @@ diff -Naur ffmpeg-7.1.2.old/libavutil/hwcontext_videotoolbox.c ffmpeg-7.1.2/liba err = CVPixelBufferPoolCreate( NULL, NULL, -diff -Naur ffmpeg-7.1.2.old/libswscale/swscale_unscaled.c ffmpeg-7.1.2/libswscale/swscale_unscaled.c ---- ffmpeg-7.1.2.old/libswscale/swscale_unscaled.c 2025-10-27 10:07:00.644474477 +0100 -+++ ffmpeg-7.1.2/libswscale/swscale_unscaled.c 2025-10-27 10:07:02.433490262 +0100 -@@ -341,7 +341,7 @@ - const uint8_t *tsrc0 = src[0]; - for (x = c->srcW; x > 0; x--) { - t = *tsrc0++; -- output_pixel(tdstY++, t | (t << 8)); -+ output_pixel(tdstY++, (t << 8)); - } - src[0] += srcStride[0]; - dstY += dstStride[0] / 2; -@@ -352,9 +352,9 @@ - const uint8_t *tsrc2 = src[2]; - for (x = c->srcW / 2; x > 0; x--) { - t = *tsrc1++; -- output_pixel(tdstUV++, t | (t << 8)); -+ output_pixel(tdstUV++, (t << 8)); - t = *tsrc2++; -- output_pixel(tdstUV++, t | (t << 8)); -+ output_pixel(tdstUV++, (t << 8)); - } - src[1] += srcStride[1]; - src[2] += srcStride[2]; +diff --git a/libavutil/side_data.c b/libavutil/side_data.c +index bbbeb70..c635365 100644 +--- a/libavutil/side_data.c ++++ b/libavutil/side_data.c +@@ -42,6 +42,7 @@ static const AVSideDataDescriptor sd_props[] = { + [AV_FRAME_DATA_DETECTION_BBOXES] = { "Bounding boxes for object detection and classification", AV_SIDE_DATA_PROP_SIZE_DEPENDENT }, + [AV_FRAME_DATA_DOVI_RPU_BUFFER] = { "Dolby Vision RPU Data", AV_SIDE_DATA_PROP_COLOR_DEPENDENT }, + [AV_FRAME_DATA_DOVI_METADATA] = { "Dolby Vision Metadata", AV_SIDE_DATA_PROP_COLOR_DEPENDENT }, ++ [AV_FRAME_DATA_DOVI_RPU_BUFFER_T35] = { "Dolby Vision RPU ITU T35 Data", AV_SIDE_DATA_PROP_COLOR_DEPENDENT }, + [AV_FRAME_DATA_LCEVC] = { "LCEVC NAL data", AV_SIDE_DATA_PROP_SIZE_DEPENDENT }, + [AV_FRAME_DATA_VIEW_ID] = { "View ID" }, + [AV_FRAME_DATA_STEREO3D] = { "Stereo 3D", AV_SIDE_DATA_PROP_GLOBAL }, +-- +2.54.0 + diff --git a/anda/multimedia/ffmpeg/ffmpeg-LCEVCdec-4.patch b/anda/multimedia/ffmpeg/ffmpeg-LCEVCdec-4.patch deleted file mode 100644 index ae0aa51e88..0000000000 --- a/anda/multimedia/ffmpeg/ffmpeg-LCEVCdec-4.patch +++ /dev/null @@ -1,42 +0,0 @@ -diff -Naur ffmpeg-7.1.2.old/libavcodec/lcevcdec.c ffmpeg-7.1.2/libavcodec/lcevcdec.c ---- ffmpeg-7.1.2.old/libavcodec/lcevcdec.c 2025-10-27 10:07:00.369472051 +0100 -+++ ffmpeg-7.1.2/libavcodec/lcevcdec.c 2025-10-27 10:07:01.223246583 +0100 -@@ -139,7 +139,7 @@ - if (!sd) - return 1; - -- res = LCEVC_SendDecoderEnhancementData(lcevc->decoder, in->pts, 0, sd->data, sd->size); -+ res = LCEVC_SendDecoderEnhancementData(lcevc->decoder, (uint64_t) in->pts, sd->data, sd->size); - if (res != LCEVC_Success) - return AVERROR_EXTERNAL; - -@@ -147,7 +147,7 @@ - if (ret < 0) - return ret; - -- res = LCEVC_SendDecoderBase(lcevc->decoder, in->pts, 0, picture, -1, NULL); -+ res = LCEVC_SendDecoderBase(lcevc->decoder, (uint64_t) in->pts, picture, -1, NULL); - if (res != LCEVC_Success) - return AVERROR_EXTERNAL; - -diff -Naur ffmpeg-7.1.2.old/libavfilter/vf_lcevc.c ffmpeg-7.1.2/libavfilter/vf_lcevc.c ---- ffmpeg-7.1.2.old/libavfilter/vf_lcevc.c 2025-10-27 10:07:00.732521928 +0100 -+++ ffmpeg-7.1.2/libavfilter/vf_lcevc.c 2025-10-27 10:07:01.223846623 +0100 -@@ -139,7 +139,7 @@ - return ret; - - if (sd) { -- res = LCEVC_SendDecoderEnhancementData(lcevc->decoder, in->pts, 0, sd->data, sd->size); -+ res = LCEVC_SendDecoderEnhancementData(lcevc->decoder, (uint64_t) in->pts, sd->data, sd->size); - if (res == LCEVC_Again) - return AVERROR(EAGAIN); - else if (res != LCEVC_Success) { -@@ -148,7 +148,7 @@ - } - } - -- res = LCEVC_SendDecoderBase(lcevc->decoder, in->pts, 0, picture, -1, in); -+ res = LCEVC_SendDecoderBase(lcevc->decoder, (uint64_t) in->pts, picture, -1, in); - if (res != LCEVC_Success) { - av_log(ctx, AV_LOG_ERROR, "LCEVC_SendDecoderBase failed\n"); - LCEVC_FreePicture(lcevc->decoder, picture); diff --git a/anda/multimedia/ffmpeg/ffmpeg-allow-fdk-aac-free.patch b/anda/multimedia/ffmpeg/ffmpeg-allow-fdk-aac-free.patch new file mode 100644 index 0000000000..3e0e4ff155 --- /dev/null +++ b/anda/multimedia/ffmpeg/ffmpeg-allow-fdk-aac-free.patch @@ -0,0 +1,33 @@ +From 26eb0232fa41d603a2f016faf5610de79f694c02 Mon Sep 17 00:00:00 2001 +From: Andreas Schneider +Date: Sun, 10 May 2026 00:10:38 +0200 +Subject: [PATCH] fdk-aac-free-devel is GPL compatible + +See https://bugzilla.redhat.com/show_bug.cgi?id=1501522#c112 +--- + configure | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure b/configure +index 1759694..6cf4f08 100755 +--- a/configure ++++ b/configure +@@ -2003,7 +2003,6 @@ EXTERNAL_LIBRARY_GPL_LIST=" + + EXTERNAL_LIBRARY_NONFREE_LIST=" + decklink +- libfdk_aac + libmpeghdec + " + +@@ -2044,6 +2043,7 @@ EXTERNAL_LIBRARY_LIST=" + libcodec2 + libdav1d + libdc1394 ++ libfdk_aac + libflite + libfontconfig + libfreetype +-- +2.54.0 + diff --git a/anda/multimedia/ffmpeg/ffmpeg-chromium.patch b/anda/multimedia/ffmpeg/ffmpeg-chromium.patch index 5c8c6cbfd9..9872622869 100644 --- a/anda/multimedia/ffmpeg/ffmpeg-chromium.patch +++ b/anda/multimedia/ffmpeg/ffmpeg-chromium.patch @@ -1,31 +1,46 @@ -diff -Naur ffmpeg-7.1.2.old/libavformat/avformat.h ffmpeg-7.1.2/libavformat/avformat.h ---- ffmpeg-7.1.2.old/libavformat/avformat.h 2025-10-27 10:07:00.895476692 +0100 -+++ ffmpeg-7.1.2/libavformat/avformat.h 2025-10-27 10:07:01.866348795 +0100 -@@ -1202,6 +1202,10 @@ - +From d32aacab65a322b66d6a1b48f6cdb03e42bde0f9 Mon Sep 17 00:00:00 2001 +From: Frank Liberato +Date: Wed, 7 Jul 2021 19:01:22 -0700 +Subject: [PATCH] Add av_stream_get_first_dts for Chromium + +--- + libavformat/avformat.h | 4 ++++ + libavformat/utils.c | 7 +++++++ + 2 files changed, 11 insertions(+) + +diff --git a/libavformat/avformat.h b/libavformat/avformat.h +index 1916aa2dc5..e6682849fa 100644 +--- a/libavformat/avformat.h ++++ b/libavformat/avformat.h +@@ -1170,6 +1170,10 @@ typedef struct AVStreamGroup { + struct AVCodecParserContext *av_stream_get_parser(const AVStream *s); - + +// Chromium: We use the internal field first_dts vvv +int64_t av_stream_get_first_dts(const AVStream *st); +// Chromium: We use the internal field first_dts ^^^ + #define AV_PROGRAM_RUNNING 1 - + /** -diff -Naur ffmpeg-7.1.2.old/libavformat/utils.c ffmpeg-7.1.2/libavformat/utils.c ---- ffmpeg-7.1.2.old/libavformat/utils.c 2025-10-27 10:07:00.899476727 +0100 -+++ ffmpeg-7.1.2/libavformat/utils.c 2025-10-27 10:07:01.866992658 +0100 -@@ -44,6 +44,13 @@ +diff --git a/libavformat/utils.c b/libavformat/utils.c +index cf4d68bff9..7d750abf88 100644 +--- a/libavformat/utils.c ++++ b/libavformat/utils.c +@@ -56,6 +56,13 @@ int ff_unlock_avformat(void) * various utility functions for use within FFmpeg */ +// Chromium: We use the internal field first_dts vvv +int64_t av_stream_get_first_dts(const AVStream *st) +{ -+ return cffstream(st)->first_dts; ++ return cffstream(st)->first_dts; +} +// Chromium: We use the internal field first_dts ^^^ + /* an arbitrarily chosen "sane" max packet size -- 50M */ #define SANE_CHUNK_SIZE (50000000) - + +-- +2.41.0 + diff --git a/anda/multimedia/ffmpeg/ffmpeg-codec-choice.patch b/anda/multimedia/ffmpeg/ffmpeg-codec-choice.patch new file mode 100644 index 0000000000..f6a4ead570 --- /dev/null +++ b/anda/multimedia/ffmpeg/ffmpeg-codec-choice.patch @@ -0,0 +1,58 @@ +From: Jan Engelhardt + +Edit the default codec selection such that + + ffmpeg -i youtube.blah.webm foobar.mkv + +without any further arguments can produce a result even on a +reduced codec selection list. + +--- + libavformat/matroskaenc.c | 20 ++++++++++++++------ + 1 file changed, 14 insertions(+), 6 deletions(-) + +Index: ffmpeg-7.0/libavformat/matroskaenc.c +=================================================================== +--- ffmpeg-7.0.orig/libavformat/matroskaenc.c ++++ ffmpeg-7.0/libavformat/matroskaenc.c +@@ -3540,16 +3540,25 @@ static int mkv_query_codec(enum AVCodecI + return 0; + } + ++#define PREFAUDIO \ ++ CONFIG_LIBOPUS_ENCODER ? AV_CODEC_ID_OPUS : \ ++ CONFIG_AAC_ENCODER ? AV_CODEC_ID_AAC : \ ++ CONFIG_VORBIS_ENCODER ? AV_CODEC_ID_VORBIS : \ ++ AV_CODEC_ID_AC3 ++ + const FFOutputFormat ff_matroska_muxer = { + .p.name = "matroska", + .p.long_name = NULL_IF_CONFIG_SMALL("Matroska"), + .p.mime_type = "video/x-matroska", + .p.extensions = "mkv", + .priv_data_size = sizeof(MatroskaMuxContext), +- .p.audio_codec = CONFIG_LIBVORBIS_ENCODER ? +- AV_CODEC_ID_VORBIS : AV_CODEC_ID_AC3, +- .p.video_codec = CONFIG_LIBX264_ENCODER ? +- AV_CODEC_ID_H264 : AV_CODEC_ID_MPEG4, ++ .p.audio_codec = PREFAUDIO, ++ .p.video_codec = ++ CONFIG_LIBVPX_VP9_ENCODER ? AV_CODEC_ID_VP9 : \ ++ CONFIG_LIBX264_ENCODER ? AV_CODEC_ID_H264 : \ ++ CONFIG_LIBVPX_VP8_ENCODER ? AV_CODEC_ID_VP8 : \ ++ CONFIG_MPEG4_ENCODER ? AV_CODEC_ID_MPEG4 : \ ++ AV_CODEC_ID_THEORA, + .init = mkv_init, + .deinit = mkv_deinit, + .write_header = mkv_write_header, +@@ -3617,8 +3626,7 @@ const FFOutputFormat ff_matroska_audio_m + .p.mime_type = "audio/x-matroska", + .p.extensions = "mka", + .priv_data_size = sizeof(MatroskaMuxContext), +- .p.audio_codec = CONFIG_LIBVORBIS_ENCODER ? +- AV_CODEC_ID_VORBIS : AV_CODEC_ID_AC3, ++ .p.audio_codec = PREFAUDIO, + .p.video_codec = AV_CODEC_ID_NONE, + .init = mkv_init, + .deinit = mkv_deinit, + diff --git a/anda/multimedia/ffmpeg/ffmpeg-cuda-13.patch b/anda/multimedia/ffmpeg/ffmpeg-cuda-13.patch deleted file mode 100644 index 28bba4a1a7..0000000000 --- a/anda/multimedia/ffmpeg/ffmpeg-cuda-13.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -Naur ffmpeg-7.1.2.old/configure ffmpeg-7.1.2/configure ---- ffmpeg-7.1.2.old/configure 2025-10-27 10:07:02.273543997 +0100 -+++ ffmpeg-7.1.2/configure 2025-10-27 10:07:02.276510125 +0100 -@@ -4710,6 +4710,9 @@ - if $nvcc $nvccflags_default 2>&1 | grep -qi unsupported; then - nvccflags_default="-gencode arch=compute_60,code=sm_60 -O2" - fi -+ if $nvcc $nvccflags_default 2>&1 | grep -qi unsupported; then -+ nvccflags_default="-gencode arch=compute_75,code=sm_75 -O2" -+ fi - fi - - set_default arch cc cxx doxygen pkg_config ranlib strip sysinclude \ diff --git a/anda/multimedia/ffmpeg/ffmpeg-decklink-14.patch b/anda/multimedia/ffmpeg/ffmpeg-decklink-14.patch deleted file mode 100644 index 779e398257..0000000000 --- a/anda/multimedia/ffmpeg/ffmpeg-decklink-14.patch +++ /dev/null @@ -1,454 +0,0 @@ -diff -Naur ffmpeg-7.1.2.old/doc/outdevs.texi ffmpeg-7.1.2/doc/outdevs.texi ---- ffmpeg-7.1.2.old/doc/outdevs.texi 2025-10-27 10:07:00.979477433 +0100 -+++ ffmpeg-7.1.2/doc/outdevs.texi 2025-10-27 10:07:02.002148270 +0100 -@@ -240,6 +240,10 @@ - outgoing VANC data will be dropped. - Defaults to @samp{1048576}. - -+@item block_until_available -+Retries output if device appears unavailable. Retry rate is 60 times a second. -+Defaults to @option{0}. -+ - @end table - - @subsection Examples -diff -Naur ffmpeg-7.1.2.old/fftools/ffmpeg_sched.c ffmpeg-7.1.2/fftools/ffmpeg_sched.c ---- ffmpeg-7.1.2.old/fftools/ffmpeg_sched.c 2025-10-27 10:07:01.220479559 +0100 -+++ ffmpeg-7.1.2/fftools/ffmpeg_sched.c 2025-10-27 10:07:02.002549025 +0100 -@@ -22,6 +22,7 @@ - #include - #include - #include -+#include - - #include "cmdutils.h" - #include "ffmpeg_sched.h" -diff -Naur ffmpeg-7.1.2.old/libavdevice/decklink_common_c.h ffmpeg-7.1.2/libavdevice/decklink_common_c.h ---- ffmpeg-7.1.2.old/libavdevice/decklink_common_c.h 2025-10-27 10:07:00.829476109 +0100 -+++ ffmpeg-7.1.2/libavdevice/decklink_common_c.h 2025-10-27 10:07:02.003002589 +0100 -@@ -74,6 +74,7 @@ - int64_t timestamp_align; - int timing_offset; - int wait_for_tc; -+ int block_until_available; - DecklinkSignalLossAction signal_loss_action; - }; - -diff -Naur ffmpeg-7.1.2.old/libavdevice/decklink_common.cpp ffmpeg-7.1.2/libavdevice/decklink_common.cpp ---- ffmpeg-7.1.2.old/libavdevice/decklink_common.cpp 2025-10-27 10:07:00.828476101 +0100 -+++ ffmpeg-7.1.2/libavdevice/decklink_common.cpp 2025-10-27 10:07:02.003115933 +0100 -@@ -25,7 +25,7 @@ - #include "libavformat/internal.h" - } - --#include -+#include - #ifdef _WIN32 - #include - #else -@@ -53,6 +53,7 @@ - - #include "decklink_common.h" - -+ - static IDeckLinkIterator *decklink_create_iterator(AVFormatContext *avctx) - { - IDeckLinkIterator *iter; -@@ -512,8 +513,8 @@ - return AVERROR(EIO); - - while (ret == 0 && iter->Next(&dl) == S_OK) { -- IDeckLinkOutput *output_config; -- IDeckLinkInput *input_config; -+ IDeckLinkOutput_v14_2_1 *output_config; -+ IDeckLinkInput_v14_2_1 *input_config; - const char *display_name = NULL; - const char *unique_name = NULL; - AVDeviceInfo *new_device = NULL; -@@ -527,14 +528,14 @@ - goto next; - - if (show_outputs) { -- if (dl->QueryInterface(IID_IDeckLinkOutput, (void **)&output_config) == S_OK) { -+ if (dl->QueryInterface(IID_IDeckLinkOutput_v14_2_1, (void **)&output_config) == S_OK) { - output_config->Release(); - add = 1; - } - } - - if (show_inputs) { -- if (dl->QueryInterface(IID_IDeckLinkInput, (void **)&input_config) == S_OK) { -+ if (dl->QueryInterface(IID_IDeckLinkInput_v14_2_1, (void **)&input_config) == S_OK) { - input_config->Release(); - add = 1; - } -diff -Naur ffmpeg-7.1.2.old/libavdevice/decklink_common.h ffmpeg-7.1.2/libavdevice/decklink_common.h ---- ffmpeg-7.1.2.old/libavdevice/decklink_common.h 2025-10-27 10:07:00.831476127 +0100 -+++ ffmpeg-7.1.2/libavdevice/decklink_common.h 2025-10-27 10:07:02.003408083 +0100 -@@ -93,8 +93,8 @@ - struct decklink_ctx { - /* DeckLink SDK interfaces */ - IDeckLink *dl; -- IDeckLinkOutput *dlo; -- IDeckLinkInput *dli; -+ IDeckLinkOutput_v14_2_1 *dlo; -+ IDeckLinkInput_v14_2_1 *dli; - IDeckLinkConfiguration *cfg; - IDeckLinkProfileAttributes *attr; - decklink_output_callback *output_callback; -@@ -134,7 +134,6 @@ - AVStream *klv_st; - AVStream *teletext_st; - uint16_t cdp_sequence_num; -- - /* Options */ - int list_devices; - int list_formats; -@@ -149,13 +148,16 @@ - BMDPixelFormat raw_format; - DecklinkSignalLossAction signal_loss_action; - -+ - int frames_preroll; - int frames_buffer; - - pthread_mutex_t mutex; - pthread_cond_t cond; - int frames_buffer_available_spots; -+ int outstanding_frames; - int autodetect; -+ int block_until_available; - - #if CONFIG_LIBKLVANC - struct klvanc_context_s *vanc_ctx; -@@ -249,3 +251,4 @@ - int64_t ff_decklink_packet_queue_peekpts(DecklinkPacketQueue *q); - - #endif /* AVDEVICE_DECKLINK_COMMON_H */ -+ -diff -Naur ffmpeg-7.1.2.old/libavdevice/decklink_dec.cpp ffmpeg-7.1.2/libavdevice/decklink_dec.cpp ---- ffmpeg-7.1.2.old/libavdevice/decklink_dec.cpp 2025-10-27 10:07:00.828476101 +0100 -+++ ffmpeg-7.1.2/libavdevice/decklink_dec.cpp 2025-10-27 10:07:02.003669356 +0100 -@@ -31,7 +31,7 @@ - #include "libavformat/internal.h" - } - --#include -+#include - - extern "C" { - #include "config.h" -@@ -56,6 +56,7 @@ - #include "decklink_common.h" - #include "decklink_dec.h" - -+extern bool operator==(const REFIID& me, const REFIID& other); - #define MAX_WIDTH_VANC 1920 - const BMDDisplayMode AUTODETECT_DEFAULT_MODE = bmdModeNTSC; - -@@ -105,13 +106,13 @@ - {bmdModeUnknown, 0, -1, -1, -1} - }; - --class decklink_allocator : public IDeckLinkMemoryAllocator -+class decklink_allocator : public IDeckLinkMemoryAllocator_v14_2_1 - { - public: - decklink_allocator(): _refs(1) { } - virtual ~decklink_allocator() { } - -- // IDeckLinkMemoryAllocator methods -+ // IDeckLinkMemoryAllocator_v14_2_1 methods - virtual HRESULT STDMETHODCALLTYPE AllocateBuffer(unsigned int bufferSize, void* *allocatedBuffer) - { - void *buf = av_malloc(bufferSize + AV_INPUT_BUFFER_PADDING_SIZE); -@@ -129,7 +130,15 @@ - virtual HRESULT STDMETHODCALLTYPE Decommit() { return S_OK; } - - // IUnknown methods -- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID iid, LPVOID *ppv) { return E_NOINTERFACE; } -+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID iid, LPVOID *ppv) -+ { -+ if (iid == IID_IDeckLinkMemoryAllocator_v14_2_1) { -+ *ppv = (IDeckLinkMemoryAllocator_v14_2_1*)this; -+ AddRef(); -+ return S_OK; -+ } -+ return E_NOINTERFACE; -+ } - virtual ULONG STDMETHODCALLTYPE AddRef(void) { return ++_refs; } - virtual ULONG STDMETHODCALLTYPE Release(void) - { -@@ -472,7 +481,7 @@ - } - - --static void handle_klv(AVFormatContext *avctx, decklink_ctx *ctx, IDeckLinkVideoInputFrame *videoFrame, int64_t pts) -+static void handle_klv(AVFormatContext *avctx, decklink_ctx *ctx, IDeckLinkVideoInputFrame_v14_2_1 *videoFrame, int64_t pts) - { - const uint8_t KLV_DID = 0x44; - const uint8_t KLV_IN_VANC_SDID = 0x04; -@@ -574,17 +583,25 @@ - } - } - --class decklink_input_callback : public IDeckLinkInputCallback -+class decklink_input_callback : public IDeckLinkInputCallback_v14_2_1 - { - public: - explicit decklink_input_callback(AVFormatContext *_avctx); - ~decklink_input_callback(); - -- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID iid, LPVOID *ppv) { return E_NOINTERFACE; } -+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID iid, LPVOID *ppv) -+ { -+ if (iid == IID_IDeckLinkInputCallback_v14_2_1) { -+ *ppv = (IDeckLinkInputCallback_v14_2_1*)this; -+ AddRef(); -+ return S_OK; -+ } -+ return E_NOINTERFACE; -+ } - virtual ULONG STDMETHODCALLTYPE AddRef(void); - virtual ULONG STDMETHODCALLTYPE Release(void); - virtual HRESULT STDMETHODCALLTYPE VideoInputFormatChanged(BMDVideoInputFormatChangedEvents, IDeckLinkDisplayMode*, BMDDetectedVideoInputFormatFlags); -- virtual HRESULT STDMETHODCALLTYPE VideoInputFrameArrived(IDeckLinkVideoInputFrame*, IDeckLinkAudioInputPacket*); -+ virtual HRESULT STDMETHODCALLTYPE VideoInputFrameArrived(IDeckLinkVideoInputFrame_v14_2_1*, IDeckLinkAudioInputPacket*); - - private: - std::atomic _refs; -@@ -593,7 +610,7 @@ - int no_video; - int64_t initial_video_pts; - int64_t initial_audio_pts; -- IDeckLinkVideoInputFrame* last_video_frame; -+ IDeckLinkVideoInputFrame_v14_2_1* last_video_frame; - }; - - decklink_input_callback::decklink_input_callback(AVFormatContext *_avctx) : _refs(1) -@@ -625,7 +642,7 @@ - return ret; - } - --static int64_t get_pkt_pts(IDeckLinkVideoInputFrame *videoFrame, -+static int64_t get_pkt_pts(IDeckLinkVideoInputFrame_v14_2_1 *videoFrame, - IDeckLinkAudioInputPacket *audioFrame, - int64_t wallclock, - int64_t abs_wallclock, -@@ -679,7 +696,7 @@ - return pts; - } - --static int get_bmd_timecode(AVFormatContext *avctx, AVTimecode *tc, AVRational frame_rate, BMDTimecodeFormat tc_format, IDeckLinkVideoInputFrame *videoFrame) -+static int get_bmd_timecode(AVFormatContext *avctx, AVTimecode *tc, AVRational frame_rate, BMDTimecodeFormat tc_format, IDeckLinkVideoInputFrame_v14_2_1 *videoFrame) - { - IDeckLinkTimecode *timecode; - int ret = AVERROR(ENOENT); -@@ -701,7 +718,7 @@ - return ret; - } - --static int get_frame_timecode(AVFormatContext *avctx, decklink_ctx *ctx, AVTimecode *tc, IDeckLinkVideoInputFrame *videoFrame) -+static int get_frame_timecode(AVFormatContext *avctx, decklink_ctx *ctx, AVTimecode *tc, IDeckLinkVideoInputFrame_v14_2_1 *videoFrame) - { - AVRational frame_rate = ctx->video_st->r_frame_rate; - int ret; -@@ -726,7 +743,7 @@ - } - - HRESULT decklink_input_callback::VideoInputFrameArrived( -- IDeckLinkVideoInputFrame *videoFrame, IDeckLinkAudioInputPacket *audioFrame) -+ IDeckLinkVideoInputFrame_v14_2_1 *videoFrame, IDeckLinkAudioInputPacket *audioFrame) - { - void *frameBytes; - void *audioFrameBytes; -@@ -1141,7 +1158,7 @@ - goto error; - - /* Get input device. */ -- if (ctx->dl->QueryInterface(IID_IDeckLinkInput, (void **) &ctx->dli) != S_OK) { -+ if (ctx->dl->QueryInterface(IID_IDeckLinkInput_v14_2_1, (void **) &ctx->dli) != S_OK) { - av_log(avctx, AV_LOG_ERROR, "Could not open input device from '%s'\n", - avctx->url); - ret = AVERROR(EIO); -diff -Naur ffmpeg-7.1.2.old/libavdevice/decklink_enc_c.c ffmpeg-7.1.2/libavdevice/decklink_enc_c.c ---- ffmpeg-7.1.2.old/libavdevice/decklink_enc_c.c 2025-10-27 10:07:00.833476145 +0100 -+++ ffmpeg-7.1.2/libavdevice/decklink_enc_c.c 2025-10-27 10:07:02.004050964 +0100 -@@ -32,6 +32,7 @@ - { "list_devices", "use ffmpeg -sinks decklink instead", OFFSET(list_devices), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, ENC | AV_OPT_FLAG_DEPRECATED}, - { "list_formats", "list supported formats" , OFFSET(list_formats), AV_OPT_TYPE_INT , { .i64 = 0 }, 0, 1, ENC }, - { "preroll" , "video preroll in seconds", OFFSET(preroll ), AV_OPT_TYPE_DOUBLE, { .dbl = 0.5 }, 0, 5, ENC }, -+ { "block_until_available", "wait for device to become available instead of raising error", OFFSET(block_until_available), AV_OPT_TYPE_BOOL, { .i64 = 0 }, 0, 1, ENC }, - { "vanc_queue_size", "VANC queue buffer size", OFFSET(vanc_queue_size), AV_OPT_TYPE_INT64, { .i64 = (1024 * 1024)}, 0, INT64_MAX, ENC }, - #if BLACKMAGIC_DECKLINK_API_VERSION >= 0x0b000000 - { "duplex_mode" , "duplex mode" , OFFSET(duplex_mode ), AV_OPT_TYPE_INT , { .i64 = 0 }, 0, 5, ENC, .unit = "duplex_mode"}, -diff -Naur ffmpeg-7.1.2.old/libavdevice/decklink_enc.cpp ffmpeg-7.1.2/libavdevice/decklink_enc.cpp ---- ffmpeg-7.1.2.old/libavdevice/decklink_enc.cpp 2025-10-27 10:07:00.832476136 +0100 -+++ ffmpeg-7.1.2/libavdevice/decklink_enc.cpp 2025-10-27 10:07:02.004296918 +0100 -@@ -20,6 +20,8 @@ - */ - - #include -+#include -+ - using std::atomic; - - /* Include internal.h first to avoid conflict between winsock.h (used by -@@ -28,7 +30,7 @@ - #include "libavformat/internal.h" - } - --#include -+#include - - extern "C" { - #include "libavformat/avformat.h" -@@ -47,8 +49,26 @@ - #include "libklvanc/pixels.h" - #endif - -+extern bool operator==(const REFIID& me, const REFIID& other){ -+ return me.byte0 == other.byte0 && -+ me.byte1 == other.byte1 && -+ me.byte2 == other.byte2 && -+ me.byte3 == other.byte3 && -+ me.byte4 == other.byte4 && -+ me.byte5 == other.byte5 && -+ me.byte6 == other.byte6 && -+ me.byte7 == other.byte7 && -+ me.byte8 == other.byte8 && -+ me.byte9 == other.byte9 && -+ me.byte10 == other.byte10 && -+ me.byte11 == other.byte11 && -+ me.byte12 == other.byte12 && -+ me.byte13 == other.byte13 && -+ me.byte14 == other.byte14 && -+ me.byte15 == other.byte15; -+} - /* DeckLink callback class declaration */ --class decklink_frame : public IDeckLinkVideoFrame -+class decklink_frame : public IDeckLinkVideoFrame_v14_2_1 - { - public: - decklink_frame(struct decklink_ctx *ctx, AVFrame *avframe, AVCodecID codec_id, int height, int width) : -@@ -111,7 +131,16 @@ - _ancillary->AddRef(); - return S_OK; - } -- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID iid, LPVOID *ppv) { return E_NOINTERFACE; } -+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID iid, LPVOID *ppv) -+ { -+ if (iid == IID_IDeckLinkVideoFrame_v14_2_1) -+ { -+ *ppv = (IDeckLinkVideoFrame_v14_2_1*)this; -+ AddRef(); -+ return S_OK; -+ } -+ return E_NOINTERFACE; -+ } - virtual ULONG STDMETHODCALLTYPE AddRef(void) { return ++_refs; } - virtual ULONG STDMETHODCALLTYPE Release(void) - { -@@ -138,10 +167,10 @@ - std::atomic _refs; - }; - --class decklink_output_callback : public IDeckLinkVideoOutputCallback -+class decklink_output_callback : public IDeckLinkVideoOutputCallback_v14_2_1 - { - public: -- virtual HRESULT STDMETHODCALLTYPE ScheduledFrameCompleted(IDeckLinkVideoFrame *_frame, BMDOutputFrameCompletionResult result) -+ virtual HRESULT STDMETHODCALLTYPE ScheduledFrameCompleted(IDeckLinkVideoFrame_v14_2_1 *_frame, BMDOutputFrameCompletionResult result) - { - decklink_frame *frame = static_cast(_frame); - struct decklink_ctx *ctx = frame->_ctx; -@@ -155,11 +184,22 @@ - ctx->frames_buffer_available_spots++; - pthread_cond_broadcast(&ctx->cond); - pthread_mutex_unlock(&ctx->mutex); -- -+ pthread_mutex_lock(&ctx->mutex); -+ ctx->outstanding_frames--; -+ pthread_mutex_unlock(&ctx->mutex); - return S_OK; - } - virtual HRESULT STDMETHODCALLTYPE ScheduledPlaybackHasStopped(void) { return S_OK; } -- virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID iid, LPVOID *ppv) { return E_NOINTERFACE; } -+ virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID iid, LPVOID *ppv) -+ { -+ if (iid == IID_IDeckLinkVideoOutputCallback_v14_2_1) -+ { -+ *ppv = (IDeckLinkVideoOutputCallback_v14_2_1*)this; -+ AddRef(); -+ return S_OK; -+ } -+ return E_NOINTERFACE; -+ } - virtual ULONG STDMETHODCALLTYPE AddRef(void) { return 1; } - virtual ULONG STDMETHODCALLTYPE Release(void) { return 1; } - }; -@@ -204,9 +244,14 @@ - av_log(avctx, AV_LOG_WARNING, "Could not enable video output with VANC! Trying without...\n"); - ctx->supports_vanc = 0; - } -- if (!ctx->supports_vanc && ctx->dlo->EnableVideoOutput(ctx->bmd_mode, bmdVideoOutputFlagDefault) != S_OK) { -- av_log(avctx, AV_LOG_ERROR, "Could not enable video output!\n"); -- return -1; -+ while (!ctx->supports_vanc && ctx->dlo->EnableVideoOutput(ctx->bmd_mode, bmdVideoOutputFlagDefault) != S_OK) { -+ if (!ctx->block_until_available) { -+ av_log(avctx, AV_LOG_ERROR, "Could not enable video output!\n"); -+ return -1; -+ }; -+ av_log(avctx, AV_LOG_WARNING, "Could not enable video output, waiting for device...\n"); -+ usleep(1000000 / 60); -+ continue; - } - - /* Set callback. */ -@@ -370,6 +415,10 @@ - struct decklink_cctx *cctx = (struct decklink_cctx *)avctx->priv_data; - struct decklink_ctx *ctx = (struct decklink_ctx *)cctx->ctx; - -+ av_log(avctx, AV_LOG_DEBUG, "Wating for %d outstanding frames to return their results\n", ctx->outstanding_frames); -+ while (ctx->outstanding_frames > 0){ -+ usleep(1); -+ } - if (ctx->playback_started) { - BMDTimeValue actual; - ctx->dlo->StopScheduledPlayback(ctx->last_pts * ctx->bmd_tb_num, -@@ -739,7 +788,7 @@ - ctx->first_pts = pkt->pts; - - /* Schedule frame for playback. */ -- hr = ctx->dlo->ScheduleVideoFrame((class IDeckLinkVideoFrame *) frame, -+ hr = ctx->dlo->ScheduleVideoFrame((class IDeckLinkVideoFrame_v14_2_1 *) frame, - pkt->pts * ctx->bmd_tb_num, - ctx->bmd_tb_num, ctx->bmd_tb_den); - /* Pass ownership to DeckLink, or release on failure */ -@@ -750,6 +799,9 @@ - return AVERROR(EIO); - } - -+ pthread_mutex_lock(&ctx->mutex); -+ ctx->outstanding_frames++; -+ pthread_mutex_unlock(&ctx->mutex); - ctx->dlo->GetBufferedVideoFrameCount(&buffered); - av_log(avctx, AV_LOG_DEBUG, "Buffered video frames: %d.\n", (int) buffered); - if (pkt->pts > 2 && buffered <= 2) -@@ -850,6 +902,7 @@ - ctx->list_devices = cctx->list_devices; - ctx->list_formats = cctx->list_formats; - ctx->preroll = cctx->preroll; -+ ctx->block_until_available = cctx->block_until_available; - ctx->duplex_mode = cctx->duplex_mode; - ctx->first_pts = AV_NOPTS_VALUE; - if (cctx->link > 0 && (unsigned int)cctx->link < FF_ARRAY_ELEMS(decklink_link_conf_map)) -@@ -874,7 +927,7 @@ - return ret; - - /* Get output device. */ -- if (ctx->dl->QueryInterface(IID_IDeckLinkOutput, (void **) &ctx->dlo) != S_OK) { -+ if (ctx->dl->QueryInterface(IID_IDeckLinkOutput_v14_2_1, (void **) &ctx->dlo) != S_OK) { - av_log(avctx, AV_LOG_ERROR, "Could not open output device from '%s'\n", - avctx->url); - ret = AVERROR(EIO); diff --git a/anda/multimedia/ffmpeg/ffmpeg-nvcc.patch b/anda/multimedia/ffmpeg/ffmpeg-nvcc.patch deleted file mode 100644 index 7dcf2259c3..0000000000 --- a/anda/multimedia/ffmpeg/ffmpeg-nvcc.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur ffmpeg-7.1.2.old/configure ffmpeg-7.1.2/configure ---- ffmpeg-7.1.2.old/configure 2025-10-27 10:07:01.862821941 +0100 -+++ ffmpeg-7.1.2/configure 2025-10-27 10:07:02.140469997 +0100 -@@ -6766,7 +6766,7 @@ - nvccflags=$nvccflags_default - fi - --nvccflags="$nvccflags -std=c++11" -+nvccflags="$nvccflags -std=c++14" - - if enabled x86_64 || enabled ppc64 || enabled aarch64; then - nvccflags="$nvccflags -m64" diff --git a/anda/multimedia/ffmpeg/ffmpeg-svt-vp9.patch b/anda/multimedia/ffmpeg/ffmpeg-svt-vp9.patch index 6bdae213ed..a0deafb52f 100644 --- a/anda/multimedia/ffmpeg/ffmpeg-svt-vp9.patch +++ b/anda/multimedia/ffmpeg/ffmpeg-svt-vp9.patch @@ -1,15 +1,24 @@ -diff -Naur ffmpeg-7.1.2.old/configure ffmpeg-7.1.2/configure ---- ffmpeg-7.1.2.old/configure 2025-10-27 10:07:00.645474486 +0100 -+++ ffmpeg-7.1.2/configure 2025-10-27 10:07:01.726484024 +0100 -@@ -278,6 +278,7 @@ - --enable-libsrt enable Haivision SRT protocol via libsrt [no] - --enable-libssh enable SFTP protocol via libssh [no] - --enable-libsvtav1 enable AV1 encoding via SVT [no] -+ --enable-libsvtvp9 enable VP9 encoding via svt [no] - --enable-libtensorflow enable TensorFlow as a DNN module backend - for DNN based filters like sr [no] - --enable-libtesseract enable Tesseract, needed for ocr filter [no] -@@ -1955,6 +1956,7 @@ +From fed3505f256f4eecc967f9bec4252cb1b15375bd Mon Sep 17 00:00:00 2001 +From: Terra Packaging Team +Date: Sun, 31 May 2026 03:01:18 -0500 +Subject: [PATCH] Patch for SVT-VP9 plugin + +See: https://github.com/OpenVisualCloud/SVT-VP9/tree/master/ffmpeg_plugin +--- + configure | 3 + + configure.rej | 10 + + libavcodec/Makefile | 1 + + libavcodec/allcodecs.c | 1 + + libavcodec/libsvt_vp9.c | 701 ++++++++++++++++++++++++++++++++++++++++ + 5 files changed, 716 insertions(+) + create mode 100644 configure.rej + create mode 100644 libavcodec/libsvt_vp9.c + +diff --git a/configure b/configure +index 1759694..4b63d8e 100755 +--- a/configure ++++ b/configure +@@ -2083,6 +2083,7 @@ EXTERNAL_LIBRARY_LIST=" libshaderc libshine libsmbclient @@ -17,7 +26,7 @@ diff -Naur ffmpeg-7.1.2.old/configure ffmpeg-7.1.2/configure libsnappy libsoxr libspeex -@@ -3579,6 +3581,7 @@ +@@ -3825,6 +3826,7 @@ libvpx_vp8_decoder_deps="libvpx" libvpx_vp8_encoder_deps="libvpx" libvpx_vp9_decoder_deps="libvpx" libvpx_vp9_encoder_deps="libvpx" @@ -25,7 +34,7 @@ diff -Naur ffmpeg-7.1.2.old/configure ffmpeg-7.1.2/configure libvvenc_encoder_deps="libvvenc" libwebp_encoder_deps="libwebp" libwebp_anim_encoder_deps="libwebp" -@@ -7028,6 +7031,7 @@ +@@ -7387,6 +7389,7 @@ enabled libtwolame && require libtwolame twolame.h twolame_init -ltwolame die "ERROR: libtwolame must be installed and version must be >= 0.3.10"; } enabled libuavs3d && require_pkg_config libuavs3d "uavs3d >= 1.1.41" uavs3d.h uavs3d_decode enabled libv4l2 && require_pkg_config libv4l2 libv4l2 libv4l2.h v4l2_ioctl @@ -33,10 +42,39 @@ diff -Naur ffmpeg-7.1.2.old/configure ffmpeg-7.1.2/configure enabled libvidstab && require_pkg_config libvidstab "vidstab >= 0.98" vid.stab/libvidstab.h vsMotionDetectInit enabled libvmaf && require_pkg_config libvmaf "libvmaf >= 2.0.0" libvmaf.h vmaf_init enabled libvmaf && check_pkg_config libvmaf_cuda "libvmaf >= 2.0.0" libvmaf_cuda.h vmaf_cuda_state_init -diff -Naur ffmpeg-7.1.2.old/libavcodec/allcodecs.c ffmpeg-7.1.2/libavcodec/allcodecs.c ---- ffmpeg-7.1.2.old/libavcodec/allcodecs.c 2025-10-27 10:07:00.517473357 +0100 -+++ ffmpeg-7.1.2/libavcodec/allcodecs.c 2025-10-27 10:07:01.728697010 +0100 -@@ -796,6 +796,7 @@ +diff --git a/configure.rej b/configure.rej +new file mode 100644 +index 0000000..3de8351 +--- /dev/null ++++ b/configure.rej +@@ -0,0 +1,10 @@ ++--- configure 2026-03-10 10:00:58.102559577 +0100 +++++ configure 2026-03-10 10:00:58.530928613 +0100 ++@@ -278,6 +278,7 @@ ++ --enable-libsrt enable Haivision SRT protocol via libsrt [no] ++ --enable-libssh enable SFTP protocol via libssh [no] ++ --enable-libsvtav1 enable AV1 encoding via SVT [no] +++ --enable-libsvtvp9 enable VP9 encoding via svt [no] ++ --enable-libtensorflow enable TensorFlow as a DNN module backend ++ for DNN based filters like sr [no] ++ --enable-libtesseract enable Tesseract, needed for ocr filter [no] +diff --git a/libavcodec/Makefile b/libavcodec/Makefile +index 1410bd8..9310a97 100644 +--- a/libavcodec/Makefile ++++ b/libavcodec/Makefile +@@ -1217,6 +1217,7 @@ OBJS-$(CONFIG_LIBVO_AMRWBENC_ENCODER) += libvo-amrwbenc.o + OBJS-$(CONFIG_LIBVORBIS_DECODER) += libvorbisdec.o + OBJS-$(CONFIG_LIBVORBIS_ENCODER) += libvorbisenc.o \ + vorbis_data.o ++OBJS-$(CONFIG_LIBSVT_VP9_ENCODER) += libsvt_vp9.o + OBJS-$(CONFIG_LIBVPX_VP8_DECODER) += libvpxdec.o + OBJS-$(CONFIG_LIBVPX_VP8_ENCODER) += libvpxenc.o + OBJS-$(CONFIG_LIBVPX_VP9_DECODER) += libvpxdec.o +diff --git a/libavcodec/allcodecs.c b/libavcodec/allcodecs.c +index 695214f..8eaa76a 100644 +--- a/libavcodec/allcodecs.c ++++ b/libavcodec/allcodecs.c +@@ -826,6 +826,7 @@ extern const FFCodec ff_libuavs3d_decoder; extern const FFCodec ff_libvo_amrwbenc_encoder; extern const FFCodec ff_libvorbis_encoder; extern const FFCodec ff_libvorbis_decoder; @@ -44,9 +82,11 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/allcodecs.c ffmpeg-7.1.2/libavcodec/allco extern const FFCodec ff_libvpx_vp8_encoder; extern const FFCodec ff_libvpx_vp8_decoder; extern FFCodec ff_libvpx_vp9_encoder; -diff -Naur ffmpeg-7.1.2.old/libavcodec/libsvt_vp9.c ffmpeg-7.1.2/libavcodec/libsvt_vp9.c ---- ffmpeg-7.1.2.old/libavcodec/libsvt_vp9.c 1970-01-01 01:00:00.000000000 +0100 -+++ ffmpeg-7.1.2/libavcodec/libsvt_vp9.c 2025-10-27 10:07:01.729099438 +0100 +diff --git a/libavcodec/libsvt_vp9.c b/libavcodec/libsvt_vp9.c +new file mode 100644 +index 0000000..90ed5cb +--- /dev/null ++++ b/libavcodec/libsvt_vp9.c @@ -0,0 +1,701 @@ +/* +* Scalable Video Technology for VP9 encoder library plugin @@ -749,14 +789,6 @@ diff -Naur ffmpeg-7.1.2.old/libavcodec/libsvt_vp9.c ffmpeg-7.1.2/libavcodec/libs + .defaults = eb_enc_defaults, + .p.wrapper_name = "libsvt_vp9", +}; -diff -Naur ffmpeg-7.1.2.old/libavcodec/Makefile ffmpeg-7.1.2/libavcodec/Makefile ---- ffmpeg-7.1.2.old/libavcodec/Makefile 2025-10-27 10:07:00.259471080 +0100 -+++ ffmpeg-7.1.2/libavcodec/Makefile 2025-10-27 10:07:01.729297932 +0100 -@@ -1157,6 +1157,7 @@ - OBJS-$(CONFIG_LIBVORBIS_DECODER) += libvorbisdec.o - OBJS-$(CONFIG_LIBVORBIS_ENCODER) += libvorbisenc.o \ - vorbis_data.o -+OBJS-$(CONFIG_LIBSVT_VP9_ENCODER) += libsvt_vp9.o - OBJS-$(CONFIG_LIBVPX_VP8_DECODER) += libvpxdec.o - OBJS-$(CONFIG_LIBVPX_VP8_ENCODER) += libvpxenc.o - OBJS-$(CONFIG_LIBVPX_VP9_DECODER) += libvpxdec.o +-- +2.54.0 + diff --git a/anda/multimedia/ffmpeg/ffmpeg-vapoursynth-script-soname.patch b/anda/multimedia/ffmpeg/ffmpeg-vapoursynth-script-soname.patch new file mode 100644 index 0000000000..a1747fc373 --- /dev/null +++ b/anda/multimedia/ffmpeg/ffmpeg-vapoursynth-script-soname.patch @@ -0,0 +1,26 @@ +From 03ce488cabd436b353aaa4bef1b848493e17317f Mon Sep 17 00:00:00 2001 +From: Terra Packaging Team +Date: Sun, 31 May 2026 03:08:52 -0500 +Subject: [PATCH] Fix VapourSynth dlopen + +See: https://bugzilla.redhat.com/show_bug.cgi?id=2345698 +--- + libavformat/vapoursynth.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libavformat/vapoursynth.c b/libavformat/vapoursynth.c +index 0fa5aff..e6ac20b 100644 +--- a/libavformat/vapoursynth.c ++++ b/libavformat/vapoursynth.c +@@ -49,7 +49,7 @@ + #else + #include + #define VSSCRIPT_NAME "libvapoursynth-script" +- #define VSSCRIPT_LIB VSSCRIPT_NAME SLIBSUF ++ #define VSSCRIPT_LIB VSSCRIPT_NAME SLIBSUF ".0" + #endif + + struct VSState { +-- +2.54.0 + diff --git a/anda/multimedia/ffmpeg/ffmpeg.spec b/anda/multimedia/ffmpeg/ffmpeg.spec index 204be24403..0a763e8941 100644 --- a/anda/multimedia/ffmpeg/ffmpeg.spec +++ b/anda/multimedia/ffmpeg/ffmpeg.spec @@ -1,432 +1,741 @@ -%bcond bootstrap 1 +# For a complete build enable this +%bcond all_codecs 1 -%if %{with bootstrap} -%bcond chromaprint 0 -%bcond lcevcdec 0 +# Break dependency cycles by disabling certain optional dependencies. +%bcond bootstrap 0 + +# If building with all codecs, then set the pkg_suffix to %%nil. +# We can't handle this with a conditional, as srpm +# generation would not take it into account. +%global pkg_suffix %{!?with_all_codecs:-free}%{?with_all_codecs:%{nil}} + +# For alternative builds (do not enable in Fedora!) +%bcond freeworld_lavc 0 + +%if %{with freeworld_lavc} +# Freeworld builds enable all codecs +%global with_all_codecs 1 +# Freeworld builds do not need a package suffix +%global pkg_suffix %{nil} +%global basepkg_suffix -free +%endif + +# Fails due to asm issue +%ifarch %{ix86} %{arm} +%bcond lto 0 +# relocations in .text from nasm-compiled code on i686 only +# https://bugzilla.redhat.com/show_bug.cgi?id=2428281 +%global _pkg_extra_ldflags "-Wl,-z,notext" %else -%bcond chromaprint 1 -%bcond lcevcdec 1 -%endif - -%global _lto_cflags %{nil} - -%global avcodec_soversion 61 -%global avdevice_soversion 61 -%global avfilter_soversion 10 -%global avformat_soversion 61 -%global avutil_soversion 59 -%global postproc_soversion 58 -%global swresample_soversion 5 -%global swscale_soversion 8 - -Summary: A complete solution to record, convert and stream audio and video -Name: ffmpeg -Version: 8.0.1 -Release: 3%?dist -License: LGPLv3+ -URL: http://%{name}.org/ -Epoch: 1 - -Source0: http://%{name}.org/releases/%{name}-%{version}.tar.xz - -# https://github.com/OpenVisualCloud/SVT-VP9/tree/master/ffmpeg_plugin -Patch0: %{name}-svt-vp9.patch -# https://github.com/HandBrake/HandBrake/tree/8902805364f00e0d420c4d4b33053a31d27045ab -Patch1: %{name}-HandBrake.patch -# https://bugzilla.redhat.com/show_bug.cgi?id=2240127 -# Reference: https://crbug.com/1306560 -Patch2: %{name}-chromium.patch -# Fix build with recent NVCC: -Patch3: %{name}-nvcc.patch -# https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/f8a300c6739ea2ca648579d7faf3ae9811b9f19a -Patch4: %{name}-cuda-13.patch -# Support LCEVCdec 4.0+: -Patch5: https://aur.archlinux.org/cgit/aur.git/plain/080-ffmpeg-lcevcdec4.0.0-fix.patch?h=ffmpeg-full#/%{name}-LCEVCdec-4.patch -# https://github.com/magarnicle/FFmpeg/commits/DeckLink_SDK_14_4/ -Patch6: %{name}-decklink-14.patch - -BuildRequires: AMF-devel >= 1.4.28 -BuildRequires: bzip2-devel -BuildRequires: codec2-devel -BuildRequires: decklink-devel >= 14.2 -BuildRequires: doxygen -BuildRequires: frei0r-devel -BuildRequires: gmp-devel -BuildRequires: gsm-devel -BuildRequires: ilbc-devel -BuildRequires: lame-devel >= 3.98.3 -BuildRequires: ladspa-devel -BuildRequires: libavc1394-devel -%if %{with chromaprint} -BuildRequires: libchromaprint-devel -%endif -BuildRequires: libgcrypt-devel -BuildRequires: libiec61883-devel -BuildRequires: libklvanc-devel -BuildRequires: libtheora-devel -BuildRequires: libvdpau-devel -BuildRequires: libxavs-devel -BuildRequires: mesa-libGL-devel -BuildRequires: nasm -BuildRequires: ocl-icd-devel -BuildRequires: openal-soft-devel -BuildRequires: opencore-amr-devel -BuildRequires: perl(Pod::Man) -BuildRequires: snappy-devel -BuildRequires: soxr-devel -BuildRequires: subversion -BuildRequires: texinfo -BuildRequires: twolame-devel >= 0.3.10 -BuildRequires: vo-amrwbenc-devel -BuildRequires: xvidcore-devel -BuildRequires: xz-devel - -BuildRequires: pkgconfig(alsa) -BuildRequires: pkgconfig(aom) >= 1.0.0 -BuildRequires: pkgconfig(aribb24) >= 1.0.3 -BuildRequires: pkgconfig(caca) -BuildRequires: pkgconfig(dav1d) >= 0.5.0 -BuildRequires: pkgconfig(davs2) >= 1.6.0 -BuildRequires: pkgconfig(dvdnav) >= 6.1.1 -BuildRequires: pkgconfig(fdk-aac) -BuildRequires: pkgconfig(fontconfig) -BuildRequires: pkgconfig(freetype2) -BuildRequires: pkgconfig(fribidi) -BuildRequires: pkgconfig(harfbuzz) -BuildRequires: pkgconfig(jack) -BuildRequires: pkgconfig(kvazaar) >= 0.8.1 -BuildRequires: pkgconfig(lc3) >= 1.1.0 -BuildRequires: pkgconfig(lcms2) >= 2.13 -%if %{with lcevcdec} -BuildRequires: pkgconfig(lcevc_dec) >= 2.0.0 -%endif -BuildRequires: pkgconfig(libaribcaption) >= 1.1.1 -BuildRequires: pkgconfig(libass) >= 0.11.0 -BuildRequires: pkgconfig(libbluray) -BuildRequires: pkgconfig(libbs2b) -BuildRequires: pkgconfig(libcdio_paranoia) -BuildRequires: pkgconfig(libdc1394-2) -BuildRequires: pkgconfig(libdrm) -BuildRequires: pkgconfig(libgme) -BuildRequires: pkgconfig(libjxl) >= 0.7.0 -#BuildRequires: pkgconfig(lensfun) > 0.3.95 -BuildRequires: pkgconfig(libmodplug) -BuildRequires: pkgconfig(libmysofa) -BuildRequires: pkgconfig(libopenjp2) >= 2.1.0 -BuildRequires: pkgconfig(libopenmpt) >= 0.2.6557 -BuildRequires: pkgconfig(libplacebo) >= 4.192.0 -BuildRequires: pkgconfig(libpulse) -BuildRequires: pkgconfig(libqrencode) -#BuildRequires: pkgconfig(libquirc) -BuildRequires: pkgconfig(librabbitmq) >= 0.7.1 -BuildRequires: pkgconfig(librist) >= 0.2.7 -BuildRequires: pkgconfig(librtmp) -BuildRequires: pkgconfig(librsvg-2.0) -BuildRequires: pkgconfig(libssh) -BuildRequires: pkgconfig(libtcmalloc) -BuildRequires: pkgconfig(libva) >= 0.35.0 -BuildRequires: pkgconfig(libva-drm) -BuildRequires: pkgconfig(libva-x11) -BuildRequires: pkgconfig(libv4l2) -BuildRequires: pkgconfig(libvvenc) >= 1.11.0 -BuildRequires: pkgconfig(libwebp) -BuildRequires: pkgconfig(libwebpmux) >= 0.4.0 -BuildRequires: pkgconfig(libxml-2.0) -BuildRequires: pkgconfig(libzmq) >= 4.2.1 -BuildRequires: pkgconfig(lilv-0) -BuildRequires: pkgconfig(lv2) -#BuildRequires: pkgconfig(OpenCL) -#BuildRequires: pkgconfig(opencv) -BuildRequires: pkgconfig(openh264) -BuildRequires: pkgconfig(openssl) -BuildRequires: pkgconfig(opus) -BuildRequires: pkgconfig(rav1e) >= 0.4.0 -BuildRequires: pkgconfig(rubberband) >= 1.8.1 -BuildRequires: pkgconfig(sdl2) -BuildRequires: pkgconfig(shaderc) >= 2019.1 -#BuildRequires: pkgconfig(shine) -BuildRequires: pkgconfig(smbclient) -BuildRequires: pkgconfig(speex) -BuildRequires: pkgconfig(srt) >= 1.3.0 -BuildRequires: pkgconfig(SvtAv1Enc) >= 0.9.0 -BuildRequires: pkgconfig(tesseract) -BuildRequires: pkgconfig(uavs3d) >= 1.1.41 -BuildRequires: pkgconfig(vapoursynth-script) >= 42 -BuildRequires: pkgconfig(vidstab) >= 0.98 -BuildRequires: pkgconfig(vorbis) -BuildRequires: pkgconfig(vorbisenc) -BuildRequires: pkgconfig(vpx) >= 1.4.0 -BuildRequires: pkgconfig(vulkan) >= 1.3.277 -BuildRequires: pkgconfig(xavs2) >= 1.3.0 -BuildRequires: pkgconfig(xcb) >= 1.4 -BuildRequires: pkgconfig(xcb-shape) -BuildRequires: pkgconfig(xcb-shm) -BuildRequires: pkgconfig(xcb-xfixes) -BuildRequires: pkgconfig(xevd) >= 0.4.1 -BuildRequires: pkgconfig(xeve) >= 0.4.3 -BuildRequires: pkgconfig(xext) -BuildRequires: pkgconfig(x11) -BuildRequires: pkgconfig(x264) -BuildRequires: pkgconfig(x265) -BuildRequires: pkgconfig(xv) -BuildRequires: pkgconfig(zimg) >= 2.7.0 -BuildRequires: pkgconfig(zlib) -BuildRequires: pkgconfig(zvbi-0.2) >= 0.2.28 - -%ifarch x86_64 aarch64 -BuildRequires: cuda-cudart-devel -BuildRequires: cuda-nvcc -BuildRequires: pkgconfig(ffnvcodec) >= 12.0.16.0 +%bcond lto 1 %endif %ifarch x86_64 -BuildRequires: pkgconfig(libmfx) -BuildRequires: pkgconfig(libvmaf) >= 2.0.0 -BuildRequires: pkgconfig(SvtVp9Enc) -BuildRequires: pkgconfig(vpl) >= 2.6 +%bcond vpl 1 +%bcond vmaf 1 +%else +%bcond vpl 0 +%bcond vmaf 0 %endif -Obsoletes: %{name}-free < %{epoch}:%{version}-%{release} -Provides: %{name}-free = %{epoch}:%{version}-%{release} +%ifarch s390 s390x riscv64 +%bcond dc1394 0 +%bcond ffnvcodec 0 +%else +%bcond dc1394 1 +%bcond ffnvcodec 1 +%endif + +%if 0%{?rhel} +# Disable dependencies not available or wanted on RHEL/EPEL +%bcond chromaprint 0 +%bcond flite 0 +%else +# Break chromaprint dependency cycle (Fedora-only): +# ffmpeg (libavcodec-free) → chromaprint → ffmpeg +%bcond chromaprint %{without boostrap} +%bcond flite 1 +%endif + +%if 0%{?rhel} && 0%{?rhel} <= 9 +# Disable some features because RHEL 9 packages are too old +%bcond lcms2 0 +%bcond placebo 0 +%else +%bcond lcms2 1 +%bcond placebo 1 +%endif + +%if 0%{?el10} +# Disable temporarily while we want for liblc3 to be upgraded +# Cf. https://issues.redhat.com/browse/RHEL-127169 +%bcond lc3 0 +%else +%bcond lc3 1 +%endif + +# For using an alternative build of EVC codecs +%bcond evc_main 0 + +%if %{with all_codecs} +%bcond rtmp 1 +%bcond vvc 1 +%bcond x264 1 +%bcond x265 1 +%else +%bcond rtmp 0 +%bcond vvc 0 +%bcond x264 0 +%bcond x265 0 +%endif + +%if %{without lto} +%global _lto_cflags %{nil} +%endif + +# FIXME: GCC says there's incompatible pointer casts going on in libavdevice... +%global build_type_safety_c 2 + +%global av_codec_soversion 62 +%global av_device_soversion 62 +%global av_filter_soversion 11 +%global av_format_soversion 62 +%global av_util_soversion 60 +%global swresample_soversion 6 +%global swscale_soversion 9 + +Name: ffmpeg +%global pkg_name %{name}%{?pkg_suffix} + +Version: 8.1.1 +Release: 3%{?dist} +Epoch: 1 +Summary: A complete solution to record, convert and stream audio and video +License: GPL-3.0-or-later +URL: https://ffmpeg.org/ +Source0: https://ffmpeg.org/releases/ffmpeg-%{version}.tar.xz +Source1: https://ffmpeg.org/releases/ffmpeg-%{version}.tar.xz.asc +# https://ffmpeg.org/ffmpeg-devel.asc +# gpg2 --import --import-options import-export,import-minimal ffmpeg-devel.asc > ./ffmpeg.keyring +Source2: ffmpeg.keyring +Source20: enable_decoders +Source21: enable_encoders + +%if %{without all_codecs} +# Fixes for reduced codec selection on free build +Patch1: ffmpeg-codec-choice.patch +%endif +# Allow to build with fdk-aac-free +# See https://bugzilla.redhat.com/show_bug.cgi?id=1501522#c112 +Patch2: ffmpeg-allow-fdk-aac-free.patch + +# HandBrake patches +Patch3: ffmpeg-svt-vp9.patch +Patch4: ffmpeg-HandBrake.patch + +# https://code.ffmpeg.org/FFmpeg/FFmpeg/issues/23211 +Patch5: ffmpeg-vapoursynth-script-soname.patch + +# Add first_dts getter to libavformat for Chromium +# See: https://bugzilla.redhat.com/show_bug.cgi?id=2240127 +# Reference: https://crbug.com/1306560 +Patch1002: ffmpeg-chromium.patch + + +Requires: libavcodec%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libavdevice%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libavfilter%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libavformat%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libavutil%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libswresample%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libswscale%{?pkg_suffix}%{_isa} = %{version}-%{release} + +BuildRequires: AMF-devel +# NOTE: This MUST be done otherwise the binary is NOT REDISTRIBUTABLE. +# Even though FDK itself may be redistributable. +# See: https://ffmpeg.org/doxygen/4.4/md_LICENSE.html +# DO NOT change this to pkgconfig(fdk-aac). +BuildRequires: fdk-aac-free-devel +%if %{with flite} +BuildRequires: flite-devel >= 2.2 +%endif +BuildRequires: game-music-emu-devel +BuildRequires: gcc +BuildRequires: git-core +BuildRequires: gnupg2 +BuildRequires: gsm-devel +BuildRequires: ladspa-devel +BuildRequires: lame-devel +BuildRequires: libgcrypt-devel +BuildRequires: libklvanc-devel +BuildRequires: libmysofa-devel +BuildRequires: libX11-devel +BuildRequires: libXext-devel +BuildRequires: libXv-devel +BuildRequires: make +BuildRequires: nasm +BuildRequires: perl(Pod::Man) +BuildRequires: pkgconfig(alsa) +BuildRequires: pkgconfig(aom) +BuildRequires: pkgconfig(aribb24) >= 1.0.3 +BuildRequires: pkgconfig(bzip2) +BuildRequires: pkgconfig(caca) +BuildRequires: pkgconfig(codec2) +BuildRequires: pkgconfig(dav1d) +BuildRequires: pkgconfig(dvdnav) +BuildRequires: pkgconfig(dvdread) +BuildRequires: pkgconfig(ffnvcodec) +BuildRequires: pkgconfig(flac) +BuildRequires: pkgconfig(fontconfig) +BuildRequires: pkgconfig(freetype2) +BuildRequires: pkgconfig(frei0r) +BuildRequires: pkgconfig(fribidi) +BuildRequires: pkgconfig(gl) +BuildRequires: pkgconfig(gnutls) +BuildRequires: pkgconfig(harfbuzz) +BuildRequires: pkgconfig(libilbc) +BuildRequires: pkgconfig(jack) +%if %{with lc3} +BuildRequires: pkgconfig(lc3) >= 1.1.0 +%endif +%if %{with lcms2} +BuildRequires: pkgconfig(lcms2) >= 2.13 +%endif +BuildRequires: pkgconfig(libaribcaption) >= 1.1.1 +BuildRequires: pkgconfig(libass) +BuildRequires: pkgconfig(libbluray) +BuildRequires: pkgconfig(libbs2b) +BuildRequires: pkgconfig(libcdio) +BuildRequires: pkgconfig(libcdio_paranoia) +%if %{with chromaprint} +BuildRequires: pkgconfig(libchromaprint) +%endif +BuildRequires: pkgconfig(libdrm) +BuildRequires: pkgconfig(libjxl) >= 0.7.0 +BuildRequires: pkgconfig(libmodplug) +BuildRequires: pkgconfig(libopenjp2) +BuildRequires: pkgconfig(libopenmpt) +%if %{with placebo} +BuildRequires: pkgconfig(libplacebo) >= 4.192.0 +%endif +BuildRequires: pkgconfig(libpulse) +BuildRequires: pkgconfig(libqrencode) +BuildRequires: pkgconfig(librabbitmq) +BuildRequires: pkgconfig(librist) +BuildRequires: pkgconfig(librsvg-2.0) +BuildRequires: pkgconfig(libssh) +BuildRequires: pkgconfig(libv4l2) +BuildRequires: pkgconfig(libva) +BuildRequires: pkgconfig(libva-drm) +BuildRequires: pkgconfig(libva-x11) +BuildRequires: pkgconfig(libwebp) +BuildRequires: pkgconfig(libxml-2.0) +BuildRequires: pkgconfig(libzmq) +BuildRequires: pkgconfig(lilv-0) +BuildRequires: pkgconfig(lv2) +BuildRequires: pkgconfig(oapv) +BuildRequires: pkgconfig(ogg) +BuildRequires: pkgconfig(openal) +BuildRequires: pkgconfig(opencore-amrnb) +BuildRequires: pkgconfig(OpenCL) +BuildRequires: pkgconfig(openh264) +BuildRequires: pkgconfig(opus) +BuildRequires: pkgconfig(rav1e) +BuildRequires: pkgconfig(rubberband) +BuildRequires: pkgconfig(sdl2) +BuildRequires: pkgconfig(shaderc) >= 2019.1 +BuildRequires: pkgconfig(smbclient) +BuildRequires: pkgconfig(snappy) +BuildRequires: pkgconfig(soxr) +BuildRequires: pkgconfig(speex) +BuildRequires: pkgconfig(srt) +BuildRequires: pkgconfig(SvtAv1Enc) >= 0.9.0 +BuildRequires: pkgconfig(tesseract) +BuildRequires: pkgconfig(theora) +BuildRequires: pkgconfig(twolame) +BuildRequires: pkgconfig(vapoursynth) +BuildRequires: pkgconfig(vdpau) +BuildRequires: pkgconfig(vidstab) +BuildRequires: pkgconfig(vorbis) +BuildRequires: pkgconfig(vo-amrwbenc) +BuildRequires: pkgconfig(vpx) +BuildRequires: pkgconfig(vulkan) >= 1.3.255 +BuildRequires: pkgconfig(wavpack) +BuildRequires: pkgconfig(xcb) +BuildRequires: pkgconfig(xcb-render) +BuildRequires: pkgconfig(xcb-shape) +BuildRequires: pkgconfig(xcb-shm) +BuildRequires: pkgconfig(xcb-xfixes) +BuildRequires: pkgconfig(zimg) +BuildRequires: pkgconfig(zlib) +BuildRequires: pkgconfig(zvbi-0.2) +BuildRequires: texinfo +BuildRequires: xvidcore-devel + +%if %{with dc1394} +BuildRequires: pkgconfig(libavc1394) +BuildRequires: pkgconfig(libdc1394-2) +BuildRequires: pkgconfig(libiec61883) +%endif +%if %{with rtmp} +BuildRequires: librtmp-devel +%endif +%if %{with vpl} +BuildRequires: pkgconfig(vpl) >= 2.6 +%endif +%if %{with evc_main} +BuildRequires: pkgconfig(xevd) +BuildRequires: pkgconfig(xeve) +%else +BuildRequires: pkgconfig(xevdb) +BuildRequires: pkgconfig(xeveb) +%endif +%if %{with x264} +BuildRequires: pkgconfig(x264) +%endif +%if %{with x265} +BuildRequires: pkgconfig(x265) +%endif +%if %{with vmaf} +BuildRequires: pkgconfig(libvmaf) +%endif +# Prevent build from pulling full FDK-AAC builds. +# WARNING: This MUST be ensured otherwise the binary is NOT REDISTRIBUTABLE. +# Even though FDK itself may be redistributable. +# See: https://ffmpeg.org/doxygen/4.4/md_LICENSE.html +# DO NOT remove this. +BuildConflicts: fdk-aac-devel + +Packager: Terra Packaging Team %description -FFmpeg is a complete and free Internet live audio and video -broadcasting solution for Linux/Unix. It also includes a digital -VCR. It can encode in real time in many formats including MPEG1 audio -and video, MPEG4, h263, ac3, asf, avi, real, mjpeg, and flash. +FFmpeg is a leading multimedia framework, able to decode, encode, transcode, +mux, demux, stream, filter and play pretty much anything that humans and +machines have created. It supports the most obscure ancient formats up to the +cutting edge. No matter if they were designed by some standards committee, the +community or a corporation. -%package libs -Summary: Metapackage for %{name} libraries -Requires: libavcodec%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libavdevice%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libavfilter%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libavformat%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libavutil%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libpostproc%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libswresample%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libswscale%{?_isa} = %{epoch}:%{version}-%{release} +%if %{without all_codecs} +This build of ffmpeg is limited in the number of codecs supported. +%endif -%description libs -FFmpeg is a complete and free Internet live audio and video -broadcasting solution for Linux/Unix. It also includes a digital -VCR. It can encode in real time in many formats including MPEG1 audio -and video, MPEG4, h263, ac3, asf, avi, real, mjpeg, and flash. -This metapackage pulls in all the %{name} libraries. +%dnl -------------------------------------------------------------------------------- -%package devel -Summary: Metapackage for %{name} development files -Requires: %{name}-libs%{?_isa} = %{epoch}:%{version}-%{release} +%if ! %{with freeworld_lavc} + +%if "x%{?pkg_suffix}" != "x" +%package -n %{pkg_name} +Summary: A complete solution to record, convert and stream audio and video +Requires: libavcodec%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libavdevice%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libavfilter%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libavformat%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libavutil%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libswresample%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libswscale%{?pkg_suffix}%{_isa} = %{version}-%{release} + + +%description -n %{pkg_name} +FFmpeg is a leading multimedia framework, able to decode, encode, transcode, +mux, demux, stream, filter and play pretty much anything that humans and +machines have created. It supports the most obscure ancient formats up to the +cutting edge. No matter if they were designed by some standards committee, the +community or a corporation. + +%if %{without all_codecs} +This build of ffmpeg is limited in the number of codecs supported. +%endif + +#/ "x%%{?pkg_suffix}" != "x" +%endif + +%files -n %{pkg_name} +%doc CREDITS README.md +%{_bindir}/ffmpeg +%{_bindir}/ffplay +%{_bindir}/ffprobe +%{_mandir}/man1/ff*.1* +%dir %{_datadir}/%{name} +%{_datadir}/%{name}/ffprobe.xsd +%{_datadir}/%{name}/libvpx-*.ffpreset + +%dnl -------------------------------------------------------------------------------- + +%package -n %{pkg_name}-devel +Summary: Development package for %{name} +Requires: libavcodec%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libavdevice%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libavfilter%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libavformat%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libavutil%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libswresample%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libswscale%{?pkg_suffix}-devel = %{version}-%{release} Requires: pkgconfig -%description devel -FFmpeg is a complete and free Internet live audio and video broadcasting -solution for Linux/Unix. It also includes a digital VCR. It can encode in real -time in many formats. This package contains development files for %{name}. +%description -n %{pkg_name}-devel +FFmpeg is a leading multimedia framework, able to decode, encode, transcode, +mux, demux, stream, filter and play pretty much anything that humans and +machines have created. It supports the most obscure ancient formats up to the +cutting edge. No matter if they were designed by some standards committee, the +community or a corporation. -%package -n libavcodec +%files -n %{pkg_name}-devel +%doc MAINTAINERS doc/APIchanges doc/*.txt +%doc _doc/examples + +%dnl -------------------------------------------------------------------------------- + +%package -n libavcodec%{?pkg_suffix} Summary: FFmpeg codec library -Obsoletes: libavcodec-free < %{epoch}:%{version}-%{release} -Provides: libavcodec-free = %{epoch}:%{version}-%{release} +Requires: libavutil%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libswresample%{?pkg_suffix}%{_isa} = %{version}-%{release} +# We require libopenh264 library, which has a dummy implementation and a real one +# In the event that this is being installed, we want to prefer openh264 if available +Suggests: openh264%{_isa} -%description -n libavcodec -The libavcodec library provides a generic encoding/decoding framework and -contains multiple decoders and encoders for audio, video and subtitle streams, -and several bitstream filters. +%description -n libavcodec%{?pkg_suffix} +The libavcodec library provides a generic encoding/decoding framework +and contains multiple decoders and encoders for audio, video and +subtitle streams, and several bitstream filters. -%package -n libavcodec-devel +%if %{without all_codecs} +This build of ffmpeg is limited in the number of codecs supported. +%endif + +%files -n libavcodec%{?pkg_suffix} +%license COPYING.GPLv2 LICENSE.md +%{_libdir}/libavcodec.so.%{av_codec_soversion}{,.*} + +%dnl -------------------------------------------------------------------------------- + +%package -n libavcodec%{?pkg_suffix}-devel Summary: Development files for FFmpeg's codec library -Requires: libavcodec%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libavutil-devel%{?_isa} = %{epoch}:%{version}-%{release} +Requires: libavutil%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libavcodec%{?pkg_suffix}%{_isa} = %{version}-%{release} Requires: pkgconfig -Obsoletes: libavcodec-free-devel < %{epoch}:%{version}-%{release} -Provides: libavcodec-free-devel = %{epoch}:%{version}-%{release} -%description -n libavcodec-devel -The libavcodec library provides a generic encoding/decoding framework and -contains multiple decoders and encoders for audio, video and subtitle streams, -and several bitstream filters. +%description -n libavcodec%{?pkg_suffix}-devel +The libavcodec library provides a generic encoding/decoding framework +and contains multiple decoders and encoders for audio, video and +subtitle streams, and several bitstream filters. This subpackage contains the headers for FFmpeg libavcodec. -%package -n libavdevice -Summary: FFMpeg devices muxing/demuxing library -Obsoletes: libavdevice-free < %{epoch}:%{version}-%{release} -Provides: libavdevice-free = %{epoch}:%{version}-%{release} +%files -n libavcodec%{?pkg_suffix}-devel +%{_includedir}/%{name}/libavcodec +%{_libdir}/pkgconfig/libavcodec.pc +%{_libdir}/libavcodec.so +%{_mandir}/man3/libavcodec.3* -%description -n libavdevice -Libavdevice is a complementary library to libavf "libavformat". It provides -various "special" platform-specific muxers and demuxers, e.g. for grabbing -devices, audio capture and playback etc. +%dnl -------------------------------------------------------------------------------- -%package -n libavdevice-devel -Summary: Development files for FFMpeg devices muxing/demuxing library -Requires: libavcodec-devel%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libavdevice%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libavfilter-devel%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libavformat-devel%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libavutil-devel%{?_isa} = %{epoch}:%{version}-%{release} +%package -n libavdevice%{?pkg_suffix} +Summary: FFmpeg device library +Requires: libavcodec%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libavfilter%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libavformat%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libavutil%{?pkg_suffix}%{_isa} = %{version}-%{release} + +%description -n libavdevice%{?pkg_suffix} +The libavdevice library provides a generic framework for grabbing from +and rendering to many common multimedia input/output devices, and +supports several input and output devices, including Video4Linux2, VfW, +DShow, and ALSA. + +%files -n libavdevice%{?pkg_suffix} +%license COPYING.GPLv2 LICENSE.md +%{_libdir}/libavdevice.so.%{av_device_soversion}{,.*} + +%dnl -------------------------------------------------------------------------------- + +%package -n libavdevice%{?pkg_suffix}-devel +Summary: Development files for FFmpeg's device library +Requires: libavcodec%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libavfilter%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libavformat%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libavutil%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libswresample%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libswscale%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libavdevice%{?pkg_suffix}%{_isa} = %{version}-%{release} Requires: pkgconfig -Obsoletes: libavdevice-free-devel < %{epoch}:%{version}-%{release} -Provides: libavdevice-free-devel = %{epoch}:%{version}-%{release} -%description -n libavdevice-devel +%description -n libavdevice%{?pkg_suffix}-devel +The libavdevice library provides a generic framework for grabbing from +and rendering to many common multimedia input/output devices, and +supports several input and output devices, including Video4Linux2, VfW, +DShow, and ALSA. + This subpackage contains the headers for FFmpeg libavdevice. -%package -n libavfilter +%files -n libavdevice%{?pkg_suffix}-devel +%{_includedir}/%{name}/libavdevice +%{_libdir}/pkgconfig/libavdevice.pc +%{_libdir}/libavdevice.so +%{_mandir}/man3/libavdevice.3* + +%dnl -------------------------------------------------------------------------------- + +%package -n libavfilter%{?pkg_suffix} Summary: FFmpeg audio and video filtering library -Requires: libavcodec%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libavformat%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libavutil%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libpostproc%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libswresample%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libswscale%{?_isa} = %{epoch}:%{version}-%{release} -Obsoletes: libavfilter-free < %{epoch}:%{version}-%{release} -Provides: libavfilter-free = %{epoch}:%{version}-%{release} +Requires: libavcodec%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libavformat%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libavutil%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libswresample%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libswscale%{?pkg_suffix}%{_isa} = %{version}-%{release} -%description -n libavfilter -The libavfilter library provides a generic audio/video filtering framework -containing several filters, sources and sinks. +%description -n libavfilter%{?pkg_suffix} +The libavfilter library provides a generic audio/video filtering +framework containing several filters, sources and sinks. -%package -n libavfilter-devel +%files -n libavfilter%{?pkg_suffix} +%license COPYING.GPLv2 LICENSE.md +%{_libdir}/libavfilter.so.%{av_filter_soversion}{,.*} + +%dnl -------------------------------------------------------------------------------- + +%package -n libavfilter%{?pkg_suffix}-devel Summary: Development files for FFmpeg's audio/video filter library -Requires: libavcodec-devel%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libavfilter%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libavformat-devel%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libavutil-devel%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libpostproc-devel%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libswresample-devel%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libswscale-devel%{?_isa} = %{epoch}:%{version}-%{release} +Requires: libavcodec%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libavformat%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libavutil%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libswresample%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libswscale%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libavfilter%{?pkg_suffix} = %{version}-%{release} Requires: pkgconfig -Obsoletes: libavfilter-free-devel < %{epoch}:%{version}-%{release} -Provides: libavfilter-free-devel = %{epoch}:%{version}-%{release} -%description -n libavfilter-devel +%description -n libavfilter%{?pkg_suffix}-devel +The libavfilter library provides a generic audio/video filtering +framework containing several filters, sources and sinks. + This subpackage contains the headers for FFmpeg libavfilter. -%package -n libavformat +%files -n libavfilter%{?pkg_suffix}-devel +%{_includedir}/%{name}/libavfilter +%{_libdir}/pkgconfig/libavfilter.pc +%{_libdir}/libavfilter.so +%{_mandir}/man3/libavfilter.3* + +%dnl -------------------------------------------------------------------------------- + +%package -n libavformat%{?pkg_suffix} Summary: FFmpeg's stream format library -Obsoletes: libavformat-free < %{epoch}:%{version}-%{release} -Provides: libavformat-free = %{epoch}:%{version}-%{release} +Requires: libavcodec%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: libavutil%{?pkg_suffix}%{_isa} = %{version}-%{release} -%description -n libavformat -The libavformat library provides a generic framework for multiplexing and -demultiplexing (muxing and demuxing) audio, video and subtitle streams. -It encompasses multiple muxers and demuxers for multimedia container formats. +%description -n libavformat%{?pkg_suffix} +The libavformat library provides a generic framework for multiplexing +and demultiplexing (muxing and demuxing) audio, video and subtitle +streams. It encompasses multiple muxers and demuxers for multimedia +container formats. -%package -n libavformat-devel +%if %{without all_codecs} +This build of ffmpeg is limited in the number of codecs supported. +%endif + +%files -n libavformat%{?pkg_suffix} +%license COPYING.GPLv2 LICENSE.md +%{_libdir}/libavformat.so.%{av_format_soversion}{,.*} + +%dnl -------------------------------------------------------------------------------- + +%package -n libavformat%{?pkg_suffix}-devel Summary: Development files for FFmpeg's stream format library -Requires: libavcodec-devel%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libavformat%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libavutil-devel%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libswresample-devel%{?_isa} = %{epoch}:%{version}-%{release} +Requires: libavcodec%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libavutil%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libswresample%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libavformat%{?pkg_suffix}%{_isa} = %{version}-%{release} Requires: pkgconfig -Obsoletes: libavformat-free-devel < %{epoch}:%{version}-%{release} -Provides: libavformat-free-devel = %{epoch}:%{version}-%{release} -%description -n libavformat-devel +%description -n libavformat%{?pkg_suffix}-devel +The libavformat library provides a generic framework for multiplexing +and demultiplexing (muxing and demuxing) audio, video and subtitle +streams. It encompasses multiple muxers and demuxers for multimedia +container formats. + This subpackage contains the headers for FFmpeg libavformat. -%package -n libavutil -Summary: FFmpeg's utility library -Obsoletes: libavutil-free < %{epoch}:%{version}-%{release} -Provides: libavutil-free = %{epoch}:%{version}-%{release} +%files -n libavformat%{?pkg_suffix}-devel +%{_includedir}/%{name}/libavformat +%{_libdir}/pkgconfig/libavformat.pc +%{_libdir}/libavformat.so +%{_mandir}/man3/libavformat.3* -%description -n libavutil +%dnl -------------------------------------------------------------------------------- + +%package -n libavutil%{?pkg_suffix} +Summary: FFmpeg's utility library +Group: System/Libraries +Obsoletes: libpostproc%{?pkg_suffix} < 8.0 + +%description -n libavutil%{?pkg_suffix} The libavutil library is a utility library to aid portable multimedia programming. It contains safe portable string functions, random number generators, data structures, additional mathematics functions, cryptography and multimedia related functionality (like enumerations for pixel and sample formats). -%package -n libavutil-devel -Summary: Development files for FFmpeg's utility library -Requires: libavutil%{?_isa} = %{epoch}:%{version}-%{release} -Requires: pkgconfig -Obsoletes: libavutil-free-devel < %{epoch}:%{version}-%{release} -Provides: libavutil-free-devel = %{epoch}:%{version}-%{release} +%files -n libavutil%{?pkg_suffix} +%license COPYING.GPLv2 LICENSE.md +%{_libdir}/libavutil.so.%{av_util_soversion}{,.*} + +%dnl -------------------------------------------------------------------------------- + +%package -n libavutil%{?pkg_suffix}-devel +Summary: Development files for FFmpeg's utility library +Requires: libavutil%{?pkg_suffix}%{_isa} = %{version}-%{release} +Requires: pkgconfig +Obsoletes: libpostproc%{?pkg_suffix}-devel < 8.0 + +%description -n libavutil%{?pkg_suffix}-devel +The libavutil library is a utility library to aid portable multimedia +programming. It contains safe portable string functions, random +number generators, data structures, additional mathematics functions, +cryptography and multimedia related functionality (like enumerations +for pixel and sample formats). -%description -n libavutil-devel This subpackage contains the headers for FFmpeg libavutil. -%package -n libpostproc -Summary: FFmpeg post-processing library -Obsoletes: libpostproc-free < %{epoch}:%{version}-%{release} -Provides: libpostproc-free = %{epoch}:%{version}-%{release} +%files -n libavutil%{?pkg_suffix}-devel +%{_includedir}/%{name}/libavutil +%{_libdir}/pkgconfig/libavutil.pc +%{_libdir}/libavutil.so +%{_mandir}/man3/libavutil.3* -%description -n libpostproc -A library with video postprocessing filters, such as deblocking and -deringing filters, noise reduction, automatic contrast and brightness -correction, linear/cubic interpolating deinterlacing. +%dnl -------------------------------------------------------------------------------- -%package -n libpostproc-devel -Summary: Development files for the FFmpeg post-processing library -Requires: libavutil-devel%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libpostproc%{?_isa} = %{epoch}:%{version}-%{release} -Requires: pkgconfig -Obsoletes: libpostproc-free-devel < %{epoch}:%{version}-%{release} -Provides: libpostproc-free-devel = %{epoch}:%{version}-%{release} - -%description -n libpostproc-devel -This subpackage contains the headers for FFmpeg libpostproc. - -%package -n libswresample +%package -n libswresample%{?pkg_suffix} Summary: FFmpeg software resampling library -Requires: libavutil%{?_isa} = %{epoch}:%{version}-%{release} -Obsoletes: libavresemple < %{epoch}:%{version}-%{release} -Provides: libavresemple = %{epoch}:%{version}-%{release} -Obsoletes: libswresample-free < %{epoch}:%{version}-%{release} -Provides: libswresample-free = %{epoch}:%{version}-%{release} +Requires: libavutil%{?pkg_suffix}%{_isa} = %{version}-%{release} -%description -n libswresample +%description -n libswresample%{?pkg_suffix} The libswresample library performs audio conversion between different sample rates, channel layout and channel formats. -%package -n libswresample-devel -Summary: Development files for the FFmpeg software resampling library -Requires: libavutil-devel%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libswresample%{?_isa} = %{epoch}:%{version}-%{release} -Obsoletes: libavresemple-devel < %{epoch}:%{version}-%{release} -Provides: libavresemple-devel = %{epoch}:%{version}-%{release} -Obsoletes: libswresample-free-devel < %{epoch}:%{version}-%{release} -Provides: libswresample-free-devel = %{epoch}:%{version}-%{release} +%files -n libswresample%{?pkg_suffix} +%license COPYING.GPLv2 LICENSE.md +%{_libdir}/libswresample.so.%{swresample_soversion}{,.*} + +%dnl -------------------------------------------------------------------------------- + +%package -n libswresample%{?pkg_suffix}-devel +Summary: Development files for the FFmpeg software resampling library +Requires: libavutil%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libswresample%{?pkg_suffix}%{_isa} = %{version}-%{release} + +%description -n libswresample%{?pkg_suffix}-devel +The libswresample library performs audio conversion between different +sample rates, channel layout and channel formats. -%description -n libswresample-devel This subpackage contains the headers for FFmpeg libswresample. -%package -n libswscale -Summary: FFmpeg image scaling and colorspace/pixel conversion library -Obsoletes: libswscale-free < %{epoch}:%{version}-%{release} -Provides: libswscale-free = %{epoch}:%{version}-%{release} +%files -n libswresample%{?pkg_suffix}-devel +%{_includedir}/%{name}/libswresample +%{_libdir}/pkgconfig/libswresample.pc +%{_libdir}/libswresample.so +%{_mandir}/man3/libswresample.3* -%description -n libswscale +%dnl -------------------------------------------------------------------------------- + +%package -n libswscale%{?pkg_suffix} +Summary: FFmpeg image scaling and colorspace/pixel conversion library +Requires: libavutil%{?pkg_suffix}%{_isa} = %{version}-%{release} + +%description -n libswscale%{?pkg_suffix} The libswscale library performs image scaling and colorspace and pixel format conversion operations. -%package -n libswscale-devel -Summary: Development files for FFmpeg's image scaling and colorspace library -Requires: libavutil-devel%{?_isa} = %{epoch}:%{version}-%{release} -Requires: libswscale%{?_isa} = %{epoch}:%{version}-%{release} -Obsoletes: libswscale-free-devel < %{epoch}:%{version}-%{release} -Provides: libswscale-free-devel = %{epoch}:%{version}-%{release} +%files -n libswscale%{?pkg_suffix} +%license COPYING.GPLv2 LICENSE.md +%{_libdir}/libswscale.so.%{swscale_soversion}{,.*} + +%dnl -------------------------------------------------------------------------------- + +%package -n libswscale%{?pkg_suffix}-devel +Summary: Development files for FFmpeg's image scaling and colorspace library +Provides: libswscale%{?pkg_suffix}-devel = %{version}-%{release} +Conflicts: libswscale%{?pkg_suffix}-devel < %{version}-%{release} +Requires: libavutil%{?pkg_suffix}-devel = %{version}-%{release} +Requires: libswscale%{?pkg_suffix}%{_isa} = %{version}-%{release} + +%description -n libswscale%{?pkg_suffix}-devel +The libswscale library performs image scaling and colorspace and +pixel format conversion operations. -%description -n libswscale-devel This subpackage contains the headers for FFmpeg libswscale. +%files -n libswscale%{?pkg_suffix}-devel +%{_includedir}/%{name}/libswscale +%{_libdir}/pkgconfig/libswscale.pc +%{_libdir}/libswscale.so +%{_mandir}/man3/libswscale.3* + +%endif +# freeworld_lavc bcond + +%dnl -------------------------------------------------------------------------------- + +%if %{with freeworld_lavc} +%package -n libavcodec-freeworld +Summary: FFmpeg codec library - freeworld overlay +Requires: libavutil%{?basepkg_suffix}%{_isa} >= %{version}-%{release} +Requires: libswresample%{?basepkg_suffix}%{_isa} >= %{version}-%{release} +Supplements: libavcodec%{?basepkg_suffix}%{_isa} >= %{version}-%{release} +# We require libopenh264 library, which has a dummy implementation and a real one +# In the event that this is being installed, we want to install this version +Requires: openh264%{_isa} + +%description -n libavcodec-freeworld +The libavcodec library provides a generic encoding/decoding framework +and contains multiple decoders and encoders for audio, video and +subtitle streams, and several bitstream filters. + +This build includes the full range of codecs offered by ffmpeg. + +%files -n libavcodec-freeworld +%{_sysconfdir}/ld.so.conf.d/%{name}-%{_lib}.conf +%{_libdir}/%{name}/libavcodec.so.%{av_codec_soversion}{,.*} + +# Re-enable ldconfig_scriptlets macros +%{!?ldconfig:%global ldconfig /sbin/ldconfig} +%ldconfig_scriptlets -n libavcodec-freeworld + +%endif + +%dnl -------------------------------------------------------------------------------- + %prep -%autosetup -p1 +%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}' -# Uncomment to enable debugging while configuring -#sed -i -e 's|#!/bin/sh|#!/bin/sh -x|g' configure +%autosetup -S git_am +install -m 0644 %{SOURCE20} enable_decoders +install -m 0644 %{SOURCE21} enable_encoders +# fix -O3 -g in host_cflags +sed -i "s|check_host_cflags -O3|check_host_cflags %{optflags}|" configure +install -m0755 -d _doc/examples +cp -a doc/examples/{*.c,Makefile,README} _doc/examples/ -%build +%conf %set_build_flags +# This is not a normal configure script, don't use %%configure ./configure \ - --arch=%{_target_cpu} \ + --prefix=%{_prefix} \ --bindir=%{_bindir} \ --datadir=%{_datadir}/%{name} \ + --docdir=%{_docdir}/%{name} \ + --incdir=%{_includedir}/%{name} \ + --libdir=%{_libdir} \ + --mandir=%{_mandir} \ + --arch=%{_target_cpu} \ + --optflags="%{build_cflags}" \ + --extra-ldflags="%{build_ldflags}" \ + --disable-htmlpages \ --disable-static \ --disable-stripping \ + --enable-pic \ + --enable-shared \ + --enable-gpl \ + --enable-version3 \ --enable-amf \ --enable-avcodec \ --enable-avdevice \ @@ -439,15 +748,21 @@ This subpackage contains the headers for FFmpeg libswscale. %else --disable-chromaprint \ %endif - --enable-decklink \ + --disable-cuda-nvcc \ +%if %{with ffnvcodec} + --enable-cuvid \ +%endif + --disable-decklink \ --enable-frei0r \ --enable-gcrypt \ --enable-gmp \ - --enable-gpl \ + --enable-gnutls \ --enable-gray \ --enable-iconv \ --enable-ladspa \ +%if %{with lcms2} --enable-lcms2 \ +%endif --enable-libaom \ --enable-libaribb24 \ --enable-libaribcaption \ @@ -458,30 +773,33 @@ This subpackage contains the headers for FFmpeg libswscale. --enable-libcdio \ --enable-libcodec2 \ --enable-libdav1d \ - --enable-libdavs2 \ + --disable-libdavs2 \ +%if %{with dc1394} --enable-libdc1394 \ - --enable-libdrm \ +%endif --enable-libdvdnav \ --enable-libdvdread \ --enable-libfdk-aac \ +%if %{with flite} + --enable-libflite \ +%endif --enable-libfontconfig \ --enable-libfreetype \ --enable-libfribidi \ --enable-libgme \ - --enable-libgsm \ --enable-libharfbuzz \ + --enable-libgsm \ +%if %{with dc1394} --enable-libiec61883 \ +%endif --enable-libilbc \ --enable-libjack \ --enable-libjxl \ --enable-libklvanc \ - --enable-libkvazaar \ - --enable-liblc3 \ --disable-liblensfun \ -%if %{with lcevcdec} - --enable-liblcevc-dec \ -%else --disable-liblcevc-dec \ +%if %{with lc3} + --enable-liblc3 \ %endif --enable-libmodplug \ --enable-libmp3lame \ @@ -490,11 +808,14 @@ This subpackage contains the headers for FFmpeg libswscale. --enable-libopencore-amrnb \ --enable-libopencore-amrwb \ --disable-libopencv \ + --enable-liboapv \ --enable-libopenh264 \ --enable-libopenjpeg \ --enable-libopenmpt \ --enable-libopus \ +%if %{with placebo} --enable-libplacebo \ +%endif --enable-libpulse \ --enable-libqrencode \ --disable-libquirc \ @@ -502,7 +823,9 @@ This subpackage contains the headers for FFmpeg libswscale. --enable-librav1e \ --enable-librist \ --enable-librsvg \ +%if %{with librtmp} --enable-librtmp \ +%endif --enable-librubberband \ --enable-libshaderc \ --disable-libshine \ @@ -517,39 +840,57 @@ This subpackage contains the headers for FFmpeg libswscale. --enable-libtesseract \ --enable-libtheora \ --disable-libtorch \ + --disable-libuavs3d \ --enable-libtwolame \ - --enable-libuavs3d \ --enable-libv4l2 \ --enable-libvidstab \ +%if %{with vmaf} + --enable-libvmaf \ +%endif --enable-libvo-amrwbenc \ --enable-libvorbis \ +%if %{with vpl} + --enable-libvpl \ +%endif --enable-libvpx \ - --enable-libvvenc \ --enable-libwebp \ +%if %{with x264} --enable-libx264 \ +%endif +%if %{with x265} --enable-libx265 \ - --enable-libxavs2 \ - --enable-libxavs \ +%endif + --disable-libxavs2 \ + --disable-libxavs \ --enable-libxcb \ --enable-libxcb-shape \ --enable-libxcb-shm \ --enable-libxcb-xfixes \ - --enable-libxevd \ +%if %{with evc_main} --enable-libxeve \ + --enable-libxevd \ +%else + --enable-libxeveb \ + --enable-libxevdb \ +%endif --enable-libxml2 \ --enable-libxvid \ --enable-libzimg \ --enable-libzmq \ --enable-libzvbi \ +%if %{with lto} + --enable-lto \ +%endif --enable-lv2 \ --enable-lzma \ - --enable-nonfree \ --enable-manpages \ +%if %{with ffnvcodec} + --enable-nvdec \ + --enable-nvenc \ +%endif --enable-openal \ - --enable-opencl \ - --enable-opengl \ - --enable-openssl \ - --enable-postproc \ + --disable-openssl \ + --enable-pthreads \ --enable-sdl2 \ --enable-shared \ --enable-swresample \ @@ -557,140 +898,486 @@ This subpackage contains the headers for FFmpeg libswscale. --enable-v4l2-m2m \ --enable-vaapi \ --enable-vapoursynth \ - --enable-version3 \ --enable-vdpau \ --enable-vulkan \ --enable-xlib \ --enable-zlib \ - --extra-ldflags="%{build_ldflags}" \ - --incdir=%{_includedir} \ - --libdir=%{_libdir} \ - --mandir=%{_mandir} \ - --optflags="%{build_cflags}" \ - --prefix=%{_prefix} \ - --shlibdir=%{_libdir} \ -%ifarch x86_64 aarch64 - --enable-cuda-llvm \ - --enable-cuda-nvcc \ - --enable-cuvid \ - --enable-ffnvcodec \ - --enable-nvdec \ - --enable-nvenc \ - --extra-cflags="-I%{_includedir}/cuda" \ +%if %{without all_codecs} + --enable-muxers \ + --enable-demuxers \ + --enable-hwaccels \ + --disable-encoders \ + --disable-decoders \ + --disable-decoder="h264,hevc,vc1,vvc" \ + --enable-encoder="$(perl -pe 's{^(\w*).*}{$1,}gs' %{buildroot}%{_sysconfdir}/ld.so.conf.d/%{name}-%{_lib}.conf +cp -pa %{buildroot}%{_libdir}/libavcodec.so.%{av_codec_soversion}{,.*} %{buildroot}%{_libdir}/%{name} +# Drop unneeded stuff +rm -f %{buildroot}%{_libdir}/*.* +rm -rf %{buildroot}%{_libdir}/pkgconfig +rm -rf %{buildroot}%{_includedir} +rm -rf %{buildroot}%{_bindir} +rm -rf %{buildroot}%{_datadir} +%endif -%files devel -%doc doc/APIchanges doc/*.txt -%doc doc/html doc/examples - -%files -n libavcodec -%license COPYING.GPLv2 LICENSE.md -%{_libdir}/libavcodec.so.%{avcodec_soversion}* - -%files -n libavcodec-devel -%{_includedir}/libavcodec -%{_libdir}/pkgconfig/libavcodec.pc -%{_libdir}/libavcodec.so -%{_mandir}/man3/libavcodec.3* - -%files -n libavdevice -%license COPYING.GPLv2 LICENSE.md -%{_libdir}/libavdevice.so.%{avdevice_soversion}* - -%files -n libavdevice-devel -%{_includedir}/libavdevice -%{_libdir}/pkgconfig/libavdevice.pc -%{_libdir}/libavdevice.so -%{_mandir}/man3/libavdevice.3* - -%files -n libavfilter -%license COPYING.GPLv2 LICENSE.md -%{_libdir}/libavfilter.so.%{avfilter_soversion}* - -%files -n libavfilter-devel -%{_includedir}/libavfilter -%{_libdir}/pkgconfig/libavfilter.pc -%{_libdir}/libavfilter.so -%{_mandir}/man3/libavfilter.3* - -%files -n libavformat -%license COPYING.GPLv2 LICENSE.md -%{_libdir}/libavformat.so.%{avformat_soversion}* - -%files -n libavformat-devel -%{_includedir}/libavformat -%{_libdir}/pkgconfig/libavformat.pc -%{_libdir}/libavformat.so -%{_mandir}/man3/libavformat.3* - -%files -n libavutil -%license COPYING.GPLv2 LICENSE.md -%{_libdir}/libavutil.so.%{avutil_soversion}* - -%files -n libavutil-devel -%{_includedir}/libavutil -%{_libdir}/pkgconfig/libavutil.pc -%{_libdir}/libavutil.so -%{_mandir}/man3/libavutil.3* - -%files -n libpostproc -%license COPYING.GPLv2 LICENSE.md -%{_libdir}/libpostproc.so.%{postproc_soversion}* - -%files -n libpostproc-devel -%{_includedir}/libpostproc -%{_libdir}/pkgconfig/libpostproc.pc -%{_libdir}/libpostproc.so - -%files -n libswresample -%license COPYING.GPLv2 LICENSE.md -%{_libdir}/libswresample.so.%{swresample_soversion}* - -%files -n libswresample-devel -%{_includedir}/libswresample -%{_libdir}/pkgconfig/libswresample.pc -%{_libdir}/libswresample.so -%{_mandir}/man3/libswresample.3* - -%files -n libswscale -%license COPYING.GPLv2 LICENSE.md -%{_libdir}/libswscale.so.%{swscale_soversion}* - -%files -n libswscale-devel -%{_includedir}/libswscale -%{_libdir}/pkgconfig/libswscale.pc -%{_libdir}/libswscale.so -%{_mandir}/man3/libswscale.3* %changelog -%autochangelog +* Sun May 31 2026 Gilver E. - 1:8.1.1-1 +- Rebased build onto Fedora spec with full redistributable codec support +- Ported to Terra with permission + +* Sat May 09 2026 Dominik Mierzejewski - 8.1.1-1 +- Update to 8.1.1 +- Drop merged patch + +* Wed Apr 15 2026 Nicolas Chauvet - 8.0.1-7 +- Rebuilt for vmaf-3.1.0 + +* Thu Mar 19 2026 Nicolas Chauvet - 8.0.1-6 +- Rebuilt for libplacebo + +* Mon Mar 09 2026 Dominik Mierzejewski - 8.0.1-5 +- Rebuilt for libvpx 1.16.0 + +* Mon Feb 16 2026 Nick White - 8.0.1-4 +- Enable mov_text encoder and decoder + +* Fri Jan 16 2026 Fedora Release Engineering - 8.0.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Thu Dec 04 2025 Marcin Juszkiewicz - 8.0.1-2 +- disable dc1394 and ffnvcodec on risc-v + +* Fri Nov 21 2025 Dominik Mierzejewski - 8.0.1-1 +- Update to 8.0.1 (resolves rhbz#2416044) +- Split configure step to conf stage + +* Fri Nov 14 2025 Neal Gompa - 8.0-2 +- Disable lc3 only on RHEL 10 + +* Sun Nov 02 2025 Neal Gompa - 8.0-1 +- Rebase to version 8.0 + +* Sun Nov 02 2025 Dominik Mierzejewski - 7.1.2-3 +- Re-enable openal support (dropped by accident in commit 5917b714, resolves rhbz#2404091) + +* Thu Oct 02 2025 Robert-André Mauchin - 7.1.2-2 +- Rebuild for svt-av1 soname bump + +* Wed Sep 24 2025 Simone Caronni - 7.1.2-1 +- Update to 7.1.2. +- Enable VANC processing for SDI. +- Explicitly list all implicitly enabled/disabled options. + +* Tue Aug 26 2025 Neal Gompa - 7.1.1-10 +- Disable all subpackages except libavcodec-freeworld with the freeworld bcond + +* Mon Aug 25 2025 Neal Gompa - 7.1.1-9 +- Enable support for MPEG-5/EVC + +* Thu Aug 21 2025 Neal Gompa - 7.1.1-8 +- Reorganize spec to group subpackage definitions together +- Add freeworld conditional for third-party builds +- Drop unneeded scriptlets + +* Fri Aug 01 2025 Neal Gompa - 7.1.1-7 +- Always verify sources + +* Tue Jul 29 2025 Nicolas Chauvet - 7.1.1-6 +- Rebuilt for libplacebo + +* Wed Jul 23 2025 Fedora Release Engineering - 7.1.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Fri Jun 13 2025 Neal Gompa - 7.1.1-4 +- Switch to regular upstream sources for package build +- Enable more codecs + +* Sat Mar 22 2025 Songsong Zhang - 7.1.1-3 +- Add missing source files for riscv64 + +* Thu Mar 13 2025 Fabio Valentini - 7.1.1-2 +- Rebuild for noopenh264 2.6.0 + +* Thu Mar 06 2025 Dominik Mierzejewski - 7.1.1-1 +- Update to 7.1.1 (resolves rhbz#2349351) +- Enable LC3 codec via liblc3 +- Backport fix for CVE-2025-22921 (resolves rhbz#2346558) + +* Fri Feb 07 2025 Yaakov Selkowitz - 7.1-1 +- Rebase to 7.1 (rhbz#2273572) + +* Wed Feb 05 2025 Robert-André Mauchin - 7.0.2-13 +- Rebuilt for aom 3.11.0 + +* Sun Feb 02 2025 Sérgio Basto - 7.0.2-12 +- Rebuild for jpegxl (libjxl) 0.11.1 + +* Wed Jan 29 2025 Simone Caronni - 7.0.2-11 +- Rebuild for updated VapourSynth. + +* Thu Jan 16 2025 Fedora Release Engineering - 7.0.2-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Thu Jan 09 2025 Michel Lind - 7.0.2-9 +- Rebuilt for rubberband 4 + +* Tue Nov 12 2024 Sandro Mani - 7.0.2-8 +- Rebuild (tesseract) + +* Mon Oct 07 2024 Yaakov Selkowitz - 7.0.2-7 +- Properly enable aribb24/libaribcaption +- Disable VANC dependency as it depends on decklink + +* Mon Oct 07 2024 Neal Gompa - 7.0.2-6 +- Enable SDI data processing (Kernel Labs VANC) processing +- Enable Japanese DVD subtitles/teletext (aribb24/libaribcaption) + +* Mon Oct 07 2024 Yaakov Selkowitz - 7.0.2-5 +- Properly enable noopenh264 + +* Wed Oct 02 2024 Neal Gompa - 7.0.2-4 +- Fix chromaprint bcond + +* Wed Sep 25 2024 Michel Lind - 7.0.2-3 +- Disable omxil completely, it's now retired +- Rebuild for tesseract-5.4.1-3 (soversion change from 5.4.1 to just 5.4) + +* Fri Sep 20 2024 Neal Gompa - 7.0.2-2 +- Rebuild for newer ffnvcodec + +* Fri Sep 06 2024 Neal Gompa - 7.0.2-1 +- Rebase to 7.0.2 (rhbz#2273572) +- Drop OpenH264 dlopen headers as we use noopenh264 now +- Use modern bconds + +* Sat Aug 24 2024 Fabio Valentini - 6.1.2-1 +- Update to 6.1.2 + +* Sat Jul 20 2024 Neal Gompa - 6.1.1-19 +- Backport fixes for Mesa 24.0.6+ / 21.1.4+ changes for VA-API + +* Wed Jul 17 2024 Fedora Release Engineering - 6.1.1-18 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Tue Jul 16 2024 Nicolas Chauvet - 6.1.1-17 +- Rebuilt for libplacebo/vmaf + +* Wed Jun 19 2024 Dominik Mierzejewski - 6.1.1-16 +- Backport fix for CVE-2023-49528 + +* Thu Jun 13 2024 Sandro Mani - 6.1.1-15 +- Rebuild for tesseract-5.4.1 + +* Wed May 29 2024 Robert-André Mauchin - 6.1.1-14 +- Rebuild for svt-av1 2.1.0 + +* Wed May 22 2024 Simone Caronni - 6.1.1-13 +- Rebuild for updated VapourSynth. + +* Tue Apr 23 2024 Kalev Lember - 6.1.1-12 +- Stop using bundled openh264 headers in F40+ and build against noopenh264 +- Backport a fix to build with Vulkan headers >= 1.3.280.0 + +* Wed Mar 13 2024 Sérgio Basto - 6.1.1-11 +- Rebuild for jpegxl (libjxl) 0.10.2 + +* Tue Mar 12 2024 Dominik Mierzejewski - 6.1.1-10 +- Enable drawtext filter (requires libharfbuzz) + +* Wed Feb 14 2024 Sérgio Basto - 6.1.1-9 +- Rebuild for jpegxl (libjxl) 0.9.2 with soname bump + +* Wed Feb 07 2024 Pete Walter - 6.1.1-8 +- Rebuild for libvpx 1.14.x + +* Sun Jan 28 2024 Sandro Mani - 6.1.1-7 +- Rebuild (tesseract) + +* Wed Jan 24 2024 Fedora Release Engineering - 6.1.1-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Jan 19 2024 Fedora Release Engineering - 6.1.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Mon Jan 15 2024 Neal Gompa - 6.1.1-4 +- Add missing files for some of the libraries to fix riscv64 builds + +* Fri Jan 12 2024 Fabio Valentini - 6.1.1-3 +- Rebuild for dav1d 1.3.0 + +* Fri Jan 05 2024 Florian Weimer - 6.1.1-2 +- Backport upstream patch to fix C compatibility issues + +* Thu Jan 04 2024 Neal Gompa - 6.1.1-1 +- Update to 6.1.1 + +* Thu Jan 04 2024 Neal Gompa - 6.1-1 +- Rebase to 6.1 + +* Wed Dec 06 2023 Kalev Lember - 6.0.1-2 +- Prefer openh264 over noopenh264 +- Backport upstream patch to drop openh264 runtime version checks + +* Sat Nov 11 2023 Neal Gompa - 6.0.1-1 +- Update to 6.0.1 +- Add ffmpeg chromium support patch (#2240127) +- Use git to apply patches + +* Fri Nov 10 2023 Neal Gompa - 6.0-16 +- Add patches to support enhanced RTMP and AV1 encoding through VA-API +- Force AAC decoding through fdk-aac-free + +* Sun Oct 08 2023 Dominik Mierzejewski - 6.0-15 +- Backport upstream patch to fix segfault when passing non-existent filter + option (rfbz#6773) + +* Sat Oct 07 2023 Sandro Mani - 6.0-14 +- Rebuild (tesseract) + +* Fri Sep 29 2023 Nicolas Chauvet - 6.0-13 +- Rebuilt for libplacebo + +* Fri Aug 25 2023 Dominik Mierzejewski - 6.0-12 +- Backport upstream patch to fix assembly with binutils 2.41. + +* Sat Aug 05 2023 Richard Shaw - 6.0-11 +- Rebuild for codec2. + +* Fri Jul 28 2023 Dominik Mierzejewski - 6.0-10 +- Rebuild for libplacebo + +* Wed Jul 19 2023 Fedora Release Engineering - 6.0-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Fri Jul 14 2023 Sandro Mani - 6.0-8 +- Rebuild (tesseract) + +* Sun Jun 18 2023 Sérgio Basto - 6.0-7 +- Mass rebuild for jpegxl-0.8.1 + +* Mon Jun 12 2023 Dominik Mierzejewski - 6.0-6 +- Rebuild for libdc1394 + +* Thu Apr 06 2023 Adam Williamson - 6.0-5 +- Rebuild (tesseract) again + +* Mon Apr 03 2023 Neal Gompa - 6.0-4 +- Include RISC-V support sources in the tarball + +* Mon Apr 03 2023 Sandro Mani - 6.0-3 +- Rebuild (tesseract) + +* Wed Mar 22 2023 Nicolas Chauvet - 6.0-2 +- Backport upstream patches for libplacebo support + +* Sun Mar 12 2023 Neal Gompa - 6.0-1 +- Rebase to version 6.0 +- Enable SVT-AV1 on all architectures +- Use oneVPL for QSV +- Switch to SPDX license identifiers + +* Wed Feb 15 2023 Neal Gompa - 5.1.2-12 +- Enable support for the RIST protocol through librist + +* Wed Feb 15 2023 Tom Callaway - 5.1.2-11 +- bootstrap off + +* Wed Feb 15 2023 Tom Callaway - 5.1.2-10 +- rebuild for libvpx (bootstrap) + +* Mon Feb 13 2023 Yaakov Selkowitz - 5.1.2-9 +- Enable lcms2, lv2, placebo, rabbitmq, xv + +* Mon Feb 13 2023 Neal Gompa - 5.1.2-8 +- Disable flite for RHEL 9 as flite is too old + +* Fri Feb 03 2023 Yaakov Selkowitz - 5.1.2-7 +- Properly enable caca, flite, gme, iec61883 + +* Mon Jan 30 2023 Neal Gompa - 5.1.2-6 +- Enable more approved codecs + +* Thu Jan 19 2023 Fedora Release Engineering - 5.1.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Sun Jan 15 2023 Yaakov Selkowitz - 5.1.2-4 +- Properly enable libzvbi_teletext decoder + +* Fri Dec 23 2022 Sandro Mani - 5.1.2-3 +- Rebuild (tesseract) + +* Wed Nov 09 2022 Neal Gompa - 5.1.2-2 +- Unconditionally enable Vulkan + +* Wed Oct 12 2022 Neal Gompa - 5.1.2-1 +- Update to version 5.1.2 +- Refresh dlopen headers and patch for OpenH264 2.3.1 + +* Sun Sep 04 2022 Neal Gompa - 5.1.1-1 +- Update to version 5.1.1 +- Refresh dlopen headers for OpenH264 2.3.0 +- Disable omxil and crystalhd for RHEL + +* Wed Aug 24 2022 Neal Gompa - 5.1-1 +- Rebase to version 5.1 + +* Thu Jul 21 2022 Fedora Release Engineering - 5.0.1-16 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Sat Jul 09 2022 Richard Shaw - 5.0.1-15 +- Rebuild for codec2 1.0.4. + +* Fri Jul 08 2022 Sandro Mani - 5.0.1-14 +- Rebuild (tesseract) + +* Wed Jun 22 2022 Robert-André Mauchin - 5.0.1-13 +- Rebuilt for new aom, dav1d, rav1e and svt-av1 + +* Fri Jun 17 2022 Mamoru TASAKA - 5.0.1-12 +- Rebuild for new srt + +* Thu Jun 09 2022 Neal Gompa - 5.0.1-11 +- Ensure libavdevice-devel is pulled in with devel metapackage + +* Sun Jun 05 2022 Neal Gompa - 5.0.1-10 +- Update for OpenH264 2.2.0 + +* Tue May 31 2022 Neal Gompa - 5.0.1-9 +- Rebuild for ilbc-3.0.4 + +* Thu May 26 2022 Benjamin A. Beasley - 5.0.1-9 +- Rebuild for ilbc-3.0.4 (bootstrap) + +* Sat May 21 2022 Sandro Mani - 5.0.1-8 +- Rebuild for gdal-3.5.0 and/or openjpeg-2.5.0 + +* Fri May 20 2022 Sandro Mani - 5.0.1-7 +- Rebuild for gdal-3.5.0 and/or openjpeg-2.5.0 + +* Sun Apr 24 2022 Neal Gompa - 5.0.1-6 +- Add VAAPI encoders for mjpeg, mpeg2, vp8, and vp9 +- Ensure hwaccels for enabled codecs are turned on + +* Tue Apr 19 2022 Neal Gompa - 5.0.1-5 +- Drop unused enca build dependency + +* Tue Apr 19 2022 Neal Gompa - 5.0.1-4 +- Use shaderc for Vulkan support + +* Mon Apr 18 2022 Neal Gompa - 5.0.1-3 +- Fix codec2 support enablement + +* Mon Apr 18 2022 Dominik Mierzejewski - 5.0.1-2 +- Properly enable decoding and encoding ilbc + +* Tue Apr 12 2022 Neal Gompa - 5.0.1-1 +- Update to 5.0.1 to fix crashes with muxing MP4 video (#2073980) + +* Tue Apr 05 2022 Dominik Mierzejewski - 5.0-11 +- Enable OpenCL acceleration +- be explicit about enabled external features in configure +- enable gcrypt +- drop duplicate CFLAGS and use Fedora LDFLAGS + +* Thu Mar 10 2022 Sandro Mani - 5.0-10 +- Rebuild for tesseract 5.1.0 + +* Tue Mar 08 2022 Neal Gompa - 5.0-9 +- Drop ffmpeg chromium support patch (#2061392) + +* Fri Feb 18 2022 Neal Gompa - 5.0-8 +- Add patch to return correct AVERROR with bad OpenH264 versions + +* Fri Feb 18 2022 Neal Gompa - 5.0-7 +- Update OpenH264 dlopen patch to split dlopen code into c and h files + +* Thu Feb 17 2022 Neal Gompa - 5.0-6 +- Update OpenH264 dlopen patch to use AVERROR return codes correctly + +* Tue Feb 15 2022 Neal Gompa - 5.0-5 +- Disable hardware decoders due to broken failure modes + +* Tue Feb 15 2022 Neal Gompa - 5.0-4 +- Add support for dlopening OpenH264 +- Add tarball scripts as sources + +* Sun Feb 13 2022 Neal Gompa - 5.0-3 +- Enable more QSV and V4L2M2M codecs + +* Sun Feb 13 2022 Neal Gompa - 5.0-2 +- Enable support for more hardware codecs + +* Fri Feb 11 2022 Andreas Schneider - 5.0-1 +- Initial import (fedora#2051008) diff --git a/anda/multimedia/ffmpeg/pre.rhai b/anda/multimedia/ffmpeg/pre.rhai new file mode 100644 index 0000000000..474b0ed137 --- /dev/null +++ b/anda/multimedia/ffmpeg/pre.rhai @@ -0,0 +1,5 @@ +let key = get("https://ffmpeg.org/ffmpeg-devel.asc"); +let dir = sub(`/[^/]+$`, "", __script_path); + +open_file(`${dir}/ffmpeg-devel.asc`, "w").write(key); +sh(`gpg2 --import --import-options import-export,import-minimal ffmpeg-devel.asc > ./ffmpeg.keyring`, #{ "cwd": dir }); diff --git a/anda/multimedia/gpu-screen-recorder/gpu-screen-recorder.spec b/anda/multimedia/gpu-screen-recorder/gpu-screen-recorder.spec index b4f412b82e..819b1be888 100644 --- a/anda/multimedia/gpu-screen-recorder/gpu-screen-recorder.spec +++ b/anda/multimedia/gpu-screen-recorder/gpu-screen-recorder.spec @@ -1,6 +1,6 @@ Name: gpu-screen-recorder -Version: 5.12.5 -Release: 3%?dist +Version: 5.13.9 +Release: 1%{?dist} Summary: A shadowplay-like screen recorder for Linux License: GPL-3.0-or-later @@ -29,10 +29,11 @@ BuildRequires: meson BuildRequires: pkgconfig(dbus-1) BuildRequires: pkgconfig(libspa-0.2) BuildRequires: pkgconfig(libglvnd) +BuildRequires: pkgconfig(vulkan) Requires(post): libcap BuildRequires: systemd-rpm-macros -Packager: Willow Reed +Packager: Cypress Reed %description Shadowplay-like screen recorder for Linux. Uses GPU acceleration to record in H.264, HEVC, AV1, VP8, or VP9. @@ -72,8 +73,11 @@ Shadowplay-like screen recorder for Linux. Uses GPU acceleration to record in H. %{_mandir}/man1/%{name}.1* %changelog -* Sun Mar 15 2026 Willow C Reed +* Thu Jun 04 2026 Cypress Reed +- Update email and name (was Willow Reed or Willow C Reed) (I'm official now!) + +* Sun Mar 15 2026 Cypress Reed - Fix package source -* Fri Jan 02 2026 Willow Reed +* Fri Jan 02 2026 Cypress Reed - Initial commit \ No newline at end of file diff --git a/anda/multimedia/gstreamer1/gstreamer1-plugin-icamerasrc/gstreamer1-plugin-icamerasrc.spec b/anda/multimedia/gstreamer1/gstreamer1-plugin-icamerasrc/gstreamer1-plugin-icamerasrc.spec index 14bf43da0e..6b3e12d881 100644 --- a/anda/multimedia/gstreamer1/gstreamer1-plugin-icamerasrc/gstreamer1-plugin-icamerasrc.spec +++ b/anda/multimedia/gstreamer1/gstreamer1-plugin-icamerasrc/gstreamer1-plugin-icamerasrc.spec @@ -1,5 +1,5 @@ -%global fulldate 2025-09-26 -%global commit 4fb31db76b618aae72184c59314b839dedb42689 +%global fulldate 2026-04-23 +%global commit 867c5b6ab7925c9b69b8374873a832266d97d7e5 %global commit_date %(echo %{fulldate} | sed 's/-//g') %global shortcommit %(c=%{commit}; echo ${c:0:7}) @@ -44,12 +44,14 @@ Development files for the GStreamer IPU6 camera plugin. %prep %autosetup -p1 -n icamerasrc-%{commit} -autoreconf -vif -%build +%conf +autoreconf -vif export CHROME_SLIM_CAMHAL=ON export STRIP_VIRTUAL_CHANNEL_CAMHAL=ON %configure --enable-gstdrmformat --with-haladaptor + +%build %make_build %install diff --git a/anda/multimedia/gstreamer1/gstreamer1-plugin-libav/VERSION_ffmpeg.txt b/anda/multimedia/gstreamer1/gstreamer1-plugin-libav/VERSION_ffmpeg.txt index ce0abf6b25..ef40fc45d0 100644 --- a/anda/multimedia/gstreamer1/gstreamer1-plugin-libav/VERSION_ffmpeg.txt +++ b/anda/multimedia/gstreamer1/gstreamer1-plugin-libav/VERSION_ffmpeg.txt @@ -1 +1 @@ -7.1.2 +8.1.1 diff --git a/anda/multimedia/gstreamer1/gstreamer1-plugin-libav/gstreamer1-plugin-libav.spec b/anda/multimedia/gstreamer1/gstreamer1-plugin-libav/gstreamer1-plugin-libav.spec index 469e7906e1..8e91ffb419 100644 --- a/anda/multimedia/gstreamer1/gstreamer1-plugin-libav/gstreamer1-plugin-libav.spec +++ b/anda/multimedia/gstreamer1/gstreamer1-plugin-libav/gstreamer1-plugin-libav.spec @@ -1,6 +1,6 @@ Name: gstreamer1-plugin-libav -Version: 1.28.1 -Release: 1%?dist +Version: 1.28.4 +Release: 1%{?dist} Epoch: 1 Summary: GStreamer Libav plugin License: LGPL-2.0-or-later @@ -38,7 +38,7 @@ GStreamer plugin containing libav library code. #export CFLAGS="%{optflags} -Wno-error=attributes" %meson \ -D package-name="Fedora GStreamer-plugins-ugly package" \ - -D package-origin="https://terra.fyralabs.com" \ + -D package-origin="https://terrapkg.com" \ -D doc=disabled %meson_build diff --git a/anda/multimedia/gstreamer1/gstreamer1-plugins-bad/gstreamer1-plugins-bad.spec b/anda/multimedia/gstreamer1/gstreamer1-plugins-bad/gstreamer1-plugins-bad.spec index 3f10d17b20..f857ff9371 100644 --- a/anda/multimedia/gstreamer1/gstreamer1-plugins-bad/gstreamer1-plugins-bad.spec +++ b/anda/multimedia/gstreamer1/gstreamer1-plugins-bad/gstreamer1-plugins-bad.spec @@ -3,7 +3,7 @@ %global majorminor 1.0 Name: gstreamer1-plugins-bad -Version: 1.28.1 +Version: 1.28.4 Release: 1%{?dist} Epoch: 2 Summary: GStreamer streaming media framework "bad" plugins @@ -395,7 +395,7 @@ Provides: %{name}-free-devel%{?_isa} = %{?epoch}:%{version}-%{release} -D opus=enabled \ -D orc=enabled \ -D package-name="Fedora GStreamer-plugins-bad package" \ - -D package-origin="https://terra.fyralabs.com" \ + -D package-origin="https://terrapkg.com" \ -D pcapparse=enabled \ -D pnm=enabled \ -D proxy=enabled \ diff --git a/anda/multimedia/gstreamer1/gstreamer1-plugins-ugly/VERSION_x264.txt b/anda/multimedia/gstreamer1/gstreamer1-plugins-ugly/VERSION_x264.txt index cd71b913c4..f899867926 100644 --- a/anda/multimedia/gstreamer1/gstreamer1-plugins-ugly/VERSION_x264.txt +++ b/anda/multimedia/gstreamer1/gstreamer1-plugins-ugly/VERSION_x264.txt @@ -1 +1 @@ -0.165 +0^20250910git0480cb0 \ No newline at end of file diff --git a/anda/multimedia/gstreamer1/gstreamer1-plugins-ugly/VERSION_x265.txt b/anda/multimedia/gstreamer1/gstreamer1-plugins-ugly/VERSION_x265.txt index 8a36cd142b..8012ebbba2 100644 --- a/anda/multimedia/gstreamer1/gstreamer1-plugins-ugly/VERSION_x265.txt +++ b/anda/multimedia/gstreamer1/gstreamer1-plugins-ugly/VERSION_x265.txt @@ -1 +1 @@ -4.1 \ No newline at end of file +4.2 \ No newline at end of file diff --git a/anda/multimedia/gstreamer1/gstreamer1-plugins-ugly/gstreamer1-plugins-ugly.spec b/anda/multimedia/gstreamer1/gstreamer1-plugins-ugly/gstreamer1-plugins-ugly.spec index 322338fb43..cb82af2a41 100644 --- a/anda/multimedia/gstreamer1/gstreamer1-plugins-ugly/gstreamer1-plugins-ugly.spec +++ b/anda/multimedia/gstreamer1/gstreamer1-plugins-ugly/gstreamer1-plugins-ugly.spec @@ -1,8 +1,8 @@ %global majorminor 1.0 Name: gstreamer1-plugins-ugly -Version: 1.28.1 -Release: 1%?dist +Version: 1.28.4 +Release: 1%{?dist} Epoch: 2 Summary: GStreamer streaming media framework "ugly" plugins License: LGPL-2.0-or-later and LGPL-2.0-only @@ -40,7 +40,7 @@ This module contains a set of plugins that have good quality and are well tested %build %meson \ -D package-name="Fedora GStreamer-plugins-ugly package" \ - -D package-origin="https://terra.fyralabs.com" \ + -D package-origin="https://terrapkg.com" \ -D a52dec=enabled \ -D asfdemux=enabled \ -D cdio=enabled \ diff --git a/anda/multimedia/kvazaar/kvazaar.spec b/anda/multimedia/kvazaar/kvazaar.spec index 92ef5997b4..ada7581d78 100644 --- a/anda/multimedia/kvazaar/kvazaar.spec +++ b/anda/multimedia/kvazaar/kvazaar.spec @@ -1,8 +1,8 @@ Name: kvazaar -Version: 2.3.1 -Release: 2%{?dist} +Version: 2.3.2 +Release: 3%{?dist} Summary: An open-source HEVC encoder -License: BSD and ISC +License: BSD AND ISC URL: https://ultravideo.fi/kvazaar.html Source0: https://github.com/ultravideo/%{name}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz @@ -33,11 +33,13 @@ The %{name}-devel package contains libraries and header files for developing applications that use %{name}. %prep -%autosetup -p1 +%autosetup -%build +%conf autoreconf -vif %configure --enable-static=no + +%build %make_build %install @@ -55,7 +57,7 @@ rm -fr %{buildroot}%{_docdir} %license LICENSE* %doc README.md CREDITS %{_libdir}/lib%{name}.so.7 -%{_libdir}/lib%{name}.so.7.4.0 +%{_libdir}/lib%{name}.so.7.5.0 %files devel %{_includedir}/%{name}.h diff --git a/anda/multimedia/mjpegtools/mjpegtools.spec b/anda/multimedia/mjpegtools/mjpegtools.spec index bd3a980926..d6d0a9b2dc 100644 --- a/anda/multimedia/mjpegtools/mjpegtools.spec +++ b/anda/multimedia/mjpegtools/mjpegtools.spec @@ -3,9 +3,9 @@ Name: mjpegtools Version: 2.2.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Tools to manipulate MPEG data -License: GPLv2 +License: GPL-2.0-or-later URL: http://mjpeg.sourceforge.net/ Source0: https://downloads.sourceforge.net/sourceforge/mjpeg/%{name}-%{version}.tar.gz BuildRequires: autoconf @@ -77,7 +77,7 @@ for f in docs/yuvfps.1 ; do iconv -f iso-8859-1 -t utf-8 $f > $f.utf8 ; mv $f.utf8 $f done -%build +%conf autoreconf -vif %configure \ --disable-static \ @@ -90,6 +90,7 @@ autoreconf -vif --with-v4l \ --without-sdlgfx +%build %make_build %install diff --git a/anda/multimedia/rtaudio/rtaudio-nightly.spec b/anda/multimedia/rtaudio/rtaudio-nightly.spec index a3ea1d31c9..6778e173bf 100644 --- a/anda/multimedia/rtaudio/rtaudio-nightly.spec +++ b/anda/multimedia/rtaudio/rtaudio-nightly.spec @@ -53,6 +53,8 @@ Provides: rtaudio-devel = %version-%release %prep %autosetup -n rtaudio-%commit + +%conf # Fix encoding issues for file in tests/teststops.cpp; do sed 's|\r||' $file > $file.tmp @@ -61,11 +63,11 @@ for file in tests/teststops.cpp; do mv -f $file.tmp2 $file done - -%build export CFLAGS="%optflags -fPIC" NOCONFIGURE=1 ./autogen.sh %configure --with-jack --with-alsa --with-pulse --enable-shared --disable-static --verbose + +%build %make_build %install diff --git a/anda/multimedia/tdf/tdf.spec b/anda/multimedia/tdf/tdf.spec index b5d838a763..8c4c842e0e 100644 --- a/anda/multimedia/tdf/tdf.spec +++ b/anda/multimedia/tdf/tdf.spec @@ -1,13 +1,13 @@ Name: tdf Version: 0.5.0 -Release: 1%?dist +Release: 2%?dist Summary: A tui-based PDF viewer URL: https://github.com/itsjunetime/tdf Source0: %url/archive/refs/tags/v%{version}.tar.gz License: AGPL-3.0 BuildRequires: cargo anda-srpm-macros cargo-rpm-macros mold fontconfig-devel mupdf glib2 libgcc clang python -Packager: Its-J +Packager: Its-J %description A terminal-based PDF viewer. @@ -38,5 +38,8 @@ install -Dm755 target/rpm/tdf %{buildroot}%{_bindir}/tdf %{_bindir}/tdf %changelog -* Wed Oct 22 2025 Its-J +* Tue Apr 14 2026 Its-J +- Add email to my previous contributor attributions + +* Wed Oct 22 2025 Its-J - Intial Commit diff --git a/anda/multimedia/vgmstream/vgmstream.spec b/anda/multimedia/vgmstream/vgmstream.spec index ce656e7c64..02c3a5d7c1 100644 --- a/anda/multimedia/vgmstream/vgmstream.spec +++ b/anda/multimedia/vgmstream/vgmstream.spec @@ -1,6 +1,6 @@ -%global commit dddc0d426837eeb277cd880759e9826c2b309e90 +%global commit c01f584b97c5f4567f49022872ba967ebf03917d %global shortcommit %{sub %{commit} 1 7} -%global commit_date 20260329 +%global commit_date 20260607 Name: vgmstream Version: 0~%{commit_date}git.%shortcommit diff --git a/anda/multimedia/x264/anda.hcl b/anda/multimedia/x264/anda.hcl index 2068b1ab39..d33191d6f6 100644 --- a/anda/multimedia/x264/anda.hcl +++ b/anda/multimedia/x264/anda.hcl @@ -7,5 +7,6 @@ project pkg { labels { mock = 1 subrepo = "multimedia" + nightly = 1 } } diff --git a/anda/multimedia/x264/update.rhai b/anda/multimedia/x264/update.rhai new file mode 100644 index 0000000000..b484dccf32 --- /dev/null +++ b/anda/multimedia/x264/update.rhai @@ -0,0 +1,10 @@ +let domain = `code.videolan.org`; +let c = gitlab_commit(domain, "536", "master"); + +rpm.global("commit", c); + +if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); + rpm.global("api_version", find(`#define X264_BUILD ([\d]+)`, get(`https://${domain}/videolan/x264/-/raw/${c}/x264.h`), 1)); +} diff --git a/anda/multimedia/x264/x264.spec b/anda/multimedia/x264/x264.spec index 1f7b070ac5..e41c11bc4a 100644 --- a/anda/multimedia/x264/x264.spec +++ b/anda/multimedia/x264/x264.spec @@ -3,11 +3,15 @@ %global api_version 165 %global shortcommit %(c=%{commit}; echo ${c:0:7}) +%ifarch %{ix86} +%global _pkg_extra_ldflags "-Wl,-z,notext" +%endif + %bcond_with bootstrap Name: x264 -Version: 0.%{api_version} -Release: 38%{?shortcommit:.%{commit_date}git%{shortcommit}}%{?dist} +Version: 0^%{commit_date}git%{shortcommit} +Release: 1%{?dist} Epoch: 1 Summary: H264/AVC video streams encoder License: GPL-2.0-or-later @@ -22,8 +26,8 @@ BuildRequires: pkgconfig(libavformat) BuildRequires: pkgconfig(libavutil) BuildRequires: pkgconfig(libswscale) %endif - Requires: bash-completion +Packager: Terra Packaging Team %description %{name} is a free software library and application for encoding video streams into @@ -40,18 +44,20 @@ libraries. %package devel Summary: Development files for the x264 library -Requires: %{name}-libs%{?_isa} = %{?epoch}:%{version}-%{release} +Requires: %{name}-libs%{?_isa} = %{evr} Requires: pkgconfig %description devel The %{name}-devel package contains libraries and header files for developing applications that use %{name}. +%pkg_completion -B + %prep %git_clone https://code.videolan.org/videolan/x264.git %{commit} -%build +%conf %configure \ --enable-bashcompletion \ --enable-debug \ @@ -60,6 +66,7 @@ applications that use %{name}. --bit-depth=all \ --system-libx264 +%build %make_build %install @@ -68,8 +75,9 @@ applications that use %{name}. %ldconfig_scriptlets libs %files +%license COPYING +%doc AUTHORS %{_bindir}/%{name} -%{_datadir}/bash-completion/completions/%{name} %files libs %license COPYING @@ -84,4 +92,6 @@ applications that use %{name}. %{_libdir}/pkgconfig/%{name}.pc %changelog -%autochangelog +* Mon Jun 1 2026 Gilver E. - 0^20250910git0480cb0-1 +- Fix i686 builds +- Update versioning scheme to modern Fedora snapshot guidelines diff --git a/anda/multimedia/x265/update.rhai b/anda/multimedia/x265/update.rhai index 291bc4d5af..b9af9b10ce 100644 --- a/anda/multimedia/x265/update.rhai +++ b/anda/multimedia/x265/update.rhai @@ -1,5 +1,10 @@ // HACK: use RegEx to parse HTML! let vers = find_all(` + +diff -Naur x265_4.2.old/source/CMakeLists.txt x265_4.2/source/CMakeLists.txt +--- x265_4.2.old/source/CMakeLists.txt 2026-05-22 09:31:41.511324918 +0200 ++++ x265_4.2/source/CMakeLists.txt 2026-05-22 09:31:41.564187955 +0200 +@@ -890,6 +890,9 @@ + elseif(ARM64 OR CROSS_COMPILE_ARM64) + # compile ARM64 arch asm files here + enable_language(ASM) ++ if(APPLE) ++ set(ARM_ARGS ${ARM_ARGS} -arch ${CMAKE_OSX_ARCHITECTURES}) ++ endif() + foreach(ASM ${ARM_ASMS}) + set(ASM_SRC ${CMAKE_CURRENT_SOURCE_DIR}/common/aarch64/${ASM}) + list(APPEND ASM_SRCS ${ASM_SRC}) +diff -Naur x265_4.2.old/source/common/frame.cpp x265_4.2/source/common/frame.cpp +--- x265_4.2.old/source/common/frame.cpp 2026-05-22 09:31:41.405483833 +0200 ++++ x265_4.2/source/common/frame.cpp 2026-05-22 09:31:41.561815253 +0200 +@@ -378,6 +378,11 @@ + delete[] m_userSEI.payloads; + } + ++ if (m_rpu.payloadSize) ++ { ++ delete[] m_rpu.payload; ++ } ++ + if (m_ctuInfo) + { + uint32_t widthInCU = (m_param->sourceWidth + m_param->maxCUSize - 1) >> m_param->maxLog2CUSize; +diff -Naur x265_4.2.old/source/common/param.cpp x265_4.2/source/common/param.cpp +--- x265_4.2.old/source/common/param.cpp 2026-05-22 09:31:41.406483841 +0200 ++++ x265_4.2/source/common/param.cpp 2026-05-22 09:31:41.566608597 +0200 +@@ -408,6 +408,7 @@ + param->preferredTransferCharacteristics = -1; + param->pictureStructure = -1; + param->bEmitCLL = 1; ++ param->bEmitAmbientViewingEnvironment = 0; + + param->bEnableFrameDuplication = 0; + param->dupThreshold = 70; +@@ -1815,10 +1816,10 @@ + " smpte170m, smpte240m, linear, log100, log316, iec61966-2-4, bt1361e," + " iec61966-2-1, bt2020-10, bt2020-12, smpte-st-2084, smpte-st-428 or arib-std-b67"); + CHECK(param->vui.matrixCoeffs < 0 +- || param->vui.matrixCoeffs > 15 ++ || param->vui.matrixCoeffs > 17 + || param->vui.matrixCoeffs == 3, + "Matrix Coefficients must be unknown, bt709, fcc, bt470bg, smpte170m," +- " smpte240m, gbr, ycgco, bt2020nc, bt2020c, smpte-st-2085, chroma-nc, chroma-c, ictcp or ipt-pq-c2"); ++ " smpte240m, gbr, ycgco, bt2020nc, bt2020c, smpte-st-2085, chroma-nc, chroma-c, ictcp, ipt-pq-c2, ycgco-re, or ycgco-ro"); + CHECK(param->vui.chromaSampleLocTypeTopField < 0 + || param->vui.chromaSampleLocTypeTopField > 5, + "Chroma Sample Location Type Top Field must be 0-5"); +@@ -1980,6 +1981,7 @@ + || param->bEmitIDRRecoverySEI + || !!param->interlaceMode + || param->preferredTransferCharacteristics > 1 ++ || param->bEmitAmbientViewingEnvironment + || strlen(param->toneMapFile) + || strlen(param->naluFile)); + +@@ -2941,6 +2943,10 @@ + dst->bEmitCLL = src->bEmitCLL; + dst->maxCLL = src->maxCLL; + dst->maxFALL = src->maxFALL; ++ dst->ambientIlluminance = src->ambientIlluminance; ++ dst->ambientLightX = src->ambientLightX; ++ dst->ambientLightY = src->ambientLightY; ++ dst->bEmitAmbientViewingEnvironment = src->bEmitAmbientViewingEnvironment; + dst->log2MaxPocLsb = src->log2MaxPocLsb; + dst->bEmitVUIHRDInfo = src->bEmitVUIHRDInfo; + dst->bEmitVUITimingInfo = src->bEmitVUITimingInfo; +diff -Naur x265_4.2.old/source/common/threadpool.cpp x265_4.2/source/common/threadpool.cpp +--- x265_4.2.old/source/common/threadpool.cpp 2026-05-22 09:31:41.414483910 +0200 ++++ x265_4.2/source/common/threadpool.cpp 2026-05-22 09:31:41.556420957 +0200 +@@ -125,12 +125,6 @@ + { + THREAD_NAME("Worker", m_id); + +-#if _WIN32 +- SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_BELOW_NORMAL); +-#else +- __attribute__((unused)) int val = nice(10); +-#endif +- + m_pool.setCurrentThreadAffinity(); + + sleepbitmap_t idBit = (sleepbitmap_t)1 << m_id; +@@ -835,10 +829,16 @@ + else if (cpuCount >= 32) + return (p->sourceHeight > 2000) ? 6 : 5; + else if (cpuCount >= 16) +- return 4; ++#if MACOS && X265_ARCH_ARM64 ++ return 16; ++#else ++ return 4; ++#endif + else if (cpuCount >= 8) + #if _WIN32 && X265_ARCH_ARM64 + return cpuCount; ++#elif MACOS && X265_ARCH_ARM64 ++ return 8; + #else + return 3; + #endif +diff -Naur x265_4.2.old/source/encoder/encoder.cpp x265_4.2/source/encoder/encoder.cpp +--- x265_4.2.old/source/encoder/encoder.cpp 2026-05-22 09:31:41.432484066 +0200 ++++ x265_4.2/source/encoder/encoder.cpp 2026-05-22 09:31:41.562115269 +0200 +@@ -1768,11 +1768,20 @@ + } + copyUserSEIMessages(inFrame[0], inputPic[0]); + +- /*Copy Dolby Vision RPU from inputPic to frame*/ ++ /* Copy Dolby Vision RPU from inputPic to frame. */ ++ if (inFrame[0]->m_rpu.payload && inFrame[0]->m_rpu.payloadSize < inputPic[0]->rpu.payloadSize) ++ { ++ delete[] inFrame[0]->m_rpu.payload; ++ inFrame[0]->m_rpu.payload = NULL; ++ } ++ + if (inputPic[0]->rpu.payloadSize) + { ++ if (inFrame[0]->m_rpu.payload == NULL) ++ { ++ inFrame[0]->m_rpu.payload = new uint8_t[inputPic[0]->rpu.payloadSize]; ++ } + inFrame[0]->m_rpu.payloadSize = inputPic[0]->rpu.payloadSize; +- inFrame[0]->m_rpu.payload = new uint8_t[inputPic[0]->rpu.payloadSize]; + memcpy(inFrame[0]->m_rpu.payload, inputPic[0]->rpu.payload, inputPic[0]->rpu.payloadSize); + } + +@@ -3475,6 +3484,15 @@ + } + } + ++ if (m_param->bEmitAmbientViewingEnvironment) ++ { ++ SEIAmbientViewingEnvironment ambientsei; ++ ambientsei.ambientIlluminance = m_param->ambientIlluminance; ++ ambientsei.ambientLightX = m_param->ambientLightX; ++ ambientsei.ambientLightY = m_param->ambientLightY; ++ ambientsei.writeSEImessages(bs, m_sps, NAL_UNIT_PREFIX_SEI, list, m_param->bSingleSeiNal); ++ } ++ + if (m_param->bEmitInfoSEI) + { + char *opts = x265_param2string(m_param, m_sps.conformanceWindow.rightOffset, m_sps.conformanceWindow.bottomOffset); +diff -Naur x265_4.2.old/source/encoder/entropy.cpp x265_4.2/source/encoder/entropy.cpp +--- x265_4.2.old/source/encoder/entropy.cpp 2026-05-22 09:31:41.433484074 +0200 ++++ x265_4.2/source/encoder/entropy.cpp 2026-05-22 09:31:41.565040953 +0200 +@@ -2104,8 +2104,9 @@ + void Entropy::codeMvd(const CUData& cu, uint32_t absPartIdx, int list) + { + const MV& mvd = cu.m_mvd[list][absPartIdx]; +- const int hor = mvd.x; +- const int ver = mvd.y; ++ // to ensure the mvdLX is in the range of [-2^15, 2^15-1] ++ const int16_t hor = (int16_t)mvd.x; ++ const int16_t ver = (int16_t)mvd.y; + + encodeBin(hor != 0 ? 1 : 0, m_contextState[OFF_MV_RES_CTX]); + encodeBin(ver != 0 ? 1 : 0, m_contextState[OFF_MV_RES_CTX]); +diff -Naur x265_4.2.old/source/encoder/sei.h x265_4.2/source/encoder/sei.h +--- x265_4.2.old/source/encoder/sei.h 2026-05-22 09:31:41.437484109 +0200 ++++ x265_4.2/source/encoder/sei.h 2026-05-22 09:31:41.558216982 +0200 +@@ -726,6 +726,25 @@ + } + }; + ++class SEIAmbientViewingEnvironment : public SEI ++{ ++public: ++ SEIAmbientViewingEnvironment() ++ { ++ m_payloadType = AMBIENT_VIEWING_ENVIRONMENT; ++ m_payloadSize = 8; ++ } ++ uint32_t ambientIlluminance; ++ uint16_t ambientLightX; ++ uint16_t ambientLightY; ++ void writeSEI(const SPS&) ++ { ++ WRITE_CODE(ambientIlluminance, 32, "ambient_illuminance"); ++ WRITE_CODE(ambientLightX, 16, "ambient_light_x"); ++ WRITE_CODE(ambientLightY, 16, "ambient_light_y"); ++ } ++}; ++ + class SEIDecodedPictureHash : public SEI + { + public: +diff -Naur x265_4.2.old/source/x265cli.cpp x265_4.2/source/x265cli.cpp +--- x265_4.2.old/source/x265cli.cpp 2026-05-22 09:31:41.443484161 +0200 ++++ x265_4.2/source/x265cli.cpp 2026-05-22 09:31:41.567013470 +0200 +@@ -328,7 +328,7 @@ + H0(" smpte240m, linear, log100, log316, iec61966-2-4, bt1361e, iec61966-2-1,\n"); + H0(" bt2020-10, bt2020-12, smpte2084, smpte428, arib-std-b67. Default unknown\n"); + H1(" --colormatrix Specify color matrix setting from unknown, bt709, fcc, bt470bg, smpte170m,\n"); +- H1(" smpte240m, gbr, ycgco, bt2020nc, bt2020c, smpte2085, chroma-derived-nc, chroma-derived-c, ictcp, ipt-pq-c2. Default unknown\n"); ++ H1(" smpte240m, gbr, ycgco, bt2020nc, bt2020c, smpte2085, chroma-derived-nc, chroma-derived-c, ictcp, ipt-pq-c2, ycgco-re, ycgco-ro. Default unknown\n"); + H1(" --chromaloc Specify chroma sample location (0 to 5). Default of %d\n", param->vui.chromaSampleLocTypeTopField); + H0(" --master-display SMPTE ST 2086 master display color volume info SEI (HDR)\n"); + H0(" format: G(x,y)B(x,y)R(x,y)WP(x,y)L(max,min)\n"); +@@ -1508,4 +1508,4 @@ + + #ifdef __cplusplus + } +-#endif +\ No newline at end of file ++#endif +diff -Naur x265_4.2.old/source/x265.h x265_4.2/source/x265.h +--- x265_4.2.old/source/x265.h 2026-05-22 09:31:41.443484161 +0200 ++++ x265_4.2/source/x265.h 2026-05-22 09:31:41.566832268 +0200 +@@ -378,6 +378,7 @@ + MASTERING_DISPLAY_INFO = 137, + CONTENT_LIGHT_LEVEL_INFO = 144, + ALTERNATIVE_TRANSFER_CHARACTERISTICS = 147, ++ AMBIENT_VIEWING_ENVIRONMENT = 148, + ALPHA_CHANNEL_INFO = 165, + THREE_DIMENSIONAL_REFERENCE_DISPLAYS_INFO = 176, + MULTIVIEW_SCENE_INFO = 178, +@@ -753,7 +754,7 @@ + "log316", "iec61966-2-4", "bt1361e", "iec61966-2-1", "bt2020-10", "bt2020-12", + "smpte2084", "smpte428", "arib-std-b67", 0 }; + static const char * const x265_colmatrix_names[] = { "gbr", "bt709", "unknown", "", "fcc", "bt470bg", "smpte170m", "smpte240m", +- "ycgco", "bt2020nc", "bt2020c", "smpte2085", "chroma-derived-nc", "chroma-derived-c", "ictcp", "ipt-pq-c2", 0 }; ++ "ycgco", "bt2020nc", "bt2020c", "smpte2085", "chroma-derived-nc", "chroma-derived-c", "ictcp", "ipt-pq-c2", "ycgco-re", "ycgco-ro", 0 }; + static const char * const x265_sar_names[] = { "unknown", "1:1", "12:11", "10:11", "16:11", "40:33", "24:11", "20:11", + "32:11", "80:33", "18:11", "15:11", "64:33", "160:99", "4:3", "3:2", "2:1", 0 }; + static const char * const x265_interlace_names[] = { "prog", "tff", "bff", 0 }; +@@ -1978,6 +1979,11 @@ + * value to that value. */ + uint16_t maxLuma; + ++ /* ISO/IEC 23008-2:2017, D.2.39 ambient viewing environment SEI message */ ++ uint32_t ambientIlluminance; ++ uint16_t ambientLightX; ++ uint16_t ambientLightY; ++ + /* Maximum of the picture order count */ + int log2MaxPocLsb; + +@@ -2189,6 +2195,9 @@ + /*Emit content light level info SEI*/ + int bEmitCLL; + ++ /* Emit ambient viewing environment SEI */ ++ int bEmitAmbientViewingEnvironment; ++ + /* + * Signals picture structure SEI timing message for every frame + * picture structure 7 is signalled for frame doubling diff --git a/anda/multimedia/x265/x265-fix-aarch64-build.patch b/anda/multimedia/x265/x265-fix-aarch64-build.patch new file mode 100644 index 0000000000..76eb030e7e --- /dev/null +++ b/anda/multimedia/x265/x265-fix-aarch64-build.patch @@ -0,0 +1,11 @@ +diff -Naur x265_4.2.old/source/common/aarch64/asm-primitives.cpp x265_4.2/source/common/aarch64/asm-primitives.cpp +--- x265_4.2.old/source/common/aarch64/asm-primitives.cpp 2026-05-22 09:31:41.396956906 +0200 ++++ x265_4.2/source/common/aarch64/asm-primitives.cpp 2026-05-22 09:31:41.512336554 +0200 +@@ -31,6 +31,7 @@ + + extern "C" { + #include "fun-decls.h" ++#include "../arm/ipfilter8.h" + } + + #define ALL_LUMA_TU_TYPED(prim, fncdef, fname, cpu) \ diff --git a/anda/multimedia/x265/x265-gcc15.patch b/anda/multimedia/x265/x265-gcc15.patch new file mode 100644 index 0000000000..9f54889414 --- /dev/null +++ b/anda/multimedia/x265/x265-gcc15.patch @@ -0,0 +1,11 @@ +diff -Naur x265_4.2.old/source/dynamicHDR10/json11/json11.cpp x265_4.2/source/dynamicHDR10/json11/json11.cpp +--- x265_4.2.old/source/dynamicHDR10/json11/json11.cpp 2026-05-22 09:31:41.430924883 +0200 ++++ x265_4.2/source/dynamicHDR10/json11/json11.cpp 2026-05-22 09:31:41.531899433 +0200 +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + + #if _MSC_VER + #pragma warning(disable: 4510) //const member cannot be default initialized diff --git a/anda/multimedia/x265/x265-high-bit-depth-soname.patch b/anda/multimedia/x265/x265-high-bit-depth-soname.patch index 5b1e5ed6b8..540eab3dca 100644 --- a/anda/multimedia/x265/x265-high-bit-depth-soname.patch +++ b/anda/multimedia/x265/x265-high-bit-depth-soname.patch @@ -1,6 +1,7 @@ ---- a/source/CMakeLists.txt -+++ b/source/CMakeLists.txt -@@ -611,7 +611,15 @@ +diff -Naur x265_4.2.old/source/CMakeLists.txt x265_4.2/source/CMakeLists.txt +--- x265_4.2.old/source/CMakeLists.txt 2026-05-22 09:31:41.395284685 +0200 ++++ x265_4.2/source/CMakeLists.txt 2026-05-22 09:31:41.446248583 +0200 +@@ -1075,7 +1075,15 @@ if(MSVC) set_target_properties(x265-shared PROPERTIES OUTPUT_NAME libx265) else() @@ -17,9 +18,10 @@ endif() if(UNIX) set_target_properties(x265-shared PROPERTIES VERSION ${X265_BUILD}) ---- a/source/encoder/api.cpp -+++ b/source/encoder/api.cpp -@@ -704,7 +704,7 @@ +diff -Naur x265_4.2.old/source/encoder/api.cpp x265_4.2/source/encoder/api.cpp +--- x265_4.2.old/source/encoder/api.cpp 2026-05-22 09:31:41.431540093 +0200 ++++ x265_4.2/source/encoder/api.cpp 2026-05-22 09:31:41.446517920 +0200 +@@ -1119,7 +1119,7 @@ #define ext ".dylib" #else #include @@ -28,4 +30,3 @@ #endif #if defined(__GNUC__) && __GNUC__ >= 8 #pragma GCC diagnostic ignored "-Wcast-function-type" - diff --git a/anda/multimedia/x265/x265-pic.patch b/anda/multimedia/x265/x265-pic.patch deleted file mode 100644 index a047ad15a2..0000000000 --- a/anda/multimedia/x265/x265-pic.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/source/CMakeLists.txt -+++ b/source/CMakeLists.txt -@@ -212,7 +212,7 @@ - add_definitions(-std=gnu++98) - endif() - if(ENABLE_PIC) -- add_definitions(-fPIC) -+ add_definitions(-fPIC -DPIC) - endif(ENABLE_PIC) - if(NATIVE_BUILD) - if(INTEL_CXX) diff --git a/anda/multimedia/x265/x265-pkgconfig_path_fix.patch b/anda/multimedia/x265/x265-pkgconfig_path_fix.patch deleted file mode 100644 index 5d958f3e75..0000000000 --- a/anda/multimedia/x265/x265-pkgconfig_path_fix.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/source/x265.pc.in -+++ b/source/x265.pc.in -@@ -1,6 +1,6 @@ - prefix=@CMAKE_INSTALL_PREFIX@ - exec_prefix=${prefix} --libdir=${exec_prefix}/@LIB_INSTALL_DIR@ -+libdir=@LIB_INSTALL_DIR@ - includedir=${prefix}/include - - Name: @CMAKE_PROJECT_NAME@ - diff --git a/anda/multimedia/x265/x265-sei-length-crash-fix.patch b/anda/multimedia/x265/x265-sei-length-crash-fix.patch deleted file mode 100644 index 87c6d49544..0000000000 --- a/anda/multimedia/x265/x265-sei-length-crash-fix.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 8454caf458c5f5d20cce711ff8ea8de55ec1ae50 Mon Sep 17 00:00:00 2001 -From: harlanc -Date: Thu, 1 Dec 2022 07:46:13 +0000 -Subject: [PATCH] fix crash when SEI length is variable - ---- - source/encoder/encoder.cpp | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/source/encoder/encoder.cpp b/source/encoder/encoder.cpp -index 0fea6553c..5a3fcafc7 100644 ---- a/source/encoder/encoder.cpp -+++ b/source/encoder/encoder.cpp -@@ -1103,6 +1103,12 @@ void Encoder::copyUserSEIMessages(Frame *frame, const x265_picture* pic_in) - input = seiMsg; - else - input = pic_in->userSEI.payloads[i]; -+ -+ if (frame->m_userSEI.payloads[i].payload && (frame->m_userSEI.payloads[i].payloadSize < input.payloadSize)) -+ { -+ delete[] frame->m_userSEI.payloads[i].payload; -+ frame->m_userSEI.payloads[i].payload = NULL; -+ } - - if (!frame->m_userSEI.payloads[i].payload) - frame->m_userSEI.payloads[i].payload = new uint8_t[input.payloadSize]; --- -2.45.0 - diff --git a/anda/multimedia/x265/x265-vmaf.patch b/anda/multimedia/x265/x265-vmaf.patch new file mode 100644 index 0000000000..74b09e96be --- /dev/null +++ b/anda/multimedia/x265/x265-vmaf.patch @@ -0,0 +1,26 @@ +diff -Naur x265_4.2.old/source/CMakeLists.txt x265_4.2/source/CMakeLists.txt +--- x265_4.2.old/source/CMakeLists.txt 2026-05-22 09:31:41.492277260 +0200 ++++ x265_4.2/source/CMakeLists.txt 2026-05-22 09:31:41.494071992 +0200 +@@ -178,6 +178,7 @@ + option(ENABLE_LIBVMAF "Enable VMAF" OFF) + if(ENABLE_LIBVMAF) + add_definitions(-DENABLE_LIBVMAF) ++ include_directories(${VMAF_INCLUDE_DIR}) + endif() + if(X64) + option(ENABLE_CET "Enable Control-flow Enforcement" OFF) +@@ -1068,10 +1069,13 @@ + if(EXTRA_LIB) + target_link_libraries(x265-shared ${EXTRA_LIB}) + endif() +- target_link_libraries(x265-shared ${PLATFORM_LIBS}) ++ target_link_libraries(x265-shared ${PLATFORM_LIBS}) + if(SVTHEVC_FOUND) + target_link_libraries(x265-shared ${SVT_HEVC_LIBRARY}) + endif(SVTHEVC_FOUND) ++ if(ENABLE_LIBVMAF) ++ target_link_libraries(x265-shared ${VMAF}) ++ endif(ENABLE_LIBVMAF) + if(MSVC) + set_target_properties(x265-shared PROPERTIES OUTPUT_NAME libx265) + else() diff --git a/anda/multimedia/x265/x265.spec b/anda/multimedia/x265/x265.spec index f6148d92ae..3a32cbf1f0 100644 --- a/anda/multimedia/x265/x265.spec +++ b/anda/multimedia/x265/x265.spec @@ -1,41 +1,39 @@ -%global build_cxxflags %{__build_flags_lang_cxx} %{?_distro_extra_cxxflags} -include %_includedir/c++/*/cstdint +%global api_version 216 -# Use old cmake macro -%global __cmake_in_source_build 1 - -%global terrasrc_commit b018f3e14bd28f5b17c22446328c6decf9ce57a5 - -%global _so_version 212 +%ifarch %{ix86} +%global _pkg_extra_ldflags "-Wl,-z,notext" +%endif Summary: H.265/HEVC encoder Name: x265 -Version: 4.1 -Release: 1%?dist +Version: 4.2 +Release: 1%{?dist} +Epoch: 1 URL: http://x265.org/ -# source/Lib/TLibCommon - BSD -# source/Lib/TLibEncoder - BSD -# everything else - GPLv2+ -License: GPLv2+ and BSD +License: GPL-2.0-or-later + Source0: https://bitbucket.org/multicoreware/%{name}_git/downloads/%{name}_%{version}.tar.gz +Patch0: %{name}-high-bit-depth-soname.patch +Patch1: %{name}-vmaf.patch +Patch2: %{name}-fix-aarch64-build.patch +Patch3: %{name}-gcc15.patch +# https://github.com/HandBrake/HandBrake/tree/2f464fcf93d411ebdd969b39d67739ed658c5e58 +# Except: +# contrib/x265/A06-Update-version-strings.patch +# contrib/x265/A08-Fix-inconsistent-bitrate-in-second-pass.patch +Patch4: %{name}-HandBrake.patch -# fix building as PIC -Patch0: https://raw.githubusercontent.com/terrapkg/pkg-x265/%terrasrc_commit/x265-pic.patch -Patch1: https://raw.githubusercontent.com/terrapkg/pkg-x265/%terrasrc_commit/x265-high-bit-depth-soname.patch -Patch2: https://raw.githubusercontent.com/terrapkg/pkg-x265/%terrasrc_commit/x265-pkgconfig_path_fix.patch -# https://bitbucket.org/multicoreware/x265_git/pull-requests/10 -Patch3: https://bitbucket.org/harlancc/x265_git/commits/8454caf458c5f5d20cce711ff8ea8de55ec1ae50/raw#/x265-sei-length-crash-fix.patch - -BuildRequires: gcc-c++ -BuildRequires: libstdc++-devel -BuildRequires: git BuildRequires: cmake -%{?el7:BuildRequires: epel-rpm-macros} -BuildRequires: nasm -BuildRequires: ninja-build - -%ifnarch armv7hl armv7hnl s390 s390x -BuildRequires: numactl-devel +BuildRequires: gcc-c++ +%ifnarch %{ix86} +BuildRequires: nasm >= 2.13 %endif +BuildRequires: numactl-devel +%ifarch x86_64 +BuildRequires: libvmaf-devel +%endif + +Packager: Terra Packaging Team %description The primary objective of x265 is to become the best H.265/HEVC encoder @@ -56,7 +54,7 @@ This package contains the shared library. %package devel Summary: H.265/HEVC encoder library development files -Requires: %{name}-libs%{?_isa} = %{version}-%{release} +Requires: %{name}-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} %description devel The primary objective of x265 is to become the best H.265/HEVC encoder @@ -68,282 +66,126 @@ This package contains the shared library development files. %prep %autosetup -p1 -n %{name}_%{version} -%build +sed -i -e 's|libdir=${exec_prefix}/@LIB_INSTALL_DIR@|libdir=@LIB_INSTALL_DIR@|g' source/x265.pc.in + +%conf # High depth libraries (from source/h265.h): -# If the requested bitDepth is not supported by the linked libx265, -# it will attempt to dynamically bind x265_api_get() from a shared -# library with an appropriate name: +# If the requested bitDepth is not supported by the linked libx265, it will +# attempt to dynamically bind from a shared library with an appropriate name: # 8bit: libx265_main.so # 10bit: libx265_main10.so +# 12bit: libx265_main12.so +# +# Trying to link 10/12 bits statically inside the shared library (as per +# https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=x265-hg#n45) makes the +# library not strippable. -build() { -%cmake -Wno-dev -G "Ninja" \ - -DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON \ - -DCMAKE_SKIP_RPATH:BOOL=YES \ - -DENABLE_PIC:BOOL=ON \ - -DENABLE_SHARED=ON \ - -DENABLE_TESTS:BOOL=ON \ - -DENABLE_HDR10_PLUS=YES \ - -DCMAKE_ASM_NASM_FLAGS=-w-macro-params-legacy \ - $* \ - ../source -%cmake_build +# Setting GIT_ARCHETYPE to 1 is like using git as a build dependency: +configure_cmake() { +%cmake -G "Unix Makefiles" \ + -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ + -DCMAKE_SKIP_RPATH=ON \ + -DENABLE_ALPHA=ON \ + -DENABLE_ASSEMBLY=ON \ + -DENABLE_HDR10_PLUS=ON \ + -DENABLE_MULTIVIEW=ON \ + -DENABLE_PIC=ON \ + -DENABLE_SCC_EXT=ON \ + -DENABLE_SHARED=ON \ + -DGIT_ARCHETYPE="1" \ +%ifarch x86_64 + -DENABLE_LIBVMAF=ON \ + -DVMAF_INCLUDE_DIR=%{_includedir}/libvmaf \ +%endif +%ifarch %{ix86} + -DENABLE_ASSEMBLY=OFF \ +%endif + $* \ + ../source } -# High depth 10/12 bit libraries are supported only on 64 bit. They require -# disabled AltiVec instructions for building on ppc64/ppc64le. -%ifarch x86_64 aarch64 ppc64 ppc64le -mkdir 10bit; pushd 10bit - build \ +%ifnarch %{ix86} +# 10/12 bit libraries are supported only on 64 bit +mkdir 12bit && pushd 12bit + configure_cmake \ -DENABLE_CLI=OFF \ - -DENABLE_ALTIVEC=OFF \ - -DHIGH_BIT_DEPTH=ON -popd - -mkdir 12bit; pushd 12bit - build \ - -DENABLE_CLI=OFF \ - -DENABLE_ALTIVEC=OFF \ -DHIGH_BIT_DEPTH=ON \ -DMAIN12=ON popd + +mkdir 10bit && pushd 10bit + configure_cmake \ + -DENABLE_CLI=OFF \ + -DHIGH_BIT_DEPTH=ON +popd %endif -# 8 bit base library + encoder -mkdir 8bit; pushd 8bit - build +# 8 bit + dynamicHDR CLI +# TestBench dlopens the appropriate x265 library +mkdir 8bit && pushd 8bit + configure_cmake \ + -DENABLE_CLI=ON \ + -DENABLE_TESTS=ON +popd + +%build +%ifnarch %{ix86} +pushd 12bit +%cmake_build +popd + +pushd 10bit +%cmake_build +popd +%endif + +pushd 8bit +%cmake_build popd %install for i in 8 10 12; do - if [ -d ${i}bit ]; then - pushd ${i}bit - %cmake_install - # Remove unversioned library, should not be linked to - rm -f %{buildroot}%{_libdir}/libx265_main${i}.so - popd - fi + if [ -d ${i}bit ]; then + pushd ${i}bit + %cmake_install + rm -f %{buildroot}%{_libdir}/libx265_main${i}.so + popd + fi done find %{buildroot} -name "*.a" -delete %check for i in 8 10 12; do - if [ -d ${i}bit ]; then - pushd ${i}bit - test/TestBench || : - popd - fi + if [ -d ${i}bit ]; then + pushd ${i}bit + test/TestBench || : + popd + fi done -%ldconfig_scriptlets libs - %files -%{_bindir}/x265 +%doc readme.rst +%license COPYING +%{_bindir}/%{name} %files libs %license COPYING %{_libdir}/libhdr10plus.so -%{_libdir}/libx265.so.* -%ifarch x86_64 aarch64 ppc64 ppc64le -%{_libdir}/libx265_main10.so.* -%{_libdir}/libx265_main12.so.* +%{_libdir}/lib%{name}.so.%{api_version} +%ifnarch %{ix86} +%{_libdir}/lib%{name}_main10.so.%{api_version} +%{_libdir}/lib%{name}_main12.so.%{api_version} %endif %files devel %doc doc/* %{_includedir}/hdr10plus.h -%{_includedir}/x265.h -%{_includedir}/x265_config.h -%{_libdir}/libx265.so -%{_libdir}/pkgconfig/x265.pc +%{_includedir}/%{name}.h +%{_includedir}/%{name}_config.h +%{_libdir}/lib%{name}.so +%{_libdir}/pkgconfig/%{name}.pc %changelog -* Sun Sep 15 2024 Leigh Scott - 4.0-1 -- Update to 4.0 - -* Fri Aug 02 2024 RPM Fusion Release Engineering - 3.6-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Thu May 16 2024 Dominik Mierzejewski - 3.6-2 -- Backport a fix for crashes when encoding with variable length SEI - -* Sat Apr 06 2024 Leigh Scott - 3.6-1 -- Update to 3.6 - -* Sun Feb 04 2024 RPM Fusion Release Engineering - 3.5-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Wed Aug 02 2023 RPM Fusion Release Engineering - 3.5-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Thu Dec 29 2022 Nicolas Chauvet - 3.5-5 -- Enable ENABLE_HDR10_PLUS everywhere rfbz#6454 - -* Mon Aug 08 2022 RPM Fusion Release Engineering - 3.5-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild and ffmpeg - 5.1 - -* Wed Feb 09 2022 RPM Fusion Release Engineering - 3.5-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Tue Aug 03 2021 RPM Fusion Release Engineering - 3.5-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Tue Apr 13 2021 Leigh Scott - 3.5-1 -- Update to 3.5 - -* Tue Mar 16 2021 Leigh Scott - 3.4-5 -- Enable HDR10+. - -* Thu Feb 04 2021 RPM Fusion Release Engineering - 3.4-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Wed Aug 19 2020 RPM Fusion Release Engineering - 3.4-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Thu Jul 23 2020 Leigh Scott - 3.4-2 -- Use old cmake macro - -* Sun May 31 2020 Leigh Scott - 3.4-1 -- Update to 3.4 - -* Wed Mar 11 2020 Nicolas Chauvet - 3.3-2 -- Rebuilt for i686 - -* Sun Feb 23 2020 Leigh Scott - 3.3-1 -- Update to 3.3 - -* Wed Feb 05 2020 RPM Fusion Release Engineering - 3.2.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Thu Nov 28 2019 Leigh Scott - 3.2.1-1 -- Update to 3.2.1 -- Switch upstream source url - -* Fri Aug 09 2019 RPM Fusion Release Engineering - 3.1.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Sun Aug 04 2019 Leigh Scott - 3.1.2-1 -- Update to 3.1.2 - -* Fri Jun 28 2019 Nicolas Chauvet - 3.1-1 -- Update to 3.1 -- Switch to github mirror - -* Tue Mar 05 2019 RPM Fusion Release Engineering - 3.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Thu Feb 28 2019 Leigh Scott - 3.0-1 -- Update to 3.0 - -* Sun Dec 30 2018 Leigh Scott - 2.9-3 -- Rebuild against newer nasm on el7 (rfbz #5128) - -* Wed Nov 21 2018 Antonio Trande - 2.9-2 -- Rebuild for ffmpeg-3.* on el7 - -* Sun Nov 18 2018 Leigh Scott - 2.9-1 -- Update to 2.9 - -* Thu Oct 04 2018 Sérgio Basto - 2.8-1 -- Update to 2.8 more 2 patches to fix builds on non-x86 and arm - https://bitbucket.org/multicoreware/x265/issues/404/28-fails-to-build-on-ppc64le-gnu-linux - https://bitbucket.org/multicoreware/x265/issues/406/arm-assembly-fail-to-compile-on-18 - -* Sun Aug 19 2018 Leigh Scott - 2.7-5 -- Rebuilt for Fedora 29 Mass Rebuild binutils issue - -* Fri Jul 27 2018 RPM Fusion Release Engineering - 2.7-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Sun Apr 08 2018 Leigh Scott - 2.7-3 -- Fix pkgconfig file (rfbz #4853) - -* Tue Feb 27 2018 Nicolas Chauvet - 2.7-2 -- Fix CFLAGS on ARM - -* Tue Feb 27 2018 Leigh Scott - 2.7-1 -- update to 2.7 -- Drop shared test patch as it causes nasm build to fail -- Fix scriptlets -- Use ninja to build - -* Sat Dec 30 2017 Sérgio Basto - 2.6-1 -- Update x265 to 2.6 - -* Mon Oct 16 2017 Leigh Scott - 2.5-1 -- update to 2.5 - -* Thu Aug 31 2017 RPM Fusion Release Engineering - 2.4-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Sat Apr 29 2017 Leigh Scott - 2.4-1 -- update to 2.4 - -* Mon Apr 10 2017 Simone Caronni - 2.2-3 -- Use source from multicoreware website. -- Clean up SPEC file a bit (formatting, 80 char wide descriptions). -- Enable shared 10/12 bit libraries on 64 bit architectures. - -* Mon Mar 20 2017 RPM Fusion Release Engineering - 2.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Tue Jan 03 2017 Dominik Mierzejewski - 2.2-1 -- update to 2.2 -- spell out SO version in file list -- fix typo in patch - -* Mon Nov 07 2016 Sérgio Basto - 2.1-1 -- Update to 2.1 - -* Thu Aug 18 2016 Sérgio Basto - 1.9-3 -- Clean spec, Vascom patches series, rfbz #4199, add license tag - -* Tue Jul 19 2016 Dominik Mierzejewski - 1.9-2 -- use https for source URL -- enable NUMA support -- make sure Fedora compiler flags are used on ARM - -* Fri Apr 08 2016 Adrian Reber - 1.9-1 -- Update to 1.9 - -* Sun Oct 25 2015 Dominik Mierzejewski 1.8-2 -- fix building as PIC -- update SO version in file list - -* Sat Oct 24 2015 Nicolas Chauvet - 1.8-1 -- Update to 1.8 -- Avoid tests for now - -* Wed Apr 15 2015 Dominik Mierzejewski 1.6-1 -- update to 1.6 (ABI bump, rfbz#3593) -- release tarballs are now hosted on videolan.org -- drop obsolete patches - -* Thu Dec 18 2014 Dominik Mierzejewski 1.2-6 -- fix build on armv7l arch (partially fix rfbz#3361, patch by Nicolas Chauvet) -- don't run tests on ARM for now (rfbz#3361) - -* Sun Aug 17 2014 Dominik Mierzejewski 1.2-5 -- don't include contributor agreement in doc -- make sure /usr/share/doc/x265 is owned -- add a comment noting which files are BSD-licenced - -* Fri Aug 08 2014 Dominik Mierzejewski 1.2-4 -- don't create bogus soname (patch by Xavier) - -* Thu Jul 17 2014 Dominik Mierzejewski 1.2-3 -- fix tr call to remove DOS EOL -- build the library with -fPIC on arm and i686, too - -* Sun Jul 13 2014 Dominik Mierzejewski 1.2-2 -- use version in source URL -- update License tag -- fix EOL in drag-uncrustify.bat -- don't link test binaries with shared binary on x86 (segfault) - -* Thu Jul 10 2014 Dominik Mierzejewski 1.2-1 -- initial build -- fix pkgconfig file install location -- link test binaries with shared library +* Sun May 31 2026 Gilver E. - 4.2-1 +- Updated patches and spec based on RPM Fusion and Negativo's changes diff --git a/anda/multimedia/zrythm/zrythm.spec b/anda/multimedia/zrythm/zrythm.spec index f8ae490aee..4a4019201e 100644 --- a/anda/multimedia/zrythm/zrythm.spec +++ b/anda/multimedia/zrythm/zrythm.spec @@ -1,4 +1,4 @@ -%global v v2.0.0-alpha.0 +%global v v2.0.0-alpha.1 Name: zrythm Version: %(echo %v | sed 's@-@~@g' | sed 's@^v@@') diff --git a/anda/misc/alsa-ucm-cros/alsa-ucm-cros.spec b/anda/system/alsa-ucm-cros/alsa-ucm-cros.spec similarity index 100% rename from anda/misc/alsa-ucm-cros/alsa-ucm-cros.spec rename to anda/system/alsa-ucm-cros/alsa-ucm-cros.spec diff --git a/anda/misc/alsa-ucm-cros/anda.hcl b/anda/system/alsa-ucm-cros/anda.hcl similarity index 100% rename from anda/misc/alsa-ucm-cros/anda.hcl rename to anda/system/alsa-ucm-cros/anda.hcl diff --git a/anda/misc/alsa-ucm-cros/update.rhai b/anda/system/alsa-ucm-cros/update.rhai similarity index 100% rename from anda/misc/alsa-ucm-cros/update.rhai rename to anda/system/alsa-ucm-cros/update.rhai diff --git a/anda/system/amdgpu_top/amdgpu_top.spec b/anda/system/amdgpu_top/amdgpu_top.spec index 57e5db00f8..8140ae16fe 100644 --- a/anda/system/amdgpu_top/amdgpu_top.spec +++ b/anda/system/amdgpu_top/amdgpu_top.spec @@ -1,8 +1,8 @@ %undefine __brp_add_determinism Name: amdgpu_top -Version: 0.11.2 -Release: 1%?dist +Version: 0.11.5 +Release: 1%{?dist} Summary: Tool to display AMDGPU usage License: MIT Packager: veuxit diff --git a/anda/system/asusctl/asusctl.spec b/anda/system/asusctl/asusctl.spec index 46d6f1225a..c56d89f4f5 100644 --- a/anda/system/asusctl/asusctl.spec +++ b/anda/system/asusctl/asusctl.spec @@ -2,18 +2,21 @@ %global appid org.asus_linux.rog_control_center Name: asusctl -Version: 6.3.5 -Release: 2%{?dist} +Version: 6.3.8 +Release: 1%{?dist} Epoch: 1 Summary: A control daemon, CLI tools, and a collection of crates for interacting with ASUS ROG laptops URL: https://gitlab.com/asus-linux/asusctl Source0: %url/-/archive/%version/asusctl-%version.tar.gz Source1: %{appid}.metainfo.xml License: MPL-2.0 AND (MIT OR Apache-2.0) AND NCSA AND Unicode-3.0 AND (0BSD OR MIT OR Apache-2.0) AND Apache-2.0 AND MIT AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 OR Zlib) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND BSD-2-Clause (BSD-2-Clause OR Apache-2.0 OR MIT) AND (BSD-3-Clause OR Apache-2.0) AND BSD-3-Clause AND BSL-1.0 AND (CC0-1.0 OR Apache-2.0) AND (GPL-3.0-only OR LicenseRef-Slint-Royalty-free-2.0 OR LicenseRef-Slint-Software-3.0) AND ISC AND MIT AND Zlib AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (MIT OR Apache-2.0 OR Zlib) AND Unlicense AND (Zlib OR Apache-2.0 OR MIT) -BuildRequires: anda-srpm-macros cargo-rpm-macros systemd-rpm-macros mold rust-udev-devel clang-devel +BuildRequires: anda-srpm-macros +BuildRequires: cargo-rpm-macros +BuildRequires: systemd-rpm-macros +BuildRequires: rust-udev-devel +BuildRequires: clang-devel BuildRequires: desktop-file-utils BuildRequires: cmake -BuildRequires: rust BuildRequires: rust-std-static BuildRequires: pkgconfig(gbm) BuildRequires: pkgconfig(libinput) @@ -24,7 +27,7 @@ BuildRequires: pkgconfig(libzstd) BuildRequires: pkgconfig(fontconfig) ExclusiveArch: x86_64 -Packager: Metcya +Packager: Metcya , Owen Zimmerman %description %summary. @@ -56,12 +59,14 @@ install -D -m 0644 rog-anime/data/diagonal-template.png %{buildroot}/%{_docdir}/ %{cargo_license_online} > LICENSE.dependencies -desktop-file-validate %{buildroot}/%{_datadir}/applications/rog-control-center.desktop +%desktop_file_validate %{buildroot}/%{_appsdir}/rog-control-center.desktop + +mkdir -p %{buildroot}%{_sysconfdir}/asusd %files %license LICENSE %license LICENSE.dependencies -%{_datadir}/asusctl/LICENSE +%license %{_datadir}/asusctl/LICENSE %{_bindir}/asusd %{_bindir}/asusd-user %{_bindir}/asusctl @@ -69,21 +74,21 @@ desktop-file-validate %{buildroot}/%{_datadir}/applications/rog-control-center.d %{_unitdir}/asusd.service %{_unitdir}/asus-shutdown.service %{_udevrulesdir}/99-asusd.rules -%dnl %{_sysconfdir}/asusd/ +%dir %{_sysconfdir}/asusd %{_datadir}/asusd/aura_support.ron %{_datadir}/dbus-1/system.d/asusd.conf -%{_datadir}/icons/hicolor/512x512/apps/asus_notif_yellow.png -%{_datadir}/icons/hicolor/512x512/apps/asus_notif_green.png -%{_datadir}/icons/hicolor/512x512/apps/asus_notif_red.png -%{_datadir}/icons/hicolor/512x512/apps/asus_notif_blue.png -%{_datadir}/icons/hicolor/512x512/apps/asus_notif_orange.png -%{_datadir}/icons/hicolor/512x512/apps/asus_notif_white.png -%{_datadir}/icons/hicolor/scalable/status/gpu-compute.svg -%{_datadir}/icons/hicolor/scalable/status/gpu-hybrid.svg -%{_datadir}/icons/hicolor/scalable/status/gpu-integrated.svg -%{_datadir}/icons/hicolor/scalable/status/gpu-nvidia.svg -%{_datadir}/icons/hicolor/scalable/status/gpu-vfio.svg -%{_datadir}/icons/hicolor/scalable/status/notification-reboot.svg +%{_hicolordir}/512x512/apps/asus_notif_yellow.png +%{_hicolordir}/512x512/apps/asus_notif_green.png +%{_hicolordir}/512x512/apps/asus_notif_red.png +%{_hicolordir}/512x512/apps/asus_notif_blue.png +%{_hicolordir}/512x512/apps/asus_notif_orange.png +%{_hicolordir}/512x512/apps/asus_notif_white.png +%{_hicolordir}/scalable/status/gpu-compute.svg +%{_hicolordir}/scalable/status/gpu-hybrid.svg +%{_hicolordir}/scalable/status/gpu-integrated.svg +%{_hicolordir}/scalable/status/gpu-nvidia.svg +%{_hicolordir}/scalable/status/gpu-vfio.svg +%{_hicolordir}/scalable/status/notification-reboot.svg %{_docdir}/%{name}/ %{_datadir}/asusd/ @@ -101,12 +106,15 @@ desktop-file-validate %{buildroot}/%{_datadir}/applications/rog-control-center.d %files rog-gui %{_bindir}/rog-control-center -%{_datadir}/applications/rog-control-center.desktop -%{_datadir}/icons/hicolor/512x512/apps/rog-control-center.png +%{_appsdir}/rog-control-center.desktop +%{_hicolordir}/512x512/apps/rog-control-center.png %{_datadir}/rog-gui %{_metainfodir}/%{appid}.metainfo.xml %changelog +* Fri May 08 2026 Owen Zimmerman - 6.3.7-3 +- Use new macros, clean some stuff up + * Mon Mar 23 2026 Owen Zimmerman - 6.3.5-2 - Add asus-shutdown.service diff --git a/anda/system/asusctl/org.asus_linux.rog_control_center.metainfo.xml b/anda/system/asusctl/org.asus_linux.rog_control_center.metainfo.xml index dc570bae63..67343c1432 100644 --- a/anda/system/asusctl/org.asus_linux.rog_control_center.metainfo.xml +++ b/anda/system/asusctl/org.asus_linux.rog_control_center.metainfo.xml @@ -41,6 +41,8 @@ ASUS ROG asusctl + Control Center + Armoury Crate rog-control-center.desktop diff --git a/anda/system/brush-shell/anda.hcl b/anda/system/brush-shell/anda.hcl new file mode 100644 index 0000000000..76297eb4c8 --- /dev/null +++ b/anda/system/brush-shell/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "brush-shell.spec" + } +} diff --git a/anda/system/brush-shell/brush-shell.spec b/anda/system/brush-shell/brush-shell.spec new file mode 100644 index 0000000000..9650712cae --- /dev/null +++ b/anda/system/brush-shell/brush-shell.spec @@ -0,0 +1,39 @@ +Name: brush-shell +Version: brush.shell.v0.4.0 +Release: 1%{?dist} +Summary: bash/POSIX-compatible shell implemented in Rust +URL: https://github.com/reubeno/brush +Source0: %{url}/archive/refs/tags/%{name}-v%{version}.tar.gz +License: ((MIT OR Apache-2.0) AND NCSA) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache-2.0) AND Apache-2.0 AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR BSL-1.0 OR MIT) AND (Apache-2.0 OR GPL-2.0-only) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND BSD-2-Clause AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND MIT AND (MIT OR Apache-2.0) AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (MIT OR Zlib OR Apache-2.0) AND MPL-2.0 AND Unicode-3.0 AND (Unlicense OR MIT) AND WTFPL AND Zlib AND (Zlib OR Apache-2.0 OR MIT) + +BuildRequires: cargo-rpm-macros + +Provides: brush +Packager: Its-J + +%description +brush-shell is a modern bash- and POSIX- compatible shell written in Rust. +Run your existing scripts and .bashrc unchanged +with built-in syntax highlighting and auto-suggestions. + +%prep +%autosetup -n brush-%{name}-v%{version} +%cargo_prep_online + +%build +%cargo_build + +%install +install -Dm755 target/rpm/brush %{buildroot}%{_bindir}/brush +%cargo_license_summary_online +%{cargo_license_online} > LICENSE.dependencies + +%files +%{_bindir}/brush +%license LICENSE +%license LICENSE.dependencies +%doc README.md + +%changelog +* Sun May 10 2026 Its-J +- Package brush diff --git a/anda/system/brush-shell/update.rhai b/anda/system/brush-shell/update.rhai new file mode 100644 index 0000000000..3b52b6d991 --- /dev/null +++ b/anda/system/brush-shell/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("reubeno/brush")); diff --git a/anda/system/cardwire/anda.hcl b/anda/system/cardwire/anda.hcl new file mode 100644 index 0000000000..7a09dc540e --- /dev/null +++ b/anda/system/cardwire/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "cardwire.spec" + } +} diff --git a/anda/system/cardwire/cardwire.spec b/anda/system/cardwire/cardwire.spec new file mode 100644 index 0000000000..44d54de401 --- /dev/null +++ b/anda/system/cardwire/cardwire.spec @@ -0,0 +1,56 @@ +Name: cardwire +Version: 0.10.2 +Release: 1%{?dist} +Summary: A GPU Manager for linux that uses eBPF LSM hooks to block GPUs +URL: https://opengamingcollective.github.io/cardwire/ +Source0: https://github.com/OpenGamingCollective/cardwire/archive/refs/tags/v%{version}.tar.gz +License: GPL-3.0-or-later AND (Apache-2.0 OR MIT) AND BSD-3-Clause AND (MIT OR Apache-2.0) AND Unicode-3.0 AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND ISC AND MIT (MIT OR Apache-2.0) AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (Unlicense OR MIT) AND Zlib +BuildRequires: cargo-rpm-macros +BuildRequires: systemd-rpm-macros +BuildRequires: systemd-devel +BuildRequires: libbpf-devel +BuildRequires: clang-devel + +Requires: hwdata +Requires: upower + +Packager: Owen Zimmerman + +%description +%{summary}. + +%prep +%autosetup +%cargo_prep_online + +%build +%cargo_build + +%install +install -Dm0755 target/rpm/cardwire %{buildroot}%{_bindir}/cardwire +install -Dm0755 target/rpm/cardwired %{buildroot}%{_bindir}/cardwired +install -Dm0644 assets/cardwired.service %{buildroot}%{_unitdir}/cardwired.service +install -Dm0644 assets/com.github.opengamingcollective.cardwire.conf %{buildroot}%{_datadir}/dbus-1/system.d/com.github.opengamingcollective.cardwire.conf + +%{cargo_license_online} > LICENSE.dependencies + +%post +%systemd_post cardwired.service + +%preun +%systemd_preun cardwired.service + +%postun +%systemd_postun_with_restart cardwired.service + +%files +%license LICENSE +%license LICENSE.dependencies +%{_bindir}/cardwire +%{_bindir}/cardwired +%{_unitdir}/cardwired.service +%{_datadir}/dbus-1/system.d/com.github.opengamingcollective.cardwire.conf + +%changelog +* Wed May 06 2026 Owen Zimmerman +- Initial commit diff --git a/anda/system/cardwire/update.rhai b/anda/system/cardwire/update.rhai new file mode 100644 index 0000000000..2e39cdc8ec --- /dev/null +++ b/anda/system/cardwire/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("OpenGamingCollective/cardwire")); diff --git a/anda/system/cloud-hypervisor/nightly/anda.hcl b/anda/system/cloud-hypervisor/nightly/anda.hcl new file mode 100644 index 0000000000..bcf490fb52 --- /dev/null +++ b/anda/system/cloud-hypervisor/nightly/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "cloud-hypervisor-nightly.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/system/cloud-hypervisor/nightly/cloud-hypervisor-nightly.spec b/anda/system/cloud-hypervisor/nightly/cloud-hypervisor-nightly.spec new file mode 100644 index 0000000000..59a31f0d5f --- /dev/null +++ b/anda/system/cloud-hypervisor/nightly/cloud-hypervisor-nightly.spec @@ -0,0 +1,57 @@ +%global commit 50f2fd369f3f340a643082c8a75ac3eadcdeddae +%global commit_date 20260614 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) + +Name: cloud-hypervisor-nightly +License: Apache-2.0 AND MPL-2.0 AND (Unlicense OR MIT) AND (MIT OR Zlib OR Apache-2.0) AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND MIT AND BSD-3-Clause AND (BSD-3-Clause OR Apache-2.0) AND (BSD-3-Clause OR MIT OR Apache-2.0) AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-3-Clause AND CC-BY-4.0 AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR BSD-3-Clause) AND (Apache-2.0 OR MIT) +Version: 0~%{commit_date}git.%{shortcommit} +Release: 1%{?dist} +Summary: A Virtual Machine Monitor for modern Cloud workloads +URL: https://github.com/cloud-hypervisor/cloud-hypervisor +Source0: %{url}/archive/%{commit}/cloud-hypervisor-%{commit}.tar.gz +BuildRequires: perl +BuildRequires: cargo-rpm-macros +BuildRequires: pkgconfig(openssl) +Conflicts: cloud-hypervisor + +Packager: Owen Zimmerman + +%description +A Virtual Machine Monitor for modern Cloud workloads. Features include CPU, +memory and device hotplug, support for running Windows and Linux guests, +device offload with vhost-user and a minimal compact footprint. +Written in Rust with a strong focus on security. + +%package doc +Summary: Documentation for cloud-hypervisor +Requires: %{name} = %{evr} + +%description doc +%{summary}. + +%prep +%autosetup -n cloud-hypervisor-%{commit} +%cargo_prep_online + +%build +%cargo_build + +%install +install -Dm755 target/rpm/cloud-hypervisor %{buildroot}%{_bindir}/cloud-hypervisor +install -Dm755 target/rpm/ch-remote %{buildroot}%{_bindir}/ch-remote +install -Dm755 target/rpm/vhost_user_block %{buildroot}%{_bindir}/vhost_user_block +install -Dm755 target/rpm/vhost_user_net %{buildroot}%{_bindir}/vhost_user_net + +%{cargo_license_online} > LICENSE.dependencies + +%files +%license LICENSE.dependencies LICENSES/ +%doc CODEOWNERS CODE_OF_CONDUCT.md CONTRIBUTING.md CREDITS.md MAINTAINERS.md README.md release-notes.md +%caps(cap_net_admin=ep) %{_bindir}/cloud-hypervisor +%{_bindir}/ch-remote +%{_bindir}/vhost_user_block +%{_bindir}/vhost_user_net + +%changelog +* Tue Apr 14 2026 Owen Zimmerman +- Initial commit (port from stable spec) diff --git a/anda/system/cloud-hypervisor/nightly/update.rhai b/anda/system/cloud-hypervisor/nightly/update.rhai new file mode 100644 index 0000000000..3f227e4d25 --- /dev/null +++ b/anda/system/cloud-hypervisor/nightly/update.rhai @@ -0,0 +1,5 @@ +rpm.global("commit", gh_commit("cloud-hypervisor/cloud-hypervisor")); +if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); +} diff --git a/anda/system/cloud-hypervisor/anda.hcl b/anda/system/cloud-hypervisor/stable/anda.hcl similarity index 100% rename from anda/system/cloud-hypervisor/anda.hcl rename to anda/system/cloud-hypervisor/stable/anda.hcl diff --git a/anda/system/cloud-hypervisor/cloud-hypervisor.spec b/anda/system/cloud-hypervisor/stable/cloud-hypervisor.spec similarity index 97% rename from anda/system/cloud-hypervisor/cloud-hypervisor.spec rename to anda/system/cloud-hypervisor/stable/cloud-hypervisor.spec index af7fefd8f6..d54b63806b 100644 --- a/anda/system/cloud-hypervisor/cloud-hypervisor.spec +++ b/anda/system/cloud-hypervisor/stable/cloud-hypervisor.spec @@ -1,7 +1,7 @@ Name: cloud-hypervisor License: Apache-2.0 AND MPL-2.0 AND (Unlicense OR MIT) AND (MIT OR Zlib OR Apache-2.0) AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND MIT AND BSD-3-Clause AND (BSD-3-Clause OR Apache-2.0) AND (BSD-3-Clause OR MIT OR Apache-2.0) AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-3-Clause AND CC-BY-4.0 AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR BSD-3-Clause) AND (Apache-2.0 OR MIT) -Version: 51.1 -Release: 3%{?dist} +Version: 52.0 +Release: 1%{?dist} Summary: A Virtual Machine Monitor for modern Cloud workloads URL: https://github.com/cloud-hypervisor/cloud-hypervisor Source0: https://github.com/cloud-hypervisor/cloud-hypervisor/archive/refs/tags/v%{version}.tar.gz diff --git a/anda/system/cloud-hypervisor/update.rhai b/anda/system/cloud-hypervisor/stable/update.rhai similarity index 100% rename from anda/system/cloud-hypervisor/update.rhai rename to anda/system/cloud-hypervisor/stable/update.rhai diff --git a/anda/system/dank-material-shell/anda.hcl b/anda/system/dank-material-shell/anda.hcl new file mode 100644 index 0000000000..4d7e6ff850 --- /dev/null +++ b/anda/system/dank-material-shell/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "dank-material-shell.spec" + } + labels { + subrepo = "extras" + } +} diff --git a/anda/system/dank-material-shell/dank-material-shell.spec b/anda/system/dank-material-shell/dank-material-shell.spec new file mode 100644 index 0000000000..910d8db37a --- /dev/null +++ b/anda/system/dank-material-shell/dank-material-shell.spec @@ -0,0 +1,147 @@ +%global goipath github.com/AvengeMedia/%{name}/core + +Name: DankMaterialShell +Version: 1.4.6 +Release: 1%{?dist} +Summary: Desktop shell for Wayland compositors built on QuickShell + +License: Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND GPL-3.0-only AND ISC AND MIT AND MPL-2.0 +URL: https://danklinux.com/ +Source0: https://github.com/AvengeMedia/%{name}/archive/v%{version}/%{name}-%{version}.tar.gz + +BuildRequires: go-rpm-macros +BuildRequires: go-vendor-tools +BuildRequires: systemd-rpm-macros + +Requires: accountsservice +Requires: cups-pk-helper +Requires: hicolor-icon-theme +Requires: quickshell + +Requires: (adw-gtk3-theme if gtk3) +Requires: cava +Requires: cliphist +Requires: danksearch +Requires: dgop +Requires: kf6-kimageformats +Requires: khal +Requires: matugen +Requires: (qt5ct if qt5-qtbase) +Requires: qt6ct +Requires: qt6-qtmultimedia +Requires: qt6-qtimageformats +Requires: wl-clipboard + +Recommends: NetworkManager +Recommends: ppd-service +Suggests: tuned-ppd + +# Replace and provide the package names from avengemedia/dms +Obsoletes: dms < %{evr} +Provides: dms = %{evr} +Obsoletes: dms-cli < %{evr} +Provides: dms-cli = %{evr} + +Packager: Its-J + +%description +DankMaterialShell is a complete desktop shell for Wayland compositors. +It replaces a variety of tools used to stitch together to make a desktop. + +dms features notifications, an app launcher, wallpaper customization, and is +fully customizable with plugins. + +It includes auto-theming for GTK/Qt apps with matugen, 20+ customizable widgets, +process monitoring, notification center, clipboard history, dock, control center, +lock screen, and comprehensive plugin system. + +%prep +%autosetup -C +%goprep + +%build +pushd core +export dms_buildtime=$(date -d "@${SOURCE_DATE_EPOCH}" +%%Y-%%m-%%d_%%H:%%M:%%S) +export GO_LDFLAGS="-X main.commit=fedora \ + -X main.Version=%{evr} \ + -X main.buildTime=${dms_buildtime}" +%global gomodulesmode GO111MODULE=on +mkdir -p %{_vpath_builddir}/bin +%gobuild -o %{_vpath_builddir}/bin/dms ./cmd/dms +popd + +# Install dms cli shell completions +%pkg_completion -Bfz dms + +%install +# Install dms +install -Dm644 assets/systemd/dms.service %{buildroot}%{_userunitdir}/dms.service + +install -Dm644 assets/dms-open.desktop %{buildroot}%{_datadir}/applications/dms-open.desktop +install -Dm644 assets/danklogo.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/danklogo.svg + +mkdir -p %{buildroot}%{_datadir}/quickshell/dms +cp -a quickshell/* %{buildroot}%{_datadir}/quickshell/dms/ +echo "%{evr}" > %{buildroot}%{_datadir}/quickshell/dms/VERSION + +# Install dms cli +mkdir -p %{buildroot}%{_bindir} +install -pm0755 core/%{_vpath_builddir}/bin/dms %{buildroot}%{_bindir}/dms + +# Install dms cli shell completions +mkdir -p %{buildroot}%{bash_completions_dir} +mkdir -p %{buildroot}%{fish_completions_dir} +mkdir -p %{buildroot}%{zsh_completions_dir} +core/%{_vpath_builddir}/bin/dms completion bash > %{buildroot}%{bash_completions_dir}/dms +core/%{_vpath_builddir}/bin/dms completion fish > %{buildroot}%{fish_completions_dir}/dms.fish +core/%{_vpath_builddir}/bin/dms completion zsh > %{buildroot}%{zsh_completions_dir}/_dms + +%check +pushd core +%gotest ./... +popd + +%post +%systemd_user_post dms.service + +%preun +%systemd_user_preun dms.service + +%postun +%systemd_user_postun_with_restart dms.service + +%posttrans +# Signal running DMS instances to reload +pkill -USR1 -x dms || : + + +%files +%license LICENSE +%doc README.md +%{_bindir}/dms +%{_datadir}/quickshell/dms/ +%{_userunitdir}/dms.service +%{_datadir}/applications/dms-open.desktop +%{_datadir}/icons/hicolor/scalable/apps/danklogo.svg + +%changelog +* Sat Mar 28 2026 Its-J - 1.4.4-1 +- Port to Terra + +* Mon Feb 16 2026 Neal Gompa - 1.2.3-5 +- Backport fix for screensaver inhibit support +- Add dependencies to make various wallpaper format work +- Add dependency for printer management support + +* Mon Feb 16 2026 Neal Gompa - 1.2.3-4 +- Add missing khal dependency + +* Mon Feb 16 2026 Neal Gompa - 1.2.3-3 +- Add dependency for ppd-service +- Fix string for embedded package version + +* Sun Feb 15 2026 Neal Gompa - 1.2.3-2 +- Strengthen various dependencies + +* Sun Feb 15 2026 Neal Gompa - 1.2.3-1 +- Initial package diff --git a/anda/system/dank-material-shell/update.rhai b/anda/system/dank-material-shell/update.rhai new file mode 100644 index 0000000000..3fa83f2e6c --- /dev/null +++ b/anda/system/dank-material-shell/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("AvengeMedia/DankMaterialShell")); diff --git a/anda/system/depthcharge-tools/depthcharge-tools.spec b/anda/system/depthcharge-tools/depthcharge-tools.spec index e0e9c44c12..a427dd2916 100644 --- a/anda/system/depthcharge-tools/depthcharge-tools.spec +++ b/anda/system/depthcharge-tools/depthcharge-tools.spec @@ -1,13 +1,13 @@ Name: depthcharge-tools -Version: 0.6.3 -Release: 4%?dist +Version: 0.6.4 +Release: 2%{?dist} Summary: Tools to manage the Chrome OS bootloader License: GPL-2.0-or-later URL: https://gitlab.postmarketos.org/postmarketOS/depthcharge-tools Source0: %url/-/archive/v%version/%name-v%version.tar.gz Requires: vboot-utils dtc gzip lz4 python3-setuptools uboot-tools vboot-utils xz python3-importlib-resources BuildRequires: python3-setuptools python3-rpm-macros pyproject-rpm-macros python3dist(pip) systemd-rpm-macros redhat-rpm-config python3-docutils python3-importlib-resources -Patch0: fix-importlib.patch +Requires: python3-setuptools python3-packaging python3-importlib-metadata BuildArch: noarch %description @@ -17,7 +17,7 @@ with depthcharge, the Chrome OS bootloader. %pkg_completion -Bz mkdepthcharge depthchargectl %prep -%autosetup -n %name-v%version -p1 +%autosetup -n %name-v%version %build %pyproject_wheel @@ -45,4 +45,5 @@ install -Dm644 *.1.gz %buildroot%_mandir/man1/ %_unitdir/depthchargectl-bless.service %changelog -%autochangelog +* Sun May 10 2026 Owen Zimmerman +- Remove patch diff --git a/anda/system/depthcharge-tools/fix-importlib.patch b/anda/system/depthcharge-tools/fix-importlib.patch deleted file mode 100644 index a3bf34ffda..0000000000 --- a/anda/system/depthcharge-tools/fix-importlib.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/depthcharge_tools/__init__.py b/depthcharge_tools/__init__.py -index fabb79d..2b7d7d5 100644 ---- a/depthcharge_tools/__init__.py -+++ b/depthcharge_tools/__init__.py -@@ -9,6 +9,7 @@ import glob - import logging - import pathlib - import importlib -+import importlib.resources - import importlib_metadata - from packaging.version import parse as parse_version - import re diff --git a/anda/system/dfu-programmer/dfu-programmer.spec b/anda/system/dfu-programmer/dfu-programmer.spec index eaf3b427d5..21cb7d51a9 100644 --- a/anda/system/dfu-programmer/dfu-programmer.spec +++ b/anda/system/dfu-programmer/dfu-programmer.spec @@ -17,11 +17,13 @@ Atmel chips with USB support. %prep %autosetup -p1 + +%conf touch ./ChangeLog autoreconf -fiv +%configure %build -%configure %make_build %install diff --git a/anda/system/dmemcg-booster/0001-License-under-MIT.patch b/anda/system/dmemcg-booster/0001-License-under-MIT.patch new file mode 100644 index 0000000000..61869ec66b --- /dev/null +++ b/anda/system/dmemcg-booster/0001-License-under-MIT.patch @@ -0,0 +1,33 @@ +From 903e18c761c41ecca2a6dced9335a2c3f0703b11 Mon Sep 17 00:00:00 2001 +From: Natalie Vock +Date: Fri, 17 Apr 2026 21:46:48 +0200 +Subject: [PATCH] License under MIT + +--- + LICENSE | 14 ++++++++++++++ + 1 file changed, 14 insertions(+) + create mode 100644 LICENSE + +diff --git a/LICENSE b/LICENSE +new file mode 100644 +index 0000000..92ea3c4 +--- /dev/null ++++ b/LICENSE +@@ -0,0 +1,14 @@ ++Copyright (c) 2026 Valve Corporation ++ ++Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated ++documentation files (the "Software"), to deal in the Software without restriction, including without limitation the ++rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit ++persons to whom the Software is furnished to do so, subject to the following conditions: ++ ++The above copyright notice and this permission notice shall be included in all copies or substantial portions of the ++Software. ++ ++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE ++WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR ++COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR ++OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +\ No newline at end of file +-- +2.54.0 diff --git a/anda/system/dmemcg-booster/anda.hcl b/anda/system/dmemcg-booster/anda.hcl new file mode 100644 index 0000000000..0f774f4ec3 --- /dev/null +++ b/anda/system/dmemcg-booster/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "dmemcg-booster.spec" + } +} diff --git a/anda/system/dmemcg-booster/dmemcg-booster.spec b/anda/system/dmemcg-booster/dmemcg-booster.spec new file mode 100644 index 0000000000..0970b26924 --- /dev/null +++ b/anda/system/dmemcg-booster/dmemcg-booster.spec @@ -0,0 +1,50 @@ +Name: dmemcg-booster +Version: 0.1.2 +Release: 1%?dist +Summary: Userspace utility for controling VRAM utilization +License: MIT AND (Apache-2.0 OR MIT) +URL: https://gitlab.steamos.cloud/holo/dmemcg-booster +Source0: %url/-/archive/%version/dmemcg-booster-%version.tar.gz +BuildRequires: anda-srpm-macros +BuildRequires: cargo-rpm-macros +BuildRequires: systemd-rpm-macros +BuildRequires: dbus-devel +Packager: Tulip Blossom + +Patch: 0001-License-under-MIT.patch + +%description +%summary. + +%prep +%autosetup -n %name-%version +%cargo_prep_online + +%build +%{cargo_license_online -a} > LICENSE.dependencies + +%install +%cargo_install +install -Dpm0644 -t %{buildroot}%{_datadir}/licenses/dmemcg-booster/ ./LICENSE +install -Dpm0644 -t %{buildroot}%{_userunitdir}/ ./dmemcg-booster-user.service +install -Dpm0644 -t %{buildroot}%{_unitdir}/ ./dmemcg-booster-system.service + +%post +%systemd_post dmemcg-booster.service + +%preun +%systemd_preun dmemcg-booster.service + +%postun +%systemd_postun_with_restart dmemcg-booster.service + +%files +%license %{_datadir}/licenses/dmemcg-booster/LICENSE +%license LICENSE.dependencies +%{_bindir}/dmemcg-booster +%{_userunitdir}/dmemcg-booster-user.service +%{_unitdir}/dmemcg-booster-system.service + +%changelog +* Thu May 05 2026 Tulip Blossom - 0.1.2-1 +- Intial Commit diff --git a/anda/system/dmemcg-booster/update.rhai b/anda/system/dmemcg-booster/update.rhai new file mode 100644 index 0000000000..6c0e6f45c9 --- /dev/null +++ b/anda/system/dmemcg-booster/update.rhai @@ -0,0 +1 @@ +rpm.version(gitlab_tag("gitlab.steamos.cloud", "1438")); diff --git a/anda/system/falcond-profiles/falcond-profiles.spec b/anda/system/falcond-profiles/falcond-profiles.spec index e465fc4b6c..1c6d293d0e 100644 --- a/anda/system/falcond-profiles/falcond-profiles.spec +++ b/anda/system/falcond-profiles/falcond-profiles.spec @@ -1,10 +1,10 @@ -%global commit a3e0e63303c0a310a504c5f3e2a9d71496d7aaab +%global commit 5023a846980685812334586ae265f8f6a1ded38b %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260206 +%global commit_date 20260523 Name: falcond-profiles Version: 0^%{commit_date}git.%{shortcommit} -Release: 1%?dist +Release: 1%{?dist} Summary: Profiles for falcond License: MIT URL: https://github.com/PikaOS-Linux/falcond-profiles diff --git a/anda/system/falcond/falcond.spec b/anda/system/falcond/falcond.spec index 0d4da5be7b..04690fa283 100644 --- a/anda/system/falcond/falcond.spec +++ b/anda/system/falcond/falcond.spec @@ -1,15 +1,13 @@ -%global _include_minidebuginfo 0 - Name: falcond -Version: 2.0.1 +Version: 2.0.8 Release: 1%{?dist} Summary: Advanced Linux Gaming Performance Daemon License: MIT URL: https://git.pika-os.com/general-packages/falcond Source0: %{url}/archive/v%{version}.tar.gz -BuildRequires: anda-srpm-macros >= 0.2.18 +BuildRequires: anda-srpm-macros >= 0.3.9 BuildRequires: systemd-rpm-macros -BuildRequires: zig >= 0.15.2 +BuildRequires: zig >= 0.16.0 BuildRequires: zig-rpm-macros Requires: %{name}-profiles Requires: (scx-scheds or scx-scheds-nightly) @@ -25,18 +23,18 @@ This eliminates the need to manually configure settings for each game. %prep %autosetup -n %{name}/%{name} +%zig_prep %build %install -install -Dm644 debian/%{name}.service -t %{buildroot}%{_unitdir} # When DNF supports microarchitectures the fallback option for -c can be used here instead -DESTDIR="%{buildroot}" \ %ifarch x86_64 -%{zig_build_target -r fast -cx86_64_v2 -s} \ +%{zig_install_target -r fast -Cx86_64_v2 -s} %elifarch aarch64 -%{zig_build_target -r fast -s} \ +%{zig_install_target -r fast -s} %endif +install -Dm644 debian/%{name}.service -t %{buildroot}%{_unitdir} %pre # Create falcond group if it doesn't exist @@ -61,6 +59,9 @@ usermod -aG 'falcond' root || : %{_unitdir}/%{name}.service %changelog +* Thu May 14 2026 Gilver E. - 2.0.6-2 +- Updated for Zig and zig-rpm-macros 0.16.0 +- Updated for anda-srpm-macros 0.3.9 * Thu Jan 1 2026 Gilver E. - 1.2.1-2 - Disabled service by default in favor of user enablement via falcond-gui - Added weak dep on falcond-gui diff --git a/anda/system/falcond/update.rhai b/anda/system/falcond/update.rhai index 97d99c287b..7cfa7602f0 100644 --- a/anda/system/falcond/update.rhai +++ b/anda/system/falcond/update.rhai @@ -1 +1 @@ -rpm.version(get("https://git.pika-os.com/api/v1/repos/general-packages/falcond/releases").json_arr()[0].tag_name); +rpm.version(gitea("git.pika-os.com", "general-packages/falcond")); diff --git a/anda/system/hid-fanatecff/akmod/anda.hcl b/anda/system/hid-fanatecff/akmod/anda.hcl new file mode 100644 index 0000000000..6910465b51 --- /dev/null +++ b/anda/system/hid-fanatecff/akmod/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + rpm { + spec = "hid-fanatecff-kmod.spec" + } + labels { + mock = 1 + updbranch = 1 + } +} diff --git a/anda/system/hid-fanatecff/akmod/hid-fanatecff-kmod.spec b/anda/system/hid-fanatecff/akmod/hid-fanatecff-kmod.spec new file mode 100644 index 0000000000..10a45f216e --- /dev/null +++ b/anda/system/hid-fanatecff/akmod/hid-fanatecff-kmod.spec @@ -0,0 +1,56 @@ +%global commit dd78ef477c0dc90d59291a0197afcea26911fca8 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260528 +%global ver 0.2.3 +%define buildforkernels akmod +%global debug_package %{nil} +%global modulename hid-fanatecff + +Name: %{modulename}-kmod +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +Summary: Fanatec force feedback kernel module +License: GPL-2.0-only +URL: https://github.com/gotzl/%{modulename} +Source0: %{url}/archive/%{commit}.tar.gz#/%{modulename}-%{shortcommit}.tar.gz +BuildRequires: kmodtool +Requires: akmods +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Requires: %{modulename}-akmod-modules = %{?epoch:%{epoch}:}%{version} +Conflicts: dkms-%{modulename} + +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } + +%description +Driver to support Fanatec input devices, in particular force feedback of +various wheel-bases. + +%prep +%{?kmodtool_check} +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null + +%autosetup -p1 -n %{modulename}-%{commit} + +for kernel_version in %{?kernel_versions}; do + mkdir _kmod_build_${kernel_version%%___*} + cp -fr Kbuild Makefile *.c *.h _kmod_build_${kernel_version%%___*}/ +done + +%build +for kernel_version in %{?kernel_versions}; do + pushd _kmod_build_${kernel_version%%___*}/ + %make_build -C "${kernel_version##*___}" M=$(pwd) modules + popd +done + +%install +for kernel_version in %{?kernel_versions}; do + mkdir -p %{buildroot}/%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ + install -p -m 0755 _kmod_build_${kernel_version%%___*}/*.ko \ + %{buildroot}/%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ +done +%{?akmod_install} + +%changelog +* Thu Apr 02 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/hid-fanatecff/akmod/update.rhai b/anda/system/hid-fanatecff/akmod/update.rhai new file mode 100644 index 0000000000..ea1cd2b75b --- /dev/null +++ b/anda/system/hid-fanatecff/akmod/update.rhai @@ -0,0 +1,12 @@ +let c = sh("cat anda/system/hid-fanatecff/kmod-common/hid-fanatecff.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; +c.pop(); +rpm.global("commit", c); +if rpm.changed() { + rpm.release(); + let d = sh("cat anda/system/hid-fanatecff/kmod-common/hid-fanatecff.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; + d.pop(); + rpm.global("commitdate", d); + let v = sh("cat anda/system/hid-fanatecff/kmod-common/hid-fanatecff.spec | grep '%global ver' | sed -E 's/.+ver //'", #{"stdout": "piped"}).ctx.stdout; + v.pop(); + rpm.global("ver", v); +} diff --git a/anda/system/hid-fanatecff/dkms/anda.hcl b/anda/system/hid-fanatecff/dkms/anda.hcl new file mode 100644 index 0000000000..cec1a9625e --- /dev/null +++ b/anda/system/hid-fanatecff/dkms/anda.hcl @@ -0,0 +1,10 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "dkms-hid-fanatecff.spec" + } + labels { + mock = 1 + updbranch = 1 + } +} diff --git a/anda/system/hid-fanatecff/dkms/dkms-hid-fanatecff.conf b/anda/system/hid-fanatecff/dkms/dkms-hid-fanatecff.conf new file mode 100644 index 0000000000..1a8f77c2d9 --- /dev/null +++ b/anda/system/hid-fanatecff/dkms/dkms-hid-fanatecff.conf @@ -0,0 +1,6 @@ +PACKAGE_NAME="hid-fanatecff" +PACKAGE_VERSION="__VERSION_STRING" +AUTOINSTALL="yes" + +BUILT_MODULE_NAME[0]="hid-fanatec" +DEST_MODULE_LOCATION[0]="/extra" diff --git a/anda/system/hid-fanatecff/dkms/dkms-hid-fanatecff.spec b/anda/system/hid-fanatecff/dkms/dkms-hid-fanatecff.spec new file mode 100644 index 0000000000..be8ca036b3 --- /dev/null +++ b/anda/system/hid-fanatecff/dkms/dkms-hid-fanatecff.spec @@ -0,0 +1,59 @@ +%global commit dd78ef477c0dc90d59291a0197afcea26911fca8 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260528 +%global ver 0.2.3 +%global debug_package %{nil} +%global modulename hid-fanatecff + +Name: dkms-%{modulename} +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +Summary: Fanatec force feedback kernel module (DKMS) +License: GPL-2.0-only +URL: https://github.com/gotzl/%{modulename} +Source0: %{url}/archive/%{commit}.tar.gz#/%{modulename}-%{shortcommit}.tar.gz +Source1: %{name}.conf +Source2: no-weak-modules.conf +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Requires: dkms +Conflicts: akmod-%{modulename} +Provides: %{modulename}-kmod +BuildArch: noarch + +%description +Driver to support Fanatec input devices, in particular force feedback of +various wheel-bases. + +%prep +%autosetup -p1 -n %{modulename}-%{commit} + +cp -f %{SOURCE1} dkms.conf +sed -i -e 's/__VERSION_STRING/%{version}/g' dkms.conf + +%build + +%install +mkdir -p %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ +cp -fr Kbuild Makefile *.c *.h dkms.conf %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ + +%if 0%{?fedora} +install -Dpm644 %{SOURCE2} %{buildroot}%{_sysconfdir}/dkms/%{modulename}.conf +%endif + +%post +dkms add -m %{modulename} -v %{version} -q --rpm_safe_upgrade || : +dkms build -m %{modulename} -v %{version} -q || : +dkms install -m %{modulename} -v %{version} -q --force || : + +%preun +dkms remove -m %{modulename} -v %{version} -q --all --rpm_safe_upgrade || : + +%files +%{_usrsrc}/%{modulename}-%{version} +%if 0%{?fedora} +%{_sysconfdir}/dkms/%{modulename}.conf +%endif + +%changelog +* Thu Apr 02 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/xpadneo/dkms/no-weak-modules.conf b/anda/system/hid-fanatecff/dkms/no-weak-modules.conf similarity index 100% rename from anda/system/xpadneo/dkms/no-weak-modules.conf rename to anda/system/hid-fanatecff/dkms/no-weak-modules.conf diff --git a/anda/system/hid-fanatecff/dkms/update.rhai b/anda/system/hid-fanatecff/dkms/update.rhai new file mode 100644 index 0000000000..ea1cd2b75b --- /dev/null +++ b/anda/system/hid-fanatecff/dkms/update.rhai @@ -0,0 +1,12 @@ +let c = sh("cat anda/system/hid-fanatecff/kmod-common/hid-fanatecff.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; +c.pop(); +rpm.global("commit", c); +if rpm.changed() { + rpm.release(); + let d = sh("cat anda/system/hid-fanatecff/kmod-common/hid-fanatecff.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; + d.pop(); + rpm.global("commitdate", d); + let v = sh("cat anda/system/hid-fanatecff/kmod-common/hid-fanatecff.spec | grep '%global ver' | sed -E 's/.+ver //'", #{"stdout": "piped"}).ctx.stdout; + v.pop(); + rpm.global("ver", v); +} diff --git a/anda/system/hid-fanatecff/kmod-common/anda.hcl b/anda/system/hid-fanatecff/kmod-common/anda.hcl new file mode 100644 index 0000000000..c456a9fdcb --- /dev/null +++ b/anda/system/hid-fanatecff/kmod-common/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "hid-fanatecff.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/system/hid-fanatecff/kmod-common/hid-fanatecff.spec b/anda/system/hid-fanatecff/kmod-common/hid-fanatecff.spec new file mode 100644 index 0000000000..65fb1a6304 --- /dev/null +++ b/anda/system/hid-fanatecff/kmod-common/hid-fanatecff.spec @@ -0,0 +1,52 @@ +%global commit dd78ef477c0dc90d59291a0197afcea26911fca8 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260528 +%global ver 0.2.3 + +Name: hid-fanatecff +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +Summary: Fanatec force feedback driver common files +License: GPL-2.0-only +URL: https://github.com/gotzl/%{name} +Source0: %{url}/archive/%{commit}.tar.gz#/%{name}-%{shortcommit}.tar.gz +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +Provides: %{name}-kmod-common = %{?epoch:%{epoch}:}%{version} +BuildArch: noarch + +%description +Driver to support Fanatec input devices, in particular force feedback of +various wheel-bases. This package contains common files shared between the +akmod and dkms variants. + +%package akmod-modules +Summary: Modules for Akmods +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +BuildArch: noarch + +%description akmod-modules +Akmods modules for the akmod-%{name} package. + +%prep +%autosetup -p1 -n %{name}-%{commit} + +echo hid-fanatec > %{name}.conf + +%install +# UDev rules: +install -Dpm644 fanatec.rules %{buildroot}%{_udevrulesdir}/99-fanatec.rules + +# Akmods modules +install -Dm644 %{name}.conf -t %{buildroot}%{_modulesloaddir} + +%files +%license LICENSE +%doc README.md +%{_udevrulesdir}/99-fanatec.rules + +%files akmod-modules +%{_modulesloaddir}/%{name}.conf + +%changelog +* Thu Apr 02 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/hid-fanatecff/kmod-common/update.rhai b/anda/system/hid-fanatecff/kmod-common/update.rhai new file mode 100644 index 0000000000..271ca3c6d8 --- /dev/null +++ b/anda/system/hid-fanatecff/kmod-common/update.rhai @@ -0,0 +1,8 @@ +rpm.global("commit", gh_commit("gotzl/hid-fanatecff")); +if rpm.changed() { + rpm.release(); + rpm.global("commitdate", date()); + let ver = gh("gotzl/hid-fanatecff"); + ver.crop(0); + rpm.global("ver", ver); +} diff --git a/anda/system/hid-tmff2/akmod/anda.hcl b/anda/system/hid-tmff2/akmod/anda.hcl new file mode 100644 index 0000000000..099d3e7707 --- /dev/null +++ b/anda/system/hid-tmff2/akmod/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + rpm { + spec = "hid-tmff2-kmod.spec" + } + labels { + mock = 1 + updbranch = 1 + } +} diff --git a/anda/system/hid-tmff2/akmod/hid-tmff2-kmod.spec b/anda/system/hid-tmff2/akmod/hid-tmff2-kmod.spec new file mode 100644 index 0000000000..1bcf714322 --- /dev/null +++ b/anda/system/hid-tmff2/akmod/hid-tmff2-kmod.spec @@ -0,0 +1,62 @@ +%global commit 8187920ed261c7024826f8204cc7bea45153a3da +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260310 +%global ver 0.83 + +%define buildforkernels akmod +%global debug_package %{nil} +%global modulename hid-tmff2 + +Name: %{modulename}-kmod +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 4%{?dist} +Summary: Thrustmaster Force Feedback kernel module +License: GPL-2.0-only +URL: https://github.com/Kimplul/%{modulename} +Source0: %{url}/archive/%{commit}.tar.gz#/%{modulename}-%{shortcommit}.tar.gz +BuildRequires: kmodtool +Requires: akmods +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Requires: %{modulename}-akmod-modules = %{?epoch:%{epoch}:}%{version} +Conflicts: dkms-%{modulename} + +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } + +%description +Linux kernel module for Thrustmaster T300RS, T248 and (experimental) TX, T128, +T598, T-GT II and TS-XW wheels. + +%prep +%{?kmodtool_check} +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null + +%autosetup -p1 -n %{modulename}-%{commit} + +# Stub out the hid-tminit submodule (superseded by in-kernel hid-thrustmaster) +mkdir -p deps/hid-tminit +printf 'all:\ninstall:\nclean:\n' > deps/hid-tminit/Makefile + +for kernel_version in %{?kernel_versions}; do + mkdir _kmod_build_${kernel_version%%___*} + cp -fr Kbuild Makefile src _kmod_build_${kernel_version%%___*}/ + cp -fr deps _kmod_build_${kernel_version%%___*}/ +done + +%build +for kernel_version in %{?kernel_versions}; do + pushd _kmod_build_${kernel_version%%___*}/ + %make_build KDIR="${kernel_version##*___}" + popd +done + +%install +for kernel_version in %{?kernel_versions}; do + mkdir -p %{buildroot}/%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ + install -p -m 0755 _kmod_build_${kernel_version%%___*}/*.ko \ + %{buildroot}/%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ +done +%{?akmod_install} + +%changelog +* Thu Apr 02 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/hid-tmff2/akmod/update.rhai b/anda/system/hid-tmff2/akmod/update.rhai new file mode 100644 index 0000000000..ef91d866eb --- /dev/null +++ b/anda/system/hid-tmff2/akmod/update.rhai @@ -0,0 +1,12 @@ +let c = sh("cat anda/system/hid-tmff2/kmod-common/hid-tmff2.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; +c.pop(); +rpm.global("commit", c); +if rpm.changed() { + rpm.release(); + let d = sh("cat anda/system/hid-tmff2/kmod-common/hid-tmff2.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; + d.pop(); + rpm.global("commitdate", d); + let v = sh("cat anda/system/hid-tmff2/kmod-common/hid-tmff2.spec | grep '%global ver' | sed -E 's/.+ver //'", #{"stdout": "piped"}).ctx.stdout; + v.pop(); + rpm.global("ver", v); +} diff --git a/anda/system/hid-tmff2/dkms/anda.hcl b/anda/system/hid-tmff2/dkms/anda.hcl new file mode 100644 index 0000000000..c7210010f5 --- /dev/null +++ b/anda/system/hid-tmff2/dkms/anda.hcl @@ -0,0 +1,10 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "dkms-hid-tmff2.spec" + } + labels { + mock = 1 + updbranch = 1 + } +} diff --git a/anda/system/hid-tmff2/dkms/dkms-hid-tmff2.conf b/anda/system/hid-tmff2/dkms/dkms-hid-tmff2.conf new file mode 100644 index 0000000000..02af43b5d1 --- /dev/null +++ b/anda/system/hid-tmff2/dkms/dkms-hid-tmff2.conf @@ -0,0 +1,9 @@ +PACKAGE_NAME="hid-tmff2" +PACKAGE_VERSION="__VERSION_STRING" +AUTOINSTALL="yes" + +MAKE[0]="'make' KDIR=\"$kernel_source_dir\"" +CLEAN[0]=true + +BUILT_MODULE_NAME[0]="hid-tmff-new" +DEST_MODULE_LOCATION[0]="/extra" diff --git a/anda/system/hid-tmff2/dkms/dkms-hid-tmff2.spec b/anda/system/hid-tmff2/dkms/dkms-hid-tmff2.spec new file mode 100644 index 0000000000..25fd8b46ec --- /dev/null +++ b/anda/system/hid-tmff2/dkms/dkms-hid-tmff2.spec @@ -0,0 +1,69 @@ +%global commit 8187920ed261c7024826f8204cc7bea45153a3da +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260310 +%global ver 0.83 + +%global debug_package %{nil} +%global modulename hid-tmff2 + +Name: dkms-%{modulename} +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 4%{?dist} +Summary: Thrustmaster Force Feedback kernel module (DKMS) +License: GPL-2.0-only +URL: https://github.com/Kimplul/%{modulename} +Source0: %{url}/archive/%{commit}.tar.gz#/%{modulename}-%{shortcommit}.tar.gz +Source1: %{name}.conf +Source2: no-weak-modules.conf +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Requires: dkms +Conflicts: akmod-%{modulename} +Provides: %{modulename}-kmod +BuildArch: noarch + +%description +Linux kernel module for Thrustmaster T300RS, T248 and (experimental) TX, T128, +T598, T-GT II and TS-XW wheels. + +%prep +%autosetup -p1 -n %{modulename}-%{commit} + +# Stub out the hid-tminit submodule (superseded by in-kernel hid-thrustmaster) +mkdir -p deps/hid-tminit +printf 'all:\ninstall:\nclean:\n' > deps/hid-tminit/Makefile + +cp -f %{SOURCE1} dkms/dkms.conf +sed -i -e 's/__VERSION_STRING/%{version}/g' dkms/dkms.conf + +%build + +%install +# Create empty tree: +mkdir -p %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ +cp -fr Kbuild Makefile src deps %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ +install -Dpm644 dkms/dkms.conf %{buildroot}%{_usrsrc}/%{modulename}-%{version}/dkms.conf + +%if 0%{?fedora} +# Do not enable weak modules support in Fedora (no kABI): +install -Dpm644 %{SOURCE2} %{buildroot}%{_sysconfdir}/dkms/%{modulename}.conf +%endif + +%post +dkms add -m %{modulename} -v %{version} -q --rpm_safe_upgrade || : +# Rebuild and make available for the currently running kernel: +dkms build -m %{modulename} -v %{version} -q || : +dkms install -m %{modulename} -v %{version} -q --force || : + +%preun +# Remove all versions from DKMS registry: +dkms remove -m %{modulename} -v %{version} -q --all --rpm_safe_upgrade || : + +%files +%{_usrsrc}/%{modulename}-%{version} +%if 0%{?fedora} +%{_sysconfdir}/dkms/%{modulename}.conf +%endif + +%changelog +* Thu Apr 02 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/hid-tmff2/dkms/no-weak-modules.conf b/anda/system/hid-tmff2/dkms/no-weak-modules.conf new file mode 100644 index 0000000000..24f6f95c96 --- /dev/null +++ b/anda/system/hid-tmff2/dkms/no-weak-modules.conf @@ -0,0 +1 @@ +NO_WEAK_MODULES="yes" diff --git a/anda/system/hid-tmff2/dkms/update.rhai b/anda/system/hid-tmff2/dkms/update.rhai new file mode 100644 index 0000000000..ef91d866eb --- /dev/null +++ b/anda/system/hid-tmff2/dkms/update.rhai @@ -0,0 +1,12 @@ +let c = sh("cat anda/system/hid-tmff2/kmod-common/hid-tmff2.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; +c.pop(); +rpm.global("commit", c); +if rpm.changed() { + rpm.release(); + let d = sh("cat anda/system/hid-tmff2/kmod-common/hid-tmff2.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; + d.pop(); + rpm.global("commitdate", d); + let v = sh("cat anda/system/hid-tmff2/kmod-common/hid-tmff2.spec | grep '%global ver' | sed -E 's/.+ver //'", #{"stdout": "piped"}).ctx.stdout; + v.pop(); + rpm.global("ver", v); +} diff --git a/anda/system/hid-tmff2/kmod-common/anda.hcl b/anda/system/hid-tmff2/kmod-common/anda.hcl new file mode 100644 index 0000000000..525110d0f3 --- /dev/null +++ b/anda/system/hid-tmff2/kmod-common/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "hid-tmff2.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/system/hid-tmff2/kmod-common/hid-tmff2.spec b/anda/system/hid-tmff2/kmod-common/hid-tmff2.spec new file mode 100644 index 0000000000..3e65880848 --- /dev/null +++ b/anda/system/hid-tmff2/kmod-common/hid-tmff2.spec @@ -0,0 +1,53 @@ +%global commit 8187920ed261c7024826f8204cc7bea45153a3da +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260310 +%global ver 0.83 + +Name: hid-tmff2 +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 4%{?dist} +Summary: Thrustmaster Force Feedback driver common files +License: GPL-2.0-only +URL: https://github.com/Kimplul/%{name} +Source0: %{url}/archive/%{commit}.tar.gz#/%{name}-%{shortcommit}.tar.gz +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +Provides: %{name}-kmod-common = %{?epoch:%{epoch}:}%{version} +BuildArch: noarch + +%description +Linux kernel module for Thrustmaster T300RS, T248 and (experimental) TX, T128, +T598, T-GT II and TS-XW wheels. This package contains common files shared +between the akmod and dkms variants. + +%package akmod-modules +Summary: Modules for Akmods +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +BuildArch: noarch + +%description akmod-modules +Akmods modules for the akmod-%{name} package. + +%prep +%autosetup -p1 -n %{name}-%{commit} + +# Extract module names from Kbuild for modules-load.d +echo hid-tmff-new > %{name}.conf + +%install +# UDev rules: +install -Dpm644 udev/99-thrustmaster.rules -t %{buildroot}%{_udevrulesdir}/ + +# Akmods modules +install -Dm644 %{name}.conf -t %{buildroot}%{_modulesloaddir} + +%files +%license LICENSE +%doc README.md +%{_udevrulesdir}/99-thrustmaster.rules + +%files akmod-modules +%{_modulesloaddir}/%{name}.conf + +%changelog +* Thu Apr 02 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/hid-tmff2/kmod-common/update.rhai b/anda/system/hid-tmff2/kmod-common/update.rhai new file mode 100644 index 0000000000..d89f5af60b --- /dev/null +++ b/anda/system/hid-tmff2/kmod-common/update.rhai @@ -0,0 +1,8 @@ +rpm.global("commit", gh_commit("Kimplul/hid-tmff2")); +if rpm.changed() { + rpm.release(); + rpm.global("commitdate", date()); + let ver = gh("Kimplul/hid-tmff2"); + ver.crop(0); + rpm.global("ver", ver); +} diff --git a/anda/system/ipu6-camera-hal/ipu6-camera-hal.spec b/anda/system/ipu6-camera-hal/ipu6-camera-hal.spec index 48f543741d..473ef021b5 100644 --- a/anda/system/ipu6-camera-hal/ipu6-camera-hal.spec +++ b/anda/system/ipu6-camera-hal/ipu6-camera-hal.spec @@ -3,13 +3,12 @@ %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global build_cflags %{__build_flags_lang_c} %{?_distro_extra_cflags} -Wno-alloc-size-larger-than %global build_cxxflags %{__build_flags_lang_cxx} %{?_distro_extra_cxxflags} -Wno-alloc-size-larger-than -%global __cmake_in_source_build 1 %global ver 1.0.1 Name: ipu6-camera-hal Summary: Hardware abstraction layer for Intel IPU6 -Version: %{ver}^%{commit_date}git.%{shortcommit} -Release: 1%?dist +Version: %{ver}^%{commit_date}git%{shortcommit} +Release: 2%{?dist} License: Apache-2.0 URL: https://github.com/intel/ipu6-camera-hal Source0: %{url}/archive/%{commit}/%{name}-%{shortcommit}.tar.gz @@ -49,13 +48,18 @@ This provides the necessary header files for IPU6 HAL development. %prep %autosetup -p1 -n %{name}-%{commit} -%build +%conf %cmake -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_SYSCONFDIR:PATH="%{_datadir}/defaults/etc" \ -DBUILD_CAMHAL_ADAPTOR=ON \ -DBUILD_CAMHAL_PLUGIN=ON \ -DIPU_VERSIONS="ipu6;ipu6ep;ipu6epmtl" \ - -DUSE_PG_LITE_PIPE=ON + -DUSE_PG_LITE_PIPE=ON \ +%if 0%{?fedora} >= 44 + -DCMAKE_POLICY_VERSION_MINIMUM=3.5 +%endif + +%build %cmake_build %install @@ -98,4 +102,5 @@ fi %changelog -%autochangelog +* Sat Apr 18 2026 Gilver E. - 1.0.1^20260121git9899efa +- Updated build diff --git a/anda/system/ipu6-drivers/akmod/intel-ipu6-kmod.spec b/anda/system/ipu6-drivers/akmod/intel-ipu6-kmod.spec index 5dd35d4a9d..621781dadf 100644 --- a/anda/system/ipu6-drivers/akmod/intel-ipu6-kmod.spec +++ b/anda/system/ipu6-drivers/akmod/intel-ipu6-kmod.spec @@ -1,8 +1,8 @@ %global buildforkernels akmod %global debug_package %{nil} -%global commit 51fe72485032c779a261430a8100eaad5d8696b8 +%global commit c313a9e539f49e983f8ff5d50c0ff192d3544a8a %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260328 +%global commit_date 20260605 %global modulename intel-ipu6 # Actual "release" version, currently unused as the release versions are back and forth on if on if they use 1.0.0 or 1.0.1 %global ver 1.0.1 @@ -25,7 +25,7 @@ Provides: %{name} = %{commitdate}.%{shortcommit}-%{release} Provides: akmod-%{modulename} = %{commitdate}.%{shortcommit}-%{release} %endif -%{expand:%(kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } %description This package enables the Intel IPU6 image processor. @@ -34,7 +34,7 @@ This package enables the Intel IPU6 image processor. # Error out if there was something wrong with kmodtool: %{?kmodtool_check} # Print kmodtool output for debugging purposes: -kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null %autosetup -p1 -n ipu6-drivers-%{commit} patch -p1 -i patches/*.patch diff --git a/anda/system/ipu6-drivers/dkms/dkms-intel-ipu6.spec b/anda/system/ipu6-drivers/dkms/dkms-intel-ipu6.spec index 972598fa9c..f03777736d 100644 --- a/anda/system/ipu6-drivers/dkms/dkms-intel-ipu6.spec +++ b/anda/system/ipu6-drivers/dkms/dkms-intel-ipu6.spec @@ -1,7 +1,7 @@ %global debug_package %{nil} -%global commit 51fe72485032c779a261430a8100eaad5d8696b8 +%global commit c313a9e539f49e983f8ff5d50c0ff192d3544a8a %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260328 +%global commit_date 20260605 %global modulename intel-ipu6 # Actual "release" version, currently unused as the release versions are back and forth on if on if they use 1.0.0 or 1.0.1 %global ver 1.0.1 diff --git a/anda/system/ipu6-drivers/kmod-common/intel-ipu6-drivers.spec b/anda/system/ipu6-drivers/kmod-common/intel-ipu6-drivers.spec index b30d3f2539..b4908253ab 100644 --- a/anda/system/ipu6-drivers/kmod-common/intel-ipu6-drivers.spec +++ b/anda/system/ipu6-drivers/kmod-common/intel-ipu6-drivers.spec @@ -1,7 +1,7 @@ %global debug_package %{nil} -%global commit 51fe72485032c779a261430a8100eaad5d8696b8 +%global commit c313a9e539f49e983f8ff5d50c0ff192d3544a8a %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260328 +%global commit_date 20260605 # Actual "release" version, currently unused as the release versions are back and forth on if on if they use 1.0.0 or 1.0.1 # Use this if they ever stop doing that I guess %global ver 1.0.1 diff --git a/anda/system/kcgroups-dmemcg/anda.hcl b/anda/system/kcgroups-dmemcg/anda.hcl new file mode 100644 index 0000000000..8f74540321 --- /dev/null +++ b/anda/system/kcgroups-dmemcg/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "kcgroups-dmemcg.spec" + } +} diff --git a/anda/system/kcgroups-dmemcg/kcgroups-dmemcg.spec b/anda/system/kcgroups-dmemcg/kcgroups-dmemcg.spec new file mode 100644 index 0000000000..3d2fb30c3b --- /dev/null +++ b/anda/system/kcgroups-dmemcg/kcgroups-dmemcg.spec @@ -0,0 +1,122 @@ +%global kcgroups_src kcgroups-kcgroups-dmemcg-experimental +%global booster_src kcgroups-booster-dmemcg-experimental + +Name: kcgroups-dmemcg +Version: 0.1 +Release: 2%{?dist} +Summary: KDE library to manipulate cgroups - fork adding dmem cgroup support +Packager: Kyle Gospodnetich +License: LGPL-2.1-or-later AND MIT AND CC0-1.0 +URL: https://github.com/pixelcluster/kcgroups + +Source0: %{url}/archive/refs/tags/kcgroups-dmemcg-experimental.tar.gz +Source1: %{url}/archive/refs/tags/booster-dmemcg-experimental.tar.gz +Source2: %{url}/tree/dmemcg/LICENSES + +BuildRequires: cmake +BuildRequires: extra-cmake-modules +BuildRequires: gcc-c++ +BuildRequires: qt6-qtbase-devel +BuildRequires: plasma-workspace-devel +BuildRequires: kf6-kwindowsystem-devel +BuildRequires: kf6-kconfig-devel +BuildRequires: kf6-kdbusaddons-devel +BuildRequires: kf6-kitemmodels-devel +BuildRequires: systemd-rpm-macros + +Requires: qt6-qtbase +Requires: kf6-kwindowsystem +Requires: kf6-kconfig +Requires: kf6-kdbusaddons + +Conflicts: kcgroups-git + +%description +KDE library to manipulate cgroups (and boost foreground apps). +This is a fork adding dmem cgroup support. + +%package -n plasma-foreground-booster-dmemcg +Summary: Plasma foreground booster with dmemcg support +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description -n plasma-foreground-booster-dmemcg +Plasma foreground booster utilizing dmem cgroup support. + +%package devel +Summary: Development files for kcgroups-dmemcg +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description devel +Development headers and CMake files for kcgroups-dmemcg. + +%prep +%setup -q -c -n %{name}-%{version} -a 0 -a 1 + +%build +mkdir kcgroups-build +mkdir kcgroups-install +mkdir booster-build + +pushd kcgroups-build +cmake ../%{kcgroups_src} \ + -DCMAKE_INSTALL_PREFIX=%{_prefix} \ + -DCMAKE_BUILD_TYPE=RelWithDebInfo \ + -DBUILD_WITH_QT6=ON +make %{?_smp_mflags} + +make DESTDIR=$(pwd)/../kcgroups-install install +popd + +pushd booster-build +export CMAKE_PREFIX_PATH=$(pwd)/../kcgroups-install%{_prefix} +cmake ../%{booster_src} \ + -DCMAKE_INSTALL_PREFIX=%{_prefix} \ + -DCMAKE_BUILD_TYPE=RelWithDebInfo \ + -DCMAKE_SKIP_INSTALL_RPATH=ON \ + -DBUILD_WITH_QT6=ON +make %{?_smp_mflags} + +%install +pushd kcgroups-build +make DESTDIR=%{buildroot} install +popd + +pushd booster-build +make DESTDIR=%{buildroot} install + +mkdir -p %{buildroot}%{_defaultlicensedir}/%{name} + +cp -r %{S:2} %{buildroot}%{_defaultlicensedir}/%{name}/ + +%post -n plasma-foreground-booster-dmemcg +%systemd_user_post plasma-foreground-booster.service + +%preun -n plasma-foreground-booster-dmemcg +%systemd_user_preun plasma-foreground-booster.service + +%postun -n plasma-foreground-booster-dmemcg +%systemd_user_postun_with_restart plasma-foreground-booster.service + +%files +%license %{_defaultlicensedir}/%{name}/LICENSES +%{_libdir}/libKF5CGroups.so.5* +%{_datadir}/qlogging-categories6/kcgroups.* + +%files devel +%{_includedir}/KF6/ +%{_libdir}/cmake/KF5CGroups/ +%{_libdir}/libKF5CGroups.so +%{_libdir}/qt6/mkspecs/modules/qt_KCGroups.pri + +%files -n plasma-foreground-booster-dmemcg +%{_bindir}/foreground_booster +%{_userunitdir}/plasma-foreground-booster.service +%{_datadir}/applications/org.kde.foreground-booster.desktop +%config(noreplace) %{_sysconfdir}/xdg/autostart/org.kde.foreground-booster.desktop + +%changelog +* Thu May 21 2026 Kyle Gospodnetich - 0.1-1 +- Brought to Terra repo unmodified + +* Fri Apr 17 2026 LionHeartP - 0.1-1 +- Initial spec derived from AUR PKGBUILD https://aur.archlinux.org/packages/plasma-foreground-booster-dmemcg diff --git a/anda/system/lact/anda.hcl b/anda/system/lact/anda.hcl new file mode 100644 index 0000000000..4b6530f15c --- /dev/null +++ b/anda/system/lact/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "lact.spec" + } +} diff --git a/anda/system/lact/lact.spec b/anda/system/lact/lact.spec new file mode 100644 index 0000000000..eaadb6f796 --- /dev/null +++ b/anda/system/lact/lact.spec @@ -0,0 +1,80 @@ +%global commit 454a6e24af830a1f434385fc3faebec19c0cbefa +%global shortcommit %(c=%{commit}; echo ${c:0:7}) + +%define appid io.github.ilya_zlobintsev.LACT + +Name: lact +Version: 0.9.0 +Release: 5%{?dist} +Summary: Linux GPU Configuration And Monitoring Tool +URL: https://github.com/ilya-zlobintsev/LACT +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz +SourceLicense: MIT +License: MIT AND Zlib AND (MIT OR Zlib OR Apache-2.0) AND MPL-2.0 AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND BSD-3-Clause AND CC0-1.0 AND CDLA-Permissive-2.0 AND LGPL-3.0-or-later AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 OR ISC OR MIT) AND (MIT OR Apache-2.0) AND Unicode-3.0 AND (0BSD OR MIT OR Apache-2.0) AND Apache-2.0 AND ISC AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR GPL-2.0-only) +BuildRequires: cargo-rpm-macros +BuildRequires: systemd-rpm-macros +BuildRequires: clang-devel +BuildRequires: libadwaita-devel +BuildRequires: pkgconfig(glib-2.0) +BuildRequires: pkgconfig(libdrm) +BuildRequires: pkgconfig(cairo) +BuildRequires: pkgconfig(cairo-gobject) +BuildRequires: pkgconfig(graphene-gobject-1.0) +BuildRequires: pkgconfig(hwdata) +BuildRequires: pkgconfig(gtk4) +BuildRequires: pkgconfig(gdk-pixbuf-2.0) + +Requires: gtk4 +Requires: libdrm +Requires: (ocl-icd or OpenCL-ICD-Loader) +Requires: hwdata +Requires: vulkan-tools +Requires: libadwaita + +Provides: LACT + +Packager: Owen Zimmerman + +%description +%{summary}. + +%prep +%autosetup -n LACT-%{version} +%cargo_prep_online + +%build +export VERGEN_GIT_SHA=%{shortcommit} +%cargo_build + +%install +install -Dm755 target/rpm/lact %{buildroot}%{_bindir}/lact +install -Dm644 res/lactd.service %{buildroot}%{_unitdir}/lactd.service +install -Dm644 res/%{appid}.desktop %{buildroot}%{_appsdir}/%{appid}.desktop +install -Dm644 res/%{appid}.png %{buildroot}%{_hicolordir}/512x512/apps/%{appid}.png +install -Dm644 res/%{appid}.svg %{buildroot}%{_scalableiconsdir}/%{appid}.svg +install -Dm644 res/%{appid}.metainfo.xml %{buildroot}%{_metainfodir}/%{appid}.metainfo.xml + +%{cargo_license_online} > LICENSE.dependencies + +%post +%systemd_post lactd.service + +%preun +%systemd_preun lactd.service + +%postun +%systemd_postun_with_restart lactd.service + +%files +%license LICENSE +%license LICENSE.dependencies +%{_bindir}/lact +%{_unitdir}/lactd.service +%{_appsdir}/%{appid}.desktop +%{_hicolordir}/512x512/apps/%{appid}.png +%{_scalableiconsdir}/%{appid}.svg +%{_metainfodir}/%{appid}.metainfo.xml + +%changelog +* Thu May 07 2026 Owen Zimmerman +- Initial commit diff --git a/anda/system/lact/update.rhai b/anda/system/lact/update.rhai new file mode 100644 index 0000000000..d92ec1933b --- /dev/null +++ b/anda/system/lact/update.rhai @@ -0,0 +1,7 @@ +let r = get("https://api.github.com/repos/ilya-zlobintsev/LACT/tags").json_arr(); + +rpm.version(r[0].name); + +if rpm.changed() { + rpm.global("commit", r[0].commit.sha); +} diff --git a/anda/system/limine/limine.spec b/anda/system/limine/limine.spec index b6dd0a1f6c..f1c270e17d 100644 --- a/anda/system/limine/limine.spec +++ b/anda/system/limine/limine.spec @@ -1,11 +1,12 @@ Name: limine -Version: 11.1.0 +Version: 12.3.3 Release: 1%{?dist} Summary: Modern, advanced, portable, multiprotocol bootloader License: BSD-2-Clause URL: https://limine-bootloader.org -Source0: https://codeberg.org/Limine/Limine/releases/download/v%version/limine-%version.tar.gz -Source1: https://codeberg.org/Limine/Limine/raw/tag/v%version/README.md +Source0: https://github.com/Limine-Bootloader/Limine/releases/download/v%{version}/%{name}-%{version}.tar.gz +Source1: https://github.com/Limine-Bootloader/Limine/releases/download/v%{version}/limine-%{version}.tar.gz.sig +Source2: https://raw.githubusercontent.com/Limine-Bootloader/Limine/refs/tags/v%{version}/README.md Packager: madonuko BuildRequires: nasm mtools llvm lld clang make @@ -15,10 +16,14 @@ the reference implementation for the Limine boot protocol. %prep %autosetup -cp %{S:1} . +cp %{S:2} . +gpg --keyserver hkps://keyserver.ubuntu.com --recv-keys 05D29860D0A0668AAEFB9D691F3C021BECA23821 +gpg --verify %{S:1} %{S:0} || exit 1 + +%conf +%configure --enable-all CC_FOR_TARGET=clang LD_FOR_TARGET=ld.lld %build -%configure --enable-all CC_FOR_TARGET=clang LD_FOR_TARGET=ld.lld %make_build %install @@ -26,9 +31,9 @@ cp %{S:1} . %files -%doc README.md 3RDPARTY.md FAQ.md CONFIG.md COPYING USAGE.md +%doc README.md 3RDPARTY.md FAQ.md CONFIG.md COPYING USAGE.md ChangeLog %license %_datadir/doc/limine/LICENSES/LicenseRef-scancode-bsd-no-disclaimer-unmodified.txt %license COPYING %_bindir/limine %_datadir/limine/ -%_mandir/man1/limine.1.gz +%_mandir/man1/limine.1.* diff --git a/anda/system/limine/update.rhai b/anda/system/limine/update.rhai index eb0821f62d..bd43fbeb2c 100644 --- a/anda/system/limine/update.rhai +++ b/anda/system/limine/update.rhai @@ -1,3 +1 @@ -import "andax/bump_extras.rhai" as bump; - -rpm.version(bump::codeberg("Limine/Limine")); +rpm.version(gh("limine-bootloader/limine")); diff --git a/anda/system/logitech-rs50-linux-driver/akmod/anda.hcl b/anda/system/logitech-rs50-linux-driver/akmod/anda.hcl new file mode 100644 index 0000000000..d2e96406cb --- /dev/null +++ b/anda/system/logitech-rs50-linux-driver/akmod/anda.hcl @@ -0,0 +1,10 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "logitech-rs50-linux-driver-kmod.spec" + } + labels { + mock = 1 + updbranch = 1 + } +} diff --git a/anda/system/logitech-rs50-linux-driver/akmod/logitech-rs50-linux-driver-kmod.spec b/anda/system/logitech-rs50-linux-driver/akmod/logitech-rs50-linux-driver-kmod.spec new file mode 100644 index 0000000000..8f3b2dec01 --- /dev/null +++ b/anda/system/logitech-rs50-linux-driver/akmod/logitech-rs50-linux-driver-kmod.spec @@ -0,0 +1,71 @@ +# The reason why this package is a separate from the main one despite using the same sources +# is because akmods use the srpm to build the kmod package, and if the kmod package is included +# in the main package, akmods will reinstall the userspace package every time the kernel is updated. + +%if 0%{?fedora} +%global buildforkernels akmod +%global debug_package %{nil} +%endif + +%global commit 1635bbd0ea044d1c3681b1843b5a0f3e878d0ed0 +%global commitdate 20260504 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global modulename logitech-rs50-linux-driver + +Name: %{modulename}-kmod +Version: 1.0^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +Summary: Linux kernel driver for the Logitech RS50 Direct Drive Wheel Base (USB ID 046d:c276) +License: GPL-2.0-only +URL: https://github.com/mescon/logitech-rs50-linux-driver +Source0: %{url}/archive/%{commit}.tar.gz#/%{modulename}-%{shortcommit}.tar.gz +BuildArch: x86_64 +BuildRequires: gcc +BuildRequires: make +BuildRequires: kmodtool +Packager: Luan V. + +Requires: akmods +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Requires: %{modulename}-akmod-modules = %{?epoch:%{epoch}:}%{version} +Requires: kernel-devel +Conflicts: dkms-%{modulename} + +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } + +%description +Linux kernel driver for the Logitech RS50 Direct Drive Wheel Base (USB ID 046d:c276). +This is a patched version of the hid-logitech-hidpp driver that adds RS50 support with force feedback (FF_CONSTANT) and exposes all G Hub settings via sysfs for runtime configuration. +Note: This driver replaces the in-kernel hid-logitech-hidpp module and continues to support all other Logitech HID++ devices (mice, keyboards, other racing wheels like the G29, G920, G923, etc.). + +%prep +# error out if there was something wrong with kmodtool +%{?kmodtool_check} + +# print kmodtool output for debugging purposes: +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null + +%setup -q -c -n %{modulename}-%{commit} + +mv %{modulename}-%{commit}/mainline/* %{modulename}-%{commit}/ + +for kernel_version in %{?kernel_versions} ; do + cp -a %{modulename}-%{commit} _kmod_build_${kernel_version%%___*} +done + +%build +for kernel_version in %{?kernel_versions} ; do + make V=1 %{?_smp_mflags} -C ${kernel_version##*___} M=${PWD}/_kmod_build_${kernel_version%%___*} VERSION=v%{version} modules +done + +%install +for kernel_version in %{?kernel_versions}; do + mkdir -p %{buildroot}%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ + install -D -m 755 _kmod_build_${kernel_version%%___*}/hid-logitech-hidpp.ko %{buildroot}%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ + chmod a+x %{buildroot}%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/hid-logitech-hidpp.ko +done +%{?akmod_install} + +%changelog +* Fri May 01 2026 Luan V. - 1.0^20260430git.df7f149-2 +- fix spec warnings: add Packager tag and remove autochangelog diff --git a/anda/system/logitech-rs50-linux-driver/akmod/update.rhai b/anda/system/logitech-rs50-linux-driver/akmod/update.rhai new file mode 100644 index 0000000000..d55bf59bae --- /dev/null +++ b/anda/system/logitech-rs50-linux-driver/akmod/update.rhai @@ -0,0 +1,9 @@ + let c = sh("cat anda/system/logitech-rs50-linux-driver/kmod-common/logitech-rs50-linux-driver.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; +c.pop(); +rpm.global("commit", c); +if rpm.changed() { + rpm.release(); + let d = sh("cat anda/system/logitech-rs50-linux-driver/kmod-common/logitech-rs50-linux-driver.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; + d.pop(); + rpm.global("commitdate", d); +} diff --git a/anda/system/logitech-rs50-linux-driver/dkms/anda.hcl b/anda/system/logitech-rs50-linux-driver/dkms/anda.hcl new file mode 100644 index 0000000000..352e5771ae --- /dev/null +++ b/anda/system/logitech-rs50-linux-driver/dkms/anda.hcl @@ -0,0 +1,10 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "dkms-logitech-rs50-linux-driver.spec" + } + labels { + updbranch = 1 + mock = 1 + } +} diff --git a/anda/system/logitech-rs50-linux-driver/dkms/dkms-logitech-rs50-linux-driver.spec b/anda/system/logitech-rs50-linux-driver/dkms/dkms-logitech-rs50-linux-driver.spec new file mode 100644 index 0000000000..b717e7a692 --- /dev/null +++ b/anda/system/logitech-rs50-linux-driver/dkms/dkms-logitech-rs50-linux-driver.spec @@ -0,0 +1,67 @@ +%global commit 1635bbd0ea044d1c3681b1843b5a0f3e878d0ed0 +%global debug_package %{nil} +%global modulename logitech-rs50-linux-driver +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260504 + +Name: dkms-%{modulename} +Version: 1.0^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +Summary: Linux kernel driver for the Logitech RS50 Direct Drive Wheel Base (USB ID 046d:c276) +License: GPL-2.0-only +URL: https://github.com/mescon/%{modulename} +Source0: %{url}/archive/%{commit}.tar.gz#/%{name}-%{shortcommit}.tar.gz +Source1: dkms.conf +BuildRequires: sed +BuildRequires: systemd-rpm-macros +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Requires: dkms +Conflicts: akmod-%{modulename} +Provides: %{name}-kmod-common = %{?epoch:%{epoch}:}%{version} +BuildArch: x86_64 +Provides: %{modulename}-kmod +Packager: Luan V. + +%description +Linux kernel driver for the Logitech RS50 Direct Drive Wheel Base (USB ID 046d:c276). +This is a patched version of the hid-logitech-hidpp driver that adds RS50 support with force feedback (FF_CONSTANT) and exposes all G Hub settings via sysfs for runtime configuration. +Note: This driver replaces the in-kernel hid-logitech-hidpp module and continues to support all other Logitech HID++ devices (mice, keyboards, other racing wheels like the G29, G920, G923, etc.). + +%package akmod-modules +Summary: Modules for Akmods +Requires: akmod-%{name} +BuildArch: noarch + +%description akmod-modules +Akmods modules for the akmod-%{name} package. + +%prep +%autosetup -p1 -n %{modulename}-%{commit} +pushd mainline +mkdir build +cp %{SOURCE1} ./dkms.conf +sed -i -e 's/__VERSION_STRING/%{version}/g' dkms.conf +popd + +%install +mkdir -p %{buildroot}%{_usrsrc}/%{modulename}-%{version} +cp -fr ./mainline/* %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ + +%post +dkms add -m %{modulename} -v %{version} -q --rpm_safe_upgrade || : +# Rebuild and make available for the currently running kernel: +dkms build -m %{modulename} -v %{version} -q || : +dkms install -m %{modulename} -v %{version} -q --force || : + +%preun +dkms remove -m %{modulename} -v %{version} -q --all --rpm_safe_upgrade || : + +%files +%{_usrsrc}/%{modulename}-%{version} + +%changelog +* Sun May 03 2026 Luan V. - 1.0^20260502git.7296717-2 +- ship our own dkms.conf, allowing full cleanup on uninstall +* Fri May 01 2026 Luan V. - 1.0^20260430git.df7f149-2 +- fix build due to upstream changes +- resolve spec warnings: add Packager tag, remove autochangelog diff --git a/anda/system/logitech-rs50-linux-driver/dkms/dkms.conf b/anda/system/logitech-rs50-linux-driver/dkms/dkms.conf new file mode 100644 index 0000000000..4ba86e19c6 --- /dev/null +++ b/anda/system/logitech-rs50-linux-driver/dkms/dkms.conf @@ -0,0 +1,10 @@ +PACKAGE_NAME="logitech-rs50-linux-driver" +PACKAGE_VERSION="__VERSION_STRING" +AUTOINSTALL="yes" + +MAKE[0]="'make' KVERSION=$kernelver" +CLEAN="make clean" + +BUILT_MODULE_NAME[0]="hid-logitech-hidpp" +DEST_MODULE_NAME[0]="hid-logitech-hidpp" +DEST_MODULE_LOCATION[0]="/extra" diff --git a/anda/system/logitech-rs50-linux-driver/dkms/update.rhai b/anda/system/logitech-rs50-linux-driver/dkms/update.rhai new file mode 100644 index 0000000000..d55bf59bae --- /dev/null +++ b/anda/system/logitech-rs50-linux-driver/dkms/update.rhai @@ -0,0 +1,9 @@ + let c = sh("cat anda/system/logitech-rs50-linux-driver/kmod-common/logitech-rs50-linux-driver.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; +c.pop(); +rpm.global("commit", c); +if rpm.changed() { + rpm.release(); + let d = sh("cat anda/system/logitech-rs50-linux-driver/kmod-common/logitech-rs50-linux-driver.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; + d.pop(); + rpm.global("commitdate", d); +} diff --git a/anda/system/logitech-rs50-linux-driver/kmod-common/README.terra.md b/anda/system/logitech-rs50-linux-driver/kmod-common/README.terra.md new file mode 100644 index 0000000000..c7816b651e --- /dev/null +++ b/anda/system/logitech-rs50-linux-driver/kmod-common/README.terra.md @@ -0,0 +1,4 @@ +# proton trueforce setup +the original tools/install-tf-shim.sh is available on your path as logi-rs50-proton-setup, +it will search for the logitech dlls at `/var/lib/logitech-rs50-linux-driver/`. +for which files to place there and how to get them, see README.md diff --git a/anda/system/logitech-rs50-linux-driver/kmod-common/anda.hcl b/anda/system/logitech-rs50-linux-driver/kmod-common/anda.hcl new file mode 100644 index 0000000000..e27e61ff9d --- /dev/null +++ b/anda/system/logitech-rs50-linux-driver/kmod-common/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "logitech-rs50-linux-driver.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/system/logitech-rs50-linux-driver/kmod-common/com.github.rs50.metainfo.xml b/anda/system/logitech-rs50-linux-driver/kmod-common/com.github.rs50.metainfo.xml new file mode 100644 index 0000000000..4ae8b777a3 --- /dev/null +++ b/anda/system/logitech-rs50-linux-driver/kmod-common/com.github.rs50.metainfo.xml @@ -0,0 +1,26 @@ + + com.github.rs50 + logitech rs50 linux driver + logitech-rs50-linux-driver + Linux kernel driver for the Logitech RS50 Direct Drive Wheel Base (USB ID 046d:c276). + +

+ Linux kernel driver for the Logitech RS50 Direct Drive Wheel Base (USB ID 046d:c276). + This is a patched version of the hid-logitech-hidpp driver that adds RS50 support with force feedback (FF_CONSTANT) and exposes all G Hub settings via sysfs for runtime configuration. + Note: This driver replaces the in-kernel hid-logitech-hidpp module and continues to support all other Logitech HID++ devices (mice, keyboards, other racing wheels like the G29, G920, G923, etc.). +

+
+ https://github.com/mescon/logitech-rs50-linux-driver + CC0-1.0 + + GPL-2.0-only + + + mescon + + + + + usb:v046dpc276* + +
diff --git a/anda/system/logitech-rs50-linux-driver/kmod-common/logi-rs50-proton-setup.sh b/anda/system/logitech-rs50-linux-driver/kmod-common/logi-rs50-proton-setup.sh new file mode 100644 index 0000000000..dd284ce8bb --- /dev/null +++ b/anda/system/logitech-rs50-linux-driver/kmod-common/logi-rs50-proton-setup.sh @@ -0,0 +1,2 @@ +#!/usr/bin/env sh +exec /usr/share/logitech-rs50-linux-driver/tools/install-tf-shim.sh "$@" diff --git a/anda/system/logitech-rs50-linux-driver/kmod-common/logitech-rs50-linux-driver.spec b/anda/system/logitech-rs50-linux-driver/kmod-common/logitech-rs50-linux-driver.spec new file mode 100644 index 0000000000..ca025a61ba --- /dev/null +++ b/anda/system/logitech-rs50-linux-driver/kmod-common/logitech-rs50-linux-driver.spec @@ -0,0 +1,84 @@ +%global commit 1635bbd0ea044d1c3681b1843b5a0f3e878d0ed0 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260504 + +Name: logitech-rs50-linux-driver +Version: 1.0^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +Summary: Linux kernel driver for the Logitech RS50 Direct Drive Wheel Base (USB ID 046d:c276) +License: GPL-2.0-only +URL: https://github.com/mescon/%{name} +Source0: %{url}/archive/%{commit}.tar.gz#/%{name}-%{shortcommit}.tar.gz +Source1: com.github.rs50.metainfo.xml +Source2: logi-rs50-proton-setup.sh +Source3: README.terra.md +BuildRequires: systemd-rpm-macros +Recommends: trueforce-sdk +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +Provides: %{name}-kmod-common = %{?epoch:%{epoch}:}%{version} +Packager: Luan V. +BuildArch: noarch + +%description +Linux kernel driver for the Logitech RS50 Direct Drive Wheel Base (USB ID 046d:c276). +This is a patched version of the hid-logitech-hidpp driver that adds RS50 support with force feedback (FF_CONSTANT) and exposes all G Hub settings via sysfs for runtime configuration. +Note: This driver replaces the in-kernel hid-logitech-hidpp module and continues to support all other Logitech HID++ devices (mice, keyboards, other racing wheels like the G29, G920, G923, etc.). + +%package akmod-modules +Summary: Modules for Akmods +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +BuildArch: noarch + +%description akmod-modules +Akmods modules for the akmod-%{name} package. + +%prep +%autosetup -p1 -n %{name}-%{commit} + +echo hid-logitech-hidpp > %{name}.conf +mv sdk/README.md README-SDK.md +cp %{SOURCE3} README.terra.md + +%install +install -Dm644 %{SOURCE1} %{buildroot}%{_datadir}/metainfo/com.github.rs50.metainfo.xml + +mkdir -p %{buildroot}%{_bindir} +mkdir -p %{buildroot}%{_datadir}/%{name}/tools +mkdir -p %{buildroot}%{_sharedstatedir}/%{name}/Logi +ln -sr %_sharedstatedir/%{name} %{buildroot}%{_datadir}/%{name}/sdk + +install -Dm755 tools/install-tf-shim.sh %{buildroot}%{_datadir}/%{name}/tools/ +install -Dm755 %{SOURCE2} %{buildroot}%{_bindir}/logi-rs50-proton-setup + +install -Dm644 udev/70-logitech-rs50.rules -t %{buildroot}%{_udevrulesdir}/ +install -D -m644 userspace/libtrueforce/udev/99-logitech-rs50-trueforce.rules %{buildroot}%{_udevrulesdir}/70-logitech-rs50-trueforce.rules + +# Akmods modules +install -Dm644 %{name}.conf -t %{buildroot}%{_modulesloaddir} + +%posttrans +### Skip triggering if udevd isn't accessible +if [ -S /run/udev/control ]; then + /usr/bin/udevadm control --reload + /usr/bin/udevadm trigger --subsystem-match=hidraw +fi + + +%files +%doc README.terra.md README.md README-SDK.md CHANGELOG.md rs-wheel-hub-button-layout.png docs/* +%{_datadir}/metainfo/com.github.rs50.metainfo.xml +%{_udevrulesdir}/70-logitech-rs50.rules +%{_udevrulesdir}/70-logitech-rs50-trueforce.rules +%{_datadir}/%{name}/tools/* +%{_bindir}/logi-rs50-proton-setup +%{_datadir}/%{name}/sdk +%dir %{_sharedstatedir}/%{name}/Logi + +%files akmod-modules +%{_modulesloaddir}/%{name}.conf + +%changelog +* Fri May 01 2026 Luan V. - 1.0^20260430git.df7f149-2 +- add logi-rs50-proton-setup script together with a readme which explains where to put the necessary files. +- and add udev rules together with a posttrans script to reload and trigger devices on install +- fix spec warnings: add Packager tag and remove autochangelog diff --git a/anda/system/logitech-rs50-linux-driver/kmod-common/update.rhai b/anda/system/logitech-rs50-linux-driver/kmod-common/update.rhai new file mode 100644 index 0000000000..82cd36e3e9 --- /dev/null +++ b/anda/system/logitech-rs50-linux-driver/kmod-common/update.rhai @@ -0,0 +1,5 @@ +rpm.global("commit", gh_commit("mescon/logitech-rs50-linux-driver")); +if rpm.changed() { + rpm.release(); + rpm.global("commitdate", date()); +} diff --git a/anda/system/mediatek-mt7927/dkms/LICENSE b/anda/system/mediatek-mt7927/dkms/LICENSE new file mode 100644 index 0000000000..2f0f7e4503 --- /dev/null +++ b/anda/system/mediatek-mt7927/dkms/LICENSE @@ -0,0 +1,344 @@ +The GNU General Public License (GPL) + +Version 2, June 1991 + +Everyone is permitted to copy and distribute verbatim copies of this license +document, but changing it is not allowed. + +Preamble + +The licenses for most software are designed to take away your freedom to share +and change it. By contrast, the GNU General Public License is intended to +guarantee your freedom to share and change free software--to make sure the +software is free for all its users. This General Public License applies to +most of the Free Software Foundation's software and to any other program whose +authors commit to using it. (Some other Free Software Foundation software is +covered by the GNU Library General Public License instead.) You can apply it to +your programs, too. + +When we speak of free software, we are referring to freedom, not price. Our +General Public Licenses are designed to make sure that you have the freedom to +distribute copies of free software (and charge for this service if you wish), +that you receive source code or can get it if you want it, that you can change +the software or use pieces of it in new free programs; and that you know you +can do these things. + +To protect your rights, we need to make restrictions that forbid anyone to deny +you these rights or to ask you to surrender the rights. These restrictions +translate to certain responsibilities for you if you distribute copies of the +software, or if you modify it. + +For example, if you distribute copies of such a program, whether gratis or for +a fee, you must give the recipients all the rights that you have. You must +make sure that they, too, receive or can get the source code. And you must +show them these terms so they know their rights. + +We protect your rights with two steps: (1) copyright the software, and (2) +offer you this license which gives you legal permission to copy, distribute +and/or modify the software. + +Also, for each author's protection and ours, we want to make certain that +everyone understands that there is no warranty for this free software. If the +software is modified by someone else and passed on, we want its recipients to +know that what they have is not the original, so that any problems introduced +by others will not reflect on the original authors' reputations. + +Finally, any free program is threatened constantly by software patents. We +wish to avoid the danger that redistributors of a free program will +individually obtain patent licenses, in effect making the program proprietary. +To prevent this, we have made it clear that any patent must be licensed for +everyone's free use or not licensed at all. + +The precise terms and conditions for copying, distribution and modification +follow. + +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + +0. This License applies to any program or other work which contains a notice +placed by the copyright holder saying it may be distributed under the terms of +this General Public License. The "Program", below, refers to any such program +or work, and a "work based on the Program" means either the Program or any +derivative work under copyright law: that is to say, a work containing the +Program or a portion of it, either verbatim or with modifications and/or +translated into another language. (Hereinafter, translation is included +without limitation in the term "modification".) Each licensee is addressed as +"you". + +Activities other than copying, distribution and modification are not covered by +this License; they are outside its scope. The act of running the Program is +not restricted, and the output from the Program is covered only if its contents +constitute a work based on the Program (independent of having been made by +running the Program). Whether that is true depends on what the Program does. + +1. You may copy and distribute verbatim copies of the Program's source code as +you receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice and +disclaimer of warranty; keep intact all the notices that refer to this License +and to the absence of any warranty; and give any other recipients of the +Program a copy of this License along with the Program. + +You may charge a fee for the physical act of transferring a copy, and you may +at your option offer warranty protection in exchange for a fee. + +2. You may modify your copy or copies of the Program or any portion of it, thus +forming a work based on the Program, and copy and distribute such modifications +or work under the terms of Section 1 above, provided that you also meet all of +these conditions: + + a) You must cause the modified files to carry prominent notices stating + that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in whole or + in part contains or is derived from the Program or any part thereof, to be + licensed as a whole at no charge to all third parties under the terms of + this License. + + c) If the modified program normally reads commands interactively when run, + you must cause it, when started running for such interactive use in the + most ordinary way, to print or display an announcement including an + appropriate copyright notice and a notice that there is no warranty (or + else, saying that you provide a warranty) and that users may redistribute + the program under these conditions, and telling the user how to view a copy + of this License. (Exception: if the Program itself is interactive but does + not normally print such an announcement, your work based on the Program is + not required to print an announcement.) + +These requirements apply to the modified work as a whole. If identifiable +sections of that work are not derived from the Program, and can be reasonably +considered independent and separate works in themselves, then this License, and +its terms, do not apply to those sections when you distribute them as separate +works. But when you distribute the same sections as part of a whole which is a +work based on the Program, the distribution of the whole must be on the terms +of this License, whose permissions for other licensees extend to the entire +whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest your +rights to work written entirely by you; rather, the intent is to exercise the +right to control the distribution of derivative or collective works based on +the Program. + +In addition, mere aggregation of another work not based on the Program with the +Program (or with a work based on the Program) on a volume of a storage or +distribution medium does not bring the other work under the scope of this +License. + +3. You may copy and distribute the Program (or a work based on it, under +Section 2) in object code or executable form under the terms of Sections 1 and +2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable source + code, which must be distributed under the terms of Sections 1 and 2 above + on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three years, to + give any third party, for a charge no more than your cost of physically + performing source distribution, a complete machine-readable copy of the + corresponding source code, to be distributed under the terms of Sections 1 + and 2 above on a medium customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer to + distribute corresponding source code. (This alternative is allowed only + for noncommercial distribution and only if you received the program in + object code or executable form with such an offer, in accord with + Subsection b above.) + +The source code for a work means the preferred form of the work for making +modifications to it. For an executable work, complete source code means all +the source code for all modules it contains, plus any associated interface +definition files, plus the scripts used to control compilation and installation +of the executable. However, as a special exception, the source code +distributed need not include anything that is normally distributed (in either +source or binary form) with the major components (compiler, kernel, and so on) +of the operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the source +code from the same place counts as distribution of the source code, even though +third parties are not compelled to copy the source along with the object code. + +4. You may not copy, modify, sublicense, or distribute the Program except as +expressly provided under this License. Any attempt otherwise to copy, modify, +sublicense or distribute the Program is void, and will automatically terminate +your rights under this License. However, parties who have received copies, or +rights, from you under this License will not have their licenses terminated so +long as such parties remain in full compliance. + +5. You are not required to accept this License, since you have not signed it. +However, nothing else grants you permission to modify or distribute the Program +or its derivative works. These actions are prohibited by law if you do not +accept this License. Therefore, by modifying or distributing the Program (or +any work based on the Program), you indicate your acceptance of this License to +do so, and all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + +6. Each time you redistribute the Program (or any work based on the Program), +the recipient automatically receives a license from the original licensor to +copy, distribute or modify the Program subject to these terms and conditions. +You may not impose any further restrictions on the recipients' exercise of the +rights granted herein. You are not responsible for enforcing compliance by +third parties to this License. + +7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), conditions +are imposed on you (whether by court order, agreement or otherwise) that +contradict the conditions of this License, they do not excuse you from the +conditions of this License. If you cannot distribute so as to satisfy +simultaneously your obligations under this License and any other pertinent +obligations, then as a consequence you may not distribute the Program at all. +For example, if a patent license would not permit royalty-free redistribution +of the Program by all those who receive copies directly or indirectly through +you, then the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply and +the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any patents or +other property right claims or to contest validity of any such claims; this +section has the sole purpose of protecting the integrity of the free software +distribution system, which is implemented by public license practices. Many +people have made generous contributions to the wide range of software +distributed through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing to +distribute software through any other system and a licensee cannot impose that +choice. + +This section is intended to make thoroughly clear what is believed to be a +consequence of the rest of this License. + +8. If the distribution and/or use of the Program is restricted in certain +countries either by patents or by copyrighted interfaces, the original +copyright holder who places the Program under this License may add an explicit +geographical distribution limitation excluding those countries, so that +distribution is permitted only in or among countries not thus excluded. In +such case, this License incorporates the limitation as if written in the body +of this License. + +9. The Free Software Foundation may publish revised and/or new versions of the +General Public License from time to time. Such new versions will be similar in +spirit to the present version, but may differ in detail to address new problems +or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any later +version", you have the option of following the terms and conditions either of +that version or of any later version published by the Free Software Foundation. +If the Program does not specify a version number of this License, you may +choose any version ever published by the Free Software Foundation. + +10. If you wish to incorporate parts of the Program into other free programs +whose distribution conditions are different, write to the author to ask for +permission. For software which is copyrighted by the Free Software Foundation, +write to the Free Software Foundation; we sometimes make exceptions for this. +Our decision will be guided by the two goals of preserving the free status of +all derivatives of our free software and of promoting the sharing and reuse of +software generally. + +NO WARRANTY + +11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR +THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE +STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE +PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND +PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, +YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + +12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL +ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE +PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR +INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA +BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER +OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. + +END OF TERMS AND CONDITIONS + +How to Apply These Terms to Your New Programs + +If you develop a new program, and you want it to be of the greatest possible +use to the public, the best way to achieve this is to make it free software +which everyone can redistribute and change under these terms. + +To do so, attach the following notices to the program. It is safest to attach +them to the start of each source file to most effectively convey the exclusion +of warranty; and each file should have at least the "copyright" line and a +pointer to where the full notice is found. + + One line to give the program's name and a brief idea of what it does. + + Copyright (C) + + This program is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this when it +starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author Gnomovision comes + with ABSOLUTELY NO WARRANTY; for details type 'show w'. This is free + software, and you are welcome to redistribute it under certain conditions; + type 'show c' for details. + +The hypothetical commands 'show w' and 'show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may be +called something other than 'show w' and 'show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your school, +if any, to sign a "copyright disclaimer" for the program, if necessary. Here +is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + 'Gnomovision' (which makes passes at compilers) written by James Hacker. + + signature of Ty Coon, 1 April 1989 + + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General Public +License instead of this License. + + +"CLASSPATH" EXCEPTION TO THE GPL + +Certain source files distributed by Oracle America and/or its affiliates are +subject to the following clarification and special exception to the GPL, but +only where Oracle has expressly included in the particular source file's header +the words "Oracle designates this particular file as subject to the "Classpath" +exception as provided by Oracle in the LICENSE file that accompanied this code." + + Linking this library statically or dynamically with other modules is making + a combined work based on this library. Thus, the terms and conditions of + the GNU General Public License cover the whole combination. + + As a special exception, the copyright holders of this library give you + permission to link this library with independent modules to produce an + executable, regardless of the license terms of these independent modules, + and to copy and distribute the resulting executable under terms of your + choice, provided that you also meet, for each linked independent module, + the terms and conditions of the license of that module. An independent + module is a module which is not derived from or based on this library. If + you modify this library, you may extend this exception to your version of + the library, but you are not obligated to do so. If you do not wish to do + so, delete this exception statement from your version. diff --git a/anda/system/mediatek-mt7927/dkms/anda.hcl b/anda/system/mediatek-mt7927/dkms/anda.hcl new file mode 100644 index 0000000000..4e13d18406 --- /dev/null +++ b/anda/system/mediatek-mt7927/dkms/anda.hcl @@ -0,0 +1,10 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "dkms-mediatek-mt7927.spec" + } + labels { + updbranch = 1 + mock = 1 + } +} diff --git a/anda/system/mediatek-mt7927/dkms/dkms-mediatek-mt7927.spec b/anda/system/mediatek-mt7927/dkms/dkms-mediatek-mt7927.spec new file mode 100644 index 0000000000..4e9063190c --- /dev/null +++ b/anda/system/mediatek-mt7927/dkms/dkms-mediatek-mt7927.spec @@ -0,0 +1,72 @@ +%global modulename mediatek-mt7927 + +Name: dkms-%{modulename} +Version: 2.11.1 +Release: 1%{?dist} +Summary: DKMS WiFi 7 and Bluetooth 5.4 drivers for MediaTek MT7927 (Filogic 380) +License: GPL-2.0-only +URL: https://github.com/jetm/mediatek-mt7927-dkms +BuildArch: noarch + +Source0: https://github.com/jetm/mediatek-mt7927-dkms/archive/refs/tags/v%{version}-1.tar.gz +Source1: LICENSE + +BuildRequires: make +BuildRequires: curl +BuildRequires: python3 + +Requires: dkms +Requires(post): dkms +Requires(preun): dkms + +Conflicts: btusb-mt7925-dkms +Conflicts: btusb-mt7927-dkms + +Packager: Cypress Reed + +%description +DKMS package for MediaTek MT7927 (Filogic 380) combo WiFi 7 + BT 5.4. + +Builds out-of-tree btusb/btmtk (Bluetooth) and mt76 (WiFi) kernel modules +with device IDs and patches not yet in mainline Linux. Supports kernels 6.17+. + +When MT7927 support is merged into mainline kernels and linux-firmware, +remove this package to use the in-tree drivers. + +%prep +%autosetup -n %{modulename}-dkms-%{version}-1 + +%build +%__make download +%__make sources SRCDIR=%{_builddir}/%{modulename}-dkms-%{version}-1/_build + +%install +%make_install \ + SRCDIR=%{_builddir}/%{modulename}-dkms-%{version}-1/_build \ + DESTDIR=%{buildroot} \ + VERSION=%{version} +cp %{SOURCE1} -t . + +%post +dkms add -m %{modulename} -v %{version} -q --rpm_safe_upgrade || : +dkms build -m %{modulename} -v %{version} -q || : +dkms install -m %{modulename} -v %{version} -q --force || : + +%preun +dkms remove -m %{modulename} -v %{version} -q --all --rpm_safe_upgrade || : + +%files +%license LICENSE +%{_usrsrc}/%{modulename}-%{version} +%dir /usr/lib/firmware/mediatek +%dir /usr/lib/firmware/mediatek/mt7927 +/usr/lib/firmware/mediatek/mt7927/BT_RAM_CODE_MT6639_2_1_hdr.bin +/usr/lib/firmware/mediatek/mt7927/WIFI_MT6639_PATCH_MCU_2_1_hdr.bin +/usr/lib/firmware/mediatek/mt7927/WIFI_RAM_CODE_MT6639_2_1.bin + +%changelog +* Thu May 21 2026 Willow C Reed +- Port to Terra from https://github.com/jetm/mediatek-mt7927-dkms + +* Sun Mar 29 2026 Eder Sánchez - 2.9-1 +- See CHANGELOG.md for detailed release notes diff --git a/anda/system/mediatek-mt7927/dkms/update.rhai b/anda/system/mediatek-mt7927/dkms/update.rhai new file mode 100644 index 0000000000..df75f258e3 --- /dev/null +++ b/anda/system/mediatek-mt7927/dkms/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("jetm/mediatek-mt7927-dkms")); diff --git a/anda/system/nct6687d/akmod/anda.hcl b/anda/system/nct6687d/akmod/anda.hcl new file mode 100644 index 0000000000..644fad7c33 --- /dev/null +++ b/anda/system/nct6687d/akmod/anda.hcl @@ -0,0 +1,10 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "nct6687d-kmod.spec" + } + labels { + mock = 1 + updbranch = 1 + } +} diff --git a/anda/system/nct6687d/akmod/nct6687d-kmod.spec b/anda/system/nct6687d/akmod/nct6687d-kmod.spec new file mode 100644 index 0000000000..7db141427f --- /dev/null +++ b/anda/system/nct6687d/akmod/nct6687d-kmod.spec @@ -0,0 +1,69 @@ +# The reason why this package is a separate from the main one despite using the same sources +# is because akmods use the srpm to build the kmod package, and if the kmod package is included +# in the main package, akmods will reinstall the userspace package every time the kernel is updated. + +%if 0%{?fedora} +%global buildforkernels akmod +%global debug_package %{nil} +%endif + +%global commit e069fac2107fb88d30be41375bd2c35ef17e3677 +%global commitdate 20260603 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global modulename nct6687d + +Name: %{modulename}-kmod +Version: 1.0^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +Summary: Linux kernel driver for the NCT6687D hardware monitoring chip +License: GPL-2.0-or-later +URL: https://github.com/Fred78290/%{modulename} +Source0: %{url}/archive/%{commit}.tar.gz#/%{modulename}-%{shortcommit}.tar.gz +BuildArch: x86_64 +BuildRequires: gcc +BuildRequires: make +BuildRequires: kmodtool +BuildRequires: elfutils-libelf-devel + +Requires: akmods +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Requires: %{modulename}-akmod-modules = %{?epoch:%{epoch}:}%{version} +Requires: kernel-devel +Conflicts: dkms-%{modulename} + +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } + +%description +Linux kernel driver for the NCT6687D hardware monitoring chip. +This kernel module permit to recognize the chipset Nuvoton NCT6687-R in lm-sensors package. This sensor is present on some B550 motherboard such as MSI or ASUS. +The implementation is minimalist and was done by reverse coding of Windows 10 source code from LibreHardwareMonitor + +%prep +# error out if there was something wrong with kmodtool +%{?kmodtool_check} + +# print kmodtool output for debugging purposes: +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null + +%setup -q -c -n %{modulename}-%{commit} + +for kernel_version in %{?kernel_versions} ; do + cp -a %{modulename}-%{commit} _kmod_build_${kernel_version%%___*} +done + +%build +for kernel_version in %{?kernel_versions}; do + make V=0 %{?_smp_mflags} -C "${kernel_version##*___}" M=${PWD}/_kmod_build_${kernel_version%%___*} +done + +%install +for kernel_version in %{?kernel_versions}; do + mkdir -p %{buildroot}%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ + install -D -m 755 _kmod_build_${kernel_version%%___*}/*.ko %{buildroot}%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ + chmod a+x %{buildroot}%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/*.ko +done +%{?akmod_install} + +%changelog +* Sat Apr 11 2026 Luan Oliveira - 1.0^20260411git.cedda8b-1 +- Initial package diff --git a/anda/system/nct6687d/akmod/update.rhai b/anda/system/nct6687d/akmod/update.rhai new file mode 100644 index 0000000000..f651cd8bc4 --- /dev/null +++ b/anda/system/nct6687d/akmod/update.rhai @@ -0,0 +1,9 @@ + let c = sh("cat anda/system/nct6687d/kmod-common/nct6687d.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; +c.pop(); +rpm.global("commit", c); +if rpm.changed() { + rpm.release(); + let d = sh("cat anda/system/nct6687d/kmod-common/nct6687d.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; + d.pop(); + rpm.global("commitdate", d); +} diff --git a/anda/system/nct6687d/dkms/anda.hcl b/anda/system/nct6687d/dkms/anda.hcl new file mode 100644 index 0000000000..eda27e4852 --- /dev/null +++ b/anda/system/nct6687d/dkms/anda.hcl @@ -0,0 +1,10 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "dkms-nct6687d.spec" + } + labels { + updbranch = 1 + mock = 1 + } +} diff --git a/anda/system/nct6687d/dkms/dkms-nct6687d.spec b/anda/system/nct6687d/dkms/dkms-nct6687d.spec new file mode 100644 index 0000000000..3d2bfa1ea4 --- /dev/null +++ b/anda/system/nct6687d/dkms/dkms-nct6687d.spec @@ -0,0 +1,61 @@ +%global commit e069fac2107fb88d30be41375bd2c35ef17e3677 +%global debug_package %{nil} +%global modulename nct6687d +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260603 + +Name: dkms-%{modulename} +Version: 1.0^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +Summary: Linux kernel driver for the NCT6687D hardware monitoring chip +License: GPL-2.0-or-later +URL: https://github.com/Fred78290/%{modulename} +Source0: %{url}/archive/%{commit}.tar.gz#/%{name}-%{shortcommit}.tar.gz +Patch0: dkms-version.patch +BuildRequires: sed +BuildRequires: systemd-rpm-macros +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Requires: dkms +Conflicts: akmod-%{modulename} +Provides: %{name}-kmod-common = %{?epoch:%{epoch}:}%{version} +BuildArch: x86_64 +Provides: %{modulename}-kmod + +%description +Linux kernel driver for the NCT6687D hardware monitoring chip. +This kernel module permit to recognize the chipset Nuvoton NCT6687-R in lm-sensors package. This sensor is present on some B550 motherboard such as MSI or ASUS. +The implementation is minimalist and was done by reverse coding of Windows 10 source code from LibreHardwareMonitor + +%package akmod-modules +Summary: Modules for Akmods +Requires: akmod-%{name} +BuildArch: noarch + +%description akmod-modules +Akmods modules for the akmod-%{name} package. + +%prep +%autosetup -p1 -n %{modulename}-%{commit} +sed -i -e 's/__VERSION_STRING/%{version}/g' dkms.conf + +%install +mkdir -p %{buildroot}%{_usrsrc}/%{modulename}-%{version} +cp -fr ./ %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ + +%post +dkms add -m %{modulename} -v %{version} -q --rpm_safe_upgrade || : +# Rebuild and make available for the currently running kernel: +dkms build -m %{modulename} -v %{version} -q || : +dkms install -m %{modulename} -v %{version} -q --force || : + +%preun +dkms remove -m %{modulename} -v %{version} -q --all --rpm_safe_upgrade || : + +%files +%{_usrsrc}/%{modulename}-%{version} + + + +%changelog +* Sat Apr 11 2026 Luan Oliveira - 1.0^20260411git.cedda8b-1 +- Initial package diff --git a/anda/system/nct6687d/dkms/dkms-version.patch b/anda/system/nct6687d/dkms/dkms-version.patch new file mode 100644 index 0000000000..fe96fc77a8 --- /dev/null +++ b/anda/system/nct6687d/dkms/dkms-version.patch @@ -0,0 +1,11 @@ +diff --git a/dkms.conf b/dkms.conf +index d8fc2b1..d315428 100644 +--- a/dkms.conf ++++ b/dkms.conf +@@ -1,5 +1,5 @@ + PACKAGE_NAME="nct6687d" +-PACKAGE_VERSION="1" ++PACKAGE_VERSION="__VERSION_STRING" + MAKE[0]="make kver=${kernelver} dkms/build" + BUILT_MODULE_NAME[0]="nct6687" + DEST_MODULE_LOCATION[0]="/kernel/drivers/hwmon/" diff --git a/anda/system/nct6687d/dkms/update.rhai b/anda/system/nct6687d/dkms/update.rhai new file mode 100644 index 0000000000..f651cd8bc4 --- /dev/null +++ b/anda/system/nct6687d/dkms/update.rhai @@ -0,0 +1,9 @@ + let c = sh("cat anda/system/nct6687d/kmod-common/nct6687d.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; +c.pop(); +rpm.global("commit", c); +if rpm.changed() { + rpm.release(); + let d = sh("cat anda/system/nct6687d/kmod-common/nct6687d.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; + d.pop(); + rpm.global("commitdate", d); +} diff --git a/anda/system/nct6687d/kmod-common/anda.hcl b/anda/system/nct6687d/kmod-common/anda.hcl new file mode 100644 index 0000000000..2a426355a3 --- /dev/null +++ b/anda/system/nct6687d/kmod-common/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "nct6687d.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/system/nct6687d/kmod-common/com.github.nct6687d.metainfo.xml b/anda/system/nct6687d/kmod-common/com.github.nct6687d.metainfo.xml new file mode 100644 index 0000000000..0e56f8305d --- /dev/null +++ b/anda/system/nct6687d/kmod-common/com.github.nct6687d.metainfo.xml @@ -0,0 +1,22 @@ + + com.github.nct6687d + NCT6687D Kernel module + nct6687d + Linux kernel driver for the NCT6687D hardware monitoring chip. + +

+This kernel module permit to recognize the chipset Nuvoton NCT6687-R in lm-sensors package. This sensor is present on some B550 motherboard such as MSI or ASUS. + +The implementation is minimalist and was done by reverse coding of Windows 10 source code from LibreHardwareMonitor. +

+ + https://github.com/Fred78290/nct6687d + CC0-1.0 + + GPL-2.0-or-later + + + Fred78290 + + + diff --git a/anda/system/nct6687d/kmod-common/nct6687d.spec b/anda/system/nct6687d/kmod-common/nct6687d.spec new file mode 100644 index 0000000000..584727b3c5 --- /dev/null +++ b/anda/system/nct6687d/kmod-common/nct6687d.spec @@ -0,0 +1,49 @@ +%global commit e069fac2107fb88d30be41375bd2c35ef17e3677 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260603 + +Name: nct6687d +Version: 1.0^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +Summary: Linux kernel driver for the NCT6687D hardware monitoring chip +License: GPL-2.0-or-later +URL: https://github.com/Fred78290/%{name} +Source0: %{url}/archive/%{commit}.tar.gz#/%{name}-%{shortcommit}.tar.gz +Source1: com.github.nct6687d.metainfo.xml +BuildRequires: systemd-rpm-macros +BuildRequires: anda-srpm-macros +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +Provides: %{name}-kmod-common = %{?epoch:%{epoch}:}%{version} +Obsoletes: %{name}-akmods-modules < %{evr} +BuildArch: noarch + +%description +Linux kernel driver for the NCT6687D hardware monitoring chip. +This kernel module permit to recognize the chipset Nuvoton NCT6687-R in lm-sensors package. This sensor is present on some B550 motherboard such as MSI or ASUS. +The implementation is minimalist and was done by reverse coding of Windows 10 source code from LibreHardwareMonitor + +%prep +%autosetup -p1 -n %{name}-%{commit} + +echo nct6687 > %{name}.conf +echo "blacklist nct6683" > nct6683_blacklist.conf + +%install +install -Dm644 %{SOURCE1} %{buildroot}%{_datadir}/metainfo/com.github.nct6687d.metainfo.xml + +# Akmods modules +install -Dm 0644 %{name}.conf -t %{buildroot}%{_modulesloaddir} +install -Dm 0644 nct6683_blacklist.conf -t %{buildroot}%{_modprobedir} + +%files +%license LICENSE +%doc README.md images/* TESTING_RESULTS.md +%{_modprobedir}/nct6683_blacklist.conf +%{_datadir}/metainfo/com.github.nct6687d.metainfo.xml +%{_modulesloaddir}/%{name}.conf + +%changelog +* Wed May 06 2026 Luan Oliveira - 1.0^20260411git.cedda8b-2 +- fix module load file +* Sat Apr 11 2026 Luan Oliveira - 1.0^20260411git.cedda8b-1 +- Initial package diff --git a/anda/system/nct6687d/kmod-common/update.rhai b/anda/system/nct6687d/kmod-common/update.rhai new file mode 100644 index 0000000000..03c78a4cb4 --- /dev/null +++ b/anda/system/nct6687d/kmod-common/update.rhai @@ -0,0 +1,5 @@ +rpm.global("commit", gh_commit("Fred78290/nct6687d")); +if rpm.changed() { + rpm.release(); + rpm.global("commitdate", date()); +} diff --git a/anda/system/new-lg4ff/akmod/anda.hcl b/anda/system/new-lg4ff/akmod/anda.hcl new file mode 100644 index 0000000000..1baad1eca9 --- /dev/null +++ b/anda/system/new-lg4ff/akmod/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + rpm { + spec = "new-lg4ff-kmod.spec" + } + labels { + mock = 1 + updbranch = 1 + } +} diff --git a/anda/system/new-lg4ff/akmod/new-lg4ff-kmod.spec b/anda/system/new-lg4ff/akmod/new-lg4ff-kmod.spec new file mode 100644 index 0000000000..7041a5ea35 --- /dev/null +++ b/anda/system/new-lg4ff/akmod/new-lg4ff-kmod.spec @@ -0,0 +1,55 @@ +%global commit 2092db19f7b40854e0427a1b2e39eda9f8d0c3cd +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20250528 +%global ver 0.5.0 +%define buildforkernels akmod +%global debug_package %{nil} +%global modulename new-lg4ff + +Name: %{modulename}-kmod +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 3%{?dist} +Summary: Logitech force feedback kernel module +License: GPL-2.0-only +URL: https://github.com/berarma/%{modulename} +Source0: %{url}/archive/%{commit}.tar.gz#/%{modulename}-%{shortcommit}.tar.gz +BuildRequires: kmodtool +Requires: akmods +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Requires: %{modulename}-akmod-modules = %{?epoch:%{epoch}:}%{version} +Conflicts: dkms-%{modulename} + +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } + +%description +Experimental Logitech force feedback module for Linux. + +%prep +%{?kmodtool_check} +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null + +%autosetup -p1 -n %{modulename}-%{commit} + +for kernel_version in %{?kernel_versions}; do + mkdir _kmod_build_${kernel_version%%___*} + cp -fr Kbuild Makefile *.c *.h usbhid _kmod_build_${kernel_version%%___*}/ +done + +%build +for kernel_version in %{?kernel_versions}; do + pushd _kmod_build_${kernel_version%%___*}/ + %make_build -C "${kernel_version##*___}" M=$(pwd) modules + popd +done + +%install +for kernel_version in %{?kernel_versions}; do + mkdir -p %{buildroot}/%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ + install -p -m 0755 _kmod_build_${kernel_version%%___*}/*.ko \ + %{buildroot}/%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ +done +%{?akmod_install} + +%changelog +* Thu Apr 02 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/new-lg4ff/akmod/update.rhai b/anda/system/new-lg4ff/akmod/update.rhai new file mode 100644 index 0000000000..3b39f52224 --- /dev/null +++ b/anda/system/new-lg4ff/akmod/update.rhai @@ -0,0 +1,12 @@ +let c = sh("cat anda/system/new-lg4ff/kmod-common/new-lg4ff.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; +c.pop(); +rpm.global("commit", c); +if rpm.changed() { + rpm.release(); + let d = sh("cat anda/system/new-lg4ff/kmod-common/new-lg4ff.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; + d.pop(); + rpm.global("commitdate", d); + let v = sh("cat anda/system/new-lg4ff/kmod-common/new-lg4ff.spec | grep '%global ver' | sed -E 's/.+ver //'", #{"stdout": "piped"}).ctx.stdout; + v.pop(); + rpm.global("ver", v); +} diff --git a/anda/system/new-lg4ff/dkms/anda.hcl b/anda/system/new-lg4ff/dkms/anda.hcl new file mode 100644 index 0000000000..9ec986d3be --- /dev/null +++ b/anda/system/new-lg4ff/dkms/anda.hcl @@ -0,0 +1,10 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "dkms-new-lg4ff.spec" + } + labels { + mock = 1 + updbranch = 1 + } +} diff --git a/anda/system/new-lg4ff/dkms/dkms-new-lg4ff.conf b/anda/system/new-lg4ff/dkms/dkms-new-lg4ff.conf new file mode 100644 index 0000000000..1c8806a445 --- /dev/null +++ b/anda/system/new-lg4ff/dkms/dkms-new-lg4ff.conf @@ -0,0 +1,10 @@ +PACKAGE_NAME="new-lg4ff" +PACKAGE_VERSION="__VERSION_STRING" +AUTOINSTALL="yes" + +MAKE[0]="'make' KVERSION=$kernelver" +CLEAN="make clean" + +BUILT_MODULE_NAME[0]="hid-logitech-new" +DEST_MODULE_NAME[0]="hid-logitech" +DEST_MODULE_LOCATION[0]="/extra" diff --git a/anda/system/new-lg4ff/dkms/dkms-new-lg4ff.spec b/anda/system/new-lg4ff/dkms/dkms-new-lg4ff.spec new file mode 100644 index 0000000000..954f84b65f --- /dev/null +++ b/anda/system/new-lg4ff/dkms/dkms-new-lg4ff.spec @@ -0,0 +1,58 @@ +%global commit 2092db19f7b40854e0427a1b2e39eda9f8d0c3cd +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20250528 +%global ver 0.5.0 +%global debug_package %{nil} +%global modulename new-lg4ff + +Name: dkms-%{modulename} +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 3%{?dist} +Summary: Logitech force feedback kernel module (DKMS) +License: GPL-2.0-only +URL: https://github.com/berarma/%{modulename} +Source0: %{url}/archive/%{commit}.tar.gz#/%{modulename}-%{shortcommit}.tar.gz +Source1: %{name}.conf +Source2: no-weak-modules.conf +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Requires: dkms +Conflicts: akmod-%{modulename} +Provides: %{modulename}-kmod +BuildArch: noarch + +%description +Experimental Logitech force feedback module for Linux. + +%prep +%autosetup -p1 -n %{modulename}-%{commit} + +cp -f %{SOURCE1} dkms.conf +sed -i -e 's/__VERSION_STRING/%{version}/g' dkms.conf + +%build + +%install +mkdir -p %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ +cp -fr Kbuild Makefile *.c *.h usbhid dkms.conf %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ + +%if 0%{?fedora} +install -Dpm644 %{SOURCE2} %{buildroot}%{_sysconfdir}/dkms/%{modulename}.conf +%endif + +%post +dkms add -m %{modulename} -v %{version} -q --rpm_safe_upgrade || : +dkms build -m %{modulename} -v %{version} -q || : +dkms install -m %{modulename} -v %{version} -q --force || : + +%preun +dkms remove -m %{modulename} -v %{version} -q --all --rpm_safe_upgrade || : + +%files +%{_usrsrc}/%{modulename}-%{version} +%if 0%{?fedora} +%{_sysconfdir}/dkms/%{modulename}.conf +%endif + +%changelog +* Thu Apr 02 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/new-lg4ff/dkms/no-weak-modules.conf b/anda/system/new-lg4ff/dkms/no-weak-modules.conf new file mode 100644 index 0000000000..24f6f95c96 --- /dev/null +++ b/anda/system/new-lg4ff/dkms/no-weak-modules.conf @@ -0,0 +1 @@ +NO_WEAK_MODULES="yes" diff --git a/anda/system/new-lg4ff/dkms/update.rhai b/anda/system/new-lg4ff/dkms/update.rhai new file mode 100644 index 0000000000..3b39f52224 --- /dev/null +++ b/anda/system/new-lg4ff/dkms/update.rhai @@ -0,0 +1,12 @@ +let c = sh("cat anda/system/new-lg4ff/kmod-common/new-lg4ff.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; +c.pop(); +rpm.global("commit", c); +if rpm.changed() { + rpm.release(); + let d = sh("cat anda/system/new-lg4ff/kmod-common/new-lg4ff.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; + d.pop(); + rpm.global("commitdate", d); + let v = sh("cat anda/system/new-lg4ff/kmod-common/new-lg4ff.spec | grep '%global ver' | sed -E 's/.+ver //'", #{"stdout": "piped"}).ctx.stdout; + v.pop(); + rpm.global("ver", v); +} diff --git a/anda/system/new-lg4ff/kmod-common/anda.hcl b/anda/system/new-lg4ff/kmod-common/anda.hcl new file mode 100644 index 0000000000..c34afaa94b --- /dev/null +++ b/anda/system/new-lg4ff/kmod-common/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "new-lg4ff.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/system/new-lg4ff/kmod-common/new-lg4ff.spec b/anda/system/new-lg4ff/kmod-common/new-lg4ff.spec new file mode 100644 index 0000000000..dd7a6e175c --- /dev/null +++ b/anda/system/new-lg4ff/kmod-common/new-lg4ff.spec @@ -0,0 +1,47 @@ +%global commit 2092db19f7b40854e0427a1b2e39eda9f8d0c3cd +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20250528 +%global ver 0.5.0 + +Name: new-lg4ff +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 3%{?dist} +Summary: Logitech force feedback driver common files +License: GPL-2.0-only +URL: https://github.com/berarma/%{name} +Source0: %{url}/archive/%{commit}.tar.gz#/%{name}-%{shortcommit}.tar.gz +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +Provides: %{name}-kmod-common = %{?epoch:%{epoch}:}%{version} +BuildArch: noarch + +%description +Experimental Logitech force feedback module for Linux. This package contains +common files shared between the akmod and dkms variants. + +%package akmod-modules +Summary: Modules for Akmods +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +BuildArch: noarch + +%description akmod-modules +Akmods modules for the akmod-%{name} package. + +%prep +%autosetup -p1 -n %{name}-%{commit} + +echo hid-logitech-new > %{name}.conf + +%install +# Akmods modules +install -Dm644 %{name}.conf -t %{buildroot}%{_modulesloaddir} + +%files +%license LICENSE +%doc README.md + +%files akmod-modules +%{_modulesloaddir}/%{name}.conf + +%changelog +* Thu Apr 02 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/new-lg4ff/kmod-common/update.rhai b/anda/system/new-lg4ff/kmod-common/update.rhai new file mode 100644 index 0000000000..4bc998ce80 --- /dev/null +++ b/anda/system/new-lg4ff/kmod-common/update.rhai @@ -0,0 +1,8 @@ +rpm.global("commit", gh_commit("berarma/new-lg4ff")); +if rpm.changed() { + rpm.release(); + rpm.global("commitdate", date()); + let ver = gh("berarma/new-lg4ff"); + ver.crop(1); + rpm.global("ver", ver); +} diff --git a/anda/system/nvidia-580/compat-nvidia-repo/compat-nvidia-repo-580.spec b/anda/system/nvidia-580/compat-nvidia-repo/compat-nvidia-repo-580.spec index b1c74bd2b8..607b614fe2 100644 --- a/anda/system/nvidia-580/compat-nvidia-repo/compat-nvidia-repo-580.spec +++ b/anda/system/nvidia-580/compat-nvidia-repo/compat-nvidia-repo-580.spec @@ -1,20 +1,16 @@ Name: compat-nvidia-repo-580xx -Version: 580.142 +Version: 580.159.04 Epoch: 3 -Release: 2%{?dist} +Release: 1%{?dist} Summary: Compatibility package required by official CUDA packages License: NVIDIA License URL: https://developer.nvidia.com/cuda-toolkit - -BuildArch: noarch - Requires: nvidia-driver-580xx >= %{?epoch:%{epoch}:}%{version} Requires: nvidia-driver-580xx-cuda >= %{?epoch:%{epoch}:}%{version} Requires: nvidia-driver-580xx-cuda-libs >= %{?epoch:%{epoch}:}%{version} Requires: nvidia-driver-580xx-libs >= %{?epoch:%{epoch}:}%{version} Requires: nvidia-580xx-kmod >= %{?epoch:%{epoch}:}%{version} Requires: nvidia-settings-580xx >= %{?epoch:%{epoch}:}%{version} - Provides: cuda-drivers-580xx >= %{?epoch:%{epoch}:}%{version} Provides: nvidia-open-580xx >= %{?epoch:%{epoch}:}%{version} # Add any versioned provides: @@ -22,8 +18,9 @@ Provides: cuda-drivers-560 >= %{?epoch:%{epoch}:}%{version} Provides: cuda-drivers-565 >= %{?epoch:%{epoch}:}%{version} Provides: nvidia-open-560 >= %{?epoch:%{epoch}:}%{version} Provides: nvidia-open-565 >= %{?epoch:%{epoch}:}%{version} - Provides: compat-nvidia-repo-580 = %{evr} +BuildArch: noarch +Packager: Terra Packaging Team %description Nvidia drivers metapackage required by official CUDA packages. It pulls in all @@ -33,4 +30,5 @@ Nvidia driver components. # Without an empty files section the package is not created. %changelog -%autochangelog +* Mon Apr 13 2026 Gilver E. - 3:580.142-3 +- Update spec for Terra packaging team diff --git a/anda/system/nvidia-580/dkms-nvidia/0001-Enable-atomic-kernel-modesetting-by-default.patch b/anda/system/nvidia-580/dkms-nvidia/0001-Enable-atomic-kernel-modesetting-by-default.patch deleted file mode 100644 index b17015cd83..0000000000 --- a/anda/system/nvidia-580/dkms-nvidia/0001-Enable-atomic-kernel-modesetting-by-default.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 60d1ddc17835226ec67ed1bc1c28524e3bb6e151 Mon Sep 17 00:00:00 2001 -From: Peter Jung -Date: Sun, 20 Apr 2025 18:13:22 +0200 -Subject: [PATCH 1/8] Enable atomic kernel modesetting by default - -This is required for proper functionality under Wayland. fbdev has been default enabled since 570 so that -hunk can be removed from this patch. - -Signed-off-by: Peter Jung ---- - nvidia-drm/nvidia-drm-linux.c | 2 +- - nvidia-drm/nvidia-drm-os-interface.c | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git an/nvidia-drm/nvidia-drm-linux.c b/nvidia-drm/nvidia-drm-linux.c -index 3cb1815d..209cb469 100644 ---- a/nvidia-drm/nvidia-drm-linux.c -+++ b/nvidia-drm/nvidia-drm-linux.c -@@ -31,7 +31,7 @@ - - MODULE_PARM_DESC( - modeset, -- "Enable atomic kernel modesetting (1 = enable, 0 = disable (default))"); -+ "Enable atomic kernel modesetting (1 = enable (default), 0 = disable)"); - module_param_named(modeset, nv_drm_modeset_module_param, bool, 0400); - - #if defined(NV_DRM_FBDEV_AVAILABLE) -diff --git a/nvidia-drm/nvidia-drm-os-interface.c b/nvidia-drm/nvidia-drm-os-interface.c -index 7617476d..f22afd77 100644 ---- a/nvidia-drm/nvidia-drm-os-interface.c -+++ b/nvidia-drm/nvidia-drm-os-interface.c -@@ -41,7 +41,7 @@ - #include - #endif - --bool nv_drm_modeset_module_param = false; -+bool nv_drm_modeset_module_param = true; - bool nv_drm_fbdev_module_param = true; - - void *nv_drm_calloc(size_t nmemb, size_t size) --- -2.49.0.391.g4bbb303af6 diff --git a/anda/system/nvidia-580/dkms-nvidia/dkms-nvidia-580.spec b/anda/system/nvidia-580/dkms-nvidia/dkms-nvidia-580.spec index 20b12815ad..2c61a1bcc0 100644 --- a/anda/system/nvidia-580/dkms-nvidia/dkms-nvidia-580.spec +++ b/anda/system/nvidia-580/dkms-nvidia/dkms-nvidia-580.spec @@ -6,36 +6,34 @@ %global modulename nvidia-580xx Name: dkms-%{modulename} -Version: 580.119.02 -Release: 1%{?dist} +Version: 580.159.03 +Release: 2%{?dist} Summary: NVIDIA display driver kernel module Epoch: 3 License: NVIDIA License URL: https://www.nvidia.com/object/unix.html Source0: https://download.nvidia.com/XFree86/Linux-%{_arch}/%{version}/NVIDIA-Linux-%{_arch}-%{version}.run Source1: dkms-nvidia.conf -Patch0: 0001-Enable-atomic-kernel-modesetting-by-default.patch BuildRequires: sed -Provides: %{modulename}-kmod = %{?epoch:%{epoch}:}%{version} Requires: %{modulename}-kmod-common = %{?epoch:%{epoch}:}%{version} Requires: dkms -Conflicts: akmod-nvidia -Conflicts: akmod-nvidia-580xx +Provides: %{modulename}-kmod = %{?epoch:%{epoch}:}%{version} +Provides: nvidia-580-kmod = %{?epoch:%{epoch}:}%{version} Provides: dkms-nvidia-580 = %{evr} +Conflicts: akmod-nvidia-580xx +Conflicts: nvidia-kmod # Unlike most DKMS packages, this package is NOT noarch! ExclusiveArch: x86_64 aarch64 +Packager: Terra Packaging Team %description This package provides the proprietary NVIDIA kernel driver modules. %prep -sh %{SOURCE0} -x --target dkms-nvidia-%{version}-%{_arch} -%setup -T -D -n dkms-nvidia-%{version}-%{_arch} - -pushd kernel-open -%autopatch -p1 -popd +sh %{SOURCE0} -x --target %{name}-%{version}-%{_arch} +%setup -T -D -n %{name}-%{version}-%{_arch}/kernel +rm -f dkms.conf cp -f %{SOURCE1} dkms.conf sed -i -e 's/__VERSION_STRING/%{version}/g' dkms.conf @@ -44,8 +42,7 @@ sed -i -e 's/__VERSION_STRING/%{version}/g' dkms.conf %install mkdir -p %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ -cp -fr * %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ -rm -f %{buildroot}%{_usrsrc}/%{modulename}-%{version}/*/dkms.conf +cp -fr * -t %{buildroot}%{_usrsrc}/%{modulename}-%{version} %post dkms add -m %{modulename} -v %{version} -q --rpm_safe_upgrade || : @@ -65,4 +62,5 @@ fi %{_usrsrc}/%{modulename}-%{version} %changelog -%autochangelog +* Mon Apr 13 2026 Gilver E. - 3:580.142-1 +- Update spec for Terra packaging team diff --git a/anda/system/nvidia-580/dkms-nvidia/update.rhai b/anda/system/nvidia-580/dkms-nvidia/update.rhai index ea0b60bd3d..329db7e5d1 100644 --- a/anda/system/nvidia-580/dkms-nvidia/update.rhai +++ b/anda/system/nvidia-580/dkms-nvidia/update.rhai @@ -1,3 +1,3 @@ import "andax/bump_extras.rhai" as bump; -rpm.version(bump::madoguchi("nvidia-580-kmod-common", labels.branch)); +rpm.version(bump::madoguchi("nvidia-580xx-kmod-common", labels.branch)); diff --git a/anda/system/nvidia-580/nvidia-driver/10-nvidia.conf b/anda/system/nvidia-580/nvidia-driver/10-nvidia.conf deleted file mode 100644 index b9db1a9928..0000000000 --- a/anda/system/nvidia-580/nvidia-driver/10-nvidia.conf +++ /dev/null @@ -1,8 +0,0 @@ -Section "OutputClass" - Identifier "nvidia" - MatchDriver "nvidia-drm" - Driver "nvidia" - Option "AllowEmptyInitialConfiguration" - Option "SLI" "Auto" - Option "BaseMosaic" "on" -EndSection diff --git a/anda/system/nvidia-580/nvidia-driver/nvidia-driver-580.spec b/anda/system/nvidia-580/nvidia-driver/nvidia-driver-580.spec index 3fae75722a..90b9dfc052 100644 --- a/anda/system/nvidia-580/nvidia-driver/nvidia-driver-580.spec +++ b/anda/system/nvidia-580/nvidia-driver/nvidia-driver-580.spec @@ -11,27 +11,24 @@ %endif Name: %{real_name}-580xx -Version: 580.142 +Version: 580.159.04 Release: 1%{?dist} Summary: NVIDIA's proprietary display driver for NVIDIA graphic cards Epoch: 3 License: NVIDIA License URL: http://www.nvidia.com/object/unix.html -ExclusiveArch: %{ix86} x86_64 aarch64 - %dnl Source0: %{name}-%{version}-i386.tar.xz %dnl Source1: %{name}-%{version}-x86_64.tar.xz %dnl Source2: %{name}-%{version}-aarch64.tar.xz -Source8: 70-%{real_name}.preset -Source9: 70-%{real_name}-cuda.preset -Source10: 10-nvidia.conf +Source8: 70-nvidia-driver.preset +Source9: 70-nvidia-driver-cuda.preset Source13: alternate-install-present - Source40: com.nvidia.driver.metainfo.xml Source41: parse-supported-gpus.py Source42: com.nvidia.driver.png - Source99: nvidia-generate-tarballs.sh +ExclusiveArch: %{ix86} x86_64 aarch64 +Packager: Terra Packaging Team %ifarch x86_64 aarch64 BuildRequires: libappstream-glib @@ -47,8 +44,8 @@ BuildRequires: systemd-rpm-macros BuildRequires: wget BuildRequires: coreutils -Requires: %{real_name}-libs%{?_isa} = %{?epoch:%{epoch}:}%{version} -Requires: nvidia-kmod-common = %{?epoch:%{epoch}:}%{version} +Requires: %{name}-libs%{?_isa} = %{?epoch:%{epoch}:}%{version} +Requires: nvidia-580xx-kmod-common = %{?epoch:%{epoch}:}%{version} Conflicts: nvidia-x11-drv Conflicts: nvidia-x11-drv-470xx @@ -111,7 +108,7 @@ Requires: libnvidia-cfg-580xx = %{?epoch:%{epoch}:}%{version}-%{release} %endif %if 0%{?fedora} %ifarch x86_64 -Requires: (%{name}-cuda-libs-580xx(x86-32) = %{?epoch:%{epoch}:}%{version}-%{release} if steam(x86-32)) +Requires: (%{name}-cuda-libs(x86-32) = %{?epoch:%{epoch}:}%{version}-%{release} if steam(x86-32)) %endif %endif # dlopened: @@ -135,7 +132,7 @@ Requires: (libnvidia-fbc-580xx(x86-32) = %{?epoch:%{epoch}:}%{version}-%{r %endif %endif # dlopened: -Requires: %{name}-cuda-libs-580xx%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} +Requires: %{name}-cuda-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} %description -n libnvidia-fbc-580xx This library provides a high performance, low latency interface to capture and @@ -188,7 +185,7 @@ other driver components. %package cuda Summary: CUDA integration for %{name} -Requires: %{name}-cuda-libs-580xx%{?_isa} = %{?epoch:%{epoch}:}%{version} +Requires: %{name}-cuda-libs%{?_isa} = %{?epoch:%{epoch}:}%{version} Requires: nvidia-580xx-kmod-common = %{?epoch:%{epoch}:}%{version} Requires: nvidia-persistenced-580xx = %{?epoch:%{epoch}:}%{version} Requires: opencl-filesystem @@ -207,12 +204,10 @@ This package provides the CUDA integration components for %{name}. Summary: X.org X11 NVIDIA driver and extensions Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version} Requires: xorg-x11-server-Xorg%{?_isa} -Supplements: (%{real_name}-580xx and xorg-x11-server-Xorg) - Conflicts: xorg-x11-drv-nvidia Conflicts: xorg-x11-drv-nvidia-470xx - Provides: xorg-x11-nvidia-580 = %{evr} +Supplements: (%{real_name}-580xx and xorg-x11-server-Xorg) %description -n xorg-x11-nvidia-580xx The NVIDIA X.org X11 driver and associated components. @@ -248,6 +243,9 @@ rm -f libnvidia-pkcs11.so.%{version} %endif %endif +mv libGLX_nvidia.so.%{version} libGLX_nvidia.so.0 +ln -sf libGLX_nvidia.so.0 libGLX_nvidia.so.%{version} + # Create symlinks for shared objects ldconfig -vn . @@ -289,11 +287,9 @@ ln -sf ../libnvidia-allocator.so.%{version} %{buildroot}%{_libdir}/gbm/nvidia-dr %endif %ifarch x86_64 - # NGX Proton/Wine library mkdir -p %{buildroot}%{_libdir}/nvidia/wine/ cp -a *.dll %{buildroot}%{_libdir}/nvidia/wine/ - %endif %ifarch x86_64 aarch64 @@ -310,7 +306,7 @@ install -p -m 0755 -D nvidia.icd %{buildroot}%{_sysconfdir}/OpenCL/vendors/nvidi # Binaries mkdir -p %{buildroot}%{_bindir} -install -p -m 0755 nvidia-{debugdump,smi,cuda-mps-control,cuda-mps-server,bug-report.sh,ngx-updater,powerd} %{buildroot}%{_bindir} +install -p -m 0755 nvidia-{debugdump,smi,cuda-mps-control,cuda-mps-server,ngx-updater,powerd} %{buildroot}%{_bindir} # Man pages mkdir -p %{buildroot}%{_mandir}/man1/ @@ -318,7 +314,7 @@ install -p -m 0644 nvidia-{smi,cuda-mps-control}*.gz %{buildroot}%{_mandir}/man1 %if 0%{?fedora} || 0%{?rhel} < 10 # X stuff -install -p -m 0644 -D %{SOURCE10} %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/10-nvidia.conf +install -p -m 0644 -D nvidia-drm-outputclass.conf %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/10-nvidia.conf install -p -m 0755 -D nvidia_drv.so %{buildroot}%{_libdir}/xorg/modules/drivers/nvidia_drv.so install -p -m 0755 -D libglxserver_nvidia.so.%{version} %{buildroot}%{_libdir}/xorg/modules/extensions/libglxserver_nvidia.so %endif @@ -360,10 +356,10 @@ install -p -m 0644 -D sandboxutils-filelist.json %{buildroot}%{_datadir}/nvidia/ # dnf needs-restarting plugin # dnf4 only for the moment: https://github.com/rpm-software-management/dnf5/issues/1815 -%if 0%{?fedora} < 42 || 0%{?rhel} +%if 0%{?fedora} < 42 || %{defined rhel} mkdir -p %{buildroot}%{_sysconfdir}/dnf/plugins/needs-restarting.d -echo %{real_name} > %{buildroot}%{_sysconfdir}/dnf/plugins/needs-restarting.d/%{real_name}.conf -echo %{real_name}-cuda > %{buildroot}%{_sysconfdir}/dnf/plugins/needs-restarting.d/%{real_name}-cuda.conf +echo %{name} > %{buildroot}%{_sysconfdir}/dnf/plugins/needs-restarting.d/%{name}.conf +echo %{name}-cuda > %{buildroot}%{_sysconfdir}/dnf/plugins/needs-restarting.d/%{name}-cuda.conf %endif %check @@ -373,6 +369,7 @@ appstream-util validate --nonet %{buildroot}%{_metainfodir}/com.nvidia.driver.me %endif + %ifarch x86_64 aarch64 %post @@ -404,7 +401,6 @@ appstream-util validate --nonet %{buildroot}%{_metainfodir}/com.nvidia.driver.me %license LICENSE %doc NVIDIA_Changelog README.txt html supported-gpus/supported-gpus.json %dir %{_sysconfdir}/nvidia -%{_bindir}/nvidia-bug-report.sh %{_bindir}/nvidia-ngx-updater %ifarch x86_64 %{_bindir}/nvidia-pcc @@ -422,8 +418,8 @@ appstream-util validate --nonet %{buildroot}%{_metainfodir}/com.nvidia.driver.me %{_unitdir}/nvidia-resume.service %{_unitdir}/nvidia-suspend.service %{_unitdir}/nvidia-suspend-then-hibernate.service -%if 0%{?fedora} < 42 || 0%{?rhel} -%{_sysconfdir}/dnf/plugins/needs-restarting.d/%{real_name}.conf +%if 0%{?fedora} < 42 || %{defined rhel} +%{_sysconfdir}/dnf/plugins/needs-restarting.d/%{name}.conf %endif %if 0%{?fedora} || 0%{?rhel} < 10 @@ -548,4 +544,5 @@ appstream-util validate --nonet %{buildroot}%{_metainfodir}/com.nvidia.driver.me %{_libdir}/libnvidia-ml.so.%{version} %changelog -%autochangelog +* Mon Apr 13 2026 Gilver E. - 3:580.142-2 +- Update spec for Terra packaging team diff --git a/anda/system/nvidia-580/nvidia-kmod-common/anda.hcl b/anda/system/nvidia-580/nvidia-kmod-common/anda.hcl index 57de07767d..415f0fd9e2 100644 --- a/anda/system/nvidia-580/nvidia-kmod-common/anda.hcl +++ b/anda/system/nvidia-580/nvidia-kmod-common/anda.hcl @@ -1,10 +1,10 @@ project "pkg" { + arches = ["x86_64"] rpm { spec = "nvidia-580-kmod-common.spec" } - arches = ["x86_64"] labels = { subrepo = "nvidia" - weekly = 4 + updbranch = 1 } } diff --git a/anda/system/nvidia-580/nvidia-kmod-common/nvidia-580-kmod-common.spec b/anda/system/nvidia-580/nvidia-kmod-common/nvidia-580-kmod-common.spec index 3f5c8a26be..e83d827450 100644 --- a/anda/system/nvidia-580/nvidia-kmod-common/nvidia-580-kmod-common.spec +++ b/anda/system/nvidia-580/nvidia-kmod-common/nvidia-580-kmod-common.spec @@ -6,25 +6,20 @@ %global modulename nvidia-580xx Name: %{modulename}-kmod-common -Version: 580.142 -Release: 2%{?dist} +Version: 580.159.03 +Release: 1%{?dist} Summary: Common file for NVIDIA's proprietary driver kernel modules Epoch: 3 License: NVIDIA License URL: http://www.nvidia.com/object/unix.html - -BuildArch: noarch - Source0: http://download.nvidia.com/XFree86/Linux-x86_64/%{version}/NVIDIA-Linux-x86_64-%{version}.run Source17: nvidia-boot-update Source18: nvidia-modeset.conf Source19: nvidia.conf Source20: 60-nvidia.rules Source21: 99-nvidia.conf - # UDev rule location (_udevrulesdir) and systemd macros: BuildRequires: systemd-rpm-macros - Requires: dracut Requires: nvidia-modprobe-580xx Requires: nvidia-driver-580xx = %{?epoch:%{epoch}:}%{version} @@ -33,6 +28,8 @@ Requires: %{modulename}-kmod = %{?epoch:%{epoch}:}%{version} Provides: %{modulename}-kmod-common = %{?epoch:%{epoch}:}%{version} Provides: nvidia-580-kmod-common = %{evr} Obsoletes: cuda-nvidia-kmod-common < %{?epoch:%{epoch}:}%{version} +BuildArch: noarch +Packager: Terra Packaging Team %description This package provides the common files required by all NVIDIA kernel module @@ -95,4 +92,5 @@ dracut --regenerate-all --force || : %{_udevrulesdir}/60-nvidia.rules %changelog -%autochangelog +* Mon Apr 13 2026 Gilver E. - 3:580.142-3 +- Update spec for Terra packaging team diff --git a/anda/system/nvidia-580/nvidia-kmod-common/update.rhai b/anda/system/nvidia-580/nvidia-kmod-common/update.rhai index d1ef2924fb..26e90ea495 100644 --- a/anda/system/nvidia-580/nvidia-kmod-common/update.rhai +++ b/anda/system/nvidia-580/nvidia-kmod-common/update.rhai @@ -1,3 +1,3 @@ -import "andax/nvidia.rhai" as nvidia; +import "andax/bump_extras.rhai" as bump; -rpm.version(nvidia::nvidia_legacy_version()); +rpm.version(bump::madoguchi("nvidia-driver-580xx", labels.branch)); diff --git a/anda/system/nvidia-580/nvidia-kmod/0001-Enable-atomic-kernel-modesetting-by-default.patch b/anda/system/nvidia-580/nvidia-kmod/0001-Enable-atomic-kernel-modesetting-by-default.patch deleted file mode 100644 index b17015cd83..0000000000 --- a/anda/system/nvidia-580/nvidia-kmod/0001-Enable-atomic-kernel-modesetting-by-default.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 60d1ddc17835226ec67ed1bc1c28524e3bb6e151 Mon Sep 17 00:00:00 2001 -From: Peter Jung -Date: Sun, 20 Apr 2025 18:13:22 +0200 -Subject: [PATCH 1/8] Enable atomic kernel modesetting by default - -This is required for proper functionality under Wayland. fbdev has been default enabled since 570 so that -hunk can be removed from this patch. - -Signed-off-by: Peter Jung ---- - nvidia-drm/nvidia-drm-linux.c | 2 +- - nvidia-drm/nvidia-drm-os-interface.c | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git an/nvidia-drm/nvidia-drm-linux.c b/nvidia-drm/nvidia-drm-linux.c -index 3cb1815d..209cb469 100644 ---- a/nvidia-drm/nvidia-drm-linux.c -+++ b/nvidia-drm/nvidia-drm-linux.c -@@ -31,7 +31,7 @@ - - MODULE_PARM_DESC( - modeset, -- "Enable atomic kernel modesetting (1 = enable, 0 = disable (default))"); -+ "Enable atomic kernel modesetting (1 = enable (default), 0 = disable)"); - module_param_named(modeset, nv_drm_modeset_module_param, bool, 0400); - - #if defined(NV_DRM_FBDEV_AVAILABLE) -diff --git a/nvidia-drm/nvidia-drm-os-interface.c b/nvidia-drm/nvidia-drm-os-interface.c -index 7617476d..f22afd77 100644 ---- a/nvidia-drm/nvidia-drm-os-interface.c -+++ b/nvidia-drm/nvidia-drm-os-interface.c -@@ -41,7 +41,7 @@ - #include - #endif - --bool nv_drm_modeset_module_param = false; -+bool nv_drm_modeset_module_param = true; - bool nv_drm_fbdev_module_param = true; - - void *nv_drm_calloc(size_t nmemb, size_t size) --- -2.49.0.391.g4bbb303af6 diff --git a/anda/system/nvidia-580/nvidia-kmod/nvidia-580xx-kmod.spec b/anda/system/nvidia-580/nvidia-kmod/nvidia-580xx-kmod.spec index f1e49ed4c4..52073344a2 100644 --- a/anda/system/nvidia-580/nvidia-kmod/nvidia-580xx-kmod.spec +++ b/anda/system/nvidia-580/nvidia-kmod/nvidia-580xx-kmod.spec @@ -5,26 +5,25 @@ %global debug_package %{nil} Name: %{modulename}-kmod -Version: 580.119.02 -Release: 1%{?dist} +Version: 580.159.03 +Release: 2%{?dist} Summary: NVIDIA display driver kernel module Epoch: 3 License: NVIDIA License URL: http://www.nvidia.com/object/unix.html -ExclusiveArch: x86_64 aarch64 - Source0: http://download.nvidia.com/XFree86/Linux-%{_arch}/%{version}/NVIDIA-Linux-%{_arch}-%{version}.run -Patch0: 0001-Enable-atomic-kernel-modesetting-by-default.patch +BuildRequires: kmodtool Requires: nvidia-580xx-kmod-common = %{?epoch:%{epoch}:}%{version} Requires: akmods -Provides: akmod-nvidia-580 = %{evr} - - -# Get the needed BuildRequires (in parts depending on what we build for): -BuildRequires: kmodtool +Provides: akmod-nvidia-580 = %{?epoch:%{epoch}:}%{version}-%{release} +Provides: nvidia-580-kmod = %{?epoch:%{epoch}:}%{version} +Conflicts: dkms-nvidia-580xx +Conflicts: nvidia-kmod +ExclusiveArch: x86_64 aarch64 +Packager: Terra Packaging Team # kmodtool does its magic here: -%{expand:%(kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } %description The NVidia %{version} display driver kernel module for kernel %{kversion}. @@ -33,16 +32,17 @@ The NVidia %{version} display driver kernel module for kernel %{kversion}. # Error out if there was something wrong with kmodtool: %{?kmodtool_check} # Print kmodtool output for debugging purposes: -kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null -sh %{SOURCE0} -x --target %{real_name}-%{version}-%{_arch} -%setup -T -D -n %{real_name}-%{version}-%{_arch} +sh %{SOURCE0} -x --target %{name}-%{version}-%{_arch} -pushd kernel-open -%autopatch -p1 -popd +%ifarch x86_64 +%setup -T -D -n %{name}-%{version}-%{_arch}/kernel +%elifarch aarch64 +%setup -T -D -n %{name}-%{version}-%{_arch}/kernel +%endif -rm -f */dkms.conf +rm -f dkms.conf for kernel_version in %{?kernel_versions}; do mkdir _kmod_build_${kernel_version%%___*} @@ -65,4 +65,5 @@ done %{?akmod_install} %changelog -%autochangelog +* Mon Apr 13 2026 Gilver E. - 3:580.142-1 +- Update spec for Terra packaging team diff --git a/anda/system/nvidia-580/nvidia-kmod/update.rhai b/anda/system/nvidia-580/nvidia-kmod/update.rhai index ea0b60bd3d..329db7e5d1 100644 --- a/anda/system/nvidia-580/nvidia-kmod/update.rhai +++ b/anda/system/nvidia-580/nvidia-kmod/update.rhai @@ -1,3 +1,3 @@ import "andax/bump_extras.rhai" as bump; -rpm.version(bump::madoguchi("nvidia-580-kmod-common", labels.branch)); +rpm.version(bump::madoguchi("nvidia-580xx-kmod-common", labels.branch)); diff --git a/anda/system/nvidia-580/nvidia-modprobe/nvidia-modprobe-580.spec b/anda/system/nvidia-580/nvidia-modprobe/nvidia-modprobe-580.spec index 9885850c29..ac7dc8d2db 100644 --- a/anda/system/nvidia-580/nvidia-modprobe/nvidia-modprobe-580.spec +++ b/anda/system/nvidia-580/nvidia-modprobe/nvidia-modprobe-580.spec @@ -1,21 +1,19 @@ %global real_name nvidia-modprobe Name: %{real_name}-580xx -Version: 580.142 -Release: 2%{?dist} +Version: 580.159.04 +Release: 1%{?dist} Summary: NVIDIA kernel module loader Epoch: 3 -License: GPLv2+ +License: GPL-2.0-or-later URL: http://www.nvidia.com/object/unix.html -ExclusiveArch: x86_64 aarch64 - Source0: https://download.nvidia.com/XFree86/%{real_name}/%{real_name}-%{version}.tar.bz2 Patch0: %{real_name}-man-page-permissions.patch - BuildRequires: gcc BuildRequires: m4 - -Provides: %{real_name}-580 = %{evr} +Provides: %{real_name}-580 = %{evr} +ExclusiveArch: x86_64 aarch64 +Packager: Terra Packaging Team %description This utility is used by user-space NVIDIA driver components to make sure the @@ -48,4 +46,5 @@ make %{?_smp_mflags} \ %{_mandir}/man1/%{real_name}.1.* %changelog -%autochangelog +* Mon Apr 13 2026 Gilver E. - 3:580.142-2 +- Update spec for Terra packaging team diff --git a/anda/system/nvidia-580/nvidia-persistenced/nvidia-persistenced-580.spec b/anda/system/nvidia-580/nvidia-persistenced/nvidia-persistenced-580.spec index d559bb97d3..447a2bf8f1 100644 --- a/anda/system/nvidia-580/nvidia-persistenced/nvidia-persistenced-580.spec +++ b/anda/system/nvidia-580/nvidia-persistenced/nvidia-persistenced-580.spec @@ -1,29 +1,26 @@ %global real_name nvidia-persistenced -Name: %{real_name}-580xx -Version: 580.142 -Release: 2%{?dist} -Summary: A daemon to maintain persistent software state in the NVIDIA driver -Epoch: 3 -License: GPLv2+ -URL: http://www.nvidia.com/object/unix.html -ExclusiveArch: x86_64 aarch64 - -Source0: https://download.nvidia.com/XFree86/%{real_name}/%{real_name}-%{version}.tar.bz2 -Source1: %{real_name}.service - -BuildRequires: gcc -BuildRequires: libtirpc-devel -BuildRequires: m4 - +Name: %{real_name}-580xx +Version: 580.159.04 +Release: 1%{?dist} +Summary: A daemon to maintain persistent software state in the NVIDIA driver +Epoch: 3 +License: GPL-2.0-or-later +URL: http://www.nvidia.com/object/unix.html +ExclusiveArch: x86_64 aarch64 +Source0: https://download.nvidia.com/XFree86/%{real_name}/%{real_name}-%{version}.tar.bz2 +Source1: %{real_name}.service +BuildRequires: gcc +BuildRequires: libtirpc-devel +BuildRequires: m4 # For Fedora systemd-rpm-macros would be enough: -BuildRequires: systemd-devel -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd -Requires: libnvidia-cfg-580xx%{?_isa} >= %{?epoch:%{epoch}:}%{version} - -Provides: %{real_name}-580 = %{evr} +BuildRequires: systemd-devel +Requires: libnvidia-cfg-580xx%{?_isa} >= %{?epoch:%{epoch}:}%{version} +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd +Provides: %{real_name}-580 = %{evr} +Packager: Terra Packaging Team %description The %{real_name} utility is used to enable persistent software state in the NVIDIA @@ -80,4 +77,5 @@ install -p -m 644 -D %{SOURCE1} %{buildroot}%{_unitdir}/%{real_name}.service %{_sharedstatedir}/%{real_name} %changelog -%autochangelog +* Mon Apr 13 2026 Gilver E. - 3:580.142-3 +- Update spec for Terra packaging team diff --git a/anda/system/nvidia-580/nvidia-settings/nvidia-settings-580.spec b/anda/system/nvidia-580/nvidia-settings/nvidia-settings-580.spec index 0876bb3351..fc20eb8a73 100644 --- a/anda/system/nvidia-580/nvidia-settings/nvidia-settings-580.spec +++ b/anda/system/nvidia-580/nvidia-settings/nvidia-settings-580.spec @@ -1,14 +1,12 @@ %global real_name nvidia-settings Name: %{real_name}-580xx -Version: 580.142 -Release: 2%{?dist} +Version: 580.159.04 +Release: 1%{?dist} Summary: Configure the NVIDIA graphics driver Epoch: 3 -License: GPLv2+ +License: GPL-2.0-or-later URL: http://www.nvidia.com/object/unix.html -ExclusiveArch: x86_64 aarch64 - Source0: https://download.nvidia.com/XFree86/%{real_name}/%{real_name}-%{version}.tar.bz2 Source1: %{real_name}-load.desktop Source2: %{real_name}.appdata.xml @@ -17,7 +15,6 @@ Patch1: %{real_name}-lib-permissions.patch Patch2: %{real_name}-link-order.patch Patch3: %{real_name}-libXNVCtrl.patch Patch4: %{real_name}-ld-dep-remove.patch - BuildRequires: desktop-file-utils BuildRequires: dbus-devel BuildRequires: gcc @@ -34,13 +31,13 @@ BuildRequires: mesa-libGL-devel BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(wayland-client) BuildRequires: vulkan-headers - Requires: nvidia-libXNVCtrl-580xx%{?_isa} = %{?epoch}:%{version}-%{release} Requires: nvidia-driver-580xx%{?_isa} = %{?epoch}:%{version} # Loaded at runtime Requires: libvdpau%{?_isa} >= 0.9 - Provides: %{real_name}-580 = %{evr} +ExclusiveArch: x86_64 aarch64 +Packager: Terra Packaging Team %description The %{real_name} utility is a tool for configuring the NVIDIA graphics @@ -141,4 +138,5 @@ appstream-util validate-relax --nonet %{buildroot}/%{_metainfodir}/%{real_name}. %{_libdir}/libXNVCtrl.so %changelog -%autochangelog +* Mon Apr 13 2026 Gilver E. - 3:580.142-3 +- Update spec for Terra packaging team diff --git a/anda/system/nvidia-580/nvidia-xconfig/nvidia-xconfig-580.spec b/anda/system/nvidia-580/nvidia-xconfig/nvidia-xconfig-580.spec index 26e808da96..9e658c47b7 100644 --- a/anda/system/nvidia-580/nvidia-xconfig/nvidia-xconfig-580.spec +++ b/anda/system/nvidia-580/nvidia-xconfig/nvidia-xconfig-580.spec @@ -1,24 +1,21 @@ %global real_name nvidia-xconfig Name: %{real_name}-580xx -Version: 580.142 -Release: 2%{?dist} +Version: 580.159.04 +Release: 1%{?dist} Summary: NVIDIA X configuration file editor Epoch: 3 -License: GPLv2+ +License: GPL-2.0-or-later URL: http://www.nvidia.com/object/unix.html -ExclusiveArch: x86_64 aarch64 - Source0: https://download.nvidia.com/XFree86/%{real_name}/%{real_name}-%{version}.tar.bz2 - BuildRequires: gcc BuildRequires: libpciaccess-devel BuildRequires: m4 - Requires: libnvidia-cfg-580xx%{?_isa} >= %{?epoch:%{epoch}:}%{version} Requires: xorg-x11-nvidia-580xx%{?_isa} >= %{?epoch:%{epoch}:}%{version} - Provides: %{real_name}-580 = %{evr} +ExclusiveArch: x86_64 aarch64 +Packager: Terra Packaging Team %description %{real_name} is a command line tool intended to provide basic control over @@ -52,4 +49,5 @@ make %{?_smp_mflags} \ %{_mandir}/man1/%{real_name}.1* %changelog -%autochangelog +* Mon Apr 13 2026 Gilver E. - 3:580.142-3 +- Update spec for Terra packaging team diff --git a/anda/system/nvidia-patch/nvidia-patch.spec b/anda/system/nvidia-patch/nvidia-patch.spec index 5d27c47ff4..bc4caae4ce 100644 --- a/anda/system/nvidia-patch/nvidia-patch.spec +++ b/anda/system/nvidia-patch/nvidia-patch.spec @@ -1,7 +1,7 @@ %global debug_package %{nil} -%global commit d0240212254372a5a7bb9984c8c2345492893a1e +%global commit 28d678f8169bf2fa5ec3e0917233633340a400ef %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260328 +%global commit_date 20260611 %global patches %{_datadir}/src/nvidia-patch diff --git a/anda/system/nvidia/compat-nvidia-repo/compat-nvidia-repo.spec b/anda/system/nvidia/compat-nvidia-repo/compat-nvidia-repo.spec index bfd58edfaa..c5357ec6fc 100644 --- a/anda/system/nvidia/compat-nvidia-repo/compat-nvidia-repo.spec +++ b/anda/system/nvidia/compat-nvidia-repo/compat-nvidia-repo.spec @@ -1,20 +1,16 @@ Name: compat-nvidia-repo -Version: 595.58.03 +Version: 610.43.02 Epoch: 3 Release: 1%{?dist} Summary: Compatibility package required by official CUDA packages License: NVIDIA License URL: https://developer.nvidia.com/cuda-toolkit - -BuildArch: noarch - Requires: nvidia-driver >= %{?epoch:%{epoch}:}%{version} Requires: nvidia-driver-cuda >= %{?epoch:%{epoch}:}%{version} Requires: nvidia-driver-cuda-libs >= %{?epoch:%{epoch}:}%{version} Requires: nvidia-driver-libs >= %{?epoch:%{epoch}:}%{version} Requires: nvidia-kmod >= %{?epoch:%{epoch}:}%{version} Requires: nvidia-settings >= %{?epoch:%{epoch}:}%{version} - Provides: cuda-drivers >= %{?epoch:%{epoch}:}%{version} Provides: nvidia-open >= %{?epoch:%{epoch}:}%{version} # Add any versioned provides: @@ -22,6 +18,8 @@ Provides: cuda-drivers-560 >= %{?epoch:%{epoch}:}%{version} Provides: cuda-drivers-565 >= %{?epoch:%{epoch}:}%{version} Provides: nvidia-open-560 >= %{?epoch:%{epoch}:}%{version} Provides: nvidia-open-565 >= %{?epoch:%{epoch}:}%{version} +BuildArch: noarch +Packager: Terra Packaging Team %description Nvidia drivers metapackage required by official CUDA packages. It pulls in all @@ -31,4 +29,5 @@ Nvidia driver components. # Without an empty files section the package is not created. %changelog -%autochangelog +* Mon Apr 13 2026 Gilver E. - 3:595.58.03-2 +- Update spec for Terra packaging team diff --git a/anda/system/nvidia/dkms-nvidia/0001-Enable-atomic-kernel-modesetting-by-default.patch b/anda/system/nvidia/dkms-nvidia/0001-Enable-atomic-kernel-modesetting-by-default.patch deleted file mode 100644 index 6aadd9a370..0000000000 --- a/anda/system/nvidia/dkms-nvidia/0001-Enable-atomic-kernel-modesetting-by-default.patch +++ /dev/null @@ -1,44 +0,0 @@ -From 60d1ddc17835226ec67ed1bc1c28524e3bb6e151 Mon Sep 17 00:00:00 2001 -From: Peter Jung -Date: Sun, 20 Apr 2025 18:13:22 +0200 -Subject: [PATCH 1/8] Enable atomic kernel modesetting by default - -This is required for proper functionality under Wayland. fbdev has been default enabled since 570 so that -hunk can be removed from this patch. - -Signed-off-by: Peter Jung ---- - kernel-open/nvidia-drm/nvidia-drm-linux.c | 2 +- - kernel-open/nvidia-drm/nvidia-drm-os-interface.c | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git an/kernel-open/nvidia-drm/nvidia-drm-linux.c b/kernel-open/nvidia-drm/nvidia-drm-linux.c -index 3cb1815d..209cb469 100644 ---- a/kernel-open/nvidia-drm/nvidia-drm-linux.c -+++ b/kernel-open/nvidia-drm/nvidia-drm-linux.c -@@ -31,7 +31,7 @@ - - MODULE_PARM_DESC( - modeset, -- "Enable atomic kernel modesetting (1 = enable, 0 = disable (default))"); -+ "Enable atomic kernel modesetting (1 = enable (default), 0 = disable)"); - module_param_named(modeset, nv_drm_modeset_module_param, bool, 0400); - - #if defined(NV_DRM_FBDEV_AVAILABLE) -diff --git a/kernel-open/nvidia-drm/nvidia-drm-os-interface.c b/kernel-open/nvidia-drm/nvidia-drm-os-interface.c -index 7617476d..f22afd77 100644 ---- a/kernel-open/nvidia-drm/nvidia-drm-os-interface.c -+++ b/kernel-open/nvidia-drm/nvidia-drm-os-interface.c -@@ -41,7 +41,7 @@ - #include - #endif - --bool nv_drm_modeset_module_param = false; -+bool nv_drm_modeset_module_param = true; - bool nv_drm_fbdev_module_param = true; - - void *nv_drm_calloc(size_t nmemb, size_t size) --- -2.49.0.391.g4bbb303af6 - - diff --git a/anda/system/nvidia/dkms-nvidia/6.19-590.patch b/anda/system/nvidia/dkms-nvidia/6.19-590.patch deleted file mode 100644 index 2bca90ba17..0000000000 --- a/anda/system/nvidia/dkms-nvidia/6.19-590.patch +++ /dev/null @@ -1,130 +0,0 @@ -From c9457ce40a6af2ce74c520564e2d8775f49e3d27 Mon Sep 17 00:00:00 2001 -From: Eric Naim -Date: Thu, 18 Dec 2025 12:36:06 +0800 -Subject: [PATCH 3/3] Fix compile for 6.19 - -Contains: -- Rename page_free callback -> folio_free callback for 6.19+ -- Adjust zone_device_page_init() call for 6.19; it has one extra argument now -- 6.19-rc8 introduced yet another argument for zone_device_page_init() - -Link: https://github.com/torvalds/linux/commit/12b2285bf3d14372238d36215b73af02ac3bdfc1 -Signed-off-by: Eric Naim ---- - kernel-open/nvidia-uvm/uvm_hmm.c | 4 ++++ - kernel-open/nvidia-uvm/uvm_pmm_gpu.c | 34 ++++++++++++++++++++++++++++ - 2 files changed, 38 insertions(+) - -diff --git a/kernel-open/nvidia-uvm/uvm_hmm.c b/kernel-open/nvidia-uvm/uvm_hmm.c -index 9b676f971385..22db001384a4 100644 ---- a/kernel-open/nvidia-uvm/uvm_hmm.c -+++ b/kernel-open/nvidia-uvm/uvm_hmm.c -@@ -2140,7 +2140,11 @@ static void fill_dst_pfn(uvm_va_block_t *va_block, - - UVM_ASSERT(!page_count(dpage)); - UVM_ASSERT(!dpage->zone_device_data); -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) -+ zone_device_page_init(dpage, page_pgmap(dpage), 0); -+#else - zone_device_page_init(dpage); -+#endif - dpage->zone_device_data = gpu_chunk; - atomic64_inc(&va_block->hmm.va_space->hmm.allocated_page_count); - } -diff --git a/kernel-open/nvidia-uvm/uvm_pmm_gpu.c b/kernel-open/nvidia-uvm/uvm_pmm_gpu.c -index 97ff13dcdd04..98423002776b 100644 ---- a/kernel-open/nvidia-uvm/uvm_pmm_gpu.c -+++ b/kernel-open/nvidia-uvm/uvm_pmm_gpu.c -@@ -177,6 +177,8 @@ - #include "uvm_test.h" - #include "uvm_linux.h" - -+#include -+ - #if defined(CONFIG_PCI_P2PDMA) && defined(NV_STRUCT_PAGE_HAS_ZONE_DEVICE_DATA) - #include - #endif -@@ -2999,8 +3001,14 @@ static bool uvm_pmm_gpu_check_orphan_pages(uvm_pmm_gpu_t *pmm) - return ret; - } - -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) -+static void devmem_folio_free(struct folio *folio) -+{ -+ struct page *page = &folio->page; -+#else - static void devmem_page_free(struct page *page) - { -+#endif - uvm_gpu_chunk_t *chunk = uvm_pmm_devmem_page_to_chunk(page); - uvm_gpu_t *gpu = uvm_gpu_chunk_get_gpu(chunk); - -@@ -3060,7 +3068,11 @@ static vm_fault_t devmem_fault_entry(struct vm_fault *vmf) - - static const struct dev_pagemap_ops uvm_pmm_devmem_ops = - { -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) -+ .folio_free = devmem_folio_free, -+#else - .page_free = devmem_page_free, -+#endif - .migrate_to_ram = devmem_fault_entry, - }; - -@@ -3148,8 +3160,14 @@ static void device_p2p_page_free_wake(struct nv_kref *ref) - wake_up(&p2p_mem->waitq); - } - -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) -+static void device_p2p_folio_free(struct folio *folio) -+{ -+ struct page *page = &folio->page; -+#else - static void device_p2p_page_free(struct page *page) - { -+#endif - uvm_device_p2p_mem_t *p2p_mem = page->zone_device_data; - - page->zone_device_data = NULL; -@@ -3158,14 +3176,26 @@ static void device_p2p_page_free(struct page *page) - #endif - - #if UVM_CDMM_PAGES_SUPPORTED() -+ -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) -+static void device_coherent_folio_free(struct folio *folio) -+{ -+ device_p2p_folio_free(folio); -+} -+#else - static void device_coherent_page_free(struct page *page) - { - device_p2p_page_free(page); - } -+#endif - - static const struct dev_pagemap_ops uvm_device_coherent_pgmap_ops = - { -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) -+ .folio_free = device_coherent_folio_free, -+#else - .page_free = device_coherent_page_free, -+#endif - }; - - static NV_STATUS uvm_pmm_cdmm_init(uvm_parent_gpu_t *parent_gpu) -@@ -3302,7 +3332,11 @@ static bool uvm_pmm_gpu_check_orphan_pages(uvm_pmm_gpu_t *pmm) - - static const struct dev_pagemap_ops uvm_device_p2p_pgmap_ops = - { -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) -+ .folio_free = device_p2p_folio_free, -+#else - .page_free = device_p2p_page_free, -+#endif - }; - - void uvm_pmm_gpu_device_p2p_init(uvm_parent_gpu_t *parent_gpu) --- -2.52.0 - diff --git a/anda/system/nvidia/dkms-nvidia/dkms-nvidia.spec b/anda/system/nvidia/dkms-nvidia/dkms-nvidia.spec index bf400e099d..274bc25338 100644 --- a/anda/system/nvidia/dkms-nvidia/dkms-nvidia.spec +++ b/anda/system/nvidia/dkms-nvidia/dkms-nvidia.spec @@ -4,32 +4,31 @@ %global modulename nvidia Name: dkms-%{modulename} -Version: 590.48.01 -Release: 2%?dist +Version: 610.43.02 +Release: 1%{?dist} Summary: NVIDIA display driver kernel module Epoch: 3 License: NVIDIA License URL: https://www.nvidia.com/object/unix.html -Source0: https://github.com/NVIDIA/open-gpu-kernel-modules/archive/%{version}/open-gpu-kernel-modules-%{version}.tar.gz +Source0: https://download.nvidia.com/XFree86/NVIDIA-kernel-module-source/NVIDIA-kernel-module-source-%{version}.tar.xz Source1: %{name}.conf -Patch0: 0001-Enable-atomic-kernel-modesetting-by-default.patch -Patch1: 6.19-590.patch BuildRequires: sed -Provides: %{modulename}-kmod = %{?epoch:%{epoch}:}%{version} Requires: %{modulename}-kmod-common = %{?epoch:%{epoch}:}%{version} Requires: dkms -Requires: gcc-c++ -Conflicts: akmod-nvidia -# Unlike most DKMS packages, this package is NOT noarch! -ExclusiveArch: x86_64 aarch64 +Provides: %{modulename}-kmod = %{?epoch:%{epoch}:}%{version} Provides: %{name}-open = %{?epoch:%{epoch}:}%{version} Obsoletes: %{name}-open < %{?epoch:%{epoch}:}%{version} +Conflicts: akmod-%{modulename} +Conflicts: %{modulename}-kmod-580xx +# Unlike most DKMS packages, this package is NOT noarch! +ExclusiveArch: x86_64 aarch64 +Packager: Terra Packaging Team %description This package provides the NVIDIA kernel driver modules. %prep -%autosetup -p1 -n open-gpu-kernel-modules-%{version} +%autosetup -p1 -n NVIDIA-kernel-module-source-%{version} cp -f %{SOURCE1} dkms.conf @@ -57,4 +56,6 @@ dkms remove -m %{modulename} -v %{version} -q --all --rpm_safe_upgrade || : %{_usrsrc}/%{modulename}-%{version} %changelog -%autochangelog +* Mon Apr 13 2026 Gilver E. - 3:595.58.03-2 +- Update patches for DSC functionality +- Update spec for Terra packaging team diff --git a/anda/system/nvidia/libva-nvidia-driver/anda.hcl b/anda/system/nvidia/libva-nvidia-driver/anda.hcl deleted file mode 100644 index 007aa44ec7..0000000000 --- a/anda/system/nvidia/libva-nvidia-driver/anda.hcl +++ /dev/null @@ -1,11 +0,0 @@ -project "pkg" { - rpm { - spec = "libva-nvidia-driver.spec" - } - arches = ["x86_64", "aarch64", "i386"] - labels = { - subrepo = "nvidia" - mock = 1 - nightly = 1 - } -} diff --git a/anda/system/nvidia/libva-nvidia-driver/libva-nvidia-driver.spec b/anda/system/nvidia/libva-nvidia-driver/libva-nvidia-driver.spec deleted file mode 100644 index 71f4ae5c78..0000000000 --- a/anda/system/nvidia/libva-nvidia-driver/libva-nvidia-driver.spec +++ /dev/null @@ -1,76 +0,0 @@ -%global commit0 c4e1788b6d554f29adec31f3f8aa984c143c54c1 -%global date 20260311 -%global shortcommit0 %(c=%{commit0}; echo ${c:0:7}) - -%global upstream_name nvidia-vaapi-driver - -%ifarch %ix86 -%global build_cflags %{__build_flags_lang_c} %{?_distro_extra_cflags} -Wno-error=format= -%endif - -Name: libva-nvidia-driver -Epoch: 1 -Version: 0.0.16%{!?tag:^%{date}git%{shortcommit0}} -Release: 1%{?dist} -Summary: VA-API user mode driver for Nvidia GPUs -License: MIT -URL: https://github.com/elFarto/%{upstream_name} - -%if "%{?shortcommit0}" -Source0: %{url}/archive/%{commit0}/%{upstream_name}-%{commit0}.tar.gz#/%{upstream_name}-%{shortcommit0}.tar.gz -%else -Source0: %{url}/archive/v%{version}/%{upstream_name}-%{version}.tar.gz -%endif - -BuildRequires: gcc -BuildRequires: meson >= 0.58.0 -BuildRequires: pkgconfig(egl) -BuildRequires: pkgconfig(ffnvcodec) >= 11.1.5.1 -%if 0%{?fedora} || 0%{?rhel} >= 9 -BuildRequires: pkgconfig(gstreamer-codecparsers-1.0) -%endif -BuildRequires: pkgconfig(libdrm) >= 2.4.60 -BuildRequires: pkgconfig(libva) >= 1.8.0 - -Conflicts: libva-vdpau-driver%{?_isa} -Obsoletes: %{upstream_name} < 0.0.10-3 -Provides: %{upstream_name} = %{version}-%{release} -# Alternative name that better describes the API involved -Provides: nvdec-vaapi-driver = %{version}-%{release} - -Requires: mesa-filesystem -%if 0%{?fedora} -%ifarch x86_64 -Requires: (%{name}(x86-32) = %{?epoch:%{epoch}:}%{version}-%{release} if steam(x86-32)) -%endif -%endif - -%description -This is a VA-API implementation that uses NVDEC as a backend. This -implementation is specifically designed to be used by Firefox for accelerated -decode of web content, and may not operate correctly in other applications. - -%prep -%if "%{?shortcommit0}" -%autosetup -p1 -n %{upstream_name}-%{commit0} -%else -%autosetup -p1 -n %{upstream_name}-%{version} -%endif - -%build -%meson -%meson_build - -%install -%meson_install - -%check -%meson_test - -%files -%license COPYING -%doc README.md -%{_libdir}/dri/nvidia_drv_video.so - -%changelog -%autochangelog diff --git a/anda/system/nvidia/libva-nvidia-driver/update.rhai b/anda/system/nvidia/libva-nvidia-driver/update.rhai deleted file mode 100644 index fb6821cfbc..0000000000 --- a/anda/system/nvidia/libva-nvidia-driver/update.rhai +++ /dev/null @@ -1,8 +0,0 @@ -rpm.global("commit0", gh_commit("elFarto/nvidia-vaapi-driver")); -if rpm.changed() { - let v = gh("elFarto/nvidia-vaapi-driver"); - v.crop(1); - v += "%{!?tag:^%{date}git%{shortcommit0}}"; - rpm.version(v); - rpm.global("date", date()); -} diff --git a/anda/system/nvidia/nvidia-container-toolkit/nvidia-container-toolkit.spec b/anda/system/nvidia/nvidia-container-toolkit/nvidia-container-toolkit.spec index c0cd6ec7de..1c718ef80c 100644 --- a/anda/system/nvidia/nvidia-container-toolkit/nvidia-container-toolkit.spec +++ b/anda/system/nvidia/nvidia-container-toolkit/nvidia-container-toolkit.spec @@ -1,5 +1,5 @@ Name: nvidia-container-toolkit -Version: 1.19.0 +Version: 1.19.1 Release: 1%{?dist} Summary: NVIDIA Container Toolkit License: Apache-2.0 diff --git a/anda/system/nvidia/nvidia-driver/70-nvidia-driver.preset b/anda/system/nvidia/nvidia-driver/70-nvidia-driver.preset index f897d23a61..b9645ecb7b 100644 --- a/anda/system/nvidia/nvidia-driver/70-nvidia-driver.preset +++ b/anda/system/nvidia/nvidia-driver/70-nvidia-driver.preset @@ -1,11 +1,3 @@ -# Enable complete power management. From: -# file:///usr/share/doc/nvidia-driver/html/powermanagement.html - -enable nvidia-hibernate.service -enable nvidia-resume.service -enable nvidia-suspend.service -enable nvidia-suspend-then-hibernate.service - # Enable Dynamic Boost. From: # file:///usr/share/doc/nvidia-driver/html/dynamicboost.html diff --git a/anda/system/nvidia/nvidia-driver/nvidia-driver.spec b/anda/system/nvidia/nvidia-driver/nvidia-driver.spec index ee52a4b292..751fca0f9d 100644 --- a/anda/system/nvidia/nvidia-driver/nvidia-driver.spec +++ b/anda/system/nvidia/nvidia-driver/nvidia-driver.spec @@ -1,6 +1,5 @@ %global debug_package %{nil} -%global __strip %{nil} -%global __brp_strip_comment_note %{nil} +%global __brp_strip %{nil} %global __brp_ldconfig %{nil} %define _build_id_links none @@ -10,24 +9,20 @@ %endif Name: nvidia-driver -Version: 595.58.03 +Version: 610.43.02 Release: 1%{?dist} Summary: NVIDIA's proprietary display driver for NVIDIA graphic cards Epoch: 3 License: NVIDIA License URL: http://www.nvidia.com/object/unix.html -ExclusiveArch: %{ix86} x86_64 aarch64 Source8: 70-nvidia-driver.preset Source9: 70-nvidia-driver-cuda.preset Source10: 10-nvidia.conf Source13: alternate-install-present - Source40: com.nvidia.driver.metainfo.xml Source41: parse-supported-gpus.py Source42: com.nvidia.driver.png - Source99: nvidia-generate-tarballs.sh - %ifarch x86_64 aarch64 BuildRequires: libappstream-glib %if 0%{?rhel} == 8 @@ -40,14 +35,14 @@ BuildRequires: systemd-rpm-macros %endif BuildRequires: wget BuildRequires: coreutils - Requires: nvidia-driver-libs%{?_isa} = %{?epoch:%{epoch}:}%{version} Requires: nvidia-kmod-common = %{?epoch:%{epoch}:}%{version} - Conflicts: nvidia-x11-drv Conflicts: nvidia-x11-drv-470xx Conflicts: xorg-x11-drv-nvidia Conflicts: xorg-x11-drv-nvidia-470xx +ExclusiveArch: %{ix86} x86_64 aarch64 +Packager: Terra Packaging Team %description This package provides the most recent NVIDIA display driver which allows for @@ -78,7 +73,6 @@ Requires: vulkan-loader Requires: libnvidia-gpucomp%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} Requires: libnvidia-ml%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} Requires: %{name}-cuda-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} - Conflicts: nvidia-x11-drv-libs Conflicts: nvidia-x11-drv-470xx-libs Conflicts: xorg-x11-drv-nvidia-libs @@ -92,7 +86,6 @@ Summary: Libraries for %{name}-cuda Requires: %{name}-cuda-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} Provides: %{name}-devel = %{?epoch:%{epoch}:}%{version}-%{release} Obsoletes: %{name}-devel < %{?epoch:%{epoch}:}%{version}-%{release} - # dlopened: %ifarch x86_64 aarch64 Requires: libnvidia-cfg = %{?epoch:%{epoch}:}%{version}-%{release} @@ -104,7 +97,6 @@ Requires: libnvidia-ml = %{?epoch:%{epoch}:}%{version}-%{release} Requires: (%{name}-cuda-libs(x86-32) = %{?epoch:%{epoch}:}%{version}-%{release} if steam(x86-32)) %endif %endif - Conflicts: xorg-x11-drv-nvidia-cuda-libs Conflicts: xorg-x11-drv-nvidia-470xx-cuda-libs @@ -172,7 +164,6 @@ Requires: nvidia-kmod-common = %{?epoch:%{epoch}:}%{version} Requires: nvidia-persistenced = %{?epoch:%{epoch}:}%{version} Requires: (ocl-icd or OpenCL-ICD-Loader) Requires: opencl-filesystem - Conflicts: xorg-x11-drv-nvidia-cuda Conflicts: xorg-x11-drv-nvidia-470xx-cuda @@ -185,7 +176,6 @@ Summary: X.org X11 NVIDIA driver and extensions Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version} Requires: xorg-x11-server-Xorg%{?_isa} Supplements: (nvidia-driver and xorg-x11-server-Xorg) - Conflicts: xorg-x11-drv-nvidia Conflicts: xorg-x11-drv-nvidia-470xx @@ -223,6 +213,13 @@ rm -f libnvidia-pkcs11.so.%{version} %endif %endif +# Avoid harmless Vulkan loader message: +# WARNING: [Loader Message] Code 0 : Path to given binary /usr/lib64/libGLX_nvidia.so.590.48.01 +# was found to differ from OS loaded path /usr/lib64/libGLX_nvidia.so.0 +# See also https://github.com/negativo17/nvidia-driver/issues/195 +mv libGLX_nvidia.so.%{version} libGLX_nvidia.so.0 +ln -sf libGLX_nvidia.so.0 libGLX_nvidia.so.%{version} + # Create symlinks for shared objects ldconfig -vn . @@ -293,7 +290,7 @@ install -p -m 0644 nvidia-{smi,cuda-mps-control}*.gz %{buildroot}%{_mandir}/man1 %if 0%{?fedora} || 0%{?rhel} < 10 # X stuff -install -p -m 0644 -D %{SOURCE10} %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/10-nvidia.conf +install -p -m 0644 -D nvidia-drm-outputclass.conf %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/10-nvidia.conf install -p -m 0755 -D nvidia_drv.so %{buildroot}%{_libdir}/xorg/modules/drivers/nvidia_drv.so install -p -m 0755 -D libglxserver_nvidia.so.%{version} %{buildroot}%{_libdir}/xorg/modules/extensions/libglxserver_nvidia.so %endif @@ -312,9 +309,7 @@ install -p -m 0644 nvoptix.bin %{buildroot}%{_datadir}/nvidia/ mkdir -p %{buildroot}%{_systemd_util_dir}/system-preset/ install -p -m 0644 %{SOURCE8} %{SOURCE9} %{buildroot}%{_systemd_util_dir}/system-preset/ mkdir -p %{buildroot}%{_unitdir}/ -install -p -m 0644 systemd/system/*.service %{buildroot}%{_unitdir}/ -install -p -m 0755 systemd/nvidia-sleep.sh %{buildroot}%{_bindir}/ -install -p -m 0755 -D systemd/system-sleep/nvidia %{buildroot}%{_systemd_util_dir}/system-sleep/nvidia +cp -frv systemd/system/systemd-* systemd/system/nvidia-powerd.service %{buildroot}%{_unitdir}/ install -p -m 0644 -D nvidia-dbus.conf %{buildroot}%{_datadir}/dbus-1/system.d/nvidia-dbus.conf # Ignore powerd binary exiting if hardware is not present @@ -351,25 +346,13 @@ appstream-util validate --nonet %{buildroot}%{_metainfodir}/com.nvidia.driver.me %ifarch x86_64 aarch64 %post -%systemd_post nvidia-hibernate.service %systemd_post nvidia-powerd.service -%systemd_post nvidia-resume.service -%systemd_post nvidia-suspend.service -%systemd_post nvidia-suspend-then-hibernate.service %preun -%systemd_preun nvidia-hibernate.service %systemd_preun nvidia-powerd.service -%systemd_preun nvidia-resume.service -%systemd_preun nvidia-suspend.service -%systemd_preun nvidia-suspend-then-hibernate.service %postun -%systemd_postun nvidia-hibernate.service %systemd_postun nvidia-powerd.service -%systemd_postun nvidia-resume.service -%systemd_postun nvidia-suspend.service -%systemd_postun nvidia-suspend-then-hibernate.service %endif @@ -384,18 +367,20 @@ appstream-util validate --nonet %{buildroot}%{_metainfodir}/com.nvidia.driver.me %{_bindir}/nvidia-pcc %endif %{_bindir}/nvidia-powerd -%{_bindir}/nvidia-sleep.sh %{_metainfodir}/com.nvidia.driver.metainfo.xml %{_datadir}/dbus-1/system.d/nvidia-dbus.conf %{_datadir}/nvidia/nvidia-application-profiles* %{_datadir}/pixmaps/com.nvidia.driver.png %{_systemd_util_dir}/system-preset/70-nvidia-driver.preset -%{_systemd_util_dir}/system-sleep/nvidia -%{_unitdir}/nvidia-hibernate.service %{_unitdir}/nvidia-powerd.service -%{_unitdir}/nvidia-resume.service -%{_unitdir}/nvidia-suspend.service -%{_unitdir}/nvidia-suspend-then-hibernate.service +%dir %{_unitdir}/systemd-suspend.service.d +%{_unitdir}/systemd-suspend.service.d/nvidia-suspend-nofreeze.conf +%dir %{_unitdir}/systemd-hibernate.service.d +%{_unitdir}/systemd-hibernate.service.d/nvidia-suspend-nofreeze.conf +%dir %{_unitdir}/systemd-suspend-then-hibernate.service.d +%{_unitdir}/systemd-suspend-then-hibernate.service.d/nvidia-suspend-nofreeze.conf +%dir %{_unitdir}/systemd-hybrid-sleep.service.d +%{_unitdir}/systemd-hybrid-sleep.service.d/nvidia-suspend-nofreeze.conf %if 0%{?fedora} < 42 || 0%{?rhel} %{_sysconfdir}/dnf/plugins/needs-restarting.d/%{name}.conf %endif @@ -465,7 +450,6 @@ appstream-util validate --nonet %{buildroot}%{_metainfodir}/com.nvidia.driver.me %endif %ifarch x86_64 %{_datadir}/vulkansc/icd.d/nvidia_icd.%{_target_cpu}.json -%{_libdir}/libnvidia-present.so.%{version} %{_libdir}/libnvidia-vksc-core.so.1 %{_libdir}/libnvidia-vksc-core.so.%{version} %dir %{_libdir}/nvidia @@ -521,4 +505,5 @@ appstream-util validate --nonet %{buildroot}%{_metainfodir}/com.nvidia.driver.me %{_libdir}/libnvidia-ml.so.%{version} %changelog -%autochangelog +* Mon Apr 13 2026 Gilver E. - 3:595.58.03-2 +- Update spec for Terra packaging team diff --git a/anda/system/nvidia/nvidia-driver/nvidia-generate-tarballs.sh b/anda/system/nvidia/nvidia-driver/nvidia-generate-tarballs.sh index f21afc002e..40942b422f 100755 --- a/anda/system/nvidia/nvidia-driver/nvidia-generate-tarballs.sh +++ b/anda/system/nvidia/nvidia-driver/nvidia-generate-tarballs.sh @@ -17,7 +17,17 @@ set_vars() { run_file_get() { printf "Downloading installer ${RUN_FILE}... " - [[ -f $RUN_FILE ]] || wget -c -q ${DL_SITE}/${PLATFORM}/${VERSION}/$RUN_FILE + if [[ ! -f $RUN_FILE ]]; then + # Orgininal comment from Negativo: "This is getting ridiculous" + # My comment: It sure fucking is. + if wget -q -S --spider https://download.nvidia.com/XFree86/${PLATFORM}/${VERSION}/$RUN_FILE; then + wget -q https://download.nvidia.com/XFree86/${PLATFORM}/${VERSION}/$RUN_FILE + elif wget -q -S --spider https://us.download.nvidia.com/XFree86/${PLATFORM}/${VERSION}/$RUN_FILE; then + wget -q https://us.download.nvidia.com/XFree86/${PLATFORM}/${VERSION}/$RUN_FILE + else + wget -q https://us.download.nvidia.com/tesla/${VERSION}/$RUN_FILE + fi + fi printf "OK\n" } @@ -26,8 +36,8 @@ run_file_extract() { sh ${RUN_FILE} --extract-only --target ${TEMP_UNPACK} } -cleanup_folder() { +cleanup_folder() { printf "Cleaning up binaries... " cd ${TEMP_UNPACK} @@ -36,7 +46,9 @@ cleanup_folder() { # - Compiled from source # - Interactive installer files # - GLVND GL libraries - # - Internal development only libraries + # - GLVND test scripts + # - Closed source modules + # - Open source modules with precompiled c++ code rm -r \ nvidia-xconfig* \ nvidia-persistenced* \ @@ -49,7 +61,7 @@ cleanup_folder() { libEGL.so.${VERSION} \ nvidia-installer* .manifest make* mk* libglvnd_install_checker \ 15_nvidia_gbm.json 10_nvidia_wayland.json 20_nvidia_xcb.json 20_nvidia_xlib.json \ - 99_nvidia_wayland2.json \ + 09_nvidia_wayland2.json \ kernel kernel-open if [ "${ARCH}" == x86_64 ]; then @@ -70,7 +82,6 @@ cleanup_folder() { } create_tarball() { - KMOD_COMMON=nvidia-kmod-common-${VERSION} USR_64=nvidia-driver-${VERSION}-${ARCH} USR_32=nvidia-driver-${VERSION}-i386 @@ -80,7 +91,7 @@ create_tarball() { mv ${TEMP_UNPACK}/firmware ${TEMP_UNPACK}/nvidia-bug-report.sh ${KMOD_COMMON}/ if [ "$ARCH" == x86_64 ]; then - mkdir ${USR_32} + mkdir ${USR_32} mv ${TEMP_UNPACK}/32/* ${USR_32}/ rm -fr ${TEMP_UNPACK}/32 else diff --git a/anda/system/nvidia/nvidia-kmod-common/anda.hcl b/anda/system/nvidia/nvidia-kmod-common/anda.hcl index ae7a91b959..8afbe4682c 100644 --- a/anda/system/nvidia/nvidia-kmod-common/anda.hcl +++ b/anda/system/nvidia/nvidia-kmod-common/anda.hcl @@ -1,10 +1,10 @@ project "pkg" { + arches = ["x86_64"] rpm { spec = "nvidia-kmod-common.spec" } - arches = ["x86_64"] labels = { subrepo = "nvidia" - weekly = 3 + updbranch = 1 } } diff --git a/anda/system/nvidia/nvidia-kmod-common/nvidia-kmod-common.spec b/anda/system/nvidia/nvidia-kmod-common/nvidia-kmod-common.spec index 71cfd81bee..658e6bce14 100644 --- a/anda/system/nvidia/nvidia-kmod-common/nvidia-kmod-common.spec +++ b/anda/system/nvidia/nvidia-kmod-common/nvidia-kmod-common.spec @@ -5,25 +5,20 @@ %global __brp_strip %{nil} Name: nvidia-kmod-common -Version: 595.58.03 +Version: 610.43.02 Release: 1%{?dist} Summary: Common file for NVIDIA's proprietary driver kernel modules Epoch: 3 License: NVIDIA License URL: http://www.nvidia.com/object/unix.html - -BuildArch: noarch - Source0: http://download.nvidia.com/XFree86/Linux-x86_64/%{version}/NVIDIA-Linux-x86_64-%{version}.run Source17: nvidia-boot-update Source19: nvidia-modeset.conf Source20: nvidia.conf Source21: 60-nvidia.rules Source24: 99-nvidia.conf - # UDev rule location (_udevrulesdir) and systemd macros: BuildRequires: systemd-rpm-macros - Requires: dracut Requires: nvidia-modprobe Requires: nvidia-driver = %{?epoch:%{epoch}:}%{version} @@ -33,6 +28,8 @@ Requires: gcc-c++ Provides: nvidia-kmod-common = %{?epoch:%{epoch}:}%{version} Obsoletes: nvidia-open-kmod-common < %{?epoch:%{epoch}:}%{version} Obsoletes: cuda-nvidia-kmod-common < %{?epoch:%{epoch}:}%{version} +BuildArch: noarch +Packager: Terra Packaging Team %description This package provides the common files required by all NVIDIA kernel module @@ -88,4 +85,5 @@ fi ||: %{_udevrulesdir}/60-nvidia.rules %changelog -%autochangelog +* Mon Apr 13 2026 Gilver E. - 3:595.58.03-2 +- Update spec for Terra packaging team diff --git a/anda/system/nvidia/nvidia-kmod-common/update.rhai b/anda/system/nvidia/nvidia-kmod-common/update.rhai index e5eff132c0..3b53503809 100644 --- a/anda/system/nvidia/nvidia-kmod-common/update.rhai +++ b/anda/system/nvidia/nvidia-kmod-common/update.rhai @@ -1,3 +1,3 @@ -import "andax/nvidia.rhai" as nvidia; +import "andax/bump_extras.rhai" as bump; -rpm.version(nvidia::nvidia_driver_version()); +rpm.version(bump::madoguchi("nvidia-driver", labels.branch)); diff --git a/anda/system/nvidia/nvidia-kmod/0001-Enable-atomic-kernel-modesetting-by-default.patch b/anda/system/nvidia/nvidia-kmod/0001-Enable-atomic-kernel-modesetting-by-default.patch deleted file mode 100644 index 6aadd9a370..0000000000 --- a/anda/system/nvidia/nvidia-kmod/0001-Enable-atomic-kernel-modesetting-by-default.patch +++ /dev/null @@ -1,44 +0,0 @@ -From 60d1ddc17835226ec67ed1bc1c28524e3bb6e151 Mon Sep 17 00:00:00 2001 -From: Peter Jung -Date: Sun, 20 Apr 2025 18:13:22 +0200 -Subject: [PATCH 1/8] Enable atomic kernel modesetting by default - -This is required for proper functionality under Wayland. fbdev has been default enabled since 570 so that -hunk can be removed from this patch. - -Signed-off-by: Peter Jung ---- - kernel-open/nvidia-drm/nvidia-drm-linux.c | 2 +- - kernel-open/nvidia-drm/nvidia-drm-os-interface.c | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git an/kernel-open/nvidia-drm/nvidia-drm-linux.c b/kernel-open/nvidia-drm/nvidia-drm-linux.c -index 3cb1815d..209cb469 100644 ---- a/kernel-open/nvidia-drm/nvidia-drm-linux.c -+++ b/kernel-open/nvidia-drm/nvidia-drm-linux.c -@@ -31,7 +31,7 @@ - - MODULE_PARM_DESC( - modeset, -- "Enable atomic kernel modesetting (1 = enable, 0 = disable (default))"); -+ "Enable atomic kernel modesetting (1 = enable (default), 0 = disable)"); - module_param_named(modeset, nv_drm_modeset_module_param, bool, 0400); - - #if defined(NV_DRM_FBDEV_AVAILABLE) -diff --git a/kernel-open/nvidia-drm/nvidia-drm-os-interface.c b/kernel-open/nvidia-drm/nvidia-drm-os-interface.c -index 7617476d..f22afd77 100644 ---- a/kernel-open/nvidia-drm/nvidia-drm-os-interface.c -+++ b/kernel-open/nvidia-drm/nvidia-drm-os-interface.c -@@ -41,7 +41,7 @@ - #include - #endif - --bool nv_drm_modeset_module_param = false; -+bool nv_drm_modeset_module_param = true; - bool nv_drm_fbdev_module_param = true; - - void *nv_drm_calloc(size_t nmemb, size_t size) --- -2.49.0.391.g4bbb303af6 - - diff --git a/anda/system/nvidia/nvidia-kmod/6.19-590.patch b/anda/system/nvidia/nvidia-kmod/6.19-590.patch deleted file mode 100644 index 2bca90ba17..0000000000 --- a/anda/system/nvidia/nvidia-kmod/6.19-590.patch +++ /dev/null @@ -1,130 +0,0 @@ -From c9457ce40a6af2ce74c520564e2d8775f49e3d27 Mon Sep 17 00:00:00 2001 -From: Eric Naim -Date: Thu, 18 Dec 2025 12:36:06 +0800 -Subject: [PATCH 3/3] Fix compile for 6.19 - -Contains: -- Rename page_free callback -> folio_free callback for 6.19+ -- Adjust zone_device_page_init() call for 6.19; it has one extra argument now -- 6.19-rc8 introduced yet another argument for zone_device_page_init() - -Link: https://github.com/torvalds/linux/commit/12b2285bf3d14372238d36215b73af02ac3bdfc1 -Signed-off-by: Eric Naim ---- - kernel-open/nvidia-uvm/uvm_hmm.c | 4 ++++ - kernel-open/nvidia-uvm/uvm_pmm_gpu.c | 34 ++++++++++++++++++++++++++++ - 2 files changed, 38 insertions(+) - -diff --git a/kernel-open/nvidia-uvm/uvm_hmm.c b/kernel-open/nvidia-uvm/uvm_hmm.c -index 9b676f971385..22db001384a4 100644 ---- a/kernel-open/nvidia-uvm/uvm_hmm.c -+++ b/kernel-open/nvidia-uvm/uvm_hmm.c -@@ -2140,7 +2140,11 @@ static void fill_dst_pfn(uvm_va_block_t *va_block, - - UVM_ASSERT(!page_count(dpage)); - UVM_ASSERT(!dpage->zone_device_data); -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) -+ zone_device_page_init(dpage, page_pgmap(dpage), 0); -+#else - zone_device_page_init(dpage); -+#endif - dpage->zone_device_data = gpu_chunk; - atomic64_inc(&va_block->hmm.va_space->hmm.allocated_page_count); - } -diff --git a/kernel-open/nvidia-uvm/uvm_pmm_gpu.c b/kernel-open/nvidia-uvm/uvm_pmm_gpu.c -index 97ff13dcdd04..98423002776b 100644 ---- a/kernel-open/nvidia-uvm/uvm_pmm_gpu.c -+++ b/kernel-open/nvidia-uvm/uvm_pmm_gpu.c -@@ -177,6 +177,8 @@ - #include "uvm_test.h" - #include "uvm_linux.h" - -+#include -+ - #if defined(CONFIG_PCI_P2PDMA) && defined(NV_STRUCT_PAGE_HAS_ZONE_DEVICE_DATA) - #include - #endif -@@ -2999,8 +3001,14 @@ static bool uvm_pmm_gpu_check_orphan_pages(uvm_pmm_gpu_t *pmm) - return ret; - } - -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) -+static void devmem_folio_free(struct folio *folio) -+{ -+ struct page *page = &folio->page; -+#else - static void devmem_page_free(struct page *page) - { -+#endif - uvm_gpu_chunk_t *chunk = uvm_pmm_devmem_page_to_chunk(page); - uvm_gpu_t *gpu = uvm_gpu_chunk_get_gpu(chunk); - -@@ -3060,7 +3068,11 @@ static vm_fault_t devmem_fault_entry(struct vm_fault *vmf) - - static const struct dev_pagemap_ops uvm_pmm_devmem_ops = - { -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) -+ .folio_free = devmem_folio_free, -+#else - .page_free = devmem_page_free, -+#endif - .migrate_to_ram = devmem_fault_entry, - }; - -@@ -3148,8 +3160,14 @@ static void device_p2p_page_free_wake(struct nv_kref *ref) - wake_up(&p2p_mem->waitq); - } - -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) -+static void device_p2p_folio_free(struct folio *folio) -+{ -+ struct page *page = &folio->page; -+#else - static void device_p2p_page_free(struct page *page) - { -+#endif - uvm_device_p2p_mem_t *p2p_mem = page->zone_device_data; - - page->zone_device_data = NULL; -@@ -3158,14 +3176,26 @@ static void device_p2p_page_free(struct page *page) - #endif - - #if UVM_CDMM_PAGES_SUPPORTED() -+ -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) -+static void device_coherent_folio_free(struct folio *folio) -+{ -+ device_p2p_folio_free(folio); -+} -+#else - static void device_coherent_page_free(struct page *page) - { - device_p2p_page_free(page); - } -+#endif - - static const struct dev_pagemap_ops uvm_device_coherent_pgmap_ops = - { -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) -+ .folio_free = device_coherent_folio_free, -+#else - .page_free = device_coherent_page_free, -+#endif - }; - - static NV_STATUS uvm_pmm_cdmm_init(uvm_parent_gpu_t *parent_gpu) -@@ -3302,7 +3332,11 @@ static bool uvm_pmm_gpu_check_orphan_pages(uvm_pmm_gpu_t *pmm) - - static const struct dev_pagemap_ops uvm_device_p2p_pgmap_ops = - { -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) -+ .folio_free = device_p2p_folio_free, -+#else - .page_free = device_p2p_page_free, -+#endif - }; - - void uvm_pmm_gpu_device_p2p_init(uvm_parent_gpu_t *parent_gpu) --- -2.52.0 - diff --git a/anda/system/nvidia/nvidia-kmod/nvidia-kmod.spec b/anda/system/nvidia/nvidia-kmod/nvidia-kmod.spec index cc9fc097a0..e383f4526d 100644 --- a/anda/system/nvidia/nvidia-kmod/nvidia-kmod.spec +++ b/anda/system/nvidia/nvidia-kmod/nvidia-kmod.spec @@ -7,28 +7,26 @@ %undefine _auto_set_build_flags Name: nvidia-kmod -Version: 590.48.01 -Release: 5%{?dist} +Version: 610.43.02 +Release: 1%{?dist} Summary: NVIDIA display driver kernel module Epoch: 3 License: NVIDIA License URL: http://www.nvidia.com/object/unix.html -ExclusiveArch: x86_64 aarch64 - -Source0: https://github.com/NVIDIA/open-gpu-kernel-modules/archive/%{version}/open-gpu-kernel-modules-%{version}.tar.gz -Patch0: 0001-Enable-atomic-kernel-modesetting-by-default.patch -Patch1: 6.19-590.patch +Source0: https://download.nvidia.com/XFree86/NVIDIA-kernel-module-source/NVIDIA-kernel-module-source-%{version}.tar.xz +BuildRequires: gcc-c++ +BuildRequires: kmodtool Requires: nvidia-kmod-common = %{?epoch:%{epoch}:}%{version} Requires: akmods Provides: akmod-nvidia-open = %{?epoch:%{epoch}:}%{version} Obsoletes: akmod-nvidia-open < %{?epoch:%{epoch}:}%{version} - - -BuildRequires: gcc-c++ -BuildRequires: kmodtool +Conflicts: dkms-nvidia +Conflicts: nvidia-kmod-580xx +ExclusiveArch: x86_64 aarch64 +Packager: Terra Packaging Team # kmodtool does its magic here: -%{expand:%(kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } %description The NVidia %{version} display driver kernel module for kernel %{kversion}. @@ -37,18 +35,18 @@ The NVidia %{version} display driver kernel module for kernel %{kversion}. # Error out if there was something wrong with kmodtool: %{?kmodtool_check} # Print kmodtool output for debugging purposes: -kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null %setup -c -pushd open-gpu-kernel-modules-%{version} +pushd NVIDIA-kernel-module-source-%{version} %autopatch -p1 popd -rm -f open-gpu-kernel-modules-%{version}/dkms.conf +rm -f NVIDIA-kernel-module-source-%{version}/dkms.conf for kernel_version in %{?kernel_versions}; do - cp -fr open-gpu-kernel-modules-%{version} _kmod_build_${kernel_version%%___*} + cp -fr NVIDIA-kernel-module-source-%{version} _kmod_build_${kernel_version%%___*} done %build @@ -67,4 +65,6 @@ done %{?akmod_install} %changelog -%autochangelog +* Mon Apr 13 2026 Gilver E. - 3:595.58.03-3 +- Update patches for DSC functionality +- Update spec for Terra packaging team diff --git a/anda/system/nvidia/nvidia-modprobe/nvidia-modprobe.spec b/anda/system/nvidia/nvidia-modprobe/nvidia-modprobe.spec index 374e6781c4..76921dd604 100644 --- a/anda/system/nvidia/nvidia-modprobe/nvidia-modprobe.spec +++ b/anda/system/nvidia/nvidia-modprobe/nvidia-modprobe.spec @@ -1,18 +1,17 @@ Name: nvidia-modprobe -Version: 595.58.03 +Version: 610.43.02 Release: 1%{?dist} Summary: NVIDIA kernel module loader Epoch: 3 License: GPL-2.0-or-later URL: http://www.nvidia.com/object/unix.html -ExclusiveArch: x86_64 aarch64 - Source0: https://download.nvidia.com/XFree86/%{name}/%{name}-%{version}.tar.bz2 Patch0: %{name}-man-page-permissions.patch - BuildRequires: gcc BuildRequires: m4 BuildRequires: sed +ExclusiveArch: x86_64 aarch64 +Packager: Terra Packaging Team %description This utility is used by user-space NVIDIA driver components to make sure the @@ -45,4 +44,5 @@ make %{?_smp_mflags} \ %{_mandir}/man1/%{name}.1.* %changelog -%autochangelog +* Mon Apr 13 2026 Gilver E. - 3:595.58.03-2 +- Update spec for Terra packaging team diff --git a/anda/system/nvidia/nvidia-persistenced/nvidia-persistenced.spec b/anda/system/nvidia/nvidia-persistenced/nvidia-persistenced.spec index 7cd32e0fa3..189062f2b9 100644 --- a/anda/system/nvidia/nvidia-persistenced/nvidia-persistenced.spec +++ b/anda/system/nvidia/nvidia-persistenced/nvidia-persistenced.spec @@ -1,26 +1,24 @@ -Name: nvidia-persistenced -Version: 595.58.03 -Release: 1%{?dist} -Summary: A daemon to maintain persistent software state in the NVIDIA driver -Epoch: 3 -License: GPL-2.0-or-later -URL: http://www.nvidia.com/object/unix.html -ExclusiveArch: x86_64 aarch64 - -Source0: https://download.nvidia.com/XFree86/%{name}/%{name}-%{version}.tar.bz2 -Source1: %{name}.service -Source2: %{name}-sysusers.conf - +Name: nvidia-persistenced +Version: 610.43.02 +Release: 1%{?dist} +Summary: A daemon to maintain persistent software state in the NVIDIA driver +Epoch: 3 +License: GPL-2.0-or-later +URL: http://www.nvidia.com/object/unix.html +Source0: https://download.nvidia.com/XFree86/%{name}/%{name}-%{version}.tar.bz2 +Source1: %{name}.service +Source2: %{name}-sysusers.conf BuildRequires: gcc BuildRequires: libtirpc-devel BuildRequires: m4 BuildRequires: sed BuildRequires: systemd-rpm-macros - +Requires: libnvidia-cfg%{?_isa} >= %{?epoch:%{epoch}:}%{version} Requires(post): systemd Requires(preun): systemd Requires(postun): systemd -Requires: libnvidia-cfg%{?_isa} >= %{?epoch:%{epoch}:}%{version} +ExclusiveArch: x86_64 aarch64 +Packager: Terra Packaging Team %description The %{name} utility is used to enable persistent software state in the NVIDIA @@ -71,4 +69,5 @@ install -Dpm644 %{SOURCE2} %{buildroot}%{_sysusersdir}/%{name}.conf %{_sysusersdir}/%{name}.conf %changelog -%autochangelog +* Mon Apr 13 2026 Gilver E. - 3:595.58.03-2 +- Update spec for Terra packaging team diff --git a/anda/system/nvidia/nvidia-settings/nvidia-settings.spec b/anda/system/nvidia/nvidia-settings/nvidia-settings.spec index e7fc536f60..b4440885ec 100644 --- a/anda/system/nvidia/nvidia-settings/nvidia-settings.spec +++ b/anda/system/nvidia/nvidia-settings/nvidia-settings.spec @@ -1,12 +1,10 @@ Name: nvidia-settings -Version: 595.58.03 +Version: 610.43.02 Release: 1%{?dist} Summary: Configure the NVIDIA graphics driver Epoch: 3 License: GPL-2.0-or-later URL: http://www.nvidia.com/object/unix.html -ExclusiveArch: x86_64 aarch64 - Source0: https://download.nvidia.com/XFree86/%{name}/%{name}-%{version}.tar.bz2 Source1: %{name}-load.desktop Source2: %{name}.appdata.xml @@ -15,7 +13,6 @@ Patch1: %{name}-lib-permissions.patch Patch2: %{name}-link-order.patch Patch3: %{name}-libXNVCtrl.patch Patch4: %{name}-ld-dep-remove.patch - BuildRequires: desktop-file-utils BuildRequires: dbus-devel BuildRequires: gcc @@ -33,11 +30,12 @@ BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(wayland-client) BuildRequires: sed BuildRequires: vulkan-headers - Requires: nvidia-libXNVCtrl%{?_isa} = %{?epoch}:%{version}-%{release} Requires: nvidia-driver%{?_isa} = %{?epoch}:%{version} # Loaded at runtime Requires: libvdpau%{?_isa} >= 0.9 +ExclusiveArch: x86_64 aarch64 +Packager: Terra Packaging Team %description The %{name} utility is a tool for configuring the NVIDIA graphics @@ -131,4 +129,5 @@ appstream-util validate-relax --nonet %{buildroot}/%{_metainfodir}/%{name}.appda %{_libdir}/libXNVCtrl.so %changelog -%autochangelog +* Mon Apr 13 2026 Gilver E. - 3:595.58.03-2 +- Update spec for Terra packaging team diff --git a/anda/system/nvidia/nvidia-xconfig/nvidia-xconfig.spec b/anda/system/nvidia/nvidia-xconfig/nvidia-xconfig.spec index 3d38105f9d..91525b5601 100644 --- a/anda/system/nvidia/nvidia-xconfig/nvidia-xconfig.spec +++ b/anda/system/nvidia/nvidia-xconfig/nvidia-xconfig.spec @@ -1,21 +1,19 @@ Name: nvidia-xconfig -Version: 595.58.03 +Version: 610.43.02 Release: 1%{?dist} Summary: NVIDIA X configuration file editor Epoch: 3 License: GPL-2.0-or-later URL: http://www.nvidia.com/object/unix.html -ExclusiveArch: x86_64 aarch64 - Source0: https://download.nvidia.com/XFree86/%{name}/%{name}-%{version}.tar.bz2 - BuildRequires: gcc BuildRequires: libpciaccess-devel BuildRequires: m4 BuildRequires: sed - Requires: libnvidia-cfg%{?_isa} >= %{?epoch:%{epoch}:}%{version} Requires: xorg-x11-nvidia%{?_isa} >= %{?epoch:%{epoch}:}%{version} +ExclusiveArch: x86_64 aarch64 +Packager: Terra Packaging Team %description %{name} is a command line tool intended to provide basic control over @@ -49,4 +47,5 @@ make %{?_smp_mflags} \ %{_mandir}/man1/%{name}.1* %changelog -%autochangelog +* Mon Apr 13 2026 Gilver E. - 3:595.58.03-2 +- Update spec for Terra packaging team diff --git a/anda/system/opentabletdriver-nightly/opentabletdriver-nightly.spec b/anda/system/opentabletdriver-nightly/opentabletdriver-nightly.spec index 7df22fbc13..3d5e7c402f 100644 --- a/anda/system/opentabletdriver-nightly/opentabletdriver-nightly.spec +++ b/anda/system/opentabletdriver-nightly/opentabletdriver-nightly.spec @@ -1,13 +1,13 @@ -%global commit dfe5868d8af41e7e475013404002d3445ae154a1 +%global commit 6aa6d3a505ebd39d37d16ee4583d4870c178538c %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260322 -%global ver 0.6.6.2 +%global commit_date 20260604 +%global ver 0.6.7 # We aren't using Mono but RPM expected Mono %global __requires_exclude_from ^/usr/lib/opentabletdriver/.*$ %global __os_install_post %{nil} %define debug_package %nil -%global dotnet_runtime_version 8.0 +%global dotnet_runtime_version 10.0 Name: opentabletdriver-nightly Version: %ver^%commit_date.git~%shortcommit @@ -37,11 +37,11 @@ OpenTabletDriver is an open source, cross platform, user mode tablet driver. The %autosetup -n OpenTabletDriver-%commit %build -./eng/linux/package.sh --output bin +./eng/bash/package.sh --output bin %install export DONT_STRIP=1 -PREFIX="%{_prefix}" ./eng/linux/package.sh --package Generic --build false +PREFIX="%{_prefix}" ./eng/bash/package.sh --package Generic --build false mkdir -p "%{buildroot}" mv ./dist/files/* "%{buildroot}"/ rm -rf ./dist diff --git a/anda/system/opentabletdriver/opentabletdriver.spec b/anda/system/opentabletdriver/opentabletdriver.spec index 4d8e207818..8b9c235f9e 100644 --- a/anda/system/opentabletdriver/opentabletdriver.spec +++ b/anda/system/opentabletdriver/opentabletdriver.spec @@ -5,12 +5,12 @@ # We aren't using Mono but RPM expected Mono %global __requires_exclude_from ^/usr/lib/opentabletdriver/.*$ %global __os_install_post %{nil} -%global dotnet_sdk_version 8.0 +%global dotnet_sdk_version 10.0 %global dotnet_runtime_version 8.0 Name: opentabletdriver -Version: 0.6.6.2 -Release: 1%?dist +Version: 0.6.7 +Release: 1%{?dist} Summary: A cross-platform open source tablet driver License: LGPLv3 URL: https://github.com/OpenTabletDriver/OpenTabletDriver @@ -41,12 +41,12 @@ git clone -b v%version %url . %build cd %{otddir} -./eng/linux/package.sh --output bin +./eng/bash/package.sh --output bin %install cd %{otddir} export DONT_STRIP=1 -PREFIX="%{_prefix}" ./eng/linux/package.sh --package Generic --build false +PREFIX="%{_prefix}" ./eng/bash/package.sh --package Generic --build false mkdir -p "%{buildroot}" mv ./dist/files/* "%{buildroot}"/ rm -rf ./dist diff --git a/anda/system/pi-topd/Apache-2.0.txt b/anda/system/pi-topd/Apache-2.0.txt new file mode 100644 index 0000000000..d9a10c0d8e --- /dev/null +++ b/anda/system/pi-topd/Apache-2.0.txt @@ -0,0 +1,176 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS diff --git a/anda/system/pi-topd/anda.hcl b/anda/system/pi-topd/anda.hcl new file mode 100644 index 0000000000..1a7637d0d4 --- /dev/null +++ b/anda/system/pi-topd/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "pi-topd.spec" + } +} diff --git a/anda/system/pi-topd/pi-topd.spec b/anda/system/pi-topd/pi-topd.spec new file mode 100644 index 0000000000..d6d9b494fe --- /dev/null +++ b/anda/system/pi-topd/pi-topd.spec @@ -0,0 +1,86 @@ +%global pypi_name pi-topd +%global ver 5.7.0-1 +%global sanitized_ver %(echo %{ver} | sed 's/-/^/g') + +Name: python-%{pypi_name} +Version: %{sanitized_ver} +Release: 1%{?dist} +Summary: Daemon for managing pi-top functionality by managing the pi-top hub connection + +License: Apache-2.0 +URL: https://github.com/pi-top/pi-topd +Source0: %{url}/archive/refs/tags/v%{ver}.tar.gz +Source1: Apache-2.0.txt +BuildRequires: pyproject-rpm-macros +BuildRequires: python3-devel +BuildRequires: python3dist(pip) +BuildRequires: python3dist(setuptools) +BuildRequires: systemd-rpm-macros +BuildArch: noarch +Packager: Owen Zimmerman + +%global _description %{expand: +%summary. +} + +%description %_description + +%package -n python3-%{pypi_name} +Summary: %{summary} + +%description -n python3-%{pypi_name} %_description + +%prep +%autosetup -n %{pypi_name}-%{ver} + +%pyproject_patch_dependency pyee:drop_constraints +%pyproject_patch_dependency pyzmq:drop_constraints +%pyproject_patch_dependency smbus2:drop_constraints +%pyproject_patch_dependency spidev:drop_constraints + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files pitopd +install -Dm644 debian/pi-topd.service %{buildroot}%{_unitdir}/pi-topd.service +install -Dm644 debian/pt-reboot.service %{buildroot}%{_unitdir}/pt-reboot.service +install -Dm644 debian/pt-poweroff.service %{buildroot}%{_unitdir}/pt-poweroff.service +install -Dm644 %{S:1} %{buildroot}%{_defaultlicensedir}/python3-%{pypi_name}/LICENSE + +%post +%systemd_post pi-topd.service +%systemd_post pt-reboot.service +%systemd_post pt-poweroff.service + +%preun +%systemd_preun pi-topd.service +%systemd_preun pt-reboot.service +%systemd_preun pt-poweroff.service + +%postun +%systemd_postun_with_restart pi-topd.service +%systemd_postun_with_restart pt-reboot.service +%systemd_postun_with_restart pt-poweroff.service + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%license %{_defaultlicensedir}/python3-%{pypi_name}/LICENSE +%doc README.rst +%{_bindir}/pi-topd +%{_bindir}/pt-poweroff +%{_bindir}/pt-reboot +%{_unitdir}/pi-topd.service +%{_unitdir}/pt-reboot.service +%{_unitdir}/pt-poweroff.service +%python3_sitelib/tests/* + +%changelog +* Thu May 07 2026 Owen Zimmerman - 5.7.0-1 +- Clean up spec, track upstream tag, use %%pyproject_patch_dependency + +* Sun Nov 23 2025 Owen Zimmerman - 5.7.0-1 +- Install files properly, update script + +* Sun Oct 26 2025 Jaiden Riordan - 5.7.0-1 +- ehehehe :3 diff --git a/anda/system/pi-topd/update.rhai b/anda/system/pi-topd/update.rhai new file mode 100644 index 0000000000..439d5bd397 --- /dev/null +++ b/anda/system/pi-topd/update.rhai @@ -0,0 +1,3 @@ +let v = gh("pi-top/pi-topd"); +v.crop(1); +rpm.global("ver", v); diff --git a/anda/system/pixi/pixi.spec b/anda/system/pixi/pixi.spec index dea601fd2e..e07a0c8177 100644 --- a/anda/system/pixi/pixi.spec +++ b/anda/system/pixi/pixi.spec @@ -1,5 +1,5 @@ Name: pixi -Version: 0.66.0 +Version: 0.70.2 Release: 1%{?dist} Summary: A cross-platform, multi-language package manager License: BSD-3-Clause @@ -38,7 +38,7 @@ install -Dm 644 completions.fish %{buildroot}%{fish_completions_dir}/%{name}.fis install -Dm 644 completions.zsh %{buildroot}%{zsh_completions_dir}/_%{name} %files -%doc README.md SECURITY.md CHANGELOG.md CODE_OF_CONDUCT.md CONTRIBUTING.md +%doc README.md CHANGELOG.md %license LICENSE %{_bindir}/%{name} diff --git a/anda/system/readymade/git/readymade-git.spec b/anda/system/readymade/git/readymade-git.spec index 9f652c46bd..3a7d505dad 100644 --- a/anda/system/readymade/git/readymade-git.spec +++ b/anda/system/readymade/git/readymade-git.spec @@ -1,5 +1,5 @@ -%global commit e5fd0250d79bcf1cd9b7ca07d2720401f6aa797a -%global commit_date 20260329 +%global commit ccdf092314b2241ec13ede2381d8174b051d5d09 +%global commit_date 20260524 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global crate readymade Name: readymade-git @@ -13,6 +13,7 @@ Source1: https://github.com/FyraLabs/rdms_proc_macros/archive/HEAD.tar.gz BuildRequires: anda-srpm-macros rust-packaging mold BuildRequires: pkgconfig(libhelium-1) BuildRequires: pkgconfig(openssl) +BuildRequires: pkgconfig(libacl) BuildRequires: clang-devel BuildRequires: gcc BuildRequires: cmake diff --git a/anda/system/readymade/stable/readymade.spec b/anda/system/readymade/stable/readymade.spec index 5aeec70554..99d484d47b 100644 --- a/anda/system/readymade/stable/readymade.spec +++ b/anda/system/readymade/stable/readymade.spec @@ -1,7 +1,7 @@ %global crate readymade Name: readymade -Version: 0.13.0 -Release: 1%?dist +Version: 0.14.1 +Release: 1%{?dist} Summary: Install ready-made distribution images! License: GPL-3.0-or-later URL: https://github.com/FyraLabs/readymade @@ -9,6 +9,9 @@ Source0: %{url}/archive/refs/tags/v%{version}.tar.gz Source1: https://github.com/FyraLabs/rdms_proc_macros/archive/HEAD.tar.gz BuildRequires: anda-srpm-macros rust-packaging mold BuildRequires: pkgconfig(libhelium-1) +BuildRequires: pkgconfig(openssl) +BuildRequires: glibc-all-langpacks +BuildRequires: pkgconfig(libacl) BuildRequires: clang-devel BuildRequires: cmake diff --git a/anda/system/rtl8821cu/akmod/rtl8821cu-kmod.spec b/anda/system/rtl8821cu/akmod/rtl8821cu-kmod.spec index 7e101d011c..dfbb341e87 100644 --- a/anda/system/rtl8821cu/akmod/rtl8821cu-kmod.spec +++ b/anda/system/rtl8821cu/akmod/rtl8821cu-kmod.spec @@ -11,7 +11,7 @@ Linux Driver for USB Wi-Fi Adapters that are based on the RTL8811CU, RTL8821CU, Name: %{modulename}-kmod Version: %{ver}^%{commit_date}git.%{shortcommit} -Release: 3%{?dist} +Release: 4%{?dist} Summary: Linux Driver for USB Wi-Fi Adapters using RTL8821 chipsets License: GPL-2.0-only URL: https://github.com/morrownr/8821cu-20210916 @@ -23,13 +23,13 @@ Requires: akmods Conflicts: dkms-%{modulename} Packager: Gilver E. -%{expand:%(kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } %description %_description %prep %{?kmodtool_check} -kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null %autosetup -n %{git_name}-%{commit} diff --git a/anda/system/rtl8821cu/dkms/anda.hcl b/anda/system/rtl8821cu/dkms/anda.hcl index 3d716dd0ca..09cdb8c884 100644 --- a/anda/system/rtl8821cu/dkms/anda.hcl +++ b/anda/system/rtl8821cu/dkms/anda.hcl @@ -1,4 +1,5 @@ project pkg { + arches = ["x86_64"] rpm { spec = "dkms-rtl8821cu.spec" } diff --git a/anda/system/rtl8821cu/dkms/dkms-rtl8821cu.spec b/anda/system/rtl8821cu/dkms/dkms-rtl8821cu.spec index 439731cce7..f1cce2d9f4 100644 --- a/anda/system/rtl8821cu/dkms/dkms-rtl8821cu.spec +++ b/anda/system/rtl8821cu/dkms/dkms-rtl8821cu.spec @@ -4,13 +4,12 @@ %global ver 5.12.0.4 %global modulename rtl8821cu %global git_name 8821cu-20210916 -%global debug_package %{nil} %global _description %{expand: Linux Driver for USB Wi-Fi Adapters that are based on the RTL8811CU, RTL8821CU, RTL8821CUH, and RTL8731AU chipsets.} Name: dkms-%{modulename} Version: %{ver}^%{commit_date}git.%{shortcommit} -Release: 2%{?dist} +Release: 3%{?dist} Summary: Linux Driver for USB Wi-Fi Adapters using RTL8821 chipsets License: GPL-2.0-only URL: https://github.com/morrownr/8821cu-20210916 @@ -26,6 +25,7 @@ Requires: bc Requires: make Provides: %{modulename}-kmod Conflicts: akmod-%{modulename} +BuildArch: noarch Packager: Gilver E. %description %_description @@ -50,7 +50,7 @@ sed -i 's/CONFIG_PLATFORM_ARM64_RPI = n/CONFIG_PLATFORM_ARM64_RPI = y/g' Makefil %install mkdir -p %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ -cp -fr core hal include os_dep platform Kconfig Makefile halmac.mk dkms-make.sh dkms.conf %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ +cp -fr core hal include os_dep platform Kconfig Makefile halmac.mk rtl8821c.mk dkms-make.sh dkms.conf %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ %if 0%{?fedora} # Do not enable weak modules support in Fedora (no kABI): diff --git a/anda/system/rtl8821cu/kmod-common/rtl8821cu-kmod-common.spec b/anda/system/rtl8821cu/kmod-common/rtl8821cu-kmod-common.spec index 6a6d2ec817..b6685aefa8 100644 --- a/anda/system/rtl8821cu/kmod-common/rtl8821cu-kmod-common.spec +++ b/anda/system/rtl8821cu/kmod-common/rtl8821cu-kmod-common.spec @@ -4,7 +4,6 @@ %global ver 5.12.0.4 %global modulename rtl8821cu %global git_name 8821cu-20210916 -%global debug_package %{nil} Name: %{modulename}-kmod-common Version: %{ver}^%{commit_date}git.%{shortcommit} diff --git a/anda/system/ryzen-smu/akmod/anda.hcl b/anda/system/ryzen-smu/akmod/anda.hcl new file mode 100644 index 0000000000..f94d8583a2 --- /dev/null +++ b/anda/system/ryzen-smu/akmod/anda.hcl @@ -0,0 +1,10 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "ryzen_smu-kmod.spec" + } + labels { + mock = 1 + nightly = 1 + } +} diff --git a/anda/system/ryzen-smu/akmod/ryzen_smu-kmod.spec b/anda/system/ryzen-smu/akmod/ryzen_smu-kmod.spec new file mode 100644 index 0000000000..2cf27af583 --- /dev/null +++ b/anda/system/ryzen-smu/akmod/ryzen_smu-kmod.spec @@ -0,0 +1,69 @@ +# The reason why this package is a separate from the main one despite using the same sources +# is because akmods use the srpm to build the kmod package, and if the kmod package is included +# in the main package, akmods will reinstall the userspace package every time the kernel is updated. + +%if 0%{?fedora} +%global buildforkernels akmod +%global debug_package %{nil} +%endif + +%global commit 0bb95d961664c7a0ac180f849fa16fe7da71922d +%global commitdate 20260425 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global modulename ryzen_smu + +Name: %{modulename}-kmod +Version: 0.1.7^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +Summary: Linux kernel driver that exposes access to the SMU (System Management Unit) for certain AMD Ryzen processors +License: GPL-2.0-only +URL: https://github.com/amkillam/ryzen_smu +Source0: %{url}/archive/%{commit}.tar.gz#/%{modulename}-%{shortcommit}.tar.gz +BuildRequires: gcc +BuildRequires: make +BuildRequires: kmodtool + +Requires: akmods +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Requires: %{modulename}-akmod-modules = %{?epoch:%{epoch}:}%{version} +Requires: kernel-devel +Conflicts: dkms-%{modulename} +Packager: Kyle Gospodnetich + +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } + +%description +Ryzen SMU is a Linux kernel driver that exposes access to the SMU (System +Management Unit) for certain AMD Ryzen processors. It allows reading and writing +SMU mailbox commands and exposes the power metrics (PM) table via sysfs. +Use at your own risk. + +%prep +# error out if there was something wrong with kmodtool +%{?kmodtool_check} + +# print kmodtool output for debugging purposes: +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null + +%setup -q -c -n %{modulename}-%{commit} + +for kernel_version in %{?kernel_versions} ; do + cp -a %{modulename}-%{commit} _kmod_build_${kernel_version%%___*} +done + +%build +for kernel_version in %{?kernel_versions} ; do + make V=1 %{?_smp_mflags} -C ${kernel_version##*___} M=${PWD}/_kmod_build_${kernel_version%%___*} modules +done + +%install +for kernel_version in %{?kernel_versions}; do + mkdir -p %{buildroot}%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ + install -D -m 755 _kmod_build_${kernel_version%%___*}/%{modulename}.ko %{buildroot}%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ + chmod a+x %{buildroot}%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/%{modulename}.ko +done +%{?akmod_install} + +%changelog +* Thu Jun 04 2026 Kyle Gospodnetich +- Initial package release \ No newline at end of file diff --git a/anda/system/ryzen-smu/akmod/update.rhai b/anda/system/ryzen-smu/akmod/update.rhai new file mode 100644 index 0000000000..002e590779 --- /dev/null +++ b/anda/system/ryzen-smu/akmod/update.rhai @@ -0,0 +1,5 @@ +rpm.global("commit", gh_commit("amkillam/ryzen_smu")); +if rpm.changed() { + rpm.release(); + rpm.global("commitdate", date()); +} diff --git a/anda/system/ryzen-smu/dkms/anda.hcl b/anda/system/ryzen-smu/dkms/anda.hcl new file mode 100644 index 0000000000..3f9ae60234 --- /dev/null +++ b/anda/system/ryzen-smu/dkms/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "dkms-ryzen_smu.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/system/ryzen-smu/dkms/dkms-ryzen_smu.spec b/anda/system/ryzen-smu/dkms/dkms-ryzen_smu.spec new file mode 100644 index 0000000000..7f84a1c2a7 --- /dev/null +++ b/anda/system/ryzen-smu/dkms/dkms-ryzen_smu.spec @@ -0,0 +1,61 @@ +%global commit 0bb95d961664c7a0ac180f849fa16fe7da71922d +%global debug_package %{nil} +%global modulename ryzen_smu +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260425 + +Name: dkms-%{modulename} +Version: 0.1.7^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +Summary: Linux kernel driver that exposes access to the SMU (System Management Unit) for certain AMD Ryzen processors +License: GPL-2.0-only +URL: https://github.com/amkillam/ryzen_smu +Source: %{url}/archive/%{commit}.tar.gz +BuildRequires: sed +BuildRequires: systemd-rpm-macros +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Provides: %{name}-kmod-common = %{?epoch:%{epoch}:}%{version} +BuildArch: x86_64 +Requires: dkms +Conflicts: akmod-%{modulename} +Provides: %{modulename}-kmod +Packager: Kyle Gospodnetich + +%description +Ryzen SMU is a Linux kernel driver that exposes access to the SMU (System +Management Unit) for certain AMD Ryzen processors. It allows reading and writing +SMU mailbox commands and exposes the power metrics (PM) table via sysfs. +Use at your own risk. + +%package akmod-modules +Summary: Modules for Akmods +Requires: akmod-%{name} +BuildArch: noarch + +%description akmod-modules +Akmods modules for the akmod-%{name} package. + +%prep +%autosetup -p1 -n %{modulename}-%{commit} +/usr/bin/sed -i -e 's/@VERSION@/%{version}/g' -e 's/@CFLGS@//g' dkms.conf +# Fix bad python3 shebangs +find . -name '*.py' -exec /usr/bin/sed -i '1s|^#![[:space:]]*/bin/python$|#!/usr/bin/python3|' {} + + +%install +mkdir -p %{buildroot}%{_usrsrc}/%{modulename}-%{version} +cp -fr ./ %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ + +%post +dkms add -m %{modulename} -v %{version} -q --rpm_safe_upgrade || : +# Rebuild and make available for the currently running kernel: +dkms build -m %{modulename} -v %{version} -q || : +dkms install -m %{modulename} -v %{version} -q --force || : + +%files +%{_usrsrc}/%{modulename}-%{version} +%license LICENSE +%doc README.md + +%changelog +* Thu Jun 04 2026 Kyle Gospodnetich +- Initial package release diff --git a/anda/system/ryzen-smu/dkms/update.rhai b/anda/system/ryzen-smu/dkms/update.rhai new file mode 100644 index 0000000000..002e590779 --- /dev/null +++ b/anda/system/ryzen-smu/dkms/update.rhai @@ -0,0 +1,5 @@ +rpm.global("commit", gh_commit("amkillam/ryzen_smu")); +if rpm.changed() { + rpm.release(); + rpm.global("commitdate", date()); +} diff --git a/anda/system/ryzen-smu/kmod-common/anda.hcl b/anda/system/ryzen-smu/kmod-common/anda.hcl new file mode 100644 index 0000000000..8fd46b61e9 --- /dev/null +++ b/anda/system/ryzen-smu/kmod-common/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "ryzen_smu.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/system/ryzen-smu/kmod-common/ryzen_smu.spec b/anda/system/ryzen-smu/kmod-common/ryzen_smu.spec new file mode 100644 index 0000000000..555aaffe10 --- /dev/null +++ b/anda/system/ryzen-smu/kmod-common/ryzen_smu.spec @@ -0,0 +1,50 @@ +%global commit 0bb95d961664c7a0ac180f849fa16fe7da71922d +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260425 + +Name: ryzen_smu +Version: 0.1.7^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +Summary: Linux kernel driver that exposes access to the SMU (System Management Unit) for certain AMD Ryzen processors +License: GPL-2.0-only +URL: https://github.com/amkillam/ryzen_smu +Source: %{url}/archive/%{commit}.tar.gz +BuildRequires: systemd-rpm-macros +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +Provides: %{name}-kmod-common = %{?epoch:%{epoch}:}%{version} +BuildArch: noarch +Packager: Kyle Gospodnetich + +%description +Ryzen SMU is a Linux kernel driver that exposes access to the SMU (System +Management Unit) for certain AMD Ryzen processors. It allows reading and writing +SMU mailbox commands and exposes the power metrics (PM) table via sysfs. +Use at your own risk. + +%package akmod-modules +Summary: Modules for Akmods +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +BuildArch: noarch + +%description akmod-modules +Akmods modules for the akmod-%{name} package. + +%prep +%autosetup -p1 -n %{name}-%{commit} + +# Autoload the module on boot +echo %{name} > %{name}.conf + +# Akmods modules +install -Dm644 %{name}.conf -t %{buildroot}%{_modulesloaddir} + +%files +%license LICENSE +%doc README.md + +%files akmod-modules +%{_modulesloaddir}/%{name}.conf + +%changelog +* Thu Jun 04 2026 Kyle Gospodnetich +- Initial package release diff --git a/anda/system/ryzen-smu/kmod-common/update.rhai b/anda/system/ryzen-smu/kmod-common/update.rhai new file mode 100644 index 0000000000..002e590779 --- /dev/null +++ b/anda/system/ryzen-smu/kmod-common/update.rhai @@ -0,0 +1,5 @@ +rpm.global("commit", gh_commit("amkillam/ryzen_smu")); +if rpm.changed() { + rpm.release(); + rpm.global("commitdate", date()); +} diff --git a/anda/system/sc0710/akmod/anda.hcl b/anda/system/sc0710/akmod/anda.hcl new file mode 100644 index 0000000000..9082dd68d0 --- /dev/null +++ b/anda/system/sc0710/akmod/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + rpm { + spec = "sc0710-kmod.spec" + } + labels { + mock = 1 + updbranch = 1 + } +} diff --git a/anda/system/sc0710/akmod/sc0710-kmod.spec b/anda/system/sc0710/akmod/sc0710-kmod.spec new file mode 100644 index 0000000000..058c95a047 --- /dev/null +++ b/anda/system/sc0710/akmod/sc0710-kmod.spec @@ -0,0 +1,55 @@ +%global commit 03cc676e669b8844782529553db6a53d8b98477c +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260601 +%global ver 0 +%define buildforkernels akmod +%global debug_package %{nil} +%global modulename sc0710 + +Name: %{modulename}-kmod +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +Summary: Elgato 4K60 Pro MK.2 / 4K Pro capture card driver +License: GPL-2.0-only +URL: https://github.com/Nakildias/sc0710 +Source0: https://github.com/Nakildias/sc0710/archive/%{commit}.tar.gz#/sc0710-%{shortcommit}.tar.gz +BuildRequires: kmodtool +Requires: akmods +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Conflicts: dkms-%{modulename} +Packager: Kyle Gospodnetich + +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } + +%description +Elgato 4K60 Pro MK.2 / 4K Pro capture card driver. + +%prep +%{?kmodtool_check} +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null + +%autosetup -p1 -n %{modulename}-%{commit} + +for kernel_version in %{?kernel_versions}; do + mkdir _kmod_build_${kernel_version%%___*} + cp -fr lib Makefile _kmod_build_${kernel_version%%___*} +done + +%build +for kernel_version in %{?kernel_versions}; do + pushd _kmod_build_${kernel_version%%___*}/ + %make_build -C "${kernel_version##*___}" M=$(pwd) VERSION="v%{version}" modules + popd +done + +%install +for kernel_version in %{?kernel_versions}; do + mkdir -p %{buildroot}/%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ + install -p -m 0755 _kmod_build_${kernel_version%%___*}/*.ko \ + %{buildroot}/%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ +done +%{?akmod_install} + +%changelog +* Fri Apr 03 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/sc0710/akmod/update.rhai b/anda/system/sc0710/akmod/update.rhai new file mode 100644 index 0000000000..4969eb372d --- /dev/null +++ b/anda/system/sc0710/akmod/update.rhai @@ -0,0 +1,12 @@ +let c = sh("cat anda/system/sc0710/kmod-common/sc0710.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; +c.pop(); +rpm.global("commit", c); +if rpm.changed() { + rpm.release(); + let d = sh("cat anda/system/sc0710/kmod-common/sc0710.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; + d.pop(); + rpm.global("commitdate", d); + let v = sh("cat anda/system/sc0710/kmod-common/sc0710.spec | grep '%global ver' | sed -E 's/.+ver //'", #{"stdout": "piped"}).ctx.stdout; + v.pop(); + rpm.global("ver", v); +} diff --git a/anda/system/sc0710/dkms/anda.hcl b/anda/system/sc0710/dkms/anda.hcl new file mode 100644 index 0000000000..d0e2b9a8af --- /dev/null +++ b/anda/system/sc0710/dkms/anda.hcl @@ -0,0 +1,10 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "dkms-sc0710.spec" + } + labels { + mock = 1 + updbranch = 1 + } +} diff --git a/anda/system/sc0710/dkms/dkms-sc0710.conf b/anda/system/sc0710/dkms/dkms-sc0710.conf new file mode 100644 index 0000000000..c508e1ac24 --- /dev/null +++ b/anda/system/sc0710/dkms/dkms-sc0710.conf @@ -0,0 +1,6 @@ +PACKAGE_NAME="sc0710" +PACKAGE_VERSION="__VERSION_STRING" +AUTOINSTALL="yes" + +BUILT_MODULE_NAME[0]="sc0710" +DEST_MODULE_LOCATION[0]="/kernel/drivers/media/pci/" diff --git a/anda/system/sc0710/dkms/dkms-sc0710.spec b/anda/system/sc0710/dkms/dkms-sc0710.spec new file mode 100644 index 0000000000..41a46e2543 --- /dev/null +++ b/anda/system/sc0710/dkms/dkms-sc0710.spec @@ -0,0 +1,60 @@ +%global commit 03cc676e669b8844782529553db6a53d8b98477c +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260601 +%global ver 0 +%global debug_package %{nil} +%global modulename sc0710 + +Name: dkms-%{modulename} +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +Summary: Elgato 4K60 Pro MK.2 / 4K Pro capture card driver (DKMS) +License: GPL-2.0-only +URL: https://github.com/Nakildias/%{modulename} +Source0: https://github.com/Nakildias/%{modulename}/archive/%{commit}.tar.gz#/%{modulename}-%{shortcommit}.tar.gz +Source1: %{name}.conf +Source2: no-weak-modules.conf +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Requires: dkms +Conflicts: akmod-%{modulename} +Provides: %{modulename}-kmod +BuildArch: noarch +Packager: Kyle Gospodnetich + +%description +Elgato 4K60 Pro MK.2 / 4K Pro capture card driver (DKMS). + +%prep +%autosetup -p1 -n %{modulename}-%{commit} + +cp -f %{SOURCE1} dkms.conf + +sed -i -e 's/__VERSION_STRING/%{version}/g' dkms.conf + +%build + +%install +mkdir -p %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ +cp -fr lib Makefile dkms.conf %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ + +%if 0%{?fedora} +install -Dpm644 %{SOURCE2} %{buildroot}%{_sysconfdir}/dkms/%{modulename}.conf +%endif + +%post +dkms add -m %{modulename} -v %{version} -q --rpm_safe_upgrade || : +dkms build -m %{modulename} -v %{version} -q || : +dkms install -m %{modulename} -v %{version} -q --force || : + +%preun +dkms remove -m %{modulename} -v %{version} -q --all --rpm_safe_upgrade || : + +%files +%{_usrsrc}/%{modulename}-%{version} +%if 0%{?fedora} +%{_sysconfdir}/dkms/%{modulename}.conf +%endif + +%changelog +* Fri Apr 03 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/sc0710/dkms/no-weak-modules.conf b/anda/system/sc0710/dkms/no-weak-modules.conf new file mode 100644 index 0000000000..24f6f95c96 --- /dev/null +++ b/anda/system/sc0710/dkms/no-weak-modules.conf @@ -0,0 +1 @@ +NO_WEAK_MODULES="yes" diff --git a/anda/system/sc0710/dkms/update.rhai b/anda/system/sc0710/dkms/update.rhai new file mode 100644 index 0000000000..4969eb372d --- /dev/null +++ b/anda/system/sc0710/dkms/update.rhai @@ -0,0 +1,12 @@ +let c = sh("cat anda/system/sc0710/kmod-common/sc0710.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; +c.pop(); +rpm.global("commit", c); +if rpm.changed() { + rpm.release(); + let d = sh("cat anda/system/sc0710/kmod-common/sc0710.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; + d.pop(); + rpm.global("commitdate", d); + let v = sh("cat anda/system/sc0710/kmod-common/sc0710.spec | grep '%global ver' | sed -E 's/.+ver //'", #{"stdout": "piped"}).ctx.stdout; + v.pop(); + rpm.global("ver", v); +} diff --git a/anda/system/xpadneo/kmod-common/anda.hcl b/anda/system/sc0710/kmod-common/anda.hcl similarity index 77% rename from anda/system/xpadneo/kmod-common/anda.hcl rename to anda/system/sc0710/kmod-common/anda.hcl index 9b58032693..af7d62c918 100644 --- a/anda/system/xpadneo/kmod-common/anda.hcl +++ b/anda/system/sc0710/kmod-common/anda.hcl @@ -1,7 +1,7 @@ project pkg { arches = ["x86_64"] rpm { - spec = "xpadneo.spec" + spec = "sc0710.spec" } labels { nightly = 1 diff --git a/anda/system/sc0710/kmod-common/sc0710.spec b/anda/system/sc0710/kmod-common/sc0710.spec new file mode 100644 index 0000000000..29f64d5701 --- /dev/null +++ b/anda/system/sc0710/kmod-common/sc0710.spec @@ -0,0 +1,32 @@ +%global commit 03cc676e669b8844782529553db6a53d8b98477c +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260601 +%global ver 0 + +Name: sc0710 +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +Summary: Elgato 4K60 Pro MK.2 / 4K Pro capture card driver common files +License: GPL-2.0-only +URL: https://github.com/Nakildias/%{name} +Source0: %{url}/archive/%{commit}.tar.gz#/%{name}-%{shortcommit}.tar.gz +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +Provides: %{name}-kmod-common = %{?epoch:%{epoch}:}%{version} +BuildArch: noarch +Packager: Kyle Gospodnetich + +%description +Elgato 4K60 Pro MK.2 / 4K Pro capture card driver common files. + +%prep +%autosetup -p1 -n %{name}-%{commit} + +%install + +%files +%license LICENSE +%doc README.md + +%changelog +* Fri Apr 03 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/sc0710/kmod-common/update.rhai b/anda/system/sc0710/kmod-common/update.rhai new file mode 100644 index 0000000000..23c41b09cc --- /dev/null +++ b/anda/system/sc0710/kmod-common/update.rhai @@ -0,0 +1,5 @@ +rpm.global("commit", gh_commit("Nakildias/sc0710")); +if rpm.changed() { + rpm.release(); + rpm.global("commitdate", date()); +} diff --git a/anda/system/scx-scheds/nightly/scx-scheds-nightly.spec b/anda/system/scx-scheds/nightly/scx-scheds-nightly.spec index 128d335787..912190ee23 100644 --- a/anda/system/scx-scheds/nightly/scx-scheds-nightly.spec +++ b/anda/system/scx-scheds/nightly/scx-scheds-nightly.spec @@ -1,7 +1,7 @@ -%global commit d9da4ca0adbed83ab4e8c5bdd24cd73711a8f2ee +%global commit 0f3df692e2bd733b0ea54add470ba4288b9bd3b2 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20260329 -%global ver 1.1.0 +%global commitdate 20260614 +%global ver 1.1.1 %undefine __brp_mangle_shebangs Name: scx-scheds-nightly @@ -9,7 +9,7 @@ Version: %{ver}^%{commitdate}.git.%{shortcommit} Release: 1%{?dist} Summary: Nightly builds of sched_ext schedulers and tools SourceLicense: GPL-2.0-only -License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND Apache-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-2-Clause AND BSD-3-Clause AND GPL-2.0-only AND ISC AND (LGPL-2.1-only OR BSD-2-Clause) AND LGPL-2.1 AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND (MPL-2.0 OR MIT OR Apache-2.0) AND MPL-2.0-only and MPL-2.0-or-later AND (Unlicense OR MIT) AND Zlib +License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND Apache-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-2-Clause AND BSD-3-Clause AND BSL-1.0 AND GPL-2.0-only AND ISC AND (LGPL-2.1-only OR BSD-2-Clause) AND LGPL-2.1-only AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND (MPL-2.0 OR MIT OR Apache-2.0) AND MPL-2.0-or-later AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) AND Zlib URL: https://github.com/sched-ext/scx Source0: %{URL}/archive/%{commit}/scx-%{commit}.tar.gz BuildRequires: anda-srpm-macros @@ -84,13 +84,10 @@ License: GPL-2.0-only --exclude scx_arena_selftests %install -find target/rpm \ - -maxdepth 1 -type f -executable ! -name '*.so' \ - -exec install -Dm755 -t %{buildroot}%{_bindir} {} + +%install_cargo_bins +%install_cargo_devel_libs -install -Dm755 target/rpm/*.so -t %{buildroot}%{_libdir} - -%{cargo_license_online} > LICENSE.dependencies +%{cargo_license_online -a} > LICENSE.dependencies %files %doc OVERVIEW.md @@ -100,5 +97,7 @@ install -Dm755 target/rpm/*.so -t %{buildroot}%{_libdir} %{_bindir}/scx* %changelog +* Sat May 2 2026 Gilver E. - 1.1.0^20260502.git.ce8aa3d-2 +- Update licenses * Sun Jun 15 2025 Gilver E. - 1.0.13^20250612.git.c1507b0-1 - Initial package diff --git a/anda/system/scx-scheds/stable/scx-scheds.spec b/anda/system/scx-scheds/stable/scx-scheds.spec index 2272678450..64377b07fe 100644 --- a/anda/system/scx-scheds/stable/scx-scheds.spec +++ b/anda/system/scx-scheds/stable/scx-scheds.spec @@ -1,11 +1,11 @@ %undefine __brp_mangle_shebangs Name: scx-scheds -Version: 1.1.0 +Version: 1.1.1 Release: 1%{?dist} Summary: sched_ext schedulers SourceLicense: GPL-2.0-only -License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND Apache-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-2-Clause AND BSD-3-Clause AND GPL-2.0-only AND ISC AND (LGPL-2.1-only OR BSD-2-Clause) AND LGPL-2.1 AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND (MPL-2.0 OR MIT OR Apache-2.0) AND MPL-2.0-only and MPL-2.0-or-later AND (Unlicense OR MIT) AND Zlib +License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND Apache-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-2-Clause AND BSD-3-Clause AND BSL-1.0 AND GPL-2.0-only AND ISC AND (LGPL-2.1-only OR BSD-2-Clause) AND LGPL-2.1-only AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND (MPL-2.0 OR MIT OR Apache-2.0) AND MPL-2.0-or-later AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) AND Zlib URL: https://github.com/sched-ext/scx Source0: %{URL}/archive/refs/tags/v%{version}.tar.gz BuildRequires: anda-srpm-macros @@ -78,13 +78,10 @@ License: GPL-2.0-only --exclude scx_arena_selftests %install -find target/rpm \ - -maxdepth 1 -type f -executable ! -name '*.so' \ - -exec install -Dm755 -t %{buildroot}%{_bindir} {} + +%install_cargo_bins +%install_cargo_devel_libs -install -Dm755 target/rpm/*.so -t %{buildroot}%{_libdir} - -%{cargo_license_online} > LICENSE.dependencies +%{cargo_license_online -a} > LICENSE.dependencies %files %doc OVERVIEW.md @@ -94,5 +91,7 @@ install -Dm755 target/rpm/*.so -t %{buildroot}%{_libdir} %{_bindir}/scx* %changelog +* Sat May 2 2026 Gilver E. - 1.1.0-2 +- Update licenses * Sun Jun 15 2025 Gilver E. - 1.0.13-1 - Initial package diff --git a/anda/system/scx-tools/nightly/scx-tools-nightly.spec b/anda/system/scx-tools/nightly/scx-tools-nightly.spec index 25084335ba..01e9e1c09f 100644 --- a/anda/system/scx-tools/nightly/scx-tools-nightly.spec +++ b/anda/system/scx-tools/nightly/scx-tools-nightly.spec @@ -1,7 +1,7 @@ -%global commit 301cf6da5402a6ef07952f95fe051e1af0ea8709 +%global commit 0e383bcd2889c91f8d5a0829f2944894c94708d8 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20260328 -%global ver 1.1.0 +%global commitdate 20260529 +%global ver 1.1.1 %global appid com.sched_ext.scx %global developer "sched-ext Contributors" %global org "com.sched_ext" diff --git a/anda/system/scx-tools/stable/scx-tools.spec b/anda/system/scx-tools/stable/scx-tools.spec index bd8fbdde70..a6676a6800 100644 --- a/anda/system/scx-tools/stable/scx-tools.spec +++ b/anda/system/scx-tools/stable/scx-tools.spec @@ -3,7 +3,7 @@ %global org "com.sched_ext" Name: scx-tools -Version: 1.1.0 +Version: 1.1.1 Release: 1%{?dist} Summary: Sched_ext Tools License: ((MIT OR Apache-2.0) AND Unicode-3.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND GPL-2.0-only AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (MIT OR Apache-2.0) AND MIT AND MPL-2.0 AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) diff --git a/anda/system/submarine/submarine.spec b/anda/system/submarine/submarine.spec index 827ba6ad75..5ef01c8031 100644 --- a/anda/system/submarine/submarine.spec +++ b/anda/system/submarine/submarine.spec @@ -15,11 +15,6 @@ Summary: Experimental bootloader for ChomeOS's depthcharge License: GPL-3.0 URL: https://github.com/FyraLabs/submarine BuildRequires: make gcc flex bison elfutils-devel parted vboot-utils golang xz bc openssl-devel git depthcharge-tools uboot-tools openssl-devel-engine -%ifarch aarch64 -BuildRequires: python3-importlib-metadata -BuildRequires: python3-packaging -BuildRequires: python3-importlib-resources -%endif %description An experimental bootloader for ChomeOS's depthcharge. diff --git a/anda/system/supergfxctl/supergfxctl.spec b/anda/system/supergfxctl/supergfxctl.spec deleted file mode 100644 index 29829af00b..0000000000 --- a/anda/system/supergfxctl/supergfxctl.spec +++ /dev/null @@ -1,56 +0,0 @@ -Name: supergfxctl -Version: 5.2.7 -Release: 1%?dist -Summary: GPU Utility for ASUS ROG Laptops -URL: https://gitlab.com/asus-linux/supergfxctl -Source0: %url/-/archive/%{version}/supergfxctl-%{version}.tar.gz -SourceLicense: MPL-2.0 -License: ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND MIT AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MPL-2.0 AND (Unlicense OR MIT) -BuildRequires: cargo anda-srpm-macros cargo-rpm-macros mold rust-udev-devel -BuildRequires: rpm_macro(systemd_post) -Packager: Its-J - -%description -%{summary}. - -%prep -%autosetup -n supergfxctl-%{version} -%cargo_prep_online - -%build -%cargo_license_summary_online -%{cargo_license_online} > LICENSE.dependencies -%cargo_build -f "cli daemon" - -%install -install -Dm 0755 target/rpm/supergfxd target/rpm/supergfxctl -t %buildroot%_bindir -install -Dm 0644 data/90-supergfxd-nvidia-pm.rules %{buildroot}%{_udevrulesdir}/90-supergfxd-nvidia-pm.rules -install -Dm 0644 data/org.supergfxctl.Daemon.conf %{buildroot}%{_datadir}/dbus-1/system.d/org.supergfxctl.Daemon.conf -install -Dm 0644 data/supergfxd.preset %{buildroot}%{_presetdir}/99-supergfxd.preset -install -Dm 0644 data/90-nvidia-screen-G05.conf %{buildroot}%{_datadir}/X11/xorg.conf.d/90-nvidia-screen-G05.conf -install -Dm 0644 data/supergfxd.service -t %buildroot%_unitdir - -%post -%systemd_post supergfxd.service - -%preun -%systemd_preun supergfxd.service - -%postun -%systemd_postun_with_restart supergfxd.service - -%files -%license LICENSE -%doc README.md -%{_bindir}/supergfxctl -%{_bindir}/supergfxd -%{_udevrulesdir}/90-supergfxd-nvidia-pm.rules -%{_datadir}/X11/xorg.conf.d/90-nvidia-screen-G05.conf -%{_datadir}/dbus-1/system.d/org.supergfxctl.Daemon.conf -%{_unitdir}/supergfxd.service -# We should not be installing .preset files (errors if not listed) -%ghost %{_presetdir}/99-supergfxd.preset - -%changelog -* Sun Oct 26 2025 Its-J -- Package SuperGFXctl diff --git a/anda/system/supergfxctl/update.rhai b/anda/system/supergfxctl/update.rhai deleted file mode 100644 index ada985a118..0000000000 --- a/anda/system/supergfxctl/update.rhai +++ /dev/null @@ -1,3 +0,0 @@ -let v = gitlab_tag("bcdca4be"); -v.replace("-", "~"); -rpm.version(v); diff --git a/anda/misc/system76-scheduler/anda.hcl b/anda/system/system76-scheduler/anda.hcl similarity index 100% rename from anda/misc/system76-scheduler/anda.hcl rename to anda/system/system76-scheduler/anda.hcl diff --git a/anda/misc/system76-scheduler/system76-scheduler.spec b/anda/system/system76-scheduler/system76-scheduler.spec similarity index 100% rename from anda/misc/system76-scheduler/system76-scheduler.spec rename to anda/system/system76-scheduler/system76-scheduler.spec diff --git a/anda/misc/system76-scheduler/update.rhai b/anda/system/system76-scheduler/update.rhai similarity index 100% rename from anda/misc/system76-scheduler/update.rhai rename to anda/system/system76-scheduler/update.rhai diff --git a/anda/system/t150-driver/akmod/anda.hcl b/anda/system/t150-driver/akmod/anda.hcl new file mode 100644 index 0000000000..113665e7bc --- /dev/null +++ b/anda/system/t150-driver/akmod/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + rpm { + spec = "t150-driver-kmod.spec" + } + labels { + mock = 1 + updbranch = 1 + } +} diff --git a/anda/system/t150-driver/akmod/t150-driver-kmod.spec b/anda/system/t150-driver/akmod/t150-driver-kmod.spec new file mode 100644 index 0000000000..88f013e575 --- /dev/null +++ b/anda/system/t150-driver/akmod/t150-driver-kmod.spec @@ -0,0 +1,55 @@ +%global commit f7ecb30c65ee5f7870e921bc0a2354df8e1e8100 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20250225 +%global ver 1.0 +%define buildforkernels akmod +%global debug_package %{nil} +%global modulename t150-driver + +Name: %{modulename}-kmod +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 3%{?dist} +Summary: Thrustmaster T150 steering wheel kernel module +License: GPL-2.0-only +URL: https://github.com/scarburato/t150_driver +Source0: %{url}/archive/%{commit}.tar.gz#/t150_driver-%{shortcommit}.tar.gz +BuildRequires: kmodtool +Requires: akmods +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Requires: %{modulename}-akmod-modules = %{?epoch:%{epoch}:}%{version} +Conflicts: dkms-%{modulename} + +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } + +%description +Linux driver for Thrustmaster T150 Steering Wheel USB. + +%prep +%{?kmodtool_check} +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null + +%autosetup -p1 -n t150_driver-%{commit} + +for kernel_version in %{?kernel_versions}; do + mkdir _kmod_build_${kernel_version%%___*} + cp -fr hid-t150/* _kmod_build_${kernel_version%%___*}/ +done + +%build +for kernel_version in %{?kernel_versions}; do + pushd _kmod_build_${kernel_version%%___*}/ + %make_build -C "${kernel_version##*___}" M=$(pwd) modules + popd +done + +%install +for kernel_version in %{?kernel_versions}; do + mkdir -p %{buildroot}/%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ + install -p -m 0755 _kmod_build_${kernel_version%%___*}/*.ko \ + %{buildroot}/%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ +done +%{?akmod_install} + +%changelog +* Thu Apr 02 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/t150-driver/akmod/update.rhai b/anda/system/t150-driver/akmod/update.rhai new file mode 100644 index 0000000000..7885cb6a8d --- /dev/null +++ b/anda/system/t150-driver/akmod/update.rhai @@ -0,0 +1,12 @@ +let c = sh("cat anda/system/t150-driver/kmod-common/t150-driver.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; +c.pop(); +rpm.global("commit", c); +if rpm.changed() { + rpm.release(); + let d = sh("cat anda/system/t150-driver/kmod-common/t150-driver.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; + d.pop(); + rpm.global("commitdate", d); + let v = sh("cat anda/system/t150-driver/kmod-common/t150-driver.spec | grep '%global ver' | sed -E 's/.+ver //'", #{"stdout": "piped"}).ctx.stdout; + v.pop(); + rpm.global("ver", v); +} diff --git a/anda/system/t150-driver/dkms/anda.hcl b/anda/system/t150-driver/dkms/anda.hcl new file mode 100644 index 0000000000..eb5944477d --- /dev/null +++ b/anda/system/t150-driver/dkms/anda.hcl @@ -0,0 +1,10 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "dkms-t150-driver.spec" + } + labels { + mock = 1 + updbranch = 1 + } +} diff --git a/anda/system/t150-driver/dkms/dkms-t150-driver.conf b/anda/system/t150-driver/dkms/dkms-t150-driver.conf new file mode 100644 index 0000000000..23a68a873a --- /dev/null +++ b/anda/system/t150-driver/dkms/dkms-t150-driver.conf @@ -0,0 +1,10 @@ +PACKAGE_NAME="t150-driver" +PACKAGE_VERSION="__VERSION_STRING" +AUTOINSTALL="yes" + +MAKE="make KDIR=${kernel_source_dir} all" +CLEAN="make KDIR=${kernel_source_dir} clean" + +BUILT_MODULE_NAME[0]="hid-t150" +BUILT_MODULE_LOCATION[0]="build/" +DEST_MODULE_LOCATION[0]="/extra" diff --git a/anda/system/t150-driver/dkms/dkms-t150-driver.spec b/anda/system/t150-driver/dkms/dkms-t150-driver.spec new file mode 100644 index 0000000000..3f1d3a79b6 --- /dev/null +++ b/anda/system/t150-driver/dkms/dkms-t150-driver.spec @@ -0,0 +1,58 @@ +%global commit f7ecb30c65ee5f7870e921bc0a2354df8e1e8100 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20250225 +%global ver 1.0 +%global debug_package %{nil} +%global modulename t150-driver + +Name: dkms-%{modulename} +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 3%{?dist} +Summary: Thrustmaster T150 steering wheel kernel module (DKMS) +License: GPL-2.0-only +URL: https://github.com/scarburato/t150_driver +Source0: %{url}/archive/%{commit}.tar.gz#/t150_driver-%{shortcommit}.tar.gz +Source1: %{name}.conf +Source2: no-weak-modules.conf +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Requires: dkms +Conflicts: akmod-%{modulename} +Provides: %{modulename}-kmod +BuildArch: noarch + +%description +Linux driver for Thrustmaster T150 Steering Wheel USB. + +%prep +%autosetup -p1 -n t150_driver-%{commit} + +cp -f %{SOURCE1} dkms.conf +sed -i -e 's/__VERSION_STRING/%{version}/g' dkms.conf + +%build + +%install +mkdir -p %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ +cp -fr hid-t150 dkms_make.mak dkms.conf %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ + +%if 0%{?fedora} +install -Dpm644 %{SOURCE2} %{buildroot}%{_sysconfdir}/dkms/%{modulename}.conf +%endif + +%post +dkms add -m %{modulename} -v %{version} -q --rpm_safe_upgrade || : +dkms build -m %{modulename} -v %{version} -q || : +dkms install -m %{modulename} -v %{version} -q --force || : + +%preun +dkms remove -m %{modulename} -v %{version} -q --all --rpm_safe_upgrade || : + +%files +%{_usrsrc}/%{modulename}-%{version} +%if 0%{?fedora} +%{_sysconfdir}/dkms/%{modulename}.conf +%endif + +%changelog +* Thu Apr 02 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/t150-driver/dkms/no-weak-modules.conf b/anda/system/t150-driver/dkms/no-weak-modules.conf new file mode 100644 index 0000000000..24f6f95c96 --- /dev/null +++ b/anda/system/t150-driver/dkms/no-weak-modules.conf @@ -0,0 +1 @@ +NO_WEAK_MODULES="yes" diff --git a/anda/system/t150-driver/dkms/update.rhai b/anda/system/t150-driver/dkms/update.rhai new file mode 100644 index 0000000000..7885cb6a8d --- /dev/null +++ b/anda/system/t150-driver/dkms/update.rhai @@ -0,0 +1,12 @@ +let c = sh("cat anda/system/t150-driver/kmod-common/t150-driver.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; +c.pop(); +rpm.global("commit", c); +if rpm.changed() { + rpm.release(); + let d = sh("cat anda/system/t150-driver/kmod-common/t150-driver.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; + d.pop(); + rpm.global("commitdate", d); + let v = sh("cat anda/system/t150-driver/kmod-common/t150-driver.spec | grep '%global ver' | sed -E 's/.+ver //'", #{"stdout": "piped"}).ctx.stdout; + v.pop(); + rpm.global("ver", v); +} diff --git a/anda/system/t150-driver/kmod-common/anda.hcl b/anda/system/t150-driver/kmod-common/anda.hcl new file mode 100644 index 0000000000..51d88e9b18 --- /dev/null +++ b/anda/system/t150-driver/kmod-common/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "t150-driver.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/system/t150-driver/kmod-common/t150-driver.spec b/anda/system/t150-driver/kmod-common/t150-driver.spec new file mode 100644 index 0000000000..199f72369f --- /dev/null +++ b/anda/system/t150-driver/kmod-common/t150-driver.spec @@ -0,0 +1,46 @@ +%global commit f7ecb30c65ee5f7870e921bc0a2354df8e1e8100 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20250225 +%global ver 1.0 + +Name: t150-driver +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 3%{?dist} +Summary: Thrustmaster T150 steering wheel driver common files +License: GPL-2.0-only +URL: https://github.com/scarburato/t150_driver +Source0: %{url}/archive/%{commit}.tar.gz#/t150_driver-%{shortcommit}.tar.gz +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +Provides: %{name}-kmod-common = %{?epoch:%{epoch}:}%{version} +BuildArch: noarch + +%description +Linux driver for Thrustmaster T150 Steering Wheel USB. This package contains +common files shared between the akmod and dkms variants. + +%package akmod-modules +Summary: Modules for Akmods +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +BuildArch: noarch + +%description akmod-modules +Akmods modules for the akmod-%{name} package. + +%prep +%autosetup -p1 -n t150_driver-%{commit} + +echo hid-t150 > %{name}.conf + +%install +install -Dm644 %{name}.conf -t %{buildroot}%{_modulesloaddir} + +%files +%license LICENSE +%doc README.md + +%files akmod-modules +%{_modulesloaddir}/%{name}.conf + +%changelog +* Thu Apr 02 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/t150-driver/kmod-common/update.rhai b/anda/system/t150-driver/kmod-common/update.rhai new file mode 100644 index 0000000000..ad5b36bdda --- /dev/null +++ b/anda/system/t150-driver/kmod-common/update.rhai @@ -0,0 +1,8 @@ +rpm.global("commit", gh_commit("scarburato/t150_driver")); +if rpm.changed() { + rpm.release(); + rpm.global("commitdate", date()); + let ver = gh("scarburato/t150_driver"); + ver.crop(0); + rpm.global("ver", ver); +} diff --git a/anda/system/taidan/taidan.spec b/anda/system/taidan/taidan.spec index ead4cef737..757c922208 100644 --- a/anda/system/taidan/taidan.spec +++ b/anda/system/taidan/taidan.spec @@ -1,6 +1,6 @@ Name: taidan -Version: 0.1.39 -Release: 2%?dist +Version: 0.2.1 +Release: 1%{?dist} Summary: Out-Of-Box-Experience (OOBE) and Welcome App SourceLicense: GPL-3.0-or-later AND GPL-2.0-or-later License: (0BSD OR MIT OR Apache-2.0) AND Apache-2.0 AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND MIT AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND Unicode-3.0 AND (Unlicense OR MIT) AND Zlib AND GPL-3.0-or-later AND GPL-2.0-or-later diff --git a/anda/system/uresourced-dmemcg/anda.hcl b/anda/system/uresourced-dmemcg/anda.hcl new file mode 100644 index 0000000000..be9d7fc017 --- /dev/null +++ b/anda/system/uresourced-dmemcg/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "uresourced-dmemcg.spec" + } + labels { + subrepo = "extras" + } +} diff --git a/anda/system/uresourced-dmemcg/update.rhai b/anda/system/uresourced-dmemcg/update.rhai new file mode 100644 index 0000000000..9098d253ca --- /dev/null +++ b/anda/system/uresourced-dmemcg/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("OpenGamingCollective/uresourced-dmemcg")); diff --git a/anda/system/uresourced-dmemcg/uresourced-dmemcg.spec b/anda/system/uresourced-dmemcg/uresourced-dmemcg.spec new file mode 100644 index 0000000000..55c4e7b789 --- /dev/null +++ b/anda/system/uresourced-dmemcg/uresourced-dmemcg.spec @@ -0,0 +1,68 @@ +Name: uresourced-dmemcg +Epoch: 1 +Version: 0.5.4 +Release: 1%{?dist} +Summary: Dynamically allocate resources to the active user +Packager: Kyle Gospodnetich + +License: LGPL-2.1-or-later +URL: https://github.com/OpenGamingCollective/uresourced-dmemcg +Source0: %{url}/archive/refs/tags/%{version}.tar.gz + +BuildRequires: gcc +BuildRequires: meson +BuildRequires: pkgconfig(gio-2.0) +BuildRequires: pkgconfig(libpipewire-0.3) +BuildRequires: pkgconfig(libsystemd) +BuildRequires: pkgconfig(systemd) +BuildRequires: systemd-rpm-macros + +Provides: uresourced = %{evr} +Obsoletes: uresourced < %{evr} +Conflicts: uresourced + +%description +This daemon dynamically assigns a resource allocation to the active +graphical user. If the user has an active graphical session managed +using systemd (e.g. GNOME), then the memory allocation will be used +to protect the sessions core processes (session.slice). This fork +adds dmem cgroup protection for focused applications. + +%prep +%autosetup -n %{name}-%{version} -p1 + +%conf +%meson -Dappmanagement=true + +%build +%meson_build + +%install +%meson_install + +%post +%systemd_post uresourced.service +%systemd_user_post uresourced.service + +%preun +%systemd_preun uresourced.service +%systemd_user_preun uresourced.service + +%postun +%systemd_postun uresourced.service +%systemd_user_postun uresourced.service + +%files +%license COPYING +%doc README +%doc NEWS.md +%config(noreplace) %{_sysconfdir}/uresourced.conf +%{_datadir}/dbus-1/system.d/org.freedesktop.UResourced.conf +%{_libexecdir}/uresourced +%{_libexecdir}/cgroupify +%{_unitdir}/* +%{_userunitdir}/* + +%changelog +* Fri May 22 2026 Kyle Gospodnetich - 1:0.5.4-1 +- Initial release diff --git a/anda/system/usbio-drivers/akmod/intel-usbio-kmod.spec b/anda/system/usbio-drivers/akmod/intel-usbio-kmod.spec index 39b2b41818..2d07e88742 100644 --- a/anda/system/usbio-drivers/akmod/intel-usbio-kmod.spec +++ b/anda/system/usbio-drivers/akmod/intel-usbio-kmod.spec @@ -8,7 +8,7 @@ Name: %{modulename}-kmod Summary: Kernel drivers for the USBIO Extension Version: 0^%{commit_date}git.%{shortcommit} -Release: 3%{?dist} +Release: 4%{?dist} License: GPL-2.0-only URL: https://github.com/intel/usbio-drivers Source0: %{url}/archive/%{commit}.tar.gz#/usbio-drivers-%{shortcommit}.tar.gz @@ -20,7 +20,7 @@ Requires: akmods Requires: akmod-intel-ipu6 Packager: Gilver E. -%{expand:%(kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } %description This package enables USBIO Extension drivers on Intel Alder Lake, Raptor Lake, Meteor Lake and Lunar Lake platforms. @@ -30,7 +30,7 @@ This package enables USBIO Extension drivers on Intel Alder Lake, Raptor Lake, M %{?kmodtool_check} # print kmodtool output for debugging purposes: -kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null %autosetup -p1 -n usbio-drivers-%{commit} rm -fr .github diff --git a/anda/system/uupd/anda.hcl b/anda/system/uupd/anda.hcl new file mode 100644 index 0000000000..5463a64b87 --- /dev/null +++ b/anda/system/uupd/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "uupd.spec" + } +} diff --git a/anda/system/uupd/update.rhai b/anda/system/uupd/update.rhai new file mode 100644 index 0000000000..133dc16bfb --- /dev/null +++ b/anda/system/uupd/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("ublue-os/uupd")); diff --git a/anda/system/uupd/uupd.spec b/anda/system/uupd/uupd.spec new file mode 100644 index 0000000000..2257ed9672 --- /dev/null +++ b/anda/system/uupd/uupd.spec @@ -0,0 +1,49 @@ +Name: uupd +Version: 1.4.0 +Release: 1%{?dist} +Summary: Centralized update service/checker made for Universal Blue +License: Apache-2.0 +URL: https://github.com/ublue-os/uupd +Source0: %url/archive/refs/tags/v%version.tar.gz +BuildRequires: golang +BuildRequires: go-rpm-macros +BuildRequires: systemd-rpm-macros +Recommends: bootc +Packager: Tulip Blossom + +%description +%{summary}. + +%gopkg +%global goipath github.com/ublue-os/uupd +%gometa -f + +%prep +%goprep + +%build +%define gomodulesmode GO111MODULE=on +%gobuild -o %{name} + +%install +install -Dpm0755 -t %{buildroot}%{_bindir}/ %{name} +install -Dpm0644 -t %{buildroot}%{_unitdir}/ %{name}.service %{name}.timer +install -Dpm0644 -t %{buildroot}%{_sysconfdir}/polkit-1/rules.d/%{name}.rules %{name}.rules + +%post +%systemd_post %{name}.timer + +%preun +%systemd_preun %{name}.timer + +%files +%license LICENSE +%doc README.md +%{_bindir}/%{name} +%{_unitdir}/%{name}.service +%{_unitdir}/%{name}.timer +%{_sysconfdir}/polkit-1/rules.d/%{name}.rules + +%changelog +* Sun Apr 19 2026 Tulip Blossom +- Initial commit diff --git a/anda/system/uutils-coreutils-replace/uutils-coreutils-replace.spec b/anda/system/uutils-coreutils-replace/uutils-coreutils-replace.spec index b3f8845ee0..5dd52995f1 100644 --- a/anda/system/uutils-coreutils-replace/uutils-coreutils-replace.spec +++ b/anda/system/uutils-coreutils-replace/uutils-coreutils-replace.spec @@ -5,7 +5,7 @@ %endif Name: uutils-coreutils-replace -Version: 0.7.0 +Version: 0.9.0 Release: 1%{?dist} Summary: Cross-platform Rust rewrite of the GNU coreutils License: MIT diff --git a/anda/system/v4l2-relayd/v4l2-relayd.spec b/anda/system/v4l2-relayd/v4l2-relayd.spec index edb5cc11e2..d3cd4661f2 100644 --- a/anda/system/v4l2-relayd/v4l2-relayd.spec +++ b/anda/system/v4l2-relayd/v4l2-relayd.spec @@ -28,8 +28,10 @@ This is used to relay the input GStreamer source to an output source or a V4L2 d %autosetup -p1 -n %{name}-%{commit} autoreconf --force --install --verbose -%build +%conf %configure + +%build %make_build %install @@ -40,12 +42,15 @@ install -p -D -m 0644 %{SOURCE1} %{buildroot}%{_presetdir}/95-v4l2-relayd.preset %post %systemd_post v4l2-relayd.service +%systemd_post v4l2-relayd@.service %preun %systemd_preun v4l2-relayd.service +%systemd_preun v4l2-relayd@.service %postun %systemd_postun_with_restart v4l2-relayd.service +%systemd_postun_with_restart v4l2-relayd@.service %files %license LICENSE @@ -54,7 +59,10 @@ install -p -D -m 0644 %{SOURCE1} %{buildroot}%{_presetdir}/95-v4l2-relayd.preset %{_modprobedir}/v4l2-relayd.conf %{_modulesloaddir}/v4l2-relayd.conf %{_unitdir}/v4l2-relayd.service +%{_unitdir}/v4l2-relayd@.service %{_presetdir}/95-v4l2-relayd.preset +%{_systemdgeneratordir}/v4l2-relayd-generator + %changelog %autochangelog diff --git a/anda/system/v4l2loopback/akmod/v4l2loopback-kmod.spec b/anda/system/v4l2loopback/akmod/v4l2loopback-kmod.spec index 30da3ddc8e..f2312787eb 100644 --- a/anda/system/v4l2loopback/akmod/v4l2loopback-kmod.spec +++ b/anda/system/v4l2loopback/akmod/v4l2loopback-kmod.spec @@ -18,7 +18,7 @@ This module allows you to create \"virtual video devices.\" Normal \(v4l2\) appl Name: %{modulename}-kmod Summary: Kernel module (kmod) for V4L2 loopback devices Version: 0.15.3 -Release: 2%?dist +Release: 4%{?dist} License: GPL-2.0-or-later URL: https://github.com/v4l2loopback/v4l2loopback Source0: %{url}/archive/v%{version}/%{modulename}-%{version}.tar.gz @@ -35,14 +35,14 @@ Requires: kernel-devel Conflicts: dkms-%{modulename} Packager: Cappy Ishihara -%{expand:%(kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } %description %_description %prep %{?kmodtool_check} -kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null %setup -q -c (cd v4l2loopback-%{version} diff --git a/anda/system/v4l2loopback/dkms/dkms-v4l2loopback.spec b/anda/system/v4l2loopback/dkms/dkms-v4l2loopback.spec index 6aca781b0b..58ee8502d9 100644 --- a/anda/system/v4l2loopback/dkms/dkms-v4l2loopback.spec +++ b/anda/system/v4l2loopback/dkms/dkms-v4l2loopback.spec @@ -5,7 +5,7 @@ This module allows you to create \"virtual video devices.\" Normal \(v4l2\) appl Name: dkms-%{modulename} Version: 0.15.3 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Utils for V4L2 loopback devices License: GPL-2.0-or-later URL: https://github.com/v4l2loopback/v4l2loopback diff --git a/anda/system/v4l2loopback/kmod-common/v4l2loopback.spec b/anda/system/v4l2loopback/kmod-common/v4l2loopback.spec index ac9a645b26..48a2c75cde 100644 --- a/anda/system/v4l2loopback/kmod-common/v4l2loopback.spec +++ b/anda/system/v4l2loopback/kmod-common/v4l2loopback.spec @@ -6,7 +6,7 @@ Name: v4l2loopback Summary: Utils for V4L2 loopback devices Version: 0.15.3 -Release: 1%?dist +Release: 2%?dist License: GPL-2.0-or-later URL: https://github.com/v4l2loopback/v4l2loopback Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz @@ -29,7 +29,7 @@ Allows you to create "virtual video devices". Normal (v4l2) applications will re %package akmod-modules Summary: Modules for Akmods -Requires: akmod-%{name} +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} BuildArch: noarch %description akmod-modules diff --git a/anda/system/veracrypt/veracrypt.spec b/anda/system/veracrypt/veracrypt.spec index 8f71f1b476..39d0249b5a 100644 --- a/anda/system/veracrypt/veracrypt.spec +++ b/anda/system/veracrypt/veracrypt.spec @@ -1,7 +1,7 @@ %define debug_package %{nil} %define _unpackaged_files_terminate_build 0 %define appid jp.veracrypt.veracrypt -%global ver VeraCrypt_1.26.24 +%global ver VeraCrypt_1.26.29 %global sanitized_ver %(echo %{ver} | sed 's/^VeraCrypt_//') Name: veracrypt diff --git a/anda/system/vicinae/vicinae.spec b/anda/system/vicinae/vicinae.spec index 58a52b677d..ad9a3e2221 100644 --- a/anda/system/vicinae/vicinae.spec +++ b/anda/system/vicinae/vicinae.spec @@ -1,23 +1,33 @@ +%if 0%{?fedora} > 43 +%global gcc_compat 15 +%global __cc gcc-%{gcc_compat} +%global __cxx g++-%{gcc_compat} +%endif + Name: vicinae -Version: 0.20.9 +License: GPL-3.0-or-later +Version: 0.21.6 Release: 1%{?dist} -License: GPL-3.0 URL: https://docs.vicinae.com Source: https://github.com/vicinaehq/%{name}/archive/refs/tags/v%{version}.tar.gz Summary: A high-performance, native launcher for Linux Packager: metcya BuildRequires: cmake -BuildRequires: gcc-c++ +BuildRequires: gcc%{?gcc_compat} +BuildRequires: gcc%{?gcc_compat}-c++ +BuildRequires: kf6-syntax-highlighting-devel BuildRequires: cmake(absl) BuildRequires: openssl-devel BuildRequires: cmark-gfm-devel BuildRequires: cmake(glaze) BuildRequires: cmake(minizip) BuildRequires: cmake(Qt6) +BuildRequires: cmake(Qt6Quick) BuildRequires: cmake(Qt6Svg) BuildRequires: cmake(Qt6Keychain) BuildRequires: cmake(LayerShellQt) +BuildRequires: cmake(Qt6ShaderTools) BuildRequires: pkgconfig(libqalculate) BuildRequires: pkgconfig(protobuf) BuildRequires: pkgconfig(icu-uc) @@ -28,6 +38,7 @@ BuildRequires: anda-srpm-macros BuildRequires: ninja-build BuildRequires: qt6-qtbase-devel BuildRequires: qt6-qtbase-private-devel +BuildRequires: xcb-util-keysyms-devel BuildRequires: desktop-file-utils Requires: nodejs-npm @@ -70,17 +81,28 @@ install -Dm 644 extra/%{name}-url-handler.desktop -t %{buildroot}%{_appsdir} %{_appsdir}/%{name}.desktop %{_appsdir}/%{name}-url-handler.desktop %{_hicolordir}/512x512/apps/%{name}.png -%{_sysconfdir}/chromium/native-messaging-hosts/com.vicinae.vicinae.json -%{_prefix}/lib/mozilla/native-messaging-hosts/com.vicinae.vicinae.json -%{_datadir}/%{name}/native-messaging-hosts/com.vicinae.vicinae.chromium.json.in -%{_datadir}/%{name}/native-messaging-hosts/com.vicinae.vicinae.firefox.json.in +%{_datadir}/%{name}/native-host/chromium/com.vicinae.vicinae.json +%{_datadir}/%{name}/native-host/com.vicinae.vicinae.chromium.json.in +%{_datadir}/%{name}/native-host/com.vicinae.vicinae.firefox.json.in +%{_datadir}/%{name}/native-host/firefox/com.vicinae.vicinae.json %{_libexecdir}/%{name}/vicinae-browser-link %{_libexecdir}/%{name}/vicinae-data-control-server %{_libexecdir}/%{name}/vicinae-server -%{_libexecdir}/%{name}/vicinae-snippet-server +%dnl %{_libexecdir}/%{name}/vicinae-snippet-server +%{_libexecdir}/%{name}/vicinae-input-server +%{_libexecdir}/%{name}/vicinae-file-indexer +%{_modulesloaddir}/vicinae.conf +%dnl %{_udevrulesdir}/70-vicinae.rules %changelog +* Thu May 14 2026 Owen Zimmerman - 0.21.0-1 +- Update spec for 0.21.0 + +* Sat May 09 2026 Olivia - 0.20.15-2 +- fix missing files + * Wed Feb 18 2026 Jaiden Riordan - 0.19.8 - Fixup desktop file and xdgpp + * Fri Dec 26 2025 metcya - 0.17.3 -- Package vicinae \ No newline at end of file +- Package vicinae diff --git a/anda/system/wine/dev/wine-dev.spec b/anda/system/wine/dev/wine-dev.spec index a275e2e011..a170dc48f6 100644 --- a/anda/system/wine/dev/wine-dev.spec +++ b/anda/system/wine/dev/wine-dev.spec @@ -9,7 +9,7 @@ %global _prefix /usr/share/wine-dev %global srcmajor 11.x # Make this as a variable instead in case of WINE RCs -%global ver wine-11.5 +%global ver wine-11.11 %global cleanver %(echo %{ver} | sed 's/v//g;s/wine-//g') # This is unfortunate but a lot of Fedora's/SUSE's hardening flags break WINE diff --git a/anda/system/wine/staging/wine-staging.spec b/anda/system/wine/staging/wine-staging.spec index da7818aeb7..c8107dc9d0 100644 --- a/anda/system/wine/staging/wine-staging.spec +++ b/anda/system/wine/staging/wine-staging.spec @@ -18,7 +18,7 @@ Name: wine-staging -Version: 11.5 +Version: 11.11 Release: 1%{?dist} Epoch: 1 Summary: WINE Is Not An Emulator - runs MS Windows programs diff --git a/anda/system/wl-kmod/wl-kmod-031_replace_EXTRA_CFLAGS_EXTRA_LDFLAGS_with_ccflags-y_ldflags-y.patch b/anda/system/wl-kmod/wl-kmod-031_replace_EXTRA_CFLAGS_EXTRA_LDFLAGS_with_ccflags-y_ldflags-y.patch new file mode 100644 index 0000000000..a4077e907d --- /dev/null +++ b/anda/system/wl-kmod/wl-kmod-031_replace_EXTRA_CFLAGS_EXTRA_LDFLAGS_with_ccflags-y_ldflags-y.patch @@ -0,0 +1,63 @@ +From 26597004c02ca97d4ff620ed11091cf0dd68a92d Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Nicolas=20Vi=C3=A9ville?= +Date: Tue, 17 Jun 2025 14:34:24 +0200 +Subject: [PATCH] makefile: replace EXTRA_CFLAGS and EXTRA_LDFLAGS with + ccflags-y and ldflags-y from commit "kbuild: remove EXTRA_*FLAGS support" + (Masahiro Yamada, 6 Feb 2025) saying they have been deprecated since 2007 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Nicolas Viéville +--- + Makefile | 18 +++++++++--------- + 1 file changed, 9 insertions(+), 9 deletions(-) + +diff --git a/Makefile b/Makefile +index 296162c..6e90afb 100644 +--- a/Makefile ++++ b/Makefile +@@ -131,15 +131,15 @@ GCCVERSION := $(subst $(space),$(empty),$(GCCVERSION)) + GCCVERSION := $(shell expr `echo $(GCCVERSION)` | cut -b1-3) + GE_49 := $(shell expr `echo $(GCCVERSION)` \>= 490) + +-EXTRA_CFLAGS := ++ccflags-y := + + ifeq ($(APIFINAL),CFG80211) +- EXTRA_CFLAGS += -DUSE_CFG80211 ++ ccflags-y += -DUSE_CFG80211 + $(info Using CFG80211 API) + endif + + ifeq ($(APIFINAL),WEXT) +- EXTRA_CFLAGS += -DUSE_IW ++ ccflags-y += -DUSE_IW + $(info Using Wireless Extension API) + endif + +@@ -151,15 +151,15 @@ wl-objs += src/wl/sys/wl_linux.o + wl-objs += src/wl/sys/wl_iw.o + wl-objs += src/wl/sys/wl_cfg80211_hybrid.o + +-EXTRA_CFLAGS += -I$(src)/src/include -I$(src)/src/common/include +-EXTRA_CFLAGS += -I$(src)/src/wl/sys -I$(src)/src/wl/phy -I$(src)/src/wl/ppr/include +-EXTRA_CFLAGS += -I$(src)/src/shared/bcmwifi/include +-#EXTRA_CFLAGS += -DBCMDBG_ASSERT -DBCMDBG_ERR ++ccflags-y += -I$(src)/src/include -I$(src)/src/common/include ++ccflags-y += -I$(src)/src/wl/sys -I$(src)/src/wl/phy -I$(src)/src/wl/ppr/include ++ccflags-y += -I$(src)/src/shared/bcmwifi/include ++#ccflags-y += -DBCMDBG_ASSERT -DBCMDBG_ERR + ifeq "$(GE_49)" "1" +-EXTRA_CFLAGS += -Wno-date-time ++ccflags-y += -Wno-date-time + endif + +-EXTRA_LDFLAGS := $(src)/lib/wlc_hybrid.o_shipped ++ldflags-y := $(src)/lib/wlc_hybrid.o_shipped + + KBASE ?= /lib/modules/`uname -r` + KBUILD_DIR ?= $(KBASE)/build +-- +2.49.0 + diff --git a/anda/system/wl-kmod/wl-kmod-032_add_MODULE_DESCRIPTION_macro.patch b/anda/system/wl-kmod/wl-kmod-032_add_MODULE_DESCRIPTION_macro.patch new file mode 100644 index 0000000000..db2b9a7b4b --- /dev/null +++ b/anda/system/wl-kmod/wl-kmod-032_add_MODULE_DESCRIPTION_macro.patch @@ -0,0 +1,30 @@ +From 3b780d05b0f9a3b36196c0cfedb57cb2241f87f8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Nicolas=20Vi=C3=A9ville?= +Date: Tue, 17 Jun 2025 14:49:31 +0200 +Subject: [PATCH] wl_linux.c: add MODULE_DESCRIPTION macro related to commit + "modpost: require a MODULE_DESCRIPTION()" (Jeff Johnson, 11 Mar 2025) +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Nicolas Viéville +--- + src/wl/sys/wl_linux.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/wl/sys/wl_linux.c b/src/wl/sys/wl_linux.c +index 3c25ce4..0c08fe7 100644 +--- a/src/wl/sys/wl_linux.c ++++ b/src/wl/sys/wl_linux.c +@@ -164,6 +164,8 @@ static int wl_set_radio_block(void *data, bool blocked); + static void wl_report_radio_state(wl_info_t *wl); + #endif + ++// Related to commit "modpost: require a MODULE_DESCRIPTION()" (Jeff Johnson, 11 Mar 2025) ++MODULE_DESCRIPTION("Broadcom STA wireless driver [unmaintained, out-of-tree]"); + MODULE_LICENSE("MIXED/Proprietary"); + + static struct pci_device_id wl_id_table[] = +-- +2.49.0 + diff --git a/anda/system/wl-kmod/wl-kmod-033_disable_objtool_add_warning_unmaintained.patch b/anda/system/wl-kmod/wl-kmod-033_disable_objtool_add_warning_unmaintained.patch new file mode 100644 index 0000000000..c502c50a49 --- /dev/null +++ b/anda/system/wl-kmod/wl-kmod-033_disable_objtool_add_warning_unmaintained.patch @@ -0,0 +1,64 @@ +From 642f61c3ff369e5938eb6b70bf5cc9566a7e04ae Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Nicolas=20Vi=C3=A9ville?= +Date: Tue, 17 Jun 2025 15:04:16 +0200 +Subject: [PATCH] =?UTF-8?q?wl=5Flinux.c=20and=20makefile:=20added=20warnin?= + =?UTF-8?q?g=20when=20the=20module=20is=20loaded=20about=20unmaintained=20?= + =?UTF-8?q?state=20of=20driver=20and=20its=20provided=20binary=20blob=20an?= + =?UTF-8?q?d=20possible=20security=20risks=20related=20to=20current=20Linu?= + =?UTF-8?q?x=20kernel=20security=20standards=20(e.g.=20IBT)=20-=20disablin?= + =?UTF-8?q?g=20objtool=20accordingly=20as=20well=20-=20thanks=20to=20Joan?= + =?UTF-8?q?=20Bruguera=20Mic=C3=B3?= +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Nicolas Viéville +--- + Makefile | 15 +++++++++++++++ + src/wl/sys/wl_linux.c | 4 ++++ + 2 files changed, 19 insertions(+) + +diff --git a/Makefile b/Makefile +index 6e90afb..c38c3ee 100644 +--- a/Makefile ++++ b/Makefile +@@ -169,6 +169,21 @@ MDEST_DIR ?= $(KBASE)/kernel/drivers/net/wireless + CROSS_TOOLS = /path/to/tools + CROSS_KBUILD_DIR = /path/to/kernel/tree + ++# Rel. commit "objtool: Always fail on fatal errors" (Josh Poimboeuf, 31 Mar 2025) ++# This is a *ugly* hack to disable objtool during the final processing of wl.o. ++# Since is embeds the proprietary blob (wlc_hybrid.o_shipped), objtool can't ++# process it, as it does not follow the requirements of current kernels, ++# including support for critical security features. As of Linux v6.15+, it causes ++# a build error. Disable it, at your own risk. Note the MIT license applies: ++# THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE ++# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER ++# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, ++# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE ++# SOFTWARE. ++wl.o: override objtool-enabled = ++ + all: + KBUILD_NOPEDANTIC=1 make -C $(KBUILD_DIR) M=`pwd` + +diff --git a/src/wl/sys/wl_linux.c b/src/wl/sys/wl_linux.c +index 0c08fe7..59873e1 100644 +--- a/src/wl/sys/wl_linux.c ++++ b/src/wl/sys/wl_linux.c +@@ -922,6 +922,10 @@ static struct pci_driver wl_pci_driver __refdata = { + static int __init + wl_module_init(void) + { ++ printk(KERN_WARNING "You are using the Broadcom STA wireless driver, which is " ++ "not maintained and is incompatible with Linux kernel security mitigations. " ++ "It is heavily recommended to replace the hardware and remove the driver. " ++ "Proceed at your own risk!"); + int error = -ENODEV; + + #ifdef BCMDBG +-- +2.49.0 + diff --git a/anda/system/wl-kmod/wl-kmod-034_kernel_6.15_adaptation_replace_del_timer_with_timer_delete.patch b/anda/system/wl-kmod/wl-kmod-034_kernel_6.15_adaptation_replace_del_timer_with_timer_delete.patch new file mode 100644 index 0000000000..9f93394cdd --- /dev/null +++ b/anda/system/wl-kmod/wl-kmod-034_kernel_6.15_adaptation_replace_del_timer_with_timer_delete.patch @@ -0,0 +1,35 @@ +From ddfac506c7060e7514952c6ec340b34ee0273864 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Nicolas=20Vi=C3=A9ville?= +Date: Tue, 17 Jun 2025 15:12:03 +0200 +Subject: [PATCH] wl_linux.c: fix compatibility with kernel >= 6.15 replace + del_timer function with timer_delete function - related to commit "treewide: + Switch/rename to timer_delete[_sync]()" (Thomas Gleixner, 5 Apr 2025) +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Nicolas Viéville +--- + src/wl/sys/wl_linux.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/src/wl/sys/wl_linux.c b/src/wl/sys/wl_linux.c +index 59873e1..4512f73 100644 +--- a/src/wl/sys/wl_linux.c ++++ b/src/wl/sys/wl_linux.c +@@ -2501,7 +2501,12 @@ wl_del_timer(wl_info_t *wl, wl_timer_t *t) + ASSERT(t); + if (t->set) { + t->set = FALSE; ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0) ++ // Rel. commit "treewide: Switch/rename to timer_delete[_sync]()" (Thomas Gleixner, 5 Apr 2025) ++ if (!timer_delete(&t->timer)) { ++#else + if (!del_timer(&t->timer)) { ++#endif + #ifdef BCMDBG + WL_INFORM(("wl%d: Failed to delete timer %s\n", wl->unit, t->name)); + #endif +-- +2.49.0 + diff --git a/anda/system/wl-kmod/wl-kmod-035_kernel_6.17_adaptation_fix_functions_prototypes.patch b/anda/system/wl-kmod/wl-kmod-035_kernel_6.17_adaptation_fix_functions_prototypes.patch new file mode 100644 index 0000000000..dbfa45f8c0 --- /dev/null +++ b/anda/system/wl-kmod/wl-kmod-035_kernel_6.17_adaptation_fix_functions_prototypes.patch @@ -0,0 +1,102 @@ +From 564dc0af953480b3155266b388637e51fb8c6fc8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Nicolas=20Vi=C3=A9ville?= +Date: Thu, 18 Sep 2025 16:01:05 +0200 +Subject: [PATCH] wl_cfg80211_hybrid.c: fix compatibility with kernel >= 6.17 + in funtions prototypes for wl_cfg80211_set_wiphy_params, + wl_cfg80211_set_tx_power and wl_cfg80211_get_tx_power - related to commit + "wifi: cfg80211/mac80211: Add support to get radio index" (Roopni Devanathan, + 15 Jun 2025) +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Nicolas Viéville +--- + src/wl/sys/wl_cfg80211_hybrid.c | 34 +++++++++++++++++++++++++++++---- + 1 file changed, 30 insertions(+), 4 deletions(-) + +diff --git a/src/wl/sys/wl_cfg80211_hybrid.c b/src/wl/sys/wl_cfg80211_hybrid.c +index 5a7f0c4..58f1023 100644 +--- a/src/wl/sys/wl_cfg80211_hybrid.c ++++ b/src/wl/sys/wl_cfg80211_hybrid.c +@@ -70,7 +70,12 @@ wl_cfg80211_scan(struct wiphy *wiphy, + static s32 wl_cfg80211_scan(struct wiphy *wiphy, struct net_device *ndev, + struct cfg80211_scan_request *request); + #endif ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 17, 0) ++static s32 wl_cfg80211_set_wiphy_params(struct wiphy *wiphy, int radio_idx, ++ u32 changed); ++#else + static s32 wl_cfg80211_set_wiphy_params(struct wiphy *wiphy, u32 changed); ++#endif + static s32 wl_cfg80211_join_ibss(struct wiphy *wiphy, struct net_device *dev, + struct cfg80211_ibss_params *params); + static s32 wl_cfg80211_leave_ibss(struct wiphy *wiphy, struct net_device *dev); +@@ -89,7 +94,12 @@ static int wl_cfg80211_connect(struct wiphy *wiphy, struct net_device *dev, + struct cfg80211_connect_params *sme); + static s32 wl_cfg80211_disconnect(struct wiphy *wiphy, struct net_device *dev, u16 reason_code); + +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 8, 0) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 17, 0) ++static s32 ++wl_cfg80211_set_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev, ++ int radio_idx, ++ enum nl80211_tx_power_setting type, s32 dbm); ++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3, 8, 0) + static s32 + wl_cfg80211_set_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev, + enum nl80211_tx_power_setting type, s32 dbm); +@@ -101,7 +111,10 @@ static s32 wl_cfg80211_set_tx_power(struct wiphy *wiphy, + enum tx_power_setting type, s32 dbm); + #endif + +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 14, 0) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 17, 0) ++static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev, ++ int radio_idx, unsigned int link_id, s32 *dbm); ++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(6, 14, 0) + static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev, + unsigned int link_id, s32 *dbm); + #elif LINUX_VERSION_CODE >= KERNEL_VERSION(3, 8, 0) +@@ -732,7 +745,12 @@ static s32 wl_set_retry(struct net_device *dev, u32 retry, bool l) + return err; + } + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 17, 0) ++static s32 wl_cfg80211_set_wiphy_params(struct wiphy *wiphy, int radio_idx, ++ u32 changed) ++#else + static s32 wl_cfg80211_set_wiphy_params(struct wiphy *wiphy, u32 changed) ++#endif + { + struct wl_cfg80211_priv *wl = wiphy_to_wl(wiphy); + struct net_device *ndev = wl_to_ndev(wl); +@@ -1167,7 +1185,12 @@ wl_cfg80211_disconnect(struct wiphy *wiphy, struct net_device *dev, u16 reason_c + return err; + } + +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 8, 0) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 17, 0) ++static s32 ++wl_cfg80211_set_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev, ++ int radio_idx, ++ enum nl80211_tx_power_setting type, s32 dbm) ++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3, 8, 0) + static s32 + wl_cfg80211_set_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev, + enum nl80211_tx_power_setting type, s32 dbm) +@@ -1228,7 +1251,10 @@ wl_cfg80211_set_tx_power(struct wiphy *wiphy, enum tx_power_setting type, s32 db + return err; + } + +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 14, 0) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 17, 0) ++static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev, ++ int radio_idx, unsigned int link_id, s32 *dbm) ++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(6, 14, 0) + static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, struct wireless_dev *wdev, + unsigned int link_id, s32 *dbm) + #elif LINUX_VERSION_CODE >= KERNEL_VERSION(3, 8, 0) +-- +2.51.0 + diff --git a/anda/system/wl-kmod/wl-kmod.spec b/anda/system/wl-kmod/wl-kmod.spec index 3deac76d18..77f043179b 100644 --- a/anda/system/wl-kmod/wl-kmod.spec +++ b/anda/system/wl-kmod/wl-kmod.spec @@ -10,7 +10,7 @@ Name: wl-kmod Version: 6.30.223.271 -Release: 4%{?dist} +Release: 6%{?dist} Summary: Kernel module for Broadcom wireless devices Group: System Environment/Kernel License: Redistributable, no modification permitted @@ -27,7 +27,7 @@ Patch5: wl-kmod-007_kernel_4.8_add_cfg80211_scan_info_struct.patch Patch6: wl-kmod-008_fix_kernel_warnings.patch Patch7: wl-kmod-009_kernel_4.11_remove_last_rx_in_net_device_struct.patch Patch8: wl-kmod-010_kernel_4.12_add_cfg80211_roam_info_struct.patch -Patch9: wl-kmod-011_kernel_4.14_new_kernel_read_function_prototype.patch +Patch9: wl-kmod-011_kernel_4.14_new_kernel_read_function_prototype.patch Patch10: wl-kmod-012_kernel_4.15_new_timer.patch Patch11: wl-kmod-013_gcc8_fix_bounds_check_warnings.patch Patch12: wl-kmod-014_kernel_read_pos_increment_fix.patch @@ -47,13 +47,18 @@ Patch25: wl-kmod-027_wpa_supplicant-2.11_add_max_scan_ie_len.patch Patch26: wl-kmod-028_kernel_6.12_adaptation.patch Patch27: wl-kmod-029_kernel_6.13_adaptation.patch Patch28: wl-kmod-030_kernel_6.14_adaptation.patch +Patch29: wl-kmod-031_replace_EXTRA_CFLAGS_EXTRA_LDFLAGS_with_ccflags-y_ldflags-y.patch +Patch30: wl-kmod-032_add_MODULE_DESCRIPTION_macro.patch +Patch31: wl-kmod-033_disable_objtool_add_warning_unmaintained.patch +Patch32: wl-kmod-034_kernel_6.15_adaptation_replace_del_timer_with_timer_delete.patch +Patch33: wl-kmod-035_kernel_6.17_adaptation_fix_functions_prototypes.patch ExclusiveArch: i686 x86_64 BuildRequires: kmodtool BuildRequires: elfutils-libelf-devel %{!?kernels:BuildRequires: gcc, elfutils-libelf-devel} -%{expand:%(kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} --filterfile %{SOURCE11} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} --filterfile %{SOURCE11} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } %description These packages contain Broadcom's IEEE 802.11a/b/g/n hybrid Linux device driver for use with Broadcom's BCM4311-, BCM4312-, BCM4313-, BCM4321-, BCM4322-, BCM43142-, BCM43224-, BCM43225-, BCM43227-, BCM43228-, BCM4331-, BCM4360, and -BCM4352-. @@ -62,7 +67,7 @@ NOTE: Please read the LICENSE.txt file in the docs directory before using this d %prep %{?kmodtool_check} -kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} --filterfile %{SOURCE11} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} --filterfile %{SOURCE11} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null %setup -q -c -T mkdir %{name}-%{version}-src @@ -81,7 +86,7 @@ pushd %{name}-%{version}-src %patch -P 6 -p1 -b .fix_kernel_warnings %patch -P 7 -p1 -b .kernel_4.11_remove_last_rx_in_net_device_struct %patch -P 8 -p1 -b .kernel_4.12_add_cfg80211_roam_info_struct -%patch -P 9 -p1 -b .kernel_4.14_new_kernel_read_function_prototype +%patch -P 9 -p1 -b .kernel_4.14_new_kernel_read_function_prototype %patch -P 10 -p1 -b .kernel_4.15_new_timer %patch -P 11 -p1 -b .gcc8_fix_bounds_check_warnings %patch -P 12 -p1 -b .kernel_read_pos_increment_fix @@ -101,30 +106,296 @@ pushd %{name}-%{version}-src %patch -P 26 -p1 -b .kernel_6.12_adaptation %patch -P 27 -p1 -b .kernel_6.13_adaptation %patch -P 28 -p1 -b .kernel_6.14_adaptation +%patch -P 29 -p1 -b .EXTRA_CFLAGS_EXTRA_LDFLAGS +%patch -P 30 -p1 -b .MODULE_DESCRIPTION +%patch -P 31 -p1 -b .disable_objtool +%patch -P 32 -p1 -b .kernel_6.15_adaptation +%patch -P 33 -p1 -b .kernel_6.17_adaptation -### NOTE: These MUST be added to as new EL versions are released. -%if 0%{?rhel} == 9 +# Manual patching to build for RHEL - inspired by CentOS wl-kmod.spec +# Actually works for RHEL 6.x and 7.x +%if 0%{?rhel} == 6 + # Define kvl (linux) & kvr (release) for use in "patching" logical %define kvl %(echo %{kernel_versions} | cut -d"-" -f1) %define kvr %(echo %{kernel_versions} | cut -d"-" -f2 | cut -d"." -f1) -### Patching for various point release kernels. + # Perform "patching" edits to the src/wl/sys/wl_cfg80211_hybrid.c file. + # Note: Using this method, as opposed to making a patch, allows + # the src.rpm to be compiled under various point release kernels. + # Note: Use [ >][>=] where both >= & > are present + %if "%{kvl}" == "2.6.32" + %if %{kvr} >= 71 + # Apply to EL 6.0 point release and later + %{__sed} -i 's/ >= KERNEL_VERSION(3, 6, 0)/ >= KERNEL_VERSION(2, 6, 32)/' src/wl/sys/wl_cfg80211_hybrid.c + %endif + %if %{kvr} >= 131 + # Apply to EL 6.1 point release and later (2.6.32-131.0.15) + # > No changes currently needed for EL 6.1 point release + %endif + %if %{kvr} >= 220 + # Apply to EL 6.2 point release and later + # > No changes currently needed for EL 6.2 point release + %endif + %if %{kvr} >= 279 + # Apply to EL 6.3 point release and later + %{__sed} -i 's/ >= KERNEL_VERSION(2, 6, 36)/ >= KERNEL_VERSION(2, 6, 32)/' src/wl/sys/wl_cfg80211_hybrid.c + %{__sed} -i 's/ >= KERNEL_VERSION(2, 6, 37)/ >= KERNEL_VERSION(2, 6, 32)/' src/wl/sys/wl_cfg80211_hybrid.c + %{__sed} -i 's/ >= KERNEL_VERSION(2, 6, 38)/ >= KERNEL_VERSION(2, 6, 32)/' src/wl/sys/wl_cfg80211_hybrid.c + %{__sed} -i 's/ > KERNEL_VERSION(2, 6, 39)/ > KERNEL_VERSION(2, 6, 31)/' src/wl/sys/wl_cfg80211_hybrid.c + %{__sed} -i 's/ >= KERNEL_VERSION(2, 6, 39)/ >= KERNEL_VERSION(2, 6, 32)/' src/wl/sys/wl_cfg80211_hybrid.c + %{__sed} -i 's/ >= KERNEL_VERSION(3, 1, 0)/ >= KERNEL_VERSION(2, 6, 32)/' src/wl/sys/wl_cfg80211_hybrid.c + %endif + %if %{kvr} == 358 + # Only apply to EL 6.4 point release + if $(grep -q "/lib/modules/kabi/kabi_whitelist" /usr/lib/rpm/redhat/find-requires.ksyms 2>/dev/null) ; then + %{__sed} -i 's@/lib/modules/kabi/kabi_whitelist@/lib/modules/kabi-current/kabi_whitelist@g' /usr/lib/rpm/redhat/find-requires.ksyms + fi + %endif + %if %{kvr} >= 358 + # Apply to EL 6.4 point release and later + # > No changes currently needed for EL 6.4 point release + %endif + %if %{kvr} == 431 + # Only apply to EL 6.5 point release + if $(grep -q "/lib/modules/kabi/kabi_whitelist" /usr/lib/rpm/redhat/find-requires.ksyms 2>/dev/null) ; then + %{__sed} -i 's@/lib/modules/kabi/kabi_whitelist@/lib/modules/kabi-current/kabi_whitelist@g' /usr/lib/rpm/redhat/find-requires.ksyms + fi + %endif + %if %{kvr} >= 431 + # Apply to EL 6.5 point release and later + %{__sed} -i 's/ >= KERNEL_VERSION(3, 8, 0)/ >= KERNEL_VERSION(2, 6, 32)/' src/wl/sys/wl_cfg80211_hybrid.c + %{__sed} -i 's/ >= KERNEL_VERSION(3, 9, 0)/ >= KERNEL_VERSION(2, 6, 32)/' src/wl/sys/wl_cfg80211_hybrid.c + %endif + %if %{kvr} == 504 + # Only apply to EL 6.6 point release + if $(grep -q "/lib/modules/kabi/kabi_whitelist" /usr/lib/rpm/redhat/find-requires.ksyms 2>/dev/null) ; then + %{__sed} -i 's@/lib/modules/kabi/kabi_whitelist@/lib/modules/kabi-current/kabi_whitelist@g' /usr/lib/rpm/redhat/find-requires.ksyms + fi + %endif + %if %{kvr} >= 504 + # Apply to EL 6.6 point release and later + # > No changes currently needed for EL 6.6 point release + %endif + %if %{kvr} >= 573 + # Apply to EL 6.7 point release and later + %{__sed} -i 's/ >= KERNEL_VERSION(3, 11, 0)/ >= KERNEL_VERSION(2, 6, 32)/' src/wl/sys/wl_cfg80211_hybrid.c + %{__sed} -i 's/ < KERNEL_VERSION(3, 16, 0)/ < KERNEL_VERSION(2, 6, 32)/' src/wl/sys/wl_cfg80211_hybrid.c + %{__sed} -i 's/ < KERNEL_VERSION(3, 18, 0)/ < KERNEL_VERSION(2, 6, 32)/' src/wl/sys/wl_cfg80211_hybrid.c + %{__sed} -i 's/ >= KERNEL_VERSION(3, 15, 0)/ >= KERNEL_VERSION(2, 6, 32)/' src/wl/sys/wl_cfg80211_hybrid.c + %endif + %if %{kvr} >= 642 + # Apply to EL 6.8 point release and later + %{__sed} -i 's/ >= KERNEL_VERSION(4, 0, 0)/ >= KERNEL_VERSION(2, 6, 32)/' src/wl/sys/wl_cfg80211_hybrid.c + %{__sed} -i 's/ < KERNEL_VERSION(4,2,0)/ < KERNEL_VERSION(2, 6, 32)/' src/wl/sys/wl_cfg80211_hybrid.c + %endif + %if %{kvr} >= 696 + # Apply to EL 6.9 point release and later + # > No changes currently needed for EL 6.9 point release + %endif + %if %{kvr} >= 754 + # Apply to EL 6.10 point release and later + # > No changes currently needed for EL 6.10 point release + %endif + %endif +%endif +%if 0%{?rhel} == 7 + # Define kvl (linux) & kvr (release) for use in "patching" logical + %define kvl %(echo %{kernel_versions} | cut -d"-" -f1) + %define kvr %(echo %{kernel_versions} | cut -d"-" -f2 | cut -d"." -f1) + + # Perform "patching" edits to the src/wl/sys/wl_cfg80211_hybrid.c file. + # Note: Using this method, as opposed to making a patch, allows + # the src.rpm to be compiled under various point release kernels. + # Note: Use [ >][>=] where both >= & > are present + %if "%{kvl}" == "3.10.0" + %if %{kvr} == 123 + # Only apply to EL 7.0 point release + if $(grep -q "/lib/modules/kabi/kabi_whitelist" /usr/lib/rpm/redhat/find-requires.ksyms 2>/dev/null) ; then + %{__sed} -i 's@/lib/modules/kabi/kabi_whitelist@/lib/modules/kabi-rhel70/kabi_whitelist@g' /usr/lib/rpm/redhat/find-requires.ksyms + fi + %endif + %if %{kvr} >= 123 + # Apply to EL 7.0 point release and later + # > No changes currently needed for EL 7.0 point release + %endif + %if %{kvr} >= 229 + # Apply to EL 7.1 point release and later + %{__sed} -i 's/ >= KERNEL_VERSION(3, 11, 0)/ >= KERNEL_VERSION(3, 10, 0)/' src/wl/sys/wl_cfg80211_hybrid.c + %{__sed} -i 's/ >= KERNEL_VERSION(3, 15, 0)/ >= KERNEL_VERSION(3, 10, 0)/' src/wl/sys/wl_cfg80211_hybrid.c + %{__sed} -i 's/ < KERNEL_VERSION(3, 16, 0)/ < KERNEL_VERSION(3, 10, 0)/' src/wl/sys/wl_cfg80211_hybrid.c + %endif + %if %{kvr} >= 327 + # Apply to EL 7.2 point release and later + %{__sed} -i 's/ < KERNEL_VERSION(3, 18, 0)/ < KERNEL_VERSION(3, 9, 0)/' src/wl/sys/wl_cfg80211_hybrid.c + %{__sed} -i 's/ >= KERNEL_VERSION(4, 0, 0)/ >= KERNEL_VERSION(3, 10, 0)/' src/wl/sys/wl_cfg80211_hybrid.c + %endif + %if %{kvr} >= 514 + # Apply to EL 7.3 point release and later + %{__sed} -i 's/ < KERNEL_VERSION(4,2,0)/ < KERNEL_VERSION(3, 9, 0)/' src/wl/sys/wl_cfg80211_hybrid.c + %{__sed} -i 's/ >= KERNEL_VERSION(4, 7, 0)/ >= KERNEL_VERSION(3, 10, 0)/' src/wl/sys/wl_cfg80211_hybrid.c + %endif + %if %{kvr} >= 693 + # Apply to EL 7.4 point release and later + %{__sed} -i 's/ >= KERNEL_VERSION(4, 8, 0)/ >= KERNEL_VERSION(3, 10, 0)/' src/wl/sys/wl_cfg80211_hybrid.c + %endif + %if %{kvr} >= 862 + # Apply to EL 7.5 point release and later + %{__sed} -i 's/ <= KERNEL_VERSION(4, 10, 0)/ <= KERNEL_VERSION(3, 9, 0)/' src/wl/sys/wl_linux.c + %{__sed} -i 's/ >= KERNEL_VERSION(4, 11, 0)/ >= KERNEL_VERSION(3, 10, 0)/g' src/wl/sys/wl_cfg80211_hybrid.c + %{__sed} -i 's/ < KERNEL_VERSION(4, 12, 0)/ < KERNEL_VERSION(3, 10, 0)/g' src/wl/sys/wl_cfg80211_hybrid.c + %{__sed} -i 's/ >= KERNEL_VERSION(4, 12, 0)/ >= KERNEL_VERSION(3, 10, 0)/g' src/wl/sys/wl_cfg80211_hybrid.c + %endif + %if %{kvr} >= 957 + # Apply to EL 7.6 point release and later + # > No changes currently needed for EL 7.6 point release + %endif + %if %{kvr} >= 1062 + # Apply to EL 7.7 point release and later + %{__sed} -i -e 's@__attribute__((__fallthrough__));.*@/* fall through */@g' src/wl/sys/wl_cfg80211_hybrid.c + %endif + %if %{kvr} >= 1127 + # Apply to EL 7.8 point release and later + # > No changes currently needed for EL 7.8 point release + %endif + %if %{kvr} >= 1160 + # Apply to EL 7.9 point release and later + # > No changes currently needed for EL 7.9 point release + %endif + %endif +%endif +%if 0%{?rhel} == 8 + # Define kvl (linux) & kvr (release) for use in "patching" logical + %define kvl %(echo %{kernel_versions} | cut -d"-" -f1) + %define kvr %(echo %{kernel_versions} | cut -d"-" -f2 | cut -d"." -f1) + + # Perform "patching" edits to the src/wl/sys/wl_cfg80211_hybrid.c file. + # Note: Using this method, as opposed to making a patch, allows + # the src.rpm to be compiled under various point release kernels. + # Note: Use [ >][>=] where both >= & > are present + %if "%{kvl}" == "4.18.0" + %if %{kvr} == 80 + # Only apply to EL 8.0 point release + # > No changes currently needed for EL 8.0 point release + %endif + %if %{kvr} >= 80 + # Apply to EL 8.0 point release and later + # > No changes currently needed for EL 8.0 point release + %endif + %if %{kvr} >= 147 + # Apply to EL 8.1 point release and later + # > No changes currently needed for EL 8.1 point release + %endif + %if %{kvr} >= 193 + # Apply to EL 8.2 point release and later + # > No changes currently needed for EL 8.2 point release + %endif + %if %{kvr} >= 240 + # Apply to EL 8.3 point release and later + # > No changes currently needed for EL 8.3 point release + %endif + %if %{kvr} >= 305 + # Apply to EL 8.4 point release and later + # > No changes currently needed for EL 8.4 point release + %endif + %if %{kvr} >= 348 + # Apply to EL 8.5 point release and later + # > No changes currently needed for EL 8.5 point release + %endif + %if %{kvr} >= 372 + # Apply to EL 8.6 point release and later + # > No changes currently needed for EL 8.6 point release + %endif + %if %{kvr} >= 425 + # Apply to EL 8.7 point release and later + # > No changes currently needed for EL 8.7 point release + %endif + %if %{kvr} >= 477 + # Apply to EL 8.8 point release and later + %{__sed} -i 's/ >= KERNEL_VERSION(6, 0, 0)/ >= KERNEL_VERSION(4, 18, 0)/g' src/wl/sys/wl_cfg80211_hybrid.c + %{__sed} -i 's/ >= KERNEL_VERSION(6, 1, 0)/ >= KERNEL_VERSION(4, 18, 0)/g' src/wl/sys/wl_cfg80211_hybrid.c + %endif + %if %{kvr} >= 513 + # Apply to EL 8.9 point release and later + # > No changes currently needed for EL 8.9 point release + %endif + %if %{kvr} >= 553 + # Apply to EL 8.10 point release and later + # > No changes currently needed for EL 8.10 point release + %endif + %endif +%endif +%if 0%{?rhel} == 9 + # Define kvl (linux) & kvr (release) for use in "patching" logical + %define kvl %(echo %{kernel_versions} | cut -d"-" -f1) + %define kvr %(echo %{kernel_versions} | cut -d"-" -f2 | cut -d"." -f1) + + # Perform "patching" edits to the src/wl/sys/wl_cfg80211_hybrid.c file. + # Note: Using this method, as opposed to making a patch, allows + # the src.rpm to be compiled under various point release kernels. + # Note: Use [ >][>=] where both >= & > are present %if "%{kvl}" == "5.14.0" %if %{kvr} == 70 + # Only apply to EL 9.0 point release + # > No changes currently needed for EL 9.0 point release %endif %if %{kvr} >= 70 + # Apply to EL 9.0 point release and later %{__sed} -i 's/ < KERNEL_VERSION(5, 17, 0)/ < KERNEL_VERSION(5, 14, 0)/g' src/wl/sys/wl_iw.h %{__sed} -i 's/ >= KERNEL_VERSION(5, 17, 0)/ >= KERNEL_VERSION(5, 14, 0)/g' src/wl/sys/wl_linux.c %endif %if %{kvr} >= 162 + # Apply to EL 9.1 point release and later + # > No changes currently needed for EL 9.1 point release %endif %if %{kvr} >= 284 + # Apply to EL 9.2 point release and later + # > No changes currently needed for EL 9.2 point release %endif %if %{kvr} >= 362 + # Apply to EL 9.3 point release and later %{__sed} -i 's/ >= KERNEL_VERSION(6, [01], 0)/ >= KERNEL_VERSION(5, 14, 0)/g' src/wl/sys/wl_cfg80211_hybrid.c %endif %if %{kvr} >= 427 + # Apply to EL 9.4 point release and later + # > No changes currently needed for EL 9.4 point release %endif %if %{kvr} >= 503 + # Apply to EL 9.5 point release and later + # > No changes currently needed for EL 9.5 point release + %endif + %if %{kvr} >= 570 + # Apply to EL 9.6 point release and later + # > No changes currently needed for EL 9.6 point release + %endif + %if %{kvr} >= 611 + # Apply to EL 9.7 point release and later + %{__sed} -i 's/ < KERNEL_VERSION(6, 13, 0)/ < KERNEL_VERSION(5, 14, 0)/g' src/include/linuxver.h + %{__sed} -i 's/ >= KERNEL_VERSION(6, 14, 0)/ >= KERNEL_VERSION(5, 14, 0)/g' src/wl/sys/wl_cfg80211_hybrid.c + %{__sed} -i 's/ >= KERNEL_VERSION(6, 17, 0)/ >= KERNEL_VERSION(5, 14, 0)/g' src/wl/sys/wl_cfg80211_hybrid.c + %endif + %endif +%endif +%if 0%{?rhel} == 10 + # Define kvl (linux) & kvr (release) for use in "patching" logical + %define kvl %(echo %{kernel_versions} | cut -d"-" -f1) + %define kvr %(echo %{kernel_versions} | cut -d"-" -f2 | cut -d"." -f1) + + # Perform "patching" edits to the src/wl/sys/wl_cfg80211_hybrid.c file. + # Note: Using this method, as opposed to making a patch, allows + # the src.rpm to be compiled under various point release kernels. + # Note: Use [ >][>=] where both >= & > are present + %if "%{kvl}" == "6.12.0" + %if %{kvr} == 55 + # Only apply to EL 10.0 point release + # > No changes currently needed for EL 10.0 point release + %endif + %if %{kvr} >= 55 + # Apply to EL 10.0 point release and later + %{__sed} -i 's/ < KERNEL_VERSION(6, 13, 0)/ < KERNEL_VERSION(6, 12, 0)/g' src/include/linuxver.h + %endif + %if %{kvr} >= 124 + # Apply to EL 10.1 point release and later + %{__sed} -i 's/ >= KERNEL_VERSION(6, 14, 0)/ >= KERNEL_VERSION(6, 12, 0)/g' src/wl/sys/wl_cfg80211_hybrid.c %endif %endif %endif diff --git a/anda/system/wluma/wluma.spec b/anda/system/wluma/wluma.spec index 55eb07ede3..7a9aab489c 100644 --- a/anda/system/wluma/wluma.spec +++ b/anda/system/wluma/wluma.spec @@ -1,12 +1,12 @@ Name: wluma -Version: 4.10.0 -Release: 2%?dist +Version: 4.11.1 +Release: 1%{?dist} Summary: Automatic brightness adjustment based on screen contents and ALS URL: https://github.com/max-baz/wluma Source0: %{url}/archive/refs/tags/%{version}.tar.gz License: ISC BuildRequires: cargo anda-srpm-macros cargo-rpm-macros mold v4l-utils libv4l-devel rust-libudev-devel vulkan-loader-devel dbus-devel clang systemd-rpm-macros -Packager: Its-J +Packager: Its-J %description %{summary}. @@ -45,8 +45,11 @@ install -Dm 644 config.toml %{buildroot}%{_datadir}/%{name}/config.toml %{_datadir}/%{name}/config.toml %changelog +* Tue Apr 14 2026 Its-J +- Add email to my previous contributor attributions + * Sat Nov 29 2025 metcya - Package systemd service, example config, and udev rules -* Fri Nov 28 2025 Its-J +* Fri Nov 28 2025 Its-J - Package wluma diff --git a/anda/system/xbps/xbps.spec b/anda/system/xbps/xbps.spec index 99c8a0d842..ef1df35a06 100644 --- a/anda/system/xbps/xbps.spec +++ b/anda/system/xbps/xbps.spec @@ -37,8 +37,10 @@ featureful and portable as much as possible. %prep %autosetup -%build +%conf %configure + +%build %make_build %install diff --git a/anda/system/xone/nightly/akmod/xone-nightly-kmod.spec b/anda/system/xone/nightly/akmod/xone-nightly-kmod.spec index 564991c646..68188620f7 100644 --- a/anda/system/xone/nightly/akmod/xone-nightly-kmod.spec +++ b/anda/system/xone/nightly/akmod/xone-nightly-kmod.spec @@ -8,7 +8,7 @@ Name: %{modulename}-nightly-kmod Version: %{ver}^%{commitdate}git.%{shortcommit} -Release: 1%{?dist} +Release: 3%{?dist} %if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 Epoch: 1 %endif @@ -28,14 +28,14 @@ Obsoletes: %{name} < %{?epoch:%{epoch}:}3.0^20250419git.c682b0c %endif Packager: Gilver E. -%{expand:%(kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } %description Linux kernel driver for Xbox One and Xbox Series X|S accessories. %prep %{?kmodtool_check} -kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null %autosetup -p1 -n %{modulename}-%{commit} diff --git a/anda/system/xone/nightly/dkms/dkms-xone-nightly.spec b/anda/system/xone/nightly/dkms/dkms-xone-nightly.spec index b593424a01..b4de82ea2c 100644 --- a/anda/system/xone/nightly/dkms/dkms-xone-nightly.spec +++ b/anda/system/xone/nightly/dkms/dkms-xone-nightly.spec @@ -7,7 +7,7 @@ Name: dkms-%{modulename}-nightly Version: %{ver}^%{commitdate}git.%{shortcommit} -Release: 1%{?dist} +Release: 2%{?dist} %if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 Epoch: 1 %endif diff --git a/anda/system/xone/nightly/kmod-common/xone-nightly.spec b/anda/system/xone/nightly/kmod-common/xone-nightly.spec index c08c02e8b3..8625122ca2 100644 --- a/anda/system/xone/nightly/kmod-common/xone-nightly.spec +++ b/anda/system/xone/nightly/kmod-common/xone-nightly.spec @@ -11,7 +11,7 @@ Name: xone-nightly Version: %{ver}^%{commitdate}git.%{shortcommit} -Release: 1%{?dist} +Release: 2%{?dist} %if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 Epoch: 1 %endif @@ -45,7 +45,7 @@ Linux kernel driver for Xbox One and Xbox Series X|S accessories common files. %package akmod-modules Summary: Modules for Akmods -Requires: akmod-%{name} +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} BuildArch: noarch %description akmod-modules diff --git a/anda/system/xone/stable/akmod/xone-kmod.spec b/anda/system/xone/stable/akmod/xone-kmod.spec index 319fd965e6..39651ecf4b 100644 --- a/anda/system/xone/stable/akmod/xone-kmod.spec +++ b/anda/system/xone/stable/akmod/xone-kmod.spec @@ -3,8 +3,8 @@ %global modulename xone Name: %{modulename}-kmod -Version: 0.5.7 -Release: 1%?dist +Version: 0.5.8 +Release: 3%{?dist} %if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 Epoch: 2 %endif @@ -24,14 +24,14 @@ Obsoletes: %{name} < %{?epoch:%{epoch}:}0.3.4 %endif Packager: Gilver E. -%{expand:%(kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } %description Linux kernel driver for Xbox One and Xbox Series X|S accessories. %prep %{?kmodtool_check} -kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null %autosetup -p1 -n %{modulename}-%{version} diff --git a/anda/system/xone/stable/dkms/dkms-xone.spec b/anda/system/xone/stable/dkms/dkms-xone.spec index 57cbc4cc8b..2c86dfe891 100644 --- a/anda/system/xone/stable/dkms/dkms-xone.spec +++ b/anda/system/xone/stable/dkms/dkms-xone.spec @@ -2,8 +2,8 @@ %global modulename xone Name: dkms-%{modulename} -Version: 0.5.7 -Release: 1%?dist +Version: 0.5.8 +Release: 2%{?dist} %if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 Epoch: 2 %endif diff --git a/anda/system/xone/stable/kmod-common/xone.spec b/anda/system/xone/stable/kmod-common/xone.spec index 9a5ac16a04..d219664c9e 100644 --- a/anda/system/xone/stable/kmod-common/xone.spec +++ b/anda/system/xone/stable/kmod-common/xone.spec @@ -6,7 +6,7 @@ Name: xone Version: 0.5.8 -Release: 1%{?dist} +Release: 2%{?dist} %if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 Epoch: 2 %endif @@ -44,7 +44,7 @@ Linux kernel driver for Xbox One and Xbox Series X|S accessories common files. %package akmod-modules Summary: Modules for Akmods -Requires: akmod-%{name} +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} BuildArch: noarch %description akmod-modules diff --git a/anda/system/xonedo/nightly/akmod/xonedo-nightly-kmod.spec b/anda/system/xonedo/nightly/akmod/xonedo-nightly-kmod.spec index e0802a189e..61e2d361b3 100644 --- a/anda/system/xonedo/nightly/akmod/xonedo-nightly-kmod.spec +++ b/anda/system/xonedo/nightly/akmod/xonedo-nightly-kmod.spec @@ -8,7 +8,7 @@ Name: %{modulename}-nightly-kmod Version: %{ver}^%{commitdate}git.%{shortcommit} -Release: 1%{?dist} +Release: 4%{?dist} %if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 Epoch: 1 %endif @@ -25,19 +25,20 @@ Conflicts: dkms-%{modulename}-nightly Conflicts: %{modulename}-kmod Conflicts: dkms-xone-nightly Conflicts: xone-kmod +Provides: %{modulename}-nightly-kmod %if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 Obsoletes: %{name} < %{?epoch:%{epoch}:}3.0^20250419git.c682b0c %endif Packager: Kyle Gospodnetich -%{expand:%(kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } %description Linux kernel driver for Xbox One and Xbox Series X|S accessories. Compatible with the xpad kernel module. %prep %{?kmodtool_check} -kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null %autosetup -p1 -n %{modulename}-%{commit} diff --git a/anda/system/xonedo/nightly/dkms/dkms-xonedo-nightly.spec b/anda/system/xonedo/nightly/dkms/dkms-xonedo-nightly.spec index e115413c72..134a1aeefb 100644 --- a/anda/system/xonedo/nightly/dkms/dkms-xonedo-nightly.spec +++ b/anda/system/xonedo/nightly/dkms/dkms-xonedo-nightly.spec @@ -7,7 +7,7 @@ Name: dkms-%{modulename}-nightly Version: %{ver}^%{commitdate}git.%{shortcommit} -Release: 1%{?dist} +Release: 3%{?dist} %if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 Epoch: 1 %endif diff --git a/anda/system/xonedo/nightly/kmod-common/xonedo-nightly.spec b/anda/system/xonedo/nightly/kmod-common/xonedo-nightly.spec index 730a572cee..d850fa0598 100644 --- a/anda/system/xonedo/nightly/kmod-common/xonedo-nightly.spec +++ b/anda/system/xonedo/nightly/kmod-common/xonedo-nightly.spec @@ -12,7 +12,7 @@ Name: xonedo-nightly Version: %{ver}^%{commitdate}git.%{shortcommit} -Release: 1%{?dist} +Release: 3%{?dist} %if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 Epoch: 1 %endif @@ -47,7 +47,7 @@ Linux kernel driver for Xbox One and Xbox Series X|S accessories common files. C %package akmod-modules Summary: Modules for Akmods -Requires: akmod-%{name} +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} BuildArch: noarch %description akmod-modules diff --git a/anda/system/xonedo/stable/akmod/xonedo-kmod.spec b/anda/system/xonedo/stable/akmod/xonedo-kmod.spec index ed04ba4f18..36d0950055 100644 --- a/anda/system/xonedo/stable/akmod/xonedo-kmod.spec +++ b/anda/system/xonedo/stable/akmod/xonedo-kmod.spec @@ -5,7 +5,7 @@ Name: %{modulename}-kmod Version: 0.5.7 -Release: 1%?dist +Release: 4%{?dist} %if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 Epoch: 2 %endif @@ -22,19 +22,20 @@ Conflicts: dkms-%{modulename} Conflicts: %{modulename}-nightly-kmod Conflicts: dkms-xone Conflicts: xone-nightly-kmod +Provides: %{modulename}-kmod %if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 Obsoletes: %{name} < %{?epoch:%{epoch}:}0.3.4 %endif Packager: Kyle Gospodnetich -%{expand:%(kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } %description Linux kernel driver for Xbox One and Xbox Series X|S accessories. Compatible with the xpad kernel module. %prep %{?kmodtool_check} -kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null %autosetup -p1 -n %{modulename}-%{version}-ogc%{ogcversion} diff --git a/anda/system/xonedo/stable/dkms/dkms-xonedo.spec b/anda/system/xonedo/stable/dkms/dkms-xonedo.spec index 4b12a9faca..f6da01c6e2 100644 --- a/anda/system/xonedo/stable/dkms/dkms-xonedo.spec +++ b/anda/system/xonedo/stable/dkms/dkms-xonedo.spec @@ -4,7 +4,7 @@ Name: dkms-%{modulename} Version: 0.5.7 -Release: 1%?dist +Release: 3%?dist %if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 Epoch: 2 %endif diff --git a/anda/system/xonedo/stable/kmod-common/update.rhai b/anda/system/xonedo/stable/kmod-common/update.rhai index 3ebcf9bbb4..1e3d61c10b 100644 --- a/anda/system/xonedo/stable/kmod-common/update.rhai +++ b/anda/system/xonedo/stable/kmod-common/update.rhai @@ -1,7 +1,3 @@ -let v = gh_tag("OpenGamingCollective/xonedo") -v.crop(1); -rpm.global("ver", v); +let v = gh_tag("OpenGamingCollective/xonedo"); -if rpm.changed() { - rpm.release(); -} +rpm.version(find(`([\d.]+)-ogc`, v, 1)); \ No newline at end of file diff --git a/anda/system/xonedo/stable/kmod-common/xonedo.spec b/anda/system/xonedo/stable/kmod-common/xonedo.spec index b93ede724f..e8ff0b001d 100644 --- a/anda/system/xonedo/stable/kmod-common/xonedo.spec +++ b/anda/system/xonedo/stable/kmod-common/xonedo.spec @@ -3,11 +3,11 @@ %global firmware_hash1 48084d9fa53b9bb04358f3bb127b7495dc8f7bb0b3ca1437bd24ef2b6eabdf66 %global firmware_hash2 0023a7bae02974834500c665a281e25b1ba52c9226c84989f9084fa5ce591d9b %global firmware_hash3 e2710daf81e7b36d35985348f68a81d18bc537a2b0c508ffdfde6ac3eae1bad7 -%global ver 0.5.7-ogc1 +%global ogcversion 1 Name: xonedo -Version: %(echo %{ver} | sed 's/-/^/g') -Release: 1%?dist +Version: 0.5.7 +Release: 3%?dist %if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 Epoch: 2 %endif @@ -47,7 +47,7 @@ Linux kernel driver for Xbox One and Xbox Series X|S accessories common files. %package akmod-modules Summary: Modules for Akmods -Requires: akmod-%{name} +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} BuildArch: noarch %description akmod-modules diff --git a/anda/system/xpad-noone/akmod/xpad-noone-kmod.spec b/anda/system/xpad-noone/akmod/xpad-noone-kmod.spec index 0dde070c72..fff0b2ab46 100644 --- a/anda/system/xpad-noone/akmod/xpad-noone-kmod.spec +++ b/anda/system/xpad-noone/akmod/xpad-noone-kmod.spec @@ -10,7 +10,7 @@ This is the original upstream xpad driver from the Linux kernel with support for Name: %{modulename}-kmod Version: %{ver}^%{commitdate}git.%{shortcommit} -Release: 4%{?dist} +Release: 6%{?dist} License: GPL-2.0-or-later Summary: xpad driver with support for XBox One controllers removed URL: https://github.com/medusalix/xpad-noone @@ -28,14 +28,14 @@ Requires: akmods Conflicts: dkms-%{modulename} Packager: Gilver E. -%{expand:%(kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } %description %_description %prep %{?kmodtool_check} -kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null %autosetup -n %{modulename}-%{commit} -p1 diff --git a/anda/system/xpad-noone/dkms/dkms-xpad-noone.spec b/anda/system/xpad-noone/dkms/dkms-xpad-noone.spec index a2ca1bb2c5..97716c4969 100644 --- a/anda/system/xpad-noone/dkms/dkms-xpad-noone.spec +++ b/anda/system/xpad-noone/dkms/dkms-xpad-noone.spec @@ -8,7 +8,7 @@ This is the original upstream xpad driver from the Linux kernel with support for Name: dkms-%{modulename} Version: %{ver}^%{commitdate}git.%{shortcommit} -Release: 3%{?dist} +Release: 4%{?dist} License: GPL-2.0-or-later Summary: xpad driver with support for XBox One controllers removed URL: https://github.com/medusalix/xpad-noone diff --git a/anda/system/xpad-noone/kmod-common/xpad-noone.spec b/anda/system/xpad-noone/kmod-common/xpad-noone.spec index ad694dc998..04847a5d12 100644 --- a/anda/system/xpad-noone/kmod-common/xpad-noone.spec +++ b/anda/system/xpad-noone/kmod-common/xpad-noone.spec @@ -7,7 +7,7 @@ This is the original upstream xpad driver from the Linux kernel with support for Name: xpad-noone Version: %{ver}^%{commitdate}git.%{shortcommit} -Release: 2%{?dist} +Release: 3%{?dist} License: GPL-2.0-or-later Summary: xpad driver with support for XBox One controllers removed URL: https://github.com/medusalix/xpad-noone @@ -25,7 +25,7 @@ Packager: Gilver E. %package akmod-modules Summary: Modules for Akmods -Requires: akmod-%{name} +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} BuildArch: noarch %description akmod-modules diff --git a/anda/system/xpadneo/akmod/update.rhai b/anda/system/xpadneo/akmod/update.rhai deleted file mode 100644 index b7de501f56..0000000000 --- a/anda/system/xpadneo/akmod/update.rhai +++ /dev/null @@ -1,13 +0,0 @@ -let c = sh("cat anda/system/xpadneo/kmod-common/xpadneo.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; -c.pop(); -rpm.global("commit", c); -if rpm.changed() { - rpm.release(); - let d = sh("cat anda/system/xpadneo/kmod-common/xpadneo.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; - d.pop(); - rpm.global("commitdate", d); - let v = sh("cat anda/system/xpadneo/kmod-common/xpadneo.spec | grep '%global ver' | sed -E 's/.+ver //'", #{"stdout": "piped"}).ctx.stdout; - v.pop(); - rpm.global("ver", v); -} - diff --git a/anda/system/xpadneo/dkms/update.rhai b/anda/system/xpadneo/dkms/update.rhai deleted file mode 100644 index b7de501f56..0000000000 --- a/anda/system/xpadneo/dkms/update.rhai +++ /dev/null @@ -1,13 +0,0 @@ -let c = sh("cat anda/system/xpadneo/kmod-common/xpadneo.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; -c.pop(); -rpm.global("commit", c); -if rpm.changed() { - rpm.release(); - let d = sh("cat anda/system/xpadneo/kmod-common/xpadneo.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; - d.pop(); - rpm.global("commitdate", d); - let v = sh("cat anda/system/xpadneo/kmod-common/xpadneo.spec | grep '%global ver' | sed -E 's/.+ver //'", #{"stdout": "piped"}).ctx.stdout; - v.pop(); - rpm.global("ver", v); -} - diff --git a/anda/system/xpadneo/kmod-common/io.github.xpadneo.metainfo.xml b/anda/system/xpadneo/kmod-common/io.github.xpadneo.metainfo.xml deleted file mode 100644 index f11f630d07..0000000000 --- a/anda/system/xpadneo/kmod-common/io.github.xpadneo.metainfo.xml +++ /dev/null @@ -1,26 +0,0 @@ - - io.github.xpadneo - xpadneo - xpadneo - Advanced Linux Driver for Xbox One Wireless Controller (shipped with Xbox One S) - -

- Wireless Drivers for the Xbox One and Series S|X controllers. - - Across all models, xpadneo won't support audio features of the controllers because the firmware doesn't support audio in Bluetooth mode. In the future, xpadneo may support audio when USB and dongle support will be added. -

-
- https://atar-axis.github.io/xpadneo/ - CC0-1.0 - - GPL-3.0 - - - Florian Dollinger - - - - - usb:v045Ep02FDd0008dc00dsc00dp00ic03isc00ip00in00 - -
\ No newline at end of file diff --git a/anda/system/xpadneo/kmod-common/xpadneo.spec b/anda/system/xpadneo/kmod-common/xpadneo.spec deleted file mode 100644 index c8fd580b77..0000000000 --- a/anda/system/xpadneo/kmod-common/xpadneo.spec +++ /dev/null @@ -1,63 +0,0 @@ -%global commit 93621f104dfe6a1690cf72f0f4fd074a0a86acce -%global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20260325 -%global ver 0.10.1 - -Name: xpadneo -Version: %{ver}^%{commitdate}git.%{shortcommit} -Release: 1%{?dist} -Summary: Advanced Linux Driver for Xbox One Wireless Gamepad common files -License: GPL-3.0 -URL: https://atar-axis.github.io/%{name} -Source0: https://github.com/atar-axis/%{name}/archive/%{commit}.tar.gz#/%{name}-%{shortcommit}.tar.gz -Source1: io.github.%{name}.metainfo.xml -BuildRequires: sed -BuildRequires: systemd-rpm-macros -Requires: (akmod-%{name} = %{?epoch:%{epoch}:}%{version} or dkms-%{name} = %{?epoch:%{epoch}:}%{version}) -Provides: %{name}-kmod-common = %{?epoch:%{epoch}:}%{version} -Obsoletes: %{name}-kmod-common < %{?epoch:%{epoch}:}0.9.7^20241224git.8d20a23-5%{?dist} -BuildArch: noarch -Packager: Gilver E. - -%description -Advanced Linux Driver for Xbox One Wireless Gamepad common files. - -%package akmod-modules -Summary: Modules for Akmods -Requires: akmod-%{name} -BuildArch: noarch - -%description akmod-modules -Akmods modules for the akmod-%{name} package. - -%prep -%autosetup -p1 -n %{name}-%{commit} -/usr/bin/sed -nE '/^BUILT_MODULE_NAME/{s@^.+"(.+)"@\1@; s|-|_|g; p}' hid-%{name}/dkms.conf.in > %{name}.conf - -%install -# Aliases: -install -Dpm644 hid-%{name}/etc-modprobe.d/%{name}.conf -t %{buildroot}%{_modprobedir} - -# UDev rules: -install -Dpm644 hid-%{name}/etc-udev-rules.d/*.rules -t %{buildroot}%{_udevrulesdir}/ - -# Metadata -install -Dm644 %{SOURCE1} %{buildroot}%{_datadir}/metainfo/io.github.%{name}.metainfo.xml - -# Akmods modules -install -Dm644 %{name}.conf -t %{buildroot}%{_modulesloaddir} - -%files -%license LICENSE.md LICENSES -%doc docs/*.md -%{_modprobedir}/%{name}.conf -%{_udevrulesdir}/60-%{name}.rules -%{_udevrulesdir}/70-%{name}-disable-hidraw.rules -%{_datadir}/metainfo/io.github.%{name}.metainfo.xml - -%files akmod-modules -%{_modulesloaddir}/%{name}.conf - -%changelog -* Fri Mar 07 2025 Gilver E. -- Package refactoring diff --git a/anda/system/xpadneo/nightly/akmod/anda.hcl b/anda/system/xpadneo/nightly/akmod/anda.hcl new file mode 100644 index 0000000000..f1d6f092a5 --- /dev/null +++ b/anda/system/xpadneo/nightly/akmod/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + rpm { + spec = "xpadneo-nightly-kmod.spec" + } + labels { + mock = 1 + updbranch = 1 + } +} diff --git a/anda/system/xpadneo/nightly/akmod/update.rhai b/anda/system/xpadneo/nightly/akmod/update.rhai new file mode 100644 index 0000000000..2054b27a42 --- /dev/null +++ b/anda/system/xpadneo/nightly/akmod/update.rhai @@ -0,0 +1,13 @@ +let c = sh("cat anda/system/xpadneo/nightly/kmod-common/xpadneo-nightly.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; +c.pop(); +rpm.global("commit", c); +if rpm.changed() { + rpm.release(); + let d = sh("cat anda/system/xpadneo/nightly/kmod-common/xpadneo-nightly.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; + d.pop(); + rpm.global("commitdate", d); + let v = sh("cat anda/system/xpadneo/nightly/kmod-common/xpadneo-nightly.spec | grep '%global ver' | sed -E 's/.+ver //'", #{"stdout": "piped"}).ctx.stdout; + v.pop(); + rpm.global("ver", v); +} + diff --git a/anda/system/xpadneo/akmod/xpadneo-kmod.spec b/anda/system/xpadneo/nightly/akmod/xpadneo-nightly-kmod.spec similarity index 63% rename from anda/system/xpadneo/akmod/xpadneo-kmod.spec rename to anda/system/xpadneo/nightly/akmod/xpadneo-nightly-kmod.spec index 7b88ad76f0..b06e60de4a 100644 --- a/anda/system/xpadneo/akmod/xpadneo-kmod.spec +++ b/anda/system/xpadneo/nightly/akmod/xpadneo-nightly-kmod.spec @@ -1,16 +1,16 @@ -%global commit 93621f104dfe6a1690cf72f0f4fd074a0a86acce +%global commit b514bd4454ddca2c40bf5522b3083cf079c9764e %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20260325 -%global ver 0.10.1 +%global commitdate 20260413 +%global ver 0.10.2 %define buildforkernels akmod %global debug_package %{nil} %global modulename xpadneo -Name: %{modulename}-kmod -Version: %{ver}^%{commitdate}git.%{shortcommit} +Name: %{modulename}-nightly-kmod +Version: %{ver}^%{commitdate}git%{shortcommit} Release: 1%{?dist} Summary: Advanced Linux Driver for Xbox One Wireless Gamepad -License: GPL-3.0 +License: GPL-2.0-only AND GPL-3.0-or-later URL: https://atar-axis.github.io/xpadneo Source0: https://github.com/atar-axis/xpadneo/archive/%{commit}.tar.gz#/xpadneo-%{shortcommit}.tar.gz BuildRequires: kmodtool @@ -18,19 +18,19 @@ BuildRequires: systemd-rpm-macros Requires: akmods Requires: bluez Requires: bluez-tools -Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} -Requires: %{modulename}-akmod-modules = %{?epoch:%{epoch}:}%{version} +Requires: %{modulename}-nightly-kmod-common = %{?epoch:%{epoch}:}%{version} +Requires: %{modulename}-nightly-akmod-modules = %{?epoch:%{epoch}:}%{version} Conflicts: dkms-%{modulename} Packager: Gilver E. -%{expand:%(kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } %description Advanced Linux Driver for Xbox One Wireless Gamepad. %prep %{?kmodtool_check} -kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null %autosetup -p1 -n %{modulename}-%{commit} @@ -55,5 +55,7 @@ done %{?akmod_install} %changelog +* Sat Apr 11 2026 Gilver E. - 0.10.2^45f3982git20260411 +- Separated nightly builds into their own packages * Thu Feb 27 2025 Gilver E. - Package refactoring for alternative DKMS package compatibility diff --git a/anda/system/xpadneo/nightly/dkms/anda.hcl b/anda/system/xpadneo/nightly/dkms/anda.hcl new file mode 100644 index 0000000000..155d865ee6 --- /dev/null +++ b/anda/system/xpadneo/nightly/dkms/anda.hcl @@ -0,0 +1,10 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "dkms-xpadneo-nightly.spec" + } + labels { + mock = 1 + updbranch = 1 + } +} diff --git a/anda/system/xpadneo/nightly/dkms/dkms-xpadneo-nightly.spec b/anda/system/xpadneo/nightly/dkms/dkms-xpadneo-nightly.spec new file mode 100644 index 0000000000..001e31a9b4 --- /dev/null +++ b/anda/system/xpadneo/nightly/dkms/dkms-xpadneo-nightly.spec @@ -0,0 +1,69 @@ +%global commit b514bd4454ddca2c40bf5522b3083cf079c9764e +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260413 +%global ver 0.10.2 +%global modulename xpadneo + +Name: dkms-%{modulename}-nightly +Version: %{ver}^%{commitdate}git%{shortcommit} +Release: 1%{?dist} +Summary: Advanced Linux Driver for Xbox One Wireless Gamepad +License: GPL-2.0-only AND GPL-3.0-or-later +URL: https://atar-axis.github.io/%{modulename} +Source0: https://github.com/atar-axis/%{modulename}/archive/%{commit}.tar.gz#/%{modulename}-%{shortcommit}.tar.gz +Source1: dkms-%{modulename}.conf +Source2: no-weak-modules.conf +BuildRequires: sed +Requires: bluez +Requires: bluez-tools +Requires: %{modulename}-kmod-common = %{?epoch:%{epoch}:}%{version} +Requires: dkms +Conflicts: akmod-%{modulename} +BuildArch: noarch +Packager: Gilver E. + +%description +Advanced Linux Driver for Xbox One Wireless Gamepad. + +%prep +%autosetup -p1 -n %{modulename}-%{commit} + + +cp -f %{SOURCE1} hid-xpadneo/src/dkms.conf + +sed -i -e 's/__VERSION_STRING/%{version}/g' hid-xpadneo/src/dkms.conf +sed -i -e 's/$(VERSION)/v%{version}/g' hid-xpadneo/src/Makefile + +%build + +%install +# Create empty tree: +mkdir -p %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ +cp -fr hid-xpadneo/src/* %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ + +%if %{defined fedora} +# Do not enable weak modules support in Fedora (no kABI): +install -Dpm644 %{SOURCE2} %{buildroot}%{_sysconfdir}/dkms/%{modulename}.conf +%endif + +%post +dkms add -m %{modulename} -v %{version} -q --rpm_safe_upgrade || : +# Rebuild and make available for the currently running kernel: +dkms build -m %{modulename} -v %{version} -q || : +dkms install -m %{modulename} -v %{version} -q --force || : + +%preun +# Remove all versions from DKMS registry: +dkms remove -m %{modulename} -v %{version} -q --all --rpm_safe_upgrade || : + +%files +%{_usrsrc}/%{modulename}-%{version} +%if %{defined fedora} +%{_sysconfdir}/dkms/%{modulename}.conf +%endif + +%changelog +* Sat Apr 11 2026 Gilver E. - 0.10.2^45f3982git20260411 +- Separated nightly builds into their own packages +* Thu Feb 27 2025 Gilver E. +- Initial package diff --git a/anda/system/xpadneo/dkms/dkms-xpadneo.conf b/anda/system/xpadneo/nightly/dkms/dkms-xpadneo.conf similarity index 100% rename from anda/system/xpadneo/dkms/dkms-xpadneo.conf rename to anda/system/xpadneo/nightly/dkms/dkms-xpadneo.conf diff --git a/anda/system/xpadneo/nightly/dkms/no-weak-modules.conf b/anda/system/xpadneo/nightly/dkms/no-weak-modules.conf new file mode 100644 index 0000000000..24f6f95c96 --- /dev/null +++ b/anda/system/xpadneo/nightly/dkms/no-weak-modules.conf @@ -0,0 +1 @@ +NO_WEAK_MODULES="yes" diff --git a/anda/system/xpadneo/nightly/dkms/update.rhai b/anda/system/xpadneo/nightly/dkms/update.rhai new file mode 100644 index 0000000000..2054b27a42 --- /dev/null +++ b/anda/system/xpadneo/nightly/dkms/update.rhai @@ -0,0 +1,13 @@ +let c = sh("cat anda/system/xpadneo/nightly/kmod-common/xpadneo-nightly.spec | grep '%global commit ' | sed -E 's/.+commit //'", #{"stdout": "piped"}).ctx.stdout; +c.pop(); +rpm.global("commit", c); +if rpm.changed() { + rpm.release(); + let d = sh("cat anda/system/xpadneo/nightly/kmod-common/xpadneo-nightly.spec | grep '%global commitdate' | sed -E 's/.+commitdate //'", #{"stdout": "piped"}).ctx.stdout; + d.pop(); + rpm.global("commitdate", d); + let v = sh("cat anda/system/xpadneo/nightly/kmod-common/xpadneo-nightly.spec | grep '%global ver' | sed -E 's/.+ver //'", #{"stdout": "piped"}).ctx.stdout; + v.pop(); + rpm.global("ver", v); +} + diff --git a/anda/system/xpadneo/nightly/kmod-common/anda.hcl b/anda/system/xpadneo/nightly/kmod-common/anda.hcl new file mode 100644 index 0000000000..a0ac3dafaf --- /dev/null +++ b/anda/system/xpadneo/nightly/kmod-common/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "xpadneo-nightly.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/system/xpadneo/kmod-common/update.rhai b/anda/system/xpadneo/nightly/kmod-common/update.rhai similarity index 100% rename from anda/system/xpadneo/kmod-common/update.rhai rename to anda/system/xpadneo/nightly/kmod-common/update.rhai diff --git a/anda/system/xpadneo/nightly/kmod-common/xpadneo-nightly.spec b/anda/system/xpadneo/nightly/kmod-common/xpadneo-nightly.spec new file mode 100644 index 0000000000..7e9239e8c0 --- /dev/null +++ b/anda/system/xpadneo/nightly/kmod-common/xpadneo-nightly.spec @@ -0,0 +1,60 @@ +%global commit b514bd4454ddca2c40bf5522b3083cf079c9764e +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260413 +%global ver 0.10.2 +%global appid io.github.atar_axis.xpadneo + +Name: xpadneo-nightly +Version: %{ver}^%{commitdate}git%{shortcommit} +Release: 1%{?dist} +Summary: Advanced Linux Driver for Xbox One Wireless Gamepad common files +License: GPL-2.0-only AND GPL-3.0-or-later +URL: https://atar-axis.github.io/xpadneo +Source0: https://github.com/atar-axis/xpadneo/archive/%{commit}.tar.gz#/xpadneo-%{shortcommit}.tar.gz +BuildRequires: make +BuildRequires: sed +BuildRequires: systemd-rpm-macros +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +Provides: %{name}-kmod-common = %{?epoch:%{epoch}:}%{version} +Obsoletes: %{name}-kmod-common < %{?epoch:%{epoch}:}0.9.7^20241224git.8d20a23-5%{?dist} +BuildArch: noarch +Packager: Gilver E. + +%description +Advanced Linux Driver for Xbox One Wireless Gamepad common files. + +%package akmod-modules +Summary: Modules for Akmods +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +BuildArch: noarch + +%description akmod-modules +Akmods modules for the akmod-%{name} package. + +%prep +%autosetup -p1 -n xpadneo-%{commit} +/usr/bin/sed -nE '/^BUILT_MODULE_NAME/{s@^.+"(.+)"@\1@; s|-|_|g; p}' hid-xpadneo/dkms.conf.in > xpadneo.conf + +%install +%{__make} install-all PREFIX="%{buildroot}" ETC_PREFIX="%{_prefix}/lib" VERSION="%{version}" + +# Akmods modules +install -Dm644 xpadneo.conf -t %{buildroot}%{_modulesloaddir} + +%files +%license LICENSE.md +# Let RPM handle the docs +%doc %{_docdir}/xpadneo/* +%{_modprobedir}/xpadneo.conf +%{_udevrulesdir}/60-xpadneo.rules +%{_udevrulesdir}/70-xpadneo-disable-hidraw.rules +%{_metainfodir}/%{appid}.metainfo.xml + +%files akmod-modules +%{_modulesloaddir}/xpadneo.conf + +%changelog +* Sat Apr 11 2026 Gilver E. - 0.10.2^45f3982git20260411 +- Separated nightly builds into their own packages +* Fri Mar 07 2025 Gilver E. +- Package refactoring diff --git a/anda/system/xpadneo/akmod/anda.hcl b/anda/system/xpadneo/stable/akmod/anda.hcl similarity index 100% rename from anda/system/xpadneo/akmod/anda.hcl rename to anda/system/xpadneo/stable/akmod/anda.hcl diff --git a/anda/system/xpadneo/stable/akmod/update.rhai b/anda/system/xpadneo/stable/akmod/update.rhai new file mode 100644 index 0000000000..eb076f74aa --- /dev/null +++ b/anda/system/xpadneo/stable/akmod/update.rhai @@ -0,0 +1,3 @@ +import "andax/bump_extras.rhai" as bump; + +rpm.version(bump::madoguchi("xpadneo", labels.branch)); diff --git a/anda/system/xpadneo/stable/akmod/xpadneo-kmod.spec b/anda/system/xpadneo/stable/akmod/xpadneo-kmod.spec new file mode 100644 index 0000000000..43068fa0bf --- /dev/null +++ b/anda/system/xpadneo/stable/akmod/xpadneo-kmod.spec @@ -0,0 +1,59 @@ +%define buildforkernels akmod +%global debug_package %{nil} +%global modulename xpadneo + +Name: %{modulename}-kmod +Version: 0.10.2 +Release: 1%{?dist} +%if 0%{?fedora} <= 45 +Epoch: 1 +%endif +Summary: Advanced Linux Driver for Xbox One Wireless Gamepad +License: GPL-2.0-only AND GPL-3.0-or-later +URL: https://atar-axis.github.io/xpadneo +Source0: https://github.com/atar-axis/xpadneo/archive/refs/tags/v%{version}.tar.gz +BuildRequires: kmodtool +BuildRequires: systemd-rpm-macros +Requires: akmods +Requires: bluez +Requires: bluez-tools +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Requires: %{modulename}-akmod-modules = %{?epoch:%{epoch}:}%{version} +Conflicts: dkms-%{modulename} +Provides: %{modulename}-kmod +Packager: Gilver E. + +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } + +%description +Advanced Linux Driver for Xbox One Wireless Gamepad. + +%prep +%{?kmodtool_check} +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null + +%autosetup -p1 -n %{modulename}-%{version} + +for kernel_version in %{?kernel_versions}; do + mkdir _kmod_build_${kernel_version%%___*} + cp -fr hid-xpadneo/src/* _kmod_build_${kernel_version%%___*} +done + +%build +for kernel_version in %{?kernel_versions}; do + pushd _kmod_build_${kernel_version%%___*}/ + %make_build -C "${kernel_version##*___}" M=$(pwd) VERSION="v%{version}" modules + popd +done + +%install +for kernel_version in %{?kernel_versions}; do + mkdir -p %{buildroot}/%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ + install -p -m 0755 _kmod_build_${kernel_version%%___*}/*.ko \ + %{buildroot}/%{kmodinstdir_prefix}/${kernel_version%%___*}/%{kmodinstdir_postfix}/ +done +%{?akmod_install} + +%changelog +* Sat Apr 11 2026 Gilver E. - 1:0.10.2-1 +- Initial stable package diff --git a/anda/system/xpadneo/dkms/anda.hcl b/anda/system/xpadneo/stable/dkms/anda.hcl similarity index 100% rename from anda/system/xpadneo/dkms/anda.hcl rename to anda/system/xpadneo/stable/dkms/anda.hcl diff --git a/anda/system/xpadneo/stable/dkms/dkms-xpadneo.conf b/anda/system/xpadneo/stable/dkms/dkms-xpadneo.conf new file mode 100644 index 0000000000..ecde0d0673 --- /dev/null +++ b/anda/system/xpadneo/stable/dkms/dkms-xpadneo.conf @@ -0,0 +1,6 @@ +PACKAGE_NAME="xpadneo" +PACKAGE_VERSION="__VERSION_STRING" +AUTOINSTALL="yes" + +BUILT_MODULE_NAME[0]="hid-xpadneo" +DEST_MODULE_LOCATION[0]="/extra" diff --git a/anda/system/xpadneo/dkms/dkms-xpadneo.spec b/anda/system/xpadneo/stable/dkms/dkms-xpadneo.spec similarity index 75% rename from anda/system/xpadneo/dkms/dkms-xpadneo.spec rename to anda/system/xpadneo/stable/dkms/dkms-xpadneo.spec index 6dc0c6d4a0..59c56849b9 100644 --- a/anda/system/xpadneo/dkms/dkms-xpadneo.spec +++ b/anda/system/xpadneo/stable/dkms/dkms-xpadneo.spec @@ -1,25 +1,25 @@ -%global commit 93621f104dfe6a1690cf72f0f4fd074a0a86acce -%global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20260325 -%global ver 0.10.1 -%global debug_package %{nil} %global modulename xpadneo Name: dkms-%{modulename} -Version: %{ver}^%{commitdate}git.%{shortcommit} +Version: 0.10.2 Release: 1%{?dist} +%if 0%{?fedora} <= 45 +Epoch: 1 +%endif Summary: Advanced Linux Driver for Xbox One Wireless Gamepad -License: GPL-3.0 +License: GPL-2.0-only AND GPL-3.0-or-later URL: https://atar-axis.github.io/%{modulename} -Source0: https://github.com/atar-axis/%{modulename}/archive/%{commit}.tar.gz#/%{modulename}-%{shortcommit}.tar.gz +Source0: https://github.com/atar-axis/xpadneo/archive/refs/tags/v%{version}.tar.gz Source1: %{name}.conf Source2: no-weak-modules.conf BuildRequires: sed +Provides: %{modulename}-kmod Requires: bluez Requires: bluez-tools Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} Requires: dkms Conflicts: akmod-%{modulename} +Provides: %{modulename}-kmod BuildArch: noarch Packager: Gilver E. @@ -27,7 +27,7 @@ Packager: Gilver E. Advanced Linux Driver for Xbox One Wireless Gamepad. %prep -%autosetup -p1 -n %{modulename}-%{commit} +%autosetup -p1 -n %{modulename}-%{version} cp -f %{SOURCE1} hid-xpadneo/src/dkms.conf @@ -42,7 +42,7 @@ sed -i -e 's/$(VERSION)/v%{version}/g' hid-xpadneo/src/Makefile mkdir -p %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ cp -fr hid-xpadneo/src/* %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ -%if 0%{?fedora} +%if %{defined fedora} # Do not enable weak modules support in Fedora (no kABI): install -Dpm644 %{SOURCE2} %{buildroot}%{_sysconfdir}/dkms/%{modulename}.conf %endif @@ -59,10 +59,10 @@ dkms remove -m %{modulename} -v %{version} -q --all --rpm_safe_upgrade || : %files %{_usrsrc}/%{modulename}-%{version} -%if 0%{?fedora} +%if %{defined fedora} %{_sysconfdir}/dkms/%{modulename}.conf %endif %changelog -* Thu Feb 27 2025 Gilver E. -- Initial package +* Sat Apr 11 2026 Gilver E. - 1:0.10.2-1 +- Initial stable package diff --git a/anda/system/xpadneo/stable/dkms/no-weak-modules.conf b/anda/system/xpadneo/stable/dkms/no-weak-modules.conf new file mode 100644 index 0000000000..24f6f95c96 --- /dev/null +++ b/anda/system/xpadneo/stable/dkms/no-weak-modules.conf @@ -0,0 +1 @@ +NO_WEAK_MODULES="yes" diff --git a/anda/system/xpadneo/stable/dkms/update.rhai b/anda/system/xpadneo/stable/dkms/update.rhai new file mode 100644 index 0000000000..eb076f74aa --- /dev/null +++ b/anda/system/xpadneo/stable/dkms/update.rhai @@ -0,0 +1,3 @@ +import "andax/bump_extras.rhai" as bump; + +rpm.version(bump::madoguchi("xpadneo", labels.branch)); diff --git a/anda/system/xpadneo/stable/kmod-common/anda.hcl b/anda/system/xpadneo/stable/kmod-common/anda.hcl new file mode 100644 index 0000000000..91956479d9 --- /dev/null +++ b/anda/system/xpadneo/stable/kmod-common/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "xpadneo.spec" + } +} diff --git a/anda/system/xpadneo/stable/kmod-common/update.rhai b/anda/system/xpadneo/stable/kmod-common/update.rhai new file mode 100644 index 0000000000..0a63919e92 --- /dev/null +++ b/anda/system/xpadneo/stable/kmod-common/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("atar-axis/xpadneo")); diff --git a/anda/system/xpadneo/stable/kmod-common/xpadneo.spec b/anda/system/xpadneo/stable/kmod-common/xpadneo.spec new file mode 100644 index 0000000000..4ae97912e3 --- /dev/null +++ b/anda/system/xpadneo/stable/kmod-common/xpadneo.spec @@ -0,0 +1,57 @@ +%global appid io.github.atar_axis.xpadneo + +Name: xpadneo +Version: 0.10.2 +Release: 1%{?dist} +%if 0%{?fedora} <= 45 +Epoch: 1 +%endif +Summary: Advanced Linux Driver for Xbox One Wireless Gamepad common files +License: GPL-2.0-only AND GPL-3.0-or-later +URL: https://atar-axis.github.io/%{name} +Source0: https://github.com/atar-axis/xpadneo/archive/refs/tags/v%{version}.tar.gz +BuildRequires: make +BuildRequires: sed +BuildRequires: systemd-rpm-macros +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +Provides: %{name}-kmod-common = %{?epoch:%{epoch}:}%{version} +Obsoletes: %{name}-kmod-common < %{?epoch:%{epoch}:}0.9.7^20241224git.8d20a23-5%{?dist} +BuildArch: noarch +Packager: Gilver E. + +%description +Advanced Linux Driver for Xbox One Wireless Gamepad common files. + +%package akmod-modules +Summary: Modules for Akmods +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +BuildArch: noarch + +%description akmod-modules +Akmods modules for the akmod-%{name} package. + +%prep +%autosetup -p1 -n %{name}-%{version} +%{__sed} -nE '/^BUILT_MODULE_NAME/{s@^.+"(.+)"@\1@; s|-|_|g; p}' hid-%{name}/dkms.conf.in > %{name}.conf + +%install +%{__make} install-all PREFIX="%{buildroot}" ETC_PREFIX="%{_prefix}/lib" VERSION="%{version}" + +# Akmods modules +install -Dm644 %{name}.conf -t %{buildroot}%{_modulesloaddir} + +%files +%license LICENSE.md +# Let RPM handle the docs +%doc %{_docdir}/%{name}/* +%{_modprobedir}/%{name}.conf +%{_udevrulesdir}/60-%{name}.rules +%{_udevrulesdir}/70-%{name}-disable-hidraw.rules +%{_metainfodir}/%{appid}.metainfo.xml + +%files akmod-modules +%{_modulesloaddir}/%{name}.conf + +%changelog +* Sat Apr 11 2026 Gilver E. - 1:0.10.2-1 +- Initial stable package diff --git a/anda/system/zenergy/akmod/zenergy-kmod.spec b/anda/system/zenergy/akmod/zenergy-kmod.spec index e758069581..49d828ac25 100644 --- a/anda/system/zenergy/akmod/zenergy-kmod.spec +++ b/anda/system/zenergy/akmod/zenergy-kmod.spec @@ -14,7 +14,7 @@ Name: %{modulename}-kmod Version: 1.0^%{commitdate}git.%{shortcommit} -Release: 2%{?dist} +Release: 4%{?dist} Summary: Exposes the energy counters that are reported via the Running Average Power Limit (RAPL) Model-specific Registers (MSRs) via the hardware monitor (HWMON) sysfs interface. License: GPL-2.0 URL: https://github.com/BoukeHaarsma23/zenergy @@ -33,7 +33,7 @@ Requires: kernel-devel Conflicts: dkms-%{modulename} Packager: Cappy Ishihara -%{expand:%(kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } +%{expand:%(kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } %description Based on AMD_ENERGY driver, but with some jiffies added so non-root users can read it safely. @@ -45,7 +45,7 @@ via the hardware monitor (HWMON) sysfs interface. %{?kmodtool_check} # print kmodtool output for debugging purposes: -kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null +kmodtool --target %{_target_cpu} --repo terrapkg.com --kmodname %{modulename} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null %setup -q -c -n %{modulename}-%{commit} diff --git a/anda/system/zenergy/dkms/dkms-zenergy.spec b/anda/system/zenergy/dkms/dkms-zenergy.spec index 52623400be..945eb78933 100644 --- a/anda/system/zenergy/dkms/dkms-zenergy.spec +++ b/anda/system/zenergy/dkms/dkms-zenergy.spec @@ -6,7 +6,7 @@ Name: dkms-%{modulename} Version: 1.0^%{commitdate}git.%{shortcommit} -Release: 1%?dist +Release: 3%?dist Summary: Exposes the energy counters that are reported via the Running Average Power Limit (RAPL) Model-specific Registers (MSRs) via the hardware monitor (HWMON) sysfs interface. License: GPL-2.0 URL: https://github.com/BoukeHaarsma23/zenergy @@ -19,6 +19,7 @@ BuildArch: x86_64 Requires: dkms Requires: help2man Conflicts: akmod-%{modulename} +Provides: %{modulename}-kmod Packager: Cappy Ishihara %description diff --git a/anda/system/zenergy/kmod-common/zenergy.spec b/anda/system/zenergy/kmod-common/zenergy.spec index 76199c991f..380a305067 100644 --- a/anda/system/zenergy/kmod-common/zenergy.spec +++ b/anda/system/zenergy/kmod-common/zenergy.spec @@ -4,7 +4,7 @@ Name: zenergy Version: 1.0^%{commitdate}git.%{shortcommit} -Release: 1%?dist +Release: 3%?dist Summary: Exposes the energy counters that are reported via the Running Average Power Limit (RAPL) Model-specific Registers (MSRs) via the hardware monitor (HWMON) sysfs interface. License: GPL-2.0 URL: https://github.com/BoukeHaarsma23/zenergy @@ -12,7 +12,7 @@ Source0: %{url}/archive/%{commit}.tar.gz#/%{name}-%{shortcommit}.tar.gz Source1: com.github.zenergy.metainfo.xml BuildRequires: sed BuildRequires: systemd-rpm-macros -Requires: (akmod-%{name} = %{?epoch:%{epoch}:}%{version} or dkms-%{name} = %{?epoch:%{epoch}:}%{version}) +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} Provides: %{name}-kmod-common = %{?epoch:%{epoch}:}%{version} BuildArch: noarch Packager: Cappy Ishihara @@ -25,7 +25,7 @@ via the hardware monitor (HWMON) sysfs interface. %package akmod-modules Summary: Modules for Akmods -Requires: akmod-%{name} +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} BuildArch: noarch %description akmod-modules diff --git a/anda/terra/appstream-helper/terra-appstream-helper.spec b/anda/terra/appstream-helper/terra-appstream-helper.spec index 248cda2d73..6ec8d8d4bb 100644 --- a/anda/terra/appstream-helper/terra-appstream-helper.spec +++ b/anda/terra/appstream-helper/terra-appstream-helper.spec @@ -1,6 +1,6 @@ Name: terra-appstream-helper Version: 0.1.10 -Release: 2%?dist +Release: 3%?dist Summary: Scripts and RPM macros to help with AppStream metadata generation for Terra License: GPL-3.0-or-Later URL: https://github.com/terrapkg/appstream-helper diff --git a/anda/terra/gpg-keys/terra-gpg-keys.spec b/anda/terra/gpg-keys/terra-gpg-keys.spec index 66e2773f48..beb946d7d9 100644 --- a/anda/terra/gpg-keys/terra-gpg-keys.spec +++ b/anda/terra/gpg-keys/terra-gpg-keys.spec @@ -2,12 +2,12 @@ Name: terra-gpg-keys Version: %{?fedora:%{fedora}}%{?rhel:%{rhel}} -Release: 2%?dist +Release: 6%{?dist} Summary: GPG keys for Terra Requires: filesystem >= 3.18-6 License: MIT -URL: https://terra.fyralabs.com +URL: https://terrapkg.com # We aren't pulling keys from the origin URLs, since they shouldn't change and this is easier to audit. Source0: RPM-GPG-KEY-terrarawhide Source1: RPM-GPG-KEY-terrarawhide-extras @@ -52,18 +52,13 @@ Source39: RPM-GPG-KEY-terra44-source Source40: RPM-GPG-KEY-terrael10 Source41: RPM-GPG-KEY-terrael10-source BuildArch: noarch +Obsoletes: terra-mock-gpg-keys < %{version}-6 Packager: Terra Packaging Team %description GPG keys for Terra, used for verifying RPM package signatures. -%package -n terra-mock-gpg-keys -Summary: Terra GPG keys for Mock - -%description -n terra-mock-gpg-keys -Terra GPG key copies for use in Mock. - %prep %build @@ -72,13 +67,6 @@ Terra GPG key copies for use in Mock. install -d -m 755 $RPM_BUILD_ROOT/etc/pki/rpm-gpg install -m 644 %{_sourcedir}/RPM-GPG-KEY* $RPM_BUILD_ROOT/etc/pki/rpm-gpg/ -install -d -m 755 $RPM_BUILD_ROOT/etc/pki/mock -install -m 644 %{_sourcedir}/RPM-GPG-KEY* $RPM_BUILD_ROOT/etc/pki/mock/ - %files %dir /etc/pki/rpm-gpg /etc/pki/rpm-gpg/RPM-GPG-KEY-* - -%files -n terra-mock-gpg-keys -%dir /etc/pki/mock -/etc/pki/mock/RPM-GPG-KEY-* diff --git a/anda/terra/mock-configs/terra-mock-configs.spec b/anda/terra/mock-configs/terra-mock-configs.spec index 4b219fb1de..9f6d3ec8b6 100644 --- a/anda/terra/mock-configs/terra-mock-configs.spec +++ b/anda/terra/mock-configs/terra-mock-configs.spec @@ -1,6 +1,6 @@ Name: terra-mock-configs -Version: 2.3.0 -Release: 1%{?dist} +Version: 2.4.0 +Release: 3%{?dist} Epoch: 1 Summary: Mock configs for Terra repos @@ -10,7 +10,6 @@ Source0: %url/archive/refs/tags/v%version.tar.gz BuildRequires: mock-core-configs Requires: mock-core-configs -Requires: terra-mock-gpg-keys BuildArch: noarch Provides: anda-mock-configs = %{epoch}:%{version}-%{release} diff --git a/anda/terra/obsolete/terra-obsolete.spec b/anda/terra/obsolete/terra-obsolete.spec index 5a59d63791..54db1d64ac 100644 --- a/anda/terra/obsolete/terra-obsolete.spec +++ b/anda/terra/obsolete/terra-obsolete.spec @@ -4,7 +4,7 @@ Version: %{?fedora:%{fedora}}%{?rhel:%{rhel}} # The dist number is the version here, it is intentionally not repeated in the release %global dist %nil -Release: 2%?dist +Release: 5%{?dist} Summary: A package to obsolete retired packages, based on Fedora's equivalent package License: LicenseRef-Fedora-Public-Domain @@ -135,7 +135,8 @@ Packager: Terra Packaging Team %obsolete terra-libindicator-gtk3 16.10.0-3 %obsolete terra-libindicator-gtk3-devel 16.10.0-3 %obsolete terra-blueprint-compiler 0.16.0-3 -%obsolete nushell 0.101.0-3 +# See #12808 for why this obsoletion is retracted +#obsolete nushell 0.101.0-3 %obsolete uutils-coreutils-util-linux 0.0.29-2 %obsolete uutils-coreutils-util-linux-replace 0.0.29-2 # pantheon packages only packaged in terra @@ -151,6 +152,12 @@ Packager: Terra Packaging Team %obsolete_ticket https://github.com/terrapkg/packages/pull/7098 %obsolete terra-surface-dtx-daemon v0.3.10~1-5 +%obsolete_ticket https://github.com/terrapkg/packages/pull/12665 +%obsolete supergfxctl 5.2.7-3 + +%obsolete_ticket https://github.com/terrapkg/packages/pull/12665 +%obsolete gnome-shell-extension-gpu-switcher-supergfxctl 11^20250925.1de26db-4 + %obsolete_ticket https://github.com/terrapkg/packages/pull/7521 %obsolete x264-bash-completion 0.165-18.20250609gitb35605ac diff --git a/anda/terra/release/terra-release.spec b/anda/terra/release/terra-release.spec index 035e8bd6da..f7cc32f49f 100644 --- a/anda/terra/release/terra-release.spec +++ b/anda/terra/release/terra-release.spec @@ -2,11 +2,11 @@ Name: terra-release Version: %{?fedora:%{fedora}}%{?rhel:%{rhel}} -Release: 2%?dist +Release: 4%{?dist} Summary: Release package for Terra License: MIT -URL: https://terra.fyralabs.com +URL: https://terrapkg.com Source0: terra.repo Source1: terra-extras.repo Source2: terra-nvidia.repo diff --git a/anda/devs/sccache/anda.hcl b/anda/terra/sccache/anda.hcl similarity index 100% rename from anda/devs/sccache/anda.hcl rename to anda/terra/sccache/anda.hcl diff --git a/anda/devs/sccache/terra-sccache.spec b/anda/terra/sccache/terra-sccache.spec similarity index 99% rename from anda/devs/sccache/terra-sccache.spec rename to anda/terra/sccache/terra-sccache.spec index 6b8d529b27..c2217f2bf5 100644 --- a/anda/devs/sccache/terra-sccache.spec +++ b/anda/terra/sccache/terra-sccache.spec @@ -8,7 +8,7 @@ This build actually enables caching to remote storage.} %bcond dist %["%{_target_cpu}" == "x86_64"] Name: terra-sccache -Version: 0.14.0 +Version: 0.15.0 Release: 1%{?dist} Summary: Remote caching enabled builds of sccache SourceLicense: Apache-2.0 AND (Apache-2.0 OR MIT) diff --git a/anda/devs/sccache/update.rhai b/anda/terra/sccache/update.rhai similarity index 100% rename from anda/devs/sccache/update.rhai rename to anda/terra/sccache/update.rhai diff --git a/anda/terra/srpm-macros/anda-srpm-macros.spec b/anda/terra/srpm-macros/anda-srpm-macros.spec index 62691facfd..f53f6c329f 100644 --- a/anda/terra/srpm-macros/anda-srpm-macros.spec +++ b/anda/terra/srpm-macros/anda-srpm-macros.spec @@ -1,9 +1,9 @@ Name: anda-srpm-macros -Version: 0.3.4 -Release: 1%?dist +Version: 0.3.10 +Release: 1%{?dist} Summary: SRPM macros for extra Fedora packages -License: MIT +License: GPL-3.0-or-later URL: https://github.com/terrapkg/srpm-macros Source0: %url/archive/refs/tags/v%{version}.tar.gz @@ -31,6 +31,8 @@ install -Dpm755 *.sh -t %buildroot%_libexecdir/%name/ %files %attr(0755, root, root) %_libexecdir/%name/*.sh +%doc README.md +%license LICENSE %{_rpmmacrodir}/macros.anda %{_rpmmacrodir}/macros.caching %{_rpmmacrodir}/macros.cargo_extra diff --git a/anda/terra/terra-scripts/anda.hcl b/anda/terra/terra-scripts/anda.hcl new file mode 100644 index 0000000000..be2ed3c219 --- /dev/null +++ b/anda/terra/terra-scripts/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "terra-scripts.spec" + } +} diff --git a/anda/terra/terra-scripts/terra-scripts.spec b/anda/terra/terra-scripts/terra-scripts.spec new file mode 100644 index 0000000000..38359e2e02 --- /dev/null +++ b/anda/terra/terra-scripts/terra-scripts.spec @@ -0,0 +1,41 @@ +Name: terra-scripts +Version: 0.2.0 +Release: 1%{?dist} +Summary: Helpful scripts for contributing to Terra +License: GPL-3.0-or-later +URL: https://github.com/terrapkg/cli-tools +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz +Requires: bash +BuildArch: noarch +Packager: Its-J +Recommends: podman + +%description +%{summary}. + +%prep +%autosetup -n cli-tools-%{version} + +%install +install -Dm 755 format-license.sh %{buildroot}%{_bindir}/format-license +install -Dm 755 ldd-dnf.sh %{buildroot}%{_bindir}/ldd-dnf +install -Dm 755 changelog.sh %{buildroot}%{_bindir}/changelog +install -Dm 755 getcommit.sh %{buildroot}%{_bindir}/getcommit +install -Dm 755 panda.sh %{buildroot}%{_bindir}/panda + +%files +%doc README.md +%license LICENSE +%{_bindir}/format-license +%{_bindir}/ldd-dnf +%{_bindir}/changelog +%{_bindir}/getcommit +%{_bindir}/panda + +%changelog +* Fri May 29 2026 Jaiden Riordan +- Add panda.sh +* Sun May 24 2026 Its-J +- Add getcommit.sh +* Sat May 23 2026 Its-J +- Package terra-scripts diff --git a/anda/terra/terra-scripts/update.rhai b/anda/terra/terra-scripts/update.rhai new file mode 100644 index 0000000000..9a6687c3aa --- /dev/null +++ b/anda/terra/terra-scripts/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("terrapkg/cli-tools")); diff --git a/anda/themes/adwaita++-icons/adwaita++-icons.spec b/anda/themes/adwaita++-icons/adwaita++-icons.spec index 8e3ed22575..5b6a4c1cee 100644 --- a/anda/themes/adwaita++-icons/adwaita++-icons.spec +++ b/anda/themes/adwaita++-icons/adwaita++-icons.spec @@ -3,10 +3,10 @@ Name: adwaita++-icons Version: 6.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: GNOME++, a third-party icons theme, based on new GNOME 3.32's Adwaita -License: GPL-3.0 and LGPL-3.0 and CC-BY-SA +License: GPL-3.0-or-later AND LGPL-3.0-or-later AND CC-BY-SA URL: https://github.com/Bonandry/adwaita-plus Source0: %{url}/archive/refs/tags/v%{version}.tar.gz BuildArch: noarch diff --git a/anda/themes/bibata-cursor-theme/bibata-cursor-theme.spec b/anda/themes/bibata-cursor-theme/bibata-cursor-theme.spec index 8aca3f2f12..f100d25649 100644 --- a/anda/themes/bibata-cursor-theme/bibata-cursor-theme.spec +++ b/anda/themes/bibata-cursor-theme/bibata-cursor-theme.spec @@ -1,11 +1,10 @@ Name: bibata-cursor-theme Version: 2.0.7 -Release: 1%?dist +Release: 2%?dist URL: https://github.com/ful1e5/Bibata_Cursor Source0: %{url}/releases/download/v%{version}/Bibata.tar.xz Source1: https://raw.githubusercontent.com/ful1e5/Bibata_Cursor/v%{version}/README.md -Source2: https://raw.githubusercontent.com/ful1e5/Bibata_Cursor/v%{version}/LICENSE -License: GPL-3.0 +License: GPL-3.0-or-later Summary: Open source, compact, and material designed cursor set BuildArch: noarch BuildRequires: rpm_macro(fdupes) @@ -25,9 +24,8 @@ tar xf %{SOURCE0} %install mkdir -p %{buildroot}/%{_datadir}/icons/ mv Bibata-* %{buildroot}/%{_datadir}/icons/ -mkdir -p %{buildroot}/%{_datadir}/{doc,licenses}/%{name}/ +mkdir -p %{buildroot}/%{_datadir}/doc/%{name}/ cp %{SOURCE1} %{buildroot}/%{_datadir}/doc/%{name}/README.md -cp %{SOURCE2} %{buildroot}/%{_datadir}/licenses/%{name}/LICENSE %fdupes %buildroot%_datadir/icons/ %files diff --git a/anda/themes/breeze-plus-icon-theme/breeze-plus-icon-theme.spec b/anda/themes/breeze-plus-icon-theme/breeze-plus-icon-theme.spec index f52a91ba76..78c3d0f83c 100644 --- a/anda/themes/breeze-plus-icon-theme/breeze-plus-icon-theme.spec +++ b/anda/themes/breeze-plus-icon-theme/breeze-plus-icon-theme.spec @@ -1,10 +1,10 @@ Name: breeze-plus-icon-theme -Version: 6.19.0 +Version: 6.26.0 Release: 1%{?dist} Summary: Breeze icon theme with additional icons Packager: Amy King -License: LGPL-2.1-only +License: LGPL-2.1-or-later URL: https://github.com/mjkim0727/breeze-plus Source0: %{url}/archive/refs/tags/%{version}.tar.gz BuildArch: noarch diff --git a/anda/themes/darkly/anda.hcl b/anda/themes/darkly/anda.hcl new file mode 100644 index 0000000000..73718cd9c5 --- /dev/null +++ b/anda/themes/darkly/anda.hcl @@ -0,0 +1,5 @@ +project "pkg" { + rpm { + spec = "darkly.spec" + } +} diff --git a/anda/themes/darkly/darkly.spec b/anda/themes/darkly/darkly.spec new file mode 100644 index 0000000000..5cba122249 --- /dev/null +++ b/anda/themes/darkly/darkly.spec @@ -0,0 +1,85 @@ +Name: darkly +Version: 0.5.38 +Release: 1%{?dist} +License: GPL-2.0-or-later +Summary: Forked from the lightly theme, this style brings a fresh and unique look to your applications +URL: https://github.com/Bali10050/Darkly +Source: %{url}/archive/refs/tags/v%{version}.tar.gz +Packager: Owen Zimmerman + +BuildRequires: gcc-c++ +BuildRequires: cmake +BuildRequires: extra-cmake-modules +BuildRequires: qt6-qtbase-devel +BuildRequires: qt6-qttools-devel +BuildRequires: qt6-qtdeclarative-devel +BuildRequires: kf6-kcoreaddons-devel +BuildRequires: kf6-kcolorscheme-devel +BuildRequires: kf6-kconfig-devel +BuildRequires: kf6-kguiaddons-devel +BuildRequires: kf6-ki18n-devel +BuildRequires: kf6-kiconthemes-devel +BuildRequires: kf6-kwindowsystem-devel +BuildRequires: kf6-kirigami-devel +BuildRequires: kf6-kcmutils-devel +BuildRequires: kdecoration-devel + +Requires: hicolor-icon-theme +Requires: kdecoration +Requires: qt6-qtdeclarative +Requires: kf6-kcoreaddons +Requires: kf6-kcmutils +Requires: kf6-kcolorscheme +Requires: kf6-kconfig +Requires: kf6-kguiaddons +Requires: kf6-kiconthemes +Requires: kf6-kwindowsystem +Requires: kf6-frameworkintegration +Requires: kf6-plasma + +%description +%{summary}. + +%package devel +Summary: Development files for %{name} +Requires: %{name} = %{evr} + +%description devel +This package contains the development libraries for %{name}. + + +%prep +%autosetup -n Darkly-%{version} + +%conf +%cmake -DBUILD_QT6=ON \ + -DBUILD_QT5=OFF + +%build +%cmake_build + +%install +%cmake_install + +%files +%doc README.md +%license COPYING +%{_bindir}/darkly-settings6 +%{_appsdir}/darklystyleconfig.desktop +%{_appsdir}/kcm_darklydecoration.desktop +%{_datadir}/color-schemes/Darkly.colors +%{_scalableiconsdir}/darkly-settings.svgz +%{_datadir}/kservices6/darklydecorationconfig.desktop +%{_datadir}/kstyle/themes/darkly.themerc +%{_datadir}/plasma/desktoptheme/darkly/* + +%files devel +%{_libdir}/cmake/Darkly/ +%{_qt6_plugindir}/kstyle_config/darklystyleconfig.so +%{_qt6_plugindir}/org.kde.kdecoration3/org.kde.darkly.so +%{_qt6_plugindir}/org.kde.kdecoration3.kcm/kcm_darklydecoration.so +%{_qt6_plugindir}/styles/darkly6.so + +%changelog +* Tue Jun 02 2026 Owen Zimmerman - 0.5.37-1 +- Initial commit diff --git a/anda/themes/darkly/update.rhai b/anda/themes/darkly/update.rhai new file mode 100644 index 0000000000..f945dd5051 --- /dev/null +++ b/anda/themes/darkly/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("Bali10050/Darkly")); diff --git a/anda/themes/fluent-icon-theme/fluent-icon-theme.spec b/anda/themes/fluent-icon-theme/fluent-icon-theme.spec index 67f001d78a..a972b7b875 100644 --- a/anda/themes/fluent-icon-theme/fluent-icon-theme.spec +++ b/anda/themes/fluent-icon-theme/fluent-icon-theme.spec @@ -2,10 +2,10 @@ Name: fluent-icon-theme Version: 20250821 -Release: 3%?dist +Release: 4%?dist Summary: Fluent icon theme for linux desktops -License: GPL-3.0 +License: GPL-3.0-or-later URL: https://github.com/vinceliuice/Fluent-icon-theme/ Source0: %url/archive/refs/tags/%tag.tar.gz diff --git a/anda/themes/fluent-theme/fluent-theme.spec b/anda/themes/fluent-theme/fluent-theme.spec index e42cd8bf72..dde09baa54 100644 --- a/anda/themes/fluent-theme/fluent-theme.spec +++ b/anda/themes/fluent-theme/fluent-theme.spec @@ -2,10 +2,10 @@ Name: fluent-theme Version: 20250417 -Release: 1%?dist +Release: 2%?dist Summary: Fluent design theme for GNOME/GTK based desktop environments -License: GPL-3.0 +License: GPL-3.0-or-later URL: https://github.com/vinceliuice/Fluent-gtk-theme Source0: https://github.com/vinceliuice/Fluent-gtk-theme/archive/refs/tags/%{tag}.tar.gz diff --git a/anda/themes/google-black-cursor-theme/google-black-cursor-theme.spec b/anda/themes/google-black-cursor-theme/google-black-cursor-theme.spec index b295bf9866..f7586f04c7 100644 --- a/anda/themes/google-black-cursor-theme/google-black-cursor-theme.spec +++ b/anda/themes/google-black-cursor-theme/google-black-cursor-theme.spec @@ -1,12 +1,12 @@ Name: google-black-cursor-theme Version: 2.0.0 -Release: 1%{?dist} +Release: 2%{?dist} URL: https://github.com/ful1e5/Google_Cursor Source0: %{url}/releases/download/v%{version}/GoogleDot-Black.tar.gz Source1: https://raw.githubusercontent.com/ful1e5/Google_Cursor/v%{version}/README.md Source2: https://raw.githubusercontent.com/ful1e5/Google_Cursor/v%{version}/LICENSE -License: GPL-3.0 -Summary: An opensource cursor theme inspired by Google. +License: GPL-3.0-or-later +Summary: An opensource cursor theme inspired by Google. BuildArch: noarch BuildRequires: rpm_macro(fdupes) diff --git a/anda/themes/helium-gtk-theme/helium-gtk-theme.spec b/anda/themes/helium-gtk-theme/helium-gtk-theme.spec index 3e76761839..3894bf81d6 100644 --- a/anda/themes/helium-gtk-theme/helium-gtk-theme.spec +++ b/anda/themes/helium-gtk-theme/helium-gtk-theme.spec @@ -3,8 +3,8 @@ Summary: tauOS GTK/GNOME Shell Themes Name: helium-gtk-theme Version: %(echo %ver | sed 's/-/./g') -Release: 2%{?dist} -License: GPL-3.0 +Release: 3%{?dist} +License: GPL-3.0-or-later URL: https://github.com/tau-OS/tau-helium Source0: https://github.com/tau-OS/tau-helium/archive/refs/tags/%{ver}.tar.gz BuildArch: noarch diff --git a/anda/themes/hydrogen-icon-theme/hydrogen-icon-theme.spec b/anda/themes/hydrogen-icon-theme/hydrogen-icon-theme.spec index f7ba7faa06..744f30b98e 100644 --- a/anda/themes/hydrogen-icon-theme/hydrogen-icon-theme.spec +++ b/anda/themes/hydrogen-icon-theme/hydrogen-icon-theme.spec @@ -1,8 +1,8 @@ Summary: tauOS Icon Theme Name: hydrogen-icon-theme Version: 1.0.16 -Release: 2%?dist -License: GPL-3.0 +Release: 3%?dist +License: GPL-3.0-or-later URL: https://github.com/tau-OS/tau-hydrogen Source0: https://github.com/tau-OS/tau-hydrogen/archive/refs/tags/%{version}.tar.gz BuildArch: noarch diff --git a/anda/themes/kde-material-you-colors/VERSION_qt6-qtbase.txt b/anda/themes/kde-material-you-colors/VERSION_qt6-qtbase.txt index 22cb9e5536..fac714a322 100644 --- a/anda/themes/kde-material-you-colors/VERSION_qt6-qtbase.txt +++ b/anda/themes/kde-material-you-colors/VERSION_qt6-qtbase.txt @@ -1 +1 @@ -6.10.2 +6.11.1 diff --git a/anda/themes/kde-material-you-colors/kde-material-you-colors.spec b/anda/themes/kde-material-you-colors/kde-material-you-colors.spec index fa3379f950..38980d449d 100644 --- a/anda/themes/kde-material-you-colors/kde-material-you-colors.spec +++ b/anda/themes/kde-material-you-colors/kde-material-you-colors.spec @@ -1,10 +1,11 @@ %global appid luisbocanegra.kdematerialyou.colors %global developer "Luis Bocanegra" %global org "com.github.luisbocanegra" +%global pypi_name kde_material_you_colors Name: kde-material-you-colors Version: 2.2.0 -Release: 1%{?dist} +Release: 5%{?dist} Summary: Automatic Material You Colors Generator from your wallpaper for the Plasma Desktop License: GPL-3.0-only URL: https://github.com/luisbocanegra/%{name} @@ -15,7 +16,6 @@ BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: cmake >= 3.16 BuildRequires: extra-cmake-modules >= 6.0.0 -BuildRequires: fdupes BuildRequires: generic-logos BuildRequires: pyproject-rpm-macros BuildRequires: python3-devel @@ -32,7 +32,7 @@ BuildRequires: cmake(Qt5Core) BuildRequires: pkgconfig(ocl-icd) Requires: qt5-qtbase Requires: kf6-filesystem >= 6.0.0 -Requires: python3-%{name} = %{version}-%{release} +Requires: python3-%{name} = %{evr} Packager: Gilver E. %description @@ -40,12 +40,9 @@ Automatic Material You Colors Generator from your wallpaper for the Plasma Deskt %package -n python3-%{name} Summary: Python files for %{name} -Requires: %{name} = %{version}-%{release} -Requires: python3-dbus -Requires: python3dist(numpy) >= 1.20 -Requires: python3dist(materialyoucolor) >= 2.0.9 -Requires: python3dist(pywal16) -Requires: python3dist(pillow) +Requires: %{name} = %{evr} +Requires: python%{python3_version}dist(file-magic) +Requires: python%{python3_version}dist(pywal16) BuildArch: noarch %description -n python3-%{name} @@ -53,35 +50,35 @@ Python files for KDE Material You Colors. %prep %autosetup -n %{name}-%{version} -sed -iE 's:\"python-magic.*\":\"file-magic\":' pyproject.toml +%pyproject_patch_dependency python-magic:ignore + +%conf +%cmake \ + -DCMAKE_INSTALL_PREFIX="%{_prefix}" \ + -DINSTALL_PLASMOID="ON" %build %pyproject_wheel -%cmake \ - -DCMAKE_INSTALL_PREFIX=%{_prefix} \ - -DINSTALL_PLASMOID=ON %cmake_build %install %pyproject_install -DESTDIR="%{buildroot}" %cmake_install - -sed -Ei "s:^(#!.*)env (python.*)$:\1python3:" %{buildroot}%{python3_sitelib}/kde_material_you_colors/main.py -%fdupes %{buildroot}%{python3_sitelib}/%{name}/ +%pyproject_save_files %{pypi_name} +%cmake_install %files %doc CHANGELOG.md %doc README.md %license LICENSE %{_bindir}/%{name}-screenshot-helper -%{_datadir}/applications/%{name}-screenshot-helper.desktop -%{_datadir}/plasma/plasmoids/luisbocanegra.kdematerialyou.colors/ +%{_appsdir}/%{name}-screenshot-helper.desktop +%{_datadir}/plasma/plasmoids/%{appid}/ -%files -n python3-%{name} +%files -n python3-%{name} -f %{pyproject_files} %{_bindir}/%{name} -%{python3_sitelib}/kde_material_you_colors/ -%{python3_sitelib}/kde_material_you_colors-%{version}.dist-info/ %changelog +* Tue May 5 2026 Gilver E. - 2.2.0-4 +- Refactor build around new RPM macros * Wed May 28 2025 Gilver E. - Initial package diff --git a/anda/themes/klassy/klassy.spec b/anda/themes/klassy/klassy.spec index eca50ab33a..64d5ebc191 100644 --- a/anda/themes/klassy/klassy.spec +++ b/anda/themes/klassy/klassy.spec @@ -12,13 +12,13 @@ License: GPL-2.0-or-later Group: System/GUI/KDE URL: %{forgeurl} Source: %{forgesource} -Patch0: https://github.com/paulmcauley/klassy/pull/178.patch Obsoletes: classikstyles <= %{version} Obsoletes: classik <= %{version} BuildRequires: cmake >= 3.16 BuildRequires: extra-cmake-modules >= 5.102.0 +BuildRequires: gettext BuildRequires: kf5-rpm-macros BuildRequires: kf5-filesystem @@ -80,13 +80,29 @@ Klassy (formerly ClassiK/ClassikStyles) is a highly customizable binary Window D %forgeautosetup -p1 %build -%cmake +mkdir -p qt6-build +pushd qt6-build +%cmake_kf6 -S .. -DBUILD_QT6=ON -DBUILD_QT5=OFF %cmake_build +popd +mkdir -p qt5-build +pushd qt5-build +%cmake_kf5 -S .. -DBUILD_QT6=OFF -DBUILD_QT5=ON +%cmake_build +popd %install +pushd qt5-build %cmake_install +popd +pushd qt6-build +%cmake_install +popd -%files +%find_lang %{name}_style_config +%find_lang %{name}_kwin_deco + +%files -f %{name}_style_config.lang -f %{name}_kwin_deco.lang %license LICENSES/*.txt %{_bindir}/%{name}-settings @@ -102,18 +118,19 @@ Klassy (formerly ClassiK/ClassikStyles) is a highly customizable binary Window D %{_kf6_qtplugindir}/kstyle_config/klassystyleconfig.so %{_kf6_qtplugindir}/org.kde.kdecoration3/org.kde.klassy.so %{_kf6_qtplugindir}/org.kde.kdecoration3.kcm/kcm_klassydecoration.so -%{_kf6_qtplugindir}/org.kde.kdecoration2.kcm/klassydecoration/presets/* +%{_kf6_qtplugindir}/org.kde.kdecoration3.kcm/klassydecoration/presets/* %{_kf6_datadir}/applications/kcm_klassydecoration.desktop %{_kf6_datadir}/applications/klassystyleconfig.desktop %{_kf6_datadir}/applications/klassy-settings.desktop %{_kf6_datadir}/color-schemes/Klassy*.colors +%{_kf6_datadir}/color-schemes/OpalFruits*.colors %{_datadir}/icons/hicolor/ %{_datadir}/icons/%{name}/ %{_datadir}/icons/%{name}-dark/ -%{_datadir}/plasma/desktoptheme/%{name}/ +%{_datadir}/plasma/desktoptheme/kite-*/ %{_kf6_datadir}/kstyle/themes/%{name}.themerc @@ -122,4 +139,3 @@ Klassy (formerly ClassiK/ClassikStyles) is a highly customizable binary Window D %changelog %autochangelog - diff --git a/anda/themes/lightly-qt6/VER6.txt b/anda/themes/lightly-qt6/VER6.txt index 9a037142aa..9d607966b7 100644 --- a/anda/themes/lightly-qt6/VER6.txt +++ b/anda/themes/lightly-qt6/VER6.txt @@ -1 +1 @@ -10 \ No newline at end of file +11 \ No newline at end of file diff --git a/anda/themes/orchis-theme/orchis-theme.spec b/anda/themes/orchis-theme/orchis-theme.spec index 1fbc94b15e..166b336629 100644 --- a/anda/themes/orchis-theme/orchis-theme.spec +++ b/anda/themes/orchis-theme/orchis-theme.spec @@ -6,7 +6,7 @@ Name: gtk-theme-%theme_name Version: %{sanitized_ver} -Release: 2%?dist +Release: 3%{?dist} Summary: Orchis is a Material Design theme for GNOME/GTK based desktop environments License: GPL-3.0-only Url: https://github.com/vinceliuice/Orchis-theme/ @@ -25,6 +25,8 @@ Requires: sassc BuildArch: noarch +Packager: Owen Zimmerman + %description Orchis is a Material Design theme for GNOME/GTK based desktop environments. Based on nana-4 -- materia-theme (https://github.com/nana-4/materia-theme). diff --git a/anda/themes/tela-icon-theme/tela-icon-theme.spec b/anda/themes/tela-icon-theme/tela-icon-theme.spec index 56cf2eb0dc..be3402626c 100644 --- a/anda/themes/tela-icon-theme/tela-icon-theme.spec +++ b/anda/themes/tela-icon-theme/tela-icon-theme.spec @@ -1,10 +1,10 @@ -%global commit 340333cfd0ebdab7ea9d25cd66a5142c440d2f48 -%global commit_date 20251205 +%global commit bf51523edbf825054c1bee6efe02a09aaeda394f +%global commit_date 20260528 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: tela-icon-theme Version: %commit_date.%shortcommit -Release: 1%?dist +Release: 1%{?dist} Summary: Tela icon theme for linux desktops License: GPL-3.0-only diff --git a/anda/themes/unity-asset-pool/unity-asset-pool.spec b/anda/themes/unity-asset-pool/unity-asset-pool.spec index 068c52a4fc..4555a7684f 100644 --- a/anda/themes/unity-asset-pool/unity-asset-pool.spec +++ b/anda/themes/unity-asset-pool/unity-asset-pool.spec @@ -3,7 +3,7 @@ Name: unity-asset-pool Summary: Assets and icons for Unity Version: 0.8.24 -Release: %autorelease +Release: 1%?dist License: CC-BY-SA URL: https://launchpad.net/unity-asset-pool diff --git a/anda/tools/Google-Health-CLI/Google-Health-CLI.spec b/anda/tools/Google-Health-CLI/Google-Health-CLI.spec new file mode 100644 index 0000000000..1d988c969d --- /dev/null +++ b/anda/tools/Google-Health-CLI/Google-Health-CLI.spec @@ -0,0 +1,45 @@ +%global goipath github.com/rudrankriyam/Google-Health-CLI +Version: 1.0.0 + +%gometa -f + +Name: google-health-cli +Release: 1%{?dist} +Summary: Unofficial Google-Health-CLI for the Google Health API, written in Go + +License: MIT +URL: https://github.com/rudrankriyam/Google-Health-CLI +Source0: %{url}/archive/refs/tags/%{version}.tar.gz + +Packager: Owen Zimmerman + +BuildRequires: golang +BuildRequires: gcc +BuildRequires: go-rpm-macros +Requires: glibc + +Provides: Google-Health-CLI + +%description +%{summary}. + +%gopkg + +%prep +%autosetup -n Google-Health-CLI-%{version} + +%build +%define gomodulesmode GO111MODULE=on +%gobuild -o %{gobuilddir}/cmd/ghealth %{goipath} + +%install +install -Dm 0755 %{gobuilddir}/cmd/ghealth %{buildroot}%{_bindir}/ghealth + +%files +%license LICENSE +%doc README.md CONTRIBUTING.md CHANGELOG.md SECURITY.md +%{_bindir}/ghealth + +%changelog +* Sat May 09 2026 Owen Zimmerman +- Initial commit diff --git a/anda/tools/Google-Health-CLI/anda.hcl b/anda/tools/Google-Health-CLI/anda.hcl new file mode 100644 index 0000000000..3777736394 --- /dev/null +++ b/anda/tools/Google-Health-CLI/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "Google-Health-CLI.spec" + } +} diff --git a/anda/tools/Google-Health-CLI/update.rhai b/anda/tools/Google-Health-CLI/update.rhai new file mode 100644 index 0000000000..541a159c9d --- /dev/null +++ b/anda/tools/Google-Health-CLI/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("rudrankriyam/Google-Health-CLI")); diff --git a/anda/tools/HeadsetControl-nightly/CMAKE_INSTALL_LIBDIR.patch b/anda/tools/HeadsetControl-nightly/CMAKE_INSTALL_LIBDIR.patch new file mode 100644 index 0000000000..115f4cc54b --- /dev/null +++ b/anda/tools/HeadsetControl-nightly/CMAKE_INSTALL_LIBDIR.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 2e9d6f8..75f8cf9 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -292,7 +292,7 @@ if(PROJECT_IS_TOP_LEVEL) + # ------------------------------------------------------------------------------ + + install(TARGETS headsetcontrol DESTINATION bin) +- install(TARGETS headsetcontrol_lib DESTINATION lib) ++ install(TARGETS headsetcontrol_lib DESTINATION ${CMAKE_INSTALL_LIBDIR}) + + # Install shared library if built + if(BUILD_SHARED_LIBRARY) diff --git a/anda/tools/HeadsetControl-nightly/HeadsetControl-nightly.spec b/anda/tools/HeadsetControl-nightly/HeadsetControl-nightly.spec index 1b2e7eaf4d..61f6942620 100644 --- a/anda/tools/HeadsetControl-nightly/HeadsetControl-nightly.spec +++ b/anda/tools/HeadsetControl-nightly/HeadsetControl-nightly.spec @@ -1,6 +1,6 @@ %global _udevrulesdir /usr/lib/udev/rules.d -%global commit 7d6e61bb75bdcd3a439e6c06d5133d660c8f030c +%global commit da4477e4a9f09b4df8de8c7e0864166b8683327c %global commitdate 20251121 %global shortcommit %(c=%{commit}; echo ${c:0:7}) @@ -10,22 +10,32 @@ Release: 1%{?dist} Summary: A tool to control certain aspects of USB-connected headsets on Linux URL: https://github.com/Sapd/HeadsetControl Source: %{url}/archive/%{commit}.tar.gz -License: GPL-3.0 +Patch0: CMAKE_INSTALL_LIBDIR.patch +License: GPL-3.0-or-later Provides: headsetcontrol-nightly Conflicts: headsetcontrol -BuildRequires: cmake gcc hidapi-devel +BuildRequires: cmake gcc gcc-c++ hidapi-devel %description A tool to control certain aspects of USB-connected headsets on Linux. Currently, support is provided for adjusting sidetone, getting battery state, controlling LEDs, and setting the inactive time. +%package devel +%pkg_devel_files + +%package static +%pkg_static_files + %prep -%autosetup -n HeadsetControl-%{commit} +%autosetup -n HeadsetControl-%{commit} -p1 + +%conf +%cmake \ + -DCMAKE_INSTALL_LIBDIR=%{_lib} %build -%cmake %cmake_build %install @@ -38,5 +48,8 @@ state, controlling LEDs, and setting the inactive time. %{_udevrulesdir}/70-headsets.rules %changelog +* Wed May 13 2026 Owen Zimmerman +- Add devel and static subpackages, add patch, fix license + * Wed Nov 26 2025 metcya - package HeadsetControl diff --git a/anda/tools/MareTF/MareTF.spec b/anda/tools/MareTF/MareTF.spec index 120f298c93..123d95bee3 100644 --- a/anda/tools/MareTF/MareTF.spec +++ b/anda/tools/MareTF/MareTF.spec @@ -1,7 +1,7 @@ %define debug_package %{nil} Name: MareTF -Version: 0.10.0 +Version: 0.11.0 Release: 1%{?dist} License: MIT Summary: A utility to create, edit, and display every type of VTF file ever made diff --git a/anda/tools/alipad/anda.hcl b/anda/tools/alipad/anda.hcl index 315dde1198..e3d44bc448 100644 --- a/anda/tools/alipad/anda.hcl +++ b/anda/tools/alipad/anda.hcl @@ -2,4 +2,7 @@ project pkg { rpm { spec = "alipad.spec" } + labels { + nightly = 1 + } } diff --git a/anda/tools/alipad/update.rhai b/anda/tools/alipad/update.rhai index abf1bfb8ee..a2981ccba4 100644 --- a/anda/tools/alipad/update.rhai +++ b/anda/tools/alipad/update.rhai @@ -1 +1,5 @@ -// Empty until sourcehut update script +rpm.global("commit", sourcehut_commit("~malicean/alipad")); +if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); +} diff --git a/anda/tools/arduino-app-bricks-py/arduino-app-bricks-py.spec b/anda/tools/arduino-app-bricks-py/arduino-app-bricks-py.spec index 57a605ec02..4786e75b99 100644 --- a/anda/tools/arduino-app-bricks-py/arduino-app-bricks-py.spec +++ b/anda/tools/arduino-app-bricks-py/arduino-app-bricks-py.spec @@ -1,7 +1,7 @@ %global pypi_name app-bricks-py %global _desc The code of the Arduino App Lab Bricks -%global ver release/0.8.0 +%global ver release/0.10.1 %global sanitized_ver %(echo %{ver} | sed 's|release/||') Name: %{pypi_name} diff --git a/anda/tools/arduino-app-cli/arduino-app-cli.spec b/anda/tools/arduino-app-cli/arduino-app-cli.spec index 42a79fe71d..59e38d4675 100644 --- a/anda/tools/arduino-app-cli/arduino-app-cli.spec +++ b/anda/tools/arduino-app-cli/arduino-app-cli.spec @@ -1,5 +1,5 @@ %global goipath github.com/arduino/arduino-app-cli -Version: 0.8.4 +Version: 0.11.1 %gometa -f diff --git a/anda/tools/arduino-cli/arduino-cli.spec b/anda/tools/arduino-cli/arduino-cli.spec index d9c69ae445..bf1e6e7e78 100644 --- a/anda/tools/arduino-cli/arduino-cli.spec +++ b/anda/tools/arduino-cli/arduino-cli.spec @@ -1,6 +1,6 @@ # https://github.com/arduino/arduino-cli %global goipath github.com/arduino/arduino-cli -Version: 1.4.1 +Version: 1.5.1 %gometa -f @@ -12,7 +12,7 @@ Arduino CLI is an all-in-one solution that provides Boards/Library Managers, ske %global godocs README.md Name: arduino-cli -Release: 1%?dist +Release: 1%{?dist} Summary: Arduino command line tool License: GPL-3.0 Packager: Owen Zimmerman diff --git a/anda/tools/arduino-flasher-cli/arduino-flasher-cli.spec b/anda/tools/arduino-flasher-cli/arduino-flasher-cli.spec index 2b6a39b588..fef8ecedff 100644 --- a/anda/tools/arduino-flasher-cli/arduino-flasher-cli.spec +++ b/anda/tools/arduino-flasher-cli/arduino-flasher-cli.spec @@ -1,5 +1,5 @@ %global goipath github.com/arduino/arduino-flasher-cli -Version: 0.5.0 +Version: 0.5.1 %gometa -f @@ -10,7 +10,7 @@ CLI tool to flash UNO Q boards with the latest Arduino Linux image.} %global godocs README.md Name: arduino-flasher-cli -Release: 1%?dist +Release: 1%{?dist} Summary: CLI tool to flash UNO Q boards with the latest Arduino Linux image License: GPL-3.0-only URL: %{gourl} diff --git a/anda/tools/arduino-remoteocd/arduino-remoteocd.spec b/anda/tools/arduino-remoteocd/arduino-remoteocd.spec index ce6d327172..f45b84e53e 100644 --- a/anda/tools/arduino-remoteocd/arduino-remoteocd.spec +++ b/anda/tools/arduino-remoteocd/arduino-remoteocd.spec @@ -1,7 +1,7 @@ %global goipath github.com/arduino/remoteocd -%global commit 097e4e6593aafe0a288be69efd63947a495254c4 -%global commit_date 20260323 +%global commit 7109bed7d4f138795d7a5c07c0b9d292fd81d77d +%global commit_date 20260513 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Version: 0^%commit_date.%shortcommit diff --git a/anda/tools/binsider/binsider.spec b/anda/tools/binsider/binsider.spec index dfc1db29e8..5fac1f76a6 100644 --- a/anda/tools/binsider/binsider.spec +++ b/anda/tools/binsider/binsider.spec @@ -1,8 +1,8 @@ Name: binsider Version: 0.3.2 -Release: 1%?dist +Release: 2%?dist Summary: Analyze ELF binaries like a boss 😼🕵️‍♂️ -License: Apache-2.0 AND MIT +License: Apache-2.0 OR MIT URL: https://github.com/orhun/binsider Source0: %url/archive/refs/tags/v%{version}.tar.gz diff --git a/anda/tools/buildsys/anda/rust-anda.spec b/anda/tools/buildsys/anda/rust-anda.spec deleted file mode 100644 index 0dfd45f592..0000000000 --- a/anda/tools/buildsys/anda/rust-anda.spec +++ /dev/null @@ -1,89 +0,0 @@ -# Generated by rust2rpm 22 -%bcond_without check -%define debug_package %{nil} - -%global crate anda - -Name: rust-anda -Version: 0.5.2 -Release: 1%{?dist} -Summary: Andaman Build toolchain - -License: MIT -URL: https://crates.io/crates/anda -Source: https://github.com/FyraLabs/anda/archive/refs/tags/%{version}.tar.gz - -ExclusiveArch: %{rust_arches} - -BuildRequires: rust-packaging >= 21 -BuildRequires: anda-srpm-macros -BuildRequires: openssl-devel -%if 0%{?fedora} -BuildRequires: openssl-devel-engine -%endif -BuildRequires: git-core -BuildRequires: libgit2-devel -BuildRequires: libssh2-devel -BuildRequires: mold - -%global _description %{expand: -Andaman Build toolchain.} - -%description %{_description} - -%package -n %{crate} -Summary: %{summary} -Requires: mock -Requires: rpm-build -Requires: createrepo_c -Requires: git-core -Requires: libgit2 -%if 0%{?fedora} >= 42 -Requires: mock-filesystem -Requires: util-linux-script -%endif - -%description -n %{crate} %{_description} - -%files -n %{crate} -%license LICENSE.dependencies LICENSE.md -%{_bindir}/anda -%{_mandir}/man1/anda*.1* -%config %{_sysconfdir}/bash_completion.d/anda.bash -%{_datadir}/zsh/site-functions/_anda -%{_datadir}/fish/completions/anda.fish - -%prep -%autosetup -n %{crate}-%{version_no_tilde} -p1 -%cargo_prep_online - -%build -%cargo_build -%{cargo_license_online} > LICENSE.dependencies -cargo run --release -p xtask -- manpage -cargo run --release -p xtask -- completion - -%install -install -Dpm755 target/rpm/anda -t %buildroot%_bindir/ - -mkdir -p %{buildroot}%{_mandir}/man1/ - -# Install shell completions - -COMPDIR="target/assets/completion" - -mkdir -p %{buildroot}%{_sysconfdir}/bash_completion.d/ -cp -v $COMPDIR/bash/anda.bash %{buildroot}%{_sysconfdir}/bash_completion.d/anda.bash -mkdir -p %{buildroot}%{_datadir}/zsh/site-functions/ -cp -v $COMPDIR/zsh/_anda %{buildroot}%{_datadir}/zsh/site-functions/_anda -mkdir -p %{buildroot}%{_datadir}/fish/completions/ -cp -v $COMPDIR/fish/anda.fish %{buildroot}%{_datadir}/fish/completions/anda.fish - -# install man pages -cp -v target/assets/man_pages/* %{buildroot}%{_mandir}/man1/ - - -rm -rf %{buildroot}%{cargo_registry} - -%changelog -%autochangelog diff --git a/anda/tools/buildsys/muon/muon.spec b/anda/tools/buildsys/muon/muon.spec deleted file mode 100644 index 383d29ca4f..0000000000 --- a/anda/tools/buildsys/muon/muon.spec +++ /dev/null @@ -1,39 +0,0 @@ -Name: muon -Version: 0.5.0 -Release: 1%?dist -Summary: A meson-compatible build system - -# muon is licensed under the GPL version 3 (see LICENSE). Tests under tests/project were copied from the meson project tests and are licensed under Apache 2.0. -License: GPL-3.0 AND Apache-2.0 -URL: https://muon.build/ -Source: https://git.sr.ht/~lattis/muon/archive/%{version}.tar.gz - -BuildRequires: meson -BuildRequires: gcc -BuildRequires: cmake -BuildRequires: libcurl-devel -BuildRequires: libarchive-devel -BuildRequires: libpkgconf-devel -BuildRequires: scdoc -BuildRequires: git-core - -%description -An implementation of the meson build system in c99 with minimal dependencies. - -%prep -%autosetup - -%build -%meson -Dtracy=disabled -%meson_build - -%install -%meson_install - -%files -/usr/bin/muon -%{_mandir}/man1/muon* -%{_mandir}/man5/meson* - -%changelog -%autochangelog diff --git a/anda/tools/buildsys/muon/update.rhai b/anda/tools/buildsys/muon/update.rhai deleted file mode 100644 index 61177c274a..0000000000 --- a/anda/tools/buildsys/muon/update.rhai +++ /dev/null @@ -1,4 +0,0 @@ -let versions = get("https://muon.build/releases/").json().keys(); -versions.sort(); -versions.pop(); -rpm.version(versions.pop()); diff --git a/anda/tools/buildsys/ops2deb/ops2deb.spec b/anda/tools/buildsys/ops2deb/ops2deb.spec deleted file mode 100644 index da677895e3..0000000000 --- a/anda/tools/buildsys/ops2deb/ops2deb.spec +++ /dev/null @@ -1,43 +0,0 @@ -%global debug_package %nil -%define _python_dist_allow_version_zero # upstream issue? - -Name: python3-ops2deb -Version: 2.7.0 -Release: 1%?dist -Summary: Generate Debian packages for common devops tools -License: MIT -URL: https://github.com/upciti/ops2deb -Source0: %url/archive/refs/tags/%version.tar.gz -BuildRequires: python3-devel poetry python3.10 -BuildRequires: python3dist(setuptools) -BuildArch: noarch - -%description -ops2deb is designed to generate Debian packages for common devops tools, but -can be used to package any portable application. It consumes a configuration -file and outputs .deb packages. ops2deb can also track new releases of upstream -applications and automatically bump application versions in its configuration -file. - - -%prep -%autosetup -n ops2deb-%version - -%build -poetry build - -%install -python3.10 -m ensurepip -python3.10 -m pip install installer -python3.10 -m installer --destdir=%buildroot dist/*.whl -rm -rf %buildroot/%python3_sitelib/*/__pycache__ - -%files -%license LICENSE -%doc README.md -/usr/bin/ops2deb -/usr/lib/python3*/site-packages/ops2deb* - -%changelog -* Fri Apr 28 2023 madonuko - 2.4.1-1 -- Initial package. diff --git a/anda/tools/butler-bin/butler-bin.spec b/anda/tools/butler-bin/butler-bin.spec index a39d0f3b2d..502aa8c7cd 100644 --- a/anda/tools/butler-bin/butler-bin.spec +++ b/anda/tools/butler-bin/butler-bin.spec @@ -1,6 +1,6 @@ Name: butler-bin -Version: 15.26.1 -Release: 1%?dist +Version: 15.27.0 +Release: 1%{?dist} Summary: Command-line itch.io helper. URL: https://itch.io/docs/butler Source0: https://broth.itch.ovh/butler/linux-amd64/LATEST/archive/default diff --git a/anda/tools/carapace/carapace.spec b/anda/tools/carapace/carapace.spec index 6c9f9748b9..eda7fa0e4b 100644 --- a/anda/tools/carapace/carapace.spec +++ b/anda/tools/carapace/carapace.spec @@ -1,7 +1,7 @@ %define debug_package %{nil} %global goipath github.com/carapace-sh/carapace-bin -Version: 1.6.4 +Version: 1.7.0 %gometa -f diff --git a/anda/tools/chafa/chafa.spec b/anda/tools/chafa/chafa.spec index 217226dd07..b69d1b21f4 100644 --- a/anda/tools/chafa/chafa.spec +++ b/anda/tools/chafa/chafa.spec @@ -1,6 +1,6 @@ Name: terra-chafa -Version: 1.18.1 -Release: 1%?dist +Version: 1.18.2 +Release: 1%{?dist} Summary: Terminal graphics for the 21st century License: LGPL-3.0-or-later AND GPL-3.0-or-later URL: https://hpjansson.org/chafa/ @@ -45,9 +45,11 @@ Requires: %{name}-libs%{?_isa} = %{evr} %prep %autosetup -n chafa-%{version} -%build +%conf autoreconf -ivf %configure --disable-rpath + +%build %make_build %install diff --git a/anda/tools/cloudflare-speed-cli/cloudflare-speed-cli.spec b/anda/tools/cloudflare-speed-cli/cloudflare-speed-cli.spec index 41180756b8..b8b749bd81 100644 --- a/anda/tools/cloudflare-speed-cli/cloudflare-speed-cli.spec +++ b/anda/tools/cloudflare-speed-cli/cloudflare-speed-cli.spec @@ -1,8 +1,8 @@ %define debug_package %{nil} Name: cloudflare-speed-cli -Version: 0.6.5 -Release: 1%?dist +Version: 1.0.5 +Release: 1%{?dist} Summary: CLI for internet speed test via cloudflare License: GPL-3.0-or-later AND (MIT OR Apache-2.0) AND Unicode-3.0 AND (0BSD OR MIT OR Apache-2.0) AND Apache-2.0 AND ISC AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND (BSD-3-Clause AND MIT) AND (BSD-3-Clause OR Apache-2.0) AND (BSD-3-Clause OR MIT) AND BSD-3-Clause AND BSL-1.0 AND CDLA-Permissive-2.0 AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR BSD-3-Clause) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND MPL-2.0 AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) AND Zlib diff --git a/anda/tools/copyparty/copyparty.spec b/anda/tools/copyparty/copyparty.spec index 7967e0c752..93feae3934 100644 --- a/anda/tools/copyparty/copyparty.spec +++ b/anda/tools/copyparty/copyparty.spec @@ -1,9 +1,9 @@ %global pypi_name copyparty Name: %{pypi_name} -Version: 1.20.13 -Release: 1%{?dist} -Summary: Portable, featureful, and fast file server +Version: 1.20.16 +Release: 2%{?dist} +Summary: Portable, featureful, and fast file server URL: https://github.com/9001/copyparty Source0: %{pypi_source} License: MIT @@ -18,7 +18,7 @@ BuildArch: noarch Packager: Riley Loo %description -Portable file server with accelerated resumable uploads, dedup, WebDAV, +Portable file server with accelerated resumable uploads, dedup, WebDAV, FTP, TFTP, zeroconf, media indexer, thumbnails++ all in one file, no deps. %package -n python3-%{pypi_name} @@ -27,9 +27,9 @@ Summary: %{summary} Requires: %{name} = %{evr} %description -n python3-%{pypi_name} -Portable file server with accelerated resumable uploads, dedup, WebDAV, +Portable file server with accelerated resumable uploads, dedup, WebDAV, FTP, TFTP, zeroconf, media indexer, thumbnails++ all in one file, no deps. - + %prep %autosetup -n copyparty-%version diff --git a/anda/tools/coreboot-utils/coreboot-utils.spec b/anda/tools/coreboot-utils/coreboot-utils.spec index 4a6b0c8aad..083f66b658 100644 --- a/anda/tools/coreboot-utils/coreboot-utils.spec +++ b/anda/tools/coreboot-utils/coreboot-utils.spec @@ -499,6 +499,13 @@ Requires: coreboot-utils = %{evr} %patch -P0 -p1 %patch -P1 -p1 +%conf +%ifarch x86_64 +pushd msrtool +%configure +popd +%endif + %build %if 0%{?fedora} >= 42 export CC=gcc-14 @@ -534,6 +541,9 @@ pushd util %endif %make_build -C kbc1126 %ifarch x86_64 +%make_build -C msrtool +%endif +%ifarch x86_64 %make_build -C nvramtool LDFLAGS="-fPIE" %endif %ifarch x86_64 @@ -557,13 +567,6 @@ export GOFLAGS="-buildmode=pie -trimpath -ldflags=-linkmode=external -mod=readon %gobuild -o %{_builddir}/autoport popd -%ifarch x86_64 -pushd msrtool -%configure -%make_build -popd -%endif - pushd coreboot-configurator %meson %meson_build diff --git a/anda/tools/curl-impersonate/curl-impersonate-chrome.spec b/anda/tools/curl-impersonate/curl-impersonate-chrome.spec index 981d34621b..4416f46074 100644 --- a/anda/tools/curl-impersonate/curl-impersonate-chrome.spec +++ b/anda/tools/curl-impersonate/curl-impersonate-chrome.spec @@ -50,8 +50,10 @@ This package contains the object files necessary to develop %{name}. %prep %autosetup -n curl-impersonate-%{version} -p1 -%build +%conf %configure + +%build %{__make} chrome-build %check diff --git a/anda/tools/delphitools-cli/anda.hcl b/anda/tools/delphitools-cli/anda.hcl new file mode 100644 index 0000000000..2721bc2e58 --- /dev/null +++ b/anda/tools/delphitools-cli/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "delphitools-cli.spec" + } +} diff --git a/anda/tools/delphitools-cli/delphitools-cli.spec b/anda/tools/delphitools-cli/delphitools-cli.spec new file mode 100644 index 0000000000..7b706f6d9e --- /dev/null +++ b/anda/tools/delphitools-cli/delphitools-cli.spec @@ -0,0 +1,46 @@ +Name: delphitools-cli +Version: 0.2.0 +Release: 1%{?dist} +Summary: indie toolkit for designers — colour, image, PDF, type, calc, all in one offline CLI +URL: https://delphi.tools/ +Source0: https://github.com/1612elphi/delphitools-cli/archive/refs/tags/v%{version}.tar.gz +SourceLicense: 0BSD +License: %{sourcelicense} AND ((MIT OR Apache-2.0) AND NCSA) AND (Apache-2.0 OR MIT) AND (MIT OR Apache-2.0 OR Zlib) AND (0BSD OR MIT OR Apache-2.0) AND BSD-2-Clause AND Zlib AND MIT AND ((MIT OR Apache-2.0) AND Unicode-DFS-2016) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND Apache-2.0 AND MPL-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND (CC0-1.0 OR Apache-2.0) AND (BSD-3-Clause OR Apache-2.0) AND ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND BSD-3-Clause AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (Unlicense OR MIT) + +BuildRequires: rust +BuildRequires: anda-srpm-macros +BuildRequires: cargo-rpm-macros +BuildRequires: pkgconfig(openssl) +BuildRequires: gcc-c++ + +Packager: Its-J + +%description +%{summary}. + +%prep +%autosetup -n %{name}-%{version} +%cargo_prep_online + +%build +%cargo_build + +%install +install -Dm 755 target/release/delphi %{buildroot}%{_bindir}/delphi +install -Dm 755 target/release/delphitools %{buildroot}%{_bindir}/delphitools +install -Dm 755 target/release/dt %{buildroot}%{_bindir}/dt +install -Dm 644 man/*.1 -t %{buildroot}%{_mandir}/man1/ +%{cargo_license_online} > LICENSE.dependencies + +%files +%{_bindir}/delphi +%{_bindir}/delphitools +%{_bindir}/dt +%{_mandir}/man1/delphi*.1.* +%license LICENSE +%license LICENSE.dependencies +%doc README.md + +%changelog +* Wed Jun 03 2026 Its-J +- Package delphitools-cli diff --git a/anda/tools/delphitools-cli/update.rhai b/anda/tools/delphitools-cli/update.rhai new file mode 100644 index 0000000000..48fd8850c9 --- /dev/null +++ b/anda/tools/delphitools-cli/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("1612elphi/delphitools-cli")); diff --git a/anda/tools/electron/electron.spec b/anda/tools/electron/electron.spec index 6391feee48..a28ea6e029 100644 --- a/anda/tools/electron/electron.spec +++ b/anda/tools/electron/electron.spec @@ -1,6 +1,6 @@ Name: electron %electronmeta -Version: 41.1.0 +Version: 42.4.0 Release: 1%{?dist} Summary: Build cross platform desktop apps with web technologies License: %{electron_license} diff --git a/anda/tools/framework-system/framework-system.spec b/anda/tools/framework-system/framework-system.spec index 8f642e35c1..dc5c73072a 100644 --- a/anda/tools/framework-system/framework-system.spec +++ b/anda/tools/framework-system/framework-system.spec @@ -1,5 +1,5 @@ Name: framework-system -Version: 0.6.1 +Version: 0.6.4 Release: 1%{?dist} Summary: Rust libraries and tools to interact with the Framework Computer systems URL: https://github.com/FrameworkComputer/framework-system @@ -12,7 +12,6 @@ BuildRequires: rust-udev-devel BuildRequires: rust BuildRequires: systemd-devel BuildRequires: hidapi-devel -Requires: rustup Provides: framework_tool ExclusiveArch: x86_64 @@ -32,8 +31,8 @@ Packager: Owen Zimmerman %install install -Dm755 target/rpm/framework_tool %{buildroot}%{_bindir}/framework_tool -install -Dm 644 completions/bash/framework_tool %{buildroot}%{bash_completions_dir}/framework_tool.bash -install -Dm 644 completions/zsh/_framework_tool %{buildroot}%{zsh_completions_dir}/_framework_tool +install -Dm 644 framework_tool/completions/bash/framework_tool %{buildroot}%{bash_completions_dir}/framework_tool.bash +install -Dm 644 framework_tool/completions/zsh/_framework_tool %{buildroot}%{zsh_completions_dir}/_framework_tool %{cargo_license_online} > LICENSE.dependencies %files diff --git a/anda/tools/gcm-core/gcm-core.spec b/anda/tools/gcm-core/gcm-core.spec index cd4f0a9ee4..a397d9e201 100644 --- a/anda/tools/gcm-core/gcm-core.spec +++ b/anda/tools/gcm-core/gcm-core.spec @@ -6,7 +6,7 @@ %global forgeurl https://github.com/git-ecosystem/git-credential-manager Name: gcm-core -Version: 2.7.3 +Version: 2.8.0 Release: 1%{?dist} Summary: Secure, cross-platform Git credential storage diff --git a/anda/tools/gf/gf.spec b/anda/tools/gf/gf.spec index 6df006f1df..d840d86a18 100644 --- a/anda/tools/gf/gf.spec +++ b/anda/tools/gf/gf.spec @@ -1,6 +1,6 @@ %global forgeurl https://github.com/nakst/gf -%global commit 9a5dbcc90dc9ca9580f6ce2854cd67e2e507b0c1 +%global commit 56c97f66769ec8109a9aff2e475a86c9a6781742 %global shortcommit %{sub %{commit} 0 7} %global commitdate 20251231 diff --git a/anda/tools/glasgow/glasgow.spec b/anda/tools/glasgow/glasgow.spec index 627923907e..72cac23192 100644 --- a/anda/tools/glasgow/glasgow.spec +++ b/anda/tools/glasgow/glasgow.spec @@ -1,5 +1,5 @@ -%global commit 785c83ff96b4a1b71655262fc5ddf93538baec77 -%global commit_date 20260327 +%global commit 3d2a021561aeb15b3f45705f6580b962e8763fe7 +%global commit_date 20260604 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global pypi_name glasgow @@ -10,7 +10,7 @@ Name: python-%{pypi_name} Version: 0~%{commit_date}git.%{shortcommit} -Release: 1%{?dist} +Release: 2%{?dist} Summary: Scots Army Knife for electronics License: 0BSD AND Apache-2.0 URL: https://github.com/GlasgowEmbedded/glasgow diff --git a/anda/tools/graftcp/nightly/graftcp-nightly.spec b/anda/tools/graftcp/nightly/graftcp-nightly.spec index fc8500590f..4792961ff3 100644 --- a/anda/tools/graftcp/nightly/graftcp-nightly.spec +++ b/anda/tools/graftcp/nightly/graftcp-nightly.spec @@ -1,14 +1,16 @@ -%global commit ed57ff8136d4f86c1de6bb17e176f31852e26c44 -%global commit_date 20260308 +%global commit f83547caeb4117783dc97ab3283e82f9a251e424 +%global commit_date 20260614 %global shortcommit %(c=%{commit}; echo ${c:0:7}) +%define debug_package %{nil} + Name: graftcp-nightly Version: 0~%{commit_date}git.%{shortcommit} Release: 1%{?dist} Summary: A flexible tool for redirecting a given program's TCP traffic to SOCKS5 or HTTP proxy URL: https://github.com/hmgle/graftcp -License: GPL-3.0 -Source0: %url/archive/%commit/graftcp-%commit.tar.gz +License: GPL-3.0-or-later +Source0: %{url}/archive/%{commit}/graftcp-%{commit}.tar.gz BuildRequires: gcc mold make golang systemd-rpm-macros Packager: Owen Zimmerman Conflicts: graftcp @@ -27,30 +29,23 @@ connect by ptrace(2), so it is workable for any program. The principle will be e %make_build %install -install -Dm755 graftcp %{buildroot}%{_bindir}/graftcp -install -Dm755 local/graftcp-local %{buildroot}%{_bindir}/graftcp-local -install -Dm755 local/mgraftcp %{buildroot}%{_bindir}/mgraftcp -install -Dm644 local/contrib/systemd/graftcp-local.service %{buildroot}%{_unitdir}/graftcp-local.service -install -Dm644 local/example-graftcp-local.conf %{buildroot}%{_sysconfdir}/graftcp-local/example-graftcp-local.conf - -%post -%systemd_post graftcp-local.service - -%preun -%systemd_preun graftcp-local.service - -%postun -%systemd_postun_with_restart graftcp-local.service +mkdir -p %{buildroot}%{_bindir} +%make_install PREFIX=%{_prefix} +install -Dm644 example-graftcp.conf %{buildroot}%{_sysconfdir}/graftcp/example-graftcp.conf +install -Dm644 example-mgraftcp.conf %{buildroot}%{_sysconfdir}/graftcp/example-mgraftcp.conf %files -%doc README.md README.zh-CN.md +%doc README.md +%lang(zh_CN) %doc README.zh-CN.md %license COPYING %{_bindir}/graftcp -%{_bindir}/graftcp-local %{_bindir}/mgraftcp -%{_unitdir}/graftcp-local.service -%{_sysconfdir}/graftcp-local/example-graftcp-local.conf +%{_sysconfdir}/graftcp/example-graftcp.conf +%{_sysconfdir}/graftcp/example-mgraftcp.conf %changelog +* Tue Jun 02 2026 Owen Zimmerman +- Update for 0.8.0 + * Fri Oct 24 2025 Owen Zimmerman - initial commit diff --git a/anda/tools/graftcp/stable/graftcp.spec b/anda/tools/graftcp/stable/graftcp.spec index a3201229ef..c72f0b291c 100644 --- a/anda/tools/graftcp/stable/graftcp.spec +++ b/anda/tools/graftcp/stable/graftcp.spec @@ -1,11 +1,13 @@ +%define debug_package %{nil} + Name: graftcp -Version: 0.7.1 -Release: 1%?dist +Version: 0.8.1 +Release: 1%{?dist} Summary: A flexible tool for redirecting a given program's TCP traffic to SOCKS5 or HTTP proxy URL: https://github.com/hmgle/graftcp -License: GPL-3.0 -Source0: %url/archive/refs/tags/v%version.tar.gz -BuildRequires: gcc mold make golang systemd-rpm-macros +License: GPL-3.0-or-later +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz +BuildRequires: gcc make golang systemd-rpm-macros Packager: Owen Zimmerman Conflicts: graftcp-nightly @@ -17,36 +19,29 @@ linked programs, e.g., applications built by Go can not be hook by proxychains-n connect by ptrace(2), so it is workable for any program. The principle will be explained in this paragraph of how does it work. %prep -%autosetup -n graftcp-%{version} +%autosetup %build %make_build %install -install -Dm755 graftcp %{buildroot}%{_bindir}/graftcp -install -Dm755 local/graftcp-local %{buildroot}%{_bindir}/graftcp-local -install -Dm755 local/mgraftcp %{buildroot}%{_bindir}/mgraftcp -install -Dm644 local/contrib/systemd/graftcp-local.service %{buildroot}%{_unitdir}/graftcp-local.service -install -Dm644 local/example-graftcp-local.conf %{buildroot}%{_sysconfdir}/graftcp-local/example-graftcp-local.conf - -%post -%systemd_post graftcp-local.service - -%preun -%systemd_preun graftcp-local.service - -%postun -%systemd_postun_with_restart graftcp-local.service +mkdir -p %{buildroot}%{_bindir} +%make_install PREFIX=%{_prefix} +install -Dm644 example-graftcp.conf %{buildroot}%{_sysconfdir}/graftcp/example-graftcp.conf +install -Dm644 example-mgraftcp.conf %{buildroot}%{_sysconfdir}/graftcp/example-mgraftcp.conf %files -%doc README.md README.zh-CN.md +%doc README.md +%lang(zh_CN) %doc README.zh-CN.md %license COPYING %{_bindir}/graftcp -%{_bindir}/graftcp-local %{_bindir}/mgraftcp -%{_unitdir}/graftcp-local.service -%{_sysconfdir}/graftcp-local/example-graftcp-local.conf +%{_sysconfdir}/graftcp/example-graftcp.conf +%{_sysconfdir}/graftcp/example-mgraftcp.conf %changelog +* Tue Jun 02 2026 Owen Zimmerman - 0.8.0-1 +- Update for 0.8.0 + * Fri Oct 24 2025 Owen Zimmerman - initial commit diff --git a/anda/tools/java-binfmt/java-binfmt.spec b/anda/tools/java-binfmt/java-binfmt.spec index b23eb5d12a..66731a815d 100644 --- a/anda/tools/java-binfmt/java-binfmt.spec +++ b/anda/tools/java-binfmt/java-binfmt.spec @@ -1,11 +1,11 @@ -%global commit 4bbeadf096d853ef36155e725020d99c2add14cd +%global commit e12372ea5776a0e0a8acee3ea1e56f0f81c56fca %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260127 +%global commit_date 20260330 %global _binfmtdir %{_exec_prefix}/lib/binfmt.d Name: java-binfmt Version: 1.0.0^%{commit_date}git%{shortcommit} -Release: 1%?dist +Release: 1%{?dist} Summary: Binfmt wrappers and utilities for Java and Jar files. ### License for the C file used in the binary. License: GPL-2.0-or-later diff --git a/anda/tools/jujutsu/jujutsu.spec b/anda/tools/jujutsu/jujutsu.spec index 128ee899f1..e097832d65 100644 --- a/anda/tools/jujutsu/jujutsu.spec +++ b/anda/tools/jujutsu/jujutsu.spec @@ -4,8 +4,8 @@ %global __brp_mangle_shebangs %{nil} Name: jujutsu -Version: 0.39.0 -Release: 1%?dist +Version: 0.42.0 +Release: 1%{?dist} Summary: Git-compatible DVCS that is both simple and powerful License: Apache-2.0 AND CC-BY-4.0 URL: https://www.jj-vcs.dev/latest/ diff --git a/anda/tools/keyd/keyd.spec b/anda/tools/keyd/keyd.spec index c310061561..73e8b3bcf0 100644 --- a/anda/tools/keyd/keyd.spec +++ b/anda/tools/keyd/keyd.spec @@ -22,7 +22,7 @@ EOF %make_build PREFIX=%_prefix LDFLAGS="$LDFLAGS -fuse-ld=mold" %install -%make_install PREFIX=%_prefix LDFLAGS="$LDFLAGS -fuse-ld=mold" +%make_install PREFIX=%_prefix LDFLAGS="$LDFLAGS -fuse-ld=mold" FORCE_SYSTEMD=1 install -Dm644 keyd.service %buildroot%_unitdir/keyd.service install -Dm644 keyd.conf -t %buildroot%_sysusersdir install -Dm755 scripts/dump-xkb-config -t %buildroot%_datadir/keyd/ diff --git a/anda/tools/kittyCAD-cli/anda.hcl b/anda/tools/kittyCAD-cli/anda.hcl new file mode 100644 index 0000000000..ffb9e0800d --- /dev/null +++ b/anda/tools/kittyCAD-cli/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "kittyCAD-cli.spec" + } +} diff --git a/anda/tools/kittyCAD-cli/kittyCAD-cli.spec b/anda/tools/kittyCAD-cli/kittyCAD-cli.spec new file mode 100644 index 0000000000..ead4c10c3b --- /dev/null +++ b/anda/tools/kittyCAD-cli/kittyCAD-cli.spec @@ -0,0 +1,37 @@ +%undefine __brp_mangle_shebangs + +Name: kittyCAD-cli +Version: 0.2.177 +Release: 1%{?dist} +Summary: The Zoo command line tool for KittyCAD +URL: https://github.com/KittyCAD/cli +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz +License: MIT AND ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND NCSA) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache-2.0) AND 0BSD AND Apache-2.0 AND ISC AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception AND MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (Apache-2.0) AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND (BSD-2-Clause) AND (BSD-3-Clause AND MIT) AND (BSD-3-Clause OR Apache-2.0) AND (BSD-3-Clause OR MIT) AND BSD-3-Clause AND (CC0-1.0 OR Apache-2.0) AND CDLA-Permissive-2.0 AND EPL-2.0 AND ISC AND LGPL-3.0-or-later AND (MIT AND BSD-3-Clause) AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND (MPL-2.0 OR MIT OR Apache-2.0) AND MPL-2.0 AND Unicode-3.0 AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) AND Zlib +BuildRequires: cargo-rpm-macros + +Provides: kittycad-cli +Packager: Its-J + +%description +%{summary}. + +%prep +%autosetup -n cli-%{version} +%cargo_prep_online + +%build +%cargo_build + +%install +install -Dm 755 target/release/zoo %{buildroot}%{_bindir}/zoo +%{cargo_license_online} > LICENSE.dependencies + +%files +%{_bindir}/zoo +%license LICENSE +%license LICENSE.dependencies +%doc README.md + +%changelog +* Thu Apr 30 2026 Its-J +- Package KittyCAD CLI diff --git a/anda/tools/kittyCAD-cli/update.rhai b/anda/tools/kittyCAD-cli/update.rhai new file mode 100644 index 0000000000..720ff7f810 --- /dev/null +++ b/anda/tools/kittyCAD-cli/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("KittyCAD/cli")); diff --git a/anda/tools/kmonad/kmonad.spec b/anda/tools/kmonad/kmonad.spec index 915875c118..28bb21b091 100644 --- a/anda/tools/kmonad/kmonad.spec +++ b/anda/tools/kmonad/kmonad.spec @@ -1,8 +1,8 @@ %global pkg_name kmonad Name: %{pkg_name} -Version: 0.4.4 -Release: 1%?dist +Version: 0.4.5 +Release: 1%{?dist} Summary: An advanced keyboard manager License: MIT diff --git a/anda/tools/kmonad/update.rhai b/anda/tools/kmonad/update.rhai index 9676b53e55..c9e5764f56 100644 --- a/anda/tools/kmonad/update.rhai +++ b/anda/tools/kmonad/update.rhai @@ -1 +1 @@ -print(hackage("kmonad")); +rpm.version(hackage("kmonad")); diff --git a/anda/tools/license-checker/nodejs-license-checker.spec b/anda/tools/license-checker/nodejs-license-checker.spec index d9000c9ced..fe413bdd1a 100644 --- a/anda/tools/license-checker/nodejs-license-checker.spec +++ b/anda/tools/license-checker/nodejs-license-checker.spec @@ -4,8 +4,8 @@ %bcond test 0 Name: nodejs-license-checker -Version: 4.4.2 -Release: 2%{?dist} +Version: 5.0.1 +Release: 1%{?dist} Summary: Check NPM package licenses SourceLicense: BSD-3-Clause License: Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND CC0-1.0 AND CC-BY-3.0 AND ISC AND (MIT AND CC-BY-3.0) AND MIT diff --git a/anda/tools/mdbook/mdbook.spec b/anda/tools/mdbook/mdbook.spec index d87c3284ae..11cafbbde8 100644 --- a/anda/tools/mdbook/mdbook.spec +++ b/anda/tools/mdbook/mdbook.spec @@ -1,6 +1,6 @@ Name: mdBook -Version: 0.5.2 -Release: 1%?dist +Version: 0.5.3 +Release: 1%{?dist} Summary: Create a book from markdown files License: MPL-2.0 AND MIT AND (Apache-2.0 OR MIT) AND Apache-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND CC0-1.0 AND ISC AND (MIT OR Zlib OR Apache-2.0) AND Unicode-3.0 AND (Apache-2.0 OR BSL-1.0) AND (MIT AND BSD-3-Clause) URL: https://github.com/rust-lang/mdBook diff --git a/anda/tools/modern-colorthief/modern-colorthief.spec b/anda/tools/modern-colorthief/modern-colorthief.spec index 04bfe8beff..28b866f8fc 100644 --- a/anda/tools/modern-colorthief/modern-colorthief.spec +++ b/anda/tools/modern-colorthief/modern-colorthief.spec @@ -1,12 +1,11 @@ %global pypi_name modern_colorthief %bcond bootstrap 0 %bcond docs %{without bootstrap} -%bcond test %{without bootstrap} # The srcrpm is not prefixed with Python because the source is mostly Rust Name: modern-colorthief -Version: 0.1.12 -Release: 1%?dist +Version: 0.3.0 +Release: 1%{?dist} Summary: ColorThief reimagined SourceLicense: MIT License: (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception) AND BSD-2-Clause AND (CC0-1.0 OR Apache-2.0) AND (MIT OR Apache-2.0 OR NCSA) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) @@ -27,15 +26,6 @@ BuildRequires: python3dist(myst-parser) BuildRequires: python3dist(shibuya) BuildRequires: python3dist(sphinx) %endif -%if %{with test} -%if 0%{?fedora} > 40 -BuildRequires: poetry -BuildRequires: python3dist(poetry) -%endif -BuildRequires: python3dist(colorthief) -BuildRequires: python3dist(fast-colorthief) -BuildRequires: python3dist(pytest) -%endif %description Colorthief but with modern code. @@ -78,25 +68,13 @@ done %{cargo_license_online} > LICENSE.dependencies -%if %{with test} -%check -# Poetry doesn't exist on EL and is too old on 40 -%if 0%{?fedora} <= 40 || 0%{?rhel} -%pytest tests/*.py -%else -# This is in the wrong spot in pyproject.toml and Poetry hates it -# May seem like defeating the purpose of testing but the other tests can be useful -sed -iE 's/python = ">=3.9,<3.14"//' pyproject.toml -poetry run pytest -%endif -%endif - %files -n python3-%{name} %doc DIFFERENCES.md %doc PKG-INFO %doc README.md %license LICENSE %license LICENSE.dependencies +%{_bindir}/%{name} %{python3_sitearch}/%{pypi_name} %{python3_sitearch}/%{pypi_name}-%{version}.dist-info/ diff --git a/anda/tools/natscli/natscli.spec b/anda/tools/natscli/natscli.spec index e1508eecde..83d3f62933 100644 --- a/anda/tools/natscli/natscli.spec +++ b/anda/tools/natscli/natscli.spec @@ -1,7 +1,7 @@ # https://github.com/nats-io/natscli %global goipath github.com/nats-io/natscli -%global commit afd640576c9a2bacaadd60008b8c56a41e0d38a3 -%global commit_date 20260326 +%global commit 6d4a7d8a8b746b41149a47c9a9a354f4d8e4c59e +%global commit_date 20260606 %global shortcommit %{sub %{commit} 1 7} %gometa -f @@ -38,7 +38,7 @@ install -m 0755 -vp %{gobuilddir}/bin/* %{buildroot}%{_bindir}/ %files %license LICENSE -%doc README.md AUTH.md LOCAL_DEVELOPMENT.md cli/cheats/* +%doc README.md AUTH.md CODE-OF-CONDUCT.md GOVERNANCE.md cli/cheats/* %{_bindir}/nats %changelog diff --git a/anda/tools/nemu/nemu.spec b/anda/tools/nemu/nemu.spec index a97317e939..e6724e1f68 100644 --- a/anda/tools/nemu/nemu.spec +++ b/anda/tools/nemu/nemu.spec @@ -1,6 +1,6 @@ Name: nemu -Version: 3.4.0 -Release: 1%?dist +Version: 3.5.0 +Release: 1%{?dist} Summary: Ncurses UI for QEMU URL: https://github.com/nemuTUI/nemu diff --git a/anda/tools/neovim-default-editor/neovim-default-editor.spec b/anda/tools/neovim-default-editor/neovim-default-editor.spec index abb964b6aa..eda6b1af64 100644 --- a/anda/tools/neovim-default-editor/neovim-default-editor.spec +++ b/anda/tools/neovim-default-editor/neovim-default-editor.spec @@ -2,8 +2,8 @@ Name: neovim-default-editor # Version, release, and epoch are inherited from the editor package just like other default editors -Version: 0.11.6 -Release: 1%?dist +Version: 0.12.3 +Release: 1%{?dist} Epoch: 0 # Inherited from Neovim itself License: Apache-2.0 AND Vim AND MIT diff --git a/anda/tools/nvidia/cuda-crt/cuda-crt.spec b/anda/tools/nvidia/cuda-crt/cuda-crt.spec index f9f9912972..55b6ae64d7 100644 --- a/anda/tools/nvidia/cuda-crt/cuda-crt.spec +++ b/anda/tools/nvidia/cuda-crt/cuda-crt.spec @@ -8,7 +8,7 @@ Name: %(echo %real_name | tr '_' '-') Epoch: 1 -Version: 13.2.51 +Version: 13.3.33 Release: 1%{?dist} Summary: CUDA crt License: CUDA Toolkit diff --git a/anda/tools/nvidia/cuda-ctadvisor/cuda-ctadvisor.spec b/anda/tools/nvidia/cuda-ctadvisor/cuda-ctadvisor.spec index 7398202256..0e1b2e1911 100644 --- a/anda/tools/nvidia/cuda-ctadvisor/cuda-ctadvisor.spec +++ b/anda/tools/nvidia/cuda-ctadvisor/cuda-ctadvisor.spec @@ -8,7 +8,7 @@ Name: %(echo %real_name | tr '_' '-') Epoch: 1 -Version: 13.2.51 +Version: 13.3.33 Release: 1%{?dist} Summary: CUDA ctadvisor License: CUDA Toolkit diff --git a/anda/tools/nvidia/cuda-nvcc/cuda-nvcc.spec b/anda/tools/nvidia/cuda-nvcc/cuda-nvcc.spec index 494f8e685f..de4903eb8a 100644 --- a/anda/tools/nvidia/cuda-nvcc/cuda-nvcc.spec +++ b/anda/tools/nvidia/cuda-nvcc/cuda-nvcc.spec @@ -8,7 +8,7 @@ Name: %(echo %real_name | tr '_' '-') Epoch: 1 -Version: 13.2.51 +Version: 13.3.33 Release: 1%{?dist} Summary: CUDA Compiler (NVCC) License: CUDA Toolkit diff --git a/anda/tools/nvm/nvm.spec b/anda/tools/nvm/nvm.spec index 1a9c81c648..5946c5d68f 100644 --- a/anda/tools/nvm/nvm.spec +++ b/anda/tools/nvm/nvm.spec @@ -1,6 +1,6 @@ Name: nvm -Version: 0.40.4 -Release: 1%?dist +Version: 0.40.5 +Release: 1%{?dist} Summary: Node Version Manager License: MIT URL: https://github.com/nvm-sh/nvm diff --git a/anda/tools/pi-top-Python-SDK/anda.hcl b/anda/tools/pi-top-Python-SDK/anda.hcl new file mode 100644 index 0000000000..45d09c7ae8 --- /dev/null +++ b/anda/tools/pi-top-Python-SDK/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "pi-top-Python-SDK.spec" + } +} diff --git a/anda/tools/pi-top-Python-SDK/pi-top-Python-SDK.spec b/anda/tools/pi-top-Python-SDK/pi-top-Python-SDK.spec new file mode 100644 index 0000000000..29d0d8ce1c --- /dev/null +++ b/anda/tools/pi-top-Python-SDK/pi-top-Python-SDK.spec @@ -0,0 +1,297 @@ +%global pypi_name pitop +%global _desc A simple, modular interface for interacting with a pi-top and its related accessories and components. +%global ver 0.35.0-4 +%global sanitized_ver %(echo %{ver} | sed 's/-/^/g') + +Name: python-%{pypi_name} +Version: %{sanitized_ver} +Release: 1%?dist +Summary: pi-top's Python SDK pitop package +License: Apache-2.0 +URL: https://github.com/pi-top/pi-top-Python-SDK +Source0: %{url}/archive/v%{ver}/%{name}-%{ver}.tar.gz +BuildArch: noarch + +BuildRequires: python3-build +BuildRequires: python3-installer +BuildRequires: python3-wheel +BuildRequires: python3-setuptools +BuildRequires: python3-setuptools_scm +BuildRequires: python3-pip +BuildRequires: python3-devel +BuildRequires: git + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +Provides: pitop +Provides: pi-top-Python-SDK +Provides: pi-top-python-sdk +Provides: pi-top-sdk +Provides: pitop-sdk +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%package -n python3-pitop-battery +Summary: Battery support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-battery +Battery support for the pi-top sdk. + +%package -n python3-pitop-camera +Summary: Camera support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-camera +Camera support for the pi-top sdk. + +%package -n python3-pitopcli +Summary: cli support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitopcli +cli support for the pi-top sdk. + +%package -n python3-pitop-core +Summary: core for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-core +core for the pi-top sdk. + +%package -n python3-pitop-common +Summary: Support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-common +Support for the pi-top sdk. + +%package -n python3-pitop-display +Summary: Display support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-display +Display support for the pi-top sdk. + +%package -n python3-pitop-keyboard +Summary: Keyboard support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-keyboard +Keyboard support for the pi-top sdk. + +%package -n python3-pitop-miniscreen +Summary: Miniscreen support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-miniscreen +Miniscreen support for the pi-top sdk. + +%package -n python3-pitop-pma +Summary: pma support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-pma +pma support for the pi-top sdk. + +%package -n python3-pitop-processing +Summary: Processing support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-processing +Processing support for the pi-top sdk. + +%package -n python3-pitop-robotics +Summary: Robotics support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-robotics +Robotics support for the pi-top sdk. + +%package -n python3-pitop-simulation +Summary: Simulation support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-simulation +Simulation support for the pi-top sdk. + +%package -n python3-pitop-system +Summary: System support for the pi-top sdk +Requires: python3-pitop + +%description -n python3-pitop-system +System support for the pi-top sdk. + +%prep +%autosetup -n pi-top-Python-SDK-%{ver} + +%pyproject_patch_dependency flask:drop_constraints +%pyproject_patch_dependency flask-cors:drop_constraints +%pyproject_patch_dependency gevent:drop_constraints +%pyproject_patch_dependency gpiozero:drop_constraints + +%build +pushd packages/battery +%pyproject_wheel +popd +pushd packages/camera +%pyproject_wheel +popd +pushd packages/cli +%pyproject_wheel +popd +pushd packages/common +%pyproject_wheel +popd +pushd packages/core +%pyproject_wheel +popd +pushd packages/display +%pyproject_wheel +popd +pushd packages/keyboard +%pyproject_wheel +popd +pushd packages/miniscreen +%pyproject_wheel +popd +pushd packages/pitop +%pyproject_wheel +popd +pushd packages/pma +%pyproject_wheel +popd +pushd packages/processing +%pyproject_wheel +popd +pushd packages/robotics +%pyproject_wheel +popd +pushd packages/simulation +%pyproject_wheel +popd +pushd packages/system +%pyproject_wheel +popd + +%install +%pyproject_install +pushd packages/battery +%pyproject_install +popd +pushd packages/camera +%pyproject_install +popd +pushd packages/cli +%pyproject_install +popd +pushd packages/common +%pyproject_install +popd +pushd packages/core +%pyproject_install +popd +pushd packages/display +%pyproject_install +popd +pushd packages/keyboard +%pyproject_install +popd +pushd packages/miniscreen +%pyproject_install +popd +pushd packages/pma +%pyproject_install +popd +pushd packages/processing +%pyproject_install +popd +pushd packages/robotics +%pyproject_install +popd +pushd packages/simulation +%pyproject_install +popd +pushd packages/system +%pyproject_install +popd + +rm -rf %{buildroot}/usr/lib/python3.14/site-packages/pitop/protoplus/ + +%files -n python3-%{pypi_name} +%license LICENSE +%doc README.rst +%{python3_sitelib}/pitop-*.dist-info/ +%{python3_sitelib}/pitop/__pycache__/ +%{python3_sitelib}/pitop/__init__.py +%{python3_sitelib}/pitop/*.py +%{python3_sitelib}/pitop/labs/ +%{python3_sitelib}/pitop/pulse/ + +%files -n python3-pitop-battery +%{python3_sitelib}/pitop_battery-*.dist-info/ +%{python3_sitelib}/pitop/battery/ + +%files -n python3-pitop-camera +%{python3_sitelib}/pitop_camera-*.dist-info/ +%{python3_sitelib}/pitop/camera/ + +%files -n python3-pitopcli +%{python3_sitelib}/pitopcli-*.dev1.dist-info/ +%{_bindir}/pi-top +%{_bindir}/pt +%{python3_sitelib}/pitopcli/ + +%files -n python3-pitop-common +%{python3_sitelib}/pitop_common-*.dist-info/ +%{python3_sitelib}/pitop/common/ + +%files -n python3-pitop-core +%{python3_sitelib}/pitop_core-*.dist-info/ +%{python3_sitelib}/pitop/core/ + +%files -n python3-pitop-display +%{python3_sitelib}/pitop_display-*.dist-info/ +%{python3_sitelib}/pitop/display/ + +%files -n python3-pitop-keyboard +%{python3_sitelib}/pitop_keyboard-*.dist-info/ +%{python3_sitelib}/pitop/keyboard/ + +%files -n python3-pitop-miniscreen +%{python3_sitelib}/pitop_miniscreen-*.dist-info/ +%{python3_sitelib}/pitop/miniscreen/ + +%files -n python3-pitop-pma +%{python3_sitelib}/pitop_pma-*.dist-info/ +%{python3_sitelib}/pitop/pma/ + +%files -n python3-pitop-processing +%{python3_sitelib}/pitop_processing-*.dist-info/ +%{python3_sitelib}/pitop/processing/ + +%files -n python3-pitop-robotics +%{python3_sitelib}/pitop_robotics-*.dist-info/ +%{python3_sitelib}/pitop/robotics/ + +%files -n python3-pitop-simulation +%{python3_sitelib}/pitop_simulation-*.dist-info/ +%{python3_sitelib}/pitop/simulation/ + +%files -n python3-pitop-system +%{python3_sitelib}/pitop_system-*.dist-info/ +%{python3_sitelib}/pitop/system/ + +%changelog +* Wed May 06 2026 Owen Zimmerman +- Update files and build/prep steps + +* Wed Oct 08 2025 Owen Zimmerman +- Initial commit diff --git a/anda/tools/pi-top-Python-SDK/update.rhai b/anda/tools/pi-top-Python-SDK/update.rhai new file mode 100644 index 0000000000..e62d82634b --- /dev/null +++ b/anda/tools/pi-top-Python-SDK/update.rhai @@ -0,0 +1,3 @@ +let v = gh("pi-top/pi-top-Python-SDK"); +v.crop(1); +rpm.global("ver", v); diff --git a/anda/tools/piclone/piclone.spec b/anda/tools/piclone/piclone.spec index 95fb21cc20..81659524ef 100644 --- a/anda/tools/piclone/piclone.spec +++ b/anda/tools/piclone/piclone.spec @@ -1,10 +1,10 @@ -%global commit 7d705d0a65c027bb39825bf428fe7c5316411197 -%global commit_date 20251014 +%global commit cbae7f3f5d0b0b2732299196dba33da2c059b3a8 +%global commit_date 20260529 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: piclone Version: %commit_date.git~%shortcommit -Release: 2%?dist +Release: 1%{?dist} Summary: Utility to back up Pi to an SD card reader License: BSD-3-Clause URL: https://github.com/raspberrypi-ui/piclone diff --git a/anda/tools/praat/praat.spec b/anda/tools/praat/praat.spec index 35145dd6a9..d9add6f843 100644 --- a/anda/tools/praat/praat.spec +++ b/anda/tools/praat/praat.spec @@ -4,7 +4,7 @@ %global org "org.praat" Name: praat -Version: 6.4.62 +Version: 6.4.67 Release: 1%{?dist} URL: https://www.praat.org Source0: https://github.com/praat/praat.github.io/archive/refs/tags/v%{version}.tar.gz diff --git a/anda/tools/proton-vpn-cli/proton-vpn-cli.spec b/anda/tools/proton-vpn-cli/proton-vpn-cli.spec index 89cdf176e3..0d509027bf 100644 --- a/anda/tools/proton-vpn-cli/proton-vpn-cli.spec +++ b/anda/tools/proton-vpn-cli/proton-vpn-cli.spec @@ -3,7 +3,7 @@ %global __requires_exclude ^python3\\.14dist\\(proton-vpn-local-agent\\)$ Name: python-proton-vpn-cli -Version: 0.1.8 +Version: 1.0.1 Release: 1%{?dist} Summary: Official ProtonVPN CLI Linux app License: GPL-3.0-only diff --git a/anda/tools/qdl/qdl.spec b/anda/tools/qdl/qdl.spec index 7ab1f65e34..ad779daed3 100644 --- a/anda/tools/qdl/qdl.spec +++ b/anda/tools/qdl/qdl.spec @@ -1,15 +1,17 @@ Name: qdl -Version: 2.5 -Release: 1%?dist +Version: 2.7 +Release: 1%{?dist} Summary: This tool communicates with USB devices of id 05c6:9008 to upload a flash loader and use this to flash images URL: https://github.com/linux-msm/qdl Source0: %url/archive/refs/tags/v%version.tar.gz License: BSD-3-Clause -BuildRequires: make +BuildRequires: meson BuildRequires: gcc BuildRequires: help2man BuildRequires: pkgconfig(libxml-2.0) BuildRequires: pkgconfig(libusb-1.0) +BuildRequires: pkgconfig(libzip) +BuildRequires: pkgconfig(cmocka) Packager: Owen Zimmerman @@ -19,31 +21,30 @@ Packager: Owen Zimmerman %prep %autosetup -n qdl-%{version} +%conf +%meson + %build -%make_build -make manpages +%meson_build %install -install -Dm755 qdl %{buildroot}%{_bindir}/qdl -install -Dm755 qdl %{buildroot}%{_bindir}/qdl-ramdump -install -Dm755 qdl %{buildroot}%{_bindir}/ks -mkdir -p %{buildroot}%{_mandir}/man1 -install -Dm644 qdl.1 %{buildroot}%{_mandir}/man1/qdl.1 -install -Dm644 qdl-ramdump.1 %{buildroot}%{_mandir}/man1/qdl-ramdump.1 -install -Dm644 ks.1 %{buildroot}%{_mandir}/man1/ks.1 +%meson_install %files %{_bindir}/qdl %{_bindir}/qdl-ramdump -%{_bindir}/ks +%{_bindir}/qdl-ks %{_mandir}/man1/qdl.1.* %{_mandir}/man1/qdl-ramdump.1.* -%{_mandir}/man1/ks.1.* +%{_mandir}/man1/qdl-ks.1.* %license LICENSE %doc README.md %changelog +* Mon Jun 08 2026 Owen Zimmerman - 2.7-1 +- Update spec for 2.7 + * Mon Feb 02 2026 Owen Zimmerman - Switch to tagged versions diff --git a/anda/tools/qmk_cli/qmk_cli.spec b/anda/tools/qmk_cli/qmk_cli.spec index e56db3e0c8..4e587b2ec8 100644 --- a/anda/tools/qmk_cli/qmk_cli.spec +++ b/anda/tools/qmk_cli/qmk_cli.spec @@ -5,7 +5,7 @@ Name: python-%{pypi_name} Version: 1.2.0 -Release: 1%?dist +Release: 2%?dist Summary: A program to help users work with QMK License: MIT URL: https://github.com/qmk/qmk_cli diff --git a/anda/tools/raindrop/raindrop.spec b/anda/tools/raindrop/raindrop.spec index 9feee366ac..5ca9bb8337 100644 --- a/anda/tools/raindrop/raindrop.spec +++ b/anda/tools/raindrop/raindrop.spec @@ -1,10 +1,10 @@ -%global commit 9d5396972bb5557c427a79309ce5c00f91bc9211 -%global commit_date 20260130 +%global commit 5e143e31dfb5b0fdd3b532158f7ffd1666b78940 +%global commit_date 20260519 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: raindrop Version: 0~%commit_date.git~%shortcommit -Release: 1%?dist +Release: 1%{?dist} Summary: Desktop front-end for arandr and wlrandr License: BSD-3-Clause URL: https://github.com/raspberrypi-ui/raindrop diff --git a/anda/tools/rpi-utils/rpi-utils.spec b/anda/tools/rpi-utils/rpi-utils.spec index a6669f2e97..95b2d1f76c 100644 --- a/anda/tools/rpi-utils/rpi-utils.spec +++ b/anda/tools/rpi-utils/rpi-utils.spec @@ -1,5 +1,5 @@ -%global commit 0504cf3ba3eb31fd00ae8df4358b48d700ffcd16 -%global commit_date 20260326 +%global commit b8cfbdc5b6ea2f4f22faf46141255c4adfe34229 +%global commit_date 20260613 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: rpi-utils @@ -10,17 +10,20 @@ License: BSD-3-Clause URL: https://github.com/raspberrypi/utils Source0: %{url}/archive/%{commit}.tar.gz Patch0: dtoverlay-manpage.patch -BuildRequires: cmake dtc libfdt-devel gcc-c++ gnutls-devel +BuildRequires: cmake dtc libfdt-devel gcc-c++ gnutls-devel ncurses-devel Requires: %{name}-dtmerge = %{evr} Requires: %{name}-eeptools = %{evr} Requires: %{name}-kdtc = %{evr} +Requires: %{name}-otamaker = %{evr} Requires: %{name}-otpset = %{evr} Requires: %{name}-overlaycheck = %{evr} Requires: %{name}-ovmerge = %{evr} Requires: %{name}-pinctrl = %{evr} Requires: %{name}-piolib = %{evr} Requires: %{name}-raspinfo = %{evr} +Requires: %{name}-rpieepromab = %{evr} +Requires: %{name}-rpi-gpu-usage = %{evr} Requires: %{name}-rpifwcrypto = %{evr} Requires: %{name}-vcgencmd = %{evr} Requires: %{name}-vclog = %{evr} @@ -37,7 +40,7 @@ Summary: A tool for applying compiled DT overlays (*.dtbo) to base Device %{summary}. Also includes the dtoverlay and dtparam utilities. %package dtmerge-devel -Summary: Development files for %{name}-dtmerge-devel +Summary: Development files for %{name}-dtmerge Requires: %{name}-dtmerge = %{evr} %description dtmerge-devel @@ -54,6 +57,11 @@ Summary: A tool for compiling overlays with #includes, etc., as used in t %description kdtc %{summary}. +%package otamaker +Summary: Tool for building Remote Update/Over-The-Air packages for Raspberry Pi Connect Remote Update +%description otamaker +%{summary}. + %package otpset Requires: rpi-utils-vcmailbox = %{version} Summary: A short script to help with reading and setting the customer OTP bits @@ -80,7 +88,7 @@ Summary: A more powerful replacement for raspi-gpio, a tool for displayin %pkg_completion -Bn %name-pinctrl pinctrl %package pinctrl-devel -Summary: Development files for %{name}-pinctrl-devel +Summary: Development files for %{name}-pinctrl Requires: %{name}-pinctrl = %{evr} %description pinctrl-devel @@ -92,7 +100,7 @@ Summary: A library for accessing the Pi 5's PIO hardware %{summary}. %package piolib-devel -Summary: Development files for %{name}-piolib-devel +Summary: Development files for %{name}-piolib Requires: %{name}-piolib = %{evr} %description piolib-devel @@ -103,16 +111,38 @@ Summary: A short script to dump information about the Pi. Intended for th %description raspinfo %{summary}. +%package rpieepromab +Summary: Mailbox based API that allows you to update and manage the AB EEPROM partitions +%description rpieepromab +The Raspberry Pi EEPROM AB service is a mailbox based API that allows you to update and manage the AB EEPROM partitions. + +Although this service can be used via raw vcmailbox commands the recommended API is the command line rpi-eeprom-ab application. + +%package rpieepromab-devel +Summary: Development files for %{name}-rpieepromab +Requires: %{name}-rpieepromab = %{evr} + +%description rpieepromab-devel +%{summary}. + %package rpifwcrypto Summary: A command line application and shared library for the firmware cryptography service %description rpifwcrypto %{summary}. %package -n %{name}-rpifwcrypto-devel -Summary: Development files for %{name}-rpifwcrypto-devel +Summary: Development files for %{name}-rpifwcrypto Requires: %{name}-rpifwcrypto = %{evr} %description -n %{name}-rpifwcrypto-devel +%package rpi-gpu-usage +Summary: Simple tool for showing the per-process usage of the V3D GPU on Raspberry Pi 4 and 5 +%description rpi-gpu-usage +A simple tool for showing the per-process usage of the V3D GPU on Raspberry Pi 4 and 5. +It works by parsing the /proc/*/fdinfo/* information to find the processes that have drm stats information. + +%pkg_completion -Bn %name-rpi-gpu-usage rpi-gpu-usage + %package vcgencmd Summary: Query the VideoCore for information %description vcgencmd @@ -132,7 +162,7 @@ Summary: A tool to get VideoCore 'assert' or 'msg' logs with optional -f %{summary}. %prep -%autosetup -p1 -n utils-%commit +%autosetup -p1 -n utils-%{commit} %build %cmake -DBUILD_SHARED_LIBS=1 @@ -169,6 +199,11 @@ Summary: A tool to get VideoCore 'assert' or 'msg' logs with optional -f %license LICENCE %{_bindir}/kdtc +%files otamaker +%doc otamaker/README.md +%license LICENCE +%{_bindir}/otamaker + %files otpset %doc otpset/README.md %license LICENCE @@ -219,6 +254,16 @@ Summary: A tool to get VideoCore 'assert' or 'msg' logs with optional -f %{_bindir}/raspinfo %doc raspinfo/README.md +%files rpieepromab +%{_bindir}/rpi-eeprom-ab +%{_libdir}/librpieepromab.so.0 +%doc rpieepromab/README.md +%license LICENCE + +%files rpieepromab-devel +%{_includedir}/rpieepromab.h +%{_libdir}/librpieepromab.so + %files rpifwcrypto %{_bindir}/rpi-fw-crypto %{_libdir}/librpifwcrypto.so.0 @@ -228,6 +273,12 @@ Summary: A tool to get VideoCore 'assert' or 'msg' logs with optional -f %{_libdir}/librpifwcrypto.so %{_includedir}/rpifwcrypto.h +%files rpi-gpu-usage +%{_bindir}/rpi-gpu-usage +%{_mandir}/man1/rpi-gpu-usage.1.* +%doc rpi-gpu-usage/README.md +%license LICENCE + %files vcgencmd %license LICENCE %{_bindir}/vcgencmd @@ -247,14 +298,17 @@ Summary: A tool to get VideoCore 'assert' or 'msg' logs with optional -f %{_mandir}/man7/raspirev.7.gz %changelog +* Thu May 14 2026 Owen Zimmerman +- Add new subpackages, tidy up + * Tue Jan 13 2026 Owen Zimmerman - Seperate needed files into -devel packages, add more packages/files, install all files. -* Mon May 19 2025 Owen-sz +* Mon May 19 2025 Owen Zimmerman - Build shared libraries * Tue Dec 17 2024 sadlerm - Split into individual subpackages and no longer package raspinfo -* Mon Nov 18 2024 Owen-sz +* Mon Nov 18 2024 Owen Zimmerman - Package Raspberry Pi Utils diff --git a/anda/tools/rustypaste/rustypaste.spec b/anda/tools/rustypaste/rustypaste.spec index d8651fd5ae..253cb66036 100644 --- a/anda/tools/rustypaste/rustypaste.spec +++ b/anda/tools/rustypaste/rustypaste.spec @@ -1,8 +1,8 @@ %define __brp_mangle_shebangs %{nil} Name: rustypaste -Version: 0.16.1 -Release: 2%?dist +Version: 0.17.0 +Release: 1%{?dist} Summary: A minimal file upload/pastebin service License: MIT AND Apache-2.0 AND (Apache-2.0 OR MIT) AND BSD-3-Clause AND (0BSD OR MIT OR Apache-2.0) AND Apache-2.0 AND ISC AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND (BSD-3-Clause OR MIT) AND (CC0-1.0 OR Artistic-2.0) AND CC0-1.0 AND ISC AND (MIT OR Zlib OR Apache-2.0) AND MPL-2.0 AND Unicode-3.0 AND (Unlicense OR MIT) AND Zlib URL: https://github.com/orhun/rustypaste diff --git a/anda/tools/sops/sops.spec b/anda/tools/sops/sops.spec index 41d0ac6df6..bb8d98a96f 100644 --- a/anda/tools/sops/sops.spec +++ b/anda/tools/sops/sops.spec @@ -1,6 +1,6 @@ %define debug_package %nil Name: sops -Version: 3.12.2 +Version: 3.13.1 Release: 1%{?dist} Summary: Simple and flexible tool for managing secrets License: MPL-2.0 diff --git a/anda/tools/spotx-bash/spotx-bash.spec b/anda/tools/spotx-bash/spotx-bash.spec index 786f372961..ace38d87be 100644 --- a/anda/tools/spotx-bash/spotx-bash.spec +++ b/anda/tools/spotx-bash/spotx-bash.spec @@ -1,5 +1,5 @@ -%global commit 1848c39566fb23666e1125f467fb9caf648489c8 -%global commit_date 20260328 +%global commit 5b5674949bfa0d53b9ee490ed662bd46f6997ba9 +%global commit_date 20260612 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: spotx-bash @@ -12,6 +12,7 @@ Source0: %url/archive/%commit.tar.gz Requires: bash BuildArch: noarch Provides: spotx spotx-linux spot-x spotx.sh +Packager: Its-J %description %summary @@ -31,5 +32,8 @@ install -Dm 755 spotx.sh %{buildroot}%{_bindir}/spotx %{_bindir}/spotx %changelog -* Sat Dec 14 2024 Its-J +* Tue Apr 14 2026 Its-J +- Add email to my previous contributor attributions + +* Sat Dec 14 2024 Its-J - Package SpotX-Bash diff --git a/anda/tools/stremio-service/stremio-service.spec b/anda/tools/stremio-service/stremio-service.spec index 735f518570..3a70d8bebe 100644 --- a/anda/tools/stremio-service/stremio-service.spec +++ b/anda/tools/stremio-service/stremio-service.spec @@ -1,6 +1,6 @@ Name: stremio-service -Version: 0.1.18 -Release: 1%?dist +Version: 0.1.21 +Release: 1%{?dist} Summary: Lets you run Stremio server in the background License: GPL-2.0-only AND MPL-2.0 AND (Apache-2.0 OR MIT) AND (Zlib OR Apache-2.0 OR MIT) AND BSD-3-Clause AND (Unlicense OR MIT) AND Unicode-3.0 AND (0BSD OR MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND CC0-1.0 AND ISC AND MIT AND (BSD-3-Clause OR MIT OR Apache-2.0) AND Apache-2.0 AND MIT AND (Apache-2.0 OR BSL-1.0) AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) URL: https://github.com/Stremio/stremio-service diff --git a/anda/tools/buildsys/subatomic/anda.hcl b/anda/tools/subatomic/anda.hcl similarity index 100% rename from anda/tools/buildsys/subatomic/anda.hcl rename to anda/tools/subatomic/anda.hcl diff --git a/anda/tools/buildsys/subatomic/subatomic.spec b/anda/tools/subatomic/subatomic.spec similarity index 100% rename from anda/tools/buildsys/subatomic/subatomic.spec rename to anda/tools/subatomic/subatomic.spec diff --git a/anda/tools/buildsys/subatomic/update.rhai b/anda/tools/subatomic/update.rhai similarity index 100% rename from anda/tools/buildsys/subatomic/update.rhai rename to anda/tools/subatomic/update.rhai diff --git a/anda/tools/surge/surge.spec b/anda/tools/surge/surge.spec index af2ce47bd8..d8a2b1d964 100644 --- a/anda/tools/surge/surge.spec +++ b/anda/tools/surge/surge.spec @@ -1,5 +1,5 @@ %global goipath github.com/surge-downloader/surge -Version: 0.7.5 +Version: 0.8.7 %gometa diff --git a/anda/tools/tauri/tauri.spec b/anda/tools/tauri/tauri.spec index 16966156e1..b712c26407 100644 --- a/anda/tools/tauri/tauri.spec +++ b/anda/tools/tauri/tauri.spec @@ -2,8 +2,8 @@ %undefine __brp_mangle_shebangs Name: rust-tauri -Version: 2.10.1 -Release: 1%?dist +Version: 2.11.2 +Release: 1%{?dist} Summary: Command line interface for building Tauri apps License: Apache-2.0 OR MIT URL: https://crates.io/crates/create-tauri-app diff --git a/anda/tools/termflix/termflix.spec b/anda/tools/termflix/termflix.spec index 7c75d40de7..4d2ae79f37 100644 --- a/anda/tools/termflix/termflix.spec +++ b/anda/tools/termflix/termflix.spec @@ -1,6 +1,6 @@ Name: termflix -Version: 0.4.2 -Release: 1%?dist +Version: 0.5.1 +Release: 1%{?dist} Summary: Terminal animation player with 43 procedurally generated animations, multiple render modes, and true color support License: MIT AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND MPL-2.0 diff --git a/anda/tools/topgrade/rust-topgrade.spec b/anda/tools/topgrade/rust-topgrade.spec index 7cc92fc1df..076171a3de 100644 --- a/anda/tools/topgrade/rust-topgrade.spec +++ b/anda/tools/topgrade/rust-topgrade.spec @@ -3,7 +3,7 @@ Name: rust-topgrade # renovate: datasource=github-releases depName=topgrade-rs/topgrade -Version: 17.1.0 +Version: 17.6.1 Release: 1%{?dist} Summary: Upgrade all the things diff --git a/anda/tools/typos/typos.spec b/anda/tools/typos/typos.spec index 44c022ca05..5a13a3349a 100644 --- a/anda/tools/typos/typos.spec +++ b/anda/tools/typos/typos.spec @@ -2,8 +2,8 @@ %define debug_package %{nil} Name: typos -Version: 1.44.0 -Release: 1%?dist +Version: 1.47.2 +Release: 1%{?dist} Summary: Source Code Spelling Correction License: MIT OR Apache-2.0 diff --git a/anda/tools/ueberzugpp/ueberzugpp.spec b/anda/tools/ueberzugpp/ueberzugpp.spec index fb9e852d99..5416defa44 100644 --- a/anda/tools/ueberzugpp/ueberzugpp.spec +++ b/anda/tools/ueberzugpp/ueberzugpp.spec @@ -1,7 +1,7 @@ Name: ueberzugpp -Version: 2.9.8 -Release: 1%?dist -License: GPL-3.0 +Version: 2.9.10 +Release: 2%{?dist} +License: GPL-3.0-or-later Summary: Drop in replacement for ueberzug written in C++ URL: https://github.com/jstkdng/%{name} Source: %{url}/archive/v%{version}.tar.gz @@ -32,9 +32,11 @@ on terminals by using X11/wayland child windows, sixels, kitty and iterm2. %prep %autosetup -%build +%conf %cmake . -DENABLE_WAYLAND=ON \ -DENABLE_XCB_ERROR=ON + +%build %cmake_build %install diff --git a/anda/tools/virtualsmartcard/virtualsmartcard.spec b/anda/tools/virtualsmartcard/virtualsmartcard.spec index 284cf992ac..c41f91667b 100644 --- a/anda/tools/virtualsmartcard/virtualsmartcard.spec +++ b/anda/tools/virtualsmartcard/virtualsmartcard.spec @@ -7,7 +7,7 @@ Source0: https://github.com/frankmorgner/vsmartcard/releases/download/%na License: GPL-3.0-only BuildRequires: pcsc-lite-devel gcc libtool pkg-config qrencode-devel python3-devel help2man -Requires: qrencode-libs python3 +Requires: qrencode-libs Packager: june-fish %description @@ -15,6 +15,8 @@ Virtual Smart Card emulates a smart card and makes it accessible through PC/SC. %prep %autosetup + +%conf autoreconf --verbose --install %configure prefix=NONE pythondir=%{python3_sitelib} bindir=%{_bindir} diff --git a/anda/tools/xcur2png/xcur2png.spec b/anda/tools/xcur2png/xcur2png.spec index 9e125ef91c..40f5483acd 100644 --- a/anda/tools/xcur2png/xcur2png.spec +++ b/anda/tools/xcur2png/xcur2png.spec @@ -20,8 +20,10 @@ xcur2png is a program which let you take PNG image from X cursor, and generate c %prep %autosetup -%build +%conf %configure + +%build %make_build %install diff --git a/anda/system/supergfxctl/anda.hcl b/anda/tools/yabs/anda.hcl similarity index 64% rename from anda/system/supergfxctl/anda.hcl rename to anda/tools/yabs/anda.hcl index 7b76ffb458..fe046e5f2f 100644 --- a/anda/system/supergfxctl/anda.hcl +++ b/anda/tools/yabs/anda.hcl @@ -1,6 +1,6 @@ project pkg { arches = ["x86_64"] rpm { - spec = "supergfxctl.spec" + spec = "yabs.spec" } } diff --git a/anda/tools/yabs/update.rhai b/anda/tools/yabs/update.rhai new file mode 100644 index 0000000000..58101f4faa --- /dev/null +++ b/anda/tools/yabs/update.rhai @@ -0,0 +1,5 @@ +rpm.global("commit", gh_commit("masonr/yet-another-bench-script")); +if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); +} diff --git a/anda/tools/yabs/yabs.spec b/anda/tools/yabs/yabs.spec new file mode 100644 index 0000000000..aa737630d6 --- /dev/null +++ b/anda/tools/yabs/yabs.spec @@ -0,0 +1,34 @@ +%global commit 873f780055372ed00eace2e4050c85a0d0ed8bb1 +%global commit_date 20260512 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) + +Name: yabs +Version: 0~%{commit_date}git.%{shortcommit} +Release: 1%{?dist} +Summary: Simple bash script to estimate Linux server performance using fio, iperf3, & Geekbench +URL: https://github.com/masonr/yet-another-bench-script +Source0: %{url}/archive/%{commit}/yet-another-bench-script-%commit.tar.gz +License: WTFPL +Provides: yet-another-bench-script +Packager: Owen Zimmerman +BuildArch: noarch + +%description +%{summary}. + +%prep +%autosetup -n yet-another-bench-script-%{commit} + +%build + +%install +install -Dm755 yabs.sh %{buildroot}%{_bindir}/yabs + +%files +%doc README.md +%license LICENSE +%{_bindir}/yabs + +%changelog +* Fri Apr 03 2026 Owen Zimmerman +- Initial commit diff --git a/anda/tools/yt-dlp/yt-dlp-git.spec b/anda/tools/yt-dlp/yt-dlp-git.spec index 914c2e0237..e32aff47c4 100644 --- a/anda/tools/yt-dlp/yt-dlp-git.spec +++ b/anda/tools/yt-dlp/yt-dlp-git.spec @@ -2,7 +2,7 @@ %global oldpkgname yt-dlp-nightly Name: yt-dlp-git -Version: 2026.03.29.164733 +Version: 2026.06.13.230640 Release: 1%{?dist} Summary: A command-line program to download videos from online video platforms diff --git a/andax/bump_extras.rhai b/andax/bump_extras.rhai index 90ec2e5ee8..63417b27cb 100644 --- a/andax/bump_extras.rhai +++ b/andax/bump_extras.rhai @@ -29,14 +29,6 @@ fn alma(pkg, repo, branch) { return(vr[1]); } -fn codeberg_commit(repo) { - return get(`https://codeberg.org/api/v1/repos/${repo}/commits?stat=false&verification=false&files=false&limit=1`).json_arr()[0].sha; -} - -fn codeberg(repo) { - return get(`https://codeberg.org/api/v1/repos/${repo}/releases/latest`).json().tag_name; -} - fn as_bodhi_ver(branch) { if branch.starts_with("el") { branch.crop(2);