mirror of
https://github.com/kasmtech/workspaces-images.git
synced 2024-11-24 00:53:55 +01:00
Resolve KASM-4025 "Feature/ new images"
This commit is contained in:
parent
1ba3908f23
commit
60cb83e030
433
.gitlab-ci.yml
433
.gitlab-ci.yml
@ -5,12 +5,14 @@ variables:
|
||||
KASM_RELEASE: "1.12.0"
|
||||
DOCKER_AUTH_CONFIG: ${_DOCKER_AUTH_CONFIG}
|
||||
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: "core-ubuntu-focal"
|
||||
USE_PRIVATE_IMAGES: 0
|
||||
|
||||
# YAML level anchors
|
||||
######################
|
||||
# YAML level anchors #
|
||||
######################
|
||||
.MULTI_ARCH_BUILDS: &MULTI_ARCH_BUILDS
|
||||
- audacity
|
||||
- chromium
|
||||
@ -38,9 +40,23 @@ variables:
|
||||
- vs-code
|
||||
|
||||
.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
|
||||
- oracle-9-desktop
|
||||
- parrotos-5-desktop
|
||||
- retroarch
|
||||
- rockylinux-8-desktop
|
||||
- rockylinux-9-desktop
|
||||
- super-tux-kart
|
||||
- ubuntu-focal-dind
|
||||
- ubuntu-focal-dind-rootless
|
||||
- ubuntu-jammy-dind
|
||||
- ubuntu-jammy-dind-rootless
|
||||
- vivaldi
|
||||
|
||||
.SINGLE_ARCH_BUILDS: &SINGLE_ARCH_BUILDS
|
||||
@ -59,17 +75,86 @@ variables:
|
||||
- only-office
|
||||
- oracle-7-desktop
|
||||
- postman
|
||||
- remnux-focal-desktop
|
||||
- signal
|
||||
- steam
|
||||
- teams
|
||||
- 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-rootless
|
||||
- ubuntu-jammy-dind
|
||||
- ubuntu-jammy-dind-rootless
|
||||
- unityhub
|
||||
- zoom
|
||||
- zsnes
|
||||
|
||||
.NON_UBUNTU_IMAGES: &NON_UBUNTU_IMAGES
|
||||
- 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:
|
||||
- readme
|
||||
@ -83,7 +168,9 @@ before_script:
|
||||
- export SANITIZED_BRANCH="$(echo $CI_COMMIT_REF_NAME | sed -r 's#^release/##' | sed 's/\//_/g')"
|
||||
- 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:
|
||||
stage: build
|
||||
image: ${ORG_NAME}/docker-buildx-private:develop
|
||||
@ -100,8 +187,16 @@ build_browser_images:
|
||||
- ls docs/$KASM_IMAGE/description.txt
|
||||
# Check for private variable to build against private core images
|
||||
- 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:
|
||||
- develop
|
||||
- /^release\/.*$/
|
||||
@ -111,7 +206,7 @@ build_browser_images:
|
||||
- aws-autoscale
|
||||
parallel:
|
||||
matrix:
|
||||
- KASM_IMAGE: [chrome, chromium, firefox, tor-browser, edge, brave, vivaldi]
|
||||
- KASM_IMAGE: *BROWSER_IMAGES
|
||||
|
||||
build_app_images:
|
||||
stage: build
|
||||
@ -129,8 +224,16 @@ build_app_images:
|
||||
- ls docs/$KASM_IMAGE/description.txt
|
||||
# Check for private variable to build against private core images
|
||||
- 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:
|
||||
- develop
|
||||
- /^release\/.*$/
|
||||
@ -140,7 +243,7 @@ build_app_images:
|
||||
- aws-autoscale
|
||||
parallel:
|
||||
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:
|
||||
stage: build
|
||||
@ -157,12 +260,22 @@ build_ubuntu_desktop_images:
|
||||
- ls docs/$KASM_IMAGE/README.md
|
||||
- ls docs/$KASM_IMAGE/description.txt
|
||||
# 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-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
|
||||
- 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:
|
||||
- develop
|
||||
- /^release\/.*$/
|
||||
@ -172,7 +285,7 @@ build_ubuntu_desktop_images:
|
||||
- aws-autoscale
|
||||
parallel:
|
||||
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:
|
||||
stage: build
|
||||
@ -189,16 +302,33 @@ build_non_ubuntu:
|
||||
- ls docs/$KASM_IMAGE/README.md
|
||||
- ls docs/$KASM_IMAGE/description.txt
|
||||
# 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 =~ '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-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 =~ 'ubuntu-jammy-desktop' ]]; then CORE_IMAGE=core-ubuntu-jammy; 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
|
||||
- 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:
|
||||
- develop
|
||||
- /^release\/.*$/
|
||||
@ -208,7 +338,44 @@ build_non_ubuntu:
|
||||
- aws-autoscale
|
||||
parallel:
|
||||
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:
|
||||
stage: build
|
||||
@ -226,8 +393,16 @@ build_games:
|
||||
- ls docs/$KASM_IMAGE/description.txt
|
||||
# Check for private variable to build against private core images
|
||||
- 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:
|
||||
- develop
|
||||
- /^release\/.*$/
|
||||
@ -237,9 +412,11 @@ build_games:
|
||||
- aws-autoscale
|
||||
parallel:
|
||||
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:
|
||||
stage: build
|
||||
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/description.txt
|
||||
# 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 =~ '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-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-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
|
||||
- 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/description.txt
|
||||
# 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 =~ '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-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-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
|
||||
- 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 =~ 'tracelabs' ]]; then CORE_IMAGE=core-kali-rolling; fi
|
||||
- if [[ $KASM_IMAGE =~ 'oracle-7-desktop' ]]; then CORE_IMAGE=core-oracle-7; fi
|
||||
- if [[ $KASM_IMAGE =~ 'oracle-8-desktop' ]]; then CORE_IMAGE=core-oracle-8; fi
|
||||
- if [[ $KASM_IMAGE =~ 'opensuse-15-desktop' ]]; then CORE_IMAGE=core-opensuse-15; fi
|
||||
- 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
|
||||
- if [[ $KASM_IMAGE =~ 'remnux-focal-desktop' ]]; then CORE_IMAGE=core-remnux-focal; fi
|
||||
# Check for private variable to build against private core images
|
||||
- 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:
|
||||
stage: test
|
||||
script:
|
||||
- docker pull kasmweb/kasm-tester:1.12.0
|
||||
- docker pull kasmweb/kasm-tester:1.13.0
|
||||
- >
|
||||
docker run --rm --privileged
|
||||
-e KASM_PORT=443
|
||||
@ -360,7 +557,7 @@ test_multi_arch_dev:
|
||||
-e S3_BUCKET=kasm-ci
|
||||
-e COMMIT=${CI_COMMIT_SHA}
|
||||
-e REPO=workspaces-images
|
||||
kasmweb/kasm-tester:1.12.0
|
||||
kasmweb/kasm-tester:1.13.0
|
||||
except:
|
||||
- develop
|
||||
- /^release\/.*$/
|
||||
@ -375,7 +572,7 @@ test_multi_arch_dev:
|
||||
test_multi_arch_dev2:
|
||||
stage: test
|
||||
script:
|
||||
- docker pull kasmweb/kasm-tester:1.12.0
|
||||
- docker pull kasmweb/kasm-tester:1.13.0
|
||||
- >
|
||||
docker run --rm --privileged
|
||||
-e KASM_PORT=443
|
||||
@ -392,7 +589,7 @@ test_multi_arch_dev2:
|
||||
-e S3_BUCKET=kasm-ci
|
||||
-e COMMIT=${CI_COMMIT_SHA}
|
||||
-e REPO=workspaces-images
|
||||
kasmweb/kasm-tester:1.12.0
|
||||
kasmweb/kasm-tester:1.13.0
|
||||
except:
|
||||
- develop
|
||||
- /^release\/.*$/
|
||||
@ -407,7 +604,7 @@ test_multi_arch_dev2:
|
||||
test_single_arch_dev:
|
||||
stage: test
|
||||
script:
|
||||
- docker pull kasmweb/kasm-tester:1.12.0
|
||||
- docker pull kasmweb/kasm-tester:1.13.0
|
||||
- >
|
||||
docker run --rm --privileged
|
||||
-e KASM_PORT=443
|
||||
@ -424,7 +621,7 @@ test_single_arch_dev:
|
||||
-e S3_BUCKET=kasm-ci
|
||||
-e COMMIT=${CI_COMMIT_SHA}
|
||||
-e REPO=workspaces-images
|
||||
kasmweb/kasm-tester:1.12.0
|
||||
kasmweb/kasm-tester:1.13.0
|
||||
except:
|
||||
- develop
|
||||
- /^release\/.*$/
|
||||
@ -520,7 +717,9 @@ link_tests_multi_arch_dev2:
|
||||
- ARCH: [ aarch64, x86_64 ]
|
||||
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:
|
||||
image: ${ORG_NAME}/docker-buildx-private:develop
|
||||
stage: build
|
||||
@ -537,17 +736,23 @@ build_schedules_browser_images:
|
||||
- ls docs/$KASM_IMAGE/description.txt
|
||||
# Check for private variable to build against private core images
|
||||
- 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.
|
||||
# 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:
|
||||
- schedules
|
||||
tags:
|
||||
- aws-autoscale
|
||||
parallel:
|
||||
matrix:
|
||||
- KASM_IMAGE: [chrome, chromium, firefox, tor-browser, edge, brave, vivaldi]
|
||||
- KASM_IMAGE: *BROWSER_IMAGES
|
||||
|
||||
build_schedules_app_images:
|
||||
image: ${ORG_NAME}/docker-buildx-private:develop
|
||||
@ -565,17 +770,23 @@ build_schedules_app_images:
|
||||
- ls docs/$KASM_IMAGE/description.txt
|
||||
# Check for private variable to build against private core images
|
||||
- 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.
|
||||
# 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:
|
||||
- schedules
|
||||
tags:
|
||||
- aws-autoscale
|
||||
parallel:
|
||||
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:
|
||||
image: ${ORG_NAME}/docker-buildx-private:develop
|
||||
@ -591,22 +802,30 @@ build_schedules_ubuntu_desktop_images:
|
||||
# Ensure readme and description files are present
|
||||
- ls docs/$KASM_IMAGE/README.md
|
||||
- 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-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
|
||||
- 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.
|
||||
# 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:
|
||||
- schedules
|
||||
tags:
|
||||
- aws-autoscale
|
||||
parallel:
|
||||
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:
|
||||
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/description.txt
|
||||
# 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 =~ '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-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
|
||||
- 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.
|
||||
# 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:
|
||||
- schedules
|
||||
tags:
|
||||
- aws-autoscale
|
||||
parallel:
|
||||
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:
|
||||
image: ${ORG_NAME}/docker-buildx-private:develop
|
||||
@ -658,18 +924,27 @@ build_schedules_games:
|
||||
- ls docs/$KASM_IMAGE/description.txt
|
||||
# Check for private variable to build against private core images
|
||||
- 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.
|
||||
# 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:
|
||||
- schedules
|
||||
tags:
|
||||
- aws-autoscale
|
||||
parallel:
|
||||
matrix:
|
||||
- KASM_IMAGE: [doom, minetest, retroarch, super-tux-kart]
|
||||
- KASM_IMAGE: *GAME_IMAGES
|
||||
|
||||
###############################
|
||||
# Readme Updates in Dockerhub #
|
||||
###############################
|
||||
update_readmes:
|
||||
stage: readme
|
||||
script:
|
||||
@ -689,6 +964,9 @@ update_readmes:
|
||||
parallel:
|
||||
matrix:
|
||||
- KASM_IMAGE:
|
||||
- almalinux-8-desktop
|
||||
- almalinux-9-desktop
|
||||
- alpine-317-desktop
|
||||
- atom
|
||||
- audacity
|
||||
- blender
|
||||
@ -696,12 +974,14 @@ update_readmes:
|
||||
- centos-7-desktop
|
||||
- chrome
|
||||
- chromium
|
||||
- debian-bullseye-desktop
|
||||
- deluge
|
||||
- desktop
|
||||
- desktop-deluxe
|
||||
- discord
|
||||
- doom
|
||||
- edge
|
||||
- fedora-37-desktop
|
||||
- filezilla
|
||||
- firefox
|
||||
- gimp
|
||||
@ -709,33 +989,31 @@ update_readmes:
|
||||
- inkscape
|
||||
- insomnia
|
||||
- java-dev
|
||||
- libre-office
|
||||
- kali-rolling-desktop
|
||||
- libre-office
|
||||
- maltego
|
||||
- minetest
|
||||
- only-office
|
||||
- opensuse-15-desktop
|
||||
- oracle-7-desktop
|
||||
- oracle-8-desktop
|
||||
- oracle-9-desktop
|
||||
- parrotos-5-desktop
|
||||
- pinta
|
||||
- postman
|
||||
- qbittorrent
|
||||
- remmina
|
||||
- retroarch
|
||||
- rockylinux-8-desktop
|
||||
- rockylinux-9-desktop
|
||||
- signal
|
||||
- steam
|
||||
- sublime-text
|
||||
- super-tux-kart
|
||||
- teams
|
||||
- telegram
|
||||
- terminal
|
||||
- thunderbird
|
||||
- tor-browser
|
||||
- tracelabs
|
||||
- ubuntu-focal-desktop
|
||||
- ubuntu-jammy-desktop
|
||||
- ubuntu-focal-dind
|
||||
- ubuntu-focal-dind-rootless
|
||||
- unityhub
|
||||
- vlc
|
||||
- vs-code
|
||||
- zoom
|
||||
|
||||
update_readmes2:
|
||||
stage: readme
|
||||
@ -756,9 +1034,16 @@ update_readmes2:
|
||||
parallel:
|
||||
matrix:
|
||||
- KASM_IMAGE:
|
||||
- minetest
|
||||
- retroarch
|
||||
- super-tux-kart
|
||||
- tor-browser
|
||||
- tracelabs
|
||||
- ubuntu-focal-desktop
|
||||
- ubuntu-focal-dind
|
||||
- ubuntu-focal-dind-rootless
|
||||
- ubuntu-jammy-desktop
|
||||
- ubuntu-jammy-dind
|
||||
- ubuntu-jammy-dind-rootless
|
||||
- unityhub
|
||||
- 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/
|
||||
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
|
||||
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/
|
||||
|
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/
|
||||
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
|
||||
RUN $STARTUPDIR/set_user_permission.sh $HOME
|
||||
|
||||
|
@ -4,7 +4,7 @@ FROM kasmweb/$BASE_IMAGE:$BASE_TAG
|
||||
|
||||
USER root
|
||||
|
||||
ENV DISTRO=oracle7
|
||||
ENV DISTRO=centos
|
||||
ENV HOME /home/kasm-default-profile
|
||||
ENV STARTUPDIR /dockerstartup
|
||||
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/
|
||||
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $INST_SCRIPTS/remmina/
|
||||
|
||||
### Install Teams
|
||||
COPY ./src/oracle/install/teams $INST_SCRIPTS/teams/
|
||||
RUN bash $INST_SCRIPTS/teams/install_teams.sh && rm -rf $INST_SCRIPTS/teams/
|
||||
|
||||
### Install Only Office
|
||||
COPY ./src/oracle/install/only_office $INST_SCRIPTS/only_office/
|
||||
RUN bash $INST_SCRIPTS/only_office/install_only_office.sh && rm -rf $INST_SCRIPTS/only_office/
|
||||
|
@ -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/
|
||||
RUN bash $INST_SCRIPTS/remmina/install_remmina.sh && rm -rf $INST_SCRIPTS/remmina/
|
||||
|
||||
### Install Teams
|
||||
COPY ./src/oracle/install/teams $INST_SCRIPTS/teams/
|
||||
RUN bash $INST_SCRIPTS/teams/install_teams.sh && rm -rf $INST_SCRIPTS/teams/
|
||||
|
||||
### Install Only Office
|
||||
COPY ./src/oracle/install/only_office $INST_SCRIPTS/only_office/
|
||||
RUN bash $INST_SCRIPTS/only_office/install_only_office.sh && rm -rf $INST_SCRIPTS/only_office/
|
||||
|
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/
|
||||
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 ###########
|
||||
|
||||
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/
|
||||
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
|
||||
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/
|
||||
|
@ -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/
|
||||
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
|
||||
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/
|
||||
|
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
|
||||
|
||||
<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
|
||||
set -ex
|
||||
|
||||
if [ "${DISTRO}" == "oracle8" ]; then
|
||||
dnf install -y obs-studio
|
||||
dnf clean all
|
||||
else
|
||||
yum install -y obs-studio
|
||||
yum clean all
|
||||
fi
|
||||
apk add --no-cache \
|
||||
obs-studio
|
||||
|
||||
# Desktop icon
|
||||
cp /usr/share/applications/com.obsproject.Studio.desktop $HOME/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
|
||||
set -ex
|
||||
|
||||
if [ "${DISTRO}" == "oracle8" ]; then
|
||||
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8|fedora37) ]]; then
|
||||
dnf install -y ansible
|
||||
dnf clean all
|
||||
else
|
||||
|
@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
set -ex
|
||||
if [ "${DISTRO}" == "oracle8" ]; then
|
||||
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8|fedora37) ]]; then
|
||||
dnf install -y gimp
|
||||
dnf clean all
|
||||
else
|
||||
|
@ -7,7 +7,7 @@ if [ "$ARCH" == "amd64" ] ; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ "${DISTRO}" == "oracle8" ]; then
|
||||
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8|fedora37) ]]; then
|
||||
dnf install -y \
|
||||
libreoffice-core \
|
||||
libreoffice-writer \
|
||||
|
@ -7,7 +7,7 @@ if [ "$ARCH" == "arm64" ] ; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ "${DISTRO}" == "oracle8" ]; then
|
||||
if [[ "${DISTRO}" == @(oracle8|rockylinux8|almalinux8) ]]; then
|
||||
dnf install -y obs-studio
|
||||
dnf clean all
|
||||
else
|
||||
|
@ -8,7 +8,7 @@ if [ "$ARCH" == "arm64" ] ; then
|
||||
fi
|
||||
|
||||
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 clean all
|
||||
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
|
||||
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 clean all
|
||||
else
|
||||
|
@ -8,7 +8,7 @@ fi
|
||||
|
||||
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 install -y sublime-text
|
||||
dnf clean all
|
||||
|
@ -8,10 +8,14 @@ if [ "${ARCH}" == "arm64" ] ; then
|
||||
exit 0
|
||||
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 install -y terraform
|
||||
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
|
||||
yum-config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo
|
||||
yum install -y terraform
|
||||
|
@ -2,7 +2,7 @@
|
||||
set -ex
|
||||
|
||||
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
|
||||
else
|
||||
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')
|
||||
|
||||
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
|
||||
dnf localinstall -y vs_code.rpm
|
||||
else
|
||||
@ -20,7 +20,7 @@ chown 1000:1000 $HOME/Desktop/code.desktop
|
||||
rm vs_code.rpm
|
||||
|
||||
# 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 clean all
|
||||
else
|
||||
|
@ -8,7 +8,7 @@ fi
|
||||
|
||||
|
||||
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 clean all
|
||||
else
|
||||
|
@ -1,7 +1,12 @@
|
||||
#!/usr/bin/env bash
|
||||
set -ex
|
||||
|
||||
apt-get update
|
||||
apt-get install -y software-properties-common
|
||||
apt-add-repository --yes --update ppa:ansible/ansible
|
||||
apt-get install -y ansible
|
||||
if grep -q "ID=debian" /etc/os-release; then
|
||||
apt-get update
|
||||
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
|
||||
fi
|
||||
|
||||
if [[ "${DISTRO}" == @(centos|oracle7|oracle8) ]]; then
|
||||
if [[ "${DISTRO}" == @(centos|oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8) ]]; then
|
||||
if [ ! -z "${CHROME_VERSION}" ]; then
|
||||
wget https://dl.google.com/linux/chrome/rpm/stable/x86_64/google-chrome-stable-${CHROME_VERSION}.x86_64.rpm -O chrome.rpm
|
||||
else
|
||||
wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm -O chrome.rpm
|
||||
fi
|
||||
if [ "${DISTRO}" == "oracle8" ]; then
|
||||
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8) ]]; then
|
||||
dnf localinstall -y chrome.rpm
|
||||
dnf clean all
|
||||
else
|
||||
@ -33,7 +33,6 @@ elif [ "${DISTRO}" == "opensuse" ]; then
|
||||
zypper clean --all
|
||||
else
|
||||
apt-get update
|
||||
apt-get remove -y chromium-browser-l10n chromium-codecs-ffmpeg chromium-browser
|
||||
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
|
||||
else
|
||||
@ -65,7 +64,7 @@ EOL
|
||||
chmod +x /usr/bin/google-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
|
||||
[Default Applications]
|
||||
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'"
|
||||
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
|
||||
|
||||
if [[ "${DISTRO}" == @(centos|oracle7|oracle8) ]]; then
|
||||
if [ "${DISTRO}" == "oracle8" ]; then
|
||||
if [[ "${DISTRO}" == @(centos|oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8|fedora37) ]]; then
|
||||
if [[ "${DISTRO}" == @(oracle8|rockylinux9|rockylinux8|oracle9|almalinux9|almalinux8|fedora37) ]]; then
|
||||
dnf install -y chromium
|
||||
dnf clean all
|
||||
else
|
||||
@ -15,6 +15,9 @@ if [[ "${DISTRO}" == @(centos|oracle7|oracle8) ]]; then
|
||||
elif [ "${DISTRO}" == "opensuse" ]; then
|
||||
zypper install -yn chromium
|
||||
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
|
||||
apt-get update
|
||||
apt-get install -y software-properties-common ttf-mscorefonts-installer
|
||||
@ -61,44 +64,54 @@ else
|
||||
rm "${chromium_data}"
|
||||
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
|
||||
cat >/usr/bin/chromium-browser <<EOL
|
||||
sed -i 's/-stable//g' /usr/share/applications/${REAL_BIN}.desktop
|
||||
|
||||
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
|
||||
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} "\$@"
|
||||
vglrun -d "\${KASM_EGL_CARD}" /usr/bin/${REAL_BIN}-orig ${CHROME_ARGS} "\$@"
|
||||
else
|
||||
echo "Starting Chrome"
|
||||
/usr/bin/chromium-browser-orig ${CHROME_ARGS} "\$@"
|
||||
/usr/bin/${REAL_BIN}-orig ${CHROME_ARGS} "\$@"
|
||||
fi
|
||||
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
|
||||
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
|
||||
[Default Applications]
|
||||
x-scheme-handler/http=chromium-browser.desktop
|
||||
x-scheme-handler/https=chromium-browser.desktop
|
||||
x-scheme-handler/ftp=chromium-browser.desktop
|
||||
x-scheme-handler/chrome=chromium-browser.desktop
|
||||
text/html=chromium-browser.desktop
|
||||
application/x-extension-htm=chromium-browser.desktop
|
||||
application/x-extension-html=chromium-browser.desktop
|
||||
application/x-extension-shtml=chromium-browser.desktop
|
||||
application/xhtml+xml=chromium-browser.desktop
|
||||
application/x-extension-xhtml=chromium-browser.desktop
|
||||
application/x-extension-xht=chromium-browser.desktop
|
||||
x-scheme-handler/http=${REAL_BIN}.desktop
|
||||
x-scheme-handler/https=${REAL_BIN}.desktop
|
||||
x-scheme-handler/ftp=${REAL_BIN}.desktop
|
||||
x-scheme-handler/chrome=${REAL_BIN}.desktop
|
||||
text/html=${REAL_BIN}.desktop
|
||||
application/x-extension-htm=${REAL_BIN}.desktop
|
||||
application/x-extension-html=${REAL_BIN}.desktop
|
||||
application/x-extension-shtml=${REAL_BIN}.desktop
|
||||
application/xhtml+xml=${REAL_BIN}.desktop
|
||||
application/x-extension-xhtml=${REAL_BIN}.desktop
|
||||
application/x-extension-xht=${REAL_BIN}.desktop
|
||||
EOF
|
||||
else
|
||||
sed -i 's@exec -a "$0" "$HERE/chromium" "$\@"@@g' /usr/bin/x-www-browser
|
||||
|
@ -6,6 +6,7 @@ apt-get install -y \
|
||||
ca-certificates \
|
||||
curl \
|
||||
dbus-user-session \
|
||||
fuse-overlayfs \
|
||||
kmod \
|
||||
iptables \
|
||||
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