diff --git a/dockerfile-kasm-core-fedora b/dockerfile-kasm-core-fedora index 871f517..9e1e4b5 100644 --- a/dockerfile-kasm-core-fedora +++ b/dockerfile-kasm-core-fedora @@ -134,6 +134,10 @@ RUN bash $STARTUPDIR/set_user_permission.sh $STARTUPDIR $HOME && \ COPY ./src/ubuntu/install/extra $INST_SCRIPTS/extra/ RUN bash $INST_SCRIPTS/extra/$EXTRA_SH && rm -rf $INST_SCRIPTS/extra/ +### VirtualGL +COPY ./src/ubuntu/install/virtualgl $INST_SCRIPTS/virtualgl/ +RUN bash $INST_SCRIPTS/virtualgl/install_virtualgl.sh && rm -rf $INST_SCRIPTS/virtualgl/ + ### Custom Folder Emblems COPY ./src/ubuntu/install/emblems $INST_SCRIPTS/emblems/ RUN bash $INST_SCRIPTS/emblems/install_emblems.sh && rm -rf $INST_SCRIPTS/emblems/ @@ -144,6 +148,8 @@ ADD /src/common/resources/images/egress_info.svg /usr/share/extra/icons/egress_i ADD /src/common/resources/images/egress_error.svg /usr/share/extra/icons/egress_error.svg ADD /src/common/resources/images/egress_offline.svg /usr/share/extra/icons/egress_offline.svg +RUN rm -f "$HOME/.local/share/wget/.wget-hsts" + ### Create user and home directory for base images that don't already define it RUN (groupadd -g 1000 kasm-user \ && useradd -M -u 1000 -g 1000 kasm-user \ diff --git a/dockerfile-kasm-core-oracle b/dockerfile-kasm-core-oracle index 7773dcf..9bc7d97 100644 --- a/dockerfile-kasm-core-oracle +++ b/dockerfile-kasm-core-oracle @@ -139,6 +139,10 @@ COPY ./src/common/startup_scripts $STARTUPDIR RUN bash $STARTUPDIR/set_user_permission.sh $STARTUPDIR $HOME && \ echo 'source $STARTUPDIR/generate_container_user' >> $HOME/.bashrc +### VirtualGL +COPY ./src/ubuntu/install/virtualgl $INST_SCRIPTS/virtualgl/ +RUN bash $INST_SCRIPTS/virtualgl/install_virtualgl.sh && rm -rf $INST_SCRIPTS/virtualgl/ + ### extra configurations needed per distro variant COPY ./src/ubuntu/install/extra $INST_SCRIPTS/extra/ RUN bash $INST_SCRIPTS/extra/$EXTRA_SH && rm -rf $INST_SCRIPTS/extra/ diff --git a/dockerfile-kasm-core-suse b/dockerfile-kasm-core-suse index cd2f05b..aa587e2 100644 --- a/dockerfile-kasm-core-suse +++ b/dockerfile-kasm-core-suse @@ -115,6 +115,10 @@ COPY ./src/common/startup_scripts $STARTUPDIR RUN bash $STARTUPDIR/set_user_permission.sh $STARTUPDIR $HOME && \ echo 'source $STARTUPDIR/generate_container_user' >> $HOME/.bashrc +### VirtualGL +COPY ./src/ubuntu/install/virtualgl $INST_SCRIPTS/virtualgl/ +RUN bash $INST_SCRIPTS/virtualgl/install_virtualgl.sh && rm -rf $INST_SCRIPTS/virtualgl/ + ### extra configurations needed per distro variant COPY ./src/ubuntu/install/extra $INST_SCRIPTS/extra/ RUN bash $INST_SCRIPTS/extra/$EXTRA_SH && rm -rf $INST_SCRIPTS/extra/ diff --git a/src/ubuntu/install/virtualgl/install_virtualgl.sh b/src/ubuntu/install/virtualgl/install_virtualgl.sh index 6a6c0f4..61d76f9 100644 --- a/src/ubuntu/install/virtualgl/install_virtualgl.sh +++ b/src/ubuntu/install/virtualgl/install_virtualgl.sh @@ -1,16 +1,40 @@ -BUILD_ARCH=$(uname -p) +download_rpm() { + if [[ "${BUILD_ARCH}" =~ ^aarch64$ ]] ; then + url=https://github.com/VirtualGL/virtualgl/releases/download/3.1.3/VirtualGL-3.1.3.aarch64.rpm + else + url=https://github.com/VirtualGL/virtualgl/releases/download/3.1.3/VirtualGL-3.1.3.x86_64.rpm + fi -if [ "$DISTRO" = "ubuntu" ]; then - #install virtualgl - #wget https://sourceforge.net/projects/virtualgl/files/2.6.95%20%283.0rc1%29/virtualgl_2.6.95_amd64.deb -P /tmp + wget -O "$virtualgl_rpm" "$url" +} +cleanup_rpm() { + rm "$virtualgl_rpm" +} + +skip_parrotos_due_to_i386_dependencies_lacking() { + if [[ "$DISTRO" == "parrotos6" ]]; then + exit + fi +} + +set -e + +virtualgl_deb=/tmp/virtualgl.deb +virtualgl_rpm=/tmp/virtualgl.rpm + +BUILD_ARCH=$(arch) + +skip_parrotos_due_to_i386_dependencies_lacking + +if command -v apt-get &>/dev/null; then if [[ "${BUILD_ARCH}" =~ ^aarch64$ ]] ; then apt-get update && apt-get install -y --no-install-recommends \ libxau6 libxdmcp6 libxcb1 libxext6 libx11-6 apt-get update && apt-get install -y --no-install-recommends \ libglvnd0 libgl1 libglx0 libegl1 libgles2 - dpkg -i $INST_SCRIPTS/virtualgl/virtualgl_*arm64.deb + wget -O "$virtualgl_deb" https://github.com/VirtualGL/virtualgl/releases/download/3.1.3/virtualgl_3.1.3_arm64.deb else dpkg --add-architecture i386 apt-get update && apt-get install -y --no-install-recommends \ @@ -26,13 +50,25 @@ if [ "$DISTRO" = "ubuntu" ]; then libegl1 libegl1:i386 \ libgles2 libgles2:i386 - if ! grep -q "24.04" /etc/os-release; then + if [[ "$DISTRO" = "ubuntu" ]] && ! grep -q "24.04" /etc/os-release; then add-apt-repository ppa:kisak/turtle apt full-upgrade -y fi - dpkg -i $INST_SCRIPTS/virtualgl/virtualgl_*amd64.deb + wget -O "$virtualgl_deb" https://github.com/VirtualGL/virtualgl/releases/download/3.1.3/virtualgl_3.1.3_amd64.deb fi - apt install -f -y - rm -rf $INST_SCRIPTS/virtualgl/ + apt-get install -y "$virtualgl_deb" + rm "$virtualgl_deb" fi + +if [[ "$DISTRO" =~ ^opensuse ]]; then + download_rpm + zypper --no-gpg-checks install -y "$virtualgl_rpm" + cleanup_rpm +elif command -v dnf &>/dev/null; then + download_rpm + dnf install -y "$virtualgl_rpm" + cleanup_rpm +fi + +rm -rf $INST_SCRIPTS/virtualgl/ diff --git a/src/ubuntu/install/virtualgl/virtualgl_3.1.2_amd64.deb b/src/ubuntu/install/virtualgl/virtualgl_3.1.2_amd64.deb deleted file mode 100644 index 572c4f5..0000000 Binary files a/src/ubuntu/install/virtualgl/virtualgl_3.1.2_amd64.deb and /dev/null differ diff --git a/src/ubuntu/install/virtualgl/virtualgl_3.1.2_arm64.deb b/src/ubuntu/install/virtualgl/virtualgl_3.1.2_arm64.deb deleted file mode 100644 index 815276a..0000000 Binary files a/src/ubuntu/install/virtualgl/virtualgl_3.1.2_arm64.deb and /dev/null differ