KASM-2249 Oracle and Opensuse Desktop images

This commit is contained in:
Ryan Kuba 2022-04-08 23:01:01 +00:00 committed by Justin Travis
parent 3e8f8096c5
commit 4ca78dc0eb
43 changed files with 946 additions and 35 deletions

View File

@ -4,7 +4,7 @@ services:
variables:
DOCKER_AUTH_CONFIG: ${_DOCKER_AUTH_CONFIG}
PLATFORM: "linux/amd64"
ARM_BUILDS: ",chromium,firefox,gimp,rdesktop,remmina,terminal,ubuntu-bionic-desktop,ubuntu-focal-desktop,vlc,vs-code,doom,sublime-text,tor-browser,java-dev,telegram,"
ARM_BUILDS: ",chromium,firefox,gimp,rdesktop,remmina,terminal,ubuntu-bionic-desktop,ubuntu-focal-desktop,vlc,vs-code,doom,sublime-text,tor-browser,java-dev,telegram,opensuse-15-desktop,oracle-8-desktop,"
CORE_IMAGE_TAG: "develop"
CORE_IMAGE: "core-ubuntu-focal"
USE_PRIVATE_IMAGES: 0
@ -123,6 +123,9 @@ build_non_ubuntu:
# Set base image based on kasm_image variable
- if [[ $KASM_IMAGE =~ 'centos-7-desktop' ]]; then CORE_IMAGE=core-centos-7; fi
- if [[ $KASM_IMAGE =~ 'tracelabs' ]]; then CORE_IMAGE=core-kali-rolling; fi
- if [[ $KASM_IMAGE =~ 'oracle-7-desktop' ]]; then CORE_IMAGE=core-oracle-7; fi
- if [[ $KASM_IMAGE =~ 'oracle-8-desktop' ]]; then CORE_IMAGE=core-oracle-8; fi
- if [[ $KASM_IMAGE =~ 'opensuse-15-desktop' ]]; then CORE_IMAGE=core-opensuse-15; fi
# Check for private variable to build against private core images
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
@ -136,7 +139,7 @@ build_non_ubuntu:
- aws-autoscale
parallel:
matrix:
- KASM_IMAGE: [centos-7-desktop, tracelabs]
- KASM_IMAGE: [centos-7-desktop, tracelabs, opensuse-15-desktop, oracle-7-desktop, oracle-8-desktop]
@ -246,6 +249,9 @@ build_dev_non_ubuntu:
# Set base image based on kasm_image variable
- if [[ $KASM_IMAGE =~ 'centos-7-desktop' ]]; then CORE_IMAGE=core-centos-7; fi
- if [[ $KASM_IMAGE =~ 'tracelabs' ]]; then CORE_IMAGE=core-kali-rolling; fi
- if [[ $KASM_IMAGE =~ 'oracle-7-desktop' ]]; then CORE_IMAGE=core-oracle-7; fi
- if [[ $KASM_IMAGE =~ 'oracle-8-desktop' ]]; then CORE_IMAGE=core-oracle-8; fi
- if [[ $KASM_IMAGE =~ 'opensuse-15-desktop' ]]; then CORE_IMAGE=core-opensuse-15; fi
# Check for private variable to build against private core images
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
@ -259,7 +265,7 @@ build_dev_non_ubuntu:
- aws-autoscale
parallel:
matrix:
- KASM_IMAGE: [centos-7-desktop, tracelabs]
- KASM_IMAGE: [centos-7-desktop, tracelabs, opensuse-15-desktop, oracle-7-desktop, oracle-8-desktop]
# These jobs are for the "rolling" release of the images. They should only run for scheduled jobs and should only push the rolling tags
@ -366,6 +372,9 @@ build_schedules_non_ubuntu:
# Set base image based on kasm_image variable
- if [[ $KASM_IMAGE =~ 'centos-7-desktop' ]]; then CORE_IMAGE=core-centos-7; fi
- if [[ $KASM_IMAGE =~ 'tracelabs' ]]; then CORE_IMAGE=core-kali-rolling; fi
- if [[ $KASM_IMAGE =~ 'oracle-7-desktop' ]]; then CORE_IMAGE=core-oracle-7; fi
- if [[ $KASM_IMAGE =~ 'oracle-8-desktop' ]]; then CORE_IMAGE=core-oracle-8; fi
- if [[ $KASM_IMAGE =~ 'opensuse-15-desktop' ]]; then CORE_IMAGE=core-opensuse-15; fi
# Check for private variable to build against private core images
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
@ -378,7 +387,7 @@ build_schedules_non_ubuntu:
- aws-autoscale
parallel:
matrix:
- KASM_IMAGE: [centos-7-desktop, tracelabs]
- KASM_IMAGE: [centos-7-desktop, tracelabs, opensuse-15-desktop, oracle-7-desktop, oracle-8-desktop]
update_readmes:
@ -397,4 +406,4 @@ update_readmes:
- $README_PASSWORD
parallel:
matrix:
- KASM_IMAGE: [chrome, chromium, firefox, desktop, desktop-deluxe, firefox-mobile, tor-browser, doom, edge, terminal, vmware-horizon, remmina, rdesktop, brave, discord, sublime-text, gimp, vs-code, slack, teams, only-office, zoom, signal, steam, postman, insomnia, zsnes, vlc, ubuntu-focal-desktop, maltego, centos-7-desktop, telegram, hunchly, ubuntu-focal-dind, ubuntu-focal-dind-rootless, tracelabs, java-dev ]
- KASM_IMAGE: [chrome, chromium, firefox, desktop, desktop-deluxe, firefox-mobile, tor-browser, doom, edge, terminal, vmware-horizon, remmina, rdesktop, brave, discord, sublime-text, gimp, vs-code, slack, teams, only-office, zoom, signal, steam, postman, insomnia, zsnes, vlc, ubuntu-focal-desktop, maltego, centos-7-desktop, telegram, hunchly, ubuntu-focal-dind, ubuntu-focal-dind-rootless, tracelabs, java-dev, oracle-7-desktop, oracle-8-desktop, opensuse-15-desktop ]

View File

