* removed the launcher through Xorg since Steam Link can now run with a desktop env on both RaspiOS 10 and 11, choosing between the DRM or MMAL drivers. Tested on a RPI 3 (RaspiOS 10) and RPI 4 (RaspiOS 11).
* adjusted the dependencies to remove xorg/matchbox/zenity since they're not strictly necessary and added a few packages which might not be automatically installed on RetroPie. The list of the packages that `steamlink` tries to install on first run in is `$XDG_DATA_HOME/SteamLink/steamlinkdeps.txt`, I just picked the ones that are not already part of existing dependencies (`vlc` will install most of them).
* disabled the package on 64bit, since is not available there (see https://steamcommunity.com/app/353380/discussions/0/1649917420735113143/)
gcc -dumpversion on GCC >= 7 seems to provide the major version but the documentation suggests this depends on how it's configured.
We only need to test the major version so using compareVersions isn't required.
https://gcc.gnu.org/onlinedocs/gcc/Developer-Options.html states:
>Print the compiler version (for example, 3.0, 6.3.0 or 7)—and don’t do anything else. This is the compiler
>version used in filesystem paths and specs. Depending on how the compiler has been configured it can be
>just a single number (major version), two numbers separated by a dot (major and minor version) or three
>numbers separated by dots (major, minor and patchlevel version).
Ensure __gcc_version only contains the major version just in case in system.sh
Updated to the latest stable version (3.2.0), with mostly bugfixes and stability changes.
Scriptmodule changes:
* changed the build to be in a separate folder
* removed the install prefix since it's unused
* removed the `gcc` workaround since it's not needed anymore
* added a minimal config to configure the games location
* removed the gamesdir symlink, not needed with the above modifications. Should prevent copying errors when backing up the SMB folders since the `games` config sub-folder was a symlink outside the `config` share.
The changes added enable `lzdoom` to build (and run) on RPI1/RPI0:
- remove the `ARMV8` build option, since it used upstream as a toggle between RPI2 or RPI3 CPU parameters. Since we're passing the platform CPU flags to `gcc` ourselves, they're not really needed and they'll add the wrong options for other ARM platforms
- patch the included LZMA SDK CRC calculation to not assume every ARM platform supports hardware-assistet CRC (i.e. ARMv8). This will fix the build for RPI1/ARMv6 platforms
There was a mix of compareVersions "$__os_debian_ver" OP $arg and [[ "$__os_debian_ver OP $arg ]] around the code.
As $__os_debian_ver is always an integer, use the bash built in operators for performance.
The compareVersions call is significantly slower as it uses an external command (dpkg).
Updated to 3.88b (released on Feb 2022) to include recent fixes, should fix building with recent `gcc` (Ubuntu 22.04, Debian testing).
Changed the license URL to the main project's license file.
The Kodi PPA for Jammy (22.04) and later doesn't include `kodi-inputstream-rtmp` anymore.
Trying to install the version from the Ubuntu repositories will produce a conflict due to mismatched dependencies with the versions from the PPA, so don't try to install the package.
NOTE: the addon can be later installed from inside Kodi, which is also recommended in its installation page:
https://kodi.tv/addons/matrix/inputstream.rtmp
The autogen.sh script has been removed upstream in favour of using autoreconf -i
Switch to checking for autogen.sh and use it if present, otherwise use autoreconf -iv (--install --verbose).
Add required autoconf-archive as a dependency.
The eduke32.log/fury.log files are saved to . so by default they would be generated in $HOME.
Now they will be generated in the configuration folder for the port.
Fixes#3473
Updated the port to v0.69 based on upstream. Major changes since v0.61:
* Added translucent HUD support ("scr_sbaralpha")
* Added vsync support for most platforms ("vid_vsync")
* Added support for scaling the software renderer output by a factor of 2 or 4
* Added anisotropic filtering for OpenGL
* Added loading new mods at runtime with the 'game' command
* Fixed particle sizes in software and GL
* Added ability to play music tracks from sound files. Currently ogg (vorbis), mp3, flac and wav are supported
* OpenGL renderer improvements:
- Much improved speed by batching drawing operations
- Fullbright pixels now properly rendered
- If 3+ texture units are available, all materials can be drawn in a single pass
- Improved fidelity of model skins when NPoT textures unavailable
* Fog, Colored lighting, skybox and Higher-quality traditional sky for the GL renderer
* Interpolated alias model lighting (smoother transitions)
* Added menu for manually specifying windowed mode resolution
* Higher quality (resolution) underwater warping in software renderer
* Added support for OpenGL vertex program animation interpolation
* Added support for DXT texture compression (greatly helps low-memory systems)
* Improved FOV calculations to work better with widescreen aspect ratios
* Improvedd dynamic lighting performance on OpenGL (removed redundant updates)
Since the latest version has VSync configuration support, the VSync patch was dropped and adaptive VSync is set with a command line parameter.
Other modifications:
* build only the NQ clients (SW and GL), don't build the server and QW clients since we're not using them.
* install the `lhasa` package only when downloading the shareware version.
The different Marathon games are each launched with a unique emulator config, each one configured to launch only that particular game with the executable and game data directory hardcoded into the emulator command.
This change combines them into one "alephone" emulator config, with just the executable in the command, and splits the game data dir out into the "%ROM%" parameter. This allows easy user integration of additional alephone engine games simply by adding their game data and a launch script such as:
"/opt/retropie/supplementary/runcommand/runcommand.sh" 0 _PORT_ "alephone" "/path/to/game/dir/"
Pros:
- cleaner "configs" folder with only one shared emulator instead of a different one for each game
- easy user integration of additional alephone engine games
Cons:
- none that I can think of off hand?
Changes since last version:
* updated the Quake2 client to 8.00
* switched building to `make`, since the `cmake` method is no longer recommended (see fb1a2b0ce7)
* build the add-ons sources from the same project.
* (minor) don't run the cleanup in the `quake2` port folder when the shareware version is not downloaded
Notes:
* the version of the package is dependant on the main YQuake2 repo. If the `get_repo_version` from `mupen64plus` (which features the same multi-repository approach) is added as a helper, we might be able to use it here to detected when one of the repos gets a new release. For now, the main repo is the one of interest, so I think it's ok to use it for update detection.
* the add-ons (rogue/xatrix) seem to run without the added `game.so` files, but withouth it there's lots of errors logged. Errors don't appear when the `game.so` is fond and loaded.
Looks like the new version doesn't have a default `DATADIR` to search for files.
Modified the launcher to start from the `ports/wolf3d` port folder so data files are found.
Changes to the port:
* ported to SDL2
* added PC speaker sound emulation
* support for the Japanese version
* added the OPL emulation from DOSBOX, as an alternative MAME's emulation code. This allows re-licensing under GPL
* various bugfixes
Module changes:
* re-license under GPL by excluding the MAME OPL emulation
* update dependencies with SDL2 and enable for Mali platforms
* update the upstream repository (used now by the project at http://wolf3d.net/wolf4sdl)
The commit after has a change to use pkg-config for locating physfs and it seems to fail on Debian/Raspbian Buster.
Will debug properly and feed upstream, but for now am rolling back to the commit before.
Unfortunately the dxx-rebirth repository has no recent releases at all, as it would be preferable to lock
to the last stable release, but the last tag is from 2018 and there are no version branches etc.
Seems an odd choice to use such a new upstream macro/function - but as we are on SDL 2.0.10
still while kms issues are still present with upstream code, for now it's easiest to rollback to an
earlier commit.