mirror of
https://github.com/kasmtech/workspaces-images.git
synced 2024-11-21 15:43:09 +01:00
Merge branch 'feature/KASM-4025-new-images' into 'develop'
Resolve KASM-4025 "Feature/ new images" Closes KASM-4025 See merge request kasm-technologies/internal/workspaces-images!106
This commit is contained in:
commit
16b37015a3
433
.gitlab-ci.yml
433
.gitlab-ci.yml
@ -5,12 +5,14 @@ variables:
|
|||||||
KASM_RELEASE: "1.12.0"
|
KASM_RELEASE: "1.12.0"
|
||||||
DOCKER_AUTH_CONFIG: ${_DOCKER_AUTH_CONFIG}
|
DOCKER_AUTH_CONFIG: ${_DOCKER_AUTH_CONFIG}
|
||||||
PLATFORM: "linux/amd64"
|
PLATFORM: "linux/amd64"
|
||||||
ARM_BUILDS: ",chromium,firefox,gimp,remmina,terminal,ubuntu-bionic-desktop,ubuntu-focal-desktop,ubuntu-jammy-desktop,vlc,vs-code,doom,sublime-text,tor-browser,java-dev,telegram,opensuse-15-desktop,oracle-8-desktop,libre-office,thunderbird,audacity,deluge,filezilla,inkscape,pinta,qbittorrent,vivaldi,minetest,retroarch,super-tux-kart,"
|
ARM_BUILDS: ",chromium,firefox,gimp,remmina,terminal,ubuntu-bionic-desktop,ubuntu-focal-desktop,ubuntu-jammy-desktop,vlc,vs-code,doom,sublime-text,tor-browser,java-dev,telegram,opensuse-15-desktop,oracle-8-desktop,libre-office,thunderbird,audacity,deluge,filezilla,inkscape,pinta,qbittorrent,vivaldi,minetest,retroarch,super-tux-kart,ubuntu-focal-dind,ubuntu-focal-dind-rootless,ubuntu-jammy-dind,ubuntu-jammy-dind-rootless,almalinux-8-desktop,almalinux-9-desktop,alpine-317-desktop,debian-bullseye-desktop,fedora-37-desktop,kali-rolling-desktop,oracle-9-desktop,parrotos-5-desktop,rockylinux-8-desktop,rockylinux-9-desktop,"
|
||||||
CORE_IMAGE_TAG: "develop"
|
CORE_IMAGE_TAG: "develop"
|
||||||
CORE_IMAGE: "core-ubuntu-focal"
|
CORE_IMAGE: "core-ubuntu-focal"
|
||||||
USE_PRIVATE_IMAGES: 0
|
USE_PRIVATE_IMAGES: 0
|
||||||
|
|
||||||
# YAML level anchors
|
######################
|
||||||
|
# YAML level anchors #
|
||||||
|
######################
|
||||||
.MULTI_ARCH_BUILDS: &MULTI_ARCH_BUILDS
|
.MULTI_ARCH_BUILDS: &MULTI_ARCH_BUILDS
|
||||||
- audacity
|
- audacity
|
||||||
- chromium
|
- chromium
|
||||||
@ -38,9 +40,23 @@ variables:
|
|||||||
- vs-code
|
- vs-code
|
||||||
|
|
||||||
.MULTI_ARCH_BUILDS2: &MULTI_ARCH_BUILDS2
|
.MULTI_ARCH_BUILDS2: &MULTI_ARCH_BUILDS2
|
||||||
|
- almalinux-8-desktop
|
||||||
|
- almalinux-9-desktop
|
||||||
|
- alpine-317-desktop
|
||||||
|
- debian-bullseye-desktop
|
||||||
|
- fedora-37-desktop
|
||||||
|
- kali-rolling-desktop
|
||||||
- minetest
|
- minetest
|
||||||
|
- oracle-9-desktop
|
||||||
|
- parrotos-5-desktop
|
||||||
- retroarch
|
- retroarch
|
||||||
|
- rockylinux-8-desktop
|
||||||
|
- rockylinux-9-desktop
|
||||||
- super-tux-kart
|
- super-tux-kart
|
||||||
|
- ubuntu-focal-dind
|
||||||
|
- ubuntu-focal-dind-rootless
|
||||||
|
- ubuntu-jammy-dind
|
||||||
|
- ubuntu-jammy-dind-rootless
|
||||||
- vivaldi
|
- vivaldi
|
||||||
|
|
||||||
.SINGLE_ARCH_BUILDS: &SINGLE_ARCH_BUILDS
|
.SINGLE_ARCH_BUILDS: &SINGLE_ARCH_BUILDS
|
||||||
@ -59,17 +75,86 @@ variables:
|
|||||||
- only-office
|
- only-office
|
||||||
- oracle-7-desktop
|
- oracle-7-desktop
|
||||||
- postman
|
- postman
|
||||||
|
- remnux-focal-desktop
|
||||||
- signal
|
- signal
|
||||||
- steam
|
- steam
|
||||||
- teams
|
|
||||||
- tracelabs
|
- tracelabs
|
||||||
|
- unityhub
|
||||||
|
- zoom
|
||||||
|
- zsnes
|
||||||
|
|
||||||
|
.BROWSER_IMAGES: &BROWSER_IMAGES
|
||||||
|
- brave
|
||||||
|
- chrome
|
||||||
|
- chromium
|
||||||
|
- edge
|
||||||
|
- firefox
|
||||||
|
- tor-browser
|
||||||
|
- vivaldi
|
||||||
|
|
||||||
|
.APP_IMAGES: &APP_IMAGES
|
||||||
|
- atom
|
||||||
|
- audacity
|
||||||
|
- blender
|
||||||
|
- deluge
|
||||||
|
- discord
|
||||||
|
- filezilla
|
||||||
|
- gimp
|
||||||
|
- hunchly
|
||||||
|
- inkscape
|
||||||
|
- insomnia
|
||||||
|
- java-dev
|
||||||
|
- libre-office
|
||||||
|
- maltego
|
||||||
|
- only-office
|
||||||
|
- pinta
|
||||||
|
- postman
|
||||||
|
- qbittorrent
|
||||||
|
- remmina
|
||||||
|
- signal
|
||||||
|
- steam
|
||||||
|
- sublime-text
|
||||||
|
- telegram
|
||||||
|
- terminal
|
||||||
|
- thunderbird
|
||||||
|
- unityhub
|
||||||
|
- vlc
|
||||||
|
- vs-code
|
||||||
|
- zoom
|
||||||
|
- zsnes
|
||||||
|
|
||||||
|
.UBUNTU_IMAGES: &UBUNTU_IMAGES
|
||||||
|
- desktop
|
||||||
|
- desktop-deluxe
|
||||||
|
- remnux-focal-desktop
|
||||||
|
- ubuntu-focal-desktop
|
||||||
|
- ubuntu-jammy-desktop
|
||||||
- ubuntu-focal-dind
|
- ubuntu-focal-dind
|
||||||
- ubuntu-focal-dind-rootless
|
- ubuntu-focal-dind-rootless
|
||||||
- ubuntu-jammy-dind
|
- ubuntu-jammy-dind
|
||||||
- ubuntu-jammy-dind-rootless
|
- ubuntu-jammy-dind-rootless
|
||||||
- unityhub
|
|
||||||
- zoom
|
.NON_UBUNTU_IMAGES: &NON_UBUNTU_IMAGES
|
||||||
- zsnes
|
- almalinux-8-desktop
|
||||||
|
- almalinux-9-desktop
|
||||||
|
- alpine-317-desktop
|
||||||
|
- centos-7-desktop
|
||||||
|
- debian-bullseye-desktop
|
||||||
|
- kali-rolling-desktop
|
||||||
|
- opensuse-15-desktop
|
||||||
|
- oracle-7-desktop
|
||||||
|
- oracle-8-desktop
|
||||||
|
- oracle-9-desktop
|
||||||
|
- parrotos-5-desktop
|
||||||
|
- rockylinux-8-desktop
|
||||||
|
- rockylinux-9-desktop
|
||||||
|
- tracelabs
|
||||||
|
|
||||||
|
.GAME_IMAGES: &GAME_IMAGES
|
||||||
|
- doom
|
||||||
|
- minetest
|
||||||
|
- retroarch
|
||||||
|
- super-tux-kart
|
||||||
|
|
||||||
stages:
|
stages:
|
||||||
- readme
|
- readme
|
||||||
@ -83,7 +168,9 @@ before_script:
|
|||||||
- export SANITIZED_BRANCH="$(echo $CI_COMMIT_REF_NAME | sed -r 's#^release/##' | sed 's/\//_/g')"
|
- export SANITIZED_BRANCH="$(echo $CI_COMMIT_REF_NAME | sed -r 's#^release/##' | sed 's/\//_/g')"
|
||||||
- export SANITIZED_ROLLING_BRANCH=${SANITIZED_BRANCH}-rolling
|
- export SANITIZED_ROLLING_BRANCH=${SANITIZED_BRANCH}-rolling
|
||||||
|
|
||||||
# Jobs for the develop and release branches. They should push to the private and public repos
|
###############################################################################################
|
||||||
|
# Jobs for the develop and release branches. They should push to the private and public repos #
|
||||||
|
###############################################################################################
|
||||||
build_browser_images:
|
build_browser_images:
|
||||||
stage: build
|
stage: build
|
||||||
image: ${ORG_NAME}/docker-buildx-private:develop
|
image: ${ORG_NAME}/docker-buildx-private:develop
|
||||||
@ -100,8 +187,16 @@ build_browser_images:
|
|||||||
- ls docs/$KASM_IMAGE/description.txt
|
- ls docs/$KASM_IMAGE/description.txt
|
||||||
# Check for private variable to build against private core images
|
# Check for private variable to build against private core images
|
||||||
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
||||||
|
- >
|
||||||
- docker buildx build --push --platform $BUILD_PLATFORM -t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_BRANCH -t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_BRANCH -t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE=$CORE_IMAGE --build-arg BASE_TAG=$CORE_IMAGE_TAG -f dockerfile-kasm-$KASM_IMAGE .
|
docker buildx build --push
|
||||||
|
--platform $BUILD_PLATFORM
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH
|
||||||
|
--build-arg BASE_IMAGE=$CORE_IMAGE
|
||||||
|
--build-arg BASE_TAG=$CORE_IMAGE_TAG
|
||||||
|
-f dockerfile-kasm-$KASM_IMAGE .
|
||||||
only:
|
only:
|
||||||
- develop
|
- develop
|
||||||
- /^release\/.*$/
|
- /^release\/.*$/
|
||||||
@ -111,7 +206,7 @@ build_browser_images:
|
|||||||
- aws-autoscale
|
- aws-autoscale
|
||||||
parallel:
|
parallel:
|
||||||
matrix:
|
matrix:
|
||||||
- KASM_IMAGE: [chrome, chromium, firefox, tor-browser, edge, brave, vivaldi]
|
- KASM_IMAGE: *BROWSER_IMAGES
|
||||||
|
|
||||||
build_app_images:
|
build_app_images:
|
||||||
stage: build
|
stage: build
|
||||||
@ -129,8 +224,16 @@ build_app_images:
|
|||||||
- ls docs/$KASM_IMAGE/description.txt
|
- ls docs/$KASM_IMAGE/description.txt
|
||||||
# Check for private variable to build against private core images
|
# Check for private variable to build against private core images
|
||||||
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
||||||
|
- >
|
||||||
- docker buildx build --push --platform $BUILD_PLATFORM -t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_BRANCH -t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_BRANCH -t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE=$CORE_IMAGE --build-arg BASE_TAG=$CORE_IMAGE_TAG -f dockerfile-kasm-$KASM_IMAGE .
|
docker buildx build --push
|
||||||
|
--platform $BUILD_PLATFORM
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH
|
||||||
|
--build-arg BASE_IMAGE=$CORE_IMAGE
|
||||||
|
--build-arg BASE_TAG=$CORE_IMAGE_TAG
|
||||||
|
-f dockerfile-kasm-$KASM_IMAGE .
|
||||||
only:
|
only:
|
||||||
- develop
|
- develop
|
||||||
- /^release\/.*$/
|
- /^release\/.*$/
|
||||||
@ -140,7 +243,7 @@ build_app_images:
|
|||||||
- aws-autoscale
|
- aws-autoscale
|
||||||
parallel:
|
parallel:
|
||||||
matrix:
|
matrix:
|
||||||
- KASM_IMAGE: [sublime-text, gimp, vs-code, teams, only-office, zoom, signal, steam, postman, insomnia, zsnes, vlc, maltego, telegram, hunchly, java-dev, terminal, remmina, discord, libre-office, thunderbird, atom, audacity, deluge, filezilla, inkscape, pinta, qbittorrent, blender, unityhub]
|
- KASM_IMAGE: *APP_IMAGES
|
||||||
|
|
||||||
build_ubuntu_desktop_images:
|
build_ubuntu_desktop_images:
|
||||||
stage: build
|
stage: build
|
||||||
@ -157,12 +260,22 @@ build_ubuntu_desktop_images:
|
|||||||
- ls docs/$KASM_IMAGE/README.md
|
- ls docs/$KASM_IMAGE/README.md
|
||||||
- ls docs/$KASM_IMAGE/description.txt
|
- ls docs/$KASM_IMAGE/description.txt
|
||||||
# Check for private variable to build against private core images
|
# Check for private variable to build against private core images
|
||||||
|
- if [[ $KASM_IMAGE =~ 'remnux-focal-desktop' ]]; then CORE_IMAGE=core-remnux-focal; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-desktop' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-desktop' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-dind' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-dind' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-dind-rootless' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-dind-rootless' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
||||||
|
# Check for private variable to build against private core images
|
||||||
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
||||||
|
- >
|
||||||
- docker buildx build --push --platform $BUILD_PLATFORM -t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_BRANCH -t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_BRANCH -t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE=$CORE_IMAGE --build-arg BASE_TAG=$CORE_IMAGE_TAG -f dockerfile-kasm-$KASM_IMAGE .
|
docker buildx build --push
|
||||||
|
--platform $BUILD_PLATFORM
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH
|
||||||
|
--build-arg BASE_IMAGE=$CORE_IMAGE
|
||||||
|
--build-arg BASE_TAG=$CORE_IMAGE_TAG
|
||||||
|
-f dockerfile-kasm-$KASM_IMAGE .
|
||||||
only:
|
only:
|
||||||
- develop
|
- develop
|
||||||
- /^release\/.*$/
|
- /^release\/.*$/
|
||||||
@ -172,7 +285,7 @@ build_ubuntu_desktop_images:
|
|||||||
- aws-autoscale
|
- aws-autoscale
|
||||||
parallel:
|
parallel:
|
||||||
matrix:
|
matrix:
|
||||||
- KASM_IMAGE: [desktop, desktop-deluxe, ubuntu-focal-desktop, ubuntu-jammy-desktop, ubuntu-focal-dind, ubuntu-focal-dind-rootless, ubuntu-jammy-dind, ubuntu-jammy-dind-rootless]
|
- KASM_IMAGE: *UBUNTU_IMAGES
|
||||||
|
|
||||||
build_non_ubuntu:
|
build_non_ubuntu:
|
||||||
stage: build
|
stage: build
|
||||||
@ -189,16 +302,33 @@ build_non_ubuntu:
|
|||||||
- ls docs/$KASM_IMAGE/README.md
|
- ls docs/$KASM_IMAGE/README.md
|
||||||
- ls docs/$KASM_IMAGE/description.txt
|
- ls docs/$KASM_IMAGE/description.txt
|
||||||
# Set base image based on kasm_image variable
|
# Set base image based on kasm_image variable
|
||||||
|
- if [[ $KASM_IMAGE =~ 'almalinux-8-desktop' ]]; then CORE_IMAGE=core-almalinux-8; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'almalinux-9-desktop' ]]; then CORE_IMAGE=core-almalinux-9; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'alpine-317-desktop' ]]; then CORE_IMAGE=core-alpine-317; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'centos-7-desktop' ]]; then CORE_IMAGE=core-centos-7; fi
|
- 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 =~ 'debian-bullseye-desktop' ]]; then CORE_IMAGE=core-debian-bullseye; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'fedora-37-desktop' ]]; then CORE_IMAGE=core-fedora-37; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'kali-rolling-desktop' ]]; then CORE_IMAGE=core-kali-rolling; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'opensuse-15-desktop' ]]; then CORE_IMAGE=core-opensuse-15; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'oracle-7-desktop' ]]; then CORE_IMAGE=core-oracle-7; 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 =~ 'oracle-8-desktop' ]]; then CORE_IMAGE=core-oracle-8; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'opensuse-15-desktop' ]]; then CORE_IMAGE=core-opensuse-15; fi
|
- if [[ $KASM_IMAGE =~ 'oracle-9-desktop' ]]; then CORE_IMAGE=core-oracle-9; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-desktop' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
- if [[ $KASM_IMAGE =~ 'parrotos-5-desktop' ]]; then CORE_IMAGE=core-parrotos-5; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'rockylinux-8-desktop' ]]; then CORE_IMAGE=core-rockylinux-8; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'rockylinux-9-desktop' ]]; then CORE_IMAGE=core-rockylinux-9; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'tracelabs' ]]; then CORE_IMAGE=core-kali-rolling; fi
|
||||||
# Check for private variable to build against private core images
|
# Check for private variable to build against private core images
|
||||||
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
||||||
|
- >
|
||||||
- docker buildx build --push --platform $BUILD_PLATFORM -t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_BRANCH -t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_BRANCH -t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE=$CORE_IMAGE --build-arg BASE_TAG=$CORE_IMAGE_TAG -f dockerfile-kasm-$KASM_IMAGE .
|
docker buildx build --push
|
||||||
|
--platform $BUILD_PLATFORM
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH
|
||||||
|
--build-arg BASE_IMAGE=$CORE_IMAGE
|
||||||
|
--build-arg BASE_TAG=$CORE_IMAGE_TAG
|
||||||
|
-f dockerfile-kasm-$KASM_IMAGE .
|
||||||
only:
|
only:
|
||||||
- develop
|
- develop
|
||||||
- /^release\/.*$/
|
- /^release\/.*$/
|
||||||
@ -208,7 +338,44 @@ build_non_ubuntu:
|
|||||||
- aws-autoscale
|
- aws-autoscale
|
||||||
parallel:
|
parallel:
|
||||||
matrix:
|
matrix:
|
||||||
- KASM_IMAGE: [centos-7-desktop, tracelabs, opensuse-15-desktop, oracle-7-desktop, oracle-8-desktop]
|
- KASM_IMAGE: *NON_UBUNTU_IMAGES
|
||||||
|
|
||||||
|
build_fedora_37:
|
||||||
|
stage: build
|
||||||
|
script:
|
||||||
|
- >
|
||||||
|
docker build
|
||||||
|
-t ${ORG_NAME}/fedora-37-desktop:$(arch)-$SANITIZED_BRANCH
|
||||||
|
-f dockerfile-kasm-fedora-37-desktop .
|
||||||
|
- docker push ${ORG_NAME}/fedora-37-desktop:$(arch)-$SANITIZED_BRANCH
|
||||||
|
only:
|
||||||
|
- develop
|
||||||
|
- /^release\/.*$/
|
||||||
|
except:
|
||||||
|
- schedules
|
||||||
|
tags:
|
||||||
|
- ${TAG}
|
||||||
|
parallel:
|
||||||
|
matrix:
|
||||||
|
- TAG: [ aws-autoscale, aws-autoscale-arm64 ]
|
||||||
|
|
||||||
|
manifest_fedora_37:
|
||||||
|
stage: manifest
|
||||||
|
script:
|
||||||
|
- docker pull ${ORG_NAME}/fedora-37-desktop:x86_64-$SANITIZED_BRANCH
|
||||||
|
- docker pull ${ORG_NAME}/fedora-37-desktop:aarch64-$SANITIZED_BRANCH
|
||||||
|
- "docker manifest push --purge ${ORG_NAME}/fedora-37-desktop:$SANITIZED_BRANCH || :"
|
||||||
|
- docker manifest create ${ORG_NAME}/fedora-37-desktop:$SANITIZED_BRANCH ${ORG_NAME}/fedora-37-desktop:x86_64-$SANITIZED_BRANCH ${ORG_NAME}/fedora-37-desktop:aarch64-$SANITIZED_BRANCH
|
||||||
|
- docker manifest annotate ${ORG_NAME}/fedora-37-desktop:$SANITIZED_BRANCH ${ORG_NAME}/fedora-37-desktop:aarch64-$SANITIZED_BRANCH --os linux --arch arm64 --variant v8
|
||||||
|
- docker manifest push --purge ${ORG_NAME}/fedora-37-desktop:$SANITIZED_BRANCH
|
||||||
|
only:
|
||||||
|
- develop
|
||||||
|
- /^release\/.*$/
|
||||||
|
except:
|
||||||
|
- schedules
|
||||||
|
needs: [ build_fedora_37 ]
|
||||||
|
tags:
|
||||||
|
- aws-autoscale
|
||||||
|
|
||||||
build_games:
|
build_games:
|
||||||
stage: build
|
stage: build
|
||||||
@ -226,8 +393,16 @@ build_games:
|
|||||||
- ls docs/$KASM_IMAGE/description.txt
|
- ls docs/$KASM_IMAGE/description.txt
|
||||||
# Check for private variable to build against private core images
|
# Check for private variable to build against private core images
|
||||||
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
||||||
|
- >
|
||||||
- docker buildx build --push --platform $BUILD_PLATFORM -t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_BRANCH -t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_BRANCH -t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE=$CORE_IMAGE --build-arg BASE_TAG=$CORE_IMAGE_TAG -f dockerfile-kasm-$KASM_IMAGE .
|
docker buildx build --push
|
||||||
|
--platform $BUILD_PLATFORM
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH
|
||||||
|
--build-arg BASE_IMAGE=$CORE_IMAGE
|
||||||
|
--build-arg BASE_TAG=$CORE_IMAGE_TAG
|
||||||
|
-f dockerfile-kasm-$KASM_IMAGE .
|
||||||
only:
|
only:
|
||||||
- develop
|
- develop
|
||||||
- /^release\/.*$/
|
- /^release\/.*$/
|
||||||
@ -237,9 +412,11 @@ build_games:
|
|||||||
- aws-autoscale
|
- aws-autoscale
|
||||||
parallel:
|
parallel:
|
||||||
matrix:
|
matrix:
|
||||||
- KASM_IMAGE: [doom, minetest, retroarch, super-tux-kart]
|
- KASM_IMAGE: *GAME_IMAGES
|
||||||
|
|
||||||
# These jobs should run on the feature/bugfix branches - anything that is not the develop or release branches. It should only push images to the private repos
|
################################################################################################################################################################
|
||||||
|
# These jobs should run on the feature/bugfix branches - anything that is not the develop or release branches. It should only push images to the private repos #
|
||||||
|
################################################################################################################################################################
|
||||||
build_multi_arch_dev:
|
build_multi_arch_dev:
|
||||||
stage: build
|
stage: build
|
||||||
image: ${ORG_NAME}/docker-buildx-private:develop
|
image: ${ORG_NAME}/docker-buildx-private:develop
|
||||||
@ -248,12 +425,24 @@ build_multi_arch_dev:
|
|||||||
- ls docs/$KASM_IMAGE/README.md
|
- ls docs/$KASM_IMAGE/README.md
|
||||||
- ls docs/$KASM_IMAGE/description.txt
|
- ls docs/$KASM_IMAGE/description.txt
|
||||||
# Set core image names
|
# Set core image names
|
||||||
|
- if [[ $KASM_IMAGE =~ 'almalinux-8-desktop' ]]; then CORE_IMAGE=core-almalinux-8; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'almalinux-9-desktop' ]]; then CORE_IMAGE=core-almalinux-9; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'alpine-317-desktop' ]]; then CORE_IMAGE=core-alpine-317; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'centos-7-desktop' ]]; then CORE_IMAGE=core-centos-7; fi
|
- 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 =~ 'debian-bullseye-desktop' ]]; then CORE_IMAGE=core-debian-bullseye; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'fedora-37-desktop' ]]; then CORE_IMAGE=core-fedora-37; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'kali-rolling-desktop' ]]; then CORE_IMAGE=core-kali-rolling; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'opensuse-15-desktop' ]]; then CORE_IMAGE=core-opensuse-15; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'oracle-7-desktop' ]]; then CORE_IMAGE=core-oracle-7; 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 =~ 'oracle-8-desktop' ]]; then CORE_IMAGE=core-oracle-8; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'opensuse-15-desktop' ]]; then CORE_IMAGE=core-opensuse-15; fi
|
- if [[ $KASM_IMAGE =~ 'oracle-9-desktop' ]]; then CORE_IMAGE=core-oracle-9; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'parrotos-5-desktop' ]]; then CORE_IMAGE=core-parrotos-5; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'rockylinux-8-desktop' ]]; then CORE_IMAGE=core-rockylinux-8; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'rockylinux-9-desktop' ]]; then CORE_IMAGE=core-rockylinux-9; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'tracelabs' ]]; then CORE_IMAGE=core-kali-rolling; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-desktop' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-desktop' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-dind-rootless' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-dind' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
||||||
# Check for private variable to build against private core images
|
# Check for private variable to build against private core images
|
||||||
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
||||||
- >
|
- >
|
||||||
@ -281,12 +470,24 @@ build_multi_arch_dev2:
|
|||||||
- ls docs/$KASM_IMAGE/README.md
|
- ls docs/$KASM_IMAGE/README.md
|
||||||
- ls docs/$KASM_IMAGE/description.txt
|
- ls docs/$KASM_IMAGE/description.txt
|
||||||
# Set core image names
|
# Set core image names
|
||||||
|
- if [[ $KASM_IMAGE =~ 'almalinux-8-desktop' ]]; then CORE_IMAGE=core-almalinux-8; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'almalinux-9-desktop' ]]; then CORE_IMAGE=core-almalinux-9; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'alpine-317-desktop' ]]; then CORE_IMAGE=core-alpine-317; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'centos-7-desktop' ]]; then CORE_IMAGE=core-centos-7; fi
|
- 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 =~ 'debian-bullseye-desktop' ]]; then CORE_IMAGE=core-debian-bullseye; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'fedora-37-desktop' ]]; then CORE_IMAGE=core-fedora-37; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'kali-rolling-desktop' ]]; then CORE_IMAGE=core-kali-rolling; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'opensuse-15-desktop' ]]; then CORE_IMAGE=core-opensuse-15; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'oracle-7-desktop' ]]; then CORE_IMAGE=core-oracle-7; 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 =~ 'oracle-8-desktop' ]]; then CORE_IMAGE=core-oracle-8; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'opensuse-15-desktop' ]]; then CORE_IMAGE=core-opensuse-15; fi
|
- if [[ $KASM_IMAGE =~ 'oracle-9-desktop' ]]; then CORE_IMAGE=core-oracle-9; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'parrotos-5-desktop' ]]; then CORE_IMAGE=core-parrotos-5; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'rockylinux-8-desktop' ]]; then CORE_IMAGE=core-rockylinux-8; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'rockylinux-9-desktop' ]]; then CORE_IMAGE=core-rockylinux-9; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'tracelabs' ]]; then CORE_IMAGE=core-kali-rolling; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-desktop' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-desktop' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-dind-rootless' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-dind' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
||||||
# Check for private variable to build against private core images
|
# Check for private variable to build against private core images
|
||||||
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
||||||
- >
|
- >
|
||||||
@ -317,11 +518,7 @@ build_single_arch_dev:
|
|||||||
- if [[ $KASM_IMAGE =~ 'centos-7-desktop' ]]; then CORE_IMAGE=core-centos-7; fi
|
- 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 =~ '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-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 =~ 'remnux-focal-desktop' ]]; then CORE_IMAGE=core-remnux-focal; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'opensuse-15-desktop' ]]; then CORE_IMAGE=core-opensuse-15; fi
|
|
||||||
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-desktop' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
|
||||||
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-dind' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
|
||||||
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-dind-rootless' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
|
||||||
# Check for private variable to build against private core images
|
# Check for private variable to build against private core images
|
||||||
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
||||||
- >
|
- >
|
||||||
@ -343,7 +540,7 @@ build_single_arch_dev:
|
|||||||
test_multi_arch_dev:
|
test_multi_arch_dev:
|
||||||
stage: test
|
stage: test
|
||||||
script:
|
script:
|
||||||
- docker pull kasmweb/kasm-tester:1.12.0
|
- docker pull kasmweb/kasm-tester:1.13.0
|
||||||
- >
|
- >
|
||||||
docker run --rm --privileged
|
docker run --rm --privileged
|
||||||
-e KASM_PORT=443
|
-e KASM_PORT=443
|
||||||
@ -360,7 +557,7 @@ test_multi_arch_dev:
|
|||||||
-e S3_BUCKET=kasm-ci
|
-e S3_BUCKET=kasm-ci
|
||||||
-e COMMIT=${CI_COMMIT_SHA}
|
-e COMMIT=${CI_COMMIT_SHA}
|
||||||
-e REPO=workspaces-images
|
-e REPO=workspaces-images
|
||||||
kasmweb/kasm-tester:1.12.0
|
kasmweb/kasm-tester:1.13.0
|
||||||
except:
|
except:
|
||||||
- develop
|
- develop
|
||||||
- /^release\/.*$/
|
- /^release\/.*$/
|
||||||
@ -375,7 +572,7 @@ test_multi_arch_dev:
|
|||||||
test_multi_arch_dev2:
|
test_multi_arch_dev2:
|
||||||
stage: test
|
stage: test
|
||||||
script:
|
script:
|
||||||
- docker pull kasmweb/kasm-tester:1.12.0
|
- docker pull kasmweb/kasm-tester:1.13.0
|
||||||
- >
|
- >
|
||||||
docker run --rm --privileged
|
docker run --rm --privileged
|
||||||
-e KASM_PORT=443
|
-e KASM_PORT=443
|
||||||
@ -392,7 +589,7 @@ test_multi_arch_dev2:
|
|||||||
-e S3_BUCKET=kasm-ci
|
-e S3_BUCKET=kasm-ci
|
||||||
-e COMMIT=${CI_COMMIT_SHA}
|
-e COMMIT=${CI_COMMIT_SHA}
|
||||||
-e REPO=workspaces-images
|
-e REPO=workspaces-images
|
||||||
kasmweb/kasm-tester:1.12.0
|
kasmweb/kasm-tester:1.13.0
|
||||||
except:
|
except:
|
||||||
- develop
|
- develop
|
||||||
- /^release\/.*$/
|
- /^release\/.*$/
|
||||||
@ -407,7 +604,7 @@ test_multi_arch_dev2:
|
|||||||
test_single_arch_dev:
|
test_single_arch_dev:
|
||||||
stage: test
|
stage: test
|
||||||
script:
|
script:
|
||||||
- docker pull kasmweb/kasm-tester:1.12.0
|
- docker pull kasmweb/kasm-tester:1.13.0
|
||||||
- >
|
- >
|
||||||
docker run --rm --privileged
|
docker run --rm --privileged
|
||||||
-e KASM_PORT=443
|
-e KASM_PORT=443
|
||||||
@ -424,7 +621,7 @@ test_single_arch_dev:
|
|||||||
-e S3_BUCKET=kasm-ci
|
-e S3_BUCKET=kasm-ci
|
||||||
-e COMMIT=${CI_COMMIT_SHA}
|
-e COMMIT=${CI_COMMIT_SHA}
|
||||||
-e REPO=workspaces-images
|
-e REPO=workspaces-images
|
||||||
kasmweb/kasm-tester:1.12.0
|
kasmweb/kasm-tester:1.13.0
|
||||||
except:
|
except:
|
||||||
- develop
|
- develop
|
||||||
- /^release\/.*$/
|
- /^release\/.*$/
|
||||||
@ -520,7 +717,9 @@ link_tests_multi_arch_dev2:
|
|||||||
- ARCH: [ aarch64, x86_64 ]
|
- ARCH: [ aarch64, x86_64 ]
|
||||||
KASM_IMAGE: *MULTI_ARCH_BUILDS2
|
KASM_IMAGE: *MULTI_ARCH_BUILDS2
|
||||||
|
|
||||||
# These jobs are for the "rolling" release of the images. They should only run for scheduled jobs and should only push the rolling tags
|
#########################################################################################################################################
|
||||||
|
# These jobs are for the "rolling" release of the images. They should only run for scheduled jobs and should only push the rolling tags #
|
||||||
|
#########################################################################################################################################
|
||||||
build_schedules_browser_images:
|
build_schedules_browser_images:
|
||||||
image: ${ORG_NAME}/docker-buildx-private:develop
|
image: ${ORG_NAME}/docker-buildx-private:develop
|
||||||
stage: build
|
stage: build
|
||||||
@ -537,17 +736,23 @@ build_schedules_browser_images:
|
|||||||
- ls docs/$KASM_IMAGE/description.txt
|
- ls docs/$KASM_IMAGE/description.txt
|
||||||
# Check for private variable to build against private core images
|
# Check for private variable to build against private core images
|
||||||
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE-IMAGE-private; fi;
|
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE-IMAGE-private; fi;
|
||||||
|
|
||||||
# Equivalent to docker build and docker push. Builds amd64 natively uses qemu for arm64.
|
# Equivalent to docker build and docker push. Builds amd64 natively uses qemu for arm64.
|
||||||
# The only way to push multiple architectures to the same tag is to use buildx.
|
# The only way to push multiple architectures to the same tag is to use buildx.
|
||||||
- docker buildx build --push --platform $BUILD_PLATFORM -t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE=$CORE_IMAGE --build-arg BASE_TAG="$SANITIZED_ROLLING_BRANCH" -f dockerfile-kasm-$KASM_IMAGE .
|
- >
|
||||||
|
docker buildx build --push
|
||||||
|
--platform $BUILD_PLATFORM
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH
|
||||||
|
--build-arg BASE_IMAGE=$CORE_IMAGE
|
||||||
|
--build-arg BASE_TAG="$SANITIZED_ROLLING_BRANCH"
|
||||||
|
-f dockerfile-kasm-$KASM_IMAGE .
|
||||||
only:
|
only:
|
||||||
- schedules
|
- schedules
|
||||||
tags:
|
tags:
|
||||||
- aws-autoscale
|
- aws-autoscale
|
||||||
parallel:
|
parallel:
|
||||||
matrix:
|
matrix:
|
||||||
- KASM_IMAGE: [chrome, chromium, firefox, tor-browser, edge, brave, vivaldi]
|
- KASM_IMAGE: *BROWSER_IMAGES
|
||||||
|
|
||||||
build_schedules_app_images:
|
build_schedules_app_images:
|
||||||
image: ${ORG_NAME}/docker-buildx-private:develop
|
image: ${ORG_NAME}/docker-buildx-private:develop
|
||||||
@ -565,17 +770,23 @@ build_schedules_app_images:
|
|||||||
- ls docs/$KASM_IMAGE/description.txt
|
- ls docs/$KASM_IMAGE/description.txt
|
||||||
# Check for private variable to build against private core images
|
# Check for private variable to build against private core images
|
||||||
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
||||||
|
|
||||||
# Equivalent to docker build and docker push. Builds amd64 natively uses qemu for arm64.
|
# Equivalent to docker build and docker push. Builds amd64 natively uses qemu for arm64.
|
||||||
# The only way to push multiple architectures to the same tag is to use buildx.
|
# The only way to push multiple architectures to the same tag is to use buildx.
|
||||||
- docker buildx build --push --platform $BUILD_PLATFORM -t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE=$CORE_IMAGE --build-arg BASE_TAG="$SANITIZED_ROLLING_BRANCH" -f dockerfile-kasm-$KASM_IMAGE .
|
- >
|
||||||
|
docker buildx build --push
|
||||||
|
--platform $BUILD_PLATFORM
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH
|
||||||
|
--build-arg BASE_IMAGE=$CORE_IMAGE
|
||||||
|
--build-arg BASE_TAG="$SANITIZED_ROLLING_BRANCH"
|
||||||
|
-f dockerfile-kasm-$KASM_IMAGE .
|
||||||
only:
|
only:
|
||||||
- schedules
|
- schedules
|
||||||
tags:
|
tags:
|
||||||
- aws-autoscale
|
- aws-autoscale
|
||||||
parallel:
|
parallel:
|
||||||
matrix:
|
matrix:
|
||||||
- KASM_IMAGE: [sublime-text, gimp, vs-code, teams, only-office, zoom, signal, steam, postman, insomnia, zsnes, vlc, maltego, telegram, hunchly, java-dev, terminal, remmina, discord, libre-office, thunderbird, atom, audacity, deluge, filezilla, inkscape, pinta, qbittorrent, blender, unityhub]
|
- KASM_IMAGE: *APP_IMAGES
|
||||||
|
|
||||||
build_schedules_ubuntu_desktop_images:
|
build_schedules_ubuntu_desktop_images:
|
||||||
image: ${ORG_NAME}/docker-buildx-private:develop
|
image: ${ORG_NAME}/docker-buildx-private:develop
|
||||||
@ -591,22 +802,30 @@ build_schedules_ubuntu_desktop_images:
|
|||||||
# Ensure readme and description files are present
|
# Ensure readme and description files are present
|
||||||
- ls docs/$KASM_IMAGE/README.md
|
- ls docs/$KASM_IMAGE/README.md
|
||||||
- ls docs/$KASM_IMAGE/description.txt
|
- ls docs/$KASM_IMAGE/description.txt
|
||||||
# Check for private variable to build against private core images
|
# Set base image based on kasm_image variable
|
||||||
|
- if [[ $KASM_IMAGE =~ 'remnux-focal-desktop' ]]; then CORE_IMAGE=core-remnux-focal; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-desktop' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-desktop' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-dind' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-dind' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-dind-rootless' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
- if [[ $KASM_IMAGE =~ 'ubuntu-jammy-dind-rootless' ]]; then CORE_IMAGE=core-ubuntu-jammy; fi
|
||||||
|
# Check for private variable to build against private core images
|
||||||
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
||||||
|
|
||||||
# Equivalent to docker build and docker push. Builds amd64 natively uses qemu for arm64.
|
# Equivalent to docker build and docker push. Builds amd64 natively uses qemu for arm64.
|
||||||
# The only way to push multiple architectures to the same tag is to use buildx.
|
# The only way to push multiple architectures to the same tag is to use buildx.
|
||||||
- docker buildx build --push --platform $BUILD_PLATFORM -t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE=$CORE_IMAGE --build-arg BASE_TAG="$SANITIZED_ROLLING_BRANCH" -f dockerfile-kasm-$KASM_IMAGE .
|
- >
|
||||||
|
docker buildx build --push
|
||||||
|
--platform $BUILD_PLATFORM
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH
|
||||||
|
--build-arg BASE_IMAGE=$CORE_IMAGE
|
||||||
|
--build-arg BASE_TAG="$SANITIZED_ROLLING_BRANCH"
|
||||||
|
-f dockerfile-kasm-$KASM_IMAGE .
|
||||||
only:
|
only:
|
||||||
- schedules
|
- schedules
|
||||||
tags:
|
tags:
|
||||||
- aws-autoscale
|
- aws-autoscale
|
||||||
parallel:
|
parallel:
|
||||||
matrix:
|
matrix:
|
||||||
- KASM_IMAGE: [desktop, desktop-deluxe, ubuntu-focal-desktop, ubuntu-jammy-desktop, ubuntu-focal-dind, ubuntu-focal-dind-rootless, ubuntu-jammy-dind, ubuntu-jammy-dind-rootless]
|
- KASM_IMAGE: *UBUNTU_IMAGES
|
||||||
|
|
||||||
build_schedules_non_ubuntu:
|
build_schedules_non_ubuntu:
|
||||||
image: ${ORG_NAME}/docker-buildx-private:develop
|
image: ${ORG_NAME}/docker-buildx-private:develop
|
||||||
@ -623,24 +842,71 @@ build_schedules_non_ubuntu:
|
|||||||
- ls docs/$KASM_IMAGE/README.md
|
- ls docs/$KASM_IMAGE/README.md
|
||||||
- ls docs/$KASM_IMAGE/description.txt
|
- ls docs/$KASM_IMAGE/description.txt
|
||||||
# Set base image based on kasm_image variable
|
# Set base image based on kasm_image variable
|
||||||
|
- if [[ $KASM_IMAGE =~ 'almalinux-8-desktop' ]]; then CORE_IMAGE=core-almalinux-8; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'almalinux-9-desktop' ]]; then CORE_IMAGE=core-almalinux-9; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'alpine-317-desktop' ]]; then CORE_IMAGE=core-alpine-317; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'centos-7-desktop' ]]; then CORE_IMAGE=core-centos-7; fi
|
- 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 =~ 'debian-bullseye-desktop' ]]; then CORE_IMAGE=core-debian-bullseye; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'fedora-37-desktop' ]]; then CORE_IMAGE=core-fedora-37; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'kali-rolling-desktop' ]]; then CORE_IMAGE=core-kali-rolling; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'opensuse-15-desktop' ]]; then CORE_IMAGE=core-opensuse-15; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'oracle-7-desktop' ]]; then CORE_IMAGE=core-oracle-7; 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 =~ 'oracle-8-desktop' ]]; then CORE_IMAGE=core-oracle-8; fi
|
||||||
- if [[ $KASM_IMAGE =~ 'opensuse-15-desktop' ]]; then CORE_IMAGE=core-opensuse-15; fi
|
- if [[ $KASM_IMAGE =~ 'oracle-9-desktop' ]]; then CORE_IMAGE=core-oracle-9; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'parrotos-5-desktop' ]]; then CORE_IMAGE=core-parrotos-5; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'rockylinux-8-desktop' ]]; then CORE_IMAGE=core-rockylinux-8; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'rockylinux-9-desktop' ]]; then CORE_IMAGE=core-rockylinux-9; fi
|
||||||
|
- if [[ $KASM_IMAGE =~ 'tracelabs' ]]; then CORE_IMAGE=core-kali-rolling; fi
|
||||||
# Check for private variable to build against private core images
|
# Check for private variable to build against private core images
|
||||||
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
||||||
|
|
||||||
# Equivalent to docker build and docker push. Builds amd64 natively uses qemu for arm64.
|
# Equivalent to docker build and docker push. Builds amd64 natively uses qemu for arm64.
|
||||||
# The only way to push multiple architectures to the same tag is to use buildx.
|
# The only way to push multiple architectures to the same tag is to use buildx.
|
||||||
- docker buildx build --push --platform $BUILD_PLATFORM -t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE=$CORE_IMAGE --build-arg BASE_TAG="$SANITIZED_ROLLING_BRANCH" -f dockerfile-kasm-$KASM_IMAGE .
|
- >
|
||||||
|
docker buildx build --push
|
||||||
|
--platform $BUILD_PLATFORM
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH
|
||||||
|
--build-arg BASE_IMAGE=$CORE_IMAGE
|
||||||
|
--build-arg BASE_TAG="$SANITIZED_ROLLING_BRANCH"
|
||||||
|
-f dockerfile-kasm-$KASM_IMAGE .
|
||||||
only:
|
only:
|
||||||
- schedules
|
- schedules
|
||||||
tags:
|
tags:
|
||||||
- aws-autoscale
|
- aws-autoscale
|
||||||
parallel:
|
parallel:
|
||||||
matrix:
|
matrix:
|
||||||
- KASM_IMAGE: [centos-7-desktop, tracelabs, opensuse-15-desktop, oracle-7-desktop, oracle-8-desktop]
|
- KASM_IMAGE: *NON_UBUNTU_IMAGES
|
||||||
|
|
||||||
|
build_fedora_37_schedules:
|
||||||
|
stage: build
|
||||||
|
script:
|
||||||
|
- >
|
||||||
|
docker build
|
||||||
|
-t ${ORG_NAME}/fedora-37-desktop:$(arch)-$SANITIZED_ROLLING_BRANCH
|
||||||
|
-f dockerfile-kasm-fedora-37-desktop .
|
||||||
|
- docker push ${ORG_NAME}/fedora-37-desktop:$(arch)-$SANITIZED_ROLLING_BRANCH
|
||||||
|
only:
|
||||||
|
- schedules
|
||||||
|
tags:
|
||||||
|
- ${TAG}
|
||||||
|
parallel:
|
||||||
|
matrix:
|
||||||
|
- TAG: [ aws-autoscale, aws-autoscale-arm64 ]
|
||||||
|
|
||||||
|
manifest_fedora_37_schedules:
|
||||||
|
stage: manifest
|
||||||
|
script:
|
||||||
|
- docker pull ${ORG_NAME}/fedora-37-desktop:x86_64-$SANITIZED_ROLLING_BRANCH
|
||||||
|
- docker pull ${ORG_NAME}/fedora-37-desktop:aarch64-$SANITIZED_ROLLING_BRANCH
|
||||||
|
- "docker manifest push --purge ${ORG_NAME}/fedora-37-desktop:$SANITIZED_ROLLING_BRANCH || :"
|
||||||
|
- docker manifest create ${ORG_NAME}/fedora-37-desktop:$SANITIZED_ROLLING_BRANCH ${ORG_NAME}/fedora-37-desktop:x86_64-$SANITIZED_ROLLING_BRANCH ${ORG_NAME}/fedora-37-desktop:aarch64-$SANITIZED_ROLLING_BRANCH
|
||||||
|
- docker manifest annotate ${ORG_NAME}/fedora-37-desktop:$SANITIZED_ROLLING_BRANCH ${ORG_NAME}/fedora-37-desktop:aarch64-$SANITIZED_ROLLING_BRANCH --os linux --arch arm64 --variant v8
|
||||||
|
- docker manifest push --purge ${ORG_NAME}/fedora-37-desktop:$SANITIZED_ROLLING_BRANCH
|
||||||
|
only:
|
||||||
|
- schedules
|
||||||
|
needs: [ build_fedora_37_schedules ]
|
||||||
|
tags:
|
||||||
|
- aws-autoscale
|
||||||
|
|
||||||
build_schedules_games:
|
build_schedules_games:
|
||||||
image: ${ORG_NAME}/docker-buildx-private:develop
|
image: ${ORG_NAME}/docker-buildx-private:develop
|
||||||
@ -658,18 +924,27 @@ build_schedules_games:
|
|||||||
- ls docs/$KASM_IMAGE/description.txt
|
- ls docs/$KASM_IMAGE/description.txt
|
||||||
# Check for private variable to build against private core images
|
# Check for private variable to build against private core images
|
||||||
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
- if [[ $USE_PRIVATE_IMAGES -eq 1 ]]; then CORE_IMAGE=$CORE_IMAGE-private; fi;
|
||||||
|
|
||||||
# Equivalent to docker build and docker push. Builds amd64 natively uses qemu for arm64.
|
# Equivalent to docker build and docker push. Builds amd64 natively uses qemu for arm64.
|
||||||
# The only way to push multiple architectures to the same tag is to use buildx.
|
# The only way to push multiple architectures to the same tag is to use buildx.
|
||||||
- docker buildx build --push --platform $BUILD_PLATFORM -t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE=$CORE_IMAGE --build-arg BASE_TAG="$SANITIZED_ROLLING_BRANCH" -f dockerfile-kasm-$KASM_IMAGE .
|
- >
|
||||||
|
docker buildx build --push
|
||||||
|
--platform $BUILD_PLATFORM
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE:$SANITIZED_ROLLING_BRANCH
|
||||||
|
-t ${ORG_NAME}/$KASM_IMAGE-private:$SANITIZED_ROLLING_BRANCH
|
||||||
|
--build-arg BASE_IMAGE=$CORE_IMAGE
|
||||||
|
--build-arg BASE_TAG="$SANITIZED_ROLLING_BRANCH"
|
||||||
|
-f dockerfile-kasm-$KASM_IMAGE .
|
||||||
only:
|
only:
|
||||||
- schedules
|
- schedules
|
||||||
tags:
|
tags:
|
||||||
- aws-autoscale
|
- aws-autoscale
|
||||||
parallel:
|
parallel:
|
||||||
matrix:
|
matrix:
|
||||||
- KASM_IMAGE: [doom, minetest, retroarch, super-tux-kart]
|
- KASM_IMAGE: *GAME_IMAGES
|
||||||
|
|
||||||
|
###############################
|
||||||
|
# Readme Updates in Dockerhub #
|
||||||
|
###############################
|
||||||
update_readmes:
|
update_readmes:
|
||||||
stage: readme
|
stage: readme
|
||||||
script:
|
script:
|
||||||
@ -689,6 +964,9 @@ update_readmes:
|
|||||||
parallel:
|
parallel:
|
||||||
matrix:
|
matrix:
|
||||||
- KASM_IMAGE:
|
- KASM_IMAGE:
|
||||||
|
- almalinux-8-desktop
|
||||||
|
- almalinux-9-desktop
|
||||||
|
- alpine-317-desktop
|
||||||
- atom
|
- atom
|
||||||
- audacity
|
- audacity
|
||||||
- blender
|
- blender
|
||||||
@ -696,12 +974,14 @@ update_readmes:
|
|||||||
- centos-7-desktop
|
- centos-7-desktop
|
||||||
- chrome
|
- chrome
|
||||||
- chromium
|
- chromium
|
||||||
|
- debian-bullseye-desktop
|
||||||
- deluge
|
- deluge
|
||||||
- desktop
|
- desktop
|
||||||
- desktop-deluxe
|
- desktop-deluxe
|
||||||
- discord
|
- discord
|
||||||
- doom
|
- doom
|
||||||
- edge
|
- edge
|
||||||
|
- fedora-37-desktop
|
||||||
- filezilla
|
- filezilla
|
||||||
- firefox
|
- firefox
|
||||||
- gimp
|
- gimp
|
||||||
@ -709,33 +989,31 @@ update_readmes:
|
|||||||
- inkscape
|
- inkscape
|
||||||
- insomnia
|
- insomnia
|
||||||
- java-dev
|
- java-dev
|
||||||
- libre-office
|
- kali-rolling-desktop
|
||||||
|
- libre-office
|
||||||
- maltego
|
- maltego
|
||||||
|
- minetest
|
||||||
- only-office
|
- only-office
|
||||||
- opensuse-15-desktop
|
- opensuse-15-desktop
|
||||||
- oracle-7-desktop
|
- oracle-7-desktop
|
||||||
- oracle-8-desktop
|
- oracle-8-desktop
|
||||||
|
- oracle-9-desktop
|
||||||
|
- parrotos-5-desktop
|
||||||
- pinta
|
- pinta
|
||||||
- postman
|
- postman
|
||||||
- qbittorrent
|
- qbittorrent
|
||||||
- remmina
|
- remmina
|
||||||
|
- retroarch
|
||||||
|
- rockylinux-8-desktop
|
||||||
|
- rockylinux-9-desktop
|
||||||
- signal
|
- signal
|
||||||
- steam
|
- steam
|
||||||
- sublime-text
|
- sublime-text
|
||||||
|
- super-tux-kart
|
||||||
- teams
|
- teams
|
||||||
- telegram
|
- telegram
|
||||||
- terminal
|
- terminal
|
||||||
- thunderbird
|
- thunderbird
|
||||||
- tor-browser
|
|
||||||
- tracelabs
|
|
||||||
- ubuntu-focal-desktop
|
|
||||||
- ubuntu-jammy-desktop
|
|
||||||
- ubuntu-focal-dind
|
|
||||||
- ubuntu-focal-dind-rootless
|
|
||||||
- unityhub
|
|
||||||
- vlc
|
|
||||||
- vs-code
|
|
||||||
- zoom
|
|
||||||
|
|
||||||
update_readmes2:
|
update_readmes2:
|
||||||
stage: readme
|
stage: readme
|
||||||
@ -756,9 +1034,16 @@ update_readmes2:
|
|||||||
parallel:
|
parallel:
|
||||||
matrix:
|
matrix:
|
||||||
- KASM_IMAGE:
|
- KASM_IMAGE:
|
||||||
- minetest
|
- tor-browser
|
||||||
- retroarch
|
- tracelabs
|
||||||
- super-tux-kart
|
- ubuntu-focal-desktop
|
||||||
|
- ubuntu-focal-dind
|
||||||
|
- ubuntu-focal-dind-rootless
|
||||||
|
- ubuntu-jammy-desktop
|
||||||
- ubuntu-jammy-dind
|
- ubuntu-jammy-dind
|
||||||
- ubuntu-jammy-dind-rootless
|
- ubuntu-jammy-dind-rootless
|
||||||
|
- unityhub
|
||||||
- vivaldi
|
- vivaldi
|
||||||
|
- vlc
|
||||||
|
- vs-code
|
||||||
|
- zoom
|
||||||
|
92
dockerfile-kasm-almalinux-8-desktop
Normal file
92
dockerfile-kasm-almalinux-8-desktop
Normal file
@ -0,0 +1,92 @@
|
|||||||
|
ARG BASE_TAG="develop"
|
||||||
|
ARG BASE_IMAGE="core-almalinux-8"
|
||||||
|
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
|
||||||
|
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ENV DISTRO=almalinux8
|
||||||
|
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 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 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/
|
||||||
|
|
||||||
|
### Install Thunderbird
|
||||||
|
COPY ./src/ubuntu/install/thunderbird $INST_SCRIPTS/thunderbird/
|
||||||
|
RUN bash $INST_SCRIPTS/thunderbird/install_thunderbird.sh && rm -rf $INST_SCRIPTS/thunderbird/
|
||||||
|
|
||||||
|
#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"]
|
88
dockerfile-kasm-almalinux-9-desktop
Normal file
88
dockerfile-kasm-almalinux-9-desktop
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
ARG BASE_TAG="develop"
|
||||||
|
ARG BASE_IMAGE="core-alamalinux-9"
|
||||||
|
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
|
||||||
|
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ENV DISTRO=almalinux9
|
||||||
|
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 Remmina
|
||||||
|
COPY ./src/ubuntu/install/remmina $INST_SCRIPTS/remmina/
|
||||||
|
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $INST_SCRIPTS/remmina/
|
||||||
|
|
||||||
|
### 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/
|
||||||
|
|
||||||
|
### Install Thunderbird
|
||||||
|
COPY ./src/ubuntu/install/thunderbird $INST_SCRIPTS/thunderbird/
|
||||||
|
RUN bash $INST_SCRIPTS/thunderbird/install_thunderbird.sh && rm -rf $INST_SCRIPTS/thunderbird/
|
||||||
|
|
||||||
|
#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"]
|
97
dockerfile-kasm-alpine-317-desktop
Normal file
97
dockerfile-kasm-alpine-317-desktop
Normal file
@ -0,0 +1,97 @@
|
|||||||
|
ARG BASE_TAG="develop"
|
||||||
|
ARG BASE_IMAGE="core-alpine-317"
|
||||||
|
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
|
||||||
|
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ENV DISTRO=alpine317
|
||||||
|
ENV HOME /home/kasm-default-profile
|
||||||
|
ENV STARTUPDIR /dockerstartup
|
||||||
|
WORKDIR $HOME
|
||||||
|
|
||||||
|
### Envrionment config
|
||||||
|
ENV INST_SCRIPTS $STARTUPDIR/install
|
||||||
|
|
||||||
|
### Install Tools
|
||||||
|
COPY ./src/alpine/install/tools $INST_SCRIPTS/tools/
|
||||||
|
RUN bash $INST_SCRIPTS/tools/install_tools_deluxe.sh && rm -rf $INST_SCRIPTS/tools/
|
||||||
|
|
||||||
|
# Install Utilities
|
||||||
|
COPY ./src/alpine/install/misc $INST_SCRIPTS/misc/
|
||||||
|
RUN bash $INST_SCRIPTS/misc/install_tools.sh && rm -rf $INST_SCRIPTS/misc/
|
||||||
|
|
||||||
|
# Install Chromium
|
||||||
|
COPY ./src/alpine/install/chromium $INST_SCRIPTS/chromium/
|
||||||
|
RUN bash $INST_SCRIPTS/chromium/install_chromium.sh && rm -rf $INST_SCRIPTS/chromium/
|
||||||
|
|
||||||
|
# Install Firefox
|
||||||
|
COPY ./src/alpine/install/firefox/ $INST_SCRIPTS/firefox/
|
||||||
|
COPY ./src/alpine/install/firefox/firefox.desktop $HOME/Desktop/
|
||||||
|
RUN bash $INST_SCRIPTS/firefox/install_firefox.sh && rm -rf $INST_SCRIPTS/firefox/
|
||||||
|
|
||||||
|
### Install Remmina
|
||||||
|
COPY ./src/alpine/install/remmina $INST_SCRIPTS/remmina/
|
||||||
|
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $INST_SCRIPTS/remmina/
|
||||||
|
|
||||||
|
### Install GIMP
|
||||||
|
COPY ./src/alpine/install/gimp $INST_SCRIPTS/gimp/
|
||||||
|
RUN bash $INST_SCRIPTS/gimp/install_gimp.sh && rm -rf $INST_SCRIPTS/gimp/
|
||||||
|
|
||||||
|
### Install Ansible
|
||||||
|
COPY ./src/alpine/install/ansible $INST_SCRIPTS/ansible/
|
||||||
|
RUN bash $INST_SCRIPTS/ansible/install_ansible.sh && rm -rf $INST_SCRIPTS/ansible/
|
||||||
|
|
||||||
|
### Install Terraform
|
||||||
|
COPY ./src/alpine/install/terraform $INST_SCRIPTS/terraform/
|
||||||
|
RUN bash $INST_SCRIPTS/terraform/install_terraform.sh && rm -rf $INST_SCRIPTS/terraform/
|
||||||
|
|
||||||
|
### Install Thunderbird
|
||||||
|
COPY ./src/alpine/install/thunderbird $INST_SCRIPTS/thunderbird/
|
||||||
|
RUN bash $INST_SCRIPTS/thunderbird/install_thunderbird.sh && rm -rf $INST_SCRIPTS/thunderbird/
|
||||||
|
|
||||||
|
### Install Audacity
|
||||||
|
COPY ./src/alpine/install/audacity $INST_SCRIPTS/audacity/
|
||||||
|
RUN bash $INST_SCRIPTS/audacity/install_audacity.sh && rm -rf $INST_SCRIPTS/audacity/
|
||||||
|
|
||||||
|
### Install Blender
|
||||||
|
COPY ./src/alpine/install/blender $INST_SCRIPTS/blender/
|
||||||
|
RUN bash $INST_SCRIPTS/blender/install_blender.sh && rm -rf $INST_SCRIPTS/blender/
|
||||||
|
|
||||||
|
### Install Geany
|
||||||
|
COPY ./src/alpine/install/geany $INST_SCRIPTS/geany/
|
||||||
|
RUN bash $INST_SCRIPTS/geany/install_geany.sh && rm -rf $INST_SCRIPTS/geany/
|
||||||
|
|
||||||
|
### Install Inkscape
|
||||||
|
COPY ./src/alpine/install/inkscape $INST_SCRIPTS/inkscape/
|
||||||
|
RUN bash $INST_SCRIPTS/inkscape/install_inkscape.sh && rm -rf $INST_SCRIPTS/inkscape/
|
||||||
|
|
||||||
|
### Install LibreOffice
|
||||||
|
COPY ./src/alpine/install/libre_office $INST_SCRIPTS/libre_office/
|
||||||
|
RUN bash $INST_SCRIPTS/libre_office/install_libre_office.sh && rm -rf $INST_SCRIPTS/libre_office/
|
||||||
|
|
||||||
|
### Install Pinta
|
||||||
|
COPY ./src/alpine/install/pinta $INST_SCRIPTS/pinta/
|
||||||
|
RUN bash $INST_SCRIPTS/pinta/install_pinta.sh && rm -rf $INST_SCRIPTS/pinta/
|
||||||
|
|
||||||
|
### Install OBS
|
||||||
|
COPY ./src/alpine/install/obs $INST_SCRIPTS/obs/
|
||||||
|
RUN bash $INST_SCRIPTS/obs/install_obs.sh && rm -rf $INST_SCRIPTS/obs/
|
||||||
|
|
||||||
|
### Install Filezilla
|
||||||
|
COPY ./src/alpine/install/filezilla $INST_SCRIPTS/filezilla/
|
||||||
|
RUN bash $INST_SCRIPTS/filezilla/install_filezilla.sh && rm -rf $INST_SCRIPTS/filezilla/
|
||||||
|
|
||||||
|
#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"]
|
101
dockerfile-kasm-debian-bullseye-desktop
Normal file
101
dockerfile-kasm-debian-bullseye-desktop
Normal file
@ -0,0 +1,101 @@
|
|||||||
|
ARG BASE_TAG="develop"
|
||||||
|
ARG BASE_IMAGE="core-debian-bullseye"
|
||||||
|
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
|
||||||
|
ENV KASM_RX_HOME $STARTUPDIR/kasmrx
|
||||||
|
ENV INST_SCRIPTS $STARTUPDIR/install
|
||||||
|
|
||||||
|
|
||||||
|
### Install Tools
|
||||||
|
COPY ./src/ubuntu/install/tools $INST_SCRIPTS/tools/
|
||||||
|
RUN bash $INST_SCRIPTS/tools/install_tools_deluxe.sh && rm -rf $INST_SCRIPTS/tools/
|
||||||
|
|
||||||
|
# Install Utilities
|
||||||
|
COPY ./src/ubuntu/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 Chromium
|
||||||
|
COPY ./src/ubuntu/install/chromium $INST_SCRIPTS/chromium/
|
||||||
|
RUN if [ "$(uname -m)" = "aarch64" ]; then bash $INST_SCRIPTS/chromium/install_chromium.sh; fi && 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/ubuntu/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/ubuntu/install/vs_code $INST_SCRIPTS/vs_code/
|
||||||
|
RUN bash $INST_SCRIPTS/vs_code/install_vs_code.sh && rm -rf $INST_SCRIPTS/vs_code/
|
||||||
|
|
||||||
|
### Install Remmina
|
||||||
|
COPY ./src/ubuntu/install/remmina $INST_SCRIPTS/remmina/
|
||||||
|
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $INST_SCRIPTS/remmina/
|
||||||
|
|
||||||
|
### Install Only Office
|
||||||
|
COPY ./src/ubuntu/install/only_office $INST_SCRIPTS/only_office/
|
||||||
|
RUN bash $INST_SCRIPTS/only_office/install_only_office.sh && rm -rf $INST_SCRIPTS/only_office/
|
||||||
|
|
||||||
|
### Install Signal
|
||||||
|
COPY ./src/ubuntu/install/signal $INST_SCRIPTS/signal/
|
||||||
|
RUN bash $INST_SCRIPTS/signal/install_signal.sh && rm -rf $INST_SCRIPTS/signal/
|
||||||
|
|
||||||
|
### Install GIMP
|
||||||
|
COPY ./src/ubuntu/install/gimp $INST_SCRIPTS/gimp/
|
||||||
|
RUN bash $INST_SCRIPTS/gimp/install_gimp.sh && rm -rf $INST_SCRIPTS/gimp/
|
||||||
|
|
||||||
|
### Install Zoom
|
||||||
|
COPY ./src/ubuntu/install/zoom $INST_SCRIPTS/zoom/
|
||||||
|
RUN bash $INST_SCRIPTS/zoom/install_zoom.sh && rm -rf $INST_SCRIPTS/zoom/
|
||||||
|
|
||||||
|
### Install OBS Studio
|
||||||
|
COPY ./src/ubuntu/install/obs $INST_SCRIPTS/obs/
|
||||||
|
RUN bash $INST_SCRIPTS/obs/install_obs.sh && rm -rf $INST_SCRIPTS/obs/
|
||||||
|
|
||||||
|
### Install Ansible
|
||||||
|
COPY ./src/ubuntu/install/ansible $INST_SCRIPTS/ansible/
|
||||||
|
RUN bash $INST_SCRIPTS/ansible/install_ansible.sh && rm -rf $INST_SCRIPTS/ansible/
|
||||||
|
|
||||||
|
### Install Terraform
|
||||||
|
COPY ./src/ubuntu/install/terraform $INST_SCRIPTS/terraform/
|
||||||
|
RUN bash $INST_SCRIPTS/terraform/install_terraform.sh && rm -rf $INST_SCRIPTS/terraform/
|
||||||
|
|
||||||
|
### Install Telegram
|
||||||
|
COPY ./src/ubuntu/install/telegram $INST_SCRIPTS/telegram/
|
||||||
|
RUN bash $INST_SCRIPTS/telegram/install_telegram.sh && rm -rf $INST_SCRIPTS/telegram/
|
||||||
|
|
||||||
|
### Install Thunderbird
|
||||||
|
COPY ./src/ubuntu/install/thunderbird $INST_SCRIPTS/thunderbird/
|
||||||
|
RUN bash $INST_SCRIPTS/thunderbird/install_thunderbird.sh && rm -rf $INST_SCRIPTS/thunderbird/
|
||||||
|
|
||||||
|
# Install Gamepad Testing Utils
|
||||||
|
COPY ./src/ubuntu/install/gamepad_utils $INST_SCRIPTS/gamepad_utils/
|
||||||
|
RUN bash $INST_SCRIPTS/gamepad_utils/install_gamepad_utils.sh && rm -rf $INST_SCRIPTS/gamepad_utils/
|
||||||
|
|
||||||
|
#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"]
|
@ -54,10 +54,6 @@ RUN bash $INST_SCRIPTS/nextcloud/install_nextcloud.sh && rm -rf $INST_SCRIPTS/n
|
|||||||
COPY ./src/ubuntu/install/remmina $INST_SCRIPTS/remmina/
|
COPY ./src/ubuntu/install/remmina $INST_SCRIPTS/remmina/
|
||||||
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $INST_SCRIPTS/remmina/
|
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $INST_SCRIPTS/remmina/
|
||||||
|
|
||||||
### Install Teams
|
|
||||||
COPY ./src/ubuntu/install/teams $INST_SCRIPTS/teams/
|
|
||||||
RUN bash $INST_SCRIPTS/teams/install_teams.sh && rm -rf $INST_SCRIPTS/teams/
|
|
||||||
|
|
||||||
### Install Only Office
|
### Install Only Office
|
||||||
COPY ./src/ubuntu/install/only_office $INST_SCRIPTS/only_office/
|
COPY ./src/ubuntu/install/only_office $INST_SCRIPTS/only_office/
|
||||||
RUN bash $INST_SCRIPTS/only_office/install_only_office.sh && rm -rf $INST_SCRIPTS/only_office/
|
RUN bash $INST_SCRIPTS/only_office/install_only_office.sh && rm -rf $INST_SCRIPTS/only_office/
|
||||||
|
88
dockerfile-kasm-fedora-37-desktop
Normal file
88
dockerfile-kasm-fedora-37-desktop
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
ARG BASE_TAG="develop"
|
||||||
|
ARG BASE_IMAGE="core-fedora-37"
|
||||||
|
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
|
||||||
|
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ENV DISTRO=fedora37
|
||||||
|
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 Remmina
|
||||||
|
COPY ./src/ubuntu/install/remmina $INST_SCRIPTS/remmina/
|
||||||
|
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $INST_SCRIPTS/remmina/
|
||||||
|
|
||||||
|
### 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/
|
||||||
|
|
||||||
|
### Install Thunderbird
|
||||||
|
COPY ./src/ubuntu/install/thunderbird $INST_SCRIPTS/thunderbird/
|
||||||
|
RUN bash $INST_SCRIPTS/thunderbird/install_thunderbird.sh && rm -rf $INST_SCRIPTS/thunderbird/
|
||||||
|
|
||||||
|
#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"]
|
35
dockerfile-kasm-kali-rolling-desktop
Normal file
35
dockerfile-kasm-kali-rolling-desktop
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
ARG BASE_TAG="develop"
|
||||||
|
ARG BASE_IMAGE="core-kali-rolling"
|
||||||
|
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ENV HOME /home/kasm-default-profile
|
||||||
|
ENV STARTUPDIR /dockerstartup
|
||||||
|
ENV INST_SCRIPTS $STARTUPDIR/install
|
||||||
|
WORKDIR $HOME
|
||||||
|
|
||||||
|
######### Customize Container Here ###########
|
||||||
|
|
||||||
|
|
||||||
|
# Install Kali utils
|
||||||
|
COPY ./src/ubuntu/install/kali $INST_SCRIPTS/kali/
|
||||||
|
RUN bash $INST_SCRIPTS/kali/install_kali.sh && rm -rf $INST_SCRIPTS/kali/
|
||||||
|
|
||||||
|
# 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/
|
||||||
|
RUN bash $INST_SCRIPTS/firefox/install_firefox.sh && rm -rf $INST_SCRIPTS/firefox/
|
||||||
|
|
||||||
|
######### End Customizations ###########
|
||||||
|
|
||||||
|
RUN chown 1000:0 $HOME
|
||||||
|
RUN $STARTUPDIR/set_user_permission.sh $HOME
|
||||||
|
|
||||||
|
ENV HOME /home/kasm-user
|
||||||
|
WORKDIR $HOME
|
||||||
|
RUN mkdir -p $HOME && chown -R 1000:0 $HOME
|
||||||
|
|
||||||
|
USER 1000
|
@ -76,10 +76,6 @@ RUN bash $INST_SCRIPTS/telegram/install_telegram.sh && rm -rf $INST_SCRIPTS/tel
|
|||||||
COPY ./src/ubuntu/install/thunderbird $INST_SCRIPTS/thunderbird/
|
COPY ./src/ubuntu/install/thunderbird $INST_SCRIPTS/thunderbird/
|
||||||
RUN bash $INST_SCRIPTS/thunderbird/install_thunderbird.sh && rm -rf $INST_SCRIPTS/thunderbird/
|
RUN bash $INST_SCRIPTS/thunderbird/install_thunderbird.sh && rm -rf $INST_SCRIPTS/thunderbird/
|
||||||
|
|
||||||
### Install Teams
|
|
||||||
COPY ./src/opensuse/install/teams $INST_SCRIPTS/teams/
|
|
||||||
RUN bash $INST_SCRIPTS/teams/install_teams.sh && rm -rf $INST_SCRIPTS/teams/
|
|
||||||
|
|
||||||
#ADD ./src/common/scripts $STARTUPDIR
|
#ADD ./src/common/scripts $STARTUPDIR
|
||||||
RUN $STARTUPDIR/set_user_permission.sh $HOME
|
RUN $STARTUPDIR/set_user_permission.sh $HOME
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@ FROM kasmweb/$BASE_IMAGE:$BASE_TAG
|
|||||||
|
|
||||||
USER root
|
USER root
|
||||||
|
|
||||||
ENV DISTRO=oracle7
|
ENV DISTRO=centos
|
||||||
ENV HOME /home/kasm-default-profile
|
ENV HOME /home/kasm-default-profile
|
||||||
ENV STARTUPDIR /dockerstartup
|
ENV STARTUPDIR /dockerstartup
|
||||||
WORKDIR $HOME
|
WORKDIR $HOME
|
||||||
@ -44,10 +44,6 @@ RUN bash $INST_SCRIPTS/vs_code/install_vs_code.sh && rm -rf $INST_SCRIPTS/vs_co
|
|||||||
COPY ./src/ubuntu/install/remmina $INST_SCRIPTS/remmina/
|
COPY ./src/ubuntu/install/remmina $INST_SCRIPTS/remmina/
|
||||||
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $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
|
### Install Only Office
|
||||||
COPY ./src/oracle/install/only_office $INST_SCRIPTS/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/
|
RUN bash $INST_SCRIPTS/only_office/install_only_office.sh && rm -rf $INST_SCRIPTS/only_office/
|
||||||
|
@ -51,10 +51,6 @@ RUN bash $INST_SCRIPTS/nextcloud/install_nextcloud.sh && rm -rf $INST_SCRIPTS/n
|
|||||||
COPY ./src/ubuntu/install/remmina $INST_SCRIPTS/remmina/
|
COPY ./src/ubuntu/install/remmina $INST_SCRIPTS/remmina/
|
||||||
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $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
|
### Install Only Office
|
||||||
COPY ./src/oracle/install/only_office $INST_SCRIPTS/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/
|
RUN bash $INST_SCRIPTS/only_office/install_only_office.sh && rm -rf $INST_SCRIPTS/only_office/
|
||||||
|
88
dockerfile-kasm-oracle-9-desktop
Normal file
88
dockerfile-kasm-oracle-9-desktop
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
ARG BASE_TAG="develop"
|
||||||
|
ARG BASE_IMAGE="core-oracle-9"
|
||||||
|
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
|
||||||
|
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ENV DISTRO=oracle9
|
||||||
|
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 Remmina
|
||||||
|
COPY ./src/ubuntu/install/remmina $INST_SCRIPTS/remmina/
|
||||||
|
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $INST_SCRIPTS/remmina/
|
||||||
|
|
||||||
|
### 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/
|
||||||
|
|
||||||
|
### Install Thunderbird
|
||||||
|
COPY ./src/ubuntu/install/thunderbird $INST_SCRIPTS/thunderbird/
|
||||||
|
RUN bash $INST_SCRIPTS/thunderbird/install_thunderbird.sh && rm -rf $INST_SCRIPTS/thunderbird/
|
||||||
|
|
||||||
|
#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"]
|
34
dockerfile-kasm-parrotos-5-desktop
Normal file
34
dockerfile-kasm-parrotos-5-desktop
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
ARG BASE_TAG="develop"
|
||||||
|
ARG BASE_IMAGE="core-parrotos-5"
|
||||||
|
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ENV HOME /home/kasm-default-profile
|
||||||
|
ENV STARTUPDIR /dockerstartup
|
||||||
|
ENV INST_SCRIPTS $STARTUPDIR/install
|
||||||
|
WORKDIR $HOME
|
||||||
|
|
||||||
|
######### Customize Container Here ###########
|
||||||
|
|
||||||
|
# Install Parrot utils
|
||||||
|
COPY ./src/ubuntu/install/parrot $INST_SCRIPTS/parrot/
|
||||||
|
RUN bash $INST_SCRIPTS/parrot/install_parrot.sh && rm -rf $INST_SCRIPTS/parrot/
|
||||||
|
|
||||||
|
# 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/
|
||||||
|
RUN bash $INST_SCRIPTS/firefox/install_firefox.sh && rm -rf $INST_SCRIPTS/firefox/
|
||||||
|
|
||||||
|
######### End Customizations ###########
|
||||||
|
|
||||||
|
RUN chown 1000:0 $HOME
|
||||||
|
RUN $STARTUPDIR/set_user_permission.sh $HOME
|
||||||
|
|
||||||
|
ENV HOME /home/kasm-user
|
||||||
|
WORKDIR $HOME
|
||||||
|
RUN mkdir -p $HOME && chown -R 1000:0 $HOME
|
||||||
|
|
||||||
|
USER 1000
|
31
dockerfile-kasm-remnux-focal-desktop
Normal file
31
dockerfile-kasm-remnux-focal-desktop
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
ARG BASE_TAG="develop"
|
||||||
|
ARG BASE_IMAGE="core-remnux-focal"
|
||||||
|
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ENV HOME /home/kasm-default-profile
|
||||||
|
ENV STARTUPDIR /dockerstartup
|
||||||
|
ENV INST_SCRIPTS $STARTUPDIR/install
|
||||||
|
WORKDIR $HOME
|
||||||
|
|
||||||
|
######### Customize Container Here ###########
|
||||||
|
|
||||||
|
|
||||||
|
# Install Remnux Utils
|
||||||
|
COPY ./src/ubuntu/install/remnux $INST_SCRIPTS/remnux/
|
||||||
|
RUN bash $INST_SCRIPTS/remnux/install_remnux.sh && rm -rf $INST_SCRIPTS/remnux/
|
||||||
|
|
||||||
|
# Install Firefox
|
||||||
|
COPY ./src/ubuntu/install/firefox/ $INST_SCRIPTS/firefox/
|
||||||
|
RUN bash $INST_SCRIPTS/firefox/install_firefox.sh && rm -rf $INST_SCRIPTS/firefox/
|
||||||
|
|
||||||
|
######### End Customizations ###########
|
||||||
|
|
||||||
|
RUN chown 1000:0 $HOME
|
||||||
|
RUN $STARTUPDIR/set_user_permission.sh $HOME
|
||||||
|
|
||||||
|
ENV HOME /home/kasm-user
|
||||||
|
WORKDIR $HOME
|
||||||
|
RUN mkdir -p $HOME && chown -R 1000:0 $HOME
|
||||||
|
|
||||||
|
USER 1000
|
92
dockerfile-kasm-rockylinux-8-desktop
Normal file
92
dockerfile-kasm-rockylinux-8-desktop
Normal file
@ -0,0 +1,92 @@
|
|||||||
|
ARG BASE_TAG="develop"
|
||||||
|
ARG BASE_IMAGE="core-rockylinux-8"
|
||||||
|
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
|
||||||
|
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ENV DISTRO=rockylinux8
|
||||||
|
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 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 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/
|
||||||
|
|
||||||
|
### Install Thunderbird
|
||||||
|
COPY ./src/ubuntu/install/thunderbird $INST_SCRIPTS/thunderbird/
|
||||||
|
RUN bash $INST_SCRIPTS/thunderbird/install_thunderbird.sh && rm -rf $INST_SCRIPTS/thunderbird/
|
||||||
|
|
||||||
|
#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"]
|
88
dockerfile-kasm-rockylinux-9-desktop
Normal file
88
dockerfile-kasm-rockylinux-9-desktop
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
ARG BASE_TAG="develop"
|
||||||
|
ARG BASE_IMAGE="core-rockylinux-9"
|
||||||
|
FROM kasmweb/$BASE_IMAGE:$BASE_TAG
|
||||||
|
|
||||||
|
USER root
|
||||||
|
|
||||||
|
ENV DISTRO=rockylinux9
|
||||||
|
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 Remmina
|
||||||
|
COPY ./src/ubuntu/install/remmina $INST_SCRIPTS/remmina/
|
||||||
|
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $INST_SCRIPTS/remmina/
|
||||||
|
|
||||||
|
### 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/
|
||||||
|
|
||||||
|
### Install Thunderbird
|
||||||
|
COPY ./src/ubuntu/install/thunderbird $INST_SCRIPTS/thunderbird/
|
||||||
|
RUN bash $INST_SCRIPTS/thunderbird/install_thunderbird.sh && rm -rf $INST_SCRIPTS/thunderbird/
|
||||||
|
|
||||||
|
#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"]
|
@ -15,6 +15,10 @@ WORKDIR $HOME
|
|||||||
COPY ./src/ubuntu/install/tracelabs $INST_SCRIPTS/tracelabs/
|
COPY ./src/ubuntu/install/tracelabs $INST_SCRIPTS/tracelabs/
|
||||||
RUN bash $INST_SCRIPTS/tracelabs/install_tracelabs.sh && rm -rf $INST_SCRIPTS/tracelabs/
|
RUN bash $INST_SCRIPTS/tracelabs/install_tracelabs.sh && rm -rf $INST_SCRIPTS/tracelabs/
|
||||||
|
|
||||||
|
# Install Firefox
|
||||||
|
COPY ./src/ubuntu/install/firefox/ $INST_SCRIPTS/firefox/
|
||||||
|
RUN bash $INST_SCRIPTS/firefox/install_firefox.sh && rm -rf $INST_SCRIPTS/firefox/
|
||||||
|
|
||||||
######### End Customizations ###########
|
######### End Customizations ###########
|
||||||
|
|
||||||
RUN chown 1000:0 $HOME
|
RUN chown 1000:0 $HOME
|
||||||
|
@ -54,10 +54,6 @@ RUN bash $INST_SCRIPTS/nextcloud/install_nextcloud.sh && rm -rf $INST_SCRIPTS/n
|
|||||||
COPY ./src/ubuntu/install/remmina $INST_SCRIPTS/remmina/
|
COPY ./src/ubuntu/install/remmina $INST_SCRIPTS/remmina/
|
||||||
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $INST_SCRIPTS/remmina/
|
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $INST_SCRIPTS/remmina/
|
||||||
|
|
||||||
### Install Teams
|
|
||||||
COPY ./src/ubuntu/install/teams $INST_SCRIPTS/teams/
|
|
||||||
RUN bash $INST_SCRIPTS/teams/install_teams.sh && rm -rf $INST_SCRIPTS/teams/
|
|
||||||
|
|
||||||
### Install Only Office
|
### Install Only Office
|
||||||
COPY ./src/ubuntu/install/only_office $INST_SCRIPTS/only_office/
|
COPY ./src/ubuntu/install/only_office $INST_SCRIPTS/only_office/
|
||||||
RUN bash $INST_SCRIPTS/only_office/install_only_office.sh && rm -rf $INST_SCRIPTS/only_office/
|
RUN bash $INST_SCRIPTS/only_office/install_only_office.sh && rm -rf $INST_SCRIPTS/only_office/
|
||||||
|
@ -54,10 +54,6 @@ RUN bash $INST_SCRIPTS/nextcloud/install_nextcloud.sh && rm -rf $INST_SCRIPTS/n
|
|||||||
COPY ./src/ubuntu/install/remmina $INST_SCRIPTS/remmina/
|
COPY ./src/ubuntu/install/remmina $INST_SCRIPTS/remmina/
|
||||||
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $INST_SCRIPTS/remmina/
|
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $INST_SCRIPTS/remmina/
|
||||||
|
|
||||||
### Install Teams
|
|
||||||
COPY ./src/ubuntu/install/teams $INST_SCRIPTS/teams/
|
|
||||||
RUN bash $INST_SCRIPTS/teams/install_teams.sh && rm -rf $INST_SCRIPTS/teams/
|
|
||||||
|
|
||||||
### Install Only Office
|
### Install Only Office
|
||||||
COPY ./src/ubuntu/install/only_office $INST_SCRIPTS/only_office/
|
COPY ./src/ubuntu/install/only_office $INST_SCRIPTS/only_office/
|
||||||
RUN bash $INST_SCRIPTS/only_office/install_only_office.sh && rm -rf $INST_SCRIPTS/only_office/
|
RUN bash $INST_SCRIPTS/only_office/install_only_office.sh && rm -rf $INST_SCRIPTS/only_office/
|
||||||
|
7
docs/almalinux-8-desktop/README.md
Normal file
7
docs/almalinux-8-desktop/README.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# About This Image
|
||||||
|
|
||||||
|
This Image contains a browser-accessible AlmaLinux 8 Desktop with various productivity and development apps installed.
|
||||||
|
|
||||||
|
![Screenshot][Image_Screenshot]
|
||||||
|
|
||||||
|
[Image_Screenshot]: https://info.kasmweb.com/hubfs/dockerhub/image-screenshots/alamalinux-8-desktop.png "Image Screenshot"
|
9
docs/almalinux-8-desktop/demo.txt
Normal file
9
docs/almalinux-8-desktop/demo.txt
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
# Live Demo
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://info.kasmweb.com/hubfs/dockerhub/GIFs/ubuntu-jammy-desktop.gif" width="640" height="360"></a>
|
||||||
|
|
||||||
|
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank">Live Demo</a>.
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/UbuntuJammyDesktop.png" width="300" height="104"></a>
|
||||||
|
|
||||||
|
∗*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*
|
1
docs/almalinux-8-desktop/description.txt
Normal file
1
docs/almalinux-8-desktop/description.txt
Normal file
@ -0,0 +1 @@
|
|||||||
|
AlmaLinux 8 desktop for Kasm Workspaces
|
7
docs/almalinux-9-desktop/README.md
Normal file
7
docs/almalinux-9-desktop/README.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# About This Image
|
||||||
|
|
||||||
|
This Image contains a browser-accessible AlmaLinux 9 Desktop with various productivity and development apps installed.
|
||||||
|
|
||||||
|
![Screenshot][Image_Screenshot]
|
||||||
|
|
||||||
|
[Image_Screenshot]: https://info.kasmweb.com/hubfs/dockerhub/image-screenshots/almalinux-9-desktop.png "Image Screenshot"
|
9
docs/almalinux-9-desktop/demo.txt
Normal file
9
docs/almalinux-9-desktop/demo.txt
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
# Live Demo
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://info.kasmweb.com/hubfs/dockerhub/GIFs/ubuntu-jammy-desktop.gif" width="640" height="360"></a>
|
||||||
|
|
||||||
|
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank">Live Demo</a>.
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/UbuntuJammyDesktop.png" width="300" height="104"></a>
|
||||||
|
|
||||||
|
∗*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*
|
1
docs/almalinux-9-desktop/description.txt
Normal file
1
docs/almalinux-9-desktop/description.txt
Normal file
@ -0,0 +1 @@
|
|||||||
|
AlmaLinux 9 desktop for Kasm Workspaces
|
7
docs/alpine-317-desktop/README.md
Normal file
7
docs/alpine-317-desktop/README.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# About This Image
|
||||||
|
|
||||||
|
This Image contains a browser-accessible Alpine 3.17 Desktop with various productivity and development apps installed.
|
||||||
|
|
||||||
|
![Screenshot][Image_Screenshot]
|
||||||
|
|
||||||
|
[Image_Screenshot]: https://info.kasmweb.com/hubfs/dockerhub/image-screenshots/alpine-317-desktop.png "Image Screenshot"
|
9
docs/alpine-317-desktop/demo.txt
Normal file
9
docs/alpine-317-desktop/demo.txt
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
# Live Demo
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://info.kasmweb.com/hubfs/dockerhub/GIFs/ubuntu-jammy-desktop.gif" width="640" height="360"></a>
|
||||||
|
|
||||||
|
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank">Live Demo</a>.
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/UbuntuJammyDesktop.png" width="300" height="104"></a>
|
||||||
|
|
||||||
|
∗*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*
|
1
docs/alpine-317-desktop/description.txt
Normal file
1
docs/alpine-317-desktop/description.txt
Normal file
@ -0,0 +1 @@
|
|||||||
|
Alpine 3.17 desktop for Kasm Workspaces
|
7
docs/debian-bullseye-desktop/README.md
Normal file
7
docs/debian-bullseye-desktop/README.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# About This Image
|
||||||
|
|
||||||
|
This Image contains a browser-accessible Debian Bullseye Desktop with various productivity and development apps installed.
|
||||||
|
|
||||||
|
![Screenshot][Image_Screenshot]
|
||||||
|
|
||||||
|
[Image_Screenshot]: https://info.kasmweb.com/hubfs/dockerhub/image-screenshots/debian-bullseye-desktop.png "Image Screenshot"
|
9
docs/debian-bullseye-desktop/demo.txt
Normal file
9
docs/debian-bullseye-desktop/demo.txt
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
# Live Demo
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://info.kasmweb.com/hubfs/dockerhub/GIFs/ubuntu-jammy-desktop.gif" width="640" height="360"></a>
|
||||||
|
|
||||||
|
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank">Live Demo</a>.
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/UbuntuJammyDesktop.png" width="300" height="104"></a>
|
||||||
|
|
||||||
|
∗*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*
|
1
docs/debian-bullseye-desktop/description.txt
Normal file
1
docs/debian-bullseye-desktop/description.txt
Normal file
@ -0,0 +1 @@
|
|||||||
|
Debian Bullseye desktop for Kasm Workspaces
|
7
docs/fedora-37-desktop/README.md
Normal file
7
docs/fedora-37-desktop/README.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# About This Image
|
||||||
|
|
||||||
|
This Image contains a browser-accessible Fedora 37 Desktop with various productivity and development apps installed.
|
||||||
|
|
||||||
|
![Screenshot][Image_Screenshot]
|
||||||
|
|
||||||
|
[Image_Screenshot]: https://info.kasmweb.com/hubfs/dockerhub/image-screenshots/fedora-37-desktop.png "Image Screenshot"
|
9
docs/fedora-37-desktop/demo.txt
Normal file
9
docs/fedora-37-desktop/demo.txt
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
# Live Demo
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://info.kasmweb.com/hubfs/dockerhub/GIFs/ubuntu-jammy-desktop.gif" width="640" height="360"></a>
|
||||||
|
|
||||||
|
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank">Live Demo</a>.
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/UbuntuJammyDesktop.png" width="300" height="104"></a>
|
||||||
|
|
||||||
|
∗*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*
|
1
docs/fedora-37-desktop/description.txt
Normal file
1
docs/fedora-37-desktop/description.txt
Normal file
@ -0,0 +1 @@
|
|||||||
|
Fedora 37 desktop for Kasm Workspaces
|
7
docs/kali-rolling-desktop/README.md
Normal file
7
docs/kali-rolling-desktop/README.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# About This Image
|
||||||
|
|
||||||
|
This Image contains a browser-accessible Kali Rolling Desktop with various productivity and development apps installed.
|
||||||
|
|
||||||
|
![Screenshot][Image_Screenshot]
|
||||||
|
|
||||||
|
[Image_Screenshot]: https://info.kasmweb.com/hubfs/dockerhub/image-screenshots/kali-rolling-desktop.png "Image Screenshot"
|
9
docs/kali-rolling-desktop/demo.txt
Normal file
9
docs/kali-rolling-desktop/demo.txt
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
# Live Demo
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://info.kasmweb.com/hubfs/dockerhub/GIFs/ubuntu-jammy-desktop.gif" width="640" height="360"></a>
|
||||||
|
|
||||||
|
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank">Live Demo</a>.
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/UbuntuJammyDesktop.png" width="300" height="104"></a>
|
||||||
|
|
||||||
|
∗*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*
|
1
docs/kali-rolling-desktop/description.txt
Normal file
1
docs/kali-rolling-desktop/description.txt
Normal file
@ -0,0 +1 @@
|
|||||||
|
Kali Rolling desktop for Kasm Workspaces
|
7
docs/oracle-9-desktop/README.md
Normal file
7
docs/oracle-9-desktop/README.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# About This Image
|
||||||
|
|
||||||
|
This Image contains a browser-accessible Oracle 9 Desktop with various productivity and development apps installed.
|
||||||
|
|
||||||
|
![Screenshot][Image_Screenshot]
|
||||||
|
|
||||||
|
[Image_Screenshot]: https://info.kasmweb.com/hubfs/dockerhub/image-screenshots/oracle-9-desktop.png "Image Screenshot"
|
9
docs/oracle-9-desktop/demo.txt
Normal file
9
docs/oracle-9-desktop/demo.txt
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
# Live Demo
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://info.kasmweb.com/hubfs/dockerhub/GIFs/ubuntu-jammy-desktop.gif" width="640" height="360"></a>
|
||||||
|
|
||||||
|
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank">Live Demo</a>.
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/UbuntuJammyDesktop.png" width="300" height="104"></a>
|
||||||
|
|
||||||
|
∗*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*
|
1
docs/oracle-9-desktop/description.txt
Normal file
1
docs/oracle-9-desktop/description.txt
Normal file
@ -0,0 +1 @@
|
|||||||
|
Oracle 9 desktop for Kasm Workspaces
|
7
docs/parrotos-5-desktop/README.md
Normal file
7
docs/parrotos-5-desktop/README.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# About This Image
|
||||||
|
|
||||||
|
This Image contains a browser-accessible Parrot OS 5 Desktop with various productivity and development apps installed.
|
||||||
|
|
||||||
|
![Screenshot][Image_Screenshot]
|
||||||
|
|
||||||
|
[Image_Screenshot]: https://info.kasmweb.com/hubfs/dockerhub/image-screenshots/parrotos-5-desktop.png "Image Screenshot"
|
9
docs/parrotos-5-desktop/demo.txt
Normal file
9
docs/parrotos-5-desktop/demo.txt
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
# Live Demo
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://info.kasmweb.com/hubfs/dockerhub/GIFs/ubuntu-jammy-desktop.gif" width="640" height="360"></a>
|
||||||
|
|
||||||
|
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank">Live Demo</a>.
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/UbuntuJammyDesktop.png" width="300" height="104"></a>
|
||||||
|
|
||||||
|
∗*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*
|
1
docs/parrotos-5-desktop/description.txt
Normal file
1
docs/parrotos-5-desktop/description.txt
Normal file
@ -0,0 +1 @@
|
|||||||
|
Parrot OS 5 desktop for Kasm Workspaces
|
7
docs/remnux-focal-desktop/README.md
Normal file
7
docs/remnux-focal-desktop/README.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# About This Image
|
||||||
|
|
||||||
|
This Image contains a browser-accessible Remnux Focal Desktop with various productivity and development apps installed.
|
||||||
|
|
||||||
|
![Screenshot][Image_Screenshot]
|
||||||
|
|
||||||
|
[Image_Screenshot]: https://info.kasmweb.com/hubfs/dockerhub/image-screenshots/remnux-focal-desktop.png "Image Screenshot"
|
9
docs/remnux-focal-desktop/demo.txt
Normal file
9
docs/remnux-focal-desktop/demo.txt
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
# Live Demo
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://info.kasmweb.com/hubfs/dockerhub/GIFs/ubuntu-jammy-desktop.gif" width="640" height="360"></a>
|
||||||
|
|
||||||
|
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank">Live Demo</a>.
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/UbuntuJammyDesktop.png" width="300" height="104"></a>
|
||||||
|
|
||||||
|
∗*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*
|
1
docs/remnux-focal-desktop/description.txt
Normal file
1
docs/remnux-focal-desktop/description.txt
Normal file
@ -0,0 +1 @@
|
|||||||
|
Remnux Focal desktop for Kasm Workspaces
|
7
docs/rockylinux-8-desktop/README.md
Normal file
7
docs/rockylinux-8-desktop/README.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# About This Image
|
||||||
|
|
||||||
|
This Image contains a browser-accessible Rocky Linux 8 Desktop with various productivity and development apps installed.
|
||||||
|
|
||||||
|
![Screenshot][Image_Screenshot]
|
||||||
|
|
||||||
|
[Image_Screenshot]: https://5856039.fs1.hubspotusercontent-na1.net/hubfs/5856039/dockerhub/image-screenshots/ubuntu_jammy_desktop.png "Image Screenshot"
|
9
docs/rockylinux-8-desktop/demo.txt
Normal file
9
docs/rockylinux-8-desktop/demo.txt
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
# Live Demo
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://info.kasmweb.com/hubfs/dockerhub/GIFs/ubuntu-jammy-desktop.gif" width="640" height="360"></a>
|
||||||
|
|
||||||
|
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank">Live Demo</a>.
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/UbuntuJammyDesktop.png" width="300" height="104"></a>
|
||||||
|
|
||||||
|
∗*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*
|
1
docs/rockylinux-8-desktop/description.txt
Normal file
1
docs/rockylinux-8-desktop/description.txt
Normal file
@ -0,0 +1 @@
|
|||||||
|
Rocky Linux 8 desktop for Kasm Workspaces
|
7
docs/rockylinux-9-desktop/README.md
Normal file
7
docs/rockylinux-9-desktop/README.md
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
# About This Image
|
||||||
|
|
||||||
|
This Image contains a browser-accessible Rocky Linux 9 Desktop with various productivity and development apps installed.
|
||||||
|
|
||||||
|
![Screenshot][Image_Screenshot]
|
||||||
|
|
||||||
|
[Image_Screenshot]: https://info.kasmweb.com/hubfs/dockerhub/image-screenshots/rockylinux-8-desktop.png "Image Screenshot"
|
9
docs/rockylinux-9-desktop/demo.txt
Normal file
9
docs/rockylinux-9-desktop/demo.txt
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
# Live Demo
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://info.kasmweb.com/hubfs/dockerhub/GIFs/ubuntu-jammy-desktop.gif" width="640" height="360"></a>
|
||||||
|
|
||||||
|
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank">Live Demo</a>.
|
||||||
|
|
||||||
|
<a href="https://app.kasmweb.com/#/cast/6708319219" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/UbuntuJammyDesktop.png" width="300" height="104"></a>
|
||||||
|
|
||||||
|
∗*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*
|
1
docs/rockylinux-9-desktop/description.txt
Normal file
1
docs/rockylinux-9-desktop/description.txt
Normal file
@ -0,0 +1 @@
|
|||||||
|
Rocky Linux 9 desktop for Kasm Workspaces
|
@ -1,3 +1,7 @@
|
|||||||
|
# This image is deprecated
|
||||||
|
|
||||||
|
Microsoft has retired Teams for Linux [More Info](https://learn.microsoft.com/en-us/microsoftteams/hardware-requirements-for-the-teams-app#hardware-requirements-for-teams-on-linux)
|
||||||
|
|
||||||
# Live Demo
|
# Live Demo
|
||||||
|
|
||||||
<a href="https://app.kasmweb.com/#/cast/9502332749" target="_blank"><img src="https://info.kasmweb.com/hubfs/dockerhub/GIFs/teams.gif" width="640" height="360"></a>
|
<a href="https://app.kasmweb.com/#/cast/9502332749" target="_blank"><img src="https://info.kasmweb.com/hubfs/dockerhub/GIFs/teams.gif" width="640" height="360"></a>
|
||||||
|
6
src/alpine/install/ansible/install_ansible.sh
Normal file
6
src/alpine/install/ansible/install_ansible.sh
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
apk add --no-cache \
|
||||||
|
ansible \
|
||||||
|
python3
|
2
src/alpine/install/audacity/audacity.cfg
Normal file
2
src/alpine/install/audacity/audacity.cfg
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
[GUI]
|
||||||
|
ShowSplashScreen=0
|
84
src/alpine/install/audacity/custom_startup.sh
Normal file
84
src/alpine/install/audacity/custom_startup.sh
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
START_COMMAND="audacity"
|
||||||
|
PGREP="audacity"
|
||||||
|
export MAXIMIZE="true"
|
||||||
|
export MAXIMIZE_NAME="Audacity"
|
||||||
|
MAXIMIZE_SCRIPT=$STARTUPDIR/maximize_window.sh
|
||||||
|
DEFAULT_ARGS=""
|
||||||
|
ARGS=${APP_ARGS:-$DEFAULT_ARGS}
|
||||||
|
|
||||||
|
options=$(getopt -o gau: -l go,assign,url: -n "$0" -- "$@") || exit
|
||||||
|
eval set -- "$options"
|
||||||
|
|
||||||
|
while [[ $1 != -- ]]; do
|
||||||
|
case $1 in
|
||||||
|
-g|--go) GO='true'; shift 1;;
|
||||||
|
-a|--assign) ASSIGN='true'; shift 1;;
|
||||||
|
-u|--url) OPT_URL=$2; shift 2;;
|
||||||
|
*) echo "bad option: $1" >&2; exit 1;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
|
||||||
|
# Process non-option arguments.
|
||||||
|
for arg; do
|
||||||
|
echo "arg! $arg"
|
||||||
|
done
|
||||||
|
|
||||||
|
FORCE=$2
|
||||||
|
|
||||||
|
kasm_exec() {
|
||||||
|
if [ -n "$OPT_URL" ] ; then
|
||||||
|
URL=$OPT_URL
|
||||||
|
elif [ -n "$1" ] ; then
|
||||||
|
URL=$1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Since we are execing into a container that already has the browser running from startup,
|
||||||
|
# when we don't have a URL to open we want to do nothing. Otherwise a second browser instance would open.
|
||||||
|
if [ -n "$URL" ] ; then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $OPT_URL
|
||||||
|
else
|
||||||
|
echo "No URL specified for exec command. Doing nothing."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
kasm_startup() {
|
||||||
|
if [ -n "$KASM_URL" ] ; then
|
||||||
|
URL=$KASM_URL
|
||||||
|
elif [ -z "$URL" ] ; then
|
||||||
|
URL=$LAUNCH_URL
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$DISABLE_CUSTOM_STARTUP" ] || [ -n "$FORCE" ] ; then
|
||||||
|
|
||||||
|
echo "Entering process startup loop"
|
||||||
|
set +x
|
||||||
|
while true
|
||||||
|
do
|
||||||
|
if ! pgrep -x $PGREP > /dev/null
|
||||||
|
then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
set +e
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $URL
|
||||||
|
set -e
|
||||||
|
fi
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
set -x
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ -n "$GO" ] || [ -n "$ASSIGN" ] ; then
|
||||||
|
kasm_exec
|
||||||
|
else
|
||||||
|
kasm_startup
|
||||||
|
fi
|
9
src/alpine/install/audacity/install_audacity.sh
Normal file
9
src/alpine/install/audacity/install_audacity.sh
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
apk add --no-cache \
|
||||||
|
audacity
|
||||||
|
|
||||||
|
# Desktop icon
|
||||||
|
cp /usr/share/applications/audacity.desktop $HOME/Desktop/
|
||||||
|
chmod +x $HOME/Desktop/audacity.desktop
|
84
src/alpine/install/blender/custom_startup.sh
Normal file
84
src/alpine/install/blender/custom_startup.sh
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
START_COMMAND="blender"
|
||||||
|
PGREP="blender"
|
||||||
|
export MAXIMIZE="true"
|
||||||
|
export MAXIMIZE_NAME="Blender"
|
||||||
|
MAXIMIZE_SCRIPT=$STARTUPDIR/maximize_window.sh
|
||||||
|
DEFAULT_ARGS=""
|
||||||
|
ARGS=${APP_ARGS:-$DEFAULT_ARGS}
|
||||||
|
|
||||||
|
options=$(getopt -o gau: -l go,assign,url: -n "$0" -- "$@") || exit
|
||||||
|
eval set -- "$options"
|
||||||
|
|
||||||
|
while [[ $1 != -- ]]; do
|
||||||
|
case $1 in
|
||||||
|
-g|--go) GO='true'; shift 1;;
|
||||||
|
-a|--assign) ASSIGN='true'; shift 1;;
|
||||||
|
-u|--url) OPT_URL=$2; shift 2;;
|
||||||
|
*) echo "bad option: $1" >&2; exit 1;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
|
||||||
|
# Process non-option arguments.
|
||||||
|
for arg; do
|
||||||
|
echo "arg! $arg"
|
||||||
|
done
|
||||||
|
|
||||||
|
FORCE=$2
|
||||||
|
|
||||||
|
kasm_exec() {
|
||||||
|
if [ -n "$OPT_URL" ] ; then
|
||||||
|
URL=$OPT_URL
|
||||||
|
elif [ -n "$1" ] ; then
|
||||||
|
URL=$1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Since we are execing into a container that already has the browser running from startup,
|
||||||
|
# when we don't have a URL to open we want to do nothing. Otherwise a second browser instance would open.
|
||||||
|
if [ -n "$URL" ] ; then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $OPT_URL
|
||||||
|
else
|
||||||
|
echo "No URL specified for exec command. Doing nothing."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
kasm_startup() {
|
||||||
|
if [ -n "$KASM_URL" ] ; then
|
||||||
|
URL=$KASM_URL
|
||||||
|
elif [ -z "$URL" ] ; then
|
||||||
|
URL=$LAUNCH_URL
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$DISABLE_CUSTOM_STARTUP" ] || [ -n "$FORCE" ] ; then
|
||||||
|
|
||||||
|
echo "Entering process startup loop"
|
||||||
|
set +x
|
||||||
|
while true
|
||||||
|
do
|
||||||
|
if ! pgrep -x $PGREP > /dev/null
|
||||||
|
then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
set +e
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $URL
|
||||||
|
set -e
|
||||||
|
fi
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
set -x
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ -n "$GO" ] || [ -n "$ASSIGN" ] ; then
|
||||||
|
kasm_exec
|
||||||
|
else
|
||||||
|
kasm_startup
|
||||||
|
fi
|
9
src/alpine/install/blender/install_blender.sh
Normal file
9
src/alpine/install/blender/install_blender.sh
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
apk add --no-cach \
|
||||||
|
blender
|
||||||
|
|
||||||
|
# Desktop icon
|
||||||
|
cp /usr/share/applications/blender.desktop $HOME/Desktop/
|
||||||
|
chmod +x $HOME/Desktop/blender.desktop
|
84
src/alpine/install/chromium/custom_startup.sh
Normal file
84
src/alpine/install/chromium/custom_startup.sh
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
START_COMMAND="chromium-browser"
|
||||||
|
PGREP="chromium"
|
||||||
|
MAXIMIZE="true"
|
||||||
|
DEFAULT_ARGS=""
|
||||||
|
|
||||||
|
if [[ $MAXIMIZE == 'true' ]] ; then
|
||||||
|
DEFAULT_ARGS+=" --start-maximized"
|
||||||
|
fi
|
||||||
|
ARGS=${APP_ARGS:-$DEFAULT_ARGS}
|
||||||
|
|
||||||
|
options=$(getopt -o gau: -l go,assign,url: -n "$0" -- "$@") || exit
|
||||||
|
eval set -- "$options"
|
||||||
|
|
||||||
|
while [[ $1 != -- ]]; do
|
||||||
|
case $1 in
|
||||||
|
-g|--go) GO='true'; shift 1;;
|
||||||
|
-a|--assign) ASSIGN='true'; shift 1;;
|
||||||
|
-u|--url) OPT_URL=$2; shift 2;;
|
||||||
|
*) echo "bad option: $1" >&2; exit 1;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
|
||||||
|
# Process non-option arguments.
|
||||||
|
for arg; do
|
||||||
|
echo "arg! $arg"
|
||||||
|
done
|
||||||
|
|
||||||
|
FORCE=$2
|
||||||
|
|
||||||
|
kasm_exec() {
|
||||||
|
if [ -n "$OPT_URL" ] ; then
|
||||||
|
URL=$OPT_URL
|
||||||
|
elif [ -n "$1" ] ; then
|
||||||
|
URL=$1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Since we are execing into a container that already has the browser running from startup,
|
||||||
|
# when we don't have a URL to open we want to do nothing. Otherwise a second browser instance would open.
|
||||||
|
if [ -n "$URL" ] ; then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
$START_COMMAND $ARGS $OPT_URL
|
||||||
|
else
|
||||||
|
echo "No URL specified for exec command. Doing nothing."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
kasm_startup() {
|
||||||
|
if [ -n "$KASM_URL" ] ; then
|
||||||
|
URL=$KASM_URL
|
||||||
|
elif [ -z "$URL" ] ; then
|
||||||
|
URL=$LAUNCH_URL
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$DISABLE_CUSTOM_STARTUP" ] || [ -n "$FORCE" ] ; then
|
||||||
|
|
||||||
|
echo "Entering process startup loop"
|
||||||
|
set +x
|
||||||
|
while true
|
||||||
|
do
|
||||||
|
if ! pgrep -x $PGREP > /dev/null
|
||||||
|
then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
set +e
|
||||||
|
$START_COMMAND $ARGS $URL
|
||||||
|
set -e
|
||||||
|
fi
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
set -x
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ -n "$GO" ] || [ -n "$ASSIGN" ] ; then
|
||||||
|
kasm_exec
|
||||||
|
else
|
||||||
|
kasm_startup
|
||||||
|
fi
|
52
src/alpine/install/chromium/install_chromium.sh
Normal file
52
src/alpine/install/chromium/install_chromium.sh
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
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'"
|
||||||
|
|
||||||
|
apk add --no-cache \
|
||||||
|
chromium
|
||||||
|
|
||||||
|
if [ "$(arch)" == "x86_64" ]; then
|
||||||
|
apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing \
|
||||||
|
virtualgl
|
||||||
|
fi
|
||||||
|
|
||||||
|
REAL_BIN=chromium
|
||||||
|
|
||||||
|
cp /usr/share/applications/chromium.desktop $HOME/Desktop/
|
||||||
|
chown 1000:1000 $HOME/Desktop/chromium.desktop
|
||||||
|
|
||||||
|
mv /usr/bin/chromium-browser /usr/bin/chromium-browser-orig
|
||||||
|
cat >/usr/bin/chromium-browser <<EOL
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
sed -i 's/"exited_cleanly":false/"exited_cleanly":true/' ~/.config/chromium/Default/Preferences
|
||||||
|
sed -i 's/"exit_type":"Crashed"/"exit_type":"None"/' ~/.config/chromium/Default/Preferences
|
||||||
|
if [ -f /opt/VirtualGL/bin/vglrun ] && [ ! -z "\${KASM_EGL_CARD}" ] && [ ! -z "\${KASM_RENDERD}" ] && [ -O "\${KASM_RENDERD}" ] && [ -O "\${KASM_EGL_CARD}" ] ; then
|
||||||
|
echo "Starting Chrome with GPU Acceleration on EGL device \${KASM_EGL_CARD}"
|
||||||
|
vglrun -d "\${KASM_EGL_CARD}" /usr/bin/chromium-browser-orig ${CHROME_ARGS} "\$@"
|
||||||
|
else
|
||||||
|
echo "Starting Chrome"
|
||||||
|
/usr/bin/chromium-browser-orig ${CHROME_ARGS} "\$@"
|
||||||
|
fi
|
||||||
|
EOL
|
||||||
|
chmod +x /usr/bin/chromium-browser
|
||||||
|
|
||||||
|
cat >> $HOME/.config/mimeapps.list <<EOF
|
||||||
|
[Default Applications]
|
||||||
|
x-scheme-handler/http=chromium.desktop
|
||||||
|
x-scheme-handler/https=chromium.desktop
|
||||||
|
x-scheme-handler/ftp=chromium.desktop
|
||||||
|
x-scheme-handler/chrome=chromium.desktop
|
||||||
|
text/html=chromium.desktop
|
||||||
|
application/x-extension-htm=chromium.desktop
|
||||||
|
application/x-extension-html=chromium.desktop
|
||||||
|
application/x-extension-shtml=chromium.desktop
|
||||||
|
application/xhtml+xml=chromium.desktop
|
||||||
|
application/x-extension-xhtml=chromium.desktop
|
||||||
|
application/x-extension-xht=chromium.desktop
|
||||||
|
EOF
|
||||||
|
|
||||||
|
mkdir -p /etc/chromium/policies/managed/
|
||||||
|
cat >>/etc/chromium/policies/managed/default_managed_policy.json <<EOL
|
||||||
|
{"CommandLineFlagSecurityWarningsEnabled": false, "DefaultBrowserSettingEnabled": false}
|
||||||
|
EOL
|
84
src/alpine/install/filezilla/custom_startup.sh
Normal file
84
src/alpine/install/filezilla/custom_startup.sh
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
START_COMMAND="filezilla"
|
||||||
|
PGREP="filezilla"
|
||||||
|
export MAXIMIZE="true"
|
||||||
|
export MAXIMIZE_NAME="FileZilla"
|
||||||
|
MAXIMIZE_SCRIPT=$STARTUPDIR/maximize_window.sh
|
||||||
|
DEFAULT_ARGS=""
|
||||||
|
ARGS=${APP_ARGS:-$DEFAULT_ARGS}
|
||||||
|
|
||||||
|
options=$(getopt -o gau: -l go,assign,url: -n "$0" -- "$@") || exit
|
||||||
|
eval set -- "$options"
|
||||||
|
|
||||||
|
while [[ $1 != -- ]]; do
|
||||||
|
case $1 in
|
||||||
|
-g|--go) GO='true'; shift 1;;
|
||||||
|
-a|--assign) ASSIGN='true'; shift 1;;
|
||||||
|
-u|--url) OPT_URL=$2; shift 2;;
|
||||||
|
*) echo "bad option: $1" >&2; exit 1;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
|
||||||
|
# Process non-option arguments.
|
||||||
|
for arg; do
|
||||||
|
echo "arg! $arg"
|
||||||
|
done
|
||||||
|
|
||||||
|
FORCE=$2
|
||||||
|
|
||||||
|
kasm_exec() {
|
||||||
|
if [ -n "$OPT_URL" ] ; then
|
||||||
|
URL=$OPT_URL
|
||||||
|
elif [ -n "$1" ] ; then
|
||||||
|
URL=$1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Since we are execing into a container that already has the browser running from startup,
|
||||||
|
# when we don't have a URL to open we want to do nothing. Otherwise a second browser instance would open.
|
||||||
|
if [ -n "$URL" ] ; then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $OPT_URL
|
||||||
|
else
|
||||||
|
echo "No URL specified for exec command. Doing nothing."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
kasm_startup() {
|
||||||
|
if [ -n "$KASM_URL" ] ; then
|
||||||
|
URL=$KASM_URL
|
||||||
|
elif [ -z "$URL" ] ; then
|
||||||
|
URL=$LAUNCH_URL
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$DISABLE_CUSTOM_STARTUP" ] || [ -n "$FORCE" ] ; then
|
||||||
|
|
||||||
|
echo "Entering process startup loop"
|
||||||
|
set +x
|
||||||
|
while true
|
||||||
|
do
|
||||||
|
if ! pgrep -x $PGREP > /dev/null
|
||||||
|
then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
set +e
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $URL
|
||||||
|
set -e
|
||||||
|
fi
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
set -x
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ -n "$GO" ] || [ -n "$ASSIGN" ] ; then
|
||||||
|
kasm_exec
|
||||||
|
else
|
||||||
|
kasm_startup
|
||||||
|
fi
|
139
src/alpine/install/filezilla/filezilla.xml
Normal file
139
src/alpine/install/filezilla/filezilla.xml
Normal file
@ -0,0 +1,139 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<FileZilla3 version="3.46.3" platform="*nix">
|
||||||
|
<Settings>
|
||||||
|
<Setting name="Use Pasv mode">1</Setting>
|
||||||
|
<Setting name="Limit local ports">0</Setting>
|
||||||
|
<Setting name="Limit ports low">6000</Setting>
|
||||||
|
<Setting name="Limit ports high">7000</Setting>
|
||||||
|
<Setting name="Limit ports offset">0</Setting>
|
||||||
|
<Setting name="External IP mode">0</Setting>
|
||||||
|
<Setting name="External IP"></Setting>
|
||||||
|
<Setting name="External address resolver">http://ip.filezilla-project.org/ip.php</Setting>
|
||||||
|
<Setting name="Last resolved IP"></Setting>
|
||||||
|
<Setting name="No external ip on local conn">1</Setting>
|
||||||
|
<Setting name="Pasv reply fallback mode">0</Setting>
|
||||||
|
<Setting name="Timeout">20</Setting>
|
||||||
|
<Setting name="Logging Debug Level">0</Setting>
|
||||||
|
<Setting name="Logging Raw Listing">0</Setting>
|
||||||
|
<Setting name="fzsftp executable"></Setting>
|
||||||
|
<Setting name="fzstorj executable"></Setting>
|
||||||
|
<Setting name="Allow transfermode fallback">1</Setting>
|
||||||
|
<Setting name="Reconnect count">2</Setting>
|
||||||
|
<Setting name="Reconnect delay">5</Setting>
|
||||||
|
<Setting name="Enable speed limits">0</Setting>
|
||||||
|
<Setting name="Speedlimit inbound">1000</Setting>
|
||||||
|
<Setting name="Speedlimit outbound">100</Setting>
|
||||||
|
<Setting name="Speedlimit burst tolerance">0</Setting>
|
||||||
|
<Setting name="Preallocate space">0</Setting>
|
||||||
|
<Setting name="View hidden files">0</Setting>
|
||||||
|
<Setting name="Preserve timestamps">0</Setting>
|
||||||
|
<Setting name="Socket recv buffer size (v2)">4194304</Setting>
|
||||||
|
<Setting name="Socket send buffer size (v2)">262144</Setting>
|
||||||
|
<Setting name="FTP Keep-alive commands">0</Setting>
|
||||||
|
<Setting name="FTP Proxy type">0</Setting>
|
||||||
|
<Setting name="FTP Proxy host"></Setting>
|
||||||
|
<Setting name="FTP Proxy user"></Setting>
|
||||||
|
<Setting name="FTP Proxy password"></Setting>
|
||||||
|
<Setting name="FTP Proxy login sequence"></Setting>
|
||||||
|
<Setting name="SFTP keyfiles"></Setting>
|
||||||
|
<Setting name="SFTP compression">0</Setting>
|
||||||
|
<Setting name="Proxy type">0</Setting>
|
||||||
|
<Setting name="Proxy host"></Setting>
|
||||||
|
<Setting name="Proxy port">0</Setting>
|
||||||
|
<Setting name="Proxy user"></Setting>
|
||||||
|
<Setting name="Proxy password"></Setting>
|
||||||
|
<Setting name="Logging file"></Setting>
|
||||||
|
<Setting name="Logging filesize limit">10</Setting>
|
||||||
|
<Setting name="Logging show detailed logs">0</Setting>
|
||||||
|
<Setting name="Size format">3</Setting>
|
||||||
|
<Setting name="Size thousands separator">1</Setting>
|
||||||
|
<Setting name="Size decimal places">1</Setting>
|
||||||
|
<Setting name="TCP Keepalive Interval">15</Setting>
|
||||||
|
<Setting name="Cache TTL">600</Setting>
|
||||||
|
<Setting name="Number of Transfers">2</Setting>
|
||||||
|
<Setting name="Ascii Binary mode">0</Setting>
|
||||||
|
<Setting name="Auto Ascii files">am|asp|bat|c|cfm|cgi|conf|cpp|css|dhtml|diz|h|hpp|htm|html|in|inc|java|js|jsp|lua|m4|mak|md5|nfo|nsi|pas|patch|pem|php|phtml|pl|po|py|qmail|sh|sha1|sha256|sha512|shtml|sql|svg|tcl|tpl|txt|vbs|xhtml|xml|xrc</Setting>
|
||||||
|
<Setting name="Auto Ascii no extension">1</Setting>
|
||||||
|
<Setting name="Auto Ascii dotfiles">1</Setting>
|
||||||
|
<Setting name="Language Code"></Setting>
|
||||||
|
<Setting name="Concurrent download limit">0</Setting>
|
||||||
|
<Setting name="Concurrent upload limit">0</Setting>
|
||||||
|
<Setting name="Update Check">1</Setting>
|
||||||
|
<Setting name="Update Check Interval">7</Setting>
|
||||||
|
<Setting name="Last automatic update check"></Setting>
|
||||||
|
<Setting name="Last automatic update version"></Setting>
|
||||||
|
<Setting name="Update Check New Version"></Setting>
|
||||||
|
<Setting name="Update Check Check Beta">0</Setting>
|
||||||
|
<Setting name="Show debug menu">0</Setting>
|
||||||
|
<Setting name="File exists action download">0</Setting>
|
||||||
|
<Setting name="File exists action upload">0</Setting>
|
||||||
|
<Setting name="Allow ascii resume">0</Setting>
|
||||||
|
<Setting name="Greeting version">3.46.3</Setting>
|
||||||
|
<Setting name="Greeting resources"></Setting>
|
||||||
|
<Setting name="Onetime Dialogs"></Setting>
|
||||||
|
<Setting name="Show Tree Local">1</Setting>
|
||||||
|
<Setting name="Show Tree Remote">1</Setting>
|
||||||
|
<Setting name="File Pane Layout">0</Setting>
|
||||||
|
<Setting name="File Pane Swap">0</Setting>
|
||||||
|
<Setting name="Filelist directory sort">0</Setting>
|
||||||
|
<Setting name="Filelist name sort">1</Setting>
|
||||||
|
<Setting name="Queue successful autoclear">0</Setting>
|
||||||
|
<Setting name="Local filelist sortorder">0 0</Setting>
|
||||||
|
<Setting name="Remote filelist sortorder">0 0</Setting>
|
||||||
|
<Setting name="Time Format"></Setting>
|
||||||
|
<Setting name="Date Format"></Setting>
|
||||||
|
<Setting name="Show message log">1</Setting>
|
||||||
|
<Setting name="Show queue">1</Setting>
|
||||||
|
<Setting name="Default editor"></Setting>
|
||||||
|
<Setting name="Always use default editor">0</Setting>
|
||||||
|
<Setting name="Inherit system associations">1</Setting>
|
||||||
|
<Setting name="Custom file associations"></Setting>
|
||||||
|
<Setting name="Comparison mode">1</Setting>
|
||||||
|
<Setting name="Comparison threshold">1</Setting>
|
||||||
|
<Setting name="Site Manager position"></Setting>
|
||||||
|
<Setting name="Icon theme">default</Setting>
|
||||||
|
<Setting name="Icon scale">125</Setting>
|
||||||
|
<Setting name="Timestamp in message log">0</Setting>
|
||||||
|
<Setting name="Sitemanager last selected"></Setting>
|
||||||
|
<Setting name="Local filelist shown columns">1111</Setting>
|
||||||
|
<Setting name="Remote filelist shown columns">111111</Setting>
|
||||||
|
<Setting name="Local filelist column order">0,1,2,3</Setting>
|
||||||
|
<Setting name="Remote filelist column order">0,1,2,3,4,5</Setting>
|
||||||
|
<Setting name="Filelist status bar">1</Setting>
|
||||||
|
<Setting name="Filter toggle state">0</Setting>
|
||||||
|
<Setting name="Show quickconnect bar">1</Setting>
|
||||||
|
<Setting name="Messagelog position">0</Setting>
|
||||||
|
<Setting name="File doubleclick action">0</Setting>
|
||||||
|
<Setting name="Dir doubleclick action">0</Setting>
|
||||||
|
<Setting name="Minimize to tray">0</Setting>
|
||||||
|
<Setting name="Search column widths"></Setting>
|
||||||
|
<Setting name="Search column shown"></Setting>
|
||||||
|
<Setting name="Search column order"></Setting>
|
||||||
|
<Setting name="Search window size"></Setting>
|
||||||
|
<Setting name="Comparison hide identical">0</Setting>
|
||||||
|
<Setting name="Search sort order"></Setting>
|
||||||
|
<Setting name="Edit track local">1</Setting>
|
||||||
|
<Setting name="Prevent idle sleep">1</Setting>
|
||||||
|
<Setting name="Filteredit window size"></Setting>
|
||||||
|
<Setting name="Enable invalid char filter">1</Setting>
|
||||||
|
<Setting name="Invalid char replace">_</Setting>
|
||||||
|
<Setting name="Already connected choice">0</Setting>
|
||||||
|
<Setting name="Edit status dialog size"></Setting>
|
||||||
|
<Setting name="Display current speed">0</Setting>
|
||||||
|
<Setting name="Toolbar hidden">0</Setting>
|
||||||
|
<Setting name="Strip VMS revisions">0</Setting>
|
||||||
|
<Setting name="Startup action">0</Setting>
|
||||||
|
<Setting name="Prompt password save">1</Setting>
|
||||||
|
<Setting name="Persistent Choices">0</Setting>
|
||||||
|
<Setting name="Queue completion action">1</Setting>
|
||||||
|
<Setting name="Queue completion command"></Setting>
|
||||||
|
<Setting name="Drag and Drop disabled">0</Setting>
|
||||||
|
<Setting name="Disable update footer">0</Setting>
|
||||||
|
<Setting name="Master password encryptor"></Setting>
|
||||||
|
<Setting name="Config Location">/home/kasm-user/.config/filezilla/</Setting>
|
||||||
|
<Setting name="Kiosk mode">0</Setting>
|
||||||
|
<Setting name="Disable update check">1</Setting>
|
||||||
|
<Setting name="Cache directory"></Setting>
|
||||||
|
</Settings>
|
||||||
|
</FileZilla3>
|
||||||
|
|
9
src/alpine/install/filezilla/install_filezilla.sh
Normal file
9
src/alpine/install/filezilla/install_filezilla.sh
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
apk add --no-cache \
|
||||||
|
filezilla
|
||||||
|
|
||||||
|
# Desktop icon
|
||||||
|
cp /usr/share/applications/filezilla.desktop $HOME/Desktop/
|
||||||
|
chmod +x $HOME/Desktop/filezilla.desktop
|
89
src/alpine/install/firefox/custom_startup.sh
Normal file
89
src/alpine/install/firefox/custom_startup.sh
Normal file
@ -0,0 +1,89 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
START_COMMAND="firefox"
|
||||||
|
PGREP="firefox"
|
||||||
|
export MAXIMIZE="true"
|
||||||
|
export MAXIMIZE_NAME="Mozilla Firefox"
|
||||||
|
MAXIMIZE_SCRIPT=$STARTUPDIR/maximize_window.sh
|
||||||
|
DEFAULT_ARGS=""
|
||||||
|
ARGS=${APP_ARGS:-$DEFAULT_ARGS}
|
||||||
|
|
||||||
|
options=$(getopt -o gau: -l go,assign,url: -n "$0" -- "$@") || exit
|
||||||
|
eval set -- "$options"
|
||||||
|
|
||||||
|
while [[ $1 != -- ]]; do
|
||||||
|
case $1 in
|
||||||
|
-g|--go) GO='true'; shift 1;;
|
||||||
|
-a|--assign) ASSIGN='true'; shift 1;;
|
||||||
|
-u|--url) OPT_URL=$2; shift 2;;
|
||||||
|
*) echo "bad option: $1" >&2; exit 1;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
|
||||||
|
# Process non-option arguments.
|
||||||
|
for arg; do
|
||||||
|
echo "arg! $arg"
|
||||||
|
done
|
||||||
|
|
||||||
|
FORCE=$2
|
||||||
|
|
||||||
|
# run with vgl if GPU is available
|
||||||
|
if [ -f /opt/VirtualGL/bin/vglrun ] && [ ! -z "${KASM_EGL_CARD}" ] && [ ! -z "${KASM_RENDERD}" ] && [ -O "${KASM_RENDERD}" ] && [ -O "${KASM_EGL_CARD}" ] ; then
|
||||||
|
START_COMMAND="/opt/VirtualGL/bin/vglrun -d ${KASM_EGL_CARD} $START_COMMAND"
|
||||||
|
fi
|
||||||
|
|
||||||
|
kasm_exec() {
|
||||||
|
if [ -n "$OPT_URL" ] ; then
|
||||||
|
URL=$OPT_URL
|
||||||
|
elif [ -n "$1" ] ; then
|
||||||
|
URL=$1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Since we are execing into a container that already has the browser running from startup,
|
||||||
|
# when we don't have a URL to open we want to do nothing. Otherwise a second browser instance would open.
|
||||||
|
if [ -n "$URL" ] ; then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $OPT_URL
|
||||||
|
else
|
||||||
|
echo "No URL specified for exec command. Doing nothing."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
kasm_startup() {
|
||||||
|
if [ -n "$KASM_URL" ] ; then
|
||||||
|
URL=$KASM_URL
|
||||||
|
elif [ -z "$URL" ] ; then
|
||||||
|
URL=$LAUNCH_URL
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$DISABLE_CUSTOM_STARTUP" ] || [ -n "$FORCE" ] ; then
|
||||||
|
|
||||||
|
echo "Entering process startup loop"
|
||||||
|
set +x
|
||||||
|
while true
|
||||||
|
do
|
||||||
|
if ! pgrep -x $PGREP > /dev/null
|
||||||
|
then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
set +e
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $URL
|
||||||
|
set -e
|
||||||
|
fi
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
set -x
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ -n "$GO" ] || [ -n "$ASSIGN" ] ; then
|
||||||
|
kasm_exec
|
||||||
|
else
|
||||||
|
kasm_startup
|
||||||
|
fi
|
221
src/alpine/install/firefox/firefox.desktop
Normal file
221
src/alpine/install/firefox/firefox.desktop
Normal file
@ -0,0 +1,221 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Version=1.0
|
||||||
|
Name=Firefox Web Browser
|
||||||
|
Name[ar]=متصفح الويب فَيَرفُكْس
|
||||||
|
Name[ast]=Restolador web Firefox
|
||||||
|
Name[bn]=ফায়ারফক্স ওয়েব ব্রাউজার
|
||||||
|
Name[ca]=Navegador web Firefox
|
||||||
|
Name[cs]=Firefox Webový prohlížeč
|
||||||
|
Name[da]=Firefox - internetbrowser
|
||||||
|
Name[el]=Περιηγητής Firefox
|
||||||
|
Name[es]=Navegador web Firefox
|
||||||
|
Name[et]=Firefoxi veebibrauser
|
||||||
|
Name[fa]=مرورگر اینترنتی Firefox
|
||||||
|
Name[fi]=Firefox-selain
|
||||||
|
Name[fr]=Navigateur Web Firefox
|
||||||
|
Name[gl]=Navegador web Firefox
|
||||||
|
Name[he]=דפדפן האינטרנט Firefox
|
||||||
|
Name[hr]=Firefox web preglednik
|
||||||
|
Name[hu]=Firefox webböngésző
|
||||||
|
Name[it]=Firefox Browser Web
|
||||||
|
Name[ja]=Firefox ウェブ・ブラウザ
|
||||||
|
Name[ko]=Firefox 웹 브라우저
|
||||||
|
Name[ku]=Geroka torê Firefox
|
||||||
|
Name[lt]=Firefox interneto naršyklė
|
||||||
|
Name[nb]=Firefox Nettleser
|
||||||
|
Name[nl]=Firefox webbrowser
|
||||||
|
Name[nn]=Firefox Nettlesar
|
||||||
|
Name[no]=Firefox Nettleser
|
||||||
|
Name[pl]=Przeglądarka WWW Firefox
|
||||||
|
Name[pt]=Firefox Navegador Web
|
||||||
|
Name[pt_BR]=Navegador Web Firefox
|
||||||
|
Name[ro]=Firefox – Navigator Internet
|
||||||
|
Name[ru]=Веб-браузер Firefox
|
||||||
|
Name[sk]=Firefox - internetový prehliadač
|
||||||
|
Name[sl]=Firefox spletni brskalnik
|
||||||
|
Name[sv]=Firefox webbläsare
|
||||||
|
Name[tr]=Firefox Web Tarayıcısı
|
||||||
|
Name[ug]=Firefox توركۆرگۈ
|
||||||
|
Name[uk]=Веб-браузер Firefox
|
||||||
|
Name[vi]=Trình duyệt web Firefox
|
||||||
|
Name[zh_CN]=Firefox 网络浏览器
|
||||||
|
Name[zh_TW]=Firefox 網路瀏覽器
|
||||||
|
Comment=Browse the World Wide Web
|
||||||
|
Comment[ar]=تصفح الشبكة العنكبوتية العالمية
|
||||||
|
Comment[ast]=Restola pela Rede
|
||||||
|
Comment[bn]=ইন্টারনেট ব্রাউজ করুন
|
||||||
|
Comment[ca]=Navegueu per la web
|
||||||
|
Comment[cs]=Prohlížení stránek World Wide Webu
|
||||||
|
Comment[da]=Surf på internettet
|
||||||
|
Comment[de]=Im Internet surfen
|
||||||
|
Comment[el]=Μπορείτε να περιηγηθείτε στο διαδίκτυο (Web)
|
||||||
|
Comment[es]=Navegue por la web
|
||||||
|
Comment[et]=Lehitse veebi
|
||||||
|
Comment[fa]=صفحات شبکه جهانی اینترنت را مرور نمایید
|
||||||
|
Comment[fi]=Selaa Internetin WWW-sivuja
|
||||||
|
Comment[fr]=Naviguer sur le Web
|
||||||
|
Comment[gl]=Navegar pola rede
|
||||||
|
Comment[he]=גלישה ברחבי האינטרנט
|
||||||
|
Comment[hr]=Pretražite web
|
||||||
|
Comment[hu]=A világháló böngészése
|
||||||
|
Comment[it]=Esplora il web
|
||||||
|
Comment[ja]=ウェブを閲覧します
|
||||||
|
Comment[ko]=웹을 돌아 다닙니다
|
||||||
|
Comment[ku]=Li torê bigere
|
||||||
|
Comment[lt]=Naršykite internete
|
||||||
|
Comment[nb]=Surf på nettet
|
||||||
|
Comment[nl]=Verken het internet
|
||||||
|
Comment[nn]=Surf på nettet
|
||||||
|
Comment[no]=Surf på nettet
|
||||||
|
Comment[pl]=Przeglądanie stron WWW
|
||||||
|
Comment[pt]=Navegue na Internet
|
||||||
|
Comment[pt_BR]=Navegue na Internet
|
||||||
|
Comment[ro]=Navigați pe Internet
|
||||||
|
Comment[ru]=Доступ в Интернет
|
||||||
|
Comment[sk]=Prehliadanie internetu
|
||||||
|
Comment[sl]=Brskajte po spletu
|
||||||
|
Comment[sv]=Surfa på webben
|
||||||
|
Comment[tr]=İnternet'te Gezinin
|
||||||
|
Comment[ug]=دۇنيادىكى توربەتلەرنى كۆرگىلى بولىدۇ
|
||||||
|
Comment[uk]=Перегляд сторінок Інтернету
|
||||||
|
Comment[vi]=Để duyệt các trang web
|
||||||
|
Comment[zh_CN]=浏览互联网
|
||||||
|
Comment[zh_TW]=瀏覽網際網路
|
||||||
|
GenericName=Web Browser
|
||||||
|
GenericName[ar]=متصفح ويب
|
||||||
|
GenericName[ast]=Restolador Web
|
||||||
|
GenericName[bn]=ওয়েব ব্রাউজার
|
||||||
|
GenericName[ca]=Navegador web
|
||||||
|
GenericName[cs]=Webový prohlížeč
|
||||||
|
GenericName[da]=Webbrowser
|
||||||
|
GenericName[el]=Περιηγητής διαδικτύου
|
||||||
|
GenericName[es]=Navegador web
|
||||||
|
GenericName[et]=Veebibrauser
|
||||||
|
GenericName[fa]=مرورگر اینترنتی
|
||||||
|
GenericName[fi]=WWW-selain
|
||||||
|
GenericName[fr]=Navigateur Web
|
||||||
|
GenericName[gl]=Navegador Web
|
||||||
|
GenericName[he]=דפדפן אינטרנט
|
||||||
|
GenericName[hr]=Web preglednik
|
||||||
|
GenericName[hu]=Webböngésző
|
||||||
|
GenericName[it]=Browser web
|
||||||
|
GenericName[ja]=ウェブ・ブラウザ
|
||||||
|
GenericName[ko]=웹 브라우저
|
||||||
|
GenericName[ku]=Geroka torê
|
||||||
|
GenericName[lt]=Interneto naršyklė
|
||||||
|
GenericName[nb]=Nettleser
|
||||||
|
GenericName[nl]=Webbrowser
|
||||||
|
GenericName[nn]=Nettlesar
|
||||||
|
GenericName[no]=Nettleser
|
||||||
|
GenericName[pl]=Przeglądarka WWW
|
||||||
|
GenericName[pt]=Navegador Web
|
||||||
|
GenericName[pt_BR]=Navegador Web
|
||||||
|
GenericName[ro]=Navigator Internet
|
||||||
|
GenericName[ru]=Веб-браузер
|
||||||
|
GenericName[sk]=Internetový prehliadač
|
||||||
|
GenericName[sl]=Spletni brskalnik
|
||||||
|
GenericName[sv]=Webbläsare
|
||||||
|
GenericName[tr]=Web Tarayıcı
|
||||||
|
GenericName[ug]=توركۆرگۈ
|
||||||
|
GenericName[uk]=Веб-браузер
|
||||||
|
GenericName[vi]=Trình duyệt Web
|
||||||
|
GenericName[zh_CN]=网络浏览器
|
||||||
|
GenericName[zh_TW]=網路瀏覽器
|
||||||
|
Keywords=Internet;WWW;Browser;Web;Explorer
|
||||||
|
Keywords[ar]=انترنت;إنترنت;متصفح;ويب;وب
|
||||||
|
Keywords[ast]=Internet;WWW;Restolador;Web;Esplorador
|
||||||
|
Keywords[ca]=Internet;WWW;Navegador;Web;Explorador;Explorer
|
||||||
|
Keywords[cs]=Internet;WWW;Prohlížeč;Web;Explorer
|
||||||
|
Keywords[da]=Internet;Internettet;WWW;Browser;Browse;Web;Surf;Nettet
|
||||||
|
Keywords[de]=Internet;WWW;Browser;Web;Explorer;Webseite;Site;surfen;online;browsen
|
||||||
|
Keywords[el]=Internet;WWW;Browser;Web;Explorer;Διαδίκτυο;Περιηγητής;Firefox;Φιρεφοχ;Ιντερνετ
|
||||||
|
Keywords[es]=Explorador;Internet;WWW
|
||||||
|
Keywords[fi]=Internet;WWW;Browser;Web;Explorer;selain;Internet-selain;internetselain;verkkoselain;netti;surffaa
|
||||||
|
Keywords[fr]=Internet;WWW;Browser;Web;Explorer;Fureteur;Surfer;Navigateur
|
||||||
|
Keywords[he]=דפדפן;אינטרנט;רשת;אתרים;אתר;פיירפוקס;מוזילה;
|
||||||
|
Keywords[hr]=Internet;WWW;preglednik;Web
|
||||||
|
Keywords[hu]=Internet;WWW;Böngésző;Web;Háló;Net;Explorer
|
||||||
|
Keywords[it]=Internet;WWW;Browser;Web;Navigatore
|
||||||
|
Keywords[is]=Internet;WWW;Vafri;Vefur;Netvafri;Flakk
|
||||||
|
Keywords[ja]=Internet;WWW;Web;インターネット;ブラウザ;ウェブ;エクスプローラ
|
||||||
|
Keywords[nb]=Internett;WWW;Nettleser;Explorer;Web;Browser;Nettside
|
||||||
|
Keywords[nl]=Internet;WWW;Browser;Web;Explorer;Verkenner;Website;Surfen;Online
|
||||||
|
Keywords[pt]=Internet;WWW;Browser;Web;Explorador;Navegador
|
||||||
|
Keywords[pt_BR]=Internet;WWW;Browser;Web;Explorador;Navegador
|
||||||
|
Keywords[ru]=Internet;WWW;Browser;Web;Explorer;интернет;браузер;веб;файрфокс;огнелис
|
||||||
|
Keywords[sk]=Internet;WWW;Prehliadač;Web;Explorer
|
||||||
|
Keywords[sl]=Internet;WWW;Browser;Web;Explorer;Brskalnik;Splet
|
||||||
|
Keywords[tr]=İnternet;WWW;Tarayıcı;Web;Gezgin;Web sitesi;Site;sörf;çevrimiçi;tara
|
||||||
|
Keywords[uk]=Internet;WWW;Browser;Web;Explorer;Інтернет;мережа;переглядач;оглядач;браузер;веб;файрфокс;вогнелис;перегляд
|
||||||
|
Keywords[vi]=Internet;WWW;Browser;Web;Explorer;Trình duyệt;Trang web
|
||||||
|
Keywords[zh_CN]=Internet;WWW;Browser;Web;Explorer;网页;浏览;上网;火狐;Firefox;ff;互联网;网站;
|
||||||
|
Keywords[zh_TW]=Internet;WWW;Browser;Web;Explorer;網際網路;網路;瀏覽器;上網;網頁;火狐
|
||||||
|
Exec=firefox %u
|
||||||
|
Terminal=false
|
||||||
|
X-MultipleArgs=false
|
||||||
|
Type=Application
|
||||||
|
Icon=/usr/lib/firefox/browser/chrome/icons/default/default128.png
|
||||||
|
Categories=GNOME;GTK;Network;WebBrowser;
|
||||||
|
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;x-scheme-handler/chrome;video/webm;application/x-xpinstall;
|
||||||
|
StartupNotify=true
|
||||||
|
Actions=NewWindow;NewPrivateWindow;
|
||||||
|
|
||||||
|
[Desktop Action NewWindow]
|
||||||
|
Name=Open a New Window
|
||||||
|
Name[ar]=افتح نافذة جديدة
|
||||||
|
Name[ast]=Abrir una ventana nueva
|
||||||
|
Name[bn]=Abrir una ventana nueva
|
||||||
|
Name[ca]=Obre una finestra nova
|
||||||
|
Name[cs]=Otevřít nové okno
|
||||||
|
Name[da]=Åbn et nyt vindue
|
||||||
|
Name[de]=Ein neues Fenster öffnen
|
||||||
|
Name[el]=Άνοιγμα νέου παραθύρου
|
||||||
|
Name[es]=Abrir una ventana nueva
|
||||||
|
Name[fi]=Avaa uusi ikkuna
|
||||||
|
Name[fr]=Ouvrir une nouvelle fenêtre
|
||||||
|
Name[gl]=Abrir unha nova xanela
|
||||||
|
Name[he]=פתיחת חלון חדש
|
||||||
|
Name[hr]=Otvori novi prozor
|
||||||
|
Name[hu]=Új ablak nyitása
|
||||||
|
Name[it]=Apri una nuova finestra
|
||||||
|
Name[ja]=新しいウィンドウを開く
|
||||||
|
Name[ko]=새 창 열기
|
||||||
|
Name[ku]=Paceyeke nû veke
|
||||||
|
Name[lt]=Atverti naują langą
|
||||||
|
Name[nb]=Åpne et nytt vindu
|
||||||
|
Name[nl]=Nieuw venster openen
|
||||||
|
Name[pt]=Abrir nova janela
|
||||||
|
Name[pt_BR]=Abrir nova janela
|
||||||
|
Name[ro]=Deschide o fereastră nouă
|
||||||
|
Name[ru]=Новое окно
|
||||||
|
Name[sk]=Otvoriť nové okno
|
||||||
|
Name[sl]=Odpri novo okno
|
||||||
|
Name[sv]=Öppna ett nytt fönster
|
||||||
|
Name[tr]=Yeni pencere aç
|
||||||
|
Name[ug]=يېڭى كۆزنەك ئېچىش
|
||||||
|
Name[uk]=Відкрити нове вікно
|
||||||
|
Name[vi]=Mở cửa sổ mới
|
||||||
|
Name[zh_CN]=新建窗口
|
||||||
|
Name[zh_TW]=開啟新視窗
|
||||||
|
Exec=firefox -new-window
|
||||||
|
OnlyShowIn=Unity;
|
||||||
|
|
||||||
|
[Desktop Action NewPrivateWindow]
|
||||||
|
Name=Open a New Private Window
|
||||||
|
Name[ar]=افتح نافذة جديدة للتصفح الخاص
|
||||||
|
Name[ca]=Obre una finestra nova en mode d'incògnit
|
||||||
|
Name[de]=Ein neues privates Fenster öffnen
|
||||||
|
Name[es]=Abrir una ventana privada nueva
|
||||||
|
Name[fi]=Avaa uusi yksityinen ikkuna
|
||||||
|
Name[fr]=Ouvrir une nouvelle fenêtre de navigation privée
|
||||||
|
Name[he]=פתיחת חלון גלישה פרטית חדש
|
||||||
|
Name[hu]=Új privát ablak nyitása
|
||||||
|
Name[it]=Apri una nuova finestra anonima
|
||||||
|
Name[nb]=Åpne et nytt privat vindu
|
||||||
|
Name[ru]=Новое приватное окно
|
||||||
|
Name[sl]=Odpri novo okno zasebnega brskanja
|
||||||
|
Name[tr]=Yeni bir pencere aç
|
||||||
|
Name[uk]=Відкрити нове вікно у потайливому режимі
|
||||||
|
Name[zh_TW]=開啟新隱私瀏覽視窗
|
||||||
|
Exec=firefox -private-window
|
||||||
|
OnlyShowIn=Unity;
|
43
src/alpine/install/firefox/install_firefox.sh
Normal file
43
src/alpine/install/firefox/install_firefox.sh
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -xe
|
||||||
|
|
||||||
|
apk add --no-cache \
|
||||||
|
firefox
|
||||||
|
|
||||||
|
# Disabling default first run URL
|
||||||
|
cat >/usr/lib/firefox/browser/defaults/preferences/vendor.js <<EOF
|
||||||
|
pref("datareporting.policy.firstRunURL", "");
|
||||||
|
pref("datareporting.policy.dataSubmissionEnabled", false);
|
||||||
|
pref("datareporting.healthreport.service.enabled", false);
|
||||||
|
pref("datareporting.healthreport.uploadEnabled", false);
|
||||||
|
pref("trailhead.firstrun.branches", "nofirstrun-empty");
|
||||||
|
pref("browser.aboutwelcome.enabled", false);
|
||||||
|
EOF
|
||||||
|
|
||||||
|
# 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
|
||||||
|
|
||||||
|
cat >>$HOME/.mozilla/firefox/profiles.ini <<EOL
|
||||||
|
[Install4F96D1932A9F858E]
|
||||||
|
Default=kasm
|
||||||
|
Locked=1
|
||||||
|
EOL
|
||||||
|
|
||||||
|
# Desktop icon and perms
|
||||||
|
cp /usr/share/applications/firefox.desktop $HOME/Desktop/
|
||||||
|
chmod +x $HOME/Desktop/firefox.desktop
|
||||||
|
chown -R 1000:1000 $HOME/.mozilla
|
9
src/alpine/install/geany/install_geany.sh
Normal file
9
src/alpine/install/geany/install_geany.sh
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
apk add --no-cache \
|
||||||
|
geany
|
||||||
|
|
||||||
|
# Desktop icon
|
||||||
|
cp /usr/share/applications/geany.desktop $HOME/Desktop/
|
||||||
|
chmod +x $HOME/Desktop/geany.desktop
|
84
src/alpine/install/gimp/custom_startup.sh
Normal file
84
src/alpine/install/gimp/custom_startup.sh
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
START_COMMAND="gimp"
|
||||||
|
PGREP="gimp"
|
||||||
|
export MAXIMIZE="true"
|
||||||
|
export MAXIMIZE_NAME="GNU Image Manipulation Program"
|
||||||
|
MAXIMIZE_SCRIPT=$STARTUPDIR/maximize_window.sh
|
||||||
|
DEFAULT_ARGS=""
|
||||||
|
ARGS=${APP_ARGS:-$DEFAULT_ARGS}
|
||||||
|
|
||||||
|
options=$(getopt -o gau: -l go,assign,url: -n "$0" -- "$@") || exit
|
||||||
|
eval set -- "$options"
|
||||||
|
|
||||||
|
while [[ $1 != -- ]]; do
|
||||||
|
case $1 in
|
||||||
|
-g|--go) GO='true'; shift 1;;
|
||||||
|
-a|--assign) ASSIGN='true'; shift 1;;
|
||||||
|
-u|--url) OPT_URL=$2; shift 2;;
|
||||||
|
*) echo "bad option: $1" >&2; exit 1;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
|
||||||
|
# Process non-option arguments.
|
||||||
|
for arg; do
|
||||||
|
echo "arg! $arg"
|
||||||
|
done
|
||||||
|
|
||||||
|
FORCE=$2
|
||||||
|
|
||||||
|
kasm_exec() {
|
||||||
|
if [ -n "$OPT_URL" ] ; then
|
||||||
|
URL=$OPT_URL
|
||||||
|
elif [ -n "$1" ] ; then
|
||||||
|
URL=$1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Since we are execing into a container that already has the browser running from startup,
|
||||||
|
# when we don't have a URL to open we want to do nothing. Otherwise a second browser instance would open.
|
||||||
|
if [ -n "$URL" ] ; then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $OPT_URL
|
||||||
|
else
|
||||||
|
echo "No URL specified for exec command. Doing nothing."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
kasm_startup() {
|
||||||
|
if [ -n "$KASM_URL" ] ; then
|
||||||
|
URL=$KASM_URL
|
||||||
|
elif [ -z "$URL" ] ; then
|
||||||
|
URL=$LAUNCH_URL
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$DISABLE_CUSTOM_STARTUP" ] || [ -n "$FORCE" ] ; then
|
||||||
|
|
||||||
|
echo "Entering process startup loop"
|
||||||
|
set +x
|
||||||
|
while true
|
||||||
|
do
|
||||||
|
if ! pgrep -x $PGREP > /dev/null
|
||||||
|
then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
set +e
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $URL
|
||||||
|
set -e
|
||||||
|
fi
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
set -x
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ -n "$GO" ] || [ -n "$ASSIGN" ] ; then
|
||||||
|
kasm_exec
|
||||||
|
else
|
||||||
|
kasm_startup
|
||||||
|
fi
|
9
src/alpine/install/gimp/install_gimp.sh
Normal file
9
src/alpine/install/gimp/install_gimp.sh
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
apk add --no-cache \
|
||||||
|
gimp
|
||||||
|
|
||||||
|
# Desktop icon
|
||||||
|
cp /usr/share/applications/gimp.desktop $HOME/Desktop/
|
||||||
|
chmod +x $HOME/Desktop/gimp.desktop
|
84
src/alpine/install/inkscape/custom_startup.sh
Normal file
84
src/alpine/install/inkscape/custom_startup.sh
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
START_COMMAND="inkscape"
|
||||||
|
PGREP="inkscape"
|
||||||
|
export MAXIMIZE="true"
|
||||||
|
export MAXIMIZE_NAME="Inkscape"
|
||||||
|
MAXIMIZE_SCRIPT=$STARTUPDIR/maximize_window.sh
|
||||||
|
DEFAULT_ARGS=""
|
||||||
|
ARGS=${APP_ARGS:-$DEFAULT_ARGS}
|
||||||
|
|
||||||
|
options=$(getopt -o gau: -l go,assign,url: -n "$0" -- "$@") || exit
|
||||||
|
eval set -- "$options"
|
||||||
|
|
||||||
|
while [[ $1 != -- ]]; do
|
||||||
|
case $1 in
|
||||||
|
-g|--go) GO='true'; shift 1;;
|
||||||
|
-a|--assign) ASSIGN='true'; shift 1;;
|
||||||
|
-u|--url) OPT_URL=$2; shift 2;;
|
||||||
|
*) echo "bad option: $1" >&2; exit 1;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
|
||||||
|
# Process non-option arguments.
|
||||||
|
for arg; do
|
||||||
|
echo "arg! $arg"
|
||||||
|
done
|
||||||
|
|
||||||
|
FORCE=$2
|
||||||
|
|
||||||
|
kasm_exec() {
|
||||||
|
if [ -n "$OPT_URL" ] ; then
|
||||||
|
URL=$OPT_URL
|
||||||
|
elif [ -n "$1" ] ; then
|
||||||
|
URL=$1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Since we are execing into a container that already has the browser running from startup,
|
||||||
|
# when we don't have a URL to open we want to do nothing. Otherwise a second browser instance would open.
|
||||||
|
if [ -n "$URL" ] ; then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $OPT_URL
|
||||||
|
else
|
||||||
|
echo "No URL specified for exec command. Doing nothing."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
kasm_startup() {
|
||||||
|
if [ -n "$KASM_URL" ] ; then
|
||||||
|
URL=$KASM_URL
|
||||||
|
elif [ -z "$URL" ] ; then
|
||||||
|
URL=$LAUNCH_URL
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$DISABLE_CUSTOM_STARTUP" ] || [ -n "$FORCE" ] ; then
|
||||||
|
|
||||||
|
echo "Entering process startup loop"
|
||||||
|
set +x
|
||||||
|
while true
|
||||||
|
do
|
||||||
|
if ! pgrep -x $PGREP > /dev/null
|
||||||
|
then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
set +e
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $URL
|
||||||
|
set -e
|
||||||
|
fi
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
set -x
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ -n "$GO" ] || [ -n "$ASSIGN" ] ; then
|
||||||
|
kasm_exec
|
||||||
|
else
|
||||||
|
kasm_startup
|
||||||
|
fi
|
9
src/alpine/install/inkscape/install_inkscape.sh
Normal file
9
src/alpine/install/inkscape/install_inkscape.sh
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
apk add --no-cache \
|
||||||
|
inkscape
|
||||||
|
|
||||||
|
# Default settings and desktop icon
|
||||||
|
cp /usr/share/applications/org.inkscape.Inkscape.desktop $HOME/Desktop/
|
||||||
|
chmod +x $HOME/Desktop/org.inkscape.Inkscape.desktop
|
85
src/alpine/install/libre_office/custom_startup.sh
Normal file
85
src/alpine/install/libre_office/custom_startup.sh
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
LD_LIBRARY_PATH=:/usr/lib/libreoffice/program:/usr/lib/$(arch)-linux-gnu/
|
||||||
|
START_COMMAND="libreoffice"
|
||||||
|
PGREP="soffice.bin"
|
||||||
|
export MAXIMIZE="true"
|
||||||
|
export MAXIMIZE_NAME="LibreOffice"
|
||||||
|
MAXIMIZE_SCRIPT=$STARTUPDIR/maximize_window.sh
|
||||||
|
DEFAULT_ARGS=""
|
||||||
|
ARGS=${APP_ARGS:-$DEFAULT_ARGS}
|
||||||
|
|
||||||
|
options=$(getopt -o gau: -l go,assign,url: -n "$0" -- "$@") || exit
|
||||||
|
eval set -- "$options"
|
||||||
|
|
||||||
|
while [[ $1 != -- ]]; do
|
||||||
|
case $1 in
|
||||||
|
-g|--go) GO='true'; shift 1;;
|
||||||
|
-a|--assign) ASSIGN='true'; shift 1;;
|
||||||
|
-u|--url) OPT_URL=$2; shift 2;;
|
||||||
|
*) echo "bad option: $1" >&2; exit 1;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
|
||||||
|
# Process non-option arguments.
|
||||||
|
for arg; do
|
||||||
|
echo "arg! $arg"
|
||||||
|
done
|
||||||
|
|
||||||
|
FORCE=$2
|
||||||
|
|
||||||
|
kasm_exec() {
|
||||||
|
if [ -n "$OPT_URL" ] ; then
|
||||||
|
URL=$OPT_URL
|
||||||
|
elif [ -n "$1" ] ; then
|
||||||
|
URL=$1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Since we are execing into a container that already has the browser running from startup,
|
||||||
|
# when we don't have a URL to open we want to do nothing. Otherwise a second browser instance would open.
|
||||||
|
if [ -n "$URL" ] ; then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $OPT_URL
|
||||||
|
else
|
||||||
|
echo "No URL specified for exec command. Doing nothing."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
kasm_startup() {
|
||||||
|
if [ -n "$KASM_URL" ] ; then
|
||||||
|
URL=$KASM_URL
|
||||||
|
elif [ -z "$URL" ] ; then
|
||||||
|
URL=$LAUNCH_URL
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$DISABLE_CUSTOM_STARTUP" ] || [ -n "$FORCE" ] ; then
|
||||||
|
|
||||||
|
echo "Entering process startup loop"
|
||||||
|
set +x
|
||||||
|
while true
|
||||||
|
do
|
||||||
|
if ! pgrep -x $PGREP > /dev/null
|
||||||
|
then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
set +e
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $URL
|
||||||
|
set -e
|
||||||
|
fi
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
set -x
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ -n "$GO" ] || [ -n "$ASSIGN" ] ; then
|
||||||
|
kasm_exec
|
||||||
|
else
|
||||||
|
kasm_startup
|
||||||
|
fi
|
11
src/alpine/install/libre_office/install_libre_office.sh
Normal file
11
src/alpine/install/libre_office/install_libre_office.sh
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
apk add --no-cache \
|
||||||
|
libreoffice \
|
||||||
|
openjdk8-jre \
|
||||||
|
openjdk8-jre-base
|
||||||
|
|
||||||
|
cp /usr/share/applications/libreoffice-startcenter.desktop $HOME/Desktop/
|
||||||
|
chown 1000:1000 $HOME/Desktop/libreoffice-startcenter.desktop
|
||||||
|
chmod +x $HOME/Desktop/libreoffice-startcenter.desktop
|
8
src/alpine/install/misc/install_tools.sh
Normal file
8
src/alpine/install/misc/install_tools.sh
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
apk add --no-cache \
|
||||||
|
nano \
|
||||||
|
vim \
|
||||||
|
xdotool \
|
||||||
|
zip
|
@ -1,14 +1,9 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -ex
|
set -ex
|
||||||
|
|
||||||
if [ "${DISTRO}" == "oracle8" ]; then
|
apk add --no-cache \
|
||||||
dnf install -y obs-studio
|
obs-studio
|
||||||
dnf clean all
|
|
||||||
else
|
|
||||||
yum install -y obs-studio
|
|
||||||
yum clean all
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
# Desktop icon
|
||||||
cp /usr/share/applications/com.obsproject.Studio.desktop $HOME/Desktop/
|
cp /usr/share/applications/com.obsproject.Studio.desktop $HOME/Desktop/
|
||||||
chmod +x $HOME/Desktop/com.obsproject.Studio.desktop
|
chmod +x $HOME/Desktop/com.obsproject.Studio.desktop
|
||||||
|
|
84
src/alpine/install/pinta/custom_startup.sh
Normal file
84
src/alpine/install/pinta/custom_startup.sh
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
START_COMMAND="pinta"
|
||||||
|
PGREP="pinta"
|
||||||
|
export MAXIMIZE="true"
|
||||||
|
export MAXIMIZE_NAME="Pinta"
|
||||||
|
MAXIMIZE_SCRIPT=$STARTUPDIR/maximize_window.sh
|
||||||
|
DEFAULT_ARGS=""
|
||||||
|
ARGS=${APP_ARGS:-$DEFAULT_ARGS}
|
||||||
|
|
||||||
|
options=$(getopt -o gau: -l go,assign,url: -n "$0" -- "$@") || exit
|
||||||
|
eval set -- "$options"
|
||||||
|
|
||||||
|
while [[ $1 != -- ]]; do
|
||||||
|
case $1 in
|
||||||
|
-g|--go) GO='true'; shift 1;;
|
||||||
|
-a|--assign) ASSIGN='true'; shift 1;;
|
||||||
|
-u|--url) OPT_URL=$2; shift 2;;
|
||||||
|
*) echo "bad option: $1" >&2; exit 1;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
|
||||||
|
# Process non-option arguments.
|
||||||
|
for arg; do
|
||||||
|
echo "arg! $arg"
|
||||||
|
done
|
||||||
|
|
||||||
|
FORCE=$2
|
||||||
|
|
||||||
|
kasm_exec() {
|
||||||
|
if [ -n "$OPT_URL" ] ; then
|
||||||
|
URL=$OPT_URL
|
||||||
|
elif [ -n "$1" ] ; then
|
||||||
|
URL=$1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Since we are execing into a container that already has the browser running from startup,
|
||||||
|
# when we don't have a URL to open we want to do nothing. Otherwise a second browser instance would open.
|
||||||
|
if [ -n "$URL" ] ; then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $OPT_URL
|
||||||
|
else
|
||||||
|
echo "No URL specified for exec command. Doing nothing."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
kasm_startup() {
|
||||||
|
if [ -n "$KASM_URL" ] ; then
|
||||||
|
URL=$KASM_URL
|
||||||
|
elif [ -z "$URL" ] ; then
|
||||||
|
URL=$LAUNCH_URL
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$DISABLE_CUSTOM_STARTUP" ] || [ -n "$FORCE" ] ; then
|
||||||
|
|
||||||
|
echo "Entering process startup loop"
|
||||||
|
set +x
|
||||||
|
while true
|
||||||
|
do
|
||||||
|
if ! pgrep -x $PGREP > /dev/null
|
||||||
|
then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
set +e
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $URL
|
||||||
|
set -e
|
||||||
|
fi
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
set -x
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ -n "$GO" ] || [ -n "$ASSIGN" ] ; then
|
||||||
|
kasm_exec
|
||||||
|
else
|
||||||
|
kasm_startup
|
||||||
|
fi
|
9
src/alpine/install/pinta/install_pinta.sh
Normal file
9
src/alpine/install/pinta/install_pinta.sh
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
apk add --no-cache \
|
||||||
|
pinta
|
||||||
|
|
||||||
|
# Default settings and desktop icon
|
||||||
|
cp /usr/share/applications/pinta.desktop $HOME/Desktop/
|
||||||
|
chmod +x $HOME/Desktop/pinta.desktop
|
97
src/alpine/install/remmina/custom_startup.sh
Normal file
97
src/alpine/install/remmina/custom_startup.sh
Normal file
@ -0,0 +1,97 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
START_COMMAND="remmina"
|
||||||
|
PGREP="remmina"
|
||||||
|
DEFAULT_ARGS=""
|
||||||
|
export MAXIMIZE="false"
|
||||||
|
MAXIMIZE_SCRIPT=$STARTUPDIR/maximize_window.sh
|
||||||
|
ARGS=${APP_ARGS:-$DEFAULT_ARGS}
|
||||||
|
|
||||||
|
update_profile() {
|
||||||
|
if [ -n "$REMMINA_OPTIONS" ] && [ -n "$REMMINA_PROFILE" ] ; then
|
||||||
|
R_OPTIONS=""
|
||||||
|
for i in ${REMMINA_OPTIONS//,/ }
|
||||||
|
do
|
||||||
|
R_OPTIONS="$R_OPTIONS --set-option $i"
|
||||||
|
done
|
||||||
|
|
||||||
|
remmina --update-profile $REMMINA_PROFILE $R_OPTIONS
|
||||||
|
unset REMMINA_OPTIONS
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
options=$(getopt -o gau: -l go,assign,url: -n "$0" -- "$@") || exit
|
||||||
|
eval set -- "$options"
|
||||||
|
|
||||||
|
while [[ $1 != -- ]]; do
|
||||||
|
case $1 in
|
||||||
|
-g|--go) GO='true'; shift 1;;
|
||||||
|
-a|--assign) ASSIGN='true'; shift 1;;
|
||||||
|
-u|--url) OPT_URL=$2; shift 2;;
|
||||||
|
*) echo "bad option: $1" >&2; exit 1;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
|
||||||
|
# Process non-option arguments.
|
||||||
|
for arg; do
|
||||||
|
echo "arg! $arg"
|
||||||
|
done
|
||||||
|
|
||||||
|
FORCE=$2
|
||||||
|
|
||||||
|
kasm_exec() {
|
||||||
|
if [ -n "$OPT_URL" ] ; then
|
||||||
|
URL=$OPT_URL
|
||||||
|
elif [ -n "$1" ] ; then
|
||||||
|
URL=$1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Since we are execing into a container that already has the browser running from startup,
|
||||||
|
# when we don't have a URL to open we want to do nothing. Otherwise a second browser instance would open.
|
||||||
|
if [ -n "$URL" ] ; then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $OPT_URL
|
||||||
|
else
|
||||||
|
echo "No URL specified for exec command. Doing nothing."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
kasm_startup() {
|
||||||
|
if [ -n "$KASM_URL" ] ; then
|
||||||
|
URL=$KASM_URL
|
||||||
|
elif [ -z "$URL" ] ; then
|
||||||
|
URL=$LAUNCH_URL
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$DISABLE_CUSTOM_STARTUP" ] || [ -n "$FORCE" ] ; then
|
||||||
|
|
||||||
|
echo "Entering process startup loop"
|
||||||
|
set +x
|
||||||
|
while true
|
||||||
|
do
|
||||||
|
if ! pgrep -x $PGREP > /dev/null
|
||||||
|
then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
set +e
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
update_profile
|
||||||
|
$START_COMMAND $ARGS $URL $REMMINA_PROFILE
|
||||||
|
set -e
|
||||||
|
fi
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
set -x
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ -n "$GO" ] || [ -n "$ASSIGN" ] ; then
|
||||||
|
kasm_exec
|
||||||
|
else
|
||||||
|
kasm_startup
|
||||||
|
fi
|
9
src/alpine/install/remmina/install_remmina.sh
Normal file
9
src/alpine/install/remmina/install_remmina.sh
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
apk add --no-cache \
|
||||||
|
remmina
|
||||||
|
|
||||||
|
# Desktop icon
|
||||||
|
cp /usr/share/applications/org.remmina.Remmina.desktop $HOME/Desktop/
|
||||||
|
chmod +x $HOME/Desktop/org.remmina.Remmina.desktop
|
13
src/alpine/install/remmina/remmina.pref
Normal file
13
src/alpine/install/remmina/remmina.pref
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
[remmina_pref]
|
||||||
|
disable_tray_icon=true
|
||||||
|
|
||||||
|
[usage_stats]
|
||||||
|
periodic_usage_stats_permitted=false
|
||||||
|
periodic_usage_stats_last_sent=0
|
||||||
|
periodic_usage_stats_uuid_prefix=
|
||||||
|
|
||||||
|
[remmina_news]
|
||||||
|
periodic_news_permitted=false
|
||||||
|
periodic_rmnews_last_get=1617502161
|
||||||
|
periodic_rmnews_get_count=2
|
||||||
|
periodic_rmnews_uuid_prefix=ONIZ7TTK015NCL
|
5
src/alpine/install/terraform/install_terraform.sh
Normal file
5
src/alpine/install/terraform/install_terraform.sh
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
apk add --no-cache \
|
||||||
|
terraform
|
84
src/alpine/install/thunderbird/custom_startup.sh
Normal file
84
src/alpine/install/thunderbird/custom_startup.sh
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
START_COMMAND="thunderbird"
|
||||||
|
PGREP="thunderbird"
|
||||||
|
export MAXIMIZE="true"
|
||||||
|
export MAXIMIZE_NAME="Mozilla"
|
||||||
|
MAXIMIZE_SCRIPT=$STARTUPDIR/maximize_window.sh
|
||||||
|
DEFAULT_ARGS=""
|
||||||
|
ARGS=${APP_ARGS:-$DEFAULT_ARGS}
|
||||||
|
|
||||||
|
options=$(getopt -o gau: -l go,assign,url: -n "$0" -- "$@") || exit
|
||||||
|
eval set -- "$options"
|
||||||
|
|
||||||
|
while [[ $1 != -- ]]; do
|
||||||
|
case $1 in
|
||||||
|
-g|--go) GO='true'; shift 1;;
|
||||||
|
-a|--assign) ASSIGN='true'; shift 1;;
|
||||||
|
-u|--url) OPT_URL=$2; shift 2;;
|
||||||
|
*) echo "bad option: $1" >&2; exit 1;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
shift
|
||||||
|
|
||||||
|
# Process non-option arguments.
|
||||||
|
for arg; do
|
||||||
|
echo "arg! $arg"
|
||||||
|
done
|
||||||
|
|
||||||
|
FORCE=$2
|
||||||
|
|
||||||
|
kasm_exec() {
|
||||||
|
if [ -n "$OPT_URL" ] ; then
|
||||||
|
URL=$OPT_URL
|
||||||
|
elif [ -n "$1" ] ; then
|
||||||
|
URL=$1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Since we are execing into a container that already has the browser running from startup,
|
||||||
|
# when we don't have a URL to open we want to do nothing. Otherwise a second browser instance would open.
|
||||||
|
if [ -n "$URL" ] ; then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $OPT_URL
|
||||||
|
else
|
||||||
|
echo "No URL specified for exec command. Doing nothing."
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
kasm_startup() {
|
||||||
|
if [ -n "$KASM_URL" ] ; then
|
||||||
|
URL=$KASM_URL
|
||||||
|
elif [ -z "$URL" ] ; then
|
||||||
|
URL=$LAUNCH_URL
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$DISABLE_CUSTOM_STARTUP" ] || [ -n "$FORCE" ] ; then
|
||||||
|
|
||||||
|
echo "Entering process startup loop"
|
||||||
|
set +x
|
||||||
|
while true
|
||||||
|
do
|
||||||
|
if ! pgrep -x $PGREP > /dev/null
|
||||||
|
then
|
||||||
|
/usr/bin/filter_ready
|
||||||
|
/usr/bin/desktop_ready
|
||||||
|
set +e
|
||||||
|
bash ${MAXIMIZE_SCRIPT} &
|
||||||
|
$START_COMMAND $ARGS $URL
|
||||||
|
set -e
|
||||||
|
fi
|
||||||
|
sleep 1
|
||||||
|
done
|
||||||
|
set -x
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ -n "$GO" ] || [ -n "$ASSIGN" ] ; then
|
||||||
|
kasm_exec
|
||||||
|
else
|
||||||
|
kasm_startup
|
||||||
|
fi
|
9
src/alpine/install/thunderbird/install_thunderbird.sh
Normal file
9
src/alpine/install/thunderbird/install_thunderbird.sh
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
apk add --no-cache \
|
||||||
|
thunderbird
|
||||||
|
|
||||||
|
# Desktop icon
|
||||||
|
cp /usr/share/applications/thunderbird.desktop $HOME/Desktop/
|
||||||
|
chmod +x $HOME/Desktop/thunderbird.desktop
|
13
src/alpine/install/tools/install_tools_deluxe.sh
Normal file
13
src/alpine/install/tools/install_tools_deluxe.sh
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
apk add --no-cache \
|
||||||
|
git \
|
||||||
|
tmux \
|
||||||
|
vlc-qt
|
||||||
|
|
||||||
|
# Desktop icon
|
||||||
|
cp /usr/share/applications/vlc.desktop $HOME/Desktop/
|
||||||
|
chmod +x $HOME/Desktop/vlc.desktop
|
||||||
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -ex
|
set -ex
|
||||||
|
|
||||||
if [ "${DISTRO}" == "oracle8" ]; then
|
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8|fedora37) ]]; then
|
||||||
dnf install -y ansible
|
dnf install -y ansible
|
||||||
dnf clean all
|
dnf clean all
|
||||||
else
|
else
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -ex
|
set -ex
|
||||||
if [ "${DISTRO}" == "oracle8" ]; then
|
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8|fedora37) ]]; then
|
||||||
dnf install -y gimp
|
dnf install -y gimp
|
||||||
dnf clean all
|
dnf clean all
|
||||||
else
|
else
|
||||||
|
@ -7,7 +7,7 @@ if [ "$ARCH" == "amd64" ] ; then
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "${DISTRO}" == "oracle8" ]; then
|
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8|fedora37) ]]; then
|
||||||
dnf install -y \
|
dnf install -y \
|
||||||
libreoffice-core \
|
libreoffice-core \
|
||||||
libreoffice-writer \
|
libreoffice-writer \
|
||||||
|
@ -7,7 +7,7 @@ if [ "$ARCH" == "arm64" ] ; then
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "${DISTRO}" == "oracle8" ]; then
|
if [[ "${DISTRO}" == @(oracle8|rockylinux8|almalinux8) ]]; then
|
||||||
dnf install -y obs-studio
|
dnf install -y obs-studio
|
||||||
dnf clean all
|
dnf clean all
|
||||||
else
|
else
|
||||||
|
@ -8,7 +8,7 @@ if [ "$ARCH" == "arm64" ] ; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
curl -L -o only_office.rpm "https://download.onlyoffice.com/install/desktop/editors/linux/onlyoffice-desktopeditors.$(arch).rpm"
|
curl -L -o only_office.rpm "https://download.onlyoffice.com/install/desktop/editors/linux/onlyoffice-desktopeditors.$(arch).rpm"
|
||||||
if [ "${DISTRO}" == "oracle8" ]; then
|
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8|fedora37) ]]; then
|
||||||
dnf localinstall -y only_office.rpm
|
dnf localinstall -y only_office.rpm
|
||||||
dnf clean all
|
dnf clean all
|
||||||
else
|
else
|
||||||
|
@ -21,7 +21,7 @@ version=4.12.2
|
|||||||
|
|
||||||
# This path may not be accurate once arm64 support arrives. Specifically I don't know if it will still be under x64
|
# 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
|
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
|
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8|fedora37) ]]; then
|
||||||
dnf localinstall -y slack.rpm
|
dnf localinstall -y slack.rpm
|
||||||
dnf clean all
|
dnf clean all
|
||||||
else
|
else
|
||||||
|
@ -8,7 +8,7 @@ fi
|
|||||||
|
|
||||||
rpm -v --import https://download.sublimetext.com/sublimehq-rpm-pub.gpg
|
rpm -v --import https://download.sublimetext.com/sublimehq-rpm-pub.gpg
|
||||||
|
|
||||||
if [ "${DISTRO}" == "oracle8" ]; then
|
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8|fedora37) ]]; then
|
||||||
dnf config-manager --add-repo https://download.sublimetext.com/rpm/stable/$(arch)/sublime-text.repo
|
dnf config-manager --add-repo https://download.sublimetext.com/rpm/stable/$(arch)/sublime-text.repo
|
||||||
dnf install -y sublime-text
|
dnf install -y sublime-text
|
||||||
dnf clean all
|
dnf clean all
|
||||||
|
@ -8,10 +8,14 @@ if [ "${ARCH}" == "arm64" ] ; then
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "${DISTRO}" == "oracle8" ]; then
|
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8) ]]; then
|
||||||
dnf config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo
|
dnf config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo
|
||||||
dnf install -y terraform
|
dnf install -y terraform
|
||||||
dnf clean all
|
dnf clean all
|
||||||
|
elif [ "${DISTRO}" == "fedora37" ]; then
|
||||||
|
dnf config-manager --add-repo https://rpm.releases.hashicorp.com/fedora/hashicorp.repo
|
||||||
|
dnf install -y terraform
|
||||||
|
dnf clean all
|
||||||
else
|
else
|
||||||
yum-config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo
|
yum-config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo
|
||||||
yum install -y terraform
|
yum install -y terraform
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
set -ex
|
set -ex
|
||||||
|
|
||||||
if [ -f /usr/bin/dnf ]; then
|
if [ -f /usr/bin/dnf ]; then
|
||||||
dnf install -y vlc git tmux
|
dnf install -y vlc git tmux xz glibc-locale-source glibc-langpack-en
|
||||||
dnf clean all
|
dnf clean all
|
||||||
else
|
else
|
||||||
yum-config-manager --enable ol7_optional_latest
|
yum-config-manager --enable ol7_optional_latest
|
||||||
|
@ -3,7 +3,7 @@ set -ex
|
|||||||
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/x64/g')
|
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
|
wget -q https://update.code.visualstudio.com/latest/linux-rpm-${ARCH}/stable -O vs_code.rpm
|
||||||
if [ "${DISTRO}" == "oracle8" ]; then
|
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8|fedora37) ]]; then
|
||||||
wget -q https://update.code.visualstudio.com/latest/linux-rpm-${ARCH}/stable -O vs_code.rpm
|
wget -q https://update.code.visualstudio.com/latest/linux-rpm-${ARCH}/stable -O vs_code.rpm
|
||||||
dnf localinstall -y vs_code.rpm
|
dnf localinstall -y vs_code.rpm
|
||||||
else
|
else
|
||||||
@ -20,7 +20,7 @@ chown 1000:1000 $HOME/Desktop/code.desktop
|
|||||||
rm vs_code.rpm
|
rm vs_code.rpm
|
||||||
|
|
||||||
# Conveniences for python development
|
# Conveniences for python development
|
||||||
if [ "${DISTRO}" == "oracle8" ]; then
|
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8|fedora37) ]]; then
|
||||||
dnf install -y python3-setuptools python3-virtualenv
|
dnf install -y python3-setuptools python3-virtualenv
|
||||||
dnf clean all
|
dnf clean all
|
||||||
else
|
else
|
||||||
|
@ -8,7 +8,7 @@ fi
|
|||||||
|
|
||||||
|
|
||||||
wget -q https://zoom.us/client/latest/zoom_$(arch).rpm
|
wget -q https://zoom.us/client/latest/zoom_$(arch).rpm
|
||||||
if [ "${DISTRO}" == "oracle8" ]; then
|
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8|fedora37) ]]; then
|
||||||
dnf localinstall -y zoom_$(arch).rpm
|
dnf localinstall -y zoom_$(arch).rpm
|
||||||
dnf clean all
|
dnf clean all
|
||||||
else
|
else
|
||||||
|
@ -1,7 +1,12 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -ex
|
set -ex
|
||||||
|
|
||||||
apt-get update
|
if grep -q "ID=debian" /etc/os-release; then
|
||||||
apt-get install -y software-properties-common
|
apt-get update
|
||||||
apt-add-repository --yes --update ppa:ansible/ansible
|
apt-get install -y ansible
|
||||||
apt-get install -y ansible
|
else
|
||||||
|
apt-get update
|
||||||
|
apt-get install -y software-properties-common
|
||||||
|
apt-add-repository --yes --update ppa:ansible/ansible
|
||||||
|
apt-get install -y ansible
|
||||||
|
fi
|
||||||
|
@ -10,13 +10,13 @@ if [ "$ARCH" == "arm64" ] ; then
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "${DISTRO}" == @(centos|oracle7|oracle8) ]]; then
|
if [[ "${DISTRO}" == @(centos|oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8) ]]; then
|
||||||
if [ ! -z "${CHROME_VERSION}" ]; 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
|
wget https://dl.google.com/linux/chrome/rpm/stable/x86_64/google-chrome-stable-${CHROME_VERSION}.x86_64.rpm -O chrome.rpm
|
||||||
else
|
else
|
||||||
wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm -O chrome.rpm
|
wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm -O chrome.rpm
|
||||||
fi
|
fi
|
||||||
if [ "${DISTRO}" == "oracle8" ]; then
|
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8) ]]; then
|
||||||
dnf localinstall -y chrome.rpm
|
dnf localinstall -y chrome.rpm
|
||||||
dnf clean all
|
dnf clean all
|
||||||
else
|
else
|
||||||
@ -33,7 +33,6 @@ elif [ "${DISTRO}" == "opensuse" ]; then
|
|||||||
zypper clean --all
|
zypper clean --all
|
||||||
else
|
else
|
||||||
apt-get update
|
apt-get update
|
||||||
apt-get remove -y chromium-browser-l10n chromium-codecs-ffmpeg chromium-browser
|
|
||||||
if [ ! -z "${CHROME_VERSION}" ]; then
|
if [ ! -z "${CHROME_VERSION}" ]; then
|
||||||
wget https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${CHROME_VERSION}_amd64.deb -O chrome.deb
|
wget https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${CHROME_VERSION}_amd64.deb -O chrome.deb
|
||||||
else
|
else
|
||||||
@ -65,7 +64,7 @@ EOL
|
|||||||
chmod +x /usr/bin/google-chrome
|
chmod +x /usr/bin/google-chrome
|
||||||
cp /usr/bin/google-chrome /usr/bin/chrome
|
cp /usr/bin/google-chrome /usr/bin/chrome
|
||||||
|
|
||||||
if [[ "${DISTRO}" == @(centos|oracle7|oracle8|opensuse) ]]; then
|
if [[ "${DISTRO}" == @(centos|oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8|opensuse) ]]; then
|
||||||
cat >> $HOME/.config/mimeapps.list <<EOF
|
cat >> $HOME/.config/mimeapps.list <<EOF
|
||||||
[Default Applications]
|
[Default Applications]
|
||||||
x-scheme-handler/http=google-chrome.desktop
|
x-scheme-handler/http=google-chrome.desktop
|
||||||
|
@ -4,8 +4,8 @@ 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'"
|
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')
|
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
|
||||||
|
|
||||||
if [[ "${DISTRO}" == @(centos|oracle7|oracle8) ]]; then
|
if [[ "${DISTRO}" == @(centos|oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8|fedora37) ]]; then
|
||||||
if [ "${DISTRO}" == "oracle8" ]; then
|
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8|fedora37) ]]; then
|
||||||
dnf install -y chromium
|
dnf install -y chromium
|
||||||
dnf clean all
|
dnf clean all
|
||||||
else
|
else
|
||||||
@ -15,6 +15,9 @@ if [[ "${DISTRO}" == @(centos|oracle7|oracle8) ]]; then
|
|||||||
elif [ "${DISTRO}" == "opensuse" ]; then
|
elif [ "${DISTRO}" == "opensuse" ]; then
|
||||||
zypper install -yn chromium
|
zypper install -yn chromium
|
||||||
zypper clean --all
|
zypper clean --all
|
||||||
|
elif grep -q "ID=debian" /etc/os-release || grep -q "ID=kali" /etc/os-release || grep -q "ID=parrot" /etc/os-release; then
|
||||||
|
apt-get update
|
||||||
|
apt-get install -y chromium
|
||||||
else
|
else
|
||||||
apt-get update
|
apt-get update
|
||||||
apt-get install -y software-properties-common ttf-mscorefonts-installer
|
apt-get install -y software-properties-common ttf-mscorefonts-installer
|
||||||
@ -61,44 +64,54 @@ else
|
|||||||
rm "${chromium_data}"
|
rm "${chromium_data}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
sed -i 's/-stable//g' /usr/share/applications/chromium-browser.desktop
|
if grep -q "ID=debian" /etc/os-release || grep -q "ID=kali" /etc/os-release || grep -q "ID=parrot" /etc/os-release; then
|
||||||
|
REAL_BIN=chromium
|
||||||
|
else
|
||||||
|
REAL_BIN=chromium-browser
|
||||||
|
fi
|
||||||
|
|
||||||
cp /usr/share/applications/chromium-browser.desktop $HOME/Desktop/
|
|
||||||
chown 1000:1000 $HOME/Desktop/chromium-browser.desktop
|
|
||||||
|
|
||||||
mv /usr/bin/chromium-browser /usr/bin/chromium-browser-orig
|
sed -i 's/-stable//g' /usr/share/applications/${REAL_BIN}.desktop
|
||||||
cat >/usr/bin/chromium-browser <<EOL
|
|
||||||
|
if ! grep -q "ID=kali" /etc/os-release; then
|
||||||
|
cp /usr/share/applications/${REAL_BIN}.desktop $HOME/Desktop/
|
||||||
|
chmod +x $HOME/Desktop/${REAL_BIN}.desktop
|
||||||
|
chown 1000:1000 $HOME/Desktop/${REAL_BIN}.desktop
|
||||||
|
fi
|
||||||
|
|
||||||
|
mv /usr/bin/${REAL_BIN} /usr/bin/${REAL_BIN}-orig
|
||||||
|
cat >/usr/bin/${REAL_BIN} <<EOL
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
sed -i 's/"exited_cleanly":false/"exited_cleanly":true/' ~/.config/chromium/Default/Preferences
|
sed -i 's/"exited_cleanly":false/"exited_cleanly":true/' ~/.config/chromium/Default/Preferences
|
||||||
sed -i 's/"exit_type":"Crashed"/"exit_type":"None"/' ~/.config/chromium/Default/Preferences
|
sed -i 's/"exit_type":"Crashed"/"exit_type":"None"/' ~/.config/chromium/Default/Preferences
|
||||||
if [ -f /opt/VirtualGL/bin/vglrun ] && [ ! -z "\${KASM_EGL_CARD}" ] && [ ! -z "\${KASM_RENDERD}" ] && [ -O "\${KASM_RENDERD}" ] && [ -O "\${KASM_EGL_CARD}" ] ; then
|
if [ -f /opt/VirtualGL/bin/vglrun ] && [ ! -z "\${KASM_EGL_CARD}" ] && [ ! -z "\${KASM_RENDERD}" ] && [ -O "\${KASM_RENDERD}" ] && [ -O "\${KASM_EGL_CARD}" ] ; then
|
||||||
echo "Starting Chrome with GPU Acceleration on EGL device \${KASM_EGL_CARD}"
|
echo "Starting Chrome with GPU Acceleration on EGL device \${KASM_EGL_CARD}"
|
||||||
vglrun -d "\${KASM_EGL_CARD}" /usr/bin/chromium-browser-orig ${CHROME_ARGS} "\$@"
|
vglrun -d "\${KASM_EGL_CARD}" /usr/bin/${REAL_BIN}-orig ${CHROME_ARGS} "\$@"
|
||||||
else
|
else
|
||||||
echo "Starting Chrome"
|
echo "Starting Chrome"
|
||||||
/usr/bin/chromium-browser-orig ${CHROME_ARGS} "\$@"
|
/usr/bin/${REAL_BIN}-orig ${CHROME_ARGS} "\$@"
|
||||||
fi
|
fi
|
||||||
EOL
|
EOL
|
||||||
chmod +x /usr/bin/chromium-browser
|
chmod +x /usr/bin/${REAL_BIN}
|
||||||
|
|
||||||
if [ "${DISTRO}" != "opensuse" ]; then
|
if [ "${DISTRO}" != "opensuse" ] && ! grep -q "ID=debian" /etc/os-release && ! grep -q "ID=kali" /etc/os-release && ! grep -q "ID=parrot" /etc/os-release; then
|
||||||
cp /usr/bin/chromium-browser /usr/bin/chromium
|
cp /usr/bin/chromium-browser /usr/bin/chromium
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "${DISTRO}" == @(centos|oracle7|oracle8|opensuse) ]]; then
|
if [[ "${DISTRO}" == @(centos|oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8|opensuse|fedora37) ]]; then
|
||||||
cat >> $HOME/.config/mimeapps.list <<EOF
|
cat >> $HOME/.config/mimeapps.list <<EOF
|
||||||
[Default Applications]
|
[Default Applications]
|
||||||
x-scheme-handler/http=chromium-browser.desktop
|
x-scheme-handler/http=${REAL_BIN}.desktop
|
||||||
x-scheme-handler/https=chromium-browser.desktop
|
x-scheme-handler/https=${REAL_BIN}.desktop
|
||||||
x-scheme-handler/ftp=chromium-browser.desktop
|
x-scheme-handler/ftp=${REAL_BIN}.desktop
|
||||||
x-scheme-handler/chrome=chromium-browser.desktop
|
x-scheme-handler/chrome=${REAL_BIN}.desktop
|
||||||
text/html=chromium-browser.desktop
|
text/html=${REAL_BIN}.desktop
|
||||||
application/x-extension-htm=chromium-browser.desktop
|
application/x-extension-htm=${REAL_BIN}.desktop
|
||||||
application/x-extension-html=chromium-browser.desktop
|
application/x-extension-html=${REAL_BIN}.desktop
|
||||||
application/x-extension-shtml=chromium-browser.desktop
|
application/x-extension-shtml=${REAL_BIN}.desktop
|
||||||
application/xhtml+xml=chromium-browser.desktop
|
application/xhtml+xml=${REAL_BIN}.desktop
|
||||||
application/x-extension-xhtml=chromium-browser.desktop
|
application/x-extension-xhtml=${REAL_BIN}.desktop
|
||||||
application/x-extension-xht=chromium-browser.desktop
|
application/x-extension-xht=${REAL_BIN}.desktop
|
||||||
EOF
|
EOF
|
||||||
else
|
else
|
||||||
sed -i 's@exec -a "$0" "$HERE/chromium" "$\@"@@g' /usr/bin/x-www-browser
|
sed -i 's@exec -a "$0" "$HERE/chromium" "$\@"@@g' /usr/bin/x-www-browser
|
||||||
|
@ -6,6 +6,7 @@ apt-get install -y \
|
|||||||
ca-certificates \
|
ca-certificates \
|
||||||
curl \
|
curl \
|
||||||
dbus-user-session \
|
dbus-user-session \
|
||||||
|
fuse-overlayfs \
|
||||||
kmod \
|
kmod \
|
||||||
iptables \
|
iptables \
|
||||||
openssh-client \
|
openssh-client \
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user