@ -0,0 +1,94 @@
ARG BASE_TAG="develop"
ARG BASE_IMAGE="core-opensuse-15"
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
USER root
ENV DISTRO=opensuse
ENV HOME /home/kasm-default-profile
ENV STARTUPDIR /dockerstartup
WORKDIR $HOME
### Envrionment config
ENV DEBIAN_FRONTEND noninteractive
ENV KASM_RX_HOME $STARTUPDIR/kasmrx
ENV INST_SCRIPTS $STARTUPDIR/install
### Install Tools
COPY ./src/opensuse/install/tools $INST_SCRIPTS/tools/
RUN bash $INST_SCRIPTS/tools/install_tools_deluxe.sh && rm -rf $INST_SCRIPTS/tools/
# Install Utilities
COPY ./src/opensuse/install/misc $INST_SCRIPTS/misc/
RUN bash $INST_SCRIPTS/misc/install_tools.sh && rm -rf $INST_SCRIPTS/misc/
# Install Chrome
COPY ./src/ubuntu/install/chrome $INST_SCRIPTS/chrome/
RUN bash $INST_SCRIPTS/chrome/install_chrome.sh && rm -rf $INST_SCRIPTS/chrome/
# Install Firefox
COPY ./src/ubuntu/install/firefox/ $INST_SCRIPTS/firefox/
COPY ./src/ubuntu/install/firefox/firefox.desktop $HOME/Desktop/
RUN bash $INST_SCRIPTS/firefox/install_firefox.sh && rm -rf $INST_SCRIPTS/firefox/
### Install Sublime Text
COPY ./src/opensuse/install/sublime_text $INST_SCRIPTS/sublime_text/
RUN bash $INST_SCRIPTS/sublime_text/install_sublime_text.sh && rm -rf $INST_SCRIPTS/sublime_text/
### Install Visual Studio Code
COPY ./src/opensuse/install/vs_code $INST_SCRIPTS/vs_code/
RUN bash $INST_SCRIPTS/vs_code/install_vs_code.sh && rm -rf $INST_SCRIPTS/vs_code/
### Install Slack
COPY ./src/opensuse/install/slack $INST_SCRIPTS/slack/
RUN bash $INST_SCRIPTS/slack/install_slack.sh && rm -rf $INST_SCRIPTS/slack/
### Install NextCloud
COPY ./src/ubuntu/install/nextcloud $INST_SCRIPTS/nextcloud/
RUN bash $INST_SCRIPTS/nextcloud/install_nextcloud.sh && rm -rf $INST_SCRIPTS/nextcloud/
### Install Remmina
COPY ./src/ubuntu/install/remmina $INST_SCRIPTS/remmina/
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $INST_SCRIPTS/remmina/
### Install Teams
COPY ./src/opensuse/install/teams $INST_SCRIPTS/teams/
RUN bash $INST_SCRIPTS/teams/install_teams.sh && rm -rf $INST_SCRIPTS/teams/
### Install Libre Office
COPY ./src/opensuse/install/libre_office $INST_SCRIPTS/libre_office/
RUN bash $INST_SCRIPTS/libre_office/install_libre_office.sh && rm -rf $INST_SCRIPTS/libre_office/
### Install GIMP
COPY ./src/opensuse/install/gimp $INST_SCRIPTS/gimp/
RUN bash $INST_SCRIPTS/gimp/install_gimp.sh && rm -rf $INST_SCRIPTS/gimp/
### Install Zoom
COPY ./src/opensuse/install/zoom $INST_SCRIPTS/zoom/
RUN bash $INST_SCRIPTS/zoom/install_zoom.sh && rm -rf $INST_SCRIPTS/zoom/
### Install Ansible
COPY ./src/opensuse/install/ansible $INST_SCRIPTS/ansible/
RUN bash $INST_SCRIPTS/ansible/install_ansible.sh && rm -rf $INST_SCRIPTS/ansible/
### Install Terraform
COPY ./src/opensuse/install/terraform $INST_SCRIPTS/terraform/
RUN bash $INST_SCRIPTS/terraform/install_terraform.sh && rm -rf $INST_SCRIPTS/terraform/
### Install Telegram
COPY ./src/opensuse/install/telegram $INST_SCRIPTS/telegram/
RUN bash $INST_SCRIPTS/telegram/install_telegram.sh && rm -rf $INST_SCRIPTS/telegram/
#ADD ./src/common/scripts $STARTUPDIR
RUN $STARTUPDIR/set_user_permission.sh $HOME
RUN chown 1000:0 $HOME
ENV HOME /home/kasm-user
WORKDIR $HOME
RUN mkdir -p $HOME && chown -R 1000:0 $HOME
USER 1000
CMD ["--tail-log"]

View File

