mirror of
https://github.com/kasmtech/workspaces-images.git
synced 2024-11-21 23:53:10 +01:00
KASM-2249 Oracle and Opensuse Desktop images
This commit is contained in:
parent
3e8f8096c5
commit
4ca78dc0eb
@ -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 ]
|
94
dockerfile-kasm-opensuse-15-desktop
Normal file
94
dockerfile-kasm-opensuse-15-desktop
Normal 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"]
|
92
dockerfile-kasm-oracle-7-desktop
Normal file
92
dockerfile-kasm-oracle-7-desktop
Normal 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"]
|
104
dockerfile-kasm-oracle-8-desktop
Normal file
104
dockerfile-kasm-oracle-8-desktop
Normal 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"]
|
7
docs/opensuse-15-desktop/README.md
Normal file
7
docs/opensuse-15-desktop/README.md
Normal 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"
|
1
docs/opensuse-15-desktop/description.txt
Normal file
1
docs/opensuse-15-desktop/description.txt
Normal file
@ -0,0 +1 @@
|
||||
openSUSE Leap 15 desktop for Kasm Workspaces
|
7
docs/oracle-7-desktop/README.md
Normal file
7
docs/oracle-7-desktop/README.md
Normal 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"
|
1
docs/oracle-7-desktop/description.txt
Normal file
1
docs/oracle-7-desktop/description.txt
Normal file
@ -0,0 +1 @@
|
||||
Oracle Linux 7 desktop for Kasm Workspaces
|
7
docs/oracle-8-desktop/README.md
Normal file
7
docs/oracle-8-desktop/README.md
Normal 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"
|
1
docs/oracle-8-desktop/description.txt
Normal file
1
docs/oracle-8-desktop/description.txt
Normal file
@ -0,0 +1 @@
|
||||
Oracle Linux 8 desktop for Kasm Workspaces
|
5
src/opensuse/install/ansible/install_ansible.sh
Normal file
5
src/opensuse/install/ansible/install_ansible.sh
Normal file
@ -0,0 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
set -ex
|
||||
|
||||
zypper install -yn ansible
|
||||
zypper clean --all
|
5
src/opensuse/install/gimp/install_gimp.sh
Normal file
5
src/opensuse/install/gimp/install_gimp.sh
Normal 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
|
15
src/opensuse/install/libre_office/install_libre_office.sh
Normal file
15
src/opensuse/install/libre_office/install_libre_office.sh
Normal 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
|
5
src/opensuse/install/misc/install_tools.sh
Normal file
5
src/opensuse/install/misc/install_tools.sh
Normal file
@ -0,0 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
set -ex
|
||||
|
||||
zypper install -yn nano zip wget xdotool
|
||||
zypper clean --all
|
14
src/opensuse/install/obs/install_obs.sh
Normal file
14
src/opensuse/install/obs/install_obs.sh
Normal 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
|
||||
|
31
src/opensuse/install/slack/install_slack.sh
Normal file
31
src/opensuse/install/slack/install_slack.sh
Normal 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
|
16
src/opensuse/install/sublime_text/install_sublime_text.sh
Normal file
16
src/opensuse/install/sublime_text/install_sublime_text.sh
Normal 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
|
16
src/opensuse/install/teams/install_teams.sh
Normal file
16
src/opensuse/install/teams/install_teams.sh
Normal 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
|
38
src/opensuse/install/telegram/install_telegram.sh
Normal file
38
src/opensuse/install/telegram/install_telegram.sh
Normal 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
|
11
src/opensuse/install/terraform/install_terraform.sh
Normal file
11
src/opensuse/install/terraform/install_terraform.sh
Normal 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
|
6
src/opensuse/install/tools/install_tools_deluxe.sh
Normal file
6
src/opensuse/install/tools/install_tools_deluxe.sh
Normal 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
|
18
src/opensuse/install/vs_code/install_vs_code.sh
Normal file
18
src/opensuse/install/vs_code/install_vs_code.sh
Normal 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
|
17
src/opensuse/install/zoom/install_zoom.sh
Normal file
17
src/opensuse/install/zoom/install_zoom.sh
Normal 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
|
10
src/oracle/install/ansible/install_ansible.sh
Normal file
10
src/oracle/install/ansible/install_ansible.sh
Normal 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
|
11
src/oracle/install/gimp/install_gimp.sh
Normal file
11
src/oracle/install/gimp/install_gimp.sh
Normal 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
|
29
src/oracle/install/libre_office/install_libre_office.sh
Normal file
29
src/oracle/install/libre_office/install_libre_office.sh
Normal 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
|
10
src/oracle/install/misc/install_tools.sh
Normal file
10
src/oracle/install/misc/install_tools.sh
Normal 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
|
20
src/oracle/install/obs/install_obs.sh
Normal file
20
src/oracle/install/obs/install_obs.sh
Normal 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
|
||||
|
24
src/oracle/install/only_office/install_only_office.sh
Normal file
24
src/oracle/install/only_office/install_only_office.sh
Normal 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
|
35
src/oracle/install/slack/install_slack.sh
Normal file
35
src/oracle/install/slack/install_slack.sh
Normal 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
|
22
src/oracle/install/sublime_text/install_sublime_text.sh
Normal file
22
src/oracle/install/sublime_text/install_sublime_text.sh
Normal 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
|
24
src/oracle/install/teams/install_teams.sh
Normal file
24
src/oracle/install/teams/install_teams.sh
Normal 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
|
40
src/oracle/install/telegram/install_telegram.sh
Normal file
40
src/oracle/install/telegram/install_telegram.sh
Normal 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
|
19
src/oracle/install/terraform/install_terraform.sh
Normal file
19
src/oracle/install/terraform/install_terraform.sh
Normal 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
|
12
src/oracle/install/tools/install_tools_deluxe.sh
Normal file
12
src/oracle/install/tools/install_tools_deluxe.sh
Normal 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
|
||||
|
29
src/oracle/install/vs_code/install_vs_code.sh
Normal file
29
src/oracle/install/vs_code/install_vs_code.sh
Normal 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
|
21
src/oracle/install/zoom/install_zoom.sh
Normal file
21
src/oracle/install/zoom/install_zoom.sh
Normal 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
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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]
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user