Docs: Add SDL3 build and release notes

Document SDL3 discovery and packaging guidance for local builds.

Add a changelog and record the 0.1.1rc1 release notes.
This commit is contained in:
Marco Allegretti 2026-01-24 14:14:59 +01:00
parent 7858f76c7a
commit b456019f73
4 changed files with 98 additions and 2 deletions

View file

@ -3,7 +3,7 @@
cmake_minimum_required(VERSION 3.20)
project(alakarte VERSION 0.1.0)
project(alakarte VERSION 0.1.1)
set(PROJECT_DEP_VERSION "6.0.0")
set(QT_MIN_VERSION "6.6.0")

View file

@ -10,6 +10,66 @@ This document is intended for contributors who want to build, run, and debug A-L
cmake -B build -S . -DCMAKE_BUILD_TYPE=Debug
```
### SDL3
A-La-Karte uses SDL3 for gamepad navigation.
There are two supported ways to satisfy the SDL3 dependency:
#### Option 1: Use a system SDL3 package
If your distribution provides SDL3 development packages, install them and configure normally.
Common package names include `libsdl3-dev` (Debian/Ubuntu), `SDL3-devel` (Fedora/openSUSE), or similarly named SDL3 "-devel" packages.
At CMake configure time, A-La-Karte uses `find_package(SDL3 REQUIRED)`. This requires that SDL3 provides a CMake package (e.g. `SDL3Config.cmake`) and that CMake can find it.
If CMake cannot find SDL3, you can point it at the right prefix:
```bash
cmake -B build -S . \
-DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_PREFIX_PATH=/path/to/sdl3/prefix
```
Alternatively you can point directly at SDL3's CMake package directory:
```bash
cmake -B build -S . \
-DCMAKE_BUILD_TYPE=Debug \
-DSDL3_DIR=/path/to/SDL3Config.cmake/parent
```
#### Option 2: Build SDL3 from a source tree
If your distro does not ship SDL3 yet (or ships a version without a usable CMake package), you can build SDL3 as part of the A-La-Karte build by pointing CMake at an SDL3 source checkout:
You can obtain a source tree by cloning upstream SDL:
```bash
git clone https://github.com/libsdl-org/SDL.git
```
```bash
cmake -B build -S . \
-DCMAKE_BUILD_TYPE=Debug \
-DALAKARTE_SDL3_SOURCE_DIR=/path/to/SDL
```
`ALAKARTE_SDL3_SOURCE_DIR` must point at a directory that contains `CMakeLists.txt` from SDL3.
This is intended for local development and CI setups. Distributions should prefer packaging SDL3 as a system dependency.
#### Packaging guidance
Packagers should depend on the system SDL3 development package and ensure CMake can discover it.
In particular:
- The build dependency must include SDL3 headers and the CMake package files.
- A-La-Karte links against `SDL3::SDL3`.
- Avoid using `ALAKARTE_SDL3_SOURCE_DIR` in distribution packaging.
### Build
```bash
@ -82,4 +142,4 @@ Then:
## Notes
- SteamGridDB cover fetching requires an API key.
- KRunner integration and gamepad navigation are optional at build time (depending on available dependencies).
- KRunner integration is optional at build time (depending on available dependencies).

23
changelog.md Normal file
View file

@ -0,0 +1,23 @@
# Changelog
## [0.1.1rc1] - 2026-01-24
### Added
- SDL3-based gamepad navigation
- Bottom hint bar with keyboard/gamepad hints and controller icons
- UI mode setting (auto/desktop/handheld)
### Changed
- Import workflow skips sources that were already imported
- Steam importing filters out non-game entries (runtimes/redistributables)
### Fixed
- Heroic importing prefers cached cover images and imports sideload apps
- Safer QObject lifetime management for games and launcher processes
## [0.1.0] - 2026-01-17
- First public preview release

View file

@ -75,6 +75,19 @@
</keywords>
<releases>
<release version="0.1.1rc1" date="2026-01-24">
<description>
<p>Preview release with improved navigation and importing</p>
<ul>
<li>SDL3-based gamepad navigation</li>
<li>Bottom hint bar with keyboard/gamepad hints</li>
<li>UI mode setting (auto/desktop/handheld)</li>
<li>Steam importing filters non-game entries</li>
<li>Import workflow avoids re-importing already imported sources</li>
<li>Heroic importing prefers cached covers and imports sideload apps</li>
</ul>
</description>
</release>
<release version="0.1.0" date="2026-01-17">
<description>
<p>First public preview release of A-La-Karte</p>