KASM-4032 update kasmvnc config to have a line break for compatibility update...

This commit is contained in:
Ryan Kuba 2023-03-15 20:09:15 +00:00 committed by Justin Travis
parent 1ea3c36868
commit 5572a61f31
107 changed files with 4045 additions and 258 deletions

View File

@ -79,6 +79,26 @@ build_ubuntu_jammy:
tags: tags:
- aws-autoscale - aws-autoscale
build_debian_bullseye:
stage: build
image: ${ORG_NAME}/docker-buildx-private:develop
variables:
BUILD_PLATFORMS: "linux/amd64,linux/arm64"
script:
# get qemu ready
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# prep the buildx env
- docker buildx create --use
# build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-debian-bullseye-private:$SANITIZED_BRANCH -t ${ORG_NAME}/core-debian-bullseye-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-debian-bullseye:$SANITIZED_BRANCH -t ${ORG_NAME}/core-debian-bullseye:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg BASE_IMAGE="debian:bullseye" --build-arg DISTRO="debian" --build-arg START_XFCE4=1 --build-arg BG_IMG=bg_debian.svg -f dockerfile-kasm-core .
only:
- develop
- /^release\/.*$/
except:
- schedules
tags:
- aws-autoscale
build_cuda_focal: build_cuda_focal:
stage: build stage: build
script: script:
@ -93,26 +113,10 @@ build_cuda_focal:
except: except:
- schedules - schedules
build_remnux_bionic:
stage: build
script:
- docker build -t ${ORG_NAME}/core-remnux-bionic-private:$SANITIZED_BRANCH -t ${ORG_NAME}/core-remnux-bionic-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-remnux-bionic:$SANITIZED_BRANCH -t ${ORG_NAME}/core-remnux-bionic:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE="remnux/remnux-distro:bionic" --build-arg START_XFCE4=1 --build-arg BG_IMG=bg_remnux.png --build-arg EXTRA_SH=remnux.sh -f dockerfile-kasm-core .
- docker push ${ORG_NAME}/core-remnux-bionic-private:$SANITIZED_BRANCH
- docker push ${ORG_NAME}/core-remnux-bionic-private:$SANITIZED_ROLLING_BRANCH
- docker push ${ORG_NAME}/core-remnux-bionic:$SANITIZED_BRANCH
- docker push ${ORG_NAME}/core-remnux-bionic:$SANITIZED_ROLLING_BRANCH
only:
- develop
- /^release\/.*$/
except:
- schedules
tags:
- aws-autoscale
build_remnux_focal: build_remnux_focal:
stage: build stage: build
script: script:
- docker build -t ${ORG_NAME}/core-remnux-focal-private:$SANITIZED_BRANCH -t ${ORG_NAME}/core-remnux-focal-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-remnux-focal:$SANITIZED_BRANCH -t ${ORG_NAME}/core-remnux-focal:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg BASE_IMAGE="remnux/remnux-distro:focal" --build-arg START_XFCE4=1 --build-arg BG_IMG=bg_remnux.png --build-arg EXTRA_SH=remnux.sh -f dockerfile-kasm-core . - docker build -t ${ORG_NAME}/core-remnux-focal-private:$SANITIZED_BRANCH -t ${ORG_NAME}/core-remnux-focal-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-remnux-focal:$SANITIZED_BRANCH -t ${ORG_NAME}/core-remnux-focal:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg BASE_IMAGE="ubuntu:20.04" --build-arg START_XFCE4=1 --build-arg BG_IMG=bg_remnux.png --build-arg EXTRA_SH=remnux.sh -f dockerfile-kasm-core .
- docker push ${ORG_NAME}/core-remnux-focal-private:$SANITIZED_BRANCH - docker push ${ORG_NAME}/core-remnux-focal-private:$SANITIZED_BRANCH
- docker push ${ORG_NAME}/core-remnux-focal-private:$SANITIZED_ROLLING_BRANCH - docker push ${ORG_NAME}/core-remnux-focal-private:$SANITIZED_ROLLING_BRANCH
- docker push ${ORG_NAME}/core-remnux-focal:$SANITIZED_BRANCH - docker push ${ORG_NAME}/core-remnux-focal:$SANITIZED_BRANCH
@ -137,7 +141,7 @@ build_kali_rolling:
# prep the buildx env # prep the buildx env
- docker buildx create --use - docker buildx create --use
# build for multiple architectures # build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-kali-rolling-private:$SANITIZED_BRANCH -t ${ORG_NAME}/core-kali-rolling-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-kali-rolling:$SANITIZED_BRANCH -t ${ORG_NAME}/core-kali-rolling:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE="kalilinux/kali-rolling:latest" --build-arg START_PULSEAUDIO="1" --build-arg EXTRA_SH="kali.sh" --build-arg DISTRO="kali" --build-arg LANG="" --build-arg LANGUAGE="" --build-arg LC_ALL="" -f dockerfile-kasm-core . - docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-kali-rolling-private:$SANITIZED_BRANCH -t ${ORG_NAME}/core-kali-rolling-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-kali-rolling:$SANITIZED_BRANCH -t ${ORG_NAME}/core-kali-rolling:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE="kalilinux/kali-rolling:latest" --build-arg START_PULSEAUDIO="1" --build-arg DISTRO="kali" --build-arg START_XFCE4=1 --build-arg LANG="" --build-arg LANGUAGE="" --build-arg LC_ALL="" -f dockerfile-kasm-core .
only: only:
- develop - develop
- /^release\/.*$/ - /^release\/.*$/
@ -196,6 +200,106 @@ build_oracle_8:
tags: tags:
- aws-autoscale - aws-autoscale
build_oracle_9:
stage: build
image: ${ORG_NAME}/docker-buildx-private:develop
variables:
BUILD_PLATFORMS: "linux/amd64,linux/arm64"
script:
# get qemu ready
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# prep the buildx env
- docker buildx create --use
# build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-oracle-9-private:$SANITIZED_BRANCH -t ${ORG_NAME}/core-oracle-9-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-oracle-9:$SANITIZED_BRANCH -t ${ORG_NAME}/core-oracle-9:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg START_XFCE4=1 --build-arg BASE_IMAGE="oraclelinux:9" --build-arg DISTRO="oracle9" -f dockerfile-kasm-core-oracle .
only:
- develop
- /^release\/.*$/
except:
- schedules
tags:
- aws-autoscale
build_rocky_9:
stage: build
image: ${ORG_NAME}/docker-buildx-private:develop
variables:
BUILD_PLATFORMS: "linux/amd64,linux/arm64"
script:
# get qemu ready
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# prep the buildx env
- docker buildx create --use
# build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-rockylinux-9-private:$SANITIZED_BRANCH -t ${ORG_NAME}/core-rockylinux-9-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-rockylinux-9:$SANITIZED_BRANCH -t ${ORG_NAME}/core-rockylinux-9:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg START_XFCE4=1 --build-arg BASE_IMAGE="rockylinux:9.1" --build-arg DISTRO="rockylinux9" --build-arg BG_IMG=bg_rocky.png -f dockerfile-kasm-core-oracle .
only:
- develop
- /^release\/.*$/
except:
- schedules
tags:
- aws-autoscale
build_rocky_8:
stage: build
image: ${ORG_NAME}/docker-buildx-private:develop
variables:
BUILD_PLATFORMS: "linux/amd64,linux/arm64"
script:
# get qemu ready
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# prep the buildx env
- docker buildx create --use
# build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-rockylinux-8-private:$SANITIZED_BRANCH -t ${ORG_NAME}/core-rockylinux-8-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-rockylinux-8:$SANITIZED_BRANCH -t ${ORG_NAME}/core-rockylinux-8:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg START_XFCE4=1 --build-arg BASE_IMAGE="rockylinux:8.7" --build-arg DISTRO="rockylinux8" --build-arg BG_IMG=bg_rocky.png -f dockerfile-kasm-core-oracle .
only:
- develop
- /^release\/.*$/
except:
- schedules
tags:
- aws-autoscale
build_alma_8:
stage: build
image: ${ORG_NAME}/docker-buildx-private:develop
variables:
BUILD_PLATFORMS: "linux/amd64,linux/arm64"
script:
# get qemu ready
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# prep the buildx env
- docker buildx create --use
# build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-almalinux-8-private:$SANITIZED_BRANCH -t ${ORG_NAME}/core-almalinux-8-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-almalinux-8:$SANITIZED_BRANCH -t ${ORG_NAME}/core-almalinux-8:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg START_XFCE4=1 --build-arg BASE_IMAGE="almalinux:8.7" --build-arg DISTRO="almalinux8" --build-arg BG_IMG=bg_almalinux.png -f dockerfile-kasm-core-oracle .
only:
- develop
- /^release\/.*$/
except:
- schedules
tags:
- aws-autoscale
build_alma_9:
stage: build
image: ${ORG_NAME}/docker-buildx-private:develop
variables:
BUILD_PLATFORMS: "linux/amd64,linux/arm64"
script:
# get qemu ready
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# prep the buildx env
- docker buildx create --use
# build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-almalinux-9-private:$SANITIZED_BRANCH -t ${ORG_NAME}/core-almalinux-9-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-almalinux-9:$SANITIZED_BRANCH -t ${ORG_NAME}/core-almalinux-9:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg START_XFCE4=1 --build-arg BASE_IMAGE="almalinux:9.1" --build-arg DISTRO="almalinux9" --build-arg BG_IMG=bg_almalinux.png -f dockerfile-kasm-core-oracle .
only:
- develop
- /^release\/.*$/
except:
- schedules
tags:
- aws-autoscale
build_opensuse_15: build_opensuse_15:
stage: build stage: build
image: ${ORG_NAME}/docker-buildx-private:develop image: ${ORG_NAME}/docker-buildx-private:develop
@ -216,6 +320,66 @@ build_opensuse_15:
tags: tags:
- aws-autoscale - aws-autoscale
build_fedora_37:
stage: build
image: ${ORG_NAME}/docker-buildx-private:develop
variables:
BUILD_PLATFORMS: "linux/amd64,linux/arm64"
script:
# get qemu ready
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# prep the buildx env
- docker buildx create --use
# build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-fedora-37-private:$SANITIZED_BRANCH -t ${ORG_NAME}/core-fedora-37-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-fedora-37:$SANITIZED_BRANCH -t ${ORG_NAME}/core-fedora-37:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg START_XFCE4=1 --build-arg BASE_IMAGE="fedora:37" --build-arg DISTRO="fedora37" -f dockerfile-kasm-core-fedora .
only:
- develop
- /^release\/.*$/
except:
- schedules
tags:
- aws-autoscale
build_parrotos_5:
stage: build
image: ${ORG_NAME}/docker-buildx-private:develop
variables:
BUILD_PLATFORMS: "linux/amd64,linux/arm64"
script:
# get qemu ready
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# prep the buildx env
- docker buildx create --use
# build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-parrotos-5-private:$SANITIZED_BRANCH -t ${ORG_NAME}/core-parrotos-5-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-parrotos-5:$SANITIZED_BRANCH -t ${ORG_NAME}/core-parrotos-5:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg START_XFCE4=1 --build-arg BG_IMG=bg_parrotos5.jpg --build-arg BASE_IMAGE="parrotsec/core:latest" --build-arg DISTRO="parrotos5" -f dockerfile-kasm-core .
only:
- develop
- /^release\/.*$/
except:
- schedules
tags:
- aws-autoscale
build_alpine_317:
stage: build
image: ${ORG_NAME}/docker-buildx-private:develop
variables:
BUILD_PLATFORMS: "linux/amd64,linux/arm64"
script:
# get qemu ready
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# prep the buildx env
- docker buildx create --use
# build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-alpine-317-private:$SANITIZED_BRANCH -t ${ORG_NAME}/core-alpine-317-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-alpine-317:$SANITIZED_BRANCH -t ${ORG_NAME}/core-alpine-317:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg START_XFCE4=1 --build-arg BG_IMG=bg_alpine.png --build-arg BASE_IMAGE="alpine:3.17" --build-arg DISTRO="alpine" -f dockerfile-kasm-core-alpine .
only:
- develop
- /^release\/.*$/
except:
- schedules
tags:
- aws-autoscale
# 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_ubuntu_bionic_dev: build_ubuntu_bionic_dev:
stage: build stage: build
@ -280,6 +444,28 @@ build_ubuntu_jammy_dev:
matrix: matrix:
- TAG: [ aws-autoscale, aws-autoscale-arm64 ] - TAG: [ aws-autoscale, aws-autoscale-arm64 ]
build_debian_bullseye_dev:
stage: build
script:
- >
docker build
-t ${ORG_NAME}/core-debian-bullseye-private:$(arch)-$SANITIZED_BRANCH
--build-arg START_PULSEAUDIO=1
--build-arg BASE_IMAGE="debian:bullseye"
--build-arg DISTRO="debian"
--build-arg START_XFCE4=1
--build-arg BG_IMG=bg_debian.svg
-f dockerfile-kasm-core .
- docker push ${ORG_NAME}/core-debian-bullseye-private:$(arch)-$SANITIZED_BRANCH
except:
- develop
- /^release\/.*$/
tags:
- ${TAG}
parallel:
matrix:
- TAG: [ aws-autoscale, aws-autoscale-arm64 ]
build_cuda_focal_dev: build_cuda_focal_dev:
stage: build stage: build
script: script:
@ -298,25 +484,6 @@ build_cuda_focal_dev:
tags: tags:
- aws-autoscale - aws-autoscale
build_remnux_bionic_dev:
stage: build
script:
- >
docker build
-t ${ORG_NAME}/core-remnux-bionic-private:$SANITIZED_BRANCH
--build-arg BASE_IMAGE="remnux/remnux-distro:bionic"
--build-arg START_PULSEAUDIO=1
--build-arg START_XFCE4=1
--build-arg BG_IMG=bg_remnux.png
--build-arg EXTRA_SH=remnux.sh
-f dockerfile-kasm-core .
- docker push ${ORG_NAME}/core-remnux-bionic-private:$SANITIZED_BRANCH
except:
- develop
- /^release\/.*$/
tags:
- aws-autoscale
build_remnux_focal_dev: build_remnux_focal_dev:
stage: build stage: build
script: script:
@ -324,7 +491,7 @@ build_remnux_focal_dev:
docker build docker build
-t ${ORG_NAME}/core-remnux-focal-private:$SANITIZED_BRANCH -t ${ORG_NAME}/core-remnux-focal-private:$SANITIZED_BRANCH
--build-arg START_PULSEAUDIO=1 --build-arg START_PULSEAUDIO=1
--build-arg BASE_IMAGE="remnux/remnux-distro:focal" --build-arg BASE_IMAGE="ubuntu:20.04"
--build-arg START_XFCE4=1 --build-arg START_XFCE4=1
--build-arg BG_IMG=bg_remnux.png --build-arg BG_IMG=bg_remnux.png
--build-arg EXTRA_SH=remnux.sh --build-arg EXTRA_SH=remnux.sh
@ -344,8 +511,8 @@ build_kali_rolling_dev:
-t ${ORG_NAME}/core-kali-rolling-private:$(arch)-$SANITIZED_BRANCH -t ${ORG_NAME}/core-kali-rolling-private:$(arch)-$SANITIZED_BRANCH
--build-arg BASE_IMAGE="kalilinux/kali-rolling:latest" --build-arg BASE_IMAGE="kalilinux/kali-rolling:latest"
--build-arg START_PULSEAUDIO="1" --build-arg START_PULSEAUDIO="1"
--build-arg EXTRA_SH="kali.sh"
--build-arg DISTRO="kali" --build-arg DISTRO="kali"
--build-arg START_XFCE4=1
--build-arg LANG="" --build-arg LANG=""
--build-arg LANGUAGE="" --build-arg LANGUAGE=""
--build-arg LC_ALL="" --build-arg LC_ALL=""
@ -423,6 +590,115 @@ build_oracle_8_dev:
matrix: matrix:
- TAG: [ aws-autoscale, aws-autoscale-arm64 ] - TAG: [ aws-autoscale, aws-autoscale-arm64 ]
build_oracle_9_dev:
stage: build
script:
- >
docker build
-t ${ORG_NAME}/core-oracle-9-private:$(arch)-$SANITIZED_BRANCH
--build-arg START_PULSEAUDIO=1
--build-arg START_XFCE4=1
--build-arg BASE_IMAGE="oraclelinux:9"
--build-arg DISTRO="oracle9"
-f dockerfile-kasm-core-oracle .
- docker push ${ORG_NAME}/core-oracle-9-private:$(arch)-$SANITIZED_BRANCH
except:
- develop
- /^release\/.*$/
tags:
- ${TAG}
parallel:
matrix:
- TAG: [ aws-autoscale, aws-autoscale-arm64 ]
build_rockylinux_9_dev:
stage: build
script:
- >
docker build
-t ${ORG_NAME}/core-rockylinux-9-private:$(arch)-$SANITIZED_BRANCH
--build-arg START_PULSEAUDIO=1
--build-arg START_XFCE4=1
--build-arg BASE_IMAGE="rockylinux:9.1"
--build-arg DISTRO="rockylinux9"
--build-arg BG_IMG=bg_rocky.png
-f dockerfile-kasm-core-oracle .
- docker push ${ORG_NAME}/core-rockylinux-9-private:$(arch)-$SANITIZED_BRANCH
except:
- develop
- /^release\/.*$/
tags:
- ${TAG}
parallel:
matrix:
- TAG: [ aws-autoscale, aws-autoscale-arm64 ]
build_rockylinux_8_dev:
stage: build
script:
- >
docker build
-t ${ORG_NAME}/core-rockylinux-8-private:$(arch)-$SANITIZED_BRANCH
--build-arg START_PULSEAUDIO=1
--build-arg START_XFCE4=1
--build-arg BASE_IMAGE="rockylinux:8.7"
--build-arg DISTRO="rockylinux8"
--build-arg BG_IMG=bg_rocky.png
-f dockerfile-kasm-core-oracle .
- docker push ${ORG_NAME}/core-rockylinux-8-private:$(arch)-$SANITIZED_BRANCH
except:
- develop
- /^release\/.*$/
tags:
- ${TAG}
parallel:
matrix:
- TAG: [ aws-autoscale, aws-autoscale-arm64 ]
build_almalinux_9_dev:
stage: build
script:
- >
docker build
-t ${ORG_NAME}/core-almalinux-9-private:$(arch)-$SANITIZED_BRANCH
--build-arg START_PULSEAUDIO=1
--build-arg START_XFCE4=1
--build-arg BASE_IMAGE="almalinux:9.1"
--build-arg DISTRO="almalinux9"
--build-arg BG_IMG=bg_almalinux.png
-f dockerfile-kasm-core-oracle .
- docker push ${ORG_NAME}/core-almalinux-9-private:$(arch)-$SANITIZED_BRANCH
except:
- develop
- /^release\/.*$/
tags:
- ${TAG}
parallel:
matrix:
- TAG: [ aws-autoscale, aws-autoscale-arm64 ]
build_almalinux_8_dev:
stage: build
script:
- >
docker build
-t ${ORG_NAME}/core-almalinux-8-private:$(arch)-$SANITIZED_BRANCH
--build-arg START_PULSEAUDIO=1
--build-arg START_XFCE4=1
--build-arg BASE_IMAGE="almalinux:8.7"
--build-arg DISTRO="almalinux8"
--build-arg BG_IMG=bg_almalinux.png
-f dockerfile-kasm-core-oracle .
- docker push ${ORG_NAME}/core-almalinux-8-private:$(arch)-$SANITIZED_BRANCH
except:
- develop
- /^release\/.*$/
tags:
- ${TAG}
parallel:
matrix:
- TAG: [ aws-autoscale, aws-autoscale-arm64 ]
build_opensuse_15_dev: build_opensuse_15_dev:
stage: build stage: build
script: script:
@ -444,6 +720,71 @@ build_opensuse_15_dev:
matrix: matrix:
- TAG: [ aws-autoscale, aws-autoscale-arm64 ] - TAG: [ aws-autoscale, aws-autoscale-arm64 ]
build_fedora_37_dev:
stage: build
script:
- >
docker build
-t ${ORG_NAME}/core-fedora-37-private:$(arch)-$SANITIZED_BRANCH
--build-arg START_PULSEAUDIO=1
--build-arg START_XFCE4=1
--build-arg BASE_IMAGE="fedora:37"
--build-arg DISTRO="fedora37"
-f dockerfile-kasm-core-fedora .
- docker push ${ORG_NAME}/core-fedora-37-private:$(arch)-$SANITIZED_BRANCH
except:
- develop
- /^release\/.*$/
tags:
- ${TAG}
parallel:
matrix:
- TAG: [ aws-autoscale, aws-autoscale-arm64 ]
build_parrotos_5_dev:
stage: build
script:
- >
docker build
-t ${ORG_NAME}/core-parrotos-5-private:$(arch)-$SANITIZED_BRANCH
--build-arg START_PULSEAUDIO=1
--build-arg START_XFCE4=1
--build-arg BG_IMG=bg_parrotos5.jpg
--build-arg BASE_IMAGE="parrotsec/core:latest"
--build-arg DISTRO="parrotos5"
-f dockerfile-kasm-core .
- docker push ${ORG_NAME}/core-parrotos-5-private:$(arch)-$SANITIZED_BRANCH
except:
- develop
- /^release\/.*$/
tags:
- ${TAG}
parallel:
matrix:
- TAG: [ aws-autoscale, aws-autoscale-arm64 ]
build_alpine_317_dev:
stage: build
script:
- >
docker build
-t ${ORG_NAME}/core-alpine-317-private:$(arch)-$SANITIZED_BRANCH
--build-arg START_PULSEAUDIO=1
--build-arg START_XFCE4=1
--build-arg BG_IMG=bg_alpine.png
--build-arg BASE_IMAGE="alpine:3.17"
--build-arg DISTRO="alpine"
-f dockerfile-kasm-core-alpine .
- docker push ${ORG_NAME}/core-alpine-317-private:$(arch)-$SANITIZED_BRANCH
except:
- develop
- /^release\/.*$/
tags:
- ${TAG}
parallel:
matrix:
- TAG: [ aws-autoscale, aws-autoscale-arm64 ]
test_multi_arch_dev: test_multi_arch_dev:
stage: test stage: test
script: script:
@ -480,39 +821,16 @@ test_multi_arch_dev:
- core-oracle-8-private - core-oracle-8-private
- core-opensuse-15-private - core-opensuse-15-private
- core-ubuntu-jammy-private - core-ubuntu-jammy-private
- core-fedora-37-private
test_multi_arch_dev_osint: - core-debian-bullseye-private
stage: test - core-oracle-9-private
script: - core-rockylinux-9-private
- docker pull ${ORG_NAME}/kasm-tester:1.12.0 - core-rockylinux-8-private
- > - core-almalinux-8-private
docker run --rm --privileged - core-almalinux-9-private
-e KASM_PORT=443
-e KASM_PATH=/opt/kasm
-e KASM_PASSWORD=password123
-e PUID=1000
-e DOCKERUSER=$DOCKER_HUB_USERNAME
-e DOCKERPASS=$DOCKER_HUB_PASSWORD
-e TEST_IMAGE="${ORG_NAME}/${KASM_IMAGE}:$(arch)-$SANITIZED_BRANCH"
-e AWS_KEY=${KASM_TEST_AWS_KEY}
-e AWS_SECRET="${KASM_TEST_AWS_SECRET}"
-e SLACK_TOKEN=${SLACK_TOKEN}
-e S3_BUCKET=kasm-ci
-e COMMIT=${CI_COMMIT_SHA}
-e REPO=workspaces-core-images
${ORG_NAME}/kasm-tester:1.12.0
except:
- develop
- /^release\/.*$/
tags:
- ${TAG}
needs:
- manifest_dev_osint
parallel:
matrix:
- TAG: [ aws-autoscale, aws-autoscale-arm64 ]
KASM_IMAGE:
- core-kali-rolling-private - core-kali-rolling-private
- core-parrotos-5-private
- core-alpine-317-private
test_single_arch_dev: test_single_arch_dev:
stage: test stage: test
@ -543,45 +861,13 @@ test_single_arch_dev:
- build_cuda_focal_dev - build_cuda_focal_dev
- build_centos_dev - build_centos_dev
- build_oracle_7_dev - build_oracle_7_dev
- build_remnux_focal_dev
parallel: parallel:
matrix: matrix:
- KASM_IMAGE: - KASM_IMAGE:
- core-cuda-focal-private - core-cuda-focal-private
- core-centos-7-private - core-centos-7-private
- core-oracle-7-private - core-oracle-7-private
test_single_arch_dev_osint:
stage: test
script:
- docker pull ${ORG_NAME}/kasm-tester:1.12.0
- >
docker run --rm --privileged
-e KASM_PORT=443
-e KASM_PATH=/opt/kasm
-e KASM_PASSWORD=password123
-e PUID=1000
-e DOCKERUSER=$DOCKER_HUB_USERNAME
-e DOCKERPASS=$DOCKER_HUB_PASSWORD
-e TEST_IMAGE="${ORG_NAME}/${KASM_IMAGE}:$SANITIZED_BRANCH"
-e AWS_KEY=${KASM_TEST_AWS_KEY}
-e AWS_SECRET="${KASM_TEST_AWS_SECRET}"
-e SLACK_TOKEN=${SLACK_TOKEN}
-e S3_BUCKET=kasm-ci
-e COMMIT=${CI_COMMIT_SHA}
-e REPO=workspaces-core-images
${ORG_NAME}/kasm-tester:1.12.0
except:
- develop
- /^release\/.*$/
tags:
- aws-autoscale
needs:
- build_remnux_bionic_dev
- build_remnux_focal_dev
parallel:
matrix:
- KASM_IMAGE:
- core-remnux-bionic-private
- core-remnux-focal-private - core-remnux-focal-private
manifest_dev: manifest_dev:
@ -603,7 +889,17 @@ manifest_dev:
- build_ubuntu_focal_dev - build_ubuntu_focal_dev
- build_ubuntu_jammy_dev - build_ubuntu_jammy_dev
- build_oracle_8_dev - build_oracle_8_dev
- build_oracle_9_dev
- build_opensuse_15_dev - build_opensuse_15_dev
- build_fedora_37_dev
- build_debian_bullseye_dev
- build_rockylinux_9_dev
- build_rockylinux_8_dev
- build_almalinux_9_dev
- build_almalinux_8_dev
- build_kali_rolling_dev
- build_parrotos_5_dev
- build_alpine_317_dev
parallel: parallel:
matrix: matrix:
- KASM_IMAGE: - KASM_IMAGE:
@ -612,27 +908,16 @@ manifest_dev:
- core-oracle-8-private - core-oracle-8-private
- core-opensuse-15-private - core-opensuse-15-private
- core-ubuntu-jammy-private - core-ubuntu-jammy-private
- core-fedora-37-private
manifest_dev_osint: - core-debian-bullseye-private
stage: manifest - core-oracle-9-private
script: - core-rockylinux-9-private
- docker pull ${ORG_NAME}/${KASM_IMAGE}:x86_64-$SANITIZED_BRANCH - core-rockylinux-8-private
- docker pull ${ORG_NAME}/${KASM_IMAGE}:aarch64-$SANITIZED_BRANCH - core-almalinux-9-private
- "docker manifest push --purge ${ORG_NAME}/${KASM_IMAGE}:$SANITIZED_BRANCH || :" - core-almalinux-8-private
- docker manifest create ${ORG_NAME}/${KASM_IMAGE}:$SANITIZED_BRANCH ${ORG_NAME}/${KASM_IMAGE}:x86_64-$SANITIZED_BRANCH ${ORG_NAME}/${KASM_IMAGE}:aarch64-$SANITIZED_BRANCH
- docker manifest annotate ${ORG_NAME}/${KASM_IMAGE}:$SANITIZED_BRANCH ${ORG_NAME}/${KASM_IMAGE}:aarch64-$SANITIZED_BRANCH --os linux --arch arm64 --variant v8
- docker manifest push --purge ${ORG_NAME}/${KASM_IMAGE}:$SANITIZED_BRANCH
except:
- develop
- /^release\/.*$/
tags:
- aws-autoscale
needs:
- build_kali_rolling_dev
parallel:
matrix:
- KASM_IMAGE:
- core-kali-rolling-private - core-kali-rolling-private
- core-parrotos-5-private
- core-alpine-317-private
link_tests_single_arch_dev: link_tests_single_arch_dev:
stage: linktests stage: linktests
@ -649,7 +934,6 @@ link_tests_single_arch_dev:
matrix: matrix:
- KASM_IMAGE: - KASM_IMAGE:
- core-cuda-focal-private - core-cuda-focal-private
- core-remnux-bionic-private
- core-remnux-focal-private - core-remnux-focal-private
- core-centos-7-private - core-centos-7-private
- core-oracle-7-private - core-oracle-7-private
@ -675,6 +959,15 @@ link_tests_multi_arch_dev:
- core-oracle-8-private - core-oracle-8-private
- core-opensuse-15-private - core-opensuse-15-private
- core-ubuntu-jammy-private - core-ubuntu-jammy-private
- core-fedora-37-private
- core-debian-bullseye-private
- core-oracle-9-private
- core-parrotos-5-private
- core-rockylinux-9-private
- core-rockylinux-8-private
- core-almalinux-9-private
- core-almalinux-8-private
- core-alpine-317-private
# 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_ubuntu_bionic_scheduled: build_ubuntu_bionic_scheduled:
@ -728,6 +1021,23 @@ build_ubuntu_jammy_scheduled:
tags: tags:
- aws-autoscale - aws-autoscale
build_debian_bullseye_scheduled:
stage: build
image: ${ORG_NAME}/docker-buildx-private:develop
variables:
BUILD_PLATFORMS: "linux/amd64,linux/arm64"
script:
# get qemu ready
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# prep the buildx env
- docker buildx create --use
# build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-debian-bullseye-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-debian-bullseye:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg BASE_IMAGE="debian:bullseye" --build-arg START_XFCE4=1 --build-arg BG_IMG=bg_debian.svg --build-arg DISTRO="debian" -f dockerfile-kasm-core .
only:
- schedules
tags:
- aws-autoscale
build_cuda_focal_schedules: build_cuda_focal_schedules:
stage: build stage: build
script: script:
@ -737,21 +1047,10 @@ build_cuda_focal_schedules:
only: only:
- schedules - schedules
build_remnux_bionic_schedules:
stage: build
script:
- docker build -t ${ORG_NAME}/core-remnux-bionic-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-remnux-bionic:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE="remnux/remnux-distro:bionic" --build-arg START_XFCE4=1 --build-arg BG_IMG=bg_remnux.png --build-arg EXTRA_SH=remnux.sh -f dockerfile-kasm-core .
- docker push ${ORG_NAME}/core-remnux-bionic-private:$SANITIZED_ROLLING_BRANCH
- docker push ${ORG_NAME}/core-remnux-bionic:$SANITIZED_ROLLING_BRANCH
only:
- schedules
tags:
- aws-autoscale
build_remnux_focal_schedules: build_remnux_focal_schedules:
stage: build stage: build
script: script:
- docker build -t ${ORG_NAME}/core-remnux-focal-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-remnux-focal:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg BASE_IMAGE="remnux/remnux-distro:focal" --build-arg START_XFCE4=1 --build-arg BG_IMG=bg_remnux.png --build-arg EXTRA_SH=remnux.sh -f dockerfile-kasm-core . - docker build -t ${ORG_NAME}/core-remnux-focal-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-remnux-focal:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg BASE_IMAGE="ubuntu:20.04" --build-arg START_XFCE4=1 --build-arg BG_IMG=bg_remnux.png --build-arg EXTRA_SH=remnux.sh -f dockerfile-kasm-core .
- docker push ${ORG_NAME}/core-remnux-focal-private:$SANITIZED_ROLLING_BRANCH - docker push ${ORG_NAME}/core-remnux-focal-private:$SANITIZED_ROLLING_BRANCH
- docker push ${ORG_NAME}/core-remnux-focal:$SANITIZED_ROLLING_BRANCH - docker push ${ORG_NAME}/core-remnux-focal:$SANITIZED_ROLLING_BRANCH
tags: tags:
@ -770,7 +1069,7 @@ build_kali_rolling_schedules:
# prep the buildx env # prep the buildx env
- docker buildx create --use - docker buildx create --use
# build for multiple architectures # build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-kali-rolling-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-kali-rolling:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE="kalilinux/kali-rolling:latest" --build-arg START_PULSEAUDIO="1" --build-arg EXTRA_SH="kali.sh" --build-arg DISTRO="kali" --build-arg LANG="" --build-arg LANGUAGE="" --build-arg LC_ALL="" -f dockerfile-kasm-core . - docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-kali-rolling-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-kali-rolling:$SANITIZED_ROLLING_BRANCH --build-arg BASE_IMAGE="kalilinux/kali-rolling:latest" --build-arg START_PULSEAUDIO="1" --build-arg DISTRO="kali" --build-arg START_XFCE4=1 --build-arg LANG="" --build-arg LANGUAGE="" --build-arg LC_ALL="" -f dockerfile-kasm-core .
only: only:
- schedules - schedules
tags: tags:
@ -813,6 +1112,91 @@ build_oracle_8_scheduled:
tags: tags:
- aws-autoscale - aws-autoscale
build_oracle_9_scheduled:
stage: build
image: ${ORG_NAME}/docker-buildx-private:develop
variables:
BUILD_PLATFORMS: "linux/amd64,linux/arm64"
script:
# get qemu ready
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# prep the buildx env
- docker buildx create --use
# build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-oracle-9-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-oracle-9:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg START_XFCE4=1 --build-arg BASE_IMAGE="oraclelinux:9" --build-arg DISTRO="oracle9" -f dockerfile-kasm-core-oracle .
only:
- schedules
tags:
- aws-autoscale
build_rockylinux_9_scheduled:
stage: build
image: ${ORG_NAME}/docker-buildx-private:develop
variables:
BUILD_PLATFORMS: "linux/amd64,linux/arm64"
script:
# get qemu ready
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# prep the buildx env
- docker buildx create --use
# build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-rockylinux-9-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-rockylinux-9:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg START_XFCE4=1 --build-arg BASE_IMAGE="rockylinux:9.1" --build-arg DISTRO="rockylinux9" --build-arg BG_IMG=bg_rocky.png -f dockerfile-kasm-core-oracle .
only:
- schedules
tags:
- aws-autoscale
build_rockylinux_8_scheduled:
stage: build
image: ${ORG_NAME}/docker-buildx-private:develop
variables:
BUILD_PLATFORMS: "linux/amd64,linux/arm64"
script:
# get qemu ready
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# prep the buildx env
- docker buildx create --use
# build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-rockylinux-8-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-rockylinux-8:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg START_XFCE4=1 --build-arg BASE_IMAGE="rockylinux:8.7" --build-arg DISTRO="rockylinux8" --build-arg BG_IMG=bg_rocky.png -f dockerfile-kasm-core-oracle .
only:
- schedules
tags:
- aws-autoscale
build_almalinux_9_scheduled:
stage: build
image: ${ORG_NAME}/docker-buildx-private:develop
variables:
BUILD_PLATFORMS: "linux/amd64,linux/arm64"
script:
# get qemu ready
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# prep the buildx env
- docker buildx create --use
# build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-almalinux-9-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-almalinux-9:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg START_XFCE4=1 --build-arg BASE_IMAGE="almalinux:9.1" --build-arg DISTRO="almalinux9" --build-arg BG_IMG=bg_almalinux.png -f dockerfile-kasm-core-oracle .
only:
- schedules
tags:
- aws-autoscale
build_almalinux_8_scheduled:
stage: build
image: ${ORG_NAME}/docker-buildx-private:develop
variables:
BUILD_PLATFORMS: "linux/amd64,linux/arm64"
script:
# get qemu ready
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# prep the buildx env
- docker buildx create --use
# build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-almalinux-8-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-almalinux-8:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg START_XFCE4=1 --build-arg BASE_IMAGE="almalinux:8.7" --build-arg DISTRO="almalinux8" --build-arg BG_IMG=bg_almalinux.png -f dockerfile-kasm-core-oracle .
only:
- schedules
tags:
- aws-autoscale
build_opensuse_15_scheduled: build_opensuse_15_scheduled:
stage: build stage: build
image: ${ORG_NAME}/docker-buildx-private:develop image: ${ORG_NAME}/docker-buildx-private:develop
@ -830,6 +1214,57 @@ build_opensuse_15_scheduled:
tags: tags:
- aws-autoscale - aws-autoscale
build_fedora_37_scheduled:
stage: build
image: ${ORG_NAME}/docker-buildx-private:develop
variables:
BUILD_PLATFORMS: "linux/amd64,linux/arm64"
script:
# get qemu ready
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# prep the buildx env
- docker buildx create --use
# build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-fedora-37-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-fedora-37:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg START_XFCE4=1 --build-arg BASE_IMAGE="fedora:37" --build-arg DISTRO="fedora37" -f dockerfile-kasm-core-fedora .
only:
- schedules
tags:
- aws-autoscale
build_parrotos_5_scheduled:
stage: build
image: ${ORG_NAME}/docker-buildx-private:develop
variables:
BUILD_PLATFORMS: "linux/amd64,linux/arm64"
script:
# get qemu ready
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# prep the buildx env
- docker buildx create --use
# build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-parrotos-5-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-parrotos-5:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg START_XFCE4=1 --build-arg BG_IMG=bg_parrotos5.jpg --build-arg BASE_IMAGE="parrotsec/core:latest" --build-arg DISTRO="parrotos5" -f dockerfile-kasm-core .
only:
- schedules
tags:
- aws-autoscale
build_parrotos_5_scheduled:
stage: build
image: ${ORG_NAME}/docker-buildx-private:develop
variables:
BUILD_PLATFORMS: "linux/amd64,linux/arm64"
script:
# get qemu ready
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# prep the buildx env
- docker buildx create --use
# build for multiple architectures
- docker buildx build --push --platform $BUILD_PLATFORMS -t ${ORG_NAME}/core-alpine-317-private:$SANITIZED_ROLLING_BRANCH -t ${ORG_NAME}/core-alpine-317:$SANITIZED_ROLLING_BRANCH --build-arg START_PULSEAUDIO=1 --build-arg START_XFCE4=1 --build-arg BG_IMG=bg_alpine.png --build-arg BASE_IMAGE="alpine:3.17" --build-arg DISTRO="alpine" -f dockerfile-kasm-core-alpine .
only:
- schedules
tags:
- aws-autoscale
update_readmes: update_readmes:
stage: readme stage: readme
script: script:
@ -860,3 +1295,12 @@ update_readmes:
- core-ubuntu-bionic - core-ubuntu-bionic
- core-ubuntu-focal - core-ubuntu-focal
- core-ubuntu-jammy - core-ubuntu-jammy
- core-fedora-37
- core-debian-bullseye
- core-oracle-9
- core-parrotos-5
- core-rockylinux-9
- core-rockylinux-8
- core-almalinux-9
- core-almalinux-8
- core-alpine-317