@ -0,0 +1,92 @@
ARG BASE_TAG="develop"
ARG BASE_IMAGE="core-oracle-7"
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
USER root
ENV DISTRO=oracle7
ENV HOME /home/kasm-default-profile
ENV STARTUPDIR /dockerstartup
WORKDIR $HOME
### Envrionment config
ENV DEBIAN_FRONTEND noninteractive
ENV KASM_RX_HOME $STARTUPDIR/kasmrx
ENV INST_SCRIPTS $STARTUPDIR/install
### Install Tools
COPY ./src/oracle/install/tools $INST_SCRIPTS/tools/
RUN bash $INST_SCRIPTS/tools/install_tools_deluxe.sh && rm -rf $INST_SCRIPTS/tools/
# Install Utilities
COPY ./src/oracle/install/misc $INST_SCRIPTS/misc/
RUN bash $INST_SCRIPTS/misc/install_tools.sh && rm -rf $INST_SCRIPTS/misc/
# Install Google Chrome
COPY ./src/ubuntu/install/chrome $INST_SCRIPTS/chrome/
RUN bash $INST_SCRIPTS/chrome/install_chrome.sh && rm -rf $INST_SCRIPTS/chrome/
# Install Firefox
COPY ./src/ubuntu/install/firefox/ $INST_SCRIPTS/firefox/
COPY ./src/ubuntu/install/firefox/firefox.desktop $HOME/Desktop/
RUN bash $INST_SCRIPTS/firefox/install_firefox.sh && rm -rf $INST_SCRIPTS/firefox/
### Install Sublime Text
COPY ./src/oracle/install/sublime_text $INST_SCRIPTS/sublime_text/
RUN bash $INST_SCRIPTS/sublime_text/install_sublime_text.sh && rm -rf $INST_SCRIPTS/sublime_text/
### Install Visual Studio Code
COPY ./src/oracle/install/vs_code $INST_SCRIPTS/vs_code/
RUN bash $INST_SCRIPTS/vs_code/install_vs_code.sh && rm -rf $INST_SCRIPTS/vs_code/
### Install Slack
COPY ./src/oracle/install/slack $INST_SCRIPTS/slack/
RUN bash $INST_SCRIPTS/slack/install_slack.sh && rm -rf $INST_SCRIPTS/slack/
### Install Remmina
COPY ./src/ubuntu/install/remmina $INST_SCRIPTS/remmina/
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $INST_SCRIPTS/remmina/
### Install Teams
COPY ./src/oracle/install/teams $INST_SCRIPTS/teams/
RUN bash $INST_SCRIPTS/teams/install_teams.sh && rm -rf $INST_SCRIPTS/teams/
### Install Only Office
COPY ./src/oracle/install/only_office $INST_SCRIPTS/only_office/
RUN bash $INST_SCRIPTS/only_office/install_only_office.sh && rm -rf $INST_SCRIPTS/only_office/
### Install GIMP
COPY ./src/oracle/install/gimp $INST_SCRIPTS/gimp/
RUN bash $INST_SCRIPTS/gimp/install_gimp.sh && rm -rf $INST_SCRIPTS/gimp/
### Install Zoom
COPY ./src/oracle/install/zoom $INST_SCRIPTS/zoom/
RUN bash $INST_SCRIPTS/zoom/install_zoom.sh && rm -rf $INST_SCRIPTS/zoom/
### Install Ansible
COPY ./src/oracle/install/ansible $INST_SCRIPTS/ansible/
RUN bash $INST_SCRIPTS/ansible/install_ansible.sh && rm -rf $INST_SCRIPTS/ansible/
### Install Terraform
COPY ./src/oracle/install/terraform $INST_SCRIPTS/terraform/
RUN bash $INST_SCRIPTS/terraform/install_terraform.sh && rm -rf $INST_SCRIPTS/terraform/
### Install Telegram
COPY ./src/oracle/install/telegram $INST_SCRIPTS/telegram/
RUN bash $INST_SCRIPTS/telegram/install_telegram.sh && rm -rf $INST_SCRIPTS/telegram/
#ADD ./src/common/scripts $STARTUPDIR
RUN $STARTUPDIR/set_user_permission.sh $HOME
RUN rm -f /etc/X11/xinit/Xclients
RUN chown 1000:0 $HOME
ENV HOME /home/kasm-user
WORKDIR $HOME
RUN mkdir -p $HOME && chown -R 1000:0 $HOME
USER 1000
CMD ["--tail-log"]

View File

@ -0,0 +1,104 @@
ARG BASE_TAG="develop"
ARG BASE_IMAGE="core-oracle-8"
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
USER root
ENV DISTRO=oracle8
ENV HOME /home/kasm-default-profile
ENV STARTUPDIR /dockerstartup
WORKDIR $HOME
### Envrionment config
ENV DEBIAN_FRONTEND noninteractive
ENV KASM_RX_HOME $STARTUPDIR/kasmrx
ENV INST_SCRIPTS $STARTUPDIR/install
### Install Tools
COPY ./src/oracle/install/tools $INST_SCRIPTS/tools/
RUN bash $INST_SCRIPTS/tools/install_tools_deluxe.sh && rm -rf $INST_SCRIPTS/tools/
# Install Utilities
COPY ./src/oracle/install/misc $INST_SCRIPTS/misc/
RUN bash $INST_SCRIPTS/misc/install_tools.sh && rm -rf $INST_SCRIPTS/misc/
# Install Chromium
COPY ./src/ubuntu/install/chromium $INST_SCRIPTS/chromium/
RUN bash $INST_SCRIPTS/chromium/install_chromium.sh && rm -rf $INST_SCRIPTS/chromium/
# Install Firefox
COPY ./src/ubuntu/install/firefox/ $INST_SCRIPTS/firefox/
COPY ./src/ubuntu/install/firefox/firefox.desktop $HOME/Desktop/
RUN bash $INST_SCRIPTS/firefox/install_firefox.sh && rm -rf $INST_SCRIPTS/firefox/
### Install Sublime Text
COPY ./src/oracle/install/sublime_text $INST_SCRIPTS/sublime_text/
RUN bash $INST_SCRIPTS/sublime_text/install_sublime_text.sh && rm -rf $INST_SCRIPTS/sublime_text/
### Install Visual Studio Code
COPY ./src/oracle/install/vs_code $INST_SCRIPTS/vs_code/
RUN bash $INST_SCRIPTS/vs_code/install_vs_code.sh && rm -rf $INST_SCRIPTS/vs_code/
### Install Slack
COPY ./src/oracle/install/slack $INST_SCRIPTS/slack/
RUN bash $INST_SCRIPTS/slack/install_slack.sh && rm -rf $INST_SCRIPTS/slack/
### Install NextCloud
COPY ./src/ubuntu/install/nextcloud $INST_SCRIPTS/nextcloud/
RUN bash $INST_SCRIPTS/nextcloud/install_nextcloud.sh && rm -rf $INST_SCRIPTS/nextcloud/
### Install Remmina
COPY ./src/ubuntu/install/remmina $INST_SCRIPTS/remmina/
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $INST_SCRIPTS/remmina/
### Install Teams
COPY ./src/oracle/install/teams $INST_SCRIPTS/teams/
RUN bash $INST_SCRIPTS/teams/install_teams.sh && rm -rf $INST_SCRIPTS/teams/
### Install Only Office
COPY ./src/oracle/install/only_office $INST_SCRIPTS/only_office/
RUN bash $INST_SCRIPTS/only_office/install_only_office.sh && rm -rf $INST_SCRIPTS/only_office/
### Install GIMP
COPY ./src/oracle/install/gimp $INST_SCRIPTS/gimp/
RUN bash $INST_SCRIPTS/gimp/install_gimp.sh && rm -rf $INST_SCRIPTS/gimp/
### Install Zoom
COPY ./src/oracle/install/zoom $INST_SCRIPTS/zoom/
RUN bash $INST_SCRIPTS/zoom/install_zoom.sh && rm -rf $INST_SCRIPTS/zoom/
### Install OBS Studio
COPY ./src/oracle/install/obs $INST_SCRIPTS/obs/
RUN bash $INST_SCRIPTS/obs/install_obs.sh && rm -rf $INST_SCRIPTS/obs/
### Install Ansible
COPY ./src/oracle/install/ansible $INST_SCRIPTS/ansible/
RUN bash $INST_SCRIPTS/ansible/install_ansible.sh && rm -rf $INST_SCRIPTS/ansible/
### Install Terraform
COPY ./src/oracle/install/terraform $INST_SCRIPTS/terraform/
RUN bash $INST_SCRIPTS/terraform/install_terraform.sh && rm -rf $INST_SCRIPTS/terraform/
### Install Telegram
COPY ./src/oracle/install/telegram $INST_SCRIPTS/telegram/
RUN bash $INST_SCRIPTS/telegram/install_telegram.sh && rm -rf $INST_SCRIPTS/telegram/
#ADD ./src/common/scripts $STARTUPDIR
RUN $STARTUPDIR/set_user_permission.sh $HOME
RUN rm -f /etc/X11/xinit/Xclients
RUN chown 1000:0 $HOME
ENV HOME /home/kasm-user
WORKDIR $HOME
RUN mkdir -p $HOME && chown -R 1000:0 $HOME
USER 1000
CMD ["--tail-log"]

