From 95df6b69a136a2200d6d6a5594b265c1b75928ae Mon Sep 17 00:00:00 2001 From: neher-igel Date: Wed, 20 Dec 2023 15:52:16 -0700 Subject: [PATCH] AWS (20 December) --- CP_Packages/Apps/Amazon_WorkSpaces.zip | Bin 7453 -> 0 bytes CP_Source/Apps/Amazon_WorkSpaces/README.md | 7 +- .../build/awsws-cp-init-script.sh | 6 + .../Amazon_WorkSpaces/build/build-aws-cp.sh | 114 ++++++++++++++++++ .../build/build-awsws-cp_OS1108.sh | 67 ++++++++++ ...s-profile.xml => awsws-profile_OS1108.xml} | 2 +- .../igel/awsws-profile_OS1109.xml | 64 ++++++++++ .../Apps/Amazon_WorkSpaces/target/awsws.inf | 2 +- 8 files changed, 257 insertions(+), 5 deletions(-) delete mode 100644 CP_Packages/Apps/Amazon_WorkSpaces.zip create mode 100755 CP_Source/Apps/Amazon_WorkSpaces/build/build-aws-cp.sh create mode 100755 CP_Source/Apps/Amazon_WorkSpaces/build/build-awsws-cp_OS1108.sh rename CP_Source/Apps/Amazon_WorkSpaces/igel/{awsws-profile.xml => awsws-profile_OS1108.xml} (99%) create mode 100755 CP_Source/Apps/Amazon_WorkSpaces/igel/awsws-profile_OS1109.xml diff --git a/CP_Packages/Apps/Amazon_WorkSpaces.zip b/CP_Packages/Apps/Amazon_WorkSpaces.zip deleted file mode 100644 index b0f21e4aa8e17b9b8662e0a1c9d223a629d6fcd9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7453 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 tLabc>sp$G^J6-n9i=A=
[Install Linux client notes](https://clients.amazonworkspaces.com/linux-install) | | Script Name | [awsws-cp-init-script.sh](awsws-cp-init-script.sh) | | Packing Notes | See build script for details | -| Package automation | [build-awsws-cp.sh](build/build-awsws-cp.sh) | +| Package automation OS 11.08| [build-awsws-cp_OS1108.sh](build/build-awsws-cp_OS1108.sh) | +| Package automation OS 11.09 12.3.x | [build-awsws-cp.sh](build/build-awsws-cp.sh) | ----- -**Note:** IGEL OS has Amazon WorkSpaces client built-in. Use this CP builder to test the latest version. Check the release notes for the IGEL OS version -- [LINK](https://igel-community.github.io/IGEL-Docs-v02/Docs/HOWTO-Microsoft-Teams-Optimization) +**Note:** IGEL OS 11 has Amazon WorkSpaces client built-in. Use this CP builder to test the latest version. Check the release notes for the IGEL OS version -- [LINK](https://igel-community.github.io/IGEL-Docs-v02/Docs/HOWTO-Microsoft-Teams-Optimization) diff --git a/CP_Source/Apps/Amazon_WorkSpaces/build/awsws-cp-init-script.sh b/CP_Source/Apps/Amazon_WorkSpaces/build/awsws-cp-init-script.sh index 63c8b14e..aaea8e67 100755 --- a/CP_Source/Apps/Amazon_WorkSpaces/build/awsws-cp-init-script.sh +++ b/CP_Source/Apps/Amazon_WorkSpaces/build/awsws-cp-init-script.sh @@ -10,6 +10,9 @@ MP=$(get custom_partition.mountpoint) # custom partition path CP="${MP}/awsws" +# user directories +AWS_USER_CONFIG="/userhome/.config/WorkSpaces" + # output to systemlog with ID amd tag LOGGER="logger -it ${ACTION}" @@ -32,6 +35,9 @@ init) fi done + # basic persistency + chown -R user:users "${CP}/userhome" + # after CP installation run wm_postsetup to activate mimetypes if [ -d /run/user/777 ]; then wm_postsetup diff --git a/CP_Source/Apps/Amazon_WorkSpaces/build/build-aws-cp.sh b/CP_Source/Apps/Amazon_WorkSpaces/build/build-aws-cp.sh new file mode 100755 index 00000000..222e3f20 --- /dev/null +++ b/CP_Source/Apps/Amazon_WorkSpaces/build/build-aws-cp.sh @@ -0,0 +1,114 @@ +#!/bin/bash +#set -x +#trap read debug + +# Creating an IGELOS CP +## Development machine Ubuntu (OS11.09+ = 22.04; OS12 = 20.04) +CP="aws" +ZIP_LOC="https://github.com/IGEL-Community/IGEL-Custom-Partitions/raw/master/CP_Packages/Apps" +ZIP_FILE="Amazon_WorkSpaces" +FIX_MIME="TRUE" +CLEAN="FALSE" +OS11_CLEAN="11.09.150" +OS12_CLEAN="12.2.2" +USERHOME_FOLDERS="TRUE" +USERHOME_FOLDERS_DIRS="custom/aws/userhome/.config/WorkSpaces" +APPARMOR="FALSE" +#https://d3nt0h4h6pmmc4.cloudfront.net/new_workspacesclient_jammy_amd64.deb +GETVERSION_FILE_OS11="new_workspacesclient_jammy_amd64.deb" +#https://d3nt0h4h6pmmc4.cloudfront.net/new_workspacesclient_focal_amd64.deb +GETVERSION_FILE_OS12="new_workspacesclient_focal_amd64.deb" +MISSING_LIBS_OS11="" +MISSING_LIBS_OS12="" + +VERSION_ID=$(grep "^VERSION_ID" /etc/os-release | cut -d "\"" -f 2) + +if [ "${VERSION_ID}" = "22.04" ]; then + MISSING_LIBS="${MISSING_LIBS_OS11}" + IGELOS_ID="OS11" + GETVERSION_FILE=${GETVERSION_FILE_OS11} +elif [ "${VERSION_ID}" = "20.04" ]; then + MISSING_LIBS="${MISSING_LIBS_OS12}" + IGELOS_ID="OS12" + GETVERSION_FILE=${GETVERSION_FILE_OS12} +else + echo "Not a valid Ubuntu OS release. OS11.09+ needs 22.04 (jammy) and OS12 needs 20.04 (focal)." + exit 1 +fi + +mkdir build_tar +cd build_tar + +wget ${GETVERSION_FILE} + +for lib in $MISSING_LIBS; do + apt-get download $lib +done + +mkdir -p custom/${CP} + +find . -name "*.deb" | while read LINE +do + dpkg -x "${LINE}" custom/${CP} +done + +if [ "${FIX_MIME}" = "TRUE" ]; then + mv custom/${CP}/usr/share/applications/ custom/${CP}/usr/share/applications.mime +fi + +if [ "${USERHOME_FOLDERS}" = "TRUE" ]; then + for folder in $USERHOME_FOLDERS_DIRS; do + mkdir -p $folder + done +fi + +if [ "${CLEAN}" = "TRUE" ]; then + echo "+++++++======= STARTING CLEAN of USR =======+++++++" + wget https://raw.githubusercontent.com/IGEL-Community/IGEL-Custom-Partitions/master/utils/igelos_usr/clean_cp_usr_lib.sh + chmod a+x clean_cp_usr_lib.sh + wget https://raw.githubusercontent.com/IGEL-Community/IGEL-Custom-Partitions/master/utils/igelos_usr/clean_cp_usr_share.sh + chmod a+x clean_cp_usr_share.sh + if [ "${IGELOS_ID}" = "OS11" ]; then + ./clean_cp_usr_lib.sh ${OS11_CLEAN}_usr_lib.txt custom/${CP}/usr/lib + ./clean_cp_usr_share.sh ${OS11_CLEAN}_usr_share.txt custom/${CP}/usr/share + else + ./clean_cp_usr_lib.sh ${OS12_CLEAN}_usr_lib.txt custom/${CP}/usr/lib + ./clean_cp_usr_share.sh ${OS12_CLEAN}_usr_share.txt custom/${CP}/usr/share + fi + echo "+++++++======= DONE CLEAN of USR =======+++++++" +fi + +wget ${ZIP_LOC}/${ZIP_FILE}.zip + +unzip ${ZIP_FILE}.zip -d custom + +if [ "${APPARMOR}" = "TRUE" ]; then + mkdir -p custom/${CP}/config/bin + mkdir -p custom/${CP}/lib/systemd/system + mv custom/target/build/${CP}_cp_apparmor_reload custom/${CP}/config/bin + mv custom/target/build/igel-${CP}-cp-apparmor-reload.service custom/${CP}/lib/systemd/system/ +fi +mv custom/target/build/${CP}-cp-init-script.sh custom + +cd custom + +# edit inf file for version number +mkdir getversion +cd getversion +ar -x ../../${GETVERSION_FILE} +tar xf control.tar.* ./control +VERSION=$(grep Version control | cut -d " " -f 2) +#echo "Version is: " ${VERSION} +cd .. +sed -i "/^version=/c version=\"${VERSION}\"" target/${CP}.inf +#echo "${CP}.inf file is:" +#cat target/${CP}.inf + +# new build process into zip file +tar cvjf target/${CP}.tar.bz2 ${CP} ${CP}-cp-init-script.sh +zip -g ../${ZIP_FILE}.zip target/${CP}.tar.bz2 target/${CP}.inf +zip -d ../${ZIP_FILE}.zip "target/build/*" "target/igel/*" "target/target/*" +mv ../${ZIP_FILE}.zip ../../${ZIP_FILE}-${VERSION}_${IGELOS_ID}_igel01.zip + +cd ../.. +rm -rf build_tar diff --git a/CP_Source/Apps/Amazon_WorkSpaces/build/build-awsws-cp_OS1108.sh b/CP_Source/Apps/Amazon_WorkSpaces/build/build-awsws-cp_OS1108.sh new file mode 100755 index 00000000..45af6cbd --- /dev/null +++ b/CP_Source/Apps/Amazon_WorkSpaces/build/build-awsws-cp_OS1108.sh @@ -0,0 +1,67 @@ +#!/bin/bash +#set -x +#trap read debug + +# Creating an IGELOS CP for AWS WorkSpaces +## Development machine (Ubuntu 18.04) +sudo apt install curl -y +sudo apt install unzip -y +sudo curl https://workspaces-client-linux-public-key.s3-us-west-2.amazonaws.com/ADB332E7.asc | sudo apt-key add - +sudo sh -c 'echo "deb [arch=amd64] https://d3nt0h4h6pmmc4.cloudfront.net/ubuntu bionic main" > /etc/apt/sources.list.d/amazon-workspaces-clients.list' +sudo apt-get update + +MISSING_LIBS="workspacesclient i965-va-driver libgraphicsmagick++-q16-12 libgraphicsmagick-q16-3 libhiredis0.13 libva2 mesa-va-drivers va-driver-all" + +mkdir build_tar +cd build_tar + +for lib in $MISSING_LIBS; do + apt-get download $lib +done + +mkdir -p custom/awsws + +find . -name "*.deb" | while read LINE +do + dpkg -x "${LINE}" custom/awsws +done + +mv custom/awsws/usr/share/applications/ custom/awsws/usr/share/applications.mime +#mkdir -p custom/awsws/userhome/.workspaces + +echo "+++++++======= STARTING CLEAN of USR =======+++++++" +wget https://raw.githubusercontent.com/IGEL-Community/IGEL-Custom-Partitions/master/utils/igelos_usr/clean_cp_usr_lib.sh +chmod a+x clean_cp_usr_lib.sh +wget https://raw.githubusercontent.com/IGEL-Community/IGEL-Custom-Partitions/master/utils/igelos_usr/clean_cp_usr_share.sh +chmod a+x clean_cp_usr_share.sh +./clean_cp_usr_lib.sh 11.07.100_usr_lib.txt custom/awsws/usr/lib +./clean_cp_usr_share.sh 11.07.100_usr_share.txt custom/awsws/usr/share +echo "+++++++======= DONE CLEAN of USR =======+++++++" + +wget https://github.com/IGEL-Community/IGEL-Custom-Partitions/raw/master/CP_Packages/Apps/Amazon_WorkSpaces.zip + +unzip Amazon_WorkSpaces.zip -d custom +mv custom/target/build/awsws-cp-init-script.sh custom + +cd custom + +# edit inf file for version number +mkdir getversion +cd getversion +ar -x ../../workspacesclient*.deb +tar xf control.tar.* +VERSION=$(grep Version control | cut -d " " -f 2) +#echo "Version is: " ${VERSION} +cd .. +sed -i "/^version=/c version=\"${VERSION}\"" target/awsws.inf +#echo "awsws.inf file is:" +#cat target/awsws.inf + +# new build process into zip file +tar cvjf target/awsws.tar.bz2 awsws awsws-cp-init-script.sh +zip -g ../Amazon_WorkSpaces.zip target/awsws.tar.bz2 target/awsws.inf +zip -d ../Amazon_WorkSpaces.zip "target/build/*" "target/igel/*" "target/target/*" +mv ../Amazon_WorkSpaces.zip ../../Amazon_WorkSpaces-${VERSION}_igel01.zip + +cd ../.. +rm -rf build_tar diff --git a/CP_Source/Apps/Amazon_WorkSpaces/igel/awsws-profile.xml b/CP_Source/Apps/Amazon_WorkSpaces/igel/awsws-profile_OS1108.xml similarity index 99% rename from CP_Source/Apps/Amazon_WorkSpaces/igel/awsws-profile.xml rename to CP_Source/Apps/Amazon_WorkSpaces/igel/awsws-profile_OS1108.xml index 490ecba9..3e9a1ef0 100755 --- a/CP_Source/Apps/Amazon_WorkSpaces/igel/awsws-profile.xml +++ b/CP_Source/Apps/Amazon_WorkSpaces/igel/awsws-profile_OS1108.xml @@ -5,7 +5,7 @@ Amazon WorkSpaces CP IGEL OS 11 - 11.07.100.01 + 11.08.440.01 Amazon WorkSpaces false diff --git a/CP_Source/Apps/Amazon_WorkSpaces/igel/awsws-profile_OS1109.xml b/CP_Source/Apps/Amazon_WorkSpaces/igel/awsws-profile_OS1109.xml new file mode 100755 index 00000000..8c7b7b4e --- /dev/null +++ b/CP_Source/Apps/Amazon_WorkSpaces/igel/awsws-profile_OS1109.xml @@ -0,0 +1,64 @@ + + + + 10688 + Amazon WorkSpaces CP + + IGEL OS 11 + 11.09.160.01 + + Amazon WorkSpaces + false + false + true + + + true + false + + + 200M + false + + + + + [USERNAME] + https://[UMSSERVER]:8443/ums_filetransfer/awsws.inf + + /custom/awsws-cp-init-script.sh init + /custom/awsws-cp-init-script.sh stop + + true + + + 0 + 0 + true + false + false + true + true + false + false + false + none + false + 0 + Amazon WorkSpaces + + /custom/awsws/usr/share/icons/hicolor/256x256/apps/com.amazon.workspacesclient.png + None + + + true + /custom/awsws/usr/bin/workspacesclient + false + false + false + + true + + + + diff --git a/CP_Source/Apps/Amazon_WorkSpaces/target/awsws.inf b/CP_Source/Apps/Amazon_WorkSpaces/target/awsws.inf index bdda45d7..d8d67e55 100755 --- a/CP_Source/Apps/Amazon_WorkSpaces/target/awsws.inf +++ b/CP_Source/Apps/Amazon_WorkSpaces/target/awsws.inf @@ -4,4 +4,4 @@ file="awsws.tar.bz2" version="X.X.X" size="200M" name="awsws" -minfw="11.07.100" +minfw="11.08.440"