Compare commits

..

No commits in common. "rawhide" and "f32" have entirely different histories.

9 changed files with 1375 additions and 457 deletions

112
.gitignore vendored
View file

@ -45,115 +45,3 @@
/libretro-database-1.9.3.tar.gz
/retroarch-1.9.3.tar.gz
/retroarch-joypad-autoconfig-20210518gitaedf931.tar.gz
/libretro-core-info-1.9.4.tar.gz
/libretro-database-1.9.4.tar.gz
/retroarch-1.9.4.tar.gz
/retroarch-joypad-autoconfig-20210529git16e003e.tar.gz
/libretro-core-info-1.9.5.tar.gz
/libretro-database-1.9.5.tar.gz
/retroarch-1.9.5.tar.gz
/retroarch-joypad-autoconfig-20210616gitb228dad.tar.gz
/libretro-core-info-1.9.7.tar.gz
/libretro-database-1.9.7.tar.gz
/retroarch-1.9.7.tar.gz
/retroarch-assets-20210802git5f1b2ca.tar.gz
/retroarch-joypad-autoconfig-1.9.7.tar.gz
/libretro-core-info-1.9.8.tar.gz
/libretro-database-1.9.8.tar.gz
/retroarch-1.9.8.tar.gz
/retroarch-joypad-autoconfig-1.9.8.tar.gz
/libretro-core-info-1.9.9.tar.gz
/libretro-database-1.9.9.tar.gz
/retroarch-1.9.9.tar.gz
/retroarch-assets-20210802git0f3cd46.tar.gz
/retroarch-joypad-autoconfig-1.9.9.tar.gz
/libretro-core-info-1.9.10.tar.gz
/libretro-database-1.9.10.tar.gz
/retroarch-1.9.10.tar.gz
/retroarch-assets-20210922git62b5d18.tar.gz
/retroarch-joypad-autoconfig-1.9.10.tar.gz
/libretro-core-info-1.9.11.tar.gz
/libretro-database-1.9.11.tar.gz
/retroarch-1.9.11.tar.gz
/retroarch-joypad-autoconfig-1.9.11.tar.gz
/libretro-core-info-1.9.12.tar.gz
/libretro-database-1.9.12.tar.gz
/retroarch-1.9.12.tar.gz
/retroarch-assets-20211016gita7deebe.tar.gz
/retroarch-joypad-autoconfig-1.9.12.tar.gz
/libretro-core-info-1.9.13.tar.gz
/libretro-database-1.9.13.tar.gz
/retroarch-1.9.13.tar.gz
/retroarch-assets-20211108git9c22505.tar.gz
/retroarch-joypad-autoconfig-1.9.13.tar.gz
/libretro-core-info-1.9.14.tar.gz
/libretro-database-1.9.14.tar.gz
/retroarch-1.9.14.tar.gz
/retroarch-joypad-autoconfig-1.9.14.tar.gz
/libretro-core-info-1.10.0.tar.gz
/libretro-database-1.10.0.tar.gz
/retroarch-1.10.0.tar.gz
/retroarch-assets-20220113gitcc5caa7.tar.gz
/retroarch-joypad-autoconfig-1.10.0.tar.gz
/libretro-core-info-1.10.1.tar.gz
/libretro-database-1.10.1.tar.gz
/retroarch-1.10.1.tar.gz
/retroarch-assets-20220214gitdb5f4f4.tar.gz
/retroarch-joypad-autoconfig-1.10.1.tar.gz
/libretro-core-info-1.10.2.tar.gz
/libretro-database-1.10.2.tar.gz
/retroarch-1.10.2.tar.gz
/retroarch-assets-20220321gitf45dd13.tar.gz
/retroarch-joypad-autoconfig-1.10.2.tar.gz
/libretro-core-info-1.10.3.tar.gz
/libretro-database-1.10.3.tar.gz
/retroarch-1.10.3.tar.gz
/retroarch-joypad-autoconfig-1.10.3.tar.gz
/libretro-core-info-1.11.0.tar.gz
/libretro-database-1.11.0.tar.gz
/retroarch-1.11.0.tar.gz
/retroarch-assets-20220806gitee33f8e.tar.gz
/retroarch-joypad-autoconfig-1.11.0.tar.gz
/retroarch-1.11.1.tar.gz
/libretro-core-info-1.12.0.tar.gz
/libretro-database-1.12.0.tar.gz
/retroarch-1.12.0.tar.gz
/retroarch-joypad-autoconfig-1.12.0.tar.gz
/libretro-core-info-1.13.0.tar.gz
/libretro-database-1.13.0.tar.gz
/retroarch-1.13.0.tar.gz
/retroarch-assets-20221024git4ec80fa.tar.gz
/retroarch-joypad-autoconfig-1.13.0.tar.gz
/retroarch-1.14.0.tar.gz
/libretro-core-info-1.14.0.tar.gz
/libretro-database-1.14.0.tar.gz
/retroarch-joypad-autoconfig-1.14.0.tar.gz
/retroarch-1.15.0.tar.gz
/libretro-core-info-1.15.0.tar.gz
/libretro-database-1.15.0.tar.gz
/retroarch-joypad-autoconfig-1.15.0.tar.gz
/retroarch-1.16.0.tar.gz
/retroarch-assets-20230911git7b735ef.tar.gz
/libretro-core-info-1.16.0.tar.gz
/retroarch-joypad-autoconfig-1.16.0.tar.gz
/libretro-database-1.16.0.tar.gz
/retroarch-1.16.0.3.tar.gz
/retroarch-1.17.0.tar.gz
/retroarch-assets-20240102git923b711.tar.gz
/libretro-core-info-1.17.0.tar.gz
/libretro-database-1.17.0.tar.gz
/retroarch-joypad-autoconfig-1.17.0.tar.gz
/libretro-core-info-1.18.0.tar.gz
/libretro-database-1.18.0.tar.gz
/retroarch-1.18.0.tar.gz
/retroarch-joypad-autoconfig-1.18.0.tar.gz
/libretro-core-info-1.19.0.tar.gz
/libretro-database-1.19.0.tar.gz
/retroarch-1.19.0.tar.gz
/retroarch-assets-1.19.0.tar.gz
/retroarch-joypad-autoconfig-1.19.0.tar.gz
/libretro-core-info-1.22.0.tar.gz
/libretro-database-1.22.0.tar.gz
/retroarch-1.22.0.tar.gz
/retroarch-assets-1.22.0.tar.gz
/retroarch-joypad-autoconfig-1.22.0.tar.gz

