====== Linux: Fedora- Client ======
here are some basics for setting up Fedora. Actual Version: 43
Useful Docs also: [[https://github.com/devangshekhawat/Fedora-43-Post-Install-Guide|https://github.com/devangshekhawat/Fedora-43-Post-Install-Guide]]
===== Graphics =====
==== Basic codecs ====
Out of the Box there are not all multimedia codecs installed which are needed to decode propietary formats.
To use h264 and vlc, you need to:
sudo dnf config-manager setopt fedora-cisco-openh264.enabled=1
sudo dnf install vlc
sudo dnf install python-vlc
==== Interfaces ====
There are different Hardware/Software Interfaces that are important for Video acceleration in 2D and 3D.
From [[https://wiki.archlinux.org/title/Hardware_video_acceleration|https://wiki.archlinux.org/title/Hardware_video_acceleration]] :
[[https://en.wikipedia.org/wiki/Graphics_processing_unit#GPU_accelerated_video_decoding_and_encoding|Hardware video acceleration]] makes it possible for the video card to decode/encode video, thus offloading the CPU and saving power.
There are several ways to achieve this on Linux:
* [[https://en.wikipedia.org/wiki/Video_Acceleration_API|Video Acceleration API]] (VA-API) is a specification and open source library to provide both hardware accelerated video encoding and decoding, developed by Intel.
* [[https://en.wikipedia.org/wiki/VDPAU|Video Decode and Presentation API for Unix]] (VDPAU) is an open source library and API to offload portions of the video decoding process and video post-processing to the GPU video-hardware, developed by NVIDIA.
* [[https://gpuopen.com/advanced-media-framework/|Advanced Media Framework SDK]] (AMF) is an open source framework which allows "Optimal" access to AMD GPUs for multimedia processing, developed by AMD.
* [[https://en.wikipedia.org/wiki/Nvidia_NVDEC|NVDEC]]/[[https://en.wikipedia.org/wiki/Nvidia_NVENC|NVENC]] - NVIDIA's proprietary APIs for hardware video acceleration, used by NVIDIA GPUs from Fermi onwards.
* [[https://www.khronos.org/blog/an-introduction-to-vulkan-video|Vulkan Video]] is an extension of the [[https://wiki.archlinux.org/title/Vulkan|Vulkan]] graphics API designed to support hardware-accelerated video encoding and decoding.
For comprehensive overview of driver and application support see [[https://wiki.archlinux.org/title/Hardware_video_acceleration#Comparison_tables|#Comparison tables]].
=== VA-API ===
This is the most used Interface for video acceleration and decoding itself. The example here is a very old card still supported by AMDGPU:
root@pc-000700080009:~# vainfo
Trying display: wayland
Trying display: x11
libva info: VA-API version 1.22.0
libva info: User environment variable requested driver 'radeonsi'
libva info: Trying to open /usr/lib64/dri-nonfree/radeonsi_drv_video.so
libva info: Trying to open /usr/lib64/dri-freeworld/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_1_22
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.22 (libva 2.22.0)
vainfo: Driver version: Mesa Gallium driver 25.3.6 for AMD CAICOS (DRM 2.51.0 / 6.19.11-200.fc43.x86_64, LLVM 21.1.8)
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264Main : VAEntrypointVLD
VAProfileH264High : VAEntrypointVLD
VAProfileH264High10 : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProc
Please check to use the right driver (see beneath), and not maybe r600, which would be the first matching driver, if the environment LIBVA_DRIVER_NAME had not been set.
=== VDPAU ===
Basically a good way, to put load from the cpu to gpu. But:
The Mesa-Project, which is the base-project for all desktops and many programs that did support the interface, now does not any more, which is why that interface from Mesa will die:
https://forums.gentoo.org/viewtopic.php?t=1177112
Post by grknight » Wed Mar 18, 2026 12:48 pm
Oh, so mesa removed VDPAU support with version 25.3.0
Now anything that depended on it should be removed. Please disable all vdpau on your system.
Edit: Try vaapi instead system-wide. Mesa should provide a vaapi driver for radeonsi
To still be able to unload rendering to GPU, you ma y use the LIBVDPAU-VA-GL ( [[https://github.com/i-rinat/libvdpau-va-gl|https://github.com/i-rinat/libvdpau-va-gl]] ). This Library will offer VDPAU by using VA-API and OpenGL.
See beaneath for setup.
=== Vulkan ===
This is the actual framework for using 3d graphics in Linux. It will be the best supported Interface in the Future.
To tes, use:
vulkaninfo | grep VK_KHR_video_
==== For AMD ====
dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
dnf install libavcodec-freeworld --allowerasing
dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
dnf install mesa-va-drivers-freeworld --allowerasing
dnf install libvdpau-va-gl
By default, most Linux deliver radeon- driver, which is open source and stable, but lacks important features.
For AMD, one should switch to AMDGPU if possible (supported card by that driver).
To do so:
root@pc-000700080009:~# sudo nano /etc/default/grub
Add to GRUB_CMDLINE_LINUX the following Parameters:
radeon.si_support=0 amdgpu.si_support=1 radeon.cik_support=0 amdgpu.cik_support=1
and update Grub:
root@pc-000700080009:~# sudo grub2-mkconfig -o /boot/grub2/grub.cfg
Blacklist radeon - this is needed for Vulkan ro work properly:
root@pc-000700080009:~# echo "blacklist radeon"> /etc/modprobe.d/blacklist-radeon.conf
Reboot. lsmod should than not show radeon any more.
Environment: to make the Interfaces using the Driver
root@pc-000700080009:~# nano /etc/environment
and put the lines in it:
LIBVA_DRIVER_NAME=radeonsi
# 10.04.2026 No support from mesa for VDPAU any more, use libvdpau-va-gl
VDPAU_DRIVER=va_gl
Hint: Also the driver is changed to **AMDGPU**, you need to set **radeonsi** as value for LIBVA there!
VDPAU will work via VA-API:
root@pc-000700080009:~# export VDPAU_DRIVER=va_gl
root@pc-000700080009:~# vdpauinfo
display: :0 screen: 0
libva info: VA-API version 1.22.0
libva info: User environment variable requested driver 'radeonsi'
libva info: Trying to open /usr/lib64/dri-nonfree/radeonsi_drv_video.so
libva info: Trying to open /usr/lib64/dri-freeworld/radeonsi_drv_video.so
libva info: Found init function __vaDriverInit_1_22
libva info: va_openDriver() returns 0
API version: 1
Information string: OpenGL/VAAPI backend for VDPAU
Do not install / use
* **libva-vdpau-driver**
**This would be the other way round (use VA-API via VDPAU Driver!)**
==== Intel ====
dnf install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
dnf install libavcodec-freeworld --allowerasing
dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
dnf install intel-media-driver --allowerasing
Environment: to make the Interfaces using the Driver
root@pc-000700080009:~# nano /etc/environment
and put the lines in it:
LIBVA_DRIVER_NAME=intel
VDPAU_DRIVER=intel
==== NVIDIA ====
to say it like a wise man did: fuck you nvidia
==== Fragmentation/Snapshotting ====
If you like BTRF because of its powerful Features and Snapshots, you need to set up BTRFs Assistant.
===== Annoying Plasmoids =====
like weather and such:
sudo dnf remove kdeplasma-addons
===== Akonadi =====
i don't like those tools. Make your machine slow by scanning files and such… so remove it:
sudo dnf remove akonadi-server