Last active
November 8, 2024 06:39
-
-
Save Nexarian/82cb4d48f07e9b9005123c21c8dc08e5 to your computer and use it in GitHub Desktop.
Setup for Intel acceleration and XRDP
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env bash | |
set -e | |
sudo -v | |
sudo apt-get update | |
sudo apt-get dist-upgrade -y | |
sudo apt-get autoremove -y | |
sudo usermod $USER -a -G video | |
sudo usermod $USER -a -G tty | |
sudo usermod $USER -a -G render | |
# XRDP Build Pre-reqs Part 1 | |
sudo apt-get install -y git autoconf libtool pkg-config gcc g++ make libssl-dev libpam0g-dev \ | |
libjpeg-dev libx11-dev libxfixes-dev libxrandr-dev flex bison libxml2-dev intltool xsltproc \ | |
xutils-dev python3-libxml2 g++ xutils libfuse-dev libmp3lame-dev nasm libpixman-1-dev \ | |
xserver-xorg-dev libjson-c-dev libsndfile1-dev libspeex-dev libspeexdsp-dev libpulse-dev \ | |
libpulse0 autopoint \*turbojpeg\* libfdk-aac-dev libopus-dev libgbm-dev libx264\* \ | |
libx264-dev | |
#XRDP Build Pre-reqs Part 2 (For some reason apt needs this to be separate) | |
sudo apt-get install -y libepoxy-dev | |
BUILD_DIR=$(mktemp -d) | |
echo "Building Intel YAMI and Media Driver" | |
sudo rm -rf /opt/yami || true | |
sudo mkdir /opt/yami | |
sudo chown $USER:$USER /opt/yami | |
git clone https://github.com/Nexarian/builders.git --branch update-to-media-driver "$BUILD_DIR/builders" | |
cd "$BUILD_DIR/builders/yami/omatic" | |
./buildyami.sh --prefix=/opt/yami --disable-x11 | |
echo "Building xrdp..." | |
git clone https://github.com/Nexarian/xrdp.git --branch mainline_merge "$BUILD_DIR/xrdp" | |
cd "$BUILD_DIR/xrdp" | |
./bootstrap | |
XRDP_YAMI_CFLAGS="-I/opt/yami/include" XRDP_YAMI_LIBS="-I/opt/yami/lib" ./configure \ | |
--enable-fuse --enable-rfxcodec --enable-pixman --enable-mp3lame \ | |
--enable-sound --enable-opus --enable-fdkaac --enable-x264 --enable-yami | |
make -j $(nproc) clean all | |
sudo make install | |
echo "Building xorgxrdp..." | |
git clone https://github.com/Nexarian/xorgxrdp.git --branch mainline_merge "$BUILD_DIR/xorgxrdp" | |
cd "$BUILD_DIR/xorgxrdp" | |
./bootstrap | |
./configure --with-simd --enable-glamor | |
make -j $(nproc) clean all | |
sudo make install | |
#Allow permission to connect | |
sudo tee /etc/X11/Xwrapper.config > /dev/null << EOL | |
# Xwrapper.config (Debian X Window System server wrapper configuration file) | |
# | |
# This file was generated by the post-installation script of the | |
# xserver-xorg-legacy package using values from the debconf database. | |
# | |
# See the Xwrapper.config(5) manual page for more information. | |
# | |
# This file is automatically updated on upgrades of the xserver-xorg-legacy | |
# package *only* if it has not been modified since the last upgrade of that | |
# package. | |
# | |
# If you have edited this file but would like it to be automatically updated | |
# again, run the following command as root: | |
# dpkg-reconfigure xserver-xorg-legacy | |
needs_root_rights=no | |
allowed_users=anybody | |
EOL | |
#Disable nvidia | |
sudo sed -i -E 's#param=xrdp/xorg_nvidia.conf#param=xrdp/xorg.conf#' /etc/xrdp/sesman.ini | |
echo "Starting the server..." | |
sudo systemctl enable xrdp | |
sudo service xrdp start |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Got error message as follows:
[ 76%] Building CXX object media_driver/CMakeFiles/iHD_drv_video_COMMON.dir//media_softlet/linux/Xe_M_plus/ddi/media_libva_caps_mtl.cpp.o
/tmp/tmp.rXjaKtqClx/builders/yami/omatic/media-driver-intel-media-22.6.2/media_softlet/linux/Xe_M_plus/ddi/media_sysinfo_mtl.cpp:201:32: error: ‘IGFX_ARROWLAKE’ was not declared in this scope; did you mean ‘IGFX_CANNONLAKE’?
201 | .productFamily = (uint32_t)IGFX_ARROWLAKE,
| ^~~~~~~~~~~~~~
| IGFX_CANNONLAKE
make[2]: *** [media_driver/CMakeFiles/iHD_drv_video_COMMON.dir/build.make:4724: media_driver/CMakeFiles/iHD_drv_video_COMMON.dir//media_softlet/linux/Xe_M_plus/ddi/media_sysinfo_mtl.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
/tmp/tmp.rXjaKtqClx/builders/yami/omatic/media-driver-intel-media-22.6.2/media_softlet/linux/Xe_M_plus/ddi/media_libva_caps_mtl.cpp:75:47: error: ‘IGFX_ARROWLAKE’ was not declared in this scope; did you mean ‘IGFX_CANNONLAKE’?
75 | RegisterCaps((uint32_t)IGFX_ARROWLAKE);
| ^~~~~~~~~~~~~~
| IGFX_CANNONLAKE
make[2]: *** [media_driver/CMakeFiles/iHD_drv_video_COMMON.dir/build.make:4752: media_driver/CMakeFiles/iHD_drv_video_COMMON.dir/__/media_softlet/linux/Xe_M_plus/ddi/media_libva_caps_mtl.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:235: media_driver/CMakeFiles/iHD_drv_video_COMMON.dir/all] Error 2
make: *** [Makefile:156: all] Error 2
error make intel-media-22.6.2
any fix?
UPDATE: mattisz's fork works!