commit a50e4bd8b45e26db00c2c6dab19562e86961d331
Author: Artem Polishchuk <ego.cordatus(a)gmail.com>
Date: Sun Feb 2 13:03:26 2020 +0200
Spec file improvements
Thanks to Nicolas Chauvet <kwizart(a)gmail.com> for help with packaging and
review
.gitignore | 3 +
add-executable-bit-to-script.patch | 13 +
org.libretro.RetroArch.appdata.xml | 637 +++++++++++++++++++++++++++++++++++++
retroarch-freeworld.spec | 426 +++++++++++++++++++++++++
sources | 3 +
5 files changed, 1082 insertions(+)
---
diff --git a/.gitignore b/.gitignore
index e69de29..0505057 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1,3 @@
+/libretro-core-info-1.8.4.tar.gz
+/retroarch-1.8.4.tar.gz
+/retroarch-assets-20191031gitc2bbf23.tar.gz
diff --git a/add-executable-bit-to-script.patch b/add-executable-bit-to-script.patch
new file mode 100644
index 0000000..b575867
--- /dev/null
+++ b/add-executable-bit-to-script.patch
@@ -0,0 +1,13 @@
+From e51c6d405ec8ce6b708292e8f55b9106d92b23e0 Mon Sep 17 00:00:00 2001
+From: Artem Polishchuk <ego.cordatus(a)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
diff --git a/org.libretro.RetroArch.appdata.xml b/org.libretro.RetroArch.appdata.xml
new file mode 100644
index 0000000..fb881bf
--- /dev/null
+++ b/org.libretro.RetroArch.appdata.xml
@@ -0,0 +1,637 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Copyright 2019 Rob Loach <robloach(a)gmail.com> -->
+<component type="desktop-application">
+ <id>org.libretro.RetroArch</id>
+ <launchable
type="desktop-id">org.libretro.RetroArch.desktop</launchable>
+ <name>RetroArch</name>
+ <summary>Frontend for emulators, game engines and media players</summary>
+ <developer_name>libretro</developer_name>
+ <url type="homepage">https://www.retroarch.com</url>
+ <url type="help">https://docs.libretro.com</url>
+ <url
type="faq">https://retroarch.com/?page=faq</url>
+ <url
type="donation">https://retroarch.com/index.php?page=donate&...
+ <content_rating type="oars-1.0" />
+ <categories>
+ <category>Game</category>
+ </categories>
+ <screenshots>
+ <screenshot type="default">
+ <caption>RetroArch main menu</caption>
+ <image type="source" width="1600"
height="900">https://rawgit.com/flathub/org.libretro.RetroAr...
+ </screenshot>
+ <screenshot>
+ <caption>RetroArch running the NES</caption>
+ <image type="source" width="1135"
height="638">https://rawgit.com/flathub/org.libretro.RetroAr...
+ </screenshot>
+ <screenshot>
+ <caption>RetroArch running Sheep It Up on the Gameboy</caption>
+ <image type="source" width="1332"
height="749">https://rawgit.com/flathub/org.libretro.RetroAr...
+ </screenshot>
+ <screenshot>
+ <caption>RetroArch running the Super Nintendo</caption>
+ <image type="source" width="1172"
height="659">https://rawgit.com/flathub/org.libretro.RetroAr...
+ </screenshot>
+ </screenshots>
+ <description>
+ <p>
+ RetroArch enables you to run classic games on a wide range of computers and
consoles through its slick graphical interface. Settings are also unified so configuration
is done once and for all.
+ </p>
+ <p>
+ It enables you to run classic games on a wide range of computers and consoles
through its slick graphical interface. Settings are also unified so configuration is done
once and for all. RetroArch has advanced features like shaders, netplay, rewinding,
next-frame response times, runahead, and more!
+ </p>
+ </description>
+ <project_license>GPL-3.0</project_license>
+ <metadata_license>CC0-1.0</metadata_license>
+ <releases>
+ <release version="1.8.1" date="2019-11-03">
+
<
url>https://www.libretro.com/index.php/retroarch-1-8-1-released/</u...
+ <description>
+ <ul>
+ <li>BUGFIX/MENU: Fix menu rendering with Mali GPUs after changing video
dimensions</li>
+ <li>CDROM: Adds pregap support to cdfs helper methods</li>
+ <li>CHEEVOS: Provides the new PCEngine hashing algorithm for
RetroAchievements</li>
+ <li>LOCALIZATION: Update French translation</li>
+ <li>LOCALIZATION: Update Polish translation</li>
+ <li>LOCALIZATION: Update Spanish translation</li>
+ <li>MENU/MATERIALUI: Initial thumbnail support</li>
+ <li>MENU/MATERIALUI: Cutie / Virtual Boy theme added</li>
+ <li>MENU/MATERIALUI: Bugfix - Under certain extreme circumstances,
entries with very long sublabel strings could have their text prematurely
'clipped' as the entry is scrolled beyond the top of the
screen</li>
+ <li>MENU/MATERIALUI: Bugfix - Certain setting value strings were
unnecessarily truncated (with a ...) when using smooth ticker text</li>
+ <li>MENU/XMB: Sunbeam theme added</li>
+ </ul>
+ </description>
+ </release>
+ <release version="1.8.0" date="2019-10-26">
+
<
url>https://www.libretro.com/index.php/retroarch-1-8-0-released/</u...
+ <description>
+ <ul>
+ <li>AI SERVICE: Added in fix for BMP returns to AI service</li>
+ <li>BSV: Fix BSV recording/playback</li>
+ <li>BUGFIX: Fix crash when setting Thumbnail Directory</li>
+ <li>BUGFIX/STABILITY: Set "Automatically Add Content to
Playlist" to false by default</li>
+ <li>COMMON: Graceful driver switching for Windows and Linux</li>
+ <li>COMMON: Cache frame before converting 0RGB1555</li>
+ <li>MENU: Menu scaling improvements</li>
+ <li>MENU/MATERIALUI: There are no longer any animation glitches when
'wraparound' scrolling from the last entry in a list to the first, or when
performing horizontal swipe navigation gestures on certain settings-type
entries</li>
+ <li>MENU/MATERIALUI: List entries underneath the title and navigation
bars are no longer highlighted when touching the title/navigation bars</li>
+ <li>MENU/MATERIALUI: The current menu list is no longer reloaded when
pressing the currently active tab on the navigation bar</li>
+ <li>MENU/MATERIALUI: The ticker text spacer has been set to a
'bullet' character (same as Ozone)</li>
+ <li>MENU/MATERIALUI: The default colour theme has been set to 'Ozone
Dark'</li>
+ <li>MENU/MATERIALUI: Three new colour themes have been added</li>
+ <li>MENU/MATERIALUI: A new Menu Transition Animation option has been
added under User Interface > Appearance</li>
+ <li>MENU/MATERIALUI: The navigation bar is now shown at all
times</li>
+ <li>MENU/MATERIALUI: Two new context-sensitive buttons have been added to
the navigation bar - back button and resume button</li>
+ <li>MENU/MATERIALUI: A new Auto-Rotate Navigation Bar option has been
added under User Interface > Appearance</li>
+ <li>MENU/MATERIALUI: The playlists tab is now correctly hidden when User
Interface > Views > Show Playlist Tabs is disabled</li>
+ <li>MENU/MATERIALUI: Material UI now correctly readjusts its layout when
screen orientation changes on mobile devices</li>
+ <li>MENU/MATERIALUI: Material UI now resizes in real-time when the user
manually sets the Menu Scale Factor (this never worked properly with the old DPI
override)</li>
+ <li>MENU/MATERIALUI: Material UI no longer leaks memory on 'context
reset' (fonts were previously never free()'d)</li>
+ <li>MENU/MATERIALUI: A new Android-style 'system bar' has been
added. This shows current core name, clock and battery level</li>
+ <li>MENU/MATERIALUI: A new search icon is shown on the title bar when
viewing playlists and file browser lists</li>
+ <li>MENU/MATERIALUI: The title bar now uses a larger font, and the
sublabel font has also been enlarged a little, to more closely align with Material UI
standards</li>
+ <li>MENU/MATERIALUI: A number (quite a large number) of layout/spacing
issues have been fixed</li>
+ <li>MENU/MATERIALUI: The existing colour theme handling code is not fit
for purpose, so the whole lot got ripped out and reimplemented</li>
+ <li>OSD: Fix fast forward indicator when not using menu
widgets</li>
+ <li>VIDEO LAYOUT: Add video layout mame overlay compatibility</li>
+ </ul>
+ </description>
+ </release>
+ <release version="1.7.9" date="2019-10-07">
+
<
url>https://www.libretro.com/index.php/retroarch-1-7-9-released/</u...
+ <description>
+ <ul>
+ <li>AI SERVICE: Image mode is now much faster</li>
+ <li>BUGFIX: Touch input - When using an overlay to toggle the quick menu
on touchscreen devices</li>
+ <li>BUGFIX: Networking - RetroArch crashed when pressing left while Relay
Server Location entry was selected</li>
+ <li>BUGFIX: Networking - fix memory leak that could happen at exit after
a network
+ operation had run</li>
+ <li>CHEEVOS: Improve handling of line endings when calculating CD hashes
for retroachievements</li>
+ <li>CHEEVOS: Add support for Sega CD/Saturn; reduce hash calls to
server</li>
+ <li>FPGA: Add initial FPGA port for Z-Turn boards - not really
release-ready yet, will need community support to continue. Currently employs naive
framebuffer approach, not fullspeed</li>
+ <li>GL1: GLDirect (D3D9 to OGL1.1 wrapper) support</li>
+ <li>GONG: Stability fixes</li>
+ <li>LINUX/UDEV: Fix touchscreen/lightgun issues</li>
+ <li>MENU/MATERIALUI: MaterialUI no longer 'forgets' its place
when navigating backwards in menus, and navigation in general is
'cleaner'.</li>
+ <li>MENU/MATERIALUI: Add initial gesture support</li>
+ <li>MENU/MATERIALUI: Improved touch support</li>
+ <li>MENU/MATERIALUI: Bugfix - Random' items are no longer
automatically highlighted when performing standard up/down 'flick' scrolling
through lists</li>
+ <li>MENU/MATERIALUI: Bugfix - The display no longer 'jerks' for
one frame when navigating backwards through lists</li>
+ <li>MENU/MATERIALUI: Bugfix - The Material UI scaling factor is now based
upon the device-reported screen DPI value (previously it relied upon a hard-coded magic
number, which was never correct)</li>
+ <li>MENU/RGUI: Functional mouse/touchscreen support</li>
+ <li>MENU/ONSCREEN KEYBOARD: On-screen keyboard entry via
mouse/touchscreen has been tidied up - no more double inputs (or unwanted menu interaction
in the background)</li>
+ <li>MENU/MOUSE: Mouse wheel up/down is now a proper 'up/down',
same as using cursor keys or a dpad</li>
+ <li>MENU/MOUSE: Mouse wheel tilt left/right has been wired up to normal
'left/right' commands</li>
+ <li>MENU/OZONE: Add option to toggle between static and scrolling content
metadata</li>
+ <li>MENU/XMB: Add full gesture support</li>
+ <li>MENU: When navigating backwards from a core options drop-down list
(i.e. pressing select or cancel), the last menu position is remembered (instead of
resetting back to the first core option item each time)</li>
+ <li>MENU: Add mouse/touchscreen gesture support</li>
+ <li>MENU: Add option to delete playlists (Settings and Playlists:
Playlist Management)</li>
+ <li>OSD: Memory details should now be available on every platform
(get_mem_total and get_mem_free need to be implemented in the frontend driver for it to
work)</li>
+ <li>OSD: Memory details can now be shown individually without FPS and
frame count</li>
+ <li>THREADED VIDEO: Fix FPS text in threaded video mode</li>
+ </ul>
+ </description>
+ </release>
+ <release version="1.7.8" date="2019-08-30">
+
<
url>https://www.libretro.com/index.php/retroarch-1-7-8-v2-released/<...
+ <description>
+ <ul>
+ <li>AI: Add AI Service functionality</li>
+ <li>AI: Fix 'Japanese' setting</li>
+ <li>BPS/UPS: Re-allocation target_data variable for target patch
size</li>
+ <li>CDROM: Added real CD-ROM functionality for Windows and
Linux</li>
+ <li>CDROM: Added disc dumping</li>
+ <li>CHEEVOS: Fix Achievements badges</li>
+ <li>CHEEVOS: Add hashing support for PSX (bin/cue, chd, or real
CD)</li>
+ <li>COMMON: Add separate frontend logging</li>
+ <li>COMMON: Ability to set FPS update interval (used in the window
titlebar/FPS widget)</li>
+ <li>COMMON: Add 'Reset Frame Time Counter'
functionality</li>
+ <li>COMMON: Add optional 'on demand' thumbnail
downloads</li>
+ <li>COMMON: Add new playlist-based thumbnail downloader</li>
+ <li>COMMON: Show license per core (if available) inside 'Load
Core'</li>
+ <li>COMMON: Add option to load content from (and dump) CD-ROM
discs</li>
+ <li>COMMON: Re-enable '--log-file' command line
option</li>
+ <li>COMMON: Default playlist core association is now stored as metadata
inside each playlist</li>
+ <li>COMMON: Fix playlist format detection</li>
+ <li>COMMON: Favorites playlist size can now be set independently of
content history size</li>
+ <li>COMMON: Prevent adding new items to favorites when playlist is full
(old entries are no longer overwritten)</li>
+ <li>COMMON: Prevent loading content with cores that require an
incompatible graphics API version from the current one</li>
+ <li>COMMON: Saved shader presets are now portable across platforms and
use relative paths</li>
+ <li>COMMON: Add '--set-shader' command line option which works
like an override for automatic shader presets</li>
+ <li>COMMON: Add global shader presets</li>
+ <li>COMMON: Remove 'video_shader' setting, shaders are not saved
automatically anymore</li>
+ <li>CORE OPTIONS: When saving core option overrides, only include
settings for the current core</li>
+ <li>CORE OPTIONS: Add option to save core options per-core</li>
+ <li>CPU FILTERS: Add Scanline2x filter</li>
+ <li>GL/MALI400: Fix menu issues on Mali 400 series GPUs, should also fix
'RetroArch flickers black on ARM Mali GPUs (Android/ARM Linux)</li>
+ <li>GL/GLCORE: Use highest supported OpenGL Core version on Windows and
X11</li>
+ <li>GL1: Ignore alpha in core video, fixes XRGB8888 rendering in some
cores</li>
+ <li>GLCORE: Don't hardcode shader cross compilation target version
but poll it</li>
+ <li>GLCORE: Fix regression - shaders don't work</li>
+ <li>GLCORE/SLANG: Added "FrameDirection slang semantic</li>
+ <li>HID: Add Retrode support. Should work on Wii/WiiU</li>
+ <li>INPUT: Menu toggle hotkey can now be bound to another keyboard key
and it will toggle properly</li>
+ <li>LIBRETRO: Add new core options interface, allows for localization,
sublabels and more</li>
+ <li>LIBRETRO: Add new bitmask input codepath, for RETRO_DEVICE_ID_JOYPAD
only for now</li>
+ <li>LOCALIZATION: Update Korean translation</li>
+ <li>LOCALIZATION: Update Japanese translation</li>
+ <li>LOCALIZATION: Update Portuguese Brazilian Translation</li>
+ <li>LOCALIZATION: Update Polish translation</li>
+ <li>LOCALIZATION: Update Turkish translation</li>
+ <li>LOCALIZATION: Update Japanese translation</li>
+ <li>LOCALIZATION: Update Korean translation</li>
+ <li>LOCALIZATION: Update Polish translation</li>
+ <li>MENU/XMB: Smooth vertical ticker scrolling</li>
+ <li>MENU: Add smooth ticker text</li>
+ <li>MENU: Ability to hide every settings submenu (User Interface, Views,
Settings)</li>
+ <li>MENU: Ability to hide nearly every quick menu entry (User Interface,
Views, Quick Menu)</li>
+ <li>MENU: Fix longstanding menu display issues on Mali400 GPUs (on ARM
hardware, SBCs and mobile phones/tablets)</li>
+ <li>MENU: Fix Record Streaming Quality, and Record, Recording Threads
settings</li>
+ <li>MENU: Fix history playlist navigation after running
content</li>
+ <li>NENU: Menu entry performance optimisations</li>
+ <li>MENU: Add option to show 'remove playlist entry' only on
history/favourites</li>
+ <li>MENU: Overhaul content 'Information' menu display</li>
+ <li>MENU: Add new 'Playlist Management' submenu. Allows default
core associations to be set (via dropdown list), and all existing associations to be
reset</li>
+ <li>MENU: Add 'Set Core Association' option to Quick
Menu</li>
+ <li>MENU: Add option to remain in menu after saving/loading
states</li>
+ <li>MENU: Pressing the Start button on 'Load Core' will unload
the core</li>
+ <li>MENU: After a core is running, Load Core will be hidden from view
until you select 'Close Content' from the Quick Menu</li>
+ <li>MENU/WIDGETS: All widgets are now properly cleaned up, fixing the
frozen widgets bug when loading / closing content</li>
+ <li>MENU/WIDGETS: Fix crash with tasks</li>
+ <li>MENU/WIDGETS: Widgets are now drawn above the overlay with OpenGL and
Vulkan</li>
+ <li>MENU/WIDGETS: Fine tune progress bar colors</li>
+ <li>MENU/WIDGETS: Have the progression widget always resize</li>
+ <li>MENU/THUMBNAILS: Ensure that displayed thumbnails are always
refreshed correctly after selecting 'Download Thumbnails' from Quick
Menu</li>
+ <li>MENU/THUMBNAILS: Make PNG image loading/processing non-blocking on
non-threaded systems</li>
+ <li>MENU/OZONE: Add it for PS3</li>
+ <li>MENU/OZONE: Fix regression in 1.7.7 - OSX/macOS - was unable to start
it</li>
+ <li>MENU/OZONE: Fix sublabel spacing</li>
+ <li>MENU/OZONE: Add toggle to enable/disable playlist name truncation in
Ozone</li>
+ <li>MENU/OZONE: (Ozone) Fix display of (semi-)transparent
thumbnails</li>
+ <li>MENU/XMB: Add menu animation settings</li>
+ <li>MENU/XMB: Add optional thumbnail scaling</li>
+ <li>MENU/XMB: Fix display of long sublabels. Text that would exceed the
display area now scrolls line-by-line</li>
+ <li>MENU/XMB/OZONE: Add optional thumbnail upscaling</li>
+ <li>MENU/QT/WIMP: Add core option sublabels as tooltips, add buttons to
reset one/all core options</li>
+ <li>MENU/QT/WIMP: Word-wrap core option tooltips</li>
+ <li>MENU/QT/WIMP: Path selector fixes</li>
+ <li>MENU/RGUI: Enable playlist display on platforms without database
support</li>
+ <li>MENU/RGUI: Make particle effects framerate independent + add
animation speed setting</li>
+ <li>MIDI: correct pitch bend in ALSA driver - MIDI standard pitch bend
center position is 0x2000 but ALSA's is 0</li>
+ <li>MIDI: Fix SysEx handling</li>
+ <li>OSD: OSD is now drawn above the overlay with Vulkan</li>
+ <li>PATCH: Fix IPS patches</li>
+ <li>PLAYLISTS: Fix playlist heap corruption bug</li>
+ <li>PLAYLISTS: Add history/favourites to 'Playlist Management'
menu</li>
+ <li>RECORD: Fix Twitch streaming</li>
+ <li>REMOTE RETROPAD: Fix for Remote RetroPad input</li>
+ <li>RUNAHEAD/MSVC2010: Build in runahead support for MSVC2010 and
up</li>
+ <li>RUNAHEAD/VITA: Build in runahead support for Vita version</li>
+ <li>SAVESTATES: Allow auto save states also in cores that support no
content as long as some content is loaded</li>
+ <li>SCALER: Fix SSE2 path for ARGB/BGRA -> BGR24 - should fix
screenshots being taken for XRGB888 (viewport)</li>
+ <li>SCANNER: Skip all databases with incompatible file extensions,
whether content is inside an archive or not</li>
+ <li>SCANNER: Fix hang on empty files inside archives</li>
+ <li>SHADERS: Fix shader loading and saving in content-less
cores</li>
+ <li>SHADERS: Implement video shader delay setting</li>
+ <li>SHADERS: Add proper shader compatibility checks</li>
+ <li>SHADERS: Enable Cg shaders for D3D9</li>
+ <li>SHADERS: Remove 'video_shader' setting, replace it with
global presets that make more sense</li>
+ <li>SHADERS: #reference directive for shaders. Presets can point to other
existing presets if they are unchanged</li>
+ <li>SHADERS: Will attempt to cache the shader/preset into memory before
loading to avoid costly getline/gets/getc operations</li>
+ <li>SHADERS: New --set-shader commandline option</li>
+ <li>SHADERS/MENU: Prevent undefined behaviour when failing to load
shaders</li>
+ <li>SHADERS/MENU: Pressing the Start button on 'Load Shader
Preset' will reset all shader passes and apply changes, effectively disabling the
shaders</li>
+ <li>SHADERS/MENU: New menu options for removing shader presets
(global/core/parent/etc)</li>
+ <li>THUMBNAILS: Add optional On-Demand Thumbnails</li>
+ <li>UDEV: Fix wrong udev devices order</li>
+ <li>UDEV/X11: Mouse pointer should work now in X11 environment with no
Display</li>
+ <li>VULKAN/SLANG: Added "FrameDirection" slang
semantic</li>
+ <li>VULKAN: Add option to select which GPU to render with</li>
+ <li>VULKAN: Validate non-causal filter chain for texture inputs. We only
validated for UBO inputs apparently</li>
+ <li>WII: Add default video/audio filter directories</li>
+ <li>X11: Add improved menu resizing for window resizing</li>
+ <li>X11: Add non-evdev keycodes to fix keyboard input on non-Linux
systems with X11</li>
+ </ul>
+ </description>
+ </release>
+ <release version="1.7.7" date="2019-05-07">
+
<
url>https://www.libretro.com/index.php/retroarch-1-7-7-released/</u...
+ <description>
+ <ul>
+ <li>AUDIO: Avoid deadlocks in certain audio drivers when toggling menu
sounds on</li>
+ <li>BLISS-BOX: Support PSX Jogcon (requires firmware 3.0)</li>
+ <li>CHEEVOS: Fix crash when reading memory that is out of
range</li>
+ <li>CHEEVOS: New Cheevos implementation enabled by default</li>
+ <li>CHEEVOS: Pop-up badges when an achievement is triggered</li>
+ <li>CRT: Dynamic super resolution support</li>
+ <li>DISCORD: Fix potential crash when username is empty and discord is
disabled</li>
+ <li>DISCORD: Ask to join support for Linux</li>
+ <li>INPUT/ANDROID: Add "Input Block Timeout" option</li>
+ <li>COMMON: For platforms without HAVE_THREADS, don't automatically
resume content when saving/loading states</li>
+ <li>COMMON: Make playlist sorting optional and consistent</li>
+ <li>COMMON: Fix sorting of playlists with blank labels</li>
+ <li>COMMON: Fix content scanner creating false positive playlist entries
that also have wrong label and crc32</li>
+ <li>COMMON: Add some MMX-optimized pixel conversion routines</li>
+ <li>COMMON: Fix typo preventing some SSE2-optimized pixel conversions
from being used</li>
+ <li>COMMON: Add option to track how long content has been running over
time</li>
+ <li>COMMON: Fix buffer overflows in system information</li>
+ <li>COMMON: Add option to change screen orientation via the windowing
system (Android, Windows, X11)</li>
+ <li>COMMON: Show CPU model name in log</li>
+ <li>COMMON: Add "Help -> Send Debug Info" option (and F10
hotkey) to send diagnostic info to the RetroArch team for help with problems</li>
+ <li>COMMON: Show GPU device name/version in log</li>
+ <li>COMMON: Add menu option to write log info to a file</li>
+ <li>COMMON: Add subsystem support for playlists. Subsystem info is
automatically saved to the history playlist for easy relaunching</li>
+ <li>GL: Add new "gl1" OpenGL 1.1 compliant video driver for
legacy GPUs and software renderers</li>
+ <li>GL: Add a new "glcore" driver with slang support (requires
GL 3.2+ or GLES3)</li>
+ <li>GL: Draw OSD on top of overlay</li>
+ <li>GONG: Add savestate support</li>
+ <li>GONG: Add video refresh rate core options</li>
+ <li>GONG: Two player support via core option</li>
+ <li>GUI: Fix text alignment when using stb_unicode</li>
+ <li>GUI: Fix text display issues when using Japanese (and other
unicode-dependent language) text with stb_unicode</li>
+ <li>GUI: Set language on first startup to the user's preferred OS
language (Windows, *nix and Android)</li>
+ <li>INPUT: Add (scaled radial) analog deadzone and sensitivity
options</li>
+ <li>LIBRETRO: Add Turkish language support</li>
+ <li>LIBRETRO: Allow non-accelerated video to rotate the
display</li>
+ <li>LOCALIZATION: Update Chinese (Simplified) translation</li>
+ <li>LOCALIZATION: Update Chinese (Traditional) translation</li>
+ <li>LOCALIZATION: Update Dutch translation</li>
+ <li>LOCALIZATION: Update French translation</li>
+ <li>LOCALIZATION: Update German translation</li>
+ <li>LOCALIZATION: Update Japanese translation</li>
+ <li>LOCALIZATION: Update Polish translation</li>
+ <li>LOCALIZATION: Update Russian translation</li>
+ <li>LOCALIZATION: Update Spanish translation</li>
+ <li>LOCALIZATION: Add new Turkish translation</li>
+ <li>MIDI: Fix startup crash in midi driver</li>
+ <li>MENU: Bugfix - you can no longer get stuck in Online Updater ->
Update Core screen when toggling between ingame and menu</li>
+ <li>MENU: Selectively hide 'Take Screenshot' for video drivers
that don't support taking screenshots</li>
+ <li>MENU: Framerate independent menu rendering. MaterialUI/Ozone/XMB/RGUI
can now run at higher framerates</li>
+ <li>MENU: Thumbnails work in history list</li>
+ <li>MENU: Menu widgets</li>
+ <li>MENU: Add memory statistics support to more context
drivers</li>
+ <li>MENU: Enable ozone driver for UWP builds</li>
+ <li>MENU: Add optional "looping" menu text ticker with
configurable speed</li>
+ <li>MENU: Fix core video rendering when using ozone with GL cores that
implement the scissor test</li>
+ <li>MENU: Add optional playlist sublabels (associated core + play time,
where available)</li>
+ <li>MENU: Dropdown list settings now apply immediately</li>
+ <li>MENU: Add setting to require pressing the "Exit RetroArch"
hotkey twice to confirm</li>
+ <li>MENU: Now able to run at higher refresh rates than 60Hz</li>
+ <li>MENU: Enable "Add to Favorites" without loading a
core</li>
+ <li>MENU: Allow core name to be hidden on history/favorites
playlists</li>
+ <li>MENU: Populate crc32 and db_name fields when adding
history/favourites playlist entries</li>
+ <li>MENU: Fix TTF files not showing in OSD/menu font selection
screen</li>
+ <li>MENU: Fix audio/video filters not showing in file browser</li>
+ <li>MENU/MaterialUI: Add subsystem support</li>
+ <li>MENU/MaterialUI: Add currently selected entry in dropdown
menus</li>
+ <li>MENU/OZONE: Add mouse support on entries (no sidebar yet)</li>
+ <li>MENU/OZONE: Allow collapsing the sidebar</li>
+ <li>MENU/OZONE: Add thumbnail support</li>
+ <li>MENU/OZONE: Battery notifications</li>
+ <li>MENU/OZONE: Add wifi icon for network entries</li>
+ <li>MENU/QT/WIMP: Add git version and build date to Help->About
window</li>
+ <li>MENU/QT/WIMP: Fix content loading via the file browser</li>
+ <li>MENU/QT/WIMP: Add new settings window to control all RetroArch
settings</li>
+ <li>MENU/RGUI: Improve playlist titles</li>
+ <li>MENU/RGUI: Add option to hide associated cores in
playlists</li>
+ <li>MENU/RGUI: Add internal upscaling option</li>
+ <li>MENU/RGUI: Add subsystem support</li>
+ <li>MENU/RGUI: Add menu sublabel support</li>
+ <li>MENU/RGUI: Re-enable "Load Core" option when content is
loaded</li>
+ <li>MENU/RGUI: Add optional "Collections" entry to main
menu</li>
+ <li>MENU/RGUI: Add "Lock Menu Aspect Ratio" option</li>
+ <li>MENU/RGUI: Add "full width" layout option</li>
+ <li>MENU/RGUI: Ensure menu color theme is applied immediately</li>
+ <li>MENU/RGUI: Fix "Lock Menu Aspect Ratio" option when using
custom viewports</li>
+ <li>MENU/RGUI: Add widescreen support</li>
+ <li>MENU/RGUI: Allow text to be centred when selecting widescreen
layouts</li>
+ <li>MENU/RGUI: Add inline playlist thumbnail support</li>
+ <li>MENU/RGUI: Add optional shadow effects</li>
+ <li>MENU/RGUI: Performance optimizations</li>
+ <li>MENU/RGUI: Add optional extended ASCII support</li>
+ <li>MENU/RGUI: Add optional delay when loading thumbnails</li>
+ <li>MENU/RGUI: Add on-screen keyboard</li>
+ <li>MENU/RGUI: Battery notifications</li>
+ <li>MENU/XMB: Prevent crashes when resizing to a tiny window</li>
+ <li>MENU/XMB: XMB honors the 'show menu sublabels' setting now -
was previously RGUI only</li>
+ <li>NETPLAY: Fix stall-out causing total disconnection with >2
players</li>
+ <li>NETPLAY: Different (more intuitive?) default netplay share
policy</li>
+ <li>NETPLAY: Add hotkey option to toggle hosting on/off</li>
+ <li>NETWORKING: Encode URLs to allow for spaces in directory
names</li>
+ <li>SCANNER: New option 'Scan without core match'</li>
+ <li>SHADERS: Don't alphabetize shader presets</li>
+ <li>VULKAN: Fix color issues with RGBA8888 swapchains in readback
(screenshots)</li>
+ </ul>
+ </description>
+ </release>
+ <release version="1.7.6" date="2019-02-03">
+
<
url>https://www.libretro.com/index.php/retroarch-1-7-6-released/</u...
+ <description>
+ <ul>
+ <li>CHEEVOS: Reset when hardcore mode is toggled</li>
+ <li>CHEEVOS: Update the hashing methods to identify NES, SNES and Lynx
games (more accurate and accepting headerless ROMs)</li>
+ <li>COMMON: Add new JSON playlist format</li>
+ <li>COMMON: Fix playlist corruption when deleting items</li>
+ <li>COMMON: Fix archive progress display calculation</li>
+ <li>COMMON: Fix playlist entries appearing with previously used
names</li>
+ <li>COMMON: Fix screenshot filename with no core or content</li>
+ <li>COMMON: Allow compiling without menu support</li>
+ <li>CORE UPDATER: Allow sideloading cores from the menu</li>
+ <li>CPU FILTERS: Add Normal2x filter</li>
+ <li>CRT/LINUX: New Linux switching method partially
implemented</li>
+ <li>CRT/LINUX: Linux restore desktop resolution fixed</li>
+ <li>CRT/LINUX: Monitor index switching and auto enumerate for output
detection in Linux (still working on the windows method)</li>
+ <li>CRT/RASPBERRY PI: Initial support</li>
+ <li>DATE: Add Date / Time style options</li>
+ <li>DEBUGGING: Add an integrated crash handler for debug
builds</li>
+ <li>DISCORD: Register the application name properly</li>
+ <li>DISK CONTROL: Remember the last used folder / current active folder
to make disk-swapping faster</li>
+ <li>INPUT: Add new menu toggle (hold start button for 2
seconds)</li>
+ <li>INPUT: Fix arrow keys being incorrectly bound as numpad
keys</li>
+ <li>INPUT/SDL: Flush the joypad events. Decreases cpu usage over time
with the SDL joypad driver</li>
+ <li>LOCALIZATION: Add Greek translation</li>
+ <li>LOCALIZATION: Update German translation</li>
+ <li>LOCALIZATION: Update Italian translation</li>
+ <li>LOCALIZATION: Update Japanese translation</li>
+ <li>LOCALIZATION: Update Simplified Chinese translation</li>
+ <li>LOCALIZATION: Update Spanish translation</li>
+ <li>MENU: New "ozone" menu driver</li>
+ <li>MENU: Only show CRT SwitchRes if video display server is implemented
(Windows/Linux for now)</li>
+ <li>MENU: User Interface -> Appearance -> 'Menu Font Green/Blue
Color' settings now work properly</li>
+ <li>MENU: Add option to enable in-menu sound effects</li>
+ <li>MENU/QT/WIMP: Allow building with MSVC2017</li>
+ <li>MENU/QT/WIMP: Add detailed file browser table</li>
+ <li>MENU/QT/WIMP: New grid view implementation that is faster and loads
thumbnails on-demand</li>
+ <li>MENU/QT/WIMP: Thumbnail drag and drop support</li>
+ <li>MENU/RGUI: Overhaul custom theme interface + add wallpaper
support</li>
+ <li>MENU/RGUI: Thumbnail support and thumbnail downscaling</li>
+ <li>MENU: Hide password values</li>
+ <li>MENU/SOUNDS: Implement in-menu sound effects (not enabled by default
for now, still experimental)</li>
+ <li>MIDI: Add a Linux ALSA driver for MIDI</li>
+ <li>NETPLAY: Force fast-save-states when netplay is enabled</li>
+ <li>NETPLAY: Allow quick joining subsystem lobbies</li>
+ <li>RECORDING: Implement recording options in the menu complete with
quality profiles, streaming, and proper file naming</li>
+ <li>SCANNER: Fix GDI disc scanning</li>
+ <li>SHADERS: Fix auto shader preset loading on D3D10, D3D11,
D3D12</li>
+ <li>SUBSYSTEM: Allow more than 10 subsystems</li>
+ <li>SUBSYSTEM: Cores that use subsystem for complex scenarios can now
load content without starting a regular content first</li>
+ <li>SUBSYSTEM: Remember the last used folder to make loading subsystem
type content faster</li>
+ <li>VULKAN: Fix RGUI crashing at startup</li>
+ <li>VULKAN/RGUI: Enable 'Menu Linear Filter' option</li>
+ <li>VULKAN: Fix secondary screens in overlays not working</li>
+ <li>WAYLAND: Implement idle-inhibit support (needed for screensaver
suspend)</li>
+ <li>WAYLAND: Fix fullscreen toggle</li>
+ <li>VFS: Update to version 3</li>
+ <li>XBONE: Initial Xbox One port</li>
+ <li>XMB/OZONE: Add more icons</li>
+ <li>Easter egg</li>
+ </ul>
+ </description>
+ </release>
+ <release version="1.7.5" date="2018-10-2">
+ <description>
+ <ul>
+ <li>CAMERA: Fix Video4Linux2 driver that broke years ago</li>
+ <li>CONFIG: Add 'Reset To Defaults' setting in Configurations.
Thi will reset your config file to defaults</li>
+ <li>CHEATS: Add support for Rumble when increase or decrease by the
rumble value</li>
+ <li>CHEATS: Add cheat variables to allow for updating large portions of
memory</li>
+ <li>CHEEVOS: Prevent loading states before achievements are fully
loaded</li>
+ <li>COMMON: Support for "OEM-102" key (usually '' on
Euro keyboards)</li>
+ <li>DISCORD: Add 'Ask To Join' Feature</li>
+ <li>INPUT: Add new menu toggle combos 'L3 + R' and 'L +
R' (useful for Switch)</li>
+ <li>LOCALIZATION: Update Portuguese / Brazilian translation</li>
+ <li>LOCALIZATION: Update Japanese translation</li>
+ <li>LOCALIZATION: Update Polish translation</li>
+ <li>LOCALIZATION: Update Spanish translation</li>
+ <li>MENU: Add dropdown lists for many settings</li>
+ <li>MENU: Fix crash that could happen when changing core's options on
Android</li>
+ <li>MENU/QT/WIMP: Add option to rename playlists</li>
+ <li>MENU/QT/WIMP: Add option to filter extensions inside archives when
adding to a playlist</li>
+ <li>MENU/QT/WIMP: Rename playlist entries with 2 single
clicks</li>
+ <li>MENU/QT/WIMP: Fix shader parameter checkboxes not working</li>
+ <li>NETPLAY: Save lobby details received back from server after first
announcement</li>
+ <li>OPENGL/GLX: Implement Adaptive VSync -
GLX_EXT_swap_control_tear</li>
+ <li>OPENGL/WGL: Implement Adaptive VSync -
WGL_EXT_swap_control_tear</li>
+ <li>RUNAHEAD: Fix performance degradation that could happen over time
(after approx. 30 mins). Fixed input IDs outside of range 0-35 causing slow performance in
runahead</li>
+ <li>VULKAN: Fix race condition in threaded mailbox emulation</li>
+ <li>VULKAN: Maintenance fixes</li>
+ </ul>
+ </description>
+ </release>
+ <release version="1.7.4" date="2018-08-30">
+ <description>
+ <ul>
+ <li>CHEEVOS: Fix crash when scrolling Achievement List while Unofficial
Achievements enabled (#6732)</li>
+ <li>CHEEVOS: Added hitcounts support for PauseIf/ResetIf
(#6817)</li>
+ <li>COMMON: Automatically hide "Configuration Override options"
in Quick Menu</li>
+ <li>COMMON: Small Bugfix to not trigger savestate code when pressing
Reset</li>
+ <li>COMMON: Added libsixel video driver</li>
+ <li>LOCALIZATION: Update Italian translation</li>
+ <li>LOCALIZATION: Update Japanese translation</li>
+ <li>LOCALIZATION: Update Polish translation</li>
+ <li>LOCALIZATION: Update Portuguese / Brazilian translation</li>
+ <li>LOCALIZATION: Update Russian translation</li>
+ <li>LOCALIZATION: Update Spanish translation</li>
+ <li>MIDI: Add MIDI support to the libretro API. Dosbox is the first proof
of concept core implementing libretro MIDI</li>
+ <li>MENU/QT/WIMP: Qt QSlider styling for Dark Theme</li>
+ <li>MENU/QT/WIMP: Remove button ghostly inside highlighting</li>
+ <li>MENU/QT/WIMP: Initial grid view</li>
+ <li>MENU/QT/WIMP: Drag and drop to add new playlist items, add option to
add/edit/delete playlists</li>
+ <li>MENU/QT/WIMP: Add menu option to update RetroArch (Windows only for
now)</li>
+ <li>MENU/QT/WIMP: Add menu option to manage shaders</li>
+ <li>MENU/QT/WIMP: Add menu option to manage core options</li>
+ <li>MENU/XMB: Add new icons for the settings</li>
+ <li>MENU/XMB: Add an option to show the desktop ui</li>
+ <li>NETWORK: Enable SSL/TLS support by default for desktop
platforms</li>
+ <li>REMAPS: Fix the way offsets are calculated for keyboard
remapping</li>
+ <li>RUNAHEAD: Fix full-screen mode change breaking Secondary Core's
environment variables</li>
+ <li>VULKAN: Fix two validation errors</li>
+ <li>VULKAN: Try to avoid creating swapchains redundantly. Should fix
black screen and having to alt tab out of window again to get display working on Nvidia
GPUs (Windows)</li>
+ <li>X11: Fix Game Focus Toggle</li>
+ </ul>
+ </description>
+ </release>
+ <release version="1.7.3" date="2018-05-03">
+ <description>
+ <ul>
+ <li>AUDIO: Audio mixer supports FLAC/MP3 file types now</li>
+ <li>COMMON: Fixed bug 'crashing in cores that don't range check
retro_set_controller_type'</li>
+ <li>COMMON: (QuickMenu) Added Configuration Override submenu</li>
+ <li>LOCALIZATION: Update Italian translation</li>
+ <li>LOCALIZATION: Update Portuguese translation</li>
+ <li>MENU: Audio mixer now works in the menu without any cores loaded. You
have to enable the setting 'Enable menu audio' for this to work</li>
+ <li>REMAPPING/OVERLAYS: Fix regression - overlays could no longer be
remapped</li>
+ <li>SCANNER: Add Wii Backup File WBFS support</li>
+ <li>X11: CRT SwitchRes support for X11/Linux</li>
+ </ul>
+ </description>
+ </release>
+ <release version="1.7.2" date="2018-04-24">
+ <description>
+ <ul>
+ <li>CRT: Added CRT SwitchRes</li>
+ <li>COMMON: Hide the 'Core delete' option if the 'Core
updater' is also hidden</li>
+ <li>COMMON: Add way to reset core association for playlist
entry</li>
+ <li>COMMON: Fix invalid long command line options causing infinite loop
on Windows</li>
+ <li>COMMON: Add OSD statistics for video/audio/core</li>
+ <li>COMMON: Added runahead system; allows you to drive down latency even
further</li>
+ <li>CHEEVOS: Support Atari 2600, Virtual Boy, and Arcade (only Neo Geo,
CPS-1, CPS-2 and CPS-3 and only with fbalpha core)</li>
+ <li>CHEEVOS: Add option to automatically take a screenshot when an
achievement is triggered</li>
+ <li>CHEEVOS: Fixed incompatibilities with Neo Geo Pocket achievement
sets</li>
+ <li>LIBRETRO: Addition - Functions to enable and disable audio and video,
and an environment function to query status of audio and video enables</li>
+ <li>LOCALIZATION: Update Italian translation</li>
+ <li>LOCALIZATION: Update Polish translation</li>
+ <li>MENU: Add Rewind/Latency/Overlay settings to Quick Menu, add options
to show/hide them (User Interface -> Views -> Quick Menu)</li>
+ <li>MENU/RGUI: Only show Menu Linear Filter for RGUI and only show it for
video drivers that implement it (D3D8/9/10/11/12/GL)</li>
+ <li>MENU/RGUI: Add User Interface -> Appearance options</li>
+ <li>MENU/RGUI: D3D8/D3D9: Hookup Menu Linear Filter</li>
+ <li>MENU/XMB: Disable XMB shadow icons by default for PowerPC and ARM for
performance reasons</li>
+ <li>MENU/XMB: Left/right thumbnails are now automatically scaled
according to layout</li>
+ <li>MENU/XMB: Add Left Thumbnails (additional to the right)</li>
+ <li>MENU/XMB: Fixed left/right tab regression</li>
+ <li>MENU/XMB: Fix scaling of tall images that were cut on bottom
previously</li>
+ <li>MENU/XMB: Menu scale factor setting now changes texts length, image
scaling and margins</li>
+ <li>MENU/XMB: Mouse cursor scales correctly now</li>
+ <li>MENU/XMB: Add toggle to show/hide Playlist tabs</li>
+ <li>MENU/XMB: Add menu layout - can switch between Desktop, Handheld and
Auto</li>
+ <li>MENU/XMB: Don't load menu pipeline shaders unless XMB is selected
(D3D10/D3D11/D3D12/GL/Vulkan)</li>
+ <li>MENU/VIDEO: Only show black frame insertion for the video
drivers/context drivers that support it (so far this includes - D3D8/D3D9, OpenGL,
Vulkan)</li>
+ <li>MENU/VIDEO: Only show max swapchain images if supported by video
driver and/or context driver (so far this includes - DRM EGL context driver, VideoCore EGL
context driver, Vulkan)</li>
+ <li>MENU/MaterialUI: Automatic DPI Scaling should be much improved now,
now scales as expected at 1440p and 4K resolutions</li>
+ <li>MENU/MaterialUI: Fix wrong calculation of an entry height causing
long playlists to end up outside of screen range. This also could cause crashes on low DPI
screens</li>
+ <li>SCANNER: Should be able to scan dual-layer Wii disc images now,
filestream code now supports files larger than 4GB</li>
+ <li>SHADERS/SLANG: Slang shaders should work again on Android version and
MSVC versions (basically all the Griffin-based versions)</li>
+ <li>SHADERS: If GL context is GLES2/3/Core context, Cg shaders are
unavailable. Applies to shader list too</li>
+ <li>SHADERS: Hide cg/glsl shaders from being able to be selected if
D3D8/9/10/11/Vulkan video drivers are selected</li>
+ <li>SHADERS: Hide slang shaders from being able to be selected if
D3D8/9/OpenGL video drivers are selected</li>
+ <li>SHADERS: Prevent crashes from occurring if we have the GL video
driver in use and we try to skip to a slang shader through next/previous
hotkeys</li>
+ <li>SHADERS: Fix shader parameter increase / decrease
functions</li>
+ <li>SUBSYSTEM: handle savestates properly (cart1 +
cart2.state0)</li>
+ <li>VULKAN/X11: Fix X11 Vulkan bug from Wayland driver</li>
+ <li>VULKAN: Fix multi-line text spacing in menus with Vulkan
driver</li>
+ <li>X11: Allow compositor disabling on X11 fullscreen through
_NET_WM_BYPASS_COMPOSITOR</li>
+ <li>X11: Prioritize _NET_WM_STATE_FULLSCREEN in true fullscreen
mode</li>
+ </ul>
+ </description>
+ </release>
+ <release version="1.7.1" date="2018-02-19">
+ <description>
+ <ul>
+ <li>AUDIO: Added 'Audio Resampler Quality' setting to Audio
Settings</li>
+ <li>CHEEVOS: Fix unofficial achievements not being loaded</li>
+ <li>CHEEVOS: Show savestate menu entries when no achievements are found
even if hardcore mode is enabled</li>
+ <li>CHEEVOS: Support Neo Geo Pocket</li>
+ <li>COMMON: Bugfix for issue related to 'Windows mouse pointer
visible when running MESS or MAME cores'</li>
+ <li>COMMON: Fix bug 'Last item in a Playlist is
ignored'</li>
+ <li>COMMON: New LED API. Driver implemented for Raspberry Pi, proof of
concept implemented for core MAME 2003</li>
+ <li>COMMON: Add quick menu option to watch shader files for changes and
recompile them automatically (Linux only for now)</li>
+ <li>D3D8: Direct3D 8 can now work on systems that have Direct3D 8
installed</li>
+ <li>INPUT: show friendly names when available under input binds and
system information</li>
+ <li>INPUT: show the config name when available under system
information</li>
+ <li>GUI: Allow changing menu font color</li>
+ <li>GUI: Menu visibility options for RGUI and MaterialUI</li>
+ <li>GUI/MaterialUI: Works now with D3D8, D3D9 Cg, D3D11 and D3D12
drivers</li>
+ <li>GUI/XMB: Add Monochrome Inverted icon theme</li>
+ <li>GUI/XMB: Allow changing menu scale to 200%</li>
+ <li>GUI/XMB: Works now with D3D8, D3D9 Cg, D3D11 and D3D12 drivers. Menu
shader effects currently don't work on D3D8/D3D9 Cg</li>
+ <li>KEYMAPPER: prevent a condition that caused input_menu_toggle to stop
working when a RETRO_DEVICE_KEYBOARD type device is enabled</li>
+ <li>GL: ignore hard gpu sync when fast-forwarding</li>
+ <li>LOCALIZATION: Update Italian translation</li>
+ <li>LOCALIZATION: Update Japanese translation</li>
+ <li>LOCALIZATION: Update Portuguese-Brazilian translation</li>
+ <li>LOCALIZATION: Update Spanish translation</li>
+ <li>NETPLAY: Add menu option to select different MITM (relay) server
locations</li>
+ <li>SHADERS: Allow saving of shader presets based on the parent
directory</li>
+ <li>SHADERS: Don't save the path to the current preset to the main
config</li>
+ <li>SHADERS: SPIRV-Cross/slang shader support for D3D11</li>
+ <li>SUBSYSTEM: Subsystem saves now respect the save directory</li>
+ <li>SUBSYSTEM: You can now load subsystem games from the menu</li>
+ <li>VULKAN: Fix swapchain recreation bug on Nvidia GPUs with Windows 10
(resolved in Windows Nvidia driver version 390.77)</li>
+ </ul>
+ </description>
+ </release>
+ <release version="1.7.0" date="2017-12-25">
+ <description>
+ <ul>
+ <li>CHEEVOS: Add badges for achievements, shows thumbnail images of
achievements</li>
+ <li>CHEEVOS: Leaderboard support</li>
+ <li>CHEEVOS: Only disable savestates on hardcore mode if achievements are
not available</li>
+ <li>COMMANDLINE: Fix fullscreen toggle switch</li>
+ <li>COMMON: Add 'Automatically Load Content To Playlist' feature,
enabled by default</li>
+ <li>COMMON: Fix slowmotion ratio always being reset back to 1</li>
+ <li>COMMON: Optimized NBIO implementations now for Apple, Windows, and
Linux. Uses mmap for Linux/Windows/BSD if/when available. File I/O should now be much
faster for loading images inside the menu</li>
+ <li>COMMON: Native Blissbox support now for latest firmware as of writing
(2.0). Implementation through libusb and/or native Windows HID</li>
+ <li>COMMON: New lightgun API</li>
+ <li>COMMON: New VFS (Virtual File System) API</li>
+ <li>COMMON: Fixed some playlist bugs</li>
+ <li>COMMON: New snow shader</li>
+ <li>COMMON: Fix Quick Menu title, no longer shows 'Select
File'</li>
+ <li>COMMON: Fix loading cores that require no content one after
another</li>
+ <li>COMMON: Map Delete key to Y button for non-unified menu keyboard
controls</li>
+ <li>COMMON: Fix for relative paths being normalised and generating a
duplicate history entry</li>
+ <li>INPUT: Map clear button to DEL key</li>
+ <li>LINUX/X11: Add RetroArch logo to window title bar</li>
+ <li>LINUX/X11: Input driver now supports new lightgun code</li>
+ <li>LINUX/X11: Support window transparency (requires a compositing window
manager)</li>
+ <li>LOBBIES: Fix for crash on join netplay rooms via touch /
glui</li>
+ <li>LOCALIZATION: Update Italian translation</li>
+ <li>LOCALIZATION: Update Japanese translation</li>
+ <li>LOCALIZATION: Update Portuguese-Brazilian translation</li>
+ <li>LOCALIZATION: Update Polish translation</li>
+ <li>LOCALIZATION: Update Russian translation</li>
+ <li>MENU: Snowflake menu shader effect</li>
+ <li>SCANNER: Fix crash from Windows-incompatible format
string</li>
+ <li>VULKAN: Various stability fixes for WSI</li>
+ </ul>
+ </description>
+ </release>
+ <release version="1.6.9" date="2017-11-21">
+ <description>
+ <ul>
+ <li>COMMON: Small memory leak</li>
+ <li>NETPLAY: Fix network command only working once</li>
+ </ul>
+ </description>
+ </release>
+ </releases>
+</component>
diff --git a/retroarch-freeworld.spec b/retroarch-freeworld.spec
new file mode 100644
index 0000000..eedf9fb
--- /dev/null
+++ b/retroarch-freeworld.spec
@@ -0,0 +1,426 @@
+# Free/Freeworld/Non-Free version
+%bcond_without freeworld
+%bcond_with nonfree
+
+%global appname retroarch
+%global uuid org.libretro.RetroArch
+
+# Freeworld package
+%if %{with freeworld}
+%global p_suffix -freeworld
+%global sum_suffix Freeworld version.
+%else
+%global p_suffix %{nil}
+%global sum_suffix %{nil}
+%endif
+
+# LTO
+%global optflags %{optflags} -flto
+%global build_ldflags %{build_ldflags} -flto
+
+%global short_url
https://github.com/libretro
+
+# Assets
+%global commit c2bbf234195bbad91c827337a2fb2b5bc727407b
+%global shortcommit %(c=%{commit}; echo ${c:0:7})
+%global date 20191031
+
+Name: %{appname}%{?p_suffix}
+Version: 1.8.4
+Release: 3%{?dist}
+Summary: Cross-platform, sophisticated frontend for the libretro API.
%{?sum_suffix}
+
+# CC-BY: Assets
+# CC0: AppData manifest
+# MIT: Libretro's core info
+#
+# Apache License (v2.0)
+# ------------------------------------
+# deps/SPIRV-Cross/
+# retroarch-assets/xmb/flatui/
+# deps/glslang/glslang/
+# gfx/include/vulkan/
+#
+# Creative Commons Attribution Public License (v4.0)
+# -----------------------------------------------------------------
+# retroarch-assets/rgui/wallpaper/
+#
+# Creative Commons Attribution-NonCommercial Public License (v3.0)
+# -------------------------------------------------------------------------------
+# retroarch-assets/sounds/
+#
+# Creative Commons Attribution-ShareAlike Public License (v3.0)
+# ----------------------------------------------------------------------------
+# retroarch-assets/rgui/wallpaper/
+#
+# Expat License
+# ----------------------------
+# libretro-common/glsym/
+#
+# GNU General Public License (v2)
+# ----------------------------------------------
+# memory/ngc/ssaram.c
+#
+# GNU Lesser General Public License
+# ------------------------------------------------
+# memory/neon/memcpy-neon.S
+#
+# SIL Open Font License
+# ------------------------------------
+# retroarch-assets/xmb/automatic/
+# retroarch-assets/xmb/neoactive/
+# retroarch-assets/xmb/retroactive/
+#
+# BSD 2-clause "Simplified" License
+# ---------------------------------
+# cores/
+# gfx/
+# libretro-common/
+#
+# BSD 2-clause "Simplified" License GPL (v2 or later)
+# ---------------------------------------------------
+# gfx/
+#
+# BSD 3-clause "New" or "Revised" License
+# ---------------------------------------
+# deps/discord-rpc/
+# deps/glslang/
+# deps/ibxm/
+# gfx/
+# libretro-common/
+#
+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/%{commit}/%{appname}-assets-%{date}git%{shortcommit}.tar.gz
+
+# AppData manifest
+# *
https://github.com/flathub/org.libretro.RetroArch/blob/master/org.libretr...
+Source2:
https://raw.githubusercontent.com/flathub/%{uuid}/06be0a83a01514a675f5492...
+
+# Libretro's core info
+Source3:
%{short_url}/libretro-core-info/archive/v%{version}/libretro-core-info-%{version}.tar.gz
+
+#
https://github.com/libretro/retroarch-assets/pull/334
+Patch0:
https://github.com/libretro/retroarch-assets/pull/334.patch#/add-executab...
+
+BuildRequires: desktop-file-utils
+BuildRequires: gcc-c++ >= 7
+BuildRequires: libappstream-glib
+BuildRequires: libv4l-devel
+BuildRequires: libXxf86vm-devel
+BuildRequires: mbedtls-devel
+BuildRequires: mesa-libEGL-devel
+BuildRequires: mesa-libgbm-devel
+BuildRequires: systemd-devel
+BuildRequires: wayland-devel
+BuildRequires: wayland-protocols-devel
+BuildRequires: pkgconfig(caca)
+BuildRequires: pkgconfig(flac)
+BuildRequires: pkgconfig(freetype2)
+BuildRequires: pkgconfig(libass)
+BuildRequires: pkgconfig(libpulse)
+BuildRequires: pkgconfig(libusb)
+BuildRequires: pkgconfig(libxml-2.0)
+BuildRequires: pkgconfig(miniupnpc)
+BuildRequires: pkgconfig(openal)
+BuildRequires: pkgconfig(openssl)
+BuildRequires: pkgconfig(Qt5Concurrent) >= 5.2
+BuildRequires: pkgconfig(Qt5Core) >= 5.2
+BuildRequires: pkgconfig(Qt5Gui) >= 5.2
+BuildRequires: pkgconfig(Qt5Network) >= 5.2
+BuildRequires: pkgconfig(Qt5Widgets) >= 5.2
+BuildRequires: pkgconfig(sdl2)
+BuildRequires: pkgconfig(vulkan)
+BuildRequires: pkgconfig(xinerama)
+BuildRequires: pkgconfig(xkbcommon)
+BuildRequires: pkgconfig(zlib)
+%if %{with freeworld}
+# Available in Freeworld repo
+BuildRequires: ffmpeg-devel
+%endif
+%if %{with nonfree}
+# Available in Non-Free repo
+BuildRequires: Cg
+BuildRequires: libCg
+BuildRequires: xv
+%endif
+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}-filters%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
+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-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) = 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.5
+
+Provides: bundled(rcheevos) = 7.0.2
+Provides: bundled(SPIRV-Cross)
+Provides: bundled(stb)
+
+%global _description %{expand:
+libretro is an API that exposes generic audio/video/input callbacks. A frontend
+for libretro (such as RetroArch) handles video output, audio output, input and
+application lifecycle. A libretro core written in portable C or C++ can run
+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.}
+
+%description %{_description}
+
+
+# Assets package
+%package assets
+Summary: Assets files for %{name}
+BuildArch: noarch
+
+Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
+Requires: dejavu-sans-mono-fonts
+Recommends: open-sans-fonts
+
+# * Bundled fonts
+Provides: bundled(inter-ui-fonts)
+Provides: bundled(metrophobic-fonts)
+Provides: bundled(sf-atarian-system-fonts)
+Provides: bundled(titilium-web-fonts)
+
+%description assets
+Assets files for %{name}.
+
+
+# Filters package
+%package filters
+Summary: Audio and video filters for %{name}
+
+Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
+
+%description filters
+Audio and video filters for %{name}.
+
+
+%prep
+%setup -n RetroArch-%{version} -q
+%setup -n RetroArch-%{version} -q -D -T -a1
+pushd %{appname}-assets-%{commit}
+%patch0 -p1
+popd
+%setup -n RetroArch-%{version} -q -D -T -a3
+
+
+# Unbundling
+pushd deps
+rm -rf libfat \
+ libFLAC \
+ libiosuhax \
+ libvita2d \
+ libz \
+ miniupnpc \
+ peglib \
+ pthreads \
+ wayland-protocols
+popd
+
+# * Not part of the 'mbedtls' upstream source
+find deps/mbedtls/ ! -name 'cacert.h' -type f -exec rm -f {} +
+
+# Use system assets, libretro cores, libretro's core info and audio/video
+# filters
+sed -e 's|# libretro_directory =|libretro_directory = %{_libdir}/libretro/|g' \
+ -i retroarch.cfg
+%if %{with freeworld}
+sed -e 's|# assets_directory =|assets_directory =
%{_datadir}/libretro/assets-freeworld/|g' \
+ -e 's|# video_filter_dir =|video_filter_dir =
%{_libdir}/retroarch/filters/video-freeworld/|g' \
+ -e 's|# audio_filter_dir =|audio_filter_dir =
%{_libdir}/retroarch/filters/audio-freeworld/|g' \
+ -e 's|# libretro_info_path =|libretro_info_path =
%{_datadir}/libretro/info-freeworld/|g' \
+%else
+sed -e 's|# assets_directory =|assets_directory = %{_datadir}/libretro/assets/|g'
\
+ -e 's|# video_filter_dir =|video_filter_dir =
%{_libdir}/retroarch/filters/video/|g' \
+ -e 's|# audio_filter_dir =|audio_filter_dir =
%{_libdir}/retroarch/filters/audio/|g' \
+ -e 's|# libretro_info_path =|libretro_info_path =
%{_datadir}/libretro/info/|g' \
+%endif
+ -i retroarch.cfg
+
+# Disable online update feature due security reasons
+sed -e 's|# menu_show_online_updater = true|menu_show_online_updater = false|g'
\
+ -e 's|# menu_show_core_updater = true|menu_show_core_updater = false|g'
\
+ -i retroarch.cfg
+sed -e 's|HAVE_UPDATE_ASSETS=yes|HAVE_UPDATE_ASSETS=no|g' -i qb/config.params.sh
+
+# Freeworld config file
+%if %{with freeworld}
+sed -e 's|retroarch.cfg|%{name}.cfg|g' \
+ -i retroarch.c \
+ configuration.c \
+ file_path_str.c
+%endif
+
+
+%build
+./configure \
+ --prefix=%{_prefix} \
+ --disable-builtinflac \
+ --disable-builtinmbedtls \
+ --disable-builtinminiupnpc \
+ --disable-builtinzlib
+%set_build_flags
+%make_build
+
+# Assets
+%make_build -C %{appname}-assets-%{commit} \
+ GIT_VERSION=%{shortcommit}
+
+# Audio filters
+%make_build -C libretro-common/audio/dsp_filters
+
+# Video filters
+%make_build -C gfx/video_filters
+
+# Libretro's core info
+%make_build -C libretro-core-info-%{version}
+
+
+%install
+%make_install
+rm %{buildroot}%{_docdir}/%{appname}/COPYING \
+ %{buildroot}%{_docdir}/%{appname}/README.md
+
+# Assets
+%make_install -C %{appname}-assets-%{commit}
+%if %{with freeworld}
+mv %{buildroot}%{_datadir}/libretro/assets/ \
+ %{buildroot}%{_datadir}/libretro/assets-freeworld/
+%endif
+
+# * Move assets license file in proper location
+mkdir -p %{buildroot}%{_licensedir}/%{name}-assets/
+mv %{buildroot}%{_datadir}/libretro/assets%{?p_suffix}/COPYING \
+ %{buildroot}%{_licensedir}/%{name}-assets/COPYING
+
+# * Remove duplicate fonts which available in Fedora repos
+rm %{buildroot}%{_datadir}/libretro/assets%{?p_suffix}/pkg/osd-font.ttf \
+ %{buildroot}%{_datadir}/libretro/assets%{?p_suffix}/xmb/flatui/font.ttf
+
+# Audio filters
+%make_install -C libretro-common/audio/dsp_filters \
+ PREFIX=%{_prefix} \
+ INSTALLDIR=%{_libdir}/retroarch/filters%{?p_suffix}/audio
+
+# Video filters
+%make_install -C gfx/video_filters \
+ PREFIX=%{_prefix} \
+ INSTALLDIR=%{_libdir}/retroarch/filters%{?p_suffix}/video
+
+# Libretro's core info
+%make_install -C libretro-core-info-%{version} \
+ INSTALLDIR=%{_datadir}/libretro/info%{?p_suffix}
+
+# AppData manifest
+install -m 0644 -Dp %{SOURCE2} %{buildroot}%{_metainfodir}/%{uuid}.appdata.xml
+
+# 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} \
+ %{buildroot}%{_bindir}/%{appname}-freeworld
+mv %{buildroot}%{_bindir}/%{appname}-cg2glsl \
+ %{buildroot}%{_bindir}/%{appname}-cg2glsl-freeworld
+mv %{buildroot}%{_datadir}/applications/%{uuid}.desktop \
+ %{buildroot}%{_datadir}/applications/%{uuid}-freeworld.desktop
+mv %{buildroot}%{_metainfodir}/%{uuid}.appdata.xml \
+ %{buildroot}%{_metainfodir}/%{uuid}-freeworld.appdata.xml
+mv %{buildroot}%{_sysconfdir}/%{appname}.cfg \
+ %{buildroot}%{_sysconfdir}/%{name}.cfg
+mv %{buildroot}%{_mandir}/man6/%{appname}.6 \
+ %{buildroot}%{_mandir}/man6/%{appname}-freeworld.6
+mv %{buildroot}%{_mandir}/man6/%{appname}-cg2glsl.6 \
+ %{buildroot}%{_mandir}/man6/%{appname}-cg2glsl-freeworld.6
+sed -i 's|Exec=retroarch|Exec=retroarch-freeworld|' \
+ %{buildroot}%{_datadir}/applications/%{uuid}-freeworld.desktop
+sed -i
's|org.libretro.RetroArch.desktop|org.libretro.RetroArch-freeworld.desktop|' \
+ %{buildroot}%{_metainfodir}/%{uuid}-freeworld.appdata.xml
+%endif
+
+
+%check
+desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop
+appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/*.xml
+
+
+%files
+%license COPYING
+%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/info%{?p_suffix}/
+%{_datadir}/pixmaps/*.svg
+%{_mandir}/man6/*
+%{_metainfodir}/*.xml
+%dir %{_datadir}/libretro/
+
+# Things may changed in future and it's safe to replace system config since old
+# one will be saved in home dir
+%config %{_sysconfdir}/%{name}.cfg
+
+%files assets
+# Incorrect-fsf-address
+# *
https://github.com/libretro/retroarch-assets/issues/335
+%{_licensedir}/%{name}-assets/
+
+%{_datadir}/libretro/assets%{?p_suffix}/
+%dir %{_datadir}/libretro/
+
+%files filters
+%{_libdir}/%{appname}/filters%{?p_suffix}/
+%dir %{_libdir}/%{appname}/
+
+
+%changelog
+* Wed Jan 29 2020 Artem Polishchuk <ego.cordatus(a)gmail.com> - 1.8.4-3
+- Spec file improvements
+- Thanks to Nicolas Chauvet <kwizart(a)gmail.com> for help with packaging and review
+
+* Fri Jan 24 2020 Artem Polishchuk <ego.cordatus(a)gmail.com> - 1.8.4-2
+- Add Libretro's core info. Thanks <jamesunderland(a)protonmail.com>
+
+* Sun Jan 19 2020 Artem Polishchuk <ego.cordatus(a)gmail.com> - 1.8.4-1
+- Update to 1.8.4
+- Add missed Perl modules
+
+* Sun Dec 29 2019 Artem Polishchuk <ego.cordatus(a)gmail.com> - 1.8.2-2
+- Make fully standlone Freeworld package as RPM Fusion recommended
+
+* Thu Dec 26 2019 Artem Polishchuk <ego.cordatus(a)gmail.com> - 1.8.2-1
+- Update to 1.8.2
+
+* Fri Nov 29 2019 Artem Polishchuk <ego.cordatus(a)gmail.com> - 1.8.1-14
+- Initial package
+- Thanks to Vitaly Zaitsev <vitaly(a)easycoding.org> for help with packaging and
review
\ No newline at end of file
diff --git a/sources b/sources
index e69de29..59e62ca 100644
--- a/sources
+++ b/sources
@@ -0,0 +1,3 @@
+SHA512 (libretro-core-info-1.8.4.tar.gz) =
a6c3521ef670efffa47176357d7681c1f3e677382053cf5f073b755d244c05fd7e7eebafa1f3f7caa0f7e965ba7f2a15083636edf86bb859cdc862d43d3f455f
+SHA512 (retroarch-1.8.4.tar.gz) =
04e94716b3d198d33cfde706d951d1eab01b6045d5be4220f9f08089624d08c86c961e15332144642936ae6800d12f679b17a43a72b33c3315e8314758f10cbf
+SHA512 (retroarch-assets-20191031gitc2bbf23.tar.gz) =
f6d7ed068c36f65f3ac3765b6b18d7d723d4c7855033aaa344f9a33fae2a8aae01b82b074d87fe57fbea368b636351e86cd9485d9279a56d6284976fe87a1d5a