View file

@ -1,27 +0,0 @@
copy_upstream_release_description: false
# downstream_package_name: foo # not mandatory
# upstream_package_name: Foo # not mandatory
upstream_project_url: https://github.com/libretro/RetroArch
upstream_tag_template: v{version}
jobs:
- job: pull_from_upstream
trigger: release
dist_git_branches:
- fedora-rawhide
# - fedora-development
# - fedora-all
- job: koji_build
trigger: commit
allowed_pr_authors: ["packit", "atim"]
allowed_committers: ["packit", "atim"]
dist_git_branches:
- fedora-all
# - epel-9
- job: bodhi_update
trigger: commit
dist_git_branches:
- fedora-branched
# - epel-9

View file

@ -1,19 +0,0 @@
# RetroArch Fedora
## How to download and install more libretro cores
Network access disabled by default in RetroArch Fedora build due security reasons. Only free libretro cores available which packaged in official Fedora repo. To obtain more libretro cores you need to:
1. Run in terminal:
```bash
$ retroarch-enable-network-access.sh
```
2. Now run RetroArch and go to: `Main Menu -> Load Core -> Download a Core`.
## How to reset all settings on defaults
To reset all settings on defaults and get back to system libretro cores remove user data dir:
```bash
$ rm -rf ~/.config/retroarch/
```

View file

@ -0,0 +1,13 @@
From e51c6d405ec8ce6b708292e8f55b9106d92b23e0 Mon Sep 17 00:00:00 2001
From: Artem Polishchuk <ego.cordatus@gmail.com>
Date: Tue, 3 Dec 2019 15:40:58 +0200
Subject: [PATCH] Add executable bit to script
---
xmb/convert.sh | 0
1 file changed, 0 insertions(+), 0 deletions(-)
mode change 100644 => 100755 xmb/convert.sh
diff --git a/xmb/convert.sh b/xmb/convert.sh
old mode 100644
new mode 100755

168
changelog
View file