View File

@ -0,0 +1,7 @@
# About This Image
This Image contains a browser-accessible openSUSE Leap 15 Desktop with various productivity and development apps installed.
![Screenshot][Image_Screenshot]
[Image_Screenshot]: https://5856039.fs1.hubspotusercontent-na1.net/hubfs/5856039/dockerhub/opensuse-15-desktop.png "Image Screenshot"

View File

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

View File

@ -0,0 +1,7 @@
# About This Image
This Image contains a browser-accessible Oracle Linux 7 Desktop with various productivity and development apps installed.
![Screenshot][Image_Screenshot]
[Image_Screenshot]: https://5856039.fs1.hubspotusercontent-na1.net/hubfs/5856039/dockerhub/oracle-7-desktop.png "Image Screenshot"

View File

@ -0,0 +1 @@
Oracle Linux 7 desktop for Kasm Workspaces

View File

@ -0,0 +1,7 @@
# About This Image
This Image contains a browser-accessible Oracle Linux 8 Desktop with various productivity and development apps installed.
![Screenshot][Image_Screenshot]
[Image_Screenshot]: https://5856039.fs1.hubspotusercontent-na1.net/hubfs/5856039/dockerhub/oracle-8-desktop.png "Image Screenshot"

View File

@ -0,0 +1 @@
Oracle Linux 8 desktop for Kasm Workspaces

View File

@ -0,0 +1,5 @@
#!/usr/bin/env bash
set -ex
zypper install -yn ansible
zypper clean --all

View File

@ -0,0 +1,5 @@
#!/usr/bin/env bash
zypper install -yn gimp
zypper clean --all
cp /usr/share/applications/gimp.desktop $HOME/Desktop/
chmod +x $HOME/Desktop/gimp.desktop

View File

@ -0,0 +1,15 @@
#!/usr/bin/env bash
set -ex
zypper install -yn \
libreoffice \
libreoffice-base \
libreoffice-calc \
libreoffice-draw \
libreoffice-impress \
libreoffice-math \
libreoffice-writer
zypper clean --all
cp /usr/share/applications/libreoffice-startcenter.desktop $HOME/Desktop/
chmod +x $HOME/Desktop/libreoffice-startcenter.desktop
chown 1000:1000 $HOME/Desktop/libreoffice-startcenter.desktop

View File

@ -0,0 +1,5 @@
#!/usr/bin/env bash
set -ex
zypper install -yn nano zip wget xdotool
zypper clean --all

View File

@ -0,0 +1,14 @@
#!/usr/bin/env bash
set -ex
if [ "${DISTRO}" == "oracle8" ]; then
dnf install -y obs-studio
dnf clean all
else
yum install -y obs-studio
yum clean all
fi
cp /usr/share/applications/com.obsproject.Studio.desktop $HOME/Desktop/
chmod +x $HOME/Desktop/com.obsproject.Studio.desktop

View File

@ -0,0 +1,31 @@
#!/usr/bin/env bash
set -ex
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
if [ "${ARCH}" == "arm64" ] ; then
echo "Slack for arm64 currently not supported, skipping install"
exit 0
fi
# This might prove fragile depending on how often slack changes it's
# website though they don't have a link to always getting the latest version.
# Perhaps a python script that parses the XML could be more robust
#slack_data=$(curl "https://slack.com/downloads/linux")
#version_data=$(grep -oPm1 '(?<=<span class="page-downloads__hero__meta-text__version">)[^<]+' <<< $slack_data)
#version=$(sed -n -e 's/Version //p' <<< $version_data)
#echo "Determined slack latest version to be: ${version}"
# slack latest does not run with --no-sandbox, so we have to hard code to an older version.
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
zypper install -yn libXss1 libsecret-1-0 libappindicator3-1
rpm -i --nodeps slack.rpm
zypper clean --all
rm slack.rpm
sed -i 's,/usr/bin/slack,/usr/bin/slack --no-sandbox,g' /usr/share/applications/slack.desktop
cp /usr/share/applications/slack.desktop $HOME/Desktop/
chmod +x $HOME/Desktop/slack.desktop
chown 1000:1000 $HOME/Desktop/slack.desktop

View File

@ -0,0 +1,16 @@
#!/usr/bin/env bash
set -ex
if [ "$(arch)" == "aarch64" ] ; then
echo "Sublime Text not supported on arm64 for RPM based distros, skipping installation"
exit 0
fi
rpm -v --import https://download.sublimetext.com/sublimehq-rpm-pub.gpg
zypper addrepo -g -f https://download.sublimetext.com/rpm/stable/x86_64/sublime-text.repo
zypper install -yn sublime-text
zypper clean --all
cp /usr/share/applications/sublime_text.desktop $HOME/Desktop/
chmod +x $HOME/Desktop/sublime_text.desktop
chown 1000:1000 $HOME/Desktop/sublime_text.desktop

View File

@ -0,0 +1,16 @@
#!/usr/bin/env bash
set -ex
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
if [ "${ARCH}" == "arm64" ] ; then
echo "Teams for arm64 currently not supported, skipping install"
exit 0
fi
curl -L -o teams.rpm "https://go.microsoft.com/fwlink/p/?LinkID=2112907&clcid=0x409&culture=en-us&country=US"
rpm -i teams.rpm
rm teams.rpm
sed -i "s/Exec=teams/Exec=teams --no-sandbox/g" /usr/share/applications/teams.desktop
cp /usr/share/applications/teams.desktop $HOME/Desktop/
chmod +x $HOME/Desktop/teams.desktop

