mirror of
https://github.com/kasmtech/workspaces-images.git
synced 2024-11-23 08:33:40 +01:00
KASM-5252 add kasmos desktop
This commit is contained in:
parent
086f8b7249
commit
bde09ebb23
@ -723,6 +723,26 @@ singleImages:
|
||||
- src/ubuntu/install/firefox/**
|
||||
- src/ubuntu/install/cleanup/**
|
||||
- src/ubuntu/install/chrome/**
|
||||
- name: kasmos-desktop
|
||||
singleapp: false
|
||||
base: core-kasmos
|
||||
dockerfile: dockerfile-kasmos-desktop
|
||||
changeFiles:
|
||||
- src/ubuntu/install/chrome/**
|
||||
- src/ubuntu/install/chromium/**
|
||||
- src/ubuntu/intall/only_office/**
|
||||
- src/ubuntu/install/libre_office/**
|
||||
- src/ubuntu/install/misc/**
|
||||
- src/kasmos/install/browser/**
|
||||
- src/ubuntu/install/vs_code/**
|
||||
- src/ubuntu/install/nextcloud/**
|
||||
- src/ubuntu/install/remmina/**
|
||||
- src/kasmos/install/office/**
|
||||
- src/ubuntu/install/zoom/**
|
||||
- src/ubuntu/install/thunderbird/**
|
||||
- src/ubuntu/install/slack/**
|
||||
- src/ubuntu/install/gamepad_utils/**
|
||||
- src/ubuntu/install/cleanup/**
|
||||
- name: postman
|
||||
singleapp: true
|
||||
base: core-ubuntu-focal
|
||||
|
52
dockerfile-kasmos-desktop
Normal file
52
dockerfile-kasmos-desktop
Normal file
@ -0,0 +1,52 @@
|
||||
ARG BASE_TAG="develop"
|
||||
ARG BASE_IMAGE="core-kasmos"
|
||||
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
|
||||
|
||||
USER root
|
||||
|
||||
ENV HOME /home/kasm-default-profile
|
||||
ENV STARTUPDIR /dockerstartup
|
||||
WORKDIR $HOME
|
||||
|
||||
### Envrionment config
|
||||
ENV DEBIAN_FRONTEND=noninteractive \
|
||||
SKIP_CLEAN=true \
|
||||
KASM_RX_HOME=$STARTUPDIR/kasmrx \
|
||||
DONT_PROMPT_WSL_INSTALL="No_Prompt_please" \
|
||||
INST_DIR=$STARTUPDIR/install \
|
||||
INST_SCRIPTS="/ubuntu/install/misc/install_tools.sh \
|
||||
/kasmos/install/browser/install_browser.sh \
|
||||
/ubuntu/install/vs_code/install_vs_code.sh \
|
||||
/ubuntu/install/remmina/install_remmina.sh \
|
||||
/kasmos/install/office/install_office_app.sh \
|
||||
/ubuntu/install/zoom/install_zoom.sh \
|
||||
/ubuntu/install/thunderbird/install_thunderbird.sh \
|
||||
/ubuntu/install/slack/install_slack.sh \
|
||||
/ubuntu/install/gamepad_utils/install_gamepad_utils.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}
|
||||
|
||||
# Remove desktop shortcuts
|
||||
RUN rm $HOME/Desktop/*.desktop \
|
||||
&& sed -i 's#inode/directory;##g' /usr/share/applications/code.desktop
|
||||
|
||||
# Userspace Runtime
|
||||
ENV HOME /home/kasm-user
|
||||
WORKDIR $HOME
|
||||
USER 1000
|
||||
|
||||
CMD ["--tail-log"]
|
16
src/kasmos/install/browser/install_browser.sh
Normal file
16
src/kasmos/install/browser/install_browser.sh
Normal file
@ -0,0 +1,16 @@
|
||||
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
|
||||
if [ "$ARCH" == "amd64" ] ; then
|
||||
bash ${INST_DIR}/ubuntu/install/chrome/install_chrome.sh
|
||||
|
||||
# Remove default app launchers
|
||||
rm -f $HOME/Desktop/google-chrome.desktop
|
||||
rm -f /usr/share/applications/browser.desktop
|
||||
mv /usr/share/applications/google-chrome.desktop /usr/share/applications/browser.desktop
|
||||
else
|
||||
bash ${INST_DIR}/ubuntu/install/chromium/install_chromium.sh
|
||||
|
||||
rm -f $HOME/Desktop/chromium.desktop
|
||||
rm -f /usr/share/applications/browser.desktop
|
||||
mv /usr/share/applications/chromium.desktop /usr/share/applications/browser.desktop
|
||||
|
||||
fi
|
13
src/kasmos/install/office/install_office_app.sh
Normal file
13
src/kasmos/install/office/install_office_app.sh
Normal file
@ -0,0 +1,13 @@
|
||||
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
|
||||
if [ "$ARCH" == "amd64" ] ; then
|
||||
bash ${INST_DIR}/ubuntu/install/only_office/install_only_office.sh
|
||||
|
||||
# Remove default app launchers
|
||||
rm -f $HOME/Desktop/onlyoffice-desktopeditors.desktop
|
||||
rm -f /usr/share/applications/onlyoffice-desktopeditors.desktop
|
||||
|
||||
cp ${INST_DIR}/kasmos/resources/onlyoffice/*.desktop /usr/share/applications/
|
||||
else
|
||||
apt update
|
||||
apt install -y libreoffice-plasma
|
||||
fi
|
21
src/kasmos/resources/onlyoffice/docs-editor.desktop
Normal file
21
src/kasmos/resources/onlyoffice/docs-editor.desktop
Normal file
@ -0,0 +1,21 @@
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Name=Docs
|
||||
GenericName=Document Editor
|
||||
Comment=Document Editor
|
||||
Type=Application
|
||||
Exec=/usr/bin/onlyoffice-desktopeditors --new=word %U
|
||||
Terminal=false
|
||||
Icon=application-msword
|
||||
Keywords=Text;Document;OpenDocument Text;Microsoft Word;Microsoft Works;odt;doc;docx;rtf;
|
||||
Categories=Office;WordProcessor;Spreadsheet;
|
||||
MimeType=application/vnd.oasis.opendocument.text;application/vnd.oasis.opendocument.text-template;application/vnd.oasis.opendocument.text-web;application/vnd.oasis.opendocument.text-master;application/vnd.sun.xml.writer;application/vnd.sun.xml.writer.template;application/vnd.sun.xml.writer.global;application/msword;application/vnd.ms-word;application/x-doc;application/rtf;text/rtf;application/vnd.wordperfect;application/wordperfect;application/vnd.openxmlformats-officedocument.wordprocessingml.document;application/vnd.ms-word.document.macroenabled.12;application/vnd.openxmlformats-officedocument.wordprocessingml.template;application/vnd.ms-word.template.macroenabled.12;application/vnd.oasis.opendocument.spreadsheet;application/vnd.oasis.opendocument.spreadsheet-template;application/vnd.sun.xml.calc;application/vnd.sun.xml.calc.template;application/msexcel;application/vnd.ms-excel;application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;application/vnd.ms-excel.sheet.macroenabled.12;application/vnd.openxmlformats-officedocument.spreadsheetml.template;application/vnd.ms-excel.template.macroenabled.12;application/vnd.ms-excel.sheet.binary.macroenabled.12;text/csv;text/spreadsheet;application/csv;application/excel;application/x-excel;application/x-msexcel;application/x-ms-excel;text/comma-separated-values;text/tab-separated-values;text/x-comma-separated-values;text/x-csv;application/vnd.oasis.opendocument.presentation;application/vnd.oasis.opendocument.presentation-template;application/vnd.sun.xml.impress;application/vnd.sun.xml.impress.template;application/mspowerpoint;application/vnd.ms-powerpoint;application/vnd.openxmlformats-officedocument.presentationml.presentation;application/vnd.ms-powerpoint.presentation.macroenabled.12;application/vnd.openxmlformats-officedocument.presentationml.template;application/vnd.ms-powerpoint.template.macroenabled.12;application/vnd.openxmlformats-officedocument.presentationml.slide;application/vnd.openxmlformats-officedocument.presentationml.slideshow;application/vnd.ms-powerpoint.slideshow.macroEnabled.12;x-scheme-handler/oo-office;text/docxf;text/oform;
|
||||
Actions=NewDocument;
|
||||
|
||||
[Desktop Action NewDocument]
|
||||
Name=New Document
|
||||
Name[de]=Neues Dokument
|
||||
Name[fr]=Nouveau document
|
||||
Name[es]=Documento nuevo
|
||||
Name[ru]=Создать документ
|
||||
Exec=/usr/bin/onlyoffice-desktopeditors --new:word
|
21
src/kasmos/resources/onlyoffice/present-editor.desktop
Normal file
21
src/kasmos/resources/onlyoffice/present-editor.desktop
Normal file
@ -0,0 +1,21 @@
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Name=Slides
|
||||
GenericName=Slide Deck Editor
|
||||
Comment=Slide Deck Editor
|
||||
Type=Application
|
||||
Exec=/usr/bin/onlyoffice-desktopeditors --new=slide %U
|
||||
Terminal=false
|
||||
Icon=application-mspowerpoint
|
||||
Keywords=Text;Document;OpenDocument Text;Microsoft Word;Microsoft Works;odt;doc;docx;rtf;
|
||||
Categories=Office;
|
||||
MimeType=application/vnd.oasis.opendocument.text;application/vnd.oasis.opendocument.text-template;application/vnd.oasis.opendocument.text-web;application/vnd.oasis.opendocument.text-master;application/vnd.sun.xml.writer;application/vnd.sun.xml.writer.template;application/vnd.sun.xml.writer.global;application/msword;application/vnd.ms-word;application/x-doc;application/rtf;text/rtf;application/vnd.wordperfect;application/wordperfect;application/vnd.openxmlformats-officedocument.wordprocessingml.document;application/vnd.ms-word.document.macroenabled.12;application/vnd.openxmlformats-officedocument.wordprocessingml.template;application/vnd.ms-word.template.macroenabled.12;application/vnd.oasis.opendocument.spreadsheet;application/vnd.oasis.opendocument.spreadsheet-template;application/vnd.sun.xml.calc;application/vnd.sun.xml.calc.template;application/msexcel;application/vnd.ms-excel;application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;application/vnd.ms-excel.sheet.macroenabled.12;application/vnd.openxmlformats-officedocument.spreadsheetml.template;application/vnd.ms-excel.template.macroenabled.12;application/vnd.ms-excel.sheet.binary.macroenabled.12;text/csv;text/spreadsheet;application/csv;application/excel;application/x-excel;application/x-msexcel;application/x-ms-excel;text/comma-separated-values;text/tab-separated-values;text/x-comma-separated-values;text/x-csv;application/vnd.oasis.opendocument.presentation;application/vnd.oasis.opendocument.presentation-template;application/vnd.sun.xml.impress;application/vnd.sun.xml.impress.template;application/mspowerpoint;application/vnd.ms-powerpoint;application/vnd.openxmlformats-officedocument.presentationml.presentation;application/vnd.ms-powerpoint.presentation.macroenabled.12;application/vnd.openxmlformats-officedocument.presentationml.template;application/vnd.ms-powerpoint.template.macroenabled.12;application/vnd.openxmlformats-officedocument.presentationml.slide;application/vnd.openxmlformats-officedocument.presentationml.slideshow;application/vnd.ms-powerpoint.slideshow.macroEnabled.12;x-scheme-handler/oo-office;text/docxf;text/oform;
|
||||
Actions=NewPresentation;
|
||||
|
||||
[Desktop Action NewPresentation]
|
||||
Name=New Presentation
|
||||
Name[de]=Neue Präsentation
|
||||
Name[fr]=Nouvelle présentation
|
||||
Name[es]=Presentación nueva
|
||||
Name[ru]=Создать презентацию
|
||||
Exec=/usr/bin/onlyoffice-desktopeditors --new:slide
|
21
src/kasmos/resources/onlyoffice/sheets-editor.desktop
Normal file
21
src/kasmos/resources/onlyoffice/sheets-editor.desktop
Normal file
@ -0,0 +1,21 @@
|
||||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Name=Sheets
|
||||
GenericName=Spreadsheet Editor
|
||||
Comment=Spreadsheet Editor
|
||||
Type=Application
|
||||
Exec=/usr/bin/onlyoffice-desktopeditors --new=cell %U
|
||||
Terminal=false
|
||||
Icon=application-x-excel
|
||||
Keywords=Text;Document;OpenDocument Text;Microsoft Word;Microsoft Works;odt;doc;docx;rtf;
|
||||
Categories=Office;WordProcessor;Spreadsheet;
|
||||
MimeType=application/vnd.oasis.opendocument.text;application/vnd.oasis.opendocument.text-template;application/vnd.oasis.opendocument.text-web;application/vnd.oasis.opendocument.text-master;application/vnd.sun.xml.writer;application/vnd.sun.xml.writer.template;application/vnd.sun.xml.writer.global;application/msword;application/vnd.ms-word;application/x-doc;application/rtf;text/rtf;application/vnd.wordperfect;application/wordperfect;application/vnd.openxmlformats-officedocument.wordprocessingml.document;application/vnd.ms-word.document.macroenabled.12;application/vnd.openxmlformats-officedocument.wordprocessingml.template;application/vnd.ms-word.template.macroenabled.12;application/vnd.oasis.opendocument.spreadsheet;application/vnd.oasis.opendocument.spreadsheet-template;application/vnd.sun.xml.calc;application/vnd.sun.xml.calc.template;application/msexcel;application/vnd.ms-excel;application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;application/vnd.ms-excel.sheet.macroenabled.12;application/vnd.openxmlformats-officedocument.spreadsheetml.template;application/vnd.ms-excel.template.macroenabled.12;application/vnd.ms-excel.sheet.binary.macroenabled.12;text/csv;text/spreadsheet;application/csv;application/excel;application/x-excel;application/x-msexcel;application/x-ms-excel;text/comma-separated-values;text/tab-separated-values;text/x-comma-separated-values;text/x-csv;application/vnd.oasis.opendocument.presentation;application/vnd.oasis.opendocument.presentation-template;application/vnd.sun.xml.impress;application/vnd.sun.xml.impress.template;application/mspowerpoint;application/vnd.ms-powerpoint;application/vnd.openxmlformats-officedocument.presentationml.presentation;application/vnd.ms-powerpoint.presentation.macroenabled.12;application/vnd.openxmlformats-officedocument.presentationml.template;application/vnd.ms-powerpoint.template.macroenabled.12;application/vnd.openxmlformats-officedocument.presentationml.slide;application/vnd.openxmlformats-officedocument.presentationml.slideshow;application/vnd.ms-powerpoint.slideshow.macroEnabled.12;x-scheme-handler/oo-office;text/docxf;text/oform;
|
||||
Actions=NewSpreadsheet;
|
||||
|
||||
[Desktop Action NewSpreadsheet]
|
||||
Name=New Spreadsheet
|
||||
Name[de]=Neues Tabellendokument
|
||||
Name[fr]=Nouveau classeur
|
||||
Name[es]=Hoja de cálculo nueva
|
||||
Name[ru]=Создать эл.таблицу
|
||||
Exec=/usr/bin/onlyoffice-desktopeditors --new:cell
|
@ -7,10 +7,10 @@ if [ "$ARCH" == "arm64" ] ; then
|
||||
echo "Only Office is not supported on arm64, skipping Only Office installation"
|
||||
exit 0
|
||||
fi
|
||||
curl -L -o only_office.deb "https://download.onlyoffice.com/install/desktop/editors/linux/onlyoffice-desktopeditors_${ARCH}.deb"
|
||||
curl -L -o /tmp/only_office.deb "https://download.onlyoffice.com/install/desktop/editors/linux/onlyoffice-desktopeditors_${ARCH}.deb"
|
||||
apt-get update
|
||||
apt-get install -y ./only_office.deb
|
||||
rm -rf only_office.deb
|
||||
apt-get install -y /tmp/only_office.deb
|
||||
rm -rf /tmp/only_office.deb
|
||||
|
||||
# Desktop icon
|
||||
cp /usr/share/applications/onlyoffice-desktopeditors.desktop $HOME/Desktop
|
||||
|
Loading…
Reference in New Issue
Block a user