@ -1,168 +0,0 @@
* Tue Sep 03 2024 Morten Stevens <mstevens@fedoraproject.org> - 1.15.0-7
- Rebuilt for mbedTLS 3.6.1
* Tue Jun 27 2023 Artem Polishchuk <ego.cordatus@gmail.com> - 1.15.0-6
- build: ExcludeArch: s390x
* Tue Jun 27 2023 Artem Polishchuk <ego.cordatus@gmail.com> - 1.15.0-5
- build: Use modern RPM macros for %patch
- build: Remove big-endian patch
* Sun Mar 12 2023 Neal Gompa <ngompa@fedoraproject.org> - 1.15.0-4
- Rebuild for ffmpeg 6.0
- fix build on big-endian (Dominik Mierzejewski)
* Sat Mar 11 2023 Artem Polishchuk <ego.cordatus@gmail.com> - 1.15.0-3
- chore: Update to 1.15.0
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1.14.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Tue Dec 13 2022 Artem Polishchuk <ego.cordatus@gmail.com> - 1.14.0-1
- chore: Update to 1.14.0
* Sun Nov 20 2022 Artem Polishchuk <ego.cordatus@gmail.com> - 1.13.0-1
- chore: Update to 1.13.0
* Mon Nov 14 2022 Artem Polishchuk <ego.cordatus@gmail.com> - 1.12.0-4
- build: Use ffmpeg-free only for >= f37
* Mon Nov 14 2022 Artem Polishchuk <ego.cordatus@gmail.com> - 1.12.0-3
- build: Add new build deps
* Mon Nov 14 2022 Artem Polishchuk <ego.cordatus@gmail.com> - 1.12.0-2
- build: Add limited ffmpeg support for >= f36
* Sat Oct 22 2022 Artem Polishchuk <ego.cordatus@gmail.com> - 1.12.0-1
- chore(update): 1.12.0
* Sat Oct 01 2022 Artem Polishchuk <ego.cordatus@gmail.com> - 1.11.0-2
- build: Recommends: gamemode
* Fri Sep 30 2022 Artem Polishchuk <ego.cordatus@gmail.com> - 1.11.0-1
- chore(update): 1.11.0
* Wed Sep 14 2022 Michel Alexandre Salim <salimma@fedoraproject.org> - 1.10.3-3
- Rebuilt for flac 1.4.0
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.10.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Tue Apr 12 2022 Artem Polishchuk <ego.cordatus@gmail.com> - 1.10.3-1
- chore(update): 1.10.3
* Wed Mar 23 2022 Artem Polishchuk <ego.cordatus@gmail.com> - 1.10.2-1
- chore(update): 1.10.2
* Fri Mar 04 2022 Artem Polishchuk <ego.cordatus@gmail.com> - 1.10.1-1
- chore(update): 1.10.1
* Sat Jan 22 2022 Morten Stevens <mstevens@fedoraproject.org> 1.10.0-2
- Rebuilt for mbedTLS 2.28.0
* Thu Jan 20 2022 Artem Polishchuk <ego.cordatus@gmail.com> - 1.10.0-1
- chore(update): 1.10.0
* Mon Dec 06 2021 Artem Polishchuk <ego.cordatus@gmail.com> - 1.9.14-1
- chore(update): 1.9.14
* Sun Nov 07 2021 Artem Polishchuk <ego.cordatus@gmail.com> - 1.9.13-1
- chore(update): 1.9.13
* Sun Oct 24 2021 Artem Polishchuk <ego.cordatus@gmail.com> - 1.9.12-1
- chore(update): 1.9.12
* Sat Oct 09 2021 Artem Polishchuk <ego.cordatus@gmail.com> - 1.9.11-1
- chore(update): 1.9.11
* Mon Oct 04 2021 Artem Polishchuk <ego.cordatus@gmail.com> - 1.9.10-1
- build(update): 1.9.10
* Fri Oct 01 2021 Artem Polishchuk <ego.cordatus@gmail.com> - 1.9.9-3
- docs: Add README.fedora.md | rh#1846170
* Tue Sep 14 2021 Sahana Prasad <sahana@redhat.com> - 1.9.9-2
- Rebuilt with OpenSSL 3.0.0
* Tue Sep 07 2021 Artem Polishchuk <ego.cordatus@gmail.com> - 1.9.9-1
- build(update): 1.9.9
* Thu Aug 26 2021 Artem Polishchuk <ego.cordatus@gmail.com> - 1.9.8-1
- build(update): 1.9.8
* Sat Aug 14 2021 Artem Polishchuk <ego.cordatus@gmail.com>
- build(update): 1.9.7
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.9.5-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Mon Jun 14 2021 Artem Polishchuk <ego.cordatus@gmail.com> - 1.9.5-1
- build(update): 1.9.5
* Fri May 28 2021 Artem Polishchuk <ego.cordatus@gmail.com> - 1.9.4-1
- build(update): 1.9.4
* Sat May 15 2021 Artem Polishchuk <ego.cordatus@gmail.com> - 1.9.3-1
- build(update): 1.9.3
* Sat May 01 2021 Artem Polishchuk <ego.cordatus@gmail.com> - 1.9.2-1
- build(update): 1.9.2
* Mon Mar 29 2021 Artem Polishchuk <ego.cordatus@gmail.com> - 1.9.1-1
- build(update): 1.9.1
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.9.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Sat Aug 08 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.9.0-1
- Update to 1.9.0
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.9-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Sat Jun 20 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.9-1
- Update to 1.8.9
* Wed May 27 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.8-1
- Update to 1.8.8
* Tue May 19 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.7-2
- Add Database files (cheatcode, content data, cursors) | Fix: RH#1822743
- Disable LTO
* Mon May 18 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.7-1
- Update to 1.8.7
* Thu May 07 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.6-1
- Update to 1.8.6
* Thu Mar 26 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.5-2
- Add Joypad Autoconfig Files
* Mon Mar 23 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.5-1
- Update to 1.8.5
- Add new libretro core
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.4-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Wed Jan 29 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.4-3
- Spec file improvements
- Thanks to Nicolas Chauvet <kwizart@gmail.com> for help with packaging and review
* Fri Jan 24 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.4-2
- Add Libretro's core info. Thanks <jamesunderland@protonmail.com>
* Sun Jan 19 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.4-1
- Update to 1.8.4
- Add missed Perl modules
* Sun Dec 29 2019 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.2-2
- Make fully standlone Freeworld package as RPM Fusion recommended
* Thu Dec 26 2019 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.2-1
- Update to 1.8.2
* Fri Nov 29 2019 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.1-14
- Initial package
- Thanks to Vitaly Zaitsev <vitaly@easycoding.org> for help with packaging and review

