Documentation update

This commit is contained in:
Leon Styhre 2023-03-22 21:02:00 +01:00
parent 6aa599aac9
commit d8dd76ca99
7 changed files with 42 additions and 19 deletions

View file

@ -12,8 +12,13 @@ v2.0 maintenance release.
### Detailed list of changes ### Detailed list of changes
* Any theme directories with names ending with "disabled" (regardless of case) are now ignored
* Added support for changing the BusyComponent text dynamically
* Added the libgit2 library as a dependency
### Bug fixes ### Bug fixes
* (Windows) Fixed a regression that made .bat and .lnk files with some special characters impossible to launch
* Fixed several potential container overflows in GuiTextEditKeyboardPopup that could lead to rare crashes when running on an ARM processor * Fixed several potential container overflows in GuiTextEditKeyboardPopup that could lead to rare crashes when running on an ARM processor
* Fixed a potential container overflow in ViewController that could lead to rare crashes when running on an ARM processor * Fixed a potential container overflow in ViewController that could lead to rare crashes when running on an ARM processor
* (macOS) When opening the main menu an error message was logged about accessing a nonexistent ShowQuitMenu setting * (macOS) When opening the main menu an error message was logged about accessing a nonexistent ShowQuitMenu setting

2
FAQ.md
View file

@ -110,7 +110,7 @@ ES-DE works very differently compared to all other EmulationStation forks when i
## It seems like gamelist.xml files in the ROMs directory tree are no longer getting loaded as of ES-DE 2.0? ## It seems like gamelist.xml files in the ROMs directory tree are no longer getting loaded as of ES-DE 2.0?
Yes, to optionally read gamelist.xml files from the ROMs directory tree in previous releases was a mistake as it has caused a lot of confusion as well as invalid bug reports. As such the logic has now been changed to only read these files from .emulationstation/gamelists/ which is where they belong. If you insist on retaining the old logic you can do so by manually setting LegacyGamelistFileLocation to true in es_settings.xml as explained [here](INSTALL-DEV.md#settings-not-configurable-via-the-gui), but it's definitely not recommended. Yes, to optionally read gamelist.xml files from the ROMs directory tree in previous releases was a mistake as it has caused a lot of confusion as well as invalid bug reports. As such the logic has now been changed to only read these files from .emulationstation/gamelists/ which is where they belong. If you insist on retaining the old logic you can do so by manually setting LegacyGamelistFileLocation to true in es_settings.xml as explained [here](INSTALL.md#settings-not-configurable-via-the-gui), but it's definitely not recommended.
## Why do I sometimes get error messages when scraping stating that files are less than 350 bytes in size? ## Why do I sometimes get error messages when scraping stating that files are less than 350 bytes in size?

View file

@ -23,8 +23,9 @@ There are some dependencies that need to be fulfilled in order to build ES-DE. T
**Debian/Ubuntu** **Debian/Ubuntu**
All of the required packages can be installed with apt-get: All of the required packages can be installed with apt-get:
``` ```
sudo apt-get install build-essential clang-format git cmake libsdl2-dev libavcodec-dev libavfilter-dev libavformat-dev libavutil-dev libfreeimage-dev libfreetype6-dev libcurl4-openssl-dev libpugixml-dev libasound2-dev libgl1-mesa-dev sudo apt-get install build-essential clang-format git cmake libsdl2-dev libavcodec-dev libavfilter-dev libavformat-dev libavutil-dev libfreeimage-dev libfreetype6-dev libgit2-dev libcurl4-openssl-dev libpugixml-dev libasound2-dev libgl1-mesa-dev
``` ```
**Fedora** **Fedora**
@ -39,7 +40,7 @@ https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -
Then you can use dnf to install all the required packages: Then you can use dnf to install all the required packages:
``` ```
sudo dnf install gcc-c++ clang-tools-extra cmake libasan rpm-build SDL2-devel ffmpeg-devel freeimage-devel freetype-devel curl-devel pugixml-devel alsa-lib-devel mesa-libGL-devel sudo dnf install gcc-c++ clang-tools-extra cmake libasan rpm-build SDL2-devel ffmpeg-devel freeimage-devel freetype-devel libgit2-devel curl-devel pugixml-devel alsa-lib-devel mesa-libGL-devel
``` ```
**Manjaro** **Manjaro**
@ -47,14 +48,14 @@ sudo dnf install gcc-c++ clang-tools-extra cmake libasan rpm-build SDL2-devel ff
Use pacman to install all the required packages: Use pacman to install all the required packages:
``` ```
sudo pacman -S gcc clang make cmake pkgconf sdl2 ffmpeg freeimage freetype2 pugixml sudo pacman -S gcc clang make cmake pkgconf sdl2 ffmpeg freeimage freetype2 libgit2 pugixml
``` ```
**Raspberry Pi OS (Raspian)** **Raspberry Pi OS (Raspian)**
All of the required packages can be installed with apt-get: All of the required packages can be installed with apt-get:
``` ```
sudo apt-get install clang-format cmake libsdl2-dev libavcodec-dev libavfilter-dev libavformat-dev libavutil-dev libfreeimage-dev libcurl4-gnutls-dev libpugixml-dev sudo apt-get install clang-format cmake libsdl2-dev libavcodec-dev libavfilter-dev libavformat-dev libavutil-dev libfreeimage-dev libgit2-dev libcurl4-gnutls-dev libpugixml-dev
``` ```
To build with CEC support you also need to install these packages: To build with CEC support you also need to install these packages:
@ -72,7 +73,7 @@ Only the OpenGL ES 3.0 renderer works on Raspberry Pi and it's enabled by defaul
Use pkg to install the dependencies: Use pkg to install the dependencies:
``` ```
pkg install llvm-devel git pkgconf cmake sdl2 ffmpeg freeimage pugixml pkg install llvm-devel git pkgconf cmake sdl2 ffmpeg freeimage libgit2 pugixml
``` ```
Clang/LLVM and curl should already be included in the base OS installation. Clang/LLVM and curl should already be included in the base OS installation.
@ -81,7 +82,7 @@ Clang/LLVM and curl should already be included in the base OS installation.
Use pkgin to install the dependencies: Use pkgin to install the dependencies:
``` ```
pkgin install clang git cmake pkgconf SDL2 ffmpeg4 freeimage pugixml pkgin install clang git cmake pkgconf SDL2 ffmpeg4 freeimage libgit2 pugixml
``` ```
NetBSD ships with GCC by default, and although you should be able to use Clang/LLVM, it's probably easier to just stick to the default compiler environment. The reason why the clang package needs to be installed is to get clang-format onto the system. NetBSD ships with GCC by default, and although you should be able to use Clang/LLVM, it's probably easier to just stick to the default compiler environment. The reason why the clang package needs to be installed is to get clang-format onto the system.
@ -90,7 +91,7 @@ NetBSD ships with GCC by default, and although you should be able to use Clang/L
Use pkg_add to install the dependencies: Use pkg_add to install the dependencies:
``` ```
pkg_add clang-tools-extra cmake pkgconf sdl2 ffmpeg freeimage pkg_add clang-tools-extra cmake pkgconf sdl2 ffmpeg freeimage libgit2
``` ```
In the same manner as for FreeBSD, Clang/LLVM and curl should already be installed by default. In the same manner as for FreeBSD, Clang/LLVM and curl should already be installed by default.

View file

@ -21,8 +21,9 @@ There are some dependencies that need to be fulfilled in order to build ES-DE. T
**Debian/Ubuntu** **Debian/Ubuntu**
All of the required packages can be installed with apt-get: All of the required packages can be installed with apt-get:
``` ```
sudo apt-get install build-essential clang-format git cmake libsdl2-dev libavcodec-dev libavfilter-dev libavformat-dev libavutil-dev libfreeimage-dev libfreetype6-dev libcurl4-openssl-dev libpugixml-dev libasound2-dev libgl1-mesa-dev sudo apt-get install build-essential clang-format git cmake libsdl2-dev libavcodec-dev libavfilter-dev libavformat-dev libavutil-dev libfreeimage-dev libfreetype6-dev libgit2-dev libcurl4-openssl-dev libpugixml-dev libasound2-dev libgl1-mesa-dev
``` ```
**Fedora** **Fedora**
@ -37,7 +38,7 @@ https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -
Then you can use dnf to install all the required packages: Then you can use dnf to install all the required packages:
``` ```
sudo dnf install gcc-c++ clang-tools-extra cmake libasan rpm-build SDL2-devel ffmpeg-devel freeimage-devel freetype-devel curl-devel pugixml-devel alsa-lib-devel mesa-libGL-devel sudo dnf install gcc-c++ clang-tools-extra cmake libasan rpm-build SDL2-devel ffmpeg-devel freeimage-devel freetype-devel libgit2-devel curl-devel pugixml-devel alsa-lib-devel mesa-libGL-devel
``` ```
**Manjaro** **Manjaro**
@ -45,14 +46,14 @@ sudo dnf install gcc-c++ clang-tools-extra cmake libasan rpm-build SDL2-devel ff
Use pacman to install all the required packages: Use pacman to install all the required packages:
``` ```
sudo pacman -S gcc clang make cmake pkgconf sdl2 ffmpeg freeimage freetype2 pugixml sudo pacman -S gcc clang make cmake pkgconf sdl2 ffmpeg freeimage freetype2 libgit2 pugixml
``` ```
**Raspberry Pi OS (Raspian)** **Raspberry Pi OS (Raspian)**
All of the required packages can be installed with apt-get: All of the required packages can be installed with apt-get:
``` ```
sudo apt-get install clang-format cmake libsdl2-dev libavcodec-dev libavfilter-dev libavformat-dev libavutil-dev libfreeimage-dev libcurl4-gnutls-dev libpugixml-dev sudo apt-get install clang-format cmake libsdl2-dev libavcodec-dev libavfilter-dev libavformat-dev libavutil-dev libfreeimage-dev libgit2-dev libcurl4-gnutls-dev libpugixml-dev
``` ```
To build with CEC support you also need to install these packages: To build with CEC support you also need to install these packages:
@ -70,7 +71,7 @@ Only the OpenGL ES 3.0 renderer works on Raspberry Pi and it's enabled by defaul
Use pkg to install the dependencies: Use pkg to install the dependencies:
``` ```
pkg install llvm-devel git pkgconf cmake sdl2 ffmpeg freeimage pugixml pkg install llvm-devel git pkgconf cmake sdl2 ffmpeg freeimage libgit2 pugixml
``` ```
Clang/LLVM and curl should already be included in the base OS installation. Clang/LLVM and curl should already be included in the base OS installation.
@ -79,7 +80,7 @@ Clang/LLVM and curl should already be included in the base OS installation.
Use pkgin to install the dependencies: Use pkgin to install the dependencies:
``` ```
pkgin install clang git cmake pkgconf SDL2 ffmpeg4 freeimage pugixml pkgin install clang git cmake pkgconf SDL2 ffmpeg4 freeimage libgit2 pugixml
``` ```
NetBSD ships with GCC by default, and although you should be able to use Clang/LLVM, it's probably easier to just stick to the default compiler environment. The reason why the clang package needs to be installed is to get clang-format onto the system. NetBSD ships with GCC by default, and although you should be able to use Clang/LLVM, it's probably easier to just stick to the default compiler environment. The reason why the clang package needs to be installed is to get clang-format onto the system.
@ -88,7 +89,7 @@ NetBSD ships with GCC by default, and although you should be able to use Clang/L
Use pkg_add to install the dependencies: Use pkg_add to install the dependencies:
``` ```
pkg_add clang-tools-extra cmake pkgconf sdl2 ffmpeg freeimage pkg_add clang-tools-extra cmake pkgconf sdl2 ffmpeg freeimage libgit2
``` ```
In the same manner as for FreeBSD, Clang/LLVM and curl should already be installed by default. In the same manner as for FreeBSD, Clang/LLVM and curl should already be installed by default.

View file

@ -47,10 +47,10 @@ A more detailed breakdown can be found on the [Kanban](https://gitlab.com/es-de/
* _Replace NanoSVG with a more capable SVG rendering library_ * _Replace NanoSVG with a more capable SVG rendering library_
* _Improve text and font functions, e.g. dynamic texture allocation and faster and cleaner text wrapping_ * _Improve text and font functions, e.g. dynamic texture allocation and faster and cleaner text wrapping_
* _Improve GLSL shader post-processing performance_ * _Improve GLSL shader post-processing performance_
* Theme downloader
#### v2.1 #### v2.1
* Theme downloader
* Theme engine composite element support for enabling advanced and finely controlled layouts * Theme engine composite element support for enabling advanced and finely controlled layouts
* Theme engine element animation support (storyboards) * Theme engine element animation support (storyboards)
* New texture/cache manager with improved memory management and performance * New texture/cache manager with improved memory management and performance

View file

@ -8,6 +8,14 @@ Before your start, make sure to download the _Theme engine examples_ theme set t
https://gitlab.com/es-de/themes/theme-engine-examples-es-de https://gitlab.com/es-de/themes/theme-engine-examples-es-de
More themes to use as a starting point can be found on the official themes list:
https://gitlab.com/es-de/themes/themes-list
There is also some documentation written by lilbud covering general tips and tricks as well as how to port themes from the legacy RetroPie theme engine to ES-DE:
https://github.com/lilbud/es-de-theme-stuff
To test whether your theme set includes support for all ES-DE systems, download one of the following archives which contain ROMs directory structures fully populated with dummy files: To test whether your theme set includes support for all ES-DE systems, download one of the following archives which contain ROMs directory structures fully populated with dummy files:
[ROMs_ALL_Unix.zip](tools/system-dirs-dummy-files/ROMs_ALL_Unix.zip)\ [ROMs_ALL_Unix.zip](tools/system-dirs-dummy-files/ROMs_ALL_Unix.zip)\

View file

@ -6,11 +6,19 @@ Before your start, make sure to download the _Theme engine examples_ theme set t
https://gitlab.com/es-de/themes/theme-engine-examples-es-de https://gitlab.com/es-de/themes/theme-engine-examples-es-de
More themes to use as a starting point can be found on the official themes list:
https://gitlab.com/es-de/themes/themes-list
There is also some documentation written by lilbud covering general tips and tricks as well as how to port themes from the legacy RetroPie theme engine to ES-DE:
https://github.com/lilbud/es-de-theme-stuff
To test whether your theme set includes support for all ES-DE systems, download one of the following archives which contain ROMs directory structures fully populated with dummy files: To test whether your theme set includes support for all ES-DE systems, download one of the following archives which contain ROMs directory structures fully populated with dummy files:
[ROMs_ALL_Unix.zip](tools/system-dirs-dummy-files/ROMs_ALL_Unix.zip)\ [ROMs_ALL_Unix.zip](https://gitlab.com/es-de/emulationstation-de/-/blob/stable-2.0/tools/system-dirs-dummy-files/ROMs_ALL_Unix.zip)\
[ROMs_ALL_macOS.zip](tools/system-dirs-dummy-files/ROMs_ALL_macOS.zip)\ [ROMs_ALL_macOS.zip](https://gitlab.com/es-de/emulationstation-de/-/blob/stable-2.0/tools/system-dirs-dummy-files/ROMs_ALL_macOS.zip)\
[ROMs_ALL_Windows.zip](tools/system-dirs-dummy-files/ROMs_ALL_Windows.zip) [ROMs_ALL_Windows.zip](https://gitlab.com/es-de/emulationstation-de/-/blob/stable-2.0/tools/system-dirs-dummy-files/ROMs_ALL_Windows.zip)
If you unzip and temporarily replace your ROMs directory with one of these, every system will be enabled on startup. If you unzip and temporarily replace your ROMs directory with one of these, every system will be enabled on startup.