diff --git a/.github/workflows/autobuild.yml b/.github/workflows/autobuild.yml index 1b7398c403..08aef1e445 100644 --- a/.github/workflows/autobuild.yml +++ b/.github/workflows/autobuild.yml @@ -1,6 +1,8 @@ # for each folder in anda/ # generate a new workflow for each folder in anda/ name: Automatically build packages +permissions: + contents: read on: push: paths: @@ -96,7 +98,7 @@ jobs: terra${{ matrix.version }}${{ matrix.pkg.labels['subrepo'] && '-$subrepo' || '' }} anda-build/rpm/rpms/* - name: Upload source packages to subatomic - if: github.event_name == 'push' + if: github.event_name == 'push' && matrix.pkg.labels['no_upload_srpms'] != '1' run: | subrepo="${{ matrix.pkg.labels.subrepo }}" subatomic-cli upload --prune \ diff --git a/.github/workflows/bootstrap.yml b/.github/workflows/bootstrap.yml index 30b6c2e863..f5e0bcfeb5 100644 --- a/.github/workflows/bootstrap.yml +++ b/.github/workflows/bootstrap.yml @@ -1,5 +1,6 @@ name: Bootstrap Andaman and Subatomic - +permissions: + contents: read on: workflow_dispatch: diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7f4c5c8aba..5982ed7085 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,4 +1,6 @@ name: Manual Builds +permissions: + contents: read on: workflow_dispatch: inputs: @@ -81,21 +83,24 @@ jobs: - name: Upload packages to subatomic run: | + subrepo="${{ fromJson(steps.art.outputs.labels).subrepo }}" subatomic-cli upload --prune \ --server https://subatomic.fyralabs.com \ --token ${{ secrets.SUBATOMIC_TOKEN }} \ - terra${{ matrix.version }}${{ fromJson(steps.art.outputs.labels)['extra'] && '-extras' }} anda-build/rpm/rpms/* + terra${{ matrix.version }}${{ fromJson(steps.art.outputs.labels)['subrepo'] && '-$subrepo' }} anda-build/rpm/rpms/* - name: Upload source packages to subatomic + if: fromJson(steps.art.outputs.labels)['no_upload_srpms'] != '1' run: | + subrepo="${{ fromJson(steps.art.outputs.labels).subrepo }}" subatomic-cli upload --prune \ --server https://subatomic.fyralabs.com \ --token ${{ secrets.SUBATOMIC_TOKEN }} \ - terra${{ matrix.version }}${{ fromJson(steps.art.outputs.labels)['extra'] && '-extras' }}-source anda-build/rpm/srpm/* + terra${{ matrix.version }}${{ fromJson(steps.art.outputs.labels)['subrepo'] && '-$subrepo' }}-source anda-build/rpm/srpm/* - name: Notify Madoguchi (Success) if: success() - run: ./.github/workflows/mg.sh true "${{matrix.pkg}}" "${{matrix.version}}" "${{matrix.arch}}" "${{github.run_id}}" "${{secrets.MADOGUCHI_JWT}}" "$GITHUB_SHA" + run: ./.github/workflows/mg.sh true "anda/${{matrix.pkg}}pkg" "${{matrix.version}}" "${{matrix.arch}}" "${{github.run_id}}" "${{secrets.MADOGUCHI_JWT}}" "$GITHUB_SHA" - name: Notify Madoguchi (Failure) if: cancelled() || failure() - run: ./.github/workflows/mg.sh false "${{matrix.pkg}}" "${{matrix.version}}" "${{matrix.arch}}" "${{github.run_id}}" "${{secrets.MADOGUCHI_JWT}}" "$GITHUB_SHA" + run: ./.github/workflows/mg.sh false "anda/${{matrix.pkg}}pkg" "${{matrix.version}}" "${{matrix.arch}}" "${{github.run_id}}" "${{secrets.MADOGUCHI_JWT}}" "$GITHUB_SHA" diff --git a/.github/workflows/json-build.yml b/.github/workflows/json-build.yml index 6f0c72a50e..033e16519a 100644 --- a/.github/workflows/json-build.yml +++ b/.github/workflows/json-build.yml @@ -1,4 +1,6 @@ name: JSON Build +permissions: + contents: read on: workflow_dispatch: inputs: @@ -67,6 +69,7 @@ jobs: terra${{ matrix.version }}${{ matrix.pkg.labels['subrepo'] && '-$subrepo' || '' }} anda-build/rpm/rpms/* - name: Upload source packages to subatomic + if: matrix.pkg.labels['no_upload_srpms'] != '1' run: | subrepo="${{ matrix.pkg.labels.subrepo }}" subatomic-cli upload --prune \ diff --git a/.github/workflows/mg.sh b/.github/workflows/mg.sh index 2bb4d68768..1195f8d31c 100755 --- a/.github/workflows/mg.sh +++ b/.github/workflows/mg.sh @@ -12,9 +12,9 @@ if [[ $1 == false ]]; then fi for f in anda-build/rpm/rpms/*; do - n=$(lesspipe.sh $f | grep -E "Name\s*: " | sed "s@Name\s*: @@") - v=$(lesspipe.sh $f | grep -E "Version\s*: " | sed "s@Version\s*: @@") - r=$(lesspipe.sh $f | grep -E "Release\s*: " | sed "s@Release\s*: @@") + n=$(lesspipe.sh $f | grep -E "Name\s*: " | sed "s@Name\s*: @@" | head -n1) + v=$(lesspipe.sh $f | grep -E "Version\s*: " | sed "s@Version\s*: @@" | head -n1) + r=$(lesspipe.sh $f | grep -E "Release\s*: " | sed "s@Release\s*: @@" | head -n1) d=${p/\%v/$v} d=${d/\%r/$r} curl -H "Authorization: Bearer $6" https://madoguchi.fyralabs.com/ci5/terra$3/builds/$n -X PUT -H "Content-Type: application/json" -d $d --fail-with-body diff --git a/.github/workflows/sync.yml b/.github/workflows/sync.yml index fdd4824ec0..f061efc1d3 100644 --- a/.github/workflows/sync.yml +++ b/.github/workflows/sync.yml @@ -1,5 +1,7 @@ name: Automatic backport/sync action - +permissions: + contents: write + pull-requests: write on: pull_request_target: types: ["labeled", "closed"] diff --git a/.github/workflows/update-branch.yml b/.github/workflows/update-branch.yml index acb04d0dae..4cb045cfc3 100644 --- a/.github/workflows/update-branch.yml +++ b/.github/workflows/update-branch.yml @@ -1,4 +1,6 @@ name: Update per branch +permissions: + contents: write on: schedule: - cron: "*/30 * * * *" diff --git a/.github/workflows/update-comps.yml b/.github/workflows/update-comps.yml index 107a1511d6..463e2b8598 100644 --- a/.github/workflows/update-comps.yml +++ b/.github/workflows/update-comps.yml @@ -1,4 +1,6 @@ name: Push comps updates +permissions: + contents: read on: push: diff --git a/.github/workflows/update-nightly.yml b/.github/workflows/update-nightly.yml index c645b2b71d..8d9211ce69 100644 --- a/.github/workflows/update-nightly.yml +++ b/.github/workflows/update-nightly.yml @@ -1,4 +1,6 @@ name: Nightly Update +permissions: + contents: write on: schedule: - cron: "0 0 * * *" diff --git a/.github/workflows/update-weekly.yml b/.github/workflows/update-weekly.yml index 9d68edece2..a3159354d3 100644 --- a/.github/workflows/update-weekly.yml +++ b/.github/workflows/update-weekly.yml @@ -1,4 +1,6 @@ name: Weekly Update +permissions: + contents: write on: schedule: - cron: "0 0 * * *" diff --git a/.github/workflows/update.yml b/.github/workflows/update.yml index b63ad29afc..7c3364b0ec 100644 --- a/.github/workflows/update.yml +++ b/.github/workflows/update.yml @@ -1,4 +1,6 @@ name: Update +permissions: + contents: write on: schedule: - cron: "*/10 * * * *" diff --git a/anda/apps/anki-bin/anki-bin.spec b/anda/apps/anki-bin/anki-bin.spec index 3b2391a659..38ab7a38b0 100644 --- a/anda/apps/anki-bin/anki-bin.spec +++ b/anda/apps/anki-bin/anki-bin.spec @@ -1,9 +1,9 @@ -%global xurl https://files.pythonhosted.org/packages/f4/be/4b66f654302eb99e02f691ba1fdd1a5cd1f439d439b3b16f58aa4786836f/anki-25.02.7-cp39-abi3-manylinux_2_35_x86_64.whl -%global aurl https://files.pythonhosted.org/packages/71/40/19545c12e7d14cf00a5d669317bc39e8b0e14b538da9a1bf753a0b59269f/anki-25.02.7-cp39-abi3-manylinux_2_35_aarch64.whl -%global qurl https://files.pythonhosted.org/packages/c9/ea/9dd58dee2ac85626335b73b742f67dadfb25c4bb31fd607c1415dc9fdfc3/aqt-25.02.7-py3-none-any.whl +%global xurl https://files.pythonhosted.org/packages/bf/05/3f3e0e890408cd8bf590bb00029de1623d85a09f2bc40545f87f4fa5e0f8/anki-25.7.2-cp39-abi3-manylinux_2_36_x86_64.whl +%global aurl https://files.pythonhosted.org/packages/ed/0a/6f07edb9b60c0aa5e5ea2546ffb2f9cf079dd6b7b5b90f0d31852978c3b9/anki-25.7.2-cp39-abi3-manylinux_2_36_aarch64.whl +%global qurl https://files.pythonhosted.org/packages/83/0b/51bf1a1f623fe52a590050087dcdfdaeab72025a2dd02bb6e5d3627de4e2/aqt-25.7.2-py3-none-any.whl Name: anki-bin -Version: 25.02.7 +Version: 25.7.2 Release: 1%?dist Summary: Flashcard program for using space repetition learning (Installed with wheel) License: AGPL-3.0-or-later AND GPL-3.0-or-later AND LGPL-3.0-or-later AND MIT AND BSD-3-Clause AND CC-BY-SA-3.0 AND CC-BY-3.0 AND Apache-2.0 AND CC-BY-2.5 diff --git a/anda/apps/anki-qt5/anki-qt5.spec b/anda/apps/anki-qt5/anki-qt5.spec index e3b7ca0b87..939cca44bd 100644 --- a/anda/apps/anki-qt5/anki-qt5.spec +++ b/anda/apps/anki-qt5/anki-qt5.spec @@ -1,5 +1,5 @@ Name: anki-qt5 -Version: 25.02.7 +Version: 25.07.2 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 diff --git a/anda/apps/anki/anki.spec b/anda/apps/anki/anki.spec index 35191aa3be..9994924f8b 100644 --- a/anda/apps/anki/anki.spec +++ b/anda/apps/anki/anki.spec @@ -1,5 +1,5 @@ Name: anki -Version: 25.02.7 +Version: 25.07.2 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 diff --git a/anda/apps/discord-canary-openasar/discord-canary-openasar.spec b/anda/apps/discord-canary-openasar/discord-canary-openasar.spec index f3ef9cc0dd..94c968707d 100644 --- a/anda/apps/discord-canary-openasar/discord-canary-openasar.spec +++ b/anda/apps/discord-canary-openasar/discord-canary-openasar.spec @@ -6,7 +6,7 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: discord-canary-openasar -Version: 0.0.706 +Version: 0.0.716 Release: 1%?dist Summary: A snappier Discord rewrite with features like further customization and theming License: MIT AND https://discord.com/terms diff --git a/anda/apps/discord-canary/discord-canary.spec b/anda/apps/discord-canary/discord-canary.spec index 798a9ec0dd..bab18b4aca 100644 --- a/anda/apps/discord-canary/discord-canary.spec +++ b/anda/apps/discord-canary/discord-canary.spec @@ -6,7 +6,7 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: discord-canary -Version: 0.0.706 +Version: 0.0.716 Release: 1%?dist Summary: Free Voice and Text Chat for Gamers URL: discord.com diff --git a/anda/apps/discord-openasar/discord-openasar.spec b/anda/apps/discord-openasar/discord-openasar.spec index 33fef4ddfd..a2b4c7c461 100644 --- a/anda/apps/discord-openasar/discord-openasar.spec +++ b/anda/apps/discord-openasar/discord-openasar.spec @@ -6,7 +6,7 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: discord-openasar -Version: 0.0.99 +Version: 0.0.101 Release: 1%?dist Summary: A snappier Discord rewrite with features like further customization and theming License: MIT AND https://discord.com/terms diff --git a/anda/apps/discord-ptb-openasar/discord-ptb-openasar.spec b/anda/apps/discord-ptb-openasar/discord-ptb-openasar.spec index 15825fd0e9..1895335087 100644 --- a/anda/apps/discord-ptb-openasar/discord-ptb-openasar.spec +++ b/anda/apps/discord-ptb-openasar/discord-ptb-openasar.spec @@ -6,7 +6,7 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: discord-ptb-openasar -Version: 0.0.150 +Version: 0.0.151 Release: 1%?dist Summary: A snappier Discord rewrite with features like further customization and theming License: MIT AND https://discord.com/terms diff --git a/anda/apps/discord-ptb/discord-ptb.spec b/anda/apps/discord-ptb/discord-ptb.spec index 41af8b2fcd..214aa34db3 100644 --- a/anda/apps/discord-ptb/discord-ptb.spec +++ b/anda/apps/discord-ptb/discord-ptb.spec @@ -6,7 +6,7 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: discord-ptb -Version: 0.0.150 +Version: 0.0.151 Release: 1%?dist Summary: Free Voice and Text Chat for Gamers. URL: https://discord.com diff --git a/anda/apps/discord/discord.spec b/anda/apps/discord/discord.spec index 396577a8aa..d41b369f33 100644 --- a/anda/apps/discord/discord.spec +++ b/anda/apps/discord/discord.spec @@ -6,7 +6,7 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: discord -Version: 0.0.99 +Version: 0.0.101 Release: 1%?dist Summary: Free Voice and Text Chat for Gamers URL: https://discord.com diff --git a/anda/apps/feishin/feishin.spec b/anda/apps/feishin/feishin.spec index 1c88b5b0d6..cc535b5260 100644 --- a/anda/apps/feishin/feishin.spec +++ b/anda/apps/feishin/feishin.spec @@ -6,7 +6,7 @@ %global __provides_exclude_from %{_datadir}/%{name}/.*\\.so Name: feishin -Version: 0.16.0 +Version: 0.18.0 Release: 1%?dist Summary: A modern self-hosted music player License: GPL-3.0 diff --git a/anda/apps/goofcord/nightly/anda.hcl b/anda/apps/goofcord/nightly/anda.hcl new file mode 100644 index 0000000000..5bb2829afb --- /dev/null +++ b/anda/apps/goofcord/nightly/anda.hcl @@ -0,0 +1,9 @@ +project pkg { + rpm { + spec = "goofcord-nightly.spec" + } + labels { + mock = 1 + nightly = 1 + } +} diff --git a/anda/apps/goofcord/nightly/goofcord-nightly.spec b/anda/apps/goofcord/nightly/goofcord-nightly.spec new file mode 100644 index 0000000000..c152a28ccb --- /dev/null +++ b/anda/apps/goofcord/nightly/goofcord-nightly.spec @@ -0,0 +1,101 @@ +%global commit 3f5eda113f33fead76a5a53e0b71c11b254d68fd +%global shortcommit %(c=%{commit}; echo ${c:0:7}) +%global commit_date 20250615 +%global ver 1.10.1 +%global base_name goofcord +%global git_name GoofCord +%global debug_package %{nil} +# Exclude private libraries +%global __provides_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*))$ +%ifnarch aarch64 armv7hl armv7l +%global __requires_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*)|(.*\\aarch64*\\.so.*))$ +%elifarch aarch64 armv7hl armv7l +%global __requires_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*)|(.*\\x86_64*\\.so.*)|(.*\\x86-64*\\.so.*))$ +%endif + +Name: %{base_name}-nightly +Version: %{ver}^%{commit_date}.git.%{shortcommit} +Release: 1%{?dist} +License: OSL-3.0 +Summary: A privacy-minded Legcord fork. +Group: Applications/Internet +URL: https://github.com/Milkshiift/%{git_name} +Source0: %{url}/archive/%{commit}/%{git_name}-%{commit}.tar.gz +BuildRequires: bun-bin +BuildRequires: desktop-file-utils +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: git +BuildRequires: make +BuildRequires: nodejs +BuildRequires: nodejs-npm +BuildRequires: python3 +%ifarch aarch64 +BuildRequires: zlib-ng-compat-devel +%endif +Packager: Gilver E. + +%description +A highly configurable and privacy minded Discord client. + +%prep +%autosetup -n %{git_name}-%{commit} + +%build +%ifarch aarch64 armv7hl armv7l +sed -i '/\"x64\",/d' electron-builder.ts +%endif +bun install +bun run packageLinux --publish=never + +%install +mkdir -p %{buildroot}%{_datadir}/%{git_name} +%ifarch x86_64 +mv dist/linux-unpacked/* -t %{buildroot}%{_datadir}/%{git_name} +%elifarch aarch64 +mv dist/linux-arm64-unpacked/* -t %{buildroot}%{_datadir}/%{git_name} +%elifarch armv7hl armv7l +mv dist/linux-armv7l-unpacked/* -t %{buildroot}%{_datadir}/%{git_name} +%endif + +mkdir -p %{buildroot}%{_bindir} +ln -sf %{_datadir}/%{git_name}/%{git_name} %{buildroot}%{_bindir}/%{git_name} +install -Dm644 dist/.icon-set/icon_16x16.png %{buildroot}/%{_iconsdir}/hicolor/16x16/apps/%{git_name}.png +install -Dm644 dist/.icon-set/icon_32.png %{buildroot}/%{_iconsdir}/hicolor/32x32/apps/%{git_name}.png +install -Dm644 dist/.icon-set/icon_48x48.png %{buildroot}/%{_iconsdir}/hicolor/48x48/apps/%{git_name}.png +install -Dm644 dist/.icon-set/icon_64.png %{buildroot}/%{_iconsdir}/hicolor/64x64/apps/%{git_name}.png +install -Dm644 dist/.icon-set/icon_128.png %{buildroot}/%{_iconsdir}/hicolor/128x128/apps/%{git_name}.png +install -Dm644 dist/.icon-set/icon_256.png %{buildroot}/%{_iconsdir}/hicolor/256x256/apps/%{git_name}.png +install -Dm644 dist/.icon-set/icon_512.png %{buildroot}/%{_iconsdir}/hicolor/512x512/apps/%{git_name}.png +install -Dm644 dist/.icon-set/icon_1024.png %{buildroot}/%{_iconsdir}/hicolor/1024x1024/apps/%{git_name}.png + +%ifarch x86_64 +dist/%{git_name}-*x86_64.AppImage --appimage-extract '*.desktop' +%elifarch aarch64 +dist/%{git_name}-*arm64.AppImage --appimage-extract '*.desktop' +%elifarch armv7hl armv7l +dist/%{git_name}-*armv7l.AppImage --appimage-extract '*.desktop' +%endif +desktop-file-install --set-key=Exec --set-value="%{_datadir}/%{git_name}/%{git_name} --enable-features=UseOzonePlatform,WaylandWindowDecorations --ozone-platform-hint=auto %U" squashfs-root/%{git_name}.desktop + +%check +desktop-file-validate %{buildroot}%{_datadir}/applications/%{git_name}.desktop + +%files +%doc README.md +%license LICENSE +%{_bindir}/%{git_name} +%{_datadir}/applications/%{git_name}.desktop +%{_datadir}/%{git_name}/ +%{_iconsdir}/hicolor/16x16/apps/%{git_name}.png +%{_iconsdir}/hicolor/32x32/apps/%{git_name}.png +%{_iconsdir}/hicolor/48x48/apps/%{git_name}.png +%{_iconsdir}/hicolor/64x64/apps/%{git_name}.png +%{_iconsdir}/hicolor/128x128/apps/%{git_name}.png +%{_iconsdir}/hicolor/256x256/apps/%{git_name}.png +%{_iconsdir}/hicolor/512x512/apps/%{git_name}.png +%{_iconsdir}/hicolor/1024x1024/apps/%{git_name}.png + +%changelog +* Sat Jun 28 2025 Gilver E. - 1.10.1^20250615.git.3f5eda1 +- Initial package diff --git a/anda/apps/goofcord/nightly/update.rhai b/anda/apps/goofcord/nightly/update.rhai new file mode 100644 index 0000000000..a886909690 --- /dev/null +++ b/anda/apps/goofcord/nightly/update.rhai @@ -0,0 +1,8 @@ +rpm.global("commit", gh_commit("Milkshiift/GoofCord")); + if rpm.changed { + let v = gh_tag(""Milkshiift/GoofCord"); + v.crop(1); + rpm.global("ver", v); + rpm.global("commit_date", date()); + rpm.release(); +} diff --git a/anda/apps/goofcord/stable/anda.hcl b/anda/apps/goofcord/stable/anda.hcl new file mode 100644 index 0000000000..ab54b297f3 --- /dev/null +++ b/anda/apps/goofcord/stable/anda.hcl @@ -0,0 +1,8 @@ +project pkg { + rpm { + spec = "goofcord.spec" + } + labels { + mock = 1 + } +} diff --git a/anda/apps/goofcord/stable/goofcord.spec b/anda/apps/goofcord/stable/goofcord.spec new file mode 100644 index 0000000000..a144bcd180 --- /dev/null +++ b/anda/apps/goofcord/stable/goofcord.spec @@ -0,0 +1,95 @@ +%global git_name GoofCord +%global debug_package %{nil} +# Exclude private libraries +%global __provides_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*))$ +%ifnarch aarch64 armv7hl armv7l +%global __requires_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*)|(.*\\aarch64*\\.so.*))$ +%elifarch aarch64 armv7hl armv7l +%global __requires_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*)|(.*\\x86_64*\\.so.*)|(.*\\x86-64*\\.so.*))$ +%endif + +Name: goofcord +Version: 1.10.1 +Release: 1%{?dist} +License: OSL-3.0 +Summary: A privacy-minded Legcord fork. +Group: Applications/Internet +URL: https://github.com/Milkshiift/%{git_name} +Source0: %{url}/archive/refs/tags/v%{version}.tar.gz +BuildRequires: bun-bin +BuildRequires: desktop-file-utils +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: make +BuildRequires: nodejs +BuildRequires: nodejs-npm +BuildRequires: python3 +%ifarch aarch64 +BuildRequires: zlib-ng-compat-devel +%endif +Packager: Gilver E. + +%description +A highly configurable and privacy minded Discord client. + +%prep +%autosetup -n %{git_name}-%{version} + +%build +%ifarch aarch64 armv7hl armv7l +sed -i '/\"x64\",/d' electron-builder.ts +%endif +bun install +bun run packageLinux + +%install +mkdir -p %{buildroot}%{_datadir}/%{name} +%ifarch x86_64 +mv dist/linux-unpacked/* -t %{buildroot}%{_datadir}/%{name} +%elifarch aarch64 +mv dist/linux-arm64-unpacked/* -t %{buildroot}%{_datadir}/%{name} +%elifarch armv7hl armv7l +mv dist/linux-armv7l-unpacked/* -t %{buildroot}%{_datadir}/%{name} +%endif + +mkdir -p %{buildroot}%{_bindir} +ln -sf %{_datadir}/%{name}/%{name} %{buildroot}%{_bindir}/%{name} +install -Dm644 dist/.icon-set/icon_16x16.png %{buildroot}/%{_iconsdir}/hicolor/16x16/apps/%{name}.png +install -Dm644 dist/.icon-set/icon_32.png %{buildroot}/%{_iconsdir}/hicolor/32x32/apps/%{name}.png +install -Dm644 dist/.icon-set/icon_48x48.png %{buildroot}/%{_iconsdir}/hicolor/48x48/apps/%{name}.png +install -Dm644 dist/.icon-set/icon_64.png %{buildroot}/%{_iconsdir}/hicolor/64x64/apps/%{name}.png +install -Dm644 dist/.icon-set/icon_128.png %{buildroot}/%{_iconsdir}/hicolor/128x128/apps/%{name}.png +install -Dm644 dist/.icon-set/icon_256.png %{buildroot}/%{_iconsdir}/hicolor/256x256/apps/%{name}.png +install -Dm644 dist/.icon-set/icon_512.png %{buildroot}/%{_iconsdir}/hicolor/512x512/apps/%{name}.png +install -Dm644 dist/.icon-set/icon_1024.png %{buildroot}/%{_iconsdir}/hicolor/1024x1024/apps/%{name}.png + +%ifarch x86_64 +dist/%{git_name}-*x86_64.AppImage --appimage-extract '*.desktop' +%elifarch aarch64 +dist/%{git_name}-*arm64.AppImage --appimage-extract '*.desktop' +%elifarch armv7hl armv7l +dist/%{git_name}-*armv7l.AppImage --appimage-extract '*.desktop' +%endif +desktop-file-install --set-key=Exec --set-value="%{_datadir}/%{name}/%{name} --enable-features=UseOzonePlatform,WaylandWindowDecorations --ozone-platform-hint=auto %U" squashfs-root/%{name}.desktop + +%check +desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop + +%files +%doc README.md +%license LICENSE +%{_bindir}/%{name} +%{_datadir}/applications/%{name}.desktop +%{_datadir}/%{name}/ +%{_iconsdir}/hicolor/16x16/apps/%{name}.png +%{_iconsdir}/hicolor/32x32/apps/%{name}.png +%{_iconsdir}/hicolor/48x48/apps/%{name}.png +%{_iconsdir}/hicolor/64x64/apps/%{name}.png +%{_iconsdir}/hicolor/128x128/apps/%{name}.png +%{_iconsdir}/hicolor/256x256/apps/%{name}.png +%{_iconsdir}/hicolor/512x512/apps/%{name}.png +%{_iconsdir}/hicolor/1024x1024/apps/%{name}.png + +%changelog +* Sat Jun 28 2025 Gilver E. - 1.10.1-1 +- Initial package diff --git a/anda/apps/goofcord/stable/update.rhai b/anda/apps/goofcord/stable/update.rhai new file mode 100644 index 0000000000..4b308802cb --- /dev/null +++ b/anda/apps/goofcord/stable/update.rhai @@ -0,0 +1 @@ +rpm.version(gh_tag("Milkshiift/GoofCord")); diff --git a/anda/apps/komikku/komikku.spec b/anda/apps/komikku/komikku.spec index 5ccf186a78..d55578b699 100644 --- a/anda/apps/komikku/komikku.spec +++ b/anda/apps/komikku/komikku.spec @@ -3,10 +3,10 @@ %global gtk4_version 4.14.4 %global libadwaita_version 1.5.1 %global pure_protobuf_version 2.0.0 -%global raw_ver v1.80.0 +%global raw_ver v1.81.0 Name: komikku -Version: 1.80.0 +Version: 1.81.0 %forgemeta Release: 1%?dist Summary: A manga reader for GNOME diff --git a/anda/apps/mpv/mpv-nightly.spec b/anda/apps/mpv/mpv-nightly.spec index 6057b1a2eb..d1669bb3ae 100644 --- a/anda/apps/mpv/mpv-nightly.spec +++ b/anda/apps/mpv/mpv-nightly.spec @@ -1,6 +1,6 @@ -%global commit ed8954e8cf2d92d7f2df22aeeb9b6087f76ef89e +%global commit 9baadc6cc9a0b71a5ad90dfd7f3ce5a9d2bcd242 %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20250628 +%global commit_date 20250709 %global ver 0.40.0 Name: mpv-nightly diff --git a/anda/apps/nekoray/Sagernet.SingBox.Version.txt b/anda/apps/nekoray/Sagernet.SingBox.Version.txt index 4d251bfd41..6741c5e834 100644 --- a/anda/apps/nekoray/Sagernet.SingBox.Version.txt +++ b/anda/apps/nekoray/Sagernet.SingBox.Version.txt @@ -1 +1 @@ -v1.11.14 \ No newline at end of file +v1.11.15 \ No newline at end of file diff --git a/anda/apps/nekoray/nekoray.spec b/anda/apps/nekoray/nekoray.spec index f797f302ac..5141681e7e 100644 --- a/anda/apps/nekoray/nekoray.spec +++ b/anda/apps/nekoray/nekoray.spec @@ -1,6 +1,6 @@ %global gomodulesmode GO111MODULE=on Name: nekoray -Version: 4.3.5 +Version: 4.3.7 Release: 1%?dist Summary: Qt based cross-platform GUI proxy configuration manager (backend: sing-box) URL: https://github.com/Mahdi-zarei/nekoray diff --git a/anda/apps/ruffle/ruffle-nightly.spec b/anda/apps/ruffle/ruffle-nightly.spec index 90396b67d5..575d4ab36e 100644 --- a/anda/apps/ruffle/ruffle-nightly.spec +++ b/anda/apps/ruffle/ruffle-nightly.spec @@ -1,4 +1,4 @@ -%global ver 2025-06-28 +%global ver 2025-07-09 %global goodver %(echo %ver | sed 's/-//g') %global __brp_mangle_shebangs %{nil} %bcond_without mold diff --git a/anda/apps/vencord-desktop/vencord-desktop.spec b/anda/apps/vencord-desktop/vencord-desktop.spec index 0a033b9f2e..8cae730453 100644 --- a/anda/apps/vencord-desktop/vencord-desktop.spec +++ b/anda/apps/vencord-desktop/vencord-desktop.spec @@ -6,7 +6,7 @@ Name: vencord-desktop Provides: VencordDesktop = %{version}-%{release} -Version: 1.5.7 +Version: 1.5.8 Release: 1%?dist License: GPL-3.0 Summary: Vesktop is a cross platform desktop app aiming to give you a snappier Discord experience with Vencord pre-installed diff --git a/anda/apps/voicevox/voicevox.spec b/anda/apps/voicevox/voicevox.spec index 2a552efd1c..8bb281d576 100644 --- a/anda/apps/voicevox/voicevox.spec +++ b/anda/apps/voicevox/voicevox.spec @@ -13,7 +13,7 @@ %global __requires_exclude ^((libffmpeg[.]so.*)|(lib.*\\.so.*))$ Name: voicevox -Version: 0.24.0 +Version: 0.24.2 Release: 1%?dist Summary: Free Japanese text-to-speech editor License: LGPL-3.0 diff --git a/anda/apps/vpkedit/vpkedit.spec b/anda/apps/vpkedit/vpkedit.spec index 01a3e30b47..9798f67534 100644 --- a/anda/apps/vpkedit/vpkedit.spec +++ b/anda/apps/vpkedit/vpkedit.spec @@ -1,6 +1,6 @@ Name: vpkedit Version: 4.4.2 -Release: 2%?dist +Release: 3%?dist Summary: A CLI/GUI tool to create, read, and write several pack file formats License: MIT URL: https://github.com/craftablescience/VPKEdit @@ -27,7 +27,8 @@ new VPKs. %build %cmake -DCMAKE_INSTALL_PREFIX=%_libdir/%name \ - -DBUILD_SHARED_LIBS:BOOL=OFF + -DBUILD_SHARED_LIBS:BOOL=OFF \ + -DCMAKE_BUILD_TYPE=Release # -DVPKEDIT_BUILD_LIBC=ON %cmake_build @@ -35,7 +36,7 @@ new VPKs. %install %cmake_install pushd %buildroot%_libdir/%name -rm -rf libQt* +rm -rf {libQt*,*.md,LICENSE} popd ln -sf %_libdir/vpkedit/vpkedit %buildroot%_bindir/vpkedit ln -sf %_libdir/vpkedit/vpkeditcli %buildroot%_bindir/vpkeditcli diff --git a/anda/desktops/kde/kf6-kio/kf6-kio.spec b/anda/desktops/kde/kf6-kio/kf6-kio.spec index 212bec110a..158a5f19fd 100644 --- a/anda/desktops/kde/kf6-kio/kf6-kio.spec +++ b/anda/desktops/kde/kf6-kio/kf6-kio.spec @@ -1,7 +1,7 @@ %global framework kio %global stable_kf6 stable -%global majmin_ver_kf6 6.15 +%global majmin_ver_kf6 6.16 Name: kf6-%{framework} Version: %{majmin_ver_kf6}.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 83c090b211..9be9b3a0b1 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 7e2a9cb7fa3877f2096bbbcd477a624ec4f10fe4 +%global commit d10dc96fed940a01e129aae5202403aa61148c5d %forgemeta Name: lomiri-system-settings diff --git a/anda/desktops/waylands/eww/eww.spec b/anda/desktops/waylands/eww/eww.spec index 80da3a42c0..1a8d9634df 100644 --- a/anda/desktops/waylands/eww/eww.spec +++ b/anda/desktops/waylands/eww/eww.spec @@ -1,7 +1,7 @@ # Generated by rust2rpm 27 -%global commit 0e409d4a52bd3d37d0aa0ad4e2d7f3b9a8adcdb7 +%global commit fddb4a09b107237819e661151e007b99b5cab36d %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20250617 +%global commit_date 20250630 %global ver v0.6.0 %bcond check 0 diff --git a/anda/desktops/waylands/hyprgraphics/hyprgraphics.nightly.spec b/anda/desktops/waylands/hyprgraphics/hyprgraphics.nightly.spec index 639f9863fe..3d336bf650 100644 --- a/anda/desktops/waylands/hyprgraphics/hyprgraphics.nightly.spec +++ b/anda/desktops/waylands/hyprgraphics/hyprgraphics.nightly.spec @@ -2,8 +2,8 @@ %global realname hyprgraphics %global ver 0.1.4 -%global commit b3d628d01693fb9bb0a6690cd4e7b80abda04310 -%global commit_date 20250623 +%global commit b841473a0bd4a1a74a0b64f1ec2ab199035c349f +%global commit_date 20250707 %global shortcommit %{sub %commit 1 7} %bcond libjxl 1 diff --git a/anda/desktops/waylands/hyprutils/hyprutils.nightly.spec b/anda/desktops/waylands/hyprutils/hyprutils.nightly.spec index 84d1217409..e0d15f7b28 100644 --- a/anda/desktops/waylands/hyprutils/hyprutils.nightly.spec +++ b/anda/desktops/waylands/hyprutils/hyprutils.nightly.spec @@ -1,10 +1,10 @@ #? https://src.fedoraproject.org/rpms/hyprutils/blob/rawhide/f/hyprutils.spec %global realname hyprutils -%global ver 0.8.0 +%global ver 0.8.1 -%global commit 4737241eaf8a1e51671a2a088518071f9a265cf4 -%global commit_date 20250628 +%global commit a8229739cf36d159001cfc203871917b83fdf917 +%global commit_date 20250708 %global shortcommit %{sub %commit 1 7} Name: %realname.nightly diff --git a/anda/desktops/waylands/hyprwayland-scanner/hyprwayland-scanner.nightly.spec b/anda/desktops/waylands/hyprwayland-scanner/hyprwayland-scanner.nightly.spec index 5aba8ce93f..6ac7409f5e 100644 --- a/anda/desktops/waylands/hyprwayland-scanner/hyprwayland-scanner.nightly.spec +++ b/anda/desktops/waylands/hyprwayland-scanner/hyprwayland-scanner.nightly.spec @@ -1,10 +1,10 @@ #? https://src.fedoraproject.org/rpms/hyprwayland-scanner/blob/rawhide/f/hyprwayland-scanner.spec %global realname hyprwayland-scanner -%global ver 0.4.4 -%global commit aa38edd6e3e277ae6a97ea83a69261a5c3aab9fd +%global ver 0.4.5 +%global commit fcca0c61f988a9d092cbb33e906775014c61579d %global shortcommit %{sub %commit 1 7} -%global commit_date 20250620 +%global commit_date 20250708 Name: %realname.nightly Version: %ver^%{commit_date}git.%shortcommit diff --git a/anda/desktops/waylands/walker/golang-github-abenz1267-walker.spec b/anda/desktops/waylands/walker/golang-github-abenz1267-walker.spec index c5b9a0d39b..d98c0d55dd 100644 --- a/anda/desktops/waylands/walker/golang-github-abenz1267-walker.spec +++ b/anda/desktops/waylands/walker/golang-github-abenz1267-walker.spec @@ -12,7 +12,7 @@ # https://github.com/abenz1267/walker %global goipath github.com/abenz1267/walker -Version: 0.12.23 +Version: 0.12.31 %gometa -f diff --git a/anda/devs/atac/atac.spec b/anda/devs/atac/atac.spec index cd96f54a61..e9ae8387e3 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.20.1 +Version: 0.20.2 Release: 1%?dist Summary: Arguably a Terminal API Client diff --git a/anda/devs/backport/anda.hcl b/anda/devs/backport/anda.hcl new file mode 100644 index 0000000000..4ba8d7de29 --- /dev/null +++ b/anda/devs/backport/anda.hcl @@ -0,0 +1,6 @@ +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 new file mode 100644 index 0000000000..012dad3a40 --- /dev/null +++ b/anda/devs/backport/nodejs-backport.spec @@ -0,0 +1,61 @@ +%global debug_package %{nil} +%global module backport +%bcond test 1 + +Name: node-%{module} +Version: 10.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 +BuildRequires: nodejs-packaging +BuildRequires: nodejs-npm +ExclusiveArch: %{nodejs_arches} 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} + +%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} + +# 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 + +%check +%if %{with test} +NODE_ENV=test %{builddir}/bin/%{module} -R tests +%endif + +%files +%doc CHANGELOG.md +%doc README.md +%license LICENSE.txt +%license LICENSE.modules +%{nodejs_sitelib}/%{module}/ +%{_bindir}/%{module} + +%changelog +* 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 new file mode 100644 index 0000000000..7ec2290326 --- /dev/null +++ b/anda/devs/backport/post.rhai @@ -0,0 +1 @@ +sh("rm -rfv anda/devs/backport/*.tar.bz2", #{}); diff --git a/anda/devs/backport/setup.sh b/anda/devs/backport/setup.sh new file mode 100755 index 0000000000..a6a7359998 --- /dev/null +++ b/anda/devs/backport/setup.sh @@ -0,0 +1,28 @@ +#!/usr/bin/bash + +## Some sources need to be fetched BEFORE the build process +# Also I'm just better at scripting in Bash and calling the Rhai sh function hundreds of times times sounded like hell +# Have I mentioned I hate runtime languages? + +node=backport +# Enable logs for debugging +set -x +# I guess just $PWD doesn't work for this +builddir=$(pwd)/anda/devs/$node + +# We only need the tests folder so sourcing the whole repo is overkill, Git can make a tarball of specific directories + +pushd $builddir +ver=$(cat ./*.spec | grep -P -m1 'Version:' | sed -e 's/Version://g' -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//') +url=$(sed -n 's/^URL:\s\(.*\)$/\1/p' ./*.spec | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//' -e "s/%{module}/$node/") +dir=$node + +git clone --recurse-submodules -j$(nproc) $url.git + +pushd $dir +# I'm not sure why .tar.bz2 is the tar format of choice for this but it's also what Fedora does so it's what I'm doing +git archive --format=tar --prefix=tests/ v${ver}:src/test/ | bzip2 > ../tests-${ver}.tar.bz2 +popd +rm -rf $dir + +exit 0 diff --git a/anda/devs/backport/update.rhai b/anda/devs/backport/update.rhai new file mode 100644 index 0000000000..77c845c194 --- /dev/null +++ b/anda/devs/backport/update.rhai @@ -0,0 +1 @@ +rpm.version(npm("backport")); diff --git a/anda/devs/bun/bun-bin.spec b/anda/devs/bun/bun-bin.spec index 0efa6cc6e8..afffabfcb9 100644 --- a/anda/devs/bun/bun-bin.spec +++ b/anda/devs/bun/bun-bin.spec @@ -6,7 +6,7 @@ %endif Name: bun-bin -Version: 1.2.17 +Version: 1.2.18 Release: 1%?dist Summary: Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one License: MIT diff --git a/anda/devs/flutter/flutter.spec b/anda/devs/flutter/flutter.spec index 84f73d5664..84a7f16ab3 100644 --- a/anda/devs/flutter/flutter.spec +++ b/anda/devs/flutter/flutter.spec @@ -1,5 +1,5 @@ Name: flutter -Version: 3.32.5 +Version: 3.32.6 Release: 1%?dist Summary: SDK for crafting beautiful, fast user experiences from a single codebase License: BSD-3-Clause diff --git a/anda/devs/ghostty/nightly/ghostty-nightly.spec b/anda/devs/ghostty/nightly/ghostty-nightly.spec index c967946ed4..fd38b70e45 100644 --- a/anda/devs/ghostty/nightly/ghostty-nightly.spec +++ b/anda/devs/ghostty/nightly/ghostty-nightly.spec @@ -1,11 +1,11 @@ -%global commit 98b1af8353077b608713d30a9863cbc6e008d034 +%global commit f0549e182edd389f0bde38b60ae7cf6c1b68712b %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global fulldate 2025-06-27 +%global fulldate 2025-07-08 %global commit_date %(echo %{fulldate} | sed 's/-//g') %global public_key RWQlAjJC23149WL2sEpT/l0QKy7hMIFhYdQOFy0Z7z7PbneUgvlsnYcV %global ver 1.1.4 %global base_name ghostty -%global reverse_dns com.mitchellh.%{base_name} +%global appid com.mitchellh.%{base_name} Name: %{base_name}-nightly Version: %{ver}~tip^%{commit_date}git%{shortcommit} @@ -27,6 +27,7 @@ BuildRequires: minisign BuildRequires: ncurses BuildRequires: ncurses-devel BuildRequires: pandoc-cli +BuildRequires: systemd-rpm-macros BuildRequires: zig >= 0.14.0 BuildRequires: zig-rpm-macros BuildRequires: pkgconfig(blueprint-compiler) @@ -43,6 +44,7 @@ BuildRequires: pkgconfig(oniguruma) BuildRequires: pkgconfig(zlib) Requires: %{name}-terminfo = %{evr} Requires: %{name}-shell-integration = %{evr} +Requires: (%{name}-kio = %{evr} if kf6-kio) Requires: gtk4 Requires: gtk4-layer-shell Requires: libadwaita @@ -96,6 +98,54 @@ BuildArch: noarch %description zsh-completion Zsh shell completion for Ghostty. +%package kio +Summary: KIO support for Ghostty +Requires: %{name} = %{evr} +BuildArch: noarch + +%description kio +This package allows Ghostty to interact with KIO. + +%package nautilus +Summary: Nautilus menu support for Ghostty +Supplements: (%{name} and nautilus) +Requires: %{name} = %{evr} +BuildArch: noarch + +%description nautilus +This package enables Nautilus integration for Ghostty. + +%package vim +Summary: Vim plugins for Ghostty +Supplements: (%{name} and vim-filesystem) +Requires: %{name} = %{evr} +Requires: vim-enhanced +Requires: vim-filesystem +BuildArch: noarch + +%description vim +This package provides the Ghostty Vim plugins. + +%package neovim +Summary: Neovim plugins for Ghostty +Supplements: (%{name} and neovim) +Requires: %{name} = %{evr} +Requires: neovim +BuildArch: noarch + +%description neovim +This package provides the Neovim plugins for Ghostty. + +%package bat-syntax +Summary: Bat syntax for Ghostty +Supplements: (%{name} and bat) +Requires: %{name} = %{evr} +Requires: bat +BuildArch: noarch + +%description bat-syntax +This package provides the Bat syntax files for Ghostty. + %package shell-integration Summary: Ghostty shell integration Supplements: %{name} @@ -145,40 +195,31 @@ DESTDIR="%{buildroot}" \ rm -rf %{buildroot}%{_datadir}/terminfo/g/%{base_name} %endif -%find_lang %{reverse_dns} +%find_lang %{appid} -%files -f %{reverse_dns}.lang +%files -f %{appid}.lang %doc README.md %license LICENSE %{_bindir}/%{base_name} -%{_datadir}/applications/%{reverse_dns}.desktop -%{_datadir}/bat/syntaxes/%{base_name}.sublime-syntax +%{_datadir}/applications/%{appid}.desktop %dir %{_datadir}/%{base_name} %{_datadir}/%{base_name}/doc %{_datadir}/%{base_name}/themes -%{_datadir}/kio/servicemenus/%{reverse_dns}.desktop -%{_datadir}/metainfo/%{reverse_dns}.metainfo.xml -%{_datadir}/nautilus-python/extensions/%{base_name}.py -%{_datadir}/nvim/site/compiler/%{base_name}.vim -%{_datadir}/nvim/site/ftdetect/%{base_name}.vim -%{_datadir}/nvim/site/ftplugin/%{base_name}.vim -%{_datadir}/nvim/site/syntax/%{base_name}.vim -%{_datadir}/vim/vimfiles/compiler/%{base_name}.vim -%{_datadir}/vim/vimfiles/ftdetect/%{base_name}.vim -%{_datadir}/vim/vimfiles/ftplugin/%{base_name}.vim -%{_datadir}/vim/vimfiles/syntax/%{base_name}.vim -%{_iconsdir}/hicolor/16x16/apps/%{reverse_dns}.png -%{_iconsdir}/hicolor/16x16@2/apps/%{reverse_dns}.png -%{_iconsdir}/hicolor/32x32/apps/%{reverse_dns}.png -%{_iconsdir}/hicolor/32x32@2/apps/%{reverse_dns}.png -%{_iconsdir}/hicolor/128x128/apps/%{reverse_dns}.png -%{_iconsdir}/hicolor/128x128@2/apps/%{reverse_dns}.png -%{_iconsdir}/hicolor/256x256/apps/%{reverse_dns}.png -%{_iconsdir}/hicolor/256x256@2/apps/%{reverse_dns}.png -%{_iconsdir}/hicolor/512x512/apps/%{reverse_dns}.png -%{_iconsdir}/hicolor/1024x1024/apps/%{reverse_dns}.png +%{_datadir}/metainfo/%{appid}.metainfo.xml +%{_datadir}/dbus-1/services/%{appid}.service +%{_iconsdir}/hicolor/16x16/apps/%{appid}.png +%{_iconsdir}/hicolor/16x16@2/apps/%{appid}.png +%{_iconsdir}/hicolor/32x32/apps/%{appid}.png +%{_iconsdir}/hicolor/32x32@2/apps/%{appid}.png +%{_iconsdir}/hicolor/128x128/apps/%{appid}.png +%{_iconsdir}/hicolor/128x128@2/apps/%{appid}.png +%{_iconsdir}/hicolor/256x256/apps/%{appid}.png +%{_iconsdir}/hicolor/256x256@2/apps/%{appid}.png +%{_iconsdir}/hicolor/512x512/apps/%{appid}.png +%{_iconsdir}/hicolor/1024x1024/apps/%{appid}.png %{_mandir}/man1/%{base_name}.1.gz %{_mandir}/man5/%{base_name}.5.gz +%{_userunitdir}/%{appid}.service %files bash-completion %{bash_completions_dir}/%{base_name}.bash @@ -189,6 +230,27 @@ rm -rf %{buildroot}%{_datadir}/terminfo/g/%{base_name} %files zsh-completion %{zsh_completions_dir}/_%{base_name} +%files kio +%{_datadir}/kio/servicemenus/%{appid}.desktop + +%files nautilus +%{_datadir}/nautilus-python/extensions/%{base_name}.py + +%files vim +%{_datadir}/vim/vimfiles/compiler/%{base_name}.vim +%{_datadir}/vim/vimfiles/ftdetect/%{base_name}.vim +%{_datadir}/vim/vimfiles/ftplugin/%{base_name}.vim +%{_datadir}/vim/vimfiles/syntax/%{base_name}.vim + +%files neovim +%{_datadir}/nvim/site/compiler/%{base_name}.vim +%{_datadir}/nvim/site/ftdetect/%{base_name}.vim +%{_datadir}/nvim/site/ftplugin/%{base_name}.vim +%{_datadir}/nvim/site/syntax/%{base_name}.vim + +%files bat-syntax +%{_datadir}/bat/syntaxes/%{base_name}.sublime-syntax + %files shell-integration %dir %{_datadir}/%{base_name}/shell-integration %{_datadir}/%{base_name}/shell-integration/bash/bash-preexec.sh @@ -204,6 +266,15 @@ rm -rf %{buildroot}%{_datadir}/terminfo/g/%{base_name} %endif %{_datadir}/terminfo/x/xterm-%{base_name} +%post +%systemd_user_post %{appid}.service + +%preun +%systemd_user_preun %{appid}.service + +%postun +%systemd_user_postun %{appid}.service + %changelog * Sat May 31 2025 Gilver E. - 1.1.4~tip^20250531git1ff9162 - Updated for Zig 0.14.0 diff --git a/anda/devs/ghostty/stable/ghostty.spec b/anda/devs/ghostty/stable/ghostty.spec index 212f0db020..fb73d22007 100644 --- a/anda/devs/ghostty/stable/ghostty.spec +++ b/anda/devs/ghostty/stable/ghostty.spec @@ -1,19 +1,16 @@ # Signing key from https://github.com/ghostty-org/ghostty/blob/main/PACKAGING.md %global public_key RWQlAjJC23149WL2sEpT/l0QKy7hMIFhYdQOFy0Z7z7PbneUgvlsnYcV -%if 0%{?fedora} <= 40 -%global cache_dir %{_builddir}/zig-cache -%else -%global cache_dir %{builddir}/zig-cache -%endif +%global appid com.mitchellh.ghostty Name: ghostty Version: 1.1.3 -Release: 1%?dist +Release: 2%?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/ Source0: https://release.files.ghostty.org/%{version}/ghostty-%{version}.tar.gz Source1: https://release.files.ghostty.org/%{version}/ghostty-%{version}.tar.gz.minisig +BuildRequires: anda-srpm-macros >= 0.2.15 BuildRequires: gtk4-devel BuildRequires: libadwaita-devel BuildRequires: libX11-devel @@ -21,7 +18,8 @@ BuildRequires: minisign BuildRequires: ncurses BuildRequires: ncurses-devel BuildRequires: pandoc-cli -BuildRequires: zig +BuildRequires: zig >= 0.14.0 +BuildRequires: zig-rpm-macros BuildRequires: pkgconfig(bzip2) BuildRequires: pkgconfig(freetype2) BuildRequires: pkgconfig(fontconfig) @@ -34,6 +32,7 @@ BuildRequires: pkgconfig(oniguruma) BuildRequires: pkgconfig(zlib) Requires: %{name}-terminfo = %{version}-%{release} Requires: %{name}-shell-integration = %{version}-%{release} +Requires: (%{name}-kio = %{evr} if kf6-kio) Requires: gtk4 Requires: libadwaita Conflicts: ghostty-nightly @@ -72,6 +71,54 @@ BuildArch: noarch %description zsh-completion Zsh shell completion for Ghostty. +%package kio +Summary: KIO support for Ghostty +Requires: %{name} = %{evr} +BuildArch: noarch + +%description kio +This package allows Ghostty to interact with KIO. + +%package nautilus +Summary: Nautilus menu support for Ghostty +Supplements: (%{name} and nautilus) +Requires: %{name} = %{evr} +BuildArch: noarch + +%description nautilus +This package enables Nautilus integration for Ghostty. + +%package vim +Summary: Vim plugins for Ghostty +Supplements: (%{name} and vim-filesystem) +Requires: %{name} = %{evr} +Requires: vim-enhanced +Requires: vim-filesystem +BuildArch: noarch + +%description vim +This package provides the Ghostty Vim plugins. + +%package neovim +Summary: Neovim plugins for Ghostty +Supplements: (%{name} and neovim) +Requires: %{name} = %{evr} +Requires: neovim +BuildArch: noarch + +%description neovim +This package provides the Neovim plugins for Ghostty. + +%package bat-syntax +Summary: Bat syntax for Ghostty +Supplements: (%{name} and bat) +Requires: %{name} = %{evr} +Requires: bat +BuildArch: noarch + +%description bat-syntax +This package provides the Bat syntax files for Ghostty. + %package shell-integration Summary: Ghostty shell integration Supplements: %{name} @@ -86,6 +133,7 @@ Supplements: %{name} %if 0%{?fedora} >= 42 Requires: ncurses-term >= 6.5-5.20250125%{?dist} %endif +Obsoletes: %{name}-terminfo-source < %{evr} BuildArch: noarch %description terminfo @@ -104,7 +152,7 @@ Source files for Ghostty's terminfo. Available for debugging use. /usr/bin/minisign -V -m %{SOURCE0} -x %{SOURCE1} -P %{public_key} %autosetup -export ZIG_GLOBAL_CACHE_DIR="%{cache_dir}" +export ZIG_GLOBAL_CACHE_DIR="%{_zig_cache_dir}" zig build --fetch zig fetch git+https://github.com/zigimg/zigimg#3a667bdb3d7f0955a5a51c8468eac83210c1439e zig fetch git+https://github.com/mitchellh/libxev#f6a672a78436d8efee1aa847a43a900ad773618b @@ -113,20 +161,13 @@ zig fetch git+https://github.com/mitchellh/libxev#f6a672a78436d8efee1aa847a43a90 %install DESTDIR="%{buildroot}" \ -zig build \ - --summary all \ - --release=fast \ - --system "%{cache_dir}/p" \ +%{zig_build_target -r fast} \ --prefix "%{_prefix}" --prefix-lib-dir "%{_libdir}" \ --prefix-exe-dir "%{_bindir}" --prefix-include-dir "%{_includedir}" \ - --verbose \ - -Dversion-string=%{version} \ - -Dcpu=baseline \ + -Dversion-string="%{version}" \ -Dstrip=false \ -Dpie=true \ - -Demit-docs \ - -Demit-termcap \ - -Demit-terminfo + -Demit-docs #Don't conflict with ncurses-term on F42 and up %if 0%{?fedora} >= 42 @@ -136,49 +177,65 @@ rm -rf %{buildroot}%{_datadir}/terminfo/g/ghostty %files %doc README.md %license LICENSE -%{_bindir}/ghostty -%{_datadir}/applications/com.mitchellh.ghostty.desktop -%{_datadir}/bat/syntaxes/ghostty.sublime-syntax -%{_datadir}/ghostty/ -%{_datadir}/kio/servicemenus/com.mitchellh.ghostty.desktop -%{_datadir}/nautilus-python/extensions/ghostty.py -%{_datadir}/nvim/site/compiler/ghostty.vim -%{_datadir}/nvim/site/ftdetect/ghostty.vim -%{_datadir}/nvim/site/ftplugin/ghostty.vim -%{_datadir}/nvim/site/syntax/ghostty.vim -%{_datadir}/vim/vimfiles/compiler/ghostty.vim -%{_datadir}/vim/vimfiles/ftdetect/ghostty.vim -%{_datadir}/vim/vimfiles/ftplugin/ghostty.vim -%{_datadir}/vim/vimfiles/syntax/ghostty.vim -%{_iconsdir}/hicolor/16x16/apps/com.mitchellh.ghostty.png -%{_iconsdir}/hicolor/16x16@2/apps/com.mitchellh.ghostty.png -%{_iconsdir}/hicolor/32x32/apps/com.mitchellh.ghostty.png -%{_iconsdir}/hicolor/32x32@2/apps/com.mitchellh.ghostty.png -%{_iconsdir}/hicolor/128x128/apps/com.mitchellh.ghostty.png -%{_iconsdir}/hicolor/128x128@2/apps/com.mitchellh.ghostty.png -%{_iconsdir}/hicolor/256x256/apps/com.mitchellh.ghostty.png -%{_iconsdir}/hicolor/256x256@2/apps/com.mitchellh.ghostty.png -%{_iconsdir}/hicolor/512x512/apps/com.mitchellh.ghostty.png -%{_iconsdir}/hicolor/1024x1024/apps/com.mitchellh.ghostty.png -%{_mandir}/man1/ghostty.1.gz -%{_mandir}/man5/ghostty.5.gz +%{_bindir}/%{name} +%{_datadir}/applications/%{appid}.desktop +%dir %{_datadir}/%{name} +%{_datadir}/%{name}/doc +%{_datadir}/%{name}/themes +%{_datadir}/metainfo/%{appid}.metainfo.xml +%{_iconsdir}/hicolor/16x16/apps/%{appid}.png +%{_iconsdir}/hicolor/16x16@2/apps/%{appid}.png +%{_iconsdir}/hicolor/32x32/apps/%{appid}.png +%{_iconsdir}/hicolor/32x32@2/apps/%{appid}.png +%{_iconsdir}/hicolor/128x128/apps/%{appid}.png +%{_iconsdir}/hicolor/128x128@2/apps/%{appid}.png +%{_iconsdir}/hicolor/256x256/apps/%{appid}.png +%{_iconsdir}/hicolor/256x256@2/apps/%{appid}.png +%{_iconsdir}/hicolor/512x512/apps/%{appid}.png +%{_iconsdir}/hicolor/1024x1024/apps/%{appid}.png +%{_mandir}/man1/%{name}.1.gz +%{_mandir}/man5/%{name}.5.gz +%{_userunitdir}/%{appid}.service +%{_prefix}/lib/dbus-1/services/%{appid}.service %files bash-completion -%{bash_completions_dir}/ghostty.bash +%{bash_completions_dir}/%{name}.bash %files fish-completion -%{fish_completions_dir}/ghostty.fish +%{fish_completions_dir}/%{name}.fish %files zsh-completion -%{zsh_completions_dir}/_ghostty +%{zsh_completions_dir}/_%{name} + +%files kio +%{_datadir}/kio/servicemenus/%{appid}.desktop + +%files nautilus +%{_datadir}/nautilus-python/extensions/%{name}.py + +%files vim +%{_datadir}/vim/vimfiles/compiler/%{name}.vim +%{_datadir}/vim/vimfiles/ftdetect/%{name}.vim +%{_datadir}/vim/vimfiles/ftplugin/%{name}.vim +%{_datadir}/vim/vimfiles/syntax/%{name}.vim + +%files neovim +%{_datadir}/nvim/site/compiler/%{name}.vim +%{_datadir}/nvim/site/ftdetect/%{name}.vim +%{_datadir}/nvim/site/ftplugin/%{name}.vim +%{_datadir}/nvim/site/syntax/%{name}.vim + +%files bat-syntax +%{_datadir}/bat/syntaxes/%{name}.sublime-syntax %files shell-integration -%{_datadir}/ghostty/shell-integration/bash/bash-preexec.sh -%{_datadir}/ghostty/shell-integration/bash/ghostty.bash -%{_datadir}/ghostty/shell-integration/elvish/lib/ghostty-integration.elv -%{_datadir}/ghostty/shell-integration/fish/vendor_conf.d/ghostty-shell-integration.fish -%{_datadir}/ghostty/shell-integration/zsh/.zshenv -%{_datadir}/ghostty/shell-integration/zsh/ghostty-integration +%dir %{_datadir}/%{name}/shell-integration +%{_datadir}/%{name}/shell-integration/bash/bash-preexec.sh +%{_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/zsh/.zshenv +%{_datadir}/%{name}/shell-integration/zsh/%{name}-integration %files terminfo %if 0%{?fedora} < 42 diff --git a/anda/devs/micro/micro-nightly.spec b/anda/devs/micro/micro-nightly.spec index bb83bda4ac..40ea5d0f3d 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 da02f836ff273214fe78476c105c891101ce9a0c -%global commit_date 20250626 +%global commit_hash 55a553041bba7fb11e4e5f90bdc1a44ae706432b +%global commit_date 20250709 %global shortcommit %{sub %{commit_hash} 1 7} %global ver 2.0.14 diff --git a/anda/devs/zed/nightly/zed-nightly.spec b/anda/devs/zed/nightly/zed-nightly.spec index 40a3d0f475..88646de45d 100644 --- a/anda/devs/zed/nightly/zed-nightly.spec +++ b/anda/devs/zed/nightly/zed-nightly.spec @@ -1,9 +1,10 @@ -%global commit bbf16bda75587626cc1e2bb959e714d817aeffec +%global commit df57754baf64b118972ee3c42f68a0acc23989ff %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20250628 -%global ver 0.194.0 +%global commit_date 20250709 +%global ver 0.195.0 %bcond_with check +%bcond nightly 1 # Exclude input files from mangling %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ @@ -47,6 +48,9 @@ BuildRequires: perl-IPC-Cmd BuildRequires: perl-File-Compare BuildRequires: perl-File-Copy BuildRequires: perl-lib +%if %{with nightly} +BuildRequires: rustup +%endif BuildRequires: vulkan-loader %description @@ -54,6 +58,9 @@ Code at the speed of thought - Zed is a high-performance, multiplayer code edito %prep %autosetup -n %{crate}-%{commit} -p1 +%if %{with nightly} +%rustup_nightly +%endif %cargo_prep_online export DO_STARTUP_NOTIFY="true" diff --git a/anda/devs/zed/preview/zed-preview.spec b/anda/devs/zed/preview/zed-preview.spec index 877556ae3f..16b62a30cb 100644 --- a/anda/devs/zed/preview/zed-preview.spec +++ b/anda/devs/zed/preview/zed-preview.spec @@ -1,6 +1,6 @@ %bcond_with check -%global ver 0.193.2-pre +%global ver 0.195.0-pre # Exclude input files from mangling %global __brp_mangle_shebangs_exclude_from ^/usr/src/.*$ diff --git a/anda/devs/zed/stable/zed.spec b/anda/devs/zed/stable/zed.spec index 3c853af017..d596b80def 100644 --- a/anda/devs/zed/stable/zed.spec +++ b/anda/devs/zed/stable/zed.spec @@ -9,7 +9,7 @@ %global rustflags_debuginfo 0 Name: zed -Version: 0.192.7 +Version: 0.194.3 Release: 1%?dist Summary: Zed is a high-performance, multiplayer code editor SourceLicense: AGPL-3.0-only AND Apache-2.0 AND GPL-3.0-or-later diff --git a/anda/fonts/nerd-fonts/anda.hcl b/anda/fonts/nerd-fonts/anda.hcl index db05b8ecef..50ebcbb342 100644 --- a/anda/fonts/nerd-fonts/anda.hcl +++ b/anda/fonts/nerd-fonts/anda.hcl @@ -3,4 +3,7 @@ project pkg { rpm { spec = "nerd-fonts.spec" } + labels { + no_upload_srpms = 1 + } } diff --git a/anda/fonts/sarasa-gothic/sarasa-gothic-fonts.spec b/anda/fonts/sarasa-gothic/sarasa-gothic-fonts.spec index f158119a67..734d27d16e 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.30 +Version: 1.0.31 Release: 1%?dist URL: https://github.com/be5invis/Sarasa-Gothic Source0: %url/releases/download/v%version/Sarasa-TTC-%version.7z diff --git a/anda/games/inputplumber/inputplumber.spec b/anda/games/inputplumber/inputplumber.spec index 93b63019ed..a72ffb0d2b 100644 --- a/anda/games/inputplumber/inputplumber.spec +++ b/anda/games/inputplumber/inputplumber.spec @@ -1,7 +1,7 @@ %global __brp_mangle_shebangs %{nil} Name: inputplumber -Version: 0.59.2 +Version: 0.59.3 Release: 1%?dist Summary: Open source input router and remapper daemon for Linux License: GPL-3.0-or-later diff --git a/anda/games/opengamepadui/opengamepadui.spec b/anda/games/opengamepadui/opengamepadui.spec index 6562a692dc..62be42a00c 100644 --- a/anda/games/opengamepadui/opengamepadui.spec +++ b/anda/games/opengamepadui/opengamepadui.spec @@ -1,5 +1,5 @@ Name: opengamepadui -Version: 0.40.2 +Version: 0.40.4 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 ab6a18d377..dae2dbc230 100644 --- a/anda/games/osu-lazer/osu-lazer.spec +++ b/anda/games/osu-lazer/osu-lazer.spec @@ -1,4 +1,4 @@ -%define osuresver 2025.605.0 +%define osuresver 2025.708.0 %global debug_package %{nil} %define __strip /bin/true diff --git a/anda/games/prismlauncher-nightly/prismlauncher-nightly.spec b/anda/games/prismlauncher-nightly/prismlauncher-nightly.spec index 259cc7ffce..7f9f6f1747 100644 --- a/anda/games/prismlauncher-nightly/prismlauncher-nightly.spec +++ b/anda/games/prismlauncher-nightly/prismlauncher-nightly.spec @@ -1,10 +1,10 @@ %global real_name prismlauncher %global nice_name PrismLauncher -%global commit 497cea0bd538450512339fa0ed3dd9783d8a8d9b +%global commit 822b10e46ec609a9793a5c6f080c2a5875dbd3da %global shortcommit %(c=%{commit}; echo ${c:0:7}) -%global commit_date 20250628 +%global commit_date 20250708 %global snapshot_info %{commit_date}.%{shortcommit} %bcond_without qt6 diff --git a/anda/games/terra-gamescope/terra-gamescope.spec b/anda/games/terra-gamescope/terra-gamescope.spec index 6bdb023131..087dd1e74f 100755 --- a/anda/games/terra-gamescope/terra-gamescope.spec +++ b/anda/games/terra-gamescope/terra-gamescope.spec @@ -9,7 +9,7 @@ Name: terra-gamescope #Version: 100.%{gamescope_tag} Version: 104.%{short_commit} -Release: 1%?dist +Release: 2%?dist Summary: Micro-compositor for video games on Wayland License: BSD @@ -86,7 +86,9 @@ BuildRequires: git Requires: libliftoff%{?_isa} >= %{libliftoff_minver} Requires: xorg-x11-server-Xwayland Requires: terra-gamescope-libs = %{version}-%{release} +%ifarch x86_64 Requires: terra-gamescope-libs(x86-32) = %{version}-%{release} +%endif Recommends: mesa-dri-drivers Recommends: mesa-vulkan-drivers diff --git a/anda/games/umu/umu-launcher.spec b/anda/games/umu/umu-launcher.spec index 0b16997b93..ab091bf08a 100644 --- a/anda/games/umu/umu-launcher.spec +++ b/anda/games/umu/umu-launcher.spec @@ -1,6 +1,6 @@ Name: umu-launcher -Version: 1.2.6 -Release: 2%?dist +Version: 1.2.7 +Release: 1%?dist Summary: A tool for launching non-steam games with proton License: GPL-3.0-only diff --git a/anda/langs/go/chezmoi/chezmoi.spec b/anda/langs/go/chezmoi/chezmoi.spec index af878218a9..cb4e20e345 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.62.7 +Version: 2.63.0 %gometa -f diff --git a/anda/langs/go/gh-act/gh-act.spec b/anda/langs/go/gh-act/gh-act.spec index 54601dc284..b37297605a 100644 --- a/anda/langs/go/gh-act/gh-act.spec +++ b/anda/langs/go/gh-act/gh-act.spec @@ -12,7 +12,7 @@ # https://github.com/nektos/act %global goipath github.com/nektos/act -Version: 0.2.78 +Version: 0.2.79 %gometa -f diff --git a/anda/langs/go/lazygit/golang-github-jesseduffield-lazygit.spec b/anda/langs/go/lazygit/golang-github-jesseduffield-lazygit.spec index 3c527daed6..7a6855e81b 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.52.0 +Version: 0.53.0 %gometa -f 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 44e5b9abcd..3628babb36 100644 --- a/anda/langs/go/u-root/golang-github-u-root.spec +++ b/anda/langs/go/u-root/golang-github-u-root.spec @@ -1,74 +1,83 @@ -# Generated by go2rpm 1.9.0 -%bcond_without check -%define debug_package %nil +# Generated by go2rpm 1.16.0 +%bcond check 0 +%bcond bootstrap 0 + +%if %{with bootstrap} +%global debug_package %{nil} +%endif + +%if %{with bootstrap} +%global __requires_exclude %{?__requires_exclude:%{__requires_exclude}|}^golang\\(.*\\)$ +%endif # https://github.com/u-root/u-root %global goipath github.com/u-root/u-root Version: 0.14.0 +%global commit 5721ed3ad38a5c889e6c1ed5bbf5242f98a4b591 %gometa -f - %global common_description %{expand: A fully Go userland with Linux bootloaders! u-root can create a one-binary root file system (initramfs) containing a busybox-like set of tools written in Go.} %global golicenses LICENSE -%global godocs docs examples AUTHORS SECURITY.md tricksandtips.md\\\ - CONTRIBUTING.md README.md roadmap.md\\\ - cmds/core/tail/test_samples/read_backwards.txt\\\ - cmds/core/tail/test_samples/read_from_beginning.txt\\\ - cmds/exp/esxiboot/README.md\\\ - configs/README.md\\\ - configs/amd64_config.txt configs/arm_config.txt\\\ - configs/generic_config.txt integration/README.md\\\ - pkg/boot/systembooter/README.md pkg/smbios/README.md\\\ - pkg/tarutil/test2.txt pkg/tarutil/test0/a.txt\\\ - pkg/tarutil/test0/dir/b.txt pkg/tarutil/test1/a1.txt\\\ - tools/golang_patched_dce/README.md +%global godocs docs examples AUTHORS CONTRIBUTING.md README.md\\\ + SECURITY.md roadmap.md tricksandtips.md\\\ + cmds/exp/esxiboot/README.md cmds/exp/tftpd/README.md\\\ + cmds/exp/uefiboot/README.md cmds/exp/vmboot/README.md\\\ + configs/README.md configs/amd64_config.txt\\\ + configs/arm_config.txt configs/generic_config.txt\\\ + integration/README.md pkg/boot/systembooter/README.md\\\ + pkg/netcat/doc.md pkg/netstat/doc.md\\\ + pkg/smbios/README.md pkg/tc/readme.md\\\ + tools/golang_patched_dce/README.md tools/tinygo-\\\ + buildstatus/README.md tools/tinygobb/README.md -Name: %{goname} -Release: 1%?dist +Name: golang-github-u-root +Release: 2%?dist Summary: A fully Go userland with Linux bootloaders! u-root can create a one-binary root file system (initramfs) containing a busybox-like set of tools written in Go License: BSD-3-Clause URL: %{gourl} Source: %{gosource} -BuildRequires: anda-srpm-macros - %description %{common_description} %gopkg %prep -%goprep +%goprep -A %autopatch -p1 -go mod download - +%if %{without bootstrap} %build -go build -ldflags "-B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \n') -s -w -extldflags '--static-pie'" -buildmode=pie -tags 'osusergo,netgo,static_build' -v -x -o %{gobuilddir}/bin/u-root %{goipath} +%define gomodulesmode GO111MODULE=on +%gobuild -o %{gobuilddir}/bin/u-root %{goipath} +%endif %install %gopkginstall +%if %{without bootstrap} install -m 0755 -vd %{buildroot}%{_bindir} install -m 0755 -vp %{gobuilddir}/bin/* %{buildroot}%{_bindir}/ +%endif -# if {with check} -# check -# gocheck -# endif +%if %{without bootstrap} +%if %{with check} +%check +%gocheck +%endif +%endif +%if %{without bootstrap} %files %license LICENSE -%doc docs examples AUTHORS SECURITY.md tricksandtips.md CONTRIBUTING.md -%doc README.md roadmap.md cmds/core/tail/test_samples/read_backwards.txt -%doc cmds/core/tail/test_samples/read_from_beginning.txt -%doc configs/README.md tools/golang_patched_dce/README.md +%doc docs examples AUTHORS CONTRIBUTING.md README.md SECURITY.md roadmap.md +%doc tricksandtips.md %doc configs/amd64_config.txt configs/arm_config.txt configs/generic_config.txt -%doc integration/README.md pkg/boot/systembooter/README.md pkg/smbios/README.md -%{_bindir}/* +%{_bindir}/u-root +%endif %gopkgfiles diff --git a/anda/langs/nim/choosenim/choosenim.spec b/anda/langs/nim/choosenim/choosenim.spec index b5316aae49..d13b8fd4a1 100644 --- a/anda/langs/nim/choosenim/choosenim.spec +++ b/anda/langs/nim/choosenim/choosenim.spec @@ -1,6 +1,6 @@ Name: choosenim -Version: 0.8.12 +Version: 0.8.14 Release: 1%?dist Summary: Easily install and manage multiple versions of the Nim programming language License: BSD-3-Clause diff --git a/anda/langs/nim/grabnim/grabnim.spec b/anda/langs/nim/grabnim/grabnim.spec index bf74239ebd..7f9d488570 100644 --- a/anda/langs/nim/grabnim/grabnim.spec +++ b/anda/langs/nim/grabnim/grabnim.spec @@ -1,5 +1,5 @@ -%global commit 8499635c56018b22dd4efbd20e274fae045c569b -%global commit_date 20250628 +%global commit 6d94c5e4fdfb31f4d9aed99e70afffda346eb917 +%global commit_date 20250702 %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 eaaf20b0af..7a5124fe38 100644 --- a/anda/langs/nim/nim-nightly/nim-nightly.spec +++ b/anda/langs/nim/nim-nightly/nim-nightly.spec @@ -1,8 +1,8 @@ %global csrc_commit 561b417c65791cd8356b5f73620914ceff845d10 -%global commit 6bdb069a6651e419b2d808f488051322cd05d753 +%global commit 370ee61f6d1446b26a55dfdfe6e6f4a138880579 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global ver 2.3.1 -%global commit_date 20250628 +%global commit_date 20250709 %global debug_package %nil Name: nim-nightly @@ -19,8 +19,9 @@ BuildRequires: gcc mold git gcc-c++ nodejs openssl-devel pkgconfig(bash-completi Requires: redhat-rpm-config gcc Conflicts: choosenim # somehow wrong name and never noticed -Provides: nim-nightly = %version-%release Obsoletes: nim-nighlty < 2.1.1^20240404.9e1b170-2 +Conflicts: nim +Recommends: nim-nightly-tools nimble %description @@ -33,6 +34,7 @@ order of priority). Summary: Tools for Nim programming language Provides: nim-nightly-tools = %version-%release Obsoletes: nim-nighlty-tools < 2.1.1^20240404.9e1b170-2 +Conflicts: nim-tools %description tools Nim is a compiled, garbage-collected systems programming language with a @@ -102,7 +104,6 @@ sh ./install.sh %buildroot/usr/bin mkdir -p %buildroot/%_bindir %buildroot/%_datadir/bash-completion/completions %buildroot/usr/lib/nim %buildroot%_datadir install -Dpm755 bin/nim{grep,suggest,pretty} %buildroot/%_bindir install -Dpm644 tools/nim.bash-completion %buildroot/%_datadir/bash-completion/completions/nim -install -Dpm644 dist/nimble/nimble.bash-completion %buildroot/%_datadir/bash-completion/completions/nimble install -Dpm644 -t%buildroot/%_mandir/man1 %SOURCE1 %SOURCE2 %SOURCE4 mv %buildroot%_bindir/nim %buildroot%_datadir/ ln -s %_datadir/nim/bin/nim %buildroot%_bindir/nim @@ -131,9 +132,9 @@ cp -r %buildroot%_prefix/lib/nim/dist %buildroot%_datadir/nim/ %files %license copying.txt dist/nimble/license.txt %doc doc/readme.txt -%_bindir/nim{,ble} +%_bindir/nim %_mandir/man1/nim.1.* -%_datadir/bash-completion/completions/nim{,ble} +%_datadir/bash-completion/completions/nim %_datadir/nim/ %_prefix/lib/nim/ %_sysconfdir/nim/ diff --git a/anda/langs/nim/nim/nim.spec b/anda/langs/nim/nim/nim.spec index 8c2d352718..4ab05fb44f 100644 --- a/anda/langs/nim/nim/nim.spec +++ b/anda/langs/nim/nim/nim.spec @@ -3,7 +3,7 @@ Name: nim Version: 2.2.4 -Release: 2%?dist +Release: 3%?dist Summary: Imperative, multi-paradigm, compiled programming language License: MIT and BSD URL: https://nim-lang.org @@ -14,6 +14,8 @@ Source4: nimsuggest.1 BuildRequires: gcc mold git-core gcc-c++ nodejs openssl-devel pkgconfig(bash-completion) gc-devel pcre-devel BuildRequires: redhat-rpm-config anda-srpm-macros Requires: gcc +Recommends: nim-tools +Conflicts: nimble %description diff --git a/anda/langs/nim/nimble/nimble.spec b/anda/langs/nim/nimble/nimble.spec index 5032a57dd2..79b4ab657b 100644 --- a/anda/langs/nim/nimble/nimble.spec +++ b/anda/langs/nim/nimble/nimble.spec @@ -1,5 +1,5 @@ Name: nimble -Version: 0.18.2 +Version: 0.20.0 Release: 1%?dist Summary: Package manager for the Nim programming language License: BSD diff --git a/anda/langs/python/pillow-heif/python3-pillow-heif.spec b/anda/langs/python/pillow-heif/python3-pillow-heif.spec index d98d82d95c..8fd5eac24f 100644 --- a/anda/langs/python/pillow-heif/python3-pillow-heif.spec +++ b/anda/langs/python/pillow-heif/python3-pillow-heif.spec @@ -6,8 +6,8 @@ %bcond_with doc Name: python-%{srcname} -Version: 0.22.0 -Release: 2%?dist +Version: 1.0.0 +Release: 1%?dist Summary: Python library for working with HEIF images and plugin for Pillow License: BSD-3-Clause diff --git a/anda/langs/rust/eza/rust-eza.spec b/anda/langs/rust/eza/rust-eza.spec index 4b62c1110c..750733a177 100644 --- a/anda/langs/rust/eza/rust-eza.spec +++ b/anda/langs/rust/eza/rust-eza.spec @@ -4,7 +4,7 @@ %global crate eza Name: rust-eza -Version: 0.21.4 +Version: 0.22.0 Release: 1%?dist Summary: Modern replacement for ls diff --git a/anda/langs/rust/lan-mouse/anda.hcl b/anda/langs/rust/lan-mouse/anda.hcl new file mode 100644 index 0000000000..177426ceb2 --- /dev/null +++ b/anda/langs/rust/lan-mouse/anda.hcl @@ -0,0 +1,5 @@ +project pkg { + rpm { + spec = "lan-mouse.spec" + } +} diff --git a/anda/langs/rust/lan-mouse/lan-mouse.spec b/anda/langs/rust/lan-mouse/lan-mouse.spec new file mode 100644 index 0000000000..4e360c1414 --- /dev/null +++ b/anda/langs/rust/lan-mouse/lan-mouse.spec @@ -0,0 +1,73 @@ +# Generated by rust2rpm 27 +%bcond check 1 +%global rustflags_debuginfo 1 + +Name: lan-mouse +Version: 0.10.0 +Release: %autorelease +Summary: Software KVM Switch / mouse & keyboard sharing software for Local Area Networks + +License: GPL-3.0-or-later +URL: https://github.com/feschber/lan-mouse +Source0: %{url}/archive/refs/tags/v%version.tar.gz +Packager: ayykamp + +Requires: gtk4 +BuildRequires: cargo-rpm-macros >= 24 +BuildRequires: anda-srpm-macros +BuildRequires: cargo mold +BuildRequires: pkgconfig(glib-2.0) >= 2.66 +BuildRequires: pkgconfig(gtk4) >= 4.2 +BuildRequires: pkgconfig(libadwaita-1) >= 1.1 +BuildRequires: libXtst-devel + +%description +Software KVM Switch / mouse & keyboard sharing software for Local Area Networks. + +%prep +%autosetup -n lan-mouse-%{version} -p1 +%cargo_prep_online + + +%build +%{cargo_license_summary_online} +%{cargo_license_online} > LICENSE.dependencies + + +%install +%cargo_install + +# install app icon +install -D -d -m 0755 %{buildroot}%{_datadir}/icons/hicolor/scalable/apps +install -p -m 0644 %{_builddir}/%{name}-%{version}/lan-mouse-gtk/resources/de.feschber.LanMouse.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps + +# install desktop entry +install -D -d -m 0755 %{buildroot}%{_datadir}/applications +install -p -m 0644 %{_builddir}/%{name}-%{version}/de.feschber.LanMouse.desktop %{buildroot}%{_datadir}/applications + +# when using firewalld: install firewall rule +install -D -d -m 0755 %{buildroot}%{_prefix}/lib/firewalld/services +install -p -m 0644 %{_builddir}/%{name}-%{version}/firewall/lan-mouse.xml %{buildroot}%{_prefix}/lib/firewalld/services + +%if %{with check} +%check +%cargo_test +%endif + + +%files +%license LICENSE +%license LICENSE.dependencies +%doc DOC.md +%doc README.md +%{_bindir}/%{name} +%{_datadir}/icons/hicolor/scalable/apps/de.feschber.LanMouse.svg +%{_datadir}/applications/de.feschber.LanMouse.desktop +%dir %{_prefix}/lib/firewalld +%dir %{_prefix}/lib/firewalld/services +%{_prefix}/lib/firewalld/services/lan-mouse.xml + + +%changelog +* Fri Jun 27 2025 ayykamp +- Initial package diff --git a/anda/langs/rust/lan-mouse/update.rhai b/anda/langs/rust/lan-mouse/update.rhai new file mode 100644 index 0000000000..b8b3d3f067 --- /dev/null +++ b/anda/langs/rust/lan-mouse/update.rhai @@ -0,0 +1 @@ +rpm.version(gh("feschber/lan-mouse")); diff --git a/anda/langs/rust/rnote/rnote.spec b/anda/langs/rust/rnote/rnote.spec index 0167730e79..4641617a5a 100644 --- a/anda/langs/rust/rnote/rnote.spec +++ b/anda/langs/rust/rnote/rnote.spec @@ -1,15 +1,17 @@ -%global build_rustflags %build_rustflags -C link-arg=-fuse-ld=mold %global rustflags_debuginfo 1 Name: rnote Version: 0.12.0 -Release: 1%?dist -Summary: Sketch and take handwritten notes. +Release: 2%?dist +Summary: Sketch and take handwritten notes License: GPL-3.0 URL: https://github.com/flxzt/rnote +Packager: madonuko Source0: %{url}/archive/refs/tags/v%version.tar.gz -Requires: gtk4 -BuildRequires: cargo meson cmake libappstream-glib gcc-c++ pkgconfig(alsa) alsa-lib clang-devel python desktop-file-utils mold +Recommends: rnote-cli = %evr +BuildRequires: rust-packaging +BuildRequires: cargo meson cmake libappstream-glib gcc-c++ alsa-lib clang-devel python desktop-file-utils mold +BuildRequires: pkgconfig(alsa) BuildRequires: pkgconfig(glib-2.0) >= 2.66 BuildRequires: pkgconfig(gtk4) >= 4.7 BuildRequires: pkgconfig(libadwaita-1) >= 1.2 @@ -21,12 +23,22 @@ notes and to annotate documents and pictures. Targeted at students, teachers and those who own a drawing tablet, it provides features like PDF and picture import/export, an infinite canvas and an adaptive UI for big and small screens. +%package cli +Summary: The cli version of rnote (`rnote-cli`) +License: GPL-3.0 + +%description cli +This provides the `rnote-cli` binary. For more information, see the `rnote` package. + + %prep %autosetup -n rnote-%{version} - +%cargo_prep_online %build %meson +%cargo_license_summary_online +%{cargo_license_online} > LICENSE.dependencies %meson_build @@ -36,8 +48,7 @@ import/export, an infinite canvas and an adaptive UI for big and small screens. %files %doc README.md -%license LICENSE -%_bindir/rnote-cli +%license LICENSE LICENSE.dependencies %_bindir/rnote %_datadir/thumbnailers/rnote.thumbnailer %_datadir/applications/com.github.flxzt.rnote.desktop @@ -51,10 +62,7 @@ import/export, an infinite canvas and an adaptive UI for big and small screens. %_datadir/rnote/ %_datadir/fonts/rnote-fonts/ - -%changelog -* Wed Nov 2 2022 windowsboy111 - 0.5.7-1 -- Fix requires - -* Sun Oct 23 2022 windowsboy111 - 0.5.7-1 -- Initial package +%files cli +%doc README.md +%license LICENSE LICENSE.dependencies +%_bindir/rnote-cli diff --git a/anda/langs/rust/xplr/rust-xplr.spec b/anda/langs/rust/xplr/rust-xplr.spec index f2c9d23fa9..bd5aa919a0 100644 --- a/anda/langs/rust/xplr/rust-xplr.spec +++ b/anda/langs/rust/xplr/rust-xplr.spec @@ -4,7 +4,7 @@ %global crate xplr Name: rust-xplr -Version: 1.0.0 +Version: 1.0.1 Release: 1%?dist Summary: Hackable, minimal, fast TUI file explorer diff --git a/anda/langs/vala/vala-nightly/vala-nightly.spec b/anda/langs/vala/vala-nightly/vala-nightly.spec index ecf5932ac2..1211df19a6 100644 --- a/anda/langs/vala/vala-nightly/vala-nightly.spec +++ b/anda/langs/vala/vala-nightly/vala-nightly.spec @@ -3,11 +3,11 @@ %global priority 90 %global real_name vala -%global commit 0e39d2dae386e40bf2d7be8d299b3560d8fdb50e +%global commit 279dd36f95df98b8e87de68351b6b16440dfc2f1 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global repo https://gitlab.gnome.org/GNOME/%{real_name}.git -%global commit_date 20250612 +%global commit_date 20250705 %global snapshot_info %{commit_date}.%{shortcommit} Name: vala-nightly diff --git a/anda/langs/zig/bootstrap/zig-master-bootstrap.spec b/anda/langs/zig/bootstrap/zig-master-bootstrap.spec index 4b8893bcfc..b20c7cbea0 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.15.0-dev.877+0adcfd60f +%global ver 0.15.0-dev.936+fc2c1883b %bcond bootstrap 1 %bcond docs %{without bootstrap} %bcond test 1 diff --git a/anda/langs/zig/master/zig-master.spec b/anda/langs/zig/master/zig-master.spec index b483c4217c..3d9ffe8b39 100644 --- a/anda/langs/zig/master/zig-master.spec +++ b/anda/langs/zig/master/zig-master.spec @@ -13,7 +13,7 @@ %global zig_cache_dir %{builddir}/zig-cache Name: zig-master -Version: 0.15.0~dev.877+0adcfd60f +Version: 0.15.0~dev.936+fc2c1883b Release: 1%?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 diff --git a/anda/lib/astal/astal-gtk/astal-gtk.spec b/anda/lib/astal/astal-gtk/astal-gtk.spec index 5c692db0a8..cb7aa72479 100644 --- a/anda/lib/astal/astal-gtk/astal-gtk.spec +++ b/anda/lib/astal/astal-gtk/astal-gtk.spec @@ -1,5 +1,5 @@ -%global commit 95c6d6d -%global commit_date 20250628 +%global commit 57e7efe +%global commit_date 20250709 Name: astal Version: 0^%commit_date.%commit diff --git a/anda/lib/astal/astal/astal.spec b/anda/lib/astal/astal/astal.spec index 442b49e565..60755daae4 100644 --- a/anda/lib/astal/astal/astal.spec +++ b/anda/lib/astal/astal/astal.spec @@ -1,7 +1,7 @@ -%global commit 95c6d6dbaf0eaa71a17abf02c20bfca7371956c1 +%global commit 57e7efe06b0374907fc8329ca314a76122b17008 %global shortcommit %{sub %commit 1 7} -%global commit_date 20250628 +%global commit_date 20250709 Name: astal Version: 0^%commit_date.%shortcommit diff --git a/anda/lib/mesa/0001-Revert-kopper-Explicitly-choose-zink.patch b/anda/lib/mesa/0001-Revert-kopper-Explicitly-choose-zink.patch deleted file mode 100644 index d595c30c5f..0000000000 --- a/anda/lib/mesa/0001-Revert-kopper-Explicitly-choose-zink.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 24f85c06c28736b73c14208a0ffa6657d2aee9cd Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Jos=C3=A9=20Exp=C3=B3sito?= -Date: Mon, 21 Apr 2025 13:52:14 +0200 -Subject: [PATCH] Revert "kopper: Explicitly choose zink" - -On QEMU (virtio driver), without 3D acceleration enabled and without -mesa-vulkan-drivers installed, this commit prevents Mutter to start. - -This reverts commit c0bc957c5d8c7edd57626284b712dd6ea1e375fc. - -Related: https://bugzilla.redhat.com/show_bug.cgi?id=2360851 -Related: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13009 ---- - src/gallium/frontends/dri/kopper.c | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/src/gallium/frontends/dri/kopper.c b/src/gallium/frontends/dri/kopper.c -index a1d7dcb79b4..3bdb56022a9 100644 ---- a/src/gallium/frontends/dri/kopper.c -+++ b/src/gallium/frontends/dri/kopper.c -@@ -73,7 +73,7 @@ kopper_init_screen(struct dri_screen *screen, bool driver_name_is_inferred) - bool success; - #ifdef HAVE_LIBDRM - if (screen->fd != -1) -- success = pipe_loader_drm_probe_fd(&screen->dev, screen->fd, true); -+ success = pipe_loader_drm_probe_fd(&screen->dev, screen->fd, false); - else - success = pipe_loader_vk_probe_dri(&screen->dev); - #else --- -2.49.0 - diff --git a/anda/lib/mesa/bazzite.patch b/anda/lib/mesa/bazzite.patch index b9e368abbb..009479fd97 100644 --- a/anda/lib/mesa/bazzite.patch +++ b/anda/lib/mesa/bazzite.patch @@ -1,16 +1,256 @@ -From aac6b04f39717f7363071f5500a89bb33e01cb33 Mon Sep 17 00:00:00 2001 +From 27e5ca5e9f32a3dab5d9f22e53c34133a98fc1ef Mon Sep 17 00:00:00 2001 +From: Antheas Kapenekakis +Date: Sat, 15 Mar 2025 16:38:53 +0100 +Subject: [PATCH 01/11] [NA] Developer files, readme, etc + +--- + Containerfile | 117 ++++++++++++++++++++++++++++++++++++++++++++++++++ + sync.sh | 94 ++++++++++++++++++++++++++++++++++++++++ + 2 files changed, 211 insertions(+) + create mode 100644 Containerfile + create mode 100755 sync.sh + +diff --git a/Containerfile b/Containerfile +new file mode 100644 +index 00000000000..ba4ecf6c172 +--- /dev/null ++++ b/Containerfile +@@ -0,0 +1,117 @@ ++ARG FEDORA_VERSION=41 ++ ++FROM fedora:${FEDORA_VERSION} ++ ++# noarch ++RUN dnf5 install -y \ ++ meson \ ++ python3-mako \ ++ python3-ply \ ++ python3-pycparser \ ++ rust-paste-devel \ ++ rust-proc-macro2-devel \ ++ rust-quote-devel \ ++ cargo-rpm-macros \ ++ rust-syn+clone-impls-devel \ ++ rust-unicode-ident-devel \ ++ vulkan-headers \ ++ wayland-protocols-devel \ ++ xorg-x11-proto-devel \ ++ && dnf5 clean all ++ ++# x86_64 ++RUN dnf5 install -y \ ++ bindgen-cli \ ++ bison \ ++ cbindgen \ ++ clang-devel \ ++ elfutils-libelf-devel \ ++ expat-devel \ ++ flex \ ++ gcc \ ++ gettext \ ++ glslang \ ++ kernel-headers \ ++ libX11-devel \ ++ libXdamage-devel \ ++ libXext-devel \ ++ libXfixes-devel \ ++ libXrandr-devel \ ++ libXxf86vm-devel \ ++ libclc-devel \ ++ libdrm-devel \ ++ libglvnd-core-devel \ ++ libselinux-devel \ ++ libunwind-devel \ ++ libva-devel \ ++ libvdpau-devel \ ++ libxcb-devel \ ++ libxshmfence-devel \ ++ libzstd-devel \ ++ python3-devel \ ++ lm_sensors-devel \ ++ python3-pyyaml \ ++ valgrind-devel \ ++ spirv-llvm-translator-devel \ ++ spirv-tools-devel \ ++ vulkan-loader-devel \ ++ wayland-devel \ ++ zlib-ng-compat-devel ++ ++# x86 ++RUN dnf5 install -y \ ++ clang-devel.i686 \ ++ elfutils-libelf-devel.i686 \ ++ expat-devel.i686 \ ++ glslang.i686 \ ++ kernel-headers.i686 \ ++ libX11-devel.i686 \ ++ libXdamage-devel.i686 \ ++ libXext-devel.i686 \ ++ libXfixes-devel.i686 \ ++ libXrandr-devel.i686 \ ++ libXxf86vm-devel.i686 \ ++ libclc-devel.i686 \ ++ libdrm-devel.i686 \ ++ libglvnd-core-devel.i686 \ ++ libselinux-devel.i686 \ ++ libunwind-devel.i686 \ ++ libva-devel.i686 \ ++ libvdpau-devel.i686 \ ++ libxcb-devel.i686 \ ++ libxshmfence-devel.i686 \ ++ libzstd-devel.i686 \ ++ python3-devel.i686 \ ++ lm_sensors-devel.i686 \ ++ valgrind-devel.i686 \ ++ spirv-llvm-translator-devel.i686 \ ++ spirv-tools-devel.i686 \ ++ vulkan-loader-devel.i686 \ ++ wayland-devel.i686 \ ++ zlib-ng-compat-devel.i686 \ ++ pkgconf-pkg-config.i686 ++ ++# these do not have an i686 version ++# bindgen-cli.i686 \ ++# bison.i686 \ ++# cbindgen.i686 \ ++# flex.i686 \ ++# gcc.i686 \ ++# gettext.i686 \ ++# python3-pyyaml.i686 \ ++ ++RUN dnf install -y ccache ++ ++ARG UID=1000 ++ARG GID=1000 ++ ++RUN groupadd -g $GID -o builder && \ ++ useradd -m -u $UID -g $GID -o -s /bin/bash builder && \ ++ echo "builder ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/builder && \ ++ chmod 0440 /etc/sudoers.d/builder ++ ++USER builder ++ ++ENV PATH="/usr/lib64/ccache/:$PATH" ++ ++WORKDIR /workspace +\ No newline at end of file +diff --git a/sync.sh b/sync.sh +new file mode 100755 +index 00000000000..f0fa113f876 +--- /dev/null ++++ b/sync.sh +@@ -0,0 +1,94 @@ ++if [ -z "$1" ]; then ++ echo "Usage: $0 " ++ exit 1 ++fi ++ ++# https://gist.github.com/Venemo/a9483106565df3a83fc67a411191edbd ++ ++RHOST=$1 ++RSYNC="rsync -rv --exclude .git --exclude venv --exclude __pycache__ --links" ++DEVUSER=${DEVUSER:-bazzite} ++ ++# If RHOST=claw, set driver name to intel ++if [ "$RHOST" = "claw" ]; then ++ echo "Using Intel driver" ++ DRIVER_NAME=intel ++ VKICD_NAME=intel ++ GALLIUM_DRIVER=iris ++else ++ echo "Using AMD driver" ++ DRIVER_NAME=amd ++ VKICD_NAME=radeon ++ GALLIUM_DRIVER=radeonsi ++fi ++ ++set -e -x ++ ++sudo podman build . --tag mesa_builder \ ++ --build-arg UID=$(id -u) --build-arg GID=$(id -g) ++ ++PODMAN_RUN="sudo podman run --rm -v $(pwd):/workspace \ ++ --env CCACHE_DIR=/workspace/.cache \ ++ --env CCACHE_MAXSIZE=5G \ ++ --env CCACHE_COMPRESS=1 \ ++ -it mesa_builder" ++ ++$PODMAN_RUN rm -rf build64 build32 ++ ++$PODMAN_RUN meson setup build64 --libdir lib64 --prefix /workspace/.out \ ++ -Dgallium-drivers=swrast,zink,$GALLIUM_DRIVER -Dvulkan-drivers=$DRIVER_NAME \ ++ -Dgallium-nine=true -Dbuildtype=release \ ++ -Dvideo-codecs=h264dec,h264enc,h265dec,h265enc,vc1dec ++ ++# Cross-file for arch: lib32, fedora: ./gcc-i686 ++$PODMAN_RUN meson setup build32 --libdir lib --prefix /workspace/.out \ ++ -Dgallium-drivers=swrast,zink,$GALLIUM_DRIVER -Dvulkan-drivers=$DRIVER_NAME \ ++ -Dgallium-nine=true -Dbuildtype=release \ ++ -Dvideo-codecs=h264dec,h264enc,h265dec,h265enc,vc1dec ++ ++time $PODMAN_RUN ninja -C build64 install ++ ++time $PODMAN_RUN ninja -C build32 install ++ ++RUNCONFIG=$(cat << EOF ++ ++ ++MESA=/home/$DEVUSER/.out ++ ++export LD_LIBRARY_PATH=\$MESA/lib64:\$MESA/lib:\$LD_LIBRARY_PATH ++export LIBGL_DRIVERS_PATH=\$MESA/lib64/dri:\$MESA/lib/dri ++export EGL_DRIVERS_PATH=\$MESA/lib64/dri:\$MESA/lib/dri ++export VK_ICD_FILENAMES=\$MESA/share/vulkan/icd.d/${VKICD_NAME}_icd.x86_64.json:\$MESA/share/vulkan/icd.d/${VKICD_NAME}_icd.i686.json ++export LIBVA_DRIVERS_PATH=\$MESA/lib64/dri:\$MESA/lib/dri ++export VDPAU_DRIVER_PATH=\$MESA/lib64/vdpau ++export D3D_MODULE_PATH=\$MESA/lib64/d3d/d3dadapter9.so.1:\$MESA/lib/d3d/d3dadapter9.so.1 ++# export ENABLE_GAMESCOPE_WSI=0 ++ ++EOF ++) ++ ++ssh $RHOST /bin/bash << EOF ++ rm -rf .out ++ mkdir -p .out ++EOF ++ ++echo "$RUNCONFIG" > .out/runconfig ++ ++# Fixup vunkan_icd install dir ++sed -i "s|/workspace/.out|/home/$DEVUSER/.out|g" .out/share/vulkan/icd.d/*.json ++ ++$RSYNC .out/ $RHOST:.out/ ++ ++ssh $RHOST /bin/bash << EOF ++ sudo rpm-ostree usroverlay --hotfix ++ ++ # check if session does not have D3D_MODULE_PATH ++ if ! grep -q D3D_MODULE_PATH /usr/share/gamescope-session-plus/device-quirks; then ++ cat ~/.out/runconfig | sudo tee -a /usr/share/gamescope-session-plus/device-quirks ++ fi ++ ++ # sudo rsync -r -v ~/.out/* /usr/ ++ ++ bazzite-session-select gamescope ++ # sudo reboot ++EOF +-- +2.49.0 + + +From 2f02ad01e44eddb1d78e6e2a336bb21b7c3c93af Mon Sep 17 00:00:00 2001 From: Antheas Kapenekakis Date: Sat, 15 Mar 2025 16:39:08 +0100 -Subject: [PATCH 01/12] [BEGIN] SteamOS Changes +Subject: [PATCH 02/11] [BEGIN] SteamOS Changes -- 2.49.0 -From 9fc35e8c53fe7e6c84b7da9ddff3d528f22ea4a9 Mon Sep 17 00:00:00 2001 +From d446cc1258a6c6fd042e9a3d651a799a033a2d8c Mon Sep 17 00:00:00 2001 From: Bas Nieuwenhuizen Date: Fri, 14 Jan 2022 15:58:45 +0100 -Subject: [PATCH 02/12] STEAMOS: radv: min image count override for FH5 +Subject: [PATCH 03/11] STEAMOS: radv: min image count override for FH5 Otherwise in combination with the vblank time reservation in gamescope the game could get stuck in low power states. @@ -19,10 +259,10 @@ gamescope the game could get stuck in low power states. 1 file changed, 4 insertions(+) diff --git a/src/util/00-radv-defaults.conf b/src/util/00-radv-defaults.conf -index aef8b9006cd..2a6b0ec84a4 100644 +index e0e5b34dc87..5e931f61760 100644 --- a/src/util/00-radv-defaults.conf +++ b/src/util/00-radv-defaults.conf -@@ -223,5 +223,9 @@ Application bugs worked around in this file: +@@ -238,5 +238,9 @@ Application bugs worked around in this file: @@ -36,10 +276,10 @@ index aef8b9006cd..2a6b0ec84a4 100644 2.49.0 -From 09299a2cf516078ce9ed9786a49ea6f957ac6527 Mon Sep 17 00:00:00 2001 +From 016b60d32de3cd99e10207e7f0fa2c6fce91476c Mon Sep 17 00:00:00 2001 From: Samuel Pitoiset Date: Thu, 22 Feb 2024 22:32:45 +0100 -Subject: [PATCH 03/12] STEAMOS: Dynamic swapchain override for gamescope +Subject: [PATCH 04/11] STEAMOS: Dynamic swapchain override for gamescope limiter for DRI3 only The original patch (from Bas) contained WSI VK support too but it's @@ -143,28 +383,28 @@ index 4da19d73090..819a0e548fc 100644 2.49.0 -From 379efbce79f2ca73d34ec48b10e28942be3ed1be Mon Sep 17 00:00:00 2001 +From 23db9ff0bf721f2c9080955c8c5dcf1f187d7adc Mon Sep 17 00:00:00 2001 From: Antheas Kapenekakis Date: Sat, 15 Mar 2025 16:39:25 +0100 -Subject: [PATCH 04/12] [BEGIN] SteamOS Backports +Subject: [PATCH 05/11] [BEGIN] SteamOS Backports -- 2.49.0 -From a4ac8f2bcd23eb4194adfe41117d4e168ffc6ddd Mon Sep 17 00:00:00 2001 +From 69160c86a0d01b1c8482277faca1f6f7fa24cfce Mon Sep 17 00:00:00 2001 From: Antheas Kapenekakis Date: Sat, 15 Mar 2025 16:39:33 +0100 -Subject: [PATCH 05/12] [BEGIN] Our Mesa backports +Subject: [PATCH 06/11] [BEGIN] Our Mesa backports -- 2.49.0 -From 7286b058c851688929bd145116c61872d06d81c8 Mon Sep 17 00:00:00 2001 +From 59e3d359a4f4f78112ee965bb790dec2208ea480 Mon Sep 17 00:00:00 2001 From: Maarten Lankhorst Date: Mon, 17 Feb 2025 14:55:29 -0800 -Subject: [PATCH 06/12] anv: Mark images with format modifiers set as scanout. +Subject: [PATCH 07/11] anv: Mark images with format modifiers set as scanout. We currently use the presence of struct WSI_IMAGE_CREATE_INFO_MESA.scanout to mark the BO as scanout, but this only handles the linear case, and fails when drm format modifiers are used. @@ -199,10 +439,10 @@ index 0fb86e9d846..de37994d324 100644 2.49.0 -From 643137e1f57b1c89451a77edec40565e6084e2e1 Mon Sep 17 00:00:00 2001 +From 8c17b9dd7ad7f565080bd3623cfb820efb729444 Mon Sep 17 00:00:00 2001 From: Antheas Kapenekakis Date: Mon, 24 Mar 2025 19:50:51 +0100 -Subject: [PATCH 07/12] Revert "winsys/amdgpu: use VM_ALWAYS_VALID for all VRAM +Subject: [PATCH 08/11] Revert "winsys/amdgpu: use VM_ALWAYS_VALID for all VRAM and GTT allocations" This reverts commit 8c91624614c1f939974fe0d2d1a3baf83335cecb. @@ -232,135 +472,19 @@ index dfefc468bca..cc0719a1898 100644 2.49.0 -From e38d54fb349d78b10ca5000add7cd97bf921323a Mon Sep 17 00:00:00 2001 -From: Antheas Kapenekakis -Date: Wed, 7 May 2025 18:50:48 +0200 -Subject: [PATCH 08/12] [BEGIN] Intel DX12 fix - --- -2.49.0 - - -From cb2c3290e03518f90e13e83f68edea63c9c6c0cf Mon Sep 17 00:00:00 2001 +From 816dec380bba16f65d7c65ddf9960a0ff79a8923 Mon Sep 17 00:00:00 2001 From: Kyle Gospodnetich Date: Sun, 18 May 2025 09:40:01 -0700 -Subject: [PATCH 09/12] [BEGIN] Proton-GE Patches +Subject: [PATCH 09/11] [BEGIN] Proton-GE Patches -- 2.49.0 -From 24d4a18ec695dbdc4fba33eee941dcca49a9a106 Mon Sep 17 00:00:00 2001 -From: Kyle Gospodnetich -Date: Sun, 18 May 2025 09:41:21 -0700 -Subject: [PATCH 10/12] radv,driconf: Add radv_force_64k_sparse_alignment - config - ---- - src/amd/vulkan/radv_buffer.c | 6 +++++- - src/amd/vulkan/radv_instance.c | 3 +++ - src/amd/vulkan/radv_instance.h | 1 + - src/util/00-radv-defaults.conf | 7 +++++++ - src/util/driconf.h | 3 +++ - 5 files changed, 19 insertions(+), 1 deletion(-) - -diff --git a/src/amd/vulkan/radv_buffer.c b/src/amd/vulkan/radv_buffer.c -index 88111750517..8ef575f8246 100644 ---- a/src/amd/vulkan/radv_buffer.c -+++ b/src/amd/vulkan/radv_buffer.c -@@ -167,6 +167,7 @@ radv_get_buffer_memory_requirements(struct radv_device *device, VkDeviceSize siz - VkBufferUsageFlags2 usage, VkMemoryRequirements2 *pMemoryRequirements) - { - const struct radv_physical_device *pdev = radv_device_physical(device); -+ const struct radv_instance *instance = radv_physical_device_instance(pdev); - - pMemoryRequirements->memoryRequirements.memoryTypeBits = - ((1u << pdev->memory_properties.memoryTypeCount) - 1u) & ~pdev->memory_types_32bit; -@@ -179,7 +180,10 @@ radv_get_buffer_memory_requirements(struct radv_device *device, VkDeviceSize siz - pMemoryRequirements->memoryRequirements.memoryTypeBits = pdev->memory_types_32bit; - - if (flags & VK_BUFFER_CREATE_SPARSE_BINDING_BIT) { -- pMemoryRequirements->memoryRequirements.alignment = 4096; -+ if (instance->drirc.force_64k_sparse_alignment) -+ pMemoryRequirements->memoryRequirements.alignment = 65536; -+ else -+ pMemoryRequirements->memoryRequirements.alignment = 4096; - } else { - if (usage & VK_BUFFER_USAGE_2_PREPROCESS_BUFFER_BIT_EXT) - pMemoryRequirements->memoryRequirements.alignment = radv_dgc_get_buffer_alignment(device); -diff --git a/src/amd/vulkan/radv_instance.c b/src/amd/vulkan/radv_instance.c -index 7aebf073dfd..15a3f710502 100644 ---- a/src/amd/vulkan/radv_instance.c -+++ b/src/amd/vulkan/radv_instance.c -@@ -194,6 +194,7 @@ static const driOptionDescription radv_dri_options[] = { - DRI_CONF_RADV_APP_LAYER() - DRI_CONF_RADV_EMULATE_RT(false) - DRI_CONF_RADV_ENABLE_FLOAT16_GFX8(false) -+ DRI_CONF_RADV_FORCE_64K_SPARSE_ALIGNMENT(false) - DRI_CONF_SECTION_END - }; - // clang-format on -@@ -298,6 +299,8 @@ radv_init_dri_options(struct radv_instance *instance) - instance->drirc.emulate_rt = driQueryOptionb(&instance->drirc.options, "radv_emulate_rt"); - - instance->drirc.expose_float16_gfx8 = driQueryOptionb(&instance->drirc.options, "radv_enable_float16_gfx8"); -+ -+ instance->drirc.force_64k_sparse_alignment = driQueryOptionb(&instance->drirc.options, "radv_force_64k_sparse_alignment"); - } - - static const struct vk_instance_extension_table radv_instance_extensions_supported = { -diff --git a/src/amd/vulkan/radv_instance.h b/src/amd/vulkan/radv_instance.h -index d0f23404285..81c4921222e 100644 ---- a/src/amd/vulkan/radv_instance.h -+++ b/src/amd/vulkan/radv_instance.h -@@ -74,6 +74,7 @@ struct radv_instance { - bool lower_terminate_to_discard; - bool emulate_rt; - bool expose_float16_gfx8; -+ bool force_64k_sparse_alignment; - char *app_layer; - uint8_t override_graphics_shader_version; - uint8_t override_compute_shader_version; -diff --git a/src/util/00-radv-defaults.conf b/src/util/00-radv-defaults.conf -index 2a6b0ec84a4..595a435802f 100644 ---- a/src/util/00-radv-defaults.conf -+++ b/src/util/00-radv-defaults.conf -@@ -123,6 +123,13 @@ Application bugs worked around in this file: -