I was able to install both Alchitry Labs V2 and Xilinx Vitis 2024.2 plus testing a demo project. I do not see any issues for now, unless I am missing something. Hopefully Alchitry will provide full support for Arch Linux
The main reason to use CachyOS is the Plasma6 running in Wayland. At least for me, the system is much more responsive, looks like a very significant upgrade, and works flawlessly.
Here is what I did.
Alchitry Labs V2:
The basic idea is to simply extract and put the whole package in /usr/lib
. Then, add the USB rules to the system and activate them. Maybe there is an easier way I am not aware of. Follow this:
From Alchitry Labs
cd /home/work/tmp
wget https://github.com/alchitry/Alchitry-Labs-V2/releases/download/2.0.24/alchitry-labs-2.0.24-linux-amd64.tar.gz
tar -xvf alchitry-labs-2.0.24-linux-amd64.tar.gz
sudo mkdir /usr/lib/alchitry
sudo mv /home/work/tmp/alchitry-labs-2.0.24 /usr/lib/alchitry/alchitry-labs
From https://www.baeldung.com/linux/arch-install-deb-package
cd /home/work/tmp
wget xxxhttps://github.com/alchitry/Alchitry-Labs-V2/releases/latest/download/alchitry-alchitry-labs_2.0.24_amd64.deb
yay -S debtap
sudo debtap -u
debtap alchitry-alchitry-labs_2.0.24_amd64.deb
Copy the device rules into the system and activate:
sudo cp /home/work/tmp/alchitry-alchitry-labs_2.0.24_amd64-working-directory/etc/udev/rules.d/99-alchitry.rules /etc/udev/rules.d/
sudo udevadm control --reload
sudo udevadm trigger
Now the funny part, installing Xilinx Vitis in ChachyOS (Arch Linux). I will just copy/paste the whole set of instructions. I used ChatGPT and I followed some instructions, to avois graphics issues, although I suspect it was overkill. Probably it will just work without too much fuss. You have to register and download the whole offline “FPGAs_AdaptiveSoCs_Unified_2024.2_1113_1001.tar” package, although I am not sure the web installer will work the same.
Here is what I did.
Xilinx Vitis 2024.2
From Xilinx Vivado - ArchWiki
Install XWayland:
sudo pacman -S cachyos-extra-v4/xorg-xwayland
Confirm XWayland is installed;
pacman -Q xorg-xwayland
Verify that your current session is Wayland:
echo $XDG_SESSION_TYPE
Install GTK2 and GTK3:
sudo pacman -S cachyos-extra-v4/gtk2 cachyos-extra-v4/gtk3
Install QT5 base libraries:
sudo pacman -S cachyos-extra-v4/qt5-base cachyos-extra-v4/qt5-svg
Install 32-bit Compatibility Libraries glibc and gcc-libs:
sudo pacman -S cachyos-v4/lib32-glibc cachyos-v4/lib32-gcc-libs
Install libstdc++5 (for 32-bit and 64-bit):
yay -S libstdc++5 lib32-libstdc++5
Install ncurses5 (for 32-bit and 64-bit):
From archlinux - Manjaro install ncurses5-compat-libs - Stack Overflow
yay -S ncurses5-compat-libs
sudo pacman -S cachyos-core-v4/ncurses
sudo pacman -S lib32-ncurses
Install libxcrypt (for 32-bit and 64-bit):
yay -S libxcrypt-compat lib32-libxcrypt
Install OpenJDK:
sudo pacman -S jre-openjdk
Verify the installation:
java -version
Install core fonts:
sudo pacman -S ttf-dejavu ttf-liberation
Install Microsoft fonts (optional):
yay -S ttf-ms-fonts
Extract the tar package (skip if already done):
tar -xvf /home/work/src/electro/Xilinx_Vivado/FPGAs_AdaptiveSoCs_Unified_2024.2_1113_1001.tar
Configure Environment for XWayland:
echo '
#!/bin/bash
#Set environment variables for XWayland compatibility
export GDK_BACKEND=x11 # GTK apps use X11 under XWayland
export QT_QPA_PLATFORM=xcb # QT apps use X11 under XWayland
export LIBGL_ALWAYS_SOFTWARE=1 # Force software rendering for compatibility
export SWT_GTK3=0 # Use GTK2 instead of GTK3
#Launch the Vivado installer
/home/work/src/electro/Xilinx_Vivado/FPGAs_AdaptiveSoCs_Unified_2024.2_1113_1001/xsetup
' > /home/work/src/electro/Xilinx_Vivado/launch_vitis_installer.sh
chmod +x /home/work/src/electro/Xilinx_Vivado/launch_vitis_installer.sh
Run the graphical installer using the script:
sudo mkdir -p /tools/Xilinx
sudo chown -R daddyzaur:daddyzaur /tools/Xilinx
/home/work/src/electro/Xilinx_Vivado/launch_vitis_installer.sh
After installation, verify the Vivado directory:
ls /tools/Xilinx/Vitis/2024.2
To ensure Vitis runs in graphical mode under XWayland without affecting other applications:
echo '
#!/bin/bash
#Set environment variables for XWayland compatibility
export GDK_BACKEND=x11 # GTK apps use X11 under XWayland
export QT_QPA_PLATFORM=xcb # QT apps use X11 under XWayland
export LIBGL_ALWAYS_SOFTWARE=1 # Force software rendering
export SWT_GTK3=0 # Use GTK2 instead of GTK3
#Launch Vivado
/tools/Xilinx/Vitis/2024.2/bin/vitis "$@"
' > /home/work/src/electro/Xilinx_Vivado/launch_vitis_xwayland.sh
chmod +x /home/work/src/electro/Xilinx_Vivado/launch_vitis_xwayland.sh
(Optional) Add to PATH:
sudo ln -s /home/work/src/electro/Xilinx_Vivado/launch_vitis_xwayland.sh /usr/local/bin/vitis-xwayland
Verify session type outputs wayland:
echo $XDG_SESSION_TYPE
To launch Vitis in graphical mode under XWayland:
/home/work/src/electro/Xilinx_Vivado/launch_vitis_xwayland.sh
Or, if you added it to your PATH:
vitis-xwayland
If needed, capture logs for debugging:
/home/work/src/electro/Xilinx_Vivado/launch_vitis_xwayland.sh 2>&1 | tee vitis_log.txt