View File

@ -0,0 +1,38 @@
#!/usr/bin/env bash
set -ex
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
if [ "${ARCH}" == "arm64" ] ; then
echo "Telegram for arm64 currently not supported, skipping install"
exit 0
fi
zypper install -yn xz
zypper clean --all
wget -q https://telegram.org/dl/desktop/linux -O /tmp/telegram.tgz
tar -xvf /tmp/telegram.tgz -C /opt/
rm -rf /tmp/telegram.tgz
wget -q https://kasm-static-content.s3.amazonaws.com/icons/telegram.png -O /opt/Telegram/telegram_icon.png
cat >/usr/share/applications/telegram.desktop <<EOL
[Desktop Entry]
Version=1.0
Name=Telegram Desktop
Comment=Official desktop version of Telegram messaging app
TryExec=/opt/Telegram/Telegram
Exec=/opt/Telegram/Telegram -- %u
Icon=/opt/Telegram/telegram_icon.png
Terminal=false
StartupWMClass=TelegramDesktop
Type=Application
Categories=Chat;Network;InstantMessaging;Qt;
MimeType=x-scheme-handler/tg;
Keywords=tg;chat;im;messaging;messenger;sms;tdesktop;
X-GNOME-UsesNotifications=true
EOL
chmod +x /usr/share/applications/telegram.desktop
cp /usr/share/applications/telegram.desktop $HOME/Desktop/telegram.desktop
chown 1000:1000 $HOME/Desktop/telegram.desktop

View File

@ -0,0 +1,11 @@
#!/usr/bin/env bash
set -ex
zypper install -yn \
terraform \
terraform-provider-aws \
terraform-provider-azurerm \
terraform-provider-google \
terraform-provider-kubernetes \
terraform-provider-openstack
zypper clean --all

View File

