Testing a RPI as daily driver desktop (2021-08) version 0x12 -- @sairukau =============================================================================== Changelog =============================================================================== v0x12 Had a crack at compiling vkQuake, ran into issues, missing libmad Compiled vkQuake3, need to run both Added some info on Neverwinter Nights Added some additional links v0x11 Setup a new rpi4 with twisteros for a lan the other day. Intended to run 0ad, Neverwinter Nights and minetest Added chaiki (now with sound), steamlink client Upgraded to MESA 20.3 (Vulkan option) from PiKISS (don't do this) This broke rendering in NWN, black textures SM64PCEX from PiKISS, black screen after upgrade of MESA Patched twister with the 20.3 patch from the twisteros faq page, fixed NWN textures and SM64PCEX black screen Disabled ipv6 was causing routing errors with openwrt replayd v0x10 <= has been removed, as the use case was different, refer to article v0x10 use case see archive/ =============================================================================== Expected Use cases =============================================================================== - General PC Use - Gaming =============================================================================== Hardware =============================================================================== RPI4 - 4G Model Display - 1920x1080 32" TV through HDMI Keyboard/Mouse - Wireless USB Networking - 5GHz wifi 32GB SD Card (shipped with RPi) - don't know what class when I remove the sd card next I'll make a note Distro/OS - TwisterOS nb: lots of stuff is hardcoded to the pi user, strange design decision =============================================================================== Changes =============================================================================== OS Changes - Upgrade to MESA 20.3 =============================================================================== Migration =============================================================================== Not Appliciable, this is a completely new setup =============================================================================== Usage =============================================================================== Keyboard/Mouse Nothing of note, crappy wireless Rapoo keyboard Applications Chromium - Preinstalled Video Playback - Not Tested Storage performance - Not Tested, just running of SD atm Network Performance Have some wifi dumb ap network issues atm and the dumb ap is routed over eop so speed isn't the greatest atm $ speedtest-cli --simple Ping: 38.756 ms Download: 36.01 Mbit/s Upload: 24.65 Mbit/s =============================================================================== Customisations =============================================================================== HDMI None, considering dropping the default res to 720p for performance reasons Window Manager Nothing done here (yet), XFCE is default Comes with 4.12, will consider upgrading to 4.16 to get vblanking control Audio None GPU Accelation # cat /proc/device-tree/soc/firmwarekms@7e600000/status # cat /proc/device-tree/v3dbus/v3d@7ec04000/status both should return "okay" Configure acceleration in Applications Chromium chrome://flags Override software rending list -> Enabled =============================================================================== (fake kms) Acceleration Performance - fkms =============================================================================== Chromium TBA Gaming See dedicated section =============================================================================== (kms) Acceleration Performance =============================================================================== To be redone on new setup : glxgears : glx (default) | ?? | xpresent | ?? | off | ?? | =============================================================================== Overclock =============================================================================== Overclocked values as applied from PiKISS [all] arm_freq=2000 gpu_freq=750 over_voltage=6 ref: v0x10 article =============================================================================== Configuration =============================================================================== TBA =============================================================================== Applications (non-gaming) =============================================================================== Discord webapp A discord webapp is packaged =============================================================================== Gaming =============================================================================== Not expecting anything much in regards to this, most games will not run on arm and Steam is not available for arm but Steamlink is so that may be a possiblity Box86 Great program, works well. Updater script included in twisteros settings Steamlink Works well, no issues of note Emulation MAME Unofficial up to date builds are available from https://stickfreaks.com/mame/ Neverwinter Nights (Box86) Get around ~25fps @ 1920x1080 Good settings Sound works with 32bit pulse libs installed and padsp32 mod - https://mameau.com/linux/32bfixes/ Minetest Compiled 5.4.1 from source, cloned and compiled Use as an fps benchmark maybe? (from v0x10 article) - 800x600 windowed ~25fps (default) - 1280x720 windowed ~23fps - 1920x1080 Fullscreen ~17fps Chiaki (PS4 Remote play) Works extremely well, install libqt5multimedia5-plugin for sound support, compile from main repo https://sr.ht/~thestr4ng3r/chiaki/ Compile notes https://gist.github.com/sairuk/96072fe2aef08464496d2255a31caf93 Add QT_SELECT to your bashrc $ vi ~/.bashrc export QT_SELECT=qt5-opengl Runs fine, set it to 720p Steam (Box86 wrapped) Have no real interest in this but its preinstalled so may take a look Lutris (Box86 wrapped) This is a decent general purpose game launcher, be nice to see if with custom rpi4 runners, maybe it does this already. I need to dig a bit deeper SM64PC Ex Linux port Available through PiKISS, runs well on standard twisteros - avoid upgrading vulkan through PiKISS it is breaking vkQuake https://github.com/Novum/vkQuake apt-get install libmad0-dev git clone https://github.com/Novum/vkQuake cd vKQuake/Quake make CFLAGS="-mcpu=cortex-a72 -mfpu=neon-fp-armv8 -mfloat-abi=hard" -j$(nproc) ./vkquake vkQuake3 https://github.com/suijingfeng/vkQuake3 Required manual patches GLSL issues - https://github.com/suijingfeng/vkQuake3/issues/13 file: code/renderergl2/tr_glsl.c ln: 270 imminitrin support for SDL - https://github.com/suijingfeng/vkQuake3/issues/14 use: -DSDL_DISABLE_IMMINTRIN_H git clone https://github.com/suijingfeng/vkQuake3 cd vkQuaker3 make CFLAGS="-mcpu=cortex-a72 -mfpu=neon-fp-armv8 -DSDL_DISABLE_IMMINTRIN_H" -j$(nproc) cd build/release-linux-arm ./ioquake3.arm Openarena Packaged build runs like a dogs breaksfast, don't use it Need to revisit (as per v0x10 article) - ezQuake - deviloutionX (diablo) - DOOM (Chocolate) https://github.com/chocolate-doom/chocolate-doom.git - ScummVM Packaged - Aliens vs Predator PiKISS version? - vkQuake2 https://github.com/kondrak/vkQuake2 - vkOpenarena https://github.com/suijingfeng/vkOpenArena - PPSSPP https://github.com/hrydgard/ppsspp.git =============================================================================== Wine Applications =============================================================================== TBA =============================================================================== Extra Credit =============================================================================== TBA =============================================================================== rpi-update =============================================================================== I know audio hard locks i raised previously were addressed, this section is as per v0x10 currently ships with kernel: Linux raspberrypi 5.10.52-v7l+ #1440 SMP Tue Jul 27 09:55:21 BST 2021 armv7l GNU/Linux =============================================================================== Issues =============================================================================== TBA