View File

@ -35,6 +35,7 @@ ENV DISPLAY=:1 \
VNC_VIEW_ONLY_PW=vncviewonlypassword \ VNC_VIEW_ONLY_PW=vncviewonlypassword \
LD_LIBRARY_PATH=/opt/libjpeg-turbo/lib64/:/usr/local/lib/ \ LD_LIBRARY_PATH=/opt/libjpeg-turbo/lib64/:/usr/local/lib/ \
OMP_WAIT_POLICY=PASSIVE \ OMP_WAIT_POLICY=PASSIVE \
GOMP_SPINCOUNT=0 \
SHELL=/bin/bash \ SHELL=/bin/bash \
START_XFCE4=$START_XFCE4 \ START_XFCE4=$START_XFCE4 \
START_PULSEAUDIO=$START_PULSEAUDIO \ START_PULSEAUDIO=$START_PULSEAUDIO \

175
dockerfile-kasm-core-alpine Normal file
View File

@ -0,0 +1,175 @@
ARG BASE_IMAGE="alpine:3.17"
FROM $BASE_IMAGE AS install_tools
ARG DISTRO=alpine
### Install common tools
RUN apk add --no-cache bash
COPY ./src/ubuntu/install/tools $INST_SCRIPTS/tools/
RUN bash "$INST_SCRIPTS/tools/install_tools.sh" && rm -rf "$INST_SCRIPTS/tools/"
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
FROM install_tools AS squid_builder
ARG DISTRO=alpine
RUN ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g') && \
wget --progress=dot:giga "https://kasmweb-build-artifacts.s3.amazonaws.com/kasm-squid-builder/f2b6ac26e7f91240e57d6d6e1dad4cc2704445ee/output/kasm-squid-builder_alpine_${ARCH}.tar.gz"
RUN tar -xzf kasm-squid-builder_*.tar.gz -C /
FROM install_tools
MAINTAINER Kasm Tech "info@kasmweb.com"
LABEL "com.kasmweb.image"="true"
### Environment config
ARG START_XFCE4=1
ARG START_PULSEAUDIO=1
ARG BG_IMG=bg_alpine.png
ARG EXTRA_SH=noop.sh
ARG DISTRO=alpine
ARG LANG='en_US.UTF-8'
ARG LANGUAGE='en_US:en'
ARG LC_ALL='en_US.UTF-8'
ENV DISPLAY=:1 \
VNC_PORT=5901 \
NO_VNC_PORT=6901 \
VNC_PORT=5901 \
AUDIO_PORT=4901 \
VNC_RESOLUTION=1280x720 \
MAX_FRAME_RATE=24 \
VNCOPTIONS="-PreferBandwidth -DynamicQualityMin=4 -DynamicQualityMax=7 -DLP_ClipDelay=0" \
HOME=/home/kasm-default-profile \
TERM=xterm \
STARTUPDIR=/dockerstartup \
INST_SCRIPTS=/dockerstartup/install \
KASM_VNC_PATH=/usr/share/kasmvnc \
DEBIAN_FRONTEND=noninteractive \
VNC_COL_DEPTH=24 \
VNC_RESOLUTION=1280x1024 \
VNC_PW=vncpassword \
VNC_VIEW_ONLY_PW=vncviewonlypassword \
LD_LIBRARY_PATH=/usr/local/lib/ \
PERL5LIB=/usr/local/bin \
OMP_WAIT_POLICY=PASSIVE \
GOMP_SPINCOUNT=0 \
SHELL=/bin/bash \
START_XFCE4=$START_XFCE4 \
START_PULSEAUDIO=$START_PULSEAUDIO \
LANG=$LANG \
LANGUAGE=$LANGUAGE \
LC_ALL=$LC_ALL \
SINGLE_APPLICATION=0 \
KASMVNC_AUTO_RECOVER=true \
PULSE_RUNTIME_PATH=/var/run/pulse \
SDL_GAMECONTROLLERCONFIG="030000005e040000be02000014010000,XInput Controller,platform:Linux,a:b0,b:b1,x:b2,y:b3,back:b8,guide:b16,start:b9,leftstick:b10,rightstick:b11,leftshoulder:b4,rightshoulder:b5,dpup:b12,dpdown:b13,dpleft:b14,dpright:b15,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:b6,righttrigger:b7"
EXPOSE $VNC_PORT \
$NO_VNC_PORT \
$UPLOAD_PORT \
$AUDIO_PORT
WORKDIR $HOME
RUN mkdir -p $HOME/Desktop
### Install custom fonts
COPY ./src/ubuntu/install/fonts $INST_SCRIPTS/fonts/
RUN bash $INST_SCRIPTS/fonts/install_custom_fonts.sh && rm -rf $INST_SCRIPTS/fonts/
### Install xfce UI
COPY ./src/ubuntu/install/xfce $INST_SCRIPTS/xfce/
RUN bash $INST_SCRIPTS/xfce/install_xfce_ui.sh && rm -rf $INST_SCRIPTS/xfce/
COPY ./src/$DISTRO/xfce/.config/ $HOME/.config/
COPY /src/common/resources/images/bg_kasm.png /usr/share/backgrounds/bg_kasm.png
COPY /src/common/resources/images/$BG_IMG /usr/share/backgrounds/bg_default.png
### Install kasm_vnc dependencies and binaries
COPY ./src/ubuntu/install/kasm_vnc $INST_SCRIPTS/kasm_vnc/
RUN bash $INST_SCRIPTS/kasm_vnc/install_kasm_vnc.sh && rm -rf $INST_SCRIPTS/kasm_vnc/
COPY ./src/common/install/kasm_vnc/kasmvnc.yaml /etc/kasmvnc/
### Install Kasm Upload Server
COPY ./src/ubuntu/install/kasm_upload_server $INST_SCRIPTS/kasm_upload_server/
RUN bash $INST_SCRIPTS/kasm_upload_server/install_kasm_upload_server.sh && rm -rf $INST_SCRIPTS/kasm_upload_server/
### Install custom cursors
COPY ./src/ubuntu/install/cursors $INST_SCRIPTS/cursors/
RUN bash $INST_SCRIPTS/cursors/install_cursors.sh && rm -rf $INST_SCRIPTS/cursors/
### Install Audio
COPY ./src/ubuntu/install/audio $INST_SCRIPTS/audio/
RUN bash $INST_SCRIPTS/audio/install_audio.sh && rm -rf $INST_SCRIPTS/audio/
### Install Audio Input
COPY ./src/ubuntu/install/audio_input $INST_SCRIPTS/audio_input/
RUN bash $INST_SCRIPTS/audio_input/install_audio_input.sh && rm -rf $INST_SCRIPTS/audio_input/
### Install Gamepad Service
COPY ./src/ubuntu/install/gamepad $INST_SCRIPTS/gamepad/
RUN bash $INST_SCRIPTS/gamepad/install_gamepad.sh && rm -rf $INST_SCRIPTS/gamepad/
### Copy built Squid
COPY --from=squid_builder /usr/local/squid /usr/local/squid
### Install Squid
COPY ./src/ubuntu/install/squid/install/ $INST_SCRIPTS/squid_install/
RUN bash $INST_SCRIPTS/squid_install/install_squid.sh && rm -rf $INST_SCRIPTS/squid_install/
COPY ./src/ubuntu/install/squid/resources/*.conf /etc/squid/
COPY ./src/ubuntu/install/squid/resources/start_squid.sh /etc/squid/start_squid.sh
COPY ./src/ubuntu/install/squid/resources/SN.png /usr/local/squid/share/icons/SN.png
RUN chown proxy:proxy /usr/local/squid/share/icons/SN.png
COPY ./src/ubuntu/install/squid/resources/error_message/access_denied.html /usr/local/squid/share/errors/en/ERR_ACCESS_DENIED
RUN chown proxy:proxy /usr/local/squid/share/errors/en/ERR_ACCESS_DENIED
RUN rm -rf "$INST_SCRIPTS/resources/"
RUN chmod +x /etc/squid/kasm_squid_adapter
RUN chmod +x /etc/squid/start_squid.sh && chmod 4755 /etc/squid/start_squid.sh
### configure startup
COPY ./src/common/scripts/kasm_hook_scripts $STARTUPDIR
COPY ./src/common/startup_scripts $STARTUPDIR
RUN bash $STARTUPDIR/set_user_permission.sh $STARTUPDIR $HOME && \
echo 'source $STARTUPDIR/generate_container_user' >> $HOME/.bashrc
### extra configurations needed per distro variant
COPY ./src/ubuntu/install/extra $INST_SCRIPTS/extra/
RUN bash $INST_SCRIPTS/extra/$EXTRA_SH && rm -rf $INST_SCRIPTS/extra/
### Create user and home directory for base images that don't already define it
RUN (groupadd -g 1000 kasm-user \
&& useradd -M -u 1000 -g 1000 kasm-user \
&& usermod -a -G kasm-user kasm-user) ; exit 0
ENV HOME /home/kasm-user
WORKDIR $HOME
RUN mkdir -p $HOME && chown -R 1000:0 $HOME
### FIX PERMISSIONS ## Objective is to change the owner of non-home paths to root, remove write permissions, and set execute where required
# these files are created on container first exec, by the default user, so we have to create them since default will not have write perm
RUN touch $STARTUPDIR/wm.log \
&& touch $STARTUPDIR/window_manager_startup.log \
&& touch $STARTUPDIR/vnc_startup.log \
&& touch $STARTUPDIR/no_vnc_startup.log \
&& chown -R root:root $STARTUPDIR \
&& find $STARTUPDIR -type d -exec chmod 755 {} \; \
&& find $STARTUPDIR -type f -exec chmod 644 {} \; \
&& find $STARTUPDIR -type f -iname "*.sh" -exec chmod 755 {} \; \
&& find $STARTUPDIR -type f -iname "*.py" -exec chmod 755 {} \; \
&& find $STARTUPDIR -type f -iname "*.rb" -exec chmod 755 {} \; \
&& find $STARTUPDIR -type f -iname "*.pl" -exec chmod 755 {} \; \
&& find $STARTUPDIR -type f -iname "*.log" -exec chmod 666 {} \; \
&& chmod 755 $STARTUPDIR/upload_server/kasm_upload_server \
&& chmod 755 $STARTUPDIR/audio_input/kasm_audio_input_server \
&& chmod 755 $STARTUPDIR/gamepad/kasm_gamepad_server \
&& chmod 755 $STARTUPDIR/generate_container_user \
&& chmod +x $STARTUPDIR/jsmpeg/kasm_audio_out-linux \
&& rm -rf $STARTUPDIR/install \
&& mkdir -p $STARTUPDIR/kasmrx/Downloads \
&& chown 1000:1000 $STARTUPDIR/kasmrx/Downloads \
&& chown -R root:root /usr/local/bin \
&& chown 1000:root /var/run/pulse
USER 1000
ENTRYPOINT ["/dockerstartup/kasm_default_profile.sh", "/dockerstartup/vnc_startup.sh", "/dockerstartup/kasm_startup.sh"]
CMD ["--wait"]

View File

@ -48,6 +48,7 @@ ENV DISPLAY=:1 \
VNC_VIEW_ONLY_PW=vncviewonlypassword \ VNC_VIEW_ONLY_PW=vncviewonlypassword \
LD_LIBRARY_PATH=/usr/local/lib/ \ LD_LIBRARY_PATH=/usr/local/lib/ \
OMP_WAIT_POLICY=PASSIVE \ OMP_WAIT_POLICY=PASSIVE \
GOMP_SPINCOUNT=0 \
SHELL=/bin/bash \ SHELL=/bin/bash \
START_XFCE4=$START_XFCE4 \ START_XFCE4=$START_XFCE4 \
START_PULSEAUDIO=$START_PULSEAUDIO \ START_PULSEAUDIO=$START_PULSEAUDIO \

181
dockerfile-kasm-core-fedora Normal file
View File

@ -0,0 +1,181 @@
ARG BASE_IMAGE="fedora:37"
FROM $BASE_IMAGE AS install_tools
ARG DISTRO=fedora37
### Install common tools
COPY ./src/ubuntu/install/tools $INST_SCRIPTS/tools/
RUN bash "$INST_SCRIPTS/tools/install_tools.sh" && rm -rf "$INST_SCRIPTS/tools/"
ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' LC_ALL='en_US.UTF-8'
FROM install_tools AS squid_builder
ARG DISTRO=fedora37
RUN ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g') && \
wget --progress=dot:giga "https://kasmweb-build-artifacts.s3.amazonaws.com/kasm-squid-builder/1149fc830c7edcb383eec390cce2beba16befde5/output/kasm-squid-builder_${ARCH}.tar.gz"
RUN tar -xzf kasm-squid-builder_*.tar.gz -C /
FROM install_tools
MAINTAINER Kasm Tech "info@kasmweb.com"
LABEL "com.kasmweb.image"="true"
### Environment config
ARG START_XFCE4=1
ARG START_PULSEAUDIO=1
ARG BG_IMG=bg_fedora.png
ARG EXTRA_SH=noop.sh
ARG DISTRO=fedora37
ARG LANG='en_US.UTF-8'
ARG LANGUAGE='en_US:en'
ARG LC_ALL='en_US.UTF-8'
ENV DISPLAY=:1 \
VNC_PORT=5901 \
NO_VNC_PORT=6901 \
VNC_PORT=5901 \
AUDIO_PORT=4901 \
VNC_RESOLUTION=1280x720 \
MAX_FRAME_RATE=24 \
VNCOPTIONS="-PreferBandwidth -DynamicQualityMin=4 -DynamicQualityMax=7 -DLP_ClipDelay=0" \
HOME=/home/kasm-default-profile \
TERM=xterm \
STARTUPDIR=/dockerstartup \
INST_SCRIPTS=/dockerstartup/install \
KASM_VNC_PATH=/usr/share/kasmvnc \
DEBIAN_FRONTEND=noninteractive \
VNC_COL_DEPTH=24 \
VNC_RESOLUTION=1280x1024 \
VNC_PW=vncpassword \
VNC_VIEW_ONLY_PW=vncviewonlypassword \
LD_LIBRARY_PATH=/usr/local/lib/ \
OMP_WAIT_POLICY=PASSIVE \
GOMP_SPINCOUNT=0 \
SHELL=/bin/bash \
START_XFCE4=$START_XFCE4 \
START_PULSEAUDIO=$START_PULSEAUDIO \
LANG=$LANG \
LANGUAGE=$LANGUAGE \
LC_ALL=$LC_ALL \
SINGLE_APPLICATION=0 \
KASMVNC_AUTO_RECOVER=true \
PULSE_RUNTIME_PATH=/var/run/pulse \
SDL_GAMECONTROLLERCONFIG="030000005e040000be02000014010000,XInput Controller,platform:Linux,a:b0,b:b1,x:b2,y:b3,back:b8,guide:b16,start:b9,leftstick:b10,rightstick:b11,leftshoulder:b4,rightshoulder:b5,dpup:b12,dpdown:b13,dpleft:b14,dpright:b15,leftx:a0,lefty:a1,rightx:a2,righty:a3,lefttrigger:b6,righttrigger:b7"
EXPOSE $VNC_PORT \
$NO_VNC_PORT \
$UPLOAD_PORT \
$AUDIO_PORT
WORKDIR $HOME
RUN mkdir -p $HOME/Desktop
### Ensure all needed packages are installed.
### Consider "yum install -y gettext nss_wraper". There's a typo in nss_wraper
### (should be nss_wrapper), and yum would just ignore it. Thus, a necessary
### package would be missing. With skip_missing_names_on_install, yum will exit
### with 1 exit code and that will stop image building.
RUN dnf install -y 'dnf-command(config-manager)' && dnf config-manager --setopt=skip_missing_names_on_install=False --save
### Install custom fonts
COPY ./src/ubuntu/install/fonts $INST_SCRIPTS/fonts/
RUN bash $INST_SCRIPTS/fonts/install_custom_fonts.sh && rm -rf $INST_SCRIPTS/fonts/
### Install xfce UI
COPY ./src/ubuntu/install/xfce $INST_SCRIPTS/xfce/
RUN bash $INST_SCRIPTS/xfce/install_xfce_ui.sh && rm -rf $INST_SCRIPTS/xfce/
COPY ./src/$DISTRO/xfce/.config/ $HOME/.config/
COPY /src/common/resources/images/bg_kasm.png /usr/share/backgrounds/bg_kasm.png
COPY /src/common/resources/images/$BG_IMG /usr/share/backgrounds/bg_default.png
### Install kasm_vnc dependencies and binaries
COPY ./src/ubuntu/install/kasm_vnc $INST_SCRIPTS/kasm_vnc/
RUN bash $INST_SCRIPTS/kasm_vnc/install_kasm_vnc.sh && rm -rf $INST_SCRIPTS/kasm_vnc/
COPY ./src/common/install/kasm_vnc/kasmvnc.yaml /etc/kasmvnc/
### Install Kasm Upload Server
COPY ./src/ubuntu/install/kasm_upload_server $INST_SCRIPTS/kasm_upload_server/
RUN bash $INST_SCRIPTS/kasm_upload_server/install_kasm_upload_server.sh && rm -rf $INST_SCRIPTS/kasm_upload_server/
### Install custom cursors
COPY ./src/ubuntu/install/cursors $INST_SCRIPTS/cursors/
RUN bash $INST_SCRIPTS/cursors/install_cursors.sh && rm -rf $INST_SCRIPTS/cursors/
### Install Audio
COPY ./src/ubuntu/install/audio $INST_SCRIPTS/audio/
RUN bash $INST_SCRIPTS/audio/install_audio.sh && rm -rf $INST_SCRIPTS/audio/
### Install Audio Input
COPY ./src/ubuntu/install/audio_input $INST_SCRIPTS/audio_input/
RUN bash $INST_SCRIPTS/audio_input/install_audio_input.sh && rm -rf $INST_SCRIPTS/audio_input/
### Install Gamepad Service
COPY ./src/ubuntu/install/gamepad $INST_SCRIPTS/gamepad/
RUN bash $INST_SCRIPTS/gamepad/install_gamepad.sh && rm -rf $INST_SCRIPTS/gamepad/
### Copy built Squid
COPY --from=squid_builder /usr/local/squid /usr/local/squid
### Install Squid
COPY ./src/ubuntu/install/squid/install/ $INST_SCRIPTS/squid_install/
RUN bash $INST_SCRIPTS/squid_install/install_squid.sh && rm -rf $INST_SCRIPTS/squid_install/
COPY ./src/ubuntu/install/squid/resources/*.conf /etc/squid/
COPY ./src/ubuntu/install/squid/resources/start_squid.sh /etc/squid/start_squid.sh
COPY ./src/ubuntu/install/squid/resources/SN.png /usr/local/squid/share/icons/SN.png
RUN chown proxy:proxy /usr/local/squid/share/icons/SN.png
COPY ./src/ubuntu/install/squid/resources/error_message/access_denied.html /usr/local/squid/share/errors/en/ERR_ACCESS_DENIED
RUN chown proxy:proxy /usr/local/squid/share/errors/en/ERR_ACCESS_DENIED
RUN rm -rf "$INST_SCRIPTS/resources/"
RUN chmod +x /etc/squid/kasm_squid_adapter
RUN chmod +x /etc/squid/start_squid.sh && chmod 4755 /etc/squid/start_squid.sh
### configure startup
COPY ./src/common/scripts/kasm_hook_scripts $STARTUPDIR
COPY ./src/common/startup_scripts $STARTUPDIR
RUN bash $STARTUPDIR/set_user_permission.sh $STARTUPDIR $HOME && \
echo 'source $STARTUPDIR/generate_container_user' >> $HOME/.bashrc
### extra configurations needed per distro variant
COPY ./src/ubuntu/install/extra $INST_SCRIPTS/extra/
RUN bash $INST_SCRIPTS/extra/$EXTRA_SH && rm -rf $INST_SCRIPTS/extra/
### Create user and home directory for base images that don't already define it
RUN (groupadd -g 1000 kasm-user \
&& useradd -M -u 1000 -g 1000 kasm-user \
&& usermod -a -G kasm-user kasm-user) ; exit 0
ENV HOME /home/kasm-user
WORKDIR $HOME
RUN mkdir -p $HOME && chown -R 1000:0 $HOME
### FIX PERMISSIONS ## Objective is to change the owner of non-home paths to root, remove write permissions, and set execute where required
# these files are created on container first exec, by the default user, so we have to create them since default will not have write perm
RUN touch $STARTUPDIR/wm.log \
&& touch $STARTUPDIR/window_manager_startup.log \
&& touch $STARTUPDIR/vnc_startup.log \
&& touch $STARTUPDIR/no_vnc_startup.log \
&& chown -R root:root $STARTUPDIR \
&& find $STARTUPDIR -type d -exec chmod 755 {} \; \
&& find $STARTUPDIR -type f -exec chmod 644 {} \; \
&& find $STARTUPDIR -type f -iname "*.sh" -exec chmod 755 {} \; \
&& find $STARTUPDIR -type f -iname "*.py" -exec chmod 755 {} \; \
&& find $STARTUPDIR -type f -iname "*.rb" -exec chmod 755 {} \; \
&& find $STARTUPDIR -type f -iname "*.pl" -exec chmod 755 {} \; \
&& find $STARTUPDIR -type f -iname "*.log" -exec chmod 666 {} \; \
&& chmod 755 $STARTUPDIR/upload_server/kasm_upload_server \
&& chmod 755 $STARTUPDIR/audio_input/kasm_audio_input_server \
&& chmod 755 $STARTUPDIR/gamepad/kasm_gamepad_server \
&& chmod 755 $STARTUPDIR/generate_container_user \
&& chmod +x $STARTUPDIR/jsmpeg/kasm_audio_out-linux \
&& rm -rf $STARTUPDIR/install \
&& mkdir -p $STARTUPDIR/kasmrx/Downloads \
&& chown 1000:1000 $STARTUPDIR/kasmrx/Downloads \
&& chown -R root:root /usr/local/bin \
&& chown 1000:root /var/run/pulse
USER 1000
ENTRYPOINT ["/dockerstartup/kasm_default_profile.sh", "/dockerstartup/vnc_startup.sh", "/dockerstartup/kasm_startup.sh"]
CMD ["--wait"]

View File

@ -14,9 +14,9 @@ FROM install_tools AS squid_builder
ARG DISTRO=oracle8 ARG DISTRO=oracle8
RUN if [ "${DISTRO}" == "oracle8" ]; then \ RUN if [ "${DISTRO}" == "oracle8" ] || [ "${DISTRO}" == "oracle9" ] || [ "${DISTRO}" == "rockylinux9" ] || [ "${DISTRO}" == "rockylinux8" ] || [ "${DISTRO}" == "almalinux8" ] || [ "${DISTRO}" == "almalinux9" ]; then \
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g') && \ ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g') && \
wget --progress=dot:giga "https://kasmweb-build-artifacts.s3.amazonaws.com/kasm-squid-builder/de1dffbc94d4132d6c696de8c6dfcd6f08900f61/output/kasm-squid-builder_oracle_${ARCH}.tar.gz"; \ wget --progress=dot:giga "https://kasmweb-build-artifacts.s3.amazonaws.com/kasm-squid-builder/1149fc830c7edcb383eec390cce2beba16befde5/output/kasm-squid-builder_${ARCH}.tar.gz"; \
else \ else \
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g') && \ ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g') && \
wget --progress=dot:giga "https://kasmweb-build-artifacts.s3.amazonaws.com/kasm-squid-builder/de1dffbc94d4132d6c696de8c6dfcd6f08900f61/output/kasm-squid-builder_centos_${ARCH}.tar.gz"; \ wget --progress=dot:giga "https://kasmweb-build-artifacts.s3.amazonaws.com/kasm-squid-builder/de1dffbc94d4132d6c696de8c6dfcd6f08900f61/output/kasm-squid-builder_centos_${ARCH}.tar.gz"; \
@ -57,6 +57,7 @@ ENV DISPLAY=:1 \
VNC_VIEW_ONLY_PW=vncviewonlypassword \ VNC_VIEW_ONLY_PW=vncviewonlypassword \
LD_LIBRARY_PATH=/usr/local/lib/ \ LD_LIBRARY_PATH=/usr/local/lib/ \
OMP_WAIT_POLICY=PASSIVE \ OMP_WAIT_POLICY=PASSIVE \
GOMP_SPINCOUNT=0 \
SHELL=/bin/bash \ SHELL=/bin/bash \
START_XFCE4=$START_XFCE4 \ START_XFCE4=$START_XFCE4 \
START_PULSEAUDIO=$START_PULSEAUDIO \ START_PULSEAUDIO=$START_PULSEAUDIO \
@ -81,12 +82,17 @@ RUN mkdir -p $HOME/Desktop
### (should be nss_wrapper), and yum would just ignore it. Thus, a necessary ### (should be nss_wrapper), and yum would just ignore it. Thus, a necessary
### package would be missing. With skip_missing_names_on_install, yum will exit ### package would be missing. With skip_missing_names_on_install, yum will exit
### with 1 exit code and that will stop image building. ### with 1 exit code and that will stop image building.
RUN if [ "${DISTRO}" == "oracle8" ]; then \ RUN if [ "${DISTRO}" == "oracle8" ] || [ "${DISTRO}" == "oracle9" ] || [ "${DISTRO}" == "rockylinux9" ] || [ "${DISTRO}" == "rockylinux8" ] || [ "${DISTRO}" == "almalinux8" ] || [ "${DISTRO}" == "almalinux9" ]; then \
dnf config-manager --setopt=skip_missing_names_on_install=False --save; \ dnf install -y 'dnf-command(config-manager)' && \
dnf config-manager --setopt=skip_missing_names_on_install=False --save && \
dnf clean all; \
else \ else \
yum-config-manager --setopt=skip_missing_names_on_install=False --save; \ yum-config-manager --setopt=skip_missing_names_on_install=False --save; \
fi fi
### Copy over the maximization script to our startup dir for use by app images.
COPY ./src/ubuntu/install/maximize_script $STARTUPDIR/
### Install custom fonts ### Install custom fonts
COPY ./src/ubuntu/install/fonts $INST_SCRIPTS/fonts/ COPY ./src/ubuntu/install/fonts $INST_SCRIPTS/fonts/
RUN bash $INST_SCRIPTS/fonts/install_custom_fonts.sh && rm -rf $INST_SCRIPTS/fonts/ RUN bash $INST_SCRIPTS/fonts/install_custom_fonts.sh && rm -rf $INST_SCRIPTS/fonts/

View File

@ -15,7 +15,7 @@ FROM install_tools AS squid_builder
ARG DISTRO=opensuse ARG DISTRO=opensuse
RUN ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g') && \ RUN ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g') && \
wget --progress=dot:giga "https://kasmweb-build-artifacts.s3.amazonaws.com/kasm-squid-builder/de1dffbc94d4132d6c696de8c6dfcd6f08900f61/output/kasm-squid-builder_opensuse_${ARCH}.tar.gz" wget --progress=dot:giga "https://kasmweb-build-artifacts.s3.amazonaws.com/kasm-squid-builder/1149fc830c7edcb383eec390cce2beba16befde5/output/kasm-squid-builder_${ARCH}.tar.gz"
RUN tar -xzf kasm-squid-builder_*.tar.gz -C / RUN tar -xzf kasm-squid-builder_*.tar.gz -C /
FROM install_tools FROM install_tools
@ -52,6 +52,7 @@ ENV DISPLAY=:1 \
VNC_VIEW_ONLY_PW=vncviewonlypassword \ VNC_VIEW_ONLY_PW=vncviewonlypassword \
LD_LIBRARY_PATH=/usr/local/lib/ \ LD_LIBRARY_PATH=/usr/local/lib/ \
OMP_WAIT_POLICY=PASSIVE \ OMP_WAIT_POLICY=PASSIVE \
GOMP_SPINCOUNT=0 \
SHELL=/bin/bash \ SHELL=/bin/bash \
START_XFCE4=$START_XFCE4 \ START_XFCE4=$START_XFCE4 \
START_PULSEAUDIO=$START_PULSEAUDIO \ START_PULSEAUDIO=$START_PULSEAUDIO \

View File

@ -0,0 +1,7 @@
# About This Image
This image contains a browser-accessible version of AlmaLinux 8.
![Screenshot][Image_Screenshot]
[Image_Screenshot]: https://5856039.fs1.hubspotusercontent-na1.net/hubfs/5856039/dockerhub/image-screenshots/almalinux-9-core.png "Image Screenshot"

View File

@ -0,0 +1,9 @@
# Live Demo
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank">Live Demo</a>.
<a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/CoreUbuntuJammy.png" width="300" height="104"></a>
&lowast;*This demo links to a Jammy Desktop image to show the basic functionality of Kasm Workspaces.*
&lowast;*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*

View File

@ -0,0 +1 @@
AlmaLinux 8 base image for Kasm Workspaces

View File

@ -0,0 +1,7 @@
# About This Image
This image contains a browser-accessible version of AlmaLinux 9.
![Screenshot][Image_Screenshot]
[Image_Screenshot]: https://5856039.fs1.hubspotusercontent-na1.net/hubfs/5856039/dockerhub/image-screenshots/almalinux-9-core.png "Image Screenshot"

View File

@ -0,0 +1,9 @@
# Live Demo
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank">Live Demo</a>.
<a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/CoreUbuntuJammy.png" width="300" height="104"></a>
&lowast;*This demo links to a Jammy Desktop image to show the basic functionality of Kasm Workspaces.*
&lowast;*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*

View File

@ -0,0 +1 @@
AlmaLinux 9 base image for Kasm Workspaces

View File

@ -0,0 +1,7 @@
# About This Image
This image contains a browser-accessible version of Alpine 3.17.
![Screenshot][Image_Screenshot]
[Image_Screenshot]: https://5856039.fs1.hubspotusercontent-na1.net/hubfs/5856039/dockerhub/image-screenshots/alpine-317-core.png "Image Screenshot"

View File

@ -0,0 +1,9 @@
# Live Demo
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank">Live Demo</a>.
<a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/CoreUbuntuJammy.png" width="300" height="104"></a>
&lowast;*This demo links to a Jammy Desktop image to show the basic functionality of Kasm Workspaces.*
&lowast;*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*

View File

@ -0,0 +1 @@
Alpine 3.17 base image for Kasm Workspaces

View File

@ -0,0 +1,7 @@
# About This Image
This image contains a browser-accessible version of Debian Bullseye.
![Screenshot][Image_Screenshot]
[Image_Screenshot]: https://5856039.fs1.hubspotusercontent-na1.net/hubfs/5856039/dockerhub/image-screenshots/debian-bullseye-core.png "Image Screenshot"

View File

@ -0,0 +1,9 @@
# Live Demo
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank">Live Demo</a>.
<a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/CoreUbuntuJammy.png" width="300" height="104"></a>
&lowast;*This demo links to a Jammy Desktop image to show the basic functionality of Kasm Workspaces.*
&lowast;*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*

View File

@ -0,0 +1 @@
Debian Bullseye base image for Kasm Workspaces

View File

@ -0,0 +1,7 @@
# About This Image
This image contains a browser-accessible version of Fedora 37.
![Screenshot][Image_Screenshot]
[Image_Screenshot]: https://info.kasmweb.com/hubfs/dockerhub/fedora-37-core.png "Image Screenshot"

View File

@ -0,0 +1,9 @@
# Live Demo
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank">Live Demo</a>.
<a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/CoreUbuntuJammy.png" width="300" height="104"></a>
&lowast;*This demo links to a Jammy Desktop image to show the basic functionality of Kasm Workspaces.*
&lowast;*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*

View File

@ -0,0 +1 @@
Fedora 37 base image for Kasm Workspaces

View File

@ -0,0 +1,7 @@
# About This Image
This Image contains a browser-accessible Oracle Linux 9 with XFCE desktop environment.
![Screenshot][Image_Screenshot]
[Image_Screenshot]: https://5856039.fs1.hubspotusercontent-na1.net/hubfs/5856039/dockerhub/image-screenshots/oracle-9-core.png "Image Screenshot"

View File

@ -0,0 +1,7 @@
# Live Demo
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/1627776619" target="_blank">Live Demo</a>.
<a href="https://app.kasmweb.com/#/cast/1627776619" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/CoreOracleLinux8.png" width="300" height="104"></a>
&lowast;*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*

View File

@ -0,0 +1 @@
Oracle Linux 9 base image for Kasm Workspaces

View File

@ -0,0 +1,7 @@
# About This Image
This image contains a browser-accessible version of Parrot OS 5.
![Screenshot][Image_Screenshot]
[Image_Screenshot]: https://5856039.fs1.hubspotusercontent-na1.net/hubfs/5856039/dockerhub/image-screenshots/core-ubuntu-jammy.png "Image Screenshot"

View File

@ -0,0 +1,9 @@
# Live Demo
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank">Live Demo</a>.
<a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/CoreUbuntuJammy.png" width="300" height="104"></a>
&lowast;*This demo links to a Jammy Desktop image to show the basic functionality of Kasm Workspaces.*
&lowast;*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*

View File

@ -0,0 +1 @@
Parrot OS 5 base image for Kasm Workspaces

View File

@ -1,3 +1,5 @@
**This image has been deprecated and will not longer receive updates**
# Live Demo # Live Demo
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/5350770293" target="_blank">Live Demo</a>. **Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/5350770293" target="_blank">Live Demo</a>.

View File

@ -0,0 +1,7 @@
# About This Image
This image contains a browser-accessible version of Rocky Linux 8.
![Screenshot][Image_Screenshot]
[Image_Screenshot]: https://5856039.fs1.hubspotusercontent-na1.net/hubfs/5856039/dockerhub/image-screenshots/rockylinux-9-core.png "Image Screenshot"

View File

@ -0,0 +1,9 @@
# Live Demo
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank">Live Demo</a>.
<a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/CoreUbuntuJammy.png" width="300" height="104"></a>
&lowast;*This demo links to a Jammy Desktop image to show the basic functionality of Kasm Workspaces.*
&lowast;*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*

View File

@ -0,0 +1 @@
Rocky Linux 8 base image for Kasm Workspaces

View File

@ -0,0 +1,7 @@
# About This Image
This image contains a browser-accessible version of Rocky Linux 9.
![Screenshot][Image_Screenshot]
[Image_Screenshot]: https://5856039.fs1.hubspotusercontent-na1.net/hubfs/5856039/dockerhub/image-screenshots/rockylinux-9-core.png "Image Screenshot"

View File

@ -0,0 +1,9 @@
# Live Demo
**Launch a real-time demo in a new browser window:** <a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank">Live Demo</a>.
<a href="https://app.kasmweb.com/#/cast/1481835260" target="_blank"><img src="https://5856039.fs1.hubspotusercontent-na1.net/hub/5856039/hubfs/dockerhub/casting-buttons/CoreUbuntuJammy.png" width="300" height="104"></a>
&lowast;*This demo links to a Jammy Desktop image to show the basic functionality of Kasm Workspaces.*
&lowast;*Note: Demo is limited to 3 minutes and has upload/downloads restricted for security purposes.*

View File

@ -0,0 +1 @@
Rocky Linux 9 base image for Kasm Workspaces

View File

View File

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-desktop" version="1.0">
<property name="backdrop" type="empty">
<property name="screen0" type="empty">
<property name="monitorVNC-0" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace1" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/images/default.png"/>
</property>
<property name="workspace2" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/images/default.png"/>
</property>
<property name="workspace3" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/images/default.png"/>
</property>
</property>
</property>
</property>
<property name="desktop-icons" type="empty">
<property name="file-icons" type="empty">
<property name="show-home" type="bool" value="false"/>
<property name="show-filesystem" type="bool" value="false"/>
<property name="show-trash" type="bool" value="false"/>
<property name="show-removable" type="bool" value="false"/>
</property>
</property>
<property name="last" type="empty">
<property name="window-width" type="int" value="653"/>
<property name="window-height" type="int" value="558"/>
</property>
</channel>

View File

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-panel" version="1.0">
<property name="configver" type="int" value="2"/>
<property name="panels" type="array">
<value type="int" value="1"/>
<property name="dark-mode" type="bool" value="true"/>
<property name="panel-1" type="empty">
<property name="position" type="string" value="p=6;x=0;y=0"/>
<property name="length" type="uint" value="100"/>
<property name="position-locked" type="bool" value="true"/>
<property name="icon-size" type="uint" value="16"/>
<property name="size" type="uint" value="26"/>
<property name="plugin-ids" type="array">
<value type="int" value="1"/>
<value type="int" value="2"/>
<value type="int" value="3"/>
<value type="int" value="4"/>
</property>
</property>
</property>
<property name="plugins" type="empty">
<property name="plugin-1" type="string" value="applicationsmenu"/>
<property name="plugin-2" type="string" value="tasklist">
<property name="grouping" type="uint" value="1"/>
</property>
<property name="plugin-3" type="string" value="separator">
<property name="expand" type="bool" value="true"/>
<property name="style" type="uint" value="0"/>
</property>
<property name="plugin-4" type="string" value="pager"/>
<property name="plugin-9" type="string" value="power-manager-plugin"/>
</property>
</channel>

View File

View File

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-desktop" version="1.0">
<property name="backdrop" type="empty">
<property name="screen0" type="empty">
<property name="monitorVNC-0" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace1" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/images/default.png"/>
</property>
<property name="workspace2" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/images/default.png"/>
</property>
<property name="workspace3" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/images/default.png"/>
</property>
</property>
</property>
</property>
<property name="desktop-icons" type="empty">
<property name="file-icons" type="empty">
<property name="show-home" type="bool" value="false"/>
<property name="show-filesystem" type="bool" value="false"/>
<property name="show-trash" type="bool" value="false"/>
<property name="show-removable" type="bool" value="false"/>
</property>
</property>
<property name="last" type="empty">
<property name="window-width" type="int" value="653"/>
<property name="window-height" type="int" value="558"/>
</property>
</channel>

View File

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-panel" version="1.0">
<property name="configver" type="int" value="2"/>
<property name="panels" type="array">
<value type="int" value="1"/>
<property name="dark-mode" type="bool" value="true"/>
<property name="panel-1" type="empty">
<property name="position" type="string" value="p=6;x=0;y=0"/>
<property name="length" type="uint" value="100"/>
<property name="position-locked" type="bool" value="true"/>
<property name="icon-size" type="uint" value="16"/>
<property name="size" type="uint" value="26"/>
<property name="plugin-ids" type="array">
<value type="int" value="1"/>
<value type="int" value="2"/>
<value type="int" value="3"/>
<value type="int" value="4"/>
</property>
</property>
</property>
<property name="plugins" type="empty">
<property name="plugin-1" type="string" value="applicationsmenu"/>
<property name="plugin-2" type="string" value="tasklist">
<property name="grouping" type="uint" value="1"/>
</property>
<property name="plugin-3" type="string" value="separator">
<property name="expand" type="bool" value="true"/>
<property name="style" type="uint" value="0"/>
</property>
<property name="plugin-4" type="string" value="pager"/>
<property name="plugin-9" type="string" value="power-manager-plugin"/>
</property>
</channel>

View File

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-desktop" version="1.0">
<property name="backdrop" type="empty">
<property name="screen0" type="empty">
<property name="monitorVNC-0" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace1" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/xfce/xfce-verticals.png"/>
</property>
<property name="workspace2" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/xfce/xfce-verticals.png"/>
</property>
<property name="workspace3" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/xfce/xfce-verticals.png"/>
</property>
</property>
</property>
</property>
<property name="desktop-icons" type="empty">
<property name="file-icons" type="empty">
<property name="show-home" type="bool" value="false"/>
<property name="show-filesystem" type="bool" value="false"/>
<property name="show-trash" type="bool" value="false"/>
<property name="show-removable" type="bool" value="false"/>
</property>
</property>
<property name="last" type="empty">
<property name="window-width" type="int" value="634"/>
<property name="window-height" type="int" value="566"/>
</property>
</channel>

View File

@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-panel" version="1.0">
<property name="configver" type="int" value="2"/>
<property name="panels" type="array">
<value type="int" value="1"/>
<property name="dark-mode" type="bool" value="true"/>
<property name="panel-1" type="empty">
<property name="position" type="string" value="p=6;x=0;y=0"/>
<property name="length" type="uint" value="100"/>
<property name="position-locked" type="bool" value="true"/>
<property name="icon-size" type="uint" value="16"/>
<property name="size" type="uint" value="26"/>
<property name="plugin-ids" type="array">
<value type="int" value="1"/>
<value type="int" value="2"/>
<value type="int" value="3"/>
<value type="int" value="4"/>
</property>
</property>
</property>
<property name="plugins" type="empty">
<property name="plugin-1" type="string" value="applicationsmenu"/>
<property name="plugin-2" type="string" value="tasklist">
<property name="grouping" type="uint" value="1"/>
</property>
<property name="plugin-3" type="string" value="separator">
<property name="expand" type="bool" value="true"/>
<property name="style" type="uint" value="0"/>
</property>
<property name="plugin-4" type="string" value="pager"/>
<property name="plugin-8" type="string" value="pulseaudio">
<property name="enable-keyboard-shortcuts" type="bool" value="true"/>
<property name="show-notifications" type="bool" value="true"/>
</property>
<property name="plugin-9" type="string" value="power-manager-plugin"/>
<property name="plugin-10" type="string" value="notification-plugin"/>
</property>
</channel>

View File

@ -5,3 +5,4 @@ network:
udp: udp:
public_ip: 127.0.0.1 public_ip: 127.0.0.1

Binary file not shown.

After

Width:  |  Height:  |  Size: 346 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 MiB

View File

@ -0,0 +1,506 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="1920px" height="1080px" viewBox="0 0 1920 1080" enable-background="new 0 0 1920 1080" xml:space="preserve">
<rect x="-377" y="-494" fill="#010027" width="2629" height="2100"/>
<g>
<rect x="838" y="291" fill="#E7E9B9" width="16" height="17"/>
<rect x="1045.89" y="-9.687" transform="matrix(0.4557 0.8901 -0.8901 0.4557 1063.1237 -631.2235)" fill="#E7E9B9" width="3.628" height="1126.751"/>
<circle fill="#01A495" cx="946.045" cy="589.996" r="267.083"/>
<radialGradient id="SVGID_1_" cx="1030.2109" cy="593.251" r="355.975" gradientTransform="matrix(0.7846 0 0 1.0808 110.1965 -153.1852)" gradientUnits="userSpaceOnUse">
<stop offset="0" style="stop-color:#010027;stop-opacity:0"/>
<stop offset="0.8533" style="stop-color:#010027;stop-opacity:0.8533"/>
<stop offset="1" style="stop-color:#010027"/>
</radialGradient>
<rect x="633" y="112" fill="url(#SVGID_1_)" width="571" height="752"/>
<rect x="834.923" y="312.836" transform="matrix(-0.9546 0.2979 -0.2979 -0.9546 1843.9272 976.458)" fill="#010027" width="25.272" height="631.794"/>
<rect x="865.878" y="327.019" transform="matrix(-0.9546 0.2978 -0.2978 -0.9546 1975.8625 981.9857)" opacity="0.6" fill="#010027" width="94.494" height="628.986"/>
<rect x="839.261" y="339.781" transform="matrix(-0.9546 0.2978 -0.2978 -0.9546 1891.1486 991.5703)" opacity="0.6" fill="#010027" width="61.531" height="600.182"/>
<rect x="660.102" y="397.249" transform="matrix(-0.9932 0.1166 -0.1166 -0.9932 1498.2588 1144.1741)" fill="#010027" width="111.098" height="437.354"/>
<polygon opacity="0.6" fill="#010027" points="731.224,211.938 1000.28,138.846 1217.727,545.852 870.507,655.006 "/>
<path fill="#010027" d="M1136.538,621.729l35.636,19.221l-80.073,149.552c-20.064-3.194-38.136-15.681-38.136-15.681
L1136.538,621.729z"/>
<path opacity="0.6" fill="#010027" d="M986.999,667.707c-1.504-69.971,122.901-178.999,122.901-178.999
s114.14,114.135,130.489,173.543c18.57,67.478-53.996,127.913-123.967,129.42C1046.451,793.18,988.508,737.679,986.999,667.707z"/>
<g opacity="0.4">
<image overflow="visible" width="98" height="96" xlink:href="data:image/png;base64,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
AAAAAElFTkSuQmCC" transform="matrix(1 0 0 1 796 249)">
</image>
</g>
<rect x="881" y="431" opacity="0.6" fill="#010027" width="33" height="34"/>
<rect x="921" y="367" opacity="0.6" fill="#010027" width="33" height="34"/>
<circle opacity="0.4" fill="#010027" cx="779.88" cy="426.095" r="212.6"/>
<radialGradient id="SVGID_2_" cx="1129.9238" cy="477.999" r="356.3106" gradientTransform="matrix(0.865 0 0 0.9231 75.6168 109.2589)" gradientUnits="userSpaceOnUse">
<stop offset="0" style="stop-color:#FFFFFF"/>
<stop offset="0.6613" style="stop-color:#010027"/>
</radialGradient>
<rect x="738" y="229" opacity="0.2" fill="url(#SVGID_2_)" width="630" height="643"/>
<path fill="none" stroke="#01A495" stroke-width="16" stroke-miterlimit="10" d="M1239.363,521.705
c1.681,78.11-99.951,157.577-99.951,157.577s-140.605-37.229-169.958-125.592c-29.809-89.734,47.325-168.686,125.435-170.367
C1172.997,381.64,1237.68,443.597,1239.363,521.705z"/>
<circle opacity="0.6" fill="#010027" cx="1148.713" cy="344.235" r="95.148"/>
<polygon fill="#010027" points="1055.24,499.99 1182.498,441.037 1217.537,516.701 1090.282,575.653 "/>
<rect x="1083.302" y="9.424" transform="matrix(-0.9074 0.4204 -0.4204 -0.9074 2414.8691 556.4078)" fill="#010027" width="125.637" height="1069.781"/>
<g>
<path fill="#FFFFFF" d="M904.177,960.123c-0.059,0.061-0.059,9.713-0.179,12.232c-0.119,2.039-0.301,6.416-4.619,6.416
c-4.437,0-5.517-5.098-5.877-7.314c-0.418-2.459-0.418-4.499-0.418-5.397c0-2.878,0.179-10.917,6.956-10.917
c2.039,0,3.179,0.602,4.078,1.08L904.177,960.123z M886.786,967.2c0,16.91,8.997,16.91,10.316,16.91
c3.718,0,6.117-2.039,7.137-5.575l0.119,5.336c1.141-0.062,2.279-0.182,4.138-0.182c0.66,0,1.199,0,1.68,0.062
c0.48,0,0.958,0.059,1.5,0.12c-0.96-1.92-1.678-6.236-1.678-15.595c0-9.116,0-24.527,0.777-29.206
c-2.157,1.021-4.019,1.681-8.097,2.04c1.618,1.739,1.618,2.639,1.618,10.552c-1.138-0.357-2.577-0.778-5.036-0.778
C888.524,950.886,886.786,960.241,886.786,967.2"/>
<path fill="#FFFFFF" d="M919.31,964.14c0.061-4.979,1.081-9.417,5.337-9.417c4.68,0,5.036,5.156,4.916,9.417H919.31z
M935.501,964.739c0-7.016-1.379-13.914-10.255-13.914c-12.232,0-12.232,13.556-12.232,16.432c0,12.175,5.455,16.972,14.63,16.972
c4.078,0,6.059-0.598,7.138-0.898c-0.06-2.16,0.239-3.539,0.603-5.398c-1.263,0.782-2.882,1.801-6.479,1.801
c-9.357,0-9.476-8.52-9.476-11.456h15.955L935.501,964.739"/>
<path fill="#FFFFFF" d="M955.011,967.318c0,5.577-1.019,13.075-7.975,13.075c-0.96,0-2.159-0.183-2.938-0.362
c-0.122-2.159-0.122-5.878-0.122-10.195c0-5.158,0.539-7.853,0.961-9.176c1.26-4.257,4.077-4.315,4.616-4.315
C954.111,956.345,955.011,962.643,955.011,967.318z M937.801,973.855c0,4.439,0,6.956-0.72,8.874
c2.459,0.96,5.516,1.499,9.176,1.499c2.339,0,9.116,0,12.773-7.495c1.739-3.479,2.339-8.157,2.339-11.696
c0-2.158-0.24-6.896-1.98-9.895c-1.677-2.816-4.376-4.257-7.253-4.257c-5.758,0-7.437,4.798-8.336,7.256
c0-3.058,0.059-13.733,0.538-19.19c-3.896,1.8-6.298,2.098-8.875,2.339c2.339,0.958,2.339,4.919,2.339,17.813L937.801,973.855"/>
<path fill="#FFFFFF" d="M972.897,983.871c-1.2-0.182-2.042-0.302-3.781-0.302c-1.916,0-3.237,0.122-4.616,0.302
c0.6-1.142,0.84-1.682,1.02-5.577c0.24-5.34,0.301-19.614-0.119-22.612c-0.301-2.281-0.839-2.64-1.679-3.238
c4.917-0.48,6.296-0.838,8.574-1.918c-0.478,2.637-0.541,3.959-0.541,7.975C971.637,979.193,971.576,981.411,972.897,983.871"/>
<path fill="#FFFFFF" d="M992.102,966.897c-0.118,3.777-0.18,6.417-1.2,8.516c-1.261,2.699-3.358,3.478-4.917,3.478
c-3.603,0-4.38-2.997-4.38-5.935c0-5.636,5.04-6.059,7.315-6.059H992.102z M975.607,974.275c0,3.778,1.141,7.555,4.502,9.176
c1.497,0.659,2.996,0.659,3.478,0.659c5.518,0,7.376-4.079,8.516-6.598c-0.061,2.641,0,4.257,0.18,6.358
c1.079-0.062,2.159-0.182,3.96-0.182c1.019,0,1.978,0.12,2.996,0.182c-0.659-1.02-1.019-1.622-1.2-3.961
c-0.118-2.276-0.118-4.556-0.118-7.734l0.061-12.235c0-4.56-1.201-9.057-10.197-9.057c-5.936,0-9.414,1.8-11.153,2.7
c0.721,1.319,1.321,2.456,1.859,5.037c2.341-2.039,5.399-3.118,8.515-3.118c4.981,0,4.981,3.3,4.981,7.975
c-1.14-0.058-2.101-0.177-3.721-0.177C980.645,963.302,975.607,966.236,975.607,974.275"/>
<path fill="#FFFFFF" d="M1026.645,977.933c0.062,2.04,0.062,4.199,0.899,5.938c-1.321-0.119-2.102-0.301-4.556-0.301
c-1.441,0-2.221,0.122-3.361,0.301c0.238-0.778,0.361-1.079,0.48-2.101c0.181-1.376,0.301-5.996,0.301-7.617v-6.476
c0-2.818,0-6.898-0.184-8.335c-0.118-1.019-0.416-3.776-3.897-3.776c-3.418,0-4.557,2.516-4.978,4.557
c-0.478,2.097-0.478,4.377-0.478,13.252c0.058,7.678,0.058,8.395,0.657,10.496c-1.02-0.12-2.278-0.24-4.077-0.24
c-1.44,0-2.399,0.059-3.597,0.24c0.421-0.961,0.661-1.441,0.778-4.799c0.123-3.299,0.362-19.493-0.182-23.328
c-0.297-2.342-0.899-2.88-1.556-3.48c4.857-0.24,6.414-1.02,7.916-1.798v6.356c0.719-1.863,2.216-5.999,8.215-5.999
c7.498,0,7.555,5.458,7.617,9.055V977.933"/>
<path fill="#A80030" d="M973.403,942.038l-4.968,4.964l-4.964-4.964l4.964-4.965L973.403,942.038"/>
</g>
<g>
<path fill="#FFFFFF" d="M1122.219,532.146c-2.575,0.034,0.485,1.323,3.848,1.842c0.932-0.728,1.77-1.459,2.521-2.172
C1126.498,532.327,1124.367,532.338,1122.219,532.146"/>
<path fill="#FFFFFF" d="M1136.038,528.699c1.538-2.118,2.655-4.435,3.05-6.831c-0.349,1.706-1.27,3.18-2.145,4.738
c-4.815,3.032-0.456-1.799-0.004-3.639C1131.766,529.49,1136.226,526.877,1136.038,528.699"/>
<path fill="#FFFFFF" d="M1141.146,515.421c0.311-4.638-0.915-3.169-1.326-1.402C1140.3,514.27,1140.68,517.289,1141.146,515.421"
/>
<path fill="#FFFFFF" d="M1112.451,452.03c1.373,0.245,2.971,0.435,2.74,0.764C1116.702,452.462,1117.041,452.162,1112.451,452.03"
/>
<path fill="#FFFFFF" d="M1115.193,452.794l-0.966,0.202l0.901-0.083L1115.193,452.794"/>
<path fill="#FFFFFF" d="M1158.057,517.178c0.153,4.165-1.216,6.189-2.453,9.767l-2.229,1.107
c-1.821,3.542,0.182,2.249-1.124,5.061c-2.846,2.528-8.627,7.911-10.479,8.403c-1.351-0.029,0.915-1.595,1.212-2.208
c-3.807,2.613-3.054,3.923-8.879,5.514l-0.17-0.38c-14.357,6.757-34.302-6.631-34.039-24.894
c-0.152,1.158-0.436,0.869-0.752,1.334c-0.743-9.396,4.339-18.832,12.907-22.69c8.381-4.148,18.208-2.448,24.209,3.152
c-3.298-4.319-9.862-8.898-17.636-8.475c-7.621,0.124-14.751,4.965-17.131,10.224c-3.9,2.457-4.355,9.473-6.057,10.759
c-2.289,16.823,4.306,24.086,15.463,32.636c1.75,1.183,0.491,1.364,0.726,2.265c-3.705-1.734-7.097-4.356-9.89-7.562
c1.482,2.166,3.08,4.272,5.148,5.927c-3.499-1.181-8.166-8.469-9.527-8.765c6.024,10.786,24.436,18.916,34.083,14.881
c-4.466,0.167-10.131,0.091-15.144-1.763c-2.112-1.082-4.973-3.324-4.46-3.743c13.161,4.914,26.753,3.718,38.139-5.408
c2.899-2.257,6.063-6.096,6.978-6.148c-1.376,2.072,0.236,0.995-0.821,2.825c2.884-4.655-1.256-1.896,2.983-8.038l1.565,2.153
c-0.588-3.867,4.799-8.558,4.251-14.67c1.234-1.869,1.376,2.014,0.066,6.312c1.816-4.77,0.481-5.536,0.945-9.473
c0.502,1.324,1.169,2.728,1.509,4.126c-1.185-4.61,1.212-7.762,1.81-10.441c-0.592-0.258-1.829,2.037-2.115-3.406
c0.042-2.365,0.66-1.239,0.896-1.821c-0.46-0.269-1.68-2.081-2.42-5.558c0.533-0.818,1.437,2.119,2.166,2.238
c-0.472-2.765-1.279-4.873-1.314-6.992c-2.137-4.465-0.758,0.595-2.486-1.917c-2.277-7.09,1.884-1.645,2.168-4.865
c3.442,4.989,5.405,12.728,6.312,15.932c-0.689-3.907-1.802-7.695-3.161-11.356c1.05,0.443-1.688-8.038,1.362-2.421
c-3.254-11.971-13.923-23.156-23.737-28.402c1.197,1.098,2.712,2.476,2.173,2.693c-4.886-2.905-4.029-3.132-4.727-4.36
c-3.975-1.62-4.237,0.131-6.869,0.004c-7.496-3.979-8.94-3.556-15.84-6.046l0.313,1.468c-4.965-1.655-5.783,0.623-11.15,0.003
c-0.326-0.252,1.722-0.923,3.406-1.166c-4.803,0.634-4.579-0.949-9.275,0.174c1.154-0.812,2.383-1.351,3.616-2.042
c-3.912,0.239-9.349,2.279-7.671,0.421c-6.387,2.85-17.728,6.851-24.093,12.82l-0.201-1.338
c-2.917,3.502-12.72,10.454-13.499,14.994l-0.779,0.181c-1.516,2.569-2.502,5.481-3.703,8.123
c-1.983,3.383-2.909,1.304-2.627,1.833c-3.901,7.915-5.847,14.566-7.518,20.022c1.189,1.783,0.027,10.741,0.477,17.908
c-1.957,35.412,24.85,69.785,54.154,77.72c4.295,1.54,10.681,1.482,16.114,1.637c-6.409-1.833-7.235-0.97-13.481-3.148
c-4.504-2.124-5.49-4.546-8.682-7.313l1.262,2.232c-6.255-2.215-3.638-2.742-8.728-4.354l1.35-1.76
c-2.031-0.155-5.374-3.416-6.285-5.228l-2.223,0.089c-2.661-3.286-4.085-5.659-3.979-7.498l-0.718,1.278
c-0.814-1.395-9.808-12.338-5.143-9.789c-0.866-0.789-2.019-1.287-3.268-3.561l0.949-1.083c-2.242-2.892-4.135-6.596-3.989-7.828
c1.197,1.616,2.029,1.919,2.854,2.196c-5.671-14.071-5.992-0.774-10.284-14.322l0.905-0.073c-0.694-1.052-1.12-2.189-1.679-3.308
l0.396-3.938c-4.081-4.716-1.142-20.072-0.55-28.49c0.405-3.424,3.409-7.068,5.687-12.785l-1.388-0.238
c2.658-4.634,15.171-18.612,20.97-17.895c2.808-3.528-0.56-0.015-1.109-0.9c6.17-6.382,8.109-4.508,12.269-5.659
c4.488-2.663-3.851,1.042-1.721-1.015c7.759-1.981,5.494-4.507,15.618-5.511c1.068,0.606-2.479,0.938-3.366,1.725
c6.463-3.164,20.457-2.443,29.551,1.754c10.541,4.933,22.394,19.501,22.863,33.208l0.532,0.143
c-0.269,5.45,0.835,11.753-1.08,17.539L1158.057,517.178"/>
<path fill="#FFFFFF" d="M1094.107,535.678l-0.364,1.805c1.692,2.3,3.038,4.792,5.198,6.584
C1097.386,541.037,1096.232,539.784,1094.107,535.678"/>
<path fill="#FFFFFF" d="M1098.105,535.522c-0.895-0.993-1.424-2.186-2.019-3.372c0.566,2.088,1.732,3.882,2.814,5.71
L1098.105,535.522"/>
<path fill="#FFFFFF" d="M1168.917,520.131l-0.378,0.952c-0.691,4.926-2.194,9.801-4.488,14.321
C1166.586,530.635,1168.222,525.419,1168.917,520.131"/>
<path fill="#FFFFFF" d="M1112.962,450.794c1.739-0.635,4.28-0.35,6.129-0.769c-2.409,0.203-4.805,0.323-7.173,0.623
L1112.962,450.794"/>
<path fill="#FFFFFF" d="M1051.827,483.305c0.399,3.712-2.794,5.155,0.705,2.704
C1054.412,481.779,1051.803,484.842,1051.827,483.305"/>
<path fill="#FFFFFF" d="M1047.71,500.496c0.81-2.477,0.953-3.964,1.261-5.399C1046.742,497.948,1047.943,498.556,1047.71,500.496"
/>
</g>
<rect x="915" y="307" opacity="0.7" fill="#01A495" width="22" height="21"/>
<rect x="859" y="379" opacity="0.4" fill="#01A495" width="32" height="34"/>
<polygon opacity="0.7" fill="#01A495" points="911.484,262.111 882.741,258.65 885.022,231.084 913.767,234.545 "/>
<rect x="1422" y="313" fill="#010027" width="28" height="70"/>
<rect x="1469" y="291" fill="#010027" width="28" height="90"/>
<rect x="1535" y="205" fill="#010027" width="29" height="215"/>
<rect x="1360" y="339" fill="#010027" width="29" height="70"/>
<g opacity="0.5">
<image overflow="visible" width="105" height="106" xlink:href="data:image/png;base64,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" transform="matrix(1 0 0 1 829 336)">
</image>
</g>
<g opacity="0.6">
<image overflow="visible" width="97" height="100" xlink:href="data:image/png;base64,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
RU5ErkJggg==" transform="matrix(1 0 0 1 878 260)">
</image>
</g>
<g opacity="0.4">
<image overflow="visible" width="105" height="103" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGkAAABnCAYAAAADiGxKAAAACXBIWXMAAAsSAAALEgHS3X78AAAA
GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAFPpJREFUeNrsXdtyHEdyzarq6ZnB
EBThEE1RwQ2FHWs+wLtP++YX7cP+gr6HxPfw1R9gfYDfNhAbssMbCjEWosgACICDmelLlc/JrJ4L
AGrpcHAAgl1ibTVmem516mSeyszudSkl6dvtbr6fgh6kvvUg9SD1rQepbz1IPUh960HqWw9SD1Lf
epB6kPrWg9S3HqQepL71IPWtB6kHqW89SH3rQepB6lsP0mfSitv+BR3ah56b7mh9mrttv2sJSlr+
z6odHFwF7Nmza36A0393BcBbA5KC032Xy2A8y+OL/asgffcdXnSg/65tGyB+muDdOEgGTmZNB84z
oPLihR0fHjr5Np/8w+OrID19ihd+r/+WbX9/7Ue9wHv8a/q/gHfbgLtRkJbs6cDZ318B8zgDsrfn
5Oefnfw2v+jV7mo6Hz3Ci//bjjl89VX+MYciJ4/z8X+KHH2drgXwu8O0wcAlcCvQbgNgNwbSBkDP
sil7CHDIlg6YXQAyOXFyMnEyPsO0PRIZnW+y6TX67oX9iL37Sf7GcZrkpQKc5NF5WgF4aK/pAHx6
lJSBHXA0nQcHm6B1LvIGwboRkK4F6OTEKzj3AM5fGi8TANNgHI2cDIdO6tdeHjwQuZhdr/aqRZLJ
TtKRbTFJsjtPMt/F368ygEc2Ti+B988niYS7AtrhYboNYG0dpF8FaDr1UlU4BjhV66XeBVgYG/bo
pVg4WQzALoJQ2awNS0w6xzpJM0THOMJYY6yrJONR2gBwF+AtMnh7syQzAEbaTc+SnP9DkuPjBFOb
5AiAXQHreaIZ3DZQNwPS8+dXAXr5MsiXAMMPg0wAztk0iAvoPsgQALXoMeH5AFY1YFkwkIrWfkDb
EIioY4vH2kES7yPYmDYADHhsDPBqgDcIUYFbAKzB4ygzjFOYyqKIyrCTkxVYl1i1TaC2CtIGi/Yv
A/QlAHgbZN4Ucv9BkEVdAIxCxgCpidh0u4DXroAyYJyEIilQEWNsOYFRYgRAGAmWjo2B0xQ2duDx
uGCfRpniPIJWoo8B0n91YIFZDyXK65sDarsg8ZcdPDeAKBJei5fpN17Cm6AMKncKmQMcrGtMywCv
GEhoC/FFISEDVTc41zvxceWbok9LYDgSKB5zbPKxr22cAbhy0OpxXUUZlS3MX5Q0ahWstNNKaloF
6wQglWWUyY9RHn4LoF6nmzB9xdZZ1GleqrjfwMecwAdNhsag2buBjCcDcXUJn1TKoMSxKyW1A2kA
mgdQwRujEtgUAZQHQEJgAG3rOEZMXSR0AA8T3wIoPgbGtAmTj4lPbQtz2GINAKAIUIpWBrGBY2uh
QFowrpEpwPoKz52+ga/8xmTkw4cRCyz7qCRXdsZ3InanYuHZytz95aWXJ8HLAD6oTAFqACYOALVp
KKUfSlsPBR4JfqkEICXeAezCI46mDz6Kc0Q8CBRXdCCTAIJrjUVCMMiogMlvCF6rwAm6Tw18VIvX
NOLLWlzTSBtw7GswFz7wvJF3BRYBgXsjKk4o4Wn6CBSlOj6Ti+9js2l7IHUkYiSBG1Xug/4FMvt0
AdUGkbAYFPg2YE4oJTRDadJYCjeShC5xBPMEkBJYlQwoGDfp4nwg0opBEZ1+iH87goFJBiN47PAo
dCL+A1vqBmavxoKoASZGV0sdaxkU9IE1GA2BUtHniXwBReghNgLU3w/YDhwdMlSV8ib8bpi7K6aO
jRvV2QUmGpMyrwo1aRUA8mCPK0aY5zFW/RiLfkdH7JYkuiEmGf4qFcomQpNg8lxmEjyTCYeUAQIY
QhYRKBwnD8MHBkEbShFqLIQa5rMCiBXep8InLAAWFg1YKhWn38kAAuN4DOWIES+QPag+hqJevAZA
h0nSXTN3lN0HhytlN6DkrmC+4JMClqyLACDQBwGkMMbkYUfkdzBVO3glgQKzUum9B6ipUN8EDWFM
cvQT8EuR6k2BgRDMLJJWgZHcIcDxPMwaAUoLkG8BoOd4H3wXAERDSkyoTRbDKEOwSKAM5xd4fwDD
iAWjGdlEfGyTV2zVHxGcxycWVZhDNNSw/WHCVVtI6QqsYpgy+B8Pf0RAGgcWyT1MxARgjMGXMczf
EH8PFCSgpUA5CwWoyaO8TlRzghWQzMwlsigqgwAh/A86trYAZIHn5/jMOR4D6BAlPoGdjN3h00ow
sp2bGa2hAmsAuHsfau/IyeGRU5N3Z4TDJUunQdIJ1NkZ/NEEP3zOvRBkNiQXJg4gAYgWgIREUMAk
ByQBlPPGJvVNbpAIUJddzt6JqljNXFJFYabOOeo7glXjZACUKpy4UHBavBcBEgKOfZdktRghNDzU
X6AKbMHAC0iYMb4VfNJfISge/9nJiz8BrAP52H6p2KpqOMymTl46kAfmroRf4uqFEKC8bikcqOSg
7hLEQgIo2Lh4B4DIKJd28E54HN6DSs9lAbGZZUi68lMnGjDG2DoCZQCBSW4BKABSHEbvwcoW7wO/
aaYzKvOcN7PYgoElFxHWSTv3cjJ2sgsWVX/YmhHafvqcqm44cbr2B2DSGI66gQhoI83NAKMxydHk
xRGsT2aTEKBJ9k00h5hcfn+yqUuxO9svSRYQSZUdj9Xr66Q7VzsFKM25Wfa6geLmWDpFCLNIf+Uq
KEAumkqZLgxN4bMm53nfVG2uwU8ZpKWyo2j4D/QZ+psziGGYjCEAwlLGYgdI+C5BqNow+QAqASTK
b5o3dMw+wIoQEBhFmVTm7x9UhXWz5fhhClA0We7M5KUlkyq4HFDYMYLh1TpSI1L1eRUWmH230KiH
h9+LAKgEOPNozD8fgUnwqxOmTva2gtJ2mLSK1WF6SvNHNcBrwaQak1BgQ4udJCa4UP8QARSmxEfd
G1F6A6g0yqAZk1IHEljo1k0eVZ5YiMiAMpPXMSRRnECqwZ8p/5yaRoCT1sCBeiSzKfNdHaA4Icux
qAaAM0xXYQaa77uyT7rSuBqLmZeycGauGpiTEJQVVHgOqzwmmj3uiUqufGWPgTNcY5JtbM3krVZ1
otnLoSEVEASK5o7+KIeVvOfGqnXGsAp0LiM/0znbh2lAF+BQ7QkWlWNqZJiThmDR3vam6+PX3a2v
s70jy7QOsRoHA6c2nlHtgq4Bk8LJoYgAozxZxVXNSXNiXZZjuezKKMb3koGXOjDBPIoMR/9G2Z79
HB9P+Tx0MMrAVgZxg0z2ROzbGB8U+34Bqq8Ktm24gbaF4si0Zhr2RVPhU8hYJvACg6SYBEa21dxp
OqJQQZB8YfshskpsTBkoSXl0xfJ4E0SLoKt/64DUkFK5OicaY7XTF2riwlhGIQI9+OF2xn3qIF1S
dl9z/V9gVQ4MoEA7zzEYmyQDRSbBziSX2SXqr8wk6nnXPKbgEjixHlMGUn2XdafAFpm55s9S7hQ5
jpvZtAnQgt+5tIyvWoT7aYsYfVyQloWOVHYsy2LFD/cZJZjETCuTdwXNSmGRgw0Aup6sp/WRk5pH
KjSnE5xH8cvXOVVv+T3XXq/n5vOjAmSvIjj2xdMyiFSEDMhs88expmWjdOxTFw4vOmV31Ck7fDIc
8WzoVd5qaAd+IFGOq1M3X+B0gjmRqxXvLfiTI+AumyevwQbnJMvxlJe37/a4eux0F2XdYj8mBm1n
ZfJdRQe2uiFa0DY6ZmgBGuOCTMNPkvxyKloHcWd80kY16jc2cL9RMVcDh0w2qbnJIR5L43n9j6Ea
lydXTVGeYCcuGxmLEtjql9V+qTsnbZ67fH5NCXYbYJ83wLYJTsvjGCwtXzYZlDeyCq7eGeFwjfye
zZ3uOygclEUt0w2YcAKVmaWgabCzY8wly+/SkgFLslyjKmOHxTIasWJMxyFyMzkmogwgjnW0lHyX
lm9Kqz7avbf1kq7tgkST1zXGDciipnVWswAwYu503uKNGevg2CQn/U9y1LvrtontIEld+MH4k7p8
U45GiO2jdLOrsTqM0UbG+1yMG3USLGhh4QrLw1gKxpo91uixAvbaCwY+VZCO4I+ecCeT90hVzeJH
+CkIsDY67f7SN+omuFvxabny22Udg+RJTkuwYgYib2aNJZZOl7VQkZq3tVSGt7yT5PR6CK3WRnTV
RiwL08LLV1bS/L28/yKBT1I4aPT7A86La6bMZabEDpScuEv5WMM8TjJwwUxWJwg61mXforG7ZeQh
py/svZwGYbvMbWqXn6WpCvqkNpeDwdxNLKMloz0WUW6E3j9dJl3+6gynXG4MJgemv3MKHJMa1Xnn
mBtTDF1WNSULknadYZ71v000rx8zJtdlYxsFIeZMreaXkj2vaQwND+Xn+PmhXYoH1us1mUl/6/T3
ljZJW/dJ65vAcmDStsjOWX2AX63ynP9xnPCYLJMqfiGarOu6WztmpjWPCqBsAui60a3+5nHSRVBD
aecoeDJG+dYYyExvyJ0lyrwYQNb2SO6umLtu8d0Xq7wpZpjCQNNvZVjL3I90WVRMZOQEVgoAwzu6
GZVc0MLX0GMkphOYsMubW7eS21182mXfk7QAxd5PI95SQdUDWPSo+SN8pseCiAAL3yGBcW1OxfM7
DgdWQ85i/4pg3TV1d93OnGrJ5wpTXbG2ohUgn9PbXlh7MIPfwHbfXeBV6G6Kyb/QrtVwbqqPO456
zgzPzXKIYMbXA6A5judWz5BHh87kXwJgTPBFLgoARGaxqojfaQCgfGUlyZTf2n5c/YYtKLuPzySu
5uf5mDt0xr8mF0nOWMM2jFjLUQY1nDMBajk5AIgTx7xOmsEIFt7CQ9TlDAG0ObtaaWWRuByMlS6n
5JVVKuFTZpNK867WoVJgxBF4AwqgRXus0s6F4vFdWjKaLMrVrxVYRJXHKy9+D/n9x6Ot7Ze2nE/C
KpzDVITCbLxglbJqtFDzUqtPcRr5HmjehxXfDAYkZVvjzL+wWqhMqYuAa9IvLPNK3uWAqVupPFOJ
FCJ8/cIxde4S2OhmYCwYpSVdxiqew0XTqb40hBSHeWZt+HQnyVcwd98fmwR/dsdqwfWyyPPfJfmn
IRTSCXbucMw1a7UHYBFNjafZASui1dRpIo/znqD2fONFxcNCa8MBknPL1AUBKhIDpnE96JpjcyYx
8z4pQYgoEDR5FzHFCzWHnqYxzbVAUtkERrP8mMUofm4LajGGHzrFmx1tPUjz8UFSu82rw79Osn8M
bwGFV2DCLvDDd3bBohjUH7Qt/EJh6QOaLEafE3f+usmE+lIlN/SSuozsikkA1REk77rqoRyMXdYv
5upWqjc1aYuofsuZX+OxA0jRLbTwxLNKCAAF+KQ5vmeJ7zteEw37e7y6IscL0x0xdwdZPPCirBK2
fDCJMpq0evVeWzWYklqKodW90UwVzipRgzMfRD8VmXGNZbQaBSbtCk+Tp9lU+qUYcmGJjRolz7mh
Lp2uIPkair9S5ng3U+FB00eRUfg5vlNmUtPoZTCTGRYJ/Of8LMkjqNGf/oxT/7RVJn3065OuXpO0
j4l8GeS8LmS0a1Wrvi6hAexqCl5F0Y2uGGoNHgsmWdmqae42+yxLs6/S7p7pChw7Zg8t5aG1dCYe
In+oFk3mohP6v6hlXTMDCWB5qMTWfJUM/EyaOc4ZVPJgXMniFK87a7GViPBFMJ3bu5Ds40vwbrPH
YCSdLS8ivgfh8I8P7GKt0Qx2nz6pqWRU0uTAR3DSPCR18w4TeY43OcNsnOL4FBPzFpN8AoadMIah
PbljPI/ujzHhxzCNx2AcxmQjz/E8L74F4G/BoFO87gzvdY7PeqcABYIV4JdCJWVRSVs3MvwCCq9u
5XQQ1dSxBpwW4WA74aDtmjv6JSvrgoSFLX+3z2tTYc6wMiuItRKLdA5BMWsYgcgXf2HzGWl2sAFl
eZUPhQTWwXVXVND/UAG2AROcfVH2Zz4Zk3SpryWPfGAsLuqGdXk1he7HcslxvZAwWKhPKqE6WezP
SzSnUHeLBaQ3fOrrvbX8Vbob5s5+z69dK5svZuYlMIumkHsBsJQABMe8VpZ9mCtcxYclQCxcSble
L3Tp9/xYV6+QGi++u4aJ2VZmVzUFAX/T2uaZqpKqjgwKFCdgNE1coJ9En4+xZ2pb+X3Vyr/Dn27Z
1G05due6iDgvG4kqIp48aaX9spW4gIoackOLfcwQ5iYs1B+4di6hvJCG5i9MZVDC/Mk7mMdz4EFT
Zaawac7MJIZTNYvLjr+df6tmMoj9TTMX8Xq+D00q/RB9kIvzJUD1opHFRSPnbyFw3kSZQOicP70R
U7c1Jl1hk4WK1u7fcOhlgr/ncy9f1F6Oz4JMwAwWyU9nQUaszxvZbQKGyS/r9ZjZHeRjvSrdu+XV
6Sn/zaTi0riHVTC3qXnleReja6RBvwfm8HrZBexv/AXqE37zN1hAP0HdHd0Mi7YK0nuBouLbfezk
f/LNNngnlPmPXq8FajDRWlmUrA6bIBWDPBa8sBlA1av6Pd/V8WEMuX6CiUXWUqjJKyzyzhwRY3Iy
aBUkRhV0hFmjUIiVAVQegUUAZv0WAfCvSeQzuNnGZaD0Tlzfivzwg1veuuYd/El3T6HRjhXKM6tb
twYc6yQIHLO8LLScd+BVVuSiNRS1fUaV7/tQrt2Yw+foNu/jMMv3c+huDSAPW3wHGMRL93C4gRtt
3EDszmx5vn1ayrdPs4uEeQ0qq3CWN4HCBO09EbkHAF7t2JUMBI3Flazdu58MOC2gJ9surJ6Pob3d
0kD0rN/etXBdl2BkgWMLETEcWWR7ush3jWBUAWZtNk3yMwD6NxwzC3vDAN0Ik36VVR2zTGC4HD3P
t1Q7sjLl7rZq3S3VJpfA6+7i1THvfY23qmHlD6+DZaiKyTzu395dc7saDW3purqRybrRe7AuWdVV
KnTM6vY1ev+hvTzReyvgWGlUDTNIvMIBjPsrwYOCfnXstL7v9MQKX9gup+2ZIf6Fl+fuWKjn3Z4F
Tn/CZvUpb6SxTwUqtwGgGwfpspS9ApgyaqMkxx78I/rr94FH5sGuTSaiFx/vi1zNop7pP5yToNxE
gdFbqO3ZZvUGb/Z0K0F6H2AboC3hWXv674JHcNYAvNzWs8VM4PG1B4drkXtmOp5/3neO/H/5sSvw
fMBdjz8opZI33e523YfV3aVbab/3HuLp7wR/ZftRhM8WpLva+v8bhB6kvvUg9SD1rQepbz1IPUh9
60HqWw9SD1LfepB6kPrWg9S3HqQepL71IPWtB6kHqW89SH3rQepB6lsP0ufS/leAAQAcrs/fJmnN
WAAAAABJRU5ErkJggg==" transform="matrix(1 0 0 1 851 187)">
</image>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 300 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 617 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 MiB

View File

@ -15,7 +15,13 @@ tmpval=$VNC_PW
unset VNC_PW unset VNC_PW
VNC_PW=$tmpval VNC_PW=$tmpval
BUILD_ARCH=$(uname -p) BUILD_ARCH=$(uname -p)
if [ -z ${DRINODE+x} ]; then
DRINODE="/dev/dri/renderD128"
fi
KASMNVC_HW3D=''
if [ ! -z ${HW3D+x} ]; then
KASMVNC_HW3D="-hw3d"
fi
STARTUP_COMPLETE=0 STARTUP_COMPLETE=0
######## FUNCTION DECLARATIONS ########## ######## FUNCTION DECLARATIONS ##########
@ -57,12 +63,14 @@ function start_kasmvnc (){
fi fi
rm -rf $HOME/.vnc/*.pid rm -rf $HOME/.vnc/*.pid
echo "exit 0" > $HOME/.vnc/xstartup
chmod +x $HOME/.vnc/xstartup
VNCOPTIONS="$VNCOPTIONS -select-de manual" VNCOPTIONS="$VNCOPTIONS -select-de manual"
if [[ "${BUILD_ARCH}" =~ ^aarch64$ ]] && [[ -f /lib/aarch64-linux-gnu/libgcc_s.so.1 ]] ; then if [[ "${BUILD_ARCH}" =~ ^aarch64$ ]] && [[ -f /lib/aarch64-linux-gnu/libgcc_s.so.1 ]] ; then
LD_PRELOAD=/lib/aarch64-linux-gnu/libgcc_s.so.1 vncserver $DISPLAY -depth $VNC_COL_DEPTH -geometry $VNC_RESOLUTION -websocketPort $NO_VNC_PORT -httpd ${KASM_VNC_PATH}/www -sslOnly -FrameRate=$MAX_FRAME_RATE -interface 0.0.0.0 -BlacklistThreshold=0 -FreeKeyMappings $VNCOPTIONS $KASM_SVC_SEND_CUT_TEXT $KASM_SVC_ACCEPT_CUT_TEXT LD_PRELOAD=/lib/aarch64-linux-gnu/libgcc_s.so.1 vncserver $DISPLAY $KASMVNC_HW3D -drinode $DRINODE -depth $VNC_COL_DEPTH -geometry $VNC_RESOLUTION -websocketPort $NO_VNC_PORT -httpd ${KASM_VNC_PATH}/www -sslOnly -FrameRate=$MAX_FRAME_RATE -interface 0.0.0.0 -BlacklistThreshold=0 -FreeKeyMappings $VNCOPTIONS $KASM_SVC_SEND_CUT_TEXT $KASM_SVC_ACCEPT_CUT_TEXT
else else
vncserver $DISPLAY -depth $VNC_COL_DEPTH -geometry $VNC_RESOLUTION -websocketPort $NO_VNC_PORT -httpd ${KASM_VNC_PATH}/www -sslOnly -FrameRate=$MAX_FRAME_RATE -interface 0.0.0.0 -BlacklistThreshold=0 -FreeKeyMappings $VNCOPTIONS $KASM_SVC_SEND_CUT_TEXT $KASM_SVC_ACCEPT_CUT_TEXT vncserver $DISPLAY $KASMVNC_HW3D -drinode $DRINODE -depth $VNC_COL_DEPTH -geometry $VNC_RESOLUTION -websocketPort $NO_VNC_PORT -httpd ${KASM_VNC_PATH}/www -sslOnly -FrameRate=$MAX_FRAME_RATE -interface 0.0.0.0 -BlacklistThreshold=0 -FreeKeyMappings $VNCOPTIONS $KASM_SVC_SEND_CUT_TEXT $KASM_SVC_ACCEPT_CUT_TEXT
fi fi
KASM_PROCS['kasmvnc']=$(cat $HOME/.vnc/*${DISPLAY_NUM}.pid) KASM_PROCS['kasmvnc']=$(cat $HOME/.vnc/*${DISPLAY_NUM}.pid)
@ -154,8 +162,8 @@ function start_upload (){
KASM_PROCS['upload_server']=$! KASM_PROCS['upload_server']=$!
if [[ $DEBUG == true ]]; then if [[ $DEBUG == true ]]; then
echo -e "\n------------------ Started Audio Out Websocket ----------------------------" echo -e "\n------------------ Started Upload Server ----------------------------"
echo "Kasm Audio In PID: ${KASM_PROCS['upload_server']}"; echo "Upload Server PID: ${KASM_PROCS['upload_server']}";
fi fi
fi fi
} }

View File

@ -0,0 +1,62 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-desktop" version="1.0">
<property name="backdrop" type="empty">
<property name="screen0" type="empty">
<property name="monitor0" type="empty">
<property name="brightness" type="empty"/>
<property name="color1" type="empty"/>
<property name="color2" type="empty"/>
<property name="color-style" type="empty"/>
<property name="image-path" type="empty"/>
<property name="image-show" type="empty"/>
<property name="last-image" type="empty"/>
<property name="last-single-image" type="empty"/>
</property>
<property name="monitor1" type="empty">
<property name="brightness" type="empty"/>
<property name="color1" type="empty"/>
<property name="color2" type="empty"/>
<property name="color-style" type="empty"/>
<property name="image-path" type="empty"/>
<property name="image-show" type="empty"/>
<property name="last-image" type="empty"/>
<property name="last-single-image" type="empty"/>
</property>
<property name="monitorVNC-0" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="1"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/extra/backgrounds/bg_default.png"/>
</property>
<property name="workspace1" type="empty">
<property name="color-style" type="int" value="1"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/extra/backgrounds/bg_default.png"/>
</property>
<property name="workspace2" type="empty">
<property name="color-style" type="int" value="1"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/extra/backgrounds/bg_default.png"/>
</property>
<property name="workspace3" type="empty">
<property name="color-style" type="int" value="1"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/extra/backgrounds/bg_default.png"/>
</property>
</property>
</property>
</property>
<property name="last" type="empty">
<property name="window-width" type="int" value="653"/>
<property name="window-height" type="int" value="558"/>
</property>
<property name="desktop-icons" type="empty">
<property name="file-icons" type="empty">
<property name="show-home" type="bool" value="false"/>
<property name="show-filesystem" type="bool" value="false"/>
<property name="show-trash" type="bool" value="false"/>
<property name="show-removable" type="bool" value="false"/>
</property>
</property>
</channel>

View File

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-panel" version="1.0">
<property name="configver" type="int" value="2"/>
<property name="panels" type="array">
<value type="int" value="1"/>
<property name="dark-mode" type="bool" value="true"/>
<property name="panel-1" type="empty">
<property name="position" type="string" value="p=6;x=0;y=0"/>
<property name="length" type="uint" value="100"/>
<property name="position-locked" type="bool" value="true"/>
<property name="icon-size" type="uint" value="16"/>
<property name="size" type="uint" value="26"/>
<property name="plugin-ids" type="array">
<value type="int" value="1"/>
<value type="int" value="2"/>
<value type="int" value="3"/>
<value type="int" value="4"/>
</property>
</property>
</property>
<property name="plugins" type="empty">
<property name="plugin-1" type="string" value="applicationsmenu"/>
<property name="plugin-2" type="string" value="tasklist">
<property name="grouping" type="uint" value="1"/>
</property>
<property name="plugin-3" type="string" value="separator">
<property name="expand" type="bool" value="true"/>
<property name="style" type="uint" value="0"/>
</property>
<property name="plugin-4" type="string" value="pager"/>
<property name="plugin-9" type="string" value="power-manager-plugin"/>
</property>
</channel>

View File

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-desktop" version="1.0">
<property name="backdrop" type="empty">
<property name="screen0" type="empty">
<property name="monitorVNC-0" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace1" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace2" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace3" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
</property>
</property>
</property>
<property name="desktop-icons" type="empty">
<property name="file-icons" type="empty">
<property name="show-home" type="bool" value="false"/>
<property name="show-filesystem" type="bool" value="false"/>
<property name="show-trash" type="bool" value="false"/>
<property name="show-removable" type="bool" value="false"/>
</property>
</property>
<property name="last" type="empty">
<property name="window-width" type="int" value="634"/>
<property name="window-height" type="int" value="566"/>
</property>
</channel>

View File

@ -0,0 +1,37 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-panel" version="1.0">
<property name="configver" type="int" value="2"/>
<property name="panels" type="array">
<value type="int" value="1"/>
<property name="dark-mode" type="bool" value="false"/>
<property name="panel-1" type="empty">
<property name="position" type="string" value="p=6;x=0;y=0"/>
<property name="length" type="uint" value="100"/>
<property name="position-locked" type="bool" value="true"/>
<property name="icon-size" type="uint" value="16"/>
<property name="size" type="uint" value="30"/>
<property name="plugin-ids" type="array">
<value type="int" value="1"/>
<value type="int" value="2"/>
<value type="int" value="3"/>
<value type="int" value="4"/>
</property>
<property name="mode" type="uint" value="0"/>
</property>
</property>
<property name="plugins" type="empty">
<property name="plugin-1" type="string" value="applicationsmenu"/>
<property name="plugin-2" type="string" value="tasklist">
<property name="grouping" type="uint" value="1"/>
</property>
<property name="plugin-3" type="string" value="separator">
<property name="expand" type="bool" value="true"/>
<property name="style" type="uint" value="0"/>
</property>
<property name="plugin-4" type="string" value="pager">
<property name="rows" type="uint" value="1"/>
</property>
<property name="plugin-9" type="string" value="power-manager-plugin"/>
</property>
</channel>

View File

@ -0,0 +1,41 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-desktop" version="1.0">
<property name="backdrop" type="empty">
<property name="screen0" type="empty">
<property name="monitor0" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/extra/backgrounds/bg_default.png"/>
</property>
</property>
<property name="monitorVNC-0" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="2"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/extra/backgrounds/bg_default.png"/>
</property>
</property>
</property>
</property>
<property name="last" type="empty">
<property name="window-width" type="int" value="1280"/>
<property name="window-height" type="int" value="1024"/>
</property>
<property name="desktop-icons" type="empty">
<property name="file-icons" type="empty">
<property name="show-filesystem" type="bool" value="false"/>
<property name="show-home" type="bool" value="false"/>
<property name="show-trash" type="bool" value="false"/>
<property name="show-removable" type="bool" value="false"/>
</property>
<property name="style" type="int" value="0"/>
<property name="show-thumbnails" type="bool" value="false"/>
</property>
<property name="desktop-menu" type="empty">
<property name="show" type="bool" value="false"/>
</property>
<property name="windowlist-menu" type="empty">
<property name="show" type="bool" value="false"/>
</property>
</channel>

View File

@ -0,0 +1,93 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-keyboard-shortcuts" version="1.0">
<property name="commands" type="empty">
<property name="default" type="empty">
<property name="&lt;Alt&gt;F1" type="empty"/>
<property name="&lt;Alt&gt;F2" type="empty">
<property name="startup-notify" type="empty"/>
</property>
<property name="&lt;Alt&gt;F3" type="empty">
<property name="startup-notify" type="empty"/>
</property>
<property name="&lt;Primary&gt;&lt;Alt&gt;Delete" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;l" type="empty"/>
<property name="XF86Display" type="empty"/>
<property name="&lt;Super&gt;p" type="empty"/>
<property name="&lt;Primary&gt;Escape" type="empty"/>
<property name="XF86WWW" type="empty"/>
<property name="XF86Mail" type="empty"/>
</property>
<property name="custom" type="empty">
<property name="override" type="bool" value="true"/>
</property>
</property>
<property name="xfwm4" type="empty">
<property name="default" type="empty">
<property name="&lt;Alt&gt;Insert" type="empty"/>
<property name="Escape" type="empty"/>
<property name="Left" type="empty"/>
<property name="Right" type="empty"/>
<property name="Up" type="empty"/>
<property name="Down" type="empty"/>
<property name="&lt;Alt&gt;Tab" type="empty"/>
<property name="&lt;Alt&gt;&lt;Shift&gt;Tab" type="empty"/>
<property name="&lt;Alt&gt;Delete" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Down" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Left" type="empty"/>
<property name="&lt;Shift&gt;&lt;Alt&gt;Page_Down" type="empty"/>
<property name="&lt;Alt&gt;F4" type="empty"/>
<property name="&lt;Alt&gt;F6" type="empty"/>
<property name="&lt;Alt&gt;F7" type="empty"/>
<property name="&lt;Alt&gt;F8" type="empty"/>
<property name="&lt;Alt&gt;F9" type="empty"/>
<property name="&lt;Alt&gt;F10" type="empty"/>
<property name="&lt;Alt&gt;F11" type="empty"/>
<property name="&lt;Alt&gt;F12" type="empty"/>
<property name="&lt;Primary&gt;&lt;Shift&gt;&lt;Alt&gt;Left" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;End" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Home" type="empty"/>
<property name="&lt;Primary&gt;&lt;Shift&gt;&lt;Alt&gt;Right" type="empty"/>
<property name="&lt;Primary&gt;&lt;Shift&gt;&lt;Alt&gt;Up" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_1" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_2" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_3" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_4" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_5" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_6" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_7" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_8" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_9" type="empty"/>
<property name="&lt;Alt&gt;space" type="empty"/>
<property name="&lt;Shift&gt;&lt;Alt&gt;Page_Up" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Right" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;d" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Up" type="empty"/>
<property name="&lt;Super&gt;Tab" type="empty"/>
<property name="&lt;Primary&gt;F1" type="empty"/>
<property name="&lt;Primary&gt;F2" type="empty"/>
<property name="&lt;Primary&gt;F3" type="empty"/>
<property name="&lt;Primary&gt;F4" type="empty"/>
<property name="&lt;Primary&gt;F5" type="empty"/>
<property name="&lt;Primary&gt;F6" type="empty"/>
<property name="&lt;Primary&gt;F7" type="empty"/>
<property name="&lt;Primary&gt;F8" type="empty"/>
<property name="&lt;Primary&gt;F9" type="empty"/>
<property name="&lt;Primary&gt;F10" type="empty"/>
<property name="&lt;Primary&gt;F11" type="empty"/>
<property name="&lt;Primary&gt;F12" type="empty"/>
</property>
<property name="custom" type="empty">
<property name="Up" type="string" value="up_key"/>
<property name="Left" type="string" value="left_key"/>
<property name="Escape" type="string" value="cancel_key"/>
<property name="Right" type="string" value="right_key"/>
<property name="Down" type="string" value="down_key"/>
<property name="override" type="bool" value="true"/>
</property>
</property>
<property name="providers" type="array">
<value type="string" value="commands"/>
<value type="string" value="xfwm4"/>
</property>
</channel>

View File

@ -0,0 +1,83 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfwm4" version="1.0">
<property name="general" type="empty">
<property name="activate_action" type="string" value="bring"/>
<property name="borderless_maximize" type="bool" value="true"/>
<property name="box_move" type="bool" value="true"/>
<property name="box_resize" type="bool" value="true"/>
<property name="button_layout" type="string" value="|"/>
<property name="button_offset" type="int" value="0"/>
<property name="button_spacing" type="int" value="0"/>
<property name="click_to_focus" type="bool" value="true"/>
<property name="cycle_apps_only" type="bool" value="false"/>
<property name="cycle_draw_frame" type="bool" value="true"/>
<property name="cycle_hidden" type="bool" value="true"/>
<property name="cycle_minimum" type="bool" value="true"/>
<property name="cycle_preview" type="bool" value="true"/>
<property name="cycle_tabwin_mode" type="int" value="0"/>
<property name="cycle_workspaces" type="bool" value="false"/>
<property name="double_click_action" type="string" value="maximize"/>
<property name="double_click_distance" type="int" value="5"/>
<property name="double_click_time" type="int" value="250"/>
<property name="easy_click" type="string" value="Alt"/>
<property name="focus_delay" type="int" value="250"/>
<property name="focus_hint" type="bool" value="true"/>
<property name="focus_new" type="bool" value="true"/>
<property name="frame_opacity" type="int" value="100"/>
<property name="full_width_title" type="bool" value="true"/>
<property name="horiz_scroll_opacity" type="bool" value="false"/>
<property name="inactive_opacity" type="int" value="100"/>
<property name="maximized_offset" type="int" value="0"/>
<property name="mousewheel_rollup" type="bool" value="true"/>
<property name="move_opacity" type="int" value="100"/>
<property name="placement_mode" type="string" value="center"/>
<property name="placement_ratio" type="int" value="20"/>
<property name="popup_opacity" type="int" value="100"/>
<property name="prevent_focus_stealing" type="bool" value="false"/>
<property name="raise_delay" type="int" value="250"/>
<property name="raise_on_click" type="bool" value="true"/>
<property name="raise_on_focus" type="bool" value="false"/>
<property name="raise_with_any_button" type="bool" value="true"/>
<property name="repeat_urgent_blink" type="bool" value="false"/>
<property name="resize_opacity" type="int" value="100"/>
<property name="scroll_workspaces" type="bool" value="false"/>
<property name="shadow_delta_height" type="int" value="0"/>
<property name="shadow_delta_width" type="int" value="0"/>
<property name="shadow_delta_x" type="int" value="0"/>
<property name="shadow_delta_y" type="int" value="-3"/>
<property name="shadow_opacity" type="int" value="50"/>
<property name="show_app_icon" type="bool" value="false"/>
<property name="show_dock_shadow" type="bool" value="true"/>
<property name="show_frame_shadow" type="bool" value="true"/>
<property name="show_popup_shadow" type="bool" value="false"/>
<property name="snap_resist" type="bool" value="false"/>
<property name="snap_to_border" type="bool" value="true"/>
<property name="snap_to_windows" type="bool" value="false"/>
<property name="snap_width" type="int" value="10"/>
<property name="sync_to_vblank" type="bool" value="false"/>
<property name="theme" type="string" value="Default"/>
<property name="tile_on_move" type="bool" value="true"/>
<property name="title_alignment" type="string" value="center"/>
<property name="title_font" type="string" value="Sans Bold 9"/>
<property name="title_horizontal_offset" type="int" value="0"/>
<property name="titleless_maximize" type="bool" value="false"/>
<property name="title_shadow_active" type="string" value="false"/>
<property name="title_shadow_inactive" type="string" value="false"/>
<property name="title_vertical_offset_active" type="int" value="0"/>
<property name="title_vertical_offset_inactive" type="int" value="0"/>
<property name="toggle_workspaces" type="bool" value="false"/>
<property name="unredirect_overlays" type="bool" value="true"/>
<property name="urgent_blink" type="bool" value="false"/>
<property name="use_compositing" type="bool" value="false"/>
<property name="workspace_count" type="int" value="1"/>
<property name="workspace_names" type="array">
<value type="string" value="Workspace 1"/>
</property>
<property name="wrap_cycle" type="bool" value="true"/>
<property name="wrap_layout" type="bool" value="true"/>
<property name="wrap_resistance" type="int" value="10"/>
<property name="wrap_windows" type="bool" value="true"/>
<property name="wrap_workspaces" type="bool" value="false"/>
<property name="zoom_desktop" type="bool" value="true"/>
</property>
</channel>

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

View File

@ -0,0 +1,41 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-desktop" version="1.0">
<property name="backdrop" type="empty">
<property name="screen0" type="empty">
<property name="monitor0" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/extra/backgrounds/bg_default.png"/>
</property>
</property>
<property name="monitorVNC-0" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="2"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/extra/backgrounds/bg_default.png"/>
</property>
</property>
</property>
</property>
<property name="last" type="empty">
<property name="window-width" type="int" value="1280"/>
<property name="window-height" type="int" value="1024"/>
</property>
<property name="desktop-icons" type="empty">
<property name="file-icons" type="empty">
<property name="show-filesystem" type="bool" value="false"/>
<property name="show-home" type="bool" value="false"/>
<property name="show-trash" type="bool" value="false"/>
<property name="show-removable" type="bool" value="false"/>
</property>
<property name="style" type="int" value="0"/>
<property name="show-thumbnails" type="bool" value="false"/>
</property>
<property name="desktop-menu" type="empty">
<property name="show" type="bool" value="false"/>
</property>
<property name="windowlist-menu" type="empty">
<property name="show" type="bool" value="false"/>
</property>
</channel>

View File

@ -0,0 +1,93 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-keyboard-shortcuts" version="1.0">
<property name="commands" type="empty">
<property name="default" type="empty">
<property name="&lt;Alt&gt;F1" type="empty"/>
<property name="&lt;Alt&gt;F2" type="empty">
<property name="startup-notify" type="empty"/>
</property>
<property name="&lt;Alt&gt;F3" type="empty">
<property name="startup-notify" type="empty"/>
</property>
<property name="&lt;Primary&gt;&lt;Alt&gt;Delete" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;l" type="empty"/>
<property name="XF86Display" type="empty"/>
<property name="&lt;Super&gt;p" type="empty"/>
<property name="&lt;Primary&gt;Escape" type="empty"/>
<property name="XF86WWW" type="empty"/>
<property name="XF86Mail" type="empty"/>
</property>
<property name="custom" type="empty">
<property name="override" type="bool" value="true"/>
</property>
</property>
<property name="xfwm4" type="empty">
<property name="default" type="empty">
<property name="&lt;Alt&gt;Insert" type="empty"/>
<property name="Escape" type="empty"/>
<property name="Left" type="empty"/>
<property name="Right" type="empty"/>
<property name="Up" type="empty"/>
<property name="Down" type="empty"/>
<property name="&lt;Alt&gt;Tab" type="empty"/>
<property name="&lt;Alt&gt;&lt;Shift&gt;Tab" type="empty"/>
<property name="&lt;Alt&gt;Delete" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Down" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Left" type="empty"/>
<property name="&lt;Shift&gt;&lt;Alt&gt;Page_Down" type="empty"/>
<property name="&lt;Alt&gt;F4" type="empty"/>
<property name="&lt;Alt&gt;F6" type="empty"/>
<property name="&lt;Alt&gt;F7" type="empty"/>
<property name="&lt;Alt&gt;F8" type="empty"/>
<property name="&lt;Alt&gt;F9" type="empty"/>
<property name="&lt;Alt&gt;F10" type="empty"/>
<property name="&lt;Alt&gt;F11" type="empty"/>
<property name="&lt;Alt&gt;F12" type="empty"/>
<property name="&lt;Primary&gt;&lt;Shift&gt;&lt;Alt&gt;Left" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;End" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Home" type="empty"/>
<property name="&lt;Primary&gt;&lt;Shift&gt;&lt;Alt&gt;Right" type="empty"/>
<property name="&lt;Primary&gt;&lt;Shift&gt;&lt;Alt&gt;Up" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_1" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_2" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_3" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_4" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_5" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_6" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_7" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_8" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_9" type="empty"/>
<property name="&lt;Alt&gt;space" type="empty"/>
<property name="&lt;Shift&gt;&lt;Alt&gt;Page_Up" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Right" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;d" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Up" type="empty"/>
<property name="&lt;Super&gt;Tab" type="empty"/>
<property name="&lt;Primary&gt;F1" type="empty"/>
<property name="&lt;Primary&gt;F2" type="empty"/>
<property name="&lt;Primary&gt;F3" type="empty"/>
<property name="&lt;Primary&gt;F4" type="empty"/>
<property name="&lt;Primary&gt;F5" type="empty"/>
<property name="&lt;Primary&gt;F6" type="empty"/>
<property name="&lt;Primary&gt;F7" type="empty"/>
<property name="&lt;Primary&gt;F8" type="empty"/>
<property name="&lt;Primary&gt;F9" type="empty"/>
<property name="&lt;Primary&gt;F10" type="empty"/>
<property name="&lt;Primary&gt;F11" type="empty"/>
<property name="&lt;Primary&gt;F12" type="empty"/>
</property>
<property name="custom" type="empty">
<property name="Up" type="string" value="up_key"/>
<property name="Left" type="string" value="left_key"/>
<property name="Escape" type="string" value="cancel_key"/>
<property name="Right" type="string" value="right_key"/>
<property name="Down" type="string" value="down_key"/>
<property name="override" type="bool" value="true"/>
</property>
</property>
<property name="providers" type="array">
<value type="string" value="commands"/>
<value type="string" value="xfwm4"/>
</property>
</channel>

View File

@ -0,0 +1,83 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfwm4" version="1.0">
<property name="general" type="empty">
<property name="activate_action" type="string" value="bring"/>
<property name="borderless_maximize" type="bool" value="true"/>
<property name="box_move" type="bool" value="true"/>
<property name="box_resize" type="bool" value="true"/>
<property name="button_layout" type="string" value="|"/>
<property name="button_offset" type="int" value="0"/>
<property name="button_spacing" type="int" value="0"/>
<property name="click_to_focus" type="bool" value="true"/>
<property name="cycle_apps_only" type="bool" value="false"/>
<property name="cycle_draw_frame" type="bool" value="true"/>
<property name="cycle_hidden" type="bool" value="true"/>
<property name="cycle_minimum" type="bool" value="true"/>
<property name="cycle_preview" type="bool" value="true"/>
<property name="cycle_tabwin_mode" type="int" value="0"/>
<property name="cycle_workspaces" type="bool" value="false"/>
<property name="double_click_action" type="string" value="maximize"/>
<property name="double_click_distance" type="int" value="5"/>
<property name="double_click_time" type="int" value="250"/>
<property name="easy_click" type="string" value="Alt"/>
<property name="focus_delay" type="int" value="250"/>
<property name="focus_hint" type="bool" value="true"/>
<property name="focus_new" type="bool" value="true"/>
<property name="frame_opacity" type="int" value="100"/>
<property name="full_width_title" type="bool" value="true"/>
<property name="horiz_scroll_opacity" type="bool" value="false"/>
<property name="inactive_opacity" type="int" value="100"/>
<property name="maximized_offset" type="int" value="0"/>
<property name="mousewheel_rollup" type="bool" value="true"/>
<property name="move_opacity" type="int" value="100"/>
<property name="placement_mode" type="string" value="center"/>
<property name="placement_ratio" type="int" value="20"/>
<property name="popup_opacity" type="int" value="100"/>
<property name="prevent_focus_stealing" type="bool" value="false"/>
<property name="raise_delay" type="int" value="250"/>
<property name="raise_on_click" type="bool" value="true"/>
<property name="raise_on_focus" type="bool" value="false"/>
<property name="raise_with_any_button" type="bool" value="true"/>
<property name="repeat_urgent_blink" type="bool" value="false"/>
<property name="resize_opacity" type="int" value="100"/>
<property name="scroll_workspaces" type="bool" value="false"/>
<property name="shadow_delta_height" type="int" value="0"/>
<property name="shadow_delta_width" type="int" value="0"/>
<property name="shadow_delta_x" type="int" value="0"/>
<property name="shadow_delta_y" type="int" value="-3"/>
<property name="shadow_opacity" type="int" value="50"/>
<property name="show_app_icon" type="bool" value="false"/>
<property name="show_dock_shadow" type="bool" value="true"/>
<property name="show_frame_shadow" type="bool" value="true"/>
<property name="show_popup_shadow" type="bool" value="false"/>
<property name="snap_resist" type="bool" value="false"/>
<property name="snap_to_border" type="bool" value="true"/>
<property name="snap_to_windows" type="bool" value="false"/>
<property name="snap_width" type="int" value="10"/>
<property name="sync_to_vblank" type="bool" value="false"/>
<property name="theme" type="string" value="Default"/>
<property name="tile_on_move" type="bool" value="true"/>
<property name="title_alignment" type="string" value="center"/>
<property name="title_font" type="string" value="Sans Bold 9"/>
<property name="title_horizontal_offset" type="int" value="0"/>
<property name="titleless_maximize" type="bool" value="false"/>
<property name="title_shadow_active" type="string" value="false"/>
<property name="title_shadow_inactive" type="string" value="false"/>
<property name="title_vertical_offset_active" type="int" value="0"/>
<property name="title_vertical_offset_inactive" type="int" value="0"/>
<property name="toggle_workspaces" type="bool" value="false"/>
<property name="unredirect_overlays" type="bool" value="true"/>
<property name="urgent_blink" type="bool" value="false"/>
<property name="use_compositing" type="bool" value="false"/>
<property name="workspace_count" type="int" value="1"/>
<property name="workspace_names" type="array">
<value type="string" value="Workspace 1"/>
</property>
<property name="wrap_cycle" type="bool" value="true"/>
<property name="wrap_layout" type="bool" value="true"/>
<property name="wrap_resistance" type="int" value="10"/>
<property name="wrap_windows" type="bool" value="true"/>
<property name="wrap_workspaces" type="bool" value="false"/>
<property name="zoom_desktop" type="bool" value="true"/>
</property>
</channel>

View File

@ -0,0 +1,32 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-desktop" version="1.0">
<property name="backdrop" type="empty">
<property name="screen0" type="empty">
<property name="monitor0" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
</property>
<property name="monitorVNC-0" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="2"/>
<property name="image-style" type="int" value="3"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
</property>
</property>
</property>
<property name="last" type="empty">
<property name="window-width" type="int" value="1280"/>
<property name="window-height" type="int" value="1024"/>
</property>
<property name="desktop-icons" type="empty">
<property name="file-icons" type="empty">
<property name="show-filesystem" type="bool" value="false"/>
<property name="show-home" type="bool" value="false"/>
<property name="show-trash" type="bool" value="false"/>
</property>
</property>
</channel>

View File

@ -0,0 +1,58 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-panel" version="1.0">
<property name="configver" type="int" value="2"/>
<property name="panels" type="array">
<value type="int" value="1"/>
<property name="panel-1" type="empty">
<property name="position" type="string" value="p=6;x=0;y=0"/>
<property name="length" type="uint" value="100"/>
<property name="position-locked" type="bool" value="true"/>
<property name="size" type="uint" value="30"/>
<property name="plugin-ids" type="array">
<value type="int" value="1"/>
<value type="int" value="3"/>
<value type="int" value="15"/>
<value type="int" value="4"/>
</property>
</property>
</property>
<property name="plugins" type="empty">
<property name="plugin-1" type="string" value="applicationsmenu">
<property name="button-icon" type="string" value="/home/kasm-user/.config/xfce4/fedora-logo-icon.png"/>
</property>
<property name="plugin-3" type="string" value="tasklist"/>
<property name="plugin-15" type="string" value="separator">
<property name="expand" type="bool" value="true"/>
<property name="style" type="uint" value="0"/>
</property>
<property name="plugin-4" type="string" value="pager"/>
<property name="plugin-6" type="string" value="systray"/>
<property name="plugin-7" type="string" value="showdesktop"/>
<property name="plugin-8" type="string" value="separator"/>
<property name="plugin-9" type="string" value="launcher">
<property name="items" type="array">
<value type="string" value="14413071971.desktop"/>
</property>
</property>
<property name="plugin-10" type="string" value="launcher">
<property name="items" type="array">
<value type="string" value="14413071972.desktop"/>
</property>
</property>
<property name="plugin-11" type="string" value="launcher">
<property name="items" type="array">
<value type="string" value="14413071973.desktop"/>
</property>
</property>
<property name="plugin-12" type="string" value="launcher">
<property name="items" type="array">
<value type="string" value="14413071974.desktop"/>
</property>
</property>
<property name="plugin-13" type="string" value="separator"/>
<property name="plugin-14" type="string" value="directorymenu">
<property name="base-directory" type="string" value="/root"/>
</property>
</property>
</channel>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-screensaver" version="1.0">
<property name="saver" type="empty">
<property name="mode" type="int" value="0"/>
<property name="enabled" type="bool" value="false"/>
</property>
</channel>

View File

@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xsettings" version="1.0">
<property name="Net" type="empty">
<property name="ThemeName" type="empty"/>
<property name="IconThemeName" type="empty"/>
<property name="DoubleClickTime" type="empty"/>
<property name="DoubleClickDistance" type="empty"/>
<property name="DndDragThreshold" type="empty"/>
<property name="CursorBlink" type="empty"/>
<property name="CursorBlinkTime" type="empty"/>
<property name="SoundThemeName" type="empty"/>
<property name="EnableEventSounds" type="empty"/>
<property name="EnableInputFeedbackSounds" type="empty"/>
</property>
<property name="Xft" type="empty">
<property name="DPI" type="empty"/>
<property name="Antialias" type="empty"/>
<property name="Hinting" type="empty"/>
<property name="HintStyle" type="empty"/>
<property name="RGBA" type="empty"/>
</property>
<property name="Gtk" type="empty">
<property name="CanChangeAccels" type="empty"/>
<property name="ColorPalette" type="empty"/>
<property name="FontName" type="empty"/>
<property name="IconSizes" type="empty"/>
<property name="KeyThemeName" type="empty"/>
<property name="ToolbarStyle" type="empty"/>
<property name="ToolbarIconSize" type="empty"/>
<property name="MenuImages" type="empty"/>
<property name="ButtonImages" type="empty"/>
<property name="MenuBarAccel" type="empty"/>
<property name="CursorThemeName" type="string" value="bridge"/>
<property name="CursorThemeSize" type="empty"/>
<property name="DecorationLayout" type="empty"/>
</property>
</channel>

View File

@ -0,0 +1,17 @@
[Desktop Entry]
Version=1.0
Name=Xfce Terminal
Comment=Terminal Emulator
GenericName=Terminal Emulator
Exec=xfce4-terminal
Icon=org.xfce.terminal
Terminal=false
Type=Application
Categories=GTK;System;TerminalEmulator;
StartupNotify=true
Actions=preferences;
X-XFCE-Source=file:///usr/share/applications/xfce4-terminal.desktop
[Desktop Action preferences]
Name=Terminal Preferences
Exec=xfce4-terminal --preferences

View File

@ -0,0 +1,12 @@
[Desktop Entry]
Name=Root Terminal
Comment=Opens a terminal as the root user, using gksu to ask for the password
Exec=menuexecg /usr/bin/x-terminal-emulator
Icon=gksu-root-terminal
StartupNotify=true
Terminal=false
X-MultipleArgs=false
Type=Application
Categories=GTK;System;TerminalEmulator;
X-Parrot-Package=gksu
X-XFCE-Source=file:///usr/share/applications/parrot-root-terminal.desktop

View File

@ -0,0 +1,18 @@
[Desktop Entry]
Name=Terminator
Comment=Multiple terminals in one window
TryExec=terminator
Exec=terminator
Icon=terminator
Type=Application
Categories=GNOME;GTK;Utility;TerminalEmulator;System;
StartupNotify=true
X-Ubuntu-Gettext-Domain=terminator
X-Ayatana-Desktop-Shortcuts=NewWindow;
Keywords=terminal;shell;prompt;command;commandline;
X-XFCE-Source=file:///usr/share/applications/terminator.desktop
[NewWindow Shortcut Group]
Name=Open a New Window
Exec=terminator
TargetEnvironment=Unity

View File

@ -0,0 +1,10 @@
[Desktop Entry]
Name=Byobu Terminal
Comment=Advanced Command Line and Text Window Manager
Icon=byobu
Exec=env TERM=xterm-256color byobu
Terminal=true
Type=Application
Categories=GNOME;GTK;Utility;
X-GNOME-Gettext-Domain=byobu
X-XFCE-Source=file:///usr/share/applications/byobu.desktop

View File

@ -0,0 +1,15 @@
[Desktop Entry]
Name=Firefox
Comment=Browse the World Wide Web
GenericName=Web Browser
X-GNOME-FullName=Firefox
Exec=firefox %u
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=firefox
Categories=Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/vnd.mozilla.xul+xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;
StartupWMClass=firefox
StartupNotify=true
X-XFCE-Source=file:///usr/share/applications/firefox.desktop

View File

@ -0,0 +1,14 @@
[Desktop Entry]
Version=1.0
Type=Application
Exec=exo-open --launch FileManager %u
Icon=org.xfce.filemanager
StartupNotify=true
Terminal=false
Categories=Utility;X-XFCE;X-Xfce-Toplevel;
OnlyShowIn=XFCE;
X-XFCE-MimeType=inode/directory;x-scheme-handler/trash;
X-AppStream-Ignore=True
Name=File Manager
Comment=Browse the file system
X-XFCE-Source=file:///usr/share/applications/xfce4-file-manager.desktop

View File

@ -0,0 +1,26 @@
[Main]
Timeout=500
Timeout_Seconds=1
Click_Command=xfce4-taskmanager
[SL_Cpu]
Enabled=true
Use_Label=true
Color=rgb(0,0,192)
Text=cpu
[SL_Mem]
Enabled=true
Use_Label=true
Color=rgb(0,192,0)
Text=mem
[SL_Swap]
Enabled=true
Use_Label=true
Color=rgb(240,240,0)
Text=swap
[SL_Uptime]
Enabled=false

View File

@ -0,0 +1,25 @@
[Main]
Timeout=500
Timeout_Seconds=1
Click_Command=xfce4-taskmanager
[SL_Cpu]
Enabled=true
Use_Label=true
Color=rgb(0,0,192)
Text=cpu
[SL_Mem]
Enabled=true
Use_Label=true
Color=rgb(0,192,0)
Text=mem
[SL_Swap]
Enabled=true
Use_Label=true
Color=rgb(240,240,0)
Text=swap
[SL_Uptime]
Enabled=false

View File

@ -0,0 +1,26 @@
[Main]
Timeout=500
Timeout_Seconds=1
Click_Command=xfce4-taskmanager
[SL_Cpu]
Enabled=true
Use_Label=true
Color=rgb(0,0,192)
Text=cpu
[SL_Mem]
Enabled=true
Use_Label=true
Color=rgb(0,192,0)
Text=mem
[SL_Swap]
Enabled=true
Use_Label=true
Color=rgb(240,240,0)
Text=swap
[SL_Uptime]
Enabled=false

View File

@ -0,0 +1,68 @@
favorites=mousepad.desktop,encryptpad.desktop,anon-gui.desktop,codium.desktop
button-title=Menu
button-icon=emblem-parrot
button-single-row=false
show-button-title=true
show-button-icon=true
launcher-show-name=true
launcher-show-description=true
launcher-show-tooltip=true
item-icon-size=3
hover-switch-category=false
category-show-name=true
category-icon-size=1
load-hierarchy=true
view-as-icons=false
default-category=0
recent-items-max=10
favorites-in-recent=true
position-search-alternate=true
position-commands-alternate=false
position-categories-alternate=true
stay-on-focus-out=false
confirm-session-command=true
menu-width=450
menu-height=500
menu-opacity=100
command-settings=xfce4-settings-manager
show-command-settings=true
command-lockscreen=xflock4
show-command-lockscreen=true
command-switchuser=dm-tool switch-to-greeter
show-command-switchuser=false
command-logoutuser=xfce4-session-logout --logout --fast
show-command-logoutuser=false
command-restart=xfce4-session-logout --reboot --fast
show-command-restart=false
command-shutdown=xfce4-session-logout --halt --fast
show-command-shutdown=false
command-suspend=xfce4-session-logout --suspend
show-command-suspend=false
command-hibernate=xfce4-session-logout --hibernate
show-command-hibernate=false
command-logout=xfce4-session-logout
show-command-logout=true
command-menueditor=menulibre
show-command-menueditor=true
command-profile=mugshot
show-command-profile=true
search-actions=3
[action0]
name=Man Pages
pattern=#
command=exo-open --launch TerminalEmulator man %s
regex=false
[action1]
name=Web Search
pattern=?
command=exo-open --launch WebBrowser https://duckduckgo.com/?q=%u
regex=false
[action2]
name=Run in Terminal
pattern=!
command=exo-open --launch TerminalEmulator %s
regex=false

View File

@ -0,0 +1,67 @@
favorites=mousepad.desktop,encryptpad.desktop,anon-gui.desktop,codium.desktop
button-title=Menu
button-icon=view-list
button-single-row=false
show-button-title=true
show-button-icon=true
launcher-show-name=true
launcher-show-description=true
launcher-show-tooltip=true
item-icon-size=3
hover-switch-category=false
category-show-name=true
category-icon-size=1
load-hierarchy=true
view-as-icons=false
default-category=0
recent-items-max=10
favorites-in-recent=true
position-search-alternate=true
position-commands-alternate=false
position-categories-alternate=true
stay-on-focus-out=false
confirm-session-command=true
menu-width=450
menu-height=500
menu-opacity=100
command-settings=xfce4-settings-manager
show-command-settings=true
command-lockscreen=xflock4
show-command-lockscreen=true
command-switchuser=dm-tool switch-to-greeter
show-command-switchuser=false
command-logoutuser=xfce4-session-logout --logout --fast
show-command-logoutuser=false
command-restart=xfce4-session-logout --reboot --fast
show-command-restart=false
command-shutdown=xfce4-session-logout --halt --fast
show-command-shutdown=false
command-suspend=xfce4-session-logout --suspend
show-command-suspend=false
command-hibernate=xfce4-session-logout --hibernate
show-command-hibernate=false
command-logout=xfce4-session-logout
show-command-logout=true
command-menueditor=menulibre
show-command-menueditor=true
command-profile=mugshot
show-command-profile=true
search-actions=3
[action0]
name=Man Pages
pattern=#
command=exo-open --launch TerminalEmulator man %s
regex=false
[action1]
name=Web Search
pattern=?
command=exo-open --launch WebBrowser https://duckduckgo.com/?q=%u
regex=false
[action2]
name=Run in Terminal
pattern=!
command=exo-open --launch TerminalEmulator %s
regex=false

View File

@ -0,0 +1,67 @@
favorites=update-reminder.desktop,mousepad.desktop,encryptpad.desktop,anon-gui.desktop,codium.desktop,org.remmina.Remmina.desktop,htop.desktop
button-title=Menu
button-icon=view-list
button-single-row=false
show-button-title=true
show-button-icon=true
launcher-show-name=true
launcher-show-description=true
launcher-show-tooltip=true
item-icon-size=3
hover-switch-category=false
category-show-name=true
category-icon-size=1
load-hierarchy=true
view-as-icons=false
default-category=0
recent-items-max=10
favorites-in-recent=true
position-search-alternate=true
position-commands-alternate=false
position-categories-alternate=true
stay-on-focus-out=false
confirm-session-command=true
menu-width=450
menu-height=500
menu-opacity=100
command-settings=xfce4-settings-manager
show-command-settings=true
command-lockscreen=xflock4
show-command-lockscreen=true
command-switchuser=dm-tool switch-to-greeter
show-command-switchuser=false
command-logoutuser=xfce4-session-logout --logout --fast
show-command-logoutuser=false
command-restart=xfce4-session-logout --reboot --fast
show-command-restart=false
command-shutdown=xfce4-session-logout --halt --fast
show-command-shutdown=false
command-suspend=xfce4-session-logout --suspend
show-command-suspend=false
command-hibernate=xfce4-session-logout --hibernate
show-command-hibernate=false
command-logout=xfce4-session-logout
show-command-logout=true
command-menueditor=menulibre
show-command-menueditor=true
command-profile=mugshot
show-command-profile=true
search-actions=3
[action0]
name=Man Pages
pattern=#
command=exo-open --launch TerminalEmulator man %s
regex=false
[action1]
name=Web Search
pattern=?
command=exo-open --launch WebBrowser https://duckduckgo.com/?q=%u
regex=false
[action2]
name=Run in Terminal
pattern=!
command=exo-open --launch TerminalEmulator %s
regex=false

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="displays" version="1.0">
<property name="ActiveProfile" type="string" value="Default"/>
</channel>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="thunar" version="1.0">
<property name="last-view" type="string" value="ThunarIconView"/>
</channel>

View File

@ -0,0 +1,89 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-desktop" version="1.0">
<property name="backdrop" type="empty">
<property name="screen0" type="empty">
<property name="monitor0" type="empty">
<property name="brightness" type="empty"/>
<property name="color1" type="empty"/>
<property name="color2" type="empty"/>
<property name="color-style" type="empty"/>
<property name="image-path" type="empty"/>
<property name="image-show" type="empty"/>
<property name="last-image" type="empty"/>
<property name="last-single-image" type="empty"/>
</property>
<property name="monitor1" type="empty">
<property name="brightness" type="empty"/>
<property name="color1" type="empty"/>
<property name="color2" type="empty"/>
<property name="color-style" type="empty"/>
<property name="image-path" type="empty"/>
<property name="image-show" type="empty"/>
<property name="last-image" type="empty"/>
<property name="last-single-image" type="empty"/>
</property>
<property name="monitorVirtual1" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="1"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/macaw-poly.jpg"/>
</property>
<property name="workspace1" type="empty">
<property name="color-style" type="int" value="1"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/images/desktop-base/default"/>
</property>
<property name="workspace2" type="empty">
<property name="color-style" type="int" value="1"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/images/desktop-base/default"/>
</property>
<property name="workspace3" type="empty">
<property name="color-style" type="int" value="1"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/images/desktop-base/default"/>
</property>
<property name="workspace4" type="empty">
<property name="color-style" type="int" value="1"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/images/desktop-base/default"/>
</property>
</property>
<property name="monitorVNC-0" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="1"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/extra/backgrounds/bg_default.png"/>
</property>
<property name="workspace1" type="empty">
<property name="color-style" type="int" value="1"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/images/desktop-base/default"/>
</property>
<property name="workspace2" type="empty">
<property name="color-style" type="int" value="1"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/images/desktop-base/default"/>
</property>
<property name="workspace3" type="empty">
<property name="color-style" type="int" value="1"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/images/desktop-base/default"/>
</property>
</property>
</property>
</property>
<property name="last" type="empty">
<property name="window-width" type="int" value="688"/>
<property name="window-height" type="int" value="654"/>
</property>
<property name="desktop-icons" type="empty">
<property name="file-icons" type="empty">
<property name="show-home" type="bool" value="false"/>
<property name="show-filesystem" type="bool" value="false"/>
<property name="show-trash" type="bool" value="false"/>
<property name="show-removable" type="bool" value="false"/>
</property>
</property>
</channel>

View File

@ -0,0 +1,187 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-keyboard-shortcuts" version="1.0">
<property name="commands" type="empty">
<property name="default" type="empty">
<property name="&lt;Alt&gt;F1" type="empty"/>
<property name="&lt;Alt&gt;F2" type="empty">
<property name="startup-notify" type="empty"/>
</property>
<property name="&lt;Alt&gt;F3" type="empty">
<property name="startup-notify" type="empty"/>
</property>
<property name="&lt;Primary&gt;&lt;Alt&gt;Delete" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;l" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;t" type="empty"/>
<property name="XF86Display" type="empty"/>
<property name="&lt;Super&gt;p" type="empty"/>
<property name="&lt;Primary&gt;Escape" type="empty"/>
<property name="XF86WWW" type="empty"/>
<property name="XF86Mail" type="empty"/>
<property name="Print" type="empty"/>
</property>
<property name="custom" type="empty">
<property name="XF86Display" type="string" value="xfce4-display-settings --minimal"/>
<property name="&lt;Super&gt;p" type="string" value="xfce4-display-settings --minimal"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;l" type="string" value="xflock4"/>
<property name="&lt;Primary&gt;Escape" type="string" value="xfdesktop --menu"/>
<property name="&lt;Alt&gt;F2" type="string" value="xfrun4"/>
<property name="override" type="bool" value="true"/>
<property name="Super_L" type="string" value="xfce4-popup-whiskermenu"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;t" type="string" value="xfce4-terminal"/>
<property name="Print" type="string" value="xfce4-screenshooter -f"/>
<property name="&lt;Alt&gt;Print" type="string" value="xfce4-screenshooter -w"/>
<property name="&lt;Shift&gt;Print" type="string" value="xfce4-screenshooter -r"/>
</property>
</property>
<property name="xfwm4" type="empty">
<property name="default" type="empty">
<property name="&lt;Alt&gt;Insert" type="empty"/>
<property name="Escape" type="empty"/>
<property name="Left" type="empty"/>
<property name="Right" type="empty"/>
<property name="Up" type="empty"/>
<property name="Down" type="empty"/>
<property name="&lt;Alt&gt;Tab" type="empty"/>
<property name="&lt;Alt&gt;&lt;Shift&gt;Tab" type="empty"/>
<property name="&lt;Alt&gt;Delete" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Down" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Left" type="empty"/>
<property name="&lt;Shift&gt;&lt;Alt&gt;Page_Down" type="empty"/>
<property name="&lt;Alt&gt;F4" type="empty"/>
<property name="&lt;Alt&gt;F6" type="empty"/>
<property name="&lt;Alt&gt;F7" type="empty"/>
<property name="&lt;Alt&gt;F8" type="empty"/>
<property name="&lt;Alt&gt;F9" type="empty"/>
<property name="&lt;Alt&gt;F10" type="empty"/>
<property name="&lt;Alt&gt;F11" type="empty"/>
<property name="&lt;Alt&gt;F12" type="empty"/>
<property name="&lt;Primary&gt;&lt;Shift&gt;&lt;Alt&gt;Left" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;End" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Home" type="empty"/>
<property name="&lt;Primary&gt;&lt;Shift&gt;&lt;Alt&gt;Right" type="empty"/>
<property name="&lt;Primary&gt;&lt;Shift&gt;&lt;Alt&gt;Up" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_1" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_2" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_3" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_4" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_5" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_6" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_7" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_8" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;KP_9" type="empty"/>
<property name="&lt;Alt&gt;space" type="empty"/>
<property name="&lt;Shift&gt;&lt;Alt&gt;Page_Up" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Right" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;d" type="empty"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Up" type="empty"/>
<property name="&lt;Super&gt;Tab" type="empty"/>
<property name="&lt;Primary&gt;F1" type="empty"/>
<property name="&lt;Primary&gt;F2" type="empty"/>
<property name="&lt;Primary&gt;F3" type="empty"/>
<property name="&lt;Primary&gt;F4" type="empty"/>
<property name="&lt;Primary&gt;F5" type="empty"/>
<property name="&lt;Primary&gt;F6" type="empty"/>
<property name="&lt;Primary&gt;F7" type="empty"/>
<property name="&lt;Primary&gt;F8" type="empty"/>
<property name="&lt;Primary&gt;F9" type="empty"/>
<property name="&lt;Primary&gt;F10" type="empty"/>
<property name="&lt;Primary&gt;F11" type="empty"/>
<property name="&lt;Primary&gt;F12" type="empty"/>
<property name="&lt;Control&gt;&lt;Alt&gt;Down" type="empty"/>
<property name="&lt;Control&gt;&lt;Alt&gt;Left" type="empty"/>
<property name="&lt;Control&gt;&lt;Shift&gt;&lt;Alt&gt;Left" type="empty"/>
<property name="&lt;Alt&gt;&lt;Control&gt;End" type="empty"/>
<property name="&lt;Alt&gt;&lt;Control&gt;Home" type="empty"/>
<property name="&lt;Control&gt;&lt;Shift&gt;&lt;Alt&gt;Right" type="empty"/>
<property name="&lt;Control&gt;&lt;Shift&gt;&lt;Alt&gt;Up" type="empty"/>
<property name="&lt;Alt&gt;&lt;Control&gt;KP_1" type="empty"/>
<property name="&lt;Alt&gt;&lt;Control&gt;KP_2" type="empty"/>
<property name="&lt;Alt&gt;&lt;Control&gt;KP_3" type="empty"/>
<property name="&lt;Alt&gt;&lt;Control&gt;KP_4" type="empty"/>
<property name="&lt;Alt&gt;&lt;Control&gt;KP_5" type="empty"/>
<property name="&lt;Alt&gt;&lt;Control&gt;KP_6" type="empty"/>
<property name="&lt;Alt&gt;&lt;Control&gt;KP_7" type="empty"/>
<property name="&lt;Alt&gt;&lt;Control&gt;KP_8" type="empty"/>
<property name="&lt;Alt&gt;&lt;Control&gt;KP_9" type="empty"/>
<property name="&lt;Control&gt;&lt;Alt&gt;Right" type="empty"/>
<property name="&lt;Control&gt;&lt;Alt&gt;d" type="empty"/>
<property name="&lt;Control&gt;&lt;Alt&gt;Up" type="empty"/>
<property name="&lt;Control&gt;F1" type="empty"/>
<property name="&lt;Control&gt;F2" type="empty"/>
<property name="&lt;Control&gt;F3" type="empty"/>
<property name="&lt;Control&gt;F4" type="empty"/>
<property name="&lt;Control&gt;F5" type="empty"/>
<property name="&lt;Control&gt;F6" type="empty"/>
<property name="&lt;Control&gt;F7" type="empty"/>
<property name="&lt;Control&gt;F8" type="empty"/>
<property name="&lt;Control&gt;F9" type="empty"/>
<property name="&lt;Control&gt;F10" type="empty"/>
<property name="&lt;Control&gt;F11" type="empty"/>
<property name="&lt;Control&gt;F12" type="empty"/>
</property>
<property name="custom" type="empty">
<property name="&lt;Primary&gt;F12" type="string" value="workspace_12_key"/>
<property name="&lt;Alt&gt;F4" type="string" value="close_window_key"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Down" type="string" value="down_workspace_key"/>
<property name="&lt;Primary&gt;&lt;Shift&gt;&lt;Alt&gt;Left" type="string" value="move_window_left_key"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;End" type="string" value="move_window_next_workspace_key"/>
<property name="Right" type="string" value="right_key"/>
<property name="Down" type="string" value="down_key"/>
<property name="&lt;Shift&gt;&lt;Alt&gt;Page_Down" type="string" value="lower_window_key"/>
<property name="&lt;Alt&gt;Tab" type="string" value="cycle_windows_key"/>
<property name="&lt;Primary&gt;&lt;Shift&gt;&lt;Alt&gt;Right" type="string" value="move_window_right_key"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Right" type="string" value="right_workspace_key"/>
<property name="&lt;Alt&gt;F10" type="string" value="maximize_window_key"/>
<property name="&lt;Primary&gt;F11" type="string" value="workspace_11_key"/>
<property name="&lt;Alt&gt;F6" type="string" value="stick_window_key"/>
<property name="&lt;Alt&gt;Delete" type="string" value="del_workspace_key"/>
<property name="&lt;Super&gt;Tab" type="string" value="switch_window_key"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;d" type="string" value="show_desktop_key"/>
<property name="&lt;Alt&gt;F7" type="string" value="move_window_key"/>
<property name="Up" type="string" value="up_key"/>
<property name="&lt;Alt&gt;F11" type="string" value="fullscreen_key"/>
<property name="&lt;Alt&gt;space" type="string" value="popup_menu_key"/>
<property name="&lt;Alt&gt;&lt;Shift&gt;Tab" type="string" value="cycle_reverse_windows_key"/>
<property name="Escape" type="string" value="cancel_key"/>
<property name="&lt;Shift&gt;&lt;Alt&gt;Page_Up" type="string" value="raise_window_key"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Home" type="string" value="move_window_prev_workspace_key"/>
<property name="&lt;Alt&gt;F12" type="string" value="above_key"/>
<property name="&lt;Alt&gt;F8" type="string" value="resize_window_key"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Left" type="string" value="left_workspace_key"/>
<property name="&lt;Primary&gt;&lt;Shift&gt;&lt;Alt&gt;Up" type="string" value="move_window_up_key"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;Up" type="string" value="up_workspace_key"/>
<property name="&lt;Alt&gt;F9" type="string" value="hide_window_key"/>
<property name="&lt;Primary&gt;F10" type="string" value="workspace_10_key"/>
<property name="Left" type="string" value="left_key"/>
<property name="&lt;Alt&gt;Insert" type="string" value="add_workspace_key"/>
<property name="override" type="bool" value="true"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;1" type="string" value="workspace_1_key"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;2" type="string" value="workspace_2_key"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;3" type="string" value="workspace_3_key"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;4" type="string" value="workspace_4_key"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;5" type="string" value="workspace_5_key"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;6" type="string" value="workspace_6_key"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;7" type="string" value="workspace_7_key"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;8" type="string" value="workspace_8_key"/>
<property name="&lt;Primary&gt;&lt;Alt&gt;9" type="string" value="workspace_9_key"/>
<property name="&lt;Primary&gt;&lt;Super&gt;Up" type="string" value="tile_up_key"/>
<property name="&lt;Primary&gt;&lt;Super&gt;Down" type="string" value="tile_down_key"/>
<property name="&lt;Primary&gt;&lt;Super&gt;Left" type="string" value="tile_left_key"/>
<property name="&lt;Primary&gt;&lt;Super&gt;Right" type="string" value="tile_right_key"/>
<property name="&lt;Primary&gt;F1" type="string" value="move_window_workspace_1_key"/>
<property name="&lt;Primary&gt;F2" type="string" value="move_window_workspace_2_key"/>
<property name="&lt;Primary&gt;F4" type="string" value="move_window_workspace_4_key"/>
<property name="&lt;Primary&gt;F5" type="string" value="move_window_workspace_5_key"/>
<property name="&lt;Primary&gt;F6" type="string" value="move_window_workspace_6_key"/>
<property name="&lt;Primary&gt;F7" type="string" value="move_window_workspace_7_key"/>
<property name="&lt;Primary&gt;F8" type="string" value="move_window_workspace_8_key"/>
<property name="&lt;Primary&gt;F9" type="string" value="move_window_workspace_9_key"/>
<property name="&lt;Primary&gt;F3" type="string" value="move_window_workspace_3_key"/>
</property>
</property>
<property name="providers" type="array">
<value type="string" value="xfwm4"/>
<value type="string" value="commands"/>
</property>
</channel>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-mixer" version="1.0">
<property name="active-card" type="string" value="HDAIntelAlsamixer"/>
<property name="volume-step-size" type="uint" value="5"/>
</channel>

View File

@ -0,0 +1,105 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-panel" version="1.0">
<property name="configver" type="int" value="2"/>
<property name="panels" type="uint" value="2">
<property name="panel-0" type="empty">
<property name="autohide-behavior" type="int" value="0"/>
<property name="disable-struts" type="int" value="0"/>
<property name="length" type="int" value="100"/>
<property name="length-adjust" type="bool" value="true"/>
<property name="mode" type="int" value="0"/>
<property name="nrows" type="int" value="1"/>
<property name="position-locked" type="bool" value="true"/>
<property name="size" type="int" value="32"/>
<property name="position" type="string" value="p=0;x=0;y=0"/>
<property name="output-name" type="string" value="Primary"/>
<property name="plugin-ids" type="array">
<value type="int" value="1"/>
<value type="int" value="3"/>
<value type="int" value="5"/>
<value type="int" value="7"/>
</property>
</property>
<property name="panel-1" type="empty">
<property name="autohide-behavior" type="int" value="0"/>
<property name="disable-struts" type="int" value="0"/>
<property name="length" type="int" value="100"/>
<property name="length-adjust" type="bool" value="true"/>
<property name="mode" type="int" value="0"/>
<property name="nrows" type="int" value="1"/>
<property name="position-locked" type="bool" value="true"/>
<property name="size" type="int" value="32"/>
<property name="position" type="string" value="p=8;x=0;y=0"/>
<property name="output-name" type="string" value="Primary"/>
<property name="plugin-ids" type="array">
<value type="int" value="10"/>
<value type="int" value="11"/>
<value type="int" value="12"/>
<value type="int" value="13"/>
<value type="int" value="14"/>
<value type="int" value="15"/>
</property>
</property>
</property>
<property name="plugins" type="empty">
<property name="plugin-1" type="string" value="applicationsmenu">
<property name="button-icon" type="string" value="distributor-logo-parrot"/>
<property name="button-title" type="string" value="Applications"/>
<property name="custom-menu" type="bool" value="false"/>
<property name="show-generic-names" type="bool" value="false"/>
<property name="show-tooltips" type="bool" value="true"/>
</property>
<property name="plugin-2" type="string" value="places">
<property name="show-button-type" type="int" value="2"/>
</property>
<property name="plugin-3" type="string" value="separator">
<property name="style" type="int" value="0"/>
<property name="expand" type="bool" value="true"/>
</property>
<property name="plugin-5" type="string" value="separator">
<property name="style" type="int" value="0"/>
<property name="expand" type="bool" value="true"/>
</property>
<property name="plugin-6" type="string" value="systemload"/>
<property name="plugin-7" type="string" value="pulseaudio">
<property name="enable-keyboard-shortcuts" type="bool" value="true"/>
</property>
<property name="plugin-9" type="string" value="whiskermenu"/>
<property name="plugin-10" type="string" value="launcher">
<property name="items" type="array">
<value type="string" value="16321537241.desktop"/>
<value type="string" value="16321537242.desktop"/>
<value type="string" value="16321537243.desktop"/>
<value type="string" value="16321537244.desktop"/>
</property>
</property>
<property name="plugin-11" type="string" value="launcher">
<property name="items" type="array">
<value type="string" value="16321537245.desktop"/>
</property>
</property>
<property name="plugin-12" type="string" value="launcher">
<property name="items" type="array">
<value type="string" value="16321537246.desktop"/>
</property>
</property>
<property name="plugin-13" type="string" value="tasklist">
<property name="grouping" type="int" value="0"/>
<property name="include-all-monitors" type="bool" value="true"/>
<property name="include-all-workspaces" type="bool" value="false"/>
<property name="show-labels" type="bool" value="true"/>
<property name="show-only-minimized" type="bool" value="false"/>
<property name="show-wireframes" type="bool" value="false"/>
<property name="sort-order" type="int" value="4"/>
<property name="switch-workspace-on-unminimize" type="bool" value="true"/>
</property>
<property name="plugin-14" type="string" value="separator">
<property name="style" type="int" value="0"/>
<property name="expand" type="bool" value="true"/>
</property>
<property name="plugin-15" type="string" value="pager">
<property name="rows" type="int" value="2"/>
</property>
</property>
</channel>

View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-screensaver" version="1.0">
<property name="saver" type="empty">
<property name="mode" type="int" value="0"/>
<property name="fullscreen-inhibit" type="bool" value="true"/>
</property>
</channel>

View File

@ -0,0 +1,46 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-session" version="1.0">
<property name="splash" type="empty">
<property name="Engine" type="empty"/>
<property name="engines" type="empty">
<property name="simple" type="empty">
<property name="Font" type="empty"/>
<property name="BgColor" type="empty"/>
<property name="FgColor" type="empty"/>
<property name="Image" type="empty"/>
</property>
</property>
</property>
<property name="general" type="empty">
<property name="FailsafeSessionName" type="empty"/>
<property name="LockCommand" type="empty"/>
<property name="SessionName" type="string" value="Default"/>
<property name="SaveOnExit" type="bool" value="false"/>
</property>
<property name="sessions" type="empty">
<property name="Failsafe" type="empty">
<property name="IsFailsafe" type="empty"/>
<property name="Count" type="empty"/>
<property name="Client0_Command" type="empty"/>
<property name="Client0_Priority" type="empty"/>
<property name="Client0_PerScreen" type="empty"/>
<property name="Client1_Command" type="empty"/>
<property name="Client1_Priority" type="empty"/>
<property name="Client1_PerScreen" type="empty"/>
<property name="Client2_Command" type="empty"/>
<property name="Client2_Priority" type="empty"/>
<property name="Client2_PerScreen" type="empty"/>
<property name="Client3_Command" type="empty"/>
<property name="Client3_Priority" type="empty"/>
<property name="Client3_PerScreen" type="empty"/>
<property name="Client4_Command" type="empty"/>
<property name="Client4_Priority" type="empty"/>
<property name="Client4_PerScreen" type="empty"/>
</property>
</property>
<property name="compat" type="empty">
<property name="LaunchGNOME" type="bool" value="true"/>
<property name="LaunchKDE" type="bool" value="true"/>
</property>
</channel>

View File

@ -0,0 +1,93 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfwm4" version="1.0">
<property name="general" type="empty">
<property name="activate_action" type="string" value="bring"/>
<property name="borderless_maximize" type="bool" value="true"/>
<property name="box_move" type="bool" value="false"/>
<property name="box_resize" type="bool" value="false"/>
<property name="button_layout" type="string" value="O|HMC"/>
<property name="button_offset" type="int" value="0"/>
<property name="button_spacing" type="int" value="0"/>
<property name="click_to_focus" type="bool" value="true"/>
<property name="focus_delay" type="int" value="250"/>
<property name="cycle_apps_only" type="bool" value="false"/>
<property name="cycle_draw_frame" type="bool" value="true"/>
<property name="cycle_hidden" type="bool" value="true"/>
<property name="cycle_minimum" type="bool" value="true"/>
<property name="cycle_workspaces" type="bool" value="true"/>
<property name="double_click_time" type="int" value="250"/>
<property name="double_click_distance" type="int" value="5"/>
<property name="double_click_action" type="string" value="maximize"/>
<property name="easy_click" type="string" value="None"/>
<property name="focus_hint" type="bool" value="true"/>
<property name="focus_new" type="bool" value="true"/>
<property name="frame_opacity" type="int" value="100"/>
<property name="full_width_title" type="bool" value="true"/>
<property name="inactive_opacity" type="int" value="78"/>
<property name="maximized_offset" type="int" value="0"/>
<property name="move_opacity" type="int" value="68"/>
<property name="placement_ratio" type="int" value="20"/>
<property name="placement_mode" type="string" value="center"/>
<property name="popup_opacity" type="int" value="93"/>
<property name="mousewheel_rollup" type="bool" value="false"/>
<property name="prevent_focus_stealing" type="bool" value="false"/>
<property name="raise_delay" type="int" value="250"/>
<property name="raise_on_click" type="bool" value="true"/>
<property name="raise_on_focus" type="bool" value="false"/>
<property name="raise_with_any_button" type="bool" value="false"/>
<property name="repeat_urgent_blink" type="bool" value="false"/>
<property name="resize_opacity" type="int" value="70"/>
<property name="restore_on_move" type="bool" value="true"/>
<property name="scroll_workspaces" type="bool" value="false"/>
<property name="shadow_delta_height" type="int" value="0"/>
<property name="shadow_delta_width" type="int" value="0"/>
<property name="shadow_delta_x" type="int" value="0"/>
<property name="shadow_delta_y" type="int" value="-3"/>
<property name="shadow_opacity" type="int" value="50"/>
<property name="show_app_icon" type="bool" value="false"/>
<property name="show_dock_shadow" type="bool" value="true"/>
<property name="show_frame_shadow" type="bool" value="true"/>
<property name="show_popup_shadow" type="bool" value="true"/>
<property name="snap_resist" type="bool" value="false"/>
<property name="snap_to_border" type="bool" value="true"/>
<property name="snap_to_windows" type="bool" value="false"/>
<property name="snap_width" type="int" value="10"/>
<property name="theme" type="string" value="ARK-Dark"/>
<property name="title_alignment" type="string" value="left"/>
<property name="title_font" type="string" value="Sans Bold 9"/>
<property name="title_horizontal_offset" type="int" value="0"/>
<property name="title_shadow_active" type="string" value="false"/>
<property name="title_shadow_inactive" type="string" value="false"/>
<property name="title_vertical_offset_active" type="int" value="0"/>
<property name="title_vertical_offset_inactive" type="int" value="0"/>
<property name="toggle_workspaces" type="bool" value="false"/>
<property name="unredirect_overlays" type="bool" value="true"/>
<property name="urgent_blink" type="bool" value="false"/>
<property name="use_compositing" type="bool" value="false"/>
<property name="workspace_count" type="int" value="4"/>
<property name="wrap_cycle" type="bool" value="true"/>
<property name="wrap_layout" type="bool" value="true"/>
<property name="wrap_resistance" type="int" value="10"/>
<property name="wrap_windows" type="bool" value="true"/>
<property name="wrap_workspaces" type="bool" value="false"/>
<property name="workspace_names" type="array">
<value type="string" value="Workspace 1"/>
<value type="string" value="Workspace 2"/>
<value type="string" value="Workspace 3"/>
<value type="string" value="Workspace 4"/>
<value type="string" value="Workspace 5"/>
</property>
<property name="cycle_raise" type="bool" value="false"/>
<property name="cycle_preview" type="bool" value="true"/>
<property name="cycle_tabwin_mode" type="int" value="0"/>
<property name="frame_border_top" type="int" value="0"/>
<property name="horiz_scroll_opacity" type="bool" value="false"/>
<property name="vblank_mode" type="string" value="auto"/>
<property name="tile_on_move" type="bool" value="true"/>
<property name="titleless_maximize" type="bool" value="false"/>
<property name="zoom_desktop" type="bool" value="true"/>
<property name="cycle_minimized" type="bool" value="false"/>
<property name="zoom_pointer" type="bool" value="true"/>
</property>
</channel>

View File

@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xsettings" version="1.0">
<property name="Net" type="empty">
<property name="ThemeName" type="string" value="ARK-Dark"/>
<property name="IconThemeName" type="string" value="ara"/>
<property name="DoubleClickTime" type="int" value="250"/>
<property name="DoubleClickDistance" type="int" value="5"/>
<property name="DndDragThreshold" type="int" value="8"/>
<property name="CursorBlink" type="bool" value="true"/>
<property name="CursorBlinkTime" type="int" value="1200"/>
<property name="SoundThemeName" type="string" value="default"/>
<property name="EnableEventSounds" type="bool" value="true"/>
<property name="EnableInputFeedbackSounds" type="bool" value="true"/>
</property>
<property name="Xft" type="empty">
<property name="DPI" type="empty"/>
<property name="Antialias" type="int" value="1"/>
<property name="Hinting" type="int" value="0"/>
<property name="HintStyle" type="string" value="hintnone"/>
<property name="RGBA" type="string" value="none"/>
</property>
<property name="Gtk" type="empty">
<property name="CanChangeAccels" type="bool" value="true"/>
<property name="ColorPalette" type="string" value="black:white:gray50:red:purple:blue:light blue:green:yellow:orange:lavender:brown:goldenrod4:dodger blue:pink:light green:gray10:gray30:gray75:gray90"/>
<property name="FontName" type="string" value="Cantarell 11"/>
<property name="MonospaceFontName" type="string" value="Monospace 11"/>
<property name="IconSizes" type="string" value=""/>
<property name="KeyThemeName" type="string" value=""/>
<property name="ToolbarStyle" type="string" value="icons"/>
<property name="ToolbarIconSize" type="int" value="3"/>
<property name="MenuImages" type="bool" value="true"/>
<property name="ButtonImages" type="bool" value="true"/>
<property name="MenuBarAccel" type="string" value="F10"/>
<property name="CursorThemeName" type="string" value="default"/>
<property name="CursorThemeSize" type="int" value="0"/>
<property name="DecorationLayout" type="string" value="menu:minimize,maximize,close"/>
<property name="IMPreeditStyle" type="string" value=""/>
<property name="IMStatusStyle" type="string" value=""/>
<property name="IMModule" type="string" value=""/>
</property>
<property name="Gdk" type="empty">
<property name="WindowScalingFactor" type="empty"/>
</property>
</channel>

View File

View File

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-desktop" version="1.0">
<property name="backdrop" type="empty">
<property name="screen0" type="empty">
<property name="monitorVNC-0" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace1" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/images/default.png"/>
</property>
<property name="workspace2" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/images/default.png"/>
</property>
<property name="workspace3" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/images/default.png"/>
</property>
</property>
</property>
</property>
<property name="desktop-icons" type="empty">
<property name="file-icons" type="empty">
<property name="show-filesystem" type="bool" value="false"/>
<property name="show-trash" type="bool" value="false"/>
<property name="show-removable" type="bool" value="false"/>
<property name="show-home" type="bool" value="false"/>
</property>
</property>
<property name="last" type="empty">
<property name="window-width" type="int" value="653"/>
<property name="window-height" type="int" value="558"/>
</property>
</channel>

View File

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-panel" version="1.0">
<property name="configver" type="int" value="2"/>
<property name="panels" type="array">
<value type="int" value="1"/>
<property name="dark-mode" type="bool" value="true"/>
<property name="panel-1" type="empty">
<property name="position" type="string" value="p=6;x=0;y=0"/>
<property name="length" type="uint" value="100"/>
<property name="position-locked" type="bool" value="true"/>
<property name="icon-size" type="uint" value="16"/>
<property name="size" type="uint" value="26"/>
<property name="plugin-ids" type="array">
<value type="int" value="1"/>
<value type="int" value="2"/>
<value type="int" value="3"/>
<value type="int" value="4"/>
</property>
</property>
</property>
<property name="plugins" type="empty">
<property name="plugin-1" type="string" value="applicationsmenu"/>
<property name="plugin-2" type="string" value="tasklist">
<property name="grouping" type="uint" value="1"/>
</property>
<property name="plugin-3" type="string" value="separator">
<property name="expand" type="bool" value="true"/>
<property name="style" type="uint" value="0"/>
</property>
<property name="plugin-4" type="string" value="pager"/>
<property name="plugin-9" type="string" value="power-manager-plugin"/>
</property>
</channel>

View File

View File

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-desktop" version="1.0">
<property name="backdrop" type="empty">
<property name="screen0" type="empty">
<property name="monitorVNC-0" type="empty">
<property name="workspace0" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/bg_default.png"/>
</property>
<property name="workspace1" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/images/default.png"/>
</property>
<property name="workspace2" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/images/default.png"/>
</property>
<property name="workspace3" type="empty">
<property name="color-style" type="int" value="0"/>
<property name="image-style" type="int" value="5"/>
<property name="last-image" type="string" value="/usr/share/backgrounds/images/default.png"/>
</property>
</property>
</property>
</property>
<property name="desktop-icons" type="empty">
<property name="file-icons" type="empty">
<property name="show-filesystem" type="bool" value="false"/>
<property name="show-trash" type="bool" value="false"/>
<property name="show-removable" type="bool" value="false"/>
<property name="show-home" type="bool" value="false"/>
</property>
</property>
<property name="last" type="empty">
<property name="window-width" type="int" value="653"/>
<property name="window-height" type="int" value="558"/>
</property>
</channel>

View File

@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<channel name="xfce4-panel" version="1.0">
<property name="configver" type="int" value="2"/>
<property name="panels" type="array">
<value type="int" value="1"/>
<property name="dark-mode" type="bool" value="true"/>
<property name="panel-1" type="empty">
<property name="position" type="string" value="p=6;x=0;y=0"/>
<property name="length" type="uint" value="100"/>
<property name="position-locked" type="bool" value="true"/>
<property name="icon-size" type="uint" value="16"/>
<property name="size" type="uint" value="26"/>
<property name="plugin-ids" type="array">
<value type="int" value="1"/>
<value type="int" value="2"/>
<value type="int" value="3"/>
<value type="int" value="4"/>
</property>
</property>
</property>
<property name="plugins" type="empty">
<property name="plugin-1" type="string" value="applicationsmenu"/>
<property name="plugin-2" type="string" value="tasklist">
<property name="grouping" type="uint" value="1"/>
</property>
<property name="plugin-3" type="string" value="separator">
<property name="expand" type="bool" value="true"/>
<property name="style" type="uint" value="0"/>
</property>
<property name="plugin-4" type="string" value="pager"/>
<property name="plugin-9" type="string" value="power-manager-plugin"/>
</property>
</channel>

View File

@ -10,19 +10,41 @@ if [[ "${DISTRO}" == @(centos|oracle7) ]] ; then
yum localinstall -y --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm yum localinstall -y --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm
yum install -y ffmpeg pulseaudio-utils yum install -y ffmpeg pulseaudio-utils
yum remove -y pulseaudio-module-bluetooth yum remove -y pulseaudio-module-bluetooth
DISTRO=centos
elif [ "${DISTRO}" == "oracle8" ]; then elif [ "${DISTRO}" == "oracle8" ]; then
dnf install -y curl git dnf install -y curl git
dnf config-manager --set-enabled ol8_codeready_builder dnf config-manager --set-enabled ol8_codeready_builder
dnf localinstall -y --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm dnf localinstall -y --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm
dnf install -y ffmpeg pulseaudio-utils dnf install -y ffmpeg pulseaudio-utils
dnf remove -y pulseaudio-module-bluetooth
dnf clean all dnf clean all
DISTRO=oracle elif [ "${DISTRO}" == "oracle9" ]; then
dnf install -y curl git
dnf config-manager --set-enabled ol9_codeready_builder
dnf localinstall -y --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-9.noarch.rpm
dnf install -y --allowerasing ffmpeg pulseaudio-utils pulseaudio
dnf clean all
elif [[ "${DISTRO}" == @(rockylinux9|almalinux9) ]]; then
dnf localinstall -y --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-9.noarch.rpm
dnf install -y --allowerasing ffmpeg pulseaudio-utils pulseaudio
dnf clean all
elif [[ "${DISTRO}" == @(rockylinux8|almalinux8) ]]; then
dnf localinstall -y --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm
dnf install -y --allowerasing ffmpeg pulseaudio-utils pulseaudio
dnf clean all
elif [ "${DISTRO}" == "fedora37" ]; then
dnf install -y curl git
dnf localinstall -y --nogpgcheck https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-37.noarch.rpm
dnf install -y --allowerasing ffmpeg pulseaudio pulseaudio-utils
dnf clean all
elif [ "${DISTRO}" == "opensuse" ]; then elif [ "${DISTRO}" == "opensuse" ]; then
zypper install -ny curl git zypper install -ny curl git
zypper install -yn ffmpeg pulseaudio-utils zypper install -yn ffmpeg pulseaudio-utils
zypper clean --all zypper clean --all
elif [ "${DISTRO}" == "alpine" ]; then
apk add --no-cache \
ffmpeg \
git \
pulseaudio \
pulseaudio-utils
else else
apt-get update apt-get update
apt-get install -y curl git ffmpeg apt-get install -y curl git ffmpeg
@ -32,5 +54,5 @@ mkdir -p /var/run/pulse
cd $STARTUPDIR cd $STARTUPDIR
mkdir jsmpeg mkdir jsmpeg
wget -qO- https://kasmweb-build-artifacts.s3.amazonaws.com/kasm_websocket_relay/f173f72a9faa6239e43f2efcb48aabe8a984d443/kasm_websocket_relay_${DISTRO/kali/ubuntu}_${ARCH}_develop.f173f7.tar.gz | tar xz --strip 1 -C $STARTUPDIR/jsmpeg wget -qO- https://kasmweb-build-artifacts.s3.amazonaws.com/kasm_websocket_relay/f7efb82dc59a02d1b99e2e2b3c6d127dc548ba72/kasm_websocket_relay_${ARCH}_develop.f7efb8.tar.gz | tar xz --strip 1 -C $STARTUPDIR/jsmpeg
chmod +x $STARTUPDIR/jsmpeg/kasm_audio_out-linux chmod +x $STARTUPDIR/jsmpeg/kasm_audio_out-linux

View File

@ -2,12 +2,6 @@
### every exit != 0 fails the script ### every exit != 0 fails the script
set -e set -e
if [ "${DISTRO}" == "oracle7" ]; then
DISTRO=centos
elif [ "${DISTRO}" == "oracle8" ]; then
DISTRO=oracle
fi
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g') ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
mkdir -p $STARTUPDIR/audio_input mkdir -p $STARTUPDIR/audio_input
wget -qO- https://kasmweb-build-artifacts.s3.amazonaws.com/kasm_audio_input_server/2c031a71a9ed0bace8ea2ad11238535820c45180/kasm_audio_input_server_${DISTRO/kali/ubuntu}_${ARCH}_develop.2c031a.tar.gz | tar -xvz -C $STARTUPDIR/audio_input/ wget -qO- https://kasmweb-build-artifacts.s3.amazonaws.com/kasm_audio_input_server/58c23638d7bc7f9c90799d76a957cb02bfee153e/kasm_audio_input_server_${ARCH}_develop.58c236.tar.gz | tar -xvz -C $STARTUPDIR/audio_input/

View File

@ -1,14 +1,25 @@
#!/usr/bin/env bash #!/usr/bin/env bash
set -xe set -xe
# Remnux installs firefox by default. We need to update this install to utilze the system's certificate store
# in order for web filtering to work
apt-get install -y p11-kit-modules # Install remnux base
apt-get update
apt-get install -y wget gnupg git
if $(grep -q Focal /etc/os-release); then
wget -nv -O - https://repo.saltproject.io/py3/ubuntu/20.04/amd64/latest/salt-archive-keyring.gpg | apt-key add -
echo deb [arch=amd64] https://repo.saltproject.io/py3/ubuntu/20.04/amd64/3004 focal main > /etc/apt/sources.list.d/saltstack.list
elif $(grep -q Bionic /etc/os-release); then
wget -nv -O - https://repo.saltproject.io/py3/ubuntu/18.04/amd64/latest/salt-archive-keyring.gpg | apt-key add -
echo deb [arch=amd64] https://repo.saltproject.io/py3/ubuntu/18.04/amd64/3004 bionic main > /etc/apt/sources.list.d/saltstack.list
fi
apt-get update
apt-get install -y salt-common
git clone https://github.com/REMnux/salt-states.git /srv/salt
rm /usr/lib/firefox/libnssckbi.so # Cleanup
ln /usr/lib/x86_64-linux-gnu/pkcs11/p11-kit-trust.so /usr/lib/firefox/libnssckbi.so apt-get autoclean
rm -rf \
/var/lib/apt/lists/* \
/var/tmp/* \
/tmp/*
# Remnux includes bluetooth drivers which try to autoload causing pluse audio to fail
sed -i "s/module-bluetooth-discover.so/module-bluetooth-discover.so.ignore/g" /etc/pulse/default.pa

View File

@ -5,12 +5,22 @@ set -e
echo "Installing ttf-wqy-zenhei" echo "Installing ttf-wqy-zenhei"
if [[ "${DISTRO}" == @(centos|oracle7) ]]; then if [[ "${DISTRO}" == @(centos|oracle7) ]]; then
yum install -y wqy-zenhei-fonts yum install -y wqy-zenhei-fonts
elif [ "${DISTRO}" == "oracle8" ]; then elif [[ "${DISTRO}" == @(fedora37|oracle8|oracle9|rockylinux9|rockylinux8|almalinux9|almalinux8) ]]; then
dnf install -y google-noto-sans-fonts dnf install -y google-noto-sans-fonts
dnf clean all dnf clean all
elif [ "${DISTRO}" == "opensuse" ]; then elif [ "${DISTRO}" == "opensuse" ]; then
zypper install -ny wqy-zenhei-fonts zypper install -ny wqy-zenhei-fonts
zypper clean --all zypper clean --all
elif [ "${DISTRO}" == "alpine" ]; then
apk add --no-cache \
font-noto \
font-noto-cjk
else else
apt-get update
apt-get install -y ttf-wqy-zenhei apt-get install -y ttf-wqy-zenhei
apt-get autoclean
rm -rf \
/var/lib/apt/lists/* \
/var/tmp/* \
/tmp/*
fi fi

View File

@ -2,23 +2,17 @@
### every exit != 0 fails the script ### every exit != 0 fails the script
set -e set -e
if [ "${DISTRO}" == "oracle7" ]; then COMMIT_ID="717ef2e2e502983d06372d77939d3fc654dd8306"
DISTRO=centos
elif [ "${DISTRO}" == "oracle8" ]; then
DISTRO=oracle
fi
COMMIT_ID="151399e32c159b590a31a3d20b883af7d9104643"
BRANCH="develop" BRANCH="develop"
COMMIT_ID_SHORT=$(echo "${COMMIT_ID}" | cut -c1-6) COMMIT_ID_SHORT=$(echo "${COMMIT_ID}" | cut -c1-6)
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g') ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
mkdir -p $STARTUPDIR/gamepad mkdir -p $STARTUPDIR/gamepad
wget -qO- https://kasmweb-build-artifacts.s3.amazonaws.com/kasm_gamepad_server/${COMMIT_ID}/kasm_gamepad_server_${DISTRO/kali/ubuntu}_${ARCH}_${BRANCH}.${COMMIT_ID_SHORT}.tar.gz | tar -xvz -C $STARTUPDIR/gamepad/ wget -qO- https://kasmweb-build-artifacts.s3.amazonaws.com/kasm_gamepad_server/${COMMIT_ID}/kasm_gamepad_server_${ARCH}_${BRANCH}.${COMMIT_ID_SHORT}.tar.gz | tar -xvz -C $STARTUPDIR/gamepad/
SCRIPT_PATH="$( cd "$(dirname "$0")" ; pwd -P )" SCRIPT_PATH="$( cd "$(dirname "$0")" ; pwd -P )"
SCRIPT_PATH="$(realpath $SCRIPT_PATH)" SCRIPT_PATH="$(realpath $SCRIPT_PATH)"
mkdir -p /usr/share/extra/icons/ mkdir -p /usr/share/extra/icons/
cp ${SCRIPT_PATH}/gamepad.svg /usr/share/extra/icons/gamepad.svg cp ${SCRIPT_PATH}/gamepad.svg /usr/share/extra/icons/gamepad.svg

Some files were not shown because too many files have changed in this diff Show More