@ -0,0 +1,6 @@
#!/usr/bin/env bash
set -ex
sed -i 's/download.opensuse.org/mirrorcache-us.opensuse.org/g' /etc/zypp/repos.d/*.repo
zypper install -yn vlc git tmux
zypper clean --all

View File

@ -0,0 +1,18 @@
#!/usr/bin/env bash
set -ex
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/x64/g')
rpm --import https://packages.microsoft.com/keys/microsoft.asc
zypper addrepo https://packages.microsoft.com/yumrepos/vscode vscode
zypper install -yn code
mkdir -p /usr/share/icons/hicolor/apps
wget -O /usr/share/icons/hicolor/apps/vscode.svg https://kasm-static-content.s3.amazonaws.com/icons/vscode.svg
sed -i '/Icon=/c\Icon=/usr/share/icons/hicolor/apps/vscode.svg' /usr/share/applications/code.desktop
sed -i 's#/usr/share/code/code#/usr/share/code/code --no-sandbox##' /usr/share/applications/code.desktop
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
zypper clean --all

View File

@ -0,0 +1,17 @@
#!/usr/bin/env bash
set -ex
if [ "$(arch)" == "aarch64" ] ; then
echo "Zoom for arm64 currently not supported, skipping install"
exit 0
fi
wget -q https://zoom.us/client/latest/zoom_openSUSE_$(arch).rpm
rpm --import https://zoom.us/linux/download/pubkey
zypper install -yn zoom_openSUSE_$(arch).rpm
zypper clean --all
rm zoom_openSUSE_$(arch).rpm
sed -i 's,/usr/bin/zoom,/usr/bin/zoom --no-sandbox,g' /usr/share/applications/Zoom.desktop
cp /usr/share/applications/Zoom.desktop $HOME/Desktop/
chmod +x $HOME/Desktop/Zoom.desktop

View File

@ -0,0 +1,10 @@
#!/usr/bin/env bash
set -ex
if [ "${DISTRO}" == "oracle8" ]; then
dnf install -y ansible
dnf clean all
else
yum install -y ansible
yum clean all
fi

View File

@ -0,0 +1,11 @@
#!/usr/bin/env bash
set -ex
if [ "${DISTRO}" == "oracle8" ]; then
dnf install -y gimp
dnf clean all
else
yum install -y gimp
yum clean all
fi
cp /usr/share/applications/gimp.desktop $HOME/Desktop/
chmod +x $HOME/Desktop/gimp.desktop

View File

@ -0,0 +1,29 @@
#!/usr/bin/env bash
set -ex
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
if [ "$ARCH" == "amd64" ] ; then
echo "We only install LibreOffice on aarch64, skipping installation"
exit 0
fi
if [ "${DISTRO}" == "oracle8" ]; then
dnf install -y \
libreoffice-core \
libreoffice-writer \
libreoffice-impress \
libreoffice-calc \
libreoffice-base
dnf clean all
else
yum install -y \
libreoffice-core \
libreoffice-writer \
libreoffice-impress \
libreoffice-calc \
libreoffice-base
yum clean all
fi
cp /usr/share/applications/libreoffice-startcenter.desktop $HOME/Desktop/
chmod +x $HOME/Desktop/libreoffice-startcenter.desktop
chown 1000:1000 $HOME/Desktop/libreoffice-startcenter.desktop

View File

@ -0,0 +1,10 @@
#!/usr/bin/env bash
set -ex
if [ -f /usr/bin/dnf ]; then
dnf install -y nano zip wget xdotool
dnf clean all
else
yum install -y nano zip wget xdotool
yum clean all
fi

View File

@ -0,0 +1,20 @@
#!/usr/bin/env bash
set -ex
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
if [ "$ARCH" == "arm64" ] ; then
echo "OBS is not supported on arm64, skipping OBS installation"
exit 0
fi
if [ "${DISTRO}" == "oracle8" ]; then
dnf install -y obs-studio
dnf clean all
else
yum install -y obs-studio
yum clean all
fi
cp /usr/share/applications/com.obsproject.Studio.desktop $HOME/Desktop/
chmod +x $HOME/Desktop/com.obsproject.Studio.desktop

View File

@ -0,0 +1,24 @@
#!/usr/bin/env bash
set -ex
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
if [ "$ARCH" == "arm64" ] ; then
echo "Only Office is not supported on arm64, skipping Only Office installation"
exit 0
fi
curl -L -o only_office.rpm "https://download.onlyoffice.com/install/desktop/editors/linux/onlyoffice-desktopeditors.$(arch).rpm"
if [ "${DISTRO}" == "oracle8" ]; then
dnf localinstall -y only_office.rpm
dnf clean all
else
yum localinstall -y only_office.rpm
yum clean all
fi
rm -rf only_office.rpm
cp /usr/share/applications/onlyoffice-desktopeditors.desktop $HOME/Desktop
sed -i 's/ONLYOFFICE Desktop Editors/ONLYOFFICE/g' $HOME/Desktop/onlyoffice-desktopeditors.desktop
chmod +x $HOME/Desktop/onlyoffice-desktopeditors.desktop
# KASM-1541
sed -i 's#/usr/bin/onlyoffice-desktopeditors %U$#bash -c "source ~/.bashrc \&\& /usr/bin/onlyoffice-desktopeditors %U"#' /usr/share/applications/onlyoffice-desktopeditors.desktop

View File

@ -0,0 +1,35 @@
#!/usr/bin/env bash
set -ex
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
if [ "${ARCH}" == "arm64" ] ; then
echo "Slack for arm64 currently not supported, skipping install"
exit 0
fi
# This might prove fragile depending on how often slack changes it's
# website though they don't have a link to always getting the latest version.
# Perhaps a python script that parses the XML could be more robust
#slack_data=$(curl "https://slack.com/downloads/linux")
#version_data=$(grep -oPm1 '(?<=<span class="page-downloads__hero__meta-text__version">)[^<]+' <<< $slack_data)
#version=$(sed -n -e 's/Version //p' <<< $version_data)
#echo "Determined slack latest version to be: ${version}"
# slack latest does not run with --no-sandbox, so we have to hard code to an older version.
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" ]; then
dnf localinstall -y slack.rpm
dnf clean all
else
yum localinstall -y slack.rpm
yum clean all
fi
rm slack.rpm
sed -i 's,/usr/bin/slack,/usr/bin/slack --no-sandbox,g' /usr/share/applications/slack.desktop
cp /usr/share/applications/slack.desktop $HOME/Desktop/
chmod +x $HOME/Desktop/slack.desktop
chown 1000:1000 $HOME/Desktop/slack.desktop

View File

@ -0,0 +1,22 @@
#!/usr/bin/env bash
set -ex
if [ "$(arch)" == "aarch64" ] ; then
echo "Sublime Text not supported on arm64 for RPM based distros, skipping installation"
exit 0
fi
rpm -v --import https://download.sublimetext.com/sublimehq-rpm-pub.gpg
if [ "${DISTRO}" == "oracle8" ]; then
dnf config-manager --add-repo https://download.sublimetext.com/rpm/stable/$(arch)/sublime-text.repo
dnf install -y sublime-text
dnf clean all
else
yum-config-manager --add-repo https://download.sublimetext.com/rpm/stable/$(arch)/sublime-text.repo
yum install -y sublime-text
yum clean all
fi
cp /usr/share/applications/sublime_text.desktop $HOME/Desktop/
chmod +x $HOME/Desktop/sublime_text.desktop
chown 1000:1000 $HOME/Desktop/sublime_text.desktop

View File

@ -0,0 +1,24 @@
#!/usr/bin/env bash
set -ex
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
if [ "${ARCH}" == "arm64" ] ; then
echo "Teams for arm64 currently not supported, skipping install"
exit 0
fi
if [ "${DISTRO}" == "oracle8" ]; then
curl -L -o teams.rpm "https://go.microsoft.com/fwlink/p/?LinkID=2112907&clcid=0x409&culture=en-us&country=US"
dnf localinstall -y teams.rpm
dnf clean all
else
# el7 needs to be pinned to a previous version for libc deps
curl -L -o teams.rpm "https://packages.microsoft.com/yumrepos/ms-teams/teams-1.3.00.30857-1.x86_64.rpm"
yum localinstall -y teams.rpm
yum clean all
fi
rm teams.rpm
sed -i "s/Exec=teams/Exec=teams --no-sandbox/g" /usr/share/applications/teams.desktop
cp /usr/share/applications/teams.desktop $HOME/Desktop/
chmod +x $HOME/Desktop/teams.desktop

View File

@ -0,0 +1,40 @@
#!/usr/bin/env bash
set -ex
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
if [ "${ARCH}" == "arm64" ] ; then
echo "Telegram for arm64 currently not supported, skipping install"
exit 0
fi
if [ "${DISTRO}" == "oracle8" ]; then
dnf install -y xz
dnf clean all
fi
wget -q https://telegram.org/dl/desktop/linux -O /tmp/telegram.tgz
tar -xvf /tmp/telegram.tgz -C /opt/
rm -rf /tmp/telegram.tgz
wget -q https://kasm-static-content.s3.amazonaws.com/icons/telegram.png -O /opt/Telegram/telegram_icon.png
cat >/usr/share/applications/telegram.desktop <<EOL
[Desktop Entry]
Version=1.0
Name=Telegram Desktop
Comment=Official desktop version of Telegram messaging app
TryExec=/opt/Telegram/Telegram
Exec=/opt/Telegram/Telegram -- %u
Icon=/opt/Telegram/telegram_icon.png
Terminal=false
StartupWMClass=TelegramDesktop
Type=Application
Categories=Chat;Network;InstantMessaging;Qt;
MimeType=x-scheme-handler/tg;
Keywords=tg;chat;im;messaging;messenger;sms;tdesktop;
X-GNOME-UsesNotifications=true
EOL
chmod +x /usr/share/applications/telegram.desktop
cp /usr/share/applications/telegram.desktop $HOME/Desktop/telegram.desktop
chown 1000:1000 $HOME/Desktop/telegram.desktop

View File

@ -0,0 +1,19 @@
#!/usr/bin/env bash
set -ex
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
if [ "${ARCH}" == "arm64" ] ; then
echo "Terraform for arm64 currently not supported, skipping install"
exit 0
fi
if [ "${DISTRO}" == "oracle8" ]; then
dnf config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo
dnf install -y terraform
dnf clean all
else
yum-config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo
yum install -y terraform
yum clean all
fi

View File

@ -0,0 +1,12 @@
#!/usr/bin/env bash
set -ex
if [ -f /usr/bin/dnf ]; then
dnf install -y vlc git tmux
dnf clean all
else
yum-config-manager --enable ol7_optional_latest
yum install -y vlc git tmux
yum clean all
fi

View File

@ -0,0 +1,29 @@
#!/usr/bin/env bash
set -ex
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/x64/g')
wget -q https://update.code.visualstudio.com/latest/linux-rpm-${ARCH}/stable -O vs_code.rpm
if [ "${DISTRO}" == "oracle8" ]; then
wget -q https://update.code.visualstudio.com/latest/linux-rpm-${ARCH}/stable -O vs_code.rpm
dnf localinstall -y vs_code.rpm
else
wget -q https://packages.microsoft.com/yumrepos/vscode/code-1.65.2-1646927812.el7.x86_64.rpm -O vs_code.rpm
yum localinstall -y vs_code.rpm
fi
mkdir -p /usr/share/icons/hicolor/apps
wget -O /usr/share/icons/hicolor/apps/vscode.svg https://kasm-static-content.s3.amazonaws.com/icons/vscode.svg
sed -i '/Icon=/c\Icon=/usr/share/icons/hicolor/apps/vscode.svg' /usr/share/applications/code.desktop
sed -i 's#/usr/share/code/code#/usr/share/code/code --no-sandbox##' /usr/share/applications/code.desktop
cp /usr/share/applications/code.desktop $HOME/Desktop
chmod +x $HOME/Desktop/code.desktop
chown 1000:1000 $HOME/Desktop/code.desktop
rm vs_code.rpm
# Conveniences for python development
if [ "${DISTRO}" == "oracle8" ]; then
dnf install -y python3-setuptools python3-virtualenv
dnf clean all
else
yum install -y python3-setuptools python3-virtualenv
yum clean all
fi

View File

@ -0,0 +1,21 @@
#!/usr/bin/env bash
set -ex
if [ "$(arch)" == "aarch64" ] ; then
echo "Zoom for arm64 currently not supported, skipping install"
exit 0
fi
wget -q https://zoom.us/client/latest/zoom_$(arch).rpm
if [ "${DISTRO}" == "oracle8" ]; then
dnf localinstall -y zoom_$(arch).rpm
dnf clean all
else
yum localinstall -y zoom_$(arch).rpm
yum clean all
fi
rm zoom_$(arch).rpm
sed -i 's,/usr/bin/zoom,/usr/bin/zoom --no-sandbox,g' /usr/share/applications/Zoom.desktop
cp /usr/share/applications/Zoom.desktop $HOME/Desktop/
chmod +x $HOME/Desktop/Zoom.desktop

View File

@ -10,15 +10,27 @@ if [ "$ARCH" == "arm64" ] ; then
exit 0
fi
if [ "$DISTRO" = centos ]; then
if [[ "${DISTRO}" == @(centos|oracle7|oracle8) ]]; then
if [ ! -z "${CHROME_VERSION}" ]; then
wget https://dl.google.com/linux/chrome/rpm/stable/x86_64/google-chrome-stable-${CHROME_VERSION}.x86_64.rpm -O chrome.rpm
else
wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm -O chrome.rpm
fi
yum localinstall -y chrome.rpm
if [ "${DISTRO}" == "oracle8" ]; then
dnf localinstall -y chrome.rpm
dnf clean all
else
yum localinstall -y chrome.rpm
yum clean all
fi
rm chrome.rpm
elif [ "${DISTRO}" == "opensuse" ]; then
zypper ar http://dl.google.com/linux/chrome/rpm/stable/x86_64 Google-Chrome
wget https://dl.google.com/linux/linux_signing_key.pub
rpm --import linux_signing_key.pub
rm linux_signing_key.pub
zypper install -yn google-chrome-stable
zypper clean --all
else
apt-get update
apt-get remove -y chromium-browser-l10n chromium-codecs-ffmpeg chromium-browser
@ -46,7 +58,7 @@ EOL
chmod +x /usr/bin/google-chrome
cp /usr/bin/google-chrome /usr/bin/chrome
if [ "$DISTRO" = centos ]; then
if [[ "${DISTRO}" == @(centos|oracle7|oracle8|opensuse) ]]; then
cat >> $HOME/.config/mimeapps.list <<EOF
[Default Applications]
x-scheme-handler/http=google-chrome.desktop

View File

@ -4,9 +4,17 @@ set -ex
CHROME_ARGS="--password-store=basic --no-sandbox --ignore-gpu-blocklist --user-data-dir --no-first-run --simulate-outdated-no-au='Tue, 31 Dec 2099 23:59:59 GMT'"
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
if [ "$DISTRO" = centos ]; then
yum install -y chromium
yum clean all
if [[ "${DISTRO}" == @(centos|oracle7|oracle8) ]]; then
if [ "${DISTRO}" == "oracle8" ]; then
dnf install -y chromium
dnf clean all
else
yum install -y chromium
yum clean all
fi
elif [ "${DISTRO}" == "opensuse" ]; then
zypper install -yn chromium
zypper clean --all
else
apt-get update
apt-get install -y software-properties-common
@ -68,7 +76,7 @@ EOL
chmod +x /usr/bin/chromium-browser
cp /usr/bin/chromium-browser /usr/bin/chromium
if [ "$DISTRO" = centos ]; then
if [[ "${DISTRO}" == @(centos|oracle7|oracle8|opensuse) ]]; then
cat >> $HOME/.config/mimeapps.list <<EOF
[Default Applications]
x-scheme-handler/http=chromium-browser.desktop

View File

@ -3,13 +3,19 @@ set -xe
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
set_centos_desktop_icon() {
set_desktop_icon() {
sed -i -e 's!Icon=.\+!Icon=/usr/share/icons/hicolor/48x48/apps/firefox.png!' "$HOME/Desktop/firefox.desktop"
}
echo "Install Firefox"
if [ "$DISTRO" = centos ]; then
yum install -y firefox p11-kit
if [[ "${DISTRO}" == @(centos|oracle7|oracle8) ]]; then
if [ "${DISTRO}" == "oracle8" ]; then
dnf install -y firefox p11-kit
else
yum install -y firefox p11-kit
fi
elif [ "${DISTRO}" == "opensuse" ]; then
zypper install -yn p11-kit-tools MozillaFirefox
else
apt-mark unhold firefox
apt-get remove firefox
@ -17,8 +23,14 @@ else
apt-get install -y firefox p11-kit-modules
fi
if [ "$DISTRO" = centos ]; then
yum clean all
if [[ "${DISTRO}" == @(centos|oracle7|oracle8) ]]; then
if [ "${DISTRO}" == "oracle8" ]; then
dnf clean all
else
yum clean all
fi
elif [ "${DISTRO}" == "opensuse" ]; then
zypper clean --all
else
if [ "$ARCH" == "arm64" ] && [ "$(lsb_release -cs)" == "focal" ] ; then
echo "Firefox flash player not supported on arm64 Ubuntu Focal Skipping"
@ -31,36 +43,65 @@ else
fi
fi
if [ "$DISTRO" != centos ]; then
if [[ "${DISTRO}" != @(centos|oracle7|oracle8|opensuse) ]]; then
# Update firefox to utilize the system certificate store instead of the one that ships with firefox
rm /usr/lib/firefox/libnssckbi.so
ln /usr/lib/$(arch)-linux-gnu/pkcs11/p11-kit-trust.so /usr/lib/firefox/libnssckbi.so
fi
if [ "$DISTRO" = centos ]; then
if [[ "${DISTRO}" == @(centos|oracle7|oracle8) ]]; then
preferences_file=/usr/lib64/firefox/browser/defaults/preferences/all-redhat.js
sed -i -e '/homepage/d' "$preferences_file"
elif [ "${DISTRO}" == "opensuse" ]; then
preferences_file=/usr/lib64/firefox/browser/defaults/preferences/firefox.js
else
preferences_file=/usr/lib/firefox/browser/defaults/preferences/firefox.js
fi
# Disabling default first run URL
echo "pref(\"datareporting.policy.firstRunURL\", \"\");" >> "$preferences_file"
# Creating Default Profile
firefox -headless -CreateProfile "kasm $HOME/.mozilla/firefox/kasm"
if [[ "${DISTRO}" == @(centos|oracle7|oracle8|opensuse) ]]; then
# Creating a default profile
firefox -headless -CreateProfile "kasm $HOME/.mozilla/firefox/kasm"
# Generate a certdb to be detected on squid start
HOME=/root firefox --headless &
mkdir -p /root/.mozilla
CERTDB=$(find /root/.mozilla* -name "cert9.db")
while [ -z "${CERTDB}" ] ; do
sleep 1
echo "waiting for certdb"
CERTDB=$(find /root/.mozilla* -name "cert9.db")
done
sleep 2
kill $(pgrep firefox)
CERTDIR=$(dirname ${CERTDB})
mv ${CERTDB} $HOME/.mozilla/firefox/kasm/
rm -Rf /root/.mozilla
else
# Creating Default Profile
firefox -headless -CreateProfile "kasm $HOME/.mozilla/firefox/kasm"
fi
if [ "$DISTRO" = centos ]; then
set_centos_desktop_icon
if [[ "${DISTRO}" == @(centos|oracle7|oracle8|opensuse) ]]; then
set_desktop_icon
fi
# Starting with version 67, Firefox creates a unique profile mapping per installation which is hash generated
# based off the installation path. Because that path will be static for our deployments we can assume the hash
# and thus assign our profile to the default for the installation
if [[ "${DISTRO}" != @(centos|oracle7|oracle8|opensuse) ]]; then
cat >>$HOME/.mozilla/firefox/profiles.ini <<EOL
[Install4F96D1932A9F858E]
Default=kasm
Locked=1
EOL
elif [[ "${DISTRO}" == @(centos|oracle7|oracle8|opensuse) ]]; then
cat >>$HOME/.mozilla/firefox/profiles.ini <<EOL
[Install11457493C5A56847]
Default=kasm
Locked=1
EOL
fi
chown -R 1000:1000 $HOME/.mozilla

View File

@ -1,9 +1,17 @@
#!/usr/bin/env bash
set -ex
apt-get install -y software-properties-common
add-apt-repository -y ppa:nextcloud-devs/client
apt update
apt install -y nextcloud-client
if [ "${DISTRO}" == "oracle8" ]; then
dnf install -y nextcloud-client
dnf clean all
elif [ "${DISTRO}" == "opensuse" ]; then
zypper install -yn nextcloud-desktop
zypper clean --all
else
apt-get install -y software-properties-common
add-apt-repository -y ppa:nextcloud-devs/client
apt update
apt install -y nextcloud-client
fi
cat >$HOME/Desktop/nextcloud.desktop <<EOL
[Desktop Entry]

View File

@ -1,11 +1,24 @@
#!/usr/bin/env bash
set -ex
apt-get update
apt-get install -y software-properties-common
apt-add-repository -y ppa:remmina-ppa-team/remmina-next
apt-get update
apt-get install -y remmina remmina-plugin-rdp remmina-plugin-secret remmina-plugin-spice xdotool
if [[ "${DISTRO}" == @(centos|oracle7|oracle8) ]]; then
if [ "${DISTRO}" == "oracle8" ]; then
dnf install -y remmina remmina-plugins-rdp remmina-plugins-secret remmina-plugins-spice xdotool
dnf clean all
else
yum install -y remmina remmina-plugins-rdp remmina-plugins-secret remmina-plugins-spice xdotool
yum clean all
fi
elif [ "${DISTRO}" == "opensuse" ]; then
zypper install -yn remmina remmina-plugin-rdp remmina-plugin-secret remmina-plugin-spice xdotool
zypper clean --all
else
apt-get update
apt-get install -y software-properties-common
apt-add-repository -y ppa:remmina-ppa-team/remmina-next
apt-get update
apt-get install -y remmina remmina-plugin-rdp remmina-plugin-secret remmina-plugin-spice xdotool
fi
cp /usr/share/applications/org.remmina.Remmina.desktop $HOME/Desktop/
chmod +x $HOME/Desktop/org.remmina.Remmina.desktop
chown 1000:1000 $HOME/Desktop/org.remmina.Remmina.desktop

View File

@ -4,6 +4,9 @@ ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/x64/g')
wget -q https://update.code.visualstudio.com/latest/linux-deb-${ARCH}/stable -O vs_code.deb
dpkg -i vs_code.deb
mkdir -p /usr/share/icons/hicolor/apps
wget -O /usr/share/icons/hicolor/apps/vscode.svg https://kasm-static-content.s3.amazonaws.com/icons/vscode.svg
sed -i '/Icon=/c\Icon=/usr/share/icons/hicolor/apps/vscode.svg' /usr/share/applications/code.desktop
sed -i 's#/usr/share/code/code#/usr/share/code/code --no-sandbox##' /usr/share/applications/code.desktop
cp /usr/share/applications/code.desktop $HOME/Desktop
chmod +x $HOME/Desktop/code.desktop