mirror of
https://github.com/kasmtech/workspaces-images.git
synced 2026-01-23 02:25:16 +00:00
Merge branch 'feature/VNC-204_vulkan_support' into 'develop'
VNC-204 vulkan support Closes VNC-204 See merge request kasm-technologies/internal/workspaces-images!306
This commit is contained in:
commit
9e628df557
5 changed files with 78 additions and 10 deletions
|
|
@ -8,8 +8,8 @@ stages:
|
|||
- template
|
||||
- run
|
||||
variables:
|
||||
BASE_TAG: "develop"
|
||||
USE_PRIVATE_IMAGES: 0
|
||||
BASE_TAG: "feature_VNC-204_vulkan_support"
|
||||
USE_PRIVATE_IMAGES: 1
|
||||
KASM_RELEASE: "1.17.0"
|
||||
TEST_INSTALLER: "https://kasm-static-content.s3.amazonaws.com/kasm_release_1.17.0.bbc15c.tar.gz"
|
||||
MIRROR_ORG_NAME: "kasmtech"
|
||||
|
|
|
|||
|
|
@ -24,14 +24,31 @@ chmod +x $HOME/Desktop/brave-browser.desktop
|
|||
mv /usr/bin/brave-browser /usr/bin/brave-browser-orig
|
||||
cat >/usr/bin/brave-browser <<EOL
|
||||
#!/usr/bin/env bash
|
||||
|
||||
supports_vulkan() {
|
||||
# Needs the CLI tool
|
||||
command -v vulkaninfo >/dev/null 2>&1 || return 1
|
||||
|
||||
# Look for any non-CPU device
|
||||
DISPLAY= vulkaninfo --summary 2>/dev/null |
|
||||
grep -qE 'PHYSICAL_DEVICE_TYPE_(INTEGRATED_GPU|DISCRETE_GPU|VIRTUAL_GPU)'
|
||||
}
|
||||
|
||||
sed -i 's/"exited_cleanly":false/"exited_cleanly":true/' ~/.config/BraveSoftware/Brave-Browser/Default/Preferences
|
||||
sed -i 's/"exit_type":"Crashed"/"exit_type":"None"/' ~/.config/BraveSoftware/Brave-Browser/Default/Preferences
|
||||
|
||||
VULKAN_FLAGS=
|
||||
if supports_vulkan; then
|
||||
VULKAN_FLAGS="--use-angle=vulkan"
|
||||
echo 'vulkan supported'
|
||||
fi
|
||||
|
||||
if [ -f /opt/VirtualGL/bin/vglrun ] && [ ! -z "\${KASM_EGL_CARD}" ] && [ ! -z "\${KASM_RENDERD}" ] && [ -O "\${KASM_RENDERD}" ] && [ -O "\${KASM_EGL_CARD}" ] ; then
|
||||
echo "Starting Brave with GPU Acceleration on EGL device \${KASM_EGL_CARD}"
|
||||
vglrun -d "\${KASM_EGL_CARD}" /opt/brave.com/brave/brave-browser ${CHROME_ARGS} "\$@"
|
||||
vglrun -d "\${KASM_EGL_CARD}" /opt/brave.com/brave/brave-browser ${CHROME_ARGS} "\${VULKAN_FLAGS}" "\$@"
|
||||
else
|
||||
echo "Starting Brave"
|
||||
/opt/brave.com/brave/brave-browser ${CHROME_ARGS} "\$@"
|
||||
/opt/brave.com/brave/brave-browser ${CHROME_ARGS} "\${VULKAN_FLAGS}" "\$@"
|
||||
fi
|
||||
EOL
|
||||
chmod +x /usr/bin/brave-browser
|
||||
|
|
|
|||
|
|
@ -63,17 +63,34 @@ chmod +x $HOME/Desktop/google-chrome.desktop
|
|||
mv /usr/bin/google-chrome /usr/bin/google-chrome-orig
|
||||
cat >/usr/bin/google-chrome <<EOL
|
||||
#!/usr/bin/env bash
|
||||
|
||||
supports_vulkan() {
|
||||
# Needs the CLI tool
|
||||
command -v vulkaninfo >/dev/null 2>&1 || return 1
|
||||
|
||||
# Look for any non-CPU device
|
||||
DISPLAY= vulkaninfo --summary 2>/dev/null |
|
||||
grep -qE 'PHYSICAL_DEVICE_TYPE_(INTEGRATED_GPU|DISCRETE_GPU|VIRTUAL_GPU)'
|
||||
}
|
||||
|
||||
if ! pgrep chrome > /dev/null;then
|
||||
rm -f \$HOME/.config/google-chrome/Singleton*
|
||||
fi
|
||||
sed -i 's/"exited_cleanly":false/"exited_cleanly":true/' ~/.config/google-chrome/Default/Preferences
|
||||
sed -i 's/"exit_type":"Crashed"/"exit_type":"None"/' ~/.config/google-chrome/Default/Preferences
|
||||
|
||||
VULKAN_FLAGS=
|
||||
if supports_vulkan; then
|
||||
VULKAN_FLAGS="--use-angle=vulkan"
|
||||
echo 'vulkan supported'
|
||||
fi
|
||||
|
||||
if [ -f /opt/VirtualGL/bin/vglrun ] && [ ! -z "\${KASM_EGL_CARD}" ] && [ ! -z "\${KASM_RENDERD}" ] && [ -O "\${KASM_RENDERD}" ] && [ -O "\${KASM_EGL_CARD}" ] ; then
|
||||
echo "Starting Chrome with GPU Acceleration on EGL device \${KASM_EGL_CARD}"
|
||||
vglrun -d "\${KASM_EGL_CARD}" /opt/google/chrome/google-chrome ${CHROME_ARGS} "\$@"
|
||||
vglrun -d "\${KASM_EGL_CARD}" /opt/google/chrome/google-chrome ${CHROME_ARGS} "\${VULKAN_FLAGS}" "\$@"
|
||||
else
|
||||
echo "Starting Chrome"
|
||||
/opt/google/chrome/google-chrome ${CHROME_ARGS} "\$@"
|
||||
/opt/google/chrome/google-chrome ${CHROME_ARGS} "\${VULKAN_FLAGS}" "\$@"
|
||||
fi
|
||||
EOL
|
||||
chmod +x /usr/bin/google-chrome
|
||||
|
|
|
|||
|
|
@ -74,17 +74,34 @@ fi
|
|||
mv /usr/bin/${REAL_BIN} /usr/bin/${REAL_BIN}-orig
|
||||
cat >/usr/bin/${REAL_BIN} <<EOL
|
||||
#!/usr/bin/env bash
|
||||
|
||||
supports_vulkan() {
|
||||
# Needs the CLI tool
|
||||
command -v vulkaninfo >/dev/null 2>&1 || return 1
|
||||
|
||||
# Look for any non-CPU device
|
||||
DISPLAY= vulkaninfo --summary 2>/dev/null |
|
||||
grep -qE 'PHYSICAL_DEVICE_TYPE_(INTEGRATED_GPU|DISCRETE_GPU|VIRTUAL_GPU)'
|
||||
}
|
||||
|
||||
if ! pgrep chromium > /dev/null;then
|
||||
rm -f \$HOME/.config/chromium/Singleton*
|
||||
fi
|
||||
sed -i 's/"exited_cleanly":false/"exited_cleanly":true/' ~/.config/chromium/Default/Preferences
|
||||
sed -i 's/"exit_type":"Crashed"/"exit_type":"None"/' ~/.config/chromium/Default/Preferences
|
||||
|
||||
VULKAN_FLAGS=
|
||||
if supports_vulkan; then
|
||||
VULKAN_FLAGS="--use-angle=vulkan"
|
||||
echo 'vulkan supported'
|
||||
fi
|
||||
|
||||
if [ -f /opt/VirtualGL/bin/vglrun ] && [ ! -z "\${KASM_EGL_CARD}" ] && [ ! -z "\${KASM_RENDERD}" ] && [ -O "\${KASM_RENDERD}" ] && [ -O "\${KASM_EGL_CARD}" ] ; then
|
||||
echo "Starting Chrome with GPU Acceleration on EGL device \${KASM_EGL_CARD}"
|
||||
vglrun -d "\${KASM_EGL_CARD}" /usr/bin/${REAL_BIN}-orig ${CHROME_ARGS} "\$@"
|
||||
vglrun -d "\${KASM_EGL_CARD}" /usr/bin/${REAL_BIN}-orig ${CHROME_ARGS} "\${VULKAN_FLAGS}" "\$@"
|
||||
else
|
||||
echo "Starting Chrome"
|
||||
/usr/bin/${REAL_BIN}-orig ${CHROME_ARGS} "\$@"
|
||||
/usr/bin/${REAL_BIN}-orig ${CHROME_ARGS} "\${VULKAN_FLAGS}" "\$@"
|
||||
fi
|
||||
EOL
|
||||
chmod +x /usr/bin/${REAL_BIN}
|
||||
|
|
|
|||
|
|
@ -18,14 +18,31 @@ chmod +x $HOME/Desktop/microsoft-edge.desktop
|
|||
mv /usr/bin/microsoft-edge-stable /usr/bin/microsoft-edge-stable-orig
|
||||
cat >/usr/bin/microsoft-edge-stable <<EOL
|
||||
#!/usr/bin/env bash
|
||||
|
||||
supports_vulkan() {
|
||||
# Needs the CLI tool
|
||||
command -v vulkaninfo >/dev/null 2>&1 || return 1
|
||||
|
||||
# Look for any non-CPU device
|
||||
DISPLAY= vulkaninfo --summary 2>/dev/null |
|
||||
grep -qE 'PHYSICAL_DEVICE_TYPE_(INTEGRATED_GPU|DISCRETE_GPU|VIRTUAL_GPU)'
|
||||
}
|
||||
|
||||
sed -i 's/"exited_cleanly":false/"exited_cleanly":true/' ~/.config/microsoft-edge/Default/Preferences
|
||||
sed -i 's/"exit_type":"Crashed"/"exit_type":"None"/' ~/.config/microsoft-edge/Default/Preferences
|
||||
|
||||
VULKAN_FLAGS=
|
||||
if supports_vulkan; then
|
||||
VULKAN_FLAGS="--use-angle=vulkan"
|
||||
echo 'vulkan supported'
|
||||
fi
|
||||
|
||||
if [ -f /opt/VirtualGL/bin/vglrun ] && [ ! -z "\${KASM_EGL_CARD}" ] && [ ! -z "\${KASM_RENDERD}" ] && [ -O "\${KASM_RENDERD}" ] && [ -O "\${KASM_EGL_CARD}" ] ; then
|
||||
echo "Starting Edge with GPU Acceleration on EGL device \${KASM_EGL_CARD}"
|
||||
vglrun -d "\${KASM_EGL_CARD}" /opt/microsoft/msedge/microsoft-edge ${CHROME_ARGS} "\$@"
|
||||
vglrun -d "\${KASM_EGL_CARD}" /opt/microsoft/msedge/microsoft-edge ${CHROME_ARGS} "\${VULKAN_FLAGS}" "\$@"
|
||||
else
|
||||
echo "Starting Edge"
|
||||
/opt/microsoft/msedge/microsoft-edge ${CHROME_ARGS} "\$@"
|
||||
/opt/microsoft/msedge/microsoft-edge ${CHROME_ARGS} "\${VULKAN_FLAGS}" "\$@"
|
||||
fi
|
||||
EOL
|
||||
chmod +x /usr/bin/microsoft-edge-stable
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue