From f6d5481b622cc73a77ce01ceb9f32015a41d95a4 Mon Sep 17 00:00:00 2001 From: Dmitry Maksyoma Date: Wed, 4 Aug 2021 21:03:24 +1200 Subject: [PATCH 01/25] Ubuntu: Build libjpeg-turbo from source --- dockerfile-kasm-core | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/dockerfile-kasm-core b/dockerfile-kasm-core index 166ccae..bcb4597 100644 --- a/dockerfile-kasm-core +++ b/dockerfile-kasm-core @@ -156,6 +156,10 @@ RUN touch $STARTUPDIR/wm.log \ && chown 1000:1000 $STARTUPDIR/kasmrx/Downloads \ && chown -R root:root /usr/local/bin +RUN apt-get update && apt-get install -y cmake nasm gcc +RUN git clone https://github.com/libjpeg-turbo/libjpeg-turbo.git +RUN export MAKEFLAGS=-j`nproc`; cd libjpeg-turbo && cmake -G"Unix Makefiles" && make deb + USER 1000 ENTRYPOINT ["/dockerstartup/kasm_default_profile.sh", "/dockerstartup/vnc_startup.sh", "/dockerstartup/kasm_startup.sh"] From 70f74c0878a7fa5ed899ee286fb28a1963401029 Mon Sep 17 00:00:00 2001 From: Dmitry Maksyoma Date: Thu, 2 Sep 2021 00:17:51 +1200 Subject: [PATCH 02/25] Revert "Ubuntu: Build libjpeg-turbo from source" This reverts commit f6d5481b622cc73a77ce01ceb9f32015a41d95a4. --- dockerfile-kasm-core | 4 ---- 1 file changed, 4 deletions(-) diff --git a/dockerfile-kasm-core b/dockerfile-kasm-core index bcb4597..166ccae 100644 --- a/dockerfile-kasm-core +++ b/dockerfile-kasm-core @@ -156,10 +156,6 @@ RUN touch $STARTUPDIR/wm.log \ && chown 1000:1000 $STARTUPDIR/kasmrx/Downloads \ && chown -R root:root /usr/local/bin -RUN apt-get update && apt-get install -y cmake nasm gcc -RUN git clone https://github.com/libjpeg-turbo/libjpeg-turbo.git -RUN export MAKEFLAGS=-j`nproc`; cd libjpeg-turbo && cmake -G"Unix Makefiles" && make deb - USER 1000 ENTRYPOINT ["/dockerstartup/kasm_default_profile.sh", "/dockerstartup/vnc_startup.sh", "/dockerstartup/kasm_startup.sh"] From b1dc0c81d8f49644ba0121f24c5ee7e56cb71490 Mon Sep 17 00:00:00 2001 From: Dmitry Maksyoma Date: Thu, 2 Sep 2021 23:00:46 +1200 Subject: [PATCH 03/25] Use libjpeg-turbo in KasmVNC --- dockerfile-kasm-core | 2 +- src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh | 14 +++++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/dockerfile-kasm-core b/dockerfile-kasm-core index ef4aac4..89ff52e 100644 --- a/dockerfile-kasm-core +++ b/dockerfile-kasm-core @@ -45,7 +45,7 @@ ENV DISPLAY=:1 \ VNC_RESOLUTION=1280x1024 \ VNC_PW=vncpassword \ VNC_VIEW_ONLY_PW=vncviewonlypassword \ - LD_LIBRARY_PATH=/usr/local/lib/ \ + LD_LIBRARY_PATH=/opt/libjpeg-turbo/lib64/:/usr/local/lib/ \ OMP_WAIT_POLICY=PASSIVE \ SHELL=/bin/bash \ START_XFCE4=$START_XFCE4 \ diff --git a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh index c25699e..24f9d34 100644 --- a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh +++ b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh @@ -1,6 +1,14 @@ #!/usr/bin/env bash set -e +install_libjpeg_turbo() { + local libjpeg_deb=libjpeg-turbo.deb + + wget 'https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/dbc376940f971d62451c219f3a354bf6639e7595/output/bionic/libjpeg-turbo_2.1.2_amd64.deb' -O "$libjpeg_deb" + apt-get install -y "./$libjpeg_deb" + rm "$libjpeg_deb" +} + echo "Install KasmVNC server" cd /tmp @@ -10,7 +18,7 @@ then elif [ "${DISTRO}" == "centos" ] ; then BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/6f2805e18652781213be6a385f7a05f3d22b218b/kasmvncserver_centos_core_0.9.3_master_6f2805_x86_64.rpm" else - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/6f2805e18652781213be6a385f7a05f3d22b218b/kasmvncserver_bionic_0.9.3_master_6f2805_amd64.deb" + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/dbc376940f971d62451c219f3a354bf6639e7595/kasmvncserver_bionic_0.9.3_feature_KASM-1838-libjpeg-turbo-from-source_dbc376__libjpeg-turbo-latest_amd64.deb" fi @@ -20,6 +28,10 @@ if [ "${DISTRO}" == "centos" ] ; then yum localinstall -y kasmvncserver.rpm rm kasmvncserver.rpm else + if [ "$DISTRO" = "ubuntu" ]; then + install_libjpeg_turbo + fi + wget $BUILD_URL -O kasmvncserver.deb apt-get update From 87307c2387ce6b0e877524a9c51a3ad9ae889ced Mon Sep 17 00:00:00 2001 From: Dmitry Maksyoma Date: Thu, 2 Sep 2021 23:20:59 +1200 Subject: [PATCH 04/25] Use libjpeg-turbo only in Ubuntu --- src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh index 24f9d34..a313143 100644 --- a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh +++ b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh @@ -17,8 +17,10 @@ then BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/6f2805e18652781213be6a385f7a05f3d22b218b/kasmvncserver_kali-rolling_0.9.3_master_6f2805_amd64.deb" elif [ "${DISTRO}" == "centos" ] ; then BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/6f2805e18652781213be6a385f7a05f3d22b218b/kasmvncserver_centos_core_0.9.3_master_6f2805_x86_64.rpm" -else +elif [ "$DISTRO" == "ubuntu" ]; then BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/dbc376940f971d62451c219f3a354bf6639e7595/kasmvncserver_bionic_0.9.3_feature_KASM-1838-libjpeg-turbo-from-source_dbc376__libjpeg-turbo-latest_amd64.deb" +else + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/6f2805e18652781213be6a385f7a05f3d22b218b/kasmvncserver_bionic_0.9.3_master_6f2805_amd64.deb" fi From dfc949f60d135395dd34ec93ababb03e01c6b386 Mon Sep 17 00:00:00 2001 From: Matthew McClaskey Date: Thu, 16 Sep 2021 13:26:55 +0000 Subject: [PATCH 05/25] CI fix --- src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh index e9ae325..405beaf 100644 --- a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh +++ b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh @@ -25,7 +25,7 @@ fi if [ "${DISTRO}" == "centos" ] ; then - wget $BUILD_URL -O kasmvncserver.rpm + wget "${BUILD_URL}" -O kasmvncserver.rpm yum localinstall -y kasmvncserver.rpm rm kasmvncserver.rpm From 3aa9946ca3cd16b337b0beadca04a7bfbf185521 Mon Sep 17 00:00:00 2001 From: Matthew McClaskey Date: Thu, 16 Sep 2021 13:28:38 +0000 Subject: [PATCH 06/25] CI Tweak --- src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh index 405beaf..480e03f 100644 --- a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh +++ b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh @@ -34,7 +34,7 @@ else install_libjpeg_turbo fi - wget $BUILD_URL -O kasmvncserver.deb + wget "${BUILD_URL}" -O kasmvncserver.deb apt-get update apt-get install -y gettext ssl-cert From bcd851dce218367ffd789ab08c8d7db203103e63 Mon Sep 17 00:00:00 2001 From: Matthew McClaskey Date: Thu, 16 Sep 2021 14:19:05 +0000 Subject: [PATCH 07/25] corrected kasmvnc links --- src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh index 480e03f..eb456d9 100644 --- a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh +++ b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh @@ -16,9 +16,9 @@ if [ "${DISTRO}" == "kali" ] ; then BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/d9ceb72c2e982772f5827bb9b9325ff8ad73be5a/kasmvncserver_kali-rolling_0.9.3_feature_KASM-1913_webp_tweaks_d9ceb7_amd64.deb" elif [ "${DISTRO}" == "centos" ] ; then - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/d9ceb72c2e982772f5827bb9b9325ff8ad73be5a/kasmvncserver_centos_0.9.3_feature_KASM-1913_webp_tweaks_d9ceb7_x86_64.rpm" + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/d9ceb72c2e982772f5827bb9b9325ff8ad73be5a/output/centos_core/kasmvncserver-0.9.1~beta-1.el7.x86_64.rpm" elif [ "$DISTRO" == "ubuntu" ]; then - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/d9ceb72c2e982772f5827bb9b9325ff8ad73be5a/kasmvncserver_bionic_0.9.3_feature_KASM-1913_webp_tweaks_d9ceb7__libjpeg-turbo-latest_amd64.deb" + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/d9ceb72c2e982772f5827bb9b9325ff8ad73be5a/kasmvncserver_bionic_0.9.3_feature_KASM-1913_webp_tweaks_d9ceb7_libjpeg-turbo-latest_amd64.deb" else BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/d9ceb72c2e982772f5827bb9b9325ff8ad73be5a/kasmvncserver_bionic_0.9.3_feature_KASM-1913_webp_tweaks_d9ceb7_amd64.deb" fi From a31d82fa6e3b9912af8dd097690c1d9114f7c1de Mon Sep 17 00:00:00 2001 From: Ian Tangney Date: Wed, 6 Oct 2021 19:28:32 +0000 Subject: [PATCH 08/25] KASM-1550 Run startup script in the background so we can check for kasmvnc crashing --- src/common/startup_scripts/vnc_startup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/startup_scripts/vnc_startup.sh b/src/common/startup_scripts/vnc_startup.sh index ed83486..e7f12fb 100644 --- a/src/common/startup_scripts/vnc_startup.sh +++ b/src/common/startup_scripts/vnc_startup.sh @@ -209,7 +209,7 @@ if [ -f "$custom_startup_script" ]; then exit 1 fi - "$custom_startup_script" || true + "$custom_startup_script" & fi # Monitor Kasm Services From fd91cbc9c219415f8f26b77b2fcfba72b43a5147 Mon Sep 17 00:00:00 2001 From: Matthew McClaskey Date: Mon, 25 Oct 2021 11:41:47 +0000 Subject: [PATCH 09/25] KASM-1838 Update to latest kasmvnc --- src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh index eb456d9..4547018 100644 --- a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh +++ b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh @@ -4,7 +4,7 @@ set -e install_libjpeg_turbo() { local libjpeg_deb=libjpeg-turbo.deb - wget 'https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/dbc376940f971d62451c219f3a354bf6639e7595/output/bionic/libjpeg-turbo_2.1.2_amd64.deb' -O "$libjpeg_deb" + wget 'https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/a9434a300dbf85e65d0e9c212610a487fd10a308/output/bionic/libjpeg-turbo_2.1.2_amd64.deb' -O "$libjpeg_deb" apt-get install -y "./$libjpeg_deb" rm "$libjpeg_deb" } @@ -14,13 +14,11 @@ cd /tmp if [ "${DISTRO}" == "kali" ] ; then - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/d9ceb72c2e982772f5827bb9b9325ff8ad73be5a/kasmvncserver_kali-rolling_0.9.3_feature_KASM-1913_webp_tweaks_d9ceb7_amd64.deb" + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/a9434a300dbf85e65d0e9c212610a487fd10a308/kasmvncserver_kali-rolling_0.9.3_master_a9434a_amd64.deb" elif [ "${DISTRO}" == "centos" ] ; then - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/d9ceb72c2e982772f5827bb9b9325ff8ad73be5a/output/centos_core/kasmvncserver-0.9.1~beta-1.el7.x86_64.rpm" -elif [ "$DISTRO" == "ubuntu" ]; then - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/d9ceb72c2e982772f5827bb9b9325ff8ad73be5a/kasmvncserver_bionic_0.9.3_feature_KASM-1913_webp_tweaks_d9ceb7_libjpeg-turbo-latest_amd64.deb" + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/a9434a300dbf85e65d0e9c212610a487fd10a308/output/centos_core/kasmvncserver-0.9.1~beta-1.el7.x86_64.rpm" else - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/d9ceb72c2e982772f5827bb9b9325ff8ad73be5a/kasmvncserver_bionic_0.9.3_feature_KASM-1913_webp_tweaks_d9ceb7_amd64.deb" + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/a9434a300dbf85e65d0e9c212610a487fd10a308/kasmvncserver_bionic_0.9.3_master_a9434a_libjpeg-turbo-latest_amd64.deb" fi From e2a8ff013d0b0fb88a09df4219650b3bfc55c8c5 Mon Sep 17 00:00:00 2001 From: Matthew McClaskey Date: Mon, 25 Oct 2021 15:56:14 +0000 Subject: [PATCH 10/25] KASM-2016 multi-arch pipeline --- .gitlab-ci.yml | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 71b8288..48e73e8 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -87,13 +87,22 @@ build_centos: # These jobs should run on the feature/bugfix branches - anything that is not the develop or release branches. It should only push images to the private repos build_ubuntu_bionic_dev: + image: kasmweb/docker-buildx-private:develop stage: build + variables: + BUILD_PLATFORMS: "linux/amd64,linux/arm64" script: - - docker build -t ${ORG_NAME}/core-ubuntu-bionic-private:$SANITIZED_BRANCH --build-arg BASE_IMAGE="ubuntu:18.04" --build-arg BG_IMG=bg_bionic.png -f dockerfile-kasm-core . - - docker push ${ORG_NAME}/core-ubuntu-bionic-private:$SANITIZED_BRANCH + # get qemu ready + - docker run --rm --privileged multiarch/qemu-user-static --reset -p yes + # prep the buildx env + - docker buildx create --use + # build for multiple architectures + - docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-ubuntu-bionic-private:$SANITIZED_BRANCH --build-arg BASE_IMAGE="ubuntu:18.04" --build-arg BG_IMG=bg_bionic.png -f dockerfile-kasm-core . except: - develop - /^release\/.*$/ + tags: + - aws-autoscale build_cuda_bionic_dev: From 22b86fbcfd0aa06a14ccb545bed7e143a9cf7715 Mon Sep 17 00:00:00 2001 From: matt Date: Mon, 25 Oct 2021 19:07:45 +0000 Subject: [PATCH 11/25] KASM-2016 update --- dockerfile-kasm-core | 20 ++++--------------- .../install/kasm_vnc/install_kasm_vnc.sh | 11 ++++++++-- .../install/squid/install/install_squid.sh | 7 ++++++- 3 files changed, 19 insertions(+), 19 deletions(-) diff --git a/dockerfile-kasm-core b/dockerfile-kasm-core index 89ff52e..68f39a0 100644 --- a/dockerfile-kasm-core +++ b/dockerfile-kasm-core @@ -2,22 +2,13 @@ ARG BASE_IMAGE="ubuntu:18.04" FROM $BASE_IMAGE AS install_tools ARG DISTRO=ubuntu -### Install common tools - -COPY ./src/ubuntu/install/tools $INST_SCRIPTS/tools/ -RUN bash $INST_SCRIPTS/tools/install_tools.sh && rm -rf $INST_SCRIPTS/tools/ - -FROM install_tools AS squid_builder - -### Build Squid -RUN wget 'https://kasmweb-build-artifacts.s3.amazonaws.com/kasm-squid-builder/a590f319f328a8a576cb966c2db5ec4a5b3b7b9b/output/kasm-squid-builder_ubuntu.tar.gz' -RUN tar -xzf kasm-squid-builder_ubuntu.tar.gz -C / - -FROM install_tools - MAINTAINER Kasm Tech "info@kasmweb.com" LABEL "com.kasmweb.image"="true" +### Install common tools +COPY ./src/ubuntu/install/tools $INST_SCRIPTS/tools/ +RUN bash $INST_SCRIPTS/tools/install_tools.sh && rm -rf $INST_SCRIPTS/tools/ + ### Environment config ARG START_XFCE4=0 ARG START_PULSEAUDIO=0 @@ -102,9 +93,6 @@ RUN bash $INST_SCRIPTS/audio_input/install_audio_input.sh && rm -rf $INST_SCRIPT COPY ./src/ubuntu/install/cursors $INST_SCRIPTS/cursors/ RUN bash $INST_SCRIPTS/cursors/install_cursors.sh && rm -rf $INST_SCRIPTS/cursors/ -### Copy built Squid -COPY --from=squid_builder /usr/local/squid /usr/local/squid - ### Install Squid COPY ./src/ubuntu/install/squid/install/ $INST_SCRIPTS/squid_install/ RUN bash $INST_SCRIPTS/squid_install/install_squid.sh && rm -rf $INST_SCRIPTS/squid_install/ diff --git a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh index eb391c2..534ef14 100644 --- a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh +++ b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh @@ -11,13 +11,20 @@ install_libjpeg_turbo() { echo "Install KasmVNC server" cd /tmp + +BUILD_ARCH=$(uname -p) + if [ "${DISTRO}" == "kali" ] ; then BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/a9434a300dbf85e65d0e9c212610a487fd10a308/kasmvncserver_kali-rolling_0.9.3_master_a9434a_amd64.deb" elif [ "${DISTRO}" == "centos" ] ; then BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/a9434a300dbf85e65d0e9c212610a487fd10a308/output/centos_core/kasmvncserver-0.9.1~beta-1.el7.x86_64.rpm" else - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/a9434a300dbf85e65d0e9c212610a487fd10a308/kasmvncserver_bionic_0.9.3_master_a9434a_libjpeg-turbo-latest_amd64.deb" + if [[ "${BUILD_ARCH}" =~ ^aarch64$ ]] ; then + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/a9434a300dbf85e65d0e9c212610a487fd10a308/kasmvncserver_bionic_0.9.3_master_a9434a_arm64.deb" + else + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/a9434a300dbf85e65d0e9c212610a487fd10a308/kasmvncserver_bionic_0.9.3_master_a9434a_libjpeg-turbo-latest_amd64.deb" + fi fi @@ -27,7 +34,7 @@ if [ "${DISTRO}" == "centos" ] ; then yum localinstall -y kasmvncserver.rpm rm kasmvncserver.rpm else - if [ "$DISTRO" = "ubuntu" ]; then + if [ "$DISTRO" = "ubuntu" ] && [ ! "$BUILD_ARCH" =~ ^aarch64 ] ; then install_libjpeg_turbo fi diff --git a/src/ubuntu/install/squid/install/install_squid.sh b/src/ubuntu/install/squid/install/install_squid.sh index e8eafbd..08164b7 100644 --- a/src/ubuntu/install/squid/install/install_squid.sh +++ b/src/ubuntu/install/squid/install/install_squid.sh @@ -1,8 +1,13 @@ -# update squid conf with user info +#!/bin/bash set -ex ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g') +# intall squid +SQUID_COMMIT='6392f7dfb1040c67c0a5d5518abf508282523cc0' +wget -qO- "https://kasmweb-build-artifacts.s3.amazonaws.com/kasm-squid-builder/${SQUID_COMMIT}/output/kasm-squid-builder_${DISTRO}_${ARCH}.tar.gz" | tar -xzf - -C / + +# update squid conf with user info if [ "$DISTRO" = centos ]; then useradd --system --shell /usr/sbin/nologin --home-dir /bin proxy fi From 31b83b59b9a5cbfaa2b3e88eb772f39223f4f42d Mon Sep 17 00:00:00 2001 From: matt Date: Mon, 25 Oct 2021 19:32:34 +0000 Subject: [PATCH 12/25] KASM-2016 updates --- src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh index 534ef14..a999b29 100644 --- a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh +++ b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh @@ -34,7 +34,7 @@ if [ "${DISTRO}" == "centos" ] ; then yum localinstall -y kasmvncserver.rpm rm kasmvncserver.rpm else - if [ "$DISTRO" = "ubuntu" ] && [ ! "$BUILD_ARCH" =~ ^aarch64 ] ; then + if [[ "$DISTRO" = "ubuntu" ]] && [[ ! "$BUILD_ARCH" =~ ^aarch64$ ]] ; then install_libjpeg_turbo fi From 076bc873a8c06c3d02a5e4e9fc74d12d1bed60a8 Mon Sep 17 00:00:00 2001 From: Matthew McClaskey Date: Mon, 25 Oct 2021 19:41:38 +0000 Subject: [PATCH 13/25] WIP --- .gitlab-ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 48e73e8..3165f65 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -6,6 +6,9 @@ stages: - build - readme +variables: + DOCKER_AUTH_CONFIG: ${_DOCKER_AUTH_CONFIG} + before_script: - docker login --username $DOCKER_HUB_USERNAME --password $DOCKER_HUB_PASSWORD - export SANITIZED_BRANCH="$(echo $CI_COMMIT_REF_NAME | sed -r 's#^release/##' | sed 's/\//_/g')" From 4f4d52861af902a7985a88075b0b6feabd1185a1 Mon Sep 17 00:00:00 2001 From: Justin Travis Date: Mon, 25 Oct 2021 12:16:28 -0400 Subject: [PATCH 14/25] KASM-1255 Support logging of web filter adaptor --- src/ubuntu/install/squid/install/install_squid.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/ubuntu/install/squid/install/install_squid.sh b/src/ubuntu/install/squid/install/install_squid.sh index e8eafbd..e98a807 100644 --- a/src/ubuntu/install/squid/install/install_squid.sh +++ b/src/ubuntu/install/squid/install/install_squid.sh @@ -42,8 +42,7 @@ log_level: 5 sasldb_path: /etc/sasl2/memcached-sasldb2 EOL - -KASM_SQUID_ADAPTER=https://kasmweb-build-artifacts.s3.amazonaws.com/kasm_squid_adapter/d03389153257831e2378a3629c560e4d34f7e772/kasm_squid_adapter_${DISTRO/kali/ubuntu}_${ARCH}_develop.d03389.tar.gz +KASM_SQUID_ADAPTER=https://kasmweb-build-artifacts.s3.amazonaws.com/kasm_squid_adapter/faec132e9797ebf09cfa58bd59b60c77b0b1a64b/kasm_squid_adapter_${DISTRO/kali/ubuntu}_${ARCH}_develop.faec13.tar.gz wget -qO- ${KASM_SQUID_ADAPTER} | tar xz -C /etc/squid/ ls -la /etc/squid From 52b9a437e4622641db9368c3b06ddd2e5bb11bb2 Mon Sep 17 00:00:00 2001 From: Matthew McClaskey Date: Tue, 26 Oct 2021 12:12:54 +0000 Subject: [PATCH 15/25] Update build and scheduled jobs --- .gitlab-ci.yml | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 3165f65..4a46a57 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -18,16 +18,19 @@ before_script: build_ubuntu_bionic: stage: build script: - - docker build -t ${ORG_NAME}/core-ubuntu-bionic-private:$SANITIZED_BRANCH -t ${ORG_NAME}/core-ubuntu-bionic-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-ubuntu-bionic:$SANITIZED_BRANCH -t ${ORG_NAME}/core-ubuntu-bionic:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE="ubuntu:18.04" --build-arg BG_IMG=bg_bionic.png -f dockerfile-kasm-core . - - docker push ${ORG_NAME}/core-ubuntu-bionic-private:$SANITIZED_BRANCH - - docker push ${ORG_NAME}/core-ubuntu-bionic-private:$SANITIZED_ROLLING_BRANCH - - docker push ${ORG_NAME}/core-ubuntu-bionic:$SANITIZED_BRANCH - - docker push ${ORG_NAME}/core-ubuntu-bionic:$SANITIZED_ROLLING_BRANCH + # get qemu ready + - docker run --rm --privileged multiarch/qemu-user-static --reset -p yes + # prep the buildx env + - docker buildx create --use + # build for multiple architectures + - docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-ubuntu-bionic-private:$SANITIZED_BRANCH -t ${ORG_NAME}/core-ubuntu-bionic-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-ubuntu-bionic:$SANITIZED_BRANCH -t ${ORG_NAME}/core-ubuntu-bionic:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE="ubuntu:18.04" --build-arg BG_IMG=bg_bionic.png -f dockerfile-kasm-core . only: - develop - /^release\/.*$/ except: - schedules + tags: + - aws-autoscale build_cuda_bionic: stage: build @@ -150,11 +153,16 @@ build_centos_dev: build_ubuntu_bionic_scheduled: stage: build script: - - docker build -t ${ORG_NAME}/core-ubuntu-bionic-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-ubuntu-bionic:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE="ubuntu:18.04" --build-arg BG_IMG=bg_bionic.png -f dockerfile-kasm-core . - - docker push ${ORG_NAME}/core-ubuntu-bionic-private:$SANITIZED_ROLLING_BRANCH - - docker push ${ORG_NAME}/core-ubuntu-bionic:$SANITIZED_ROLLING_BRANCH + # get qemu ready + - docker run --rm --privileged multiarch/qemu-user-static --reset -p yes + # prep the buildx env + - docker buildx create --use + # build for multiple architectures + - docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-ubuntu-bionic-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-ubuntu-bionic:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE="ubuntu:18.04" --build-arg BG_IMG=bg_bionic.png -f dockerfile-kasm-core . only: - schedules + tags: + - aws-autoscale build_cuda_bionic_schedules: stage: build From 8d8f6abd552cda700d3ba8b589a670b2bffba820 Mon Sep 17 00:00:00 2001 From: Matthew McClaskey Date: Tue, 26 Oct 2021 12:40:14 +0000 Subject: [PATCH 16/25] WIP --- src/ubuntu/install/squid/install/install_squid.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/ubuntu/install/squid/install/install_squid.sh b/src/ubuntu/install/squid/install/install_squid.sh index 08164b7..0fb2fa6 100644 --- a/src/ubuntu/install/squid/install/install_squid.sh +++ b/src/ubuntu/install/squid/install/install_squid.sh @@ -5,6 +5,11 @@ ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g') # intall squid SQUID_COMMIT='6392f7dfb1040c67c0a5d5518abf508282523cc0' +SQUID_DISTRO=${DISTRO} +# currently all distros use the ubuntu build of squid except centos +if [ ! "${SQUID_DISTRO}" == "centos" ] ; then + SQUID_DISTRO="ubuntu" +fi wget -qO- "https://kasmweb-build-artifacts.s3.amazonaws.com/kasm-squid-builder/${SQUID_COMMIT}/output/kasm-squid-builder_${DISTRO}_${ARCH}.tar.gz" | tar -xzf - -C / # update squid conf with user info From 717cc59dee97a59fd6aba064a29c73557ce8d9f1 Mon Sep 17 00:00:00 2001 From: Matthew McClaskey Date: Tue, 26 Oct 2021 12:59:46 +0000 Subject: [PATCH 17/25] WIP --- src/ubuntu/install/squid/install/install_squid.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ubuntu/install/squid/install/install_squid.sh b/src/ubuntu/install/squid/install/install_squid.sh index 0fb2fa6..08f2bc2 100644 --- a/src/ubuntu/install/squid/install/install_squid.sh +++ b/src/ubuntu/install/squid/install/install_squid.sh @@ -10,7 +10,7 @@ SQUID_DISTRO=${DISTRO} if [ ! "${SQUID_DISTRO}" == "centos" ] ; then SQUID_DISTRO="ubuntu" fi -wget -qO- "https://kasmweb-build-artifacts.s3.amazonaws.com/kasm-squid-builder/${SQUID_COMMIT}/output/kasm-squid-builder_${DISTRO}_${ARCH}.tar.gz" | tar -xzf - -C / +wget -qO- "https://kasmweb-build-artifacts.s3.amazonaws.com/kasm-squid-builder/${SQUID_COMMIT}/output/kasm-squid-builder_${SQUID_DISTRO}_${ARCH}.tar.gz" | tar -xzf - -C / # update squid conf with user info if [ "$DISTRO" = centos ]; then From 880ef9a9493d2bba0d726be4cc6f20928f564790 Mon Sep 17 00:00:00 2001 From: Matthew McClaskey Date: Tue, 26 Oct 2021 16:42:00 +0000 Subject: [PATCH 18/25] WIP --- .gitlab-ci.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4a46a57..26b025d 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -17,6 +17,7 @@ before_script: # Jobs for the develop and release branches. They should push to the private and public repos build_ubuntu_bionic: stage: build + image: kasmweb/docker-buildx-private:develop script: # get qemu ready - docker run --rm --privileged multiarch/qemu-user-static --reset -p yes @@ -152,6 +153,7 @@ build_centos_dev: # These jobs are for the "rolling" release of the images. They should only run for scheduled jobs and should only push the rolling tags build_ubuntu_bionic_scheduled: stage: build + image: kasmweb/docker-buildx-private:develop script: # get qemu ready - docker run --rm --privileged multiarch/qemu-user-static --reset -p yes From ba3dff722a2d39d33d92b30ebe837a7ee183c72f Mon Sep 17 00:00:00 2001 From: Matthew McClaskey Date: Tue, 26 Oct 2021 19:51:56 +0000 Subject: [PATCH 19/25] wip --- .gitlab-ci.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 26b025d..64c7481 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -18,6 +18,8 @@ before_script: build_ubuntu_bionic: stage: build image: kasmweb/docker-buildx-private:develop + variables: + BUILD_PLATFORMS: "linux/amd64,linux/arm64" script: # get qemu ready - docker run --rm --privileged multiarch/qemu-user-static --reset -p yes @@ -154,6 +156,8 @@ build_centos_dev: build_ubuntu_bionic_scheduled: stage: build image: kasmweb/docker-buildx-private:develop + variables: + BUILD_PLATFORMS: "linux/amd64,linux/arm64" script: # get qemu ready - docker run --rm --privileged multiarch/qemu-user-static --reset -p yes From 4760546263aa1a8f6c6f8d33c277dc8165b9e3f4 Mon Sep 17 00:00:00 2001 From: Justin Travis Date: Thu, 28 Oct 2021 08:39:18 -0400 Subject: [PATCH 20/25] KASM-2010 Reference buildx image bia ORG_NAME variable --- .gitlab-ci.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 64c7481..08da980 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -17,7 +17,7 @@ before_script: # Jobs for the develop and release branches. They should push to the private and public repos build_ubuntu_bionic: stage: build - image: kasmweb/docker-buildx-private:develop + image: ${ORG_NAME}/docker-buildx-private:develop variables: BUILD_PLATFORMS: "linux/amd64,linux/arm64" script: @@ -96,7 +96,7 @@ build_centos: # These jobs should run on the feature/bugfix branches - anything that is not the develop or release branches. It should only push images to the private repos build_ubuntu_bionic_dev: - image: kasmweb/docker-buildx-private:develop + image: ${ORG_NAME}/docker-buildx-private:develop stage: build variables: BUILD_PLATFORMS: "linux/amd64,linux/arm64" @@ -155,7 +155,7 @@ build_centos_dev: # These jobs are for the "rolling" release of the images. They should only run for scheduled jobs and should only push the rolling tags build_ubuntu_bionic_scheduled: stage: build - image: kasmweb/docker-buildx-private:develop + image: ${ORG_NAME}/docker-buildx-private:develop variables: BUILD_PLATFORMS: "linux/amd64,linux/arm64" script: @@ -216,8 +216,8 @@ update_readmes: - git clone https://gitlab-ci-token:${CI_JOB_TOKEN}@${README_TEMPLATE_REPO} - sed -e "/{about}/r docs/$KASM_IMAGE/README.md" -e "/{about}/d" dockerhub-readme-template/TEMPLATE.md > docs/$KASM_IMAGE/FULL_README.md - cat docs/$KASM_IMAGE/FULL_README.md - - docker run -v $PWD:/workspace -e DOCKER_USERNAME="$README_USERNAME" -e DOCKER_PASSWORD="$README_PASSWORD" -e DOCKERHUB_REPOSITORY="${ORG_NAME}/$KASM_IMAGE-private" -e README_FILEPATH="/workspace/docs/$KASM_IMAGE/FULL_README.md" -e DESCRIPTION_FILEPATH="/workspace/docs/$KASM_IMAGE/description.txt" kasmweb/dockerhub-updater:latest - - docker run -v $PWD:/workspace -e DOCKER_USERNAME="$README_USERNAME" -e DOCKER_PASSWORD="$README_PASSWORD" -e DOCKERHUB_REPOSITORY="${ORG_NAME}/$KASM_IMAGE" -e README_FILEPATH="/workspace/docs/$KASM_IMAGE/FULL_README.md" -e DESCRIPTION_FILEPATH="/workspace/docs/$KASM_IMAGE/description.txt" kasmweb/dockerhub-updater:latest + - docker run -v $PWD:/workspace -e DOCKER_USERNAME="$README_USERNAME" -e DOCKER_PASSWORD="$README_PASSWORD" -e DOCKERHUB_REPOSITORY="${ORG_NAME}/$KASM_IMAGE-private" -e README_FILEPATH="/workspace/docs/$KASM_IMAGE/FULL_README.md" -e DESCRIPTION_FILEPATH="/workspace/docs/$KASM_IMAGE/description.txt" ${ORG_NAME}/dockerhub-updater:latest + - docker run -v $PWD:/workspace -e DOCKER_USERNAME="$README_USERNAME" -e DOCKER_PASSWORD="$README_PASSWORD" -e DOCKERHUB_REPOSITORY="${ORG_NAME}/$KASM_IMAGE" -e README_FILEPATH="/workspace/docs/$KASM_IMAGE/FULL_README.md" -e DESCRIPTION_FILEPATH="/workspace/docs/$KASM_IMAGE/description.txt" ${ORG_NAME}/dockerhub-updater:latest only: variables: From d5e825f7c54662db0234c9bbed086f51c27ac001 Mon Sep 17 00:00:00 2001 From: Justin Travis Date: Mon, 1 Nov 2021 22:06:42 -0400 Subject: [PATCH 21/25] KASM-158 Add Clipboard permission flags to VNC startup --- src/common/startup_scripts/vnc_startup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/startup_scripts/vnc_startup.sh b/src/common/startup_scripts/vnc_startup.sh index ed83486..0b7abc8 100644 --- a/src/common/startup_scripts/vnc_startup.sh +++ b/src/common/startup_scripts/vnc_startup.sh @@ -57,7 +57,7 @@ function start_kasmvnc (){ rm -rf $HOME/.vnc/*.pid - vncserver $DISPLAY -depth $VNC_COL_DEPTH -geometry $VNC_RESOLUTION -websocketPort $NO_VNC_PORT -cert ${HOME}/.vnc/self.pem -httpd ${KASM_VNC_PATH}/www -sslOnly -FrameRate=$MAX_FRAME_RATE -interface 0.0.0.0 $VNCOPTIONS + vncserver $DISPLAY -depth $VNC_COL_DEPTH -geometry $VNC_RESOLUTION -websocketPort $NO_VNC_PORT -cert ${HOME}/.vnc/self.pem -httpd ${KASM_VNC_PATH}/www -sslOnly -FrameRate=$MAX_FRAME_RATE -interface 0.0.0.0 $VNCOPTIONS $KASM_SVC_SEND_CUT_TEXT $KASM_SVC_ACCEPT_CUT_TEXT KASM_PROCS['kasmvnc']=$(cat $HOME/.vnc/*${DISPLAY_NUM}.pid) From b3607fa6143701a8efbba925590b92b1264f129b Mon Sep 17 00:00:00 2001 From: Justin Travis Date: Mon, 8 Nov 2021 21:27:26 -0500 Subject: [PATCH 22/25] KASM-2001 Update KasmVNC with Mobile Updates --- src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh index a999b29..75d8e8c 100644 --- a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh +++ b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh @@ -16,14 +16,14 @@ BUILD_ARCH=$(uname -p) if [ "${DISTRO}" == "kali" ] ; then - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/a9434a300dbf85e65d0e9c212610a487fd10a308/kasmvncserver_kali-rolling_0.9.3_master_a9434a_amd64.deb" + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/8c2c0993421639b4ac15985c732850606377742b/kasmvncserver_kali-rolling_0.9.3_master_8c2c09_amd64.deb" elif [ "${DISTRO}" == "centos" ] ; then - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/a9434a300dbf85e65d0e9c212610a487fd10a308/output/centos_core/kasmvncserver-0.9.1~beta-1.el7.x86_64.rpm" + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/8c2c0993421639b4ac15985c732850606377742b/output/centos_core/kasmvncserver-0.9.1~beta-1.el7.x86_64.rpm" else if [[ "${BUILD_ARCH}" =~ ^aarch64$ ]] ; then - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/a9434a300dbf85e65d0e9c212610a487fd10a308/kasmvncserver_bionic_0.9.3_master_a9434a_arm64.deb" + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/8c2c0993421639b4ac15985c732850606377742b/kasmvncserver_bionic_0.9.3_master_8c2c09_arm64.deb" else - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/a9434a300dbf85e65d0e9c212610a487fd10a308/kasmvncserver_bionic_0.9.3_master_a9434a_libjpeg-turbo-latest_amd64.deb" + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/8c2c0993421639b4ac15985c732850606377742b/kasmvncserver_bionic_0.9.3_master_8c2c09_libjpeg-turbo-latest_amd64.deb" fi fi From a4924433e948f172847327450f211edece82ed4e Mon Sep 17 00:00:00 2001 From: Matthew McClaskey Date: Tue, 9 Nov 2021 19:38:51 +0000 Subject: [PATCH 23/25] KASM-2075 fix clipboard on touch devices --- src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh index 75d8e8c..9f3f8bd 100644 --- a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh +++ b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh @@ -4,7 +4,7 @@ set -e install_libjpeg_turbo() { local libjpeg_deb=libjpeg-turbo.deb - wget 'https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/a9434a300dbf85e65d0e9c212610a487fd10a308/output/bionic/libjpeg-turbo_2.1.2_amd64.deb' -O "$libjpeg_deb" + wget 'https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/26f1b52b70dede7bce2f5fe1b1e9c14d2e1069d8/output/bionic/libjpeg-turbo_2.1.2_amd64.deb' -O "$libjpeg_deb" apt-get install -y "./$libjpeg_deb" rm "$libjpeg_deb" } @@ -16,14 +16,14 @@ BUILD_ARCH=$(uname -p) if [ "${DISTRO}" == "kali" ] ; then - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/8c2c0993421639b4ac15985c732850606377742b/kasmvncserver_kali-rolling_0.9.3_master_8c2c09_amd64.deb" + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/26f1b52b70dede7bce2f5fe1b1e9c14d2e1069d8/kasmvncserver_kali-rolling_0.9.3_master_26f1b5_amd64.deb" elif [ "${DISTRO}" == "centos" ] ; then - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/8c2c0993421639b4ac15985c732850606377742b/output/centos_core/kasmvncserver-0.9.1~beta-1.el7.x86_64.rpm" + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/26f1b52b70dede7bce2f5fe1b1e9c14d2e1069d8/output/centos_core/kasmvncserver-0.9.1~beta-1.el7.x86_64.rpm" else if [[ "${BUILD_ARCH}" =~ ^aarch64$ ]] ; then - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/8c2c0993421639b4ac15985c732850606377742b/kasmvncserver_bionic_0.9.3_master_8c2c09_arm64.deb" + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/26f1b52b70dede7bce2f5fe1b1e9c14d2e1069d8/kasmvncserver_bionic_0.9.3_master_26f1b5_arm64.deb" else - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/8c2c0993421639b4ac15985c732850606377742b/kasmvncserver_bionic_0.9.3_master_8c2c09_libjpeg-turbo-latest_amd64.deb" + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/26f1b52b70dede7bce2f5fe1b1e9c14d2e1069d8/kasmvncserver_bionic_0.9.3_master_26f1b5_libjpeg-turbo-latest_amd64.deb" fi fi From 28bd311aabce9fbf0c5a2ab14a27157d285b332e Mon Sep 17 00:00:00 2001 From: Justin Travis Date: Mon, 15 Nov 2021 04:07:46 -0500 Subject: [PATCH 24/25] KASM-2021 Add fragment_size argument for ffmpeg pulseaudio - newer versions of ffmpeg need this applied or the audio will be choppy --- src/common/startup_scripts/vnc_startup.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/common/startup_scripts/vnc_startup.sh b/src/common/startup_scripts/vnc_startup.sh index 0b7abc8..6627cec 100644 --- a/src/common/startup_scripts/vnc_startup.sh +++ b/src/common/startup_scripts/vnc_startup.sh @@ -98,11 +98,11 @@ function start_audio_out (){ if [[ $DEBUG == true ]]; then echo 'Starting audio service in debug mode' - no_proxy=127.0.0.1 ffmpeg -f pulse -ar 44100 -i default -f mpegts -correct_ts_overflow 0 -codec:a mp2 -b:a 128k -ac 1 -muxdelay 0.001 http://127.0.0.1:8081/kasmaudio & + no_proxy=127.0.0.1 ffmpeg -f pulse -fragment_size ${PULSEAUDIO_FRAGMENT_SIZE:-2000} -ar 44100 -i default -f mpegts -correct_ts_overflow 0 -codec:a mp2 -b:a 128k -ac 1 -muxdelay 0.001 http://127.0.0.1:8081/kasmaudio & KASM_PROCS['kasm_audio_out']=$! else echo 'Starting audio service' - no_proxy=127.0.0.1 ffmpeg -v verbose -f pulse -ar 44100 -i default -f mpegts -correct_ts_overflow 0 -codec:a mp2 -b:a 128k -ac 1 -muxdelay 0.001 http://127.0.0.1:8081/kasmaudio > /dev/null 2>&1 & + no_proxy=127.0.0.1 ffmpeg -v verbose -f pulse -fragment_size ${PULSEAUDIO_FRAGMENT_SIZE:-2000} -ar 44100 -i default -f mpegts -correct_ts_overflow 0 -codec:a mp2 -b:a 128k -ac 1 -muxdelay 0.001 http://127.0.0.1:8081/kasmaudio > /dev/null 2>&1 & KASM_PROCS['kasm_audio_out']=$! echo -e "\n------------------ Started Audio Out ----------------------------" echo "Kasm Audio Out PID: ${KASM_PROCS['kasm_audio_out']}"; From 83d7bb17acab29949fff405257d3e4b3fec8d1f7 Mon Sep 17 00:00:00 2001 From: Justin Travis Date: Mon, 15 Nov 2021 20:58:31 -0500 Subject: [PATCH 25/25] KASM-2108 Updated KasmVNC for keyboard and audio contols --- src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh index 9f3f8bd..e998837 100644 --- a/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh +++ b/src/ubuntu/install/kasm_vnc/install_kasm_vnc.sh @@ -4,7 +4,7 @@ set -e install_libjpeg_turbo() { local libjpeg_deb=libjpeg-turbo.deb - wget 'https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/26f1b52b70dede7bce2f5fe1b1e9c14d2e1069d8/output/bionic/libjpeg-turbo_2.1.2_amd64.deb' -O "$libjpeg_deb" + wget 'https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/dc4e4ce3487a1eefe0df1c86bc44d3308ca211b7/output/bionic/libjpeg-turbo_2.1.2_amd64.deb' -O "$libjpeg_deb" apt-get install -y "./$libjpeg_deb" rm "$libjpeg_deb" } @@ -16,14 +16,14 @@ BUILD_ARCH=$(uname -p) if [ "${DISTRO}" == "kali" ] ; then - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/26f1b52b70dede7bce2f5fe1b1e9c14d2e1069d8/kasmvncserver_kali-rolling_0.9.3_master_26f1b5_amd64.deb" + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/dc4e4ce3487a1eefe0df1c86bc44d3308ca211b7/kasmvncserver_kali-rolling_0.9.3_master_dc4e4c_amd64.deb" elif [ "${DISTRO}" == "centos" ] ; then - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/26f1b52b70dede7bce2f5fe1b1e9c14d2e1069d8/output/centos_core/kasmvncserver-0.9.1~beta-1.el7.x86_64.rpm" + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/dc4e4ce3487a1eefe0df1c86bc44d3308ca211b7/output/centos_core/kasmvncserver-0.9.1~beta-1.el7.x86_64.rpm" else if [[ "${BUILD_ARCH}" =~ ^aarch64$ ]] ; then - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/26f1b52b70dede7bce2f5fe1b1e9c14d2e1069d8/kasmvncserver_bionic_0.9.3_master_26f1b5_arm64.deb" + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/dc4e4ce3487a1eefe0df1c86bc44d3308ca211b7/kasmvncserver_bionic_0.9.3_master_dc4e4c_arm64.deb" else - BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/26f1b52b70dede7bce2f5fe1b1e9c14d2e1069d8/kasmvncserver_bionic_0.9.3_master_26f1b5_libjpeg-turbo-latest_amd64.deb" + BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/dc4e4ce3487a1eefe0df1c86bc44d3308ca211b7/kasmvncserver_bionic_0.9.3_master_dc4e4c_libjpeg-turbo-latest_amd64.deb" fi fi