Download and legally share music with you friends. Commercial use usually has to be bought, read the license.
Jamendo (license Creative Commons, https://www.jamendo.com)
Download and legally share music with you friends. Commercial use usually has to be bought, read the license.
Jamendo (license Creative Commons, https://www.jamendo.com)
Android is the most used mobile operating system. It’s base is completly free and open source software provided by the Android Open Source project with Google as the main contributor. But sadly, all the Google services and applications are proprietary and closed source software that violate user privacy. At least with Android you have to escape this surveillance nightmare by switching away from preinstalled Android with Google Services.
Since Android 7.0 Vulkan compatibility has been provided and some games are using the new graphic API already. But your mobile GPU driver must support Vulkan, so just having Android 7.0 is not enough.
Important Note: Only buy Android phones where you know you can do an OEM Unlock. Companies that block this should not be supported. And try to buy a phone that allows custom ROM’s or where usually a high community support is expected.
Side Note: Unfortunatly Android is all about non-free firmware blobs and doesn’t encourage/enforce upstream Linux drivers.
Usually the OEM Unlock is done on any device with the following steps
To install custom Android ROM’s, you need to first flash a recovery like TWRP https://twrp.me. Basically it works like this:
As soon as you have installed TWRP, you can download e.g. LineageOS on your mobile device. Flashing can be done then directly on the mobile device after rebooting to recovery mode.
To install a custom ROM’s without a recovery, basically it can be done like this:
LineageOS (https://lineageos.org) is one of the well known Android custom ROM’s and it has been created out of the ashes of the CyanogenMod community. Issues:
Use LineageOS for MicroG instead of the original LineageOS!
LineageOS for MicroG (https://lineage.microg.org) builds LineageOS with out of the box MicroG and F-Droid support. Updates are provides weekly for all official supported LineageOS devices.
The e.foundation (https://e.foundation) is focusing on user privacy and free and open source software + services.
One of the main issue of /e/ is, that for some devices only quite old Android versions are provided, in case of the OnePlus 3 it is Android 7 nougat.
MicroG (license Apache, https://microg.org) is a free software replacement for the proprietary Google services that violate user privacy. It provides for example:
Several MicroG apps can be installed directly from F-Droid. But some Android Rom’s like LineageOS disallow MicroG to claim to be a Google Services replacement and therefore a quite complicated setup is required. As such it is recommended to use Lineage MicroG OS directly!
As for some devices a custom rom is not yet available, the below installation procedure is based on the default Vendor Android that includes all proprietary, bloated, user privacy violating Google Apps (GApps).
Warning: To disable some Google function like location tracking is not enough, you need to replace Android with Google Apps (gapps) with a custom ROM. The COVID19 contact tracing was installed by Google without any user interaction and notification. Google even tracked the location of users even though users disabled it.
Steps to setup a new Android Google phone:
Follow the normal LineageOS setup above and then do the following steps for MicroG.
So this is my list of essential replacements:
List of recommented replacements:
List of additional replacements:
Enable Guardian project as a package source in F-Droid:
Since Mesa 19.3 Zink is available which offers an OpenGL to Vulkan translation. The actual features of Zink are documented at MesaMatrix https://mesamatrix.net.
You can test games and apps simply by running them from a terminal. Just replace “command” with the application or game name:
The following applications worked:
As there is currently no HUD like in DXVK it is quite hard to verify which driver actually runs, but I noticed that the GALLIUM HUD shows less lines in Zink then usual when using a parameter like this:
VK_INSTANCE_LAYERS=VK_LAYER_MESA_overlay VK_LAYER_MESA_OVERLAY_CONFIG=position=top-right GALLIUM_HUD=simple,cpu,GPU-load,temperature,fps command
Somehow the Vulkan layer doesn’t work at the moment either.
What didn’t work:
To reboot, run the command
To reboot for UEFI (Bios), run:
systemctl reboot --firmware-setup
Limit journal size in:
sudo nano /etc/systemd/journald.conf SystemMaxUse=500M
To analyze the boot time, use systemd-analyze.
$ systemd-analyze Startup finished in 5853ms (kernel) + 1252ms (userspace) = 7106ms
Tip: To see how much time was spent in the initramfs, append the systemd hook to your HOOKS array in /etc/mkinitcpio.conf:
# udev replaced by systemd (add sd-encrypt after systemd if using encryption) HOOKS="base systemd autodetect modconf block keyboard keymap filesystems"
As root, rebuild your initramfs with:
$ mkinitcpio -p linux $ systemd-analyze Startup finished in 1766ms (kernel) + 4113ms (initramfs) + 1224ms (userspace) = 7104ms
Services startup time:
or to see all services:
$ systemd-analyze blame
Create boot time chart/picture:
systemd-analyze plot > plot.svg
Flickerfree booting (https://wiki.archlinux.org/index.php/Silent_boot):
Add to your kernel boot parameters (e.g. in /boot/loader/entries/). With Linux 5.1 this is not required anymore for Intel machines.
quiet loglevel=3 rd.udev.log_priority=3 rd.systemd.show_status=auto vt.global_cursor_default=0
Interestingly I had to enable additionally upower to get on the AMD GPU system no text output:
systemctl enable upower systemctl mask systemd-hwdb-update.service
There may be some services, that could be disabled, if you do not need them. Example of 2 services that are not required on my systems.
systemctl disable ModemManager.service systemctl mask ModemManager.service systemctl disable lvm2-monitor.service systemctl mask lvm2-monitor.service
On Arch Linux you could install besides the mainline kernel as well the lts kernel as a fallback, so if the mainline kernel fails to boot that then at least there is another stable kernel available. This could then be combined with the new systemd-boot-count feature to automatically fallback to a working kernel.
Recently I was hit by an issue with a wrong installed mesa driver after I played around with mesa-git. Basically I notebook booted fine, but as soon as it tried to load SDDM something crashed very bad.
I couldn’t change to another non-graphical terminal (TTY) nor could I login via SSH.
On my notebook I use systemd-boot as a boot loader. It is fast and I don’t have issue with encryption. But as I have never seen any OS selection window like in GRUB2, I thought I have an issue… but pressing during the bios screen ESC multiple times showed by a systemd-boot loader where I could select to start normal, fallback, EFI default loader or Reboot into firmware interface.
The fallback options sounded very sweet. But it crashed as well because it tried to basically load the graphical target with SDDM as well.
After a reset I was again in the systemd-boot loader. Pressing “e” key allowed me to edit the lines. First thing I don’t understand, why is the parameter “quiet” provided in the fallback line. I mean people use this if something goes wrong so they want to see some output and possible failure messages and where the process is stuck. So why would this be a default. And second there is no option to tell the system to boot to a non-graphical environment. Again very bad.
I know there is something like a search engine on the internet, but it is still annoying, I found in https://fedoraproject.org/wiki/Systemd the following options with systemd (should work in systemd-boot, GRUB2 or as well in other boot loaders):
systemd.unit=rescue.targetis a special target unit for setting up the base system and a rescue shell (similar to run level 1)
systemd.unit=emergency.targetis very similar to passing
init=/bin/shbut with the option to boot the full system from there
systemd.unit=multi-user.targetfor setting up a non-graphical multi-user system
systemd.unit=graphical.targetfor setting up a graphical login screen.
So I removed from the parameter “quiet” and added “systemd.unit=multi-user.target.
A little annoying is here, that the keyboard is not changed to your local. Findind special characters like = or – can take time for beginners.
And by pressing enter I could boot into a non-graphical environment. Great, but not as easy as I would wish. I hope I never have to tell this somebody by phone. Maybe I should open a bug report, but I fear they will ignore it.
Dbus-broker can be installed on Arch Linux and it replaces the normal dbus. Users should not notice any big difference when using this new dbus-broker as it keeps backward compatibility.
The only case where a graphical boot is useful is if you use disk encryption. Typing it the password in the terminal is not nice.
Add to mkinitcpio.conf the required hooks like (read the Arch Wiki for more details https://wiki.archlinux.org/index.php/Plymouth), example:
sudo nano /etc/mkinitcpio.conf
# replaced encrypt with plymouth-encrypt, if you have encryption HOOKS="base udev plymouth plymouth-encrypt autodetect modconf block keyboard keymap filesystems"
Recommended for systemd:
# add sd-encrypt if you have encryption HOOKS="base systemd sd-plymouth sd-encrypt autodetect modconf block keyboard keymap filesystems"
You should enable early KMS by adding to Modules as well the GPU module like, example (i915 for intel, amdgpu, nouveau, …):
Then deactivate the login manager and use the plymouth one instead.
sudo systemctl disable sddm.service sudo systemctl enable sddm-plymouth.service
Add splash to kernel parameters and enable silent boot (https://wiki.archlinux.org/index.php/Silent_boot), e.g. in:
sudo nano /etc/loader/entries/archlinux.conf
quiet splash loglevel=3 vt.global_cursor_default=0
And if you use systemd hook add:
For Intel add additionally (not required anymore Linux >= 5.1 and Intel Skylake and newer hardware):
Enable theme (example solar)
sudo plymouth-set-default-theme -R <theme>
Factorio (https://factorio.com) is a great game to build up a factory and automate it. So far it doesn’t natively run on Wayland (bug) only through XWayland.
The latest release 0.16 had sound issues, I had to add the prefix (https://forums.factorio.com/viewtopic.php?f=7&t=3636):
There are several gratis games for Linux that you can play. A more complete list can be found here https://www.gamingonlinux.com/free-games.
MPV (license GPLv2, https://github.com/mpv-player) is the first video player with Vulkan support since 0.28. Wayland is supported by default since 0.29.
pacman -Sy mpv
To use Vulkan, you need to run MPV with or modify the start menu entry:
mpv --gpu-api=vulkan --player-operation-mode=pseudo-gui -- %U
At least on Plasma Wayland mpv 0.30 works fine with Vulkan in a Wayland window.
The AV1(BSD Clause 2, https://aomedia.googlesource.com) media codec has been officially released royalty-free by the Open Media Alliance (https://aomedia.org) on 2018-03-28 with broad support from all the major internet companies, read https://www.phoronix.com/scan.php?page=news_item&px=AV1-Released. On 2018-06-26 the version 1.0 has been released. AV1 claims to offer 30% better compression at 4K then the other media codec’s like VP9.
Free and open source efforts for games without Wayland support running through XWayland on Vulkan are documented here. For more information about toolkit’s with proper Wayland support and how to remove legacy ones running on XWayland only, read Wayland.
GZDoom (license GPLv3, https://zdoom.org, https://github.com/coelckers/gzdoom/tree/vulkan2) is based on the open source release of the Doom 1 engine and it has been enhanced with Linux and Vulkan support (since Version 4.0). Another engine for Doom is Doomsday (withouth Vulkan). It supports as well all the other idTech 1 game engine games like:
Luxtorpeda can use GZDoom automatically in Steam Play, only Vulkan doesn’t work yet automatically.
To manually setup GZDoom and play with Vulkan enabled, run:
gzdoom +vid_backend 0
You can buy DRM free copies:
If after the installation GZDoom doesn’t find you game .wad files automatically, you can add the path to the file like this:
$ nano .config/gzdoom/gzdoom.ini ...[IWADSearch.Directories] ...Path=/home/USERNAME/.wine/drive_c/GOG Games/DOOM/ ...
If you add multiple folders, GZDoom will automatically create a game selection menu.
Chex Quest is available to downlaod from the official website https://www.chexmix.com/chexquest.
Helium Rain (64bit) is an Early Access game on Steam (https://store.steampowered.com/app/681330/Helium_Rain). The developers released the source code of Helium Rain (license BSD, https://github.com/arbonagw/HeliumRain) of their own engine,it requires the Unreal Engine and the content to build.
Helium Rain supports Vulkan (2018-01-26). To run the game on Vulkan you need to add -vulkan to the launch options in Steam. The beta channel is not available anymore.
The game doesn’t work on Wayland (bug) only through XWayland.
OpenSAGE (license LGPLv3, https://github.com/OpenSAGE) is a free and open source re-implementation of the SAGE game engine. This will allow you to play Command & Conquer: Generals and Zero Hour, but support could be extended to other RTS titles from EA Pacific. Linux support has been added and Vulkan support is already work in progress (https://github.com/OpenSAGE/OpenSAGE/releases/tag/v0.2.0). If it works natively on Wayland or only through XWayland has to be seen.
vkOpenArena (license GPLv2+, https://github.com/suijingfeng/vkOpenArena) provides Vulkan support since March 2019.
vkQuake (https://github.com/Novum/vkQuake) is a Vulkan port of the Quake game licensed under GPLv2. Installation on Arch Linux:
So far I had no luck in running vkQuake directly via Wayland, even with the start parameter -platform wayland or with the prefix SDL_VIDEODRIVER=wayland. vkQuake runs only through XWayland.
Luxtorpeda can use vkQuake automatically in Steam Play.
If you want to do the setup manually, do the following:
pak0.pak: contains episode 1 (shareware, gratis). Episode 1 is available as a shareware version for testing, if you don’t own the game. You can download it from https://bit.ly/2aDMSiz.
pak1.pak: contains episodes 2-4 (you can buy it e.g. on GOG https://www.gog.com/game/quake_the_offering, the version on GOG is provided with the original soundtrack files, not like the steam version)
If you have downloaded the shareware version extract the archive. Now you need a tool like 7-zip to extract the file resource.1, in the terminal you can do this with this command:
7z e resource.1
If you have copied the file PAK0.PAK to the .vkquake/id1/ folder, rename it on Linux to pak0.pak as Linux is case-sensitive and otherwise it won’t find the file. If you have the PAK1.PAK file, do the same for this one.
If you have Quake version with the soundtrack copy them to the folder .vkquake/id1/music/.
Now you should be able to run the game, if it doesn’t try to run it from the terminal to see the error messages.
vkQuake2 (license GPLv2, https://github.com/kondrak/vkQuake2) added Vulkan support for the Quake 2 engine. The Linux version is available since mid January 2019.
Installation on Arch Linux:
Before running the game you need to copy some files to the game directory (you may need to install the GOG version first with Wine):
sudo mv Quake\ II/* /opt/vkquake2/baseq2/
Then the game did run on Vulkan, at least in multiplayer mode. The normal game did freeze.
vkQuake3 (license GPLv2, https://github.com/suijingfeng/vkQuake3) added a Vulkan backend based on the Qauke III Arena Kenny Edition.
In the Quake III Arena Kenny Edition Vulkan support has been added as well, read https://github.com/kennyalive/Quake-III-Arena-Kenny-Edition/releases/tag/v1.1. But it is not available for Linux at the moment.
The source code of vkDoom3 (GPLv3), a Doom 3 Vulkan port, has been released and you can follow the project here https://github.com/DustinHLand/vkDOOM3. The RBDOOM-3-BFG project can be followed here https://github.com/RobertBeckebans/RBDOOM-3-BFG and they plan to pull the Vulkan code as well and by this it will support Linux (64 bit). The bug for Vulkan is open since some time without any response https://github.com/RobertBeckebans/RBDOOM-3-BFG/issues/398, but beginning of October 2018 some merge activity started. RBDoom3-BFG doesn’t support Wayland (bug) and it runs through XWayland.
To install RBDoom3-BFG run the following command (use the git version so that as soon as there is Vulkan support you can start testing):
To play the game you need to do the following:
seta sys_lang "english". Otherwise the game starts in Japanese.
Some independent developers are porting the game Warzone 2100 game (released 1999, open sourced later, https://wz2100.net, https://github.com/Warzone2100/warzone2100) to Vulkan, read https://www.phoronix.com/scan.php?page=news_item&px=Warzone-2100-Vulkan. The OpenGL version of Warzone 2100 is available for Linux, the Vulkan port is currently not provided for Linux but it will be developed soon, read http://forums.wz2100.net/viewtopic.php?f=32&t=13651. The video files are available here https://sourceforge.net/projects/warzone2100/files/warzone2100/Videos/.
X-Men: The Ravages of Apocalypse can be downloaded from the official website http://www.zerogravity.com.au/xmen (without original soundtrack) and it runs with vkQuake on Vulkan.
Vulkan-drv (license ???, https://github.com/kosumosu/vulkan-drv) is a Vulkan renderer in an early stage for the original Unreal Engine (98).
The non open source games can be found here Vulkan Proprietary Games.
Thanks to a lot of community effort there are several games that got a free and open source software (FLOSS) engine as a drop-in replacement for the proprietary one. Even if never released for Linux, they can be played now natively, some of them even on Vulkan, read Games – Vulkan OpenSource.
The content like artwork, media and music still remains under their original copyright license and you still need a copy of the original game or if not available you can buy it used or via one of the game shops.
Running the game with a free and open source software engine offers several advantages like Linux support, 64bit, new OpenGL paths, bug fixes, new features and so on. Not every project reached the same quality, but in most cases it is worth a try.
The game engines can be used as well to develop own games or as development examples. A more complete list can be found here https://www.gamingonlinux.com/wiki/Open_Source_Game_Engines_List or here https://en.wikipedia.org/wiki/List_of_open-source_video_games
OpenRA (license GPLv3, http://www.openra.net, https://github.com/OpenRA/OpenRA) is a game engine for the Command & Conquer games including Krush Kill ‘N Destroy 1 + 2. The Red Alert part of the game is available for free of charge and can be downloaded in game once OpenRA is installed.
pacman -Sy openra
If you add the prefix
SDL_VIDEODRIVER=wayland to the start parameter then OpenRA will work fine in Wayland.
If you run OpenRA for the first time it will allow you to download the base game of Command & Conquer – Red Alert, Tiberian Dawn and Dune 2000 for free. Only the mission briefings need to be purchased or installed from the original CD’s, if you want them. OpenRA is developing support for Tiberian Sun as well.
OpenRA runs since December 2018 as well Krush Kill N’ Destroy 1 and 2 (license GPLv3, https://kknd-game.com, https://github.com/IceReaper/KKnD). OpenRA will download the demo and you can start testing it. The game data cam be purchased at GOG:
OpenSC (https://github.com/cookgreen/OpenSC) is a mod of the OpenRA engine for Starcraft.
OpenAge (license GPLv3+, http://openage.sft.mx) is a game engine remake for Age of Empires II (or the HD version). The code is available on https://github.com/SFTtech/openage. Technically it maybe extended to Age of Empires and Star Wars: Galactic Battlegrounds, as they used the same engine.
GemRB (license GPL, http://www.gemrb.org) is a portable open-source implementation of Bioware’s Infinity Engine and it runs:
You can buy the game content on GOG DRM free. It is developed on here https://github.com/gemrb/gemrb.
NBlood (license GPLv2, https://github.com/nukeykt/NBlood) is a open source engine for the FPS game Blood. To play the game you need to buy a copy of the Blood game (available on GOG and Steam).
CaesarIA (license GPLv3, https://bitbucket.org/dalerank/caesaria/wiki/Home) is a game engine remake of Caesar III that slightly modified the original game play. You can find it as well on Steam https://store.steampowered.com/app/327640 and on GOG https://www.gog.com/game/caesar_3
Julius (license AGPLv3, https://github.com/bvschaik/julius) is another open source game engine for Caesar III that tried to stay with the original game play as close as possible.
Carnage3 (https://github.com/codenamecpp/carnage3d) is an open source reimplementation of GTA 1 (Grand Theft Auto).
Delver Engine and Editor (license GPLv2, https://github.com/Interrupt/delverengine) has been released as free software in November 2018. To play the game you can buy the game content on Steam.
FreeAblo (license GPLv3, https://freeablo.org, https://github.com/wheybags/freeablo) is a open source engine for Diablo 1 game and is available for Linux. It requires the game data to be played, but it is still not yet finished. Diablo 1 is not available for sales anymore, you can only buy a used CD copy (on the Internet Archive.org a copy is available, but this is maybe not legit).
You can use the normal or the git version.
DevilutionX (license public domain, https://github.com/diasurgical/devilutionX) is a Diablo 1 port provided as public domain in June 2018 by Devilution (https://github.com/galaxyhaxz/devilution), which seems to be at least partially de-compiled, it is not sure if there are legal concerns (copyright) as this might not be an own development and reverse engineered like other engines. To play the game you need to have the game data from the original game. At least Diablo 1 can be bought now on GOG.
Before you can run the game, copy diabdat.mpq from your CD or GoG installation (or extract it from the GoG installer) to the DevilutionX install folder or data folder; make sure it is all lowercase:
OpenD2 (license GPLv3, https://github.com/eezstreet/OpenD2) is a open source engine for the Diablo II game and is available for Linux. It requires the game data to be played.
NRedneck (https://github.com/nukeykt/NRedneck) is an open source game engine for Duke Nukem 3D, Redneck Rampage and Redneck Rampage: Rides Again. More details can be found in this forum post https://forums.duke4.net/topic/10241-rednukem-redneck-rampage-port/.
Ebony Spire Heresy (license MIT, https://beardedgiant.games/product/ebony-spire-heresy/) provides the game engine as open source and is available on Steam.
OpenBlack (license GPLv3, https://github.com/openblack/openblack) is an open source game engine for Black & White. The game data must be owned to play the game with OpenBlack.
OpenMW (license GPLv3, https://openmw.org) is developed under a GPLv3 license. The code is available on https://github.com/OpenMW/openmw. Work is ongoing to add support for Oblivion, Skyrim, Fallout 3 and Fallout New Vegas, read https://openmw.org/2019/followers-of-shadows.
Install the engine with the following command:
pacman -Sy openmw
You can buy a DRM free copy at GOG if you don’t own the game already:
Download the Windows version, install it with Wine, then run OpenMW (openmw-launcher command) and follow the first launch guide. It will find your existing Wine game installation folder, if it is a default one automatically, but you need to add the data folder manually. OpenMW runs great on Linux and playing works really well.
OpenMW is using SDL2, so Wayland should be supported natively, but I got some error messages, see below. But on Plasma-Wayland the game works at least well trough XWayland, except some input bugs with the mouse and keyboard, hopefully solved with the next Plasma release.
$ SDL_VIDEODRIVER=wayland openmw-launcher wl_registry@2: error 0: invalid version for global wl_data_device_manager (9): have 2, wanted 3 SDL_Init failed: "The video driver did not add any displays"
OpenTESArena (license MIT, https://github.com/afritz1/OpenTESArena) is a new game engine for Elder Scrolls: Arena in an early stage and not fully playable yet.
OpenVII (license MIT, https://github.com/MaKiPL/OpenVIII) is working on a new game engine for Final Fantasy VIII, it is not fully working yet but looks interesting. This will add Linux support and it is based on OpenGL.
REGoth (GPLv3, https://github.com/REGoth-project/REGoth) is a remake of the Gothic and Gothic II engine.
You can buy a DRM free copy at GOG if you don’t own the game already.
You can by a DRM free copy from GOG:
Run REGoth from a terminal with the following flags:
REGoth -g "path/to/gothic1or2" -w startworld.zen
path/to/gothic1or2 points to the root of a Gothic I or II installation and
startworld.zen is one of the Zen-Files found in a
.vdf-files in the games
Gothic 1 – Overworld: REGoth -g “path/to/gothic1″ -w world.zen”
Gothic 1 – Oldmine: REGoth -g “path/to/gothic1″ -w oldmine.zen”
Gothic 1 – Freemine: REGoth -g “path/to/gothic1″ -w freemine.zen”
Gothic 1 – Sleeper temple: REGoth -g “path/to/gothic1″ -w orctemple.zen”
Gothic 2 – Overworld: REGoth -g “path/to/gothic2″ -w newworld.zen”
Gothic 2 – Valley of mines: REGoth -g “path/to/gothic2″ -w oldworld.zen”
Gothic 2 – Addonworld: REGoth -g “path/to/gothic2″ -w addonworld.zen”
Gothic 2 – Dragonisland: REGoth -g “path/to/gothic2″ -w dragonisland.zen”
OpenJK (license GPLv2, https://github.com/JACoders/OpenJK) allows you to play the following games in single player mode:
With EthernalJK you can play in multi player mode. Luxtorpeda can use OpenJK and Ethernal JK automatically in Steam Play.
Buy a DRM free copy:
Recently the source of Shadow Warrior (license GPLv2 for the game engine files, https://gitlab.com/NY00123/sw-src-and-build-addendum) has been discovered again and released as open source, it is not playable yet or ported to Linux, but sooner or later this will probably happen.
OpenXRay (license BSD but maybe it is just source code that is not free, https://github.com/OpenXRay/xray-16) is based on Game Engine XRay that has been used for S.T.A.L.K.E.R. Call of Pripyat added several enhancements plus Linux support. You need to buy the game content and data to use it with OpenXRay.
System Shock (license GPL, https://github.com/NightDiveStudios/shockmac) has been released as free software on 2018-04-07. The Linux version on Steam was only a Wine wrapper. A new linux version has been created https://github.com/Interrupt/systemshock, the code name is Shokolate. To play the game you need to buy the game content.
yay return-to-the-roots # or for the latest builds yay s25rttr
Buy a DRM free copy:
Link the game files on Arch Linux, e.g. like this:
rm -R /bin/RTTR/S2 ln -s /home/rainer/.wine/drive_c/GOG\ Games/Settlers\ 2\ GOLD/ /usr/share/s25rttr/ sudo mv /usr/share/s25rttr/Settlers\ 2\ GOLD /usr/share/s25rttr/S2
Then run the game:
The game seems to run, only campaigns do not work yet. The game is using the old SDL, hopefully they will upgrade to SDL2 to provide modern support for Wayland, this will probably happen with the release of version 1.0, read https://github.com/Return-To-The-Roots/s25client/issues/144.
CorsixTH (license GPL, https://corsixth.com) is a remake of the Theme Hospital engine. You can follow the development here https://github.com/CorsixTH/CorsixTH. Install the engine with the following command:
You can buy a DRM free copy at GOG https://www.gog.com/game/theme_hospital.
Download the Windows version, install it with Wine, start CorsixTH (CorsixTH command) and link it to the path of the Wine installation folder of Theme Hospital. CorsixTH runs great on Linux and playing works really well.
CorsixTH is using SDL2, so Wayland should be supported natively, but I got some error messages, see below. But on Plasma-Wayland the game works really well trough XWayland.
$ SDL_VIDEODRIVER=wayland CorsixTH --------------------------------------------------------------- Welcome to CorsixTH v0.60! --------------------------------------------------------------- This window will display useful information if an error occurs. --------------------------------------------------------------- wl_registry@2: error 0: invalid version for global wl_data_device_manager (9): have 2, wanted 3 SDL_Init failed: The video driver did not add any displays An error has occurred in CorsixTH: /usr/share/CorsixTH/CorsixTH.lua:133: Cannot initialise SDL stack traceback: [C]: in function 'assert' /usr/share/CorsixTH/CorsixTH.lua:133: in main chunk [C]: in ? wl_registry@2: error 0: invalid version for global wl_data_device_manager (9): have 2, wanted 3 SDL_Init failed: The video driver did not add any displays bootstrap.cpp:49: Unable to initialise video
OpenLara is developed under a BSD license and the code is available on https://github.com/XProger/OpenLara. For more details you can follow the forum tread http://www.tombraiderforums.com/showthread.php?t=216618.
You can even play and test it in a browser (Fullscreen with ALT + Enter):
Buy a DRM free copy:
You can install OpenLara in Arch Linux from AUR with:
Run OpenLara from the terminal.
Another Alternative to OpenLara.
ETLegacy (license GPLv3, https://github.com/etlegacy, https://www.etlegacy.com) is build based on ioquake3 engine an offers OpenGL 3 support. The original game engine has been released as open source and the game file can be downloaded from here https://www.splashdamage.com/games/wolfenstein-enemy-territory. The game maps have been recreated with higher quality. On Arch Linux you can install the game from AUR (use the git version, the normal doesn’t work as of librenderer_opengl1_x86_64.so issues):
If the game crashes after the first setup, run it again.
OpenXCom (license GPLv3, https://openxcom.org, https://github.com/SupSuper/OpenXcom) is an open-source clone of UFO: Enemy Unknown (“X-COM: UFO Defense” in the USA release) and X-COM: Terror From the Deep videogames by Microprose. Luxtorpeda can use OpenXCOm automatically in Steam Play.
San Andreas Unity (license MIT, https://github.com/GTA-ASM/SanAndreasUnity) tries to remake GTA San Andreas (Grand Theft Auto) with the Unity engine.
Download gratis game https://elderscrolls.bethesda.net/en/daggerfall?.
Download game builds http://www.dfworkshop.net/projects/daggerfall-unity/live-builds.
Proprietary games without Wayland support running through XWayland on Vulkan are listed below this point.
Artifact is a card game from Valve with Linux and Vulkan only support.
Dota Undergrounds (basic game free of charge) has been released by Valve with Linux and Vulkan only support.
X4 was released end of 2018 and supports Vulkan only. On Linux the beta version is available sinde 26th February 2019.
AI War 2 got released on 2019-10-22 with Vulkan support only on Linux.
Feral seems to offer an experimental Vulkan build only on Linux for DiRT Rally. You can enable it on Linux in the Feral Lauchner. Enter in Advanced / Advanced Options the following “-showdebugpanel -showtestpanel”, now you can click on the tab testing and enable “Use Vulkan”. I couldn’t get this to work though, it always launched with OpenGL.
Feral did release DiRT 4 for Linux with Vulkan only support only on Linux and it works great. It doesn’t support Wayland (bug) and it runs through XWayland.
Feral did release F1 2017 for Linux with Vulkan only support only on Linux. It doesn’t support Wayland (bug) and it runs through XWayland.
The Linux version of Forsaken Remastered ported by Ryan “Icculus” Gordon supports Vulkan only on Linux. It can be enabled in the game in the video setting menu. Vulkan should be enabled by default.
Feral added an experimental Vulkan build only on Linux for Hitman. You can enable it on Linux in the Feral Lauchner. Enter in Advanced / Advanced Options the following “-showdebugpanel -showtestpanel”, now you can click on the tab testing and enable “Use Vulkan”. Water rendering is partially broken and the benchmark crashed as well, but other than this it worked quite well.
Life is Strange 2 has been released by Feral on 2019-12-19 with Vulkan support only on Linux.
Feral added to Mad Max a Vulkan build only on Linux. To enable Vulkan read the following blog post: https://www.feralinteractive.com/en/news/753. Basically you enter in the game properties in the Beta tab of Steam the code “livelongandprosper” and then the vulkan_beta will be available. After downloading the beta you can lunch the game and it will run on Vulkan. What is strange is that Vulkan is not yet shipped by default!
Mad Max doesn’t support Wayland and it runs through XWayland (Bug). For benchmarking you can add in the Steam lunch options the command “–feral-benchmark”.
Feral added on 2019-10-17 to Shadow of Mordor a Vulkan port only on Linux . It is available in the beta tab of the game settings on Steam.
Rise of the Tomb Raider was released by Feral with Vulkan only support only on Linux. The game doesn’t work on Wayland (bug) only through XWayland.
Shadow of the Tomb Raider has been released by Feral with Vulkan only support on Linux.
Steel Rats added Linux and Vulkan only support. The game uses the Unreal Engine. It is available on Steam.
Total War Saga: Thrones of Britannia has been ported by Feral and it offers Vulkan only support only on Linux. The performance is great on Linux and the Vulkan port is near the performance of DX11. It doesn’t support Wayland even though it is providing SDL 2.0.7.
Total War: Three Kingdoms has been ported by Feral with Vulkan only support only on Linux. Wayland is not supported.
Total War: Warhammer II has been ported by Feral to Linux and Vulkan and it works great. Wayland is not supported.
Feral did release Warhammer 40.000: Dawn of War III with Vulkan only support only on Linux . Vulkan can be activated in the game launcher in the Advanced tab. It doesn’t support Wayland (bug) so far and it runs through XWayland.
What Never Was (game free of charge) is available unofficially for Linux on Steam. The game is based on the Unreal Engine and Vulkan support is available only on Linux, it requires the parameter “-vulkan”.
ZED works with Vulkan on Linux. It is not yet the default, but it works well.
7 Days To Die offers native experimental Vulkan support (available in game launcher). Before version 0.18 the in-game graphics just rendered a pink flat screen, this is fixed now and Vulkan works fine on Linux native and Proton. The game comes with the Easy Anti Cheat DRM, but it can at least be disabled.
Aerofly FS2 is available with Vulkan and Linux support and it works quite well.
AntVentor doesn’t support officially Vulkan, but it runs fine if you run it on Steam with the following parameter:
ASTROKILL is based on the Unreal Engine and they added a Vulkan option into their launcher in Steam, but sadly isn’t the default yet. The game works well with Vulkan. The game doesn’t work on Wayland (bug) only through XWayland.
Ballistic Overkill is a good FPS game with Vulkan and 64 bit support. From my point of view the 32 bit build should be removed and Vulkan should be default, for now the game requires for Vulkan a start-up parameters. Ballistic Overkill doesn’t support Wayland and it runs through XWayland (Bug) even if you try to enforce it, probably Unity engine needs a update.
%command% -force-wayland -force-vulkan
If you use Vulkan or OpenGL can be seen in the main menu when you start the game on the left bottom. The game runs great on Vulkan even in 4K.
The Darkside Detective works fine on Linux with Vulkan, you have to use in Steam the following launch option:
Dota 2 (basic game free of charge) offers optionally Vulkan support on Linux and runs very well with RADV. Dota 2 doesn’t support Wayland (bug) and it runs through XWayland. Sadly Vulkan is not the default yet. Dota 2 offers Vulkan support as well for the proprietary Metal driver on MacOSX via the free software MoltenVK.
How to enable Vulkan is described in this post: https://www.facebook.com/notes/wykrhm-reddy/setting-up-dota-2-with-vulkan/1097489820273895
These are the steps (copied from the post):
Check if Vulkan is running (copied from the post):
Geocore has been released with Linux, 64 bit and optionally Vulkan support. The game is created with the Unity game engine, but as of this, the game still has some input bugs and the Vulkan port is really slow on a AMDGPU.
Geocore doesn’t support Wayland (bug) and it runs through XWayland (Bug) even if you try to enforce it with -force-wayland, probably Unity engine needs an update. Launch Options:
Jupiter Hell offers Vulkan support on Linux and Proton.
Project R.I.P. offers Vulkan support.
Serious Sam Fusion 2017 fully supports by default Vulkan on Linux since release. OpenGL and 32bit support has been removed in an 2018 update. Serious Sam Fusion 2017 doesn’t support Wayland (bug) and it runs through XWayland. Serious Sam Fusion 2017 includes the following games:
The new publicbeta defaults now to the 64 bit build (2019-02-23) and Vulkan. It removed OpenGL support, but strangely they still kept 32bit support available. The Talos Principle doesn’t support Wayland (bug) and it runs through XWayland.
Throne of Lies offers an optionally Vulkan version with the Unity Engine. Vulkan can be selected in the game launcher. Bug: But the game doesn’t connect on Linux to the game servers as there seems to be a DRM login.
Tower of Times supports optionally Vulkan on Linux. The game is based on the Unity engine. To use Vulkan, you need to add the launch option “-force-wayland -force-vulkan” in Steam. The game runs stable on Vulkan. The game doesn’t support Wayland yet and runs through XWayland.
Trüberbrook works optionally on Vulkan on Linux. The game is based on the Unity Engine and you need to add “-force-vulkan” to run it on Vulkan. It doesn’t work on Wayland only through XWayland.
Unturned is based on the Unity Engine and Vulkan can be enabled as well on Linux with the parameter “-force-vulkan“
War Thunder (basic game free of charge) offers optionally Vulkan support, which is much more powerful than OpenGL. But sadly it is not the default yet, even not available as an option in the the game launcher. To enable Vulkan, do the following:
x-Plane 11 added with the public beta 11.50 Vulkan support for Linux and Wine. You can select Vulkan in the graphics options of the game. Some GPU drivers may need a work around if the game crashes during start, just add the following launch parameters:
export DISABLE_VK_LAYER_VALVE_steam_fossilize_1=1 export DISABLE_VK_LAYER_VALVE_steam_overlay_1=1
Proton (Steam Play or Wine) can run several native Vulkan games on Linux. This is only required because some game companies like Bethesda decided not to provide a Linux build even if it would be fairly simple to do as Vulkan is already cross platform.
Doom Eternal is by default Vulkan only and with the latest Mesa drivers it is starting to work in some Proton systems.
Rage 2 supports by default Vulkan only.
The Surge 2 is a Vulkan only game and works well in Proton.
They all run by default on Vulkan only and work great in Proton.
Ashes of Singularity offers optionally native Vulkan support (available in the video settings in the game menu). Bug: Actually it works on Proton only in Direct3D 11 mode with DXVK, the game complains about outdated AMD drivers which is definitly not true as it was tested with Mesa-git.
Blood: Fresh Supply offers optionally native Vulkan support (available in the video settings in the game menu) and it runs fine in Proton.
Doom 2016 offers optionally native Vulkan, to enable it you must set the launch paramter in Steam “+r_renderAPI 1”. Then the game works great on Vulkan, it is strange that Vulkan is not the default anyway.
No Man’s Sky offers optionally native Vulkan suppport and it works in Proton.
The Orville – Interactive Fan Experience (free of charge game) provides experimental Vulkan support on Proton.
Path of Exile (basic game free of charge) added Vulkan support in May 2019 and it works in Proton.
Strange Brigade supports optionally Vulkan. Rename the StrangeBrigade_Vulkan.exe to StrangeBrigade.exe then the game works on Proton. Sadly Vulkan is not enabled by default.