diff --git a/.backportrc.json b/.backportrc.json index ec949434f0..4d7f463059 100644 --- a/.backportrc.json +++ b/.backportrc.json @@ -2,7 +2,7 @@ "repoOwner": "terrapkg", "repoName": "packages", "resetAuthor": true, - "targetBranchChoices": ["frawhide", "f43", "f42", "el10"], + "targetBranchChoices": ["frawhide", "f44", "f43", "f42", "el10"], "branchLabelMapping": { "^sync-(.+)$": "$1" } diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml index 53aedb05be..a7ba3a8c91 100644 --- a/.github/ISSUE_TEMPLATE/bug.yml +++ b/.github/ISSUE_TEMPLATE/bug.yml @@ -14,9 +14,12 @@ body: - type: input id: pkg attributes: - label: Full Package Name - description: If you report multiple packages, only the main package is needed if applicable, or separate them with spaces otherwise. Obtain the full package name using `rpm -qa pkg-name`. - placeholder: anda-0.4.14-1.fc43.x86_64 + label: Full Raw Package Name (e.g. anda-0.4.14-1.fcrawhide.x86_64) + description: | + If you report multiple packages, only the main package is needed if applicable, or separate them with spaces otherwise. Obtain the full package name using `rpm -qa pkg-name`. + + **The format MUST BE LITERALLY THE SAME as `anda-0.4.14-1.fc43.x86_64`. Do NOT add anything else, not even backticks.** + placeholder: anda-0.4.14-1.fc43.x86_64 (MUST be under this format, no backticks) validations: required: true - type: dropdown diff --git a/.github/PULL_REQUEST_TEMPLATE/new_package.md b/.github/PULL_REQUEST_TEMPLATE/new_package.md index 83d3347771..85275f746f 100644 --- a/.github/PULL_REQUEST_TEMPLATE/new_package.md +++ b/.github/PULL_REQUEST_TEMPLATE/new_package.md @@ -6,3 +6,10 @@ A clear and concise description of why you want this package. Would this provide **Additional context** Add any other context about the package submission here. Link to any relavent issues. + +**Checklist** +- [] This package is maintained OR there is a valid reason to add it (e.g. python dependency) +- [] I have tested at least the `x86_64` version of the package +- [] I have read through any relevant [Terra](https://developer.fyralabs.com/terra) and [Fedora packaging](https://docs.fedoraproject.org/en-US/packaging-guidelines/) documentation/policies/guidelines +- [] I have made sure there are no security issues with this package to the best of my ability +- [] I have made sure this is not in Fedora (unless adding to the [extras repo](https://developer.fyralabs.com/terra/installing#extras)). diff --git a/.github/scripts/configure-sccache.js b/.github/scripts/configure-sccache.js index 53da0201ca..bd450d0118 100644 --- a/.github/scripts/configure-sccache.js +++ b/.github/scripts/configure-sccache.js @@ -6,7 +6,7 @@ // Note: ACTIONS_CACHE_SERVICE_V2 and SCCACHE_GHA_ENABLED are set at workflow level module.exports = async ({ github, context, core, exec }) => { // Find sccache path (try which command) - let sccachePath = "sccache"; + let sccachePath = "/usr/bin/sccache"; try { const result = await exec.getExecOutput("which", ["sccache"], { ignoreReturnCode: true, @@ -31,6 +31,13 @@ module.exports = async ({ github, context, core, exec }) => { core.warning(`Could not get sccache version: ${e.message}`); } + // Enable caching + core.exportVariable("RUSTC_WRAPPER", sccachePath); + core.exportVariable("SCCACHE_GHA_ENABLED", "true"); + + // Disable Cargo incremental builds to not interfere with caching + core.exportVariable("CARGO_INCREMENTAL", "false"); + // Debug: Show what environment variables are available core.info("=== Environment Variables Diagnostic ==="); core.info(`SCCACHE_GHA_ENABLED: ${process.env.SCCACHE_GHA_ENABLED}`); @@ -106,6 +113,7 @@ module.exports = async ({ github, context, core, exec }) => { } if (bustCache) { + core.exportVariable("SCCACHE_BUST_CACHE", "true"); core.exportVariable("SCCACHE_RECACHE", "1"); core.info("SCCACHE_RECACHE enabled because bust_cache is true"); } diff --git a/.github/workflows/autobuild.yml b/.github/workflows/autobuild.yml index 3c1728b37a..a517936793 100644 --- a/.github/workflows/autobuild.yml +++ b/.github/workflows/autobuild.yml @@ -51,7 +51,7 @@ jobs: image: ghcr.io/terrapkg/appstream-generator:main steps: - name: Download artifacts - uses: actions/download-artifact@v7 + uses: actions/download-artifact@v8 with: merge-multiple: true path: ./artifacts @@ -69,6 +69,18 @@ jobs: --basename=test \ --veto-ignore=missing-parents \ --veto-ignore=missing-info 2>&1 | tee asb.log + + - name: Run appstreamcli validate + 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 + echo "" >> $GITHUB_STEP_SUMMARY + done + echo '```' >> $GITHUB_STEP_SUMMARY + - name: Export logs id: export_logs run: | diff --git a/.github/workflows/bootstrap.yml b/.github/workflows/bootstrap.yml index 3a301e4ace..706fa55e58 100644 --- a/.github/workflows/bootstrap.yml +++ b/.github/workflows/bootstrap.yml @@ -54,6 +54,9 @@ jobs: - name: Build terra-release run: anda build -D "vendor Terra" -rrpmbuild anda/terra/release/pkg + - name: Build terra-appstream-helper + 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 - name: Install Subatomic diff --git a/.github/workflows/json-build.yml b/.github/workflows/json-build.yml index 370881c0b5..fbd6939520 100644 --- a/.github/workflows/json-build.yml +++ b/.github/workflows/json-build.yml @@ -35,12 +35,6 @@ on: type: boolean default: true -env: - RUSTC_WRAPPER: sccache - # SCCACHE_NO_DAEMON: "1" - # Disable incremental compilation so sccache works better - CARGO_INCREMENTAL: "false" - jobs: build: strategy: @@ -61,6 +55,18 @@ jobs: - name: Set up git repository run: git config --global --add safe.directory "$GITHUB_WORKSPACE" + - name: Configure sccache + id: sccache + if: ${{ !contains(matrix.pkg.labels.sccache, '0') }} + uses: actions/github-script@v8 + env: + SCCACHE_GHA_VERSION: ${{ matrix.version }}-${{ matrix.pkg.arch }}-${{ matrix.pkg.pkg }} + SCCACHE_GHA_CACHE_FROM: ${{ matrix.version }}-${{ matrix.pkg.arch }}-${{ matrix.pkg.pkg }} + with: + script: | + const script = require('./.github/scripts/configure-sccache.js') + await script({github, context, core, exec}) + - name: CI Setup Script if: ${{ !contains(matrix.pkg.labels, 'mock') }} run: | @@ -75,21 +81,16 @@ jobs: dir=$(dirname ${{ matrix.pkg.pkg }}) dnf5 builddep -y ${dir}/*.spec - - - name: Run sccache-cache - uses: mozilla-actions/sccache-action@v0.0.9 - - - name: Configure sccache - run: | - set -euo pipefail - echo "SCCACHE_GHA_ENABLED=true" >> $GITHUB_ENV - if [ "${{ inputs.bust_cache }}" = "true" ]; then - echo "SCCACHE_BUST_CACHE=true" >> $GITHUB_ENV - fi - - - name: Build with Andaman - run: anda build -D "vendor Terra" ${{ matrix.pkg.pkg }} -c terra-${{ matrix.version }}-${{ matrix.pkg.arch }} ${{ !matrix.pkg.labels.mock == '1' && '-rrpmbuild' || '' }} + run: anda build -D "vendor Terra" -D "__python %{__python3}" ${{ matrix.pkg.pkg }} -c terra-${{ matrix.version }}-${{ matrix.pkg.arch }} ${{ !matrix.pkg.labels.mock == '1' && '-rrpmbuild' || '' }} + + - name: Report Cache Summary + if: steps.sccache.outcome == 'success' + uses: actions/github-script@v8 + with: + script: | + const script = require('./.github/scripts/sccache-stats.js') + await script({github, context, core, exec}) - name: Generating artifact name id: art @@ -98,7 +99,7 @@ jobs: x=${NAME//\//@} echo "name=$x" >> $GITHUB_OUTPUT - - uses: actions/upload-artifact@v6 + - uses: actions/upload-artifact@v7 with: name: ${{ steps.art.outputs.name }} compression-level: 0 # The RPMs are already compressed :p @@ -129,4 +130,4 @@ jobs: run: ./.github/workflows/mg.sh true "${{matrix.pkg.pkg}}" "${{matrix.version}}" "${{matrix.pkg.arch}}" "${{github.run_id}}" "${{secrets.MADOGUCHI_JWT}}" "$GITHUB_SHA" - name: Notify Madoguchi (Failure) if: inputs.publish && (cancelled() || failure()) - run: ./.github/workflows/mg.sh false "${{matrix.pkg.pkg}}" "${{matrix.version}}" "${{matrix.pkg.arch}}" "${{github.run_id}}" "${{secrets.MADOGUCHI_JWT}}" "$GITHUB_SHA" \ No newline at end of file + run: ./.github/workflows/mg.sh false "${{matrix.pkg.pkg}}" "${{matrix.version}}" "${{matrix.pkg.arch}}" "${{github.run_id}}" "${{secrets.MADOGUCHI_JWT}}" "$GITHUB_SHA" diff --git a/.github/workflows/sync.yml b/.github/workflows/sync.yml index 1d98a83f67..b6ffed0932 100644 --- a/.github/workflows/sync.yml +++ b/.github/workflows/sync.yml @@ -25,7 +25,7 @@ jobs: git config --global commit.gpgsign true - name: Backport Action - uses: sorenlouv/backport-github-action@v10.2.0 + uses: sorenlouv/backport-github-action@9460b7102fea25466026ce806c9ebf873ac48721 # v11.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 4e41a61276..978e08848a 100644 --- a/.github/workflows/update-branch.yml +++ b/.github/workflows/update-branch.yml @@ -13,6 +13,7 @@ jobs: matrix: branch: - frawhide + - f44 - f43 - f42 - el10 diff --git a/.github/workflows/update-comps.yml b/.github/workflows/update-comps.yml index 9b95277df9..61aefdf15e 100644 --- a/.github/workflows/update-comps.yml +++ b/.github/workflows/update-comps.yml @@ -6,6 +6,7 @@ on: push: branches: - frawhide + - f44 - f43 - f42 - el10 diff --git a/.github/workflows/update-nightly.yml b/.github/workflows/update-nightly.yml index 52a244b1b2..28ad326c11 100644 --- a/.github/workflows/update-nightly.yml +++ b/.github/workflows/update-nightly.yml @@ -48,6 +48,7 @@ jobs: git add anda git commit -S -a -m "$msg" } + copy_over f44 || true copy_over f43 || true copy_over f42 || true copy_over el10 || true diff --git a/.github/workflows/update-weekly.yml b/.github/workflows/update-weekly.yml index ddd62a4ea4..d26cd1c93d 100644 --- a/.github/workflows/update-weekly.yml +++ b/.github/workflows/update-weekly.yml @@ -48,6 +48,7 @@ jobs: git add anda git commit -S -a -m "$msg" } + copy_over f44 || true copy_over f43 || true copy_over f42 || true copy_over el10 || true diff --git a/.github/workflows/update.yml b/.github/workflows/update.yml index 0ef305b8d7..75266259a1 100644 --- a/.github/workflows/update.yml +++ b/.github/workflows/update.yml @@ -48,6 +48,7 @@ jobs: git add anda git commit -S -a -m "$msg" } + copy_over f44 || true copy_over f43 || true copy_over f42 || true copy_over el10 || true diff --git a/README.md b/README.md index 303a8a278d..8a7ae3ee65 100644 --- a/README.md +++ b/README.md @@ -25,8 +25,14 @@ If you are using immutable/atomic editions of Fedora, run the following commands curl -fsSL https://github.com/terrapkg/subatomic-repos/raw/main/terra.repo | pkexec tee /etc/yum.repos.d/terra.repo sudo rpm-ostree install terra-release ``` +#### Subrepos -Optionally, you can install `terra-release-extra` to use the Extras repository. This also installs the Nvidia, and Mesa streams but does not enable them. +On Fedora, you can optionally install the Terra subrepos. Extra care and caution may be needed as some of these packages may conflict with other repositories such as RPM Fusion. + +- 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. ### Enterprise Linux (EL) diff --git a/anda/apps/anki/anki.spec b/anda/apps/anki/anki.spec index c31ebcf138..3ce12bc4f1 100644 --- a/anda/apps/anki/anki.spec +++ b/anda/apps/anki/anki.spec @@ -4,9 +4,10 @@ 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/ +Packager: madonuko BuildRequires: python3-devel python3-setuptools python3-waitress python3-protobuf python3-pysocks rpm_macro(fdupes) BuildRequires: python3-distro python3-flask-cors python3-jsonschema python3-send2trash python3-certifi python3-simplejson -BuildRequires: python3-installer make mold cargo git rsync ninja-build libxcrypt-compat nodejs python3.9 python-unversioned-command gcc python3-pyqt6-webengine +BuildRequires: python3-installer make cargo git rsync ninja-build libxcrypt-compat nodejs python3.9 python-unversioned-command gcc python3-pyqt6-webengine Requires: hicolor-icon-theme python3-sqlalchemy python3-simplejson python3-matplotlib python3-decorator python3-markdown python3-send2trash Requires: python3-requests python3-pygame python3-beautifulsoup4 python3-httplib2 python3-pyaudio python3-jsonschema sox libxcrypt-compat python3-pyqt6-webengine Recommends: (mpv or mpv-nightly) @@ -20,9 +21,7 @@ phrases in a foreign language) as easily, quickly and efficiently as possible. Anki is based on a theory called spaced repetition. %prep -rm -rf * -git clone https://github.com/ankitects/anki . -git checkout %{version} +%git_clone https://github.com/ankitects/anki %patch 0 -p1 # See https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=anki @@ -31,7 +30,7 @@ git checkout %{version} export RELEASE=1 export PYTHONPATH=%_libdir/python3/dist-packages cargo update -mold -run ./tools/build +./tools/build %install diff --git a/anda/apps/bazzite-portal/anda.hcl b/anda/apps/bazzite-portal/anda.hcl new file mode 100644 index 0000000000..61c3d4d139 --- /dev/null +++ b/anda/apps/bazzite-portal/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "bazzite-portal.spec" + } +} \ No newline at end of file diff --git a/anda/apps/bazzite-portal/bazzite-portal.spec b/anda/apps/bazzite-portal/bazzite-portal.spec new file mode 100644 index 0000000000..74d29485e8 --- /dev/null +++ b/anda/apps/bazzite-portal/bazzite-portal.spec @@ -0,0 +1,39 @@ +Name: bazzite-portal +Version: 0.1.6 +Release: 3%?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 +Provides: Bazzite-Portal +BuildArch: noarch +Packager: Zacharias Xenakis + +%description +%{summary}. + +%prep +%autosetup -n yafti-gtk-%{version} + +%build + +%install +install -Dm 755 yafti_gtk.py %{buildroot}%{_bindir}/yafti_gtk.py +install -Dm 644 io.github.ublue_os.yafti_gtk.desktop %{buildroot}%{_appsdir}/io.github.ublue_os.yafti_gtk.desktop +install -Dm 644 portal.svg %{buildroot}%{_scalableiconsdir}/io.github.ublue_os.yafti_gtk.svg +install -Dm 644 io.github.ublue_os.yafti_gtk.metainfo.xml %{buildroot}%{_metainfodir}/io.github.ublue_os.yafti_gtk.metainfo.xml + +%files +%doc README.md +%license LICENSE +%{_bindir}/yafti_gtk.py +%{_appsdir}/io.github.ublue_os.yafti_gtk.desktop +%{_scalableiconsdir}/io.github.ublue_os.yafti_gtk.svg +%{_metainfodir}/io.github.ublue_os.yafti_gtk.metainfo.xml + +%changelog +* Wed Jan 28 2026 Xarishark +- Initial commit \ No newline at end of file diff --git a/anda/apps/bazzite-portal/update.rhai b/anda/apps/bazzite-portal/update.rhai new file mode 100644 index 0000000000..22f4c05b3c --- /dev/null +++ b/anda/apps/bazzite-portal/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("ublue-os/yafti-gtk")); \ 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 a6d0d1bea8..63aca8e17f 100644 --- a/anda/apps/bitwarden/cli.bin/bitwarden-cli.bin.spec +++ b/anda/apps/bitwarden/cli.bin/bitwarden-cli.bin.spec @@ -1,6 +1,6 @@ Name: bitwarden-cli.bin -Version: 2025.12.1 -Release: 1%?dist +Version: 2026.2.0 +Release: 1%{?dist} Summary: Bitwarden command-line client License: GPL-3.0-only URL: https://bitwarden.com diff --git a/anda/apps/bitwarden/cli/bitwarden-cli.spec b/anda/apps/bitwarden/cli/bitwarden-cli.spec index bd86c653a4..fd0df86f79 100644 --- a/anda/apps/bitwarden/cli/bitwarden-cli.spec +++ b/anda/apps/bitwarden/cli/bitwarden-cli.spec @@ -6,8 +6,8 @@ %endif Name: bitwarden-cli -Version: 2025.12.1 -Release: 1%?dist +Version: 2026.2.0 +Release: 1%{?dist} Summary: Bitwarden command-line client License: GPL-3.0-only URL: https://bitwarden.com diff --git a/anda/apps/chdig/chdig.spec b/anda/apps/chdig/chdig.spec index 59fab14a08..118e9998e6 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.1.1 +Version: 26.2.3 Release: 1%?dist Summary: Dig into ClickHouse with TUI interface URL: https://github.com/azat/chdig diff --git a/anda/apps/chrultrabook-tools/anda.hcl b/anda/apps/chrultrabook-tools/anda.hcl new file mode 100644 index 0000000000..94b1962d01 --- /dev/null +++ b/anda/apps/chrultrabook-tools/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "chrultrabook-tools.spec" + } +} diff --git a/anda/apps/chrultrabook-tools/chrultrabook-tools.spec b/anda/apps/chrultrabook-tools/chrultrabook-tools.spec new file mode 100644 index 0000000000..0f7e915247 --- /dev/null +++ b/anda/apps/chrultrabook-tools/chrultrabook-tools.spec @@ -0,0 +1,74 @@ +%undefine __brp_mangle_shebangs + +Name: chrultrabook-tools +Version: 3.1.4 +Release: 1%{?dist} +Summary: User-friendly configuration utility for Chromebooks running an alternate OS +URL: https://github.com/death7654/Chrultrabook-Tools +Source0: %url/archive/refs/tags/%version.tar.gz +License: GPL-3.0-only AND MPL-2.0 AND MIT-0 AND (CC0-1.0 OR MIT-0 OR Apache-2.0) AND (CC0-1.0 OR Apache-2.0) AND BSL-1.0 AND BlueOak-1.0.0 AND CC0-1.0 AND (BSD-3-Clause OR Apache-2.0) AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-2-Clause AND ISC AND MIT AND (Apache-2.0 OR MIT) AND BSD-3-Clause AND NCSA 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 ISC OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND (Unlicense OR MIT) AND Zlib AND (Zlib OR Apache-2.0 OR MIT) AND (Apache-2.0/MIT) AND CDLA-Permissive-2.0 AND (MIT OR Zlib OR Apache-2.0) 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 OR BSD-1-Clause) AND Unlicense + +BuildRequires: cargo +BuildRequires: glib2 +BuildRequires: glib2-devel +BuildRequires: gtk3 +BuildRequires: gtk3-devel +BuildRequires: javascriptcoregtk4.1 +BuildRequires: javascriptcoregtk4.1-devel +BuildRequires: libsoup3 +BuildRequires: libsoup3-devel +BuildRequires: libappindicator-gtk3 +BuildRequires: libappindicator-devel +BuildRequires: gstreamer1 +BuildRequires: gstreamer1-devel +BuildRequires: patchelf +BuildRequires: libstdc++-static +BuildRequires: libxdo-devel +BuildRequires: anda-srpm-macros +BuildRequires: rustc +BuildRequires: %{tauri_buildrequires -a} +# This may seem weird, but https://github.com/nodejs/node/issues/51752#issuecomment-2970163641 +BuildRequires: nodejs-full-i18n + +Requires: chromium-ectool +Requires: coreboot-utils-cbmem +Requires: libayatana-appindicator-gtk3 +Requires: libayatana-ido-gtk3 +Requires: libayatana-indicator-gtk3 + +Packager: Owen Zimmerman owen@fyralabs.com + +%description +%summary. + +%prep +%autosetup -n Chrultrabook-Tools-%version +%tauri_prep + +%build +%npm_build -r build -B + +%install +%tauri_install +install -Dm755 src-tauri/linux/chrultrabook-tools-root %{buildroot}%{_bindir}/chrultrabook-tools-root +install -Dm644 src-tauri/linux/chrultrabook-tools.desktop %{buildroot}%{_appsdir}/chrultrabook-tools.desktop +install -Dm644 src-tauri/icons/128x128.png %{buildroot}%{_hicolordir}/128x128/apps/chrultrabook-tools.png +# Not matching, but upstream does it this way. Working with upstream to correct this issue. +install -Dm644 src-tauri/icons/128x128@2x.png %{buildroot}%{_hicolordir}/256x256@2/apps/chrultrabook-tools.png +install -Dm644 src-tauri/icons/32x32.png %{buildroot}%{_hicolordir}/32x32/apps/chrultrabook-tools.png +install -Dm644 src-tauri/linux/com.chrultrabook.tools.policy %{buildroot}%{_datadir}/polkit-1/actions/com.chrultrabook.tools.policy +%{tauri_cargo_license} > LICENSE.dependencies + +%files +%doc README.md +%license LICENSE +%license LICENSE.dependencies +%{_bindir}/chrultrabook-tools +%{_bindir}/chrultrabook-tools-root +%{_appsdir}/chrultrabook-tools.desktop +%{_hicolordir}/*x*/apps/chrultrabook-tools.png +%{_datadir}/polkit-1/actions/com.chrultrabook.tools.policy + +%changelog +* Mon Jan 19 2026 Owen Zimmerman +- Initial commit diff --git a/anda/apps/chrultrabook-tools/update.rhai b/anda/apps/chrultrabook-tools/update.rhai new file mode 100644 index 0000000000..52a14d7575 --- /dev/null +++ b/anda/apps/chrultrabook-tools/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("death7654/Chrultrabook-Tools")); diff --git a/anda/apps/coolercontrol/coolercontrol.spec b/anda/apps/coolercontrol/coolercontrol.spec index 2a86423959..a0fe287663 100644 --- a/anda/apps/coolercontrol/coolercontrol.spec +++ b/anda/apps/coolercontrol/coolercontrol.spec @@ -8,55 +8,49 @@ for background device management, as well as a GUI to expertly customize your se %global __brp_mangle_shebangs %{nil} Name: coolercontrol -Version: 3.1.1 -Release: 1%?dist +Version: 4.0.1 +Release: 1%{?dist} Summary: Cooling device control for Linux +ExclusiveArch: x86_64 aarch64 License: GPL-3.0-or-later URL: https://gitlab.com/coolercontrol/coolercontrol -Source0: %url/-/archive/%version/coolercontrol-%version.tar.gz +Source0: %url/-/archive/%version/coolercontrol-%version.tar.gz Packager: madonuko -Provides: coolercontrol-ui -Provides: coolercontrol-gui Requires: hicolor-icon-theme -Requires: webkit2gtk4.1 -Requires: libappindicator-gtk3 -Requires: coolercontrold -BuildRequires: nodejs-npm libdrm-devel curl wget file mold -BuildRequires: systemd-rpm-macros anda-srpm-macros cargo >= 1.75.0 cargo-rpm-macros -BuildRequires: binutils bison cmake flex gcc gcc-c++ libtool strace -BuildRequires: libappstream-glib +Requires: coolercontrold = %{version} +BuildRequires: pkgconfig(appstream-glib) BuildRequires: desktop-file-utils +BuildRequires: make +BuildRequires: cmake +BuildRequires: autoconf automake gcc gcc-c++ BuildRequires: cmake(Qt6) +BuildRequires: cmake(Qt6WebEngineCore) BuildRequires: cmake(Qt6WebEngineWidgets) +BuildRequires: cmake(Qt6WebChannel) %description %_desc -%package liqctld -Summary: CoolerControl daemon for interacting with liquidctl devices on a system level -Requires: coolercontrold -BuildRequires: python3-devel python3-wheel python3-liquidctl python3-setproctitle python3-fastapi python3-uvicorn python3-pip -%description liqctld %_desc -coolercontrol-liqctld is a CoolerControl daemon for interacting with liquidctl devices on a system level, and is -installed as the coolercontrol-liqctld application. Its main purpose is to wrap the underlying -liquidctl library providing an API interface that the main coolercontrol daemon interacts with. -It also enables parallel device communication and access to specific device properties. - %package -n coolercontrold Summary: Monitor and control your cooling devices. -Requires: coolercontrol-liqctld -BuildRequires: pkgconfig(webkit2gtk-4.1) pkgconfig(openssl) pkgconfig(librsvg-2.0) -BuildRequires: libappindicator-gtk3-devel +License: GPL-3.0-or-later AND (Apache-2.0 OR MIT) AND (MIT OR Apache-2.0) AND Unicode-3.0 AND (0BSD OR MIT OR Apache-2.0) AND AGPL-3.0-or-later AND 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 BSD-2-Clause AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR MIT OR Apache-2.0) AND BSD-3-Clause AND MIT AND (BSD-3-Clause OR Apache-2.0) AND (BSD-3-Clause OR MIT) AND (CC0-1.0 OR Apache-2.0) AND ISC AND (MIT OR Apache-2.0) 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 (Unlicense OR MIT) AND Zlib AND (Zlib OR Apache-2.0 OR MIT) +BuildRequires: anda-srpm-macros cargo-rpm-macros rust-srpm-macros +BuildRequires: systemd-rpm-macros +BuildRequires: pkgconfig(libdrm_amdgpu) +BuildRequires: pkgconfig(libdrm) +BuildRequires: pkgconfig(protobuf) +BuildRequires: nodejs-npm +Recommends: python3-liquidctl %description -n coolercontrold %_desc -coolercontrold is the main daemon containing the core logic for interfacing with devices, and installed as -"coolercontrold". It is meant to run in the background as a system daemon. It handles all device -communication and data management, additionally connecting to the liqctld daemon for liquidctl -supported devices. It has an API that services client programs like the coolercontrol-gui. +This is the system daemon for CoolerControl. +CoolerControl is an open-source application for monitoring and controlling supported cooling +devices. It features an intuitive interface, flexible control options, and live thermal data to keep +your system quiet, cool, and stable. %prep %autosetup pushd coolercontrold -%cargo_prep_online & +%cargo_prep_online popd pushd coolercontrol-ui @@ -68,32 +62,23 @@ wait %build pushd coolercontrol-ui -npm run build-only & +%make_build popd -pushd coolercontrol-liqctld -%pyproject_wheel +pushd coolercontrold +%{cargo_license_online} > LICENSE.dependencies +%{cargo_license_summary_online} +wait +cp -rfp ../coolercontrol-ui/dist/* resources/app/ +%{cargo_build} --locked popd pushd coolercontrol %cmake -%cmake_build & -popd - -pushd coolercontrold -%{cargo_license_online} > LICENSE.dependencies & -wait -cp -rfp ../coolercontrol-ui/dist/* resources/app/ -%cargo_build +%cmake_build popd %install -pushd coolercontrol-liqctld -#define _pyproject_wheeldir . -%pyproject_install -%pyproject_save_files coolercontrol_liqctld -popd - pushd coolercontrold install -Dpm755 target/rpm/coolercontrold %buildroot%_bindir/coolercontrold install -Dpm644 LICENSE.dependencies %buildroot%_datadir/licenses/coolercontrold/LICENSE.dependencies @@ -103,10 +88,13 @@ pushd coolercontrol/ %cmake_install popd -install -Dpm644 packaging/systemd/coolercontrol-liqctld.service %buildroot%_unitdir/coolercontrol-liqctld.service desktop-file-install --dir=%buildroot%_datadir/applications packaging/metadata/%rdnn.desktop install -Dpm644 packaging/metadata/%rdnn.svg %buildroot%_iconsdir/hicolor/scalable/apps/%rdnn.svg -install -Dpm644 packaging/metadata/%rdnn.png %buildroot%_iconsdir/hicolor/256x256/apps/%rdnn.svg +install -Dpm644 packaging/metadata/%rdnn-alert.svg %buildroot%_iconsdir/hicolor/scalable/apps/%rdnn-alert.svg +install -Dpm644 packaging/metadata/%rdnn-symbolic.svg %buildroot%_iconsdir/hicolor/symbolic/apps/%rdnn-symbolic.svg +install -Dpm644 packaging/metadata/%rdnn-symbolic-alert.svg %buildroot%_iconsdir/hicolor/symbolic/apps/%rdnn-symbolic-alert.svg +install -Dpm644 packaging/metadata/%rdnn.png %buildroot%_iconsdir/hicolor/256x256/apps/%rdnn.png +install -Dpm644 packaging/metadata/%rdnn-alert.png %buildroot%_iconsdir/hicolor/256x256/apps/%rdnn-alert.png for f in packaging/systemd/*.service; do install -Dpm644 $f %buildroot%_unitdir/$(basename $f) done @@ -115,7 +103,6 @@ install -Dpm644 packaging/metadata/%rdnn.metainfo.xml %buildroot%_metainfodir/%r %check appstream-util validate-relax --nonet %buildroot%_metainfodir/%rdnn.metainfo.xml -%pyproject_check_import %post -n coolercontrold @@ -127,17 +114,17 @@ appstream-util validate-relax --nonet %buildroot%_metainfodir/%rdnn.metainfo.xml %postun -n coolercontrold %systemd_postun_with_restart coolercontrold.service -# coolercontrold.service automatically uses the liqctld service, so there are -# no scriptlets for liqctld. - - %files %doc README.md +%doc CHANGELOG.md %license LICENSE %_bindir/coolercontrol %_datadir/applications/%rdnn.desktop %_datadir/metainfo/%rdnn.metainfo.xml -%_iconsdir/hicolor/*/apps/%rdnn.svg +%_iconsdir/hicolor/*/apps/%rdnn.* +%_iconsdir/hicolor/*/apps/%rdnn-alert.* +%_iconsdir/hicolor/*/apps/%rdnn-symbolic.svg +%_iconsdir/hicolor/*/apps/%rdnn-symbolic-alert.svg %files -n coolercontrold %doc coolercontrold/README.md @@ -146,12 +133,9 @@ appstream-util validate-relax --nonet %buildroot%_metainfodir/%rdnn.metainfo.xml %_bindir/coolercontrold %_unitdir/coolercontrold.service -%files liqctld -f %pyproject_files -%doc coolercontrol-liqctld/README.md -%license LICENSE -%_bindir/coolercontrol-liqctld -%_unitdir/coolercontrol-liqctld.service - %changelog +* Sat Feb 28 2026 Guy Boldon - 3.1.1-2 +- Updated dependencies and build to match current version + * Thu Aug 15 2024 madonuko - 1.4.0-1 - Initial package diff --git a/anda/apps/discord-canary-openasar/discord-canary-openasar.spec b/anda/apps/discord-canary-openasar/discord-canary-openasar.spec index c056283e77..00e00d274b 100644 --- a/anda/apps/discord-canary-openasar/discord-canary-openasar.spec +++ b/anda/apps/discord-canary-openasar/discord-canary-openasar.spec @@ -6,8 +6,8 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: discord-canary-openasar -Version: 0.0.854 -Release: 1%?dist +Version: 0.0.911 +Release: 1%{?dist} Summary: A snappier Discord rewrite with features like further customization and theming License: MIT AND https://discord.com/terms URL: https://github.com/GooseMod/OpenAsar diff --git a/anda/apps/discord-canary/discord-canary.spec b/anda/apps/discord-canary/discord-canary.spec index 8f44e11e2a..6b416a084e 100644 --- a/anda/apps/discord-canary/discord-canary.spec +++ b/anda/apps/discord-canary/discord-canary.spec @@ -6,8 +6,8 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: discord-canary -Version: 0.0.854 -Release: 1%?dist +Version: 0.0.911 +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 diff --git a/anda/apps/discord-openasar/discord-openasar.spec b/anda/apps/discord-openasar/discord-openasar.spec index 25782b29fe..f8a2654301 100644 --- a/anda/apps/discord-openasar/discord-openasar.spec +++ b/anda/apps/discord-openasar/discord-openasar.spec @@ -6,8 +6,8 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: discord-openasar -Version: 0.0.121 -Release: 1%?dist +Version: 0.0.129 +Release: 1%{?dist} Summary: A snappier Discord rewrite with features like further customization and theming License: MIT AND https://discord.com/terms URL: https://github.com/GooseMod/OpenAsar diff --git a/anda/apps/discord-ptb-openasar/discord-ptb-openasar.spec b/anda/apps/discord-ptb-openasar/discord-ptb-openasar.spec index 8a0a22bf6a..bb71ba236c 100644 --- a/anda/apps/discord-ptb-openasar/discord-ptb-openasar.spec +++ b/anda/apps/discord-ptb-openasar/discord-ptb-openasar.spec @@ -6,8 +6,8 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: discord-ptb-openasar -Version: 0.0.173 -Release: 1%?dist +Version: 0.0.182 +Release: 1%{?dist} Summary: A snappier Discord rewrite with features like further customization and theming License: MIT AND https://discord.com/terms URL: https://github.com/GooseMod/OpenAsar diff --git a/anda/apps/discord-ptb/discord-ptb.spec b/anda/apps/discord-ptb/discord-ptb.spec index 03aadffe54..798940c9d5 100644 --- a/anda/apps/discord-ptb/discord-ptb.spec +++ b/anda/apps/discord-ptb/discord-ptb.spec @@ -6,8 +6,8 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: discord-ptb -Version: 0.0.173 -Release: 1%?dist +Version: 0.0.182 +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 diff --git a/anda/apps/discord/discord.spec b/anda/apps/discord/discord.spec index c51a03c76f..4920bfbdcc 100644 --- a/anda/apps/discord/discord.spec +++ b/anda/apps/discord/discord.spec @@ -6,8 +6,8 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: discord -Version: 0.0.121 -Release: 1%?dist +Version: 0.0.129 +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 diff --git a/anda/apps/dorion/dorion.spec b/anda/apps/dorion/dorion.spec index 77f9588661..107e8d5b2f 100644 --- a/anda/apps/dorion/dorion.spec +++ b/anda/apps/dorion/dorion.spec @@ -1,8 +1,8 @@ %undefine __brp_mangle_shebangs Name: dorion -Version: 6.12.0 -Release: 1%?dist +Version: 6.12.2 +Release: 1%{?dist} Summary: Tiny alternative Discord client with a smaller footprint, snappier startup, themes, plugins and more! SourceLicense: GPL-3.0-only License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND ((MIT OR Apache-2.0) AND Unicode-3.0) AND 0BSD AND (0BSD OR MIT OR Apache-2.0) AND Apache-2.0 AND (Apache-2.0 AND ISC) AND (Apache-2.0 AND 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 (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-3-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 OR MIT OR Apache-2.0) AND CC0-1.0 AND (CC0-1.0 OR MIT-0 OR Apache-2.0) AND CDLA-Permissive-2.0 AND ISC AND MIT AND (MIT OR Apache-2.0) 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 Unicode-3.0 AND (Unlicense OR MIT) AND Zlib AND (Zlib OR Apache-2.0 OR MIT) diff --git a/anda/apps/envision/envision.spec b/anda/apps/envision/envision.spec index a3745de05e..185dd997f4 100644 --- a/anda/apps/envision/envision.spec +++ b/anda/apps/envision/envision.spec @@ -1,10 +1,10 @@ -%global commit b50c32d7c3e74af4faeb92fb0e8f49108d85ff90 -%global commit_date 20251211 +%global commit f036b357d54fa7c4ca33bcdb11c6cd06afd1dd80 +%global commit_date 20260308 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: envision-nightly Version: %commit_date.%shortcommit -Release: 1%?dist +Release: 1%{?dist} Summary: UI for building, configuring and running Monado, the open source OpenXR runtime SourceLicense: AGPL-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 AGPL-3.0-or-later 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 ISC AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND Unicode-3.0 AND (Unlicense OR MIT) AND Zlib diff --git a/anda/apps/falcond-gui/falcond-gui.spec b/anda/apps/falcond-gui/falcond-gui.spec index 0f14b027d5..ce7e7c0bee 100644 --- a/anda/apps/falcond-gui/falcond-gui.spec +++ b/anda/apps/falcond-gui/falcond-gui.spec @@ -1,6 +1,6 @@ Name: falcond-gui -Version: 1.0.1 -Release: 1%{?dist} +Version: 1.0.2 +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) diff --git a/anda/apps/feishin/feishin.spec b/anda/apps/feishin/feishin.spec index c1a4710c95..c06011ce24 100644 --- a/anda/apps/feishin/feishin.spec +++ b/anda/apps/feishin/feishin.spec @@ -6,8 +6,8 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: feishin -Version: 1.3.0 -Release: 1%?dist +Version: 1.9.0 +Release: 1%{?dist} Summary: A modern self-hosted music player License: GPL-3.0 URL: https://github.com/jeffvli/feishin diff --git a/anda/apps/flameshot/flameshot-nightly.spec b/anda/apps/flameshot/flameshot-nightly.spec index 67143ebca3..96174b6024 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 72a5afc31c2f3cd4dcd2e34da34c02dda272f25f +%global commit 3eb366e038838931bc98f66794e23339f467ed47 %global shortcommit %{sub %{commit} 1 7} -%global commit_date 20260121 +%global commit_date 20260315 %global devel_name QtColorWidgets %global _distro_extra_cflags -fuse-ld=mold %global _distro_extra_cxxflags -fuse-ld=mold diff --git a/anda/apps/flatpost/flatpost.spec b/anda/apps/flatpost/flatpost.spec index ddc7f53f25..bb4c516719 100644 --- a/anda/apps/flatpost/flatpost.spec +++ b/anda/apps/flatpost/flatpost.spec @@ -1,5 +1,5 @@ Name: flatpost -Version: 1.1.1 +Version: 1.2.0 Release: 1%?dist License: BSD-2-Clause Summary: Desktop environment agnostic Flathub software center. diff --git a/anda/apps/goofcord/nightly/goofcord-nightly.spec b/anda/apps/goofcord/nightly/goofcord-nightly.spec index cc81f6b5f2..5d9ce0d71d 100644 --- a/anda/apps/goofcord/nightly/goofcord-nightly.spec +++ b/anda/apps/goofcord/nightly/goofcord-nightly.spec @@ -1,14 +1,14 @@ -%global commit 73ece590b2efe9bc64fb472326e69d3d809c8b44 +%global commit 779d684b0f37775c8d4889d8b61a5d2db7925896 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260118 -%global ver 2.0.1^ +%global commit_date 20260315 +%global ver 2.1.1^ %global base_name goofcord %global git_name GoofCord %global appid io.github.milkshiift.GoofCord Name: %{base_name}-nightly Version: %{ver}%{commit_date}.git.%{shortcommit} -Release: 3%{?dist} +Release: 1%{?dist} License: OSL-3.0 Summary: A privacy-minded Legcord fork. Group: Applications/Internet diff --git a/anda/apps/goofcord/stable/goofcord.spec b/anda/apps/goofcord/stable/goofcord.spec index a2c50013f3..ac1813f643 100644 --- a/anda/apps/goofcord/stable/goofcord.spec +++ b/anda/apps/goofcord/stable/goofcord.spec @@ -2,8 +2,8 @@ %global appid io.github.milkshiift.GoofCord Name: goofcord -Version: 2.0.1 -Release: 2%{?dist} +Version: 2.1.1 +Release: 1%{?dist} License: OSL-3.0 Summary: A privacy-minded Legcord fork. Group: Applications/Internet @@ -19,7 +19,7 @@ Packager: Gilver E. A highly configurable and privacy minded Discord client. %prep -%autosetup -n %{git_name}-%{version} +%autosetup -p1 -n %{git_name}-%{version} %ifarch %{arm64} armv7hl armv7l sed -i '/\"x64\",/d' electron-builder.ts %endif diff --git a/anda/apps/gurk/anda.hcl b/anda/apps/gurk/anda.hcl new file mode 100644 index 0000000000..52c6ce5c81 --- /dev/null +++ b/anda/apps/gurk/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "gurk.spec" + } + labels { + sccache = 0 + } +} diff --git a/anda/apps/gurk/gurk.spec b/anda/apps/gurk/gurk.spec new file mode 100644 index 0000000000..d088ef6423 --- /dev/null +++ b/anda/apps/gurk/gurk.spec @@ -0,0 +1,40 @@ +%undefine __brp_mangle_shebangs + +Name: gurk +Version: 0.9.0 +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 +Source: %url/archive/refs/tags/v%version.tar.gz + +BuildRequires: cargo-rpm-macros >= 24 +BuildRequires: glibc-devel mold perl openssl-devel protobuf-devel +Requires: glibc libgcc sqlcipher +Provides: gurk-rs + +Packager: Owen Zimmerman + +%description +%{summary}. + +%prep +%autosetup -n gurk-rs-%{version} +%cargo_prep_online + +%build + +%install +export LC_ALL=C.UTF-8 +export LANG=C +%cargo_install +%{cargo_license_online} > LICENSE.dependencies + +%files +%doc README.md CHANGELOG.md +%license LICENSE-AGPL-3.0 +%{_bindir}/gurk + +%changelog +* Fri Feb 13 2026 Owen Zimmerman +- Initial commit diff --git a/anda/apps/gurk/update.rhai b/anda/apps/gurk/update.rhai new file mode 100644 index 0000000000..65a479ec17 --- /dev/null +++ b/anda/apps/gurk/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("boxdot/gurk-rs")); diff --git a/anda/apps/halloy/halloy.spec b/anda/apps/halloy/halloy.spec index 99fee577d3..0de5d3b8ce 100644 --- a/anda/apps/halloy/halloy.spec +++ b/anda/apps/halloy/halloy.spec @@ -4,7 +4,7 @@ %global crate halloy Name: halloy -Version: 2025.12 +Version: 2026.4 Release: 1%?dist Summary: An open-source IRC client written in Rust, with the Iced GUI library Packager: Yoong jin @@ -33,14 +33,13 @@ BuildRequires: pkgconfig(xcb) %cargo_build %install -%crate_install_bin +install -Dm755 target/rpm/halloy %{buildroot}%{_bindir}/halloy desktop-file-install assets/linux/%{appid}.desktop install -Dpm644 assets/linux/%{appid}.appdata.xml -t %{buildroot}%{_datadir}/metainfo mkdir -p %{buildroot}%{_datadir} cp -r assets/linux/icons -t %{buildroot}%{_datadir} -%cargo_license_summary_online %{cargo_license_online} > LICENSE.dependencies %if %{with check} diff --git a/anda/apps/helium-browser-bin/helium-browser-bin.spec b/anda/apps/helium-browser-bin/helium-browser-bin.spec index 4a474de7e4..d957cc7f85 100644 --- a/anda/apps/helium-browser-bin/helium-browser-bin.spec +++ b/anda/apps/helium-browser-bin/helium-browser-bin.spec @@ -11,8 +11,8 @@ %endif Name: helium-browser-bin -Version: 0.8.2.1 -Release: 2%?dist +Version: 0.10.5.1 +Release: 2%{?dist} Summary: Private, fast, and honest web browser based on Chromium URL: https://helium.computer @@ -21,15 +21,17 @@ License: GPL-3.0-only AND BSD-3-Clause Source0: https://github.com/imputnet/helium-linux/releases/download/%{version}/helium-%{version}-%{arch}_linux.tar.xz Source1: https://github.com/imputnet/helium-linux/archive/refs/tags/%{version}.tar.gz Source2: net.imput.helium.metainfo.xml +Source3: helium.desktop ExclusiveArch: x86_64 aarch64 -BuildRequires: terra-appstream-helper desktop-file-utils +BuildRequires: terra-appstream-helper +BuildRequires: desktop-file-utils Requires: xdg-utils Requires: liberation-fonts -Packager: Nadia P +Packager: Nadia P , Jaiden Riordan %description Private, fast, and honest web browser based on Chromium. @@ -39,20 +41,13 @@ Based on ungoogled-chromium with additional privacy and usability improvements. %autosetup -n helium-%{version}-%{arch}_linux tar --strip-components=1 -zxvf %{SOURCE1} -sed -i 's/Exec=helium\b/Exec=helium-browser-bin/g' helium.desktop - %build %install install -dm755 %{buildroot}%{_libdir}/%{name} cp -a * %{buildroot}%{_libdir}/%{name}/ -sed -i 's/exists_desktop_file || generate_desktop_file/true/' \ - %{buildroot}%{_libdir}/%{name}/chrome-wrapper - -install -Dm644 helium.desktop %{buildroot}%{_appsdir}/%{name}.desktop - -%__desktop_file_edit --set-icon=net.input.helium %{buildroot}%{_appsdir}/%{name}.desktop +%desktop_file_install %{S:3} install -Dm644 product_logo_256.png %{buildroot}%{_hicolordir}/256x256/apps/%{appid}.png @@ -60,49 +55,51 @@ rm -f %{buildroot}%{_libdir}/%{name}/helium.desktop rm -f %{buildroot}%{_libdir}/%{name}/product_logo_256.png install -dm755 %{buildroot}%{_bindir} -cat > %{buildroot}%{_bindir}/%{name} << EOF +cat > %{buildroot}%{_bindir}/%{name} << 'EOF' #!/bin/bash set -euo pipefail -XDG_CONFIG_HOME="\${XDG_CONFIG_HOME:-\"\$HOME/.config\"}" - +XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-"$HOME/.config"}" SYS_CONF="%{_sysconfdir}/helium-browser-flags.conf" -USR_CONF="\${XDG_CONFIG_HOME}/helium-browser-flags.conf" +USR_CONF="${XDG_CONFIG_HOME}/helium-browser-flags.conf" FLAGS=() append_flags_file() { - local file="\$1" - [[ -r "\$file" ]] || return 0 + local file="$1" + [[ -r "$file" ]] || return 0 local line safe_line while IFS= read -r line; do - [[ "\$line" =~ ^[[:space:]]*(#|\$) ]] && continue - case "\$line" in - *'\$('*|*'\`'*) - echo "Warning: ignoring unsafe line in \$file: \$line" >&2 + [[ "$line" =~ ^[[:space:]]*(#|$) ]] && continue + case "$line" in + *'$('*|*'`'*) + echo "Warning: ignoring unsafe line in $file: $line" >&2 continue ;; esac set -f - safe_line=\${line//\$/\\\\\$} - safe_line=\${safe_line//~/\\\\~} - eval "set -- \$safe_line" + safe_line=${line//$/\\$} + safe_line=${safe_line//~/\\~} + eval "set -- $safe_line" set +f - for token in "\$@"; do - FLAGS+=("\$token") + for token in "$@"; do + FLAGS+=("$token") done - done < "\$file" + done < "$file" } -append_flags_file "\$SYS_CONF" -append_flags_file "\$USR_CONF" +append_flags_file "$SYS_CONF" +append_flags_file "$USR_CONF" -if [[ -n "\${HELIUM_USER_FLAGS:-}" ]]; then - read -r -a ENV_FLAGS <<< "\$HELIUM_USER_FLAGS" - FLAGS+=("\${ENV_FLAGS[@]}") +if [[ -n "${HELIUM_USER_FLAGS:-}" ]]; then + read -r -a ENV_FLAGS <<< "$HELIUM_USER_FLAGS" + FLAGS+=("${ENV_FLAGS[@]}") fi -exec %{_libdir}/%{name}/chrome-wrapper "\${FLAGS[@]}" "\$@" +export CHROME_WRAPPER="$(readlink -f "$0")" +export CHROME_VERSION_EXTRA="stable" + +exec -a "$0" %{_libdir}/%{name}/chrome "${FLAGS[@]}" "$@" EOF chmod 755 %{buildroot}%{_bindir}/%{name} @@ -112,11 +109,15 @@ chmod 755 %{buildroot}%{_bindir}/%{name} %doc README.md %license LICENSE LICENSE.ungoogled_chromium %{_libdir}/%{name}/ -%{_bindir}/%{name} -%{_appsdir}/%{name}.desktop +# shebang reasons +%attr(0755,root,root) %{_bindir}/%{name} +%{_appsdir}/helium.desktop %{_hicolordir}/256x256/apps/%{appid}.png %{_metainfodir}/%{appid}.metainfo.xml %changelog +* Sun Feb 15 2026 Jaiden Rirordan +- Use downstream desktop file and recombobulate + * Wed Dec 03 2025 Nadia P - 0.6.9.1-1 - Initial package diff --git a/anda/apps/helium-browser-bin/helium.desktop b/anda/apps/helium-browser-bin/helium.desktop new file mode 100644 index 0000000000..ba8b588439 --- /dev/null +++ b/anda/apps/helium-browser-bin/helium.desktop @@ -0,0 +1,229 @@ +[Desktop Entry] +Version=1.0 +Name=Helium + +# For future reference, these translations are available in the Chromium +# tree at chrome/installer/linux/common/desktop.template. +# +# Only KDE 4 seems to use GenericName, so we reuse the KDE strings. +# From Ubuntu's language-pack-kde-XX-base packages, version 9.04-20090413. +GenericName=Web Browser +GenericName[ar]=متصفح الشبكة +GenericName[bg]=Уеб браузър +GenericName[ca]=Navegador web +GenericName[cs]=WWW prohlížeč +GenericName[da]=Browser +GenericName[de]=Web-Browser +GenericName[el]=Περιηγητής ιστού +GenericName[en_GB]=Web Browser +GenericName[es]=Navegador web +GenericName[et]=Veebibrauser +GenericName[fi]=WWW-selain +GenericName[fr]=Navigateur Web +GenericName[gu]=વેબ બ્રાઉઝર +GenericName[he]=דפדפן אינטרנט +GenericName[hi]=वेब ब्राउज़र +GenericName[hu]=Webböngésző +GenericName[it]=Browser Web +GenericName[ja]=ウェブブラウザ +GenericName[kn]=ಜಾಲ ವೀಕ್ಷಕ +GenericName[ko]=웹 브라우저 +GenericName[lt]=Žiniatinklio naršyklė +GenericName[lv]=Tīmekļa pārlūks +GenericName[ml]=വെബ് ബ്രൌസര്‍ +GenericName[mr]=वेब ब्राऊजर +GenericName[nb]=Nettleser +GenericName[nl]=Webbrowser +GenericName[pl]=Przeglądarka WWW +GenericName[pt]=Navegador Web +GenericName[pt_BR]=Navegador da Internet +GenericName[ro]=Navigator de Internet +GenericName[ru]=Веб-браузер +GenericName[sl]=Spletni brskalnik +GenericName[sv]=Webbläsare +GenericName[ta]=இணைய உலாவி +GenericName[th]=เว็บเบราว์เซอร์ +GenericName[tr]=Web Tarayıcı +GenericName[uk]=Веб-браузер +GenericName[zh_CN]=网页浏览器 +GenericName[zh_HK]=網頁瀏覽器 +GenericName[zh_TW]=網頁瀏覽器 +# Not translated in KDE, from Epiphany 2.26.1-0ubuntu1. +GenericName[bn]=ওয়েব ব্রাউজার +GenericName[fil]=Web Browser +GenericName[hr]=Web preglednik +GenericName[id]=Browser Web +GenericName[or]=ଓ୍ବେବ ବ୍ରାଉଜର +GenericName[sk]=WWW prehliadač +GenericName[sr]=Интернет прегледник +GenericName[te]=వెబ్ బ్రౌజర్ +GenericName[vi]=Bộ duyệt Web + +# Gnome and KDE 3 uses Comment. +Comment=Access the Internet +Comment[ar]=الدخول إلى الإنترنت +Comment[bg]=Достъп до интернет +Comment[bn]=ইন্টারনেটটি অ্যাক্সেস করুন +Comment[ca]=Accedeix a Internet +Comment[cs]=Přístup k internetu +Comment[da]=Få adgang til internettet +Comment[de]=Internetzugriff +Comment[el]=Πρόσβαση στο Διαδίκτυο +Comment[en_GB]=Access the Internet +Comment[es]=Accede a Internet. +Comment[et]=Pääs Internetti +Comment[fi]=Käytä internetiä +Comment[fil]=I-access ang Internet +Comment[fr]=Accéder à Internet +Comment[gu]=ઇંટરનેટ ઍક્સેસ કરો +Comment[he]=גישה אל האינטרנט +Comment[hi]=इंटरनेट तक पहुंच स्थापित करें +Comment[hr]=Pristup Internetu +Comment[hu]=Internetelérés +Comment[id]=Akses Internet +Comment[it]=Accesso a Internet +Comment[ja]=インターネットにアクセス +Comment[kn]=ಇಂಟರ್ನೆಟ್ ಅನ್ನು ಪ್ರವೇಶಿಸಿ +Comment[ko]=인터넷 연결 +Comment[lt]=Interneto prieiga +Comment[lv]=Piekļūt internetam +Comment[ml]=ഇന്റര്‍‌നെറ്റ് ആക്‌സസ് ചെയ്യുക +Comment[mr]=इंटरनेटमध्ये प्रवेश करा +Comment[nb]=Gå til Internett +Comment[nl]=Verbinding maken met internet +Comment[or]=ଇଣ୍ଟର୍ନେଟ୍ ପ୍ରବେଶ କରନ୍ତୁ +Comment[pl]=Skorzystaj z internetu +Comment[pt]=Aceder à Internet +Comment[pt_BR]=Acessar a internet +Comment[ro]=Accesaţi Internetul +Comment[ru]=Доступ в Интернет +Comment[sk]=Prístup do siete Internet +Comment[sl]=Dostop do interneta +Comment[sr]=Приступите Интернету +Comment[sv]=Gå ut på Internet +Comment[ta]=இணையத்தை அணுகுதல் +Comment[te]=ఇంటర్నెట్‌ను ఆక్సెస్ చెయ్యండి +Comment[th]=เข้าถึงอินเทอร์เน็ต +Comment[tr]=İnternet'e erişin +Comment[uk]=Доступ до Інтернету +Comment[vi]=Truy cập Internet +Comment[zh_CN]=访问互联网 +Comment[zh_HK]=連線到網際網路 +Comment[zh_TW]=連線到網際網路 + +Exec=helium-browser-bin %U +StartupNotify=true +StartupWMClass=helium +Terminal=false +Icon=net.imput.helium +Type=Application +Categories=Network;WebBrowser; +MimeType=application/pdf;application/rdf+xml;application/rss+xml;application/xhtml+xml;application/xhtml_xml;application/xml;image/gif;image/jpeg;image/png;image/webp;text/html;text/xml;x-scheme-handler/http;x-scheme-handler/https; +Actions=new-window;new-private-window; +X-Desktop-File-Install-Version=0.28 + +[Desktop Action new-window] +Name=New Window +Name[am]=አዲስ መስኮት +Name[ar]=نافذة جديدة +Name[bg]=Нов прозорец +Name[bn]=নতুন উইন্ডো +Name[ca]=Finestra nova +Name[cs]=Nové okno +Name[da]=Nyt vindue +Name[de]=Neues Fenster +Name[el]=Νέο Παράθυρο +Name[en_GB]=New Window +Name[es]=Nueva ventana +Name[et]=Uus aken +Name[fa]=پنجره جدید +Name[fi]=Uusi ikkuna +Name[fil]=New Window +Name[fr]=Nouvelle fenêtre +Name[gu]=નવી વિંડો +Name[hi]=नई विंडो +Name[hr]=Novi prozor +Name[hu]=Új ablak +Name[id]=Jendela Baru +Name[it]=Nuova finestra +Name[iw]=חלון חדש +Name[ja]=新規ウインドウ +Name[kn]=ಹೊಸ ವಿಂಡೊ +Name[ko]=새 창 +Name[lt]=Naujas langas +Name[lv]=Jauns logs +Name[ml]=പുതിയ വിന്‍ഡോ +Name[mr]=नवीन विंडो +Name[nl]=Nieuw venster +Name[no]=Nytt vindu +Name[pl]=Nowe okno +Name[pt]=Nova janela +Name[pt_BR]=Nova janela +Name[ro]=Fereastră nouă +Name[ru]=Новое окно +Name[sk]=Nové okno +Name[sl]=Novo okno +Name[sr]=Нови прозор +Name[sv]=Nytt fönster +Name[sw]=Dirisha Jipya +Name[ta]=புதிய சாளரம் +Name[te]=క్రొత్త విండో +Name[th]=หน้าต่างใหม่ +Name[tr]=Yeni Pencere +Name[uk]=Нове вікно +Name[vi]=Cửa sổ Mới +Name[zh_CN]=新建窗口 +Name[zh_TW]=開新視窗 +Exec=helium-browser-bin + +[Desktop Action new-private-window] +Name=New Incognito Window +Name[ar]=نافذة جديدة للتصفح المتخفي +Name[bg]=Нов прозорец „инкогнито“ +Name[bn]=নতুন ছদ্মবেশী উইন্ডো +Name[ca]=Finestra d'incògnit nova +Name[cs]=Nové anonymní okno +Name[da]=Nyt inkognitovindue +Name[de]=Neues Inkognito-Fenster +Name[el]=Νέο παράθυρο για ανώνυμη περιήγηση +Name[en_GB]=New Incognito window +Name[es]=Nueva ventana de incógnito +Name[et]=Uus inkognito aken +Name[fa]=پنجره جدید حالت ناشناس +Name[fi]=Uusi incognito-ikkuna +Name[fil]=Bagong Incognito window +Name[fr]=Nouvelle fenêtre de navigation privée +Name[gu]=નવી છુપી વિંડો +Name[hi]=नई गुप्त विंडो +Name[hr]=Novi anoniman prozor +Name[hu]=Új Inkognitóablak +Name[id]=Jendela Penyamaran baru +Name[it]=Nuova finestra di navigazione in incognito +Name[iw]=חלון חדש לגלישה בסתר +Name[ja]=新しいシークレット ウィンドウ +Name[kn]=ಹೊಸ ಅಜ್ಞಾತ ವಿಂಡೋ +Name[ko]=새 시크릿 창 +Name[lt]=Naujas inkognito langas +Name[lv]=Jauns inkognito režīma logs +Name[ml]=പുതിയ വേഷ പ്രച്ഛന്ന വിന്‍ഡോ +Name[mr]=नवीन गुप्त विंडो +Name[nl]=Nieuw incognitovenster +Name[no]=Nytt inkognitovindu +Name[pl]=Nowe okno incognito +Name[pt]=Nova janela de navegação anónima +Name[pt_BR]=Nova janela anônima +Name[ro]=Fereastră nouă incognito +Name[ru]=Новое окно в режиме инкогнито +Name[sk]=Nové okno inkognito +Name[sl]=Novo okno brez beleženja zgodovine +Name[sr]=Нови прозор за прегледање без архивирања +Name[sv]=Nytt inkognitofönster +Name[ta]=புதிய மறைநிலைச் சாளரம் +Name[te]=క్రొత్త అజ్ఞాత విండో +Name[th]=หน้าต่างใหม่ที่ไม่ระบุตัวตน +Name[tr]=Yeni Gizli pencere +Name[uk]=Нове вікно в режимі анонімного перегляду +Name[vi]=Cửa sổ ẩn danh mới +Name[zh_CN]=新建隐身窗口 +Name[zh_TW]=新增無痕式視窗 +Exec=helium-browser-bin --incognito diff --git a/anda/apps/juce/juce.spec b/anda/apps/juce/juce.spec index bbab72cfee..a99fbc23f1 100644 --- a/anda/apps/juce/juce.spec +++ b/anda/apps/juce/juce.spec @@ -1,6 +1,6 @@ Name: juce Version: 8.0.12 -Release: 2%{?dist} +Release: 3%{?dist} License: AGPL-3.0 Summary: framework for audio application and plug-in development URL: https://juce.com @@ -68,10 +68,7 @@ popd %license LICENSE.md %{_bindir}/juceaide %{_bindir}/juce_lv2_helper -%dir %{_libdir}/cmake/%{name} %{_libdir}/cmake/%{name}/* -%dir %{_datadir}/%{name} -%dir %{_datadir}/%{name}/modules %{_datadir}/%{name}/modules/* %files doc @@ -84,4 +81,3 @@ popd * Fri Dec 19 2025 metcya - 8.0.12 - Package juce - diff --git a/anda/apps/komikku/komikku.spec b/anda/apps/komikku/komikku.spec index 790f468352..1cb2125885 100644 --- a/anda/apps/komikku/komikku.spec +++ b/anda/apps/komikku/komikku.spec @@ -3,12 +3,12 @@ %global gtk4_version 4.14.4 %global libadwaita_version 1.5.1 %global pure_protobuf_version 2.0.0 -%global raw_ver v1.100.0 +%global raw_ver v1.105.0 Name: komikku -Version: 1.100.0 +Version: 1.105.0 %forgemeta -Release: 1%?dist +Release: 1%{?dist} Summary: A manga reader for GNOME BuildArch: noarch diff --git a/anda/desktops/mangowc/anda.hcl b/anda/apps/kopia/anda.hcl similarity index 51% rename from anda/desktops/mangowc/anda.hcl rename to anda/apps/kopia/anda.hcl index f3c97fc686..1773be8778 100644 --- a/anda/desktops/mangowc/anda.hcl +++ b/anda/apps/kopia/anda.hcl @@ -1,5 +1,5 @@ project pkg { rpm { - spec = "mangowc.spec" + spec = "kopia.spec" } } diff --git a/anda/apps/kopia/fix-electron-output-dir.patch b/anda/apps/kopia/fix-electron-output-dir.patch new file mode 100644 index 0000000000..d6d7377616 --- /dev/null +++ b/anda/apps/kopia/fix-electron-output-dir.patch @@ -0,0 +1,13 @@ +diff --git a/app/package.json b/app/package.json +index bd3a699a..df05befa 100644 +--- a/app/package.json ++++ b/app/package.json +@@ -45,7 +45,7 @@ + ], + "directories": { + "buildResources": "assets", +- "output": "../dist/kopia-ui" ++ "output": "./dist" + }, + "nsis": { + "oneClick": false, diff --git a/anda/apps/kopia/io.kopia.ui.desktop b/anda/apps/kopia/io.kopia.ui.desktop new file mode 100644 index 0000000000..0fe5a8ffff --- /dev/null +++ b/anda/apps/kopia/io.kopia.ui.desktop @@ -0,0 +1,7 @@ +[Desktop Entry] +Type=Application +Terminal=false +Name=KopiaUI +Comment=Fast and secure open-source backup/restore tool +Exec=kopia-ui +Icon=kopia diff --git a/anda/apps/kopia/io.kopia.ui.metainfo.xml b/anda/apps/kopia/io.kopia.ui.metainfo.xml new file mode 100644 index 0000000000..875b109407 --- /dev/null +++ b/anda/apps/kopia/io.kopia.ui.metainfo.xml @@ -0,0 +1,13 @@ + + KopiaUI + + A backup/restore tool that allows you to create encrypted snapshots + + + System + Network + + + kopia-ui + + diff --git a/anda/apps/kopia/kopia.spec b/anda/apps/kopia/kopia.spec new file mode 100644 index 0000000000..7d9ea4fef5 --- /dev/null +++ b/anda/apps/kopia/kopia.spec @@ -0,0 +1,84 @@ +%global appid io.kopia.ui +%global appstream_component desktop-application + +Name: kopia +%electronmeta -D +Version: 0.22.3 +Release: 1%{?dist} +Summary: A backup/restore tool that allows you to create encrypted snapshots + +License: Apache-2.0 AND CC0-1.0 AND %{electron_license} +URL: https://kopia.io/ +Source0: https://github.com/kopia/kopia/archive/v%{version}.tar.gz +Source1: io.kopia.ui.desktop +Source2: io.kopia.ui.metainfo.xml +Patch0: fix-electron-output-dir.patch +ExclusiveArch: %{golang_arches_future} +Packager: metcya + +BuildRequires: go-rpm-macros +BuildRequires: terra-appstream-helper + +%global gui_name %{name}-ui + +%package -n %{gui_name} +Summary: GUI for %{name} +Requires: %{name} = %{evr} +ExclusiveArch: %{electron_arches} + +%description +Kopia is a fast and secure open-source backup/restore tool that allows you to +create encrypted snapshots of your data and save the snapshots to remote or +cloud storage of your choice, to network-attached storage or server, or locally +on your machine. Kopia does not 'image' your whole machine. Rather, Kopia +allows you to backup/restore any and all files/directories that you deem are +important or critical. + +%description -n %{gui_name} +A graphical user interface for %{name}. + +%prep +%autosetup -p1 + +%build +%global gomodulesmode GO111MODULE=on +%gobuild -o %{name} . + +pushd app +%npm_build -B +popd + +%install +install -Dm 755 %{name} -t %{buildroot}%{_bindir} + +pushd app +%electron_install -b %{gui_name} -d %{gui_name} -s %{gui_name} -I ../icons +popd + +# the offical package for kopia-ui includes a bundled copy of the kopia binary +# but we'll just symlink it +mkdir -p %{buildroot}%{_libdir}/%{gui_name}/resources/server +%{__ln_s} %{_bindir}/%{name} %{buildroot}%{_libdir}/%{gui_name}/resources/server/%{name} + +%desktop_file_install %{S:1} + +%terra_appstream -o %{S:2} + +%check +%desktop_file_validate %{buildroot}%{_appsdir}/%{appid}.desktop + +%files +%license README.md +%doc LICENSE +%{_bindir}/%{name} + +%files -n %{gui_name} +%{_bindir}/%{gui_name} +%{_libdir}/%{gui_name}/ +%{_appsdir}/%{appid}.desktop +%{_metainfodir}/%{appid}.metainfo.xml +%{_hicolordir}/*/apps/kopia.png + +%changelog +* Thu Jan 22 2026 metcya - 0.22.3-1 +- Initial package diff --git a/anda/apps/kopia/update.rhai b/anda/apps/kopia/update.rhai new file mode 100644 index 0000000000..a36be96a92 --- /dev/null +++ b/anda/apps/kopia/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("kopia/kopia")); diff --git a/anda/apps/legcord/nightly/legcord-nightly.spec b/anda/apps/legcord/nightly/legcord-nightly.spec index 58546b721e..150f6e57c2 100644 --- a/anda/apps/legcord/nightly/legcord-nightly.spec +++ b/anda/apps/legcord/nightly/legcord-nightly.spec @@ -1,5 +1,5 @@ -%global commit 4ccb21b88c39a387701cf65d31330a7572abd45d -%global commit_date 20260120 +%global commit d8550b8ffa440e4db777700c43b6bd9a8e0ee08d +%global commit_date 20260318 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global debug_package %nil %global __strip /bin/true @@ -12,7 +12,7 @@ Name: legcord-nightly Version: %commit_date.%shortcommit -Release: 1%?dist +Release: 1%{?dist} License: OSL-3.0 Summary: Custom lightweight Discord client designed to enhance your experience URL: https://github.com/Legcord/Legcord diff --git a/anda/apps/legcord/stable/legcord.spec b/anda/apps/legcord/stable/legcord.spec index fdd011ef2e..1ebe509f14 100644 --- a/anda/apps/legcord/stable/legcord.spec +++ b/anda/apps/legcord/stable/legcord.spec @@ -9,7 +9,7 @@ %endif Name: legcord -Version: 1.1.6 +Version: 1.2.2 Release: 1%?dist License: OSL-3.0 Summary: Custom lightweight Discord client designed to enhance your experience diff --git a/anda/apps/moonshot/anda.hcl b/anda/apps/moonshot/anda.hcl new file mode 100644 index 0000000000..7b387f9379 --- /dev/null +++ b/anda/apps/moonshot/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "moonshot.spec" + } +} diff --git a/anda/apps/moonshot/com.fyralabs.moonshot.metainfo.xml b/anda/apps/moonshot/com.fyralabs.moonshot.metainfo.xml new file mode 100644 index 0000000000..74571ae640 --- /dev/null +++ b/anda/apps/moonshot/com.fyralabs.moonshot.metainfo.xml @@ -0,0 +1,50 @@ + + + com.fyralabs.moonshot + CC0-1.0 + GPL-3.0-or-later + /usr/share/icons/hicolor/512x512/apps/moonshot.png + + Moonshot + A beautiful cross-platform flashing tool + + + https://github.com/FyraLabs/moonshot/blob/main/build/screenshot.png + + + +

+ A beautiful cross-platform flashing tool. + Why? + + - Community frustration with existing flashing tools. + - We have unique ideas that we want to implement in the future, ex: selecting distro images from within the app. + - For fun. +

+
+ + moonshot.desktop + + https://github.com/FyraLabs/moonshot + https://github.com/FyraLabs/moonshot/issues + https://github.com/sponsors/FyraLabs + https://fyralabs.com/contact/ + + moonshot + + + + disk flashing + imaging + flashing tool + flasher + etcher + usb + sd card + + + + Fyra Labs + +
diff --git a/anda/apps/moonshot/moonshot.spec b/anda/apps/moonshot/moonshot.spec new file mode 100644 index 0000000000..7f78f7bca2 --- /dev/null +++ b/anda/apps/moonshot/moonshot.spec @@ -0,0 +1,56 @@ +%define debug_package %{nil} +%define appid com.fyralabs.moonshot + +Name: moonshot +Version: 1.0.2 +Release: 1%?dist +Summary: A beautiful cross-platform flashing tool +License: GPL-3.0-or-later +URL: https://github.com/FyraLabs/moonshot +Source0: %url/archive/refs/tags/v%version.tar.gz +Source1: com.fyralabs.moonshot.metainfo.xml + +BuildRequires: wails3 +BuildRequires: golang +BuildRequires: bun-bin +BuildRequires: pkgconfig(webkit2gtk-4.1) +BuildRequires: pkgconfig(gtk4) +BuildRequires: pkgconfig(webkitgtk-6.0) +BuildRequires: pkgconfig(gio-unix-2.0) +BuildRequires: pkgconfig(libsoup-3.0) + +Packager: Owen Zimmerman + +%description +%{summary}. +Why? + + - Community frustration with existing flashing tools. + - We have unique ideas that we want to implement in the future, ex: selecting distro images from within the app. + - For fun. + +%prep +%autosetup + +%build +%set_javascript_build_flags +EXTRA_TAGS=gtk4 wails3 build + +%install +install -Dm755 bin/moonshot %{buildroot}%{_bindir}/moonshot +install -Dm644 build/linux/moonshot.desktop %{buildroot}%{_appsdir}/%{appid}.desktop +install -Dm644 build/appicon.png %{buildroot}%{_hicolordir}/512x512/apps/moonshot.png + +%terra_appstream -o %{SOURCE1} + +%files +%doc README.md +%license LICENSE +%{_bindir}/moonshot +%{_appsdir}/%{appid}.desktop +%{_hicolordir}/512x512/apps/moonshot.png +%{_metainfodir}/com.fyralabs.moonshot.metainfo.xml + +%changelog +* Mon Mar 02 2026 Owen Zimmerman +- Initial commit diff --git a/anda/apps/moonshot/update.rhai b/anda/apps/moonshot/update.rhai new file mode 100644 index 0000000000..11a9be849e --- /dev/null +++ b/anda/apps/moonshot/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("FyraLabs/moonshot")); diff --git a/anda/apps/mpv/mpv-nightly.spec b/anda/apps/mpv/mpv-nightly.spec index c62df40193..8566562c09 100644 --- a/anda/apps/mpv/mpv-nightly.spec +++ b/anda/apps/mpv/mpv-nightly.spec @@ -1,14 +1,14 @@ # Disable X11 for RHEL 10+ %bcond x11 %[%{undefined rhel} || 0%{?rhel} < 10] -%global commit d6e7fb0597e9c832422e4c77225022bf4d3ff686 +%global commit 5f9e1bc7bd2f48744c57c9055f50b7bf24f32356 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260121 +%global commit_date 20260318 %global ver 0.41.0 Name: mpv-nightly Version: %ver^%commit_date.%shortcommit -Release: 1%?dist +Release: 1%{?dist} License: GPL-2.0-or-later AND LGPL-2.1-or-later Summary: Movie player playing most video formats and DVDs diff --git a/anda/apps/neohtop/com.github.neohtop.metainfo.xml b/anda/apps/neohtop/com.github.neohtop.metainfo.xml index 3838142372..665ce3842a 100644 --- a/anda/apps/neohtop/com.github.neohtop.metainfo.xml +++ b/anda/apps/neohtop/com.github.neohtop.metainfo.xml @@ -8,6 +8,10 @@ NeoHtop System monitoring on steroids + + https://github.com/Abdenasser/neohtop/blob/main/screenshot.png + +

A modern, cross-platform system monitor built on top of Svelte, Rust, and Tauri. diff --git a/anda/apps/neohtop/neohtop.spec b/anda/apps/neohtop/neohtop.spec index be5607c10b..bc1af0b9ea 100644 --- a/anda/apps/neohtop/neohtop.spec +++ b/anda/apps/neohtop/neohtop.spec @@ -1,13 +1,14 @@ -%global __brp_mangle_shebangs %{nil} +%undefine __brp_mangle_shebangs %global appid com.github.neohtop Name: neohtop Version: 1.2.0 -Release: 2%?dist +Release: 5%?dist Summary: System monitoring on steroids -License: MIT -URL: https://github.com/Abdenasser/neohtop -Source0: %url/archive/refs/tags/v%version.tar.gz +SourceLicense: MIT +License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) 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-3-Clause AND MIT) AND (BSD-3-Clause OR MIT OR Apache-2.0) AND (BSD-3-Clause OR MIT) AND BSD-3-Clause AND (CC0-1.0 OR MIT-0 OR Apache-2.0) 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 (Unlicense OR MIT) AND (Zlib OR Apache-2.0 OR MIT) +URL: https://abdenasser.github.io/neohtop/ +Source0: https://github.com/Abdenasser/neohtop/archive/refs/tags/v%version.tar.gz Source1: NeoHtop.desktop Source2: com.github.neohtop.metainfo.xml Packager: Owen Zimmerman @@ -35,8 +36,8 @@ Provides: NeoHtop %npm_build -B %install -install -Dpm755 src-tauri/target/release/NeoHtop %{buildroot}%{_bindir}/NeoHtop -install -Dpm644 %{SOURCE1} %{buildroot}%{_appsdir}/NeoHtop.desktop +install -Dpm755 src-tauri/target/rpm/NeoHtop %{buildroot}%{_bindir}/NeoHtop +%desktop_file_install %{SOURCE1} # don't mind the numbers not matching, this is how the offical rpm installs these files install -Dpm644 src-tauri/icons/128x128@2x.png %{buildroot}%{_hicolordir}/256x256@2/apps/NeoHtop.png install -Dpm644 src-tauri/icons/32x32.png %{buildroot}%{_hicolordir}/32x32/apps/NeoHtop.png @@ -44,12 +45,15 @@ install -Dpm644 src-tauri/icons/128x128.png %{buildroot}%{_hicolordir}/128x %terra_appstream -o %{SOURCE2} +%{tauri_cargo_license} > LICENSE.dependencies + %check -%__desktop_file_validate %{buildroot}%{_appsdir}/NeoHtop.desktop +%desktop_file_validate %{buildroot}%{_appsdir}/NeoHtop.desktop %files %doc README.md %license LICENSE +%license LICENSE.dependencies %{_bindir}/NeoHtop %{_appsdir}/NeoHtop.desktop %{_hicolordir}/256x256@2/apps/NeoHtop.png @@ -59,7 +63,7 @@ install -Dpm644 src-tauri/icons/128x128.png %{buildroot}%{_hicolordir}/128x %changelog * Wed Dec 24 2025 Owen Zimmerman -- Clean up build, add %check +- Clean up build, add %check * Wed Nov 19 2025 Owen Zimmerman - Add metainfo * Sat Feb 15 2025 Owen Zimmerman diff --git a/anda/apps/opensnitch/opensnitch.spec b/anda/apps/opensnitch/opensnitch.spec index 981612ce2b..526c4a597e 100644 --- a/anda/apps/opensnitch/opensnitch.spec +++ b/anda/apps/opensnitch/opensnitch.spec @@ -4,7 +4,7 @@ # https://github.com/evilsocket/opensnitch %global goipath github.com/evilsocket/opensnitch -Version: 1.7.0.0 +Version: 1.8.0 %gometa -f @@ -20,7 +20,7 @@ Snitch.} utils/packaging/ui/deb/debian/changelog Name: opensnitch -Release: %autorelease +Release: 1%{?dist} Summary: OpenSnitch is a GNU/Linux interactive application firewall inspired by Little Snitch License: GPL-3.0-only AND LGPL-2.1-or-later @@ -36,8 +36,7 @@ BuildRequires: python3dist(pyqt5) BuildRequires: /usr/bin/lrelease-qt5 BuildRequires: protobuf-compiler BuildRequires: pkgconfig(libnetfilter_queue) -#BuildRequires: protoc-gen-go -#BuildRequires: /usr/bin/protoc-gen-go-grpc +BuildRequires: qt6-linguist %description %{common_description} @@ -46,7 +45,6 @@ BuildRequires: pkgconfig(libnetfilter_queue) %prep %goprep -A -%autopatch -p1 export GOBIN=$(go env GOPATH | sed -E 's/:.+$//')/bin echo $GOBIN > %_builddir/gobin @@ -83,26 +81,15 @@ popd install -Dm755 opensnitchd -t %buildroot%_bindir pushd ui -%if 0%{?fedora} <= 41 -%py3_install -%else %pyproject_install %pyproject_save_files %name -%endif popd rm -rf %buildroot%python3_sitelib/tests/ cp -r %buildroot%python3_sitelib%_usr/ %buildroot%_usr/ --preserve=all --no-target-directory rm -rf %buildroot%python3_sitelib%_usr - -%if 0%{?fedora} <= 41 -%files -%{python3_sitelib}/%name/ -%{python3_sitelib}/%name-%{version}-py%{python3_version}.egg-info/ -%else %files -f %{pyproject_files} -%endif %license LICENSE %doc README.md %_bindir/opensnitch-ui @@ -113,7 +100,10 @@ rm -rf %buildroot%python3_sitelib%_usr %_iconsdir/hicolor/scalable/apps/opensnitch-ui.svg %_datadir/kservices5/kcm_opensnitch.desktop %_metainfodir/io.github.evilsocket.opensnitch.appdata.xml - -/usr/share/icons/hicolor/scalable/apps/opensnitch-ui.svg +%_scalableiconsdir/opensnitch-ui.svg %gopkgfiles + +%changelog +* Mon Mar 16 2026 Owen Zimmerman +- Fix build, clean up spec diff --git a/anda/apps/opensnitch/update.rhai b/anda/apps/opensnitch/update.rhai index e69de29bb2..def95f43fc 100644 --- a/anda/apps/opensnitch/update.rhai +++ b/anda/apps/opensnitch/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("evilsocket/opensnitch")); diff --git a/anda/apps/opentrack/anda.hcl b/anda/apps/opentrack/anda.hcl new file mode 100644 index 0000000000..3d67e7a597 --- /dev/null +++ b/anda/apps/opentrack/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "opentrack.spec" + } +} diff --git a/anda/apps/opentrack/com.github.opentrack.desktop b/anda/apps/opentrack/com.github.opentrack.desktop new file mode 100644 index 0000000000..0809ab5008 --- /dev/null +++ b/anda/apps/opentrack/com.github.opentrack.desktop @@ -0,0 +1,8 @@ +[Desktop Entry] +Type=Application +Name=Opentrack +Comment=Head tracking for games and simulation +Exec=opentrack +Icon=opentrack +Terminal=false +Categories=Game;Settings; diff --git a/anda/apps/opentrack/com.github.opentrack.metainfo.xml b/anda/apps/opentrack/com.github.opentrack.metainfo.xml new file mode 100644 index 0000000000..c65352384d --- /dev/null +++ b/anda/apps/opentrack/com.github.opentrack.metainfo.xml @@ -0,0 +1,30 @@ + + + com.github.opentrack + CC0-1.0 + ISC AND BSD-3-Clause AND BSD-2-Clause AND LGPL-2.1-only AND GPL-3.0-only AND LGPL-2.1-or-later AND MIT AND LGPL-3.0-or-later + /usr/share/icons/hicolor/256x256/apps/opentrack.png + + opentrack +

Head tracking software for MS Windows, Linux, and Apple OSX + + +

+ opentrack is a program for tracking user's head rotation and transmitting it to flight simulation software and military-themed video games. +

+
+ + com.github.opentrack.desktop + + https://github.com/opentrack/opentrack + + opentrack + + + + head tracking + tracking + body tracking + + diff --git a/anda/apps/opentrack/fix-qt6-resolve.patch b/anda/apps/opentrack/fix-qt6-resolve.patch new file mode 100644 index 0000000000..a24465e12c --- /dev/null +++ b/anda/apps/opentrack/fix-qt6-resolve.patch @@ -0,0 +1,13 @@ +diff --git a/tracker-neuralnet/env.cpp b/tracker-neuralnet/env.cpp +index 563c9c1..21b1d58 100644 +--- a/tracker-neuralnet/env.cpp ++++ b/tracker-neuralnet/env.cpp +@@ -20,7 +20,7 @@ void NeuralNetTracker::maybe_load_onnxruntime_dynamically() + std::abort(); + } + +- void* fn_OrtGetApiBase = lib.resolve("OrtGetApiBase"); ++ void* fn_OrtGetApiBase = reinterpret_cast(lib.resolve("OrtGetApiBase")); + if (!fn_OrtGetApiBase) + { + qDebug().nospace() << "tracker/nn: can't find OrtGetApiBase in onnxruntime: " << lib.errorString() << ". now crashing."; diff --git a/anda/apps/opentrack/opentrack.spec b/anda/apps/opentrack/opentrack.spec new file mode 100644 index 0000000000..9779cdd024 --- /dev/null +++ b/anda/apps/opentrack/opentrack.spec @@ -0,0 +1,116 @@ +%global debug_package %{nil} +%global openvr_ver 2.12.14 +%global appid com.github.opentrack +%global ver opentrack-2026.1.0 +%global sanitized_ver %(echo %{ver} | sed 's/opentrack\-//') + +Name: opentrack +Version: %{sanitized_ver} +Release: 1%{?dist} +Summary: Head tracking software for MS Windows, Linux, and Apple OSX + +License: ISC AND BSD-3-Clause AND BSD-2-Clause AND LGPL-2.1-only AND GPL-3.0-only AND LGPL-2.1-or-later AND MIT AND LGPL-3.0-or-later +URL: https://github.com/%{name}/%{name} +Source0: %{url}/archive/refs/tags/%{name}-%{version}.tar.gz +Source1: https://github.com/ValveSoftware/openvr/archive/refs/tags/v%{openvr_ver}.tar.gz +Source2: %{appid}.desktop +Source3: %{appid}.metainfo.xml + +Patch0: fix-qt6-resolve.patch + +ExcludeArch: %{ix86} + +BuildRequires: cmake +BuildRequires: gcc-c++ +BuildRequires: faust +BuildRequires: faust-osclib-devel +BuildRequires: libevdev-devel +BuildRequires: librealsense-devel +BuildRequires: libX11-devel +BuildRequires: libXtst-devel +BuildRequires: ninja-build +BuildRequires: onnxruntime-devel +BuildRequires: opencv-devel +BuildRequires: procps-ng-devel +BuildRequires: qt6-qt5compat-devel +BuildRequires: qt6-qtbase-devel +BuildRequires: qt6-qtbase-private-devel +BuildRequires: qt6-qtserialport-devel +BuildRequires: qt6-qttools-devel +BuildRequires: terra-wine-staging +BuildRequires: wine-staging-devel + +Requires: qt6-qtbase +Requires: qt6-qt5compat +Requires: qt6-qtserialport +Requires: opencv +Requires: faust-osclib +Requires: onnxruntime + +Packager: Owen Zimmerman + +%description +opentrack is a program for tracking user's head rotation and transmitting it to flight simulation software and military-themed video games. + +%prep +%autosetup -n %{name}-%{name}-%{version} -p1 +tar -xf %{SOURCE1} + +# Rename the OpenVR license so we can include it in the RPM +cp openvr-%{openvr_ver}/LICENSE LICENSE-OpenVR + +mkdir -p external-include/include/oscpack/osc +mkdir -p external-include/lib +ln -s /usr/include/faust/osc/*.h external-include/include/oscpack/osc/ +ln -s /usr/share/faust/osclib/oscpack/osc/*.h external-include/include/oscpack/osc/ +ln -s /usr/lib/libOSCFaust.so external-include/lib/liboscpack.so + +%build +%cmake -G Ninja \ + -DCMAKE_BUILD_TYPE=Release \ + -DSDK_HIERARCHY=ON \ + -DSDK_WINE=ON \ + -DSDK_LIBDIR=%{_lib}/%{name} \ + -DSDK_PLUGINDIR=%{_lib}/%{name} \ + -DSDK_OSCPACK=$PWD/external-include \ + -DSDK_ONNX=ON \ + -DONNXRuntime_DIR=%{_libdir} \ + -DONNXRuntime_INCLUDE_DIRS=%{_includedir}/onnxruntime \ + -DSDK_OPENCV=ON \ + -DSDK_VALVE_STEAMVR=$PWD/openvr-%{openvr_ver} \ + -DOPENCV_PREFIX=%{_prefix} + +%cmake_build + +%install +%cmake_install + +mkdir -p %{buildroot}%{_libdir}/%{name} +install -Dm755 openvr-%{openvr_ver}/bin/linux64/libopenvr_api.so %{buildroot}%{_libdir}/%{name}/ + +install -Dm644 gui/images/opentrack.png %{buildroot}%{_hicolordir}/256x256/apps/opentrack.png + +%desktop_file_install %{S:2} + +%terra_appstream -o %{S:3} + +%check +%desktop_file_validate %{buildroot}%{_appsdir}/%{appid}.desktop + +%files +%doc %{_datadir}/doc/%{name}/ +%license OPENTRACK-LICENSING.txt WARRANTY.txt LICENSE-OpenVR 3rdparty-notices/ +%{_bindir}/%{name} +%{_libexecdir}/%{name}/ +%{_libdir}/%{name}/libopenvr_api.so +%{_datadir}/%{name}/ +%{_datadir}/applications/%{appid}.desktop +%{_hicolordir}/256x256/apps/opentrack.png +%{_metainfodir}/%{appid}.metainfo.xml + +%changelog +* Sun Mar 15 2026 Owen Zimmerman - 2026.1.0-1 +- Port to Terra + +* Wed Mar 11 2026 LionHeartP - 2026.1.0-1 +- Initial Nobara package diff --git a/anda/apps/opentrack/update.rhai b/anda/apps/opentrack/update.rhai new file mode 100644 index 0000000000..876930473a --- /dev/null +++ b/anda/apps/opentrack/update.rhai @@ -0,0 +1 @@ +rpm.global("ver", gh("opentrack/opentrack")); diff --git a/anda/apps/peazip/peazip.spec b/anda/apps/peazip/peazip.spec index 839f14b34d..649a3e5789 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.8.0 -Release: 3%?dist +Version: 10.9.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 fb2085d880..276c836e63 100644 --- a/anda/apps/proton-vpn/proton-vpn.spec +++ b/anda/apps/proton-vpn/proton-vpn.spec @@ -1,6 +1,6 @@ Name: proton-vpn-gtk-app -Version: 4.13.1 -Release: 1%?dist +Version: 4.15.0 +Release: 1%{?dist} Summary: Official ProtonVPN Linux app License: GPL-3.0-only URL: https://protonvpn.com/download-linux @@ -27,6 +27,7 @@ Requires: python3-gobject Requires: python3-dbus Requires: python3-packaging Requires: python3-proton-vpn-api-core +Requires: python3-proton-core >= 0.7.0 Requires: librsvg2 Provides: protonvpn diff --git a/anda/apps/protontricks/protontricks.spec b/anda/apps/protontricks/protontricks.spec index 35b17794db..4bd36d7ab3 100644 --- a/anda/apps/protontricks/protontricks.spec +++ b/anda/apps/protontricks/protontricks.spec @@ -2,7 +2,7 @@ %global pypi_name protontricks Name: terra-%{pypi_name} -Version: 1.13.1 +Version: 1.14.0 Release: 1%?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 6ccda7c06c..11f64a5fb3 100644 --- a/anda/apps/rasputin/rasputin.spec +++ b/anda/apps/rasputin/rasputin.spec @@ -1,5 +1,5 @@ -%global commit c100a03bb39a52c0829fbd9e266a57a4aa2940dd -%global commit_date 20260110 +%global commit 605d9dd8c825b650deeaa614e1b83e8dbb41e87d +%global commit_date 20260128 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: rasputin diff --git a/anda/apps/rp-appset/rp-appset.spec b/anda/apps/rp-appset/rp-appset.spec index 85d010501c..8439da0659 100644 --- a/anda/apps/rp-appset/rp-appset.spec +++ b/anda/apps/rp-appset/rp-appset.spec @@ -1,5 +1,5 @@ -%global commit c100a03bb39a52c0829fbd9e266a57a4aa2940dd -%global commit_date 20260110 +%global commit 605d9dd8c825b650deeaa614e1b83e8dbb41e87d +%global commit_date 20260128 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: appset diff --git a/anda/apps/rpcc/rpcc.spec b/anda/apps/rpcc/rpcc.spec index 5fd146cddf..58bf36a020 100644 --- a/anda/apps/rpcc/rpcc.spec +++ b/anda/apps/rpcc/rpcc.spec @@ -1,5 +1,5 @@ -%global commit 9527e92f697ad380ce8669a2b6c61260abafab19 -%global commit_date 20251126 +%global commit 353e04bf0bc1866cba1f599cd76050890d33ba23 +%global commit_date 20260123 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: rpcc diff --git a/anda/apps/rpinters/rpinters.spec b/anda/apps/rpinters/rpinters.spec index 02698a7eb1..6435280952 100644 --- a/anda/apps/rpinters/rpinters.spec +++ b/anda/apps/rpinters/rpinters.spec @@ -1,5 +1,5 @@ -%global commit 1815ad67432803843058a3cf7eefbf376e9c02c9 -%global commit_date 20251029 +%global commit 0fee3911afdaabbdcf4e8214e3472198a1c0c9db +%global commit_date 20260304 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: rpinters diff --git a/anda/apps/ruffle/ruffle-nightly.spec b/anda/apps/ruffle/ruffle-nightly.spec index cc663ed914..7b67bf7896 100644 --- a/anda/apps/ruffle/ruffle-nightly.spec +++ b/anda/apps/ruffle/ruffle-nightly.spec @@ -1,4 +1,4 @@ -%global ver 2026-01-21 +%global ver 2026-03-19 %global goodver %(echo %ver | sed 's/-//g') %global __brp_mangle_shebangs %{nil} %bcond_without mold @@ -9,7 +9,7 @@ language. Ruffle targets both the desktop and the web using WebAssembly.} Name: ruffle-nightly Version: %goodver -Release: 1%?dist +Release: 1%{?dist} Summary: A Flash Player emulator written in Rust License: Apache-2.0 OR MIT URL: https://ruffle.rs/ diff --git a/anda/apps/rustnet/rustnet.spec b/anda/apps/rustnet/rustnet.spec index d91811d4c9..bdd6e17249 100644 --- a/anda/apps/rustnet/rustnet.spec +++ b/anda/apps/rustnet/rustnet.spec @@ -1,5 +1,5 @@ Name: rustnet -Version: 0.18.0 +Version: 1.1.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/signal-desktop/org.signal.Signal.metainfo.xml b/anda/apps/signal-desktop/org.signal.Signal.metainfo.xml new file mode 100644 index 0000000000..510baf6ffb --- /dev/null +++ b/anda/apps/signal-desktop/org.signal.Signal.metainfo.xml @@ -0,0 +1,38 @@ + + + org.signal.Signal + Signal Desktop + AGPL-3.0-only + /usr/share/icons/hicolor/1024x1024/apps/signal.png + + Signal Foundation + + A private messenger for Windows, macOS, and Linux + CC0-1.0 + https://signal.org/ + https://support.signal.org/ + https://signal.org/donate/ + https://github.com/signalapp/Signal-Desktop/blob/main/CONTRIBUTING.md + org.signal.Signal.desktop + +

+ Signal Desktop links with Signal on Android or iOS and lets you message from your Windows, macOS, and Linux computers. +

+
+ + signal-desktop + + + signal + + + + https://web.archive.org/web/20240219132433if_/https://signal.org/assets/images/screenshots/download-desktop-windows.png + Typical view of the window (Windows version) + + +
diff --git a/anda/apps/signal-desktop/signal-desktop.spec b/anda/apps/signal-desktop/signal-desktop.spec index a9258c9513..d30ad3b358 100644 --- a/anda/apps/signal-desktop/signal-desktop.spec +++ b/anda/apps/signal-desktop/signal-desktop.spec @@ -1,45 +1,25 @@ -#? https://gitlab.archlinux.org/archlinux/packaging/packages/signal-desktop/-/blob/main/PKGBUILD -%define debug_package %{nil} - -# Make electron_license macro properly work -%bcond bundled_electron 1 - -# Exclude private libraries -%global __requires_exclude libffmpeg.so -%global __provides_exclude ^lib.*\\.so.*$ - -%ifarch x86_64 -%define arch %{nil} -%elifarch aarch64 -%define arch arm64- -%endif +%define appid org.signal.Signal Name: signal-desktop -Version: 7.85.0 -Release: 1%?dist +%electronmeta -aD +Version: 8.2.1 +Release: 1%{?dist} Summary: A private messenger for Windows, macOS, and Linux URL: https://signal.org Source0: https://github.com/signalapp/Signal-Desktop/archive/refs/tags/v%{version}.tar.gz -# signal.desktop from https://github.com/signalflatpak/signal/blob/master/org.signal.Signal.desktop Source1: signal.desktop -License: AGPL-3.0 AND %{electron_license} -ExclusiveArch: x86_64 aarch64 +Source2: org.signal.Signal.metainfo.xml +License: AGPL-3.0-only AND %{electron_license} -BuildRequires: pulseaudio-libs-devel +BuildRequires: pulseaudio-libs-devel BuildRequires: libX11-devel -BuildRequires: git-lfs -BuildRequires: git-core +BuildRequires: git-lfs BuildRequires: anda-srpm-macros -BuildRequires: pnpm -BuildRequires: gcc -BuildRequires: gcc-c++ -BuildRequires: git-core -BuildRequires: make -BuildRequires: nodejs -BuildRequires: nodejs-npm +BuildRequires: pnpm BuildRequires: python3 +BuildRequires: terra-appstream-helper +BuildRequires: nodejs-full-i18n -Requires: gtk3 Requires: libwayland-cursor Requires: libwayland-client Requires: libxkbcommon @@ -58,27 +38,19 @@ Requires: cairo Requires: xz-libs Requires: libxcb Requires: nss-util -Requires: nss Requires: dbus-libs Requires: mesa-libgbm Requires: at-spi2-atk Requires: expat Requires: alsa-lib -Requires: xdg-utils -Requires: re2 -Requires: (libXtst or libXtst6) -Requires: libXScrnSaver -Requires: libnotify -Requires: (libuuid or libuuid1) -Requires: at-spi2-core -Requires: c-ares -Requires: gtk3 Requires: minizip Provides: signal Provides: Signal Provides: Signal-Desktop +Packager: junefish + %description Signal Desktop links with Signal on Android or iOS and lets you message from your Windows, macOS, and Linux computers. @@ -86,72 +58,51 @@ Signal Desktop links with Signal on Android or iOS and lets you message from you %autosetup -n Signal-Desktop-%{version} %build -pnpm install --frozen-lockfile +export SIGNAL_ENV=production +%{__pnpm} install --frozen-lockfile +%{__pnpm} run clean-transpile pushd sticker-creator -pnpm install --frozen-lockfile -pnpm build +%{__pnpm} install --frozen-lockfile +%{__pnpm} run build popd -pnpm run build-linux --dir +%pnpm_build -r generate,prepare-beta-build %install -install -Dm755 release/linux-%{arch}unpacked/libEGL.so %{buildroot}%{_libdir}/signal-desktop/libEGL.so -install -Dm755 release/linux-%{arch}unpacked/libGLESv2.so %{buildroot}%{_libdir}/signal-desktop/libGLESv2.so -install -Dm755 release/linux-%{arch}unpacked/libffmpeg.so %{buildroot}%{_libdir}/signal-desktop/libffmpeg.so -install -Dm755 release/linux-%{arch}unpacked/libvk_swiftshader.so %{buildroot}%{_libdir}/signal-desktop/libvk_swiftshader.so -install -Dm755 release/linux-%{arch}unpacked/libvulkan.so.1 %{buildroot}%{_libdir}/signal-desktop/libvulkan.so.1 -install -Dm644 release/linux-%{arch}unpacked/icudtl.dat %{buildroot}%{_libdir}/signal-desktop/icudtl.dat -install -Dm644 release/linux-%{arch}unpacked/v8_context_snapshot.bin %{buildroot}%{_libdir}/signal-desktop/v8_context_snapshot.bin -install -Dm644 release/linux-%{arch}unpacked/chrome_100_percent.pak %{buildroot}%{_libdir}/signal-desktop/chrome_100_percent.pak -install -Dm644 release/linux-%{arch}unpacked/chrome_200_percent.pak %{buildroot}%{_libdir}/signal-desktop/chrome_200_percent.pak -install -Dm644 release/linux-%{arch}unpacked/resources.pak %{buildroot}%{_libdir}/signal-desktop/resources.pak -install -Dm644 release/linux-%{arch}unpacked/vk_swiftshader_icd.json %{buildroot}%{_libdir}/signal-desktop/vk_swiftshader_icd.json -install -Dm644 release/linux-%{arch}unpacked/resources/app.asar %{buildroot}%{_libdir}/signal-desktop/resources/app.asar -cp -r release/linux-%{arch}unpacked/resources/app.asar.unpacked %{buildroot}%{_libdir}/signal-desktop/resources/ +%electron_install -i signal -l -I build/icons/png -install -Dm755 release/linux-%{arch}unpacked/chrome-sandbox %{buildroot}%{_libdir}/signal-desktop/chrome-sandbox -install -Dm755 release/linux-%{arch}unpacked/chrome_crashpad_handler %{buildroot}%{_libdir}/signal-desktop/chrome_crashpad_handler +%desktop_file_install %{SOURCE1} -install -Dm755 release/linux-%{arch}unpacked/signal-desktop %{buildroot}%{_libdir}/signal-desktop/signal-desktop +for policy in org.signalapp.view-aep.policy org.signalapp.enable-backups.policy; do +install -Dm644 $OUTDIR/resources/$policy %{buildroot}%{_datadir}/polkit-1/rules.d/$policy +rm $OUTDIR/resources/$policy +done -install -Dm644 release/linux-%{arch}unpacked/resources/org.signalapp.view-aep.policy %{buildroot}%{_datadir}/polkit-1/rules.d/org.signalapp.view-aep.policy -install -Dm644 release/linux-%{arch}unpacked/resources/org.signalapp.enable-backups.policy %{buildroot}%{_datadir}/polkit-1/rules.d/org.signalapp.enable-backups.policy +%terra_appstream -o %{SOURCE2} -install -Dm644 build/icons/png/1024x1024.png %{buildroot}%{_iconsdir}/hicolor/1024x1024/apps/signal.png -install -Dm644 build/icons/png/128x128.png %{buildroot}%{_iconsdir}/hicolor/128x128/apps/signal.png -install -Dm644 build/icons/png/16x16.png %{buildroot}%{_iconsdir}/hicolor/16x16/apps/signal.png -install -Dm644 build/icons/png/24x24.png %{buildroot}%{_iconsdir}/hicolor/24x24/apps/signal.png -install -Dm644 build/icons/png/256x256.png %{buildroot}%{_iconsdir}/hicolor/256x256/apps/signal.png -install -Dm644 build/icons/png/32x32.png %{buildroot}%{_iconsdir}/hicolor/32x32/apps/signal.png -install -Dm644 build/icons/png/48x48.png %{buildroot}%{_iconsdir}/hicolor/48x48/apps/signal.png -install -Dm644 build/icons/png/512x512.png %{buildroot}%{_iconsdir}/hicolor/512x512/apps/signal.png -install -Dm644 build/icons/png/64x64.png %{buildroot}%{_iconsdir}/hicolor/64x64/apps/signal.png - -install -Dm644 %{SOURCE1} %{buildroot}%{_datadir}/applications/signal.desktop -mkdir -p %{buildroot}%{_bindir} -ln -s %{_libdir}/signal-desktop/signal-desktop %{buildroot}%{_bindir}/signal-desktop +%check +%desktop_file_validate %{buildroot}%{_appsdir}/signal.desktop %files %license LICENSE %doc README.md CONTRIBUTING.md ACKNOWLEDGMENTS.md -%license release/linux-%{arch}unpacked/LICENSE.electron.txt -%license release/linux-%{arch}unpacked/LICENSES.chromium.html +%license bundled_licenses/* %{_bindir}/signal-desktop %{_libdir}/signal-desktop/ %{_datadir}/polkit-1/rules.d/org.signalapp.view-aep.policy %{_datadir}/polkit-1/rules.d/org.signalapp.enable-backups.policy -%{_datadir}/applications/signal.desktop -%{_iconsdir}/hicolor/1024x1024/apps/signal.png -%{_iconsdir}/hicolor/128x128/apps/signal.png -%{_iconsdir}/hicolor/16x16/apps/signal.png -%{_iconsdir}/hicolor/24x24/apps/signal.png -%{_iconsdir}/hicolor/256x256/apps/signal.png -%{_iconsdir}/hicolor/32x32/apps/signal.png -%{_iconsdir}/hicolor/48x48/apps/signal.png -%{_iconsdir}/hicolor/512x512/apps/signal.png -%{_iconsdir}/hicolor/64x64/apps/signal.png +%{_appsdir}/signal.desktop +%{_hicolordir}/*x*/apps/signal.png +%{_metainfodir}/org.signal.Signal.metainfo.xml %changelog +* Mon Dec 22 2025 Owen Zimmerman +- Use more electron macros, correct build failures + +* Wed Dec 10 2025 Owen Zimmerman +- Add metainfo + * Tue Nov 11 2025 Owen Zimmerman - Add more Requires:, fix electron_license macro application, fix some formatting + * Fri Aug 8 2025 june-fish - Initial Package diff --git a/anda/apps/snow/com.github.snow.metainfo.xml b/anda/apps/snow/com.github.snow.metainfo.xml deleted file mode 100644 index 3e858280ca..0000000000 --- a/anda/apps/snow/com.github.snow.metainfo.xml +++ /dev/null @@ -1,33 +0,0 @@ - - - com.github.snow - CC0-1.0 - MIT - /usr/share/icons/hicolor/1024x1024/apps/snow_icon.png - - snow - Classic Macintosh emulator - - -

- Snow emulates classic (Motorola 68k-based) Macintosh computers. - It features a graphical user interface to operate and debug the emulated machine. - The aim of this project is to emulate the Macintosh on a hardware-level as much as possible, - as opposed to emulators that patch the ROM or intercept system calls. -

-
- - snow.desktop - - https://github.com/twvd/snow - - - macintosh - - - - - -
diff --git a/anda/apps/snow/snow.desktop b/anda/apps/snow/snow.desktop deleted file mode 100644 index da8fc5496a..0000000000 --- a/anda/apps/snow/snow.desktop +++ /dev/null @@ -1,7 +0,0 @@ -[Desktop Entry] -Categories=System;Emulator; -Comment=Classic Macintosh emulator -Exec=snowemu -Icon=snow_icon -Name=snow -Type=Application diff --git a/anda/apps/snow/snow.spec b/anda/apps/snow/snow.spec index 5bf3e376fd..ad8c741a60 100644 --- a/anda/apps/snow/snow.spec +++ b/anda/apps/snow/snow.spec @@ -1,14 +1,10 @@ -%global appid com.github.snow - Name: snow -Version: 1.2.0 -Release: 3%?dist +Version: 1.3.1 +Release: 1%?dist Summary: Classic Macintosh emulator URL: https://github.com/twvd/snow Source0: %url/archive/refs/tags/v%version.tar.gz -Source1: snow.desktop -Source2: %appid.metainfo.xml -License: MIT +License: MIT AND MPL-2.0 AND Unicode-3.0 AND (Unlicense OR MIT) AND Apache-2.0 AND BSD-2-Clause AND Zlib AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (BSD-3-Clause OR Apache-2.0) AND BSD-3-Clause AND BSL-1.0 AND CC0-1.0 OR MIT-0 OR Apache-2.0 AND ISC AND (Apache-2.0 OR BSL-1.0) AND (MIT OR Apache-2.0 OR Zlib) 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 BuildRequires: cargo BuildRequires: gcc-c++ @@ -16,7 +12,6 @@ BuildRequires: mold BuildRequires: anda-srpm-macros BuildRequires: cargo-rpm-macros BuildRequires: desktop-file-utils -BuildRequires: terra-appstream-helper BuildRequires: SDL2-devel Provides: snowemu @@ -43,26 +38,17 @@ Documentation files for %{name} %install mkdir -p %{buildroot}%{_pkgdocdir} -install -Dm755 target/rpm/snow_frontend_egui %{buildroot}%{_bindir}/snowemu +install -Dm755 target/rpm/snowemu %{buildroot}%{_bindir}/snowemu +install -Dm644 assets/snow_icon.png %{buildroot}%{_hicolordir}/1024x1024/apps/snow_icon.png +%desktop_file_install assets/snow.desktop +install -Dm644 assets/dev.thomasw.snow.metainfo.xml %{buildroot}%{_metainfodir}/dev.thomasw.snow.metainfo.xml -install -Dm644 docs/images/snow_icon.png %{buildroot}%{_hicolordir}/1024x1024/apps/snow_icon.png - -install -Dm644 %{SOURCE1} %{buildroot}%{_appsdir}/snow.desktop - -cp -a docs/* %{buildroot}%{_pkgdocdir}/ +cp -a docs/* %{buildroot}%{_pkgdocdir}/ rm %{buildroot}%{_pkgdocdir}/*.toml -rm %{buildroot}%{_pkgdocdir}/images/*.icns -rm %{buildroot}%{_pkgdocdir}/images/*.ico rm -r %{buildroot}%{_pkgdocdir}/theme -%terra_appstream -o %{SOURCE2} - -%cargo_license_summary_online %{cargo_license_online} > LICENSE.dependencies -%check -desktop-file-validate %{buildroot}%{_appsdir}/snow.desktop - %files %doc README.md %license LICENSE @@ -70,7 +56,7 @@ desktop-file-validate %{buildroot}%{_appsdir}/snow.desktop %{_bindir}/snowemu %{_hicolordir}/1024x1024/apps/snow_icon.png %{_appsdir}/snow.desktop -%{_metainfodir}/%appid.metainfo.xml +%{_metainfodir}/dev.thomasw.snow.metainfo.xml %files doc %license LICENSE diff --git a/anda/apps/spotify-launcher/anda.hcl b/anda/apps/spotify-launcher/anda.hcl new file mode 100644 index 0000000000..1da498eab1 --- /dev/null +++ b/anda/apps/spotify-launcher/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "spotify-launcher.spec" + } +} diff --git a/anda/apps/spotify-launcher/spotify-launcher.spec b/anda/apps/spotify-launcher/spotify-launcher.spec new file mode 100644 index 0000000000..5cabbdf1bd --- /dev/null +++ b/anda/apps/spotify-launcher/spotify-launcher.spec @@ -0,0 +1,68 @@ +Name: spotify-launcher +Version: 0.6.5 +Release: 2%?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 +ExclusiveArch: x86_64 +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 + + +%description +%{summary}. + +%prep +%autosetup -n %{name}-%{version} +%cargo_prep_online + +%build +%{cargo_build} --locked + +%install + +install -Dm755 target/release/spotify-launcher %{buildroot}%{_bindir}/spotify-launcher + +install -Dm644 data/pubkey_5384CE82BA52C83A.gpg %{buildroot}/%{_datadir}/spotify-launcher/keyring.pgp + +install -Dm644 contrib/spotify-launcher.desktop %{buildroot}%{_appsdir}/spotify-launcher.desktop + +install -Dm644 contrib/icons/spotify-linux-256.png "%{buildroot}/%{_datadir}/pixmaps/spotify-launcher.png" + +install -Dm644 contrib/spotify-launcher.conf %{buildroot}%{_sysconfdir}/spotify-launcher.conf + +for size in 22 24 32 48 64 128 256 512; do + install -Dm644 contrib/icons/spotify-linux-${size}.png %{buildroot}%{_hicolordir}/${size}x${size}/apps/spotify-launcher.png +done +%{cargo_license_online} > LICENSE.dependencies + +%check +%desktop_file_validate %{buildroot}%{_appsdir}/spotify-launcher.desktop + +%files +%{_appsdir}/%{name}.desktop +%{_sysconfdir}/spotify-launcher.conf +%{_datadir}/pixmaps/spotify-launcher.png +%{_hicolordir}/22x22/apps/spotify-launcher.png +%{_hicolordir}/24x24/apps/spotify-launcher.png +%{_hicolordir}/32x32/apps/spotify-launcher.png +%{_hicolordir}/48x48/apps/spotify-launcher.png +%{_hicolordir}/64x64/apps/spotify-launcher.png +%{_hicolordir}/128x128/apps/spotify-launcher.png +%{_hicolordir}/256x256/apps/spotify-launcher.png +%{_hicolordir}/512x512/apps/spotify-launcher.png +%{_bindir}/spotify-launcher +%{_datadir}/spotify-launcher/keyring.pgp +%license LICENSE-MIT LICENSE-APACHE LICENSE.dependencies +%doc README.md + +%changelog +* Tue Mar 17 2026 veux - 0.6.5-2 +- Fix big package size and enable debug subpackages + +* Fri Feb 27 2026 veux - 0.6.5-1 +- Initial package release diff --git a/anda/apps/spotify-launcher/update.rhai b/anda/apps/spotify-launcher/update.rhai new file mode 100644 index 0000000000..0d5499301d --- /dev/null +++ b/anda/apps/spotify-launcher/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("kpcyrd/spotify-launcher")); \ No newline at end of file diff --git a/anda/apps/subtitleedit/subtitleedit.spec b/anda/apps/subtitleedit/subtitleedit.spec index effc4a3dd8..ef47f57046 100644 --- a/anda/apps/subtitleedit/subtitleedit.spec +++ b/anda/apps/subtitleedit/subtitleedit.spec @@ -2,7 +2,7 @@ %global realname subtitleedit Name: %realname.bin -Version: 4.0.14 +Version: 4.0.15 Release: 1%?dist Summary: An advanced subtitle editor and converter License: GPL-3.0-only diff --git a/anda/apps/throne/Sagernet.SingBox.Version.txt b/anda/apps/throne/Sagernet.SingBox.Version.txt index 2257a5e009..734ba9c877 100644 --- a/anda/apps/throne/Sagernet.SingBox.Version.txt +++ b/anda/apps/throne/Sagernet.SingBox.Version.txt @@ -1 +1 @@ -v1.12.17 \ No newline at end of file +v1.13.33 \ No newline at end of file diff --git a/anda/apps/throne/throne.spec b/anda/apps/throne/throne.spec index d7b61eaeb7..cd0b2e97ce 100644 --- a/anda/apps/throne/throne.spec +++ b/anda/apps/throne/throne.spec @@ -1,8 +1,8 @@ #? https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=throne-git Name: throne -Version: 1.0.13 -Release: 1%?dist +Version: 1.1.1 +Release: 1%{?dist} Summary: Qt based cross-platform GUI proxy configuration manager (backend: sing-box) URL: https://github.com/throneproj/Throne License: GPLv3 diff --git a/anda/apps/twintaillauncher/anda.hcl b/anda/apps/twintaillauncher/anda.hcl new file mode 100644 index 0000000000..62f910e857 --- /dev/null +++ b/anda/apps/twintaillauncher/anda.hcl @@ -0,0 +1,6 @@ +project "pkg" { + arches = ["x86_64"] + rpm { + spec = "twintaillauncher.spec" + } +} diff --git a/anda/apps/twintaillauncher/twintaillauncher.spec b/anda/apps/twintaillauncher/twintaillauncher.spec new file mode 100644 index 0000000000..769fcdeaaa --- /dev/null +++ b/anda/apps/twintaillauncher/twintaillauncher.spec @@ -0,0 +1,87 @@ +%undefine __brp_mangle_shebangs + +%global _build_id_links none + +%global toolchain clang + +Name: twintaillauncher + +Version: 1.1.15 +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) +URL: https://twintaillauncher.app/ +Source0: https://github.com/TwintailTeam/TwintailLauncher/archive/refs/tags/ttl-v%{version}.tar.gz + +ExclusiveArch: x86_64 + +Requires: hicolor-icon-theme + +# Build requires +BuildRequires: pnpm +BuildRequires: %{tauri_buildrequires} +BuildRequires: protobuf-devel +BuildRequires: webkit2gtk4.1-devel +BuildRequires: desktop-file-utils +BuildRequires: hicolor-icon-theme +BuildRequires: perl +BuildRequires: zlib-ng-devel +BuildRequires: clang +BuildRequires: mold + +Provides: ttl + +%description +Twintaillauncher is a multi-platform launcher that brings mod support, quality-of-life improvements, and advanced features to a variety of anime-styled games. +TTL is an all-in-one tool for downloading, managing, and launching your favorite anime games. It’s designed with flexibility, ease of use, and customization in mind. + +%prep +%autosetup -n TwintailLauncher-ttl-v%{version} +cd src-tauri +cargo update +cd .. +%tauri_prep + +%build +%pnpm_build + + +%install +%tauri_install +mkdir -p %{buildroot}/%{_libdir}/twintaillauncher/resources +mv %{buildroot}/%{_datadir}/cargo/registry/twintaillauncher-%{version}/resources/ %{buildroot}/%{_libdir}/twintaillauncher/resources +rm -rf %{buildroot}/%{_datadir}/cargo/registry/twintaillauncher-%{version} + + +%tauri_cargo_license_summary +%{tauri_cargo_license} > LICENSE.dependencies + +%desktop_file_install -f ./twintaillauncher.desktop + +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 +%{_hicolordir}/512x512/apps/%{name}.png +%{_hicolordir}/128x128/apps/%{name}.png +%_appsdir/twintaillauncher.desktop + + + + +%changelog +* Thu Feb 19 2026 Yoong Jin - 1.1.15-1 +- Fix resources +* Tue Feb 3 2026 Yoong Jin - 1.1.15-0 +- Initial Package diff --git a/anda/apps/twintaillauncher/update.rhai b/anda/apps/twintaillauncher/update.rhai new file mode 100644 index 0000000000..ec0890fe7f --- /dev/null +++ b/anda/apps/twintaillauncher/update.rhai @@ -0,0 +1,2 @@ +// index of 5 skips 'ttl-v' +rpm.version(gh_tag("TwintailTeam/TwintailLauncher")[5..]); diff --git a/anda/apps/valent/anda.hcl b/anda/apps/valent/anda.hcl new file mode 100644 index 0000000000..e688a5daeb --- /dev/null +++ b/anda/apps/valent/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "valent.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/apps/valent/update.rhai b/anda/apps/valent/update.rhai new file mode 100644 index 0000000000..ea282cb7f0 --- /dev/null +++ b/anda/apps/valent/update.rhai @@ -0,0 +1,7 @@ +if filters.contains("nightly") { + rpm.global("commit", gh_commit("andyholmes/valent")); + if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); + } +} diff --git a/anda/apps/valent/valent.spec b/anda/apps/valent/valent.spec new file mode 100644 index 0000000000..9dafaf6495 --- /dev/null +++ b/anda/apps/valent/valent.spec @@ -0,0 +1,98 @@ +%global commit df82168bc37ad1ec700c66b0f0f5dfd7a07be485 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commit_date 20260316 + +Name: valent +Version: 0~%{commit_date}git.%{shortcommit} +Release: 1%{?dist} +Summary: Connect, control and sync devices +License: GPL-3.0-or-later +URL: https://github.com/andyholmes/valent +Source0: %{url}/archive/%{commit}/valent-%{commit}.tar.gz +Source1: https://gitlab.gnome.org/GNOME/libgnome-volume-control/-/archive/master/libgnome-volume-control-master.tar.gz +Packager: Tulip Blossom + +Provides: bundled(gvc) +BuildRequires: desktop-file-utils +BuildRequires: evolution-data-server-devel +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: libphonenumber-devel +BuildRequires: meson +BuildRequires: pkgconfig(glycin-2) +BuildRequires: pkgconfig(glycin-gtk4-2) +BuildRequires: pkgconfig(gnutls) +BuildRequires: pkgconfig(gstreamer-1.0) +BuildRequires: pkgconfig(json-glib-1.0) +BuildRequires: pkgconfig(libadwaita-1) +BuildRequires: pkgconfig(libpeas-2) +BuildRequires: pkgconfig(libpipewire-0.3) +BuildRequires: pkgconfig(libportal-gtk4) +BuildRequires: pkgconfig(libpulse) +BuildRequires: pkgconfig(tracker-sparql-3.0) + +%description +%{summary}. + +%package devel +%pkg_devel_files +%{_datadir}/vala/vapi/libvalent-1.deps +%{_datadir}/vala/vapi/libvalent-1.vapi +%{_libdir}/libvalent-1.so.0 +%{_libdir}/libvalent-1.so.1.0.0 + +%package langpacks +Summary: Translations for %{name} +BuildArch: noarch +Requires: %{name} = %{evr} + +%description langpacks +This package contains translations for %{name}. + +%prep +%autosetup -n valent-%{commit} -p1 +rm -r subprojects/gvc* +tar -xf %{SOURCE1} -C subprojects +mv subprojects/libgnome-volume-control* subprojects/gvc + +%conf +%meson + +%build +%meson_build + +%install +%meson_install + +%files langpacks +%{_datadir}/locale + + +%files +%license LICENSE +%doc README.md +%{_bindir}/valent +%{_datadir}/applications/ca.andyholmes.Valent.desktop +%{_datadir}/dbus-1/services/ca.andyholmes.Valent.service +%{_datadir}/gir-1.0/Valent-1.gir +%{_datadir}/glib-2.0/schemas/ca.andyholmes.Valent.Plugin.battery.gschema.xml +%{_datadir}/glib-2.0/schemas/ca.andyholmes.Valent.Plugin.clipboard.gschema.xml +%{_datadir}/glib-2.0/schemas/ca.andyholmes.Valent.Plugin.connectivity_report.gschema.xml +%{_datadir}/glib-2.0/schemas/ca.andyholmes.Valent.Plugin.contacts.gschema.xml +%{_datadir}/glib-2.0/schemas/ca.andyholmes.Valent.Plugin.notification.gschema.xml +%{_datadir}/glib-2.0/schemas/ca.andyholmes.Valent.Plugin.runcommand.gschema.xml +%{_datadir}/glib-2.0/schemas/ca.andyholmes.Valent.Plugin.sftp.gschema.xml +%{_datadir}/glib-2.0/schemas/ca.andyholmes.Valent.Plugin.share.gschema.xml +%{_datadir}/glib-2.0/schemas/ca.andyholmes.Valent.Plugin.systemvolume.gschema.xml +%{_datadir}/glib-2.0/schemas/ca.andyholmes.Valent.Plugin.telephony.gschema.xml +%{_datadir}/glib-2.0/schemas/ca.andyholmes.Valent.Plugin.xdp.gschema.xml +%{_datadir}/glib-2.0/schemas/ca.andyholmes.Valent.gschema.xml +%{_datadir}/icons/hicolor/scalable/apps/ca.andyholmes.Valent.svg +%{_datadir}/icons/hicolor/symbolic/apps/ca.andyholmes.Valent-symbolic.svg +%{_datadir}/metainfo/ca.andyholmes.Valent.metainfo.xml +%{_libdir}/girepository-1.0/Valent-1.typelib +%{_sysconfdir}/xdg/autostart/ca.andyholmes.Valent-autostart.desktop + +%changelog +* Sun Mar 15 2026 Tulip Blossom +- Initial commit diff --git a/anda/apps/vesktop/vesktop.spec b/anda/apps/vesktop/vesktop.spec index 9afcaaa0dd..0ca85caea6 100644 --- a/anda/apps/vesktop/vesktop.spec +++ b/anda/apps/vesktop/vesktop.spec @@ -1,5 +1,8 @@ %define debug_package %nil +%global giturl https://github.com/Vencord/Vesktop +%global appid dev.vencord.Vesktop + # Exclude private libraries %global __requires_exclude libffmpeg.so %global __provides_exclude_from %{_datadir}/vesktop/.*\\.so @@ -7,28 +10,27 @@ Name: vesktop Obsoletes: VencordDesktop < 1.5.8-1 Obsoletes: vencord-desktop < 1.5.8-1 -Version: 1.6.3 +Version: 1.6.5 Release: 1%?dist -License: GPL-3.0 +License: GPL-3.0-or-later Summary: Vesktop is a cross platform desktop app aiming to give you a snappier Discord experience with Vencord pre-installed -URL: https://github.com/Vencord/Vesktop +URL: https://vesktop.dev Group: Applications/Internet -#Source1: launch.sh -Source0: https://github.com/Vencord/Vesktop/archive/refs/tags/v%{version}.tar.gz +Source0: %{giturl}/archive/refs/tags/v%{version}.tar.gz +Source1: %{giturl}/releases/download/v%{version}/%{appid}.metainfo.xml Requires: xdg-utils +%if 0%{?fedora} >= 44 +BuildRequires: nodejs24-npm-bin git +%else BuildRequires: nodejs-npm git -# Conflicts: vesktop-bin +%endif %description vesktop is a custom client designed to enhance your Discord experience while keeping everything lightweight. %prep -git init -git remote add origin %url || : -git reset --hard -git fetch -git checkout v%version +%git_clone %giturl v%version cat < vesktop.desktop [Desktop Entry] @@ -44,14 +46,11 @@ StartupWMClass=vesktop Keywords=discord;vesktop;vencord;shelter;armcord;electron; EOF - %build -npx pnpm install --no-frozen-lockfile -npx pnpm package:dir - +%__npx pnpm install --no-frozen-lockfile +%__npx pnpm package:dir %install - mkdir -p %buildroot/usr/share/vesktop cp -r dist/*-unpacked/. %buildroot/usr/share/vesktop/. @@ -60,6 +59,7 @@ ln -sf /usr/share/vesktop/vesktop %buildroot/usr/bin/vesktop ln -sf /usr/bin/vesktop %buildroot/usr/bin/vencorddesktop install -Dm644 vesktop.desktop %{buildroot}%{_datadir}/applications/vesktop.desktop install -Dm644 build/icon.svg %{buildroot}%{_iconsdir}/hicolor/scalable/apps/vesktop.svg +install -Dm644 %{SOURCE1} %{buildroot}%{_metainfodir}/%{appid}.metainfo.xml %files %doc README.md @@ -69,10 +69,12 @@ install -Dm644 build/icon.svg %{buildroot}%{_iconsdir}/hicolor/scalable/apps/ves %{_datadir}/applications/vesktop.desktop %{_iconsdir}/hicolor/scalable/apps/vesktop.svg %{_datadir}/vesktop/* +%{_metainfodir}/%{appid}.metainfo.xml %changelog +* Wed Feb 04 2026 Kaitlyn - 1.6.4 +- Added appstream metainfo and fixed buildrequires to adhere to new npm package naming scheme * Thu Jul 24 2025 Atmois - 1.5.8-2 - Rename from vencord-desktop to vesktop and amend the spec file accordingly * Tue Nov 07 2023 Cappy Ishihara - 0.4.3-1 - Initial package - diff --git a/anda/apps/vpkedit/vpkedit.spec b/anda/apps/vpkedit/vpkedit.spec index 8032a7f538..34949b70b8 100644 --- a/anda/apps/vpkedit/vpkedit.spec +++ b/anda/apps/vpkedit/vpkedit.spec @@ -1,20 +1,23 @@ -%define _unpackaged_files_terminate_build 0 +%global appid com.github.craftablescience.VPKEdit +%global _distro_extra_ldflags -fuse-ld=mold Name: vpkedit Version: 5.0.0.4 -Release: 1%?dist +Release: 2%?dist Summary: A CLI/GUI tool to create, read, and write several pack file formats License: MIT URL: https://github.com/craftablescience/VPKEdit Requires: qt6-qtbase hicolor-icon-theme Suggests: qt6-qtwayland Packager: madonuko -BuildRequires: cmake git-core gcc gcc-c++ binutils +BuildRequires: cmake git-core gcc gcc-c++ binutils mold BuildRequires: cmake(Qt6) BuildRequires: cmake(Qt6Svg) BuildRequires: cmake(Qt6Linguist) BuildRequires: cmake(Qt6Charts) BuildRequires: cmake(Qt6LinguistTools) +BuildRequires: desktop-file-utils +BuildRequires: libappstream-glib ExclusiveArch: x86_64 %description @@ -30,8 +33,8 @@ new VPKs. %build %cmake -DBUILD_SHARED_LIBS:BOOL=OFF \ -DCMAKE_BUILD_TYPE=Release \ - -DCPACK_GENERATOR=RPM -# -DVPKEDIT_BUILD_LIBC=ON + -DCPACK_GENERATOR=RPM \ + -DVPKEDIT_USE_LTO=ON %cmake_build @@ -41,17 +44,22 @@ pushd %buildroot%_libdir/%name rm -rf {libQt*,*.md,LICENSE} popd mkdir -p %buildroot%_bindir -ln -sf %_libdir/vpkedit/vpkedit %buildroot%_bindir/vpkedit -ln -sf %_libdir/vpkedit/vpkeditcli %buildroot%_bindir/vpkeditcli -sed -i 's@Exec=/opt/vpkedit/@Exec=@g' %buildroot%_datadir/applications/vpkedit.desktop +#ln -sf %_libdir/vpkedit/vpkedit %buildroot%_bindir/vpkedit +#ln -sf %_libdir/vpkedit/vpkeditcli %buildroot%_bindir/vpkeditcli +desktop-file-edit --set-key=Exec --set-value=%_bindir/vpkedit %buildroot%_datadir/applications/vpkedit.desktop +%terra_appstream + +%check +desktop-file-validate %buildroot%_appsdir/%name.desktop %files %doc README.md CODE_OF_CONDUCT.md INSTALL.md CREDITS.md -%license LICENSE +%license LICENSE CREDITS.md %_bindir/vpkedit %_bindir/vpkeditcli %_libdir/%name/ %_datadir/applications/vpkedit.desktop %_hicolordir/*x*/apps/vpkedit.png %_datadir/mime/packages/vpkedit.xml +%_metainfodir/%appid.metainfo.xml diff --git a/anda/apps/waydroid-helper/anda.hcl b/anda/apps/waydroid-helper/anda.hcl new file mode 100644 index 0000000000..1749ec8758 --- /dev/null +++ b/anda/apps/waydroid-helper/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "waydroid-helper.spec" + } +} diff --git a/anda/apps/waydroid-helper/update.rhai b/anda/apps/waydroid-helper/update.rhai new file mode 100644 index 0000000000..60f57aa8b5 --- /dev/null +++ b/anda/apps/waydroid-helper/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("waydroid-helper/waydroid-helper")); diff --git a/anda/apps/waydroid-helper/waydroid-helper.spec b/anda/apps/waydroid-helper/waydroid-helper.spec new file mode 100644 index 0000000000..d0799fb642 --- /dev/null +++ b/anda/apps/waydroid-helper/waydroid-helper.spec @@ -0,0 +1,77 @@ +%global appid com.jaoushingan.WaydroidHelper +%define debug_package %{nil} + +Name: waydroid-helper +Version: 0.2.9 +Release: 1%?dist +Summary: User-friendly way to configure Waydroid and install extensions +License: GPL-3.0-or-later +URL: https://github.com/waydroid-helper/waydroid-helper +Source0: %url/archive/refs/tags/v%version.tar.gz +Packager: madonuko + +# https://github.com/waydroid-helper/waydroid-helper/blob/main/waydroid-helper.spec + +Recommends: bindfs +BuildRequires: pkgconfig(python3) +BuildRequires: pkgconfig(cairo) +BuildRequires: pkgconfig(gtk4) +BuildRequires: libadwaita-devel +BuildRequires: pkgconfig(gobject-introspection-1.0) +BuildRequires: pkgconfig(dbus-1) +BuildRequires: meson +BuildRequires: ninja-build +BuildRequires: pkgconfig +BuildRequires: gcc +BuildRequires: gettext +BuildRequires: systemd +BuildRequires: desktop-file-utils + +%description +Waydroid Helper is a graphical user interface application written in Python using PyGObject. It provides a user-friendly way to configure Waydroid and install extensions, including Magisk and ARM translation. + +%prep +%autosetup + +%build +%meson +%meson_build + +%install +%meson_install + +%terra_appstream +%find_lang %name + +%post +%systemd_post waydroid-mount.service +%systemd_user_post waydroid-monitor.service + +%preun +%systemd_preun waydroid-mount.service +%systemd_user_preun waydroid-monitor.service + +%postun +%systemd_postun_with_restart waydroid-mount.service +%systemd_user_postun_with_restart waydroid-monitor.service + +%files -f %name.lang +%license COPYING +%doc README.md +%_bindir/waydroid-helper +%_bindir/waydroid-cli +%_datadir/waydroid-helper/ +%_datadir/applications/%appid.desktop +%_scalableiconsdir/%appid.svg +%_iconsdir/hicolor/symbolic/apps/%appid-symbolic.svg +%_datadir/metainfo/%appid.metainfo.xml +%_datadir/glib-2.0/schemas/%appid.gschema.xml +%_datadir/polkit-1/actions/%appid.policy +%_datadir/dbus-1/system.d/id.waydro.Mount.conf +%_datadir/dbus-1/system-services/id.waydro.Mount.service +%_unitdir/waydroid-mount.service +%_userunitdir/waydroid-monitor.service + +%changelog +* Mon Mar 05 2026 madonuko - 0.2.9-1 +- Initial package diff --git a/anda/apps/winetricks/git/winetricks-git.spec b/anda/apps/winetricks/git/winetricks-git.spec index ff13cb9065..d02bcac45e 100644 --- a/anda/apps/winetricks/git/winetricks-git.spec +++ b/anda/apps/winetricks/git/winetricks-git.spec @@ -1,9 +1,9 @@ # Fedora sometimes sources the snapshots under stable versions and just bumps release # For user clarity I have separated these into different packages -%global commit 81a692e2ee6b311367f18a17a9a61a0ef1c0ad18 +%global commit b792287f5bec9086916aa9b81788e0ea38f02c24 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global ver 20250102 -%global commit_date 20251224 +%global ver 20260125 +%global commit_date 20260222 Name: winetricks-git Version: %{ver}^%{commit_date}git.%{shortcommit} diff --git a/anda/apps/winetricks/stable/winetricks.spec b/anda/apps/winetricks/stable/winetricks.spec index 29132eb2d7..2aac2c9b27 100644 --- a/anda/apps/winetricks/stable/winetricks.spec +++ b/anda/apps/winetricks/stable/winetricks.spec @@ -2,8 +2,8 @@ # For user clarity I have separated these into different packages Name: terra-winetricks -Version: 20250102 -Release: 1%{?dist} +Version: 20260125 +Release: 1%?dist Summary: Winetricks built to be compatible with Terra WINE builds License: LGPL-2.1-or-later URL: https://github.com/Winetricks/winetricks diff --git a/anda/desktops/budgie/budgie-extras/budgie-extras.spec b/anda/desktops/budgie/budgie-extras/budgie-extras.spec index 651980b4a2..4a4a4cae5c 100644 --- a/anda/desktops/budgie/budgie-extras/budgie-extras.spec +++ b/anda/desktops/budgie/budgie-extras/budgie-extras.spec @@ -1,6 +1,6 @@ Name: budgie-extras -Version: 2.0.0 -Release: 1%?dist +Version: 2.2.1 +Release: 1%{?dist} License: GPL-3.0 Summary: Additional Budgie Desktop enhancements for user experience diff --git a/anda/desktops/cagebreak/anda.hcl b/anda/desktops/cagebreak/anda.hcl new file mode 100644 index 0000000000..d7db926282 --- /dev/null +++ b/anda/desktops/cagebreak/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "cagebreak.spec" + } +} diff --git a/anda/desktops/cagebreak/cagebreak.spec b/anda/desktops/cagebreak/cagebreak.spec new file mode 100644 index 0000000000..f939cb8ec0 --- /dev/null +++ b/anda/desktops/cagebreak/cagebreak.spec @@ -0,0 +1,64 @@ +%global tag 3.1.0 +%global forgeurl https://github.com/project-repo/cagebreak +%forgemeta + +Name: cagebreak +Version: %{tag} +Release: 1%{?dist} +Summary: A wayland tiling compositor inspired by Ratpoison + +License: MIT +URL: %{forgeurl} +Source0: %{forgesource} + +Packager: metcya + +BuildRequires: meson +BuildRequires: gcc +BuildRequires: scdoc +BuildRequires: pkgconfig(wlroots-0.19) +BuildRequires: pkgconfig(wayland-protocols) +BuildRequires: pkgconfig(wayland-server) +BuildRequires: pkgconfig(wayland-cursor) +BuildRequires: pkgconfig(wayland-client) +BuildRequires: pkgconfig(xkbcommon) +BuildRequires: pkgconfig(cairo) +BuildRequires: pkgconfig(pango) +BuildRequires: pkgconfig(pangocairo) +BuildRequires: pkgconfig(fontconfig) +BuildRequires: pkgconfig(libinput) +BuildRequires: pkgconfig(libevdev) +BuildRequires: pkgconfig(libudev) + +# used in the example configuration +Recommends: /usr/bin/xterm +Recommends: /usr/bin/pactl + +%description +cagebreak is a slim, keyboard-controlled, tiling compositor for wayland +conceptually based on the X11 window manager ratpoison. + +%prep +%forgesetup + +%build +%meson -Dxwayland=true -Dman-pages=true +%meson_build + +%install +%meson_install + +%files +# license is already installed by the package +%license %{_defaultlicensdir}/%{name}/LICENSE +%doc README.md SECURITY.md FAQ.md Bugs.md +%{_bindir}/cagebreak +%{_sysconfdir}/xdg/%{name}/config +%{_mandir}/man1/cagebreak.1.* +%{_mandir}/man5/cagebreak-config.5.* +%{_mandir}/man7/cagebreak-socket.7.* + + +%changelog +* Wed Feb 04 2026 metcya +- Initial package diff --git a/anda/desktops/cagebreak/update.rhai b/anda/desktops/cagebreak/update.rhai new file mode 100644 index 0000000000..5431242340 --- /dev/null +++ b/anda/desktops/cagebreak/update.rhai @@ -0,0 +1 @@ +rpm.global("tag", gh_tag("project-repo/cagebreak")); diff --git a/anda/desktops/compiz9/compiz9.spec b/anda/desktops/compiz9/compiz9.spec index eceedb05e9..29bea230f3 100644 --- a/anda/desktops/compiz9/compiz9.spec +++ b/anda/desktops/compiz9/compiz9.spec @@ -1,4 +1,4 @@ -%define _ubuntu_rel 25.10.20250930-0ubuntu1 +%define _ubuntu_rel 25.10.20250930-0ubuntu3 %global _hardened_build 0 Name: compiz9 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 3346f502ec..c9adbfaafb 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: 2%?dist +Release: 3%?dist Summary: GNOME Shell extension to bring back the app menu License: GPL-3.0-only URL: https://github.com/fthx/appmenu-is-back @@ -22,12 +22,12 @@ This extension brings back the app menu in the top panel, for GNOME 45 and later %autosetup -n appmenu-is-back-%{version} -p1 %install -install -Dm644 metadata.json %{buildroot}%{_datadir}/gnome-shell/extensions/%{uuid}/metadata.json -install -Dm644 extension.js %{buildroot}%{_datadir}/gnome-shell/extensions/%{uuid}/extension.js +install -Dm644 metadata.json %{buildroot}%{_gnomeextensionsdir}/metadata.json +install -Dm644 extension.js %{buildroot}%{_gnomeextensionsdir}/extension.js %files %license LICENSE -%{_datadir}/gnome-shell/extensions/%{uuid} +%{_gnomeextensionsdir} %changelog * Thu Nov 16 2023 Lleyton Gray - 2-1 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 c26a5b15e7..5da29b0b8d 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 @@ -7,7 +7,7 @@ Name: gnome-shell-extension-%{extension} Version: 0~%{commit_date}git.%{shortcommit} -Release: 1%?dist +Release: 2%?dist Summary: Battery remaining time extension for GNOME Shell License: GPL-2.0-only URL: https://github.com/pomoke/battery_time @@ -31,14 +31,14 @@ Remaining time is shown inline, so no additional menu item is created (currently %autosetup -n %{extension}-%{commit} %install -install -Dm644 metadata.json %{buildroot}%{_datadir}/gnome-shell/extensions/%{uuid}/metadata.json -install -Dm644 extension.js %{buildroot}%{_datadir}/gnome-shell/extensions/%{uuid}/extension.js +install -Dm644 metadata.json %{buildroot}%{_gnomeextensionsdir}/metadata.json +install -Dm644 extension.js %{buildroot}%{_gnomeextensionsdir}/extension.js cp %{SOURCE1} LICENSE %files %doc README.md %license LICENSE -%{_datadir}/gnome-shell/extensions/%{uuid} +%{_gnomeextensionsdir} %changelog * Mon Jan 05 2026 Owen Zimmerman 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 index fc3de66afd..bcf2bd1c92 100644 --- 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 @@ -7,7 +7,7 @@ Name: gnome-shell-extension-%{extension} Version: %ver^%commit_date.%shortcommit -Release: 1%?dist +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 @@ -26,13 +26,13 @@ GPU Profile switcher Gnome-Shell-Extension for ASUS laptops using Supergfxctl %autosetup -n GPU-Switcher-Supergfxctl-%{commit} -p1 %install -install -Dm644 metadata.json %{buildroot}%{_datadir}/gnome-shell/extensions/%{uuid}/metadata.json -install -Dm644 extension.js %{buildroot}%{_datadir}/gnome-shell/extensions/%{uuid}/extension.js +install -Dm644 metadata.json %{buildroot}%{_gnomeextensionsdir}/metadata.json +install -Dm644 extension.js %{buildroot}%{_gnomeextensionsdir}/extension.js %files %license LICENSE %doc README.md -%{_datadir}/gnome-shell/extensions/%{uuid} +%{_gnomeextensionsdir} %changelog * Mon Oct 27 2025 june-fish - 11 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 621bc85b76..928de9d56d 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 @@ -3,7 +3,7 @@ Name: gnome-shell-extension-%{extension} Version: 9 -Release: 2%?dist +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 @@ -24,13 +24,13 @@ GNOME extension. Removes the 'Window is ready' notification and brings the windo %autosetup -n GrandTheftFocus-%version %install -install -Dm644 grand-theft-focus@zalckos.github.com/metadata.json %{buildroot}%{_datadir}/gnome-shell/extensions/%{uuid}/metadata.json -install -Dm644 grand-theft-focus@zalckos.github.com/extension.js %{buildroot}%{_datadir}/gnome-shell/extensions/%{uuid}/extension.js +install -Dm644 grand-theft-focus@zalckos.github.com/metadata.json %{buildroot}%{_gnomeextensionsdir}/metadata.json +install -Dm644 grand-theft-focus@zalckos.github.com/extension.js %{buildroot}%{_gnomeextensionsdir}/extension.js %files %license LICENSE %doc README.md -%{_datadir}/gnome-shell/extensions/%{uuid} +%{_gnomeextensionsdir} %changelog * Tue Dec 30 2025 Owen Zimmerman 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 b6e9821448..735fe0e43d 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 95678dd702dd91a8f0f37c9d3e217ea6edb89300 -%global commit_date 20260116 +%global commit 911134bb3a8c7153095dc9d3b53af6a097a9d719 +%global commit_date 20260306 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global extension multi-monitors-bar @@ -7,7 +7,7 @@ Name: gnome-shell-extension-%{extension} Version: 0~%{commit_date}git.%{shortcommit} -Release: 1%?dist +Release: 1%{?dist} Summary: Add multiple monitors overview and panel for GNOME Shell. This is an updated fork with GNOME 46 compatibility License: GPL-2.0-or-later URL: https://github.com/FrederykAbryan/multi-monitors-bar_fapv2 @@ -32,10 +32,10 @@ Packager: Owen Zimmerman %install find . -name "*.gschema.xml" -mkdir -p %{buildroot}%{_datadir}/gnome-shell/extensions/%{uuid} -install -Dm644 *.json %{buildroot}%{_datadir}/gnome-shell/extensions/%{uuid}/ -install -Dm644 *.js %{buildroot}%{_datadir}/gnome-shell/extensions/%{uuid}/ -install -Dm644 *.css %{buildroot}%{_datadir}/gnome-shell/extensions/%{uuid}/ +mkdir -p %{buildroot}%{_gnomeextensionsdir} +install -Dm644 *.json %{buildroot}%{_gnomeextensionsdir}/ +install -Dm644 *.js %{buildroot}%{_gnomeextensionsdir}/ +install -Dm644 *.css %{buildroot}%{_gnomeextensionsdir}/ install -Dm644 schemas/*.gschema.xml -t %{buildroot}%{_datadir}/glib-2.0/schemas/ %post @@ -47,7 +47,7 @@ glib-compile-schemas %{_datadir}/glib-2.0/schemas/ &> /dev/null || : %files %license LICENSE %doc README.md -%{_datadir}/gnome-shell/extensions/%{uuid} +%{_gnomeextensionsdir} %{_datadir}/glib-2.0/schemas/*.gschema.xml %changelog diff --git a/anda/desktops/gnome/gnome-shell-extension-vicinae/anda.hcl b/anda/desktops/gnome/gnome-shell-extension-vicinae/anda.hcl new file mode 100644 index 0000000000..3459041c9c --- /dev/null +++ b/anda/desktops/gnome/gnome-shell-extension-vicinae/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + rpm { + spec = "gnome-shell-extension-vicinae.spec" + } + arches = ["x86_64"] +} 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 new file mode 100644 index 0000000000..4c1fb6b1d2 --- /dev/null +++ b/anda/desktops/gnome/gnome-shell-extension-vicinae/gnome-shell-extension-vicinae.spec @@ -0,0 +1,41 @@ +%global uuid vicinae@dagimg-dot.netlify.app + +Name: gnome-shell-extension-vicinae +Version: 1.6.0 +Release: 1%?dist +License: MIT +URL: https://github.com/dagimg-dot/vicinae-gnome-extension +Source: %{url}/archive/refs/tags/v%{version}.tar.gz +Summary: Companion GNOME extension for Vicinae launcher +Packager: metcya + +BuildArch: noarch + +BuildRequires: bun-bin glib2-devel +Requires: (gnome-shell >= 48~ with gnome-shell < 50~) +Requires: vicinae +Recommends: gnome-extensions-app +Provides: gnome-shell-extension-vicinae-gnome-extension + +%description +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} + +%build +%{__bun} i && %{__bun} run build + +%install +mkdir -p %{buildroot}%{_gnomeextensionsdir} +cp -a src/ %{buildroot}%{_gnomeextensionsdir}/ + +%files +%license LICENSE +%doc README.md DEVELOPMENT.md +%{_gnomeextensionsdir}/ + +%changelog +* Sat Dec 27 2025 metcya - 1.5.3-1 +- Package diff --git a/anda/desktops/gnome/gnome-shell-extension-vicinae/update.rhai b/anda/desktops/gnome/gnome-shell-extension-vicinae/update.rhai new file mode 100644 index 0000000000..62d40c1f5d --- /dev/null +++ b/anda/desktops/gnome/gnome-shell-extension-vicinae/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("dagimg-dot/vicinae-gnome-extension")); diff --git a/anda/desktops/gnome/gnome-shell/gnome-shell.spec b/anda/desktops/gnome/gnome-shell/gnome-shell.spec index 27ef4e6457..7692aec5b0 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 49 -%global minor_version 2 +%global major_version 50 +%global minor_version 0 %if 0%{?rhel} %global portal_helper 0 @@ -10,7 +10,7 @@ Name: gnome-shell Version: %{major_version}.%{minor_version} -Release: 2%{?dist}.switcheroo +Release: 1%{?dist}.switcheroo Summary: Window management and application launching for GNOME Provides: gnome-shell.switcheroo = %version-%release diff --git a/anda/desktops/gnome/nautilus-open-any-terminal/nautilus-open-any-terminal.spec b/anda/desktops/gnome/nautilus-open-any-terminal/nautilus-open-any-terminal.spec index 7c2a9d5fed..e57735d067 100644 --- a/anda/desktops/gnome/nautilus-open-any-terminal/nautilus-open-any-terminal.spec +++ b/anda/desktops/gnome/nautilus-open-any-terminal/nautilus-open-any-terminal.spec @@ -1,7 +1,7 @@ %global pypi_name nautilus_open_any_terminal Name: nautilus-open-any-terminal -Version: 0.8.0 +Version: 0.8.1 Release: 1%?dist Summary: Context-menu entry for opening other terminal in Nautilus License: GPL-3.0-only diff --git a/anda/desktops/hyprland/hyprland-protocols/hyprland-protocols.nightly.spec b/anda/desktops/hyprland/hyprland-protocols/hyprland-protocols.nightly.spec index 70ece5c3b2..539cf1735c 100644 --- a/anda/desktops/hyprland/hyprland-protocols/hyprland-protocols.nightly.spec +++ b/anda/desktops/hyprland/hyprland-protocols/hyprland-protocols.nightly.spec @@ -2,8 +2,8 @@ %global realname hyprland-protocols %global ver 0.7.0 -%global commit 3f3860b869014c00e8b9e0528c7b4ddc335c21ab -%global commit_date 20251209 +%global commit 1cb6db5fd6bb8aee419f4457402fa18293ace917 +%global commit_date 20260303 %global shortcommit %{sub %commit 1 7} Name: %realname.nightly diff --git a/anda/desktops/hyprland/hyprutils/hyprutils.nightly.spec b/anda/desktops/hyprland/hyprutils/hyprutils.nightly.spec index 418a18d7de..1ea730b7d4 100644 --- a/anda/desktops/hyprland/hyprutils/hyprutils.nightly.spec +++ b/anda/desktops/hyprland/hyprutils/hyprutils.nightly.spec @@ -3,8 +3,8 @@ %global realname hyprutils %global ver 0.11.0 -%global commit 51a4f93ce8572e7b12b7284eb9e6e8ebf16b4be9 -%global commit_date 20251221 +%global commit 6b4c47661ea7f6f298353137ae6334a53a08d67c +%global commit_date 20260318 %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 eed3b0345f..ed74bb36cd 100644 --- a/anda/desktops/hyprland/hyprwayland-scanner/hyprwayland-scanner.nightly.spec +++ b/anda/desktops/hyprland/hyprwayland-scanner/hyprwayland-scanner.nightly.spec @@ -2,9 +2,9 @@ %global realname hyprwayland-scanner %global ver 0.4.5 -%global commit f6cf414ca0e16a4d30198fd670ec86df3c89f671 +%global commit 0a692d4a645165eebd65f109146b8861e3a925e7 %global shortcommit %{sub %commit 1 7} -%global commit_date 20251121 +%global commit_date 20260303 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 46da7d286e..c3f69401c9 100644 --- a/anda/desktops/kde/lightdm-kde-greeter/lightdm-kde-greeter.spec +++ b/anda/desktops/kde/lightdm-kde-greeter/lightdm-kde-greeter.spec @@ -1,8 +1,8 @@ -%global commit 88709e6ee84ddf7266457f8246c476bee3212ba3 +%global commit 447d0a976d6512af692009ab3faafeb014a87756 Name: lightdm-kde-greeter -Version: 6.1.2 -Release: 1%?dist +Version: 6.1.5 +Release: 1%{?dist} Summary: Login screen using the LightDM framework License: GPL-3.0-or-later URL: https://invent.kde.org/plasma/%name diff --git a/anda/desktops/lomiri-unity/frame/frame.spec b/anda/desktops/lomiri-unity/frame/frame.spec index 29d6e17c3a..eff103791c 100644 --- a/anda/desktops/lomiri-unity/frame/frame.spec +++ b/anda/desktops/lomiri-unity/frame/frame.spec @@ -1,9 +1,9 @@ Name: frame Version: 2.5.0 -Release: 2%?dist +Release: 3%?dist Summary: Touch Frame Library -License: GPL-3.0 AND LGPL-3.0 +License: GPL-3.0-or-later AND LGPL-3.0-or-later URL: https://launchpad.net/frame Source0: http://archive.ubuntu.com/ubuntu/pool/universe/f/frame/frame_%{version}daily13.06.05+16.10.20160809.orig.tar.gz Patch0: http://archive.ubuntu.com/ubuntu/pool/universe/f/frame/frame_%{version}daily13.06.05+16.10.20160809-0ubuntu3.diff.gz @@ -24,7 +24,7 @@ Frame handles the buildup and synchronization of a set of simultaneous touches. %package devel Summary: Development files for %{name} -Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{evr} %description devel The %{name}-devel package contains libraries and header files for diff --git a/anda/desktops/lomiri-unity/geis/geis.spec b/anda/desktops/lomiri-unity/geis/geis.spec index d20afede10..a83c0dd4f4 100644 --- a/anda/desktops/lomiri-unity/geis/geis.spec +++ b/anda/desktops/lomiri-unity/geis/geis.spec @@ -1,9 +1,9 @@ Name: geis Version: 2.2.17 -Release: %autorelease +Release: 2%{?dist} Summary: An implementation of the GEIS interface -License: GPL-3.0 AND LGPL-3.0 +License: GPL-3.0-or-later AND LGPL-3.0-or-later URL: https://launchpad.net/geis Source0: http://archive.ubuntu.com/ubuntu/pool/universe/g/geis/geis_%{version}+16.04.20160126.orig.tar.gz Patch0: http://archive.ubuntu.com/ubuntu/pool/universe/g/geis/geis_%{version}+16.04.20160126-0ubuntu8.diff.gz @@ -22,14 +22,13 @@ BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(xext) BuildRequires: pkgconfig(xi) BuildRequires: pkgconfig(xorg-server) -Requires: python3 %description An implementation of the GEIS (Gesture Engine Interface and Support) interface. %package devel Summary: Development files for %{name} -Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{evr} %description devel The %{name}-devel package contains libraries and header files for diff --git a/anda/desktops/lomiri-unity/lomiri-api/lomiri-api.spec b/anda/desktops/lomiri-unity/lomiri-api/lomiri-api.spec index 56938c53f5..f0738793e0 100644 --- a/anda/desktops/lomiri-unity/lomiri-api/lomiri-api.spec +++ b/anda/desktops/lomiri-unity/lomiri-api/lomiri-api.spec @@ -3,7 +3,7 @@ %forgemeta Name: lomiri-api -Version: 0.2.3 +Version: 0.3.0 Release: 1%?dist Summary: API for Lomiri diff --git a/anda/desktops/lomiri-unity/lomiri-indicator-network/lomiri-indicator-network.spec b/anda/desktops/lomiri-unity/lomiri-indicator-network/lomiri-indicator-network.spec index d677e36c08..a42751424f 100644 --- a/anda/desktops/lomiri-unity/lomiri-indicator-network/lomiri-indicator-network.spec +++ b/anda/desktops/lomiri-unity/lomiri-indicator-network/lomiri-indicator-network.spec @@ -1,9 +1,9 @@ %global forgeurl https://gitlab.com/ubports/development/core/lomiri-indicator-network -%global commit ee3fddcc45a8322938aacc0effd4383b29ebfaf6 +%global commit 5c72fe38523e70377205cfa31c929d20fa8b29ac %forgemeta Name: lomiri-indicator-network -Version: 1.1.2 +Version: 1.2.0 Release: 1%?dist Summary: The Network indicator for Ubuntu Touch License: GPL-3.0 AND LGPL-3.0 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 d4b65a01fd..f25675a5f2 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 f38b5e6998a1456965d31078bf03adeb51e802fa +%global commit 1fc74517626be7cf1f17ab1f1bbcbb0a7940a837 %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 5f4551a0cf..d4e7b92787 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 401b1c0ff861f3d50b2726389b366f9d1420eb33 +%global commit 77935cd890e5d04ac91e1c53e80ab4c39bad8fe7 %forgemeta Name: lomiri-ui-toolkit -Version: 1.3.5902 +Version: 1.3.5903 Release: 1%?dist Summary: QML components to ease the creation of beautiful applications in QML for Lomiri diff --git a/anda/desktops/lomiri-unity/unity-shell/unity-shell.spec b/anda/desktops/lomiri-unity/unity-shell/unity-shell.spec index b8816bd7b5..f5b6561ba7 100644 --- a/anda/desktops/lomiri-unity/unity-shell/unity-shell.spec +++ b/anda/desktops/lomiri-unity/unity-shell/unity-shell.spec @@ -1,8 +1,8 @@ -%define archive unity_7.7.0+23.04.20230222.2-0ubuntu8.tar.xz +%define archive unity_7.7.1+26.04.20260306-0ubuntu2.tar.xz Name: unity-shell -Version: 7.7.0 -Release: 1%?dist +Version: 7.7.1 +Release: 1%{?dist} Summary: Unity is a shell that sings License: GPL-3.0-or-later diff --git a/anda/desktops/mangowc/update.rhai b/anda/desktops/mangowc/update.rhai deleted file mode 100644 index e329151a80..0000000000 --- a/anda/desktops/mangowc/update.rhai +++ /dev/null @@ -1 +0,0 @@ -rpm.version(gh("DreamMaoMao/mangowc")); diff --git a/anda/desktops/mangowm/anda.hcl b/anda/desktops/mangowm/anda.hcl new file mode 100644 index 0000000000..90b2da7f90 --- /dev/null +++ b/anda/desktops/mangowm/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "mangowm.spec" + } +} diff --git a/anda/desktops/mangowc/mangowc.spec b/anda/desktops/mangowm/mangowm.spec similarity index 56% rename from anda/desktops/mangowc/mangowc.spec rename to anda/desktops/mangowm/mangowm.spec index 1657ba2267..19e83f5a86 100644 --- a/anda/desktops/mangowc/mangowc.spec +++ b/anda/desktops/mangowm/mangowm.spec @@ -1,10 +1,12 @@ -Name: mangowc -Version: 0.11.0 -Release: 1%?dist -Summary: wayland compositor base wlroots and scenefx (dwm but wayland) -License: GPL-3.0 +%global mangowc_ver 0.12.5-1 + +Name: mangowm +Version: 0.12.7 +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 Packager: metcya -URL: https://github.com/DreamMaoMao/mangowc +URL: https://github.com/mangowm/mango Source: %{url}/archive/%{version}.tar.gz BuildRequires: meson @@ -21,11 +23,16 @@ BuildRequires: pkgconfig(wayland-client) BuildRequires: pkgconfig(libpcre2-8) BuildRequires: pkgconfig(scenefx-0.4) +Conflicts: mangowc < %{mangowc_ver} +Obsoletes: mangowc < %{mangowc_ver} +Provides: mangowc = %{mangowc_ver} + %description -MangoWC is a lightweight, high-performance Wayland compositor built on dwl, designed for speed, flexibility, and a modern, customizable desktop experience. +MangoWM is a modern, lightweight, high-performance Wayland compositor built on +dwl — crafted for speed, flexibility, and a customizable desktop experience. %prep -%autosetup +%autosetup -n mango-%{version} %build %meson @@ -46,7 +53,11 @@ MangoWC is a lightweight, high-performance Wayland compositor built on dwl, desi %{_bindir}/mmsg %{_sysconfdir}/mango/config.conf %{_datadir}/wayland-sessions/mango.desktop +%{_datadir}/xdg-desktop-portal/mango-portals.conf %changelog +* Wed Mar 04 2026 metcya - 0.12.5-1 +- Rename to mangowm + * Wed Nov 12 2025 metcya - Package mangowc diff --git a/anda/desktops/mangowm/update.rhai b/anda/desktops/mangowm/update.rhai new file mode 100644 index 0000000000..f16a6a5ef9 --- /dev/null +++ b/anda/desktops/mangowm/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("mangowm/mango")); diff --git a/anda/desktops/niri/iio-niri/anda.hcl b/anda/desktops/niri/iio-niri/anda.hcl new file mode 100644 index 0000000000..8ebe47eadb --- /dev/null +++ b/anda/desktops/niri/iio-niri/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "iio-niri.spec" + } +} diff --git a/anda/desktops/niri/iio-niri/iio-niri.spec b/anda/desktops/niri/iio-niri/iio-niri.spec new file mode 100644 index 0000000000..74807f5854 --- /dev/null +++ b/anda/desktops/niri/iio-niri/iio-niri.spec @@ -0,0 +1,34 @@ +Name: iio-niri +Version: 1.3.0 +Release: 1%{?dist} +Summary: Autorotation daemon for niri +URL: https://github.com/Zhaith-Izaliel/iio-niri +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz +BuildRequires: cargo-rpm-macros +BuildRequires: dbus-devel +Requires: iio-sensor-proxy +License: (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND GPL-3.0-or-later AND MIT OR Apache-2.0 AND (Unlicense OR MIT) +Packager: Tulip Blossom + +%description +%{summary}. + +%prep +%autosetup +%cargo_prep_online + +%build +%cargo_build +%{cargo_license_online} > LICENSE.dependencies + +%install +%crate_install_bin + +%files +%doc README.md +%license LICENSE.md LICENSE.dependencies +%{_bindir}/%{name} + +%changelog +* Fri Mar 13 2026 Tulip Blossom +- Initial commit diff --git a/anda/desktops/niri/nirius/anda.hcl b/anda/desktops/niri/nirius/anda.hcl new file mode 100644 index 0000000000..9cf529f78b --- /dev/null +++ b/anda/desktops/niri/nirius/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "nirius.spec" + } +} diff --git a/anda/desktops/niri/nirius/nirius.spec b/anda/desktops/niri/nirius/nirius.spec new file mode 100644 index 0000000000..102fd4f134 --- /dev/null +++ b/anda/desktops/niri/nirius/nirius.spec @@ -0,0 +1,44 @@ +Name: nirius +Version: 0.6.1 +Release: 1%{?dist} +Summary: Utility commands for niri + +License: GPL-3.0-or-later AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR MIT) AND MIT AND (Unlicense OR MIT) +URL: https://git.sr.ht/~tsdh/nirius +Source0: %{url}/archive/%{name}-%{version}.tar.gz + +Packager: metcya + +BuildRequires: cargo +BuildRequires: cargo-rpm-macros +BuildRequires: mold +Requires: niri + +%description +Some utility commands for the niri wayland compositor. You have to start the +niriusd daemon and then issue commands using the nirius utility. The daemon is +best started by adding spawn-at-startup "niriusd" to niri's config.kdl. + +%prep +%autosetup -n %{name}-%{name}-%{version} +%cargo_prep_online + +%build +%cargo_license_summary_online +%{cargo_license_online} > LICENSE.dependencies +%cargo_build + +%install +install -Dm 755 target/rpm/nirius %{buildroot}%{_bindir}/nirius +install -Dm 755 target/rpm/niriusd %{buildroot}%{_bindir}/niriusd + +%files +%license LICENSE +%license LICENSE.dependencies +%doc README.md +%{_bindir}/nirius +%{_bindir}/niriusd + +%changelog +* Thu Jan 22 2026 metcya +- Initial package diff --git a/anda/desktops/noctalia-qs/anda.hcl b/anda/desktops/noctalia-qs/anda.hcl new file mode 100644 index 0000000000..2f51b5f5ef --- /dev/null +++ b/anda/desktops/noctalia-qs/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "noctalia-qs.spec" + } +} diff --git a/anda/desktops/quickshell/quickshell.spec b/anda/desktops/noctalia-qs/noctalia-qs.spec similarity index 56% rename from anda/desktops/quickshell/quickshell.spec rename to anda/desktops/noctalia-qs/noctalia-qs.spec index 7931ed485b..0c604a259a 100644 --- a/anda/desktops/quickshell/quickshell.spec +++ b/anda/desktops/noctalia-qs/noctalia-qs.spec @@ -1,12 +1,14 @@ -Name: quickshell -Version: 0.2.1 -Release: 1%?dist -Summary: Flexible QtQuick based desktop shell toolkit -License: LGPL-3.0-only AND GPL-3.0-only -URL: https://github.com/quickshell-mirror/quickshell -Source0: https://github.com/quickshell-mirror/quickshell/archive/v%{version}/%{name}-%{version}.tar.gz +%global commit 3962ff1e0b59ef067c57199d31271ddbf23b29cd -Packager: Willow Reed (willow@willowidk.dev) +Name: noctalia-qs +Version: 0.0.9 +Release: 1%{?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 BuildRequires: cmake BuildRequires: cmake(Qt6Core) @@ -30,6 +32,11 @@ BuildRequires: pkgconfig(pam) BuildRequires: pkgconfig(libdrm) BuildRequires: pkgconfig(gbm) BuildRequires: pkgconfig(CLI11) +BuildRequires: glib2-devel +BuildRequires: polkit-devel + +Conflicts: quickshell +Provides: quickshell %description Flexible QtQuick based desktop shell toolkit. @@ -55,13 +62,17 @@ Flexible QtQuick based desktop shell toolkit. %doc BUILD.md %doc CONTRIBUTING.md %doc README.md -%doc changelog/v%{version}.md +%doc changelog/next.md %{_bindir}/qs %{_bindir}/quickshell -%{_appsdir}/org.quickshell.desktop -%{_scalableiconsdir}/org.quickshell.svg +%{_appsdir}/dev.noctalia.noctalia-qs.desktop +%{_scalableiconsdir}/dev.noctalia.noctalia-qs.svg %{_libdir}/qt6/qml/Quickshell %changelog -* Fri Jan 02 2026 Willow Reed -- Initial commit \ No newline at end of file +* Thu Mar 05 2026 Willow C Reed +- Fix reision 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 diff --git a/anda/desktops/noctalia-qs/update.rhai b/anda/desktops/noctalia-qs/update.rhai new file mode 100644 index 0000000000..7872e1741f --- /dev/null +++ b/anda/desktops/noctalia-qs/update.rhai @@ -0,0 +1,7 @@ +let release = get(`https://api.github.com/repos/noctalia-dev/noctalia-qs/tags`).json_arr()[0]; + +rpm.version(release.name); + +if rpm.changed() { + rpm.global("commit", release.commit.sha); +} \ 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 a66e7b89f4..a439ae5984 100644 --- a/anda/desktops/noctalia-shell/noctalia-shell.spec +++ b/anda/desktops/noctalia-shell/noctalia-shell.spec @@ -1,19 +1,18 @@ %global debug_package %{nil} Name: noctalia-shell -Version: 4.1.1 -Release: 1%?dist +Version: 4.6.7 +Release: 2%{?dist} Summary: A Quickshell-based custom shell setup License: MIT URL: https://github.com/noctalia-dev/noctalia-shell -Source0: https://github.com/noctalia-dev/noctalia-shell/releases/latest/download/noctalia-latest.tar.gz +Source0: https://github.com/noctalia-dev/noctalia-shell/releases/download/v%{version}/noctalia-v%{version}.tar.gz Requires: brightnessctl Requires: dejavu-sans-fonts -Requires: gpu-screen-recorder Requires: qt6-qtmultimedia -Requires: quickshell +Requires: noctalia-qs Requires: xdg-desktop-portal Recommends: cava @@ -22,8 +21,9 @@ Recommends: ddcutil Recommends: matugen Recommends: power-profiles-daemon Recommends: wlsunset +Recommends: gpu-screen-recorder -Packager: Willow Reed +Packager: Willow 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,5 +43,11 @@ cp -r ./* %{buildroot}/etc/xdg/quickshell/noctalia-shell/ %{_sysconfdir}/xdg/quickshell/noctalia-shell/ %changelog -* Fri Jan 02 2026 Willow Reed +* Mon Mar 09 2026 Willow C 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 +- Change required quickshell to Noctalia's version + +* Fri Jan 02 2026 Willow Reed - Initial commit \ No newline at end of file diff --git a/anda/desktops/quickshell/anda.hcl b/anda/desktops/quickshell/anda.hcl deleted file mode 100644 index 2cfcd032f5..0000000000 --- a/anda/desktops/quickshell/anda.hcl +++ /dev/null @@ -1,5 +0,0 @@ -project pkg { - rpm { - spec = "quickshell.spec" - } -} diff --git a/anda/desktops/quickshell/update.rhai b/anda/desktops/quickshell/update.rhai deleted file mode 100644 index c9d8e7e22f..0000000000 --- a/anda/desktops/quickshell/update.rhai +++ /dev/null @@ -1 +0,0 @@ -rpm.version(gh("https://github.com/quickshell-mirror/quickshell")); \ No newline at end of file diff --git a/anda/desktops/sway/swayosd/swayosd.spec b/anda/desktops/sway/swayosd/swayosd.spec index 8702c7b61a..76cf36b4b1 100644 --- a/anda/desktops/sway/swayosd/swayosd.spec +++ b/anda/desktops/sway/swayosd/swayosd.spec @@ -1,6 +1,6 @@ Name: SwayOSD -Version: 0.3.0 -Release: 1%?dist +Version: 0.3.1 +Release: 1%{?dist} Summary: A GTK based on screen display for keyboard shortcuts like caps-lock and volume License: GPL-3.0-only URL: https://github.com/ErikReider/SwayOSD diff --git a/anda/desktops/swayfx/swayfx.spec b/anda/desktops/swayfx/swayfx.spec index 06f88fbff5..1fb8767b37 100644 --- a/anda/desktops/swayfx/swayfx.spec +++ b/anda/desktops/swayfx/swayfx.spec @@ -1,8 +1,8 @@ -%global swayVersion 1.10.1 +%global swayVersion 1.11 Name: swayfx Version: 0.5.2 -Release: 1%?dist +Release: 2%?dist Summary: SwayFX: Sway, but with eye candy! URL: https://github.com/WillPower3309/swayfx diff --git a/anda/desktops/waylands/clipse/golang-github-savedra1-clipse.spec b/anda/desktops/waylands/clipse/golang-github-savedra1-clipse.spec index 6a116b6e64..22de8f1237 100644 --- a/anda/desktops/waylands/clipse/golang-github-savedra1-clipse.spec +++ b/anda/desktops/waylands/clipse/golang-github-savedra1-clipse.spec @@ -12,7 +12,7 @@ # https://github.com/savedra1/clipse %global goipath github.com/savedra1/clipse -Version: 1.2.0 +Version: 1.2.1 %gometa -f diff --git a/anda/desktops/waylands/eww/eww.spec b/anda/desktops/waylands/eww/eww.spec index 1a8d9634df..6928e6078b 100644 --- a/anda/desktops/waylands/eww/eww.spec +++ b/anda/desktops/waylands/eww/eww.spec @@ -1,13 +1,13 @@ # Generated by rust2rpm 27 -%global commit fddb4a09b107237819e661151e007b99b5cab36d +%global commit 865cf631d5bbb5f9fccc99b3f4cc80b9eeada18c %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20250630 +%global commit_date 20260305 %global ver v0.6.0 %bcond check 0 Name: eww Version: %ver^%commit_date.git~%shortcommit -Release: 1%?dist +Release: 1%{?dist} Summary: Widgets for everyone! SourceLicense: MIT diff --git a/anda/desktops/waylands/matugen/rust-matugen.spec b/anda/desktops/waylands/matugen/rust-matugen.spec index bc6a69ff26..d106b289bf 100644 --- a/anda/desktops/waylands/matugen/rust-matugen.spec +++ b/anda/desktops/waylands/matugen/rust-matugen.spec @@ -2,13 +2,16 @@ %global crate matugen Name: rust-matugen -Version: 3.1.0 +Version: 4.0.0 Release: 1%?dist Summary: Material you color generation tool with templates -License: GPL-2.0 +License: GPL-2.0-or-later URL: https://crates.io/crates/matugen Source: %{crates_source} +Source1: https://raw.githubusercontent.com/InioX/matugen/refs/tags/v%version/README.md +Source2: https://raw.githubusercontent.com/InioX/matugen/refs/tags/v%version/CHANGELOG.md +Source3: https://raw.githubusercontent.com/InioX/matugen/refs/tags/v%version/LICENSE BuildRequires: cargo-rpm-macros >= 24 BuildRequires: anda-srpm-macros @@ -24,7 +27,7 @@ A material you color generation tool with templates.} %package -n %{crate} Summary: %{summary} -License: GPL-2.0 +License: GPL-2.0-or-later AND Zlib AND MPL-2.0 AND Unlicense AND (Unlicense OR MIT) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Apache-2.0 OR NCSA) AND MIT AND (MIT OR Apache-2.0 OR CC0-1.0) AND (MIT OR Apache-2.0) AND Unicode-DFS-2016 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 MIT) AND (CC0-1.0 OR Apache-2.0) AND BSD-3-Clause AND BSD-2-Clause AND (Zlib OR Apache-2.0 OR MIT) AND (BSD-2-Clause OR Apache-2.0 OR MIT) (Apache-2.0 WITH LLVM-exception) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) # LICENSE.dependencies contains a full license breakdown %description -n %{crate} %{_description} @@ -36,30 +39,14 @@ License: GPL-2.0 %doc README.md %{_bindir}/matugen - -%package devel -Summary: %{summary} -BuildArch: noarch - -%description devel %{_description} - -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}/README.md -%{crate_instdir}/ - - %prep %autosetup -n %{crate}-%{version} -p1 %cargo_prep_online +install -Dpm0644 -t . %{S:1} %{S:2} %{S:3} %build -%{cargo_license_summary_online} -%{cargo_license} > LICENSE.dependencies +%cargo_license_summary_online +%{cargo_license_online} > LICENSE.dependencies %install %cargo_install diff --git a/anda/desktops/waylands/walker/walker.spec b/anda/desktops/waylands/walker/walker.spec index 6cabb7708b..7a81dd620e 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.13.0 +%global upstream_version v2.15.2 %global ver %{sub %upstream_version 2} Name: walker diff --git a/anda/devs/android-studio/canary/anda.hcl b/anda/devs/android-studio/canary/anda.hcl new file mode 100644 index 0000000000..f3910da03e --- /dev/null +++ b/anda/devs/android-studio/canary/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "android-studio-canary.spec" + } +} diff --git a/anda/devs/android-studio/canary/android-studio-canary.spec b/anda/devs/android-studio/canary/android-studio-canary.spec new file mode 100644 index 0000000000..ff5524532b --- /dev/null +++ b/anda/devs/android-studio/canary/android-studio-canary.spec @@ -0,0 +1,95 @@ +%undefine __brp_add_determinism +# disable debuginfo subpackage +%global debug_package %{nil} +# Disable build-id symlinks to avoid conflicts +%global _build_id_links none +# don't strip bundled binaries because pycharm checks length (!!!) of binary fsnotif +# and if you strip debug stuff from it, it will complain +%global __strip /bin/true +# dont repack jars +%global __jar_repack %{nil} +# disable rpath checks +%define __brp_check_rpaths %{nil} + +%define __requires_exclude_from ^/usr/libexec/android-studio-canary/.*$ +%define __provides_exclude_from ^/usr/libexec/android-studio-canary/.*|libedit\\so.*$ +%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.3.4 +Release: 1%{?dist} +Summary: Official IDE for Android development (Canary build) +License: Apache-2.0 +Packager: veuxit +ExclusiveArch: x86_64 +URL: https://developer.android.com/studio/preview + +%define suffixS panda3-canary4 + +Source0: https://dl.google.com/dl/android/studio/ide-zips/%{version}/android-studio-%{suffixS}-linux.tar.gz + +Requires: alsa-lib +Requires: freetype +Requires: which +Requires: libXrender +Requires: libXtst +Requires: glibc +Requires: libsecret + +BuildRequires: desktop-file-utils + +%description +Android Studio is the official IDE for Android development, and includes everything you need to build Android apps. + +%prep +%autosetup -n android-studio + +%install +mkdir -p %{buildroot}%{_libexecdir}/%{name} + +cp -a * %{buildroot}%{_libexecdir}/%{name} + +mkdir -p %{buildroot}%{_bindir} +ln -s %{_libexecdir}/%{name}/bin/studio %{buildroot}%{_bindir}/%{name} + +mkdir -p %{buildroot}%{_licensedir}/%{name} +install -Dm644 LICENSE.txt %{buildroot}%{_licensedir}/%{name}/LICENSE.txt + +install -d %{buildroot}%{_datadir}/pixmaps +install -m 0644 -p bin/studio.png %{buildroot}%{_datadir}/pixmaps/%{name}.png +install -d %{buildroot}%{_datadir}/icons/hicolor/scalable/apps +install -m 0644 -p bin/studio.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg + +mkdir -p %{buildroot}%{_datadir}/applications +cat > %{buildroot}%{_datadir}/applications/%{name}.desktop << 'EOF' +[Desktop Entry] +Version=1.0 +Type=Application +Name=Android Studio Canary +Exec=android-studio-canary +Icon=android-studio-canary +Comment=Official IDE for Android development (Canary build) +Categories=Development;IDE; +Terminal=false +StartupNotify=true +StartupWMClass=jetbrains-studio-canary +MimeType=application/x-extension-iml; +EOF + +%check +%desktop_file_validate %{buildroot}%{_datadir}/applications/%{name}.desktop + +%files +%license %{_licensedir}/%{name}/LICENSE.txt +%{_libexecdir}/%{name} +%{_bindir}/%{name} +%{_datadir}/pixmaps/android-studio-canary.png +%{_datadir}/icons/hicolor/scalable/apps/android-studio-canary.svg +%{_datadir}/applications/%{name}.desktop + +%changelog +* Wed Feb 18 2026 veuxit - 2025.3.2.4 +- Update .spec file + +* Sun Feb 15 2026 veuxit - 2025.3.2.4 +- Initial package release \ No newline at end of file diff --git a/anda/devs/android-studio/canary/update.rhai b/anda/devs/android-studio/canary/update.rhai new file mode 100644 index 0000000000..b7e06a1039 --- /dev/null +++ b/anda/devs/android-studio/canary/update.rhai @@ -0,0 +1,10 @@ +let html = get("https://developer.android.com/studio/preview"); +let pattern = `ide-zips/([^/]+)/android-studio-(.*?)-linux\.tar\.gz`; +let nofilter = find(pattern, html, 0); +let version = find(pattern, html, 1); +let suffixS = find(pattern, html, 2); +print(nofilter); +print(version); +print(suffixS); +rpm.version(version); +rpm.define("suffixS", suffixS); \ No newline at end of file diff --git a/anda/devs/android-studio/stable/anda.hcl b/anda/devs/android-studio/stable/anda.hcl index 25dfdd9494..d518888a39 100644 --- a/anda/devs/android-studio/stable/anda.hcl +++ b/anda/devs/android-studio/stable/anda.hcl @@ -1,4 +1,5 @@ project pkg { + arches = ["x86_64"] rpm { spec = "android-studio.spec" } diff --git a/anda/devs/android-studio/stable/android-studio.spec b/anda/devs/android-studio/stable/android-studio.spec index 813c53da21..e6a9457e42 100644 --- a/anda/devs/android-studio/stable/android-studio.spec +++ b/anda/devs/android-studio/stable/android-studio.spec @@ -1,16 +1,32 @@ +%undefine __brp_add_determinism +# disable debuginfo subpackage %global debug_package %{nil} +# Disable build-id symlinks to avoid conflicts +%global _build_id_links none +# don't strip bundled binaries because pycharm checks length (!!!) of binary fsnotif +# and if you strip debug stuff from it, it will complain +%global __strip /bin/true +# dont repack jars +%global __jar_repack %{nil} +# disable rpath checks +%define __brp_check_rpaths %{nil} + %define __requires_exclude_from ^/usr/libexec/android-studio/.*$ %define __provides_exclude_from ^/usr/libexec/android-studio/.*|libedit\\so.*$ %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.2.2.8 +Version: 2025.3.2.6 Release: 1%?dist Summary: Official IDE for Android development License: Apache-2.0 -Packager: like-engels +Packager: veuxit , like-engels +ExclusiveArch: x86_64 URL: https://developer.android.com/studio -Source0: https://dl.google.com/dl/android/studio/ide-zips/%{version}/android-studio-%{version}-linux.tar.gz + +%define suffixS panda2 + +Source0: https://dl.google.com/dl/android/studio/ide-zips/%{version}/android-studio-%{suffixS}-linux.tar.gz Requires: alsa-lib Requires: freetype @@ -20,11 +36,13 @@ Requires: libXtst Requires: glibc Requires: libsecret +BuildRequires: desktop-file-utils + %description Android Studio is the official IDE for Android development, and includes everything you need to build Android apps. %prep -%setup -q -n android-studio +%autosetup -n android-studio %install mkdir -p %{buildroot}%{_libexecdir}/%{name} @@ -37,7 +55,10 @@ ln -s %{_libexecdir}/%{name}/bin/studio %{buildroot}%{_bindir}/%{name} mkdir -p %{buildroot}%{_licensedir}/%{name} install -Dm644 LICENSE.txt %{buildroot}%{_licensedir}/%{name}/LICENSE.txt -install -Dm644 bin/studio.png %{buildroot}%{_datadir}/pixmaps/%{name}.png +install -d %{buildroot}%{_datadir}/pixmaps +install -m 0644 -p bin/studio.png %{buildroot}%{_datadir}/pixmaps/%{name}.png +install -d %{buildroot}%{_datadir}/icons/hicolor/scalable/apps +install -m 0644 -p bin/studio.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg mkdir -p %{buildroot}%{_datadir}/applications cat > %{buildroot}%{_datadir}/applications/%{name}.desktop << 'EOF' @@ -45,9 +66,9 @@ cat > %{buildroot}%{_datadir}/applications/%{name}.desktop << 'EOF' Version=1.0 Type=Application Name=Android Studio -Exec=android-studio %f +Exec=android-studio Icon=android-studio -Comment=The official Android IDE +Comment=Official IDE for Android development Categories=Development;IDE; Terminal=false StartupNotify=true @@ -55,12 +76,17 @@ StartupWMClass=jetbrains-studio MimeType=application/x-extension-iml; EOF +%check +%desktop_file_validate %{buildroot}%{_datadir}/applications/%{name}.desktop + %files %license %{_licensedir}/%{name}/LICENSE.txt %{_libexecdir}/%{name} %{_bindir}/%{name} -%{_datadir}/pixmaps/%{name}.png +%{_datadir}/pixmaps/android-studio.png +%{_datadir}/icons/hicolor/scalable/apps/android-studio.svg %{_datadir}/applications/%{name}.desktop %changelog -%autochangelog +* Fri Feb 20 2026 veuxit - 2025.3.1.8 +- Package update to 2025.3.1.8 panda1-patch1 \ No newline at end of file diff --git a/anda/devs/android-studio/stable/update.rhai b/anda/devs/android-studio/stable/update.rhai index ef1c8dc082..d3e757294a 100644 --- a/anda/devs/android-studio/stable/update.rhai +++ b/anda/devs/android-studio/stable/update.rhai @@ -1 +1,10 @@ -rpm.version(find(`https://redirector.gvt1.com/edgedl/android/studio/ide-zips/([\d.]+)/android-studio-[\d.]+-linux.tar.gz`, get("https://developer.android.com/studio"), 1)); +let html = get("https://developer.android.com/studio"); +let pattern = `ide-zips/([^/]+)/android-studio-(.*?)-linux\.tar\.gz`; +let nofilter = find(pattern, html, 0); +let version = find(pattern, html, 1); +let suffixS = find(pattern, html, 2); +print(nofilter); +print(version); +print(suffixS); +rpm.version(version); +rpm.define("suffixS", suffixS); \ No newline at end of file diff --git a/anda/devs/asar/asar.spec b/anda/devs/asar/asar.spec index bd4143cd8b..f0b73576db 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.0.1 +Version: 4.1.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 2185fbc043..b66ddc8224 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.0 +Version: 0.18.1 %gometa -f @@ -25,7 +25,7 @@ more.} SECURITY.md ballad-of-asdf.md help.txt version.txt Name: asdf -Release: %autorelease +Release: 1%?dist Summary: Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more License: MIT diff --git a/anda/devs/atac/atac.spec b/anda/devs/atac/atac.spec index 872864b2d8..32eb76b7bb 100644 --- a/anda/devs/atac/atac.spec +++ b/anda/devs/atac/atac.spec @@ -6,7 +6,7 @@ %global __brp_mangle_shebangs %{nil} Name: atac -Version: 0.22.1 +Version: 0.23.0 Release: 1%?dist Summary: Arguably a Terminal API Client diff --git a/anda/devs/backport/anda.hcl b/anda/devs/backport/anda.hcl index 4ba8d7de29..37ceb921f6 100644 --- a/anda/devs/backport/anda.hcl +++ b/anda/devs/backport/anda.hcl @@ -1,6 +1,5 @@ project pkg { rpm { spec = "nodejs-backport.spec" - pre_script = "setup.sh" } } diff --git a/anda/devs/backport/nodejs-backport.spec b/anda/devs/backport/nodejs-backport.spec index 32ec4ed420..4a9bb8c6ab 100644 --- a/anda/devs/backport/nodejs-backport.spec +++ b/anda/devs/backport/nodejs-backport.spec @@ -1,60 +1,56 @@ -%global debug_package %{nil} -%global module backport -%bcond test 1 +%global npm_name backport +# Requires Jest so currently disabled +%bcond test 0 -Name: node-%{module} -Version: 10.2.0 -Release: 2%{?dist} +Name: nodejs-%{npm_name} +Version: 11.0.1 +Release: 1%{?dist} Summary: Backport GitHub commits SourceLicense: Apache-2.0 -License: Apache-2.0 AND -URL: https://github.com/sorenlouv/%{module} -%dnl Source0: http://registry.npmjs.org/%{module}/-/%{module}-%{version}.tgz -# Source the tests -Source1: tests-%{version}.tar.bz2 -BuildRequires: bsdtar -BuildRequires: nodejs-devel +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) +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 BuildRequires: nodejs-packaging BuildRequires: nodejs-npm -ExclusiveArch: %{nodejs_arches} noarch +BuildRequires: nodejs-license-checker +%if %{with test} +BuildRequires: yarnpkg +%endif +Obsoletes: node-backport <= 10.2.0 +BuildArch: noarch Packager: Gilver E. %description A simple CLI tool that automates the process of backporting commits on a GitHub repo. %prep -# Maybe I should make some NodeJS online macros... -# Global flag is needed or the module WILL NOT WORK via commandline without some manual intervention -npm install -g %{module}@%{version} --prefix=. -%setup -T -D -n lib/node_modules/%{module} -tar xjf %{SOURCE1} +%npm_prep +%fetch_node_tests /src/test/ /tests/ %build # Empty build section, because RPM reasons %install -mkdir -p %{buildroot}%{nodejs_sitelib}/%{module} -mkdir -p %{buildroot}%{_bindir} -cp -r ./* -t %{buildroot}%{nodejs_sitelib}/%{module} -ln -sf %{nodejs_sitelib}/%{module}/bin/%{module} %{buildroot}%{_bindir}/%{module} +%npm_install -# Should maybe package this so it's easier to call... -npm install -g license-checker --prefix=. -# This could also be made into a macro maybe? -bin/license-checker | sed '/.*repository:.*/d;/.*publisher:.*/d;/.*email:.*/d;/.*url:.*/d;/.*path:.*/d;/.*licenseFile:.*/d;/.*noticeFile:.*/d' > LICENSE.modules +%npm_license_summary +%npm_license -o LICENSE.modules -%check %if %{with test} -NODE_ENV=test %{builddir}/bin/%{module} -R tests +%check +%yarn_test %endif %files %doc README.md %license LICENSE.txt %license LICENSE.modules -%{nodejs_sitelib}/%{module}/ -%{_bindir}/%{module} +%{nodejs_sitelib}/%{npm_name}/ +%{_bindir}/%{npm_name} %changelog +* 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 - Initial package diff --git a/anda/devs/backport/post.rhai b/anda/devs/backport/post.rhai deleted file mode 100644 index 7ec2290326..0000000000 --- a/anda/devs/backport/post.rhai +++ /dev/null @@ -1 +0,0 @@ -sh("rm -rfv anda/devs/backport/*.tar.bz2", #{}); diff --git a/anda/devs/bun/bun-bin.spec b/anda/devs/bun/bun-bin.spec index 98e56b2a74..3a9be7624f 100644 --- a/anda/devs/bun/bun-bin.spec +++ b/anda/devs/bun/bun-bin.spec @@ -8,7 +8,7 @@ %global appid sh.oven.bun Name: bun-bin -Version: 1.3.6 +Version: 1.3.10 Release: 1%?dist Summary: Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one License: MIT diff --git a/anda/devs/codium/codium.spec b/anda/devs/codium/codium.spec index f45211b793..f2bf850d6e 100644 --- a/anda/devs/codium/codium.spec +++ b/anda/devs/codium/codium.spec @@ -1,29 +1,18 @@ -%define debug_package %nil -%global _build_id_links none - -# Exclude private libraries -%global __requires_exclude libffmpeg.so|libcurl.so|libmsalruntime.so -%global __provides_exclude_from %{_datadir}/%{name}/.*\\.so - -%ifarch x86_64 -%define a x64 -%elifarch aarch64 -%define a arm64 -%endif - %global appid com.vscodium.VSCodium -Name: codium -Version: 1.108.10359 -Release: 1%?dist -Summary: Code editing. Redefined. -License: MIT -URL: https://vscodium.com/ -Source0: https://github.com/VSCodium/vscodium/releases/download/%version/VSCodium-linux-%a-%version.tar.gz -Source1: https://raw.githubusercontent.com/VSCodium/vscodium/%version/README.md -Source2: https://raw.githubusercontent.com/VSCodium/vscodium/%version/LICENSE -Requires: at-spi2-atk cairo expat gtk3 xrandr mesa-libgbm nspr nss nss-util xdg-utils -Provides: vscodium = %evr +Name: codium +Version: 1.110.11631 +%electronmeta -D +%global __requires_exclude %{__requires_exclude}|libcurl.so|libmsalruntime.so +Release: 1%{?dist} +Summary: Code editing. Redefined. +License: %{electron_license} +URL: https://vscodium.com/ +Source0: https://github.com/VSCodium/vscodium/releases/download/%{version}/VSCodium-linux-%{_electron_cpu}-%{version}.tar.gz +Source1: https://raw.githubusercontent.com/VSCodium/vscodium/%{version}/README.md +Source2: https://raw.githubusercontent.com/VSCodium/vscodium/%{version}/LICENSE +Requires: at-spi2-atk cairo expat gtk3 xrandr mesa-libgbm nspr nss nss-util xdg-utils +Provides: vscodium = %{evr} BuildRequires: rpm_macro(fdupes) %description @@ -35,7 +24,7 @@ with what developers need for the core edit-build-debug cycle. %prep mkdir stuff cd stuff -tar xf %SOURCE0 +tar xf %{SOURCE0} cat < vscodium-bin-uri-handler.desktop [Desktop Entry] @@ -78,40 +67,40 @@ EOF %install cd stuff -mkdir -p %buildroot%_datadir/doc/%name/ %buildroot%_datadir/licenses/%name -install -Dm644 %SOURCE1 %buildroot%_docdir/%name/ -install -Dm644 %SOURCE2 %buildroot%_datadir/licenses/%name/ -install -dm755 %buildroot%_datadir/%name -install -dm755 %buildroot%_bindir -install -dm755 %buildroot%_datadir/{applications,pixmaps} -cp -r * %buildroot%_datadir/%name -rm -rf %buildroot%_datadir/%name/*.desktop -ln -s %_datadir/%name/bin/codium %buildroot%_bindir/codium -ln -s %_datadir/%name/bin/codium %buildroot%_bindir/vscodium -install -D -m644 vscodium-bin.desktop %buildroot%_datadir/applications/codium.desktop -install -D -m644 vscodium-bin-uri-handler.desktop %buildroot%_datadir/applications/codium-uri-handler.desktop -install -D -m644 resources/app/resources/linux/code.png %buildroot%_datadir/pixmaps/vscodium.png +mkdir -p %{buildroot}%{_datadir}/doc/%{name}/ %{buildroot}%{_datadir}/licenses/%{name} +install -Dm644 %{SOURCE1} %{buildroot}%{_docdir}/%{name}/ +install -Dm644 %{SOURCE2} %{buildroot}%{_datadir}/licenses/%{name}/ +install -dm755 %{buildroot}%{_datadir}/%{name} +install -dm755 %{buildroot}%{_bindir} +install -dm755 %{buildroot}%{_datadir}/{applications,pixmaps} +cp -r * %{buildroot}%{_datadir}/%{name} +rm -rf %{buildroot}%{_datadir}/%{name}/*.desktop +ln -s %{_datadir}/%{name}/bin/codium %{buildroot}%{_bindir}/codium +ln -s %{_datadir}/%{name}/bin/codium %{buildroot}%{_bindir}/vscodium +install -D -m644 vscodium-bin.desktop %{buildroot}%{_datadir}/applications/codium.desktop +install -D -m644 vscodium-bin-uri-handler.desktop %{buildroot}%{_datadir}/applications/codium-uri-handler.desktop +install -D -m644 resources/app/resources/linux/code.png %{buildroot}%{_datadir}/pixmaps/vscodium.png # Symlink shell completions -install -dm755 %buildroot%_datadir/zsh/site-functions -install -dm755 %buildroot%_datadir/bash-completion/completions -ln -s %_datadir/%name/resources/completions/zsh/_codium %buildroot%_datadir/zsh/site-functions -ln -s %_datadir/%name/resources/completions/bash/codium %buildroot%_datadir/bash-completion/completions +install -dm755 %{buildroot}%{_datadir}/zsh/site-functions +install -dm755 %{buildroot}%{_datadir}/bash-completion/completions +ln -s %{_datadir}/%{name}/resources/completions/zsh/_codium %{buildroot}%{_datadir}/zsh/site-functions +ln -s %{_datadir}/%{name}/resources/completions/bash/codium %{buildroot}%{_datadir}/bash-completion/completions -%fdupes %_datadir/%name/resources/app/extensions/ +%fdupes %{_datadir}/%{name}/resources/app/extensions/ #terra_appstream %files %doc README.md %license LICENSE -%_datadir/%name -%_bindir/codium -%_bindir/vscodium -%_datadir/applications/codium.desktop -%_datadir/applications/codium-uri-handler.desktop -%_datadir/pixmaps/vscodium.png -%dnl %_metainfodir/%appid.metainfo.xml +%{_datadir}/%{name} +%{_bindir}/codium +%{_bindir}/vscodium +%{_datadir}/applications/codium.desktop +%{_datadir}/applications/codium-uri-handler.desktop +%{_datadir}/pixmaps/vscodium.png +%dnl %{_metainfodir}/%{appid}.metainfo.xml %changelog * Sat Jun 17 2023 madonuko - 1.79.2.23166-2 diff --git a/anda/devs/deno/deno-fix-metadata-auto.diff b/anda/devs/deno/deno-fix-metadata-auto.diff index 7ac1a526d8..84f73bcc4f 100644 --- a/anda/devs/deno/deno-fix-metadata-auto.diff +++ b/anda/devs/deno/deno-fix-metadata-auto.diff @@ -1,11 +1,11 @@ ---- deno-2.6.3/Cargo.toml 1970-01-01T00:00:01+00:00 -+++ deno-2.6.3/Cargo.toml 2025-12-24T13:35:12.790326+00:00 -@@ -657,24 +657,3 @@ +--- deno-2.7.4/Cargo.toml 1970-01-01T00:00:01+00:00 ++++ deno-2.7.4/Cargo.toml 2026-03-05T14:17:34.447378+00:00 +@@ -659,24 +659,3 @@ [target."cfg(unix)".dependencies.shell-escape] version = "=0.1.5" -[target."cfg(windows)".dependencies.deno_subprocess_windows] --version = "0.20.0" +-version = "0.32.0" - -[target."cfg(windows)".dependencies.winapi] -version = "=0.3.9" diff --git a/anda/devs/deno/rust-deno.spec b/anda/devs/deno/rust-deno.spec index d21eb51554..b7020030fe 100644 --- a/anda/devs/deno/rust-deno.spec +++ b/anda/devs/deno/rust-deno.spec @@ -6,8 +6,8 @@ %global crate deno Name: rust-deno -Version: 2.6.5 -Release: 1%?dist +Version: 2.7.6 +Release: 1%{?dist} Summary: Deno executable License: MIT @@ -62,7 +62,7 @@ cp %{S:2} gcc %global __cc %_builddir/%buildsubdir/gcc -sed '/\[env\]/a CC="%__cc"' -i .cargo/config +%dnl sed '/\[env\]/a CC="%__cc"' -i .cargo/config %build %{cargo_license_summary_online} diff --git a/anda/devs/devpod/golang-github-loft-sh-devpod.spec b/anda/devs/devpod/golang-github-loft-sh-devpod.spec index cc6687a583..e55ea0f47e 100644 --- a/anda/devs/devpod/golang-github-loft-sh-devpod.spec +++ b/anda/devs/devpod/golang-github-loft-sh-devpod.spec @@ -17,7 +17,7 @@ and lets you use any cloud, kubernetes or just localhost docker.} loadtest/README.md Name: devpod -Release: 2%?dist +Release: 3%?dist Summary: Spin up dev environments in any infra Provides: golang-github-loft-sh-devpod BuildRequires: anda-srpm-macros mold diff --git a/anda/devs/edit/com.microsoft.edit.metainfo.xml b/anda/devs/edit/com.microsoft.edit.metainfo.xml index 972f50d221..33cc838d57 100644 --- a/anda/devs/edit/com.microsoft.edit.metainfo.xml +++ b/anda/devs/edit/com.microsoft.edit.metainfo.xml @@ -1,10 +1,12 @@ com.microsoft.edit + CC0-1.0 + MIT Microsoft Edit - We all edit. + We all edit - https://github.com/microsoft/edit/blob/main/assets/edit_hero_image.png + https://github.com/microsoft/edit/blob/main/assets/edit_hero_image.png

A simple editor for simple needs.

@@ -13,6 +15,7 @@ The goal is to provide an accessible editor that even users largely unfamiliar with terminals can easily use.

+ https://github.com/microsoft/edit https://github.com/microsoft/edit Microsoft Corporation diff --git a/anda/devs/edit/edit.spec b/anda/devs/edit/edit.spec index 6a796f4cb4..d7e7137bea 100644 --- a/anda/devs/edit/edit.spec +++ b/anda/devs/edit/edit.spec @@ -8,7 +8,7 @@ An editor that pays homage to the classic MS-DOS Editor, but with a modern inter Name: %{crate} Version: 1.2.1 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A simple editor for simple needs. SourceLicense: MIT License: MIT AND (MIT OR Apache-2.0) @@ -58,4 +58,3 @@ install -Dm644 assets/%{appid}.desktop %{buildroot}%{_datadir}/applications/%{ap %changelog * Thu May 22 2025 Gilver E. - 1.0.0-1 - Initial package - diff --git a/anda/devs/flow/flow-control.spec b/anda/devs/flow/flow-control.spec index 66cc2625c8..571c97f5f4 100644 --- a/anda/devs/flow/flow-control.spec +++ b/anda/devs/flow/flow-control.spec @@ -1,6 +1,6 @@ Name: flow-control Epoch: 1 -Version: 0.6.0 +Version: 0.7.2 Release: 1%?dist Summary: A programmer's text editor License: MIT diff --git a/anda/devs/flutter/flutter.spec b/anda/devs/flutter/flutter.spec index 08e18b8655..e3d68f9faa 100644 --- a/anda/devs/flutter/flutter.spec +++ b/anda/devs/flutter/flutter.spec @@ -1,6 +1,6 @@ Name: flutter -Version: 3.38.7 -Release: 1%?dist +Version: 3.41.5 +Release: 1%{?dist} Summary: SDK for crafting beautiful, fast user experiences from a single codebase License: BSD-3-Clause URL: https://flutter.dev diff --git a/anda/devs/ghostty/nightly/ghostty-nightly.spec b/anda/devs/ghostty/nightly/ghostty-nightly.spec index f4a42c3b75..fe1b46701f 100644 --- a/anda/devs/ghostty/nightly/ghostty-nightly.spec +++ b/anda/devs/ghostty/nightly/ghostty-nightly.spec @@ -1,15 +1,15 @@ -%global commit dc43ded149968309c847e33c710989b1240daf9a +%global commit c9e1006213eb9234209924c91285d6863e59ce4c %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global fulldate 2026-01-20 +%global fulldate 2026-03-18 %global commit_date %(echo %{fulldate} | sed 's/-//g') %global public_key RWQlAjJC23149WL2sEpT/l0QKy7hMIFhYdQOFy0Z7z7PbneUgvlsnYcV -%global ver 1.3.0 +%global ver 1.3.2 %global base_name ghostty %global appid com.mitchellh.%{base_name} Name: %{base_name}-nightly Version: %{ver}~tip^%{commit_date}git%{shortcommit} -Release: 1%?dist +Release: 1%{?dist} %if 0%{?fedora} <= 41 Epoch: 1 %endif @@ -185,7 +185,7 @@ Ghostty's terminfo. Needed for basic terminal function. Summary: The libghostty-vt libraries %description -n libghostty-vt-nightly -This package contains the libghostty-vt libraries, the first of many linghostty libaries in development. +This package contains the libghostty-vt libraries, the first of many libghostty libaries in development. %package -n libghostty-vt-nightly-devel Summary: Development files for libghostty-vt @@ -282,6 +282,7 @@ rm -rf %{buildroot}%{_datadir}/terminfo/g/%{base_name} %{_datadir}/%{base_name}/shell-integration/bash/%{base_name}.bash %{_datadir}/%{base_name}/shell-integration/elvish/lib/%{base_name}-integration.elv %{_datadir}/%{base_name}/shell-integration/fish/vendor_conf.d/%{base_name}-shell-integration.fish +%{_datadir}/%{base_name}/shell-integration/nushell/vendor/autoload/%{base_name}.nu %{_datadir}/%{base_name}/shell-integration/zsh/.zshenv %{_datadir}/%{base_name}/shell-integration/zsh/%{base_name}-integration diff --git a/anda/devs/ghostty/stable/ghostty.spec b/anda/devs/ghostty/stable/ghostty.spec index f5d8b0af51..02c26afca1 100644 --- a/anda/devs/ghostty/stable/ghostty.spec +++ b/anda/devs/ghostty/stable/ghostty.spec @@ -3,8 +3,8 @@ %global appid com.mitchellh.ghostty Name: ghostty -Version: 1.2.3 -Release: 4%{?dist} +Version: 1.3.1 +Release: 1%{?dist} Summary: A fast, native terminal emulator written in Zig. License: MIT AND MPL-2.0 AND OFL-1.1 AND (WTFPL OR CC0-1.0) AND Apache-2.0 URL: https://ghostty.org/ @@ -76,6 +76,13 @@ BuildArch: noarch %description zsh-completion Zsh shell completion for Ghostty. +%package devel +Summary: Development files for Ghostty. +Requires: %{name} = %{evr} + +%description devel +This package includes the development files for Ghostty. + %package kio Summary: KIO support for Ghostty Requires: %{name} = %{evr} @@ -145,6 +152,19 @@ BuildArch: noarch %description terminfo Ghostty's terminfo. Needed for basic terminal function. +%package -n libghostty-vt +Summary: The libghostty-vt libraries + +%description -n libghostty-vt +This package contains the libghostty-vt libraries, the first of many libghostty libaries in development. + +%package -n libghostty-vt-devel +Summary: Development files for libghostty-vt +Requires: libghostty-vt = %{evr} + +%description -n libghostty-vt-devel +This package contains the libraries and header files that are needed for developing with libghostty-vt. + %prep /usr/bin/minisign -V -m %{SOURCE0} -x %{SOURCE1} -P %{public_key} %autosetup @@ -203,6 +223,9 @@ rm -rf %{buildroot}%{_datadir}/terminfo/g/%{name} %files zsh-completion %{zsh_completions_dir}/_%{name} +%files devel +%{_includedir}/ghostty/ + %files kio %{_datadir}/kio/servicemenus/%{appid}.desktop @@ -230,6 +253,7 @@ rm -rf %{buildroot}%{_datadir}/terminfo/g/%{name} %{_datadir}/%{name}/shell-integration/bash/%{name}.bash %{_datadir}/%{name}/shell-integration/elvish/lib/%{name}-integration.elv %{_datadir}/%{name}/shell-integration/fish/vendor_conf.d/%{name}-shell-integration.fish +%{_datadir}/%{name}/shell-integration/nushell/vendor/autoload/%{name}.nu %{_datadir}/%{name}/shell-integration/zsh/.zshenv %{_datadir}/%{name}/shell-integration/zsh/%{name}-integration @@ -248,6 +272,13 @@ rm -rf %{buildroot}%{_datadir}/terminfo/g/%{name} %postun %systemd_user_postun app-%{appid}.service +%files -n libghostty-vt +%{_libdir}/libghostty-vt.so.* + +%files -n libghostty-vt-devel +%{_libdir}/libghostty-vt.so +%{_datadir}/pkgconfig/libghostty-vt.pc + %changelog * Tue Oct 28 2025 Gilver E. - 1.2.3-2 - Disabled bundled themes diff --git a/anda/devs/kvrocks/kvrocks.spec b/anda/devs/kvrocks/kvrocks.spec index 39cbf442dd..eac6b8437d 100644 --- a/anda/devs/kvrocks/kvrocks.spec +++ b/anda/devs/kvrocks/kvrocks.spec @@ -1,5 +1,5 @@ Name: kvrocks -Version: 2.14.0 +Version: 2.15.0 Release: 1%?dist Summary: Distributed key value NoSQL database that uses RocksDB License: Apache-2.0 diff --git a/anda/devs/lowfi/rust-lowfi.spec b/anda/devs/lowfi/rust-lowfi.spec index 90f8da55bc..34edd93a94 100644 --- a/anda/devs/lowfi/rust-lowfi.spec +++ b/anda/devs/lowfi/rust-lowfi.spec @@ -2,8 +2,8 @@ %global crate lowfi Name: rust-lowfi -Version: 2.0.1 -Release: 1%?dist +Version: 2.0.5 +Release: 1%{?dist} Summary: Extremely simple lofi player License: MIT diff --git a/anda/devs/micro/micro-nightly.spec b/anda/devs/micro/micro-nightly.spec index 46450a8535..30d61a563b 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 d1426b6fb2777222d1980029ea2057518ebae63b -%global commit_date 20260119 +%global commit_hash 6760768b9ec6ccc6f0c5553f099be498ef185f0f +%global commit_date 20260318 %global shortcommit %{sub %{commit_hash} 1 7} %global ver 2.0.15 diff --git a/anda/devs/powershell/com.microsoft.PowerShell.metainfo.xml b/anda/devs/powershell/com.microsoft.PowerShell.metainfo.xml index 5d665687dc..5d25a7bc29 100644 --- a/anda/devs/powershell/com.microsoft.PowerShell.metainfo.xml +++ b/anda/devs/powershell/com.microsoft.PowerShell.metainfo.xml @@ -1,10 +1,12 @@ com.microsoft.PowerShell + CC0-1.0 + MIT Microsoft PowerShell PowerShell for every system! - https://github.com/PowerShell/PowerShell/blob/master/assets/Powershell_256.png + https://github.com/PowerShell/PowerShell/blob/master/assets/Powershell_256.png

@@ -16,4 +18,5 @@ Microsoft Corporation com.microsoft.PowerShell + https://microsoft.com/PowerShell diff --git a/anda/devs/powershell/powershell.spec b/anda/devs/powershell/powershell.spec index b1b680303b..59bf21cab4 100644 --- a/anda/devs/powershell/powershell.spec +++ b/anda/devs/powershell/powershell.spec @@ -5,7 +5,7 @@ %global git_name PowerShell # Not currently tracked, all PowerShell specifies is a version under 4.99 %global pester_version 4.10.1 -%global dotnet_version 9.0 +%global dotnet_version 10.0 # Arch defined by .NET %ifarch %{x86_64} %global darch x64 @@ -18,8 +18,8 @@ %bcond test 1 Name: powershell -Version: 7.5.4 -Release: 2%{?dist} +Version: 7.6.0 +Release: 1%{?dist} Summary: A cross-platform automation and configuration tool/framework SourceLicense: MIT License: Apache-2.0 AND BSD-2-Clause AND MIT diff --git a/anda/devs/sccache/anda.hcl b/anda/devs/sccache/anda.hcl new file mode 100644 index 0000000000..dd37752162 --- /dev/null +++ b/anda/devs/sccache/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "terra-sccache.spec" + } + labels { + extras = 1 + } +} diff --git a/anda/devs/sccache/terra-sccache.spec b/anda/devs/sccache/terra-sccache.spec new file mode 100644 index 0000000000..6b8d529b27 --- /dev/null +++ b/anda/devs/sccache/terra-sccache.spec @@ -0,0 +1,60 @@ +%global crate sccache +%global _description %{expand: +Sccache is a ccache-like tool. It is used as a compiler wrapper and +avoids compilation when possible. Sccache has the capability to utilize +caching in remote storage environments, including various cloud storage +options, or alternatively, in local storage. +This build actually enables caching to remote storage.} +%bcond dist %["%{_target_cpu}" == "x86_64"] + +Name: terra-sccache +Version: 0.14.0 +Release: 1%{?dist} +Summary: Remote caching enabled builds of sccache +SourceLicense: Apache-2.0 AND (Apache-2.0 OR MIT) +License: ((Apache-2.0 OR MIT) AND BSD-3-Clause) AND (MIT OR Apache-2.0) AND Unicode-DFS-2016) 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 (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 CDLA-Permissive-2.0 AND ISC AND MIT AND (MIT OR Apache-2.0) 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://crates.io/crates/sccache +Source0: %{crates_source} +BuildRequires: anda-srpm-macros +BuildRequires: cargo +BuildRequires: cargo-rpm-macros +BuildRequires: mold +%if %{with dist} +BuildRequires: perl +%endif +BuildRequires: rust +BuildRequires: rust-srpm-macros +BuildRequires: pkgconfig(openssl) +Provides: %{crate} = %{evr} +Packager: Gilver E. + +%description %_description + +%prep +%autosetup -n %{crate}-%{version} +%cargo_prep_online + +%build +%cargo_build -f all%{?with_dist:,dist-server} + +%install +find target/rpm \ + -maxdepth 1 -type f -executable ! -name '*.so' \ + -exec install -Dm755 -t %{buildroot}%{_bindir} {} + + +%cargo_license_summary_online -f all%{?with_dist:,dist-server} +%{cargo_license_online -f all%{?with_dist:,dist-server}} > LICENSE.dependencies + +%files +%license LICENSE +%license LICENSE.dependencies +%doc CODE_OF_CONDUCT.md +%doc README.md +%{_bindir}/sccache +%if %{with dist} +%{_bindir}/sccache-dist +%endif + +%changelog +* Fri Feb 20 2026 Gilver E. - 0.14.0-1 +- Initial package diff --git a/anda/devs/sccache/update.rhai b/anda/devs/sccache/update.rhai new file mode 100644 index 0000000000..eb645c69f5 --- /dev/null +++ b/anda/devs/sccache/update.rhai @@ -0,0 +1 @@ +rpm.version(crates("sccache")); diff --git a/anda/devs/tracy/tracy.spec b/anda/devs/tracy/tracy.spec index f326ec8060..eb1b3e601a 100644 --- a/anda/devs/tracy/tracy.spec +++ b/anda/devs/tracy/tracy.spec @@ -1,11 +1,11 @@ Name: tracy Version: 0.13.1 -Release: 1%?dist +Release: 2%?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) +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 Packager: Owen Zimmerman @@ -69,7 +69,6 @@ install -Dm644 icon/application-tracy.svg %buildroot%_iconsdir/hicolor/scalable/ %files devel %_libdir/pkgconfig/tracy.pc -%dir %_includedir/tracy %_includedir/tracy/* %changelog diff --git a/anda/devs/turbowarp/anda.hcl b/anda/devs/turbowarp/anda.hcl new file mode 100644 index 0000000000..87f8ab6de5 --- /dev/null +++ b/anda/devs/turbowarp/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "turbowarp.spec" + } +} diff --git a/anda/devs/turbowarp/turbowarp.spec b/anda/devs/turbowarp/turbowarp.spec new file mode 100644 index 0000000000..052b9fe652 --- /dev/null +++ b/anda/devs/turbowarp/turbowarp.spec @@ -0,0 +1,116 @@ +%define appid org.turbowarp.TurboWarp + +Name: turbowarp-desktop +%electronmeta -D +Version: 1.15.2 +Release: 1%?dist +Summary: A better offline editor for Scratch 3 +URL: https://desktop.turbowarp.org/ +License: GPL-3.0-only AND %{electron_license} + +BuildRequires: anda-srpm-macros +BuildRequires: terra-appstream-helper + +Requires: glibc +Requires: glib2 +Requires: nss-util +Requires: nss +Requires: atk +Requires: gtk3 +Requires: cups-libs +Requires: libX11 +Requires: libXcomposite +Requires: libXfixes +Requires: libXrandr +Requires: mesa-libgbm +Requires: expat +Requires: libxcb +Requires: libxkbcommon +Requires: systemd-libs +Requires: alsa-lib +Requires: at-spi2-core +Requires: pcre2 +Requires: libffi +Requires: zlib-ng +Requires: libmount +Requires: libselinux +Requires: nspr +Requires: avahi-libs +Requires: gnutls +Requires: libpng +Requires: fontconfig +Requires: freetype +Requires: libXrender +Requires: pixman +Requires: pango +Requires: harfbuzz +Requires: fribidi +Requires: cairo-gobject +Requires: gdk-pixbuf2 +Requires: libepoxy +Requires: libXi +Requires: libcloudproviders +Requires: libtinysparql +Requires: libwayland-client +Requires: libthai +Requires: libdrm +Requires: libXau +Requires: libcap +Requires: libblkid +Requires: krb5-libs +Requires: libcom_err +Requires: keyutils-libs +Requires: openssl-libs +Requires: p11-kit +Requires: libidn2 +Requires: libunistring +Requires: libtasn1 +Requires: nettle +Requires: gmp +Requires: libxml2 +Requires: bzip2-libs +Requires: libbrotli +Requires: libwayland-cursor +Requires: libwayland-egl +Requires: libXcursor +Requires: libXinerama +Requires: graphite2 +Requires: glycin-libs +Requires: json-glib +Requires: sqlite-libs +Requires: libdatrie +Requires: xz-libs +Requires: lcms2 +Requires: libseccomp + +Packager: junefish + +%description +%summary. + +%prep +%git_clone https://github.com/TurboWarp/desktop %version +%__desktop_file_edit linux-files/%appid.desktop --set-key=Exec --set-value=%{_bindir}/turbowarp-desktop + +%build +%npm_build -c -B -r fetch,webpack:prod + +%install +%electron_install -i %appid -I build/ + +%terra_appstream -o linux-files/%appid.metainfo.xml + +%__desktop_file_install linux-files/%appid.desktop + +%files +%license LICENSE +%doc README.md +%{_bindir}/turbowarp-desktop +%{_libdir}/turbowarp-desktop/ +%{_appsdir}/%appid.desktop +%{_hicolordir}/512x512/apps/%appid.png +%{_metainfodir}/%appid.metainfo.xml + +%changelog +* Sat Jan 24 2026 june-fish - 1.15.2 +- Initial Package diff --git a/anda/devs/turbowarp/update.rhai b/anda/devs/turbowarp/update.rhai new file mode 100644 index 0000000000..7db05c5753 --- /dev/null +++ b/anda/devs/turbowarp/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("TurboWarp/desktop")); diff --git a/anda/devs/zed/nightly/zed-nightly.spec b/anda/devs/zed/nightly/zed-nightly.spec index 92a2b2855e..1f4bc7e663 100644 --- a/anda/devs/zed/nightly/zed-nightly.spec +++ b/anda/devs/zed/nightly/zed-nightly.spec @@ -1,7 +1,7 @@ -%global commit ff35da22fbe67a65632a8009827f114262c76e4d +%global commit 2aa366606328dd9ac52f0eea34b4c0bab9000101 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260121 -%global ver 0.221.0 +%global commit_date 20260319 +%global ver 0.230.0 %bcond_with check %bcond_with debug_no_build @@ -22,7 +22,7 @@ Name: zed-nightly Version: %ver^%commit_date.%shortcommit -Release: 1%?dist +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 diff --git a/anda/devs/zed/preview/zed-preview.spec b/anda/devs/zed/preview/zed-preview.spec index 95ba6594c0..693a4babe4 100644 --- a/anda/devs/zed/preview/zed-preview.spec +++ b/anda/devs/zed/preview/zed-preview.spec @@ -5,7 +5,7 @@ %global debug_package %{nil} %endif -%global ver 0.220.2-pre +%global ver 0.229.0-pre # Exclude input files from mangling %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ @@ -17,7 +17,7 @@ Name: zed-preview Version: %(echo %ver | sed 's/-/~/') -Release: 1%?dist +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 diff --git a/anda/devs/zed/stable/zed.spec b/anda/devs/zed/stable/zed.spec index a505d15edd..b32f819b39 100644 --- a/anda/devs/zed/stable/zed.spec +++ b/anda/devs/zed/stable/zed.spec @@ -15,8 +15,8 @@ %global rustflags_debuginfo 0 Name: zed -Version: 0.219.5 -Release: 1%?dist +Version: 0.228.0 +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 diff --git a/anda/fonts/geist/geist.spec b/anda/fonts/geist/geist.spec index 8ddbbd25ea..577d99b9b2 100644 --- a/anda/fonts/geist/geist.spec +++ b/anda/fonts/geist/geist.spec @@ -1,8 +1,10 @@ +%global ver 1.8.0 + Name: geist-font -Version: 1.6.0 +Version: %(echo %ver | sed 's/^geist@//') Release: 1%?dist URL: https://vercel.com/font -Source0: https://github.com/vercel/geist-font/archive/refs/tags/%version.tar.gz +Source0: https://github.com/vercel/geist-font/archive/refs/tags/%ver.tar.gz License: OFL-1.1 Summary: Geist is a new font family for Vercel, created by Vercel in collaboration with Basement Studio BuildRequires: make python3 python3.10 python3.10-devel meson cairo cairo-devel gcc @@ -18,7 +20,7 @@ that is based on the principles of classic Swiss typography. It is designed to b headlines, logos, posters, and other large display sizes. %package mono -Requires: %{name} = %{version}-%{release} +Requires: %{name} = %{evr} Summary: Geist Mono is a monospaced typeface that has been crafted to be the perfect partner to Geist Sans Provides: geist-mono = %evr Provides: geist-mono-fonts = %evr @@ -28,7 +30,7 @@ Geist Mono is a monospaced typeface that has been crafted to be the perfect part It is designed to be used in code editors, diagrams, terminals, and other textbased interfaces where code is represented. %prep -%autosetup -n %name-%version +%autosetup %build %make_build diff --git a/anda/fonts/geist/update.rhai b/anda/fonts/geist/update.rhai index 0740bc084d..320e0e7e86 100644 --- a/anda/fonts/geist/update.rhai +++ b/anda/fonts/geist/update.rhai @@ -1 +1 @@ -rpm.version(gh("vercel/geist-font")); +rpm.global("ver", gh("vercel/geist-font")); diff --git a/anda/fonts/iosevka/iosevka-fonts.spec b/anda/fonts/iosevka/iosevka-fonts.spec index 27e2b699bb..7b7f274452 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.0.0 +Version: 34.2.1 Release: 1%?dist Packager: Cappy Ishihara Summary: Versatile typeface for code, from code. diff --git a/anda/fonts/sarasa-gothic/sarasa-gothic-fonts.spec b/anda/fonts/sarasa-gothic/sarasa-gothic-fonts.spec index 1904d133dd..b8afa6cb43 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.35 +Version: 1.0.36 Release: 1%?dist URL: https://github.com/be5invis/Sarasa-Gothic Source0: %url/releases/download/v%version/Sarasa-TTC-%version.7z diff --git a/anda/fonts/sipa/sipa-fonts.spec b/anda/fonts/sipa/sipa-fonts.spec index d6b5dac8b8..68948332bf 100644 --- a/anda/fonts/sipa/sipa-fonts.spec +++ b/anda/fonts/sipa/sipa-fonts.spec @@ -5,7 +5,7 @@ # namespace %global fontorg th.or.sipa Version: 20200217 -Release: 7%{?dist} +Release: 8%{?dist} URL: https://www.nstda.or.th/home/news_post/thai-font/ %global fontlicense LicenseRef-DIP-SIPA AND OFL-1.1-RFN %global fontlicenses LICENSE @@ -59,7 +59,7 @@ BuildArch: noarch %global fontfamily1 TH Sarabun PSK %global foundry1 Suppakit Chalermlarp -%global fonts1 'TH Sarabun'*.ttf +%global fonts1 'TH Sarabun'.ttf 'TH Sarabun Italic.ttf' 'TH Sarabun Bold.ttf' 'TH Sarabun BoldItalic.ttf' %global fontsummary1 %{fontfamily1} font family %global fontdescription1 %{common_description} diff --git a/anda/fonts/spleen/spleen-fonts.spec b/anda/fonts/spleen/spleen-fonts.spec index e00030259e..7369ab76ea 100644 --- a/anda/fonts/spleen/spleen-fonts.spec +++ b/anda/fonts/spleen/spleen-fonts.spec @@ -3,7 +3,7 @@ %global fontcontact security@fyralabs.com %global fontorg com.fyralabs.terra -Version: 2.1.0 +Version: 2.2.0 Release: 1%?dist URL: https://www.cambus.net/spleen-monospaced-bitmap-fonts/ diff --git a/anda/games/ScopeBuddy/ScopeBuddy.spec b/anda/games/ScopeBuddy/ScopeBuddy.spec index 91b9f72833..f8483abe3c 100644 --- a/anda/games/ScopeBuddy/ScopeBuddy.spec +++ b/anda/games/ScopeBuddy/ScopeBuddy.spec @@ -1,19 +1,17 @@ Name: ScopeBuddy -Version: 1.3.1 -Release: 1%?dist +Version: 1.4.0 +Release: 2%?dist Summary: A manager script to make gamescope easier to use on desktop License: Apache-2.0 -URL: https://github.com/HikariKnight/ScopeBuddy +URL: https://github.com/OpenGamingCollective/ScopeBuddy Source0: %url/archive/refs/tags/%version.tar.gz BuildArch: noarch Requires: bash Requires: perl Requires: (gamescope or terra-gamescope) - Suggests: (kscreen-doctor or gnome-randr) Suggests: jq - Provides: scopebuddy Provides: scb @@ -26,16 +24,19 @@ A manager script to make gamescope easier to use on the desktop (or if you use i %autosetup %install -install -Dm 755 bin/scopebuddy %{buildroot}%{_bindir}/scopebuddy +install -Dpm0755 -t %{buildroot}%{_bindir}/ bin/scopebuddy bin/scb %post -%{__ln_s} -f %{_bindir}/scopebuddy %{_bindir}/scb %files %doc README.md %license LICENSE %{_bindir}/scopebuddy +%{_bindir}/scb %changelog +* Thu Feb 05 2025 Tulip Blossom +- Move sources to OpenGamingCollective repository instead of personal HikariKnight repo + * Tue Dec 16 2025 Owen Zimmerman - Initial commit diff --git a/anda/games/chess-tui/rust-chess-tui.spec b/anda/games/chess-tui/rust-chess-tui.spec index 100d6da896..bac8b542a9 100644 --- a/anda/games/chess-tui/rust-chess-tui.spec +++ b/anda/games/chess-tui/rust-chess-tui.spec @@ -4,7 +4,7 @@ %global crate chess-tui Name: rust-chess-tui -Version: 2.3.0 +Version: 2.5.1 Release: 1%?dist Summary: Rusty chess game in your terminal 🦀 diff --git a/anda/games/gamescope-session-ogui-steam/anda.hcl b/anda/games/gamescope-session-ogui-steam/anda.hcl new file mode 100644 index 0000000000..3a68f04b2f --- /dev/null +++ b/anda/games/gamescope-session-ogui-steam/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "gamescope-session-ogui-steam.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/games/gamescope-session-ogui-steam/gamescope-session-ogui-steam.spec b/anda/games/gamescope-session-ogui-steam/gamescope-session-ogui-steam.spec new file mode 100644 index 0000000000..88a5fdcbf0 --- /dev/null +++ b/anda/games/gamescope-session-ogui-steam/gamescope-session-ogui-steam.spec @@ -0,0 +1,41 @@ +%define debug_package %nil + +%global commit 6835776876a2b9e5fc819bd8d98f06ae51fa6394 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commit_date 20231030 + +Name: gamescope-session-ogui-steam +Version: 0~%{commit_date}git.%{shortcommit} +Release: 1%?dist +Summary: gamescope-session-steam +License: GPL-3.0-only +URL: https://github.com/OpenGamingCollective/gamescope-session-ogui-steam +Source0: %url/archive/%commit.tar.gz +Requires: gamescope-session-steam +Requires: opengamepadui +Packager: Tulip Blossom +BuildArch: noarch + +%description +Gamescope Session for OpenGamepadUI in overlay mode with Steam + +%prep +%autosetup -n %name-%commit + +%build + +%install +install -Dpm0755 -t "%buildroot%_datadir/gamescope-session-plus/sessions.d/" ".%_datadir/gamescope-session-plus/sessions.d/steam-plus" +install -Dpm0644 -t "%buildroot%_datadir/wayland-sessions/" ".%_datadir/wayland-sessions/gamescope-session-steam-plus.desktop" +install -Dpm0644 -t "%buildroot%_datadir/wayland-sessions/" ".%_datadir/wayland-sessions/gamepadui-with-qam-session.desktop" + +%files +%doc README.md +%license LICENSE +%{_datadir}/gamescope-session-plus/sessions.d/steam-plus +%{_datadir}/wayland-sessions/gamescope-session-steam-plus.desktop +%{_datadir}/wayland-sessions/gamepadui-with-qam-session.desktop + +%changelog +* Mon Feb 02 2026 Tulip Blossom - 20231030.6835776-1 +- Initial package diff --git a/anda/games/gamescope-session-ogui-steam/update.rhai b/anda/games/gamescope-session-ogui-steam/update.rhai new file mode 100644 index 0000000000..f9fc5cf225 --- /dev/null +++ b/anda/games/gamescope-session-ogui-steam/update.rhai @@ -0,0 +1,7 @@ +if filters.contains("nightly") { + rpm.global("commit", gh_commit("OpenGamingCollective/gamescope-session-ogui-steam")); + if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); + } +} diff --git a/anda/games/gamescope-session-opengamepadui/anda.hcl b/anda/games/gamescope-session-opengamepadui/anda.hcl new file mode 100644 index 0000000000..0b8ab1e056 --- /dev/null +++ b/anda/games/gamescope-session-opengamepadui/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "gamescope-session-opengamepadui.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/games/gamescope-session-opengamepadui/gamescope-session-opengamepadui.spec b/anda/games/gamescope-session-opengamepadui/gamescope-session-opengamepadui.spec new file mode 100644 index 0000000000..75be90b676 --- /dev/null +++ b/anda/games/gamescope-session-opengamepadui/gamescope-session-opengamepadui.spec @@ -0,0 +1,43 @@ +%global commit 88087a086ab732211c466b41f5d64229ce51c050 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commit_date 20260314 + +Name: gamescope-session-opengamepadui +Version: 0~%{commit_date}git.%{shortcommit} +Release: 1%{?dist} +Summary: Gamescope session for OpenGamepadUI +License: GPL-3.0-only +URL: https://github.com/OpenGamingCollective/gamescope-session-opengamepadui +Source0: %url/archive/%commit.tar.gz +Packager: Tulip Blossom +Requires: gamescope-session +Requires: opengamepadui +BuildArch: noarch + +%description +%summary. + +%prep +%autosetup -n %name-%commit + +%build + +%install +install -Dpm0755 -t "%buildroot%_bindir/" ".%_bindir/opengamepadui-session-select" +install -Dpm0755 -t "%buildroot%_datadir/gamescope-session-plus/sessions.d/" ".%_datadir/gamescope-session-plus/sessions.d/opengamepadui" +install -Dpm0644 -t "%buildroot%_datadir/polkit-1/actions/" ".%_datadir/polkit-1/actions/org.shadowblip.opengamepadui-session.policy" +install -Dpm0644 -t "%buildroot%_datadir/wayland-sessions/" ".%_datadir/wayland-sessions/gamescope-session-opengamepadui.desktop" +install -Dpm0644 -t "%buildroot%_datadir/wayland-sessions/" ".%_datadir/wayland-sessions/opengamepadui-session.desktop" + +%files +%doc README.md +%license LICENSE +%{_bindir}/opengamepadui-session-select +%{_datadir}/gamescope-session-plus/sessions.d/opengamepadui +%{_datadir}/polkit-1/actions/org.shadowblip.opengamepadui-session.policy +%{_datadir}/wayland-sessions/gamescope-session-opengamepadui.desktop +%{_datadir}/wayland-sessions/opengamepadui-session.desktop + +%changelog +* Wed Feb 04 2026 Tulip Blossom - 20260204.88087a08-1 +- Initial package diff --git a/anda/games/gamescope-session-opengamepadui/update.rhai b/anda/games/gamescope-session-opengamepadui/update.rhai new file mode 100644 index 0000000000..ad1104c154 --- /dev/null +++ b/anda/games/gamescope-session-opengamepadui/update.rhai @@ -0,0 +1,7 @@ +if filters.contains("nightly") { + rpm.global("commit", gh_commit("OpenGamingCollective/gamescope-session-steam")); + if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); + } +} diff --git a/anda/games/gamescope-session-steam/anda.hcl b/anda/games/gamescope-session-steam/anda.hcl index 557b0d83d2..daef42bbf6 100644 --- a/anda/games/gamescope-session-steam/anda.hcl +++ b/anda/games/gamescope-session-steam/anda.hcl @@ -1,4 +1,5 @@ project pkg { + arches = ["x86_64"] rpm { spec = "gamescope-session-steam.spec" } diff --git a/anda/games/gamescope-session-steam/gamescope-session-steam.spec b/anda/games/gamescope-session-steam/gamescope-session-steam.spec index ae08b2e20d..cd5309ec39 100644 --- a/anda/games/gamescope-session-steam/gamescope-session-steam.spec +++ b/anda/games/gamescope-session-steam/gamescope-session-steam.spec @@ -1,16 +1,20 @@ %define debug_package %nil -%global commit 93859eaa6056c24a9a6e9bc7464951793a54d3d3 +%global commit d9412bf01f3ffbe55e15f34445fe4c682fde5ede %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20251113 +%global commit_date 20260314 Name: gamescope-session-steam -Version: %commit_date.%shortcommit -Release: 1%?dist +Version: 0~%{commit_date}git.%{shortcommit} +Release: 1%{?dist} Summary: gamescope-session-steam License: MIT -URL: https://github.com/bazzite-org/gamescope-session-steam +URL: https://github.com/OpenGamingCollective/gamescope-session-steam Source0: %url/archive/%commit.tar.gz +Requires: gamescope-session +Requires: steam +Packager: Tulip Blossom +BuildArch: noarch %description %summary. @@ -21,16 +25,15 @@ Source0: %url/archive/%commit.tar.gz %build %install -mkdir -p %{buildroot}%{_bindir}/ -mkdir -p %{buildroot}%{_datadir}/ -cp -rv usr/bin/* %{buildroot}%{_bindir} -cp -rv usr/share/* %{buildroot}%{_datadir} -rm -rf %{buildroot}%{_bindir}/steamos-polkit-helpers -rm %{buildroot}%{_bindir}/jupiter-biosupdate -# We want to actually keep this for drop-in scripts -# rm %{buildroot}%{_bindir}/steamos-session-select -rm %{buildroot}%{_bindir}/steamos-update - +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 -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" +install -Dpm0644 -t "%buildroot%_datadir/polkit-1/actions/" ".%_datadir/polkit-1/actions/org.chimeraos.update.policy" +install -Dpm0644 -t "%buildroot%_datadir/wayland-sessions/" ".%_datadir/wayland-sessions/gamescope-session-steam.desktop" +install -Dpm0644 -t "%buildroot%_datadir/wayland-sessions/" ".%_datadir/wayland-sessions/gamescope-session.desktop" %files %license LICENSE @@ -42,4 +45,8 @@ rm %{buildroot}%{_bindir}/steamos-update %{_datadir}/gamescope-session-plus/sessions.d/steam %{_datadir}/polkit-1/actions/org.chimeraos.update.policy %{_datadir}/wayland-sessions/gamescope-session-steam.desktop -%{_datadir}/wayland-sessions/gamescope-session.desktop \ No newline at end of file +%{_datadir}/wayland-sessions/gamescope-session.desktop + +%changelog +* Mon Feb 03 2026 Tulip Blossom - 20241205.1a3fdb7f-1 +- Move to OGC source and clean up diff --git a/anda/games/gamescope-session-steam/update.rhai b/anda/games/gamescope-session-steam/update.rhai index 570f56cdff..ad1104c154 100644 --- a/anda/games/gamescope-session-steam/update.rhai +++ b/anda/games/gamescope-session-steam/update.rhai @@ -1,5 +1,5 @@ if filters.contains("nightly") { - rpm.global("commit", gh_commit("bazzite-org/gamescope-session-steam")); + rpm.global("commit", gh_commit("OpenGamingCollective/gamescope-session-steam")); if rpm.changed() { rpm.release(); rpm.global("commit_date", date()); diff --git a/anda/games/gamescope-session/anda.hcl b/anda/games/gamescope-session/anda.hcl index e2d33a48b1..8fba0756b1 100644 --- a/anda/games/gamescope-session/anda.hcl +++ b/anda/games/gamescope-session/anda.hcl @@ -1,4 +1,5 @@ project pkg { + arches = ["x86_64"] rpm { spec = "gamescope-session.spec" } diff --git a/anda/games/gamescope-session/gamescope-session.spec b/anda/games/gamescope-session/gamescope-session.spec index bfb605c1a2..32fa3f78a1 100644 --- a/anda/games/gamescope-session/gamescope-session.spec +++ b/anda/games/gamescope-session/gamescope-session.spec @@ -1,17 +1,21 @@ %define debug_package %nil -%global commit df099b31451531a2bb5a1dc29c93f76bbbab79d0 +%global commit b5c2d0d3ebcefa7450d9d4336dd5802aa96d8513 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20251109 +%global commit_date 20260202 Name: gamescope-session -Version: %commit_date.%shortcommit +Version: 0~%{commit_date}git.%{shortcommit} Release: 1%?dist Summary: Gamescope session based on Valve's gamescope License: MIT -URL: https://github.com/bazzite-org/gamescope-session +URL: https://github.com/OpenGamingCollective/gamescope-session Source0: %url/archive/%commit.tar.gz +Requires: gamescope +Recommends: switcheroo-control BuildRequires: systemd-rpm-macros +Packager: Tulip Blossom +BuildArch: noarch %description Gamescope session plus based on Valve's gamescope. @@ -22,8 +26,13 @@ Gamescope session plus based on Valve's gamescope. %build %install -mkdir -p %buildroot -cp -r usr %buildroot/ +install -Dpm0755 -t "%buildroot%_bindir/" ".%_bindir/export-gpu" +install -Dpm0755 -t "%buildroot%_bindir/" ".%_bindir/gamescope-session-plus" +install -Dpm0644 -t "%buildroot%_userunitdir/" ".%_userunitdir/gamescope-session-plus@.service" +install -Dpm0644 -t "%buildroot%_userunitdir/" ".%_userunitdir/gamescope-session.target" +install -Dpm0644 -t "%buildroot%_datadir/gamescope-session-plus/" ".%_datadir/gamescope-session-plus/device-quirks" +install -Dpm0644 -t "%buildroot%_datadir/gamescope-session-plus/" ".%_datadir/gamescope-session-plus/gamescope-session-plus" +install -Dpm0644 -t "%buildroot%_datadir/gamescope/scripts/50-custom/50-disable-explicit-sync.lua" ".%_datadir/gamescope/scripts/50-custom/50-disable-explicit-sync.lua" %files %doc README.md @@ -32,9 +41,9 @@ cp -r usr %buildroot/ %{_bindir}/gamescope-session-plus %{_datadir}/gamescope-session-plus/device-quirks %{_datadir}/gamescope-session-plus/gamescope-session-plus +%{_datadir}/gamescope/scripts/50-custom/50-disable-explicit-sync.lua %{_userunitdir}/gamescope-session-plus@.service %{_userunitdir}/gamescope-session.target - %changelog %autochangelog diff --git a/anda/games/gamescope-session/update.rhai b/anda/games/gamescope-session/update.rhai index 08c489e27a..e7a36decec 100644 --- a/anda/games/gamescope-session/update.rhai +++ b/anda/games/gamescope-session/update.rhai @@ -1,5 +1,5 @@ if filters.contains("nightly") { - rpm.global("commit", gh_commit("bazzite-org/gamescope-session")); + rpm.global("commit", gh_commit("OpenGamingCollective/gamescope-session")); if rpm.changed() { rpm.release(); rpm.global("commit_date", date()); diff --git a/anda/games/gmodpatchtool/anda.hcl b/anda/games/gmodpatchtool/anda.hcl new file mode 100644 index 0000000000..d659be9067 --- /dev/null +++ b/anda/games/gmodpatchtool/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "gmodpatchtool.spec" + } +} diff --git a/anda/games/gmodpatchtool/gmodpatchtool.spec b/anda/games/gmodpatchtool/gmodpatchtool.spec new file mode 100644 index 0000000000..95344b2db8 --- /dev/null +++ b/anda/games/gmodpatchtool/gmodpatchtool.spec @@ -0,0 +1,53 @@ +%global _description %{expand: +Automatically patches Garry's Mod's internal Chromium Embedded Framework to: + +- Bring CEF up to date +- Fix GMod missing menu/launch issues on macOS and Linux +- Enable Proprietary Video/Audio codec, like H.264 (MP4) and AAC, support +- Enable Widevine support (but no VMP) +- Enable Software WebGL +- Enable partial GPU acceleration} +%global git_name GModPatchTool +%undefine __brp_mangle_shebangs + +Name: gmodpatchtool +Version: 20251102 +Release: 1%{?dist} +SourceLicense: GPL-3.0-only +License: ((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 AND ISC) AND (Apache-2.0 AND 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 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 (BSD-3-Clause AND MIT) AND (BSD-3-Clause OR MIT) AND (BSD-3-Clause OR MIT OR Apache-2.0) AND BSL-1.0 AND CC0-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 GPL-3.0-only AND ISC AND MIT AND (MIT OR Apache-2.0) AND (MIT OR Apache-2.0 OR CC0-1.0) 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 Unicode-3.0 AND (Unlicense OR MIT) AND Zlib AND (Zlib OR Apache-2.0 OR MIT) AND bzip2-1.0.6 +Summary: Automatic Patching/Updating of GMod CEF. Fixes macOS/Linux launch issues. +URL: https://solsticegamestudios.com/fixmedia +Source0: https://github.com/solsticegamestudios/%{git_name}/archive/refs/tags/%{version}.tar.gz +BuildRequires: anda-srpm-macros +BuildRequires: cargo-rpm-macros +BuildRequires: git-lfs +BuildRequires: mold +Provides: %{git_name} +Packager: Gilver E. + +%description %_description + +%prep +%git_clone https://github.com/solsticegamestudios/%{git_name}.git %{version} +git-lfs checkout +%cargo_prep_online + +%build +%cargo_build + +%install +find target/rpm \ + -maxdepth 1 -type f -executable ! -name '*.so' \ + -exec install -Dm755 -t %{buildroot}%{_bindir} {} + +%cargo_license_summary_online +%{cargo_license_online} > LICENSE.dependencies + +%files +%doc README.md +%license LICENSE.txt +%license LICENSE.dependencies +%{_bindir}/%{name} + +%changelog +* Tue Feb 24 2026 Gilver E. +- Initial package diff --git a/anda/games/gmodpatchtool/update.rhai b/anda/games/gmodpatchtool/update.rhai new file mode 100644 index 0000000000..a06e03928e --- /dev/null +++ b/anda/games/gmodpatchtool/update.rhai @@ -0,0 +1 @@ +rpm.version(gh_rawfile("solsticegamestudios/GModPatchTool", "master", "version.txt")); diff --git a/anda/games/heroic-games-launcher/heroic-games-launcher.spec b/anda/games/heroic-games-launcher/heroic-games-launcher.spec index 66af81b0bc..5d311e425d 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.37 -%global gogdl_version 1.1.2 +%global legendary_version 0.20.42 +%global gogdl_version 1.2.1 %global nile_version 1.1.2 %global comet_version 0.2.0 Name: %{shortname}-games-launcher -Version: 2.18.1 -Release: 2%{?dist} +Version: 2.20.1 +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 @@ -52,7 +52,7 @@ rm -rf dist/linux-unpacked/resources/app.asar.unpacked/build/bin/arm64 %endif %electron_install -d heroic -b heroic -S heroic -I -i %{appid} -l -%desktop_file_install -k Exec -v /usr/share/%{shortname}/%{shortname} -u %u flatpak/%{appid}.desktop +%desktop_file_install -k Exec -v %{_libdir}/%{shortname}/%{shortname} -u %u flatpak/%{appid}.desktop install -Dpm644 flatpak/templates/%{appid}.metainfo.xml.template %{buildroot}%{_metainfodir}/%{appid}.metainfo.xml @@ -64,8 +64,7 @@ install -Dpm644 flatpak/templates/%{appid}.metainfo.xml.template %{buildroot}%{_ %doc CODE_OF_CONDUCT.md %license COPYING %license bundled_licenses/* -%dir %{_libdir}/%{shortname} -%{_libdir}/%{shortname}/* +%{_libdir}/%{shortname}/ %{_bindir}/%{shortname} %{_bindir}/%{name} %{_appsdir}/%{appid}.desktop diff --git a/anda/games/inputplumber/inputplumber.spec b/anda/games/inputplumber/inputplumber.spec index 2206526f2c..6bb7daf804 100644 --- a/anda/games/inputplumber/inputplumber.spec +++ b/anda/games/inputplumber/inputplumber.spec @@ -1,8 +1,8 @@ %global __brp_mangle_shebangs %{nil} Name: inputplumber -Version: 0.72.0 -Release: 1%?dist +Version: 0.75.2 +Release: 1%{?dist} Summary: Open source input router and remapper daemon for Linux License: GPL-3.0-or-later URL: https://github.com/ShadowBlip/InputPlumber @@ -51,3 +51,10 @@ keyboards) and translate their input to a variety of virtual device formats. %_udevrulesdir/90-inputplumber-autostart.rules %_datadir/dbus-1/system.d/org.shadowblip.InputPlumber.conf %_datadir/inputplumber/ +%{_udevrulesdir}/99-inputplumber-device-setup.rules +%{_datadir}/polkit-1/actions/org.shadowblip.InputPlumber.policy +%{_datadir}/polkit-1/rules.d/org.shadowblip.InputPlumber.rules + +%changelog +* Sun Feb 01 2026 Owen Zimmerman +- Add more files from 0.73.0 release 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 491eb1f581..c449956491 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,7 +2,7 @@ %global crate honkers-railway-launcher %global appid moe.launcher.the-honkers-railway-launcher Name: %{crate} -Version: 1.14.2 +Version: 1.14.4 Release: 1%?dist Summary: The Honkers Railway launcher for Linux with automatic patching and telemetry disabling diff --git a/anda/games/minecraft-java/com.mojang.Minecraft.metainfo.xml b/anda/games/minecraft-java/com.mojang.Minecraft.metainfo.xml index fce1f57e28..237e962b0c 100644 --- a/anda/games/minecraft-java/com.mojang.Minecraft.metainfo.xml +++ b/anda/games/minecraft-java/com.mojang.Minecraft.metainfo.xml @@ -2,6 +2,7 @@ com.mojang.Minecraft Minecraft + https://minecraft.wiki/images/Minecraft_social_icon.png?fcb53 ماين كرافت মাইনক্রাফ্ট Minecraft @@ -55,4 +56,4 @@ moderate intense - \ No newline at end of file + diff --git a/anda/games/minecraft-java/minecraft-java.spec b/anda/games/minecraft-java/minecraft-java.spec index 8c7c3758b6..85205d5349 100644 --- a/anda/games/minecraft-java/minecraft-java.spec +++ b/anda/games/minecraft-java/minecraft-java.spec @@ -6,7 +6,7 @@ Name: minecraft-launcher Version: 2.3.2 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Official launcher for Minecraft License: https://www.minecraft.net/en-us/eula diff --git a/anda/games/opengamepadui/opengamepadui.spec b/anda/games/opengamepadui/opengamepadui.spec index b01a3349b4..ba31a9b7f5 100644 --- a/anda/games/opengamepadui/opengamepadui.spec +++ b/anda/games/opengamepadui/opengamepadui.spec @@ -1,5 +1,5 @@ Name: opengamepadui -Version: 0.44.2 +Version: 0.44.3 Release: 1%?dist Summary: Open source gamepad-native game launcher and overlay diff --git a/anda/games/osu-lazer/osu-lazer.spec b/anda/games/osu-lazer/osu-lazer.spec index 62f9e4fb70..e9bfd4c8c5 100644 --- a/anda/games/osu-lazer/osu-lazer.spec +++ b/anda/games/osu-lazer/osu-lazer.spec @@ -1,10 +1,10 @@ -%define osuresver 2026.108.0 +%define osuresver 2026.305.0 %global debug_package %{nil} %define __strip /bin/true Name: osu-lazer -Version: 2026.119.0 -Release: 1%?dist +Version: 2026.305.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 URL: https://osu.ppy.sh/ @@ -21,7 +21,7 @@ Source4: osu-lazer-uri-handler.desktop %{summary} %prep -cat < osu-lazer +cat <<'EOF' > osu-lazer #!/bin/sh env OSU_EXTERNAL_UPDATE_PROVIDER=1 /opt/osu-lazer/osu.AppImage "$@" EOF diff --git a/anda/games/powerbuttond/anda.hcl b/anda/games/powerbuttond/anda.hcl new file mode 100644 index 0000000000..a6776ffd5c --- /dev/null +++ b/anda/games/powerbuttond/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "powerbuttond.spec" + } +} diff --git a/anda/games/powerbuttond/powerbuttond.spec b/anda/games/powerbuttond/powerbuttond.spec new file mode 100644 index 0000000000..2da9358a08 --- /dev/null +++ b/anda/games/powerbuttond/powerbuttond.spec @@ -0,0 +1,60 @@ +%define debug_package %nil + +Name: powerbuttond +Version: 4.2 +Release: 1%?dist +Summary: Steam Deck power button daemon + +License: BSD-2-clause +URL: https://gitlab.steamos.cloud/holo/powerbuttond +Source: %{url}/-/archive/v%{version}/powerbuttond-v%{version}.tar.gz +Packager: madonuko +BuildRequires: systemd-rpm-macros +BuildRequires: pkgconfig(libudev) +BuildRequires: pkgconfig(libevdev) +BuildRequires: make gcc + +Provides: steam-powerbuttond +Obsoletes: steam-powerbuttond < 3.3 +Provides: steamos-powerbuttond +Obsoletes: steamos-powerbuttond < 3.3 +Provides: powerbuttond = %evr + +%description +Steam Deck power button daemon. + +%prep +%autosetup -n powerbuttond-v%{version} -p1 + +%build +%make_build CFLAGS="$CFLAGS -I%_includedir/libevdev-1.0" LDFLAGS="$LDFLAGS" + +%install +%make_install +sed -i 's/Requisite=gamescope-session.service//g' %{buildroot}%{_userunitdir}/steamos-powerbuttond.service +rm -r %{buildroot}/%{_userunitdir}/gamescope-session.service.wants +rm %buildroot%_datadir/licenses/steamos-%name/LICENSE + +%post +udevadm control --reload-rules +udevadm trigger +%systemd_user_post steamos-%{name}.service + +%preun +%systemd_user_preun steamos-%{name}.service + +%postun +%systemd_user_postun steamos-%{name}.service + +%files +%license LICENSE +%dir %{_prefix}/lib/hwsupport +%{_prefix}/lib/hwsupport/steamos-%{name} +%{_userunitdir}/steamos-%{name}.service +%{_prefix}/lib/udev/rules.d/70-steamos-power-button.rules +%dir %{_prefix}/lib/udev/hwdb.d +%{_prefix}/lib/udev/hwdb.d/70-steamos-power-button.hwdb + +%changelog +* Fri Jan 30 2026 madonuko - 4.0-1 +- Ported from https://copr-dist-git.fedorainfracloud.org/packages/gloriouseggroll/nobara-43/steamos-powerbuttond.git/tree/steamos-powerbuttond.spec?h=f43&id=071012e4c4b4a1eda8606753615c9f4ceef33458 diff --git a/anda/games/powerbuttond/update.rhai b/anda/games/powerbuttond/update.rhai new file mode 100644 index 0000000000..40c200c1ae --- /dev/null +++ b/anda/games/powerbuttond/update.rhai @@ -0,0 +1 @@ +rpm.version(gitlab_tag("gitlab.steamos.cloud", "995")); diff --git a/anda/games/powerstation/anda.hcl b/anda/games/powerstation/anda.hcl new file mode 100644 index 0000000000..d679f1e19e --- /dev/null +++ b/anda/games/powerstation/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "powerstation.spec" + } +} diff --git a/anda/games/powerstation/powerstation.spec b/anda/games/powerstation/powerstation.spec new file mode 100644 index 0000000000..7fc7036557 --- /dev/null +++ b/anda/games/powerstation/powerstation.spec @@ -0,0 +1,67 @@ +Name: powerstation +Version: 0.8.1 +Release: 1%?dist +Summary: Daemon for controlling TDP and performance over DBus + +SourceLicense: GPL-3.0-or-later +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 (BSD-3-Clause OR MIT OR Apache-2.0) AND GPL-3.0-or-later AND ISC AND LGPL-3.0 AND MIT AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MPL-2.0 AND (Unlicense OR MIT) +URL: https://github.com/ShadowBlip/PowerStation +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz +Packager: madonuko + +ExcludeArch: %{ix86} + +BuildRequires: rust-packaging +BuildRequires: pciutils-devel +BuildRequires: systemd-devel +BuildRequires: clang cmake +Requires: dbus +Requires: zlib-ng-compat + +%description +Powerstation is a daemon for controlling TDP and performance over DBus. +It is designed for use on AMD platforms with access to libryzenadj. + +%prep +%autosetup -n PowerStation-%{version} +%cargo_prep_online + +%build +%{cargo_build} --locked +%cargo_license_summary_online +%{cargo_license_online} > LICENSE.dependencies + +%install +%crate_install_bin + +# DBus system policy +install -Dm644 rootfs%_datadir/dbus-1/system.d/org.shadowblip.PowerStation.conf \ + -t %buildroot%_datadir/dbus-1/system.d + +install -Dm644 rootfs%_unitdir/powerstation.service -t %buildroot%_unitdir + +sed -i 's/After=graphical-session.target//g' %buildroot%_unitdir/powerstation.service + +echo 'enable powerstation.service' | install -Dm644 /dev/stdin %buildroot%_presetdir/95-enable-powerstation.preset + +%files +%license LICENSE LICENSE.dependencies +%doc README.md +%_bindir/powerstation +%_datadir/dbus-1/system.d/org.shadowblip.PowerStation.conf +%_unitdir/powerstation.service +%_presetdir/95-enable-powerstation.preset + +%post +%systemd_post powerstation.service + +%preun +%systemd_preun powerstation.service + +%postun +%systemd_postun_with_restart powerstation.service + + +%changelog +* Fri Jan 30 2026 madonuko - 0.7.0-1 +- Ported from https://copr-dist-git.fedorainfracloud.org/packages/gloriouseggroll/nobara-43/powerstation.git/tree/powerstation.spec?h=f43 diff --git a/anda/games/powerstation/update.rhai b/anda/games/powerstation/update.rhai new file mode 100644 index 0000000000..bc76d06a2b --- /dev/null +++ b/anda/games/powerstation/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("ShadowBlip/PowerStation")); diff --git a/anda/games/prismlauncher-nightly/prismlauncher-nightly.spec b/anda/games/prismlauncher-nightly/prismlauncher-nightly.spec index 0acf4efcf2..f0ab6da97e 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 ef747055af4ab60747baab845eaa379f90b662ad +%global commit 04786023b028a7c703c5da7e0c597c1117f781b0 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260121 +%global commit_date 20260319 %global snapshot_info %{commit_date}.%{shortcommit} # Change this variables if you want to use custom keys @@ -20,8 +20,8 @@ %global build_platform terra Name: prismlauncher-nightly -Version: 10.0^%{snapshot_info} -Release: 1%?dist +Version: 11.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 diff --git a/anda/games/prismlauncher/prismlauncher.spec b/anda/games/prismlauncher/prismlauncher.spec index 3e1740be47..4c7cff5acf 100644 --- a/anda/games/prismlauncher/prismlauncher.spec +++ b/anda/games/prismlauncher/prismlauncher.spec @@ -13,7 +13,7 @@ %global build_platform terra Name: prismlauncher -Version: 10.0.2 +Version: 10.0.5 Release: 1%?dist Summary: Minecraft launcher with ability to manage multiple instances # see COPYING.md for more information diff --git a/anda/games/rpcs3/rpcs3.spec b/anda/games/rpcs3/rpcs3.spec index 9ead848147..9f67c7991a 100644 --- a/anda/games/rpcs3/rpcs3.spec +++ b/anda/games/rpcs3/rpcs3.spec @@ -1,7 +1,7 @@ # RPCS3 builds often break with GCC %global toolchain clang # Define which LLVM/Clang version RPCS3 needs -%if 0%{?fedora} >= 45 +%if 0%{?fedora} >= 46 %global llvm_major 21 %global __cc clang-%{llvm_major} %global __cxx clang++-%{llvm_major} @@ -9,12 +9,12 @@ # 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 d7b723cd7c5ddcc785076687772a536a4525918e -%global ver 0.0.39-18702 +%global commit 43799762c74c44962f2df6ed6587357f6eb300ab +%global ver 0.0.40-19047 Name: rpcs3 Version: %(echo %{ver} | sed 's/-/^/g') -Release: 1%?dist +Release: 1%{?dist} Summary: PlayStation 3 emulator and debugger License: GPL-2.0-only URL: https://github.com/RPCS3/rpcs3 diff --git a/anda/games/rpcs3/update.rhai b/anda/games/rpcs3/update.rhai index 9387eb5f79..aaf2b7c806 100644 --- a/anda/games/rpcs3/update.rhai +++ b/anda/games/rpcs3/update.rhai @@ -1,9 +1,9 @@ -let html = get("https://rpcs3.net/download"); -let v = find("Build ([\\d.]+-[\\d.]+)\\s+", html, 1); -rpm.global("ver", v); +let release = get("https://api.github.com/repos/RPCS3/rpcs3-binaries-linux/releases/latest").json(); +rpm.global("ver", release.name); if rpm.changed () { - let c = find("Commit = 44 +%post +# Workaround for https://fedoraproject.org/wiki/Changes/droppingOfCertPemFile#Temporary_fix +update-ca-trust extract --rhbz2387674 +%endif + %files %license COPYING steam_subscriber_agreement.txt %doc debian/changelog README.Fedora diff --git a/anda/games/steamos-manager-powerstation/anda.hcl b/anda/games/steamos-manager-powerstation/anda.hcl new file mode 100644 index 0000000000..654ab9ce40 --- /dev/null +++ b/anda/games/steamos-manager-powerstation/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "steamos-manager-powerstation.spec" + } +} diff --git a/anda/games/steamos-manager-powerstation/steamos-manager-powerstation.spec b/anda/games/steamos-manager-powerstation/steamos-manager-powerstation.spec new file mode 100644 index 0000000000..b82d11bedc --- /dev/null +++ b/anda/games/steamos-manager-powerstation/steamos-manager-powerstation.spec @@ -0,0 +1,96 @@ +%global commit 81e1d500211483e01edde6c2b985c45499aec500 +%global shortcommit %{sub %{commit} 0 7} +%global commitdate 20260312 + +Name: steamos-manager-powerstation +Version: 0~%{commitdate}.git%{shortcommit} +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://github.com/honjow/steamos-manager +Source0: %{url}/archive/%{commit}.tar.gz +BuildRequires: anda-srpm-macros +BuildRequires: cargo-rpm-macros +BuildRequires: clang-devel +BuildRequires: rust +BuildRequires: mold +BuildRequires: glib2-devel +BuildRequires: speech-dispatcher-devel +BuildRequires: pkgconfig(libudev) +Packager: Kyle Gospodnetich + +Provides: steamos-manager +Conflicts: steamos-manager +Requires: powerstation + +%description +SteamOS Manager is a system daemon that aims to abstract Steam's interactions +with the operating system. The goal is to have a standardized interface so that +SteamOS specific features in the Steam client, e.g. TDP management, can be +exposed in any Linux distro that provides an implementation of this DBus API. +This version has been patched with additional compatibility with powerstation. + +%package gamescope-session-plus +Summary: Compatibility symlink service for starting steamos-manager on gamescope-session-plus +Requires: %{name} = %{evr} + +%description gamescope-session-plus +%summary. + +%prep +%autosetup -n steamos-manager-%{commit} +%cargo_prep_online + +%build +%cargo_build + +%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 %{buildroot}%{_userunitdir}/gamescope-session-plus.service.wants/steamos-manager.service +ln -s %{_userunitdir}/steamos-manager.service %{buildroot}%{_userunitdir}/gamescope-session-plus.service.wants/steamos-manager.service + +%post +%systemd_post steamos-manager.service +%systemd_user_post steamos-manager.service +%systemd_user_post steamos-manager-configure-cecd.service +%systemd_user_post steamos-manager-session-cleanup.service + +%preun +%systemd_preun steamos-manager.service +%systemd_user_preun steamos-manager.service +%systemd_user_preun steamos-manager-configure-cecd.service +%systemd_user_preun steamos-manager-session-cleanup.service + +%postun +%systemd_postun_with_restart steamos-manager.service +%systemd_user_postun steamos-manager.service +%systemd_user_postun steamos-manager-configure-cecd.service +%systemd_user_postun steamos-manager-session-cleanup.service + +%files +%license %{_datadir}/licenses/steamos-manager/LICENSE +%license LICENSE.dependencies +%doc README.md +%{_bindir}/steamosctl +#{_datadir}/dbus-1/interfaces/com.steampowered.SteamOSManager1.Manager.xml +%{_datadir}/dbus-1/interfaces/com.steampowered.SteamOSManager1.xml +%{_datadir}/dbus-1/services/com.steampowered.SteamOSManager1.service +%{_datadir}/dbus-1/system.d/com.steampowered.SteamOSManager1.conf +%{_datadir}/dbus-1/system-services/com.steampowered.SteamOSManager1.service +%{_datadir}/steamos-manager/devices/*.toml +%{_datadir}/steamos-manager/platform.toml +%{_prefix}/lib/steamos-manager +%{_unitdir}/steamos-manager.service +%{_userunitdir}/steamos-manager.service +%{_userunitdir}/steamos-manager-configure-cecd.service +%{_userunitdir}/steamos-manager-session-cleanup.service + +%files gamescope-session-plus +%{_userunitdir}/gamescope-session-plus.service.wants/steamos-manager.service + +%changelog +* Wed Mar 18 2026 Kyle Gospodnetich - 26.0.1-1 +- Intial Commit diff --git a/anda/games/steamos-manager-powerstation/update.rhai b/anda/games/steamos-manager-powerstation/update.rhai new file mode 100644 index 0000000000..fd8ffe6cdd --- /dev/null +++ b/anda/games/steamos-manager-powerstation/update.rhai @@ -0,0 +1,6 @@ +rpm.global("commit", get("https://api.github.com/repos/honjow/steamos-manager/commits/dev").json().sha); +if rpm.changed() { + rpm.global("ver", gh("honjow/steamos-manager")); + rpm.global("commit_date", date()); + rpm.release(); +} diff --git a/anda/games/steamos-manager/anda.hcl b/anda/games/steamos-manager/anda.hcl new file mode 100644 index 0000000000..2097164487 --- /dev/null +++ b/anda/games/steamos-manager/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "steamos-manager.spec" + } +} diff --git a/anda/games/steamos-manager/steamos-manager.spec b/anda/games/steamos-manager/steamos-manager.spec new file mode 100644 index 0000000000..c6b076f4be --- /dev/null +++ b/anda/games/steamos-manager/steamos-manager.spec @@ -0,0 +1,84 @@ +Name: steamos-manager +Version: 26.0.1 +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 +Source0: %url/-/archive/v%version/steamos-manager-v%version.tar.gz +BuildRequires: anda-srpm-macros +BuildRequires: cargo-rpm-macros +BuildRequires: clang-devel +BuildRequires: rust +BuildRequires: mold +BuildRequires: glib2-devel +BuildRequires: speech-dispatcher-devel +BuildRequires: pkgconfig(libudev) +Packager: Tulip Blossom + +%description +SteamOS Manager is a system daemon that aims to abstract Steam's interactions +with the operating system. The goal is to have a standardized interface so that +SteamOS specific features in the Steam client, e.g. TDP management, can be +exposed in any Linux distro that provides an implementation of this DBus API. + +%package gamescope-session-plus +Summary: Compatibility symlink service for starting steamos-manager on gamescope-session-plus +Requires: %{name} = %{evr} + +%description gamescope-session-plus +%summary. + +%prep +%autosetup -n %name-v%version +%cargo_prep_online + +%build +%cargo_build + +%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 %{buildroot}%{_userunitdir}/gamescope-session-plus.service.wants/steamos-manager.service +ln -s %{_userunitdir}/steamos-manager.service %{buildroot}%{_userunitdir}/gamescope-session-plus.service.wants/steamos-manager.service + +%post +%systemd_post steamos-manager.service +%systemd_post steamos-manager-configure-cecd.service +%systemd_post steamos-manager-session-cleanup.service + +%preun +%systemd_preun steamos-manager.service +%systemd_preun steamos-manager-configure-cecd.service +%systemd_preun steamos-manager-session-cleanup.service + +%postun +%systemd_postun_with_restart steamos-manager.service +%systemd_postun_with_restart steamos-manager-configure-cecd.service +%systemd_postun_with_restart steamos-manager-session-cleanup.service + +%files +%license %{_datadir}/licenses/steamos-manager/LICENSE +%license LICENSE.dependencies +%doc README.md +%{_bindir}/steamosctl +#{_datadir}/dbus-1/interfaces/com.steampowered.SteamOSManager1.Manager.xml +%{_datadir}/dbus-1/interfaces/com.steampowered.SteamOSManager1.xml +%{_datadir}/dbus-1/services/com.steampowered.SteamOSManager1.service +%{_datadir}/dbus-1/system.d/com.steampowered.SteamOSManager1.conf +%{_datadir}/dbus-1/system-services/com.steampowered.SteamOSManager1.service +%{_datadir}/steamos-manager/devices/*.toml +%{_datadir}/steamos-manager/platform.toml +%{_prefix}/lib/steamos-manager +%{_unitdir}/steamos-manager.service +%{_userunitdir}/steamos-manager.service +%{_userunitdir}/steamos-manager-configure-cecd.service +%{_userunitdir}/steamos-manager-session-cleanup.service + +%files gamescope-session-plus +%{_userunitdir}/gamescope-session-plus.service.wants/steamos-manager.service + +%changelog +* Wed Feb 04 2026 Tulip Blossom - 25.12.0-1 +- Intial Commit diff --git a/anda/games/steamos-manager/update.rhai b/anda/games/steamos-manager/update.rhai new file mode 100644 index 0000000000..34a69c1670 --- /dev/null +++ b/anda/games/steamos-manager/update.rhai @@ -0,0 +1 @@ +rpm.version(gitlab_tag("gitlab.steamos.cloud", "1288")); diff --git a/anda/games/terra-gamescope/0002-wlroots-libinput-switch-keypad-slide.patch b/anda/games/terra-gamescope/0002-wlroots-libinput-switch-keypad-slide.patch new file mode 100644 index 0000000000..4910d582cf --- /dev/null +++ b/anda/games/terra-gamescope/0002-wlroots-libinput-switch-keypad-slide.patch @@ -0,0 +1,18 @@ +From: porkloin +Subject: [PATCH] wlroots: handle LIBINPUT_SWITCH_KEYPAD_SLIDE enum in switch.c + +libinput added LIBINPUT_SWITCH_KEYPAD_SLIDE and GCC 16 on Fedora 44 +treats the unhandled enum value as -Werror=switch, breaking the build. + +diff --git a/subprojects/wlroots/backend/libinput/switch.c b/subprojects/wlroots/backend/libinput/switch.c +--- a/subprojects/wlroots/backend/libinput/switch.c ++++ b/subprojects/wlroots/backend/libinput/switch.c +@@ -34,6 +34,8 @@ void handle_switch_toggle(struct libinput_event *event, + case LIBINPUT_SWITCH_TABLET_MODE: + wlr_event.switch_type = WLR_SWITCH_TYPE_TABLET_MODE; + break; ++ case LIBINPUT_SWITCH_KEYPAD_SLIDE: ++ break; + } + switch (libinput_event_switch_get_switch_state(sevent)) { + case LIBINPUT_SWITCH_STATE_OFF: diff --git a/anda/games/terra-gamescope/Use-system-stb-glm.patch b/anda/games/terra-gamescope/Use-system-stb-glm.patch new file mode 100644 index 0000000000..f0addb676b --- /dev/null +++ b/anda/games/terra-gamescope/Use-system-stb-glm.patch @@ -0,0 +1,28 @@ +From 1a37d7113ed29ede9dcd30be16898b10464cd76e Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= +Date: Wed, 28 May 2025 12:19:05 +0200 +Subject: [PATCH] Use system stb/glm + +--- + meson.build | 6 ++---- + 1 file changed, 2 insertions(+), 4 deletions(-) + +diff --git a/meson.build b/meson.build +index c300b07..3044e54 100644 +--- a/meson.build ++++ b/meson.build +@@ -47,10 +47,8 @@ dep_x11 = dependency('x11') + dep_wayland = dependency('wayland-client') + vulkan_dep = dependency('vulkan') + +-glm_proj = subproject('glm') +-glm_dep = glm_proj.get_variable('glm_dep') +-stb_proj = subproject('stb') +-stb_dep = stb_proj.get_variable('stb_dep') ++glm_dep = dependency('glm') ++stb_dep = dependency('stb') + + if get_option('enable_openvr_support') + openvr_dep = dependency('openvr', version: '>= 2.7', required : false) +-- +2.49.0 diff --git a/anda/games/terra-gamescope/anda.hcl b/anda/games/terra-gamescope/anda.hcl index e66956b621..c01d057d11 100755 --- a/anda/games/terra-gamescope/anda.hcl +++ b/anda/games/terra-gamescope/anda.hcl @@ -5,6 +5,7 @@ project pkg { } labels { mock = 1 + nightly = 1 subrepo = "extras" } } diff --git a/anda/games/terra-gamescope/handheld.patch b/anda/games/terra-gamescope/handheld.patch deleted file mode 100755 index fcd7cb87f3..0000000000 --- a/anda/games/terra-gamescope/handheld.patch +++ /dev/null @@ -1,2050 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Antheas Kapenekakis -Date: Fri, 22 Nov 2024 01:37:48 +0100 -Subject: [NA] add dev script - ---- - sync.sh | 21 +++++++++++++++++++++ - 1 file changed, 21 insertions(+) - create mode 100755 sync.sh - -diff --git a/sync.sh b/sync.sh -new file mode 100755 -index 000000000000..8dd5815d4aeb ---- /dev/null -+++ b/sync.sh -@@ -0,0 +1,21 @@ -+if [ -z "$1" ]; then -+ echo "Usage: $0 " -+ exit 1 -+fi -+ -+HOST=$1 -+RSYNC="rsync -rv --exclude .git --exclude venv --exclude __pycache__'" -+USER=${USER:-bazzite} -+ -+set -e -+ -+meson build/ -Dforce_fallback_for=stb,libdisplay-info,libliftoff,wlroots,vkroots -Denable_openvr_support=false -+ninja -C build/ -+scp build/src/gamescope ${HOST}:gamescope -+ -+ssh $HOST /bin/bash << EOF -+ sudo rpm-ostree usroverlay --hotfix -+ sudo mv ~/gamescope /usr/bin/gamescope -+ bazzite-session-select gamescope -+ # sudo reboot -+EOF --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Matthew Anderson -Date: Fri, 17 May 2024 21:56:55 -0500 -Subject: feat: add --custom-refresh-rates option (+ fixes) - -Commit originally by Matthew, external fixes by Kyle, and new system check -move by Antheas. - -Co-authored-by: Kyle Gospodnetich -Co-authored-by: Antheas Kapenekakis ---- - src/Backends/DRMBackend.cpp | 4 +++- - src/main.cpp | 31 +++++++++++++++++++++++++++++++ - src/main.hpp | 2 ++ - 3 files changed, 36 insertions(+), 1 deletion(-) - -diff --git a/src/Backends/DRMBackend.cpp b/src/Backends/DRMBackend.cpp -index 1ec2699821f0..c8e821314dc4 100644 ---- a/src/Backends/DRMBackend.cpp -+++ b/src/Backends/DRMBackend.cpp -@@ -2342,8 +2342,10 @@ namespace gamescope - } - else - { -+ if ( g_customRefreshRates.size() > 0 && GetScreenType() == GAMESCOPE_SCREEN_TYPE_INTERNAL ) -+ m_Mutable.ValidDynamicRefreshRates = g_customRefreshRates; - // Unknown display, see if there are any other refresh rates in the EDID we can get. -- if ( GetScreenType() == GAMESCOPE_SCREEN_TYPE_INTERNAL || cv_drm_allow_dynamic_modes_for_external_display ) -+ else if ( GetScreenType() == GAMESCOPE_SCREEN_TYPE_INTERNAL || cv_drm_allow_dynamic_modes_for_external_display ) - { - const drmModeModeInfo *pPreferredMode = find_mode( m_pConnector.get(), 0, 0, 0 ); - -diff --git a/src/main.cpp b/src/main.cpp -index cdb35c3b2518..d63b1fe50cc6 100644 ---- a/src/main.cpp -+++ b/src/main.cpp -@@ -133,6 +133,7 @@ const struct option *gamescope_options = (struct option[]){ - { "fade-out-duration", required_argument, nullptr, 0 }, - { "force-orientation", required_argument, nullptr, 0 }, - { "force-windows-fullscreen", no_argument, nullptr, 0 }, -+ { "custom-refresh-rates", required_argument, nullptr, 0 }, - - { "disable-color-management", no_argument, nullptr, 0 }, - { "sdr-gamut-wideness", required_argument, nullptr, 0 }, -@@ -207,6 +208,7 @@ const char usage[] = - " --hdr-itm-target-nits set the target luminace of the inverse tone mapping process.\n" - " Default: 1000 nits, Max: 10000 nits\n" - " --framerate-limit Set a simple framerate limit. Used as a divisor of the refresh rate, rounds down eg 60 / 59 -> 60fps, 60 / 25 -> 30fps. Default: 0, disabled.\n" -+ " --custom-refresh-rates Set custom refresh rates for the output. eg: 60,90,110-120\n" - " --mangoapp Launch with the mangoapp (mangohud) performance overlay enabled. You should use this instead of using mangohud on the game or gamescope.\n" - " --adaptive-sync Enable adaptive sync if available (variable rate refresh)\n" - "\n" -@@ -460,6 +462,33 @@ static float parse_float(const char *str, const char *optionName) - } - } - -+std::vector g_customRefreshRates; -+// eg: 60,60,90,110-120 -+static std::vector parse_custom_refresh_rates( const char *str ) -+{ -+ std::vector rates; -+ char *token = strtok( strdup(str), ","); -+ while (token) -+ { -+ char *dash = strchr(token, '-'); -+ if (dash) -+ { -+ uint32_t start = atoi(token); -+ uint32_t end = atoi(dash + 1); -+ for (uint32_t i = start; i <= end; i++) -+ { -+ rates.push_back(i); -+ } -+ } -+ else -+ { -+ rates.push_back(atoi(token)); -+ } -+ token = strtok(nullptr, ","); -+ } -+ return rates; -+} -+ - struct sigaction handle_signal_action = {}; - - void ShutdownGamescope() -@@ -783,6 +812,8 @@ int main(int argc, char **argv) - g_eGamescopeModeGeneration = parse_gamescope_mode_generation( optarg ); - } else if (strcmp(opt_name, "force-orientation") == 0) { - g_DesiredInternalOrientation = force_orientation( optarg ); -+ } else if (strcmp(opt_name, "custom-refresh-rates") == 0) { -+ g_customRefreshRates = parse_custom_refresh_rates( optarg ); - } else if (strcmp(opt_name, "sharpness") == 0 || - strcmp(opt_name, "fsr-sharpness") == 0) { - g_upscaleFilterSharpness = parse_integer( optarg, opt_name ); -diff --git a/src/main.hpp b/src/main.hpp -index 2e6fb833af12..390c04a63ecd 100644 ---- a/src/main.hpp -+++ b/src/main.hpp -@@ -3,6 +3,7 @@ - #include - - #include -+#include - - extern const char *gamescope_optstring; - extern const struct option *gamescope_options; -@@ -28,6 +29,7 @@ extern bool g_bGrabbed; - - extern float g_mouseSensitivity; - extern const char *g_sOutputName; -+extern std::vector g_customRefreshRates; - - enum class GamescopeUpscaleFilter : uint32_t - { --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Renn <8340896+AkazaRenn@users.noreply.github.com> -Date: Fri, 11 Oct 2024 17:48:26 +0200 -Subject: fix(deck): Use super + 1/2 for Overlay/QAM - -Replaces the patch for CTRL + 1/2 for Overlay/QAM with Super + 1/2 and -allows for CTRL for a smooth transition. - -Suggested-by: Antheas Kapenekakis ---- - src/wlserver.cpp | 23 ++++++++++++++++++++++- - 1 file changed, 22 insertions(+), 1 deletion(-) - -diff --git a/src/wlserver.cpp b/src/wlserver.cpp -index 4d8546eed51f..56a9f25cd03a 100644 ---- a/src/wlserver.cpp -+++ b/src/wlserver.cpp -@@ -296,6 +296,9 @@ static void wlserver_handle_modifiers(struct wl_listener *listener, void *data) - bump_input_counter(); - } - -+// false if GS_ENABLE_CTRL_12 exists and is 0, true otherwise -+bool env_gs_enable_ctrl_12 = getenv("GS_ENABLE_CTRL_12") ? (getenv("GS_ENABLE_CTRL_12")[0] != '0') : true; -+ - static void wlserver_handle_key(struct wl_listener *listener, void *data) - { - struct wlr_keyboard *keyboard = &wlserver.keyboard_group->keyboard; -@@ -319,7 +322,14 @@ static void wlserver_handle_key(struct wl_listener *listener, void *data) - keysym == XKB_KEY_XF86AudioLowerVolume || - keysym == XKB_KEY_XF86AudioRaiseVolume || - keysym == XKB_KEY_XF86PowerOff; -- if ( ( event->state == WL_KEYBOARD_KEY_STATE_PRESSED || event->state == WL_KEYBOARD_KEY_STATE_RELEASED ) && forbidden_key ) -+ -+ // Check for steam overlay key (ctrl/super + 1/2) -+ bool is_steamshortcut = -+ ((env_gs_enable_ctrl_12 && (keyboard->modifiers.depressed & WLR_MODIFIER_CTRL)) || -+ (keyboard->modifiers.depressed & WLR_MODIFIER_LOGO)) && -+ (keysym == XKB_KEY_1 || keysym == XKB_KEY_2); -+ -+ if ( ( event->state == WL_KEYBOARD_KEY_STATE_PRESSED || event->state == WL_KEYBOARD_KEY_STATE_RELEASED ) && (forbidden_key || is_steamshortcut) ) - { - // Always send volume+/- to root server only, to avoid it reaching the game. - struct wlr_surface *old_kb_surf = wlserver.kb_focus_surface; -@@ -328,6 +338,17 @@ static void wlserver_handle_key(struct wl_listener *listener, void *data) - { - wlserver_keyboardfocus( new_kb_surf, false ); - wlr_seat_set_keyboard( wlserver.wlr.seat, keyboard ); -+ -+ if (is_steamshortcut) -+ { -+ // send ctrl down modifier to trigger the overlay -+ wlr_keyboard_modifiers ctrl_down_modifier; -+ ctrl_down_modifier.depressed = WLR_MODIFIER_CTRL; -+ ctrl_down_modifier.latched = WLR_MODIFIER_CTRL; -+ ctrl_down_modifier.locked = WLR_MODIFIER_CTRL; -+ wlr_seat_keyboard_notify_modifiers(wlserver.wlr.seat, &ctrl_down_modifier); -+ } -+ - wlr_seat_keyboard_notify_key( wlserver.wlr.seat, event->time_msec, event->keycode, event->state ); - wlserver_keyboardfocus( old_kb_surf, false ); - return; --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: honjow -Date: Wed, 16 Oct 2024 00:23:58 +0800 -Subject: fix(external): fix crash when using external touchscreens - ---- - src/wlserver.cpp | 8 ++++++-- - 1 file changed, 6 insertions(+), 2 deletions(-) - -diff --git a/src/wlserver.cpp b/src/wlserver.cpp -index 56a9f25cd03a..4d6e8de55ba4 100644 ---- a/src/wlserver.cpp -+++ b/src/wlserver.cpp -@@ -2766,8 +2766,12 @@ static void apply_touchscreen_orientation(double *x, double *y ) - double tx = 0; - double ty = 0; - -- // Use internal screen always for orientation purposes. -- switch ( GetBackend()->GetConnector( gamescope::GAMESCOPE_SCREEN_TYPE_INTERNAL )->GetCurrentOrientation() ) -+ auto orientation = GAMESCOPE_PANEL_ORIENTATION_AUTO; -+ if ( GetBackend() && GetBackend()->GetCurrentConnector( ) ) -+ { -+ orientation = GetBackend()->GetCurrentConnector()->GetCurrentOrientation(); -+ } -+ switch ( orientation ) - { - default: - case GAMESCOPE_PANEL_ORIENTATION_AUTO: --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Antheas Kapenekakis -Date: Mon, 14 Oct 2024 22:42:20 +0200 -Subject: fix(display-config): always fill in mutable refresh rates - -Assume the user is not lying to us when they fill in dynamic_refresh_rates -and that gamescope will work with e.g., CVT, so accept it even if no -custom modeline generation has been provided. ---- - src/Backends/DRMBackend.cpp | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/src/Backends/DRMBackend.cpp b/src/Backends/DRMBackend.cpp -index c8e821314dc4..a919c61f9f8d 100644 ---- a/src/Backends/DRMBackend.cpp -+++ b/src/Backends/DRMBackend.cpp -@@ -2258,7 +2258,9 @@ namespace gamescope - sol::optional otDynamicRefreshRates = tTable["dynamic_refresh_rates"]; - sol::optional ofnDynamicModegen = tTable["dynamic_modegen"]; - -- if ( otDynamicRefreshRates && ofnDynamicModegen ) -+ if ( otDynamicRefreshRates && !ofnDynamicModegen ) -+ m_Mutable.ValidDynamicRefreshRates = TableToVector( *otDynamicRefreshRates ); -+ else if ( otDynamicRefreshRates && ofnDynamicModegen ) - { - m_Mutable.ValidDynamicRefreshRates = TableToVector( *otDynamicRefreshRates ); - --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Antheas Kapenekakis -Date: Wed, 30 Oct 2024 00:39:03 +0100 -Subject: fix(battery): run at half hz while at steamUI with atom - ---- - src/steamcompmgr.cpp | 53 +++++++++++++++++++++++++++++++++++--------- - src/xwayland_ctx.hpp | 2 ++ - 2 files changed, 45 insertions(+), 10 deletions(-) - -diff --git a/src/steamcompmgr.cpp b/src/steamcompmgr.cpp -index b0cf080e0642..07e45b19fc61 100644 ---- a/src/steamcompmgr.cpp -+++ b/src/steamcompmgr.cpp -@@ -172,6 +172,8 @@ uint32_t g_reshade_technique_idx = 0; - - bool g_bSteamIsActiveWindow = false; - bool g_bForceInternal = false; -+bool b_bForceFrameLimit = false; -+bool g_bRefreshHalveEnable = false; - - namespace gamescope - { -@@ -928,6 +930,7 @@ uint64_t g_uCurrentBasePlaneCommitID = 0; - bool g_bCurrentBasePlaneIsFifo = false; - - static int g_nSteamCompMgrTargetFPS = 0; -+static int g_nSteamCompMgrTargetFPSreq = 0; - static uint64_t g_uDynamicRefreshEqualityTime = 0; - static int g_nDynamicRefreshRate[gamescope::GAMESCOPE_SCREEN_TYPE_COUNT] = { 0, 0 }; - // Delay to stop modes flickering back and forth. -@@ -947,7 +950,7 @@ static void _update_app_target_refresh_cycle() - int target_fps = g_nCombinedAppRefreshCycleOverride[type]; - - g_nDynamicRefreshRate[ type ] = 0; -- g_nSteamCompMgrTargetFPS = 0; -+ g_nSteamCompMgrTargetFPSreq = 0; - - if ( !target_fps ) - { -@@ -956,7 +959,7 @@ static void _update_app_target_refresh_cycle() - - if ( g_nCombinedAppRefreshCycleChangeFPS[ type ] ) - { -- g_nSteamCompMgrTargetFPS = target_fps; -+ g_nSteamCompMgrTargetFPSreq = target_fps; - } - - if ( g_nCombinedAppRefreshCycleChangeRefresh[ type ] ) -@@ -977,9 +980,9 @@ static void _update_app_target_refresh_cycle() - - static void update_app_target_refresh_cycle() - { -- int nPrevFPSLimit = g_nSteamCompMgrTargetFPS; -+ int nPrevFPSLimit = g_nSteamCompMgrTargetFPSreq; - _update_app_target_refresh_cycle(); -- if ( !!g_nSteamCompMgrTargetFPS != !!nPrevFPSLimit ) -+ if ( !!g_nSteamCompMgrTargetFPSreq != !!nPrevFPSLimit ) - update_runtime_info(); - } - -@@ -5316,7 +5319,7 @@ update_runtime_info() - if ( g_nRuntimeInfoFd < 0 ) - return; - -- uint32_t limiter_enabled = g_nSteamCompMgrTargetFPS != 0 ? 1 : 0; -+ uint32_t limiter_enabled = g_nSteamCompMgrTargetFPSreq != 0 ? 1 : 0; - pwrite( g_nRuntimeInfoFd, &limiter_enabled, sizeof( limiter_enabled ), 0 ); - } - -@@ -5379,7 +5382,7 @@ static bool steamcompmgr_should_vblank_window( bool bShouldLimitFPS, uint64_t vb - { - bool bCloseEnough = std::abs( g_nSteamCompMgrTargetFPS - nRefreshHz ) < 2; - -- if ( g_nSteamCompMgrTargetFPS && bShouldLimitFPS && w && !bCloseEnough ) -+ if ( g_nSteamCompMgrTargetFPS && (bShouldLimitFPS || b_bForceFrameLimit) && w && !bCloseEnough ) - { - uint64_t schedule = w->last_commit_first_latch_time + g_SteamCompMgrLimitedAppRefreshCycle; - -@@ -5397,7 +5400,7 @@ static bool steamcompmgr_should_vblank_window( bool bShouldLimitFPS, uint64_t vb - } - else - { -- if ( g_nSteamCompMgrTargetFPS && bShouldLimitFPS && nRefreshHz > nTargetFPS ) -+ if ( g_nSteamCompMgrTargetFPS && (bShouldLimitFPS || b_bForceFrameLimit) && nRefreshHz > nTargetFPS ) - { - int nVblankDivisor = nRefreshHz / nTargetFPS; - -@@ -5796,7 +5799,7 @@ handle_property_notify(xwayland_ctx_t *ctx, XPropertyEvent *ev) - } - if ( ev->atom == ctx->atoms.gamescopeFPSLimit ) - { -- g_nSteamCompMgrTargetFPS = get_prop( ctx, ctx->root, ctx->atoms.gamescopeFPSLimit, 0 ); -+ g_nSteamCompMgrTargetFPSreq = get_prop( ctx, ctx->root, ctx->atoms.gamescopeFPSLimit, 0 ); - update_runtime_info(); - } - for (int i = 0; i < gamescope::GAMESCOPE_SCREEN_TYPE_COUNT; i++) -@@ -6227,6 +6230,10 @@ handle_property_notify(xwayland_ctx_t *ctx, XPropertyEvent *ev) - MakeFocusDirty(); - } - } -+ if ( ev->atom == ctx->atoms.gamescopeFrameHalveAtom ) -+ { -+ g_bRefreshHalveEnable = !!get_prop( ctx, ctx->root, ctx->atoms.gamescopeFrameHalveAtom, 0 ); -+ } - } - - static int -@@ -6603,7 +6610,7 @@ void handle_presented_for_window( steamcompmgr_win_t* w ) - - uint64_t next_refresh_time = g_SteamCompMgrVBlankTime.schedule.ulTargetVBlank; - -- uint64_t refresh_cycle = g_nSteamCompMgrTargetFPS && steamcompmgr_window_should_limit_fps( w ) -+ uint64_t refresh_cycle = g_nSteamCompMgrTargetFPS && (steamcompmgr_window_should_limit_fps( w ) || b_bForceFrameLimit) - ? g_SteamCompMgrLimitedAppRefreshCycle - : g_SteamCompMgrAppRefreshCycle; - -@@ -7462,6 +7469,8 @@ void init_xwayland_ctx(uint32_t serverId, gamescope_xwayland_server_t *xwayland_ - ctx->atoms.primarySelection = XInternAtom(ctx->dpy, "PRIMARY", false); - ctx->atoms.targets = XInternAtom(ctx->dpy, "TARGETS", false); - -+ ctx->atoms.gamescopeFrameHalveAtom = XInternAtom( ctx->dpy, "GAMESCOPE_STEAMUI_HALFHZ", false );; -+ - ctx->root_width = DisplayWidth(ctx->dpy, ctx->scr); - ctx->root_height = DisplayHeight(ctx->dpy, ctx->scr); - -@@ -7883,7 +7892,7 @@ steamcompmgr_main(int argc, char **argv) - } else if (strcmp(opt_name, "hdr-itm-target-nits") == 0) { - g_flHDRItmTargetNits = atof(optarg); - } else if (strcmp(opt_name, "framerate-limit") == 0) { -- g_nSteamCompMgrTargetFPS = atoi(optarg); -+ g_nSteamCompMgrTargetFPSreq = atoi(optarg); - } else if (strcmp(opt_name, "reshade-effect") == 0) { - g_reshade_effect = optarg; - } else if (strcmp(opt_name, "reshade-technique-idx") == 0) { -@@ -8051,6 +8060,30 @@ steamcompmgr_main(int argc, char **argv) - // as a question. - const bool bIsVBlankFromTimer = vblank; - -+ // Halve refresh rate on SteamUI -+ bool isSteam = false; -+ for (auto &iter : g_VirtualConnectorFocuses) -+ { -+ global_focus_t *pFocus = &iter.second; -+ if (window_is_steam( pFocus->focusWindow )) { -+ isSteam = true; -+ break; -+ } -+ } -+ if ( g_bRefreshHalveEnable && isSteam ) { -+ int nRealRefreshHz = gamescope::ConvertmHzToHz( g_nNestedRefresh ? g_nNestedRefresh : g_nOutputRefresh ); -+ if (nRealRefreshHz > 100 && (g_nSteamCompMgrTargetFPSreq > 50 || !g_nSteamCompMgrTargetFPSreq)) { -+ g_nSteamCompMgrTargetFPS = nRealRefreshHz / 2; -+ b_bForceFrameLimit = true; -+ } else { -+ g_nSteamCompMgrTargetFPS = g_nSteamCompMgrTargetFPSreq; -+ b_bForceFrameLimit = false; -+ } -+ } else { -+ g_nSteamCompMgrTargetFPS = g_nSteamCompMgrTargetFPSreq; -+ b_bForceFrameLimit = false; -+ } -+ - // We can always vblank if VRR. - const bool bVRR = GetBackend()->GetCurrentConnector() && GetBackend()->GetCurrentConnector()->IsVRRActive(); - if ( bVRR ) -diff --git a/src/xwayland_ctx.hpp b/src/xwayland_ctx.hpp -index df2af70d19ae..e4eec9fa0c48 100644 ---- a/src/xwayland_ctx.hpp -+++ b/src/xwayland_ctx.hpp -@@ -246,6 +246,8 @@ struct xwayland_ctx_t final : public gamescope::IWaitable - Atom clipboard; - Atom primarySelection; - Atom targets; -+ -+ Atom gamescopeFrameHalveAtom; - } atoms; - - bool HasQueuedEvents(); --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Joshua Tam <297250+joshuatam@users.noreply.github.com> -Date: Fri, 6 Dec 2024 16:51:02 +0800 -Subject: feat(intel): add rotation shader for rotating output - ---- - src/Backends/DRMBackend.cpp | 35 +++++++++- - src/main.cpp | 7 ++ - src/main.hpp | 2 + - src/meson.build | 1 + - src/rendervulkan.cpp | 126 ++++++++++++++++++++++++++++++----- - src/rendervulkan.hpp | 6 +- - src/shaders/cs_rotation.comp | 53 +++++++++++++++ - src/wlserver.cpp | 5 ++ - 8 files changed, 216 insertions(+), 19 deletions(-) - create mode 100644 src/shaders/cs_rotation.comp - -diff --git a/src/Backends/DRMBackend.cpp b/src/Backends/DRMBackend.cpp -index a919c61f9f8d..a099185e7cdc 100644 ---- a/src/Backends/DRMBackend.cpp -+++ b/src/Backends/DRMBackend.cpp -@@ -1609,6 +1609,10 @@ static void update_drm_effective_orientations( struct drm_t *drm, const drmModeM - if ( pDRMInternalConnector != drm->pConnector ) - pInternalMode = find_mode( pDRMInternalConnector->GetModeConnector(), 0, 0, 0 ); - -+ if ( g_bUseRotationShader ) { -+ g_bEnableDRMRotationShader = true; -+ } -+ - pDRMInternalConnector->UpdateEffectiveOrientation( pInternalMode ); - } - -@@ -1620,6 +1624,10 @@ static void update_drm_effective_orientations( struct drm_t *drm, const drmModeM - if ( pDRMExternalConnector != drm->pConnector ) - pExternalMode = find_mode( pDRMExternalConnector->GetModeConnector(), 0, 0, 0 ); - -+ if ( g_bUseRotationShader ) { -+ g_bEnableDRMRotationShader = false; -+ } -+ - pDRMExternalConnector->UpdateEffectiveOrientation( pExternalMode ); - } - } -@@ -1835,7 +1843,7 @@ LiftoffStateCacheEntry FrameInfoToLiftoffStateCacheEntry( struct drm_t *drm, con - uint64_t crtcW = srcWidth / frameInfo->layers[ i ].scale.x; - uint64_t crtcH = srcHeight / frameInfo->layers[ i ].scale.y; - -- if (g_bRotated) -+ if (g_bRotated && !g_bEnableDRMRotationShader) - { - int64_t imageH = frameInfo->layers[ i ].tex->contentHeight() / frameInfo->layers[ i ].scale.y; - -@@ -2136,6 +2144,17 @@ namespace gamescope - - void CDRMConnector::UpdateEffectiveOrientation( const drmModeModeInfo *pMode ) - { -+ if (g_bEnableDRMRotationShader) -+ { -+ drm_log.infof("Using rotation shader"); -+ if (g_DesiredInternalOrientation == GAMESCOPE_PANEL_ORIENTATION_270) { -+ m_ChosenOrientation = GAMESCOPE_PANEL_ORIENTATION_180; -+ } else { -+ m_ChosenOrientation = GAMESCOPE_PANEL_ORIENTATION_0; -+ } -+ return; -+ } -+ - if ( this->GetScreenType() == GAMESCOPE_SCREEN_TYPE_INTERNAL && g_DesiredInternalOrientation != GAMESCOPE_PANEL_ORIENTATION_AUTO ) - { - m_ChosenOrientation = g_DesiredInternalOrientation; -@@ -3185,6 +3204,13 @@ bool drm_set_mode( struct drm_t *drm, const drmModeModeInfo *mode ) - g_bRotated = false; - g_nOutputWidth = mode->hdisplay; - g_nOutputHeight = mode->vdisplay; -+ -+ if (g_bEnableDRMRotationShader) { -+ g_bRotated = true; -+ g_nOutputWidth = mode->vdisplay; -+ g_nOutputHeight = mode->hdisplay; -+ } -+ - break; - case GAMESCOPE_PANEL_ORIENTATION_90: - case GAMESCOPE_PANEL_ORIENTATION_270: -@@ -3449,6 +3475,11 @@ namespace gamescope - - bNeedsFullComposite |= !!(g_uCompositeDebug & CompositeDebugFlag::Heatmap); - -+ if (g_bEnableDRMRotationShader) -+ { -+ bNeedsFullComposite = true; -+ } -+ - bool bDoComposite = true; - if ( !bNeedsFullComposite && !bWantsPartialComposite ) - { -@@ -3539,7 +3570,7 @@ namespace gamescope - if ( bDefer && !!( g_uCompositeDebug & CompositeDebugFlag::Markers ) ) - g_uCompositeDebug |= CompositeDebugFlag::Markers_Partial; - -- std::optional oCompositeResult = vulkan_composite( &compositeFrameInfo, nullptr, !bNeedsFullComposite ); -+ std::optional oCompositeResult = vulkan_composite( &compositeFrameInfo, nullptr, !bNeedsFullComposite, nullptr, true, nullptr, g_bEnableDRMRotationShader ); - - m_bWasCompositing = true; - -diff --git a/src/main.cpp b/src/main.cpp -index d63b1fe50cc6..cfd4cc11d179 100644 ---- a/src/main.cpp -+++ b/src/main.cpp -@@ -131,6 +131,7 @@ const struct option *gamescope_options = (struct option[]){ - { "composite-debug", no_argument, nullptr, 0 }, - { "disable-xres", no_argument, nullptr, 'x' }, - { "fade-out-duration", required_argument, nullptr, 0 }, -+ { "use-rotation-shader", required_argument, nullptr, 0 }, - { "force-orientation", required_argument, nullptr, 0 }, - { "force-windows-fullscreen", no_argument, nullptr, 0 }, - { "custom-refresh-rates", required_argument, nullptr, 0 }, -@@ -194,6 +195,7 @@ const char usage[] = - " -e, --steam enable Steam integration\n" - " --xwayland-count create N xwayland servers\n" - " --prefer-vk-device prefer Vulkan device for compositing (ex: 1002:7300)\n" -+ " --use-rotation-shader use rotation shader for rotating the screen\n" - " --force-orientation rotate the internal display (left, right, normal, upsidedown)\n" - " --force-windows-fullscreen force windows inside of gamescope to be the size of the nested display (fullscreen)\n" - " --cursor-scale-height if specified, sets a base output height to linearly scale the cursor against.\n" -@@ -355,6 +357,9 @@ static gamescope::GamescopeModeGeneration parse_gamescope_mode_generation( const - } - } - -+bool g_bUseRotationShader = false; -+bool g_bEnableDRMRotationShader = false; -+ - GamescopePanelOrientation g_DesiredInternalOrientation = GAMESCOPE_PANEL_ORIENTATION_AUTO; - static GamescopePanelOrientation force_orientation(const char *str) - { -@@ -812,6 +817,8 @@ int main(int argc, char **argv) - g_eGamescopeModeGeneration = parse_gamescope_mode_generation( optarg ); - } else if (strcmp(opt_name, "force-orientation") == 0) { - g_DesiredInternalOrientation = force_orientation( optarg ); -+ } else if (strcmp(opt_name, "use-rotation-shader") == 0) { -+ g_bUseRotationShader = true; - } else if (strcmp(opt_name, "custom-refresh-rates") == 0) { - g_customRefreshRates = parse_custom_refresh_rates( optarg ); - } else if (strcmp(opt_name, "sharpness") == 0 || -diff --git a/src/main.hpp b/src/main.hpp -index 390c04a63ecd..e7b857d44b0d 100644 ---- a/src/main.hpp -+++ b/src/main.hpp -@@ -22,6 +22,8 @@ extern bool g_bForceRelativeMouse; - extern int g_nOutputRefresh; // mHz - extern bool g_bOutputHDREnabled; - extern bool g_bForceInternal; -+extern bool g_bUseRotationShader; -+extern bool g_bEnableDRMRotationShader; - - extern bool g_bFullscreen; - -diff --git a/src/meson.build b/src/meson.build -index a3dfdabd7366..36c073ec214e 100644 ---- a/src/meson.build -+++ b/src/meson.build -@@ -70,6 +70,7 @@ shader_src = [ - 'shaders/cs_nis.comp', - 'shaders/cs_nis_fp16.comp', - 'shaders/cs_rgb_to_nv12.comp', -+ 'shaders/cs_rotation.comp', - ] - - spirv_shaders = glsl_generator.process(shader_src) -diff --git a/src/rendervulkan.cpp b/src/rendervulkan.cpp -index f79d26e0c139..b19f9bf101b4 100644 ---- a/src/rendervulkan.cpp -+++ b/src/rendervulkan.cpp -@@ -48,6 +48,7 @@ - #include "cs_nis.h" - #include "cs_nis_fp16.h" - #include "cs_rgb_to_nv12.h" -+#include "cs_rotation.h" - - #define A_CPU - #include "shaders/ffx_a.h" -@@ -923,6 +924,7 @@ bool CVulkanDevice::createShaders() - SHADER(NIS, cs_nis); - } - SHADER(RGB_TO_NV12, cs_rgb_to_nv12); -+ SHADER(ROTATION, cs_rotation); - #undef SHADER - - for (uint32_t i = 0; i < shaderInfos.size(); i++) -@@ -1153,6 +1155,7 @@ void CVulkanDevice::compileAllPipelines() - SHADER(EASU, 1, 1, 1); - SHADER(NIS, 1, 1, 1); - SHADER(RGB_TO_NV12, 1, 1, 1); -+ SHADER(ROTATION, k_nMaxLayers, k_nMaxYcbcrMask_ToPreCompile, k_nMaxBlurLayers); - #undef SHADER - - for (auto& info : pipelineInfos) { -@@ -3249,8 +3252,16 @@ static bool vulkan_make_output_images( VulkanOutput_t *pOutput ) - - uint32_t uDRMFormat = pOutput->uOutputFormat; - -+ uint32_t l_nOutputWidth = g_nOutputWidth; -+ uint32_t l_nOutputHeight = g_nOutputHeight; -+ -+ if (g_bEnableDRMRotationShader) { -+ l_nOutputWidth = g_nOutputHeight; -+ l_nOutputHeight = g_nOutputWidth; -+ } -+ - pOutput->outputImages[0] = new CVulkanTexture(); -- bool bSuccess = pOutput->outputImages[0]->BInit( g_nOutputWidth, g_nOutputHeight, 1u, uDRMFormat, outputImageflags ); -+ bool bSuccess = pOutput->outputImages[0]->BInit( l_nOutputWidth, l_nOutputHeight, 1u, uDRMFormat, outputImageflags ); - if ( bSuccess != true ) - { - vk_log.errorf( "failed to allocate buffer for KMS" ); -@@ -3258,7 +3269,7 @@ static bool vulkan_make_output_images( VulkanOutput_t *pOutput ) - } - - pOutput->outputImages[1] = new CVulkanTexture(); -- bSuccess = pOutput->outputImages[1]->BInit( g_nOutputWidth, g_nOutputHeight, 1u, uDRMFormat, outputImageflags ); -+ bSuccess = pOutput->outputImages[1]->BInit( l_nOutputWidth, l_nOutputHeight, 1u, uDRMFormat, outputImageflags ); - if ( bSuccess != true ) - { - vk_log.errorf( "failed to allocate buffer for KMS" ); -@@ -3266,7 +3277,7 @@ static bool vulkan_make_output_images( VulkanOutput_t *pOutput ) - } - - pOutput->outputImages[2] = new CVulkanTexture(); -- bSuccess = pOutput->outputImages[2]->BInit( g_nOutputWidth, g_nOutputHeight, 1u, uDRMFormat, outputImageflags ); -+ bSuccess = pOutput->outputImages[2]->BInit( l_nOutputWidth, l_nOutputHeight, 1u, uDRMFormat, outputImageflags ); - if ( bSuccess != true ) - { - vk_log.errorf( "failed to allocate buffer for KMS" ); -@@ -3281,7 +3292,7 @@ static bool vulkan_make_output_images( VulkanOutput_t *pOutput ) - uint32_t uPartialDRMFormat = pOutput->uOutputFormatOverlay; - - pOutput->outputImagesPartialOverlay[0] = new CVulkanTexture(); -- bool bSuccess = pOutput->outputImagesPartialOverlay[0]->BInit( g_nOutputWidth, g_nOutputHeight, 1u, uPartialDRMFormat, outputImageflags, nullptr, 0, 0, pOutput->outputImages[0].get() ); -+ bool bSuccess = pOutput->outputImagesPartialOverlay[0]->BInit( l_nOutputWidth, l_nOutputHeight, 1u, uPartialDRMFormat, outputImageflags, nullptr, 0, 0, pOutput->outputImages[0].get() ); - if ( bSuccess != true ) - { - vk_log.errorf( "failed to allocate buffer for KMS" ); -@@ -3289,7 +3300,7 @@ static bool vulkan_make_output_images( VulkanOutput_t *pOutput ) - } - - pOutput->outputImagesPartialOverlay[1] = new CVulkanTexture(); -- bSuccess = pOutput->outputImagesPartialOverlay[1]->BInit( g_nOutputWidth, g_nOutputHeight, 1u, uPartialDRMFormat, outputImageflags, nullptr, 0, 0, pOutput->outputImages[1].get() ); -+ bSuccess = pOutput->outputImagesPartialOverlay[1]->BInit( l_nOutputWidth, l_nOutputHeight, 1u, uPartialDRMFormat, outputImageflags, nullptr, 0, 0, pOutput->outputImages[1].get() ); - if ( bSuccess != true ) - { - vk_log.errorf( "failed to allocate buffer for KMS" ); -@@ -3297,7 +3308,7 @@ static bool vulkan_make_output_images( VulkanOutput_t *pOutput ) - } - - pOutput->outputImagesPartialOverlay[2] = new CVulkanTexture(); -- bSuccess = pOutput->outputImagesPartialOverlay[2]->BInit( g_nOutputWidth, g_nOutputHeight, 1u, uPartialDRMFormat, outputImageflags, nullptr, 0, 0, pOutput->outputImages[2].get() ); -+ bSuccess = pOutput->outputImagesPartialOverlay[2]->BInit( l_nOutputWidth, l_nOutputHeight, 1u, uPartialDRMFormat, outputImageflags, nullptr, 0, 0, pOutput->outputImages[2].get() ); - if ( bSuccess != true ) - { - vk_log.errorf( "failed to allocate buffer for KMS" ); -@@ -3427,6 +3438,28 @@ static void update_tmp_images( uint32_t width, uint32_t height ) - } - } - -+static void update_rotated_images( uint32_t width, uint32_t height ) -+{ -+ if ( g_output.rotatedOutput != nullptr -+ && width == g_output.rotatedOutput->width() -+ && height == g_output.rotatedOutput->height() ) -+ { -+ return; -+ } -+ -+ CVulkanTexture::createFlags createFlags; -+ createFlags.bSampled = true; -+ createFlags.bStorage = true; -+ -+ g_output.rotatedOutput = new CVulkanTexture(); -+ bool bSuccess = g_output.rotatedOutput->BInit( width, height, 1u, DRM_FORMAT_ARGB8888, createFlags, nullptr ); -+ -+ if ( !bSuccess ) -+ { -+ vk_log.errorf( "failed to create rotated output" ); -+ return; -+ } -+} - - static bool init_nis_data() - { -@@ -3903,7 +3936,7 @@ extern uint32_t g_reshade_technique_idx; - - ReshadeEffectPipeline *g_pLastReshadeEffect = nullptr; - --std::optional vulkan_composite( struct FrameInfo_t *frameInfo, gamescope::Rc pPipewireTexture, bool partial, gamescope::Rc pOutputOverride, bool increment, std::unique_ptr pInCommandBuffer ) -+std::optional vulkan_composite( struct FrameInfo_t *frameInfo, gamescope::Rc pPipewireTexture, bool partial, gamescope::Rc pOutputOverride, bool increment, std::unique_ptr pInCommandBuffer, bool applyRotation ) - { - EOTF outputTF = frameInfo->outputEncodingEOTF; - if (!frameInfo->applyOutputColorMgmt) -@@ -3978,7 +4011,15 @@ std::optional vulkan_composite( struct FrameInfo_t *frameInfo, gamesco - cmdBuffer->setTextureSrgb(0, true); - cmdBuffer->setSamplerUnnormalized(0, false); - cmdBuffer->setSamplerNearest(0, false); -- cmdBuffer->bindTarget(compositeImage); -+ -+ if (applyRotation) { -+ // Make a rotatedOutput with normal dimensions -+ update_rotated_images(currentOutputWidth, currentOutputHeight); // 2560x1600 -+ cmdBuffer->bindTarget(g_output.rotatedOutput); -+ } else { -+ cmdBuffer->bindTarget(compositeImage); -+ } -+ - cmdBuffer->uploadConstants(frameInfo, g_upscaleFilterSharpness / 10.0f); - - cmdBuffer->dispatch(div_roundup(currentOutputWidth, pixelsPerGroup), div_roundup(currentOutputHeight, pixelsPerGroup)); -@@ -4021,7 +4062,15 @@ std::optional vulkan_composite( struct FrameInfo_t *frameInfo, gamesco - - cmdBuffer->bindPipeline( g_device.pipeline(SHADER_TYPE_BLIT, nisFrameInfo.layerCount, nisFrameInfo.ycbcrMask(), 0u, nisFrameInfo.colorspaceMask(), outputTF )); - bind_all_layers(cmdBuffer.get(), &nisFrameInfo); -- cmdBuffer->bindTarget(compositeImage); -+ -+ if (applyRotation) { -+ // Make a rotatedOutput with normal dimensions -+ update_rotated_images(currentOutputWidth, currentOutputHeight); // 2560x1600 -+ cmdBuffer->bindTarget(g_output.rotatedOutput); -+ } else { -+ cmdBuffer->bindTarget(compositeImage); -+ } -+ - cmdBuffer->uploadConstants(&nisFrameInfo); - - int pixelsPerGroup = 8; -@@ -4059,7 +4108,15 @@ std::optional vulkan_composite( struct FrameInfo_t *frameInfo, gamesco - type = frameInfo->blurLayer0 == BLUR_MODE_COND ? SHADER_TYPE_BLUR_COND : SHADER_TYPE_BLUR; - cmdBuffer->bindPipeline(g_device.pipeline(type, frameInfo->layerCount, frameInfo->ycbcrMask(), blur_layer_count, frameInfo->colorspaceMask(), outputTF )); - bind_all_layers(cmdBuffer.get(), frameInfo); -- cmdBuffer->bindTarget(compositeImage); -+ -+ if (applyRotation) { -+ // Make a rotatedOutput with normal dimensions -+ update_rotated_images(currentOutputWidth, currentOutputHeight); // 2560x1600 -+ cmdBuffer->bindTarget(g_output.rotatedOutput); -+ } else { -+ cmdBuffer->bindTarget(compositeImage); -+ } -+ - cmdBuffer->bindTexture(VKR_BLUR_EXTRA_SLOT, g_output.tmpOutput); - cmdBuffer->setTextureSrgb(VKR_BLUR_EXTRA_SLOT, !useSrgbView); // Inverted because it chooses whether to view as linear (sRGB view) or sRGB (raw view). It's horrible. I need to change it. - cmdBuffer->setSamplerUnnormalized(VKR_BLUR_EXTRA_SLOT, true); -@@ -4069,14 +4126,51 @@ std::optional vulkan_composite( struct FrameInfo_t *frameInfo, gamesco - } - else - { -- cmdBuffer->bindPipeline( g_device.pipeline(SHADER_TYPE_BLIT, frameInfo->layerCount, frameInfo->ycbcrMask(), 0u, frameInfo->colorspaceMask(), outputTF )); -- bind_all_layers(cmdBuffer.get(), frameInfo); -- cmdBuffer->bindTarget(compositeImage); -- cmdBuffer->uploadConstants(frameInfo); -+ if (applyRotation) { -+ cmdBuffer->bindPipeline( g_device.pipeline(SHADER_TYPE_ROTATION, frameInfo->layerCount, frameInfo->ycbcrMask(), 0u, frameInfo->colorspaceMask(), outputTF )); -+ bind_all_layers(cmdBuffer.get(), frameInfo); -+ cmdBuffer->bindTarget(compositeImage); -+ cmdBuffer->uploadConstants(frameInfo); - -- const int pixelsPerGroup = 8; -+ const int pixelsPerGroup = 8; - -- cmdBuffer->dispatch(div_roundup(currentOutputWidth, pixelsPerGroup), div_roundup(currentOutputHeight, pixelsPerGroup)); -+ cmdBuffer->dispatch(div_roundup(currentOutputWidth, pixelsPerGroup), div_roundup(currentOutputHeight, pixelsPerGroup)); -+ } else { -+ cmdBuffer->bindPipeline( g_device.pipeline(SHADER_TYPE_BLIT, frameInfo->layerCount, frameInfo->ycbcrMask(), 0u, frameInfo->colorspaceMask(), outputTF )); -+ bind_all_layers(cmdBuffer.get(), frameInfo); -+ cmdBuffer->bindTarget(compositeImage); -+ cmdBuffer->uploadConstants(frameInfo); -+ -+ const int pixelsPerGroup = 8; -+ -+ cmdBuffer->dispatch(div_roundup(currentOutputWidth, pixelsPerGroup), div_roundup(currentOutputHeight, pixelsPerGroup)); -+ } -+ } -+ -+ if (applyRotation) -+ { -+ if (g_output.rotatedOutput != nullptr) { -+ // Rotate the final output -+ // TODO: may need rework with another rotation shader for blur, fsr and nis -+ cmdBuffer->bindPipeline( g_device.pipeline(SHADER_TYPE_ROTATION, frameInfo->layerCount, frameInfo->ycbcrMask(), 0u, frameInfo->colorspaceMask(), outputTF)); -+ bind_all_layers(cmdBuffer.get(), frameInfo); -+ -+ // if (frameInfo->blurLayer0) { -+ // bool useSrgbView = frameInfo->layers[0].colorspace == GAMESCOPE_APP_TEXTURE_COLORSPACE_LINEAR; -+ // -+ // cmdBuffer->bindTexture(VKR_BLUR_EXTRA_SLOT, g_output.rotatedOutput); -+ // cmdBuffer->setTextureSrgb(VKR_BLUR_EXTRA_SLOT, !useSrgbView); -+ // cmdBuffer->setSamplerUnnormalized(VKR_BLUR_EXTRA_SLOT, true); -+ // cmdBuffer->setSamplerNearest(VKR_BLUR_EXTRA_SLOT, false); -+ // } -+ -+ cmdBuffer->bindTarget(compositeImage); -+ cmdBuffer->uploadConstants(frameInfo); -+ -+ const int pixelsPerGroup = 8; -+ -+ cmdBuffer->dispatch(div_roundup(currentOutputWidth, pixelsPerGroup), div_roundup(currentOutputHeight, pixelsPerGroup)); -+ } - } - - if ( pPipewireTexture != nullptr ) -diff --git a/src/rendervulkan.hpp b/src/rendervulkan.hpp -index 63cc6029ac5f..93a4a6027f55 100644 ---- a/src/rendervulkan.hpp -+++ b/src/rendervulkan.hpp -@@ -408,7 +408,7 @@ gamescope::OwningRc vulkan_create_texture_from_dmabuf( struct wl - gamescope::OwningRc vulkan_create_texture_from_bits( uint32_t width, uint32_t height, uint32_t contentWidth, uint32_t contentHeight, uint32_t drmFormat, CVulkanTexture::createFlags texCreateFlags, void *bits ); - gamescope::OwningRc vulkan_create_texture_from_wlr_buffer( struct wlr_buffer *buf, gamescope::OwningRc pBackendFb ); - --std::optional vulkan_composite( struct FrameInfo_t *frameInfo, gamescope::Rc pScreenshotTexture, bool partial, gamescope::Rc pOutputOverride = nullptr, bool increment = true, std::unique_ptr pInCommandBuffer = nullptr ); -+std::optional vulkan_composite( struct FrameInfo_t *frameInfo, gamescope::Rc pScreenshotTexture, bool partial, gamescope::Rc pOutputOverride = nullptr, bool increment = true, std::unique_ptr pInCommandBuffer = nullptr, bool applyRotation = false ); - void vulkan_wait( uint64_t ulSeqNo, bool bReset ); - gamescope::Rc vulkan_get_last_output_image( bool partial, bool defer ); - gamescope::Rc vulkan_acquire_screenshot_texture(uint32_t width, uint32_t height, bool exportable, uint32_t drmFormat, EStreamColorspace colorspace = k_EStreamColorspace_Unknown); -@@ -545,6 +545,9 @@ struct VulkanOutput_t - // NIS - gamescope::OwningRc nisScalerImage; - gamescope::OwningRc nisUsmImage; -+ -+ // Rotated -+ gamescope::OwningRc rotatedOutput; - }; - - -@@ -557,6 +560,7 @@ enum ShaderType { - SHADER_TYPE_RCAS, - SHADER_TYPE_NIS, - SHADER_TYPE_RGB_TO_NV12, -+ SHADER_TYPE_ROTATION, - - SHADER_TYPE_COUNT - }; -diff --git a/src/shaders/cs_rotation.comp b/src/shaders/cs_rotation.comp -new file mode 100644 -index 000000000000..1a47fd505748 ---- /dev/null -+++ b/src/shaders/cs_rotation.comp -@@ -0,0 +1,53 @@ -+#version 450 -+ -+#extension GL_GOOGLE_include_directive : require -+#extension GL_EXT_scalar_block_layout : require -+ -+#include "descriptor_set.h" -+ -+layout( -+ local_size_x = 8, -+ local_size_y = 8, -+ local_size_z = 1) in; -+ -+#include "blit_push_data.h" -+#include "composite.h" -+ -+vec4 sampleLayer(uint layerIdx, vec2 uv) { -+ if ((c_ycbcrMask & (1 << layerIdx)) != 0) -+ return sampleLayer(s_ycbcr_samplers[layerIdx], layerIdx, uv, false); -+ return sampleLayer(s_samplers[layerIdx], layerIdx, uv, true); -+} -+ -+void main() { -+ uvec2 coord = uvec2(gl_GlobalInvocationID.x, gl_GlobalInvocationID.y); -+ uvec2 outSize = imageSize(dst); -+ float outWidth = outSize.y; -+ float outHeight = outSize.x; -+ -+ vec2 uv = vec2(coord); -+ vec4 outputValue = vec4(255.0f); -+ -+ if (c_layerCount > 0) { -+ outputValue = sampleLayer(0, uv) * u_opacity[0]; -+ } -+ -+ for (int i = 1; i < c_layerCount; i++) { -+ vec4 layerColor = sampleLayer(i, uv); -+ // wl_surfaces come with premultiplied alpha, so that's them being -+ // premultiplied by layerColor.a. -+ // We need to then multiply that by the layer's opacity to get to our -+ // final premultiplied state. -+ // For the other side of things, we need to multiply by (1.0f - (layerColor.a * opacity)) -+ float opacity = u_opacity[i]; -+ float layerAlpha = opacity * layerColor.a; -+ outputValue = layerColor * opacity + outputValue * (1.0f - layerAlpha); -+ } -+ -+ outputValue.rgb = encodeOutputColor(outputValue.rgb); -+ -+ // Rotate the pixel coordinates counter-clockwise by 90 degrees -+ ivec2 rotatedCoord = ivec2(coord.y, outWidth - coord.x - 1); -+ -+ imageStore(dst, rotatedCoord, outputValue); -+} -diff --git a/src/wlserver.cpp b/src/wlserver.cpp -index 4d6e8de55ba4..a694b5245a97 100644 ---- a/src/wlserver.cpp -+++ b/src/wlserver.cpp -@@ -2793,6 +2793,11 @@ static void apply_touchscreen_orientation(double *x, double *y ) - break; - } - -+ if (g_bEnableDRMRotationShader) { -+ tx = 1.0 - *y; -+ ty = *x; -+ } -+ - *x = tx; - *y = ty; - } --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: brainantifreeze -Date: Thu, 19 Dec 2024 09:16:15 +0000 -Subject: feat(nvidia): fix crash with current driver - -add layer env var to hide present wait ext - -see: https://github.com/ValveSoftware/gamescope/pull/1671 ---- - layer/VkLayer_FROG_gamescope_wsi.cpp | 20 +++++++++++++++++++- - 1 file changed, 19 insertions(+), 1 deletion(-) - -diff --git a/layer/VkLayer_FROG_gamescope_wsi.cpp b/layer/VkLayer_FROG_gamescope_wsi.cpp -index af0c2009930b..263cbc37bd88 100644 ---- a/layer/VkLayer_FROG_gamescope_wsi.cpp -+++ b/layer/VkLayer_FROG_gamescope_wsi.cpp -@@ -183,6 +183,16 @@ namespace GamescopeWSILayer { - return s_ensureMinImageCount; - } - -+ static bool getHidePresentWait() { -+ static bool s_hidePresentWait = []() -> bool { -+ if (auto hide = parseEnv("GAMESCOPE_WSI_HIDE_PRESENT_WAIT_EXT")) { -+ return *hide; -+ } -+ return false; -+ }(); -+ return s_hidePresentWait; -+ } -+ - // Taken from Mesa, licensed under MIT. - // - // No real reason to rewrite this code, -@@ -589,7 +599,11 @@ namespace GamescopeWSILayer { - createInfo.ppEnabledExtensionNames = enabledExts.data(); - - setenv("vk_xwayland_wait_ready", "false", 0); -- setenv("vk_khr_present_wait", "true", 0); -+ if (getHidePresentWait()) { -+ setenv("vk_khr_present_wait", "false", 0); -+ } else { -+ setenv("vk_khr_present_wait", "true", 0); -+ } - - VkResult result = pfnCreateInstanceProc(&createInfo, pAllocator, pInstance); - if (result != VK_SUCCESS) -@@ -899,6 +913,10 @@ namespace GamescopeWSILayer { - const vkroots::VkInstanceDispatch* pDispatch, - VkPhysicalDevice physicalDevice, - VkPhysicalDeviceFeatures2* pFeatures) { -+ if (getHidePresentWait()) { -+ fprintf(stderr, "[Gamescope WSI] Removing VkPhysicalDevicePresentWaitFeaturesKHR because GAMESCOPE_WSI_HIDE_PRESENT_WAIT_EXT is set\n"); -+ vkroots::RemoveFromChain(pFeatures); -+ } - pDispatch->GetPhysicalDeviceFeatures2(physicalDevice, pFeatures); - } - --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Antheas Kapenekakis -Date: Sun, 23 Feb 2025 02:16:55 +0100 -Subject: feat(display): add asus z13 - ---- - .../00-gamescope/displays/asus.z13.lcd.lua | 57 +++++++++++++++++++ - 1 file changed, 57 insertions(+) - create mode 100644 scripts/00-gamescope/displays/asus.z13.lcd.lua - -diff --git a/scripts/00-gamescope/displays/asus.z13.lcd.lua b/scripts/00-gamescope/displays/asus.z13.lcd.lua -new file mode 100644 -index 000000000000..891f1ea9ca6f ---- /dev/null -+++ b/scripts/00-gamescope/displays/asus.z13.lcd.lua -@@ -0,0 +1,57 @@ -+gamescope.config.known_displays.asusz13_lcd = { -+ pretty_name = "Asus Z13 LCD", -+ dynamic_refresh_rates = { -+ 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, -+ 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, -+ 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, -+ 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, -+ 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, -+ 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, -+ 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, -+ 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, -+ 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180 -+ }, -+ -+ -- Detailed Timing Descriptors: -+ -- DTD 1: 1920x1200 120.002 Hz 8:5 151.683 kHz 315.500 MHz (172 mm x 107 mm) -+ -- Modeline "1920x1200_120.00" 315.500 1920 1968 2000 2080 1200 1254 1260 1264 -HSync -VSync -+ -- DTD 2: 1920x1200 60.001 Hz 8:5 75.841 kHz 157.750 MHz (172 mm x 107 mm) -+ -- Modeline "1920x1200_60.00" 157.750 1920 1968 2000 2080 1200 1254 1260 1264 -HSync -VSync -+ dynamic_modegen = function(base_mode, refresh) -+ debug("Generating mode "..refresh.."Hz with fixed pixel clock") -+ local vfps = { -+ 4886, 4751, 4620, 4495, 4375, 4259, 4147, 4040, 3936, 3836, 3739, 3646, -+ 3556, 3468, 3384, 3302, 3223, 3146, 3072, 2999, 2929, 2861, 2795, 2731, -+ 2668, 2608, 2548, 2491, 2435, 2380, 2327, 2275, 2225, 2175, 2127, 2080, -+ 2035, 1990, 1946, 1903, 1862, 1821, 1781, 1742, 1704, 1667, 1630, 1594, -+ 1559, 1525, 1491, 1458, 1426, 1395, 1364, 1333, 1303, 1274, 1245, 1217, -+ 1190, 1162, 1136, 1110, 1084, 1059, 1034, 1010, 986, 962, 939, 916, 894, -+ 872, 850, 829, 808, 787, 767, 747, 727, 708, 689, 670, 652, 634, 616, -+ 598, 581, 563, 547, 530, 513, 497, 481, 466, 450, 435, 420, 405, 390, -+ 376, 361, 347, 333, 320, 306, 293, 279, 266, 254, 241, 228, 216, 204, -+ 192, 180, 168, 156, 145, 133, 122, 111, 100, 89, 78, 68, 57, 47, 36, -+ 26, 16, 6 -+ } -+ local vfp = vfps[zero_index(refresh - 48)] -+ if vfp == nil then -+ warn("Couldn't do refresh "..refresh.." on ROG Ally") -+ return base_mode -+ end -+ -+ local mode = base_mode -+ -+ gamescope.modegen.adjust_front_porch(mode, vfp) -+ mode.vrefresh = gamescope.modegen.calc_vrefresh(mode) -+ -+ --debug(inspect(mode)) -+ return mode -+ end, -+ matches = function(display) -+ if display.vendor == "TMA" and display.model == "TL134ADXP03" then -+ debug("[z13] Matched vendor: "..display.vendor.." model: "..display.model.." product:"..display.product) -+ return 5000 -+ end -+ return -1 -+ end -+} -+debug("Registered Lenovo Legion Go S LCD as a known display") -\ No newline at end of file --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Antheas Kapenekakis -Date: Wed, 23 Apr 2025 22:51:54 +0200 -Subject: feat(display): consider vporch to avoid timing issues - ---- - src/Backends/DRMBackend.cpp | 8 ++++++++ - src/main.cpp | 1 + - src/main.hpp | 1 + - src/vblankmanager.cpp | 6 +----- - 4 files changed, 11 insertions(+), 5 deletions(-) - -diff --git a/src/Backends/DRMBackend.cpp b/src/Backends/DRMBackend.cpp -index a099185e7cdc..d09030e0cf5e 100644 ---- a/src/Backends/DRMBackend.cpp -+++ b/src/Backends/DRMBackend.cpp -@@ -213,6 +213,11 @@ namespace gamescope - return nRefresh; - } - -+ static int32_t GetVblankNs(const drmModeModeInfo *mode) -+ { -+ return (mode->vsync_start - mode->vdisplay) * 1'000'000'000ll / mode->vrefresh / mode->vtotal; -+ } -+ - template - using CAutoDeletePtr = std::unique_ptr; - -@@ -3194,6 +3199,9 @@ bool drm_set_mode( struct drm_t *drm, const drmModeModeInfo *mode ) - g_nOutputRefresh = gamescope::GetModeRefresh( mode ); - g_nDynamicRefreshHz = 0; - -+ g_nsVsync = gamescope::GetVblankNs( mode ); -+ drm_log.infof("Vblank ns: %lu", g_nsVsync); -+ - update_drm_effective_orientations(drm, mode); - - switch ( drm->pConnector->GetCurrentOrientation() ) -diff --git a/src/main.cpp b/src/main.cpp -index cfd4cc11d179..0d88e3a2cded 100644 ---- a/src/main.cpp -+++ b/src/main.cpp -@@ -291,6 +291,7 @@ int g_nNestedDisplayIndex = 0; - uint32_t g_nOutputWidth = 0; - uint32_t g_nOutputHeight = 0; - int g_nOutputRefresh = 0; -+long g_nsVsync = 0; - bool g_bOutputHDREnabled = false; - - bool g_bFullscreen = false; -diff --git a/src/main.hpp b/src/main.hpp -index e7b857d44b0d..e6f8ff133689 100644 ---- a/src/main.hpp -+++ b/src/main.hpp -@@ -20,6 +20,7 @@ extern uint32_t g_nOutputWidth; - extern uint32_t g_nOutputHeight; - extern bool g_bForceRelativeMouse; - extern int g_nOutputRefresh; // mHz -+extern long g_nsVsync; // ns - extern bool g_bOutputHDREnabled; - extern bool g_bForceInternal; - extern bool g_bUseRotationShader; -diff --git a/src/vblankmanager.cpp b/src/vblankmanager.cpp -index f036d000a8e2..e388374c98ba 100644 ---- a/src/vblankmanager.cpp -+++ b/src/vblankmanager.cpp -@@ -95,8 +95,6 @@ namespace gamescope - - VBlankScheduleTime CVBlankTimer::CalcNextWakeupTime( bool bPreemptive ) - { -- const GamescopeScreenType eScreenType = GetBackend()->GetScreenType(); -- - const int nRefreshRate = GetRefresh(); - const uint64_t ulRefreshInterval = mHzToRefreshCycle( nRefreshRate ); - -@@ -113,9 +111,7 @@ namespace gamescope - // to not account for vertical front porch when dealing with the vblank - // drm_commit is going to target? - // Need to re-test that. -- const uint64_t ulRedZone = eScreenType == GAMESCOPE_SCREEN_TYPE_INTERNAL -- ? m_ulVBlankDrawBufferRedZone -- : std::min( m_ulVBlankDrawBufferRedZone, ( m_ulVBlankDrawBufferRedZone * 60'000 * nRefreshRate ) / 60'000 ); -+ const uint64_t ulRedZone = m_ulVBlankDrawBufferRedZone + g_nsVsync; - - const uint64_t ulDecayAlpha = m_ulVBlankRateOfDecayPercentage; // eg. 980 = 98% - --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Antheas Kapenekakis -Date: Sun, 22 Jun 2025 15:18:19 +0200 -Subject: feat: add Legion Go S display with all framerates - ---- - .../displays/lenovo.legiongos.lcd.lua | 71 +++++++++++-------- - 1 file changed, 42 insertions(+), 29 deletions(-) - -diff --git a/scripts/00-gamescope/displays/lenovo.legiongos.lcd.lua b/scripts/00-gamescope/displays/lenovo.legiongos.lcd.lua -index 32f776c17f3d..057850f374f8 100644 ---- a/scripts/00-gamescope/displays/lenovo.legiongos.lcd.lua -+++ b/scripts/00-gamescope/displays/lenovo.legiongos.lcd.lua -@@ -1,44 +1,58 @@ --local legiongos_lcd_refresh_rates = { -- 52, 53, 54, 56, 57, 58, 59, -- 60, 61, 62, 63, 64, 65, 67, 68, 69, -- 70, -- 102, 103, 104, 105, 106, 107, 108, 109, -- 111, 112, 113, 114, 115, 116, 117, 118, 119, -- 120 --} -- - gamescope.config.known_displays.legiongos_lcd = { - pretty_name = "Lenovo Legion Go S LCD", - hdr = { -- -- The Legion Go S panel does not support HDR. -+ -- Setup some fallbacks for undocking with HDR, meant -+ -- for the internal panel. It does not support HDR. - supported = false, - force_enabled = false, -- eotf = gamescope.eotf.gamma22, -- max_content_light_level = 500, -- max_frame_average_luminance = 500, -- min_content_light_level = 0.5 -+ eotf = gamescope.eotf.gamma22, -+ max_content_light_level = 500, -+ max_frame_average_luminance = 500, -+ min_content_light_level = 0.5 - }, -- -- 60Hz has a different pixel clock than 120Hz in the EDID with VRR disabled, -- -- and the panel is not responsive to tuning VFPs. To cover the non-VRR -- -- limiter, an LCD Deck-style dynamic modegen method works best. -- dynamic_refresh_rates = legiongos_lcd_refresh_rates, -+ -+ dynamic_refresh_rates = { -+ 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, -+ 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, -+ 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, -+ 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -+ 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, -+ 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, -+ 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, -+ 118, 119, 120 -+ }, -+ -+ -- Detailed Timing Descriptors: -+ -- DTD 1: 1920x1200 120.002 Hz 8:5 151.683 kHz 315.500 MHz (172 mm x 107 mm) -+ -- Modeline "1920x1200_120.00" 315.500 1920 1968 2000 2080 1200 1254 1260 1264 -HSync -VSync -+ -- DTD 2: 1920x1200 60.001 Hz 8:5 75.841 kHz 157.750 MHz (172 mm x 107 mm) -+ -- Modeline "1920x1200_60.00" 157.750 1920 1968 2000 2080 1200 1254 1260 1264 -HSync -VSync - dynamic_modegen = function(base_mode, refresh) -- debug("Generating mode "..refresh.."Hz for Lenovo Legion Go S LCD") -- local mode = base_mode -+ debug("Generating mode "..refresh.."Hz with fixed pixel clock") -+ local vfps = { -+ 1950, 1885, 1824, 1764, 1707, 1652, 1599, 1548, 1499, 1451, 1405, -+ 1361, 1318, 1277, 1237, 1198, 1160, 1124, 1088, 1054, 1021, 988, -+ 957, 927, 897, 868, 840, 813, 786, 760, 735, 710, 686, 663, 640, -+ 618, 596, 575, 554, 534, 514, 495, 476, 457, 439, 421, 404, 387, -+ 370, 354, 338, 322, 307, 292, 277, 263, 249, 235, 221, 208, 195, -+ 182, 169, 157, 145, 133, 121, 109, 98, 87, 76, 65, 54 -+ } -+ local vfp = vfps[zero_index(refresh - 48)] -+ if vfp == nil then -+ warn("Couldn't do refresh "..refresh.." on ROG Ally") -+ return base_mode -+ end - -- -- These are only tuned for 1920x1200. -- gamescope.modegen.set_resolution(mode, 1920, 1200) -+ local mode = base_mode - -- -- hfp, hsync, hbp -- gamescope.modegen.set_h_timings(mode, 48, 36, 80) -- -- vfp, vsync, vbp -- gamescope.modegen.set_v_timings(mode, 54, 6, 4) -- mode.clock = gamescope.modegen.calc_max_clock(mode, refresh) -+ gamescope.modegen.adjust_front_porch(mode, vfp) - mode.vrefresh = gamescope.modegen.calc_vrefresh(mode) - - --debug(inspect(mode)) - return mode - end, -+ -+ - matches = function(display) - local lcd_types = { - { vendor = "CSW", model = "PN8007QB1-1", product = 0x0800 }, -@@ -56,5 +70,4 @@ gamescope.config.known_displays.legiongos_lcd = { - return -1 - end - } --debug("Registered Lenovo Legion Go S LCD as a known display") ----debug(inspect(gamescope.config.known_displays.legiongos_lcd)) -+debug("Registered Lenovo Legion Go S LCD as a known display") -\ No newline at end of file --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Antheas Kapenekakis -Date: Fri, 29 Aug 2025 16:45:39 +0200 -Subject: feat: add DPMS support through an Atom - ---- - src/Backends/DRMBackend.cpp | 15 ++++++++++++++- - src/rendervulkan.hpp | 2 ++ - src/steamcompmgr.cpp | 18 +++++++++++++++--- - src/xwayland_ctx.hpp | 1 + - 4 files changed, 32 insertions(+), 4 deletions(-) - -diff --git a/src/Backends/DRMBackend.cpp b/src/Backends/DRMBackend.cpp -index d09030e0cf5e..2861f30aaf66 100644 ---- a/src/Backends/DRMBackend.cpp -+++ b/src/Backends/DRMBackend.cpp -@@ -2827,6 +2827,9 @@ int drm_prepare( struct drm_t *drm, bool async, const struct FrameInfo_t *frameI - drm->needs_modeset = true; - } - -+ if (drm->pCRTC && drm->pCRTC->GetProperties().ACTIVE->GetCurrentValue() != !frameInfo->dpms) -+ drm->needs_modeset = true; -+ - drm_colorspace uColorimetry = DRM_MODE_COLORIMETRY_DEFAULT; - - const bool bWantsHDR10 = g_bOutputHDREnabled && frameInfo->outputEncodingEOTF == EOTF_PQ; -@@ -2894,6 +2897,9 @@ int drm_prepare( struct drm_t *drm, bool async, const struct FrameInfo_t *frameI - needs_modeset = true; - } - -+ if ( frameInfo->dpms ) -+ bSleep = true; -+ - if ( !bSleep ) - { - if ( drm->pCRTC != nullptr ) -@@ -2973,7 +2979,13 @@ int drm_prepare( struct drm_t *drm, bool async, const struct FrameInfo_t *frameI - - if ( drm->pCRTC && !bSleep ) - { -- drm->pCRTC->GetProperties().ACTIVE->SetPendingValue( drm->req, 1u, true ); -+ if ( frameInfo->dpms ) { -+ // We can't disable a CRTC if it's already disabled -+ if (drm->pCRTC->GetProperties().ACTIVE->GetCurrentValue() != 0) -+ drm->pCRTC->GetProperties().ACTIVE->SetPendingValue(drm->req, 0, true); -+ } -+ else -+ drm->pCRTC->GetProperties().ACTIVE->SetPendingValue( drm->req, 1u, true ); - drm->pCRTC->GetProperties().MODE_ID->SetPendingValue( drm->req, drm->pending.mode_id ? drm->pending.mode_id->GetBlobValue() : 0lu, true ); - - if ( drm->pCRTC->GetProperties().VRR_ENABLED ) -@@ -3594,6 +3606,7 @@ namespace gamescope - - FrameInfo_t presentCompFrameInfo = {}; - presentCompFrameInfo.allowVRR = pFrameInfo->allowVRR; -+ presentCompFrameInfo.dpms = pFrameInfo->dpms; - presentCompFrameInfo.outputEncodingEOTF = pFrameInfo->outputEncodingEOTF; - - if ( bNeedsFullComposite ) -diff --git a/src/rendervulkan.hpp b/src/rendervulkan.hpp -index 93a4a6027f55..0833fc46ffd7 100644 ---- a/src/rendervulkan.hpp -+++ b/src/rendervulkan.hpp -@@ -292,6 +292,8 @@ struct FrameInfo_t - bool applyOutputColorMgmt; // drm only - EOTF outputEncodingEOTF; - -+ bool dpms; -+ - int layerCount; - struct Layer_t - { -diff --git a/src/steamcompmgr.cpp b/src/steamcompmgr.cpp -index 07e45b19fc61..f25f810f9387 100644 ---- a/src/steamcompmgr.cpp -+++ b/src/steamcompmgr.cpp -@@ -174,6 +174,8 @@ bool g_bSteamIsActiveWindow = false; - bool g_bForceInternal = false; - bool b_bForceFrameLimit = false; - bool g_bRefreshHalveEnable = false; -+bool g_bDPMS = false; -+bool g_bDPMS_set = false; - - namespace gamescope - { -@@ -2421,7 +2423,7 @@ gamescope::ConVar cv_paint_cursor_plane{ "paint_cursor_plane", true }; - gamescope::ConVar cv_paint_mura_plane{ "paint_mura_plane", true }; - - static void --paint_all( global_focus_t *pFocus, bool async ) -+paint_all(global_focus_t *pFocus, bool async, bool dpms) - { - if ( !pFocus ) - return; -@@ -2479,6 +2481,7 @@ paint_all( global_focus_t *pFocus, bool async ) - frameInfo.outputEncodingEOTF = g_ColorMgmt.pending.outputEncodingEOTF; - frameInfo.allowVRR = cv_adaptive_sync; - frameInfo.bFadingOut = fadingOut; -+ frameInfo.dpms = dpms; - - // If the window we'd paint as the base layer is the streaming client, - // find the video underlay and put it up first in the scenegraph -@@ -6234,6 +6237,10 @@ handle_property_notify(xwayland_ctx_t *ctx, XPropertyEvent *ev) - { - g_bRefreshHalveEnable = !!get_prop( ctx, ctx->root, ctx->atoms.gamescopeFrameHalveAtom, 0 ); - } -+ if (ev->atom == ctx->atoms.gamescopeDPMS) -+ { -+ g_bDPMS = !!get_prop(ctx, ctx->root, ctx->atoms.gamescopeDPMS, 0); -+ } - } - - static int -@@ -7470,6 +7477,7 @@ void init_xwayland_ctx(uint32_t serverId, gamescope_xwayland_server_t *xwayland_ - ctx->atoms.targets = XInternAtom(ctx->dpy, "TARGETS", false); - - ctx->atoms.gamescopeFrameHalveAtom = XInternAtom( ctx->dpy, "GAMESCOPE_STEAMUI_HALFHZ", false );; -+ ctx->atoms.gamescopeDPMS = XInternAtom(ctx->dpy, "GAMESCOPE_DPMS", false); - - ctx->root_width = DisplayWidth(ctx->dpy, ctx->scr); - ctx->root_height = DisplayHeight(ctx->dpy, ctx->scr); -@@ -8611,10 +8619,14 @@ steamcompmgr_main(int argc, char **argv) - bShouldPaint = false; - } - -+ if ( g_bDPMS != g_bDPMS_set && vblank ) -+ bShouldPaint = true; -+ - if ( bShouldPaint ) - { -- paint_all( pPaintFocus, eFlipType == FlipType::Async ); -- -+ paint_all( pPaintFocus, eFlipType == FlipType::Async, g_bDPMS ); -+ -+ g_bDPMS_set = g_bDPMS; - bPainted = true; - } - } -diff --git a/src/xwayland_ctx.hpp b/src/xwayland_ctx.hpp -index e4eec9fa0c48..2347cbb3340c 100644 ---- a/src/xwayland_ctx.hpp -+++ b/src/xwayland_ctx.hpp -@@ -248,6 +248,7 @@ struct xwayland_ctx_t final : public gamescope::IWaitable - Atom targets; - - Atom gamescopeFrameHalveAtom; -+ Atom gamescopeDPMS; - } atoms; - - bool HasQueuedEvents(); --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Antheas Kapenekakis -Date: Sun, 29 Jun 2025 13:16:59 +0200 -Subject: update misyltoad urls - ---- - .gitmodules | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/.gitmodules b/.gitmodules -index ec7d4e430ee8..17ba783f809b 100644 ---- a/.gitmodules -+++ b/.gitmodules -@@ -1,12 +1,12 @@ - [submodule "subprojects/wlroots"] - path = subprojects/wlroots -- url = https://github.com/Joshua-Ashton/wlroots.git -+ url = https://github.com/misyltoad/wlroots.git - [submodule "subprojects/libliftoff"] - path = subprojects/libliftoff - url = https://gitlab.freedesktop.org/emersion/libliftoff.git - [submodule "subprojects/vkroots"] - path = subprojects/vkroots -- url = https://github.com/Joshua-Ashton/vkroots -+ url = https://github.com/misyltoad/vkroots - [submodule "subprojects/libdisplay-info"] - path = subprojects/libdisplay-info - url = https://gitlab.freedesktop.org/emersion/libdisplay-info -@@ -15,7 +15,7 @@ - url = https://github.com/ValveSoftware/openvr.git - [submodule "src/reshade"] - path = src/reshade -- url = https://github.com/Joshua-Ashton/reshade -+ url = https://github.com/misyltoad/reshade - [submodule "thirdparty/SPIRV-Headers"] - path = thirdparty/SPIRV-Headers - url = https://github.com/KhronosGroup/SPIRV-Headers/ --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Antheas Kapenekakis -Date: Fri, 29 Aug 2025 15:31:34 +0200 -Subject: fix: drain timer fds to avoid epoll_wait returning constantly - -Currently, if the VBlank or VRR timers expire without being rescheduled, -their FDs remain readable, causing epoll_wait to return instantly.|Drain -the FDs in the OnPollIn handlers to prevent this. ---- - src/waitable.h | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/src/waitable.h b/src/waitable.h -index 30edf8f52deb..36ac61ee7233 100644 ---- a/src/waitable.h -+++ b/src/waitable.h -@@ -182,6 +182,11 @@ namespace gamescope - ArmTimer( 0ul, false ); - } - -+ void OnPollIn() -+ { -+ IWaitable::Drain(m_nFD); -+ } -+ - int GetFD() - { - return m_nFD; -@@ -200,6 +205,7 @@ namespace gamescope - - void OnPollIn() final - { -+ ITimerWaitable::OnPollIn(); - m_fnPollFunc(); - } - private: --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Antheas Kapenekakis -Date: Sat, 30 Aug 2025 15:12:39 +0200 -Subject: fix(intel): allow night mode and color adjustment via compositing - ---- - src/Backends/DRMBackend.cpp | 11 +++++++++++ - 1 file changed, 11 insertions(+) - -diff --git a/src/Backends/DRMBackend.cpp b/src/Backends/DRMBackend.cpp -index 2861f30aaf66..3c4e5907b2a9 100644 ---- a/src/Backends/DRMBackend.cpp -+++ b/src/Backends/DRMBackend.cpp -@@ -3481,6 +3481,17 @@ namespace gamescope - bNeedsFullComposite |= pFrameInfo->bFadingOut; - bNeedsFullComposite |= !g_reshade_effect.empty(); - -+ if ( !SupportsColorManagement() ) { -+ // Fuzzy match default values to see if we need to composite -+ bNeedsFullComposite |= g_ColorMgmt.pending.nightmode.amount != 0.0f; -+ bNeedsFullComposite |= g_ColorMgmt.pending.outputVirtualWhite.x > 0 && -+ abs(g_ColorMgmt.pending.outputVirtualWhite.x - 0.3127f) > 0.001f; -+ bNeedsFullComposite |= g_ColorMgmt.pending.outputVirtualWhite.y > 0 && -+ abs(g_ColorMgmt.pending.outputVirtualWhite.y - 0.3290f) > 0.001f; -+ bNeedsFullComposite |= g_ColorMgmt.pending.sdrGamutWideness >= 0 && -+ abs(g_ColorMgmt.pending.sdrGamutWideness - 0.5f) > 0.02f; -+ } -+ - if ( g_bOutputHDREnabled ) - { - bNeedsFullComposite |= g_bHDRItmEnable; --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Antheas Kapenekakis -Date: Sat, 30 Aug 2025 15:32:00 +0200 -Subject: fix(hdr): disable PQ on handheld internal displays - -For some reason, the PQ transfer function does not work on current -handhelds. So use gamma 22 instead. This allows us to skip creating -configs and read the HDR metadata from the displays. ---- - src/Backends/DRMBackend.cpp | 8 +++++++- - 1 file changed, 7 insertions(+), 1 deletion(-) - -diff --git a/src/Backends/DRMBackend.cpp b/src/Backends/DRMBackend.cpp -index 3c4e5907b2a9..83da1bfe231b 100644 ---- a/src/Backends/DRMBackend.cpp -+++ b/src/Backends/DRMBackend.cpp -@@ -2465,7 +2465,13 @@ namespace gamescope - pHDRStaticMetadata && pHDRStaticMetadata->eotfs && pHDRStaticMetadata->eotfs->pq ) - { - m_Mutable.HDR.bExposeHDRSupport = true; -- m_Mutable.HDR.eOutputEncodingEOTF = EOTF_PQ; -+ if (GetScreenType() == GAMESCOPE_SCREEN_TYPE_INTERNAL) -+ // Current handheld internal displays have issues -+ // with PQ, e.g., Ayaneo 3, Steam Deck etc. -+ // Use Gamma 2.2 as the safest option for now. -+ m_Mutable.HDR.eOutputEncodingEOTF = EOTF_Gamma22; -+ else -+ m_Mutable.HDR.eOutputEncodingEOTF = EOTF_PQ; - m_Mutable.HDR.uMaxContentLightLevel = - pHDRStaticMetadata->desired_content_max_luminance - ? nits_to_u16( pHDRStaticMetadata->desired_content_max_luminance ) --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Antheas Kapenekakis -Date: Fri, 29 Aug 2025 17:17:06 +0200 -Subject: chore: use system glm, stb - ---- - meson.build | 6 ++---- - 1 file changed, 2 insertions(+), 4 deletions(-) - -diff --git a/meson.build b/meson.build -index 5e5bd4cdc7c4..802e4a052bcd 100644 ---- a/meson.build -+++ b/meson.build -@@ -50,10 +50,8 @@ dep_x11 = dependency('x11') - dep_wayland = dependency('wayland-client') - vulkan_dep = dependency('vulkan') - --glm_proj = subproject('glm') --glm_dep = glm_proj.get_variable('glm_dep') --stb_proj = subproject('stb') --stb_dep = stb_proj.get_variable('stb_dep') -+glm_dep = dependency('glm') -+stb_dep = dependency('stb') - - if get_option('enable_openvr_support') - openvr_dep = dependency('openvr', version: '>= 2.7', required : false) --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Antheas Kapenekakis -Date: Fri, 29 Aug 2025 19:04:17 +0200 -Subject: Revert "mangoapp: plumb engineName" - -This reverts commit b9f20436d1bdf7bd8212541817b254e1b4c8eb1e. ---- - layer/VkLayer_FROG_gamescope_wsi.cpp | 9 +-------- - protocol/gamescope-swapchain.xml | 1 - - src/WaylandServer/WaylandServerLegacy.h | 1 - - src/mangoapp.cpp | 6 ------ - src/steamcompmgr.cpp | 6 ------ - src/steamcompmgr.hpp | 1 - - src/steamcompmgr_shared.hpp | 2 -- - src/wlserver.cpp | 4 +--- - 8 files changed, 2 insertions(+), 28 deletions(-) - -diff --git a/layer/VkLayer_FROG_gamescope_wsi.cpp b/layer/VkLayer_FROG_gamescope_wsi.cpp -index 263cbc37bd88..d1835a4c7487 100644 ---- a/layer/VkLayer_FROG_gamescope_wsi.cpp -+++ b/layer/VkLayer_FROG_gamescope_wsi.cpp -@@ -404,7 +404,6 @@ namespace GamescopeWSILayer { - struct GamescopeInstanceData { - wl_display* display; - uint32_t appId = 0; -- std::string engineName; - GamescopeLayerClient::Flags flags = 0; - }; - VKROOTS_DEFINE_SYNCHRONIZED_MAP_TYPE(GamescopeInstance, VkInstance); -@@ -631,14 +630,9 @@ namespace GamescopeWSILayer { - { - uint32_t appId = clientAppId(); - -- std::string engineName; -- if (pCreateInfo->pApplicationInfo && pCreateInfo->pApplicationInfo->pEngineName) -- engineName = pCreateInfo->pApplicationInfo->pEngineName; -- - auto state = GamescopeInstance::create(*pInstance, GamescopeInstanceData { - .display = display, - .appId = appId, -- .engineName = engineName, - .flags = defaultLayerClientFlags(pCreateInfo->pApplicationInfo, appId), - }); - -@@ -1275,8 +1269,7 @@ namespace GamescopeWSILayer { - uint32_t(pCreateInfo->imageColorSpace), - uint32_t(pCreateInfo->compositeAlpha), - uint32_t(pCreateInfo->preTransform), -- uint32_t(pCreateInfo->clipped), -- gamescopeInstance->engineName.c_str()); -+ uint32_t(pCreateInfo->clipped)); - - return VK_SUCCESS; - } -diff --git a/protocol/gamescope-swapchain.xml b/protocol/gamescope-swapchain.xml -index 58ac8463b752..91be3fc02d67 100644 ---- a/protocol/gamescope-swapchain.xml -+++ b/protocol/gamescope-swapchain.xml -@@ -89,7 +89,6 @@ - - - -- - - - -diff --git a/src/WaylandServer/WaylandServerLegacy.h b/src/WaylandServer/WaylandServerLegacy.h -index 63ee2ca17e8c..0facb7dc8b1e 100644 ---- a/src/WaylandServer/WaylandServerLegacy.h -+++ b/src/WaylandServer/WaylandServerLegacy.h -@@ -29,7 +29,6 @@ struct wlserver_vk_swapchain_feedback - VkCompositeAlphaFlagBitsKHR vk_composite_alpha; - VkSurfaceTransformFlagBitsKHR vk_pre_transform; - VkBool32 vk_clipped; -- std::shared_ptr vk_engine_name; - - std::shared_ptr hdr_metadata_blob; - }; -diff --git a/src/mangoapp.cpp b/src/mangoapp.cpp -index d8e1ce7edafe..91e01bc275c6 100644 ---- a/src/mangoapp.cpp -+++ b/src/mangoapp.cpp -@@ -31,7 +31,6 @@ struct mangoapp_msg_v1 { - uint16_t displayRefresh; - bool bAppWantsHDR : 1; - bool bSteamFocused : 1; -- char engineName[40]; - - // WARNING: Always ADD fields, never remove or repurpose fields - } __attribute__((packed)) mangoapp_msg_v1; -@@ -61,11 +60,6 @@ void mangoapp_update( uint64_t visible_frametime, uint64_t app_frametime_ns, uin - mangoapp_msg_v1.displayRefresh = (uint16_t) gamescope::ConvertmHzToHz( g_nOutputRefresh ); - mangoapp_msg_v1.bAppWantsHDR = g_bAppWantsHDRCached; - mangoapp_msg_v1.bSteamFocused = g_focusedBaseAppId == 769; -- memset(mangoapp_msg_v1.engineName, 0, sizeof(mangoapp_msg_v1.engineName)); -- if (focusWindow_engine) -- focusWindow_engine->copy(mangoapp_msg_v1.engineName, sizeof(mangoapp_msg_v1.engineName) / sizeof(char)); -- else -- std::string("gamescope").copy(mangoapp_msg_v1.engineName, sizeof(mangoapp_msg_v1.engineName) / sizeof(char)); - msgsnd(msgid, &mangoapp_msg_v1, sizeof(mangoapp_msg_v1) - sizeof(mangoapp_msg_v1.hdr.msg_type), IPC_NOWAIT); - } - -diff --git a/src/steamcompmgr.cpp b/src/steamcompmgr.cpp -index f25f810f9387..d5a6a4af51df 100644 ---- a/src/steamcompmgr.cpp -+++ b/src/steamcompmgr.cpp -@@ -1026,7 +1026,6 @@ int g_BlurRadius = 5; - unsigned int g_BlurFadeStartTime = 0; - - pid_t focusWindow_pid; --std::shared_ptr focusWindow_engine = nullptr; - - focus_t g_steamcompmgr_xdg_focus; - std::vector> g_steamcompmgr_xdg_wins; -@@ -6396,9 +6395,6 @@ bool handle_done_commit( steamcompmgr_win_t *w, xwayland_ctx_t *ctx, uint64_t co - uint32_t j; - for ( j = 0; j < w->commit_queue.size(); j++ ) - { -- if (w->commit_queue[ j ]->feedback.has_value()) -- w->engineName = w->commit_queue[ j ]->feedback->vk_engine_name; -- - if ( w->commit_queue[ j ]->commitID == commitID ) - { - gpuvis_trace_printf( "commit %lu done", w->commit_queue[ j ]->commitID ); -@@ -6443,8 +6439,6 @@ bool handle_done_commit( steamcompmgr_win_t *w, xwayland_ctx_t *ctx, uint64_t co - if ( !cv_paint_debug_pause_base_plane ) - g_HeldCommits[ HELD_COMMIT_BASE ] = w->commit_queue[ j ]; - hasRepaint = true; -- -- focusWindow_engine = w->engineName; - } - - if ( w == pFocus->overrideWindow ) -diff --git a/src/steamcompmgr.hpp b/src/steamcompmgr.hpp -index 98e927296483..2f489a26a0aa 100644 ---- a/src/steamcompmgr.hpp -+++ b/src/steamcompmgr.hpp -@@ -144,7 +144,6 @@ struct wlserver_x11_surface_info *lookup_x11_surface_info_from_xid( gamescope_xw - - extern gamescope::VBlankTime g_SteamCompMgrVBlankTime; - extern pid_t focusWindow_pid; --extern std::shared_ptr focusWindow_engine; - - void init_xwayland_ctx(uint32_t serverId, gamescope_xwayland_server_t *xwayland_server); - void gamescope_set_selection(std::string contents, GamescopeSelection eSelection); -diff --git a/src/steamcompmgr_shared.hpp b/src/steamcompmgr_shared.hpp -index 5a2198d97bed..4027013148b2 100644 ---- a/src/steamcompmgr_shared.hpp -+++ b/src/steamcompmgr_shared.hpp -@@ -149,8 +149,6 @@ struct steamcompmgr_win_t { - bool unlockedForFrameCallback = false; - bool receivedDoneCommit = false; - -- std::shared_ptr engineName; -- - std::vector< gamescope::Rc > commit_queue; - std::shared_ptr> icon; - -diff --git a/src/wlserver.cpp b/src/wlserver.cpp -index a694b5245a97..42c6bc0c2430 100644 ---- a/src/wlserver.cpp -+++ b/src/wlserver.cpp -@@ -862,8 +862,7 @@ static void gamescope_swapchain_swapchain_feedback( struct wl_client *client, st - uint32_t vk_colorspace, - uint32_t vk_composite_alpha, - uint32_t vk_pre_transform, -- uint32_t vk_clipped, -- const char *vk_engine_name) -+ uint32_t vk_clipped) - { - wlserver_wl_surface_info *wl_info = (wlserver_wl_surface_info *)wl_resource_get_user_data( resource ); - if ( wl_info ) -@@ -875,7 +874,6 @@ static void gamescope_swapchain_swapchain_feedback( struct wl_client *client, st - .vk_composite_alpha = VkCompositeAlphaFlagBitsKHR(vk_composite_alpha), - .vk_pre_transform = VkSurfaceTransformFlagBitsKHR(vk_pre_transform), - .vk_clipped = VkBool32(vk_clipped), -- .vk_engine_name = std::make_shared(vk_engine_name), - .hdr_metadata_blob = nullptr, - }); - } --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Antheas Kapenekakis -Date: Sun, 31 Aug 2025 20:55:02 +0200 -Subject: fix: separate blend tf to its own check - -Currently, blend tf and other color mgmt checks are combined into one -check. However, new hardware does not support the blend tf for a plane, -causing loss of all color mgmt features. Separate the checks so that -color mgmt can still be used on such hardware. - -Also, add the other function checks to drm_supports_color_mgmt so that -there are no edge cases where only subproperties are supported. ---- - src/Backends/DRMBackend.cpp | 40 +++++++++++++++++++++++++++++-------- - 1 file changed, 32 insertions(+), 8 deletions(-) - -diff --git a/src/Backends/DRMBackend.cpp b/src/Backends/DRMBackend.cpp -index 83da1bfe231b..c1a714569bf2 100644 ---- a/src/Backends/DRMBackend.cpp -+++ b/src/Backends/DRMBackend.cpp -@@ -559,6 +559,7 @@ extern std::string g_reshade_effect; - - bool drm_update_color_mgmt(struct drm_t *drm); - bool drm_supports_color_mgmt(struct drm_t *drm); -+bool drm_supports_srgb_to_pq(struct drm_t *drm); - bool drm_set_connector( struct drm_t *drm, gamescope::CDRMConnector *conn ); - - struct drm_color_ctm2 { -@@ -2691,13 +2692,15 @@ drm_prepare_liftoff( struct drm_t *drm, const struct FrameInfo_t *frameInfo, boo - } - } - -- if ( drm_supports_color_mgmt( drm ) ) -+ if ( drm_supports_srgb_to_pq( drm ) ) - { - if (!cv_drm_debug_disable_blend_tf && !bSinglePlane) - liftoff_layer_set_property( drm->lo_layers[ i ], "AMD_PLANE_BLEND_TF", drm->pending.output_tf ); - else -- liftoff_layer_set_property( drm->lo_layers[ i ], "AMD_PLANE_BLEND_TF", AMDGPU_TRANSFER_FUNCTION_DEFAULT ); -- -+ liftoff_layer_set_property( drm->lo_layers[ i ], "AMD_PLANE_BLEND_TF", AMDGPU_TRANSFER_FUNCTION_DEFAULT ); -+ } -+ if ( drm_supports_color_mgmt( drm ) ) -+ { - if (!cv_drm_debug_disable_ctm && frameInfo->layers[i].ctm != nullptr) - liftoff_layer_set_property( drm->lo_layers[ i ], "AMD_PLANE_CTM", frameInfo->layers[i].ctm->GetBlobValue() ); - else -@@ -2712,13 +2715,16 @@ drm_prepare_liftoff( struct drm_t *drm, const struct FrameInfo_t *frameInfo, boo - liftoff_layer_unset_property( drm->lo_layers[ i ], "COLOR_ENCODING" ); - liftoff_layer_unset_property( drm->lo_layers[ i ], "COLOR_RANGE" ); - -+ if ( drm_supports_srgb_to_pq( drm ) ) -+ { -+ liftoff_layer_set_property( drm->lo_layers[ i ], "AMD_PLANE_BLEND_TF", AMDGPU_TRANSFER_FUNCTION_DEFAULT ); -+ } - if ( drm_supports_color_mgmt( drm ) ) - { - liftoff_layer_set_property( drm->lo_layers[ i ], "AMD_PLANE_DEGAMMA_TF", AMDGPU_TRANSFER_FUNCTION_DEFAULT ); - liftoff_layer_set_property( drm->lo_layers[ i ], "AMD_PLANE_SHAPER_LUT", 0 ); - liftoff_layer_set_property( drm->lo_layers[ i ], "AMD_PLANE_SHAPER_TF", 0 ); - liftoff_layer_set_property( drm->lo_layers[ i ], "AMD_PLANE_LUT3D", 0 ); -- liftoff_layer_set_property( drm->lo_layers[ i ], "AMD_PLANE_BLEND_TF", AMDGPU_TRANSFER_FUNCTION_DEFAULT ); - liftoff_layer_set_property( drm->lo_layers[ i ], "AMD_PLANE_CTM", 0 ); - } - } -@@ -2870,7 +2876,7 @@ int drm_prepare( struct drm_t *drm, bool async, const struct FrameInfo_t *frameI - - bool bSinglePlane = frameInfo->layerCount < 2 && cv_drm_single_plane_optimizations; - -- if ( drm_supports_color_mgmt( &g_DRM ) && frameInfo->applyOutputColorMgmt ) -+ if ( drm_supports_srgb_to_pq( &g_DRM ) && frameInfo->applyOutputColorMgmt ) - { - if ( !cv_drm_debug_disable_output_tf && !bSinglePlane ) - { -@@ -3371,7 +3377,20 @@ bool drm_supports_color_mgmt(struct drm_t *drm) - if ( !drm->pPrimaryPlane ) - return false; - -- return drm->pPrimaryPlane->GetProperties().AMD_PLANE_CTM.has_value() && drm->pPrimaryPlane->GetProperties().AMD_PLANE_BLEND_TF.has_value(); -+ return drm->pPrimaryPlane->GetProperties().AMD_PLANE_CTM.has_value() && // dm->dc->caps.color.mpc.gamut_remap -+ drm->pPrimaryPlane->GetProperties().AMD_PLANE_SHAPER_LUT.has_value() && // dpp_color_caps.hw_3d_lut -+ drm->pPrimaryPlane->GetProperties().AMD_PLANE_DEGAMMA_TF.has_value(); // dpp_color_caps.dgam_ram || dpp_color_caps.gamma_corr -+} -+ -+bool drm_supports_srgb_to_pq(struct drm_t *drm) -+{ -+ if ( g_bForceDisableColorMgmt ) -+ return false; -+ -+ if ( !drm->pPrimaryPlane ) -+ return false; -+ -+ return drm->pPrimaryPlane->GetProperties().AMD_PLANE_BLEND_TF.has_value(); // dpp_color_caps.ogam_ram - } - - std::span drm_get_valid_refresh_rates( struct drm_t *drm ) -@@ -3501,12 +3520,12 @@ namespace gamescope - if ( g_bOutputHDREnabled ) - { - bNeedsFullComposite |= g_bHDRItmEnable; -- if ( !SupportsColorManagement() ) -+ if ( !SupportsSRGBtoPQ() ) - bNeedsFullComposite |= ( pFrameInfo->layerCount > 1 || pFrameInfo->layers[0].colorspace != GAMESCOPE_APP_TEXTURE_COLORSPACE_HDR10_PQ ); - } - else - { -- if ( !SupportsColorManagement() ) -+ if ( !SupportsSRGBtoPQ() ) - bNeedsFullComposite |= ColorspaceIsHDR( pFrameInfo->layers[0].colorspace ); - } - -@@ -3915,6 +3934,11 @@ namespace gamescope - return drm_supports_color_mgmt( &g_DRM ); - } - -+ bool SupportsSRGBtoPQ() const -+ { -+ return drm_supports_srgb_to_pq( &g_DRM ); -+ } -+ - int Commit( const FrameInfo_t *pFrameInfo ) - { - drm_t *drm = &g_DRM; --- -2.51.0 - - -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Colin Kinloch -Date: Fri, 1 Aug 2025 16:06:23 +0100 -Subject: WaylandBackend: Check features before using color management - -This stops compositors lacking required features, transfer functions or -primaries from triggering protocol errors on start. ---- - src/Backends/WaylandBackend.cpp | 32 ++++++++++++++++++-------------- - 1 file changed, 18 insertions(+), 14 deletions(-) - -diff --git a/src/Backends/WaylandBackend.cpp b/src/Backends/WaylandBackend.cpp -index 664ed0eac070..1171980ba61d 100644 ---- a/src/Backends/WaylandBackend.cpp -+++ b/src/Backends/WaylandBackend.cpp -@@ -1990,13 +1990,14 @@ namespace gamescope - return false; - if ( !Algorithm::Contains( m_WPColorManagerFeatures.eFeatures, WP_COLOR_MANAGER_V1_FEATURE_SET_LUMINANCES ) ) - return false; -+ if ( !Algorithm::Contains( m_WPColorManagerFeatures.eFeatures, WP_COLOR_MANAGER_V1_FEATURE_WINDOWS_SCRGB ) ) -+ return false; - - // Transfer Functions - if ( !Algorithm::Contains( m_WPColorManagerFeatures.eTransferFunctions, WP_COLOR_MANAGER_V1_TRANSFER_FUNCTION_SRGB ) ) - return false; - if ( !Algorithm::Contains( m_WPColorManagerFeatures.eTransferFunctions, WP_COLOR_MANAGER_V1_TRANSFER_FUNCTION_ST2084_PQ ) ) - return false; -- // TODO: Need scRGB - - // Primaries - if ( !Algorithm::Contains( m_WPColorManagerFeatures.ePrimaries, WP_COLOR_MANAGER_V1_PRIMARIES_SRGB ) ) -@@ -2006,6 +2007,22 @@ namespace gamescope - - return true; - }(); -+ -+ if ( m_WPColorManagerFeatures.bSupportsGamescopeColorManagement ) -+ { -+ // HDR10. -+ { -+ wp_image_description_creator_params_v1 *pParams = wp_color_manager_v1_create_parametric_creator( m_pWPColorManager ); -+ wp_image_description_creator_params_v1_set_primaries_named( pParams, WP_COLOR_MANAGER_V1_PRIMARIES_BT2020 ); -+ wp_image_description_creator_params_v1_set_tf_named( pParams, WP_COLOR_MANAGER_V1_TRANSFER_FUNCTION_ST2084_PQ ); -+ m_pWPImageDescriptions[ GAMESCOPE_APP_TEXTURE_COLORSPACE_HDR10_PQ ] = wp_image_description_creator_params_v1_create( pParams ); -+ } -+ -+ // scRGB -+ { -+ m_pWPImageDescriptions[ GAMESCOPE_APP_TEXTURE_COLORSPACE_SCRGB ] = wp_color_manager_v1_create_windows_scrgb( m_pWPColorManager ); -+ } -+ } - } - - m_pLibDecor = libdecor_new( m_pDisplay, &s_LibDecorInterface ); -@@ -2476,19 +2493,6 @@ namespace gamescope - { - m_pWPColorManager = (wp_color_manager_v1 *)wl_registry_bind( pRegistry, uName, &wp_color_manager_v1_interface, 1u ); - wp_color_manager_v1_add_listener( m_pWPColorManager, &s_WPColorManagerListener, this ); -- -- // HDR10. -- { -- wp_image_description_creator_params_v1 *pParams = wp_color_manager_v1_create_parametric_creator( m_pWPColorManager ); -- wp_image_description_creator_params_v1_set_primaries_named( pParams, WP_COLOR_MANAGER_V1_PRIMARIES_BT2020 ); -- wp_image_description_creator_params_v1_set_tf_named( pParams, WP_COLOR_MANAGER_V1_TRANSFER_FUNCTION_ST2084_PQ ); -- m_pWPImageDescriptions[ GAMESCOPE_APP_TEXTURE_COLORSPACE_HDR10_PQ ] = wp_image_description_creator_params_v1_create( pParams ); -- } -- -- // scRGB -- { -- m_pWPImageDescriptions[ GAMESCOPE_APP_TEXTURE_COLORSPACE_SCRGB ] = wp_color_manager_v1_create_windows_scrgb( m_pWPColorManager ); -- } - } - else if ( !strcmp( pInterface, zwp_pointer_constraints_v1_interface.name ) ) - { --- -2.51.0 diff --git a/anda/games/terra-gamescope/terra-gamescope.spec b/anda/games/terra-gamescope/terra-gamescope.spec index 3f1e43d863..2de32bd0e0 100755 --- a/anda/games/terra-gamescope/terra-gamescope.spec +++ b/anda/games/terra-gamescope/terra-gamescope.spec @@ -2,18 +2,16 @@ %global _default_patch_fuzz 2 %global build_timestamp %(date +"%Y%m%d") -#global gamescope_tag 3.15.11 -%global gamescope_commit 2f30679c80791844c29402d232462874fe23dd46 +%global gamescope_commit 402bfb81bc25943cac9061eb022fe229c5414f5e %define short_commit %(echo %{gamescope_commit} | cut -c1-8) Name: terra-gamescope -#Version: 100.%{gamescope_tag} -Version: 134.%{short_commit} +Version: 136.%{short_commit} Release: 1%?dist Summary: Micro-compositor for video games on Wayland License: BSD -URL: https://github.com/ValveSoftware/gamescope +URL: https://github.com/OpenGamingCollective/gamescope Provides: gamescope = %{version}-%{release} Conflicts: gamescope @@ -21,68 +19,67 @@ Conflicts: gamescope # Create stb.pc to satisfy dependency('stb') Source0: stb.pc -Patch0: 0001-cstdint.patch +Patch0: Use-system-stb-glm.patch -# https://hhd.dev/ -# https://github.com/ChimeraOS/gamescope -Patch1: handheld.patch +Patch1: 0001-cstdint.patch -#Patch2: https://github.com/ValveSoftware/gamescope/pull/1867.patch +%if 0%{?fedora} >= 44 +# Fix build with libinput >= 1.27 / GCC 16 (-Werror=switch) +Patch2: 0002-wlroots-libinput-switch-keypad-slide.patch +%endif -BuildRequires: meson >= 0.54.0 -BuildRequires: ninja-build BuildRequires: cmake BuildRequires: gcc BuildRequires: gcc-c++ +BuildRequires: git-core BuildRequires: glm-devel BuildRequires: google-benchmark-devel -BuildRequires: libXmu-devel BuildRequires: libXcursor-devel -BuildRequires: libeis-devel -BuildRequires: pixman-devel +BuildRequires: libXmu-devel +BuildRequires: meson >= 0.54.0 +BuildRequires: ninja-build +BuildRequires: pkgconfig(hwdata) +BuildRequires: pkgconfig(libavif) +BuildRequires: pkgconfig(libcap) +BuildRequires: pkgconfig(libdecor-0) BuildRequires: pkgconfig(libdisplay-info) -BuildRequires: pkgconfig(pixman-1) +BuildRequires: pkgconfig(libdrm) +BuildRequires: pkgconfig(libeis-1.0) +BuildRequires: (pkgconfig(libliftoff) >= %{libliftoff_minver} with pkgconfig(libliftoff) < 0.6) +BuildRequires: pkgconfig(libpipewire-0.3) +BuildRequires: pkgconfig(libudev) +BuildRequires: pkgconfig(luajit) +#BuildRequires: pkgconfig(openvr) >= 2.7 +BuildRequires: pkgconfig(sdl2) +BuildRequires: pkgconfig(vulkan) +BuildRequires: pkgconfig(wayland-protocols) >= 1.17 +BuildRequires: pkgconfig(wayland-scanner) +BuildRequires: pkgconfig(wayland-server) +BuildRequires: pkgconfig(wlroots-0.18) BuildRequires: pkgconfig(x11) -BuildRequires: pkgconfig(xdamage) BuildRequires: pkgconfig(xcomposite) -BuildRequires: pkgconfig(xrender) +BuildRequires: pkgconfig(xdamage) BuildRequires: pkgconfig(xext) BuildRequires: pkgconfig(xfixes) -BuildRequires: pkgconfig(xxf86vm) -BuildRequires: pkgconfig(xtst) -BuildRequires: pkgconfig(xres) -BuildRequires: pkgconfig(libdrm) -BuildRequires: pkgconfig(vulkan) -BuildRequires: pkgconfig(wayland-scanner) -BuildRequires: pkgconfig(wayland-server) >= 1.23.0 -BuildRequires: pkgconfig(wayland-protocols) >= 1.17 BuildRequires: pkgconfig(xkbcommon) -BuildRequires: pkgconfig(sdl2) -BuildRequires: pkgconfig(libpipewire-0.3) -BuildRequires: pkgconfig(libavif) -BuildRequires: pkgconfig(wlroots) -BuildRequires: pkgconfig(libliftoff) -BuildRequires: pkgconfig(libcap) -BuildRequires: pkgconfig(hwdata) -BuildRequires: pkgconfig(lcms2) -BuildRequires: pkgconfig(luajit) +BuildRequires: pkgconfig(xrender) +BuildRequires: pkgconfig(xres) +BuildRequires: pkgconfig(xtst) +BuildRequires: pkgconfig(xxf86vm) BuildRequires: spirv-headers-devel # Enforce the the minimum EVR to contain fixes for all of: # CVE-2021-28021 CVE-2021-42715 CVE-2021-42716 CVE-2022-28041 CVE-2023-43898 # CVE-2023-45661 CVE-2023-45662 CVE-2023-45663 CVE-2023-45664 CVE-2023-45666 -# CVE-2023-45667 -BuildRequires: stb_image-devel >= 2.28^20231011gitbeebb24-12 +# CVE-2023-45667, upstream issues #1860, #1861 +BuildRequires: stb_image-devel >= 2.30^20251025gitf1c79c0-2 # Header-only library: -static is for tracking per guidelines BuildRequires: stb_image-static BuildRequires: stb_image_resize-devel BuildRequires: stb_image_resize-static BuildRequires: stb_image_write-devel BuildRequires: stb_image_write-static +#BuildRequires: vkroots-devel BuildRequires: /usr/bin/glslangValidator -BuildRequires: libdecor-devel -BuildRequires: libXdamage-devel -BuildRequires: xorg-x11-server-Xwayland-devel -BuildRequires: git # libliftoff hasn't bumped soname, but API/ABI has changed for 0.2.0 release Requires: libliftoff%{?_isa} >= %{libliftoff_minver} @@ -94,6 +91,17 @@ Requires: terra-gamescope-libs(x86-32) = %{version}-%{release} Recommends: mesa-dri-drivers Recommends: mesa-vulkan-drivers +# submodule deps +BuildRequires: pkgconfig(lcms2) +BuildRequires: pkgconfig(libinput) >= 1.21.0 +BuildRequires: pkgconfig(libseat) +BuildRequires: pkgconfig(x11-xcb) +BuildRequires: pkgconfig(xcb) +BuildRequires: pkgconfig(xcb-errors) +BuildRequires: pkgconfig(xcb-icccm) +BuildRequires: pkgconfig(xcb-renderutil) +BuildRequires: pkgconfig(xwayland) + %description %{name} is the micro-compositor optimized for running video games on Wayland. @@ -133,6 +141,7 @@ export PKG_CONFIG_PATH=pkgconfig %{_bindir}/gamescopectl %{_bindir}/gamescopestream %{_bindir}/gamescopereaper +%{_bindir}/gamescope-type %{_datadir}/gamescope/* %files libs @@ -140,5 +149,8 @@ export PKG_CONFIG_PATH=pkgconfig %{_datadir}/vulkan/implicit_layer.d/VkLayer_FROG_gamescope_wsi.*.json %changelog +* Fri Mar 13 2026 Kyle Gospodnetich +- Switch to OGC sources + * Thu Jan 2 2025 Owen-sz - Package gamescope, port from Bazzite diff --git a/anda/games/terra-gamescope/update.rhai b/anda/games/terra-gamescope/update.rhai new file mode 100644 index 0000000000..c0deb9c10f --- /dev/null +++ b/anda/games/terra-gamescope/update.rhai @@ -0,0 +1,6 @@ +if rpm.changed() { + rpm.release(); + let v = gh_commit("OpenGamingCollective/gamescope")); + v.crop(1); + rpm.global("gamescope_commit", v); +} diff --git a/anda/games/vapor-mod-overlay/anda.hcl b/anda/games/vapor-mod-overlay/anda.hcl new file mode 100644 index 0000000000..303a14d18c --- /dev/null +++ b/anda/games/vapor-mod-overlay/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "vapor-mod-overlay.spec" + } +} diff --git a/anda/games/vapor-mod-overlay/update.rhai b/anda/games/vapor-mod-overlay/update.rhai new file mode 100644 index 0000000000..3898e84c4e --- /dev/null +++ b/anda/games/vapor-mod-overlay/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("ChristianSilvermoon/vapor-mod-overlay")); diff --git a/anda/games/vapor-mod-overlay/vapor-mod-overlay.spec b/anda/games/vapor-mod-overlay/vapor-mod-overlay.spec new file mode 100644 index 0000000000..50db0d4665 --- /dev/null +++ b/anda/games/vapor-mod-overlay/vapor-mod-overlay.spec @@ -0,0 +1,33 @@ +Name: vapor-mod-overlay +Version: 0.0.1 +Release: 1%{?dist} +Summary: A fairly basic OverlayFS powered mod loader for Steam +License: MIT +URL: https://github.com/ChristianSilvermoon/vapor-mod-overlay +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz +Requires: bash +Requires: fuse-overlayfs +BuildArch: noarch +Packager: Gilver E. + +%description +This is an attempt at a very basic sort of Mod Loader for Valve's Steam Client on GNU/Linux systems that uses OverlayFS. +This was inspired by a bug in Portal 2 VR that required the mod to be disabled temporarily to bypass a crash. + +%prep +%autosetup -n %{name}-%{version} + +%build +# The voices are getting louder. + +%install +install -Dpm755 %{name}.sh %{buildroot}%{_bindir}/%{name} + +%files +%doc README.md +%license LICENSE.md +%{_bindir}/%{name} + +%changelog +* Mon Mar 2 2026 Gilver E. +- Initial package diff --git a/anda/langs/dart/dart.spec b/anda/langs/dart/dart.spec index bbe415feee..de9a206691 100644 --- a/anda/langs/dart/dart.spec +++ b/anda/langs/dart/dart.spec @@ -1,8 +1,8 @@ %define debug_package %{nil} Name: dart -Version: 3.10.7 -Release: 1%?dist +Version: 3.11.3 +Release: 1%{?dist} Summary: The Dart Language License: BSD-3-Clause URL: https://dart.dev/ diff --git a/anda/langs/go/chezmoi/chezmoi.spec b/anda/langs/go/chezmoi/chezmoi.spec index c561302ae2..a60a7099ec 100644 --- a/anda/langs/go/chezmoi/chezmoi.spec +++ b/anda/langs/go/chezmoi/chezmoi.spec @@ -4,7 +4,7 @@ # https://github.com/twpayne/chezmoi %global goipath github.com/twpayne/chezmoi -Version: 2.69.3 +Version: 2.70.0 %gometa -f @@ -27,7 +27,7 @@ Manage your dotfiles across multiple diverse machines, securely.} assets/chezmoi.io/snippets/common-flags/tree.md Name: chezmoi -Release: 1%?dist +Release: 1%{?dist} Summary: Manage your dotfiles across multiple diverse machines, securely License: MIT diff --git a/anda/langs/go/elephant/golang-github-abenz1267-elephant.spec b/anda/langs/go/elephant/golang-github-abenz1267-elephant.spec index 273aacd3fe..e261575d53 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 archlinuxpkgs calc clipboard desktopapplications files menus providerlist runner symbols websearch +%global providers 1password archlinuxpkgs bitwarden bluetooth bookmarks calc clipboard desktopapplications dnfpackages files menus niriactions nirisessions providerlist runner snippets symbols todo unicode websearch windows wireplumber # https://github.com/abenz1267/elephant %global goipath github.com/abenz1267/elephant -Version: 2.18.2 +Version: 2.20.2 %gometa -f @@ -26,8 +26,8 @@ Elephant - cuz it's phat - is a powerful data provider service and backend for b %global godocs README.md Name: elephant -Release: 1%?dist -Summary: None +Release: 2%{?dist} +Summary: Data provider service and backend for building custom application launchers & desktop utilities License: GPL-3.0-only URL: %{gourl} diff --git a/anda/langs/go/elephant/update.rhai b/anda/langs/go/elephant/update.rhai index e8a25fa240..35758fbeb1 100644 --- a/anda/langs/go/elephant/update.rhai +++ b/anda/langs/go/elephant/update.rhai @@ -1 +1,9 @@ rpm.version(gh_rawfile("abenz1267/elephant", "master", "cmd/elephant/version.txt")); +let dir = get("https://api.github.com/repos/abenz1267/elephant/contents/internal/providers/").json_arr(); +let providers = ""; +for f in dir { + if f.size == 0 { // dir + providers += f.name + " "; + } +} +rpm.global("providers", providers[0..providers.len - 1]); 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 4428694ed3..425088d4f9 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.78.0 +Version: 1.79.3 %gometa -L @@ -24,7 +24,7 @@ The Go language implementation of gRPC. HTTP/2 based RPC.} Documentation Name: golang-google-grpc.terra -Release: 1%?dist +Release: 1%{?dist} Summary: The Go language implementation of gRPC. HTTP/2 based RPC License: Apache-2.0 diff --git a/anda/langs/go/lazygit/golang-github-jesseduffield-lazygit.spec b/anda/langs/go/lazygit/golang-github-jesseduffield-lazygit.spec index c02731f143..028064c393 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.58.1 +Version: 0.60.0 %gometa -f @@ -13,7 +13,7 @@ Simple terminal UI for git commands.} %global godocs docs README.md VISION.md Name: golang-github-jesseduffield-lazygit -Release: 1%?dist +Release: 1%{?dist} Summary: Simple terminal UI for git commands License: MIT @@ -23,10 +23,19 @@ Packager: sadlerm BuildRequires: anda-srpm-macros -Provides: lazygit = %{version}-%{release} +Provides: lazygit = %{evr} %description %{common_description} + +%package doc +Summary: Documentations for %{name} +Requires: %{name} = %{evr} +BuildArch: noarch + +%description doc +%{summary}. + %gopkg %prep @@ -43,5 +52,8 @@ install -m 0755 -vp %{gobuilddir}/bin/* %{buildroot}%{_bindir}/ %files %license LICENSE -%doc docs README.md VISION.md +%doc README.md %{_bindir}/lazygit + +%files doc +%doc docs/ VISION.md CONTRIBUTING.md CODE-OF-CONDUCT.md diff --git a/anda/langs/go/soft-serve/soft-serve.spec b/anda/langs/go/soft-serve/soft-serve.spec index c3eb116584..dde2147336 100644 --- a/anda/langs/go/soft-serve/soft-serve.spec +++ b/anda/langs/go/soft-serve/soft-serve.spec @@ -5,12 +5,12 @@ %global cmd_name soft %global goipath github.com/charmbracelet/soft-serve -Version: 0.11.2 +Version: 0.11.5 %gometa -f Name: soft-serve -Release: 1%?dist +Release: 1%{?dist} Summary: The mighty, self-hostable Git server for the command line 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/u-root/golang-github-u-root.spec b/anda/langs/go/u-root/golang-github-u-root.spec index 7a2e4333ad..e604413da6 100644 --- a/anda/langs/go/u-root/golang-github-u-root.spec +++ b/anda/langs/go/u-root/golang-github-u-root.spec @@ -12,7 +12,7 @@ # https://github.com/u-root/u-root %global goipath github.com/u-root/u-root -Version: 0.15.0 +Version: 0.16.0 %global commit 5721ed3ad38a5c889e6c1ed5bbf5242f98a4b591 %gometa -f diff --git a/anda/langs/go/v2ray/nightly/anda.hcl b/anda/langs/go/v2ray/nightly/anda.hcl new file mode 100644 index 0000000000..3b71d03242 --- /dev/null +++ b/anda/langs/go/v2ray/nightly/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "v2ray-nightly.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/langs/go/v2ray/nightly/update.rhai b/anda/langs/go/v2ray/nightly/update.rhai new file mode 100644 index 0000000000..455f470e1e --- /dev/null +++ b/anda/langs/go/v2ray/nightly/update.rhai @@ -0,0 +1,7 @@ +rpm.global("commit", gh_commit("v2fly/v2ray-core")); +if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); + let v = gh("v2fly/v2ray-core"); + rpm.global("ver", v); +} \ No newline at end of file diff --git a/anda/langs/go/v2ray/nightly/v2ray-nightly.spec b/anda/langs/go/v2ray/nightly/v2ray-nightly.spec new file mode 100644 index 0000000000..8f98c01583 --- /dev/null +++ b/anda/langs/go/v2ray/nightly/v2ray-nightly.spec @@ -0,0 +1,72 @@ +%global commit 2e97de9b4f26e7b20bb0c9401b0e53f0bc79c30d +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global ver v5.47.0 +%global commit_date 20260318 + +%global goipath github.com/v2fly/v2ray-core +Version: %{ver}^%{commit_date}git.%{shortcommit} + +%global golicenses LICENSE +%global godocs README.md SECURITY.md + +%gometa -f + +Name: v2ray-nightly +Release: 1%{?dist} +Summary: A platform for building proxies to bypass network restrictions +License: MIT +Packager: veuxit +URL: %{gourl} +Source: %{gosource} +Conflicts: v2ray + +Requires: v2ray-geoip v2ray-domain-list-community + +BuildRequires: go go-rpm-macros go-srpm-macros anda-srpm-macros + +%description +%summary. + +%gopkg + +%prep +%goprep_online -A + + +%build +%gobuild -o v2ray ./main + + +%install +%gopkginstall +install -Dm755 v2ray %{buildroot}%{_bindir}/v2ray + +install -Dm644 release/config/systemd/system/v2ray.service -t %{buildroot}%{_unitdir}/ +install -Dm644 release/config/systemd/system/v2ray@.service -t %{buildroot}%{_unitdir}/ +install -Dm644 release/config/*.json -t %{buildroot}/%{_sysconfdir}/v2ray/ + +%post +%systemd_post v2ray.service + +%preun +%systemd_preun v2ray.service + +%postun +%systemd_postun_with_restart v2ray.service + +%files +%doc README.md +%doc SECURITY.md +%license LICENSE +%{_bindir}/v2ray +%{_unitdir}/v2ray.service +%{_unitdir}/v2ray@.service +%{_sysconfdir}/v2ray/config.json +%{_sysconfdir}/v2ray/vpoint_socks_vmess.json +%{_sysconfdir}/v2ray/vpoint_vmess_freedom.json + +%gopkgfiles + +%changelog +* Sun Mar 8 2026 veuxit - 5.44.1^20260228git.9cf6a45-1 +- Initial package release diff --git a/anda/langs/go/v2ray/stable/anda.hcl b/anda/langs/go/v2ray/stable/anda.hcl new file mode 100644 index 0000000000..89559f5c1a --- /dev/null +++ b/anda/langs/go/v2ray/stable/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "v2ray.spec" + } +} diff --git a/anda/langs/go/v2ray/stable/update.rhai b/anda/langs/go/v2ray/stable/update.rhai new file mode 100644 index 0000000000..8898b562bc --- /dev/null +++ b/anda/langs/go/v2ray/stable/update.rhai @@ -0,0 +1 @@ +rpm.version(gh_tag("v2fly/v2ray-core")); diff --git a/anda/langs/go/v2ray/stable/v2ray.spec b/anda/langs/go/v2ray/stable/v2ray.spec new file mode 100644 index 0000000000..6c03e8399b --- /dev/null +++ b/anda/langs/go/v2ray/stable/v2ray.spec @@ -0,0 +1,67 @@ +%global goipath github.com/v2fly/v2ray-core +Version: 5.47.0 + +%global golicenses LICENSE +%global godocs README.md SECURITY.md + +%gometa -f + +Name: v2ray +Release: 1%{?dist} +Summary: A platform for building proxies to bypass network restrictions +License: MIT +Packager: veuxit +URL: %{gourl} +Source: %{gosource} +Conflicts: v2ray-nightly + +Requires: v2ray-geoip v2ray-domain-list-community + +BuildRequires: go go-rpm-macros go-srpm-macros anda-srpm-macros + +%description +%summary. + +%gopkg + +%prep +%goprep_online -A + + +%build +%gobuild -o v2ray ./main + + +%install +%gopkginstall +install -Dm755 v2ray %{buildroot}%{_bindir}/v2ray + +install -Dm644 release/config/systemd/system/v2ray.service -t %{buildroot}%{_unitdir}/ +install -Dm644 release/config/systemd/system/v2ray@.service -t %{buildroot}%{_unitdir}/ +install -Dm644 release/config/*.json -t %{buildroot}/%{_sysconfdir}/v2ray/ + +%post +%systemd_post v2ray.service + +%preun +%systemd_preun v2ray.service + +%postun +%systemd_postun_with_restart v2ray.service + +%files +%doc README.md +%doc SECURITY.md +%license LICENSE +%{_bindir}/v2ray +%{_unitdir}/v2ray.service +%{_unitdir}/v2ray@.service +%{_sysconfdir}/v2ray/config.json +%{_sysconfdir}/v2ray/vpoint_socks_vmess.json +%{_sysconfdir}/v2ray/vpoint_vmess_freedom.json + +%gopkgfiles + +%changelog +* Sun Mar 8 2026 veuxit - 5.44.1-1 +- Initial package release diff --git a/anda/langs/go/v2raya/nightly/anda.hcl b/anda/langs/go/v2raya/nightly/anda.hcl new file mode 100644 index 0000000000..b903484c57 --- /dev/null +++ b/anda/langs/go/v2raya/nightly/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "v2raya-nightly.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/langs/go/v2raya/nightly/update.rhai b/anda/langs/go/v2raya/nightly/update.rhai new file mode 100644 index 0000000000..b91464d6d8 --- /dev/null +++ b/anda/langs/go/v2raya/nightly/update.rhai @@ -0,0 +1,7 @@ +rpm.global("commit", gh_commit("v2rayA/v2rayA")); +if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); + let v = gh("v2rayA/v2rayA"); + rpm.global("ver", v); +} \ No newline at end of file diff --git a/anda/langs/go/v2raya/nightly/v2raya-nightly.spec b/anda/langs/go/v2raya/nightly/v2raya-nightly.spec new file mode 100644 index 0000000000..d8690b3cfd --- /dev/null +++ b/anda/langs/go/v2raya/nightly/v2raya-nightly.spec @@ -0,0 +1,80 @@ +%global commit 981e9cbec25ae8994ff6ab53ddb38eab75630984 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global ver v2.2.7.5 +%global commit_date 20260318 + +%global goipath github.com/v2rayA/v2rayA +Version: %{ver}^%{commit_date}git.%{shortcommit} + +%global golicenses LICENSE +%global godocs README.md + +%gometa -f + +Name: v2raya-nightly +Release: 1%{?dist} +Summary: A web GUI client of Project V which supports VMess, VLESS, SS, SSR, Trojan, Tuic and Juicity protocols +License: AGPL-3.0-only +Packager: veuxit +URL: %{gourl} +Source: %{gosource} +Conflicts: v2raya + +Requires: v2ray-geoip v2ray-domain-list-community ((v2ray or v2ray-nightly) or (xray or xray-nightly)) + +BuildRequires: go go-rpm-macros go-srpm-macros anda-srpm-macros nodejs yarnpkg desktop-file-utils + +%description +%summary. + +%gopkg + +%prep +%goprep_online -A + +%build +pushd gui +yarn --ignore-engines && OUTPUT_DIR=$(pwd)/../service/server/router/web yarn --ignore-engines build +popd + +pushd service +%define currentgoldflags -X github.com/v2rayA/v2rayA/conf.Version=%{version} +export GO_BUILDTAGS="with_gvisor" +%gobuild -o ../v2raya + +%install +%gopkginstall +install -Dm 755 v2raya -t %{buildroot}/%{_bindir} +install -Dm 644 install/universal/v2raya.desktop -t %{buildroot}/%{_appsdir}/ +install -Dm 644 install/universal/v2raya.service -t %{buildroot}/%{_unitdir}/ +install -Dm 644 install/universal/v2raya-lite.service -t %{buildroot}/%{_userunitdir}/ +install -Dm 644 install/universal/v2raya.default -t %{buildroot}/%{_sysconfdir}/default/v2raya.conf +install -Dm 644 gui/public/img/icons/android-chrome-512x512.png %{buildroot}/%{_hicolordir}/512x512/apps/v2raya.png + +%check +%desktop_file_validate %{buildroot}/%{_appsdir}/v2raya.desktop + +%post +%systemd_post v2raya.service + +%preun +%systemd_preun v2raya.service + +%postun +%systemd_postun_with_restart v2raya.service + +%files +%doc README.md +%license LICENSE +%{_bindir}/v2raya +%{_unitdir}/v2raya.service +%{_userunitdir}/v2raya-lite.service +%{_sysconfdir}/default/v2raya.conf +%{_appsdir}/v2raya.desktop +%{_hicolordir}/512x512/apps/v2raya.png + +%gopkgfiles + +%changelog +* Sun Mar 8 2026 veuxit - 2.2.7.5^20260305git.d92dbf9-1 +- Initial package release diff --git a/anda/langs/go/v2raya/stable/anda.hcl b/anda/langs/go/v2raya/stable/anda.hcl new file mode 100644 index 0000000000..8b4d4b8d67 --- /dev/null +++ b/anda/langs/go/v2raya/stable/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "v2raya.spec" + } +} diff --git a/anda/langs/go/v2raya/stable/update.rhai b/anda/langs/go/v2raya/stable/update.rhai new file mode 100644 index 0000000000..846fa87be5 --- /dev/null +++ b/anda/langs/go/v2raya/stable/update.rhai @@ -0,0 +1 @@ +rpm.version(gh_tag("v2rayA/v2rayA")); diff --git a/anda/langs/go/v2raya/stable/v2raya.spec b/anda/langs/go/v2raya/stable/v2raya.spec new file mode 100644 index 0000000000..ef6d62c08d --- /dev/null +++ b/anda/langs/go/v2raya/stable/v2raya.spec @@ -0,0 +1,76 @@ +%global goipath github.com/v2rayA/v2rayA +Version: 2.3.3 + +%global golicenses LICENSE +%global godocs README.md + +%gometa -f + +Name: v2raya +Release: 1%{?dist} +Summary: A web GUI client of Project V which supports VMess, VLESS, SS, SSR, Trojan, Tuic and Juicity protocols +License: AGPL-3.0-only +URL: %{gourl} +Source: %{gosource} +Packager: veuxit +Conflicts: v2raya-nightly + +Requires: v2ray-geoip v2ray-domain-list-community ((v2ray or v2ray-nightly) or (xray or xray-nightly)) + +BuildRequires: go go-rpm-macros go-srpm-macros anda-srpm-macros nodejs yarnpkg desktop-file-utils + +%description +%summary. + +%gopkg + +%prep +%goprep_online -A + +%build +pushd gui +yarn --ignore-engines && OUTPUT_DIR=$(pwd)/../service/server/router/web yarn --ignore-engines build +popd + +pushd service +%define gomodulesmode GO111MODULE=on +%define currentgoldflags -X github.com/v2rayA/v2rayA/conf.Version=%{version} +export GO_BUILDTAGS="with_gvisor" +%gobuild -o ../v2raya + +%install +%gopkginstall +install -Dm 755 v2raya -t %{buildroot}/%{_bindir} +install -Dm 644 install/universal/v2raya.desktop -t %{buildroot}/%{_appsdir}/ +install -Dm 644 install/universal/v2raya.service -t %{buildroot}/%{_unitdir}/ +install -Dm 644 install/universal/v2raya-lite.service -t %{buildroot}/%{_userunitdir}/ +install -Dm 644 install/universal/v2raya.default -t %{buildroot}/%{_sysconfdir}/default/v2raya.conf +install -Dm 644 gui/public/img/icons/android-chrome-512x512.png %{buildroot}/%{_hicolordir}/512x512/apps/v2raya.png + +%check +%desktop_file_validate %{buildroot}/%{_appsdir}/v2raya.desktop + +%post +%systemd_post v2raya.service + +%preun +%systemd_preun v2raya.service + +%postun +%systemd_postun_with_restart v2raya.service + +%files +%doc README.md +%license LICENSE +%{_bindir}/v2raya +%{_unitdir}/v2raya.service +%{_userunitdir}/v2raya-lite.service +%{_sysconfdir}/default/v2raya.conf +%{_appsdir}/v2raya.desktop +%{_hicolordir}/512x512/apps/v2raya.png + +%gopkgfiles + +%changelog +* Sun Mar 8 2026 veuxit - 2.2.7.5-1 +- Initial package release diff --git a/anda/langs/go/xray/nightly/anda.hcl b/anda/langs/go/xray/nightly/anda.hcl new file mode 100644 index 0000000000..58d3ede9f9 --- /dev/null +++ b/anda/langs/go/xray/nightly/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "xray-nightly.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/langs/go/xray/nightly/update.rhai b/anda/langs/go/xray/nightly/update.rhai new file mode 100644 index 0000000000..acb3222cd9 --- /dev/null +++ b/anda/langs/go/xray/nightly/update.rhai @@ -0,0 +1,7 @@ +rpm.global("commit", gh_commit("XTLS/Xray-core")); +if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); + let v = gh("XTLS/Xray-core"); + rpm.global("ver", v); +} \ No newline at end of file diff --git a/anda/langs/go/xray/nightly/xray-nightly.spec b/anda/langs/go/xray/nightly/xray-nightly.spec new file mode 100644 index 0000000000..6fe7e60432 --- /dev/null +++ b/anda/langs/go/xray/nightly/xray-nightly.spec @@ -0,0 +1,84 @@ +%global commit 695a28c4247cc924256c2f211ba95d4940d66d56 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global ver v26.2.6 +%global commit_date 20260319 + +%global goipath github.com/XTLS/Xray-core +Version: %{ver}^%{commit_date}git.%{shortcommit} + +%global golicenses LICENSE +%global godocs README.md SECURITY.md CODE_OF_CONDUCT.md + +Name: xray-nightly +Release: 1%{?dist} +Summary: High-performance, open-source network proxy engine and toolset designed to bypass internet censorship and enhance privacy +License: MPL-2.0 +Packager: veuxit +URL: https://github.com/XTLS/Xray-core +Conflicts: xray + +Source0: %{url}/archive/%{commit}/Xray-core-%{commit}.tar.gz +Source1: xray.service +Source2: xray@.service +Source3: xray.sysusers +Source4: xray.tmpfiles + +Requires: v2ray-geoip v2ray-domain-list-community + +BuildRequires: golang >= 1.26 +BuildRequires: go-rpm-macros go-srpm-macros anda-srpm-macros + +%description +%summary. + +%gopkg + +%prep +%autosetup -n Xray-core-%{commit} +%goprep_online -Ae + +%build +%define gomodulesmode GO111MODULE=on +%gobuild -o xray ./main + +%install +%gopkginstall +install -Dm755 xray %{buildroot}%{_bindir}/xray + +install -d "%{buildroot}/etc/xray" "%{buildroot}%{_datadir}/xray" + +ln -s %{_datadir}/v2ray/geo{ip,site}.dat -t "%{buildroot}%{_datadir}/xray" + +install -Dm644 %{SOURCE1} -t %{buildroot}/%{_unitdir} +install -Dm644 %{SOURCE2} -t %{buildroot}/%{_unitdir} +install -Dm644 %{SOURCE3} %{buildroot}/%{_sysusersdir}/xray.conf +install -Dm644 %{SOURCE4} %{buildroot}/usr/lib/tmpfiles.d/xray.conf + + +%post +%systemd_post xray.service + +%preun +%systemd_preun xray.service + +%postun +%systemd_postun_with_restart xray.service + +%files +%doc README.md +%doc SECURITY.md +%doc CODE_OF_CONDUCT.md +%license LICENSE +%{_bindir}/xray +%{_datadir}/xray/geoip.dat +%{_datadir}/xray/geosite.dat +%{_unitdir}/xray.service +%{_unitdir}/xray@.service +%{_sysusersdir}/xray.conf +/usr/lib/tmpfiles.d/xray.conf + +%gopkgfiles + +%changelog +* Sun Mar 8 2026 veuxit - 26.2.2^20260307git.acb06e8-1 +- Initial package release diff --git a/anda/langs/go/xray/nightly/xray.service b/anda/langs/go/xray/nightly/xray.service new file mode 100644 index 0000000000..2c24daa71b --- /dev/null +++ b/anda/langs/go/xray/nightly/xray.service @@ -0,0 +1,14 @@ +[Unit] +Description=Xray Service +After=network.target nss-lookup.target + +[Service] +User=xray +CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE +AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE +NoNewPrivileges=true +ExecStart=/usr/bin/xray run -confdir /etc/xray/ +Restart=on-abort + +[Install] +WantedBy=multi-user.target diff --git a/anda/langs/go/xray/nightly/xray.sysusers b/anda/langs/go/xray/nightly/xray.sysusers new file mode 100644 index 0000000000..0260d2dc7b --- /dev/null +++ b/anda/langs/go/xray/nightly/xray.sysusers @@ -0,0 +1 @@ +u xray - "Xray Service" - - diff --git a/anda/langs/go/xray/nightly/xray.tmpfiles b/anda/langs/go/xray/nightly/xray.tmpfiles new file mode 100644 index 0000000000..896975f158 --- /dev/null +++ b/anda/langs/go/xray/nightly/xray.tmpfiles @@ -0,0 +1 @@ +d /var/log/xray 0700 xray xray - - diff --git a/anda/langs/go/xray/nightly/xray@.service b/anda/langs/go/xray/nightly/xray@.service new file mode 100644 index 0000000000..a024fb1a9f --- /dev/null +++ b/anda/langs/go/xray/nightly/xray@.service @@ -0,0 +1,14 @@ +[Unit] +Description=Xray Service +After=network.target nss-lookup.target + +[Service] +User=xray +CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE +AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE +NoNewPrivileges=true +ExecStart=/usr/bin/xray run -config /etc/xray/%i.json +Restart=on-abort + +[Install] +WantedBy=multi-user.target diff --git a/anda/langs/go/xray/stable/anda.hcl b/anda/langs/go/xray/stable/anda.hcl new file mode 100644 index 0000000000..b39e7e2d8f --- /dev/null +++ b/anda/langs/go/xray/stable/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "xray.spec" + } +} diff --git a/anda/langs/go/xray/stable/update.rhai b/anda/langs/go/xray/stable/update.rhai new file mode 100644 index 0000000000..c9124ea5bd --- /dev/null +++ b/anda/langs/go/xray/stable/update.rhai @@ -0,0 +1 @@ +rpm.version(gh_tag("XTLS/Xray-core")); diff --git a/anda/langs/go/xray/stable/xray.service b/anda/langs/go/xray/stable/xray.service new file mode 100644 index 0000000000..2c24daa71b --- /dev/null +++ b/anda/langs/go/xray/stable/xray.service @@ -0,0 +1,14 @@ +[Unit] +Description=Xray Service +After=network.target nss-lookup.target + +[Service] +User=xray +CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE +AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE +NoNewPrivileges=true +ExecStart=/usr/bin/xray run -confdir /etc/xray/ +Restart=on-abort + +[Install] +WantedBy=multi-user.target diff --git a/anda/langs/go/xray/stable/xray.spec b/anda/langs/go/xray/stable/xray.spec new file mode 100644 index 0000000000..f5827fff88 --- /dev/null +++ b/anda/langs/go/xray/stable/xray.spec @@ -0,0 +1,77 @@ +# Disabled because compiled without debug + +%global goipath github.com/XTLS/Xray-core +Version: 26.2.6 + +%global golicenses LICENSE +%global godocs README.md SECURITY.md CODE_OF_CONDUCT.md + +Name: xray +Release: 1%?dist +Summary: High-performance, open-source network proxy engine and toolset designed to bypass internet censorship and enhance privacy +License: MPL-2.0 +Packager: veuxit +URL: https://github.com/XTLS/Xray-core +Conflicts: xray-nightly + +Source0: https://github.com/XTLS/Xray-core/archive/refs/tags/v%{version}.tar.gz +Source1: xray.service +Source2: xray@.service +Source3: xray.sysusers +Source4: xray.tmpfiles + +Requires: v2ray-geoip v2ray-domain-list-community + +BuildRequires: go go-rpm-macros go-srpm-macros anda-srpm-macros + +%description +%summary. + +%gopkg + +%prep +%goprep_online -Ae +%autosetup -n Xray-core-%{version} + + +%build +%define gomodulesmode GO111MODULE=on +%gobuild -o xray ./main + +%install +%gopkginstall +install -Dm755 xray %{buildroot}%{_bindir}/xray +install -d "%{buildroot}/etc/xray" "%{buildroot}%{_datadir}/xray" +ln -s %{_datadir}/v2ray/geo{ip,site}.dat -t "%{buildroot}%{_datadir}/xray" +install -Dm644 %{SOURCE1} -t %{buildroot}/%{_unitdir} +install -Dm644 %{SOURCE2} -t %{buildroot}/%{_unitdir} +install -Dm644 %{SOURCE3} %{buildroot}/%{_sysusersdir}/xray.conf +install -Dm644 %{SOURCE4} %{buildroot}/usr/lib/tmpfiles.d/xray.conf + +%post +%systemd_post xray.service + +%preun +%systemd_preun xray.service + +%postun +%systemd_postun_with_restart xray.service + +%files +%doc README.md +%doc SECURITY.md +%doc CODE_OF_CONDUCT.md +%license LICENSE +%{_bindir}/xray +%{_datadir}/xray/geoip.dat +%{_datadir}/xray/geosite.dat +%{_unitdir}/xray.service +%{_unitdir}/xray@.service +%{_sysusersdir}/xray.conf +/usr/lib/tmpfiles.d/xray.conf + +%gopkgfiles + +%changelog +* Sun Mar 8 2026 veuxit - 26.2.6-1 +- Initial package release diff --git a/anda/langs/go/xray/stable/xray.sysusers b/anda/langs/go/xray/stable/xray.sysusers new file mode 100644 index 0000000000..0260d2dc7b --- /dev/null +++ b/anda/langs/go/xray/stable/xray.sysusers @@ -0,0 +1 @@ +u xray - "Xray Service" - - diff --git a/anda/langs/go/xray/stable/xray.tmpfiles b/anda/langs/go/xray/stable/xray.tmpfiles new file mode 100644 index 0000000000..896975f158 --- /dev/null +++ b/anda/langs/go/xray/stable/xray.tmpfiles @@ -0,0 +1 @@ +d /var/log/xray 0700 xray xray - - diff --git a/anda/langs/go/xray/stable/xray@.service b/anda/langs/go/xray/stable/xray@.service new file mode 100644 index 0000000000..a024fb1a9f --- /dev/null +++ b/anda/langs/go/xray/stable/xray@.service @@ -0,0 +1,14 @@ +[Unit] +Description=Xray Service +After=network.target nss-lookup.target + +[Service] +User=xray +CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE +AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE +NoNewPrivileges=true +ExecStart=/usr/bin/xray run -config /etc/xray/%i.json +Restart=on-abort + +[Install] +WantedBy=multi-user.target diff --git a/anda/langs/go/zrepl/golang-github-zrepl.spec b/anda/langs/go/zrepl/golang-github-zrepl.spec index 874b20be7b..ec21651539 100644 --- a/anda/langs/go/zrepl/golang-github-zrepl.spec +++ b/anda/langs/go/zrepl/golang-github-zrepl.spec @@ -4,7 +4,7 @@ # https://github.com/zrepl/zrepl %global goipath github.com/zrepl/zrepl -Version: 0.6.1 +Version: 0.7.0 %gometa -f diff --git a/anda/langs/holyc/holyc/anda.hcl b/anda/langs/holyc/holyc/anda.hcl new file mode 100644 index 0000000000..331230f11a --- /dev/null +++ b/anda/langs/holyc/holyc/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "holyc.spec" + } +} diff --git a/anda/langs/holyc/holyc/holyc.spec b/anda/langs/holyc/holyc/holyc.spec new file mode 100644 index 0000000000..cc4a496e70 --- /dev/null +++ b/anda/langs/holyc/holyc/holyc.spec @@ -0,0 +1,50 @@ +%global ver 0.0.10 + +Name: holyc +Version: %{ver}~beta +Release: 3%{?dist} +Summary: HolyC compiler and transpiler +License: BSD-2-Clause +URL: https://holyc-lang.com +Source0: https://github.com/Jamesbarford/holyc-lang/archive/refs/tags/beta-v%{ver}.tar.gz +BuildRequires: cmake +BuildRequires: cmake-rpm-macros +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: sqlite-devel +Packager: Gilver E. + +%description +HolyC is a fun recreational programming language designed by Terry A. Davis. +Originally implemented in TempleOS as a general purpose programming language and scripting language for all manner of tasks. + +%prep +# Currently needed to fetch the commit hash for hcc --version +%git_clone https://github.com/Jamesbarford/holyc-lang.git beta-v%{ver} +%setup -T -D -n holyc-lang/src +# Make packaged versions of HolyC report the correct Git hash +sed -i 's|git rev-parse main|git rev-parse HEAD|g' CMakeLists.txt +# Make the binary correctly report its installed location as /usr/bin instead of /usr +sed -i 's|binary: %%s/hcc|binary: %%s/bin/hcc|g' cli.c + +%build +%cmake \ + -DCMAKE_BUILD_TYPE="Release" \ + -DHCC_LINK_SQLITE3="1" +%cmake_build + +%install +%cmake_install + +%check +%{buildroot}%{_bindir}/hcc --version + +%files +%license ../COPYING +%doc ../README.md +%{_bindir}/hcc +%{_includedir}/tos.HH + +%changelog +* Tue Feb 10 2026 Gilver E. - 0.0.10~beta-1 +- Initial package diff --git a/anda/langs/holyc/holyc/update.rhai b/anda/langs/holyc/holyc/update.rhai new file mode 100644 index 0000000000..3ad7b1d940 --- /dev/null +++ b/anda/langs/holyc/holyc/update.rhai @@ -0,0 +1,7 @@ +let v = gh("Jamesbarford/holyc-lang"); +v.crop(6); +rpm.global("ver", v); + +if rpm.changed() { + rpm.release(); +} diff --git a/anda/langs/kotlin/kotlin-native/kotlin-native.spec b/anda/langs/kotlin/kotlin-native/kotlin-native.spec index 9abea486dd..0561f14ab6 100644 --- a/anda/langs/kotlin/kotlin-native/kotlin-native.spec +++ b/anda/langs/kotlin/kotlin-native/kotlin-native.spec @@ -2,8 +2,8 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build Name: kotlin-native -Version: 2.3.0 -Release: 1%?dist +Version: 2.3.20 +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 642fbb839a..4f23ea0c40 100644 --- a/anda/langs/kotlin/kotlin/kotlin.spec +++ b/anda/langs/kotlin/kotlin/kotlin.spec @@ -1,8 +1,8 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildArch: noarch Name: kotlin -Version: 2.3.0 -Release: 1%?dist +Version: 2.3.20 +Release: 1%{?dist} Summary: Statically typed programming language License: Apache-2.0 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 76a7160b28..5637a5c0ea 100644 --- a/anda/langs/lua/lua-language-server/lua-language-server.spec +++ b/anda/langs/lua/lua-language-server/lua-language-server.spec @@ -2,7 +2,7 @@ Name: lua-language-server Version: 3.17.1 -Release: 1%?dist +Release: 2%?dist License: MIT URL: https://luals.github.io/ Source: https://github.com/LuaLS/lua-language-server/archive/refs/tags/%version.tar.gz @@ -10,6 +10,8 @@ Summary: A language server that offers Lua language support BuildRequires: gcc-c++ make ninja-build glibc lua gcc cmake libstdc++-devel libstdc++-static libcxx libcxx-devel +Packager: Owen Zimmerman + %description A language server that offers Lua language support - programmed in Lua. @@ -23,7 +25,7 @@ chmod +x make.sh %install mkdir -p %{buildroot}%{_bindir} -mkdir -p %{buildroot}%{_libexecdir}/%{name} +mkdir -p %{buildroot}%{_libexecdir}/%{name}/ mkdir -p %{buildroot}%{_datadir}/%{name}/ install -Dm755 bin/lua-language-server %{buildroot}%{_libexecdir}/%{name}/%{name} install -Dm644 bin/main.lua %{buildroot}%{_libexecdir}/%{name}/main.lua @@ -36,9 +38,12 @@ cp -av \ meta \ %{buildroot}%{_datadir}/%{name}/ +%{__ln_s} -f %{_libexecdir}/%{name}/main.lua %{buildroot}%{_libexecdir}/main.lua + %files %license LICENSE %doc README.md +%{_libexecdir}/main.lua %{_libexecdir}/%{name}/ %{_datadir}/%{name}/ diff --git a/anda/langs/nim/grabnim/grabnim.spec b/anda/langs/nim/grabnim/grabnim.spec index c4b2d06b61..a4375c8609 100644 --- a/anda/langs/nim/grabnim/grabnim.spec +++ b/anda/langs/nim/grabnim/grabnim.spec @@ -1,5 +1,5 @@ -%global commit 10a4115ff79ec4f9f40191c76294c4f97f612849 -%global commit_date 20260115 +%global commit 87cd8e863e1544302647b876a20ef8e1388fe5ea +%global commit_date 20260221 %global shortcommit %{sub %commit 1 7} Name: grabnim diff --git a/anda/langs/nim/nim-nightly/nim-nightly.spec b/anda/langs/nim/nim-nightly/nim-nightly.spec index 16e5d96ceb..a55f4bb62e 100644 --- a/anda/langs/nim/nim-nightly/nim-nightly.spec +++ b/anda/langs/nim/nim-nightly/nim-nightly.spec @@ -1,13 +1,13 @@ %global csrc_commit 561b417c65791cd8356b5f73620914ceff845d10 -%global commit 9a23ff36bd3f9d3d4c15540f65d21fa9ed709bdd +%global commit b49414731028a74808ff1dbb6851ae3e441d83bc %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global ver 2.3.1 -%global commit_date 20260117 +%global commit_date 20260317 %global debug_package %nil Name: nim-nightly Version: %ver^%commit_date.%shortcommit -Release: 1%?dist +Release: 1%{?dist} Summary: Imperative, multi-paradigm, compiled programming language License: MIT and BSD URL: https://nim-lang.org diff --git a/anda/langs/nim/nim/nim.spec b/anda/langs/nim/nim/nim.spec index e24dbf1986..b13b753f54 100644 --- a/anda/langs/nim/nim/nim.spec +++ b/anda/langs/nim/nim/nim.spec @@ -2,7 +2,7 @@ %global debug_package %{nil} Name: nim -Version: 2.2.6 +Version: 2.2.8 Release: 1%?dist Summary: Imperative, multi-paradigm, compiled programming language License: MIT and BSD diff --git a/anda/langs/nim/nimble/nimble.spec b/anda/langs/nim/nimble/nimble.spec index 05fb826ffd..efbad4b419 100644 --- a/anda/langs/nim/nimble/nimble.spec +++ b/anda/langs/nim/nimble/nimble.spec @@ -1,6 +1,6 @@ Name: nimble -Version: 0.20.1 -Release: 1%?dist +Version: 0.22.2 +Release: 1%{?dist} Summary: Package manager for the Nim programming language License: BSD URL: https://github.com/nim-lang/nimble diff --git a/anda/langs/nim/nph/nph.spec b/anda/langs/nim/nph/nph.spec index 2bed0d5275..dad1360d0b 100644 --- a/anda/langs/nim/nph/nph.spec +++ b/anda/langs/nim/nph/nph.spec @@ -1,7 +1,7 @@ %define debug_package %nil Name: nph -Version: 0.6.2 +Version: 0.7.0 Release: 1%?dist Summary: An opinionated code formatter for Nim License: MIT diff --git a/anda/langs/python/accelerate/accelerate.spec b/anda/langs/python/accelerate/accelerate.spec index 7d801a6a76..b0ee0275e1 100644 --- a/anda/langs/python/accelerate/accelerate.spec +++ b/anda/langs/python/accelerate/accelerate.spec @@ -4,7 +4,7 @@ %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.12.0 +Version: 1.13.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 diff --git a/anda/langs/python/apeye-core/anda.hcl b/anda/langs/python/apeye-core/anda.hcl new file mode 100644 index 0000000000..645b557173 --- /dev/null +++ b/anda/langs/python/apeye-core/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "apeye-core.spec" + } +} diff --git a/anda/langs/python/apeye-core/apeye-core.spec b/anda/langs/python/apeye-core/apeye-core.spec new file mode 100644 index 0000000000..03217556d0 --- /dev/null +++ b/anda/langs/python/apeye-core/apeye-core.spec @@ -0,0 +1,45 @@ +%global pypi_name apeye_core +%global _desc Core (offline) functionality for the apeye library. + +Name: python-%{pypi_name} +Version: 1.1.5 +Release: 1%?dist +Summary: Core (offline) functionality for the apeye library +License: BSD-3-Clause +URL: https://github.com/domdfcoding/apeye-core +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-hatch-requirements-txt + +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 apeye_core + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.rst +%license LICENSE + +%changelog +* Sat Mar 14 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/apeye-core/update.rhai b/anda/langs/python/apeye-core/update.rhai new file mode 100644 index 0000000000..5a4b00ab7d --- /dev/null +++ b/anda/langs/python/apeye-core/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("apeye-core")); diff --git a/anda/langs/python/av/av.spec b/anda/langs/python/av/av.spec index 50efd395f4..c06e0cda04 100644 --- a/anda/langs/python/av/av.spec +++ b/anda/langs/python/av/av.spec @@ -2,8 +2,8 @@ %global _desc Pythonic bindings for FFmpeg's libraries. Name: python-%{pypi_name} -Version: 16.1.0 -Release: 1%?dist +Version: 17.0.0 +Release: 1%{?dist} Summary: Pythonic bindings for FFmpeg's libraries License: BSD-3-Clause URL: https://pyav.basswood-io.com/docs/stable/ diff --git a/anda/langs/python/consolekit/anda.hcl b/anda/langs/python/consolekit/anda.hcl new file mode 100644 index 0000000000..42675cf9ac --- /dev/null +++ b/anda/langs/python/consolekit/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "consolekit.spec" + } + labels { + } +} diff --git a/anda/langs/python/consolekit/consolekit.spec b/anda/langs/python/consolekit/consolekit.spec new file mode 100644 index 0000000000..dc7728918a --- /dev/null +++ b/anda/langs/python/consolekit/consolekit.spec @@ -0,0 +1,46 @@ +%global pypi_name consolekit +%global _desc Additional utilities for click. + +Name: python-%{pypi_name} +Version: 1.13.0 +Release: 1%?dist +Summary: Additional utilities for click +License: MIT +URL: https://consolekit.readthedocs.io/en/latest/ +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +BuildRequires: python3-flit-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 +%license LICENSE + +%changelog +* Sat Mar 14 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/consolekit/update.rhai b/anda/langs/python/consolekit/update.rhai new file mode 100644 index 0000000000..c6843e64e5 --- /dev/null +++ b/anda/langs/python/consolekit/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("consolekit")); diff --git a/anda/langs/python/deprecation-alias/anda.hcl b/anda/langs/python/deprecation-alias/anda.hcl new file mode 100644 index 0000000000..f3d32200b3 --- /dev/null +++ b/anda/langs/python/deprecation-alias/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "deprecation-alias.spec" + } +} diff --git a/anda/langs/python/deprecation-alias/deprecation-alias.spec b/anda/langs/python/deprecation-alias/deprecation-alias.spec new file mode 100644 index 0000000000..2941427117 --- /dev/null +++ b/anda/langs/python/deprecation-alias/deprecation-alias.spec @@ -0,0 +1,48 @@ +%global pypi_name deprecation-alias +%global _desc A wrapper around 'deprecation' providing support for deprecated aliases. + +Name: python-%{pypi_name} +Version: 0.4.0 +Release: 1%?dist +Summary: A wrapper around 'deprecation' providing support for deprecated aliases +License: Apache-2.0 +URL: https://github.com/domdfcoding/deprecation-alias +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz + +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-setuptools +BuildRequires: python3-hatchling +BuildRequires: python3-importlib-metadata +BuildRequires: python3-hatch-requirements-txt +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 deprecation_alias + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.rst +%license LICENSE + +%changelog +* Sat Mar 14 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/deprecation-alias/update.rhai b/anda/langs/python/deprecation-alias/update.rhai new file mode 100644 index 0000000000..f3d594eb8c --- /dev/null +++ b/anda/langs/python/deprecation-alias/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("deprecation-alias")); diff --git a/anda/langs/python/dist-meta/anda.hcl b/anda/langs/python/dist-meta/anda.hcl new file mode 100644 index 0000000000..d7d236f9df --- /dev/null +++ b/anda/langs/python/dist-meta/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "dist-meta.spec" + } +} diff --git a/anda/langs/python/dist-meta/dist-meta.spec b/anda/langs/python/dist-meta/dist-meta.spec new file mode 100644 index 0000000000..749cc6d049 --- /dev/null +++ b/anda/langs/python/dist-meta/dist-meta.spec @@ -0,0 +1,45 @@ +%global pypi_name dist-meta +%global _desc Parse and create Python distribution metadata. + +Name: python-%{pypi_name} +Version: 0.9.0 +Release: 1%?dist +Summary: Parse and create Python distribution metadata +License: MIT +URL: https://dist-meta.readthedocs.io/en/latest/ +Source0: https://github.com/repo-helper/dist-meta/archive/refs/tags/v%{version}.tar.gz +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-hatch-requirements-txt + +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 dist_meta + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.rst +%license LICENSE + +%changelog +* Sat Mar 14 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/dist-meta/update.rhai b/anda/langs/python/dist-meta/update.rhai new file mode 100644 index 0000000000..4835a11018 --- /dev/null +++ b/anda/langs/python/dist-meta/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("dist-meta")); diff --git a/anda/langs/python/dom_toml/anda.hcl b/anda/langs/python/dom_toml/anda.hcl new file mode 100644 index 0000000000..f16c8a3743 --- /dev/null +++ b/anda/langs/python/dom_toml/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "dom_toml.spec" + } +} diff --git a/anda/langs/python/dom_toml/dom_toml.spec b/anda/langs/python/dom_toml/dom_toml.spec new file mode 100644 index 0000000000..f9284e134b --- /dev/null +++ b/anda/langs/python/dom_toml/dom_toml.spec @@ -0,0 +1,46 @@ +%global pypi_name dom_toml +%global _desc Dom's tools for Tom's Obvious, Minimal Language. + +Name: python-%{pypi_name} +Version: 2.3.0 +Release: 1%?dist +Summary: Dom's tools for Tom's Obvious, Minimal Language +License: MIT +URL: https://dom-toml.readthedocs.io/en/latest/ +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-setuptools +BuildRequires: python3-flit-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 dom_toml + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.rst +%license LICENSE + +%changelog +* Sat Mar 14 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/dom_toml/update.rhai b/anda/langs/python/dom_toml/update.rhai new file mode 100644 index 0000000000..edf8cc8fb0 --- /dev/null +++ b/anda/langs/python/dom_toml/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("dom_toml")); diff --git a/anda/langs/python/enum-tools/anda.hcl b/anda/langs/python/enum-tools/anda.hcl new file mode 100644 index 0000000000..fa4ffe84f2 --- /dev/null +++ b/anda/langs/python/enum-tools/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "enum-tools.spec" + } +} diff --git a/anda/langs/python/enum-tools/enum-tools.spec b/anda/langs/python/enum-tools/enum-tools.spec new file mode 100644 index 0000000000..0c50face23 --- /dev/null +++ b/anda/langs/python/enum-tools/enum-tools.spec @@ -0,0 +1,47 @@ +%global pypi_name enum_tools +%global _desc Tools to expand Python's enum module. + +Name: python-%{pypi_name} +Version: 0.13.0 +Release: 1%?dist +Summary: Tools to expand Python's enum module +License: LGPL-3.0-or-later +URL: https://enum-tools.readthedocs.io/en/latest/ +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-wheel +BuildRequires: python3-whey + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +Provides: python3-enum-tools +%{?python_provide:%python_provide python3-%{pypi_name}} + +%description -n python3-%{pypi_name} +%_desc + +%prep +%autosetup -n enum_tools-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files enum_tools + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.rst +%license LICENSE + +%changelog +* Sun Mar 15 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/enum-tools/update.rhai b/anda/langs/python/enum-tools/update.rhai new file mode 100644 index 0000000000..05e5175c4a --- /dev/null +++ b/anda/langs/python/enum-tools/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("enum_tools")); diff --git a/anda/langs/python/fx2/fx2.spec b/anda/langs/python/fx2/fx2.spec index f662c76340..c6872789af 100644 --- a/anda/langs/python/fx2/fx2.spec +++ b/anda/langs/python/fx2/fx2.spec @@ -50,8 +50,6 @@ popd %doc README.md %license LICENSE-0BSD.txt %{_bindir}/fx2tool -%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/python/gay/gay.spec b/anda/langs/python/gay/gay.spec index 7003fb1030..7ca257a703 100644 --- a/anda/langs/python/gay/gay.spec +++ b/anda/langs/python/gay/gay.spec @@ -1,17 +1,13 @@ -%global commit af18bcf210659b8b5a40624ffab791d49e831017 -%global commit_date 20241015 -%global shortcommit %(c=%{commit}; echo ${c:0:7}) - %global pypi_name gay %global _desc Colour your text / terminal to be more gay. Name: python-%{pypi_name} -Version: %commit_date.%shortcommit +Version: 1.3.4 Release: 2%?dist Summary: Colour your text / terminal to be more gay License: MIT URL: https://github.com/ms-jpq/gay -Source0: %url/archive/%commit/gay-%commit.tar.gz +Source0: %{pypi_source} BuildArch: noarch BuildRequires: python3-devel @@ -25,14 +21,13 @@ Packager: Owen Zimmerman %package -n python3-%{pypi_name} Summary: %{summary} -Provides: gay %{?python_provide:%python_provide python3-%{pypi_name}} %description -n python3-%{pypi_name} %_desc %prep -%autosetup -n gay-%{commit} +%autosetup -n %{pypi_name}-%{version} %build %pyproject_wheel @@ -44,7 +39,7 @@ Provides: gay %doc README.md %license LICENSE %{_bindir}/gay -%python3_sitelib/gay-1.3.4.dist-info/* +%python3_sitelib/gay-%{version}.dist-info/* %changelog * Tue Sep 30 2025 Owen Zimmerman diff --git a/anda/langs/python/gay/update.rhai b/anda/langs/python/gay/update.rhai index 8386a9f9f8..132085f7c0 100644 --- a/anda/langs/python/gay/update.rhai +++ b/anda/langs/python/gay/update.rhai @@ -1,5 +1 @@ -rpm.global("commit", gh_commit("ms-jpq/gay")); -if rpm.changed() { - rpm.release(); - rpm.global("commit_date", date()); -} +rpm.version(pypi("gay")); diff --git a/anda/langs/python/handy-archives/anda.hcl b/anda/langs/python/handy-archives/anda.hcl new file mode 100644 index 0000000000..a02f099907 --- /dev/null +++ b/anda/langs/python/handy-archives/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "handy-archives.spec" + } +} diff --git a/anda/langs/python/handy-archives/handy-archives.spec b/anda/langs/python/handy-archives/handy-archives.spec new file mode 100644 index 0000000000..6fe2094ca4 --- /dev/null +++ b/anda/langs/python/handy-archives/handy-archives.spec @@ -0,0 +1,46 @@ +%global pypi_name handy_archives +%global _desc Some handy archive helpers for Python. + +Name: python-%{pypi_name} +Version: 0.2.0 +Release: 1%?dist +Summary: Some handy archive helpers for Python +License: MIT +URL: https://handy-archives.readthedocs.io/en/latest/ +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +BuildRequires: python3-flit-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 handy_archives + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.rst +%license LICENSE + +%changelog +* Sat Mar 14 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/handy-archives/update.rhai b/anda/langs/python/handy-archives/update.rhai new file mode 100644 index 0000000000..79bc0d2f35 --- /dev/null +++ b/anda/langs/python/handy-archives/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("handy-archives")); diff --git a/anda/langs/python/hf-xet/xf-xet.spec b/anda/langs/python/hf-xet/xf-xet.spec index 4fd2d857a5..094227a843 100644 --- a/anda/langs/python/hf-xet/xf-xet.spec +++ b/anda/langs/python/hf-xet/xf-xet.spec @@ -2,8 +2,8 @@ %global _desc xet client tech, used in huggingface_hub. Name: python-%{pypi_name} -Version: 1.2.0 -Release: 1%?dist +Version: 1.4.2 +Release: 1%{?dist} Summary: xet client tech, used in huggingface_hub License: Apache-2.0 URL: https://github.com/huggingface/xet-core diff --git a/anda/langs/python/latex2mathml/latex2mathml.spec b/anda/langs/python/latex2mathml/latex2mathml.spec index 2eecbb3805..f4e3b86803 100644 --- a/anda/langs/python/latex2mathml/latex2mathml.spec +++ b/anda/langs/python/latex2mathml/latex2mathml.spec @@ -2,8 +2,8 @@ %global _desc Pure Python library for LaTeX to MathML conversion. Name: python-%{pypi_name} -Version: 3.78.1 -Release: 1%?dist +Version: 3.79.0 +Release: 1%{?dist} Summary: Pure Python library for LaTeX to MathML conversion License: MIT URL: https://github.com/roniemartinez/latex2mathml @@ -17,6 +17,7 @@ BuildRequires: python3-pip BuildRequires: python3-poetry-core BuildRequires: python3-installer BuildRequires: python3-build +BuildRequires: python3-hatchling Packager: Owen Zimmerman diff --git a/anda/langs/python/magic-wormhole/magic-wormhole.spec b/anda/langs/python/magic-wormhole/magic-wormhole.spec index a54d31acc3..6c2b6d76c7 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.22.0 -Release: 1%?dist +Version: 0.23.0 +Release: 1%{?dist} Summary: get things from one computer to another, safely License: MIT URL: https://github.com/magic-wormhole/magic-wormhole @@ -52,9 +52,6 @@ rm %{buildroot}%{_usr}/wormhole_complete.* %{_bindir}/magic-wormhole %{_bindir}/wormhole %{_mandir}/man1/wormhole.1.gz -%ghost %python3_sitelib/__pycache__/*.cpython-*.pyc -%ghost %python3_sitelib/%{name}/subcommands/__pycache__/*.cpython-*.pyc -%python3_sitelib/magic_wormhole-%version.dist-info/* %changelog * Mon Nov 03 2025 Owen Zimmerman diff --git a/anda/langs/python/materialyoucolor/python-materialyoucolor.spec b/anda/langs/python/materialyoucolor/python-materialyoucolor.spec index 537eeb1f4d..f3f85fb1b4 100644 --- a/anda/langs/python/materialyoucolor/python-materialyoucolor.spec +++ b/anda/langs/python/materialyoucolor/python-materialyoucolor.spec @@ -2,8 +2,8 @@ %bcond test 0 Name: python-%{pypi_name} -Version: 2.0.10 -Release: 2%{?dist} +Version: 3.0.2 +Release: 1%?dist Summary: Material You color generation algorithms in pure python! License: MIT URL: https://github.com/T-Dynamos/materialyoucolor-python @@ -14,6 +14,7 @@ BuildRequires: pyproject-rpm-macros BuildRequires: python3-devel BuildRequires: python3dist(pillow) BuildRequires: python3dist(pip) +BuildRequires: python3dist(pybind11) BuildRequires: python3dist(pytest) BuildRequires: python3dist(rich) BuildRequires: python3dist(setuptools) diff --git a/anda/langs/python/mistletoe/anda.hcl b/anda/langs/python/mistletoe/anda.hcl new file mode 100644 index 0000000000..a1447a5955 --- /dev/null +++ b/anda/langs/python/mistletoe/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "mistletoe.spec" + } +} diff --git a/anda/langs/python/mistletoe/mistletoe.spec b/anda/langs/python/mistletoe/mistletoe.spec new file mode 100644 index 0000000000..e19f0798e4 --- /dev/null +++ b/anda/langs/python/mistletoe/mistletoe.spec @@ -0,0 +1,46 @@ +%global pypi_name mistletoe +%global _desc A rough port of Node.js's EventEmitter to Python with a few tricks of its own. + +Name: python-%{pypi_name} +Version: 1.5.1 +Release: 1%?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 +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 mistletoe + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md +%license LICENSE +%{_bindir}/mistletoe + +%changelog +* Sat Mar 14 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/mistletoe/update.rhai b/anda/langs/python/mistletoe/update.rhai new file mode 100644 index 0000000000..1212b2716e --- /dev/null +++ b/anda/langs/python/mistletoe/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("mistletoe")); diff --git a/anda/langs/python/mpv/python-mpv.spec b/anda/langs/python/mpv/python-mpv.spec index d0ca15e65a..e7b422f89f 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: 2%?dist +Release: 3%?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 @@ -60,8 +60,6 @@ EOL %files -n python3-%{pypi_name} -f %{pyproject_files} %doc README.rst %license LICENSE.GPL LICENSE.LGPL -%ghost %python3_sitelib/__pycache__/mpv.cpython-*.pyc -%python3_sitelib/mpv.py %endif %changelog diff --git a/anda/langs/python/numba/numba.spec b/anda/langs/python/numba/numba.spec index 6a520afb62..9e8234147c 100644 --- a/anda/langs/python/numba/numba.spec +++ b/anda/langs/python/numba/numba.spec @@ -1,7 +1,7 @@ %global pypi_name numba Name: python-%{pypi_name} -Version: 0.63.1 +Version: 0.64.0 Release: 1%?dist Summary: NumPy aware dynamic Python compiler using LLVM License: BSD-2-Clause AND MIT AND BSD-3-Clause diff --git a/anda/langs/python/omegaconf/omegaconf.spec b/anda/langs/python/omegaconf/omegaconf.spec index dbc696d088..aeb4f904e0 100644 --- a/anda/langs/python/omegaconf/omegaconf.spec +++ b/anda/langs/python/omegaconf/omegaconf.spec @@ -14,7 +14,7 @@ BuildRequires: python3-devel BuildRequires: python3-pip BuildRequires: python3-setuptools BuildRequires: python3-wheel -BuildRequires: java-21-openjdk-devel +BuildRequires: java-latest-openjdk-devel Packager: Owen Zimmerman diff --git a/anda/langs/python/pillow-heif/python3-pillow-heif.spec b/anda/langs/python/pillow-heif/python3-pillow-heif.spec index 605157daca..f162a76407 100644 --- a/anda/langs/python/pillow-heif/python3-pillow-heif.spec +++ b/anda/langs/python/pillow-heif/python3-pillow-heif.spec @@ -6,7 +6,7 @@ %bcond_with doc Name: python-%{srcname} -Version: 1.1.1 +Version: 1.3.0 Release: 1%?dist Summary: Python library for working with HEIF images and plugin for Pillow diff --git a/anda/langs/python/pkgcore/anda.hcl b/anda/langs/python/pkgcore/anda.hcl new file mode 100644 index 0000000000..220158cf38 --- /dev/null +++ b/anda/langs/python/pkgcore/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "pkgcore.spec" + } +} diff --git a/anda/langs/python/pkgcore/pkgcore.spec b/anda/langs/python/pkgcore/pkgcore.spec new file mode 100644 index 0000000000..3b100b741c --- /dev/null +++ b/anda/langs/python/pkgcore/pkgcore.spec @@ -0,0 +1,71 @@ +%global pypi_name pkgcore +%global _desc A framework for package management. + +Name: python-%{pypi_name} +Version: 0.12.33 +Release: 1%?dist +Summary: A framework for package management +License: BSD-3-Clause +URL: https://pkgcore.github.io/pkgcore +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +BuildRequires: python3-build +BuildRequires: python3-wheel +BuildRequires: python3-snakeoil +BuildRequires: python3-flit-core +BuildRequires: make + +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 + +%pkg_completion -n python3-%{pypi_name} -B pquery +%pkg_completion -n python3-%{pypi_name} -z pkgcore + +%prep +%autosetup -n pkgcore-%{version} + +%build +export PYTHONPATH=%{_builddir}/pkgcore-%{version}:$PYTHONPATH +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files pkgcore +install -Dm755 data/lib/pkgcore/ebd/helpers/common/pkgcore-ebuild-helper %{buildroot}%{_bindir}/pkgcore-ebuild-helper +install -Dm755 data/lib/pkgcore/ebd/helpers/common/pkgcore-ipc-helper %{buildroot}%{_bindir}/pkgcore-ipc-helper +install -Dm755 data/lib/pkgcore/shell/bin/pkgcore-sh-helper %{buildroot}%{_bindir}/pkgcore-sh-helper + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.rst +%license LICENSE +%{_bindir}/patom +%{_bindir}/pclean +%{_bindir}/pclonecache +%{_bindir}/pconfig +%{_bindir}/pebuild +%{_bindir}/pinspect +%{_bindir}/pmaint +%{_bindir}/pmerge +%{_bindir}/pquery +%{_bindir}/pkgcore-ebuild-helper +%{_bindir}/pkgcore-ipc-helper +%{_bindir}/pkgcore-sh-helper +%{_usr}/lib/%{pypi_name}/ +%{_datadir}/%{pypi_name}/* + +%changelog +* Fri Feb 13 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/pkgcore/update.rhai b/anda/langs/python/pkgcore/update.rhai new file mode 100644 index 0000000000..4bd0cd238a --- /dev/null +++ b/anda/langs/python/pkgcore/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("pkgcore")); diff --git a/anda/langs/python/posthog/posthog.spec b/anda/langs/python/posthog/posthog.spec index 75f301742a..7b395780cd 100644 --- a/anda/langs/python/posthog/posthog.spec +++ b/anda/langs/python/posthog/posthog.spec @@ -2,8 +2,8 @@ %global _desc Send usage data from your Python code to PostHog. Name: python-%{pypi_name} -Version: 7.6.0 -Release: 1%?dist +Version: 7.9.12 +Release: 1%{?dist} Summary: Send usage data from your Python code to PostHog License: MIT URL: https://posthog.com/docs/libraries/python diff --git a/anda/langs/python/protobuf/python3-protobuf.spec b/anda/langs/python/protobuf/python3-protobuf.spec index 25407a2dfa..5baebc42de 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: 6.33.4 +Version: 7.34.0 Release: 1%?dist Summary: Protocol Buffers diff --git a/anda/langs/python/proton-core/anda.hcl b/anda/langs/python/proton-core/anda.hcl new file mode 100644 index 0000000000..a653ad4946 --- /dev/null +++ b/anda/langs/python/proton-core/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + arches = ["x86_64"] + 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 new file mode 100644 index 0000000000..28cf1ab883 --- /dev/null +++ b/anda/langs/python/proton-core/proton-core.spec @@ -0,0 +1,46 @@ +%define unmangled_name proton-core +%define github_repo_name python-proton-core +%global _desc The proton-core component contains core logic used by the other Proton components. + +Name: python-proton-core +Version: 0.7.0 +Release: 1%?dist +Summary: %{unmangled_name} library +License: GPL-3.0-or-later +URL: https://github.com/ProtonVPN/%{github_repo_name} +Source: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz + +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-setuptools +BuildArch: noarch + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{unmangled_name} +Summary: %{summary} +%{?python_provide:%python_provide python3-%{unmangled_name}} + +%description -n python3-%{unmangled_name} +%_desc + +%prep +%autosetup + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files proton + +%files -n python3-%{unmangled_name} -f %{pyproject_files} +%doc README.md +%license LICENSE + +%changelog +* Tue Feb 10 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/proton-core/update.rhai b/anda/langs/python/proton-core/update.rhai new file mode 100644 index 0000000000..867628725e --- /dev/null +++ b/anda/langs/python/proton-core/update.rhai @@ -0,0 +1 @@ +rpm.version(gh_tag("ProtonVPN/python-proton-core")); 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 c926f90346..787341faa3 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 @@ -1,9 +1,11 @@ %global pypi_name proton-vpn-api-core %global _desc A facade to the other Proton VPN components, exposing a uniform API to the available Proton VPN services. +%global __requires_exclude ^python3\\.14dist\\(proton-vpn-local-agent\\)$ + Name: python-%{pypi_name} -Version: 4.14.3 -Release: 1%?dist +Version: 4.16.0 +Release: 1%{?dist} Summary: A facade to the other Proton VPN components License: GPL-3.0-Only URL: https://github.com/ProtonVPN/python-proton-vpn-api-core @@ -22,6 +24,7 @@ Packager: Owen Zimmerman %package -n python3-%{pypi_name} Summary: %{summary} Provides: %{pypi_name} +Requires: python3-proton-vpn-local-agent %{?python_provide:%python_provide python3-%{pypi_name}} %description -n python3-%{pypi_name} diff --git a/anda/langs/python/proton-vpn-local-agent/anda.hcl b/anda/langs/python/proton-vpn-local-agent/anda.hcl index 21efd6c7e5..23e5fb3841 100644 --- a/anda/langs/python/proton-vpn-local-agent/anda.hcl +++ b/anda/langs/python/proton-vpn-local-agent/anda.hcl @@ -2,4 +2,7 @@ rpm { spec = "proton-vpn-local-agent.spec" } + labels { + sccache = 0 + } } 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 98bba73ec6..3a449df9e8 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 @@ -1,11 +1,12 @@ %define debug_package %{nil} +%define __python /usr/bin/python3 %global pypi_name proton-vpn-local-agent %global _desc Proton VPN local agent written in Rust. Name: python-%{pypi_name} -Version: 1.6.0 -Release: 1%?dist +Version: 1.6.1 +Release: 1%{?dist} Summary: Proton VPN local agent written in Rust License: GPL-3.0-only URL: https://github.com/ProtonVPN/local-agent-rs @@ -14,6 +15,9 @@ Source0: %url/archive/refs/tags/%version.tar.gz BuildRequires: python3-devel BuildRequires: cargo-rpm-macros +# Really cursed but there is no pyproject.toml or setup.py in this package to auto-provide this, and proton-vpn needs this +%dnl Provides: python3.14dist(proton-vpn-local-agent) + Packager: Owen Zimmerman %description @@ -40,13 +44,12 @@ popd %install pushd %{name} -install -Dm0644 target/rpm/libpython_proton_vpn_local_agent.so %{buildroot}%{_libdir}/proton/local_agent.so +install -Dm0644 target/release/libpython_proton_vpn_local_agent.so %{buildroot}%{python_sitearch}/proton/vpn/local_agent.so popd %files -n python3-%{pypi_name} %doc README.md CODEOWNERS -%dir %{_libdir}/proton -%{_libdir}/proton/local_agent.so +%{python_sitearch}/proton/vpn/local_agent.so %changelog * Sun Jan 18 2026 Owen Zimmerman diff --git a/anda/langs/python/proxy-tools/anda.hcl b/anda/langs/python/proxy-tools/anda.hcl new file mode 100644 index 0000000000..86f1b12c0e --- /dev/null +++ b/anda/langs/python/proxy-tools/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "proxy-tools.spec" + } +} diff --git a/anda/langs/python/proxy-tools/proxy-tools.spec b/anda/langs/python/proxy-tools/proxy-tools.spec new file mode 100644 index 0000000000..5aa2d160d7 --- /dev/null +++ b/anda/langs/python/proxy-tools/proxy-tools.spec @@ -0,0 +1,48 @@ +%global pypi_name proxy_tools +%global _desc Simple (hopefuly useful) Proxy (as in the GoF design pattern) implementation for Python. + +Name: python-%{pypi_name} +Version: 0.1.0 +Release: 1%?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 +Source0: %{pypi_source} +Source1: https://github.com/jtushman/proxy_tools/blob/master/LICENSE.txt +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} +cp %{S:1} . + +%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 +* Wed Feb 25 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/proxy-tools/update.rhai b/anda/langs/python/proxy-tools/update.rhai new file mode 100644 index 0000000000..ca96bafaed --- /dev/null +++ b/anda/langs/python/proxy-tools/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("proxy_tools")); diff --git a/anda/langs/python/pyee/pyee.spec b/anda/langs/python/pyee/pyee.spec index a79d7b7814..53ed6e9416 100644 --- a/anda/langs/python/pyee/pyee.spec +++ b/anda/langs/python/pyee/pyee.spec @@ -2,7 +2,7 @@ %global _desc A rough port of Node.js's EventEmitter to Python with a few tricks of its own. Name: python-%{pypi_name} -Version: 13.0.0 +Version: 13.0.1 Release: 1%?dist Summary: A rough port of Node.js's EventEmitter to Python with a few tricks of its own License: MIT diff --git a/anda/langs/python/pyfluidsynth/anda.hcl b/anda/langs/python/pyfluidsynth/anda.hcl new file mode 100644 index 0000000000..e750524504 --- /dev/null +++ b/anda/langs/python/pyfluidsynth/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "pyfluidsynth.spec" + } +} diff --git a/anda/langs/python/pyfluidsynth/pyfluidsynth.spec b/anda/langs/python/pyfluidsynth/pyfluidsynth.spec new file mode 100644 index 0000000000..6b105a8db5 --- /dev/null +++ b/anda/langs/python/pyfluidsynth/pyfluidsynth.spec @@ -0,0 +1,49 @@ +%global pypi_name pyfluidsynth +%global _desc Python bindings for FluidSynth. + +Name: python-%{pypi_name} +Version: 1.3.4 +Release: 1%?dist +Summary: Python bindings for FluidSynth +License: LGPL-2.1 +URL: https://github.com/nwhitehead/pyfluidsynth +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +BuildRequires: python3-build + +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 pyfluidsynth-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install + +%files -n python3-%{pypi_name} +%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/* + +%changelog +* Sat Jan 24 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/pyfluidsynth/update.rhai b/anda/langs/python/pyfluidsynth/update.rhai new file mode 100644 index 0000000000..b40456f677 --- /dev/null +++ b/anda/langs/python/pyfluidsynth/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("pyfluidsynth")); diff --git a/anda/langs/python/pyproject-parser/anda.hcl b/anda/langs/python/pyproject-parser/anda.hcl new file mode 100644 index 0000000000..3225ab5eed --- /dev/null +++ b/anda/langs/python/pyproject-parser/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "pyproject-parser.spec" + } +} diff --git a/anda/langs/python/pyproject-parser/pyproject-parser.spec b/anda/langs/python/pyproject-parser/pyproject-parser.spec new file mode 100644 index 0000000000..f639e92dc5 --- /dev/null +++ b/anda/langs/python/pyproject-parser/pyproject-parser.spec @@ -0,0 +1,50 @@ +%global pypi_name pyproject-parser +%global _desc Parser for 'pyproject.toml' + +Name: python-%{pypi_name} +Version: 0.14.0 +Release: 1%?dist +Summary: Parser for 'pyproject.toml' +License: MIT +URL: https://pyproject-parser.readthedocs.io/en/latest/ +Source0: https://github.com/repo-helper/pyproject-parser/archive/refs/tags/v%{version}.tar.gz +BuildArch: noarch + +BuildRequires: python3-pip +BuildRequires: python3-devel +BuildRequires: python3-hatch-requirements-txt + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-%{pypi_name} +Summary: %{summary} +Provides: pyvcd +%{?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 pyproject_parser + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.rst +%license LICENSE +%{_bindir}/pyproject-fmt +%{_bindir}/pyproject-info +%{_bindir}/pyproject-parser +%{_bindir}/check-pyproject + +%changelog +* Sat Sep 27 2025 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/pyproject-parser/update.rhai b/anda/langs/python/pyproject-parser/update.rhai new file mode 100644 index 0000000000..5f6f39092d --- /dev/null +++ b/anda/langs/python/pyproject-parser/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("pyproject-parser")); diff --git a/anda/langs/python/pyprojectize/anda.hcl b/anda/langs/python/pyprojectize/anda.hcl new file mode 100644 index 0000000000..e6190f728e --- /dev/null +++ b/anda/langs/python/pyprojectize/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "pyprojectize.spec" + } +} diff --git a/anda/langs/python/pyprojectize/pyprojectize.spec b/anda/langs/python/pyprojectize/pyprojectize.spec new file mode 100644 index 0000000000..0ab44f7b96 --- /dev/null +++ b/anda/langs/python/pyprojectize/pyprojectize.spec @@ -0,0 +1,48 @@ +%global pypi_name pyprojectize +%global _desc Convert a spec file from py3_build etc. macros to pyproject_*. + +Name: python-%{pypi_name} +Version: 1a7 +Release: 1%?dist +Summary: Convert a spec file from py3_build etc. macros to pyproject_* +License: MIT-0 +URL: https://github.com/hroncok/pyprojectize +Source0: %{pypi_source} + +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-wheel +BuildRequires: python3-hatchling +BuildArch: noarch + +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 pyprojectize + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md +%license LICENSE +%{_bindir}/pyprojectize + +%changelog +* Mon Mar 09 2026 Owen Zimmerman - 1a7-1 +- Initial commit diff --git a/anda/langs/python/pyprojectize/update.rhai b/anda/langs/python/pyprojectize/update.rhai new file mode 100644 index 0000000000..98cd6f1abe --- /dev/null +++ b/anda/langs/python/pyprojectize/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("pyprojectize")); diff --git a/anda/langs/python/pywal16/python-pywal16.spec b/anda/langs/python/pywal16/python-pywal16.spec index ee922f14c2..8b3b4e2907 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.13 -Release: 2%{?dist} +Version: 3.8.14 +Release: 1%?dist Summary: 16 color fork of the original Pywal License: MIT URL: https://github.com/eylles/pywal16 diff --git a/anda/langs/python/shippinglabel/anda.hcl b/anda/langs/python/shippinglabel/anda.hcl new file mode 100644 index 0000000000..fb253269d5 --- /dev/null +++ b/anda/langs/python/shippinglabel/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "shippinglabel.spec" + } +} diff --git a/anda/langs/python/shippinglabel/shippinglabel.spec b/anda/langs/python/shippinglabel/shippinglabel.spec new file mode 100644 index 0000000000..724a7121c1 --- /dev/null +++ b/anda/langs/python/shippinglabel/shippinglabel.spec @@ -0,0 +1,45 @@ +%global pypi_name shippinglabel +%global _desc Utilities for handling packages. + +Name: python-%{pypi_name} +Version: 2.3.0 +Release: 1%?dist +Summary: Utilities for handling packages +License: MIT +URL: https://shippinglabel.readthedocs.io/en/latest/ +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-hatch-requirements-txt + +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 shippinglabel + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.rst +%license LICENSE + +%changelog +* Sat Mar 14 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/shippinglabel/update.rhai b/anda/langs/python/shippinglabel/update.rhai new file mode 100644 index 0000000000..d9a05c619d --- /dev/null +++ b/anda/langs/python/shippinglabel/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("shippinglabel")); diff --git a/anda/langs/python/sounddevice/sounddevice.spec b/anda/langs/python/sounddevice/sounddevice.spec index 6237876197..3aaf34a7d8 100644 --- a/anda/langs/python/sounddevice/sounddevice.spec +++ b/anda/langs/python/sounddevice/sounddevice.spec @@ -2,7 +2,7 @@ %global _desc 🔉 Play and Record Sound with Python 🐍. Name: python-%{pypi_name} -Version: 0.5.3 +Version: 0.5.5 Release: 1%?dist Summary: 🔉 Play and Record Sound with Python 🐍 License: MIT diff --git a/anda/langs/python/spake2/spake2.spec b/anda/langs/python/spake2/spake2.spec index 64061662c8..d223f203db 100644 --- a/anda/langs/python/spake2/spake2.spec +++ b/anda/langs/python/spake2/spake2.spec @@ -40,9 +40,6 @@ Summary: %{summary} %files -n python3-%{pypi_name} -f %{pyproject_files} %doc README.md %license LICENSE -%ghost %python3_sitelib/__pycache__/*.cpython-*.pyc -%ghost %python3_sitelib/%{name}/subcommands/__pycache__/*.cpython-*.pyc -%python3_sitelib/spake2-%version.dist-info/* %changelog * Mon Nov 03 2025 Owen Zimmerman diff --git a/anda/langs/python/superisoupdater/superisoupdater.spec b/anda/langs/python/superisoupdater/superisoupdater.spec index a7b7751d77..66186f436a 100644 --- a/anda/langs/python/superisoupdater/superisoupdater.spec +++ b/anda/langs/python/superisoupdater/superisoupdater.spec @@ -2,7 +2,7 @@ %global _desc A powerful tool to conveniently update all of your ISOs! Name: python-%{pypi_name} -Version: 1.4.1 +Version: 1.5.0 Release: 1%?dist Summary: %{_desc} License: GPLv3 diff --git a/anda/langs/python/types-colorama/types-colorama.spec b/anda/langs/python/types-colorama/types-colorama.spec index 7997760d29..5efe8b8ad4 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 a3568ac8d9be04e7a10a6453068f4970e42074d5 -%global commit_date 20260121 +%global commit 50ec9108eb191ab96d9ab766e506a7c680d5f3d6 +%global commit_date 20260319 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global pypi_name types-colorama @@ -7,7 +7,7 @@ Name: python-%{pypi_name} Version: 0~%{commit_date}git.%shortcommit -Release: 1%?dist +Release: 1%{?dist} Summary: Typing stubs for colorama License: Apache-2.0 URL: https://github.com/python/typeshed diff --git a/anda/langs/python/upiano/anda.hcl b/anda/langs/python/upiano/anda.hcl new file mode 100644 index 0000000000..88ed01256a --- /dev/null +++ b/anda/langs/python/upiano/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "upiano.spec" + } +} diff --git a/anda/langs/python/upiano/update.rhai b/anda/langs/python/upiano/update.rhai new file mode 100644 index 0000000000..4ad97822e6 --- /dev/null +++ b/anda/langs/python/upiano/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("upiano")); diff --git a/anda/langs/python/upiano/upiano.spec b/anda/langs/python/upiano/upiano.spec new file mode 100644 index 0000000000..4345218d4c --- /dev/null +++ b/anda/langs/python/upiano/upiano.spec @@ -0,0 +1,50 @@ +%global pypi_name upiano +%global _desc Terminal Piano App. + +Name: python-%{pypi_name} +Version: 0.1.2 +Release: 1%?dist +Summary: Terminal Piano App +License: MIT +URL: https://github.com/eliasdorneles/upiano +Source0: %{pypi_source} +Source1: %url/blob/master/LICENSE +BuildArch: noarch + +BuildRequires: python3-devel +BuildRequires: python3-wheel +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 upiano-%{version} +cp %{SOURCE1} . + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files upiano + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.md +%license LICENSE +%{_bindir}/upiano + +%changelog +* Sat Jan 24 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/python/whey/anda.hcl b/anda/langs/python/whey/anda.hcl new file mode 100644 index 0000000000..6e5dc6a71f --- /dev/null +++ b/anda/langs/python/whey/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "whey.spec" + } +} diff --git a/anda/langs/python/whey/update.rhai b/anda/langs/python/whey/update.rhai new file mode 100644 index 0000000000..d85c462dce --- /dev/null +++ b/anda/langs/python/whey/update.rhai @@ -0,0 +1 @@ +rpm.version(pypi("whey")); diff --git a/anda/langs/python/whey/whey.spec b/anda/langs/python/whey/whey.spec new file mode 100644 index 0000000000..11b6c0dbce --- /dev/null +++ b/anda/langs/python/whey/whey.spec @@ -0,0 +1,48 @@ +%global pypi_name whey +%global _desc A simple Python wheel builder for simple projects. + +Name: python-%{pypi_name} +Version: 0.1.1 +Release: 1%?dist +Summary: A simple Python wheel builder for simple projects +License: MIT +URL: https://github.com/deepin-community/python-whey +Source0: %{pypi_source} +BuildArch: noarch + +BuildRequires: python3-build +BuildRequires: python3-setuptools +BuildRequires: python3-wheel +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 whey-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files whey + +%files -n python3-%{pypi_name} -f %{pyproject_files} +%doc README.rst +%license LICENSE +%{_bindir}/whey + +%changelog +* Sat Mar 14 2026 Owen Zimmerman +- Initial commit diff --git a/anda/langs/rust/dysk/anda.hcl b/anda/langs/rust/dysk/anda.hcl new file mode 100644 index 0000000000..92007ff08b --- /dev/null +++ b/anda/langs/rust/dysk/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "rust-dysk.spec" + } +} diff --git a/anda/langs/rust/dysk/rust-dysk.spec b/anda/langs/rust/dysk/rust-dysk.spec new file mode 100644 index 0000000000..21f798887d --- /dev/null +++ b/anda/langs/rust/dysk/rust-dysk.spec @@ -0,0 +1,58 @@ +# Generated by rust2rpm 28 +%bcond check 1 + +%global crate dysk + +Name: rust-dysk +Version: 3.6.0 +Release: 1%?dist +Summary: Give information on mounted filesystems + +License: MIT +URL: https://crates.io/crates/dysk +Source: %{crates_source} +Packager: madonuko + +BuildRequires: cargo-rpm-macros >= 24 + +%global _description %{expand: +Give information on mounted filesystems.} + +%description %{_description} + +%package -n %{crate} +URL: https://dystroy.org/dysk +Summary: %{summary} +License: (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-2-Clause OR MIT OR Apache-2.0) AND MIT AND (MIT OR Apache-2.0) AND (Unlicense OR MIT) +# LICENSE.dependencies contains a full license breakdown + +%description -n %{crate} %{_description} + +%files -n %{crate} +%license LICENSE +%license LICENSE.dependencies +%doc CHANGELOG.md +%doc CONTRIBUTING.md +%doc README.md +%{_bindir}/dysk + +%prep +%autosetup -n %{crate}-%{version} -p1 +%cargo_prep_online + +%build +%{cargo_license_summary_online} +%{cargo_license_online} > LICENSE.dependencies +%cargo_build + +%install +%cargo_install + +%if %{with check} +%check +%cargo_test +%endif + +%changelog +* Thu Mar 05 2026 madonuko - 3.6.0-1 +- Initial package. diff --git a/anda/langs/rust/dysk/update.rhai b/anda/langs/rust/dysk/update.rhai new file mode 100644 index 0000000000..6370e40910 --- /dev/null +++ b/anda/langs/rust/dysk/update.rhai @@ -0,0 +1 @@ +rpm.version(crates("dysk")); diff --git a/anda/langs/rust/fresh/fresh.spec b/anda/langs/rust/fresh/fresh.spec index 9b45b95f99..50e66a8bf4 100644 --- a/anda/langs/rust/fresh/fresh.spec +++ b/anda/langs/rust/fresh/fresh.spec @@ -1,13 +1,14 @@ %undefine __brp_mangle_shebangs Name: fresh -Version: 0.1.86 -Release: 1%?dist +Version: 0.2.17 +Release: 1%{?dist} Summary: Text editor for your terminal: easy, powerful and fast -URL: https://sinelaw.github.io/fresh/ +URL: https://getfresh.dev Source0: https://github.com/sinelaw/fresh/archive/refs/tags/v%version.tar.gz -License: GPL-2.0-Only +License: GPL-2.0-only BuildRequires: cargo anda-srpm-macros cargo-rpm-macros mold +BuildRequires: clang-devel Packager: Owen Zimmerman @@ -15,10 +16,10 @@ Packager: Owen Zimmerman %{summary}. %package doc -Summary: Documentaion for %{name} +Summary: Documentation for %{name} %description doc -Documentaion for %{name}. +Documentation for %{name}. %prep %autosetup @@ -28,17 +29,17 @@ Documentaion for %{name}. %cargo_build %install -install -Dm755 target/rpm/%{name} %{buildroot}%{_bindir}/%{name} -install -Dm644 flatpak/io.github.sinelaw.fresh.svg %{buildroot}%{_scalableiconsdir}/io.github.sinelaw.fresh.svg -install -Dm644 flatpak/io.github.sinelaw.fresh.desktop %{buildroot}%{_appsdir}/io.github.sinelaw.fresh.desktop -install -Dm644 flatpak/io.github.sinelaw.fresh.metainfo.xml %{buildroot}%{_metainfodir}/io.github.sinelaw.fresh.metainfo.xml +install -Dm755 target/rpm/%{name} %{buildroot}%{_bindir}/%{name} +install -Dm644 crates/fresh-editor/flatpak/io.github.sinelaw.fresh.svg %{buildroot}%{_scalableiconsdir}/io.github.sinelaw.fresh.svg +install -Dm644 crates/fresh-editor/flatpak/io.github.sinelaw.fresh.desktop %{buildroot}%{_appsdir}/io.github.sinelaw.fresh.desktop +install -Dm644 crates/fresh-editor/flatpak/io.github.sinelaw.fresh.metainfo.xml %{buildroot}%{_metainfodir}/io.github.sinelaw.fresh.metainfo.xml %{cargo_license_online} > LICENSE.dependencies mkdir -p %{buildroot}%{_pkgdocdir} -cp -a docs/* %{buildroot}%{_pkgdocdir}/ +cp -a docs/* %{buildroot}%{_pkgdocdir}/ %files %license LICENSE LICENSE.dependencies -%doc README.md REFACTORING_PLAN.md CHANGELOG.md +%doc README.md CHANGELOG.md %{_bindir}/%{name} %{_scalableiconsdir}/io.github.sinelaw.fresh.svg %{_appsdir}/io.github.sinelaw.fresh.desktop diff --git a/anda/langs/rust/gitoxide/rust-gitoxide.spec b/anda/langs/rust/gitoxide/rust-gitoxide.spec index baf6bad498..bf2ea04a8f 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.49.0 +Version: 0.51.0 Release: 1%?dist Summary: Command-line application for interacting with git repositories diff --git a/anda/langs/rust/koji/rust-koji.spec b/anda/langs/rust/koji/rust-koji.spec index fcdd00c7b4..8cc6e7ac9a 100644 --- a/anda/langs/rust/koji/rust-koji.spec +++ b/anda/langs/rust/koji/rust-koji.spec @@ -5,7 +5,7 @@ %global altdiffname cococonscious-%{crate} Name: rust-koji -Version: 3.3.1 +Version: 3.4.0 Release: 1%?dist Summary: Interactive CLI for creating conventional commits diff --git a/anda/langs/rust/kondo/rust-kondo.spec b/anda/langs/rust/kondo/rust-kondo.spec index ede9507850..75f668fa47 100644 --- a/anda/langs/rust/kondo/rust-kondo.spec +++ b/anda/langs/rust/kondo/rust-kondo.spec @@ -4,8 +4,8 @@ %global crate kondo Name: rust-kondo -Version: 0.8 -Release: 1%{?dist} +Version: 0.9 +Release: 1%?dist Summary: Filesystem cleaning tool for projects License: MIT diff --git a/anda/langs/rust/rmpc/rmpc.spec b/anda/langs/rust/rmpc/rmpc.spec index a9655027f7..ece1b5bbf5 100644 --- a/anda/langs/rust/rmpc/rmpc.spec +++ b/anda/langs/rust/rmpc/rmpc.spec @@ -1,7 +1,7 @@ %undefine __brp_mangle_shebangs Name: rmpc -Version: 0.10.0 +Version: 0.11.0 Release: 1%?dist Summary: A modern, configurable, terminal based MPD Client with album art support via various terminal image protocols URL: https://rmpc.mierak.dev/ diff --git a/anda/langs/rust/usage/rust-usage-cli.spec b/anda/langs/rust/usage/rust-usage-cli.spec index 8b07eaebfa..61f237b442 100644 --- a/anda/langs/rust/usage/rust-usage-cli.spec +++ b/anda/langs/rust/usage/rust-usage-cli.spec @@ -4,8 +4,8 @@ %global crate usage-cli Name: rust-usage-cli -Version: 2.13.1 -Release: 1%?dist +Version: 3.0.0 +Release: 1%{?dist} Summary: CLI for working with usage-based CLIs License: MIT diff --git a/anda/langs/rust/xwayland-satellite/anda.hcl b/anda/langs/rust/xwayland-satellite/anda.hcl deleted file mode 100644 index 08be56162c..0000000000 --- a/anda/langs/rust/xwayland-satellite/anda.hcl +++ /dev/null @@ -1,5 +0,0 @@ -project pkg { - rpm { - spec = "xwayland-satellite.spec" - } -} diff --git a/anda/langs/rust/xwayland-satellite/update.rhai b/anda/langs/rust/xwayland-satellite/update.rhai deleted file mode 100644 index ea68a4030a..0000000000 --- a/anda/langs/rust/xwayland-satellite/update.rhai +++ /dev/null @@ -1 +0,0 @@ -rpm.version(gh("supreeeme/xwayland-satellite")); diff --git a/anda/langs/rust/xwayland-satellite/xwayland-satellite.spec b/anda/langs/rust/xwayland-satellite/xwayland-satellite.spec deleted file mode 100644 index c1741b21ad..0000000000 --- a/anda/langs/rust/xwayland-satellite/xwayland-satellite.spec +++ /dev/null @@ -1,32 +0,0 @@ -Name: xwayland-satellite -Version: 0.8 -Release: 1%?dist -Summary: Xwayland outside your Wayland. -License: MPL-2.0 -URL: https://github.com/supreeeme/xwayland-satellite -Source0: %url/archive/refs/tags/v%version.tar.gz -BuildRequires: anda-srpm-macros cargo-rpm-macros mold -BuildRequires: pkgconfig(xcb) -BuildRequires: xcb-util-cursor-devel -BuildRequires: clang-devel - -%description -xwayland-satellite grants rootless Xwayland integration to any Wayland -compositor implementing xdg_wm_base. This is particularly useful for -compositors that (understandably) do not want to go through implementing -support for rootless Xwayland themselves. - -%prep -%autosetup -%cargo_prep_online - -%build -%cargo_build - -%install -%cargo_install - -%files -%doc README.md -%license LICENSE -%_bindir/xwayland-satellite diff --git a/anda/langs/rust/yazi/yazi.spec b/anda/langs/rust/yazi/yazi.spec index 17d7105a92..c19630dbb9 100644 --- a/anda/langs/rust/yazi/yazi.spec +++ b/anda/langs/rust/yazi/yazi.spec @@ -1,12 +1,12 @@ %undefine __brp_mangle_shebangs Name: yazi -Version: 26.1.4 -Release: 1%?dist +Version: 26.1.22 +Release: 2%?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 -License: MIT +License: MIT 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 ISC 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-2-Clause AND BSD-3-Clause AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND (BSD-3-Clause OR Apache-2.0) AND BSL-1.0 AND CC0-1.0 AND (CC0-1.0 OR Apache-2.0) AND ISC AND (MIT OR Apache-2.0 OR BSD-1-Clause) AND (MIT OR Apache-2.0 OR CC0-1.0) 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) BuildRequires: cargo anda-srpm-macros cargo-rpm-macros mold Packager: Owen Zimmerman diff --git a/anda/langs/rust/youki/youki.spec b/anda/langs/rust/youki/youki.spec index cf8d762238..a028615cff 100644 --- a/anda/langs/rust/youki/youki.spec +++ b/anda/langs/rust/youki/youki.spec @@ -1,5 +1,5 @@ Name: youki -Version: 0.5.7 +Version: 0.6.0 Release: 1%?dist Summary: A container runtime written in Rust diff --git a/anda/langs/rust/zoi/rust-zoi-rs.spec b/anda/langs/rust/zoi/rust-zoi-rs.spec index 6332424b73..ad8afd7c38 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.4.0 +%global crate_version 1.8.5 Name: rust-zoi-rs Version: %(echo %crate_version | sed 's/-/~/g') diff --git a/anda/langs/vala/vala-lint-nightly/vala-lint-nightly.spec b/anda/langs/vala/vala-lint-nightly/vala-lint-nightly.spec index c1d4c11cd7..e0c155982b 100644 --- a/anda/langs/vala/vala-lint-nightly/vala-lint-nightly.spec +++ b/anda/langs/vala/vala-lint-nightly/vala-lint-nightly.spec @@ -1,9 +1,9 @@ %global real_name vala-lint -%global commit a1d1a7bc0f740920e592fd788a836c402fd9825c +%global commit 28dbf44dd2c5ec2fc7273982d35ff8cb0ef46283 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20250804 +%global commit_date 20260224 %global snapshot_info %{commit_date}.%{shortcommit} Name: vala-lint-nightly diff --git a/anda/langs/vala/vala-nightly/vala-nightly.spec b/anda/langs/vala/vala-nightly/vala-nightly.spec index ee4f5b948d..d9a4664784 100644 --- a/anda/langs/vala/vala-nightly/vala-nightly.spec +++ b/anda/langs/vala/vala-nightly/vala-nightly.spec @@ -3,16 +3,16 @@ %global priority 90 %global real_name vala -%global commit d680994c54dd34b8bd3bd808f0023be19ea647da +%global commit 662e452f82cec0bb00ebc204bfefa77b0af0fa37 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global repo https://gitlab.gnome.org/GNOME/%{real_name}.git -%global commit_date 20250903 +%global commit_date 20260319 %global snapshot_info %{commit_date}.%{shortcommit} Name: vala-nightly Version: 0.58.0^%{snapshot_info} -Release: 1%?dist +Release: 1%{?dist} Summary: A modern programming language for GNOME # Most files are LGPLv2.1+, curses.vapi is 2-clause BSD diff --git a/anda/langs/zig/bootstrap/setup.sh b/anda/langs/zig/bootstrap/setup.sh index b243355ff4..04b3e8a3e1 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.2261+d6b3dd25a +version=0.16.0-dev.2915+065c6e794 mirrors=() diff --git a/anda/langs/zig/bootstrap/zig-master-bootstrap.spec b/anda/langs/zig/bootstrap/zig-master-bootstrap.spec index 695c7ac1b6..45c2b2075a 100644 --- a/anda/langs/zig/bootstrap/zig-master-bootstrap.spec +++ b/anda/langs/zig/bootstrap/zig-master-bootstrap.spec @@ -7,7 +7,7 @@ %define llvm_compat 20 %endif %global llvm_version 20.0.0 -%global ver 0.16.0-dev.2261+d6b3dd25a +%global ver 0.16.0-dev.2915+065c6e794 %bcond bootstrap 1 %bcond docs %{without bootstrap} %bcond test 1 @@ -40,7 +40,7 @@ Name: zig-master Version: %(echo %{ver} | sed 's/-/~/g') -Release: 2%{?dist} +Release: 1%{?dist} Summary: Bootstrapped build of Zig from master. 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 diff --git a/anda/langs/zig/master/zig-master.spec b/anda/langs/zig/master/zig-master.spec index 17e1998421..e3e2e5c2f9 100644 --- a/anda/langs/zig/master/zig-master.spec +++ b/anda/langs/zig/master/zig-master.spec @@ -13,8 +13,8 @@ %global zig_cache_dir %{builddir}/zig-cache Name: zig-master -Version: 0.16.0~dev.2261+d6b3dd25a -Release: 3%{?dist} +Version: 0.16.0~dev.2694+74f361a5c +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 diff --git a/anda/lib/apparmor/apparmor.spec b/anda/lib/apparmor/apparmor.spec index 9fca368062..11469af322 100644 --- a/anda/lib/apparmor/apparmor.spec +++ b/anda/lib/apparmor/apparmor.spec @@ -6,8 +6,8 @@ %bcond_with tests Name: apparmor -Version: 4.1.3 -Release: 1%?dist +Version: 4.1.7 +Release: 1%{?dist} Summary: AppArmor userspace components %define baseversion %(echo %{version} | cut -d. -f-2) @@ -185,6 +185,9 @@ install -Dm644 %{SOURCE1} %{buildroot}%{_presetdir}/70-apparmor.preset find %{buildroot} \( -name "*.a" -o -name "*.la" \) -delete +mkdir -p %buildroot%python3_sitearch/LibAppArmor +mv %buildroot%python3_sitearch/{LibAppArmor.py,_LibAppArmor.cpython-*-linux-gnu.so,__pycache__/LibAppArmor.*} %buildroot%python3_sitearch/LibAppArmor/ + %find_lang aa-binutils %find_lang apparmor-parser %find_lang apparmor-utils @@ -276,11 +279,11 @@ make -C utils check %{_bindir}/aa-exec %{_bindir}/aa-features-abi %{_sbindir}/aa-load -%{_sbindir}/aa-show-usage -%dnl %{_sbindir}/aa-teardown -%dnl %{_unitdir}/apparmor.service +#{_sbindir}/aa-show-usage +%{_sbindir}/aa-teardown +%{_unitdir}/apparmor.service %{_presetdir}/70-apparmor.preset -%dnl %{_prefix}/lib/apparmor +%{_prefix}/lib/apparmor %dir %{_sysconfdir}/apparmor # FIXME: the confusion…? how did this happen %config(noreplace) %{_sysconfdir}/apparmor/default_unconfined.template @@ -294,8 +297,8 @@ make -C utils check %{_mandir}/man7/apparmor.7.gz %{_mandir}/man7/apparmor_xattrs.7.gz %{_mandir}/man8/aa-load.8.gz -%{_mandir}/man8/aa-show-usage.8.gz -%dnl %{_mandir}/man8/aa-teardown.8.gz +#{_mandir}/man8/aa-show-usage.8.gz +%{_mandir}/man8/aa-teardown.8.gz %{_mandir}/man8/apparmor_parser.8.gz %files utils -f apparmor-utils.lang diff --git a/anda/lib/args-hxx/args-hxx.spec b/anda/lib/args-hxx/args-hxx.spec index 53c28571ce..634a4fbcd2 100644 --- a/anda/lib/args-hxx/args-hxx.spec +++ b/anda/lib/args-hxx/args-hxx.spec @@ -1,7 +1,7 @@ %define debug_package %nil Name: args-hxx -Version: 6.4.7 +Version: 6.4.8 Release: 1%?dist Summary: A simple header-only C++ argument parser library License: MIT diff --git a/anda/lib/astal/astal-gtk/astal-gtk.spec b/anda/lib/astal/astal-gtk/astal-gtk.spec index be5f5f2666..3daf143c06 100644 --- a/anda/lib/astal/astal-gtk/astal-gtk.spec +++ b/anda/lib/astal/astal-gtk/astal-gtk.spec @@ -1,10 +1,10 @@ -%global commit 7d1fac8a4b2a14954843a978d2ddde86168c75ef -%global shortcommit 7d1fac8 -%global commit_date 20251127 +%global commit d3fa2117d581b50e63eb3aefbf92d4883fa23f1b +%global shortcommit d3fa211 +%global commit_date 20260315 Name: astal Version: 0^%commit_date.%commit -Release: 1%?dist +Release: 1%{?dist} Summary: Building blocks for creating custom desktop shells License: LGPL-2.1-only URL: https://aylur.github.io/astal diff --git a/anda/lib/astal/astal/astal.spec b/anda/lib/astal/astal/astal.spec index 7c31356877..4e14386472 100644 --- a/anda/lib/astal/astal/astal.spec +++ b/anda/lib/astal/astal/astal.spec @@ -1,11 +1,11 @@ -%global commit 7d1fac8a4b2a14954843a978d2ddde86168c75ef +%global commit d3fa2117d581b50e63eb3aefbf92d4883fa23f1b %global shortcommit %{sub %commit 1 7} -%global commit_date 20251127 +%global commit_date 20260315 Name: astal Version: 0^%commit_date.%shortcommit -Release: 1%?dist +Release: 1%{?dist} Summary: Building blocks for creating custom desktop shells License: LGPL-2.1-only URL: https://aylur.github.io/astal diff --git a/anda/lib/breakpad/breakpad.spec b/anda/lib/breakpad/breakpad.spec index 8964f54b2f..01f71de917 100644 --- a/anda/lib/breakpad/breakpad.spec +++ b/anda/lib/breakpad/breakpad.spec @@ -1,6 +1,6 @@ Name: breakpad Version: 2024.02.16 -Release: 2%?dist +Release: 3%?dist Summary: Google Breakpad crash-reporting system License: BSD-3-Clause Group: System @@ -14,7 +14,7 @@ BuildRequires: pkgconfig(gtest) BuildRequires: pkgconfig(zlib) BuildRequires: anda-srpm-macros -Packager: Willow Reed (willow@willowidk.dev) +Packager: Willow Reed %description A set of client and server components which implement a crash-reporting system. @@ -59,5 +59,5 @@ rm -rf %{buildroot}%{_docdir}/breakpad-0.1 %{_libexecdir}/core_handler %changelog -* Fri Jan 02 2026 Willow Reed +* Fri Jan 02 2026 Willow Reed - Initial commit diff --git a/anda/lib/directxshadercompiler/DirectXShaderCompiler.spec b/anda/lib/directxshadercompiler/DirectXShaderCompiler.spec index 98a8837bc1..61a791ba5d 100644 --- a/anda/lib/directxshadercompiler/DirectXShaderCompiler.spec +++ b/anda/lib/directxshadercompiler/DirectXShaderCompiler.spec @@ -3,8 +3,8 @@ # Metadata. Name: DirectXShaderCompiler -Version: 1.8.2505.1 -Release: 5%?dist +Version: 1.9.2602 +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 6134274fbd..2012807fce 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.14.1 -Release: 5%{?dist} +Version: 0.15.0 +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/glaze/glaze.spec b/anda/lib/glaze/glaze.spec index bf59214b31..bd22b92516 100644 --- a/anda/lib/glaze/glaze.spec +++ b/anda/lib/glaze/glaze.spec @@ -2,8 +2,8 @@ %global debug_package %{nil} Name: glaze-devel -Version: 7.0.1 -Release: 1%?dist +Version: 7.2.1 +Release: 1%{?dist} License: MIT URL: https://stephenberry.github.io/glaze Source: https://github.com/stephenberry/glaze/archive/refs/tags/v%{version}.tar.gz diff --git a/anda/lib/inputtino/inputtino.spec b/anda/lib/inputtino/inputtino.spec index 1b9e31204e..0a17d1a316 100644 --- a/anda/lib/inputtino/inputtino.spec +++ b/anda/lib/inputtino/inputtino.spec @@ -1,4 +1,4 @@ -%global commit 504f0abc7da8ebc351f8300fb2ed98db5438ee48 +%global commit f4ce2b0df536ef309e9ff318f75b460f7097d7c1 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global commitdate 20250816 diff --git a/anda/lib/libayatana-appindicator-glib/anda.hcl b/anda/lib/libayatana-appindicator-glib/anda.hcl new file mode 100644 index 0000000000..21debf4611 --- /dev/null +++ b/anda/lib/libayatana-appindicator-glib/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "libayatana-appindicator-glib.spec" + } +} diff --git a/anda/lib/libayatana-appindicator-glib/libayatana-appindicator-glib.spec b/anda/lib/libayatana-appindicator-glib/libayatana-appindicator-glib.spec new file mode 100644 index 0000000000..c290528f63 --- /dev/null +++ b/anda/lib/libayatana-appindicator-glib/libayatana-appindicator-glib.spec @@ -0,0 +1,68 @@ +%undefine __brp_add_determinism + +Name: libayatana-appindicator-glib +Summary: Ayatana Application Indicators Shared Library +Version: 2.0.1 +Release: 2%?dist +License: GPL-3.0-or-later +Packager: veuxit +URL: https://github.com/AyatanaIndicators/libayatana-appindicator-glib +Source0: %{url}/archive/refs/tags/%{version}.tar.gz + +BuildRequires: cmake +BuildRequires: cmake-extras +BuildRequires: glib2 +BuildRequires: glib2-devel +BuildRequires: gobject-introspection +BuildRequires: gi-docgen +BuildRequires: vala-devel +BuildRequires: vala +BuildRequires: intltool + +%description +Ayatana Application Indicators Shared Library (GLib-2.0 reimplementation, 100% GTK-free, 100% dbusmenu-free) + +%prep +%autosetup -n %{name}-%{version} + +%build +%cmake +%cmake_build + +%install +%cmake_install + +%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}. + +%files devel +%{_includedir}/libayatana-appindicator-glib/ +%{_libdir}/libayatana-appindicator-glib.so +%{_libdir}/pkgconfig/ayatana-appindicator-glib.pc +%{_datadir}/gir-1.0/AyatanaAppIndicatorGlib-2.0.gir +%{_datadir}/vala/vapi/ayatana-appindicator-glib.deps +%{_datadir}/vala/vapi/ayatana-appindicator-glib.vapi + +%package doc +Summary: Documentation for %{name} +BuildArch: noarch + +%description doc +Documentation for %{name}. + +%files doc +%{_datadir}/doc/libayatana-appindicator-glib-dev/ + +%files +%license COPYING +%{_libdir}/libayatana-appindicator-glib.so.2* +%{_libdir}/girepository-1.0/AyatanaAppIndicatorGlib-2.0.typelib + +%changelog +* Fri Feb 27 2026 veux - 2.0.1 +- Initial package release \ No newline at end of file diff --git a/anda/lib/libayatana-appindicator-glib/update.rhai b/anda/lib/libayatana-appindicator-glib/update.rhai new file mode 100644 index 0000000000..69136c0ba6 --- /dev/null +++ b/anda/lib/libayatana-appindicator-glib/update.rhai @@ -0,0 +1 @@ +rpm.version(gh_tag("AyatanaIndicators/libayatana-appindicator-glib")); diff --git a/anda/lib/libde265/libde265.spec b/anda/lib/libde265/libde265.spec index f9baa6453d..42b56f2b93 100644 --- a/anda/lib/libde265/libde265.spec +++ b/anda/lib/libde265/libde265.spec @@ -1,7 +1,7 @@ Name: libde265 Summary: Open H.265 video codec implementation -Version: 1.0.16 -Release: 1%?dist +Version: 1.0.17 +Release: 1%{?dist} License: LGPL-3.0-or-later URL: https://www.libde265.org/ Source0: https://github.com/strukturag/%{name}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz diff --git a/anda/lib/libfprint-tod/libfprint-tod.spec b/anda/lib/libfprint-tod/libfprint-tod.spec index 829b70421e..c8de865f4e 100644 --- a/anda/lib/libfprint-tod/libfprint-tod.spec +++ b/anda/lib/libfprint-tod/libfprint-tod.spec @@ -1,8 +1,8 @@ %global appid org.freedesktop.libfprint Name: libfprint-tod -Version: 1.94.9+tod1 -Release: 1%?dist +Version: 1.95.1+tod1 +Release: 1%{?dist} URL: https://gitlab.freedesktop.org/3v1n0/libfprint/ Source: %{url}/-/archive/v%{version}/libfprint-v%{version}.tar.gz Summary: a light fork of libfprint to expose internal Drivers API in order to create drivers as shared libraries diff --git a/anda/lib/libusermetrics/libusermetrics.spec b/anda/lib/libusermetrics/libusermetrics.spec index bcf897814e..5e299fa946 100644 --- a/anda/lib/libusermetrics/libusermetrics.spec +++ b/anda/lib/libusermetrics/libusermetrics.spec @@ -1,5 +1,5 @@ Name: libusermetrics -Version: 1.4.0 +Version: 1.4.1 Release: 1%?dist Summary: library for retrieving anonymous metrics about users License: GPLv3 AND LGPLv3 AND LGPLv2 diff --git a/anda/lib/lovely-injector/lovely-injector.spec b/anda/lib/lovely-injector/lovely-injector.spec index a8a8a05a51..71ab5f48db 100644 --- a/anda/lib/lovely-injector/lovely-injector.spec +++ b/anda/lib/lovely-injector/lovely-injector.spec @@ -1,6 +1,6 @@ # Generated by rust2rpm 27 %bcond check 0 -%bcond rust_nightly 1 +%bcond rust_nightly 0 %global debug_package %{nil} %if %{with rust_nightly} %define __cargo /usr/bin/env CARGO_HOME=.cargo RUSTC_BOOTSTRAP=1 RUSTFLAGS='%{build_rustflags}' $HOME/.cargo/bin/cargo @@ -9,7 +9,7 @@ %endif Name: lovely-injector -Version: 0.8.0 +Version: 0.9.0 Release: 1%?dist Summary: A runtime lua injector for games built with LÖVE diff --git a/anda/lib/lsp-dsp/liblsp-dsp.spec b/anda/lib/lsp-dsp/liblsp-dsp.spec index 5845af26ec..46079f0578 100644 --- a/anda/lib/lsp-dsp/liblsp-dsp.spec +++ b/anda/lib/lsp-dsp/liblsp-dsp.spec @@ -3,8 +3,8 @@ #define _empty_manifest_terminate_build 0 Name: liblsp-dsp -Version: 1.0.33 -Release: 1%?dist +Version: 1.0.34 +Release: 1%{?dist} Summary: DSP library for signal processing License: LGPL-3.0 #Group: System/Libraries diff --git a/anda/lib/mesa/gamescope.patch b/anda/lib/mesa/gamescope.patch deleted file mode 100644 index fba308b2bc..0000000000 --- a/anda/lib/mesa/gamescope.patch +++ /dev/null @@ -1,88 +0,0 @@ -diff --git a/src/gallium/frontends/dri/loader_dri3_helper.c b/src/gallium/frontends/dri/loader_dri3_helper.c -index 2c8caba08fd..2c9159672dc 100644 ---- a/src/gallium/frontends/dri/loader_dri3_helper.c -+++ b/src/gallium/frontends/dri/loader_dri3_helper.c -@@ -297,6 +297,30 @@ dri3_update_max_num_back(struct loader_dri3_drawable *draw) - } - } - -+static unsigned -+gamescope_swapchain_override() -+{ -+ const char *path = getenv("GAMESCOPE_LIMITER_FILE"); -+ if (!path) -+ return 0; -+ -+ static simple_mtx_t mtx = SIMPLE_MTX_INITIALIZER; -+ static int fd = -1; -+ -+ simple_mtx_lock(&mtx); -+ if (fd < 0) { -+ fd = open(path, O_RDONLY); -+ } -+ simple_mtx_unlock(&mtx); -+ -+ if (fd < 0) -+ return 0; -+ -+ uint32_t override_value = 0; -+ pread(fd, &override_value, sizeof(override_value), 0); -+ return override_value; -+} -+ - void - loader_dri3_set_swap_interval(struct loader_dri3_drawable *draw, int interval) - { -@@ -311,10 +335,12 @@ loader_dri3_set_swap_interval(struct loader_dri3_drawable *draw, int interval) - * PS. changing from value A to B and A < B won't cause swap out of order but - * may still gets wrong target_msc value at the beginning. - */ -- if (draw->swap_interval != interval) -+ if (draw->orig_swap_interval != interval) - loader_dri3_swapbuffer_barrier(draw); - -- draw->swap_interval = interval; -+ draw->orig_swap_interval = interval; -+ if (gamescope_swapchain_override() != 1) -+ draw->swap_interval = interval; - } - - static void -@@ -443,6 +469,12 @@ loader_dri3_drawable_init(xcb_connection_t *conn, - - draw->swap_interval = dri_get_initial_swap_interval(draw->dri_screen_render_gpu); - -+ draw->orig_swap_interval = draw->swap_interval; -+ -+ unsigned gamescope_override = gamescope_swapchain_override(); -+ if (gamescope_override == 1) -+ draw->swap_interval = 1; -+ - dri3_update_max_num_back(draw); - - /* Create a new drawable */ -@@ -1085,6 +1117,12 @@ loader_dri3_swap_buffers_msc(struct loader_dri3_drawable *draw, - if (draw->type == LOADER_DRI3_DRAWABLE_WINDOW) { - dri3_fence_reset(draw->conn, back); - -+ unsigned gamescope_override = gamescope_swapchain_override(); -+ if (gamescope_override == 1) -+ draw->swap_interval = 1; -+ else -+ draw->swap_interval = draw->orig_swap_interval; -+ - /* Compute when we want the frame shown by taking the last known - * successful MSC and adding in a swap interval for each outstanding swap - * request. target_msc=divisor=remainder=0 means "Use glXSwapBuffers() -diff --git a/src/gallium/frontends/dri/loader_dri3_helper.h b/src/gallium/frontends/dri/loader_dri3_helper.h -index 26f138d1b83..3f0f3f66fac 100644 ---- a/src/gallium/frontends/dri/loader_dri3_helper.h -+++ b/src/gallium/frontends/dri/loader_dri3_helper.h -@@ -169,6 +169,7 @@ struct loader_dri3_drawable { - bool block_on_depleted_buffers; - bool queries_buffer_age; - int swap_interval; -+ int orig_swap_interval; - - const struct loader_dri3_vtable *vtable; - diff --git a/anda/lib/mesa/gnome-shell-glthread-disable.patch b/anda/lib/mesa/gnome-shell-glthread-disable.patch deleted file mode 100644 index b2caeb8df5..0000000000 --- a/anda/lib/mesa/gnome-shell-glthread-disable.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up mesa-22.3.0-rc4/src/util/00-mesa-defaults.conf.dma mesa-22.3.0-rc4/src/util/00-mesa-defaults.conf ---- mesa-22.3.0-rc4/src/util/00-mesa-defaults.conf.dma 2022-11-25 10:32:32.175879868 +1000 -+++ mesa-22.3.0-rc4/src/util/00-mesa-defaults.conf 2022-11-25 10:32:43.743067470 +1000 -@@ -653,6 +653,7 @@ TODO: document the other workarounds. - - - -

Installer for Vencord + GPL-3.0+ + + Internet + +
diff --git a/anda/misc/vencord-installer/vencord-installer.spec b/anda/misc/vencord-installer/vencord-installer.spec new file mode 100644 index 0000000000..db34bea370 --- /dev/null +++ b/anda/misc/vencord-installer/vencord-installer.spec @@ -0,0 +1,187 @@ + +%global debug_package %{nil} + +%bcond_without openasar + +%global appstream_component addon +# https://github.com/vencord/installer +%global goipath github.com/Vencord/Installer +Version: 1.4.0 +%global commit 8bd9dfd8de2926bb55cf7709b8c31f0704372cec + +%global appid dev.vencord.Installer + +%gometa -L -f + +%global common_description %{expand: +A cross platform gui/cli app for installing Vencord.} + +%global golicenses LICENSE +%global godocs README.md + +Name: vencord-installer +Release: 1%{?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 +BuildRequires: go-rpm-macros +BuildRequires: go-srpm-macros +BuildRequires: anda-srpm-macros +BuildRequires: gcc-c++ +BuildRequires: pkg-config +BuildRequires: libGL-devel +BuildRequires: libXxf86vm-devel +BuildRequires: libXcursor-devel +BuildRequires: libXi-devel +BuildRequires: libXinerama-devel +BuildRequires: libXrandr-devel +BuildRequires: wayland-devel +BuildRequires: libxkbcommon-devel +BuildRequires: wayland-protocols-devel +BuildRequires: extra-cmake-modules + +%description %{common_description} + +%package cli +Summary: CLI version of %{name} +%description cli %{common_description} (CLI version) + + +%package discord-stable +Summary: Automatic Discord integration for %{name} (stable) +Requires: %{name}-cli +Requires(posttrans): %{name}-cli +%description discord-stable +discord-stable Automatic Discord integration for %{name} (stable branch). + +%package discord-canary +Summary: Automatic Discord integration for %{name} (canary) +Requires: %{name}-cli +Requires(posttrans): %{name}-cli +%description discord-canary +discord-canary Automatic Discord integration for %{name} (canary branch). + +%package discord-ptb +Summary: Automatic Discord integration for %{name} (ptb) +Requires: %{name}-cli +Requires(posttrans): %{name}-cli +%description discord-ptb +Automatic Discord integration for %{name} (ptb branch). + +%if %{with openasar} +%package discord-stable+openasar +Summary: Automatic Discord integration for %{name} (stable, OpenAsar) +Requires: %{name}-cli +Requires(posttrans): %{name}-cli +Conflicts: %{name}-discord-stable +Conflicts: discord-openasar +%description discord-stable+openasar +discord-stable+openasar Automatic Discord integration for %{name} (stable branch, OpenAsar). + +%package discord-canary+openasar +Summary: Automatic Discord integration for %{name} (canary, OpenAsar) +Requires: %{name}-cli +Requires(posttrans): %{name}-cli +Conflicts: %{name}-discord-canary +Conflicts: discord-canary-openasar +%description discord-canary+openasar +discord-canary+openasar Automatic Discord integration for %{name} (canary branch, OpenAsar). + +%package discord-ptb+openasar +Summary: Automatic Discord integration for %{name} (ptb, OpenAsar) +Requires: %{name}-cli +Requires(posttrans): %{name}-cli +Conflicts: %{name}-discord-ptb +Conflicts: discord-ptb-openasar +%description discord-ptb+openasar +Automatic Discord integration for %{name} (ptb branch, OpenAsar). +%endif + +%gopkg + +%prep +%goprep_online -A + + +%build +%define gomodulesmode GO111MODULE=on +export CGO_CPPFLAGS="${CPPFLAGS}" +export CGO_CFLAGS="${CFLAGS}" +export CGO_CXXFLAGS="${CXXFLAGS}" +export CGO_LDFLAGS="${LDFLAGS}" +%gobuild -o %{gobuilddir}/bin/vencord-installer +%gobuild -o %{gobuilddir}/bin/vencord-installer-cli -tags cli + + +%install +%gopkginstall +install -m 0755 -vd %{buildroot}%{_bindir} +install -m 0755 -vp %{gobuilddir}/bin/* %{buildroot}%{_bindir}/ +%terra_appstream -o %{SOURCE1} + +%files +%license LICENSE +%doc README.md +%{_bindir}/vencord-installer +%{_datadir}/metainfo/%appid.metainfo.xml + +%files cli +%license LICENSE +%doc README.md +%{_bindir}/vencord-installer-cli + +%files discord-stable +%license LICENSE +%doc README.md + +%files discord-canary +%license LICENSE +%doc README.md + +%files discord-ptb +%license LICENSE +%doc README.md + +%if %{with openasar} +%files discord-stable+openasar +%license LICENSE +%doc README.md + +%files discord-canary+openasar +%license LICENSE +%doc README.md + +%files discord-ptb+openasar +%license LICENSE +%doc README.md +%endif + +%gopkgfiles + + +%transfiletriggerin -n %{name}-discord-stable -- /usr/share/discord +%{_bindir}/vencord-installer-cli -install -location /usr/share/discord + +%transfiletriggerin -n %{name}-discord-canary -- /usr/share/discord-canary +%{_bindir}/vencord-installer-cli -install -location /usr/share/discord-canary + +%transfiletriggerin -n %{name}-discord-ptb -- /usr/share/discord-ptb +%{_bindir}/vencord-installer-cli -install -location /usr/share/discord-ptb + +%if %{with openasar} +%transfiletriggerin -n %{name}-discord-stable+openasar -- /usr/share/discord +%{_bindir}/vencord-installer-cli -install -install-openasar -location /usr/share/discord + +%transfiletriggerin -n %{name}-discord-canary+openasar -- /usr/share/discord-canary +%{_bindir}/vencord-installer-cli -install -install-openasar -location /usr/share/discord-canary + +%transfiletriggerin -n %{name}-discord-ptb+openasar -- /usr/share/discord-ptb +%{_bindir}/vencord-installer-cli -install -install-openasar -location /usr/share/discord-ptb +%endif + +%changelog +%autochangelog diff --git a/anda/misc/xdg-terminal-exec-nautilus/anda.hcl b/anda/misc/xdg-terminal-exec-nautilus/anda.hcl new file mode 100644 index 0000000000..f64f7b2a07 --- /dev/null +++ b/anda/misc/xdg-terminal-exec-nautilus/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "xdg-terminal-exec-nautilus.spec" + } +} diff --git a/anda/misc/xdg-terminal-exec-nautilus/update.rhai b/anda/misc/xdg-terminal-exec-nautilus/update.rhai new file mode 100644 index 0000000000..4d1b439e12 --- /dev/null +++ b/anda/misc/xdg-terminal-exec-nautilus/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("zirconium-dev/xdg-terminal-exec-nautilus")); diff --git a/anda/misc/xdg-terminal-exec-nautilus/xdg-terminal-exec-nautilus.spec b/anda/misc/xdg-terminal-exec-nautilus/xdg-terminal-exec-nautilus.spec new file mode 100644 index 0000000000..76509b6d8a --- /dev/null +++ b/anda/misc/xdg-terminal-exec-nautilus/xdg-terminal-exec-nautilus.spec @@ -0,0 +1,32 @@ +Name: xdg-terminal-exec-nautilus +Version: 0.1.0 +Release: 1%?dist +Summary: xdg-terminal-exec extension for nautilus-python +License: Apache-2.0 +Group: System +URL: https://github.com/zirconium-dev/xdg-terminal-exec-nautilus +Source0: %{url}/archive/refs/tags/%{version}.tar.gz + +BuildArch: noarch +Requires: nautilus-python +Packager: Tulip Blossom (tulilirockz@outlook.com) + +%description +%{summary}. + +%prep +%autosetup -n xdg-terminal-exec-nautilus-%{version} + +%build + +%install +install -Dpm0644 -t %{buildroot}%{_datadir}/nautilus-python/extensions/ ./xdg-terminal-exec-nautilus.py + +%files +%license LICENSE +%doc README.md +%{_datadir}/nautilus-python/extensions/xdg-terminal-exec-nautilus.py + +%changelog +* Fri Mar 13 2026 Tulip Blossom +- Initial commit diff --git a/anda/misc/zapret/zapret.spec b/anda/misc/zapret/zapret.spec index 2743d26368..f1a31169ed 100644 --- a/anda/misc/zapret/zapret.spec +++ b/anda/misc/zapret/zapret.spec @@ -1,6 +1,6 @@ Name: zapret -Version: 72.9 -Release: 1%?dist +Version: 72.12 +Release: 1%{?dist} Summary: A multi-platform Deep Packet Inspection (DPI) bypass tool License: MIT ExcludeArch: s390x diff --git a/anda/multimedia/carla/Carla-nightly.spec b/anda/multimedia/carla/Carla-nightly.spec index 5cc37220ce..57c94d0e19 100644 --- a/anda/multimedia/carla/Carla-nightly.spec +++ b/anda/multimedia/carla/Carla-nightly.spec @@ -1,8 +1,8 @@ %global pname carla %global ver 2.5.10 -%global commit 011867b6bcd592a510b4ec157c032fcdac23d6ef +%global commit 294a80145e39c0755ab9073d90fd8b9524fbfc84 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260104 +%global commit_date 20260222 Name: Carla-nightly Version: %(echo %ver | tr -d 'v')^%commit_date.git~%shortcommit diff --git a/anda/multimedia/gpu-screen-recorder/gpu-screen-recorder.spec b/anda/multimedia/gpu-screen-recorder/gpu-screen-recorder.spec index b7724842d9..b4f412b82e 100644 --- a/anda/multimedia/gpu-screen-recorder/gpu-screen-recorder.spec +++ b/anda/multimedia/gpu-screen-recorder/gpu-screen-recorder.spec @@ -1,15 +1,13 @@ -%global snapshot r1245.8e82100 - Name: gpu-screen-recorder -Version: 5.12.1 -Release: 1%?dist +Version: 5.12.5 +Release: 3%?dist Summary: A shadowplay-like screen recorder for Linux License: GPL-3.0-or-later URL: https://git.dec05eba.com/%{name}/about -Source: https://dec05eba.com/snapshot/%{name}.git.%{snapshot}.tar.gz +Source: https://dec05eba.com/snapshot/%{name}.git.%{version}.tar.gz BuildRequires: gcc BuildRequires: (gcc-g++ or gcc-c++) @@ -34,7 +32,7 @@ BuildRequires: pkgconfig(libglvnd) Requires(post): libcap BuildRequires: systemd-rpm-macros -Packager: Willow Reed +Packager: Willow Reed %description Shadowplay-like screen recorder for Linux. Uses GPU acceleration to record in H.264, HEVC, AV1, VP8, or VP9. @@ -64,14 +62,18 @@ Shadowplay-like screen recorder for Linux. Uses GPU acceleration to record in H. %files %license LICENSE %doc README.md -%{_bindir}/gpu-screen-recorder +%{_bindir}/%{name} %caps(cap_sys_admin+ep) %{_bindir}/gsr-kms-server +%{_datadir}/%{name}/scripts/*.sh %{_includedir}/gsr/plugin.h %{_userunitdir}/%{name}.service %{_modprobedir}/gsr-nvidia.conf %{_mandir}/man1/gsr-kms-server.1* -%{_mandir}/man1/gpu-screen-recorder.1* +%{_mandir}/man1/%{name}.1* %changelog -* Fri Jan 02 2026 Willow Reed +* Sun Mar 15 2026 Willow C Reed +- Fix package source + +* Fri Jan 02 2026 Willow Reed - Initial commit \ No newline at end of file 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 14c58dab70..469e7906e1 100644 --- a/anda/multimedia/gstreamer1/gstreamer1-plugin-libav/gstreamer1-plugin-libav.spec +++ b/anda/multimedia/gstreamer1/gstreamer1-plugin-libav/gstreamer1-plugin-libav.spec @@ -1,5 +1,5 @@ Name: gstreamer1-plugin-libav -Version: 1.26.10 +Version: 1.28.1 Release: 1%?dist Epoch: 1 Summary: GStreamer Libav plugin diff --git a/anda/multimedia/gstreamer1/gstreamer1-plugins-bad/OPENCV_VERSION.txt b/anda/multimedia/gstreamer1/gstreamer1-plugins-bad/OPENCV_VERSION.txt index bcd250ed08..01b73abe55 100644 --- a/anda/multimedia/gstreamer1/gstreamer1-plugins-bad/OPENCV_VERSION.txt +++ b/anda/multimedia/gstreamer1/gstreamer1-plugins-bad/OPENCV_VERSION.txt @@ -1 +1 @@ -4.12.0 \ No newline at end of file +4.13.0 \ No newline at end of file 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 6f12cb3636..3f10d17b20 100644 --- a/anda/multimedia/gstreamer1/gstreamer1-plugins-bad/gstreamer1-plugins-bad.spec +++ b/anda/multimedia/gstreamer1/gstreamer1-plugins-bad/gstreamer1-plugins-bad.spec @@ -3,8 +3,8 @@ %global majorminor 1.0 Name: gstreamer1-plugins-bad -Version: 1.26.10 -Release: 1%?dist +Version: 1.28.1 +Release: 1%{?dist} Epoch: 2 Summary: GStreamer streaming media framework "bad" plugins License: LGPL-2.0-or-later and LGPL-2.0-only 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 79dba57c67..322338fb43 100644 --- a/anda/multimedia/gstreamer1/gstreamer1-plugins-ugly/gstreamer1-plugins-ugly.spec +++ b/anda/multimedia/gstreamer1/gstreamer1-plugins-ugly/gstreamer1-plugins-ugly.spec @@ -1,7 +1,7 @@ %global majorminor 1.0 Name: gstreamer1-plugins-ugly -Version: 1.26.10 +Version: 1.28.1 Release: 1%?dist Epoch: 2 Summary: GStreamer streaming media framework "ugly" plugins diff --git a/anda/multimedia/rtaudio/rtaudio-nightly.spec b/anda/multimedia/rtaudio/rtaudio-nightly.spec index cb2a880a09..a3ea1d31c9 100644 --- a/anda/multimedia/rtaudio/rtaudio-nightly.spec +++ b/anda/multimedia/rtaudio/rtaudio-nightly.spec @@ -1,7 +1,7 @@ #? https://src.fedoraproject.org/rpms/rtaudio/blob/db1aa72863ccbfd480e22c2f7aefb41ebb8e2360/f/rtaudio.spec -%global commit 409636b5dcad3054ae5a9e85014bba3861b8edab +%global commit e5f0774b2156082ec3db998bd6b2a94b66ade8ac %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20251126 +%global commit_date 20260228 %global ver .0.1 Name: rtaudio-nightly diff --git a/anda/multimedia/vgmstream/vgmstream.spec b/anda/multimedia/vgmstream/vgmstream.spec index 9908230a86..6762d59259 100644 --- a/anda/multimedia/vgmstream/vgmstream.spec +++ b/anda/multimedia/vgmstream/vgmstream.spec @@ -1,10 +1,10 @@ -%global commit c0a35641df7d3a4f0d740d5efa947ccf10e3e817 +%global commit e4f57c3fdf614bf1f204428dec7d3c495913a625 %global shortcommit %{sub %{commit} 1 7} -%global commit_date 20260118 +%global commit_date 20260315 Name: vgmstream Version: 0~%{commit_date}git.%shortcommit -Release: 1%?dist +Release: 1%{?dist} Summary: A library for playback of various streamed audio formats used in video games License: ISC URL: https://vgmstream.org diff --git a/anda/multimedia/vvenc/vvenc.spec b/anda/multimedia/vvenc/vvenc.spec index f6313ffc02..4134486051 100644 --- a/anda/multimedia/vvenc/vvenc.spec +++ b/anda/multimedia/vvenc/vvenc.spec @@ -1,6 +1,6 @@ Name: vvenc -Version: 1.13.1 -Release: 4%{?dist} +Version: 1.14.0 +Release: 1%?dist Summary: VVenC, the Fraunhofer Versatile Video Encoder License: BSD-3-Clause URL: https://github.com/fraunhoferhhi/%{name} diff --git a/anda/stardust/armillary/nightly/stardust-armillary-nightly.spec b/anda/stardust/armillary/nightly/stardust-armillary-nightly.spec index bcbb9067a3..113b9e09b8 100644 --- a/anda/stardust/armillary/nightly/stardust-armillary-nightly.spec +++ b/anda/stardust/armillary/nightly/stardust-armillary-nightly.spec @@ -1,12 +1,12 @@ -%global commit c278020dc78587e887f91377a882b50d0b009c50 -%global commit_date 20251130 +%global commit f0da2cb098c8c9d668fe562552fe1196af34cadf +%global commit_date 20260316 %global shortcommit %(c=%{commit}; echo ${c:0:7}) # Exclude input files from mangling %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ Name: stardust-xr-armillary-nightly Version: 0~%{commit_date}git.%{shortcommit} -Release: 2%?dist +Release: 1%{?dist} Summary: Model viewer for Stardust XR URL: https://github.com/StardustXR/armillary Source0: %url/archive/%commit/armillary-%commit.tar.gz diff --git a/anda/stardust/armillary/stable/stardust-armillary.spec b/anda/stardust/armillary/stable/stardust-armillary.spec index 40a0f77787..25c8131443 100644 --- a/anda/stardust/armillary/stable/stardust-armillary.spec +++ b/anda/stardust/armillary/stable/stardust-armillary.spec @@ -2,8 +2,8 @@ %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ Name: stardust-xr-armillary -Version: 0.50.0 -Release: 2%?dist +Version: 0.51.1 +Release: 1%{?dist} Epoch: 1 Summary: Model viewer for Stardust XR URL: https://github.com/StardustXR/armillary diff --git a/anda/stardust/atmosphere/nightly/stardust-atmosphere-nightly.spec b/anda/stardust/atmosphere/nightly/stardust-atmosphere-nightly.spec index 24977dae6b..0d326859dd 100644 --- a/anda/stardust/atmosphere/nightly/stardust-atmosphere-nightly.spec +++ b/anda/stardust/atmosphere/nightly/stardust-atmosphere-nightly.spec @@ -1,12 +1,12 @@ -%global commit 8b160f3bf5b477a2e1a3721b239cdfaef75de35a -%global commit_date 20260113 +%global commit 658da17588cb13654d75902ffb536d260c1a9033 +%global commit_date 20260316 %global shortcommit %(c=%{commit}; echo ${c:0:7}) # Exclude input files from mangling %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ Name: stardust-xr-atmosphere-nightly Version: 0~%{commit_date}git.%{shortcommit} -Release: 1%?dist +Release: 1%{?dist} Summary: Environment, homespace, and setup client for Stardust XR URL: https://github.com/StardustXR/atmosphere Source0: %url/archive/%commit/atmosphere-%commit.tar.gz @@ -32,7 +32,7 @@ Packager: Owen Zimmerman %{cargo_license_online} > LICENSE.dependencies %files -%_bindir/stardust-xr-atmosphere +%_bindir/atmosphere %license LICENSE %license LICENSE.dependencies %doc README.md diff --git a/anda/stardust/atmosphere/stable/stardust-atmosphere.spec b/anda/stardust/atmosphere/stable/stardust-atmosphere.spec index 76e8517b64..7be8eed3a4 100644 --- a/anda/stardust/atmosphere/stable/stardust-atmosphere.spec +++ b/anda/stardust/atmosphere/stable/stardust-atmosphere.spec @@ -2,8 +2,8 @@ %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ Name: stardust-xr-atmosphere -Version: 0.50.0 -Release: 2%?dist +Version: 0.51.1 +Release: 1%{?dist} Epoch: 1 Summary: Environment, homespace, and setup client for Stardust XR URL: https://github.com/StardustXR/atmosphere @@ -29,7 +29,7 @@ Packager: Owen Zimmerman %{cargo_license_online} > LICENSE.dependencies %files -%_bindir/%{name} +%_bindir/atmosphere %license LICENSE %license LICENSE.dependencies %doc README.md diff --git a/anda/stardust/black-hole/nightly/stardust-black-hole-nightly.spec b/anda/stardust/black-hole/nightly/stardust-black-hole-nightly.spec index cd69a9c7c5..111fae0c63 100644 --- a/anda/stardust/black-hole/nightly/stardust-black-hole-nightly.spec +++ b/anda/stardust/black-hole/nightly/stardust-black-hole-nightly.spec @@ -1,12 +1,12 @@ -%global commit 5abca9d613fac7861803319b3191061b2d8ce067 -%global commit_date 20251130 +%global commit a3995cf07f07ede739427f4ee3b53ac4730fcd26 +%global commit_date 20260316 %global shortcommit %(c=%{commit}; echo ${c:0:7}) # Exclude input files from mangling %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ Name: stardust-xr-black-hole-nightly Version: 0~%{commit_date}git.%{shortcommit} -Release: 2%?dist +Release: 1%{?dist} Summary: Spatial storage for Stardust XR URL: https://github.com/StardustXR/black-hole Source0: %url/archive/%commit/black-hole-%commit.tar.gz diff --git a/anda/stardust/black-hole/stable/stardust-black-hole.spec b/anda/stardust/black-hole/stable/stardust-black-hole.spec index 58bb86df15..0ea1e7a133 100644 --- a/anda/stardust/black-hole/stable/stardust-black-hole.spec +++ b/anda/stardust/black-hole/stable/stardust-black-hole.spec @@ -2,8 +2,8 @@ %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ Name: stardust-xr-black-hole -Version: 0.50.0 -Release: 2%?dist +Version: 0.51.1 +Release: 1%{?dist} Epoch: 1 Summary: Spatial storage for Stardust XR URL: https://github.com/StardustXR/black-hole diff --git a/anda/stardust/comet/nightly/stardust-comet-nightly.spec b/anda/stardust/comet/nightly/stardust-comet-nightly.spec index 2df92ef374..d9b0fdbf51 100644 --- a/anda/stardust/comet/nightly/stardust-comet-nightly.spec +++ b/anda/stardust/comet/nightly/stardust-comet-nightly.spec @@ -1,12 +1,12 @@ -%global commit 52b442c42d8b2938f16adfe42ab1ac0b5d29a137 -%global commit_date 20251218 +%global commit 228888a86c5898055f0897398368d90f72624e51 +%global commit_date 20260316 %global shortcommit %(c=%{commit}; echo ${c:0:7}) # Exclude input files from mangling %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ Name: stardust-xr-comet-nightly Version: 0~%{commit_date}git.%{shortcommit} -Release: 2%?dist +Release: 1%{?dist} Summary: Annotate things in Stardust XR URL: https://github.com/StardustXR/comet Source0: %url/archive/%commit/comet-%commit.tar.gz diff --git a/anda/stardust/comet/stable/stardust-comet.spec b/anda/stardust/comet/stable/stardust-comet.spec index ac53466247..c7124b4bcb 100644 --- a/anda/stardust/comet/stable/stardust-comet.spec +++ b/anda/stardust/comet/stable/stardust-comet.spec @@ -2,8 +2,8 @@ %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ Name: stardust-xr-comet -Version: 0.50.0 -Release: 2%?dist +Version: 0.51.1 +Release: 1%{?dist} Epoch: 1 Summary: Annotate things in Stardust XR URL: https://github.com/StardustXR/comet diff --git a/anda/stardust/flatland/nightly/stardust-flatland-nightly.spec b/anda/stardust/flatland/nightly/stardust-flatland-nightly.spec index 63bc05f290..a625c39d43 100644 --- a/anda/stardust/flatland/nightly/stardust-flatland-nightly.spec +++ b/anda/stardust/flatland/nightly/stardust-flatland-nightly.spec @@ -1,12 +1,12 @@ -%global commit add9b3420940a5608116d02d3dbf53fbd3eb7c40 -%global commit_date 20251225 +%global commit a8596e7aad25df7f9ee5d040ef560269f026bf14 +%global commit_date 20260316 %global shortcommit %(c=%{commit}; echo ${c:0:7}) # Exclude input files from mangling %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ Name: stardust-xr-flatland-nightly Version: 0~%{commit_date}git.%{shortcommit} -Release: 2%?dist +Release: 1%{?dist} Summary: Flatland for Stardust XR URL: https://github.com/StardustXR/flatland Source0: %url/archive/%commit/flatland-%commit.tar.gz diff --git a/anda/stardust/flatland/stable/stardust-flatland.spec b/anda/stardust/flatland/stable/stardust-flatland.spec index 04f410a5bb..f6befdff86 100644 --- a/anda/stardust/flatland/stable/stardust-flatland.spec +++ b/anda/stardust/flatland/stable/stardust-flatland.spec @@ -2,8 +2,8 @@ %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ Name: stardust-xr-flatland -Version: 0.50.1 -Release: 2%?dist +Version: 0.51.1 +Release: 1%{?dist} Epoch: 1 Summary: Flatland for Stardust XR URL: https://github.com/StardustXR/flatland diff --git a/anda/stardust/gravity/stable/stardust-gravity.spec b/anda/stardust/gravity/stable/stardust-gravity.spec index 956e8d9116..957f13d2c3 100644 --- a/anda/stardust/gravity/stable/stardust-gravity.spec +++ b/anda/stardust/gravity/stable/stardust-gravity.spec @@ -2,8 +2,8 @@ %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ Name: stardust-xr-gravity -Version: 0.50.0 -Release: 2%?dist +Version: 0.51.1 +Release: 1%{?dist} Epoch: 1 Summary: Utility to launch apps and Stardust XR clients spatially URL: https://github.com/StardustXR/gravity diff --git a/anda/stardust/non-spatial-input/nightly/stardust-non-spatial-input-nightly.spec b/anda/stardust/non-spatial-input/nightly/stardust-non-spatial-input-nightly.spec index 3c22fa9b63..281b0ce8b3 100644 --- a/anda/stardust/non-spatial-input/nightly/stardust-non-spatial-input-nightly.spec +++ b/anda/stardust/non-spatial-input/nightly/stardust-non-spatial-input-nightly.spec @@ -1,12 +1,12 @@ -%global commit 3a586815e1c057580674c147e27c3a4909b3b4c6 -%global commit_date 20251130 +%global commit d4b1094da4b5257240e3e60e33332b7b559ef4c5 +%global commit_date 20260318 %global shortcommit %(c=%{commit}; echo ${c:0:7}) # Exclude input files from mangling %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ Name: stardust-xr-non-spatial-input-nightly Version: 0~%{commit_date}git.%{shortcommit} -Release: 2%?dist +Release: 1%{?dist} Summary: Tools you can easily snap together to get non-spatial input into Stardust XR URL: https://github.com/StardustXR/non-spatial-input Source0: %url/archive/%commit/non-spatial-input-%commit.tar.gz diff --git a/anda/stardust/non-spatial-input/stable/stardust-non-spatial-input.spec b/anda/stardust/non-spatial-input/stable/stardust-non-spatial-input.spec index 6dae7b699b..4256a30d11 100644 --- a/anda/stardust/non-spatial-input/stable/stardust-non-spatial-input.spec +++ b/anda/stardust/non-spatial-input/stable/stardust-non-spatial-input.spec @@ -2,8 +2,8 @@ %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ Name: stardust-xr-non-spatial-input -Version: 0.50.0 -Release: 2%?dist +Version: 0.51.1 +Release: 1%{?dist} Epoch: 1 Summary: Tools you can easily snap together to get non-spatial input into Stardust XR URL: https://github.com/StardustXR/non-spatial-input diff --git a/anda/stardust/protostar/nightly/stardust-protostar-nightly.spec b/anda/stardust/protostar/nightly/stardust-protostar-nightly.spec index f3e3422af6..dc30ac7333 100644 --- a/anda/stardust/protostar/nightly/stardust-protostar-nightly.spec +++ b/anda/stardust/protostar/nightly/stardust-protostar-nightly.spec @@ -1,12 +1,12 @@ -%global commit 7609cbfc07121b3b68d91bf2124b9c0afa57363d -%global commit_date 20251218 +%global commit 0dc4103651e1f69a7fc0a02eea6acb5f52f97f3e +%global commit_date 20260316 %global shortcommit %(c=%{commit}; echo ${c:0:7}) # Exclude input files from mangling %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ Name: stardust-xr-protostar-nightly Version: 0~%{commit_date}git.%{shortcommit} -Release: 2%?dist +Release: 1%{?dist} Summary: Prototype application launcher for Stardust XR URL: https://github.com/StardustXR/protostar Source0: %url/archive/%commit/protostar-%commit.tar.gz diff --git a/anda/stardust/protostar/stable/stardust-protostar.spec b/anda/stardust/protostar/stable/stardust-protostar.spec index a148c22b03..726945aa74 100644 --- a/anda/stardust/protostar/stable/stardust-protostar.spec +++ b/anda/stardust/protostar/stable/stardust-protostar.spec @@ -2,8 +2,8 @@ %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ Name: stardust-xr-protostar -Version: 0.50.0 -Release: 2%?dist +Version: 0.51.1 +Release: 1%{?dist} Epoch: 1 Summary: Prototype application launcher for Stardust XR URL: https://github.com/StardustXR/protostar diff --git a/anda/stardust/server/nightly/stardust-server-nightly.spec b/anda/stardust/server/nightly/stardust-server-nightly.spec index c89e56e9c5..a106a76357 100644 --- a/anda/stardust/server/nightly/stardust-server-nightly.spec +++ b/anda/stardust/server/nightly/stardust-server-nightly.spec @@ -1,12 +1,12 @@ -%global commit 02ace12526613ee42a6bed9de39cf8a3dedd50b8 -%global commit_date 20260117 +%global commit a36a275bc26c5cded3e28082d094b790430bff07 +%global commit_date 20260319 %global shortcommit %(c=%{commit}; echo ${c:0:7}) # Exclude input files from mangling %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ Name: stardust-xr-server-nightly Version: 0~%{commit_date}git.%{shortcommit} -Release: 1%?dist +Release: 1%{?dist} Summary: Usable Linux display server that reinvents human-computer interaction for all kinds of XR URL: https://github.com/StardustXR/server Source0: %url/archive/%commit/server-%commit.tar.gz diff --git a/anda/stardust/server/stable/stardust-server.spec b/anda/stardust/server/stable/stardust-server.spec index e2e767bdbb..40df6f0957 100644 --- a/anda/stardust/server/stable/stardust-server.spec +++ b/anda/stardust/server/stable/stardust-server.spec @@ -2,8 +2,8 @@ %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ Name: stardust-xr-server -Version: 0.50.3 -Release: 1%?dist +Version: 0.51.1 +Release: 1%{?dist} Epoch: 1 Summary: Usable Linux display server that reinvents human-computer interaction for all kinds of XR URL: https://github.com/StardustXR/server diff --git a/anda/stardust/solar-sailer/nightly/stardust-solar-sailer-nightly.spec b/anda/stardust/solar-sailer/nightly/stardust-solar-sailer-nightly.spec index 95983b6287..71475eb5ef 100644 --- a/anda/stardust/solar-sailer/nightly/stardust-solar-sailer-nightly.spec +++ b/anda/stardust/solar-sailer/nightly/stardust-solar-sailer-nightly.spec @@ -1,5 +1,5 @@ -%global commit 40ca9fc446756a5151275dcbac914cee399dbc4c -%global commit_date 20251218 +%global commit fbb0aba9759147d31427825a8da428bd959c55db +%global commit_date 20260316 %global shortcommit %(c=%{commit}; echo ${c:0:7}) # Exclude input files from mangling @@ -7,7 +7,7 @@ Name: stardust-xr-solar-sailer-nightly Version: 0~%{commit_date}git.%{shortcommit} -Release: 2%?dist +Release: 1%{?dist} Summary: Glide through space! This play space mover allows you to fly by dragging the space with momentum! URL: https://github.com/StardustXR/solar-sailer Source0: %url/archive/%commit.tar.gz diff --git a/anda/stardust/solar-sailer/stable/stardust-solar-sailer.spec b/anda/stardust/solar-sailer/stable/stardust-solar-sailer.spec index 247bbdbb55..5d20e0584a 100644 --- a/anda/stardust/solar-sailer/stable/stardust-solar-sailer.spec +++ b/anda/stardust/solar-sailer/stable/stardust-solar-sailer.spec @@ -2,8 +2,8 @@ %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ Name: stardust-xr-solar-sailer -Version: 0.50.0 -Release: 2%?dist +Version: 0.51.1 +Release: 1%{?dist} Summary: Glide through space! This play space mover allows you to fly by dragging the space with momentum! URL: https://github.com/StardustXR/solar-sailer Source0: %url/archive/refs/tags/%version.tar.gz diff --git a/anda/stardust/telescope/nightly/libexec.patch b/anda/stardust/telescope/nightly/libexec.patch new file mode 100644 index 0000000000..27ebc95c44 --- /dev/null +++ b/anda/stardust/telescope/nightly/libexec.patch @@ -0,0 +1,9 @@ +diff --git a/scripts/telescope b/scripts/telescope +index bad4436..50f7983 100644 +--- a/scripts/telescope ++++ b/scripts/telescope +@@ -1,3 +1,3 @@ + #!/bin/bash + +-stardust-xr-server -o 6 -e "$(which _telescope_startup)" "$@" ++stardust-xr-server -o 6 -e "/usr/libexec/telescope_startup" "$@" diff --git a/anda/stardust/telescope/nightly/stardust-telescope-nightly.spec b/anda/stardust/telescope/nightly/stardust-telescope-nightly.spec index 18bb6cd079..6b47023a04 100644 --- a/anda/stardust/telescope/nightly/stardust-telescope-nightly.spec +++ b/anda/stardust/telescope/nightly/stardust-telescope-nightly.spec @@ -1,14 +1,15 @@ -%global commit 3f6bbbb6bfaf28da8e3635a67a7d9502ae7a7b11 -%global commit_date 20260104 +%global commit 7cc4ad218557200e7cef53da48dc62ff9d0571ca +%global commit_date 20260318 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: stardust-xr-telescope-nightly Version: 0~%{commit_date}git.%{shortcommit} -Release: 1%?dist +Release: 1%{?dist} Summary: See the stars! Easy stardust setups to run on your computer License: MIT URL: https://github.com/StardustXR/telescope Source0: %url/archive/%commit.tar.gz +Patch0: libexec.patch Requires: bash Requires: xwayland-satellite @@ -18,7 +19,7 @@ Requires: stardust-xr-black-hole-nightly Requires: stardust-xr-comet-nightly Requires: stardust-xr-flatland-nightly Requires: stardust-xr-gravity-nightly -Requires: stardust-xr-magnetar-nightly +Requires: stardust-xr-magnetar Requires: stardust-xr-non-spatial-input-nightly Requires: stardust-xr-protostar-nightly Requires: stardust-xr-server-nightly @@ -28,17 +29,19 @@ BuildArch: noarch Provides: telescope-nightly stardust-telescope-nightly Conflicts: stardust-xr-telescope +Packager: Owen Zimmerman + %description See the stars! Easy stardust setups to run on your computer. %prep -%autosetup -n telescope-%commit +%autosetup -n telescope-%commit -p1 %build %install install -Dm755 scripts/telescope %buildroot%_bindir/telescope -install -Dm755 scripts/_telescope_startup %buildroot%_bindir/_telescope_startup +install -Dm755 scripts/_telescope_startup %buildroot%_libexecdir/telescope_startup install -Dm644 org.stardustxr.Telescope.desktop %buildroot%_appsdir/org.stardustxr.Telescope.desktop install -Dm644 org.stardustxr.Telescope.png %buildroot%_hicolordir/512x512/apps/org.stardustxr.Telescope.png @@ -46,7 +49,7 @@ install -Dm644 org.stardustxr.Telescope.png %buildroot%_hicolordir/512x512/ %doc README.md %license LICENSE %_bindir/telescope -%_bindir/_telescope_startup +%_libexecdir/telescope_startup %_appsdir/org.stardustxr.Telescope.desktop %_hicolordir/512x512/apps/org.stardustxr.Telescope.png diff --git a/anda/stardust/telescope/stable/libexec.patch b/anda/stardust/telescope/stable/libexec.patch new file mode 100644 index 0000000000..27ebc95c44 --- /dev/null +++ b/anda/stardust/telescope/stable/libexec.patch @@ -0,0 +1,9 @@ +diff --git a/scripts/telescope b/scripts/telescope +index bad4436..50f7983 100644 +--- a/scripts/telescope ++++ b/scripts/telescope +@@ -1,3 +1,3 @@ + #!/bin/bash + +-stardust-xr-server -o 6 -e "$(which _telescope_startup)" "$@" ++stardust-xr-server -o 6 -e "/usr/libexec/telescope_startup" "$@" diff --git a/anda/stardust/telescope/stable/stardust-telescope.spec b/anda/stardust/telescope/stable/stardust-telescope.spec index 98c51bdb14..d68b57651e 100644 --- a/anda/stardust/telescope/stable/stardust-telescope.spec +++ b/anda/stardust/telescope/stable/stardust-telescope.spec @@ -1,11 +1,12 @@ Name: stardust-xr-telescope -Version: 0.50.3 -Release: 1%?dist +Version: 0.51.0 +Release: 1%{?dist} Epoch: 1 Summary: See the stars! Easy stardust setups to run on your computer License: MIT URL: https://github.com/StardustXR/telescope Source0: %url/archive/refs/tags/%version.tar.gz +Patch0: libexec.patch Requires: bash Requires: xwayland-satellite @@ -24,17 +25,19 @@ Requires: stardust-xr-solar-sailer BuildArch: noarch Provides: telescope stardust-telescope +Packager: Owen Zimmerman + %description See the stars! Easy stardust setups to run on your computer. %prep -%autosetup -n telescope-%version +%autosetup -n telescope-%version -p1 %build %install install -Dm755 scripts/telescope %buildroot%_bindir/telescope -install -Dm755 scripts/_telescope_startup %buildroot%_bindir/_telescope_startup +install -Dm755 scripts/_telescope_startup %buildroot%_libexecdir/telescope_startup install -Dm644 org.stardustxr.Telescope.desktop %buildroot%_appsdir/org.stardustxr.Telescope.desktop install -Dm644 org.stardustxr.Telescope.png %buildroot%_hicolordir/512x512/apps/org.stardustxr.Telescope.png @@ -42,7 +45,7 @@ install -Dm644 org.stardustxr.Telescope.png %buildroot%_hicolordir/512x512/ %doc README.md %license LICENSE %_bindir/telescope -%_bindir/_telescope_startup +%_libexecdir/telescope_startup %_appsdir/org.stardustxr.Telescope.desktop %_hicolordir/512x512/apps/org.stardustxr.Telescope.png diff --git a/anda/system/amdgpu_top/amdgpu_top.spec b/anda/system/amdgpu_top/amdgpu_top.spec new file mode 100644 index 0000000000..57e5db00f8 --- /dev/null +++ b/anda/system/amdgpu_top/amdgpu_top.spec @@ -0,0 +1,56 @@ +%undefine __brp_add_determinism + +Name: amdgpu_top +Version: 0.11.2 +Release: 1%?dist +Summary: Tool to display AMDGPU usage +License: MIT +Packager: veuxit +URL: https://github.com/Umio-Yasuno/amdgpu_top + +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz + +BuildRequires: desktop-file-utils +BuildRequires: libdrm-devel +BuildRequires: cargo cargo-rpm-macros anda-srpm-macros + +%description +%summary. + +%prep +%autosetup -n %{name}-%{version} +%cargo_prep_online + +%build +%{cargo_build} --locked + +%install + +install -Dm755 target/release/amdgpu_top %{buildroot}%{_bindir}/amdgpu_top + +install -Dm644 assets/amdgpu_top.desktop %{buildroot}%{_appsdir}/amdgpu_top.desktop + +install -Dm644 assets/amdgpu_top-tui.desktop %{buildroot}%{_appsdir}/amdgpu_top-tui.desktop + +install -Dpm644 assets/io.github.umio_yasuno.amdgpu_top.metainfo.xml %{buildroot}%{_metainfodir}/io.github.umio_yasuno.amdgpu_top.metainfo.xml + +install -Dm644 "docs/amdgpu_top.1" "%{buildroot}%{_mandir}/man1/amdgpu_top.1" + +%check +%desktop_file_validate %{buildroot}%{_appsdir}/amdgpu_top.desktop +%desktop_file_validate %{buildroot}%{_appsdir}/amdgpu_top-tui.desktop + +%files +%doc README.md +%doc CHANGELOG.md +%doc AUTHORS +%license LICENSE +%{_bindir}/amdgpu_top +%{_datadir}/applications/amdgpu_top.desktop +%{_datadir}/applications/amdgpu_top-tui.desktop +%{_metainfodir}/io.github.umio_yasuno.amdgpu_top.metainfo.xml +%{_mandir}/man1/amdgpu_top.1.gz + +%changelog +* Thu Mar 5 2026 veuxit - 0.11.2 +- Initial package release \ No newline at end of file diff --git a/anda/system/amdgpu_top/anda.hcl b/anda/system/amdgpu_top/anda.hcl new file mode 100644 index 0000000000..d4b25997e7 --- /dev/null +++ b/anda/system/amdgpu_top/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "amdgpu_top.spec" + } +} diff --git a/anda/system/amdgpu_top/update.rhai b/anda/system/amdgpu_top/update.rhai new file mode 100644 index 0000000000..70b97bb6e0 --- /dev/null +++ b/anda/system/amdgpu_top/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("Umio-Yasuno/amdgpu_top")); diff --git a/anda/system/asusctl/asusctl.spec b/anda/system/asusctl/asusctl.spec index a7e22afb0a..cd419c94c2 100644 --- a/anda/system/asusctl/asusctl.spec +++ b/anda/system/asusctl/asusctl.spec @@ -1,9 +1,11 @@ %global debug_package %{nil} %global appid org.asus_linux.rog_control_center +%define _unpackaged_files_terminate_build 0 + Name: asusctl -Version: 6.3.1 -Release: 2%?dist +Version: 6.3.5 +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 @@ -66,7 +68,6 @@ desktop-file-validate %{buildroot}/%{_datadir}/applications/rog-control-center.d %{_bindir}/asusd-user %{_bindir}/asusctl %{_unitdir}/asusd.service -%{_userunitdir}/asusd-user.service %{_udevrulesdir}/99-asusd.rules %dnl %{_sysconfdir}/asusd/ %{_datadir}/asusd/aura_support.ron @@ -88,15 +89,12 @@ desktop-file-validate %{buildroot}/%{_datadir}/applications/rog-control-center.d %post %systemd_post asusd.service -%systemd_user_post asusd-user.service %preun %systemd_preun asusd.service -%systemd_user_preun asusd-user.service %postun %systemd_postun_with_restart asusd.service -%systemd_user_postun_with_restart asusd-user.service %files rog-gui %{_bindir}/rog-control-center @@ -106,6 +104,9 @@ desktop-file-validate %{buildroot}/%{_datadir}/applications/rog-control-center.d %{_metainfodir}/%{appid}.metainfo.xml %changelog +* Wed Feb 18 2026 Owen Zimmerman - 6.2.0-3 +- Remove asusd-user.service + * Fri Jan 16 2026 metcya - 6.3.0-2 - Update ROG Control Center metainfo diff --git a/anda/system/bpftune/nightly/anda.hcl b/anda/system/bpftune/nightly/anda.hcl new file mode 100644 index 0000000000..5df483afdb --- /dev/null +++ b/anda/system/bpftune/nightly/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "bpftune-nightly.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/system/bpftune/nightly/bpftune-nightly.spec b/anda/system/bpftune/nightly/bpftune-nightly.spec new file mode 100644 index 0000000000..cc644c6efc --- /dev/null +++ b/anda/system/bpftune/nightly/bpftune-nightly.spec @@ -0,0 +1,104 @@ +# BPF-based auto-tuning SPEC file + +%define pcpdir /var/lib/pcp/pmdas + +%global ver 0.4-2 +%global releaseS %(echo '%ver' | sed -E 's/^[^-]+-//') +%define nameR bpftune + +%bcond_with openrc + +%global commit 4712347f2da0b7d4a5fbdb0d81d071c1704b3f20 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commit_date 20260227 + +Name: bpftune-nightly +Version: %(echo '%ver' | sed 's/-/~/g')^%{commit_date}git.%{shortcommit} +Release: 1%?dist +Summary: BPF/tracing tools for auto-tuning Linux +License: GPL-2.0-only WITH Linux-syscall-note +Packager: veuxit +URL: https://github.com/oracle/bpftune +Conflicts: bpftune + +Source0: %{url}/archive/%{commit}/bpftune-%{commit}.tar.gz + +Group: Development/Tools +Requires: libbpf >= 0.6 +Requires: libnl3 +Requires: libcap +BuildRequires: libbpf-devel >= 0.6 +BuildRequires: libcap-devel +BuildRequires: bpftool >= 4.18 +BuildRequires: libnl3-devel +BuildRequires: clang >= 11 +BuildRequires: clang-libs >= 11 +BuildRequires: llvm >= 11 +BuildRequires: llvm-libs >= 11 +BuildRequires: python3-docutils + +%description +Service consisting of daemon (bpftune) and plugins which +support auto-tuning of Linux via BPF observability. + +%package devel +Requires: %{name} = %{evr} +Requires: libbpf-devel >= 0.6 +Requires: libcap-devel +Requires: bpftool +Requires: libnl3-devel + +%pkg_devel_files + +%package pcp-pmda +Summary: Performance Co-Pilot PMDA for bpftune +Requires: %{name} = %{evr} +Requires: pcp +Requires: python3-pcp + +%description pcp-pmda +The %{name}-pcp-pmda exports tunables and metrics from bpftune +to Performance Co-Pilot (PCP) + +%prep +%autosetup -n bpftune-%{commit} + +%build +%make_build + +%install +%make_install + +%post +%systemd_post bpftune.service + +%preun +%systemd_preun bpftune.service + +%postun +%systemd_postun_with_restart bpftune.service + +%files +%doc README.md TROUBLESHOOTING.md SECURITY.md +%license LICENSE.txt +%defattr(-,root,root) +%{_sysconfdir}/ld.so.conf.d/libbpftune.conf +%{_bindir}/bpftune +%{_unitdir}/bpftune.service +%{_libdir}/libbpftune.so.%(echo '%ver' | sed 's/-/./g') +%{_libdir}/bpftune/* +%{_mandir}/*/* +%if %{with openrc} +%{_sysconfdir}/conf.d/bpftune +%{_sysconfdir}/init.d/bpftune +%else +%exclude %{_sysconfdir}/conf.d/bpftune +%exclude %{_sysconfdir}/init.d/bpftune +%endif + +%files pcp-pmda +%{pcpdir}/%{nameR}/* + +%changelog +* Fri Mar 6 2026 veuxit - 0.4-2 +- Initial package release diff --git a/anda/system/bpftune/nightly/update.rhai b/anda/system/bpftune/nightly/update.rhai new file mode 100644 index 0000000000..b81c6e0199 --- /dev/null +++ b/anda/system/bpftune/nightly/update.rhai @@ -0,0 +1,7 @@ +rpm.global("commit", gh_commit("oracle/bpftune")); +if rpm.changed() { + rpm.release(); + rpm.global("commit_date", date()); + let v = gh("oracle/bpftune"); + rpm.global("ver", v); +} diff --git a/anda/system/bpftune/stable/anda.hcl b/anda/system/bpftune/stable/anda.hcl new file mode 100644 index 0000000000..55d17906c7 --- /dev/null +++ b/anda/system/bpftune/stable/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "bpftune.spec" + } +} diff --git a/anda/system/bpftune/stable/bpftune.spec b/anda/system/bpftune/stable/bpftune.spec new file mode 100644 index 0000000000..d36e41820e --- /dev/null +++ b/anda/system/bpftune/stable/bpftune.spec @@ -0,0 +1,102 @@ +# BPF-based auto-tuning SPEC file + +%global ver 0.4-2 +%global releaseS %(echo '%ver' | sed -E 's/^[^-]+-//') + +%define pcpdir /var/lib/pcp/pmdas +%define _sbindir /usr/sbin + +%undefine __brp_add_determinism + +%bcond_with openrc + +Name: bpftune +Version: %(echo '%ver' | sed 's/-/~/g') +Release: 1%?dist +Summary: BPF/tracing tools for auto-tuning Linux +License: GPL-2.0-only WITH Linux-syscall-note +Packager: veuxit +URL: https://github.com/oracle/bpftune +Conflicts: bpftune-nightly + +Source0: %{url}/archive/refs/tags/%{ver}.tar.gz + +Group: Development/Tools +Requires: libbpf >= 0.6 +Requires: libnl3 +Requires: libcap +BuildRequires: libbpf-devel >= 0.6 +BuildRequires: libcap-devel +BuildRequires: bpftool >= 4.18 +BuildRequires: libnl3-devel +BuildRequires: clang >= 11 +BuildRequires: clang-libs >= 11 +BuildRequires: llvm >= 11 +BuildRequires: llvm-libs >= 11 +BuildRequires: python3-docutils + +%description +Service consisting of daemon (bpftune) and plugins which +support auto-tuning of Linux via BPF observability. + +%package devel +Requires: %{name} = %{evr} +Requires: libbpf-devel >= 0.6 +Requires: libcap-devel +Requires: bpftool +Requires: libnl3-devel + +%pkg_devel_files + +%package pcp-pmda +Summary: Performance Co-Pilot PMDA for bpftune +Requires: %{name} = %{evr} +Requires: pcp +Requires: python3-pcp + +%description pcp-pmda +The %{name}-pcp-pmda exports tunables and metrics from bpftune +to Performance Co-Pilot (PCP) + +%prep +%autosetup -n %{name}-%{ver} + +%build +%make_build + +%install +%make_install + +%post +%systemd_post bpftune.service + +%preun +%systemd_preun bpftune.service + +%postun +%systemd_postun_with_restart bpftune.service + +%files +%doc README.md TROUBLESHOOTING.md SECURITY.md +%license LICENSE.txt +%defattr(-,root,root) +%{_sysconfdir}/ld.so.conf.d/libbpftune.conf +%{_sbindir}/bpftune +%{_unitdir}/bpftune.service +%{_libdir}/libbpftune.so.%(echo '%ver' | sed 's/-/./g') +%{_libdir}/bpftune/* +%{_mandir}/*/* +%if %{with openrc} +%{_sysconfdir}/conf.d/bpftune +%{_sysconfdir}/init.d/bpftune +%else +%exclude %{_sysconfdir}/conf.d/bpftune +%exclude %{_sysconfdir}/init.d/bpftune +%endif + +%files pcp-pmda +%{pcpdir}/%{name}/* + +%changelog +* Fri Mar 6 2026 veuxit - 0.4-2 +- Initial package release diff --git a/anda/system/bpftune/stable/update.rhai b/anda/system/bpftune/stable/update.rhai new file mode 100644 index 0000000000..eaae1cb979 --- /dev/null +++ b/anda/system/bpftune/stable/update.rhai @@ -0,0 +1 @@ +rpm.global("ver", gh("oracle/bpftune")); diff --git a/anda/system/depthcharge-tools/anda.hcl b/anda/system/depthcharge-tools/anda.hcl index a65b3f99ea..414f95e4cd 100644 --- a/anda/system/depthcharge-tools/anda.hcl +++ b/anda/system/depthcharge-tools/anda.hcl @@ -1,4 +1,5 @@ project pkg { + arches = ["x86_64"] rpm { spec = "depthcharge-tools.spec" } diff --git a/anda/system/depthcharge-tools/depthcharge-tools.spec b/anda/system/depthcharge-tools/depthcharge-tools.spec index 77bc2946e1..e0e9c44c12 100644 --- a/anda/system/depthcharge-tools/depthcharge-tools.spec +++ b/anda/system/depthcharge-tools/depthcharge-tools.spec @@ -1,12 +1,13 @@ Name: depthcharge-tools Version: 0.6.3 -Release: 1%?dist +Release: 4%?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 -BuildRequires: python3-setuptools python3-rpm-macros systemd-rpm-macros redhat-rpm-config python3-docutils +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 BuildArch: noarch %description @@ -16,13 +17,14 @@ with depthcharge, the Chrome OS bootloader. %pkg_completion -Bz mkdepthcharge depthchargectl %prep -%autosetup -n %name-v%version +%autosetup -n %name-v%version -p1 %build -python3 setup.py build +%pyproject_wheel %install -python3 setup.py install --skip-build --root=%buildroot +%pyproject_install +%pyproject_save_files depthcharge_tools mkdir -p %buildroot/usr/lib/kernel/install.d %buildroot{%_unitdir,%bash_completions_dir,%zsh_completions_dir,%_mandir/man1} install -Dm644 systemd/*.install %buildroot/usr/lib/kernel/install.d/ install -Dm644 systemd/*.service %buildroot%_unitdir/ @@ -34,15 +36,13 @@ rst2man mkdepthcharge.rst | gzip > mkdepthcharge.1.gz rst2man depthchargectl.rst | gzip > depthchargectl.1.gz install -Dm644 *.1.gz %buildroot%_mandir/man1/ -%files +%files -f %{pyproject_files} %doc README.rst %license LICENSE %_bindir/{mkdepthcharge,depthchargectl} %_mandir/man1/{mkdepthcharge,depthchargectl}.1.gz /usr/lib/kernel/install.d/90-depthcharge-tools.install %_unitdir/depthchargectl-bless.service -%_prefix/lib/python%python3_version/site-packages/depthcharge_tools-%version-py%python3_version.egg-info/ -%_prefix/lib/python%python3_version/site-packages/depthcharge_tools/ %changelog %autochangelog diff --git a/anda/system/depthcharge-tools/fix-importlib.patch b/anda/system/depthcharge-tools/fix-importlib.patch new file mode 100644 index 0000000000..a3bf34ffda --- /dev/null +++ b/anda/system/depthcharge-tools/fix-importlib.patch @@ -0,0 +1,12 @@ +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/falcond-profiles/falcond-profiles.spec b/anda/system/falcond-profiles/falcond-profiles.spec index 5572e4b7c9..e465fc4b6c 100644 --- a/anda/system/falcond-profiles/falcond-profiles.spec +++ b/anda/system/falcond-profiles/falcond-profiles.spec @@ -1,10 +1,10 @@ -%global commit f52c3445a9b9aa18401b7c8e9bf532c37758e585 +%global commit a3e0e63303c0a310a504c5f3e2a9d71496d7aaab %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260119 +%global commit_date 20260206 Name: falcond-profiles Version: 0^%{commit_date}git.%{shortcommit} -Release: 2%{?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 3387ac7a73..0d4da5be7b 100644 --- a/anda/system/falcond/falcond.spec +++ b/anda/system/falcond/falcond.spec @@ -1,8 +1,8 @@ %global _include_minidebuginfo 0 Name: falcond -Version: 1.2.3 -Release: 2%{?dist} +Version: 2.0.1 +Release: 1%{?dist} Summary: Advanced Linux Gaming Performance Daemon License: MIT URL: https://git.pika-os.com/general-packages/falcond @@ -33,7 +33,7 @@ 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 -c x86_64_v2 -s} \ +%{zig_build_target -r fast -cx86_64_v2 -s} \ %elifarch aarch64 %{zig_build_target -r fast -s} \ %endif diff --git a/anda/system/ipu6-drivers/akmod/intel-ipu6-kmod.spec b/anda/system/ipu6-drivers/akmod/intel-ipu6-kmod.spec index 45bacaa4be..6d57bed63c 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 32cc687732326cb1701228d8cb0c566fbbfc1117 +%global commit 9323d2e45e8423321d90d7b3832fbfaf398a159a %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260121 +%global commit_date 20260319 %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 @@ -10,7 +10,7 @@ Name: %{modulename}-kmod Summary: Akmods module for %{modulename} Version: 0^%{commit_date}git.%{shortcommit} -Release: 1%?dist +Release: 1%{?dist} License: GPL-2.0-or-later URL: https://github.com/intel/ipu6-drivers Source0: https://github.com/intel/ipu6-drivers/archive/%{commit}/ipu6-drivers-%{shortcommit}.tar.gz diff --git a/anda/system/ipu6-drivers/dkms/dkms-intel-ipu6.spec b/anda/system/ipu6-drivers/dkms/dkms-intel-ipu6.spec index a760202372..d85b6a4726 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 32cc687732326cb1701228d8cb0c566fbbfc1117 +%global commit 9323d2e45e8423321d90d7b3832fbfaf398a159a %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260121 +%global commit_date 20260319 %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 @@ -9,7 +9,7 @@ Name: dkms-%{modulename} Summary: DKMS module for %{modulename} Version: 0^%{commit_date}git.%{shortcommit} -Release: 1%?dist +Release: 1%{?dist} License: GPL-2.0-or-later URL: https://github.com/intel/ipu6-drivers Source0: %{url}/archive/%{commit}.tar.gz#/ipu6-drivers-%{shortcommit}.tar.gz 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 193390fb5c..f55878437e 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 32cc687732326cb1701228d8cb0c566fbbfc1117 +%global commit 9323d2e45e8423321d90d7b3832fbfaf398a159a %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260121 +%global commit_date 20260319 # 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 @@ -9,7 +9,7 @@ Name: intel-ipu6-drivers Summary: Common files for Intel IPU6 drivers Version: 0^%{commit_date}git.%{shortcommit} -Release: 1%?dist +Release: 1%{?dist} License: GPL-2.0-or-later URL: https://github.com/intel/ipu6-drivers Source0: https://github.com/intel/ipu6-drivers/archive/%{commit}/ipu6-drivers-%{shortcommit}.tar.gz diff --git a/anda/system/limine/limine.spec b/anda/system/limine/limine.spec index 9cf688bd4a..1c65b5d8dc 100644 --- a/anda/system/limine/limine.spec +++ b/anda/system/limine/limine.spec @@ -1,6 +1,6 @@ Name: limine -Version: 10.6.3 -Release: 1%?dist +Version: 10.8.5 +Release: 1%{?dist} Summary: Modern, advanced, portable, multiprotocol bootloader License: BSD-2-Clause URL: https://limine-bootloader.org 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 b947aa2a4e..b1c74bd2b8 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,28 +1,30 @@ -Name: compat-nvidia-repo-580 -Version: 580.126.09 +Name: compat-nvidia-repo-580xx +Version: 580.142 Epoch: 3 -Release: 1%?dist +Release: 2%{?dist} Summary: Compatibility package required by official CUDA packages License: NVIDIA License URL: https://developer.nvidia.com/cuda-toolkit BuildArch: noarch -Requires: nvidia-driver-580 >= %{?epoch:%{epoch}:}%{version} -Requires: nvidia-driver-580-cuda >= %{?epoch:%{epoch}:}%{version} -Requires: nvidia-driver-580-cuda-libs >= %{?epoch:%{epoch}:}%{version} -Requires: nvidia-driver-580-libs >= %{?epoch:%{epoch}:}%{version} -Requires: nvidia-580-kmod >= %{?epoch:%{epoch}:}%{version} -Requires: nvidia-settings-580 >= %{?epoch:%{epoch}:}%{version} +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-580 >= %{?epoch:%{epoch}:}%{version} -Provides: nvidia-open-580 >= %{?epoch:%{epoch}:}%{version} +Provides: cuda-drivers-580xx >= %{?epoch:%{epoch}:}%{version} +Provides: nvidia-open-580xx >= %{?epoch:%{epoch}:}%{version} # Add any versioned provides: 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} + %description Nvidia drivers metapackage required by official CUDA packages. It pulls in all Nvidia driver components. 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 new file mode 100644 index 0000000000..b17015cd83 --- /dev/null +++ b/anda/system/nvidia-580/dkms-nvidia/0001-Enable-atomic-kernel-modesetting-by-default.patch @@ -0,0 +1,42 @@ +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 4bd1bda5f8..20b12815ad 100644 --- a/anda/system/nvidia-580/dkms-nvidia/dkms-nvidia-580.spec +++ b/anda/system/nvidia-580/dkms-nvidia/dkms-nvidia-580.spec @@ -3,22 +3,25 @@ # RPM inexplicably thinks this package deps on a version of libcrypto it does not? %global __requires_exclude (libcrypto\\.so\\.1\\.1.*)$ %global debug_package %{nil} -%global modulename nvidia +%global modulename nvidia-580xx -Name: dkms-%{modulename}-580 +Name: dkms-%{modulename} Version: 580.119.02 -Release: 1%?dist +Release: 1%{?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-%{modulename}.conf +Source1: dkms-nvidia.conf +Patch0: 0001-Enable-atomic-kernel-modesetting-by-default.patch BuildRequires: sed -Provides: %{modulename}-580-kmod = %{?epoch:%{epoch}:}%{version} -Requires: %{modulename}-580-kmod-common = %{?epoch:%{epoch}:}%{version} +Provides: %{modulename}-kmod = %{?epoch:%{epoch}:}%{version} +Requires: %{modulename}-kmod-common = %{?epoch:%{epoch}:}%{version} Requires: dkms Conflicts: akmod-nvidia +Conflicts: akmod-nvidia-580xx +Provides: dkms-nvidia-580 = %{evr} # Unlike most DKMS packages, this package is NOT noarch! ExclusiveArch: x86_64 aarch64 @@ -28,7 +31,10 @@ 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 cp -f %{SOURCE1} dkms.conf 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 2703abb8b3..3fae75722a 100644 --- a/anda/system/nvidia-580/nvidia-driver/nvidia-driver-580.spec +++ b/anda/system/nvidia-580/nvidia-driver/nvidia-driver-580.spec @@ -10,9 +10,9 @@ %global _systemd_util_dir %{_prefix}/lib/systemd %endif -Name: %{real_name}-580 -Version: 580.126.09 -Release: 2%?dist +Name: %{real_name}-580xx +Version: 580.142 +Release: 1%{?dist} Summary: NVIDIA's proprietary display driver for NVIDIA graphic cards Epoch: 3 License: NVIDIA License @@ -55,6 +55,8 @@ Conflicts: nvidia-x11-drv-470xx Conflicts: xorg-x11-drv-nvidia Conflicts: xorg-x11-drv-nvidia-470xx +Provides: %{real_name}-580 = %{evr} + %description This package provides the most recent NVIDIA display driver which allows for hardware accelerated rendering with recent NVIDIA chipsets. @@ -74,7 +76,7 @@ Requires: libglvnd-egl%{?_isa} >= 1.0 Requires: libglvnd-gles%{?_isa} >= 1.0 Requires: libglvnd-glx%{?_isa} >= 1.0 Requires: libglvnd-opengl%{?_isa} >= 1.0 -Requires: libnvidia-ml-580%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} +Requires: libnvidia-ml-580xx%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} Requires: vulkan-loader %if 0%{?fedora} %ifarch x86_64 @@ -82,8 +84,8 @@ Requires: (%{name}-libs(x86-32) = %{?epoch:%{epoch}:}%{version}-%{release} %endif %endif # dlopened -Requires: libnvidia-gpucomp-580%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} -Requires: libnvidia-ml-580%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} +Requires: libnvidia-gpucomp-580xx%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} +Requires: libnvidia-ml-580xx%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} Requires: %{name}-cuda-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} Conflicts: nvidia-x11-drv-libs @@ -91,6 +93,8 @@ Conflicts: nvidia-x11-drv-470xx-libs Conflicts: xorg-x11-drv-nvidia-libs Conflicts: xorg-x11-drv-nvidia-470xx-libs +Provides: %{real_name}-580-libs = %{evr} + %description libs This package provides the shared libraries for %{name}. @@ -98,20 +102,21 @@ This package provides the shared libraries for %{name}. Summary: Libraries for %{name}-cuda Provides: %{name}-devel = %{?epoch:%{epoch}:}%{version}-%{release} Obsoletes: %{name}-devel < %{?epoch:%{epoch}:}%{version}-%{release} -Requires: libnvidia-ml-580 = %{?epoch:%{epoch}:}%{version}-%{release} +Provides: %{real_name}-580-cuda-libs = %{evr} +Requires: libnvidia-ml-580xx = %{?epoch:%{epoch}:}%{version}-%{release} Requires: %{name}-cuda-libs%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} %ifarch x86_64 aarch64 -Requires: libnvidia-cfg-580 = %{?epoch:%{epoch}:}%{version}-%{release} +Requires: libnvidia-cfg-580xx = %{?epoch:%{epoch}:}%{version}-%{release} %endif %if 0%{?fedora} %ifarch x86_64 -Requires: (%{name}-cuda-libs-580(x86-32) = %{?epoch:%{epoch}:}%{version}-%{release} if steam(x86-32)) +Requires: (%{name}-cuda-libs-580xx(x86-32) = %{?epoch:%{epoch}:}%{version}-%{release} if steam(x86-32)) %endif %endif # dlopened: -Requires: libnvidia-gpucomp-580%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} -Requires: libnvidia-ml-580 = %{?epoch:%{epoch}:}%{version}-%{release} +Requires: libnvidia-gpucomp-580xx%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} +Requires: libnvidia-ml-580xx = %{?epoch:%{epoch}:}%{version}-%{release} Conflicts: xorg-x11-drv-nvidia-cuda-libs Conflicts: xorg-x11-drv-nvidia-470xx-cuda-libs @@ -119,48 +124,51 @@ Conflicts: xorg-x11-drv-nvidia-470xx-cuda-libs %description cuda-libs This package provides the CUDA libraries for %{name}-cuda. -%package -n libnvidia-fbc-580 +%package -n libnvidia-fbc-580xx Summary: NVIDIA OpenGL-based Framebuffer Capture libraries -Provides: %{real_name}-NvFBCOpenGL-580 = %{?epoch:%{epoch}:}%{version}-%{release} +Provides: %{real_name}-NvFBCOpenGL-580xx = %{?epoch:%{epoch}:}%{version}-%{release} Obsoletes: %{real_name}-NvFBCOpenGL < %{?epoch:%{epoch}:}%{version}-%{release} +Provides: libnvidia-fbc-580 = %{evr} %if 0%{?fedora} %ifarch x86_64 -Requires: (libnvidia-fbc-580(x86-32) = %{?epoch:%{epoch}:}%{version}-%{release} if steam(x86-32)) +Requires: (libnvidia-fbc-580xx(x86-32) = %{?epoch:%{epoch}:}%{version}-%{release} if steam(x86-32)) %endif %endif # dlopened: -Requires: %{name}-cuda-libs-580%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} +Requires: %{name}-cuda-libs-580xx%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} -%description -n libnvidia-fbc-580 +%description -n libnvidia-fbc-580xx This library provides a high performance, low latency interface to capture and optionally encode the composited framebuffer of an X screen. NvFBC are private APIs that are only available to NVIDIA approved partners for use in remote graphics scenarios. -%package -n libnvidia-gpucomp-580 +%package -n libnvidia-gpucomp-580xx Summary: NVIDIA library for shader compilation (nvgpucomp) %if 0%{?fedora} %ifarch x86_64 -Requires: (libnvidia-gpucomp-580(x86-32) = %{?epoch:%{epoch}:}%{version}-%{release} if steam(x86-32)) +Requires: (libnvidia-gpucomp-580xx(x86-32) = %{?epoch:%{epoch}:}%{version}-%{release} if steam(x86-32)) %endif %endif +Provides: libnvidia-gpucomp-580 = %{evr} -%description -n libnvidia-gpucomp-580 +%description -n libnvidia-gpucomp-580xx This package contains the private libnvidia-gpucomp runtime library which is used by other driver components. -%package -n libnvidia-ml-580 +%package -n libnvidia-ml-580xx Summary: NVIDIA Management Library (NVML) -Provides: cuda-nvml-580%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} -Provides: %{real_name}-NVML-580 = %{?epoch:%{epoch}:}%{version}-%{release} +Provides: cuda-nvml-580xx%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release} +Provides: %{real_name}-NVML-580xx = %{?epoch:%{epoch}:}%{version}-%{release} +Provides: libnvidia-ml-580 = %{evr} %if 0%{?fedora} %ifarch x86_64 -Requires: (libnvidia-ml-580(x86-32) = %{?epoch:%{epoch}:}%{version}-%{release} if steam(x86-32)) +Requires: (libnvidia-ml-580xx(x86-32) = %{?epoch:%{epoch}:}%{version}-%{release} if steam(x86-32)) %endif %endif Obsoletes: %{real_name}-NVML < %{?epoch:%{epoch}:}%{version}-%{release} -%description -n libnvidia-ml-580 +%description -n libnvidia-ml-580xx A C-based API for monitoring and managing various states of the NVIDIA GPU devices. It provides a direct access to the queries and commands exposed via nvidia-smi. The run-time version of NVML ships with the NVIDIA display driver, @@ -170,38 +178,43 @@ to be a platform for building 3rd party applications. %ifarch x86_64 aarch64 -%package -n libnvidia-cfg-580 +%package -n libnvidia-cfg-580xx Summary: NVIDIA Config public interface (nvcfg) +Provides: libnvidia-cfg-580 = %{evr} -%description -n libnvidia-cfg-580 +%description -n libnvidia-cfg-580xx This package contains the private libnvidia-cfg runtime library which is used by other driver components. %package cuda Summary: CUDA integration for %{name} -Requires: %{name}-cuda-libs-580%{?_isa} = %{?epoch:%{epoch}:}%{version} -Requires: nvidia-580-kmod-common = %{?epoch:%{epoch}:}%{version} -Requires: nvidia-persistenced-580 = %{?epoch:%{epoch}:}%{version} +Requires: %{name}-cuda-libs-580xx%{?_isa} = %{?epoch:%{epoch}:}%{version} +Requires: nvidia-580xx-kmod-common = %{?epoch:%{epoch}:}%{version} +Requires: nvidia-persistenced-580xx = %{?epoch:%{epoch}:}%{version} Requires: opencl-filesystem Requires: ocl-icd Conflicts: xorg-x11-drv-nvidia-cuda Conflicts: xorg-x11-drv-nvidia-470xx-cuda +Provides: %{real_name}-580-cuda = %{evr} + %description cuda This package provides the CUDA integration components for %{name}. %if 0%{?fedora} || 0%{?rhel} < 10 -%package -n xorg-x11-nvidia-580 +%package -n xorg-x11-nvidia-580xx Summary: X.org X11 NVIDIA driver and extensions Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version} Requires: xorg-x11-server-Xorg%{?_isa} -Supplements: (%{real_name}-580 and xorg-x11-server-Xorg) +Supplements: (%{real_name}-580xx and xorg-x11-server-Xorg) Conflicts: xorg-x11-drv-nvidia Conflicts: xorg-x11-drv-nvidia-470xx -%description -n xorg-x11-nvidia-580 +Provides: xorg-x11-nvidia-580 = %{evr} + +%description -n xorg-x11-nvidia-580xx The NVIDIA X.org X11 driver and associated components. %endif @@ -414,13 +427,13 @@ appstream-util validate --nonet %{buildroot}%{_metainfodir}/com.nvidia.driver.me %endif %if 0%{?fedora} || 0%{?rhel} < 10 -%files -n xorg-x11-nvidia-580 +%files -n xorg-x11-nvidia-580xx %config(noreplace) %{_sysconfdir}/X11/xorg.conf.d/10-nvidia.conf %{_libdir}/xorg/modules/extensions/libglxserver_nvidia.so %{_libdir}/xorg/modules/drivers/nvidia_drv.so %endif -%files -n libnvidia-cfg-580 +%files -n libnvidia-cfg-580xx %{_libdir}/libnvidia-cfg.so.1 %{_libdir}/libnvidia-cfg.so.%{version} @@ -523,14 +536,14 @@ appstream-util validate --nonet %{buildroot}%{_metainfodir}/com.nvidia.driver.me %endif %endif -%files -n libnvidia-fbc-580 +%files -n libnvidia-fbc-580xx %{_libdir}/libnvidia-fbc.so.1 %{_libdir}/libnvidia-fbc.so.%{version} -%files -n libnvidia-gpucomp-580 +%files -n libnvidia-gpucomp-580xx %{_libdir}/libnvidia-gpucomp.so.%{version} -%files -n libnvidia-ml-580 +%files -n libnvidia-ml-580xx %{_libdir}/libnvidia-ml.so.1 %{_libdir}/libnvidia-ml.so.%{version} 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 af94229fc4..3f5c8a26be 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 @@ -3,10 +3,11 @@ # gsp_*.bin: ELF 64-bit LSB executable, UCB RISC-V %global _binaries_in_noarch_packages_terminate_build 0 %global __brp_strip %{nil} +%global modulename nvidia-580xx -Name: nvidia-580-kmod-common -Version: 580.126.09 -Release: 1%?dist +Name: %{modulename}-kmod-common +Version: 580.142 +Release: 2%{?dist} Summary: Common file for NVIDIA's proprietary driver kernel modules Epoch: 3 License: NVIDIA License @@ -25,11 +26,12 @@ Source21: 99-nvidia.conf BuildRequires: systemd-rpm-macros Requires: dracut -Requires: nvidia-modprobe-580 -Requires: nvidia-driver-580 = %{?epoch:%{epoch}:}%{version} -Requires: nvidia-driver-580-libs = %{?epoch:%{epoch}:}%{version} -Requires: nvidia-580-kmod = %{?epoch:%{epoch}:}%{version} -Provides: nvidia-580-kmod-common = %{?epoch:%{epoch}:}%{version} +Requires: nvidia-modprobe-580xx +Requires: nvidia-driver-580xx = %{?epoch:%{epoch}:}%{version} +Requires: nvidia-driver-580xx-libs = %{?epoch:%{epoch}:}%{version} +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} %description 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 new file mode 100644 index 0000000000..b17015cd83 --- /dev/null +++ b/anda/system/nvidia-580/nvidia-kmod/0001-Enable-atomic-kernel-modesetting-by-default.patch @@ -0,0 +1,42 @@ +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/anda.hcl b/anda/system/nvidia-580/nvidia-kmod/anda.hcl index d7f5dc58e2..df736abd69 100644 --- a/anda/system/nvidia-580/nvidia-kmod/anda.hcl +++ b/anda/system/nvidia-580/nvidia-kmod/anda.hcl @@ -1,6 +1,6 @@ project "pkg" { rpm { - spec = "nvidia-580-kmod.spec" + spec = "nvidia-580xx-kmod.spec" } labels { mock = 1 diff --git a/anda/system/nvidia-580/nvidia-kmod/nvidia-580-kmod.spec b/anda/system/nvidia-580/nvidia-kmod/nvidia-580xx-kmod.spec similarity index 77% rename from anda/system/nvidia-580/nvidia-kmod/nvidia-580-kmod.spec rename to anda/system/nvidia-580/nvidia-kmod/nvidia-580xx-kmod.spec index 1f53812367..f1e49ed4c4 100644 --- a/anda/system/nvidia-580/nvidia-kmod/nvidia-580-kmod.spec +++ b/anda/system/nvidia-580/nvidia-kmod/nvidia-580xx-kmod.spec @@ -1,12 +1,12 @@ # Build only the akmod package and no kernel module packages: %define buildforkernels akmod -%global real_name nvidia-kmod +%global modulename nvidia-580xx %global debug_package %{nil} -Name: nvidia-580-kmod +Name: %{modulename}-kmod Version: 580.119.02 -Release: 1%?dist +Release: 1%{?dist} Summary: NVIDIA display driver kernel module Epoch: 3 License: NVIDIA License @@ -14,15 +14,17 @@ 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 -Requires: nvidia-580-kmod-common = %{?epoch:%{epoch}:}%{version} +Patch0: 0001-Enable-atomic-kernel-modesetting-by-default.patch +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 # kmodtool does its magic here: -%{expand:%(kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{real_name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } +%{expand:%(kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } %description The NVidia %{version} display driver kernel module for kernel %{kversion}. @@ -31,11 +33,14 @@ 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 %{real_name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null +kmodtool --target %{_target_cpu} --repo terra.fyralabs.com --kmodname %{modulename} %{?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} + +pushd kernel-open %autopatch -p1 +popd rm -f */dkms.conf 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 7145440782..9885850c29 100644 --- a/anda/system/nvidia-580/nvidia-modprobe/nvidia-modprobe-580.spec +++ b/anda/system/nvidia-580/nvidia-modprobe/nvidia-modprobe-580.spec @@ -1,8 +1,8 @@ %global real_name nvidia-modprobe -Name: %{real_name}-580 -Version: 580.126.09 -Release: 1%?dist +Name: %{real_name}-580xx +Version: 580.142 +Release: 2%{?dist} Summary: NVIDIA kernel module loader Epoch: 3 License: GPLv2+ @@ -15,6 +15,8 @@ Patch0: %{real_name}-man-page-permissions.patch BuildRequires: gcc BuildRequires: m4 +Provides: %{real_name}-580 = %{evr} + %description This utility is used by user-space NVIDIA driver components to make sure the NVIDIA kernel modules are loaded and that the NVIDIA character device files are 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 ac823434a5..d559bb97d3 100644 --- a/anda/system/nvidia-580/nvidia-persistenced/nvidia-persistenced-580.spec +++ b/anda/system/nvidia-580/nvidia-persistenced/nvidia-persistenced-580.spec @@ -1,8 +1,8 @@ %global real_name nvidia-persistenced -Name: %{real_name}-580 -Version: 580.126.09 -Release: 1%?dist +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+ @@ -21,7 +21,9 @@ BuildRequires: systemd-devel Requires(post): systemd Requires(preun): systemd Requires(postun): systemd -Requires: libnvidia-cfg-580%{?_isa} >= %{?epoch:%{epoch}:}%{version} +Requires: libnvidia-cfg-580xx%{?_isa} >= %{?epoch:%{epoch}:}%{version} + +Provides: %{real_name}-580 = %{evr} %description The %{real_name} utility is used to enable persistent software state in the NVIDIA 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 9919fcc5c5..0876bb3351 100644 --- a/anda/system/nvidia-580/nvidia-settings/nvidia-settings-580.spec +++ b/anda/system/nvidia-580/nvidia-settings/nvidia-settings-580.spec @@ -1,8 +1,8 @@ %global real_name nvidia-settings -Name: %{real_name}-580 -Version: 580.126.09 -Release: 1%?dist +Name: %{real_name}-580xx +Version: 580.142 +Release: 2%{?dist} Summary: Configure the NVIDIA graphics driver Epoch: 3 License: GPLv2+ @@ -35,11 +35,13 @@ BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(wayland-client) BuildRequires: vulkan-headers -Requires: nvidia-libXNVCtrl-580%{?_isa} = %{?epoch}:%{version}-%{release} -Requires: nvidia-driver-580%{?_isa} = %{?epoch}:%{version} +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} + %description The %{real_name} utility is a tool for configuring the NVIDIA graphics driver. It operates by communicating with the NVIDIA X driver, querying and @@ -47,21 +49,24 @@ updating state as appropriate. This communication is done with the NV-CONTROL X extension. -%package -n nvidia-libXNVCtrl-580 +%package -n nvidia-libXNVCtrl-580xx Summary: Library providing the NV-CONTROL API Obsoletes: libXNVCtrl < %{?epoch}:%{version}-%{release} +Provides: libXNVCtrl-580xx = %{?epoch}:%{version}-%{release} +Provides: nvidia-libXNVCtrl-580 = %{?epoch}:%{version}-%{release} Provides: libXNVCtrl-580 = %{?epoch}:%{version}-%{release} -%description -n nvidia-libXNVCtrl-580 +%description -n nvidia-libXNVCtrl-580xx This library provides the NV-CONTROL API for communicating with the proprietary NVidia xorg driver. It is required for proper operation of the %{real_name} utility. -%package -n nvidia-libXNVCtrl-580-devel +%package -n nvidia-libXNVCtrl-580xx-devel Summary: Development files for libXNVCtrl -Requires: nvidia-libXNVCtrl-580 = %{?epoch}:%{version}-%{release} +Requires: nvidia-libXNVCtrl-580xx = %{?epoch}:%{version}-%{release} Requires: libX11-devel +Provides: nvidia-libXNVCtrl-580-devel = %{evr} -%description -n nvidia-libXNVCtrl-580-devel +%description -n nvidia-libXNVCtrl-580xx-devel This devel package contains libraries and header files for developing applications that use the NV-CONTROL API. @@ -126,11 +131,11 @@ appstream-util validate-relax --nonet %{buildroot}/%{_metainfodir}/%{real_name}. %{_mandir}/man1/%{real_name}.* %{_sysconfdir}/xdg/autostart/%{real_name}-load.desktop -%files -n nvidia-libXNVCtrl-580 +%files -n nvidia-libXNVCtrl-580xx %license COPYING %{_libdir}/libXNVCtrl.so.* -%files -n nvidia-libXNVCtrl-580-devel +%files -n nvidia-libXNVCtrl-580xx-devel %doc doc/NV-CONTROL-API.txt doc/FRAMELOCK.txt %{_includedir}/NVCtrl %{_libdir}/libXNVCtrl.so 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 543ce18c5b..26e808da96 100644 --- a/anda/system/nvidia-580/nvidia-xconfig/nvidia-xconfig-580.spec +++ b/anda/system/nvidia-580/nvidia-xconfig/nvidia-xconfig-580.spec @@ -1,8 +1,8 @@ %global real_name nvidia-xconfig -Name: %{real_name}-580 -Version: 580.126.09 -Release: 1%?dist +Name: %{real_name}-580xx +Version: 580.142 +Release: 2%{?dist} Summary: NVIDIA X configuration file editor Epoch: 3 License: GPLv2+ @@ -15,8 +15,10 @@ BuildRequires: gcc BuildRequires: libpciaccess-devel BuildRequires: m4 -Requires: libnvidia-cfg-580%{?_isa} >= %{?epoch:%{epoch}:}%{version} -Requires: xorg-x11-nvidia-580%{?_isa} >= %{?epoch:%{epoch}:}%{version} +Requires: libnvidia-cfg-580xx%{?_isa} >= %{?epoch:%{epoch}:}%{version} +Requires: xorg-x11-nvidia-580xx%{?_isa} >= %{?epoch:%{epoch}:}%{version} + +Provides: %{real_name}-580 = %{evr} %description %{real_name} is a command line tool intended to provide basic control over diff --git a/anda/system/nvidia-patch/nvidia-patch.spec b/anda/system/nvidia-patch/nvidia-patch.spec index 18a5219f31..b24409ee89 100644 --- a/anda/system/nvidia-patch/nvidia-patch.spec +++ b/anda/system/nvidia-patch/nvidia-patch.spec @@ -1,13 +1,13 @@ %global debug_package %{nil} -%global commit 7d646c364414d1fc0f97ef58412c6756095cd43c +%global commit cadc84be4f0318d6a6345cab2cff5e7b7f6758f9 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260121 +%global commit_date 20260318 %global patches %{_datadir}/src/nvidia-patch Name: nvidia-patch Version: 0^%commit_date.%{shortcommit} -Release: 1%?dist +Release: 1%{?dist} Summary: NVENC and NvFBC patches for NVIDIA drivers License: EULA 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 new file mode 100644 index 0000000000..6aadd9a370 --- /dev/null +++ b/anda/system/nvidia/dkms-nvidia/0001-Enable-atomic-kernel-modesetting-by-default.patch @@ -0,0 +1,44 @@ +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 new file mode 100644 index 0000000000..2bca90ba17 --- /dev/null +++ b/anda/system/nvidia/dkms-nvidia/6.19-590.patch @@ -0,0 +1,130 @@ +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 a4d378c806..bf400e099d 100644 --- a/anda/system/nvidia/dkms-nvidia/dkms-nvidia.spec +++ b/anda/system/nvidia/dkms-nvidia/dkms-nvidia.spec @@ -12,6 +12,8 @@ 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 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} diff --git a/anda/system/nvidia/libva-nvidia-driver/libva-nvidia-driver.spec b/anda/system/nvidia/libva-nvidia-driver/libva-nvidia-driver.spec index 8255c2bf77..71f4ae5c78 100644 --- a/anda/system/nvidia/libva-nvidia-driver/libva-nvidia-driver.spec +++ b/anda/system/nvidia/libva-nvidia-driver/libva-nvidia-driver.spec @@ -1,5 +1,5 @@ -%global commit0 2e204c67d4401292905f6afb4832a7e7df9ce53a -%global date 20251125 +%global commit0 c4e1788b6d554f29adec31f3f8aa984c143c54c1 +%global date 20260311 %global shortcommit0 %(c=%{commit0}; echo ${c:0:7}) %global upstream_name nvidia-vaapi-driver @@ -10,8 +10,8 @@ Name: libva-nvidia-driver Epoch: 1 -Version: 0.0.14%{!?tag:^%{date}git%{shortcommit0}} -Release: 2%?dist +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} 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 4300726631..c0cd6ec7de 100644 --- a/anda/system/nvidia/nvidia-container-toolkit/nvidia-container-toolkit.spec +++ b/anda/system/nvidia/nvidia-container-toolkit/nvidia-container-toolkit.spec @@ -1,6 +1,6 @@ Name: nvidia-container-toolkit -Version: 1.18.1 -Release: 2%?dist +Version: 1.19.0 +Release: 1%{?dist} Summary: NVIDIA Container Toolkit License: Apache-2.0 Group: Development/Tools/Other 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 63b2520ff9..aa97a4f0fe 100644 --- a/anda/system/nvidia/nvidia-kmod-common/nvidia-kmod-common.spec +++ b/anda/system/nvidia/nvidia-kmod-common/nvidia-kmod-common.spec @@ -6,7 +6,7 @@ Name: nvidia-kmod-common Version: 590.48.01 -Release: 1%?dist +Release: 2%{?dist} Summary: Common file for NVIDIA's proprietary driver kernel modules Epoch: 3 License: NVIDIA License @@ -29,6 +29,7 @@ Requires: nvidia-modprobe Requires: nvidia-driver = %{?epoch:%{epoch}:}%{version} Requires: nvidia-driver-libs = %{?epoch:%{epoch}:}%{version} Requires: nvidia-kmod = %{?epoch:%{epoch}:}%{version} +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} 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 new file mode 100644 index 0000000000..6aadd9a370 --- /dev/null +++ b/anda/system/nvidia/nvidia-kmod/0001-Enable-atomic-kernel-modesetting-by-default.patch @@ -0,0 +1,44 @@ +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 new file mode 100644 index 0000000000..2bca90ba17 --- /dev/null +++ b/anda/system/nvidia/nvidia-kmod/6.19-590.patch @@ -0,0 +1,130 @@ +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 3e92b51adb..cc9fc097a0 100644 --- a/anda/system/nvidia/nvidia-kmod/nvidia-kmod.spec +++ b/anda/system/nvidia/nvidia-kmod/nvidia-kmod.spec @@ -8,7 +8,7 @@ Name: nvidia-kmod Version: 590.48.01 -Release: 4%?dist +Release: 5%{?dist} Summary: NVIDIA display driver kernel module Epoch: 3 License: NVIDIA License @@ -16,9 +16,10 @@ 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 Requires: nvidia-kmod-common = %{?epoch:%{epoch}:}%{version} Requires: akmods -Requires: gcc-c++ Provides: akmod-nvidia-open = %{?epoch:%{epoch}:}%{version} Obsoletes: akmod-nvidia-open < %{?epoch:%{epoch}:}%{version} @@ -38,7 +39,11 @@ The NVidia %{version} display driver kernel module for kernel %{kversion}. # 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 -%autosetup -p1 -c +%setup -c + +pushd open-gpu-kernel-modules-%{version} +%autopatch -p1 +popd rm -f open-gpu-kernel-modules-%{version}/dkms.conf diff --git a/anda/system/opentabletdriver-nightly/opentabletdriver-nightly.spec b/anda/system/opentabletdriver-nightly/opentabletdriver-nightly.spec index e8564e426d..2dd51a5919 100644 --- a/anda/system/opentabletdriver-nightly/opentabletdriver-nightly.spec +++ b/anda/system/opentabletdriver-nightly/opentabletdriver-nightly.spec @@ -1,6 +1,6 @@ -%global commit e67ac5fe75284d4c1a41b559e03db6b85e7b626b +%global commit 3c9df1553e41fb4b1109b280ac022ad04305600e %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20260118 +%global commit_date 20260319 %global ver 0.6.6.2 # We aren't using Mono but RPM expected Mono @@ -11,7 +11,7 @@ Name: opentabletdriver-nightly Version: %ver^%commit_date.git~%shortcommit -Release: 1%?dist +Release: 1%{?dist} Summary: Open source, cross-platform, user-mode tablet driver License: LGPL-3.0-or-later Conflicts: opentabletdriver diff --git a/anda/system/pixi/pixi.spec b/anda/system/pixi/pixi.spec index 554f44b040..dea601fd2e 100644 --- a/anda/system/pixi/pixi.spec +++ b/anda/system/pixi/pixi.spec @@ -1,6 +1,6 @@ Name: pixi -Version: 0.63.2 -Release: 1%?dist +Version: 0.66.0 +Release: 1%{?dist} Summary: A cross-platform, multi-language package manager License: BSD-3-Clause URL: https://pixi.sh diff --git a/anda/system/polycrystal/polycrystal.spec b/anda/system/polycrystal/polycrystal.spec index 536002f422..cfd4ca01c3 100644 --- a/anda/system/polycrystal/polycrystal.spec +++ b/anda/system/polycrystal/polycrystal.spec @@ -1,15 +1,15 @@ Name: polycrystal Version: 0.2.0 -Release: 1%?dist +Release: 2%?dist Summary: Barebones "automatic" Flatpak installer for distribution-default Flatpak packages. URL: https://github.com/Ultramarine-Linux/polycrystal Source0: %url/archive/refs/tags/v%version.tar.gz -License: GPL +License: GPL-3.0-only BuildRequires: cargo cmake anda-srpm-macros cargo-rpm-macros systemd-rpm-macros mold glib2-devel flatpak-devel Packager: Owen Zimmerman %description -%summary +%summary. %prep %autosetup -n polycrystal-%version diff --git a/anda/system/readymade/git/readymade-git.spec b/anda/system/readymade/git/readymade-git.spec index 7c02e696f4..552dd377b4 100644 --- a/anda/system/readymade/git/readymade-git.spec +++ b/anda/system/readymade/git/readymade-git.spec @@ -1,10 +1,10 @@ -%global commit 3ad158ad7ab2f36e104d93378c2938d572cec92d -%global commit_date 20251216 +%global commit 92cc65b61fd5325d47be8793466b66c71ddc75ea +%global commit_date 20260220 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global crate readymade Name: readymade-git Version: %commit_date.%shortcommit -Release: 2%?dist +Release: 1%?dist Summary: Install ready-made distribution images! License: GPL-3.0-or-later URL: https://github.com/FyraLabs/readymade @@ -12,6 +12,7 @@ Source0: %url/archive/%commit.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: clang-devel BuildRequires: gcc BuildRequires: cmake diff --git a/anda/system/rtl8821cu/akmod/rtl8821cu-kmod.spec b/anda/system/rtl8821cu/akmod/rtl8821cu-kmod.spec index cc1a7d3119..7e101d011c 100644 --- a/anda/system/rtl8821cu/akmod/rtl8821cu-kmod.spec +++ b/anda/system/rtl8821cu/akmod/rtl8821cu-kmod.spec @@ -44,7 +44,7 @@ sed -i 's/CONFIG_PLATFORM_ARM64_RPI = n/CONFIG_PLATFORM_ARM64_RPI = y/g' Makefil for kernel_version in %{?kernel_versions}; do mkdir _kmod_build_${kernel_version%%___*} - cp -fr core hal include os_dep platform Kconfig Makefile halmac.mk _kmod_build_${kernel_version%%___*} + cp -fr core hal include os_dep platform Kconfig Makefile halmac.mk rtl8821c.mk _kmod_build_${kernel_version%%___*} done %build diff --git a/anda/system/scx-scheds/nightly/scx-scheds-nightly.spec b/anda/system/scx-scheds/nightly/scx-scheds-nightly.spec index b7d85e3cdd..ad93d8cba1 100644 --- a/anda/system/scx-scheds/nightly/scx-scheds-nightly.spec +++ b/anda/system/scx-scheds/nightly/scx-scheds-nightly.spec @@ -1,12 +1,12 @@ -%global commit ff5377d64a0af3334c453dd0857148f407cd0203 +%global commit 7e41c1e8af2000c67009730392d72898c5793e52 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20260120 -%global ver 1.0.19 +%global commitdate 20260318 +%global ver 1.1.0 %undefine __brp_mangle_shebangs Name: scx-scheds-nightly Version: %{ver}^%{commitdate}.git.%{shortcommit} -Release: 2%{?dist} +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 diff --git a/anda/system/scx-scheds/stable/scx-scheds.spec b/anda/system/scx-scheds/stable/scx-scheds.spec index 7b5e7f3412..2272678450 100644 --- a/anda/system/scx-scheds/stable/scx-scheds.spec +++ b/anda/system/scx-scheds/stable/scx-scheds.spec @@ -1,8 +1,8 @@ %undefine __brp_mangle_shebangs Name: scx-scheds -Version: 1.0.19 -Release: 2%{?dist} +Version: 1.1.0 +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 diff --git a/anda/system/scx-tools/nightly/scx-tools-nightly.spec b/anda/system/scx-tools/nightly/scx-tools-nightly.spec index 02a7bf1cb3..f7a6287db4 100644 --- a/anda/system/scx-tools/nightly/scx-tools-nightly.spec +++ b/anda/system/scx-tools/nightly/scx-tools-nightly.spec @@ -1,14 +1,14 @@ -%global commit 2cced64079cc2d1fbd570746b6bd47e93b99d09e +%global commit 788e39d31f5c9797b23e87e9ecb95eed772cfd99 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20260114 -%global ver 1.0.19 +%global commitdate 20260318 +%global ver 1.1.0 %global appid com.sched_ext.scx %global developer "sched-ext Contributors" %global org "com.sched_ext" Name: scx-tools-nightly Version: %{ver}^%{commitdate}.git.%{shortcommit} -Release: 2%{?dist} +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) SourceLicense: GPL-2.0-only diff --git a/anda/system/scx-tools/stable/scx-tools.spec b/anda/system/scx-tools/stable/scx-tools.spec index 7da2049772..bd8fbdde70 100644 --- a/anda/system/scx-tools/stable/scx-tools.spec +++ b/anda/system/scx-tools/stable/scx-tools.spec @@ -3,8 +3,8 @@ %global org "com.sched_ext" Name: scx-tools -Version: 1.0.19 -Release: 3%{?dist} +Version: 1.1.0 +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) SourceLicense: GPL-2.0-only diff --git a/anda/system/system76-power/anda.hcl b/anda/system/system76-power/anda.hcl new file mode 100644 index 0000000000..690acd49e5 --- /dev/null +++ b/anda/system/system76-power/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "system76-power.spec" + } +} \ No newline at end of file diff --git a/anda/system/system76-power/system76-power.spec b/anda/system/system76-power/system76-power.spec new file mode 100644 index 0000000000..f4882ceea7 --- /dev/null +++ b/anda/system/system76-power/system76-power.spec @@ -0,0 +1,57 @@ +%global appid com.system76.PowerDaemon + +Name: system76-power +Version: 1.2.8 +Release: 1%{?dist} +Summary: Power Profiles and dGPU Hotplug for System76 Laptops +License: GPL-3.0-only + +Packager: Jaiden Riordan +URL: https://github.com/pop-os/system76-power +Source0: %{url}/archive/refs/tags/%{version}.tar.gz + +BuildRequires: libusb-compat-0.1-devel +BuildRequires: dbus-devel +BuildRequires: systemd-rpm-macros +BuildRequires: cargo-rpm-macros +BuildRequires: mold + +%description +%summary. + +%prep +%autosetup +%cargo_prep_online + +%build +%cargo_build + +%install +install -Dm 644 data/%{appid}.conf %{buildroot}%{_datadir}/dbus-1/system.d/%{appid}.conf +install -Dm 644 data/%{appid}.policy %{buildroot}%{_datadir}/polkit-1/actions/%{appid}.policy +install -Dm 644 data/%{appid}.service %{buildroot}%{_unitdir}/%{appid}.service +install -Dm 644 data/%{appid}.xml %{buildroot}%{_datadir}/dbus-1/interfaces/%{appid}.xml +install -Dm 755 target/rpm/%{name} %{buildroot}%{_bindir}/%{name} + +%post +%systemd_post com.system76.PowerDaemon.service + +%preun +%systemd_preun com.system76.PowerDaemon.service + +%postun +%systemd_postun_with_restart com.system76.PowerDaemon.service + +%files +%doc README.md TESTING.md +%license LICENSE +%{_bindir}/%{name} +%{_unitdir}/%{appid}.service +%{_datadir}/dbus-1/interfaces/%{appid}.xml +%{_datadir}/dbus-1/system.d/%{appid}.conf +%{_datadir}/polkit-1/actions/%{appid}.policy + +%changelog +* Fri Jan 9 2026 Jaiden Riordan +- Port to Terra + diff --git a/anda/system/system76-power/update.rhai b/anda/system/system76-power/update.rhai new file mode 100644 index 0000000000..c4d96350fc --- /dev/null +++ b/anda/system/system76-power/update.rhai @@ -0,0 +1 @@ +rpm.version(gh_tag("pop-os/system76-power")); diff --git a/anda/system/taidan/anda.hcl b/anda/system/taidan/anda.hcl new file mode 100644 index 0000000000..5ca54bc05c --- /dev/null +++ b/anda/system/taidan/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "taidan.spec" + } +} diff --git a/anda/system/taidan/taidan.spec b/anda/system/taidan/taidan.spec new file mode 100644 index 0000000000..ead4cef737 --- /dev/null +++ b/anda/system/taidan/taidan.spec @@ -0,0 +1,67 @@ +Name: taidan +Version: 0.1.39 +Release: 2%?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 +URL: https://github.com/Ultramarine-Linux/taidan +Packager: Terra Packaging Team +Conflicts: initial-setup +Requires: dbus-daemon +Requires: (glib2 or (/usr/bin/plasma-apply-colorscheme and kf6-kconfig)) +Requires: shadow-utils +Requires: systemd-udev +Requires: bash +Requires: (dnf5 and dnf5-command(copr)) +Requires: flatpak +Requires: libwebp +Requires: webp-pixbuf-loader +Requires: xhost +Requires: kwin-wayland swaybg +Requires: netto network-manager-applet +Requires: polkit +BuildRequires: anda-srpm-macros mold cargo rust-packaging perl systemd-rpm-macros +BuildRequires: pkgconfig(libhelium-1) +BuildRequires: pkgconfig(openssl) +BuildRequires: gcc clang clang-libs +BuildRequires: pkgconfig(libacl) +BuildRequires: pkgconfig(libattr) +BuildRequires: glibc-all-langpacks + +%description +Taidan is a GUI Out-Of-Box-Experience (OOBE) and Welcome App for Ultramarine +Linux, written in Rust and the Helium toolkit. + +%prep +%git_clone +%cargo_prep_online + +%build +%{cargo_license_online} > LICENSE.dependencies + +%install +%cargo_install +DESTDIR=%buildroot ./scripts/install.sh + +%files +%doc README.md +%license LICENSE.md LICENSE.dependencies +%_bindir/taidan +%_libexecdir/start-taidan +%_datadir/polkit-1/rules.d/100-taidan.rules +%_datadir/taidan/ +%_presetdir/95-taidan.preset +%_sysconfdir/com.fyralabs.Taidan/ +%_sysconfdir/pam.d/taidan +%_sysusersdir/taidan.conf +%_unitdir/taidan-initial-setup.service +%_unitdir/taidan-initial-setup-reconfiguration.service +%dir %_prefix/lib/taidan/ +%_prefix/lib/taidan/labwc/* + +%changelog +* Sun Mar 15 2026 Tulip Blossom +- Add dbus-daemon as runtime dependency + +* Sun Mar 15 2026 Tulip Blossom +- Port manifest from Ultramarine repos to Terra diff --git a/anda/system/taidan/update.rhai b/anda/system/taidan/update.rhai new file mode 100644 index 0000000000..d4ee78b6c5 --- /dev/null +++ b/anda/system/taidan/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("ultramarine-linux/taidan")); diff --git a/anda/system/uutils-coreutils-replace/uutils-coreutils-replace.spec b/anda/system/uutils-coreutils-replace/uutils-coreutils-replace.spec index 95392f77cc..b3f8845ee0 100644 --- a/anda/system/uutils-coreutils-replace/uutils-coreutils-replace.spec +++ b/anda/system/uutils-coreutils-replace/uutils-coreutils-replace.spec @@ -5,8 +5,8 @@ %endif Name: uutils-coreutils-replace -Version: 0.5.0 -Release: 1%?dist +Version: 0.7.0 +Release: 1%{?dist} Summary: Cross-platform Rust rewrite of the GNU coreutils License: MIT URL: https://github.com/uutils/coreutils diff --git a/anda/system/veracrypt/anda.hcl b/anda/system/veracrypt/anda.hcl new file mode 100644 index 0000000000..f3c96b29db --- /dev/null +++ b/anda/system/veracrypt/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "veracrypt.spec" + } +} diff --git a/anda/system/veracrypt/jp.veracrypt.veracrypt.metainfo.xml b/anda/system/veracrypt/jp.veracrypt.veracrypt.metainfo.xml new file mode 100644 index 0000000000..ebff2fb605 --- /dev/null +++ b/anda/system/veracrypt/jp.veracrypt.veracrypt.metainfo.xml @@ -0,0 +1,37 @@ + + + jp.veracrypt.veracrypt + CC0-1.0 + Apache-2.0 AND TrueCrypt-License-version-3.0 AND LGPL-3.0-only AND BSD-2-Clause AND Zlib AND BSD-3-Clause AND Public Domain + https://github.com/veracrypt/VeraCrypt/blob/master/src/Resources/Icons/VeraCrypt.svg + + Veracrypt + Disk encryption with strong security based on TrueCrypt + + +

+ Free open source disk encryption software for Windows, Mac OSX and Linux. Brought to you by AM Crypto and based on TrueCrypt 7.1a. +

+

+ VeraCrypt main features: + + - Creates a virtual encrypted disk within a file and mounts it as a real disk. + - Encrypts an entire partition or storage device such as USB flash drive or hard drive. + - Encrypts a partition or drive where Windows is installed (pre-boot authentication). + - Encryption is automatic, real-time(on-the-fly) and transparent. + - Parallelization and pipelining allow data to be read and written as fast as if the drive was not encrypted. + - Encryption can be hardware-accelerated on modern processors. + - Provides plausible deniability, in case an adversary forces you to reveal the password: Hidden volume (steganography) and hidden operating system. + - More information about the features of VeraCrypt may be found in the documentation + +

+
+ + veracrypt.desktop + + https://veracrypt.jp/en/Home.html + + + Encryption + +
diff --git a/anda/system/veracrypt/update.rhai b/anda/system/veracrypt/update.rhai new file mode 100644 index 0000000000..5330e38c8c --- /dev/null +++ b/anda/system/veracrypt/update.rhai @@ -0,0 +1 @@ +rpm.global("ver", gh("veracrypt/VeraCrypt")); \ No newline at end of file diff --git a/anda/system/veracrypt/veracrypt.spec b/anda/system/veracrypt/veracrypt.spec new file mode 100644 index 0000000000..8f71f1b476 --- /dev/null +++ b/anda/system/veracrypt/veracrypt.spec @@ -0,0 +1,81 @@ +%define debug_package %{nil} +%define _unpackaged_files_terminate_build 0 +%define appid jp.veracrypt.veracrypt +%global ver VeraCrypt_1.26.24 +%global sanitized_ver %(echo %{ver} | sed 's/^VeraCrypt_//') + +Name: veracrypt +Version: %{sanitized_ver} +Release: 2%?dist +Summary: Disk encryption with strong security based on TrueCrypt +URL: https://veracrypt.jp/en/Home.html +Source0: https://github.com/veracrypt/VeraCrypt/archive/refs/tags/VeraCrypt_%version.tar.gz +Source1: %{appid}.metainfo.xml +License: Apache-2.0 AND TrueCrypt-License-version-3.0 AND LGPL-3.0-only AND BSD-2-Clause AND Zlib AND BSD-3-Clause AND Public Domain +BuildRequires: make +BuildRequires: yasm +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: clang +BuildRequires: pkgconf-pkg-config +BuildRequires: wxGTK-devel +BuildRequires: pkgconfig(fuse) +BuildRequires: pcsc-lite-devel +Requires: wxGTK-devel + +Provides: VeraCrypt + +Packager: Owen Zimmerman + +%description +%{summary}. + +%package lang +Summary: Translations for package %{name} +Requires: %{name} = %{evr} +Supplements: %{name} +Provides: %{name}-lang-all = %{evr} +BuildArch: noarch + +%description lang +%{summary}. + +%package doc +Summary: Documentation for %{name} +Requires: %{name} = %{evr} +Supplements: %{name} +BuildArch: noarch + +%description doc +%{summary}. + +%prep +%autosetup -n VeraCrypt-VeraCrypt_%{version} + +%build +%make_build -C src + +%install +%make_install -C src +cp -r doc/ %{buildroot}%{_pkgdocdir}/ +%terra_appstream -o %{SOURCE1} + +%files +%doc README.md +%license License.txt +%{_bindir}/veracrypt +%{_bindir}/veracrypt-uninstall.sh +%{_appsdir}/veracrypt.desktop +%{_datadir}/mime/packages/veracrypt.xml +%{_datadir}/pixmaps/veracrypt.xpm +%{_metainfodir}/%{appid}.metainfo.xml + +%files lang +%{_datadir}/veracrypt/languages/* + +%files doc +%{_pkgdocdir}/ + +%changelog +* Sat Feb 07 2026 Owen Zimmerman +- Initial commit diff --git a/anda/system/vicinae/vicinae.spec b/anda/system/vicinae/vicinae.spec index 2f2c6b99aa..ab6ab9ca0a 100644 --- a/anda/system/vicinae/vicinae.spec +++ b/anda/system/vicinae/vicinae.spec @@ -1,10 +1,10 @@ Name: vicinae -Version: 0.19.0 -Release: 1%?dist +Version: 0.20.7 +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 +Summary: A high-performance, native launcher for Linux Packager: metcya BuildRequires: cmake @@ -24,6 +24,11 @@ BuildRequires: pkgconfig(icu-uc) BuildRequires: wayland-devel BuildRequires: nodejs-npm BuildRequires: systemd-rpm-macros +BuildRequires: anda-srpm-macros +BuildRequires: ninja-build +BuildRequires: qt6-qtbase-devel +BuildRequires: qt6-qtbase-private-devel +BuildRequires: desktop-file-utils Requires: nodejs-npm @@ -35,13 +40,17 @@ your desktop — built with C++ and Qt. %autosetup %build -%cmake -DNOSTRIP=ON +%cmake -G Ninja -DCMAKE_BUILD_TYPE=None -DBUILD_SHARED_LIBS=OFF -DNOSTRIP=ON %cmake_build %install %cmake_install install -Dm 644 extra/%{name}.desktop -t %{buildroot}%{_appsdir} install -Dm 644 extra/%{name}-url-handler.desktop -t %{buildroot}%{_appsdir} +%desktop_file_edit -k StartupWMClass -v vicinae-server -f %{buildroot}%{_appsdir}/%{name}.desktop + +%check +%desktop_file_validate -f %{buildroot}%{_appsdir}/%{name}.desktop %post %systemd_user_post %{name}.service @@ -61,7 +70,17 @@ 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 +%{_libexecdir}/%{name}/vicinae-browser-link +%{_libexecdir}/%{name}/vicinae-data-control-server +%{_libexecdir}/%{name}/vicinae-server +%{_libexecdir}/%{name}/vicinae-snippet-server %changelog +* Wed Feb 18 2026 Jaiden Riordan - 0.19.8 +- Fixup desktop file and xdgpp * Fri Dec 26 2025 metcya - 0.17.3 -- Package vicinae +- Package vicinae \ No newline at end of file diff --git a/anda/system/wine/dev/wine-dev.spec b/anda/system/wine/dev/wine-dev.spec index dda054bed0..6fc3c09c5a 100644 --- a/anda/system/wine/dev/wine-dev.spec +++ b/anda/system/wine/dev/wine-dev.spec @@ -7,9 +7,9 @@ %global compat_package terra-wine-dev # Cannot use the _datadir macro here or it will cause mass macro recursion %global _prefix /usr/share/wine-dev -%global srcmajor 11.0 +%global srcmajor 11.x # Make this as a variable instead in case of WINE RCs -%global ver wine-11.0 +%global ver wine-11.4 %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 @@ -19,7 +19,7 @@ # Also less confusing because it has a devel package Name: wine-dev Version: %(echo %{cleanver} | sed 's/-/~/g') -Release: 1%?dist +Release: 1%{?dist} Epoch: 1 Summary: WINE Is Not An Emulator - runs MS Windows programs License: LGPL-2.0-or-later diff --git a/anda/system/wine/staging/wine-staging.spec b/anda/system/wine/staging/wine-staging.spec index 8b43cbc5d6..782b00a41f 100644 --- a/anda/system/wine/staging/wine-staging.spec +++ b/anda/system/wine/staging/wine-staging.spec @@ -14,12 +14,12 @@ %define _prefix /usr/share/wine-staging %undefine _hardened_build -%global srcmajor 10.x +%global srcmajor 11.x Name: wine-staging -Version: 11.0 -Release: 1%?dist +Version: 11.4 +Release: 1%{?dist} Epoch: 1 Summary: WINE Is Not An Emulator - runs MS Windows programs License: LGPL-2.0-or-later @@ -369,6 +369,7 @@ done %{_mandir}/man?/winepath.?* %{_mandir}/man?/wineserver.?* %dir %{_datadir}/wine +%{_datadir}/wine/winmd/ %{_datadir}/wine/wine.inf %{_datadir}/wine/nls/*.nls %{_datadir}/applications/*.desktop diff --git a/anda/system/xbps/xbps.spec b/anda/system/xbps/xbps.spec index b7330525b2..99c8a0d842 100644 --- a/anda/system/xbps/xbps.spec +++ b/anda/system/xbps/xbps.spec @@ -1,8 +1,8 @@ %global _distro_extra_cflags -Wno-discarded-qualifiers Name: xbps -Version: 0.60.6 -Release: 1%?dist +Version: 0.60.7 +Release: 2%?dist License: BSD-2-Clause AND BSD-3-Clause AND ISC Summary: A binary package system designed and implemented from scratch URL: https://github.com/void-linux/xbps @@ -15,7 +15,7 @@ BuildRequires: pkgconfig(pkgconf) BuildRequires: pkgconfig(zlib) BuildRequires: pkgconfig(openssl) BuildRequires: pkgconfig(libarchive) >= 3.3.3 -Requires: %name-lib = %evr +Requires: %name-libs = %evr %pkg_completion -B xbps xbps-checkvers xbps-create xbps-dgraph xbps-install xbps-pkgdb xbps-query xbps-reconfigure xbps-remove xbps-rindex %pkg_completion -z xbps xbps_src @@ -71,5 +71,8 @@ featureful and portable as much as possible. /var/db/%name/keys/*.plist %changelog +* Tue Feb 24 2026 Metcya - 0.60.7-2 +- Fix broken dependency + * Fri Dec 12 2025 Metcya - 0.60.6 - package xbps diff --git a/anda/system/xone/nightly/akmod/xone-nightly-kmod.spec b/anda/system/xone/nightly/akmod/xone-nightly-kmod.spec index 488ca5994c..564991c646 100644 --- a/anda/system/xone/nightly/akmod/xone-nightly-kmod.spec +++ b/anda/system/xone/nightly/akmod/xone-nightly-kmod.spec @@ -1,14 +1,14 @@ -%global commit e34350de2d518498edff4b689ce153b337809b9f +%global commit f2aa9fe01103d7600553b505b298ff0bd47ff280 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20260112 -%global ver 0.5.2 +%global commitdate 20260314 +%global ver 0.5.7 %define buildforkernels akmod %global debug_package %{nil} %global modulename xone Name: %{modulename}-nightly-kmod Version: %{ver}^%{commitdate}git.%{shortcommit} -Release: 2%{?dist} +Release: 1%{?dist} %if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 Epoch: 1 %endif diff --git a/anda/system/xone/nightly/dkms/dkms-xone-nightly.spec b/anda/system/xone/nightly/dkms/dkms-xone-nightly.spec index 420e3d15cb..b593424a01 100644 --- a/anda/system/xone/nightly/dkms/dkms-xone-nightly.spec +++ b/anda/system/xone/nightly/dkms/dkms-xone-nightly.spec @@ -1,13 +1,13 @@ -%global commit e34350de2d518498edff4b689ce153b337809b9f +%global commit f2aa9fe01103d7600553b505b298ff0bd47ff280 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20260112 -%global ver 0.5.2 +%global commitdate 20260314 +%global ver 0.5.7 %global debug_package %{nil} %global modulename xone Name: dkms-%{modulename}-nightly Version: %{ver}^%{commitdate}git.%{shortcommit} -Release: 2%{?dist} +Release: 1%{?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 a70f49aab5..c08c02e8b3 100644 --- a/anda/system/xone/nightly/kmod-common/xone-nightly.spec +++ b/anda/system/xone/nightly/kmod-common/xone-nightly.spec @@ -1,7 +1,7 @@ -%global commit e34350de2d518498edff4b689ce153b337809b9f +%global commit f2aa9fe01103d7600553b505b298ff0bd47ff280 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20260112 -%global ver 0.5.2 +%global commitdate 20260314 +%global ver 0.5.7 %global modulename xone %global _dracutconfdir %{_prefix}/lib/dracut/dracut.conf.d %global firmware_hash0 080ce4091e53a4ef3e5fe29939f51fd91f46d6a88be6d67eb6e99a5723b3a223 @@ -11,7 +11,7 @@ Name: xone-nightly Version: %{ver}^%{commitdate}git.%{shortcommit} -Release: 2%{?dist} +Release: 1%{?dist} %if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 Epoch: 1 %endif diff --git a/anda/system/xone/stable/akmod/xone-kmod.spec b/anda/system/xone/stable/akmod/xone-kmod.spec index 44e085df72..319fd965e6 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.2 -Release: 2%{?dist} +Version: 0.5.7 +Release: 1%?dist %if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 Epoch: 2 %endif diff --git a/anda/system/xone/stable/dkms/dkms-xone.spec b/anda/system/xone/stable/dkms/dkms-xone.spec index 99de74896c..57cbc4cc8b 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.2 -Release: 2%{?dist} +Version: 0.5.7 +Release: 1%?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 f81abf91d5..9a5ac16a04 100644 --- a/anda/system/xone/stable/kmod-common/xone.spec +++ b/anda/system/xone/stable/kmod-common/xone.spec @@ -5,8 +5,8 @@ %global firmware_hash3 e2710daf81e7b36d35985348f68a81d18bc537a2b0c508ffdfde6ac3eae1bad7 Name: xone -Version: 0.5.2 -Release: 2%{?dist} +Version: 0.5.8 +Release: 1%{?dist} %if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 Epoch: 2 %endif diff --git a/anda/system/xonedo/nightly/akmod/anda.hcl b/anda/system/xonedo/nightly/akmod/anda.hcl new file mode 100644 index 0000000000..ca1a552d4b --- /dev/null +++ b/anda/system/xonedo/nightly/akmod/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + rpm { + spec = "xonedo-nightly-kmod.spec" + } + labels { + mock = 1 + updbranch = 1 + } +} diff --git a/anda/system/xonedo/nightly/akmod/update.rhai b/anda/system/xonedo/nightly/akmod/update.rhai new file mode 100644 index 0000000000..943bab2262 --- /dev/null +++ b/anda/system/xonedo/nightly/akmod/update.rhai @@ -0,0 +1,13 @@ +let c = sh("cat anda/system/xonedo/nightly/kmod-common/xonedo-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/xonedo/nightly/kmod-common/xonedo-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/xonedo/nightly/kmod-common/xonedo-nightly.spec | grep '%global ver' | sed -E 's/.+ver //'", #{"stdout": "piped"}).ctx.stdout; + v.pop(); + rpm.global("ver", v); +} + diff --git a/anda/system/xonedo/nightly/akmod/xonedo-nightly-kmod.spec b/anda/system/xonedo/nightly/akmod/xonedo-nightly-kmod.spec new file mode 100644 index 0000000000..e0802a189e --- /dev/null +++ b/anda/system/xonedo/nightly/akmod/xonedo-nightly-kmod.spec @@ -0,0 +1,68 @@ +%global commit 982cbcb019ae4d2bee5ae69385223409ee555c88 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260315 +%global ver 0.5.7 +%define buildforkernels akmod +%global debug_package %{nil} +%global modulename xonedo + +Name: %{modulename}-nightly-kmod +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +%if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 +Epoch: 1 +%endif +Summary: Linux kernel driver for Xbox One and Xbox Series X|S accessories +License: GPL-2.0-or-later +URL: https://github.com/OpenGamingCollective/xonedo +Source0: %{url}/archive/%{commit}.tar.gz#/%{modulename}-%{shortcommit}.tar.gz +BuildRequires: kmodtool +BuildRequires: systemd-rpm-macros +Requires: %{modulename}-nightly = %{?epoch:%{epoch}:}%{version} +Requires: %{modulename}-nightly-akmod-modules = %{?epoch:%{epoch}:}%{version} +Requires: akmods +Conflicts: dkms-%{modulename}-nightly +Conflicts: %{modulename}-kmod +Conflicts: dkms-xone-nightly +Conflicts: xone-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) } + +%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 + +%autosetup -p1 -n %{modulename}-%{commit} + +find . -type f -name '*.c' -exec sed -i "s/#VERSION#/%{version}/" {} \; + +for kernel_version in %{?kernel_versions}; do + mkdir _kmod_build_${kernel_version%%___*} + cp -fr auth bus driver transport Kbuild _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 +* Sun Mar 15 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/xonedo/nightly/dkms/anda.hcl b/anda/system/xonedo/nightly/dkms/anda.hcl new file mode 100644 index 0000000000..df85fd67ea --- /dev/null +++ b/anda/system/xonedo/nightly/dkms/anda.hcl @@ -0,0 +1,10 @@ +project pkg { + arches=["x86_64"] + rpm { + spec = "dkms-xonedo-nightly.spec" + } + labels { + mock = 1 + updbranch = 1 + } +} diff --git a/anda/system/xonedo/nightly/dkms/dkms-xonedo-nightly.spec b/anda/system/xonedo/nightly/dkms/dkms-xonedo-nightly.spec new file mode 100644 index 0000000000..e115413c72 --- /dev/null +++ b/anda/system/xonedo/nightly/dkms/dkms-xonedo-nightly.spec @@ -0,0 +1,75 @@ +%global commit 982cbcb019ae4d2bee5ae69385223409ee555c88 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260314 +%global ver 0.5.7 +%global debug_package %{nil} +%global modulename xonedo + +Name: dkms-%{modulename}-nightly +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +%if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 +Epoch: 1 +%endif +Summary: Linux kernel driver for Xbox One and Xbox Series X|S accessories +License: GPL-2.0-or-later +URL: https://github.com/OpenGamingCollective/xonedo +Source0: %{url}/archive/%{commit}.tar.gz#/%{modulename}-%{shortcommit}.tar.gz +Source1: no-weak-modules.conf +BuildRequires: sed +BuildRequires: systemd-rpm-macros +Requires: %{modulename}-nightly = %{?epoch:%{epoch}:}%{version} +Requires: dkms +Conflicts: akmod-%{modulename}-nightly +Conflicts: %{modulename}-kmod +Conflicts: dkms-xone-nightly +Conflicts: dkms-xone +Provides: %{modulename}-nightly-kmod = %{?epoch:%{epoch}:}%{version} +%if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 +Obsoletes: dkms-%{modulename} < %{?epoch:%{epoch}:}3.0^20250419git.c682b0c +%endif +BuildArch: noarch +Packager: Kyle Gospodnetich + +%description +Linux kernel driver for Xbox One and Xbox Series X|S accessories. Compatible with the xpad kernel module. + +%prep +%autosetup -p1 -n %{modulename}-%{commit} + +sed -i \ + -e 's|#VERSION#|%{version}|g' \ + -e 's|kernel/drivers/input/joystick|extra|g' \ + dkms.conf + +find . -type f -name '*.c' -exec sed -i "s/#VERSION#/%{version}/" {} \; + +%install +# Create empty tree: +mkdir -p %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ +cp -fr auth bus driver transport Kbuild dkms.conf %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ + +%if 0%{?fedora} +# Do not enable weak modules support in Fedora (no kABI): +install -Dpm644 %{SOURCE1} %{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 +* Sun Mar 15 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/xonedo/nightly/dkms/no-weak-modules.conf b/anda/system/xonedo/nightly/dkms/no-weak-modules.conf new file mode 100644 index 0000000000..24f6f95c96 --- /dev/null +++ b/anda/system/xonedo/nightly/dkms/no-weak-modules.conf @@ -0,0 +1 @@ +NO_WEAK_MODULES="yes" diff --git a/anda/system/xonedo/nightly/dkms/update.rhai b/anda/system/xonedo/nightly/dkms/update.rhai new file mode 100644 index 0000000000..943bab2262 --- /dev/null +++ b/anda/system/xonedo/nightly/dkms/update.rhai @@ -0,0 +1,13 @@ +let c = sh("cat anda/system/xonedo/nightly/kmod-common/xonedo-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/xonedo/nightly/kmod-common/xonedo-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/xonedo/nightly/kmod-common/xonedo-nightly.spec | grep '%global ver' | sed -E 's/.+ver //'", #{"stdout": "piped"}).ctx.stdout; + v.pop(); + rpm.global("ver", v); +} + diff --git a/anda/system/xonedo/nightly/kmod-common/anda.hcl b/anda/system/xonedo/nightly/kmod-common/anda.hcl new file mode 100644 index 0000000000..b008b1a957 --- /dev/null +++ b/anda/system/xonedo/nightly/kmod-common/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "xonedo-nightly.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/system/xonedo/nightly/kmod-common/modules.conf b/anda/system/xonedo/nightly/kmod-common/modules.conf new file mode 100644 index 0000000000..776e9eff4f --- /dev/null +++ b/anda/system/xonedo/nightly/kmod-common/modules.conf @@ -0,0 +1 @@ +add_drivers+=" snd-pcm snd-seq " diff --git a/anda/system/xonedo/nightly/kmod-common/update.rhai b/anda/system/xonedo/nightly/kmod-common/update.rhai new file mode 100644 index 0000000000..570d7773b9 --- /dev/null +++ b/anda/system/xonedo/nightly/kmod-common/update.rhai @@ -0,0 +1,8 @@ +rpm.global("commit", gh_commit("OpenGamingCollective/xonedo")); +if rpm.changed() { + rpm.release(); + rpm.global("commitdate", date()); + let v = gh_tag("OpenGamingCollective/xonedo"); + v.crop(1); + rpm.global("relver", v); +} diff --git a/anda/system/xonedo/nightly/kmod-common/xonedo-nightly.spec b/anda/system/xonedo/nightly/kmod-common/xonedo-nightly.spec new file mode 100644 index 0000000000..730a572cee --- /dev/null +++ b/anda/system/xonedo/nightly/kmod-common/xonedo-nightly.spec @@ -0,0 +1,139 @@ +%global commit 982cbcb019ae4d2bee5ae69385223409ee555c88 +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commitdate 20260314 +%global relver 0.5.7-ogc1 +%global ver %(echo %{relver} | sed 's/-/^/g') +%global modulename xonedo +%global _dracutconfdir %{_prefix}/lib/dracut/dracut.conf.d +%global firmware_hash0 080ce4091e53a4ef3e5fe29939f51fd91f46d6a88be6d67eb6e99a5723b3a223 +%global firmware_hash1 48084d9fa53b9bb04358f3bb127b7495dc8f7bb0b3ca1437bd24ef2b6eabdf66 +%global firmware_hash2 0023a7bae02974834500c665a281e25b1ba52c9226c84989f9084fa5ce591d9b +%global firmware_hash3 e2710daf81e7b36d35985348f68a81d18bc537a2b0c508ffdfde6ac3eae1bad7 + +Name: xonedo-nightly +Version: %{ver}^%{commitdate}git.%{shortcommit} +Release: 1%{?dist} +%if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 +Epoch: 1 +%endif +Summary: Linux kernel driver for Xbox One and Xbox Series X|S accessories common files +License: GPL-2.0-or-later +URL: https://github.com/OpenGamingCollective/xonedo +Source0: %{url}/archive/%{commit}.tar.gz#/xone-%{shortcommit}.tar.gz +Source1: modules.conf +Source2: https://catalog.s.download.windowsupdate.com/d/msdownload/update/driver/drvs/2017/03/2ea9591b-f751-442c-80ce-8f4692cdc67b_6b555a3a288153cf04aec6e03cba360afe2fce34.cab +Source3: https://catalog.s.download.windowsupdate.com/c/msdownload/update/driver/drvs/2017/07/1cd6a87c-623f-4407-a52d-c31be49e925c_e19f60808bdcbfbd3c3df6be3e71ffc52e43261e.cab +Source4: https://catalog.s.download.windowsupdate.com/c/msdownload/update/driver/drvs/2017/06/1dbd7cb4-53bc-4857-a5b0-5955c8acaf71_9081931e7d664429a93ffda0db41b7545b7ac257.cab +Source5: https://catalog.s.download.windowsupdate.com/d/msdownload/update/driver/drvs/2017/08/aeff215c-3bc4-4d36-a3ea-e14bfa8fa9d2_e58550c4f74a27e51e5cb6868b10ff633fa77164.cab +### Microsoft TOU copy: +Source6: https://www.microsoft.com/en-us/legal/terms-of-use +BuildRequires: cabextract +BuildRequires: sed +BuildRequires: systemd-rpm-macros +Requires: wireless-regdb +Requires: %{name}-firmware = %{?epoch:%{epoch}:}%{version}-%{release} +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +Requires(post): dracut +Provides: %{name}-kmod-common = %{?epoch:%{epoch}:}%{version} +Conflicts: xone +Conflicts: %{modulename} +Conflicts: xow <= 0.5 +Obsoletes: xow <= 0.5 +BuildArch: noarch +Packager: Kyle Gospodnetich + +%description +Linux kernel driver for Xbox One and Xbox Series X|S accessories common files. Compatible with the xpad kernel module. + +%package akmod-modules +Summary: Modules for Akmods +Requires: akmod-%{name} +BuildArch: noarch + +%description akmod-modules +Akmods modules for the akmod-%{name} package. + +%package firmware +Summary: Firmware for the XBox One controller dongle +License: Proprietary +Requires: wireless-regdb +Conflicts: xone-firmware +BuildArch: noarch + +%description firmware +Proprietary firmware for XBox controller dongles. + +%prep +%autosetup -p1 -n %{modulename}-%{commit} +/usr/bin/sed -nE '/^BUILT_MODULE_NAME/{s@^.+"(.+)"@\1@; s|-|_|g; p}' dkms.conf > %{modulename}.conf + +### Firmware: +# Some of the .bin files have the same name so put them in subdirs +mkdir firm{0..4} + +pushd firm0 +cabextract -F FW_ACC_00U.bin %{SOURCE2} +echo %{firmware_hash0} FW_ACC_00U.bin | sha256sum -c +popd + +pushd firm1 +cabextract -F FW_ACC_00U.bin %{SOURCE3} +echo %{firmware_hash1} FW_ACC_00U.bin | sha256sum -c +popd + +pushd firm2 +cabextract -F FW_ACC_CL.bin %{SOURCE4} +echo %{firmware_hash2} FW_ACC_CL.bin | sha256sum -c +popd + +pushd firm3 +cabextract -F FW_ACC_BR.bin %{SOURCE5} +echo %{firmware_hash3} FW_ACC_BR.bin | sha256sum -c +popd + +%install +# xone-gip-headset module should have the snd-pcm and snd-seq modules be preloaded or it will give errors on boot due to injecting late. +# It still loads afterwards, but this error is easily fixable by just loading the modules in the initramfs. +install -Dpm644 %{SOURCE1} %{buildroot}%{_dracutconfdir}/60-%{modulename}-snd.conf + +# Blacklist: +install -Dpm644 install/modprobe.conf %{buildroot}%{_modprobedir}/60-%{modulename}.conf + +# Firmware: +install -Dpm644 firm0/FW_ACC_00U.bin %{buildroot}%{_prefix}/lib/firmware/xone_dongle_02e6.bin +install -Dpm644 firm1/FW_ACC_00U.bin %{buildroot}%{_prefix}/lib/firmware/xone_dongle_02fe.bin +install -Dpm644 firm2/FW_ACC_CL.bin %{buildroot}%{_prefix}/lib/firmware/xone_dongle_02f9.bin +install -Dpm644 firm3/FW_ACC_BR.bin %{buildroot}%{_prefix}/lib/firmware/xone_dongle_091e.bin + +# Akmods modules +install -Dm644 %{modulename}.conf -t %{buildroot}%{_modulesloaddir} + +# TOU file +/usr/bin/cp %{SOURCE6} . + +%files +%license LICENSE +%doc README.md +%{_modprobedir}/60-%{modulename}.conf +%{_dracutconfdir}/60-%{modulename}-snd.conf + +%files akmod-modules +%{_modulesloaddir}/%{modulename}.conf + +%files firmware +%license terms-of-use +%{_prefix}/lib/firmware/xone_dongle_02e6.bin +%{_prefix}/lib/firmware/xone_dongle_02fe.bin +%{_prefix}/lib/firmware/xone_dongle_02f9.bin +%{_prefix}/lib/firmware/xone_dongle_091e.bin + +%postun +/usr/bin/dracut -f || : + +%post firmware +echo "The firmware for the wireless dongle is subject to Microsoft's Terms of Use:" +echo 'https://www.microsoft.com/en-us/legal/terms-of-use' + +%changelog +* Sun Mar 15 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/xonedo/stable/akmod/anda.hcl b/anda/system/xonedo/stable/akmod/anda.hcl new file mode 100644 index 0000000000..4d2bfffeef --- /dev/null +++ b/anda/system/xonedo/stable/akmod/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + rpm { + spec = "xonedo-kmod.spec" + } + labels { + mock = 1 + updbranch = 1 + } +} diff --git a/anda/system/xonedo/stable/akmod/update.rhai b/anda/system/xonedo/stable/akmod/update.rhai new file mode 100644 index 0000000000..747989c246 --- /dev/null +++ b/anda/system/xonedo/stable/akmod/update.rhai @@ -0,0 +1,4 @@ +import "andax/bump_extras.rhai" as bump; + +rpm.version(bump::madoguchi("xonedo", labels.branch)); + diff --git a/anda/system/xonedo/stable/akmod/xonedo-kmod.spec b/anda/system/xonedo/stable/akmod/xonedo-kmod.spec new file mode 100644 index 0000000000..ed04ba4f18 --- /dev/null +++ b/anda/system/xonedo/stable/akmod/xonedo-kmod.spec @@ -0,0 +1,65 @@ +%define buildforkernels akmod +%global debug_package %{nil} +%global modulename xonedo +%global ogcversion 1 + +Name: %{modulename}-kmod +Version: 0.5.7 +Release: 1%?dist +%if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 +Epoch: 2 +%endif +Summary: Linux kernel driver for Xbox One and Xbox Series X|S accessories +License: GPL-2.0-or-later +URL: https://github.com/OpenGamingCollective/xonedo +Source0: %{url}/archive/refs/tags/v%{version}-ogc%{ogcversion}.tar.gz +BuildRequires: kmodtool +BuildRequires: systemd-rpm-macros +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Requires: %{modulename}-akmod-modules = %{?epoch:%{epoch}:}%{version} +Requires: akmods +Conflicts: dkms-%{modulename} +Conflicts: %{modulename}-nightly-kmod +Conflicts: dkms-xone +Conflicts: xone-nightly-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) } + +%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 + +%autosetup -p1 -n %{modulename}-%{version}-ogc%{ogcversion} + +find . -type f -name '*.c' -exec sed -i "s/#VERSION#/%{version}/" {} \; + +for kernel_version in %{?kernel_versions}; do + mkdir _kmod_build_${kernel_version%%___*} + cp -fr auth bus driver transport Kbuild _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 +* Sun Mar 15 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/xonedo/stable/dkms/anda.hcl b/anda/system/xonedo/stable/dkms/anda.hcl new file mode 100644 index 0000000000..1b3bd131a8 --- /dev/null +++ b/anda/system/xonedo/stable/dkms/anda.hcl @@ -0,0 +1,10 @@ +project pkg { + arches=["x86_64"] + rpm { + spec = "dkms-xonedo.spec" + } + labels { + mock = 1 + updbranch = 1 + } +} diff --git a/anda/system/xonedo/stable/dkms/dkms-xonedo.spec b/anda/system/xonedo/stable/dkms/dkms-xonedo.spec new file mode 100644 index 0000000000..4b12a9faca --- /dev/null +++ b/anda/system/xonedo/stable/dkms/dkms-xonedo.spec @@ -0,0 +1,72 @@ +%global debug_package %{nil} +%global modulename xonedo +%global ogcversion 1 + +Name: dkms-%{modulename} +Version: 0.5.7 +Release: 1%?dist +%if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 +Epoch: 2 +%endif +Summary: Linux kernel driver for Xbox One and Xbox Series X|S accessories +License: GPL-2.0-or-later +URL: https://github.com/OpenGamingCollective/xonedo +Source0: %{url}/archive/refs/tags/v%{version}-ogc%{ogcversion}.tar.gz +Source1: no-weak-modules.conf +BuildRequires: sed +BuildRequires: systemd-rpm-macros +Requires: %{modulename} = %{?epoch:%{epoch}:}%{version} +Requires: dkms +Conflicts: akmod-%{modulename} +Conflicts: %{modulename}-nightly-kmod +Conflicts: akmod-xone +Conflicts: xone-nightly-kmod +Provides: %{modulename}-kmod +%if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 +Obsoletes: %{name} < %{?epoch:%{epoch}:}0.3.4 +%endif +BuildArch: noarch +Packager: Kyle Gospodnetich + +%description +Linux kernel driver for Xbox One and Xbox Series X|S accessories. Compatible with the xpad kernel module. + +%prep +%autosetup -p1 -n %{modulename}-%{version}-ogc%{ogcversion} + +sed -i \ + -e 's|#VERSION#|%{version}|g' \ + -e 's|kernel/drivers/input/joystick|extra|g' \ + dkms.conf + +find . -type f -name '*.c' -exec sed -i "s/#VERSION#/%{version}/" {} \; + +%install +# Create empty tree: +mkdir -p %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ +cp -fr auth bus driver transport Kbuild dkms.conf %{buildroot}%{_usrsrc}/%{modulename}-%{version}/ + +%if 0%{?fedora} +# Do not enable weak modules support in Fedora (no kABI): +install -Dpm644 %{SOURCE1} %{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 +* Sun Mar 15 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/xonedo/stable/dkms/no-weak-modules.conf b/anda/system/xonedo/stable/dkms/no-weak-modules.conf new file mode 100644 index 0000000000..24f6f95c96 --- /dev/null +++ b/anda/system/xonedo/stable/dkms/no-weak-modules.conf @@ -0,0 +1 @@ +NO_WEAK_MODULES="yes" diff --git a/anda/system/xonedo/stable/dkms/update.rhai b/anda/system/xonedo/stable/dkms/update.rhai new file mode 100644 index 0000000000..747989c246 --- /dev/null +++ b/anda/system/xonedo/stable/dkms/update.rhai @@ -0,0 +1,4 @@ +import "andax/bump_extras.rhai" as bump; + +rpm.version(bump::madoguchi("xonedo", labels.branch)); + diff --git a/anda/system/xonedo/stable/kmod-common/anda.hcl b/anda/system/xonedo/stable/kmod-common/anda.hcl new file mode 100644 index 0000000000..e02b579bf1 --- /dev/null +++ b/anda/system/xonedo/stable/kmod-common/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "xonedo.spec" + } +} diff --git a/anda/system/xonedo/stable/kmod-common/modules.conf b/anda/system/xonedo/stable/kmod-common/modules.conf new file mode 100644 index 0000000000..776e9eff4f --- /dev/null +++ b/anda/system/xonedo/stable/kmod-common/modules.conf @@ -0,0 +1 @@ +add_drivers+=" snd-pcm snd-seq " diff --git a/anda/system/xonedo/stable/kmod-common/update.rhai b/anda/system/xonedo/stable/kmod-common/update.rhai new file mode 100644 index 0000000000..3ebcf9bbb4 --- /dev/null +++ b/anda/system/xonedo/stable/kmod-common/update.rhai @@ -0,0 +1,7 @@ +let v = gh_tag("OpenGamingCollective/xonedo") +v.crop(1); +rpm.global("ver", v); + +if rpm.changed() { + rpm.release(); +} diff --git a/anda/system/xonedo/stable/kmod-common/xonedo.spec b/anda/system/xonedo/stable/kmod-common/xonedo.spec new file mode 100644 index 0000000000..b93ede724f --- /dev/null +++ b/anda/system/xonedo/stable/kmod-common/xonedo.spec @@ -0,0 +1,138 @@ +%global _dracutconfdir %{_prefix}/lib/dracut/dracut.conf.d +%global firmware_hash0 080ce4091e53a4ef3e5fe29939f51fd91f46d6a88be6d67eb6e99a5723b3a223 +%global firmware_hash1 48084d9fa53b9bb04358f3bb127b7495dc8f7bb0b3ca1437bd24ef2b6eabdf66 +%global firmware_hash2 0023a7bae02974834500c665a281e25b1ba52c9226c84989f9084fa5ce591d9b +%global firmware_hash3 e2710daf81e7b36d35985348f68a81d18bc537a2b0c508ffdfde6ac3eae1bad7 +%global ver 0.5.7-ogc1 + +Name: xonedo +Version: %(echo %{ver} | sed 's/-/^/g') +Release: 1%?dist +%if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 +Epoch: 2 +%endif +Summary: Linux kernel driver for Xbox One and Xbox Series X|S accessories common files +License: GPL-2.0-or-later +URL: https://github.com/OpenGamingCollective/xonedo +Source0: %{url}/archive/refs/tags/v%{version}-ogc%{ogcversion}.tar.gz +Source1: modules.conf +### Windows drivers and firmware files: +Source2: https://catalog.s.download.windowsupdate.com/d/msdownload/update/driver/drvs/2017/03/2ea9591b-f751-442c-80ce-8f4692cdc67b_6b555a3a288153cf04aec6e03cba360afe2fce34.cab +Source3: https://catalog.s.download.windowsupdate.com/c/msdownload/update/driver/drvs/2017/07/1cd6a87c-623f-4407-a52d-c31be49e925c_e19f60808bdcbfbd3c3df6be3e71ffc52e43261e.cab +Source4: https://catalog.s.download.windowsupdate.com/c/msdownload/update/driver/drvs/2017/06/1dbd7cb4-53bc-4857-a5b0-5955c8acaf71_9081931e7d664429a93ffda0db41b7545b7ac257.cab +Source5: https://catalog.s.download.windowsupdate.com/d/msdownload/update/driver/drvs/2017/08/aeff215c-3bc4-4d36-a3ea-e14bfa8fa9d2_e58550c4f74a27e51e5cb6868b10ff633fa77164.cab +### Microsoft TOU copy: +Source6: https://www.microsoft.com/en-us/legal/terms-of-use +BuildRequires: cabextract +BuildRequires: sed +BuildRequires: systemd-rpm-macros +Requires: wireless-regdb +Requires: %{name}-firmware = %{?epoch:%{epoch}:}%{version}-%{release} +Requires: %{name}-kmod = %{?epoch:%{epoch}:}%{version} +Requires(post): dracut +Provides: %{name}-kmod-common = %{?epoch:%{epoch}:}%{version} +Conflicts: %{name}-nightly +Conflicts: xone-nightly +Conflicts: xone +Conflicts: xow <= 0.5 +Obsoletes: xow <= 0.5 +%if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 +Obsoletes: %{name} < %{?epoch:%{epoch}:}0.3.4 +%endif +BuildArch: noarch +Packager: Kyle Gospodnetich + +%description +Linux kernel driver for Xbox One and Xbox Series X|S accessories common files. + +%package akmod-modules +Summary: Modules for Akmods +Requires: akmod-%{name} +BuildArch: noarch + +%description akmod-modules +Akmods modules for the akmod-%{name} package. + +%package firmware +Summary: Firmware for the XBox One controller dongle +License: Proprietary +Requires: wireless-regdb +%if 0%{?fedora} <= 43 || 0%{?rhel} <= 10 +Obsoletes: %{name}-firmware < %{?epoch:%{epoch}:}0.3^20250419git.c682b0c +%endif +Conflicts: xone-firmware +BuildArch: noarch + +%description firmware +Proprietary firmware for XBox controller dongles. + +%prep +%autosetup -p1 -n %{name}-%{version}-ogc%{ogcversion} +/usr/bin/sed -nE '/^BUILT_MODULE_NAME/{s@^.+"(.+)"@\1@; s|-|_|g; p}' dkms.conf > %{name}.conf + +### Firmware: +# Some of the .bin files have the same name so put them in subdirs +mkdir firm{0..4} + +pushd firm0 +cabextract -F FW_ACC_00U.bin %{SOURCE2} +echo %{firmware_hash0} FW_ACC_00U.bin | sha256sum -c +popd + +pushd firm1 +cabextract -F FW_ACC_00U.bin %{SOURCE3} +echo %{firmware_hash1} FW_ACC_00U.bin | sha256sum -c +popd + +pushd firm2 +cabextract -F FW_ACC_CL.bin %{SOURCE4} +echo %{firmware_hash2} FW_ACC_CL.bin | sha256sum -c +popd + +pushd firm3 +cabextract -F FW_ACC_BR.bin %{SOURCE5} +echo %{firmware_hash3} FW_ACC_BR.bin | sha256sum -c +popd + +%install +# xone-gip-headset module should have the snd-pcm and snd-seq modules be preloaded or it will give errors on boot due to injecting late. +# It still loads afterwards, but this error is easily fixable by just loading the modules in the initramfs. +install -Dpm644 %{SOURCE1} %{buildroot}%{_dracutconfdir}/60-%{name}-snd.conf + +# Blacklist: +install -Dpm644 install/modprobe.conf %{buildroot}%{_modprobedir}/60-%{name}.conf + +# Firmware: +install -Dpm644 firm0/FW_ACC_00U.bin %{buildroot}%{_prefix}/lib/firmware/xone_dongle_02e6.bin +install -Dpm644 firm1/FW_ACC_00U.bin %{buildroot}%{_prefix}/lib/firmware/xone_dongle_02fe.bin +install -Dpm644 firm2/FW_ACC_CL.bin %{buildroot}%{_prefix}/lib/firmware/xone_dongle_02f9.bin +install -Dpm644 firm3/FW_ACC_BR.bin %{buildroot}%{_prefix}/lib/firmware/xone_dongle_091e.bin + +# Akmods modules +install -Dm644 %{name}.conf -t %{buildroot}%{_modulesloaddir} + +# TOU file +/usr/bin/cp %{SOURCE6} . + +%files +%license LICENSE +%doc README.md +%{_modprobedir}/60-%{name}.conf +%{_dracutconfdir}/60-%{name}-snd.conf + +%files akmod-modules +%{_modulesloaddir}/%{name}.conf + +%files firmware +%license terms-of-use +%{_prefix}/lib/firmware/xone_dongle_02e6.bin +%{_prefix}/lib/firmware/xone_dongle_02fe.bin +%{_prefix}/lib/firmware/xone_dongle_02f9.bin +%{_prefix}/lib/firmware/xone_dongle_091e.bin + +%postun +/usr/bin/dracut -f || : + +%changelog +* Sun Mar 15 2026 Kyle Gospodnetich +- Initial package diff --git a/anda/system/xpadneo/akmod/xpadneo-kmod.spec b/anda/system/xpadneo/akmod/xpadneo-kmod.spec index 32fe7b29a0..5cb57e914d 100644 --- a/anda/system/xpadneo/akmod/xpadneo-kmod.spec +++ b/anda/system/xpadneo/akmod/xpadneo-kmod.spec @@ -1,14 +1,14 @@ -%global commit fc1b13afc8dbaf85fc8ea8dadac460cee1ebda06 +%global commit d67479f7c02bd0537901242b8ecfee5cc8e16ab1 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20251229 -%global ver 0.9.7 +%global commitdate 20260319 +%global ver 0.10 %define buildforkernels akmod %global debug_package %{nil} %global modulename xpadneo Name: %{modulename}-kmod Version: %{ver}^%{commitdate}git.%{shortcommit} -Release: 2%{?dist} +Release: 1%{?dist} Summary: Advanced Linux Driver for Xbox One Wireless Gamepad License: GPL-3.0 URL: https://atar-axis.github.io/xpadneo diff --git a/anda/system/xpadneo/dkms/dkms-xpadneo.spec b/anda/system/xpadneo/dkms/dkms-xpadneo.spec index c2fbdeda74..72e28489bf 100644 --- a/anda/system/xpadneo/dkms/dkms-xpadneo.spec +++ b/anda/system/xpadneo/dkms/dkms-xpadneo.spec @@ -1,13 +1,13 @@ -%global commit fc1b13afc8dbaf85fc8ea8dadac460cee1ebda06 +%global commit d67479f7c02bd0537901242b8ecfee5cc8e16ab1 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20251229 -%global ver 0.9.7 +%global commitdate 20260319 +%global ver 0.10 %global debug_package %{nil} %global modulename xpadneo Name: dkms-%{modulename} Version: %{ver}^%{commitdate}git.%{shortcommit} -Release: 2%{?dist} +Release: 1%{?dist} Summary: Advanced Linux Driver for Xbox One Wireless Gamepad License: GPL-3.0 URL: https://atar-axis.github.io/%{modulename} diff --git a/anda/system/xpadneo/kmod-common/xpadneo.spec b/anda/system/xpadneo/kmod-common/xpadneo.spec index 926711ce1b..7ced39ddab 100644 --- a/anda/system/xpadneo/kmod-common/xpadneo.spec +++ b/anda/system/xpadneo/kmod-common/xpadneo.spec @@ -1,11 +1,11 @@ -%global commit fc1b13afc8dbaf85fc8ea8dadac460cee1ebda06 +%global commit d67479f7c02bd0537901242b8ecfee5cc8e16ab1 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commitdate 20251229 -%global ver 0.9.7 +%global commitdate 20260319 +%global ver 0.10 Name: xpadneo Version: %{ver}^%{commitdate}git.%{shortcommit} -Release: 2%{?dist} +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} diff --git a/anda/terra/appstream-helper/terra-appstream-helper.spec b/anda/terra/appstream-helper/terra-appstream-helper.spec index fd45dfab41..248cda2d73 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: 1%?dist +Release: 2%?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 @@ -9,6 +9,8 @@ BuildArch: noarch Requires: python3-%{name} = %{evr} BuildRequires: anda-srpm-macros python3-devel python3-installer pyproject-rpm-macros python3dist(pip) python3dist(setuptools) python3dist(wheel) +Packager: Terra Packaging Team + %description %{summary}. diff --git a/anda/terra/gpg-keys/RELEASE.txt b/anda/terra/gpg-keys/RELEASE.txt index dc0833e168..d00099938a 100644 --- a/anda/terra/gpg-keys/RELEASE.txt +++ b/anda/terra/gpg-keys/RELEASE.txt @@ -1 +1 @@ -F44 \ No newline at end of file +F45 \ No newline at end of file diff --git a/anda/terra/gpg-keys/RPM-GPG-KEY-terra44 b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44 new file mode 100644 index 0000000000..5e6de513de --- /dev/null +++ b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44 @@ -0,0 +1,17 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GopenPGP 2.8.1 +Comment: https://gopenpgp.org + +xjMEaYpzVxYJKwYBBAHaRw8BAQdAb3DsTkfuyHxBUTJh9KY5K9Zmd3HHNlr3nr7j +DqIfJHbNIFRlcnJhIDQ0IDxzZWN1cml0eUBmeXJhbGFicy5jb20+wr8EExYIAHEF +gmmKc1cDCwkHCZAAzatD3iJtbzUUAAAAAAAcABBzYWx0QG5vdGF0aW9ucy5vcGVu +cGdwanMub3Jn6H9BnkxjSlvFTWI4j1lWagIVCAMWAAICGQECmwMCHgEWIQSuCRV6 +TeiLSX6h1dMAzatD3iJtbwAAkxUA/AhjnPTnXX4U50jtWrE8/33CXkR/kMvp8y2m +jR9jrEzPAQCEA1Jx8eBbBo7RySbF1D8AoYGGvdy5Igmsz7/FCq4DAM44BGmKc1cS +CisGAQQBl1UBBQEBB0BKc0gRkEY9/IuABq32DNPxZN0AQo41geDGywcbV47JSQMB +CgnCrgQYFggAYAWCaYpzVwmQAM2rQ94ibW81FAAAAAAAHAAQc2FsdEBub3RhdGlv +bnMub3BlbnBncGpzLm9yZ8nm3oDFHJ/SnE3gwb0ZR04CmwwWIQSuCRV6TeiLSX6h +1dMAzatD3iJtbwAAjYoA/2P25j8wdGP/TdF4mhNiN/6cBNL08/wmqDTJooYy2GP+ +AQCJp+Vj5nfTYUO7+6WvES4cFaaZJhY8CsjJwx6k8xhsCA== +=KXwo +-----END PGP PUBLIC KEY BLOCK----- \ No newline at end of file diff --git a/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-extras b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-extras new file mode 100644 index 0000000000..f0c25fef1e --- /dev/null +++ b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-extras @@ -0,0 +1,17 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GopenPGP 2.8.1 +Comment: https://gopenpgp.org + +xjMEaYpzWBYJKwYBBAHaRw8BAQdAIzdUq01dXkOIYGoFAa7/mRGeGEr1wUcY/pam +pmJ4mNjNKVRlcnJhIDQ0IC0gRXh0cmFzIDxzZWN1cml0eUBmeXJhbGFicy5jb20+ +wr8EExYIAHEFgmmKc1gDCwkHCZBgCNCnmiP5gjUUAAAAAAAcABBzYWx0QG5vdGF0 +aW9ucy5vcGVucGdwanMub3JnOCdKgJrl62SYBRsg6kNz2gIVCAMWAAICGQECmwMC +HgEWIQSIWqSyA1VEtFC/DVlgCNCnmiP5ggAAFQoBAObMv2serV7KtDyflGPyb8dL +tMaibMvkswHEbqukTG93AP9a1EPaHwtD5tZXxxUynli8UhGqHlvBQ3fL8Q6bqSCM +CM44BGmKc1gSCisGAQQBl1UBBQEBB0Aw+7djS+yUI2MvGQPrakwKGrIC8J+qQZmc +HuBshCzjCwMBCgnCrgQYFggAYAWCaYpzWAmQYAjQp5oj+YI1FAAAAAAAHAAQc2Fs +dEBub3RhdGlvbnMub3BlbnBncGpzLm9yZzYfacTCU+Oed9RIlb2EZdwCmwwWIQSI +WqSyA1VEtFC/DVlgCNCnmiP5ggAAzZ4A/3plxYks6NIEZIGCLFk5pg0XNQ0ThvCi +R+zehKfHi6UFAP9GYJPck4WUb8BVfN6C7owh0SdhQ0rjXHoUwK1RHniwBw== +=X09n +-----END PGP PUBLIC KEY BLOCK----- \ No newline at end of file diff --git a/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-extras-source b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-extras-source new file mode 100644 index 0000000000..dfbb936665 --- /dev/null +++ b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-extras-source @@ -0,0 +1,18 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GopenPGP 2.8.1 +Comment: https://gopenpgp.org + +xjMEaYpzWRYJKwYBBAHaRw8BAQdAF3LIndu3tcRaDnqqthGgFqSZWya0I7/Pl7rs +0NeeGHzNMlRlcnJhIDQ0IC0gRXh0cmFzIC0gU291cmNlIDxzZWN1cml0eUBmeXJh +bGFicy5jb20+wr8EExYIAHEFgmmKc1kDCwkHCZDXVlwUOcXHhTUUAAAAAAAcABBz +YWx0QG5vdGF0aW9ucy5vcGVucGdwanMub3Jn112aEYQl6OP78t5s0TcwEQIVCAMW +AAICGQECmwMCHgEWIQS8ujogHdK6v+JJsmLXVlwUOcXHhQAADkcA/A03jRGR1kkJ +2x1IrfE737P/KUYm+cOSShas6G+4Ttb6AP9D3Om1miIkCmQPVPW3yKOCNntxcCRM +hVl7jfO4I1C9D844BGmKc1kSCisGAQQBl1UBBQEBB0AT0R7nxrCqYh0rW7KQIVkU +hNjH5aukMG01ZP0eGXGOHwMBCgnCrgQYFggAYAWCaYpzWQmQ11ZcFDnFx4U1FAAA +AAAAHAAQc2FsdEBub3RhdGlvbnMub3BlbnBncGpzLm9yZ+FMQCtesuQvwglEbIGe +8ToCmwwWIQS8ujogHdK6v+JJsmLXVlwUOcXHhQAAhPgA/RpZLeiDUOGydUEb9wTI +NgbvZ4Yf3lphSlzyllg7rR5KAP0Tqr1CeO9PLB85g87qsLQTBTpksuAAeHVleJak +Kt7jCQ== +=nLc0 +-----END PGP PUBLIC KEY BLOCK----- \ No newline at end of file diff --git a/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-mesa b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-mesa new file mode 100644 index 0000000000..b983582a61 --- /dev/null +++ b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-mesa @@ -0,0 +1,17 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GopenPGP 2.8.1 +Comment: https://gopenpgp.org + +xjMEaYpzWRYJKwYBBAHaRw8BAQdA9nvqX6Rc5zoXOB5Oyi6zRZryyx7lxsQBYV9C +LDI7+MvNJ1RlcnJhIDQ0IC0gTWVzYSA8c2VjdXJpdHlAZnlyYWxhYnMuY29tPsK/ +BBMWCABxBYJpinNZAwsJBwmQej3D4C/+tlA1FAAAAAAAHAAQc2FsdEBub3RhdGlv +bnMub3BlbnBncGpzLm9yZ0IKV181NXbbjY/ClKZ/qWoCFQgDFgACAhkBApsDAh4B +FiEEvtc+fUAZYMWQ5F2Vej3D4C/+tlAAACeoAQDZiyuO7wbwX1rgTRMuxURLnbbe +NyYcm4/CYiMzAScvhAD/dJXriy/rLODPAbfMsp0+r0rsOtsyzFQkJtRBlYgn/gvO +OARpinNZEgorBgEEAZdVAQUBAQdAYmYguyB5/29fAtrO5iLNuamQuJr9aUJ5dbFl +0GyVHyMDAQoJwq4EGBYIAGAFgmmKc1kJkHo9w+Av/rZQNRQAAAAAABwAEHNhbHRA +bm90YXRpb25zLm9wZW5wZ3Bqcy5vcmftTZ7t0+k8C2f+7pD5daW2ApsMFiEEvtc+ +fUAZYMWQ5F2Vej3D4C/+tlAAAMmRAP44BAL8+96Rwl6Xw2gHzHbR6+vRHfF+zgV4 +RSWvjl7xOwEA25wHOq5RNAfEnFsTFVAn99C9mcJISdB1YMnip2deZAQ= +=F1z6 +-----END PGP PUBLIC KEY BLOCK----- \ No newline at end of file diff --git a/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-mesa-source b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-mesa-source new file mode 100644 index 0000000000..b66c47e517 --- /dev/null +++ b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-mesa-source @@ -0,0 +1,18 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GopenPGP 2.8.1 +Comment: https://gopenpgp.org + +xjMEaYpzWhYJKwYBBAHaRw8BAQdAXnpFECHNb3ryiIB27S92KhSMrQintJtioYJ7 +qBYgW9XNMFRlcnJhIDQ0IC0gTWVzYSAtIFNvdXJjZSA8c2VjdXJpdHlAZnlyYWxh +YnMuY29tPsK/BBMWCABxBYJpinNaAwsJBwmQxija3/ZHYn01FAAAAAAAHAAQc2Fs +dEBub3RhdGlvbnMub3BlbnBncGpzLm9yZ3aX8z3Yh1dyP7AAUMSEvgECFQgDFgAC +AhkBApsDAh4BFiEEabP6XRkmLg0Aixopxija3/ZHYn0AAFDlAP9F7z7x2sg6KUFM +i4FVnPmgwH97MakbBlRPPFr6k1eZ1AEA60HTpLLfCPcTbA+FzwmzeRFwrsW7uJwD +J8T4+r4p8wLOOARpinNaEgorBgEEAZdVAQUBAQdAGrAlL/5dsSuOeYGyqAB1R6qk +FVD6A/pdDlrtpU2cZQkDAQoJwq4EGBYIAGAFgmmKc1oJkMYo2t/2R2J9NRQAAAAA +ABwAEHNhbHRAbm90YXRpb25zLm9wZW5wZ3Bqcy5vcmclFKmCzLWkm/i0CLhvw1gm +ApsMFiEEabP6XRkmLg0Aixopxija3/ZHYn0AAK6xAPwPSCQ7p7Sv6Iknm2PsD46b +W28irf9ZtZGQtjLvbICTEQD/UnU/c0sWfyKGGtNbnfWWCWRPQ7RiYA1W8FV825zg +yAE= +=RpzP +-----END PGP PUBLIC KEY BLOCK----- \ No newline at end of file diff --git a/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-multimedia b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-multimedia new file mode 100644 index 0000000000..88e9b8ab03 --- /dev/null +++ b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-multimedia @@ -0,0 +1,17 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Comment: https://gopenpgp.org +Version: GopenPGP 2.8.1 + +xjMEaYpzdhYJKwYBBAHaRw8BAQdAS+7xt/wuYX6vC8MAVX+hCyydE9ze7s9RrqkO +V955PevNLVRlcnJhIDQ0IC0gTXVsdGltZWRpYSA8c2VjdXJpdHlAZnlyYWxhYnMu +Y29tPsK/BBMWCABxBYJpinN2AwsJBwmQY/yBc/Z8Q3A1FAAAAAAAHAAQc2FsdEBu +b3RhdGlvbnMub3BlbnBncGpzLm9yZ8n3QviVcmQM9aBc+5ADHMECFQgDFgACAhkB +ApsDAh4BFiEE6RDn+xxDvXTztTEZY/yBc/Z8Q3AAAAfAAQCKEHz1upm1IdX0W5o7 +CdOie7Tx3Z5B0nc+QXejaUnksgEA5DhXt/12BBLV9U9Zt/Xeu9In9voWe3OrPwth +qV1WDwfOOARpinN2EgorBgEEAZdVAQUBAQdAVKIBAhiNXVLhBOwAPs0bBpK6GReM +64cI8gDa+17shgYDAQoJwq4EGBYIAGAFgmmKc3YJkGP8gXP2fENwNRQAAAAAABwA +EHNhbHRAbm90YXRpb25zLm9wZW5wZ3Bqcy5vcmefkLWxmr5AIaDXC5cHxIZCApsM +FiEE6RDn+xxDvXTztTEZY/yBc/Z8Q3AAAJcQAPsHa+QALApqpzFNBP9EI048XCHL +lDmB5GJ2anYy+PzcSAEAz9Gh+62BXvy0ODXuMpHLCleay5JkDnV6r6izkoD7dQc= +=8V1K +-----END PGP PUBLIC KEY BLOCK----- \ No newline at end of file diff --git a/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-multimedia-source b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-multimedia-source new file mode 100644 index 0000000000..f70d0949dc --- /dev/null +++ b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-multimedia-source @@ -0,0 +1,18 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GopenPGP 2.8.1 +Comment: https://gopenpgp.org + +xjMEaYpzWhYJKwYBBAHaRw8BAQdAEeOfLop+GoMPjhOZLZka+O85PiAxBleUfWxz +LAN+pFnNNlRlcnJhIDQ0IC0gTXVsdGltZWRpYSAtIFNvdXJjZSA8c2VjdXJpdHlA +ZnlyYWxhYnMuY29tPsK/BBMWCABxBYJpinNaAwsJBwmQS4SqIbLB5Z81FAAAAAAA +HAAQc2FsdEBub3RhdGlvbnMub3BlbnBncGpzLm9yZ76kBtyWy/EBTdMn8rrwILQC +FQgDFgACAhkBApsDAh4BFiEEk6CyGxoPRHmOX3fWS4SqIbLB5Z8AAFFqAP4w7GRV +LDujzNkxGT+UpgGEAl6p+CH7BlGPOyjPNye0HgD+MRwFJjH4oMgLOQl4Ab+KmvYA ++gcTpjOWGgwT0JxEIwDOOARpinNaEgorBgEEAZdVAQUBAQdAj8GItTADl2iBDTXT +dAhZ5uYdTKwe/unw6RVkhbYwTAcDAQoJwq4EGBYIAGAFgmmKc1oJkEuEqiGyweWf +NRQAAAAAABwAEHNhbHRAbm90YXRpb25zLm9wZW5wZ3Bqcy5vcmc+fPpvt69yEuAI +5zDxY7AmApsMFiEEk6CyGxoPRHmOX3fWS4SqIbLB5Z8AAIZNAP40C5vz8NpmHh8V +Y5vME6iRrFdn9LzIp3rIANZc7dn4SgEAnBZ+RczAC2CikUeuJ+84A8p86KeU1eXL +8YSQ90OKxQE= +=Vprg +-----END PGP PUBLIC KEY BLOCK----- \ No newline at end of file diff --git a/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-nvidia b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-nvidia new file mode 100644 index 0000000000..6e8bf3c45b --- /dev/null +++ b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-nvidia @@ -0,0 +1,17 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GopenPGP 2.8.1 +Comment: https://gopenpgp.org + +xjMEaYpzdxYJKwYBBAHaRw8BAQdAyUrDJOJErpiXaSZ+iwWfOjUQYb7Ww7L4FoYa +5gv4U1TNKVRlcnJhIDQ0IC0gTnZpZGlhIDxzZWN1cml0eUBmeXJhbGFicy5jb20+ +wr8EExYIAHEFgmmKc3cDCwkHCZB5f/UW4V7dvDUUAAAAAAAcABBzYWx0QG5vdGF0 +aW9ucy5vcGVucGdwanMub3JnHKVenZwrKZ6XEjvbYIpJ+wIVCAMWAAICGQECmwMC +HgEWIQQmaWGFrmznmx6FVr15f/UW4V7dvAAAnusBAL5dhLe9JkfezIOkSSQ6x33/ +PEqR6+iid1K/cQpSUmoPAP9r4L5uW9khMgzhQNQdmCO0mYBjBcfXZMxOdAJKOeY3 +AM44BGmKc3cSCisGAQQBl1UBBQEBB0BY/WFtVq5ATp7giDLciNtAqfZE1O3OVQXs +idxzNjxELQMBCgnCrgQYFggAYAWCaYpzdwmQeX/1FuFe3bw1FAAAAAAAHAAQc2Fs +dEBub3RhdGlvbnMub3BlbnBncGpzLm9yZ+N7q6u3i2dvae06Yf0pr2MCmwwWIQQm +aWGFrmznmx6FVr15f/UW4V7dvAAA0t0BAIro/sCMgwg3TwlPGNT0Ier5lcz21J9H +Q51nACsA3SR2APwLG6OZzJIudludtBrTgrV79LRv9DEX58KmrhtBv02gCg== +=ftIl +-----END PGP PUBLIC KEY BLOCK----- \ No newline at end of file diff --git a/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-nvidia-source b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-nvidia-source new file mode 100644 index 0000000000..ee44775762 --- /dev/null +++ b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-nvidia-source @@ -0,0 +1,18 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GopenPGP 2.8.1 +Comment: https://gopenpgp.org + +xjMEaYpzdxYJKwYBBAHaRw8BAQdAW2ZSuJks+NCbX1m1S+/2YHrkdvV085vPkyLp +9lfoWoLNMlRlcnJhIDQ0IC0gTnZpZGlhIC0gU291cmNlIDxzZWN1cml0eUBmeXJh +bGFicy5jb20+wr8EExYIAHEFgmmKc3cDCwkHCZCSwkAZvngqITUUAAAAAAAcABBz +YWx0QG5vdGF0aW9ucy5vcGVucGdwanMub3JnHkmRJm6DdmTUcvQxXtw25gIVCAMW +AAICGQECmwMCHgEWIQQLE3kbMhz7vUregauSwkAZvngqIQAAUIkA/jXu41c/5OHX +8K9qT1EHCFYkBsF53a/QNcvg8cn5bhdqAQCM+FCTHXdn/qBfzKaAOgZdUAXASACN +jb/Gygg9e5nmDc44BGmKc3cSCisGAQQBl1UBBQEBB0CJWWfDF7xCIlUlw7d+hEiK +S6wh6UY7KGfpO3qOA8V2RAMBCgnCrgQYFggAYAWCaYpzdwmQksJAGb54KiE1FAAA +AAAAHAAQc2FsdEBub3RhdGlvbnMub3BlbnBncGpzLm9yZ90YnsscRilE7JRUm6td +v/oCmwwWIQQLE3kbMhz7vUregauSwkAZvngqIQAAp8AA/jV/mubRFTHVT5GyO93C +48vwZc4BJBC30x5dU3yfFQrmAP9SOlhcs2D8aZuBRL1TSXpkBq6NKJxNdtEr0pv7 +/ds1Ag== +=uldH +-----END PGP PUBLIC KEY BLOCK----- \ No newline at end of file diff --git a/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-source b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-source new file mode 100644 index 0000000000..ea6e6659ab --- /dev/null +++ b/anda/terra/gpg-keys/RPM-GPG-KEY-terra44-source @@ -0,0 +1,17 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GopenPGP 2.8.1 +Comment: https://gopenpgp.org + +xjMEaYpzWxYJKwYBBAHaRw8BAQdA7UMAtNQ1lu/zeq7f6ak1ZRDb09GI5nKRTGPb +z5/P9DLNKVRlcnJhIDQ0IC0gU291cmNlIDxzZWN1cml0eUBmeXJhbGFicy5jb20+ +wr8EExYIAHEFgmmKc1sDCwkHCZD5EsiV2QOikTUUAAAAAAAcABBzYWx0QG5vdGF0 +aW9ucy5vcGVucGdwanMub3JnKnNq119JCv79xo34cTtU+AIVCAMWAAICGQECmwMC +HgEWIQSo/fET0Zg0/vaHhXf5EsiV2QOikQAAZvIBAOBgURJ0bpsl9UQt+oty/9g6 +QJwE7x2KvTfw9CIjzd2yAQCqE6mBtL4Wd0T8FFXzg2KYgMPvNlkof24kas5Y79ID +DM44BGmKc1sSCisGAQQBl1UBBQEBB0C1EBr2yVcLBryHfBsJ8HffYUYmQxdOytvC +4sEKnn+UcAMBCgnCrgQYFggAYAWCaYpzWwmQ+RLIldkDopE1FAAAAAAAHAAQc2Fs +dEBub3RhdGlvbnMub3BlbnBncGpzLm9yZ7hCyKk6CNKWKKt60jpyuYACmwwWIQSo +/fET0Zg0/vaHhXf5EsiV2QOikQAAKLABAJSkznaUgXt2HisPv9rJGBjobx3dx9Ns +SZs4qLEwaBzAAQCGD5cZBVo4sVzskOhFAG3U2wMMGyTXP4+hvsFB09HNCg== +=F2xn +-----END PGP PUBLIC KEY BLOCK----- \ No newline at end of file diff --git a/anda/terra/gpg-keys/terra-gpg-keys.spec b/anda/terra/gpg-keys/terra-gpg-keys.spec index d8a67f99ad..66e2773f48 100644 --- a/anda/terra/gpg-keys/terra-gpg-keys.spec +++ b/anda/terra/gpg-keys/terra-gpg-keys.spec @@ -39,13 +39,31 @@ Source26: RPM-GPG-KEY-terra43-multimedia-source Source27: RPM-GPG-KEY-terra43-nvidia Source28: RPM-GPG-KEY-terra43-nvidia-source Source29: RPM-GPG-KEY-terra43-source -Source30: RPM-GPG-KEY-terrael10 -Source31: RPM-GPG-KEY-terrael10-source +Source30: RPM-GPG-KEY-terra44 +Source31: RPM-GPG-KEY-terra44-extras +Source32: RPM-GPG-KEY-terra44-extras-source +Source33: RPM-GPG-KEY-terra44-mesa +Source34: RPM-GPG-KEY-terra44-mesa-source +Source35: RPM-GPG-KEY-terra44-multimedia +Source36: RPM-GPG-KEY-terra44-multimedia-source +Source37: RPM-GPG-KEY-terra44-nvidia +Source38: RPM-GPG-KEY-terra44-nvidia-source +Source39: RPM-GPG-KEY-terra44-source +Source40: RPM-GPG-KEY-terrael10 +Source41: RPM-GPG-KEY-terrael10-source BuildArch: noarch +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 @@ -54,6 +72,13 @@ GPG keys for Terra, used for verifying RPM package signatures. 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 fec7562f0d..4b219fb1de 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.1.1 -Release: 2%?dist +Version: 2.3.0 +Release: 1%{?dist} Epoch: 1 Summary: Mock configs for Terra repos @@ -10,11 +10,14 @@ 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} Obsoletes: anda-mock-configs < 3-2%{?dist} +Packager: Terra Packaging Team + %description %{summary} @@ -31,9 +34,13 @@ install -Dpm644 *.cfg -t %{buildroot}%{_sysconfdir}/mock/ %config %{_sysconfdir}/mock/templates/terra-rawhide.tpl %config %{_sysconfdir}/mock/terra-*-x86_64.cfg %config %{_sysconfdir}/mock/terra-*-aarch64.cfg +%config %{_sysconfdir}/mock/terra-*-riscv64.cfg %config %{_sysconfdir}/mock/terra-*-i386.cfg %changelog +* Sat Mar 07 2026 Owen Zimmerman - 2.2.5-1 +- Add riscv64 configs + * Fri Jul 26 2024 madonuko - 1:1.1.0-1 - Include mock files for Terra 41 diff --git a/anda/terra/obsolete/RELEASE.txt b/anda/terra/obsolete/RELEASE.txt index dc0833e168..d00099938a 100644 --- a/anda/terra/obsolete/RELEASE.txt +++ b/anda/terra/obsolete/RELEASE.txt @@ -1 +1 @@ -F44 \ No newline at end of file +F45 \ No newline at end of file diff --git a/anda/terra/obsolete/terra-obsolete.spec b/anda/terra/obsolete/terra-obsolete.spec index 56119ce212..5a59d63791 100644 --- a/anda/terra/obsolete/terra-obsolete.spec +++ b/anda/terra/obsolete/terra-obsolete.spec @@ -4,12 +4,14 @@ Version: %{?fedora:%{fedora}}%{?rhel:%{rhel}} # The dist number is the version here, it is intentionally not repeated in the release %global dist %nil -Release: 5 +Release: 2%?dist Summary: A package to obsolete retired packages, based on Fedora's equivalent package License: LicenseRef-Fedora-Public-Domain BuildArch: noarch +Packager: Terra Packaging Team + # =============================================================================== # Skip down below these convenience macros %define obsolete_ticket() %{lua: diff --git a/anda/terra/release/RELEASE.txt b/anda/terra/release/RELEASE.txt index dc0833e168..d00099938a 100644 --- a/anda/terra/release/RELEASE.txt +++ b/anda/terra/release/RELEASE.txt @@ -1 +1 @@ -F44 \ No newline at end of file +F45 \ No newline at end of file diff --git a/anda/terra/release/terra-release.spec b/anda/terra/release/terra-release.spec index 26732db826..035e8bd6da 100644 --- a/anda/terra/release/terra-release.spec +++ b/anda/terra/release/terra-release.spec @@ -2,7 +2,7 @@ Name: terra-release Version: %{?fedora:%{fedora}}%{?rhel:%{rhel}} -Release: 7 +Release: 2%?dist Summary: Release package for Terra License: MIT @@ -19,6 +19,8 @@ BuildArch: noarch Requires: terra-gpg-keys +Packager: Terra Packaging Team + %description Release package for Terra, containing the Terra repository configuration. diff --git a/anda/terra/srpm-macros/anda-srpm-macros.spec b/anda/terra/srpm-macros/anda-srpm-macros.spec index 4cd84b5f05..62691facfd 100644 --- a/anda/terra/srpm-macros/anda-srpm-macros.spec +++ b/anda/terra/srpm-macros/anda-srpm-macros.spec @@ -1,5 +1,5 @@ Name: anda-srpm-macros -Version: 0.3.1 +Version: 0.3.4 Release: 1%?dist Summary: SRPM macros for extra Fedora packages @@ -9,11 +9,12 @@ Source0: %url/archive/refs/tags/v%{version}.tar.gz Recommends: rust-packaging Requires: git-core -Requires: terra-appstream-helper Obsoletes: fyra-srpm-macros < 0.1.1-1 Provides: fyra-srpm-macros = %{version}-%{release} BuildArch: noarch +Packager: Terra Packaging Team + %description %{summary} diff --git a/anda/themes/breeze-plus-icon-theme/anda.hcl b/anda/themes/breeze-plus-icon-theme/anda.hcl new file mode 100644 index 0000000000..343aec0611 --- /dev/null +++ b/anda/themes/breeze-plus-icon-theme/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "breeze-plus-icon-theme.spec" + } +} 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 new file mode 100644 index 0000000000..f52a91ba76 --- /dev/null +++ b/anda/themes/breeze-plus-icon-theme/breeze-plus-icon-theme.spec @@ -0,0 +1,30 @@ +Name: breeze-plus-icon-theme +Version: 6.19.0 +Release: 1%{?dist} +Summary: Breeze icon theme with additional icons +Packager: Amy King + +License: LGPL-2.1-only +URL: https://github.com/mjkim0727/breeze-plus +Source0: %{url}/archive/refs/tags/%{version}.tar.gz +BuildArch: noarch +%description +%summary. + +%prep +%autosetup -n breeze-plus-%{version} +%build + +%install +mkdir -p %{buildroot}%{_datadir}/icons/ +cp -r src/* %{buildroot}%{_datadir}/icons/ + + +%files +%license LICENSE +%doc README.md +%{_datadir}/icons/* + +%changelog +* Wed Feb 25 2026 Amy King - 6.19.0 +- Initial package diff --git a/anda/themes/breeze-plus-icon-theme/update.rhai b/anda/themes/breeze-plus-icon-theme/update.rhai new file mode 100644 index 0000000000..d3bcb8269e --- /dev/null +++ b/anda/themes/breeze-plus-icon-theme/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("mjkim0727/breeze-plus")); 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 3094a4c66b..22cb9e5536 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.1 +6.10.2 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 4663591e42..4737443858 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 @@ -3,13 +3,14 @@ %global org "com.github.luisbocanegra" Name: kde-material-you-colors -Version: 2.0.0 -Release: 3%{?dist} +Version: 2.0.2 +Release: 2%{?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} # The PyPi source is a more generic install and lacks the Plasmoid config Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz +Patch0: %{url}/commit/4888f8570b1aa12e3ab7aee51ab72ad7a7f35b95.patch BuildRequires: anda-srpm-macros BuildRequires: gcc BuildRequires: gcc-c++ @@ -23,6 +24,8 @@ BuildRequires: python-rpm-macros BuildRequires: python3dist(pip) BuildRequires: python3dist(setuptools) >= 61.0 BuildRequires: python3dist(wheel) >= 0.37.1 +BuildRequires: cmake(KF6CoreAddons) +BuildRequires: cmake(KF6Service) BuildRequires: cmake(KF6KirigamiPlatform) BuildRequires: cmake(Plasma) BuildRequires: cmake(Plasma5Support) @@ -67,15 +70,12 @@ DESTDIR="%{buildroot}" %cmake_install sed -Ei "s:^(#!.*)env (python.*)$:\1python3:" %{buildroot}%{python3_sitelib}/kde_material_you_colors/main.py %fdupes %{buildroot}%{python3_sitelib}/%{name}/ -%terra_appstream - %files %doc CHANGELOG.md %doc README.md %license LICENSE %{_bindir}/%{name}-screenshot-helper %{_datadir}/applications/%{name}-screenshot-helper.desktop -%{_metainfodir}/luisbocanegra.kdematerialyou.colors.metainfo.xml %{_datadir}/plasma/plasmoids/luisbocanegra.kdematerialyou.colors/ %files -n python3-%{name} diff --git a/anda/themes/kde-material-you-colors/update.rhai b/anda/themes/kde-material-you-colors/update.rhai index 3d67611499..117be52924 100644 --- a/anda/themes/kde-material-you-colors/update.rhai +++ b/anda/themes/kde-material-you-colors/update.rhai @@ -1,7 +1,7 @@ import "andax/bump_extras.rhai" as bump; import "andax/spec.rhai" as spec; -rpm.version(pypi("kde-material-you-colors")); +rpm.version(find(`version = \"([\d.]+)\"`, gh_rawfile("luisbocanegra/kde-material-you-colors", "main", "pyproject.toml"), 1)); open_file("anda/themes/kde-material-you-colors/VERSION_qt6-qtbase.txt", "w").write(bump::bodhi("qt6-qtbase", bump::as_bodhi_ver(labels.branch))); diff --git a/anda/themes/klassy/klassy.spec b/anda/themes/klassy/klassy.spec index 79663ec613..eca50ab33a 100644 --- a/anda/themes/klassy/klassy.spec +++ b/anda/themes/klassy/klassy.spec @@ -1,8 +1,8 @@ Name: klassy %global forgeurl https://github.com/paulmcauley/%{name} -%global tag 6.4.breeze6.4.0 -%global date 20250617 +%global tag v6.5.3 +%global date 20260221 %forgemeta Version: %{tag} diff --git a/anda/tools/HeadsetControl-nightly/HeadsetControl-nightly.spec b/anda/tools/HeadsetControl-nightly/HeadsetControl-nightly.spec index 40bc4f51c1..1b2e7eaf4d 100644 --- a/anda/tools/HeadsetControl-nightly/HeadsetControl-nightly.spec +++ b/anda/tools/HeadsetControl-nightly/HeadsetControl-nightly.spec @@ -1,12 +1,12 @@ %global _udevrulesdir /usr/lib/udev/rules.d -%global commit 6fe0cec4f8baeae5e6441489df02c395e39c6ae2 +%global commit 7d6e61bb75bdcd3a439e6c06d5133d660c8f030c %global commitdate 20251121 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: HeadsetControl-nightly Version: 0^%{commitdate}.%{shortcommit} -Release: 1%?dist +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 diff --git a/anda/tools/MareTF/MareTF.spec b/anda/tools/MareTF/MareTF.spec new file mode 100644 index 0000000000..f4dd2b076d --- /dev/null +++ b/anda/tools/MareTF/MareTF.spec @@ -0,0 +1,58 @@ +%define debug_package %{nil} + +Name: MareTF +Version: 0.9.3 +Release: 2%{?dist} +License: MIT +Summary: A utility to create, edit, and display every type of VTF file ever made +URL: https://github.com/craftablescience/MareTF +Source: %{url}/archive/refs/tags/v%{version}.tar.gz +Packager: Owen Zimmerman +Provides: maretf + +BuildRequires: gcc-c++ +BuildRequires: cmake +BuildRequires: pkgconfig(freetype2) +BuildRequires: pkgconfig(flac) +BuildRequires: pkgconfig(gtk+-3.0) +BuildRequires: pkgconfig(vorbis) +BuildRequires: pkgconfig(zlib) +BuildRequires: cmake(Qt6LinguistTools) +BuildRequires: ninja-build +BuildRequires: vulkan-headers + +%description +%{summary}. + +%prep +%git_clone + +%conf +%cmake \ + -DCMAKE_BUILD_TYPE=Release \ + -DMARETF_BUILD_INSTALLER=ON \ + -DCPACK_GENERATOR=RPM \ + -DMARETF_BUILD_INSTALLER=ON + +%build +%cmake_build + +%install +%cmake_install + +%files +%doc README.md +%license LICENSE +%{_bindir}/maretf +%{_bindir}/maretf_gui +%{_appsdir}/maretf.desktop +%{_hicolordir}/512x512/apps/maretf.png +%{_defaultlicensedir}/maretf/LICENSE +%{_datadir}/mime/packages/maretf.xml + +%changelog +* Sun Mar 15 2026 Owen Zimmerman +- Build release build + +* Sat Mar 14 2026 Owen Zimmerman +- Initial commit diff --git a/anda/tools/MareTF/anda.hcl b/anda/tools/MareTF/anda.hcl new file mode 100644 index 0000000000..ff6f663d92 --- /dev/null +++ b/anda/tools/MareTF/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "MareTF.spec" + } +} diff --git a/anda/tools/MareTF/update.rhai b/anda/tools/MareTF/update.rhai new file mode 100644 index 0000000000..207c029245 --- /dev/null +++ b/anda/tools/MareTF/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("craftablescience/MareTF")); diff --git a/anda/tools/alipad/alipad.spec b/anda/tools/alipad/alipad.spec new file mode 100644 index 0000000000..d4a6376255 --- /dev/null +++ b/anda/tools/alipad/alipad.spec @@ -0,0 +1,41 @@ +%global commit 4413a0225966c2f9d19f0bcbcd754e2d62d56941 +%global commit_date 20260213 +%global shortcommit %{sub %{commit} 0 7} + +%undefine __brp_mangle_shebangs + +Name: alipad +Version: 0~%{commit_date}git.%{shortcommit} +Release: 1%?dist +Summary: Robust event check-in system +URL: https://git.sr.ht/~malicean/alipad +Source0: https://git.sr.ht/~malicean/alipad/archive/%{commit}.tar.gz +License: BSD-3-Clause +BuildRequires: cargo-rpm-macros cargo gcc rust-udev-devel + +Packager: Owen Zimmerman + +%description +A low-budget and robust event check-in system built atop a Proxmark3 and +set of ISO/IEC 14443-3 compliant smartcards which your attendees bring +(NTAG, Mifare, Ventra, generic NFC, and more), in order to simplify and +speed-up the check-in process. To the attendees, it's faster, easier, and has a charm! + +%prep +%autosetup -n %{name}-%{commit} +%cargo_prep_online + +%build +%cargo_build + +%install +install -Dm755 target/rpm/alipad %{buildroot}%{_bindir}/alipad + +%files +%doc README.md CHANGELOG.md +%license LICENSE +%{_bindir}/alipad + +%changelog +* Sat Feb 14 2026 Owen Zimmerman +- Initial commit diff --git a/anda/tools/alipad/anda.hcl b/anda/tools/alipad/anda.hcl new file mode 100644 index 0000000000..315dde1198 --- /dev/null +++ b/anda/tools/alipad/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "alipad.spec" + } +} diff --git a/anda/tools/alipad/update.rhai b/anda/tools/alipad/update.rhai new file mode 100644 index 0000000000..abf1bfb8ee --- /dev/null +++ b/anda/tools/alipad/update.rhai @@ -0,0 +1 @@ +// Empty until sourcehut update script 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 133e40da7b..57a605ec02 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,8 +1,11 @@ %global pypi_name app-bricks-py %global _desc The code of the Arduino App Lab Bricks +%global ver release/0.8.0 +%global sanitized_ver %(echo %{ver} | sed 's|release/||') + Name: %{pypi_name} -Version: release/0.6.2 +Version: %sanitized_ver Release: 1%?dist Summary: The code of the Arduino App Lab Bricks License: MPL-2.0 diff --git a/anda/tools/arduino-app-bricks-py/update.rhai b/anda/tools/arduino-app-bricks-py/update.rhai index 3f0f183462..4d5b351b5d 100644 --- a/anda/tools/arduino-app-bricks-py/update.rhai +++ b/anda/tools/arduino-app-bricks-py/update.rhai @@ -1 +1 @@ -rpm.version(gh("arduino/app-bricks-py")); +rpm.global("ver", gh("arduino/app-bricks-py")); diff --git a/anda/tools/arduino-app-cli/arduino-app-cli.spec b/anda/tools/arduino-app-cli/arduino-app-cli.spec index 6eb62e20fd..6da107809b 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.1 +Version: 0.8.3 %gometa -f diff --git a/anda/tools/arduino-app-lab-bin/arduino-app-lab-bin.spec b/anda/tools/arduino-app-lab-bin/arduino-app-lab-bin.spec index 5a7241c418..8f389ec95f 100644 --- a/anda/tools/arduino-app-lab-bin/arduino-app-lab-bin.spec +++ b/anda/tools/arduino-app-lab-bin/arduino-app-lab-bin.spec @@ -1,7 +1,7 @@ %global appid cc.arduino.AppLab Name: arduino-app-lab-bin -Version: al.0.3.2 +Version: 0.5.0 Release: 1%?dist Summary: A powerful visual environment for managing the Arduino UNO Q @@ -20,7 +20,7 @@ Requires: android-tools BuildRequires: terra-appstream-helper desktop-file-utils -Suggests: arduino-flasher-cli arduino-app-cli +Suggests: arduino-flasher-cli arduino-app-cli Packager: Jaiden Riordan diff --git a/anda/tools/arduino-app-lab-bin/update.rhai b/anda/tools/arduino-app-lab-bin/update.rhai index 1eaf8a7c54..49158f5883 100644 --- a/anda/tools/arduino-app-lab-bin/update.rhai +++ b/anda/tools/arduino-app-lab-bin/update.rhai @@ -1 +1,3 @@ -rpm.version(gh("arduino/arduino-app-lab")); +let v = gh("arduino/arduino-app-lab"); +v.crop(3); +print(v); diff --git a/anda/tools/arduino-flasher-cli/arduino-flasher-cli.spec b/anda/tools/arduino-flasher-cli/arduino-flasher-cli.spec index ab19a19fca..2b6a39b588 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.4.0 +Version: 0.5.0 %gometa -f diff --git a/anda/tools/arduino-remoteocd/arduino-remoteocd.spec b/anda/tools/arduino-remoteocd/arduino-remoteocd.spec index cf8852538c..d49f67b612 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 6e375c835fe319e8eef3f40578bf8de044156ce1 -%global commit_date 20251105 +%global commit 3cf11b106f040493ea3589ddaf56df9c6396d17f +%global commit_date 20260224 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Version: 0^%commit_date.%shortcommit diff --git a/anda/tools/bdf2sfd/bdf2sfd.spec b/anda/tools/bdf2sfd/bdf2sfd.spec index f13f10e509..c904daa897 100644 --- a/anda/tools/bdf2sfd/bdf2sfd.spec +++ b/anda/tools/bdf2sfd/bdf2sfd.spec @@ -1,5 +1,5 @@ Name: bdf2sfd -Version: 1.1.9 +Version: 1.2.0 Release: 1%?dist Summary: BDF to SFD converter, allowing to vectorize bitmap fonts License: BSD-2-Clause diff --git a/anda/tools/binsider/binsider.spec b/anda/tools/binsider/binsider.spec index 3ecd326eb5..dfc1db29e8 100644 --- a/anda/tools/binsider/binsider.spec +++ b/anda/tools/binsider/binsider.spec @@ -1,5 +1,5 @@ Name: binsider -Version: 0.3.1 +Version: 0.3.2 Release: 1%?dist Summary: Analyze ELF binaries like a boss 😼🕵️‍♂️ License: Apache-2.0 AND MIT diff --git a/anda/tools/buildsys/anda/rust-anda.spec b/anda/tools/buildsys/anda/rust-anda.spec index 97ea28b1d0..0dfd45f592 100644 --- a/anda/tools/buildsys/anda/rust-anda.spec +++ b/anda/tools/buildsys/anda/rust-anda.spec @@ -5,8 +5,8 @@ %global crate anda Name: rust-anda -Version: 0.4.14 -Release: 1%?dist +Version: 0.5.2 +Release: 1%{?dist} Summary: Andaman Build toolchain License: MIT diff --git a/anda/tools/buildsys/gradle/gradle.spec b/anda/tools/buildsys/gradle/gradle.spec index 826d21387d..2bf296bedb 100644 --- a/anda/tools/buildsys/gradle/gradle.spec +++ b/anda/tools/buildsys/gradle/gradle.spec @@ -1,9 +1,10 @@ Name: gradle -Version: 9.3.0 -Release: 1%?dist +Version: 9.4.0 +Release: 2%?dist Summary: Powerful build system for the JVM URL: https://gradle.org/ Source0: https://github.com/gradle/gradle/archive/refs/tags/v%{version}.tar.gz +Packager: madonuko License: Apache-2.0 Requires: java coreutils findutils sed which bash BuildRequires: java-21-openjdk-devel asciidoc xmlto groovy unzip git @@ -69,17 +70,15 @@ install -m644 dist/init.d/*.* "%{buildroot}%{_javadir}/%{name}/init.d" mkdir -p "%{buildroot}/%{_bindir}" ln -s %{_javadir}/%{name}/bin/%{name} "%{buildroot}%{_bindir}/%{name}" -install -d %{buildroot}%{_javadir}/%{name}/docs -cp -r dist/docs/* %{buildroot}%{_javadir}/%{name}/docs - -install -d %{buildroot}%{_javadir}/%{name}/src -cp -r dist/src/* %{buildroot}%{_javadir}/%{name}/src +cp -r dist/* %{buildroot}%{_javadir}/%{name}/ %files %doc README.md %license LICENSE %{_sysconfdir}/profile.d/gradle.sh %{_javadir}/%{name}/ +%exclude %{_javadir}/%{name}/docs +%exclude %{_javadir}/%{name}/src %{_bindir}/%{name} %files doc diff --git a/anda/tools/buildsys/mise/mise-fix-metadata-auto.diff b/anda/tools/buildsys/mise/mise-fix-metadata-auto.diff index 57543fb611..3198f7e1f2 100644 --- a/anda/tools/buildsys/mise/mise-fix-metadata-auto.diff +++ b/anda/tools/buildsys/mise/mise-fix-metadata-auto.diff @@ -1,6 +1,6 @@ ---- mise-2025.9.15/Cargo.toml 1970-01-01T00:00:01+00:00 -+++ mise-2025.9.15/Cargo.toml 2025-09-22T01:33:34.763933+00:00 -@@ -507,27 +507,6 @@ +--- 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 @@ optional = true default-features = false @@ -24,11 +24,14 @@ - "consoleapi", - "minwindef", -] +- +-[target."cfg(windows)".dependencies.zipsign-api] +-version = "0.1" - [lints.clippy] borrowed_box = "allow" -@@ -544,3 +523,4 @@ +@@ -615,3 +591,4 @@ [profile.serious] lto = true inherits = "release" diff --git a/anda/tools/buildsys/mise/rust-mise.spec b/anda/tools/buildsys/mise/rust-mise.spec index 30b0d44322..002351389e 100644 --- a/anda/tools/buildsys/mise/rust-mise.spec +++ b/anda/tools/buildsys/mise/rust-mise.spec @@ -5,8 +5,8 @@ %global crate mise Name: rust-mise -Version: 2026.1.5 -Release: 1%?dist +Version: 2026.3.9 +Release: 1%{?dist} Summary: Front-end to your dev env License: MIT @@ -91,9 +91,10 @@ Zsh command line completion support for %{crate}. %build %{cargo_license_summary_online} %{cargo_license_online} > LICENSE.dependencies +%{cargo_build} --locked %install -%cargo_install +%crate_install_bin install -Dm644 %SOURCE1 %buildroot%_mandir/man1/mise.1 install -Dm644 %SOURCE2 %buildroot%bash_completions_dir/mise.bash install -Dm644 %SOURCE3 %buildroot%fish_completions_dir/mise.fish diff --git a/anda/tools/buildsys/subatomic/subatomic.spec b/anda/tools/buildsys/subatomic/subatomic.spec index 6babc84192..87aac6e43e 100644 --- a/anda/tools/buildsys/subatomic/subatomic.spec +++ b/anda/tools/buildsys/subatomic/subatomic.spec @@ -1,7 +1,7 @@ %define debug_package %{nil} Name: subatomic -Version: 0.12.1 +Version: 0.13.0 Release: 1%?dist Summary: A modern package delivery system diff --git a/anda/tools/butler-bin/butler-bin.spec b/anda/tools/butler-bin/butler-bin.spec index 7041911474..a39d0f3b2d 100644 --- a/anda/tools/butler-bin/butler-bin.spec +++ b/anda/tools/butler-bin/butler-bin.spec @@ -1,5 +1,5 @@ Name: butler-bin -Version: 15.24.0 +Version: 15.26.1 Release: 1%?dist Summary: Command-line itch.io helper. URL: https://itch.io/docs/butler diff --git a/anda/tools/carapace/carapace.spec b/anda/tools/carapace/carapace.spec index 650cccbc94..75b9649374 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.5.7 +Version: 1.6.3 %gometa -f diff --git a/anda/tools/chafa/anda.hcl b/anda/tools/chafa/anda.hcl new file mode 100644 index 0000000000..5955930ce3 --- /dev/null +++ b/anda/tools/chafa/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "chafa.spec" + } + labels { + subrepo = "extras" + } +} diff --git a/anda/tools/chafa/chafa.spec b/anda/tools/chafa/chafa.spec new file mode 100644 index 0000000000..217226dd07 --- /dev/null +++ b/anda/tools/chafa/chafa.spec @@ -0,0 +1,67 @@ +Name: terra-chafa +Version: 1.18.1 +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/ +Source0: https://github.com/hpjansson/chafa/archive/refs/tags/%version.tar.gz + +BuildRequires: gcc +BuildRequires: gtk-doc +BuildRequires: libtool +BuildRequires: make +BuildRequires: libjpeg-turbo-devel +BuildRequires: libavif-devel +BuildRequires: librsvg2-devel +BuildRequires: libtiff-devel +BuildRequires: libwebp-devel +BuildRequires: libpng-devel +BuildRequires: anda-srpm-macros +Requires: %{name}-libs%{?_isa} = %{evr} +Provides: chafa = %{evr} + +Packager: Owen Zimmerman + +%description +Chafa is a command-line utility that converts all kinds of images, including +animated image formats like GIFs, into ANSI/Unicode character output that can +be displayed in a terminal. + +It is highly configurable, with support for alpha transparency and multiple +color modes and color spaces, combining a range of Unicode characters for +optimal output. + +%package libs +%pkg_libs_files + +%package devel +Requires: %{name}-libs%{?_isa} = %{evr} +%pkg_devel_files +%{_libdir}/chafa/include/chafaconfig.h + +%package static +%pkg_static_files + +%prep +%autosetup -n chafa-%{version} + +%build +autoreconf -ivf +%configure --disable-rpath +%make_build + +%install +%make_install +%if 0%{?rhel} +find %{buildroot} -name "*.la" -delete +%endif + +%files +%doc AUTHORS COPYING.LESSER README* NEWS +%license COPYING.LESSER COPYING +%{_bindir}/chafa +%{_mandir}/man1/chafa.1* + +%changelog +* Fri Feb 20 2026 Owen Zimmerman +- Initial commit diff --git a/anda/tools/chafa/update.rhai b/anda/tools/chafa/update.rhai new file mode 100644 index 0000000000..eb610d596d --- /dev/null +++ b/anda/tools/chafa/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("hpjansson/chafa")); diff --git a/anda/tools/cloudflare-speed-cli/cloudflare-speed-cli.spec b/anda/tools/cloudflare-speed-cli/cloudflare-speed-cli.spec index 857f2c4747..41180756b8 100644 --- a/anda/tools/cloudflare-speed-cli/cloudflare-speed-cli.spec +++ b/anda/tools/cloudflare-speed-cli/cloudflare-speed-cli.spec @@ -1,7 +1,7 @@ %define debug_package %{nil} Name: cloudflare-speed-cli -Version: 0.5.0 +Version: 0.6.5 Release: 1%?dist Summary: CLI for internet speed test via cloudflare diff --git a/anda/tools/copyparty/copyparty.spec b/anda/tools/copyparty/copyparty.spec index 6fec36306b..2f4ee08e7d 100644 --- a/anda/tools/copyparty/copyparty.spec +++ b/anda/tools/copyparty/copyparty.spec @@ -1,8 +1,8 @@ %global pypi_name copyparty Name: %{pypi_name} -Version: 1.20.2 -Release: 1%?dist +Version: 1.20.12 +Release: 1%{?dist} Summary: Portable, featureful, and fast file server URL: https://github.com/9001/copyparty Source0: %{pypi_source} diff --git a/anda/tools/electron/electron.spec b/anda/tools/electron/electron.spec index 8be1288771..3b0be07f49 100644 --- a/anda/tools/electron/electron.spec +++ b/anda/tools/electron/electron.spec @@ -1,7 +1,7 @@ Name: electron %electronmeta -Version: 40.0.0 -Release: 1%?dist +Version: 41.0.3 +Release: 1%{?dist} Summary: Build cross platform desktop apps with web technologies License: %{electron_license} URL: https://electronjs.org/ diff --git a/anda/tools/fasm/fasm.spec b/anda/tools/fasm/fasm.spec index 638c04f9f3..7a8953c821 100644 --- a/anda/tools/fasm/fasm.spec +++ b/anda/tools/fasm/fasm.spec @@ -2,7 +2,7 @@ Name: fasm Release: 1%?dist -Version: 1.73.34 +Version: 1.73.35 Summary: Fast assembler for the x86 and x86-64 architectures License: BSD-2-Clause URL: https://flatassembler.net diff --git a/anda/tools/framework-system/framework-system.spec b/anda/tools/framework-system/framework-system.spec index 8d2a7535ac..8f642e35c1 100644 --- a/anda/tools/framework-system/framework-system.spec +++ b/anda/tools/framework-system/framework-system.spec @@ -1,6 +1,6 @@ Name: framework-system -Version: 0.4.5 -Release: 2%?dist +Version: 0.6.1 +Release: 1%{?dist} Summary: Rust libraries and tools to interact with the Framework Computer systems URL: https://github.com/FrameworkComputer/framework-system Source0: %{url}/archive/refs/tags/v%{version}.tar.gz diff --git a/anda/tools/gcm-core/gcm-core.spec b/anda/tools/gcm-core/gcm-core.spec index 0f6863423a..cd4f0a9ee4 100644 --- a/anda/tools/gcm-core/gcm-core.spec +++ b/anda/tools/gcm-core/gcm-core.spec @@ -6,9 +6,9 @@ %global forgeurl https://github.com/git-ecosystem/git-credential-manager Name: gcm-core -Version: 2.6.1 +Version: 2.7.3 -Release: 1%?dist +Release: 1%{?dist} Summary: Secure, cross-platform Git credential storage %forgemeta diff --git a/anda/tools/geteltorito/geteltorito.spec b/anda/tools/geteltorito/geteltorito.spec index b6e4ccd06d..5c647748a6 100644 --- a/anda/tools/geteltorito/geteltorito.spec +++ b/anda/tools/geteltorito/geteltorito.spec @@ -4,9 +4,9 @@ Name: geteltorito Version: %{commit_date}.%{shortcommit} -Release: 1%?dist +Release: 2%?dist Summary: An El Torito boot image extractor -License: GPLv3 +License: GPL-3.0-only Packager: Owen Zimmerman Url: https://github.com/rainer042/geteltorito Source0: %{url}/archive/%{commit}.tar.gz @@ -14,7 +14,7 @@ BuildArch: noarch Requires: perl %description -%summary +%summary. %prep %autosetup -n geteltorito-%commit diff --git a/anda/tools/gf/01-fix-designated-initializers.patch b/anda/tools/gf/01-fix-designated-initializers.patch new file mode 100644 index 0000000000..aed98551b0 --- /dev/null +++ b/anda/tools/gf/01-fix-designated-initializers.patch @@ -0,0 +1,104 @@ +diff --git a/gf2.cpp b/gf2.cpp +index 116f1d0..2d21a07 100644 +--- a/gf2.cpp ++++ b/gf2.cpp +@@ -1528,68 +1528,68 @@ void InterfaceAddBuiltinWindowsAndCommands() { + interfaceDataViewers.Add({ "Add bitmap...", BitmapAddDialog }); + + interfaceCommands.Add({ .label = "Run\tShift+F5", +- { .code = UI_KEYCODE_FKEY(5), .shift = true, .invoke = CommandSendToGDB, .cp = (void *) "r" } }); ++ .shortcut = { .code = UI_KEYCODE_FKEY(5), .shift = true, .invoke = CommandSendToGDB, .cp = (void *) "r" } }); + interfaceCommands.Add({ .label = "Run paused\tCtrl+F5", +- { .code = UI_KEYCODE_FKEY(5), .ctrl = true, .invoke = CommandSendToGDB, .cp = (void *) "start" } }); ++ .shortcut = { .code = UI_KEYCODE_FKEY(5), .ctrl = true, .invoke = CommandSendToGDB, .cp = (void *) "start" } }); + interfaceCommands.Add({ .label = "Kill\tF3", +- { .code = UI_KEYCODE_FKEY(3), .invoke = CommandSendToGDB, .cp = (void *) "kill" } }); ++ .shortcut = { .code = UI_KEYCODE_FKEY(3), .invoke = CommandSendToGDB, .cp = (void *) "kill" } }); + interfaceCommands.Add({ .label = "Restart GDB\tCtrl+R", +- { .code = UI_KEYCODE_LETTER('R'), .ctrl = true, .invoke = CommandSendToGDB, .cp = (void *) "gf-restart-gdb" } }); ++ .shortcut = { .code = UI_KEYCODE_LETTER('R'), .ctrl = true, .invoke = CommandSendToGDB, .cp = (void *) "gf-restart-gdb" } }); + interfaceCommands.Add({ .label = "Load Last Coredump\tCtrl+Shift+R", +- { .code = UI_KEYCODE_LETTER('R'), .ctrl = true, .shift = true, .invoke = CommandSendToGDB, .cp = (void *) "gf-load-last-coredump" } }); ++ .shortcut = { .code = UI_KEYCODE_LETTER('R'), .ctrl = true, .shift = true, .invoke = CommandSendToGDB, .cp = (void *) "gf-load-last-coredump" } }); + interfaceCommands.Add({ .label = "Connect\tF4", +- { .code = UI_KEYCODE_FKEY(4), .invoke = CommandSendToGDB, .cp = (void *) "target remote :1234" } }); ++ .shortcut = { .code = UI_KEYCODE_FKEY(4), .invoke = CommandSendToGDB, .cp = (void *) "target remote :1234" } }); + interfaceCommands.Add({ .label = "Continue\tF5", +- { .code = UI_KEYCODE_FKEY(5), .invoke = CommandSendToGDB, .cp = (void *) "c" } }); ++ .shortcut = { .code = UI_KEYCODE_FKEY(5), .invoke = CommandSendToGDB, .cp = (void *) "c" } }); + interfaceCommands.Add({ .label = "Step over\tF10", +- { .code = UI_KEYCODE_FKEY(10), .invoke = CommandSendToGDB, .cp = (void *) "gf-next" } }); ++ .shortcut = { .code = UI_KEYCODE_FKEY(10), .invoke = CommandSendToGDB, .cp = (void *) "gf-next" } }); + interfaceCommands.Add({ .label = "Step out of block\tShift+F10", +- { .code = UI_KEYCODE_FKEY(10), .shift = true, .invoke = CommandSendToGDB, .cp = (void *) "gf-step-out-of-block" } }); ++ .shortcut = { .code = UI_KEYCODE_FKEY(10), .shift = true, .invoke = CommandSendToGDB, .cp = (void *) "gf-step-out-of-block" } }); + interfaceCommands.Add({ .label = "Step in\tF11", +- { .code = UI_KEYCODE_FKEY(11), .invoke = CommandSendToGDB, .cp = (void *) "gf-step" } }); ++ .shortcut = { .code = UI_KEYCODE_FKEY(11), .invoke = CommandSendToGDB, .cp = (void *) "gf-step" } }); + interfaceCommands.Add({ .label = "Step into outer\tShift+F8", +- { .code = UI_KEYCODE_FKEY(8), .shift = true, .invoke = CommandSendToGDB, .cp = (void *) "gf-step-into-outer" } }); ++ .shortcut = { .code = UI_KEYCODE_FKEY(8), .shift = true, .invoke = CommandSendToGDB, .cp = (void *) "gf-step-into-outer" } }); + interfaceCommands.Add({ .label = "Step out\tShift+F11", +- { .code = UI_KEYCODE_FKEY(11), .shift = true, .invoke = CommandSendToGDB, .cp = (void *) "finish" } }); ++ .shortcut = { .code = UI_KEYCODE_FKEY(11), .shift = true, .invoke = CommandSendToGDB, .cp = (void *) "finish" } }); + interfaceCommands.Add({ .label = "Reverse continue\tCtrl+Shift+F5", +- { .code = UI_KEYCODE_FKEY(5), .ctrl = true, .shift = true, .invoke = CommandSendToGDB, .cp = (void *) "reverse-continue" } }); ++ .shortcut = { .code = UI_KEYCODE_FKEY(5), .ctrl = true, .shift = true, .invoke = CommandSendToGDB, .cp = (void *) "reverse-continue" } }); + interfaceCommands.Add({ .label = "Reverse step over\tCtrl+Shift+F10", +- { .code = UI_KEYCODE_FKEY(10), .ctrl = true, .shift = true, .invoke = CommandSendToGDB, .cp = (void *) "reverse-next" } }); ++ .shortcut = { .code = UI_KEYCODE_FKEY(10), .ctrl = true, .shift = true, .invoke = CommandSendToGDB, .cp = (void *) "reverse-next" } }); + interfaceCommands.Add({ .label = "Reverse step in\tCtrl+Shift+F11", +- { .code = UI_KEYCODE_FKEY(11), .ctrl = true, .shift = true, .invoke = CommandSendToGDB, .cp = (void *) "reverse-step" } }); ++ .shortcut = { .code = UI_KEYCODE_FKEY(11), .ctrl = true, .shift = true, .invoke = CommandSendToGDB, .cp = (void *) "reverse-step" } }); + interfaceCommands.Add({ .label = "Pause\tF8", +- { .code = UI_KEYCODE_FKEY(8), .invoke = CommandPause } }); ++ .shortcut = { .code = UI_KEYCODE_FKEY(8), .invoke = CommandPause } }); + interfaceCommands.Add({ .label = "Toggle breakpoint\tF9", +- { .code = UI_KEYCODE_FKEY(9), .invoke = CommandToggleBreakpoint } }); ++ .shortcut = { .code = UI_KEYCODE_FKEY(9), .invoke = CommandToggleBreakpoint } }); + if (vimServerEnabled) { + interfaceCommands.Add({ .label = "Sync with gvim\tF2", +- { .code = UI_KEYCODE_FKEY(2), .invoke = CommandSyncWithGvim } }); ++ .shortcut = { .code = UI_KEYCODE_FKEY(2), .invoke = CommandSyncWithGvim } }); + } + interfaceCommands.Add({ .label = "Ask GDB for PWD\tCtrl+Shift+P", +- { .code = UI_KEYCODE_LETTER('P'), .ctrl = true, .shift = true, .invoke = CommandSendToGDB, .cp = (void *) "gf-get-pwd" } }); ++ .shortcut = { .code = UI_KEYCODE_LETTER('P'), .ctrl = true, .shift = true, .invoke = CommandSendToGDB, .cp = (void *) "gf-get-pwd" } }); + interfaceCommands.Add({ .label = "Toggle disassembly\tCtrl+D", +- { .code = UI_KEYCODE_LETTER('D'), .ctrl = true, .invoke = CommandToggleDisassembly } }); ++ .shortcut = { .code = UI_KEYCODE_LETTER('D'), .ctrl = true, .invoke = CommandToggleDisassembly } }); + interfaceCommands.Add({ .label = "Set disassembly mode\tCtrl+M", +- { .code = UI_KEYCODE_LETTER('M'), .ctrl = true, .invoke = CommandSetDisassemblyMode } }); ++ .shortcut = { .code = UI_KEYCODE_LETTER('M'), .ctrl = true, .invoke = CommandSetDisassemblyMode } }); + interfaceCommands.Add({ .label = "Add watch", +- { .invoke = CommandAddWatch } }); ++ .shortcut = { .invoke = CommandAddWatch } }); + interfaceCommands.Add({ .label = "Inspect line", +- { .code = UI_KEYCODE_BACKTICK, .invoke = CommandInspectLine } }); +- interfaceCommands.Add({ .label = "Copy Layout to Clipboard", { .invoke = CopyLayoutToClipboard } }); ++ .shortcut = { .code = UI_KEYCODE_BACKTICK, .invoke = CommandInspectLine } }); ++ interfaceCommands.Add({ .label = "Copy Layout to Clipboard", .shortcut = { .invoke = CopyLayoutToClipboard } }); + interfaceCommands.Add({ .label = nullptr, +- { .code = UI_KEYCODE_LETTER('E'), .ctrl = true, .invoke = CommandWatchAddEntryForAddress } }); ++ .shortcut = { .code = UI_KEYCODE_LETTER('E'), .ctrl = true, .invoke = CommandWatchAddEntryForAddress } }); + interfaceCommands.Add({ .label = nullptr, +- { .code = UI_KEYCODE_LETTER('G'), .ctrl = true, .invoke = CommandWatchViewSourceAtAddress } }); ++ .shortcut = { .code = UI_KEYCODE_LETTER('G'), .ctrl = true, .invoke = CommandWatchViewSourceAtAddress } }); + interfaceCommands.Add({ .label = nullptr, +- { .code = UI_KEYCODE_LETTER('B'), .ctrl = true, .invoke = CommandToggleFillDataTab } }); ++ .shortcut = { .code = UI_KEYCODE_LETTER('B'), .ctrl = true, .invoke = CommandToggleFillDataTab } }); + interfaceCommands.Add({ .label = nullptr, +- { .code = UI_KEYCODE_LETTER('P'), .ctrl = true, .shift = false, .invoke = CommandPreviousCommand } }); ++ .shortcut = { .code = UI_KEYCODE_LETTER('P'), .ctrl = true, .shift = false, .invoke = CommandPreviousCommand } }); + interfaceCommands.Add({ .label = nullptr, +- { .code = UI_KEYCODE_LETTER('N'), .ctrl = true, .shift = false, .invoke = CommandNextCommand } }); ++ .shortcut = { .code = UI_KEYCODE_LETTER('N'), .ctrl = true, .shift = false, .invoke = CommandNextCommand } }); + interfaceCommands.Add({ .label = nullptr, +- { .code = UI_KEYCODE_LETTER('L'), .ctrl = true, .shift = false, .invoke = CommandClearOutput } }); ++ .shortcut = { .code = UI_KEYCODE_LETTER('L'), .ctrl = true, .shift = false, .invoke = CommandClearOutput } }); + interfaceCommands.Add({ .label = nullptr, +- { .code = UI_KEYCODE_LETTER('U'), .ctrl = true, .shift = false, .invoke = [](void*){ UITextboxClear(textboxInput, false); } } }); ++ .shortcut = { .code = UI_KEYCODE_LETTER('U'), .ctrl = true, .shift = false, .invoke = [](void*){ UITextboxClear(textboxInput, false); } } }); + + msgReceivedData = ReceiveMessageRegister(MsgReceivedData); + msgReceivedControl = ReceiveMessageRegister(MsgReceivedControl); diff --git a/anda/tools/gf/anda.hcl b/anda/tools/gf/anda.hcl new file mode 100644 index 0000000000..63ed8ed4f9 --- /dev/null +++ b/anda/tools/gf/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "gf.spec" + } + labels { + nightly = 1 + } +} diff --git a/anda/tools/gf/gf.spec b/anda/tools/gf/gf.spec new file mode 100644 index 0000000000..6df006f1df --- /dev/null +++ b/anda/tools/gf/gf.spec @@ -0,0 +1,48 @@ +%global forgeurl https://github.com/nakst/gf + +%global commit 9a5dbcc90dc9ca9580f6ce2854cd67e2e507b0c1 +%global shortcommit %{sub %{commit} 0 7} +%global commitdate 20251231 + +%forgemeta + +Name: gf +Version: 0^%{commitdate}.git%{shortcommit} +Release: 1%{?dist} +Summary: A GDB frontend for Linux + +License: MIT +URL: %{forgeurl} +Source0: %{forgesource} +Patch0: 01-fix-designated-initializers.patch + +BuildRequires: gcc-c++ +BuildRequires: freetype-devel +BuildRequires: libX11-devel +# the build script wants gdb to be installed when it's executed +BuildRequires: gdb +Requires: gdb + +Packager: metcya + +%description +%{summary}. + +%prep +%forgeautosetup -p1 + +%build +export extra_flags="%optflags" +./build.sh + +%install +install -Dm 755 gf2 %{buildroot}%{_bindir}/gf2 + +%files +%license LICENSE +%doc README.md +%{_bindir}/gf2 + +%changelog +* Thu Feb 19 2026 metcya +- Initial package diff --git a/anda/tools/gf/update.rhai b/anda/tools/gf/update.rhai new file mode 100644 index 0000000000..a9819eeb92 --- /dev/null +++ b/anda/tools/gf/update.rhai @@ -0,0 +1 @@ +rpm.global("commit", gh_commit("nakst/gf")); diff --git a/anda/tools/glasgow/glasgow.spec b/anda/tools/glasgow/glasgow.spec index 67db2e0957..b3e334ae95 100644 --- a/anda/tools/glasgow/glasgow.spec +++ b/anda/tools/glasgow/glasgow.spec @@ -1,5 +1,5 @@ -%global commit 3a2816acfd13a6f82566f04d7a17a31ea84773c0 -%global commit_date 20260120 +%global commit 323c99eeb9c649936b60fc1c5f1e74fc0c233995 +%global commit_date 20260318 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global pypi_name glasgow @@ -9,8 +9,8 @@ %global _udevrulesdir /usr/lib/udev/rules.d Name: python-%{pypi_name} -Version: %commit_date.%shortcommit -Release: 1%?dist +Version: 0~%{commit_date}git.%{shortcommit} +Release: 1%{?dist} Summary: Scots Army Knife for electronics License: 0BSD AND Apache-2.0 URL: https://github.com/GlasgowEmbedded/glasgow @@ -62,9 +62,6 @@ install -Dm644 config/70-glasgow.rules %{buildroot}%{_udevrulesdir}/70-glasgow.r %license LICENSE-0BSD.txt LICENSE-Apache-2.0.txt %{_bindir}/glasgow %{_udevrulesdir}/70-glasgow.rules -%ghost %python3_sitelib/__pycache__/*.cpython-*.pyc -%ghost %python3_sitelib/%{name}/subcommands/__pycache__/*.cpython-*.pyc -%python3_sitelib/glasgow-*.dist-info/* %changelog * Mon Sep 29 2025 Owen Zimmerman diff --git a/anda/tools/glasgow/remove-dep-versions.patch b/anda/tools/glasgow/remove-dep-versions.patch index cec8ad57b8..720699c607 100644 --- a/anda/tools/glasgow/remove-dep-versions.patch +++ b/anda/tools/glasgow/remove-dep-versions.patch @@ -1,8 +1,8 @@ diff --git a/software/pyproject.toml b/software/pyproject.toml -index c1151748..c3302e60 100644 +index 3ecbad5f..06ea059e 100644 --- a/software/pyproject.toml +++ b/software/pyproject.toml -@@ -29,30 +29,30 @@ requires-python = ">=3.11, <4" +@@ -29,34 +29,34 @@ requires-python = ">=3.13, <4" dependencies = [ # We use `typing` features not available in the lowest Python version we support. The library # `typing_extensions` provides shims for such features. It uses SemVer. @@ -32,10 +32,16 @@ index c1151748..c3302e60 100644 # system. - "cobs>=1.2.1", + "cobs", + # `tqdm` is used to compute and render progress indicatrs. It uses SemVer. +- "tqdm>=4.67.3", ++ "tqdm", # `pyvcd` is used in the applet analyzer to dump waveform files. It is also a dependency of # Amaranth, and the version range here must be compatible with Amaranth's. - "pyvcd>=0.4.1,<0.5", + "pyvcd", + # `enum-tools` is used for documenting enums. It is unclear which versioning scheme it uses. +- "enum-tools==0.13.0", ++ "enum-tools", # `importlib_resources` is used to shim over Python API incompatibilities. It uses SemVer. - "importlib_resources~=6.5.2", + "importlib_resources", diff --git a/anda/tools/graftcp/nightly/graftcp-nightly.spec b/anda/tools/graftcp/nightly/graftcp-nightly.spec index f69cd3250f..fc8500590f 100644 --- a/anda/tools/graftcp/nightly/graftcp-nightly.spec +++ b/anda/tools/graftcp/nightly/graftcp-nightly.spec @@ -1,10 +1,10 @@ -%global commit 214f8b82ef78f2c3d54b3dc37075aadfc2da2bdf -%global commit_date 20260121 +%global commit ed57ff8136d4f86c1de6bb17e176f31852e26c44 +%global commit_date 20260308 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: graftcp-nightly Version: 0~%{commit_date}git.%{shortcommit} -Release: 1%?dist +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 diff --git a/anda/tools/java-binfmt/java-binfmt.spec b/anda/tools/java-binfmt/java-binfmt.spec index 69ac06839d..b23eb5d12a 100644 --- a/anda/tools/java-binfmt/java-binfmt.spec +++ b/anda/tools/java-binfmt/java-binfmt.spec @@ -1,11 +1,11 @@ -%global commit 9b3c3202435720ad5d76928c94c8f1c6e22693b7 +%global commit 4bbeadf096d853ef36155e725020d99c2add14cd %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20250131 +%global commit_date 20260127 %global _binfmtdir %{_exec_prefix}/lib/binfmt.d Name: java-binfmt Version: 1.0.0^%{commit_date}git%{shortcommit} -Release: 3%{?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 dc6ad65268..128ee899f1 100644 --- a/anda/tools/jujutsu/jujutsu.spec +++ b/anda/tools/jujutsu/jujutsu.spec @@ -4,7 +4,7 @@ %global __brp_mangle_shebangs %{nil} Name: jujutsu -Version: 0.37.0 +Version: 0.39.0 Release: 1%?dist Summary: Git-compatible DVCS that is both simple and powerful License: Apache-2.0 AND CC-BY-4.0 diff --git a/anda/tools/kanata/kanata-fix-metadata-auto.diff b/anda/tools/kanata/kanata-fix-metadata-auto.diff index acb539232a..9cd73985c5 100644 --- a/anda/tools/kanata/kanata-fix-metadata-auto.diff +++ b/anda/tools/kanata/kanata-fix-metadata-auto.diff @@ -1,12 +1,12 @@ ---- kanata-1.9.0/Cargo.toml 1970-01-01T00:00:01+00:00 -+++ kanata-1.9.0/Cargo.toml 2025-06-23T09:19:38.121344+00:00 -@@ -45,23 +45,9 @@ +--- kanata-1.11.0/Cargo.toml 1970-01-01T00:00:01+00:00 ++++ kanata-1.11.0/Cargo.toml 2026-02-12T16:56:59.169531+00:00 +@@ -47,23 +47,9 @@ "kanata-parser/gui", "win_sendinput_send_scancodes", "win_llhook_read_scancodes", -- "muldiv", -- "strip-ansi-escapes", - "open", +- "dep:muldiv", +- "dep:strip-ansi-escapes", + "dep:open", - "dep:windows-sys", - "winapi/processthreadsapi", - "native-windows-gui/tray-notification", @@ -20,29 +20,19 @@ - "native-windows-gui/animation-timer", ] interception_driver = [ -- "kanata-interception", +- "dep:kanata-interception", "kanata-parser/interception_driver", ] passthru_ahk = [ -@@ -75,9 +61,7 @@ - wasm = ["instant/wasm-bindgen"] - win_llhook_read_scancodes = ["kanata-parser/win_llhook_read_scancodes"] - win_manifest = [ -- "embed-resource", - "indoc", -- "regex", - ] - win_sendinput_send_scancodes = ["kanata-parser/win_sendinput_send_scancodes"] - zippychord = ["kanata-parser/zippychord"] -@@ -186,97 +170,9 @@ - [target.'cfg(target_os = "linux")'.dependencies.signal-hook] - version = "0.3.14" +@@ -202,88 +188,9 @@ + [target.'cfg(not(any(target_arch = "wasm32", target_os = "android")))'.dependencies.arboard] + version = "3.4" -[target.'cfg(target_os = "macos")'.dependencies.core-graphics] -version = "0.24.0" - -[target.'cfg(target_os = "macos")'.dependencies.karabiner-driverkit] --version = "0.1.5" +-version = "0.2.0" - -[target.'cfg(target_os = "macos")'.dependencies.libc] -version = "0.2" @@ -91,6 +81,9 @@ - "wincon", - "timeapi", - "mmsystem", +- "winuser", +- "windef", +- "minwindef", -] - -[target.'cfg(target_os = "windows")'.dependencies.windows-sys] @@ -114,18 +107,6 @@ - "Wdk_System_SystemServices", -] -optional = true -- --[target.'cfg(target_os = "windows")'.build-dependencies.embed-resource] --version = "2.4.2" --optional = true -- --[target.'cfg(target_os = "windows")'.build-dependencies.indoc] --version = "2.0.4" --optional = true -- --[target.'cfg(target_os = "windows")'.build-dependencies.regex] --version = "1.10.4" --optional = true - [profile.release] opt-level = "z" diff --git a/anda/tools/kanata/rust-kanata.spec b/anda/tools/kanata/rust-kanata.spec index 826fd705a2..f503bc4d9e 100644 --- a/anda/tools/kanata/rust-kanata.spec +++ b/anda/tools/kanata/rust-kanata.spec @@ -1,10 +1,10 @@ -# Generated by rust2rpm 27 +# Generated by rust2rpm 28 %bcond check 1 %global crate kanata Name: rust-kanata -Version: 1.10.1 +Version: 1.11.0 Release: 1%?dist Summary: Multi-layer keyboard customization @@ -15,7 +15,7 @@ Source: %{crates_source} Patch: kanata-fix-metadata-auto.diff Packager: madonuko -BuildRequires: anda-srpm-macros cargo-rpm-macros >= 24 +BuildRequires: cargo-rpm-macros >= 24 %global _description %{expand: Multi-layer keyboard customization.} @@ -67,6 +67,18 @@ use the "default" feature of the "%{crate}" crate. %files -n %{name}+default-devel %ghost %{crate_instdir}/Cargo.toml +%package -n %{name}+cargo-clippy-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+cargo-clippy-devel %{_description} + +This package contains library source intended for building other packages which +use the "cargo-clippy" feature of the "%{crate}" crate. + +%files -n %{name}+cargo-clippy-devel +%ghost %{crate_instdir}/Cargo.toml + %package -n %{name}+cmd-devel Summary: %{summary} BuildArch: noarch @@ -91,18 +103,6 @@ use the "gui" feature of the "%{crate}" crate. %files -n %{name}+gui-devel %ghost %{crate_instdir}/Cargo.toml -%package -n %{name}+indoc-devel -Summary: %{summary} -BuildArch: noarch - -%description -n %{name}+indoc-devel %{_description} - -This package contains library source intended for building other packages which -use the "indoc" feature of the "%{crate}" crate. - -%files -n %{name}+indoc-devel -%ghost %{crate_instdir}/Cargo.toml - %package -n %{name}+interception_driver-devel Summary: %{summary} BuildArch: noarch @@ -115,18 +115,6 @@ use the "interception_driver" feature of the "%{crate}" crate. %files -n %{name}+interception_driver-devel %ghost %{crate_instdir}/Cargo.toml -%package -n %{name}+open-devel -Summary: %{summary} -BuildArch: noarch - -%description -n %{name}+open-devel %{_description} - -This package contains library source intended for building other packages which -use the "open" feature of the "%{crate}" crate. - -%files -n %{name}+open-devel -%ghost %{crate_instdir}/Cargo.toml - %package -n %{name}+passthru_ahk-devel Summary: %{summary} BuildArch: noarch @@ -151,18 +139,6 @@ use the "perf_logging" feature of the "%{crate}" crate. %files -n %{name}+perf_logging-devel %ghost %{crate_instdir}/Cargo.toml -%package -n %{name}+serde_json-devel -Summary: %{summary} -BuildArch: noarch - -%description -n %{name}+serde_json-devel %{_description} - -This package contains library source intended for building other packages which -use the "serde_json" feature of the "%{crate}" crate. - -%files -n %{name}+serde_json-devel -%ghost %{crate_instdir}/Cargo.toml - %package -n %{name}+simulated_input-devel Summary: %{summary} BuildArch: noarch @@ -199,18 +175,6 @@ use the "tcp_server" feature of the "%{crate}" crate. %files -n %{name}+tcp_server-devel %ghost %{crate_instdir}/Cargo.toml -%package -n %{name}+wasm-devel -Summary: %{summary} -BuildArch: noarch - -%description -n %{name}+wasm-devel %{_description} - -This package contains library source intended for building other packages which -use the "wasm" feature of the "%{crate}" crate. - -%files -n %{name}+wasm-devel -%ghost %{crate_instdir}/Cargo.toml - %package -n %{name}+win_llhook_read_scancodes-devel Summary: %{summary} BuildArch: noarch @@ -247,6 +211,18 @@ use the "win_sendinput_send_scancodes" feature of the "%{crate}" crate. %files -n %{name}+win_sendinput_send_scancodes-devel %ghost %{crate_instdir}/Cargo.toml +%package -n %{name}+winiov2-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+winiov2-devel %{_description} + +This package contains library source intended for building other packages which +use the "winiov2" feature of the "%{crate}" crate. + +%files -n %{name}+winiov2-devel +%ghost %{crate_instdir}/Cargo.toml + %package -n %{name}+zippychord-devel Summary: %{summary} BuildArch: noarch diff --git a/anda/tools/kmonad/kmonad.spec b/anda/tools/kmonad/kmonad.spec index d0e313bd63..915875c118 100644 --- a/anda/tools/kmonad/kmonad.spec +++ b/anda/tools/kmonad/kmonad.spec @@ -73,7 +73,7 @@ install -Dm644 startup/kmonad@.service -t %{buildroot}%{_unitdir} %doc doc/faq.md doc/quick-reference.md %{_bindir}/%{name} %{_unitdir}/%{name}@.service - +%doc %{_docdir}/ghc/html/libraries/kmonad-%{version}/ %files -n ghc-%{name} -f ghc-%{name}.files %license LICENSE diff --git a/anda/tools/kmonad/update.rhai b/anda/tools/kmonad/update.rhai index c13a4a9044..9676b53e55 100644 --- a/anda/tools/kmonad/update.rhai +++ b/anda/tools/kmonad/update.rhai @@ -1,4 +1 @@ -rpm.version(gh("kmonad/kmonad")); -if rpm.changed() { - rpm.release(); -} +print(hackage("kmonad")); diff --git a/anda/tools/micro-default-editor/micro-default-editor.spec b/anda/tools/micro-default-editor/micro-default-editor.spec index ada1ab9b02..b199e6eeb0 100644 --- a/anda/tools/micro-default-editor/micro-default-editor.spec +++ b/anda/tools/micro-default-editor/micro-default-editor.spec @@ -2,8 +2,8 @@ Name: micro-default-editor # Version, release, and epoch are inherited from the editor package just like other default editors -Version: 2.0.11 -Release: 10%?dist +Version: 2.0.15 +Release: 2%{?dist} Epoch: 0 # Inherited from Micro itself License: MIT and ASL 2.0 diff --git a/anda/tools/natscli/natscli.spec b/anda/tools/natscli/natscli.spec index 05b1b2406f..5f7e4cec32 100644 --- a/anda/tools/natscli/natscli.spec +++ b/anda/tools/natscli/natscli.spec @@ -1,14 +1,14 @@ # https://github.com/nats-io/natscli %global goipath github.com/nats-io/natscli -%global commit dc7e74221bda20def8b66706c99bfcc50b919aca -%global commit_date 20260121 +%global commit 85f3889e6b53d171d007e00f4576f22a74644844 +%global commit_date 20260317 %global shortcommit %{sub %{commit} 1 7} %gometa -f Name: natscli Version: 0~%{commit_date}git.%shortcommit -Release: 1%?dist +Release: 1%{?dist} Summary: The NATS Command Line Interface License: Apache-2.0 diff --git a/anda/tools/neovim-default-editor/neovim-default-editor.spec b/anda/tools/neovim-default-editor/neovim-default-editor.spec index dd950cc8f7..abb964b6aa 100644 --- a/anda/tools/neovim-default-editor/neovim-default-editor.spec +++ b/anda/tools/neovim-default-editor/neovim-default-editor.spec @@ -2,7 +2,7 @@ Name: neovim-default-editor # Version, release, and epoch are inherited from the editor package just like other default editors -Version: 0.11.5 +Version: 0.11.6 Release: 1%?dist Epoch: 0 # Inherited from Neovim itself diff --git a/anda/tools/nerdfetch/nerdfetch-tools.spec b/anda/tools/nerdfetch/nerdfetch-tools.spec index 677801eed0..8de5876815 100644 --- a/anda/tools/nerdfetch/nerdfetch-tools.spec +++ b/anda/tools/nerdfetch/nerdfetch-tools.spec @@ -1,6 +1,6 @@ Name: nerdfetch -Version: 8.4.2 -Release: 1%?dist +Version: 8.5.4 +Release: 1%{?dist} Summary: A POSIX *nix fetch script using Nerdfonts License: MIT diff --git a/anda/tools/nvidia/cuda-crt/cuda-crt.spec b/anda/tools/nvidia/cuda-crt/cuda-crt.spec index b6d35097b8..f9f9912972 100644 --- a/anda/tools/nvidia/cuda-crt/cuda-crt.spec +++ b/anda/tools/nvidia/cuda-crt/cuda-crt.spec @@ -8,8 +8,8 @@ Name: %(echo %real_name | tr '_' '-') Epoch: 1 -Version: 13.1.115 -Release: 1%?dist +Version: 13.2.51 +Release: 1%{?dist} Summary: CUDA crt License: CUDA Toolkit URL: https://developer.nvidia.com/cuda-toolkit diff --git a/anda/tools/nvidia/cuda-ctadvisor/cuda-ctadvisor.spec b/anda/tools/nvidia/cuda-ctadvisor/cuda-ctadvisor.spec index 93c344cbcb..7398202256 100644 --- a/anda/tools/nvidia/cuda-ctadvisor/cuda-ctadvisor.spec +++ b/anda/tools/nvidia/cuda-ctadvisor/cuda-ctadvisor.spec @@ -8,8 +8,8 @@ Name: %(echo %real_name | tr '_' '-') Epoch: 1 -Version: 13.1.115 -Release: 1%?dist +Version: 13.2.51 +Release: 1%{?dist} Summary: CUDA ctadvisor License: CUDA Toolkit URL: https://developer.nvidia.com/cuda-toolkit diff --git a/anda/tools/nvidia/cuda-nvcc/cuda-nvcc.spec b/anda/tools/nvidia/cuda-nvcc/cuda-nvcc.spec index 3499a772ca..494f8e685f 100644 --- a/anda/tools/nvidia/cuda-nvcc/cuda-nvcc.spec +++ b/anda/tools/nvidia/cuda-nvcc/cuda-nvcc.spec @@ -8,8 +8,8 @@ Name: %(echo %real_name | tr '_' '-') Epoch: 1 -Version: 13.1.115 -Release: 1%?dist +Version: 13.2.51 +Release: 1%{?dist} Summary: CUDA Compiler (NVCC) License: CUDA Toolkit URL: https://developer.nvidia.com/cuda-toolkit diff --git a/anda/tools/nvm/nvm.spec b/anda/tools/nvm/nvm.spec index 0a2a69e531..1a9c81c648 100644 --- a/anda/tools/nvm/nvm.spec +++ b/anda/tools/nvm/nvm.spec @@ -1,6 +1,6 @@ Name: nvm -Version: 0.40.3 -Release: 6%{?dist} +Version: 0.40.4 +Release: 1%?dist Summary: Node Version Manager License: MIT URL: https://github.com/nvm-sh/nvm diff --git a/anda/tools/pdpmake/anda.hcl b/anda/tools/pdpmake/anda.hcl new file mode 100644 index 0000000000..8a37235f1d --- /dev/null +++ b/anda/tools/pdpmake/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "pdpmake.spec" + } +} diff --git a/anda/tools/pdpmake/pdpmake.spec b/anda/tools/pdpmake/pdpmake.spec new file mode 100644 index 0000000000..598ac36f55 --- /dev/null +++ b/anda/tools/pdpmake/pdpmake.spec @@ -0,0 +1,49 @@ +%bcond_without posix_2024 +%bcond_without make_extensions + +%global forgeurl https://github.com/rmyorston/pdpmake +%global tag 2.0.4 +%forgemeta + +Name: pdpmake +Version: %{tag} +Release: 1%{?dist} +Summary: Public domain POSIX make + +Packager: metcya + +License: Unlicense +URL: https://frippery.org/make +Source0: %{forgesource} + +BuildRequires: gcc + +%description +This is a public domain implementation of make which follows the POSIX +standard. + +%prep +%forgesetup + +%build + +%{__cc} -DENABLE_FEATURE_POSIX_2024=%{with_posix_2024} \ + -DENABLE_FEATURE_MAKE_EXTENSIONS=%{with_make_extensions} \ + $CFLAGS \ + $LDFLAGS \ + -o pdpmake \ + *.c + +%install +install -Dm 755 pdpmake %{buildroot}%{_bindir}/pdpmake +install -Dm 644 pdpmake.1 %{buildroot}%{_mandir}/man1/pdpmake.1 + +%files +%license LICENSE +%doc README.md +%{_bindir}/%{name} +%{_mandir}/man1/%{name}.1.* + +%changelog +* Sun Jan 25 2026 metcya +- Initial package diff --git a/anda/tools/pdpmake/update.rhai b/anda/tools/pdpmake/update.rhai new file mode 100644 index 0000000000..0ee8ea1da8 --- /dev/null +++ b/anda/tools/pdpmake/update.rhai @@ -0,0 +1 @@ +rpm.global("tag", gh_tag("rmyorston/pdpmake")); diff --git a/anda/tools/picotool/picotool.spec b/anda/tools/picotool/picotool.spec index 124150b085..397f886bdc 100644 --- a/anda/tools/picotool/picotool.spec +++ b/anda/tools/picotool/picotool.spec @@ -4,7 +4,7 @@ Name: picotool Version: %sanitized_ver -Release: 2%?dist +Release: 3%?dist Summary: Tool to inspect RP2040 binaries License: BSD-3-Clause URL: https://github.com/raspberrypi/picotool @@ -33,9 +33,7 @@ mv %buildroot{%_prefix/lib,%_libdir} %doc README.md %license LICENSE.TXT %_bindir/picotool -%dir %_libdir/cmake/picotool %_libdir/cmake/picotool/* -%dir %_datadir/picotool %_datadir/picotool/* %changelog diff --git a/anda/tools/praat/anda.hcl b/anda/tools/praat/anda.hcl new file mode 100644 index 0000000000..41ebcbca21 --- /dev/null +++ b/anda/tools/praat/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + rpm { + spec = "praat.spec" + } +} + diff --git a/anda/tools/praat/org.praat.praat.metainfo.xml b/anda/tools/praat/org.praat.praat.metainfo.xml new file mode 100644 index 0000000000..1c139b444d --- /dev/null +++ b/anda/tools/praat/org.praat.praat.metainfo.xml @@ -0,0 +1,40 @@ + + + org.praat.praat + CC0-1.0 + GPL-3.0-or-later AND LGPL-2.1-or-later AND MIT AND GPL-2.0-or-later AND BSD-3-Clause AND Unicode-3.0 AND BSL-1.0 + https://github.com/praat/praat.github.io/blob/master/main/praat-480.svg + + Praat + Praat: Doing Phonetics By Computer + + +

+ A speech analysis tool used for doing phonetics by computer. Praat can analyse, + synthesize, and manipulate speech, and create high-quality pictures for your publications. + Praat was created by Paul Boersma and David Weenink of the Institute of Phonetics Sciences of the University of Amsterdam. +

+
+ + praat.desktop + + https://www.praat.org + + + + + + + audio + sound + speech + phonetics + + + + Paul Boersma and David Weenink + +
diff --git a/anda/tools/praat/praat.spec b/anda/tools/praat/praat.spec new file mode 100644 index 0000000000..35145dd6a9 --- /dev/null +++ b/anda/tools/praat/praat.spec @@ -0,0 +1,76 @@ +%global appid org.praat.praat +%global name_pretty Praat +%global appstream_component desktop-application +%global org "org.praat" + +Name: praat +Version: 6.4.62 +Release: 1%{?dist} +URL: https://www.praat.org +Source0: https://github.com/praat/praat.github.io/archive/refs/tags/v%{version}.tar.gz +Source1: %appid.metainfo.xml +License: GPL-3.0-or-later AND LGPL-2.1-or-later AND MIT AND GPL-2.0-or-later AND BSD-3-Clause AND Unicode-3.0 AND BSL-1.0 + +Requires: gtk3 pulseaudio-libs alsa-lib pipewire-jack-audio-connection-kit +BuildRequires: gcc g++ gtk3-devel pulseaudio-libs-devel alsa-lib-devel pipewire-jack-audio-connection-kit-devel +# for lscpu check below +BuildRequires: util-linux +# to install desktop file +BuildRequires: desktop-file-utils +# to generate the icon files +BuildRequires: libicns-utils +# to generate the appstream metadata +BuildRequires: terra-appstream-helper + +Summary: Praat: Doing Phonetics By Computer + +Packager: june-fish + +%description +%{summary}. + +%prep +%autosetup -n praat.github.io-%{version} + +%build +# .LE makefile hardcodes little endian +if [[ "$(lscpu | grep Endian)" == *"Little Endian"* ]] +then + cp makefiles/makefile.defs.linux.pulse-gcc.LE ./makefile.defs +elif [[ "%{lscpu | grep Endian}" == *"Big Endian"* ]] +then + cp makefiles/makefile.defs.linux.pulse-gcc.BE ./makefile.defs +fi + +%make_build + +%install +install -pDm755 praat %{buildroot}%{_bindir}/praat +%__desktop_file_install main/praat.desktop + +# https://build.opensuse.org/projects/openSUSE:Factory/packages/praat/files/praat.spec?expand=1 +icns2png -x -d32 main/Praat.icns +for s in 16 32 48 128; do + if [ -f Praat_${s}x${s}x32.png ]; then + install -Dm0644 Praat_${s}x${s}x32.png %{buildroot}%{_hicolordir}/${s}x${s}/apps/%{name}.png + fi +done + +%terra_appstream -o %{SOURCE1} + +%files +%license docs/LICENSE.txt +%license external/*/LICENSE* +%license external/*/COPYING* +%doc README.md +%{_bindir}/praat +%{_datadir}/applications/praat.desktop +%{_hicolordir}/16x16/apps/%{name}.png +%{_hicolordir}/32x32/apps/%{name}.png +%{_hicolordir}/48x48/apps/%{name}.png +%{_hicolordir}/128x128/apps/%{name}.png +%{_metainfodir}/%appid.metainfo.xml + +%changelog +* Fri Feb 06 2026 june-fish - 6.4.59 +- Initial Package diff --git a/anda/tools/praat/update.rhai b/anda/tools/praat/update.rhai new file mode 100644 index 0000000000..35adc7dd28 --- /dev/null +++ b/anda/tools/praat/update.rhai @@ -0,0 +1 @@ +rpm.version(gh_tag("praat/praat.github.io")); diff --git a/anda/tools/proton-vpn-cli/anda.hcl b/anda/tools/proton-vpn-cli/anda.hcl new file mode 100644 index 0000000000..f631f43da7 --- /dev/null +++ b/anda/tools/proton-vpn-cli/anda.hcl @@ -0,0 +1,6 @@ +project pkg { + arches = ["x86_64"] + rpm { + spec = "proton-vpn-cli.spec" + } +} diff --git a/anda/tools/proton-vpn-cli/proton-vpn-cli.spec b/anda/tools/proton-vpn-cli/proton-vpn-cli.spec new file mode 100644 index 0000000000..c2ce388ebd --- /dev/null +++ b/anda/tools/proton-vpn-cli/proton-vpn-cli.spec @@ -0,0 +1,49 @@ +%global _desc Official ProtonVPN CLI Linux app. + +%global __requires_exclude ^python3\\.14dist\\(proton-vpn-local-agent\\)$ + +Name: python-proton-vpn-cli +Version: 0.1.7 +Release: 1%{?dist} +Summary: Official ProtonVPN CLI Linux app +License: GPL-3.0-only +URL: https://github.com/ProtonVPN/proton-vpn-cli +Source0: %url/archive/refs/tags/v%version.tar.gz + +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-setuptools +BuildArch: noarch + +Packager: Owen Zimmerman + +%description +%_desc + +%package -n python3-proton-vpn-cli +Summary: %{summary} +Provides: proton-vpn-cli +Requires: python3-proton-vpn-local-agent +%{?python_provide:%python_provide python3-proton-vpn-cli} + +%description -n python3-proton-vpn-cli +%_desc + +%prep +%autosetup -n proton-vpn-cli-%{version} + +%build +%pyproject_wheel + +%install +%pyproject_install +%pyproject_save_files proton + +%files -n python3-proton-vpn-cli -f %{pyproject_files} +%doc README.md COPYING.md CONTRIBUTING.md CODEOWNERS +%license LICENSE +%{_bindir}/protonvpn + +%changelog +* Fri Jan 30 2026 Owen Zimmerman +- Initial commit diff --git a/anda/tools/proton-vpn-cli/update.rhai b/anda/tools/proton-vpn-cli/update.rhai new file mode 100644 index 0000000000..bbacc962bc --- /dev/null +++ b/anda/tools/proton-vpn-cli/update.rhai @@ -0,0 +1 @@ +rpm.version(gh_tag("ProtonVPN/proton-vpn-cli")); diff --git a/anda/tools/qdl/anda.hcl b/anda/tools/qdl/anda.hcl index 0b4372a603..e1f206aa1a 100644 --- a/anda/tools/qdl/anda.hcl +++ b/anda/tools/qdl/anda.hcl @@ -2,7 +2,4 @@ project pkg { rpm { spec = "qdl.spec" } - labels { - nightly = 1 - } } diff --git a/anda/tools/qdl/qdl.spec b/anda/tools/qdl/qdl.spec index 6db0f6c22a..7ab1f65e34 100644 --- a/anda/tools/qdl/qdl.spec +++ b/anda/tools/qdl/qdl.spec @@ -1,13 +1,9 @@ -%global commit 5fa6a0d12448c929f01fa765b6bafcea70486b50 -%global commit_date 20260117 -%global shortcommit %(c=%{commit}; echo ${c:0:7}) - Name: qdl -Version: 0^%commit_date.%shortcommit +Version: 2.5 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/%{commit}/qdl-%{commit}.tar.gz +Source0: %url/archive/refs/tags/v%version.tar.gz License: BSD-3-Clause BuildRequires: make BuildRequires: gcc @@ -21,7 +17,7 @@ Packager: Owen Zimmerman %{summary}. %prep -%autosetup -n qdl-%{commit} +%autosetup -n qdl-%{version} %build %make_build @@ -48,8 +44,11 @@ install -Dm644 ks.1 %{buildroot}%{_mandir}/man1/ks.1 %doc README.md %changelog +* Mon Feb 02 2026 Owen Zimmerman +- Switch to tagged versions + * Wed Nov 26 2025 metcya - Package manpages -* Sun Nov 23 2025 Owen-sz +* Sun Nov 23 2025 Owen Zimmerman - Initial commit diff --git a/anda/tools/qdl/update.rhai b/anda/tools/qdl/update.rhai index 576911cba6..635bdd7a96 100644 --- a/anda/tools/qdl/update.rhai +++ b/anda/tools/qdl/update.rhai @@ -1,5 +1 @@ -rpm.global("commit", gh_commit("linux-msm/qdl")); -if rpm.changed() { - rpm.release(); - rpm.global("commit_date", date()); -} +rpm.version(gh_tag("linux-msm/qdl")); \ No newline at end of file diff --git a/anda/tools/raindrop/desktop-file-call-pkexec.patch b/anda/tools/raindrop/desktop-file-call-pkexec.patch deleted file mode 100644 index 041f51802c..0000000000 --- a/anda/tools/raindrop/desktop-file-call-pkexec.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/data/raindrop.desktop.in b/data/raindrop.desktop.in -index 69e66f7..a042659 100644 ---- data/raindrop.desktop.in -+++ data/raindrop.desktop.in -@@ -3,7 +3,7 @@ Type=Application - Name=Screen Configuration - Comment=Configure monitor arrangement, scaling and orientation - Icon=computer --Exec=raindrop -+Exec=sh -c 'pkexec /usr/bin/raindrop' - Terminal=false - Categories=Settings; - StartupNotify=true diff --git a/anda/tools/raindrop/org.raspberrypi.raindrop.configure-display.policy b/anda/tools/raindrop/org.raspberrypi.raindrop.configure-display.policy deleted file mode 100644 index 6549a42a75..0000000000 --- a/anda/tools/raindrop/org.raspberrypi.raindrop.configure-display.policy +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - auth_admin - auth_admin - auth_admin - - GTK screen configuration tool for labwc and openbox environments. - Authentication is required to configure the system's display settings. - computer - /usr/bin/raindrop - true - - diff --git a/anda/tools/raindrop/raindrop.spec b/anda/tools/raindrop/raindrop.spec index 01ac06e8ea..9feee366ac 100644 --- a/anda/tools/raindrop/raindrop.spec +++ b/anda/tools/raindrop/raindrop.spec @@ -1,5 +1,5 @@ -%global commit 2e3859fe3afd65c89eeacb63bdaf7c432f2df30d -%global commit_date 20251202 +%global commit 9d5396972bb5557c427a79309ce5c00f91bc9211 +%global commit_date 20260130 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: raindrop @@ -10,8 +10,6 @@ License: BSD-3-Clause URL: https://github.com/raspberrypi-ui/raindrop Packager: Owen Zimmerman Source0: %url/archive/%commit.tar.gz -Source1: org.raspberrypi.raindrop.configure-display.policy -Patch0: desktop-file-call-pkexec.patch BuildRequires: meson BuildRequires: ninja-build @@ -30,7 +28,7 @@ Screen configuration tool for Raspberry Pi Desktop, GTK screen configuration tool for labwc and openbox environments. %prep -%autosetup -n raindrop-%commit -p0 +%autosetup -n raindrop-%commit %build %meson @@ -38,15 +36,15 @@ GTK screen configuration tool for labwc and openbox environments. %install %meson_install -install -Dm644 %{SOURCE1} %{buildroot}/%{_datadir}/polkit-1/actions/org.raspberrypi.raindrop.configure-display.policy -%find_lang %{name} +%find_lang rpcc_%{name} -%files -f %{name}.lang +%files -f rpcc_%{name}.lang %license debian/copyright -%{_bindir}/raindrop -%{_datadir}/polkit-1/actions/org.raspberrypi.raindrop.configure-display.policy -%{_datadir}/applications/raindrop.desktop -%{_datadir}/raindrop/ui/raindrop.ui +%doc README +%{_libdir}/rpcc/librpcc_raindrop.so +%{_datadir}/rpcc/ui/minus.png +%{_datadir}/rpcc/ui/plus.png +%{_datadir}/rpcc/ui/raindrop.ui %changelog * Thu Aug 07 2025 Owen Zimmerman diff --git a/anda/tools/rpi-utils/rpi-utils.spec b/anda/tools/rpi-utils/rpi-utils.spec index 27559bf95e..5325922372 100644 --- a/anda/tools/rpi-utils/rpi-utils.spec +++ b/anda/tools/rpi-utils/rpi-utils.spec @@ -1,10 +1,10 @@ -%global commit 1bb61832ece0d271a0a4ee9c04f1d7bcfaf3b65e -%global commit_date 20260121 +%global commit 908110873303568f1a790f15bedf23178ad2890c +%global commit_date 20260319 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: rpi-utils Version: %{commit_date}.%{shortcommit} -Release: 2%?dist +Release: 1%{?dist} Summary: A collection of scripts and simple applications for Raspberry Pi devices License: BSD-3-Clause URL: https://github.com/raspberrypi/utils diff --git a/anda/tools/shadowenv/shadowenv.spec b/anda/tools/shadowenv/shadowenv.spec index c713988699..8fa128d7c9 100644 --- a/anda/tools/shadowenv/shadowenv.spec +++ b/anda/tools/shadowenv/shadowenv.spec @@ -1,5 +1,5 @@ Name: shadowenv -Version: 3.2.0 +Version: 3.4.0 Release: 1%?dist License: MIT Summary: Reversible directory-local environment variable manipulations diff --git a/anda/tools/shadowenv/update.rhai b/anda/tools/shadowenv/update.rhai index 9f53d58ae5..cd9a74e384 100644 --- a/anda/tools/shadowenv/update.rhai +++ b/anda/tools/shadowenv/update.rhai @@ -1 +1 @@ -rpm.version(gh_tag("Shopify/shadowenv")); +rpm.version(gh("Shopify/shadowenv")); diff --git a/anda/tools/sops/sops.spec b/anda/tools/sops/sops.spec index c251126aa3..41d0ac6df6 100644 --- a/anda/tools/sops/sops.spec +++ b/anda/tools/sops/sops.spec @@ -1,7 +1,7 @@ %define debug_package %nil Name: sops -Version: 3.11.0 -Release: 1%?dist +Version: 3.12.2 +Release: 1%{?dist} Summary: Simple and flexible tool for managing secrets License: MPL-2.0 URL: https://github.com/getsops/sops diff --git a/anda/tools/spotx-bash/spotx-bash.spec b/anda/tools/spotx-bash/spotx-bash.spec index aa7f22d872..51238b36b2 100644 --- a/anda/tools/spotx-bash/spotx-bash.spec +++ b/anda/tools/spotx-bash/spotx-bash.spec @@ -1,10 +1,10 @@ -%global commit 37ffdc78ba3ded6af6550895bfc687f44f1c4af6 -%global commit_date 20260115 +%global commit 4a7e1f052fc836f142457e1767a729475502dc57 +%global commit_date 20260319 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: spotx-bash Version: %commit_date.git~%shortcommit -Release: 2%?dist +Release: 1%{?dist} Summary: Adblock for the Spotify desktop client on Linux. License: MIT URL: https://github.com/SpotX-Official/SpotX-Bash diff --git a/anda/tools/stremio-service/anda.hcl b/anda/tools/stremio-service/anda.hcl new file mode 100644 index 0000000000..8e72622fce --- /dev/null +++ b/anda/tools/stremio-service/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "stremio-service.spec" + } +} diff --git a/anda/tools/stremio-service/stremio-service.spec b/anda/tools/stremio-service/stremio-service.spec new file mode 100644 index 0000000000..735f518570 --- /dev/null +++ b/anda/tools/stremio-service/stremio-service.spec @@ -0,0 +1,74 @@ +Name: stremio-service +Version: 0.1.18 +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 +Source0: %url/archive/refs/tags/v%{version}.tar.gz +BuildRequires: anda-srpm-macros +BuildRequires: cargo-rpm-macros +BuildRequires: gcc +BuildRequires: cargo +BuildRequires: pkgconfig(gdk-3.0) +BuildRequires: pkgconfig(atk) +BuildRequires: pkgconfig(pango) +BuildRequires: pkgconfig(cairo-gobject) +BuildRequires: pkgconfig(openssl) +BuildRequires: pkgconfig(ayatana-appindicator3-0.1) +BuildRequires: rust-gdk-pixbuf-devel +Requires: libayatana-appindicator-gtk3 +Requires: gdk-pixbuf2 +Requires: glibc +Requires: cairo +Requires: gtk3 +Requires: glib2 +# Build fails without this, all deps are listed above. +AutoReqProv: 0 + +Packager: Owen Zimmerman + +%description +%{summary}. + +%prep +%autosetup -n %{name}-%{version} +%cargo_prep_online + +%build +%cargo_build -f bundled + +%install +mkdir -p %{buildroot}%{_datadir}/stremio-service + +# This is weird but the file going into _bindir is a wrapper script for what is going into _datadir, upstream does this. +# Also, yes all of these file permissions are correct. +install -Dm755 resources/stremio-service %{buildroot}%{_bindir}/stremio-service +install -Dm755 target/release/stremio-service %{buildroot}%{_datadir}/stremio-service/stremio-service + +install -Dm755 resources/bin/linux/stremio-runtime %{buildroot}%{_datadir}/stremio-service/stremio-runtime +install -Dm755 resources/bin/linux/ffmpeg %{buildroot}%{_datadir}/stremio-service/ffmpeg +install -Dm755 resources/bin/linux/ffprobe %{buildroot}%{_datadir}/stremio-service/ffprobe +install -Dm755 resources/bin/linux/server.js %{buildroot}%{_datadir}/stremio-service/server.js + +install -Dm644 resources/com.stremio.service.desktop %{buildroot}%{_appsdir}/com.stremio.service.desktop +install -Dm644 resources/com.stremio.service.metainfo.xml %{buildroot}%{_metainfodir}/com.stremio.service.metainfo.xml +install -Dm644 resources/com.stremio.service.svg %{buildroot}%{_scalableiconsdir}/com.stremio.service.svg +%{cargo_license_summary_online} > LICENSE.dependencies + +%files +%doc README.md +%license LICENSE.md +%license LICENSE.dependencies +%{_bindir}/stremio-service +%{_datadir}/stremio-service/stremio-service +%{_datadir}/stremio-service/stremio-runtime +%{_datadir}/stremio-service/ffmpeg +%{_datadir}/stremio-service/ffprobe +%{_datadir}/stremio-service/server.js +%{_appsdir}/com.stremio.service.desktop +%{_scalableiconsdir}/com.stremio.service.svg +%{_metainfodir}/com.stremio.service.metainfo.xml + +%changelog +* Sun Feb 01 2026 Owen Zimmerman +- Initial commit diff --git a/anda/tools/stremio-service/update.rhai b/anda/tools/stremio-service/update.rhai new file mode 100644 index 0000000000..ea19e6e61f --- /dev/null +++ b/anda/tools/stremio-service/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("Stremio/stremio-service")); diff --git a/anda/tools/surge/anda.hcl b/anda/tools/surge/anda.hcl new file mode 100644 index 0000000000..be401dcc91 --- /dev/null +++ b/anda/tools/surge/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "surge.spec" + } +} diff --git a/anda/tools/surge/surge.spec b/anda/tools/surge/surge.spec new file mode 100644 index 0000000000..a2a0290cd6 --- /dev/null +++ b/anda/tools/surge/surge.spec @@ -0,0 +1,41 @@ +%global goipath github.com/surge-downloader/surge +Version: 0.7.2 + +%gometa + +Name: surge +Release: 1%{?dist} +Summary: Blazing fast TUI download manager built in Go for power users + +License: MIT +URL: https://github.com/surge-downloader/Surge +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz + +Packager: Owen Zimmerman + +BuildRequires: golang gcc go-rpm-macros +Requires: glibc + +%description +%{summary}. + +%gopkg + +%prep +%autosetup -n Surge-%{version} + +%build +%define gomodulesmode GO111MODULE=on +%gobuild -o %{gobuilddir}/bin/surge %{goipath} + +%install +install -Dm755 %{gobuilddir}/bin/surge %{buildroot}%{_bindir}/surge + +%files +%license LICENSE +%doc README.md +%{_bindir}/surge + +%changelog +* Tue Feb 24 2026 Owen Zimmerman +- Initial commit diff --git a/anda/tools/surge/update.rhai b/anda/tools/surge/update.rhai new file mode 100644 index 0000000000..301d54ee48 --- /dev/null +++ b/anda/tools/surge/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("surge-downloader/Surge")); diff --git a/anda/tools/tauri/tauri.spec b/anda/tools/tauri/tauri.spec index 4eb7b29d7a..16966156e1 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.9.6 -Release: 4%{?dist} +Version: 2.10.1 +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/anda.hcl b/anda/tools/termflix/anda.hcl new file mode 100644 index 0000000000..54414b31bf --- /dev/null +++ b/anda/tools/termflix/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "termflix.spec" + } +} diff --git a/anda/tools/termflix/termflix.spec b/anda/tools/termflix/termflix.spec new file mode 100644 index 0000000000..7c75d40de7 --- /dev/null +++ b/anda/tools/termflix/termflix.spec @@ -0,0 +1,35 @@ +Name: termflix +Version: 0.4.2 +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 +URL: https://github.com/paulrobello/termflix +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz + +BuildRequires: cargo-rpm-macros >= 24 + +Packager: Owen Zimmerman + +%description +%{summary}. + +%prep +%autosetup -n %{name}-%{version} +%cargo_prep_online + +%build +%cargo_build +%{cargo_license_online} > LICENSE.dependencies + +%install +install -Dm 755 target/rpm/%{name} -t %{buildroot}%{_bindir} + +%files +%doc README.md +%license LICENSE LICENSE.dependencies +%{_bindir}/%{name} + +%changelog +* Thu Feb 26 2026 Owen Zimmerman +- Initial commit diff --git a/anda/tools/termflix/update.rhai b/anda/tools/termflix/update.rhai new file mode 100644 index 0000000000..f4d53a76bc --- /dev/null +++ b/anda/tools/termflix/update.rhai @@ -0,0 +1 @@ +rpm.version(crates("termflix")); diff --git a/anda/tools/topgrade/rust-topgrade.spec b/anda/tools/topgrade/rust-topgrade.spec index 9fc4f7a271..7cc92fc1df 100644 --- a/anda/tools/topgrade/rust-topgrade.spec +++ b/anda/tools/topgrade/rust-topgrade.spec @@ -3,8 +3,8 @@ Name: rust-topgrade # renovate: datasource=github-releases depName=topgrade-rs/topgrade -Version: 16.8.0 -Release: 1%?dist +Version: 17.1.0 +Release: 1%{?dist} Summary: Upgrade all the things SourceLicense: GPL-3.0-or-later @@ -12,21 +12,17 @@ License: ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache URL: https://crates.io/crates/topgrade Source: %crates_source # Automatically generated patch to strip dependencies and normalize metadata -Patch: topgrade-fix-metadata-auto.diff BuildRequires: cargo BuildRequires: rust BuildRequires: rpm_macro(cargo_install) BuildRequires: anda-srpm-macros mold -%description +%global _description %{expand: Keeping your system up to date usually involves invoking multiple package managers. This results in big, non-portable shell one-liners saved in your shell. To remedy this, Topgrade detects which tools you use and -runs the appropriate commands to update them. - -%global _description %{expand: -Upgrade all the things.} +runs the appropriate commands to update them.} %description %{_description} @@ -38,7 +34,6 @@ Summary: %{summary} %files -n %{crate} %license LICENSE %license LICENSE.dependencies -%doc BREAKINGCHANGES.md %doc CHANGELOG.md %doc CODE_OF_CONDUCT.md %doc CONTRIBUTING.md @@ -48,7 +43,7 @@ Summary: %{summary} %{_bindir}/topgrade %prep -%autosetup -n %{crate}-%{version} -p1 +%autosetup -n %{crate}-%{version} %cargo_prep_online %build diff --git a/anda/tools/topgrade/topgrade-fix-metadata-auto.diff b/anda/tools/topgrade/topgrade-fix-metadata-auto.diff deleted file mode 100644 index dc74d1e1f1..0000000000 --- a/anda/tools/topgrade/topgrade-fix-metadata-auto.diff +++ /dev/null @@ -1,29 +0,0 @@ ---- topgrade-16.2.1/Cargo.toml 1970-01-01T00:00:01+00:00 -+++ topgrade-16.2.1/Cargo.toml 2025-11-11T08:14:26.891440+00:00 -@@ -246,26 +246,3 @@ - default-features = false - package = "self_update" - --[target."cfg(windows)".dependencies.is_elevated] --version = "~0.1" -- --[target."cfg(windows)".dependencies.parselnk] --version = "~0.1" -- --[target."cfg(windows)".dependencies.self_update_crate] --version = "~0.40" --features = [ -- "archive-zip", -- "compression-zip-deflate", -- "rustls", --] --optional = true --default-features = false --package = "self_update" -- --[target."cfg(windows)".dependencies.windows] --version = "~0.62" --features = ["Win32_System_Console"] -- --[target."cfg(windows)".dependencies.windows-registry] --version = "~0.6" diff --git a/anda/tools/typos/typos.spec b/anda/tools/typos/typos.spec index 84fca85c5e..44c022ca05 100644 --- a/anda/tools/typos/typos.spec +++ b/anda/tools/typos/typos.spec @@ -2,7 +2,7 @@ %define debug_package %{nil} Name: typos -Version: 1.42.1 +Version: 1.44.0 Release: 1%?dist Summary: Source Code Spelling Correction diff --git a/anda/tools/u-config/anda.hcl b/anda/tools/u-config/anda.hcl new file mode 100644 index 0000000000..bc13ecfa43 --- /dev/null +++ b/anda/tools/u-config/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "u-config.spec" + } +} diff --git a/anda/tools/u-config/u-config.spec b/anda/tools/u-config/u-config.spec new file mode 100644 index 0000000000..97651f07ce --- /dev/null +++ b/anda/tools/u-config/u-config.spec @@ -0,0 +1,45 @@ +%global forgeurl https://github.com/skeeto/u-config +Version: 0.34.0 +%forgemeta + +Name: u-config +Release: 1%{?dist} +Summary: A smaller, simpler, portable pkg-config clone + +License: Unlicense +URL: %{forgeurl} +Source0: %{forgesource} + +Packager: metcya + +BuildRequires: gcc + +%description +u-config ("micro-config") is a small, highly portable pkg-config and pkgconf +clone. It was written primarily for w64devkit and Windows, but can also serve +as a reliable drop-in replacement on other platforms. Notable features: + +%prep +%forgeautosetup + +%build +%__cc $CFLAGS \ + $CPPFLAGS \ + -DPKG_CONFIG_LIBDIR="\"%{_libdir}/pkgconfig\"" \ + $LDFLAGS \ + -o u-config \ + main_posix.c + +%install +install -Dm 755 u-config %{buildroot}%{_bindir}/u-config +install -Dm 655 u-config.1 %{buildroot}%{_mandir}/man1/u-config.1 + +%files +%license UNLICENSE +%doc README.md +%{_bindir}/u-config +%{_mandir}/man1/u-config.1.* + +%changelog +* Tue Mar 03 2026 metcya +- Initial package diff --git a/anda/tools/u-config/update.rhai b/anda/tools/u-config/update.rhai new file mode 100644 index 0000000000..175fe08da0 --- /dev/null +++ b/anda/tools/u-config/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("skeeto/u-config")); diff --git a/anda/tools/yt-dlp-ejs/python-yt-dlp-ejs.spec b/anda/tools/yt-dlp-ejs/python-yt-dlp-ejs.spec index 39557dde76..9823c1afa9 100644 --- a/anda/tools/yt-dlp-ejs/python-yt-dlp-ejs.spec +++ b/anda/tools/yt-dlp-ejs/python-yt-dlp-ejs.spec @@ -1,6 +1,6 @@ Name: python-yt-dlp-ejs -Version: 0.3.2 -Release: 1%?dist +Version: 0.8.0 +Release: 1%{?dist} Summary: External JavaScript for yt-dlp supporting many runtimes License: Unlicense AND MIT AND ISC diff --git a/anda/tools/yt-dlp/yt-dlp-git.spec b/anda/tools/yt-dlp/yt-dlp-git.spec index 3491e80f61..37f3b7bf97 100644 --- a/anda/tools/yt-dlp/yt-dlp-git.spec +++ b/anda/tools/yt-dlp/yt-dlp-git.spec @@ -2,8 +2,8 @@ %global oldpkgname yt-dlp-nightly Name: yt-dlp-git -Version: 2026.01.19.231625 -Release: 1%?dist +Version: 2026.03.17.231936 +Release: 1%{?dist} Summary: A command-line program to download videos from online video platforms License: Unlicense diff --git a/anda/tools/zola/zola.spec b/anda/tools/zola/zola.spec index 28c63b3335..22f09e8f88 100644 --- a/anda/tools/zola/zola.spec +++ b/anda/tools/zola/zola.spec @@ -1,5 +1,5 @@ Name: zola -Version: 0.22.0 +Version: 0.22.1 Release: 1%?dist Summary: A fast static site generator in a single binary with everything built-in URL: https://www.getzola.org diff --git a/andax/bump_extras.rhai b/andax/bump_extras.rhai index efa2c0a89c..90ec2e5ee8 100644 --- a/andax/bump_extras.rhai +++ b/andax/bump_extras.rhai @@ -45,7 +45,7 @@ fn as_bodhi_ver(branch) { } return `EPEL-${release}`; } else if branch == "frawhide" { - return "F44"; + return "F45"; } else if branch.starts_with("f") { branch.crop(1); return `F${branch}`;