File diff suppressed because it is too large Load diff

View file

@ -1,21 +0,0 @@
#! /usr/bin/bash
# Free/Freeworld/Non-Free version
RETROARCH=retroarch
pkill --signal TERM $RETROARCH
pkill --signal KILL $RETROARCH
$RETROARCH &
sleep 1 &&
pkill --signal TERM $RETROARCH
pkill --signal KILL $RETROARCH
pushd ~/.config/retroarch/
sed -e 's|menu_show_online_updater = "false"|menu_show_online_updater = "true"|' \
-e 's|menu_show_core_updater = "false"|menu_show_core_updater = "true"|' \
-e 's|libretro_directory = "/usr/lib64/libretro/"| "~/.config/retroarch/cores"|' \
-i $RETROARCH.cfg
popd
echo "To reset all settings on defaults and get back to system libretro cores remove user data dir:
$ rm -rf ~/.config/retroarch/"

View file

@ -1,14 +1,9 @@
# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval
ExcludeArch: %{ix86}
# Please fix upstream this if you need it and no downstream Fedora patch
ExcludeArch: s390x
# Free/Freeworld/Non-Free version
%bcond_with freeworld
%bcond_with nonfree
%global appname retroarch
%global uuid com.libretro.RetroArch
%global uuid org.libretro.RetroArch
# Freeworld package
%if %{with freeworld}
@ -21,9 +16,21 @@ ExcludeArch: s390x
%global short_url https://github.com/libretro
# Assets
# * https://github.com/libretro/retroarch-assets
%global commit1 8d114dd55b0a357efec12d34d02dfe190a6ccc3a
%global date 20210422
%global shortcommit1 %(c=%{commit1}; echo ${c:0:7})
# Joypad Autoconfig Files
# * https://github.com/libretro/retroarch-joypad-autoconfig
%global commit4 aedf93176aac5c1e994c8767181e102857c5f5e4
%global date4 20210518
%global shortcommit4 %(c=%{commit4}; echo ${c:0:7})
Name: %{appname}%{?p_suffix}
Version: 1.22.0
Release: %autorelease
Version: 1.9.3
Release: 1%{?dist}
Summary: Cross-platform, sophisticated frontend for the libretro API. %{?sum_suffix}
# CC-BY: Assets
@ -86,68 +93,49 @@ Summary: Cross-platform, sophisticated frontend for the libretro API. %{?
# gfx/
# libretro-common/
#
License: GPL-3.0-or-later and GPL-2.0-only and CC-BY-3.0 and CC-BY-4.0 and CC0-1.0 and BSD-2-Clause and BSD-3-Clause and Apache-2.0 and MIT
License: GPLv3+ and GPLv2 and CC-BY and CC0 and BSD and ASL 2.0 and MIT
URL: https://www.libretro.com/
Source0: %{short_url}/RetroArch/archive/v%{version}/%{appname}-%{version}.tar.gz
# Assets
Source1: %{short_url}/%{appname}-assets/archive/v%{version}/%{appname}-assets-%{version}.tar.gz
Source1: %{short_url}/%{appname}-assets/archive/%{commit1}/%{appname}-assets-%{date}git%{shortcommit1}.tar.gz
# AppData manifest
# Upstreamed so should be easier now to maintain and automate updates for both
# Fedora and RPM Fusion repo. There is still UUID inconsistency but upstream
# notified. Keep old one for fallback.
# * https://github.com/libretro/RetroArch/pull/13113
#
# Old (+ line 408):
# * https://github.com/flathub/org.libretro.RetroArch/blob/master/org.libretro.RetroArch.appdata.xml
%dnl Source2: https://raw.githubusercontent.com/flathub/%{uuid}/63af0e2449891e40c6ab6feae5d27845768b26fb/%{uuid}.appdata.xml
Source2: https://raw.githubusercontent.com/flathub/%{uuid}/79cb0b7cb9fc70e7c593830b0e92953d1c2d1154/%{uuid}.appdata.xml
# Libretro's core info
Source3: %{short_url}/libretro-core-info/archive/v%{version}/libretro-core-info-%{version}.tar.gz
# Joypad Autoconfig Files
Source4: %{short_url}/%{appname}-joypad-autoconfig/archive/v%{version}/%{appname}-joypad-autoconfig-%{version}.tar.gz
Source4: %{short_url}/%{appname}-joypad-autoconfig/archive/%{commit4}/%{appname}-joypad-autoconfig-%{date4}git%{shortcommit4}.tar.gz
# Database files (cheatcode, content data, cursors)
Source5: %{short_url}/libretro-database/archive/v%{version}/libretro-database-%{version}.tar.gz
# Script for enabling network access which allows downloading more libretro
# cores
Source10: %{name}-enable-network-access.sh
Source11: README.fedora.md
# https://github.com/libretro/retroarch-assets/pull/334
Patch0: https://github.com/libretro/retroarch-assets/pull/334.patch#/add-executable-bit-to-script.patch
BuildRequires: desktop-file-utils
BuildRequires: gcc-c++ >= 7
BuildRequires: glslang-devel
BuildRequires: libappstream-glib
BuildRequires: libv4l-devel
BuildRequires: libXxf86vm-devel
BuildRequires: make
BuildRequires: mbedtls-devel
BuildRequires: mesa-libEGL-devel
BuildRequires: spirv-tools-libs
BuildRequires: mesa-libgbm-devel
BuildRequires: systemd-devel
# https://docs.fedoraproject.org/en-US/packaging-guidelines/#_packaging_header_only_libraries
BuildRequires: stb_image-static
BuildRequires: stb_rect_pack-static
BuildRequires: stb_truetype-static
BuildRequires: pkgconfig(alsa)
BuildRequires: wayland-devel
BuildRequires: wayland-protocols-devel
BuildRequires: pkgconfig(caca)
BuildRequires: pkgconfig(dbus-1)
# Since Flac 1.5.0 update RetroArch won't compile
#BuildRequires: pkgconfig(flac)
BuildRequires: pkgconfig(flac)
BuildRequires: pkgconfig(freetype2)
BuildRequires: pkgconfig(gbm)
BuildRequires: pkgconfig(gl)
BuildRequires: pkgconfig(jack)
BuildRequires: pkgconfig(libass)
BuildRequires: pkgconfig(libdecor-0)
BuildRequires: pkgconfig(libpulse)
BuildRequires: pkgconfig(libusb)
BuildRequires: pkgconfig(libv4l2)
BuildRequires: pkgconfig(libxml-2.0)
BuildRequires: pkgconfig(miniupnpc)
BuildRequires: pkgconfig(openal)
@ -159,28 +147,13 @@ BuildRequires: pkgconfig(Qt5Network) >= 5.2
BuildRequires: pkgconfig(Qt5Widgets) >= 5.2
BuildRequires: pkgconfig(sdl2)
BuildRequires: pkgconfig(vulkan)
BuildRequires: pkgconfig(wayland-egl)
BuildRequires: pkgconfig(wayland-protocols)
BuildRequires: pkgconfig(xinerama)
BuildRequires: pkgconfig(xkbcommon)
BuildRequires: pkgconfig(xrandr)
BuildRequires: pkgconfig(xxf86vm)
BuildRequires: pkgconfig(zlib)
%if %{with freeworld}
# Available in Freeworld repo
BuildRequires: ffmpeg-devel
# Since F36 ffmpeg-free available in official repos
%else
%if 0%{?fedora} >= 37
BuildRequires: ffmpeg-free-devel
BuildRequires: libavcodec-free-devel
BuildRequires: libavdevice-free-devel
BuildRequires: libavformat-free-devel
BuildRequires: libavutil-free-devel
BuildRequires: libswresample-free-devel
BuildRequires: libswscale-free-devel
%endif
%endif
%if %{with nonfree}
# Available in Non-Free repo
@ -189,46 +162,43 @@ BuildRequires: libCg
BuildRequires: xv
%endif
Requires: perl(Net::DBus)
Requires: perl(X11::Protocol)
Requires: perl(Net::DBus) %dnl Fedora package: perl-Net-DBus
Requires: perl(X11::Protocol) %dnl Fedora package: perl-X11-Protocol
Recommends: %{name}-assets = %{?epoch:%{epoch}:}%{version}-%{release}
Recommends: %{name}-database = %{?epoch:%{epoch}:}%{version}-%{release}
Recommends: %{name}-database%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
Recommends: %{name}-filters%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
Recommends: gamemode
Recommends: libretro-beetle-ngp
Recommends: libretro-beetle-pce-fast
Recommends: libretro-beetle-vb
Recommends: libretro-beetle-wswan
Recommends: libretro-bsnes-mercury
Recommends: libretro-desmume2015
Recommends: libretro-gambatte
Recommends: libretro-gw
Recommends: libretro-handy
Recommends: libretro-mgba
Recommends: libretro-nestopia
Recommends: libretro-pcsx-rearmed
Recommends: libretro-prosystem
Recommends: libretro-stella2014
Recommends: libretro-beetle-ngp%{?_isa}
Recommends: libretro-beetle-pce-fast%{?_isa}
Recommends: libretro-beetle-vb%{?_isa}
Recommends: libretro-beetle-wswan%{?_isa}
Recommends: libretro-bsnes-mercury%{?_isa}
Recommends: libretro-desmume2015%{?_isa}
Recommends: libretro-gambatte%{?_isa}
Recommends: libretro-gw%{?_isa}
Recommends: libretro-handy%{?_isa}
Recommends: libretro-mgba%{?_isa}
Recommends: libretro-nestopia%{?_isa}
Recommends: libretro-pcsx-rearmed%{?_isa}
Recommends: libretro-prosystem%{?_isa}
Recommends: libretro-stella2014%{?_isa}
%if %{with freeworld}
# Non-Free cores
# * Dummy for future
%endif
Provides: bundled(7zip) = 19.00
Provides: bundled(7zip) = 9.20
Provides: bundled(discord-rpc)
Provides: bundled(dr)
Provides: bundled(glslang)
Provides: bundled(ibxm)
# https://github.com/libretro/RetroArch/issues/8153
Provides: bundled(lua) = 5.3.6
Provides: bundled(lua) = 5.3.5
Provides: bundled(flac) = 1.3.2
Provides: bundled(rcheevos) = 12.1
Provides: bundled(rcheevos) = 7.0.2
Provides: bundled(SPIRV-Cross)
# Unbundling this in the manner of the other stb libraries does not work.
Provides: bundled(stb_vorbis)
Provides: bundled(stb)
%global _description %{expand:
libretro is an API that exposes generic audio/video/input callbacks. A frontend
@ -238,10 +208,7 @@ seamlessly on many platforms with very little to no porting effort.
While RetroArch is the reference frontend for libretro, several other projects
have used the libretro interface to include support for emulators and/or game
engines. libretro is completely open and free for anyone to use.
For how to download and install more libretro cores please read included
README.fedora.md file.}
engines. libretro is completely open and free for anyone to use.}
%description %{_description}
@ -284,13 +251,18 @@ Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
%description database
RetroArch incoporates a ROM scanning system to automatically produce playlists.
Each ROM that is scanned by the playlist generator is checked against a database
of ROMs that are known to be good copies.
Each ROM that is scanned by the playlist generator is checked against a
database of ROMs that are known to be good copies.
%prep
%setup -n RetroArch-%{version} -q
%setup -n RetroArch-%{version} -q -D -T -a1
pushd %{appname}-assets-%{commit1}
%patch0 -p1
popd
%setup -n RetroArch-%{version} -q -D -T -a3
%setup -n RetroArch-%{version} -q -D -T -a4
%setup -n RetroArch-%{version} -q -D -T -a5
@ -299,20 +271,16 @@ of ROMs that are known to be good copies.
pushd deps
rm -rf \
libfat \
%dnl Since Flac 1.5.0 update RetroArch won't compile \
%dnl libFLAC \
libFLAC \
libiosuhax \
libvita2d \
libz \
miniupnpc \
peglib \
pthreads \
wayland-protocols \
%{nil}
popd
for lib in image rect_pack truetype
do
ln -svf /usr/include/stb/stb_${lib}.h deps/stb/stb_${lib}.h
done
# * Not part of the 'mbedtls' upstream source
find deps/mbedtls/ ! -name 'cacert.h' -type f -exec rm -f {} +
@ -353,25 +321,25 @@ sed -e 's|HAVE_UPDATE_ASSETS=yes|HAVE_UPDATE_ASSETS=no|g' -i qb/config.params.sh
sed -e 's|retroarch.cfg|%{name}.cfg|g' \
-i retroarch.c \
configuration.c \
%{nil}
file_path_str.c
%endif
%build
./configure \
--prefix=%{_prefix} \
%dnl --disable-builtinflac \
--disable-builtinflac \
--disable-builtinmbedtls \
--disable-builtinminiupnpc \
--disable-builtinzlib \
--enable-dbus \
--enable-libdecor \
--enable-wayland \
%{nil}
%set_build_flags
%make_build
# Assets
%make_build -C %{appname}-assets-%{version}
%make_build -C %{appname}-assets-%{commit1} \
GIT_VERSION=%{shortcommit1}
# Audio filters
%make_build -C libretro-common/audio/dsp_filters
@ -383,7 +351,7 @@ sed -e 's|retroarch.cfg|%{name}.cfg|g' \
%make_build -C libretro-core-info-%{version}
# Joypad Autoconfig Files
%make_build -C %{appname}-joypad-autoconfig-%{version}
%make_build -C %{appname}-joypad-autoconfig-%{commit4}
# Database files (cheatcode, content data, cursors)
%make_build -C libretro-database-%{version}
@ -395,7 +363,7 @@ rm %{buildroot}%{_docdir}/%{appname}/COPYING \
%{buildroot}%{_docdir}/%{appname}/README.md
# Assets
%make_install -C %{appname}-assets-%{version}
%make_install -C %{appname}-assets-%{commit1}
%if %{with freeworld}
mv %{buildroot}%{_datadir}/libretro/assets/ \
%{buildroot}%{_datadir}/libretro/assets-freeworld/
@ -421,14 +389,14 @@ rm %{buildroot}%{_datadir}/libretro/assets%{?p_suffix}/pkg/osd-font.ttf \
INSTALLDIR=%{_libdir}/retroarch/filters%{?p_suffix}/video
# Libretro's core info
%make_install -C libretro-core-info-%{version} \
%make_install -C libretro-core-info-%{version} \
INSTALLDIR=%{_datadir}/libretro/info%{?p_suffix}
# AppData manifest
%dnl install -m 0644 -Dp %{SOURCE2} %{buildroot}%{_metainfodir}/%{uuid}.appdata.xml
install -m 0644 -Dp %{SOURCE2} %{buildroot}%{_metainfodir}/%{uuid}.appdata.xml
# Joypad Autoconfig Files
%make_install -C %{appname}-joypad-autoconfig-%{version} \
%make_install -C %{appname}-joypad-autoconfig-%{commit4} \
DOC_DIR=%{_datadir}/libretro/autoconfig/doc
%if %{with freeworld}
mv %{buildroot}%{_datadir}/libretro/autoconfig/ \
@ -436,9 +404,13 @@ mv %{buildroot}%{_datadir}/libretro/autoconfig/ \
%endif
# Database files (cheatcode, content data, cursors)
%make_install -C libretro-database-%{version} \
%make_install -C libretro-database-%{version} \
INSTALLDIR=%{_datadir}/libretro/database%{?p_suffix}
# Rename desktop file to UUID for compatibility
mv %{buildroot}%{_datadir}/applications/%{appname}.desktop \
%{buildroot}%{_datadir}/applications/%{uuid}.desktop
%if %{with freeworld}
# Rename binary, desktop file, appdata manifest, manpage and config file
mv %{buildroot}%{_bindir}/%{appname} \
@ -461,8 +433,6 @@ sed -i 's|org.libretro.RetroArch.desktop|org.libretro.RetroArch-freeworld.deskto
%{buildroot}%{_metainfodir}/%{uuid}-freeworld.appdata.xml
%endif
install -Dpm0755 %{SOURCE10} -t %{buildroot}%{_bindir}
install -Dpm0644 %{SOURCE11} -t %{buildroot}%{_docdir}/%{name}
%check
desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop
@ -471,7 +441,7 @@ appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/*.xml
%files
%license COPYING
%doc README.md README.fedora.md README-exynos.md README-OMAP.md README-mali_fbdev_r4p0.md CHANGES.md CONTRIBUTING.md
%doc README.md README-exynos.md README-OMAP.md README-mali_fbdev_r4p0.md CHANGES.md CONTRIBUTING.md
%{_bindir}/%{appname}*
%{_datadir}/applications/*.desktop
%{_datadir}/libretro/autoconfig%{?p_suffix}/
@ -507,4 +477,67 @@ appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/*.xml
%changelog
%autochangelog
* Sat May 15 2021 Artem Polishchuk <ego.cordatus@gmail.com> - 1.9.3-1
- build(update): 1.9.3
* Sat May 01 2021 Artem Polishchuk <ego.cordatus@gmail.com> - 1.9.2-1
- build(update): 1.9.2
* Mon Mar 29 2021 Artem Polishchuk <ego.cordatus@gmail.com> - 1.9.1-1
- build(update): 1.9.1
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.9.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Sat Aug 08 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.9.0-1
- Update to 1.9.0
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.9-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Sat Jun 20 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.9-1
- Update to 1.8.9
* Wed May 27 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.8-1
- Update to 1.8.8
* Tue May 19 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.7-2
- Add Database files (cheatcode, content data, cursors) | Fix: RH#1822743
- Disable LTO
* Mon May 18 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.7-1
- Update to 1.8.7
* Thu May 07 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.6-1
- Update to 1.8.6
* Thu Mar 26 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.5-2
- Add Joypad Autoconfig Files
* Mon Mar 23 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.5-1
- Update to 1.8.5
- Add new libretro core
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.8.4-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Wed Jan 29 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.4-3
- Spec file improvements
- Thanks to Nicolas Chauvet <kwizart@gmail.com> for help with packaging and review
* Fri Jan 24 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.4-2
- Add Libretro's core info. Thanks <jamesunderland@protonmail.com>
* Sun Jan 19 2020 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.4-1
- Update to 1.8.4
- Add missed Perl modules
* Sun Dec 29 2019 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.2-2
- Make fully standlone Freeworld package as RPM Fusion recommended
* Thu Dec 26 2019 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.2-1
- Update to 1.8.2
* Fri Nov 29 2019 Artem Polishchuk <ego.cordatus@gmail.com> - 1.8.1-14
- Initial package
- Thanks to Vitaly Zaitsev <vitaly@easycoding.org> for help with packaging and review

10
sources
View file

@ -1,5 +1,5 @@
SHA512 (libretro-core-info-1.22.0.tar.gz) = a9c4b471b77b09fcaa1d46f4fae9d56a07e30ef15665f1b067d53a28b5e14c2b83120dee8ddaa1ec9ba31bab198fb748f76d5d4990888f9141e774e256ec6e2d
SHA512 (libretro-database-1.22.0.tar.gz) = 832f020182d4371e88ddb817c9214f7292265a82e51e53e9a1645217f1de801ad67c2b05cd19e17b70732f79e3ee3d33e82e7045e5bda6d3d81414a677b3fcb5
SHA512 (retroarch-1.22.0.tar.gz) = 99a2c1bf4d74090c357431e78968012187ec47040b2b22c5f5d155d9e1713583d3160b2fcd4b872e177f706a87cbc660efb37766181862865f8f3a437e3b92f5
SHA512 (retroarch-assets-1.22.0.tar.gz) = 930683106b777745a799ce6a45aac82e09164946a788f820aed27856d1a3fcf39f26045edc84706f047afe654bd3ba265d84dcaf143def194258606c4ff656be
SHA512 (retroarch-joypad-autoconfig-1.22.0.tar.gz) = 1b59694d3520a516f145d3e48d12b42267591cd59f44ca0d6b1a3532d6c195884e2d4345a69326bf6fe75bf53b4edb077cfe57a4701e3fe72f04e61f66a0d317
SHA512 (libretro-core-info-1.9.3.tar.gz) = c39d1e33d1c3f04817f8cf94ab05a0f684ffb58046d5b2ba71fcbc6abacf91931f9e897abf1c8b7aa775fe41e09e4325b662392abb2ce226234c7f61c1df9921
SHA512 (libretro-database-1.9.3.tar.gz) = d32054b5dbdd1f7f89279aadfa704ec51eb6043c09e1b2867c198bfe4c45fbcde42aa4d9ea9a770610562cb0f8524e25f7da27e40d9db583f10eb2177890c7df
SHA512 (retroarch-1.9.3.tar.gz) = 9b009d41f1ecda6a490101d8cff2ea6127d682735a2e8ee3d1e991ed8824412a6047bed0157c89ec00cd789b8b220e2ce250a394ff675d4c3fdedcca17694018
SHA512 (retroarch-assets-20210422git8d114dd.tar.gz) = 75eea5835164f44658535c1f8dc243542839b949dc6f87952bb6c0f15d059cf406bb08f6150f51a668b14f522e11afa8b1827eb3a7db7ea881fed3816d904d61
SHA512 (retroarch-joypad-autoconfig-20210518gitaedf931.tar.gz) = 0e99f1a58d37aaa02abc0f80b11abcba7329373244dff74861cb1591ed5b740ad50cb271323a6e76eac6d6f441daa1423f9c310cd6a8db39ac0863c9b751e6ba