KASM-8341 add and remove workspaces images

This commit is contained in:
Huan Truong 2026-04-20 13:03:32 -05:00
parent ff948d67c4
commit 23f4cbdf7a
No known key found for this signature in database
55 changed files with 102 additions and 198 deletions

View file

@ -6,7 +6,7 @@ BASE=$2
DOCKERFILE=$3
# Determine if we are using private images
if [ ${USE_PRIVATE_IMAGES} -eq 1 ]; then
if [[ ${USE_PRIVATE_IMAGES} -eq 1 ]]; then
BASE=${BASE}-private
fi

View file

@ -144,13 +144,13 @@ multiImages:
- dockerfile-kasm-obsidian
- src/ubuntu/install/obsidian/**
- src/ubuntu/install/chrome/**
- name: opensuse-15-desktop
- name: opensuse-16-desktop
runset: set-a
singleapp: false
base: core-opensuse-15
dockerfile: dockerfile-kasm-opensuse-15-desktop
base: core-opensuse-16
dockerfile: dockerfile-kasm-opensuse-16-desktop
changeFiles:
- dockerfile-kasm-opensuse-15-desktop
- dockerfile-kasm-opensuse-16-desktop
- src/ubuntu/install/thunderbird/**
- src/ubuntu/install/remmina/**
- src/ubuntu/install/nextcloud/**
@ -402,26 +402,6 @@ multiImages:
- src/ubuntu/install/cleanup/**
- src/ubuntu/install/chromium/**
- src/ubuntu/install/slack/**
- name: alpine-319-desktop
runset: set-b
singleapp: false
base: core-alpine-319
dockerfile: dockerfile-kasm-alpine-319-desktop
changeFiles:
- dockerfile-kasm-alpine-319-desktop
- src/ubuntu/install/langpacks/**
- src/ubuntu/install/cleanup/**
- src/alpine/install/**
- name: alpine-320-desktop
runset: set-a
singleapp: false
base: core-alpine-320
dockerfile: dockerfile-kasm-alpine-320-desktop
changeFiles:
- dockerfile-kasm-alpine-320-desktop
- src/ubuntu/install/langpacks/**
- src/ubuntu/install/cleanup/**
- src/alpine/install/**
- name: alpine-321-desktop
runset: set-b
singleapp: false
@ -432,6 +412,26 @@ multiImages:
- src/ubuntu/install/langpacks/**
- src/ubuntu/install/cleanup/**
- src/alpine/install/**
- name: alpine-322-desktop
runset: set-a
singleapp: false
base: core-alpine-322
dockerfile: dockerfile-kasm-alpine-322-desktop
changeFiles:
- dockerfile-kasm-alpine-322-desktop
- src/ubuntu/install/langpacks/**
- src/ubuntu/install/cleanup/**
- src/alpine/install/**
- name: alpine-323-desktop
runset: set-b
singleapp: false
base: core-alpine-323
dockerfile: dockerfile-kasm-alpine-323-desktop
changeFiles:
- dockerfile-kasm-alpine-323-desktop
- src/ubuntu/install/langpacks/**
- src/ubuntu/install/cleanup/**
- src/alpine/install/**
- name: brave
runset: set-a
singleapp: true
@ -519,13 +519,13 @@ multiImages:
- src/ubuntu/install/ansible/**
- src/ubuntu/install/chrome/**
- src/ubuntu/install/slack/**
- name: fedora-39-desktop
runset: set-b
- name: fedora-42-desktop
runset: set-a
singleapp: false
base: core-fedora-39
dockerfile: dockerfile-kasm-fedora-39-desktop
base: core-fedora-42
dockerfile: dockerfile-kasm-fedora-42-desktop
changeFiles:
- dockerfile-kasm-fedora-39-desktop
- dockerfile-kasm-fedora-42-desktop
- src/oracle/install/**
- src/ubuntu/install/thunderbird/**
- src/ubuntu/install/remmina/**
@ -533,27 +533,13 @@ multiImages:
- src/ubuntu/install/cleanup/**
- src/ubuntu/install/chromium/**
- src/ubuntu/install/slack/**
- name: fedora-40-desktop
- name: fedora-43-desktop
runset: set-a
singleapp: false
base: core-fedora-40
dockerfile: dockerfile-kasm-fedora-40-desktop
base: core-fedora-43
dockerfile: dockerfile-kasm-fedora-43-desktop
changeFiles:
- dockerfile-kasm-fedora-40-desktop
- src/oracle/install/**
- src/ubuntu/install/thunderbird/**
- src/ubuntu/install/remmina/**
- src/ubuntu/install/firefox/**
- src/ubuntu/install/cleanup/**
- src/ubuntu/install/chromium/**
- src/ubuntu/install/slack/**
- name: fedora-41-desktop
runset: set-a
singleapp: false
base: core-fedora-41
dockerfile: dockerfile-kasm-fedora-41-desktop
changeFiles:
- dockerfile-kasm-fedora-41-desktop
- dockerfile-kasm-fedora-43-desktop
- src/oracle/install/**
- src/ubuntu/install/thunderbird/**
- src/ubuntu/install/remmina/**
@ -616,13 +602,13 @@ multiImages:
- src/ubuntu/install/cleanup/**
- src/ubuntu/install/chromium/**
- src/ubuntu/install/slack/**
- name: parrotos-6-desktop
- name: parrotos-7-desktop
runset: set-a
singleapp: false
base: core-parrotos-6
dockerfile: dockerfile-kasm-parrotos-6-desktop
base: core-parrotos-7
dockerfile: dockerfile-kasm-parrotos-7-desktop
changeFiles:
- dockerfile-kasm-parrotos-6-desktop
- dockerfile-kasm-parrotos-7-desktop
- src/ubuntu/install/parrot/**
- src/ubuntu/install/firefox/**
- src/ubuntu/install/cleanup/**

View file

@ -1,10 +1,10 @@
ARG BASE_TAG="develop"
ARG BASE_IMAGE="core-alpine-319"
ARG BASE_IMAGE="core-alpine-322"
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
USER root
ENV DISTRO=alpine319
ENV DISTRO=alpine322
ENV HOME /home/kasm-default-profile
ENV STARTUPDIR /dockerstartup
WORKDIR $HOME

View file

@ -1,10 +1,10 @@
ARG BASE_TAG="develop"
ARG BASE_IMAGE="core-alpine-320"
ARG BASE_IMAGE="core-alpine-323"
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
USER root
ENV DISTRO=alpine320
ENV DISTRO=alpine323
ENV HOME /home/kasm-default-profile
ENV STARTUPDIR /dockerstartup
WORKDIR $HOME

View file

@ -1,54 +0,0 @@
ARG BASE_TAG="develop"
ARG BASE_IMAGE="core-fedora-39"
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
USER root
ENV DISTRO=fedora39
ENV HOME /home/kasm-default-profile
ENV STARTUPDIR /dockerstartup
WORKDIR $HOME
### Envrionment config
ENV SKIP_CLEAN=true \
KASM_RX_HOME=$STARTUPDIR/kasmrx \
DONT_PROMPT_WSL_INSTALL="No_Prompt_please" \
INST_DIR=$STARTUPDIR/install \
INST_SCRIPTS="/oracle/install/tools/install_tools_deluxe.sh \
/oracle/install/misc/install_tools.sh \
/ubuntu/install/chromium/install_chromium.sh \
/ubuntu/install/firefox/install_firefox.sh \
/oracle/install/sublime_text/install_sublime_text.sh \
/oracle/install/vs_code/install_vs_code.sh \
/ubuntu/install/remmina/install_remmina.sh \
/oracle/install/only_office/install_only_office.sh \
/oracle/install/gimp/install_gimp.sh \
/oracle/install/zoom/install_zoom.sh \
/oracle/install/ansible/install_ansible.sh \
/oracle/install/telegram/install_telegram.sh \
/oracle/install/terraform/install_terraform.sh \
/ubuntu/install/thunderbird/install_thunderbird.sh \
/ubuntu/install/slack/install_slack.sh \
/ubuntu/install/cleanup/cleanup.sh"
# Copy install scripts
COPY ./src/ $INST_DIR
# Run installations
RUN \
for SCRIPT in $INST_SCRIPTS; do \
bash ${INST_DIR}${SCRIPT} || exit 1; \
done && \
$STARTUPDIR/set_user_permission.sh $HOME && \
rm -f /etc/X11/xinit/Xclients && \
chown 1000:0 $HOME && \
mkdir -p /home/kasm-user && \
chown -R 1000:0 /home/kasm-user && \
rm -Rf ${INST_DIR}
# Userspace Runtime
ENV HOME /home/kasm-user
WORKDIR $HOME
USER 1000
CMD ["--tail-log"]

View file

@ -1,10 +1,10 @@
ARG BASE_TAG="develop"
ARG BASE_IMAGE="core-fedora-41"
ARG BASE_IMAGE="core-fedora-42"
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
USER root
ENV DISTRO=fedora41
ENV DISTRO=fedora42
ENV HOME /home/kasm-default-profile
ENV STARTUPDIR /dockerstartup
WORKDIR $HOME

View file

@ -1,10 +1,10 @@
ARG BASE_TAG="develop"
ARG BASE_IMAGE="core-fedora-40"
ARG BASE_IMAGE="core-fedora-43"
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
USER root
ENV DISTRO=fedora40
ENV DISTRO=fedora43
ENV HOME /home/kasm-default-profile
ENV STARTUPDIR /dockerstartup
WORKDIR $HOME

View file

@ -1,5 +1,5 @@
ARG BASE_TAG="develop"
ARG BASE_IMAGE="core-opensuse-15"
ARG BASE_IMAGE="core-opensuse-16"
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
USER root

View file

@ -1,5 +1,5 @@
ARG BASE_TAG="develop"
ARG BASE_IMAGE="core-parrotos-6"
ARG BASE_IMAGE="core-parrotos-7"
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
USER root

View file

@ -1 +0,0 @@
Alpine 3.19 desktop for Kasm Workspaces

View file

@ -1 +0,0 @@
Alpine 3.20 desktop for Kasm Workspaces

View file

@ -1,6 +1,6 @@
# About This Image
This Image contains a browser-accessible Alpine 3.19 Desktop with various productivity and development apps installed.
This Image contains a browser-accessible Alpine 3.22 Desktop with various productivity and development apps installed.
![Screenshot][Image_Screenshot]

View file

@ -0,0 +1 @@
Alpine 3.22 desktop for Kasm Workspaces

View file

@ -1,6 +1,6 @@
# About This Image
This Image contains a browser-accessible Alpine 3.20 Desktop with various productivity and development apps installed.
This Image contains a browser-accessible Alpine 3.23 Desktop with various productivity and development apps installed.
![Screenshot][Image_Screenshot]

View file

@ -0,0 +1 @@
Alpine 3.23 desktop for Kasm Workspaces

View file

@ -1 +0,0 @@
Fedora 39 desktop for Kasm Workspaces

View file

@ -1,7 +0,0 @@
# About This Image
This Image contains a browser-accessible Fedora 40 Desktop with various productivity and development apps installed.
![Screenshot][Image_Screenshot]
[Image_Screenshot]: https://info.kasmweb.com/hubfs/dockerhub/image-screenshots/fedora-37-desktop.png "Image Screenshot"

View file

@ -1 +0,0 @@
Fedora 40 desktop for Kasm Workspaces

View file

@ -1 +0,0 @@
Fedora 41 desktop for Kasm Workspaces

View file

@ -1,6 +1,6 @@
# About This Image
This Image contains a browser-accessible Fedora 41 Desktop with various productivity and development apps installed.
This Image contains a browser-accessible Fedora 42 Desktop with various productivity and development apps installed.
![Screenshot][Image_Screenshot]

View file

@ -0,0 +1 @@
Fedora 42 desktop for Kasm Workspaces

View file

@ -1,6 +1,6 @@
# About This Image
This Image contains a browser-accessible Fedora 39 Desktop with various productivity and development apps installed.
This Image contains a browser-accessible Fedora 43 Desktop with various productivity and development apps installed.
![Screenshot][Image_Screenshot]

View file

@ -0,0 +1 @@
Fedora 43 desktop for Kasm Workspaces

View file

@ -1 +0,0 @@
openSUSE Leap 15 desktop for Kasm Workspaces

View file

@ -1,6 +1,6 @@
# About This Image
This Image contains a browser-accessible openSUSE Leap 15 Desktop with various productivity and development apps installed.
This Image contains a browser-accessible openSUSE Leap 16 Desktop with various productivity and development apps installed.
![Screenshot][Image_Screenshot]

View file

@ -0,0 +1 @@
openSUSE Leap 16 desktop for Kasm Workspaces

View file

@ -1,9 +0,0 @@
# Live Demo
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://info.kasmweb.com/hubfs/dockerhub/GIFs/ubuntu-jammy-desktop.gif" width="640" height="360"></a>
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank">Live Demo</a>.
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/UbuntuJammyDesktop.png" width="300" height="104"></a>
&lowast;*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*

View file

@ -1 +0,0 @@
Parrot OS 6 desktop for Kasm Workspaces

View file

@ -1,6 +1,6 @@
# About This Image
This Image contains a browser-accessible Parrot OS 6 Desktop with various productivity and development apps installed.
This Image contains a browser-accessible Parrot OS 7 Desktop with various productivity and development apps installed.
![Screenshot][Image_Screenshot]

View file

@ -0,0 +1 @@
Parrot OS 7 desktop for Kasm Workspaces

View file

@ -1,7 +1,7 @@
#!/usr/bin/env bash
set -ex
apk add --no-cach \
apk add --no-cache \
blender
# Desktop icon

View file

@ -1,10 +1,7 @@
#!/usr/bin/env bash
set -ex
if grep -q v3.19 /etc/os-release || grep -q v3.20 /etc/os-release || grep -q v3.21 /etc/os-release; then
if grep -q v3.23 /etc/os-release || grep -q v3.22 /etc/os-release || grep -q v3.21 /etc/os-release; then
apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing/ \
opentofu
else
apk add --no-cache \
terraform
fi

View file

@ -13,8 +13,6 @@ cp /usr/share/applications/code.desktop $HOME/Desktop
chmod +x $HOME/Desktop/code.desktop
chown 1000:1000 $HOME/Desktop/code.desktop
# Conveniences for python development
zypper install -yn python3-setuptools python3-virtualenv
if [ -z ${SKIP_CLEAN+x} ]; then
zypper clean --all
fi

View file

@ -1,7 +1,7 @@
#!/usr/bin/env bash
set -ex
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora42|fedora43) ]]; then
dnf install -y ansible
if [ -z ${SKIP_CLEAN+x} ]; then
dnf clean all

View file

@ -1,6 +1,6 @@
#!/usr/bin/env bash
set -ex
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora42|fedora43) ]]; then
dnf install -y gimp
if [ -z ${SKIP_CLEAN+x} ]; then
dnf clean all

View file

@ -7,7 +7,7 @@ if [ "$ARCH" == "amd64" ] ; then
exit 0
fi
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora42|fedora43) ]]; then
dnf install -y \
libreoffice-core \
libreoffice-writer \

View file

@ -7,12 +7,12 @@ if [ "$ARCH" == "arm64" ] ; then
exit 0
fi
curl -L -o only_office.rpm "https://github.com/ONLYOFFICE/DesktopEditors/releases/latest/download/onlyoffice-desktopeditors.$(arch).rpm"
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora39|fedora40) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8) ]]; then
dnf localinstall -y only_office.rpm
if [ -z ${SKIP_CLEAN+x} ]; then
dnf clean all
fi
elif [[ "${DISTRO}" == "fedora41" ]]; then
elif [[ "${DISTRO}" == @(fedora42|fedora43) ]]; then
dnf install -y only_office.rpm
if [ -z ${SKIP_CLEAN+x} ]; then
dnf clean all

View file

@ -21,7 +21,7 @@ version=4.12.2
# This path may not be accurate once arm64 support arrives. Specifically I don't know if it will still be under x64
wget -q https://downloads.slack-edge.com/releases/linux/${version}/prod/x64/slack-${version}-0.1.fc21.x86_64.rpm -O slack.rpm
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora42|fedora43) ]]; then
dnf localinstall -y slack.rpm
if [ -z ${SKIP_CLEAN+x} ]; then
dnf clean all

View file

@ -30,8 +30,8 @@ fi
rpm -v --import https://download.sublimetext.com/sublimehq-rpm-pub.gpg
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == "fedora41" ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora42|fedora43) ]]; then
if [[ "${DISTRO}" == @(fedora42|fedora43) ]]; then
dnf config-manager addrepo --from-repofile=https://download.sublimetext.com/rpm/stable/$(arch)/sublime-text.repo
else
dnf config-manager --add-repo https://download.sublimetext.com/rpm/stable/$(arch)/sublime-text.repo

View file

@ -14,17 +14,14 @@ if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|
if [ -z ${SKIP_CLEAN+x} ]; then
dnf clean all
fi
elif [[ "${DISTRO}" == @(fedora40|fedora41) ]]; then
elif [[ "${DISTRO}" == @(fedora42|fedora43) ]]; then
dnf config-manager --add-repo https://rpm.releases.hashicorp.com/fedora/hashicorp.repo
# use fedora40 hashicorp packages for terraform
sed -i 's/$releasever/40/g' /etc/yum.repos.d/hashicorp.repo
# sed -i 's/$releasever/40/g' /etc/yum.repos.d/hashicorp.repo
dnf install -y terraform
if [ -z ${SKIP_CLEAN+x} ]; then
dnf clean all
fi
elif [[ "${DISTRO}" == @(fedora38|fedora39) ]]; then
# skip installation for fedora38 and fedora39
echo "Skipping terraform install for ${DISTRO}, as it is not officially supported by HashiCorp."
else
yum-config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo
yum install -y terraform

View file

@ -9,9 +9,9 @@ if [[ "${ARCH}" == "arm64" && "${DISTRO}" == @(oracle8|rockylinux8|almalinux8) ]
fi
wget -q https://update.code.visualstudio.com/latest/linux-rpm-${ARCH}/stable -O vs_code.rpm
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora42|fedora43) ]]; then
wget -q https://update.code.visualstudio.com/latest/linux-rpm-${ARCH}/stable -O vs_code.rpm
if [[ "${DISTRO}" == "fedora41" ]]; then
if [[ "${DISTRO}" == @(fedora42|fedora43) ]]; then
dnf install -y vs_code.rpm
else
dnf localinstall -y vs_code.rpm
@ -30,7 +30,7 @@ chown 1000:1000 $HOME/Desktop/code.desktop
rm vs_code.rpm
# Conveniences for python development
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora42|fedora43) ]]; then
dnf install -y python3-setuptools python3-virtualenv
if [ -z ${SKIP_CLEAN+x} ]; then
dnf clean all

View file

@ -8,12 +8,12 @@ fi
wget -q https://zoom.us/client/latest/zoom_$(arch).rpm
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora39|fedora40) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8) ]]; then
dnf localinstall -y zoom_$(arch).rpm
if [ -z ${SKIP_CLEAN+x} ]; then
dnf clean all
fi
elif [[ "${DISTRO}" == "fedora41" ]]; then
elif [[ "${DISTRO}" == @(fedora42|fedora43) ]]; then
dnf install -y zoom_$(arch).rpm
if [ -z ${SKIP_CLEAN+x} ]; then
dnf clean all

View file

@ -9,7 +9,7 @@ if [[ "${DISTRO}" == @(debian|opensuse|ubuntu) ]] && [ ${ARCH} = 'amd64' ] && [
exit 0
fi
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora42|fedora43) ]]; then
dnf install -y chromium
if [ -z ${SKIP_CLEAN+x} ]; then
dnf clean all
@ -110,7 +110,7 @@ if [ "${DISTRO}" != "opensuse" ] && ! grep -q "ID=debian" /etc/os-release && ! g
cp /usr/bin/chromium-browser /usr/bin/chromium
fi
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|opensuse|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|opensuse|fedora42|fedora43) ]]; then
cat >> $HOME/.config/mimeapps.list <<EOF
[Default Applications]
x-scheme-handler/http=${REAL_BIN}.desktop

View file

@ -2,11 +2,11 @@
set -ex
# Distro package cleanup
if [[ "${DISTRO}" == @(almalinux8|almalinux9|fedora39|fedora40|fedora41|oracle8|oracle9|rhel9|rockylinux8|rockylinux9) ]]; then
if [[ "${DISTRO}" == @(almalinux8|almalinux9|fedora42|fedora43|oracle8|oracle9|rhel9|rockylinux8|rockylinux9) ]]; then
dnf clean all
elif [ "${DISTRO}" == "opensuse" ]; then
zypper clean --all
elif [[ "${DISTRO}" == @(debian|kali|parrotos6|ubuntu) ]]; then
elif [[ "${DISTRO}" == @(debian|kali|parrotos7|ubuntu) ]]; then
apt-get autoremove -y
apt-get autoclean -y
fi

View file

@ -13,7 +13,7 @@ set_desktop_icon() {
}
echo "Install Firefox"
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora42|fedora43) ]]; then
dnf install -y firefox p11-kit
elif [ "${DISTRO}" == "opensuse" ]; then
zypper install -yn p11-kit-tools MozillaFirefox
@ -78,7 +78,7 @@ for LANG in ${LANGS}; do
done
# Cleanup and install flash if supported
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora42|fedora43) ]]; then
if [ -z ${SKIP_CLEAN+x} ]; then
dnf clean all
fi
@ -105,7 +105,7 @@ else
fi
fi
if [[ "${DISTRO}" != @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|opensuse|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" != @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|opensuse|fedora42|fedora43) ]]; then
# Update firefox to utilize the system certificate store instead of the one that ships with firefox
if grep -q "ID=debian" /etc/os-release || grep -q "ID=kali" /etc/os-release || grep -q "ID=parrot" /etc/os-release && [ "${ARCH}" == "arm64" ]; then
rm -f /usr/lib/firefox-esr/libnssckbi.so
@ -119,8 +119,8 @@ if [[ "${DISTRO}" != @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|
fi
fi
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == @(fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora42|fedora43) ]]; then
if [[ "${DISTRO}" == @(fedora42|fedora43) ]]; then
preferences_file=/usr/lib64/firefox/browser/defaults/preferences/firefox-redhat-default-prefs.js
else
preferences_file=/usr/lib64/firefox/browser/defaults/preferences/all-redhat.js
@ -141,7 +141,7 @@ else
fi
# Disabling default first run URL for Debian based images
if [[ "${DISTRO}" != @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|opensuse|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" != @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|opensuse|fedora42|fedora43) ]]; then
cat >"$preferences_file" <<EOF
pref("datareporting.policy.firstRunURL", "");
pref("datareporting.policy.dataSubmissionEnabled", false);
@ -163,7 +163,7 @@ fi
FIREFOX_PROFILE_PATH="$FIREFOX_PROFILE_BASE/kasm"
FIREFOX_PROFILES_INI="$FIREFOX_PROFILE_BASE/profiles.ini"
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|opensuse|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|opensuse|fedora42|fedora43) ]]; then
# Creating a default profile
chown -R root:root $HOME
firefox -headless -CreateProfile "kasm $FIREFOX_PROFILE_PATH"
@ -204,7 +204,7 @@ if [[ ${KASM_SVC_SMARTCARD:-1} == 1 ]] && [ -f "$HOME/.pki/nssdb/pkcs11.txt" ];
chown 1000:1000 "$FIREFOX_PROFILE_PATH/pkcs11.txt"
fi
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|opensuse|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|opensuse|fedora42|fedora43) ]]; then
set_desktop_icon
fi
@ -231,13 +231,13 @@ EOL
Locked=1
EOL
fi
elif [[ "${DISTRO}" != @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|opensuse|fedora39|fedora40|fedora41) ]]; then
elif [[ "${DISTRO}" != @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|opensuse|fedora42|fedora43) ]]; then
cat >>$FIREFOX_PROFILES_INI <<EOL
[Install4F96D1932A9F858E]
Default=kasm
Locked=1
EOL
elif [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|opensuse|fedora39|fedora40|fedora41) ]]; then
elif [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|opensuse|fedora42|fedora43) ]]; then
cat >>$FIREFOX_PROFILES_INI <<EOL
[Install11457493C5A56847]
Default=kasm
@ -246,7 +246,7 @@ EOL
fi
# Desktop Icon FIxes
if [[ "${DISTRO}" == @(rockylinux9|oracle9|rhel9|almalinux9|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == @(rockylinux9|oracle9|rhel9|almalinux9|fedora42|fedora43) ]]; then
sed -i 's#Icon=/usr/lib/firefox#Icon=/usr/lib64/firefox#g' $HOME/Desktop/firefox.desktop
fi

View file

@ -1,13 +1,13 @@
#!/usr/bin/env bash
set -ex
if [[ "${DISTRO}" == @(oracle8|oracle9|rhel9|rockylinux9|rockylinux8|almalinux9|almalinux8|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == @(oracle8|oracle9|rhel9|rockylinux9|rockylinux8|almalinux9|almalinux8|fedora42|fedora43) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux8|almalinux8) ]]; then
dnf install -y remmina remmina-plugins-rdp remmina-plugins-secret remmina-plugins-spice xdotool
if [ -z ${SKIP_CLEAN+x} ]; then
dnf clean all
fi
elif [[ "${DISTRO}" == @(rockylinux9|oracle9|rhel9|almalinux9|fedora39|fedora40|fedora41) ]]; then
elif [[ "${DISTRO}" == @(rockylinux9|oracle9|rhel9|almalinux9|fedora42|fedora43) ]]; then
dnf install -y remmina remmina-plugins-rdp remmina-plugins-secret xdotool
if [ -z ${SKIP_CLEAN+x} ]; then
dnf clean all

View file

@ -12,16 +12,16 @@ version=$(curl -q https://slack.com/downloads/linux | grep page-downloads__hero_
echo Detected slack version $version
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora39|fedora40|fedora41|opensuse) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora42|fedora43|opensuse) ]]; then
wget -q https://downloads.slack-edge.com/desktop-releases/linux/x64/${version}/slack-${version}-0.1.el8.x86_64.rpm
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora39|fedora40) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8) ]]; then
dnf localinstall -y slack-${version}-0.1.el8.x86_64.rpm
if [ -z ${SKIP_CLEAN+x} ]; then
dnf clean all
fi
elif [[ "${DISTRO}" == "fedora41" ]]; then
elif [[ "${DISTRO}" == @(fedora42|fedora43) ]]; then
dnf install -y slack-${version}-0.1.el8.x86_64.rpm
if [ -z ${SKIP_CLEAN+x} ]; then
dnf clean all

View file

@ -2,7 +2,7 @@
set -ex
# Install
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora39|fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|rhel9|almalinux9|almalinux8|fedora42|fedora43) ]]; then
dnf install -y thunderbird
if [ -z ${SKIP_CLEAN+x} ]; then
dnf clean all
@ -41,10 +41,7 @@ Pin-Priority: 1001
fi
# Desktop icon
if [[ "${DISTRO}" == "fedora39" ]]; then
cp /usr/share/applications/mozilla-thunderbird.desktop $HOME/Desktop/
chmod +x $HOME/Desktop/mozilla-thunderbird.desktop
elif [[ "${DISTRO}" == @(fedora40|fedora41) ]]; then
if [[ "${DISTRO}" == @(fedora42|fedora43) ]]; then
cp /usr/share/applications/net.thunderbird.Thunderbird.desktop $HOME/Desktop/
chmod +x $HOME/Desktop/net.thunderbird.Thunderbird.desktop
elif [[ "${DISTRO}" == "opensuse" ]]; then

View file

@ -2,7 +2,7 @@
set -ex
# Install OpenVPN/Wireguard deps
if [[ "${DISTRO}" == @(ubuntu|kali|debian|parrotos6) ]]; then
if [[ "${DISTRO}" == @(ubuntu|kali|debian|parrotos7) ]]; then
echo "resolvconf resolvconf/linkify-resolvconf boolean false" | debconf-set-selections
apt-get update
apt-get install -y --no-install-recommends \
@ -25,7 +25,7 @@ elif [[ "${DISTRO}" == @(oracle8|oracle9|rhel9|rockylinux8|rockylinux9|almalinux
openvpn \
wireguard-tools \
jq
elif [[ "${DISTRO}" == @(fedora39|fedora40|fedora41) ]] ; then
elif [[ "${DISTRO}" == @(fedora42|fedora43) ]] ; then
dnf install -y \
openresolv \
openvpn \
@ -68,7 +68,7 @@ else
dnf config-manager --add-repo https://pkgs.tailscale.com/stable/fedora/${VERSION2}/tailscale.repo
dnf install -y tailscale
elif [[ "${ID}" == "\"opensuse-leap\"" ]]; then
zypper ar -g -r https://pkgs.tailscale.com/stable/opensuse/leap/15.5/tailscale.repo
zypper ar -g -r https://pkgs.tailscale.com/stable/opensuse/leap/16.0/tailscale.repo
zypper --gpg-auto-import-keys ref
zypper install -ny tailscale
fi