Resolve KASM-5403 "Feature/ kasm 5399 alpine 319 fedora 39"

This commit is contained in:
Ryan Kuba 2024-01-10 01:11:53 +00:00 committed by Justin Travis
parent f4d05a4c40
commit 2c05c17bce
24 changed files with 360 additions and 30 deletions

View File

@ -14,7 +14,7 @@ stages:
- test
variables:
KASM_RELEASE: "1.14.0"
TEST_INSTALLER: "https://kasm-static-content.s3.amazonaws.com/kasm_release_1.14.0.7f3582.tar.gz"
TEST_INSTALLER: "https://kasmweb-build-artifacts.s3.amazonaws.com/kasm_backend/1e99090dadb026f1e37e34e53334da20061bc21c/kasm_workspaces_feature_tester-1.15-pre-release_1.15.0.1e9909.tar.gz"
SCAN_CONTAINERS: "true"
before_script:
- export SANITIZED_BRANCH="$(echo $CI_COMMIT_REF_NAME | sed -r 's#^release/##' | sed 's/\//_/g')"

View File

@ -184,7 +184,16 @@ multiImages:
dockerfile: dockerfile-kasm-core-fedora
changeFiles:
- dockerfile-kasm-core-fedora
- src/fedora37/**
- src/fedora38/**
- name1: fedora
name2: 39
base: fedora:39
bg: bg_fedora.png
distro: fedora39
dockerfile: dockerfile-kasm-core-fedora
changeFiles:
- dockerfile-kasm-core-fedora
- src/fedora39/**
- name1: parrotos
name2: 5
base: parrotsec/core:latest
@ -215,6 +224,15 @@ multiImages:
changeFiles:
- dockerfile-kasm-core-alpine
- src/alpine/**
- name1: alpine
name2: 319
base: alpine:3.19
bg: bg_alpine.png
distro: alpine
dockerfile: dockerfile-kasm-core-alpine
changeFiles:
- dockerfile-kasm-core-alpine
- src/alpine/**
singleImages:
- name1: cuda
name2: focal

View File

@ -191,7 +191,7 @@ ssh \
ready_check
# Pull tester image
docker pull ${ORG_NAME}/kasm-tester:1.14.2
docker pull ${ORG_NAME}/kasm-tester:1.15.0
# Run test
cp /root/.ssh/id_rsa $(dirname ${CI_PROJECT_DIR})/sshkey
@ -213,7 +213,7 @@ docker run --rm \
-e REPO=workspaces-core-images \
-e AUTOMATED=true \
-v $(dirname ${CI_PROJECT_DIR})/sshkey:/sshkey:ro ${SLIM_FLAG} \
kasmweb/kasm-tester:1.14.2
kasmweb/kasm-tester:1.15.0
# Shutdown Instances
turnoff

View File

@ -0,0 +1,7 @@
# About This Image
This image contains a browser-accessible version of Alpine 3.19.
![Screenshot][Image_Screenshot]
[Image_Screenshot]: https://5856039.fs1.hubspotusercontent-na1.net/hubfs/5856039/dockerhub/image-screenshots/alpine-317-core.png "Image Screenshot"

View File

@ -0,0 +1,9 @@
# Live Demo
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank">Live Demo</a>.
<a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/CoreUbuntuJammy.png" width="300" height="104"></a>
&lowast;*This demo links to a Jammy Desktop image to show the basic functionality of Kasm Workspaces.*
&lowast;*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*

View File

@ -0,0 +1 @@
Alpine 3.19 base image for Kasm Workspaces

View File

@ -0,0 +1,7 @@
# About This Image
This image contains a browser-accessible version of Fedora 39.
![Screenshot][Image_Screenshot]
[Image_Screenshot]: https://info.kasmweb.com/hubfs/dockerhub/fedora-37-core.png "Image Screenshot"

View File

@ -0,0 +1,9 @@
# Live Demo
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank">Live Demo</a>.
<a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/CoreUbuntuJammy.png" width="300" height="104"></a>
&lowast;*This demo links to a Jammy Desktop image to show the basic functionality of Kasm Workspaces.*
&lowast;*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*

View File

@ -0,0 +1 @@
Fedora 39 base image for Kasm Workspaces

View File

@ -0,0 +1,108 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-desktop" version="1.0">
<property name="backdrop" type="empty">
<property name="screen0" type="empty">
<property name="monitorVNC-0" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace1" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace2" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace3" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
</property>
<property name="monitorVNC-1" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace1" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace2" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace3" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
</property>
<property name="monitorVNC-2" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace1" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace2" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace3" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
</property>
<property name="monitorVNC-3" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace1" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace2" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace3" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
</property>
</property>
</property>
<property name="desktop-icons" type="empty">
<property name="file-icons" type="empty">
<property name="show-home" type="bool" value="false"/>
<property name="show-filesystem" type="bool" value="false"/>
<property name="show-trash" type="bool" value="false"/>
<property name="show-removable" type="bool" value="false"/>
</property>
</property>
<property name="last" type="empty">
<property name="window-width" type="int" value="653"/>
<property name="window-height" type="int" value="558"/>
</property>
</channel>

View File

@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-panel" version="1.0">
<property name="configver" type="int" value="2"/>
<property name="panels" type="array">
<value type="int" value="1"/>
<property name="dark-mode" type="bool" value="false"/>
<property name="panel-1" type="empty">
<property name="position" type="string" value="p=6;x=0;y=0"/>
<property name="length" type="uint" value="100"/>
<property name="position-locked" type="bool" value="true"/>
<property name="icon-size" type="uint" value="16"/>
<property name="size" type="uint" value="30"/>
<property name="plugin-ids" type="array">
<value type="int" value="1"/>
<value type="int" value="2"/>
<value type="int" value="3"/>
<value type="int" value="4"/>
</property>
<property name="mode" type="uint" value="0"/>
</property>
</property>
<property name="plugins" type="empty">
<property name="plugin-1" type="string" value="applicationsmenu"/>
<property name="plugin-2" type="string" value="tasklist">
<property name="grouping" type="uint" value="1"/>
</property>
<property name="plugin-3" type="string" value="separator">
<property name="expand" type="bool" value="true"/>
<property name="style" type="uint" value="0"/>
</property>
<property name="plugin-4" type="string" value="pager">
<property name="rows" type="uint" value="1"/>
</property>
<property name="plugin-9" type="string" value="power-manager-plugin"/>
</property>
</channel>

View File

@ -0,0 +1,91 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfwm4" version="1.0">
<property name="general" type="empty">
<property name="activate_action" type="string" value="bring"/>
<property name="borderless_maximize" type="bool" value="true"/>
<property name="box_move" type="bool" value="false"/>
<property name="box_resize" type="bool" value="false"/>
<property name="button_layout" type="string" value="O|SHMC"/>
<property name="button_offset" type="int" value="0"/>
<property name="button_spacing" type="int" value="0"/>
<property name="click_to_focus" type="bool" value="true"/>
<property name="cycle_apps_only" type="bool" value="false"/>
<property name="cycle_draw_frame" type="bool" value="true"/>
<property name="cycle_raise" type="bool" value="false"/>
<property name="cycle_hidden" type="bool" value="true"/>
<property name="cycle_minimum" type="bool" value="true"/>
<property name="cycle_minimized" type="bool" value="false"/>
<property name="cycle_preview" type="bool" value="true"/>
<property name="cycle_tabwin_mode" type="int" value="0"/>
<property name="cycle_workspaces" type="bool" value="false"/>
<property name="double_click_action" type="string" value="maximize"/>
<property name="double_click_distance" type="int" value="5"/>
<property name="double_click_time" type="int" value="250"/>
<property name="easy_click" type="string" value="Alt"/>
<property name="focus_delay" type="int" value="250"/>
<property name="focus_hint" type="bool" value="true"/>
<property name="focus_new" type="bool" value="true"/>
<property name="frame_opacity" type="int" value="100"/>
<property name="frame_border_top" type="int" value="0"/>
<property name="full_width_title" type="bool" value="true"/>
<property name="horiz_scroll_opacity" type="bool" value="false"/>
<property name="inactive_opacity" type="int" value="100"/>
<property name="maximized_offset" type="int" value="0"/>
<property name="mousewheel_rollup" type="bool" value="true"/>
<property name="move_opacity" type="int" value="100"/>
<property name="placement_mode" type="string" value="center"/>
<property name="placement_ratio" type="int" value="20"/>
<property name="popup_opacity" type="int" value="100"/>
<property name="prevent_focus_stealing" type="bool" value="false"/>
<property name="raise_delay" type="int" value="250"/>
<property name="raise_on_click" type="bool" value="true"/>
<property name="raise_on_focus" type="bool" value="false"/>
<property name="raise_with_any_button" type="bool" value="true"/>
<property name="repeat_urgent_blink" type="bool" value="false"/>
<property name="resize_opacity" type="int" value="100"/>
<property name="scroll_workspaces" type="bool" value="true"/>
<property name="shadow_delta_height" type="int" value="0"/>
<property name="shadow_delta_width" type="int" value="0"/>
<property name="shadow_delta_x" type="int" value="0"/>
<property name="shadow_delta_y" type="int" value="-3"/>
<property name="shadow_opacity" type="int" value="50"/>
<property name="show_app_icon" type="bool" value="false"/>
<property name="show_dock_shadow" type="bool" value="true"/>
<property name="show_frame_shadow" type="bool" value="true"/>
<property name="show_popup_shadow" type="bool" value="false"/>
<property name="snap_resist" type="bool" value="false"/>
<property name="snap_to_border" type="bool" value="true"/>
<property name="snap_to_windows" type="bool" value="false"/>
<property name="snap_width" type="int" value="10"/>
<property name="vblank_mode" type="string" value="auto"/>
<property name="theme" type="string" value="Default"/>
<property name="tile_on_move" type="bool" value="true"/>
<property name="title_alignment" type="string" value="center"/>
<property name="title_font" type="string" value="Sans Bold 9"/>
<property name="title_horizontal_offset" type="int" value="0"/>
<property name="titleless_maximize" type="bool" value="false"/>
<property name="title_shadow_active" type="string" value="false"/>
<property name="title_shadow_inactive" type="string" value="false"/>
<property name="title_vertical_offset_active" type="int" value="0"/>
<property name="title_vertical_offset_inactive" type="int" value="0"/>
<property name="toggle_workspaces" type="bool" value="false"/>
<property name="unredirect_overlays" type="bool" value="true"/>
<property name="urgent_blink" type="bool" value="false"/>
<property name="use_compositing" type="bool" value="false"/>
<property name="workspace_count" type="int" value="4"/>
<property name="wrap_cycle" type="bool" value="true"/>
<property name="wrap_layout" type="bool" value="true"/>
<property name="wrap_resistance" type="int" value="10"/>
<property name="wrap_windows" type="bool" value="true"/>
<property name="wrap_workspaces" type="bool" value="false"/>
<property name="zoom_desktop" type="bool" value="true"/>
<property name="zoom_pointer" type="bool" value="true"/>
<property name="workspace_names" type="array">
<value type="string" value="Workspace 1"/>
<value type="string" value="Workspace 2"/>
<value type="string" value="Workspace 3"/>
<value type="string" value="Workspace 4"/>
</property>
</property>
</channel>

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xsettings" version="1.0">
<property name="Xft" type="empty">
<property name="DPI" type="int" value="96"/>
<property name="Antialias" type="int" value="1"/>
<property name="Hinting" type="int" value="1"/>
<property name="HintStyle" type="string" value="hintslight"/>
<property name="RGBA" type="string" value="rgb"/>
</property>
</channel>

View File

@ -34,15 +34,28 @@ elif [ "${DISTRO}" == "fedora38" ]; then
dnf install -y curl git
dnf localinstall -y --nogpgcheck https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-38.noarch.rpm
dnf install -y --allowerasing ffmpeg pulseaudio pulseaudio-utils
elif [ "${DISTRO}" == "fedora39" ]; then
dnf install -y curl git
dnf localinstall -y --nogpgcheck https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-39.noarch.rpm
dnf install -y --allowerasing ffmpeg pulseaudio pulseaudio-utils
elif [ "${DISTRO}" == "opensuse" ]; then
zypper install -ny curl git
zypper install -yn ffmpeg pulseaudio-utils
elif [ "${DISTRO}" == "alpine" ]; then
apk add --no-cache \
ffmpeg \
git \
pulseaudio \
pulseaudio-utils
if grep -q v3.19 /etc/os-release; then
apk add --no-cache \
ffmpeg \
ffplay \
git \
pulseaudio \
pulseaudio-utils
else
apk add --no-cache \
ffmpeg \
git \
pulseaudio \
pulseaudio-utils
fi
else
apt-get update
apt-get install -y curl git ffmpeg

View File

@ -4,7 +4,7 @@ set -ex
# Distro package cleanup
if [[ "${DISTRO}" == @(centos|oracle7) ]] ; then
yum clean all
elif [[ "${DISTRO}" == @(almalinux8|almalinux9|fedora37|fedora38|oracle8|oracle9|rockylinux8|rockylinux9) ]]; then
elif [[ "${DISTRO}" == @(almalinux8|almalinux9|fedora37|fedora38|fedora39|oracle8|oracle9|rockylinux8|rockylinux9) ]]; then
dnf clean all
elif [ "${DISTRO}" == "opensuse" ]; then
zypper clean --all

View File

@ -20,7 +20,7 @@ elif [[ "${DISTRO}" == "centos" ]]; then
google-noto-emoji-fonts \
google-noto-sans-cjk-fonts \
google-noto-sans-fonts
elif [[ "${DISTRO}" == @(fedora37|fedora38) ]]; then
elif [[ "${DISTRO}" == @(fedora37|fedora38|fedora39) ]]; then
dnf install -y \
glibc-locale-source \
google-noto-cjk-fonts \

View File

@ -69,6 +69,12 @@ elif [[ "${DISTRO}" == "fedora38" ]] ; then
else
BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/${COMMIT_ID}/kasmvncserver_fedora_thirtyeight_${KASM_VER_NAME_PART}_aarch64.rpm"
fi
elif [[ "${DISTRO}" == "fedora39" ]] ; then
if [[ "$(arch)" =~ ^x86_64$ ]] ; then
BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/${COMMIT_ID}/kasmvncserver_fedora_thirtynine_${KASM_VER_NAME_PART}_x86_64.rpm"
else
BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/${COMMIT_ID}/kasmvncserver_fedora_thirtynine_${KASM_VER_NAME_PART}_aarch64.rpm"
fi
elif [[ "${DISTRO}" = @(debian|parrotos5) ]] ; then
if grep -q bookworm /etc/os-release; then
if [[ "$(arch)" =~ ^x86_64$ ]] ; then
@ -84,7 +90,13 @@ elif [[ "${DISTRO}" = @(debian|parrotos5) ]] ; then
fi
fi
elif [[ "${DISTRO}" == "alpine" ]] ; then
if grep -q v3.18 /etc/os-release; then
if grep -q v3.19 /etc/os-release; then
if [[ "$(arch)" =~ ^x86_64$ ]] ; then
BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/${COMMIT_ID}/output/alpine_319/kasmvnc.alpine_319_x86_64.tgz"
else
BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/${COMMIT_ID}/output/alpine_319/kasmvnc.alpine_319_aarch64.tgz"
fi
elif grep -q v3.18 /etc/os-release; then
if [[ "$(arch)" =~ ^x86_64$ ]] ; then
BUILD_URL="https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/${COMMIT_ID}/output/alpine_318/kasmvnc.alpine_318_x86_64.tgz"
else
@ -117,7 +129,7 @@ elif [[ "${DISTRO}" == @(oracle8|oracle9|rockylinux9|rockylinux8|almalinux8|alma
dnf localinstall -y kasmvncserver.rpm
dnf install -y mesa-dri-drivers
rm kasmvncserver.rpm
elif [[ "${DISTRO}" == @(fedora37|fedora38) ]] ; then
elif [[ "${DISTRO}" == @(fedora37|fedora38|fedora39) ]] ; then
dnf install -y xorg-x11-drv-amdgpu xorg-x11-drv-ati
if [ "${BUILD_ARCH}" == "x86_64" ]; then
dnf install -y xorg-x11-drv-intel

View File

@ -9,7 +9,7 @@ elif [[ "${DISTRO}" == "debian" ]] ; then
sed -i \
'/locale/d' \
/etc/dpkg/dpkg.cfg.d/docker
elif [[ "${DISTRO}" == @(almalinux8|almalinux9|fedora37|fedora38|oracle8|oracle9|rockylinux8|rockylinux9) ]]; then
elif [[ "${DISTRO}" == @(almalinux8|almalinux9|fedora37|fedora38|fedora39|oracle8|oracle9|rockylinux8|rockylinux9) ]]; then
rm -f /etc/rpm/macros.image-language-conf
elif [[ "${DISTRO}" == @(centos|oracle7) ]]; then
sed -i \
@ -22,7 +22,7 @@ fi
echo "Upgrading packages from upstream base image"
if [[ "${DISTRO}" == @(centos|oracle7) ]] ; then
yum update -y
elif [[ "${DISTRO}" == @(fedora37|fedora38|oracle8|oracle9|rockylinux9|rockylinux8|almalinux8|almalinux9) ]]; then
elif [[ "${DISTRO}" == @(fedora37|fedora38|fedora39|oracle8|oracle9|rockylinux9|rockylinux8|almalinux8|almalinux9) ]]; then
dnf upgrade -y --refresh
elif [ "${DISTRO}" == "opensuse" ]; then
zypper --non-interactive patch --auto-agree-with-licenses

View File

@ -6,7 +6,7 @@ echo $DISTRO
if [ "${DISTRO}" == "oracle7" ] || [ "${DISTRO}" == "centos" ]; then
yum install -y cups cups-client cups-pdf
elif [[ "${DISTRO}" == @(almalinux8|almalinux9|oracle8|oracle9|rockylinux8|rockylinux9|fedora37|fedora38) ]]; then
elif [[ "${DISTRO}" == @(almalinux8|almalinux9|oracle8|oracle9|rockylinux8|rockylinux9|fedora37|fedora38|fedora39) ]]; then
dnf install -y cups cups-client cups-pdf
elif [ "${DISTRO}" == "opensuse" ]; then
zypper install -y cups cups-client cups-pdf

View File

@ -45,6 +45,9 @@ handle_other_distros_conversion() {
if grep -q 'v3.18' /etc/os-release; then
profile_distro="alpine_318"
fi
if grep -q 'v3.19' /etc/os-release; then
profile_distro="alpine_319"
fi
;;
rockylinux*)
profile_distro=$(echo "$profile_distro" | sed -e 's/linux//')
@ -76,8 +79,8 @@ download_and_symlink() {
}
ARCH=$(arch)
BRANCH="release_1.0.1"
COMMIT_ID="a2ed6b21848b835c5b33524b90894b8b4d6fed52"
BRANCH="release_1.0.2"
COMMIT_ID="8b90fa40285d80de72284d09bf6651642e5c07d2"
convert_local_distro_to_profile_sync_distro
check_distro_is_supported

View File

@ -15,12 +15,12 @@ if $(grep -q Jammy /etc/os-release) || $(grep -q Kali /etc/os-release) ; then
wget ${LIBSSLURL} -O libssl1.1.${ARCH}.deb
dpkg -i libssl1.1.${ARCH}.deb
rm -f libssl1.1.${ARCH}.deb
elif [[ "${DISTRO}" != @(centos|oracle7|oracle8|oracle9|opensuse|fedora37|fedora38|rockylinux9|rockylinux8|almalinux9|almalinux8|alpine) ]] ; then
elif [[ "${DISTRO}" != @(centos|oracle7|oracle8|oracle9|opensuse|fedora37|fedora38|fedora39|rockylinux9|rockylinux8|almalinux9|almalinux8|alpine) ]] ; then
wget -qO- https://kasmweb-build-artifacts.s3.amazonaws.com/kasm-squid-builder/${SQUID_COMMIT}/output/kasm-squid-builder_${ARCH}.tar.gz | tar -xzf - -C /
fi
# update squid conf with user info
if [[ "${DISTRO}" == @(centos|oracle7|oracle8|oracle9|fedora37|fedora38|almalinux8|almalinux9|rockylinux8|rockylinux9|alpine) ]]; then
if [[ "${DISTRO}" == @(centos|oracle7|oracle8|oracle9|fedora37|fedora38|fedora39|almalinux8|almalinux9|rockylinux8|rockylinux9|alpine) ]]; then
useradd --system --shell /usr/sbin/nologin --home-dir /bin proxy
elif [ "${DISTRO}" == "opensuse" ]; then
useradd --system --shell /usr/sbin/nologin --home-dir /bin proxy
@ -33,7 +33,7 @@ chown proxy:proxy /usr/local/squid/etc/ssl_cert -R
chmod 700 /usr/local/squid/etc/ssl_cert -R
cd /usr/local/squid/etc/ssl_cert
if [[ "${DISTRO}" == @(fedora37|fedora38) ]]; then
if [[ "${DISTRO}" == @(fedora37|fedora38|fedora39) ]]; then
dnf install -y openssl1.1 xkbcomp
rm -f /etc/X11/xinit/xinitrc
elif [[ "${DISTRO}" == @(rockylinux9|oracle9|almalinux9) ]]; then
@ -42,7 +42,11 @@ elif [[ "${DISTRO}" == @(rockylinux9|oracle9|almalinux9) ]]; then
elif [[ "${DISTRO}" == @(centos|oracle7) ]]; then
yum install -y openssl11-libs
elif [[ "${DISTRO}" == "alpine" ]]; then
apk add --no-cache openssl1.1-compat
if grep -q v3.19 /etc/os-release; then
apk add --no-cache --repository=https://dl-cdn.alpinelinux.org/alpine/edge/testing openssl1.1-compat
else
apk add --no-cache openssl1.1-compat
fi
elif grep -q bookworm /etc/os-release; then
wget ${LIBSSLURL} -O libssl1.1.${ARCH}.deb
dpkg -i libssl1.1.${ARCH}.deb
@ -65,7 +69,7 @@ chown -R proxy:proxy /etc/squid/blocked.acl
if [[ "${DISTRO}" == @(centos|oracle7) ]]; then
yum install -y memcached cyrus-sasl iproute
elif [[ "${DISTRO}" == @(oracle8|fedora37|fedora38|oracle9|rockylinux9|rockylinux8|almalinux9|almalinux8) ]]; then
elif [[ "${DISTRO}" == @(oracle8|fedora37|fedora38|fedora39|oracle9|rockylinux9|rockylinux8|almalinux9|almalinux8) ]]; then
dnf install -y memcached cyrus-sasl iproute
elif [ "${DISTRO}" == "opensuse" ]; then
zypper install -yn memcached cyrus-sasl iproute2 libatomic1
@ -96,7 +100,7 @@ chmod +x /etc/squid/kasm_squid_adapter
# Install Cert utilities
if [[ "${DISTRO}" == @(centos|oracle7) ]]; then
yum install -y nss-tools
elif [[ "${DISTRO}" == @(oracle8|fedora37|fedora38|oracle9|rockylinux9|rockylinux8|almalinux9|almalinux8) ]]; then
elif [[ "${DISTRO}" == @(oracle8|fedora37|fedora38|fedora39|oracle9|rockylinux9|rockylinux8|almalinux9|almalinux8) ]]; then
dnf install -y nss-tools
elif [ "${DISTRO}" == "opensuse" ]; then
zypper install -yn mozilla-nss-tools

View File

@ -15,7 +15,7 @@ if [[ "${DISTRO}" == @(ubuntu|debian|parrotos5|kali) ]] ; then
systemd \
systemd-sysv \
udev
elif [[ "${DISTRO}" == @(oracle8|oracle9|rockylinux9|rockylinux8|almalinux9|almalinux8|fedora37|fedora38) ]]; then
elif [[ "${DISTRO}" == @(oracle8|oracle9|rockylinux9|rockylinux8|almalinux9|almalinux8|fedora37|fedora38|fedora39) ]]; then
# Install deps
dnf install -y \
dbus \

View File

@ -4,7 +4,7 @@ set -e
echo "Install some common tools for further installation"
if [[ "${DISTRO}" == @(centos|oracle7) ]] ; then
yum install -y vim wget net-tools bzip2 ca-certificates bc
elif [[ "${DISTRO}" == @(fedora37|fedora38|oracle8|oracle9|rockylinux9|rockylinux8|almalinux8|almalinux9) ]]; then
elif [[ "${DISTRO}" == @(fedora37|fedora38|fedora39|oracle8|oracle9|rockylinux9|rockylinux8|almalinux8|almalinux9) ]]; then
dnf install -y wget net-tools bzip2 tar vim hostname procps-ng bc
elif [ "${DISTRO}" == "opensuse" ]; then
sed -i 's/download.opensuse.org/mirrorcache-us.opensuse.org/g' /etc/zypp/repos.d/*.repo

View File

@ -30,7 +30,7 @@ EOL
}
echo "Install Xfce4 UI components"
if [[ "${DISTRO}" != @(centos|oracle7|oracle8|opensuse|fedora37|fedora38|oracle9|rockylinux9|rockylinux8|almalinux8|almalinux9|alpine) ]]; then
if [[ "${DISTRO}" != @(centos|oracle7|oracle8|opensuse|fedora37|fedora38|fedora39|oracle9|rockylinux9|rockylinux8|almalinux8|almalinux9|alpine) ]]; then
apt-get update
fi
@ -152,7 +152,7 @@ elif [ "$DISTRO" = "opensuse" ]; then
xfce4-notifyd \
xfce4-terminal \
xset
elif [[ "$DISTRO" = @(fedora37|fedora38) ]]; then
elif [[ "$DISTRO" = @(fedora37|fedora38|fedora39) ]]; then
dnf group install xfce -y
dnf install -y \
gvfs \
@ -177,7 +177,7 @@ elif [ "$DISTRO" = "alpine" ]; then
rm -f /usr/share/xfce4/panel/plugins/power-manager-plugin.desktop
fi
if [[ "${DISTRO}" != @(centos|oracle7|oracle8|fedora37|fedora38|oracle9|rockylinux9|rockylinux8|almalinux8|almalinux9|alpine) ]]; then
if [[ "${DISTRO}" != @(centos|oracle7|oracle8|fedora37|fedora38|fedora39|oracle9|rockylinux9|rockylinux8|almalinux8|almalinux9|alpine) ]]; then
replace_default_xinit
if [ "${START_XFCE4}" == "1" ] ; then
replace_default_99x11_common_start