initial Release

This commit is contained in:
2023-01-11 12:44:57 +03:00
parent 941e0ee50b
commit 5282cbff1b
23 changed files with 937 additions and 0 deletions

63
Dockerfile Normal file
View File

@@ -0,0 +1,63 @@
FROM kasmweb/core-ubuntu-jammy:1.12.0
USER root
ENV HOME /home/kasm-default-profile
ENV STARTUPDIR /dockerstartup
ENV INST_SCRIPTS $STARTUPDIR/install
ENV CA_STORE /usr/local/share/ca-certificates/mozilla
ENV ICAROOT /opt/Citrix/ICAClient
WORKDIR $HOME
######### Customize Container Here ###########
# Install Firefox
COPY ./src/ubuntu/install/firefox/ $INST_SCRIPTS/firefox/
COPY ./src/ubuntu/install/firefox/firefox.desktop $HOME/Desktop/
RUN bash $INST_SCRIPTS/firefox/install_firefox.sh && rm -rf $INST_SCRIPTS/firefox/
# Update the desktop environment to be optimized for a single application
RUN cp $HOME/.config/xfce4/xfconf/single-application-xfce-perchannel-xml/* $HOME/.config/xfce4/xfconf/xfce-perchannel-xml/
RUN cp /usr/share/extra/backgrounds/bg_kasm.png /usr/share/extra/backgrounds/bg_default.png
RUN apt-get remove -y xfce4-panel
COPY ./src/ubuntu/install/firefox/custom_startup.sh $STARTUPDIR/custom_startup.sh
RUN chmod +x $STARTUPDIR/custom_startup.sh
# Install Custom Certificate Authority
COPY ./src/ubuntu/install/certificates/*.pem $CA_STORE/
WORKDIR $CA_STORE
RUN for file in *.pem; do mv -- "$file" "${file%.pem}.crt"; done
RUN chmod 644 $CA_STORE/*
RUN update-ca-certificates
# Install Citrix Workspace
RUN apt install libidn12 libgtk2.0-0 -y
COPY ./src/ubuntu/install/pkgs/ $INST_SCRIPTS/citrix/
RUN dpkg -i $INST_SCRIPTS/citrix/*amd64.deb && rm -rf $INST_SCRIPTS/citrix/
COPY ./src/ubuntu/install/certificates/*.pem $ICAROOT/keystore/cacerts/
RUN chown 1000:0 $ICAROOT/keystore/cacerts/*
RUN $ICAROOT/util/ctx_rehash
ENV KASM_RESTRICTED_FILE_CHOOSER=1
COPY ./src/ubuntu/install/gtk/ $INST_SCRIPTS/gtk/
RUN bash $INST_SCRIPTS/gtk/install_restricted_file_chooser.sh
######### End Customizations ###########
RUN chown 1000:0 $HOME
RUN $STARTUPDIR/set_user_permission.sh $HOME
ENV HOME /home/kasm-user
WORKDIR $HOME
RUN mkdir -p $HOME
RUN mkdir -p $HOME/.ICAClient/
RUN mkdir -p $HOME/.mozilla/firefox/kasm/
RUN touch $HOME/.ICAClient/.eula_accepted
COPY ./src/ubuntu/install/citrix/* $HOME/.mozilla/firefox/kasm/
RUN chown -R 1000:0 $HOME
USER 1000

View File

@@ -0,0 +1,33 @@
#!/usr/bin/env bash
set -ex
apt-get update
apt-get install -y libnss3-tools
CERT_FILE="${INST_SCRIPTS}/certificates/ca.crt"
CERT_NAME="Custom Root CA"
# Install the cert into the system cert store
cp ${CERT_FILE} /usr/local/share/ca-certificates/
update-ca-certificates
# Create an empty cert9.db. This will be used by applications like Chrome
if [ ! -d $HOME/.pki/nssdb/ ]; then
mkdir -p $HOME/.pki/nssdb/
certutil -N -d sql:$HOME/.pki/nssdb/ --empty-password
chown 1000:1000 $HOME/.pki/nssdb/
fi
for file in ${INST_SCRIPTS}/certificates/*.cer;
do echo "Processing $f file...";
NAME=`basename -- ${file}`
${file/.ru/}
done
# Update all cert9.db instances with the CA
for certDB in $(find / -name "cert9.db")
do
certdir=$(dirname ${certDB});
echo "Updating $certdir"
certutil -A -n "${CERT_NAME}" -t "TCu,," -i ${CERT_FILE} -d sql:${certdir}
done

View File

@@ -0,0 +1,36 @@
-----BEGIN CERTIFICATE-----
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
-----END CERTIFICATE-----

View File

@@ -0,0 +1,33 @@
-----BEGIN CERTIFICATE-----
MIIFrjCCA5agAwIBAgIQTYPRCf0BpZFDQVNhYNBFdjANBgkqhkiG9w0BAQUFADBX
MRIwEAYKCZImiZPyLGQBGRYCcnUxFTATBgoJkiaJk/IsZAEZFgV2dGIyNDESMBAG
CgmSJomT8ixkARkWAnJhMRYwFAYDVQQDEw1WVEIyNCBSb290IENBMB4XDTEwMDIx
NzEwMDcxMVoXDTI5MDQxNTEzMDEzOVowVzESMBAGCgmSJomT8ixkARkWAnJ1MRUw
EwYKCZImiZPyLGQBGRYFdnRiMjQxEjAQBgoJkiaJk/IsZAEZFgJyYTEWMBQGA1UE
AxMNVlRCMjQgUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
AMCOQd0sidj1AbB+PW1WLXMX++U2Pkc4fDtTvngBw7E2QYtF7rydTGJR55GlIFRl
rSeSLEUZcW+obyPnuweIq+ha3+0Bn4wggR5YZUpbsTGUH1rcRgiDPtdpXPPB3G/9
IW7ae1o06s6ccH5vZZ3g39vCO1syib65WeMgRXXBI7jMyU78yU0uLcOM4OpjV4UW
+v0E6LEFMkfMcWyDztuc/oock0Krs0N3F+ay1Pr33GRkLGbpHKZYE8kj4dfEvElN
vGha8yDmA7WZFLDwudYtlbtRPYCKOUwW/KudCU0PmRdPTYhHZ22VWNcXyz1uqOo1
OwzjFkouozz37W+SaqJO1yP5UpACLBpNeHzT2d29WWG6EwmixYaDrVcB3OA1R7/H
3Jbhrwn2JZMgjI6VzRwTeY1zC4Rjag5QujUtYcEC2J7l2iFelPcELr5um0umNv7U
4v+W0wgecEZrgAFGlH5XnDsU6B1kPFwlwUc1vU9SrRhml8RfMgIQ5SsT873Lz9Px
wX+aM1RqPpPFZpqKcakfzBygJjNBnEhuNW4EnBbZxe601hyH/EY1eg2AchhMymGO
i6ibXXhgWvjR04ULX6y+0vA8b/WTGfV5S7byUV2OmD4WnLmKz63MEGaJHkUIpJsA
fyfIiT42XTTyIMrYEKQEUqvS379P2sXK0jNLuAKyl7i7AgMBAAGjdjB0MAsGA1Ud
DwQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSFa1t3JsUFuHtSSCay
wbrNLQ6PPjAQBgkrBgEEAYI3FQEEAwIBATAjBgkrBgEEAYI3FQIEFgQUzCcHszTe
+uCyVaRT62P514qMz6AwDQYJKoZIhvcNAQEFBQADggIBAGpLAN249c0bcpTY+tfG
ywn/7J1G8oj7TdlqThbdt4ZhX/aw7u92xnCyXahzgx3h7hljl6tUn8TOQt++WnVj
o3wYum2DeAwacglMuEQy2kNcu02vEsmmyytR2/ZQ6vbjx00hqYakcZPfcQGTNjyg
GfPHynVNhZs+meau9ztjy7lO1Hp314ATHwBILQo8j/AY8OvgNB6Gerc34f9TERnj
VyO6NVLigid3CLBi2VrnaGGkUp4U4PC1TZE5Wq8dvQxAGKPflqIVo7h/4MCcX1yi
BYXfhNqBlzUfJP4pTOJwhyKlvGDDOW13TA1Tx1jynVRzi5GMiiMFaWHVWqb/Iqv7
OzDGwvYnmQ2CZbS9R48g9pq3BMAIaP9mxf/mUx1HXSom/mCJAymVO/mAhZyPadFU
xOEsU4qgkSNLFJRUfGiSj8me1rngajCCLG3SoLyqvVJgHHy0zI4Td20LXr0QWPj5
zzwUEJCFsZttk4s6H53kYG6XBdACLZ+SLp5DTsz79IUcM495/i0eIG8zyfuerj7c
HleVOWwvBLlVuLgmsQIiUMejWwavIpO7y54timEEqY318DkJVoxewKtJPa1x+trs
JzErgm//B6sDkkjFcp9jMyCFpRdznLt9woZ75Nd1uD57aAz8FCwaKDgmX2GgPHOf
6m4/Y7jlfU9DpsQU8lh0yt45
-----END CERTIFICATE-----

View File

@@ -0,0 +1,35 @@
-----BEGIN CERTIFICATE-----
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
-----END CERTIFICATE-----

View File

@@ -0,0 +1,35 @@
-----BEGIN CERTIFICATE-----
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
-----END CERTIFICATE-----

View File

@@ -0,0 +1,35 @@
-----BEGIN CERTIFICATE-----
MIIGJzCCBA+gAwIBAgITFgAAAAOaIf4JMnkfMwAAAAAAAzANBgkqhkiG9w0BAQsF
ADA3MQswCQYDVQQGEwJSVTEMMAoGA1UEChMDVlRCMRowGAYDVQQDExFWVEIgR3Jv
dXAgUm9vdCBDQTAeFw0xNzEyMTExMTQxNTNaFw0yMzEyMTExMTUxNTNaMDQxCzAJ
BgNVBAYTAlJVMQwwCgYDVQQKEwNWVEIxFzAVBgNVBAMTDlZUQiBHcm91cCBDQSAz
MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAywVzKslsXMNHVZrrz4c4
Pxji1mBZ3SlgEnTAbh/dtAsNIaAGWaSYAdem3Rt1HtiuniHl1Z9AsEbNRJs0SZGM
AyVnIK9fboKpcW6jodvC+O+YC1F2K46bqJqY4iqhH+JKqBss4yWRpH4VPl2EVOdQ
1k2U1q14XU1K4NPV5/2TCjP1ZPafLNhb5Yg1WWcjyKv67Vp9l7sx5vPkZb/L00kI
mtNhAvuEhzy33NVV9qgT95LrTij0IQm7xu0/7dG2g/3TFHEZVK6AQOd40ztu4Dq4
UAZ8xob0L8b7yH3HxMnurCbWgqXzTODL7zoHFjUhPLhP5tg4GxpYCOmbmg/3Si7G
XEPU/m8iyog+kfLIv5F8r/HZMcccrza2MXtoIi6c8/+y3aCfpjy48iutQPzTOmP9
zsRTUQaiOpXPYdghEVsuIMyJCy2sPyiFvCcm29tSe4AkMXULRFrZwZivKwOunyXU
rlr12owjGHWKjkk+j4YlOfLdevlcOqu0pJaidkUd5VAD2dItKhg4EtPXATvg9e80
vOY1ai+DE1wLxdzLCE+EK6jrvsfrH5v3NYAsI4t9a3AHsKaVaEdge2mUaleLRycG
KwiFEN5oC3I3C2sqHcYotKMD6QPrJMVmuw1x1cbpUVaalvcYxD96xZ3gvg1ZlsFd
ayizM6i1uPubENSEgcpPTrMCAwEAAaOCAS0wggEpMBAGCSsGAQQBgjcVAQQDAgEA
MB0GA1UdDgQWBBRdEs5hZwTg6n91jDq4ik6sRTEcQTAZBgkrBgEEAYI3FAIEDB4K
AFMAdQBiAEMAQTALBgNVHQ8EBAMCAYYwEgYDVR0TAQH/BAgwBgEB/wIBADAfBgNV
HSMEGDAWgBQkUG+24ozQAnRl4bYGuECCRKNFeTBGBgNVHR8EPzA9MDugOaA3hjVo
dHRwOi8vcGtpLnZ0Yi5ydS9wa2kvY2RwL1ZUQiUyMEdyb3VwJTIwUm9vdCUyMENB
LmNybDBRBggrBgEFBQcBAQRFMEMwQQYIKwYBBQUHMAKGNWh0dHA6Ly9wa2kudnRi
LnJ1L3BraS9haWEvVlRCJTIwR3JvdXAlMjBSb290JTIwQ0EuY3J0MA0GCSqGSIb3
DQEBCwUAA4ICAQCPVwdP/VU5LUOsra1ntO6PlNdIBXsLQrzDolvEnCYk5pISH8cu
IIc5qAcebtE2cHYrx+zXVRVeGgk6JSWB7HMBR648iHLhaPxGXI5GQ0hFiGYgjWto
JPVNxMHQH6OrWbfUbf6MEsnCktAOABcJW9d8gMK2/rgBXZSCQRbvV1I2ayRtXzLt
jYfDcvxJUBj4lZPBF2yon3BsfiEO3gnlHnAA72kchAv5OpbK3w9iF8oXJGo1+7S7
QG8ZVn4iO1rp5QkebNL83Dg7+ENwy2s/xh8yIP+FVlPCEzwIKIzcKsZ9J6cTWSTN
QYI2UFmFf26NfuFGbx3oiQN7yla9QKFo0t7a9i7nTRaeQI+OIcEUwdibJCNAGPRR
JOPRQHKkyrt3CUi4plas8Gb+hJMvzI+rFJMCfNZnwNXJSk/BnXljYGrQ9WiYkwQ0
uX/Y0id3VTi//dhzr+VyvyxRR9S/Owb5Vxrr7zqnVuqSI/5zuao9kkVfm0Ha/r0l
AeG/oopcuszEsz15lfcV6g1XdiH8+NFSJxMmwUVvESazvz6ANy1ITN9i0nFL7JJo
pggcQfB0RK33kqghVMI4gxbD3/M4eerSNiBIKV1SUEMn8VNMnoGIGwUYsBUnZmZN
3ywJ5cUXWGbK28q5Q5T6FQXFiViDkZuVXo8IrtHP2C+XZHBTTrZ7eqHL5A==
-----END CERTIFICATE-----

View File

@@ -0,0 +1,35 @@
-----BEGIN CERTIFICATE-----
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
-----END CERTIFICATE-----

View File

@@ -0,0 +1,35 @@
-----BEGIN CERTIFICATE-----
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
-----END CERTIFICATE-----

View File

@@ -0,0 +1,31 @@
-----BEGIN CERTIFICATE-----
MIIFSTCCAzGgAwIBAgIQTEmpiVC9epxAzzpUlojsWjANBgkqhkiG9w0BAQsFADA3
MQswCQYDVQQGEwJSVTEMMAoGA1UEChMDVlRCMRowGAYDVQQDExFWVEIgR3JvdXAg
Um9vdCBDQTAeFw0xNzEyMDgxMTMyNTJaFw00MTEyMDgxMTQyNDJaMDcxCzAJBgNV
BAYTAlJVMQwwCgYDVQQKEwNWVEIxGjAYBgNVBAMTEVZUQiBHcm91cCBSb290IENB
MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAqcnBT5pkY6ch5Z93ZAfh
1I2Y2CSlXWvIAq+cZmhArXnLfNKDzsBgDL4UebI9L1baVm7POHd1K2zbU93Fogz1
Q6Dcl2kxQ4WNxJTLaKBk21LUYEGE280N4mr6RBCQ7ypjL+0UJ4DynH9I4B6HtWsJ
g6whpV/A1n1tsgc4MonizZPNii/RAFTOpbzStosSnvYEWwwxgImdjBIOv0Lm/jA5
UPlFyzQUmVqTHZ9ogR82VsZdzntW3EqRMbw6fcCcxZxv7oNXfv73IukTSGjkF76f
OiBWQZGAvU9fsCPLj7to7qSeURSXbP06je0lzz6ElMXAp8SBXQ7vgvw2WgYDS/WF
4QoNHceKo0hOhK0bKTSXJKqj2yeCjowgt0b0ynGzgsMLqKmpSQtjRZIvC3BIScSr
gdhkn8t0VT1KXXB/7X6QN2EjBsDNH4S7moZ7mU8tqpepYOCH5lpybMYX6XCVnu3G
3HE9i26EcpNg2j8P905mZodYPkZYtzSEh8Z/SZNIBN8hCdG8ILZrcuq/AZeAdIPQ
oPmsdx5ZRgkDK3QYKc9Z/TJvQzAxpmkUvNPDqW223hXtH304lip2v9HL7kVLpIxf
qtXxn0nNOrTY5rrLMw+k1rS9yLO6qKaMsS3DwO9t8jHJ1SXMx2Mz5dc9eoRlYvsq
d0znAkmv7mV2HUtujXlXeeUCAwEAAaNRME8wCwYDVR0PBAQDAgGGMA8GA1UdEwEB
/wQFMAMBAf8wHQYDVR0OBBYEFCRQb7bijNACdGXhtga4QIJEo0V5MBAGCSsGAQQB
gjcVAQQDAgEAMA0GCSqGSIb3DQEBCwUAA4ICAQAjJmObx73ufyiTpqXa2ytORt0+
WxLlhKizc4FfdCaN76X+dgpXJOlkDVJ2PQW2fDLbON4RFNTIIHNDTlx89Unj7uoc
uonR0Q+JQl7kXLGxSP4uaUsu/kDEc7Gaqvcm0YHkMsYVfFbDUdWjMvZi2yJgog/Q
G3sVV52A5GuwFsMLsXlSwFOC1wKW0G5DKtXI4tXKTGlxiC7e+fwk7UoaGCt48o7G
DA19ANIqZWyAy6YUgfoq0oO42Ou1oL/qT5GWHEGYiBKQNI2FYJXMOz/oPpNEVhej
ntpY/XTB8EryuZlIGj+u0ZXA/ussfmkiV0t6gYithd8drTEmklRh/aw1UmH41U0+
XMTK+JEG0doDWQxEDLzTXp8ZpK29NmVMBLdHiDnH18ZwrRf3ghPGS6LtjUzlhgaC
SpEP0/39W4tc0EJM4whnqEg9v2t+3EyBccwrKgfStFPkUnqlRIhmREsakWTQoR+u
lFTE2FCNKFtqyoY0dgJEzCeTDiVri/3RLQuCXLzfu/E+lfz965lpeehv5jrxomyr
fycEVm2vMulp2RmkYb1Xz+FTrsAgliP+vdeLOOrH0TtlDFfIdu0DRGtp6VDBvbCW
abp6642mz2yNz+YBwJ3yeZM2v498T5XmbTn9Z1KDKUtmguTRa7kVhDai8mCt8Q3M
UTkueRx6G/n8isR0IA==
-----END CERTIFICATE-----

View File

@@ -0,0 +1,35 @@
-----BEGIN CERTIFICATE-----
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
-----END CERTIFICATE-----

View File

@@ -0,0 +1,31 @@
-----BEGIN CERTIFICATE-----
MIIFPTCCAyWgAwIBAgIQZ0BO+jWkqbZElSs/RJ8yzjANBgkqhkiG9w0BAQUFADAx
MQswCQYDVQQGEwJSVTEMMAoGA1UEChMDVlRCMRQwEgYDVQQDEwtWVEIgUm9vdCBD
QTAeFw0xMjAxMTMwNzE4NDdaFw0zNjAxMTMwNzI4NDNaMDExCzAJBgNVBAYTAlJV
MQwwCgYDVQQKEwNWVEIxFDASBgNVBAMTC1ZUQiBSb290IENBMIICIjANBgkqhkiG
9w0BAQEFAAOCAg8AMIICCgKCAgEA4C/ZijiayMEzXzh7sOHCAe23dfm4qOY87aN4
/IBdUJ9z8RxXTMpQA1mpBPLM7iEexXNnhBxWZXoMalV1rqPC+IhszazEW93udz7B
+WXDKw2/Dlw0Vr9hJjXEbNLBc7PASbjdzTVO+kqbTqZwzIEUt0N0Tdf5DAJ2Tcy/
2K9JIR9p614Zi4fbvqs27SCSCiSXcgRCJ6FjlDqCmkx0LorVA9Kt2txE1FVUPy7Z
jVN51pPwjkRu1T7VUZlWqtvDAMHDtNLNBWbAoVHR9otjd9ba934AtXlcNWhTwTiG
IWnTd181mOQxK0jGwlbNvFAUlfi9ClKCQcxBJbuz7IcUo5/HnZPyjoP7qkaRRYMs
jlXx3W/AZKkgoIa1qaalXKx8xtFQfvTOvE6n+xzNQrHyWa4GD5+ZWEdtWg+xg+Yu
Zn874g7SX3hkaIzlXZL08IQM1aiaAIwpxMnlf8D/2ALujF3MtcnVj4cZGIhY06B7
9+CdO/76klT+RrKtgXgTsZd8QD2F3zqNr2RKkovicJU8ppVcidgntsegEI3QMHDW
I5MCF7Ujf/t8JDHQTP+Eecb2ijvDesWSu1hi6k4zqpS/Y+/xqxPPWjZAjgQcP7uJ
veY36ZU9bDGt+A7eBkTfWxLQPLTOeGte6yMQTuSNxOAEOyp2/bklK4UFJ31eVyOh
6AnYJ8MCAwEAAaNRME8wCwYDVR0PBAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wHQYD
VR0OBBYEFD8j3d38bOXJFU3Wd9suEez58T4QMBAGCSsGAQQBgjcVAQQDAgEAMA0G
CSqGSIb3DQEBBQUAA4ICAQA1RVuX3OfvBHzM+PotDxflbREzDJkNXPSKILrt8OB2
vcO354D0shQuOVBN+5huvPkw2m7vsBmILafhIro7vsFUENSihnZxX0rFus72ACXy
nHdRMVJL+7rgcHjqzvHMN7Ne4eneralus4WyUq0oFgfChkiGEq70CfQBwaIOlsnB
UpMNnO0zFZ4lwe9T80jM24gI/KSQ3bi69/1vZwLPOBc60Pu2zuOYgOzFabZ8THV4
tnSzQ4VODUrulzZ0YIzKMZVoQT2yDFWxgnfMo6ZqWimWL7vF5ztc5/2V6pMzM+hM
UA+HDtzm4qThdx/GD1mZah34F13SEkDLUAaN2iR6TOB89ZePtgkqQM5AN7dS+rHd
CjMvZLGQjcVvE/HzKUpmuMfjCi8znlwzXEvjWoMfjS3E2is35+KvEyWZmjKYofAR
B3eNjhzf6s3O4AFFrmaIeUXX4PvsSUhGOO/M1e7GCvRY8bMRcodtQWkhW1b1RVdd
DopnxE5Ogt8scOq/7NXOlcxV/MVCLK3ccH7/9+g4iCHj27T17wEgjVIg2kU+K3H+
j7631JpN09mpZKI1w1WrZGIvmUdLBx0gKrSrFLHCUDyFKtOAAowmyJJbjJPQZsgO
TqAWn3cGRU7VBcbX0iTCg2xQzt9/dsWPuC8FdNcU/Tj61wVRJuz8FZiZLzzTWZ62
qw==
-----END CERTIFICATE-----

View File

@@ -0,0 +1,35 @@
-----BEGIN CERTIFICATE-----
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
-----END CERTIFICATE-----

View File

@@ -0,0 +1,31 @@
-----BEGIN CERTIFICATE-----
MIIFQzCCAyugAwIBAgIKESNo4QAAAAAACjANBgkqhkiG9w0BAQUFADAxMQswCQYD
VQQGEwJSVTEMMAoGA1UEChMDVlRCMRQwEgYDVQQDEwtWVEIgUm9vdCBDQTAeFw0x
NzA1MDQxNTEwMThaFw0yMzA1MDQxNTIwMThaMDoxCzAJBgNVBAYTAlJVMQwwCgYD
VQQKEwNWVEIxHTAbBgNVBAMTFFZUQiBTdWJvcmRpbmF0ZSBDQSAyMIIBIjANBgkq
hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5Q6DVkVd/L1m7zDXxGR2vQodcS7cFrzc
A6TnkmtAufYWBQuDEeYvFdn3kFLvTH8L3DipE2dM03EHhRRGp6zPunS63VZaeMeu
LWTMy03tPaVEhzx6/tmY0kgZVdWTkEA0bGY77mW/mRIyct1vUXhBu1Wc7yNQa8Np
B9F+XvDHpN7gJ8ahfl/kpnChCpG2ZiwZ8V75pSF5gV/l7Ql3I+yZWPWD7aeopLZ2
QzbXnZCX8A3cYTAPEtG/SYzWYGbqvv7vH8eZyLIBew3hYv8Jm8Jf1hvVC7QapEUD
SZLBcF62D+/EHngZVc9KQQ3JkqYQNXA4UUqlQreqpnSz4XfnfQH6wwIDAQABo4IB
UjCCAU4wEAYJKwYBBAGCNxUBBAMCAQEwIwYJKwYBBAGCNxUCBBYEFIGjTEqYn9wW
rXr1n4bKJQyejXAJMB0GA1UdDgQWBBQw5x1fND4aHBCXIOuwjUPPSCESETAZBgkr
BgEEAYI3FAIEDB4KAFMAdQBiAEMAQTALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/BAUw
AwEB/zAfBgNVHSMEGDAWgBQ/I93d/GzlyRVN1nfbLhHs+fE+EDA+BgNVHR8ENzA1
MDOgMaAvhi1odHRwOi8vcGtpLnZ0Yi5ydS9wa2kvY2RwL1ZUQiUyMFJvb3QlMjBD
QS5jcmwwXAYIKwYBBQUHAQEEUDBOMEwGCCsGAQUFBzAChkBodHRwOi8vcGtpLnZ0
Yi5ydS9wa2kvYWlhL21za3BraWNhMDF2LnZ0Yi5ydV9WVEIlMjBSb290JTIwQ0Eu
Y3J0MA0GCSqGSIb3DQEBBQUAA4ICAQBSFCmHdsX5tN7YnOyjLujfBjb5saWj6A+j
epHjUk4UgI4+IgnRATkOOS0+Wryn7EtWee31kTPz9s/4QUW+o9NpIrHZ0io8FZZl
NxFHKjmEo1HotQkRNyVFoBN3/QRXmNRQs7yXCpZfMVzSFEKI4mtjOYa6Lb9kHDEf
RkXmbqvdLUo1bpKOOCozOlML8edFUkPdO82d9/qI+GXATg+VRrZhETsfCy3E1nOR
vrM5+b731QUebNjfqeCdQGklgptrF2tBGtu/m+nnNU9ugqVfkj7CYSmV/aAhsm/v
a7VcIadrALgq894VFkvx8TWNNYAz2pX6Ws4Y/+zwXCBvY6V8qQLM1ScL+uE+4R/V
kfy2YayeBeiASaSQtMfgzCvSv3rJpWw4RGl7QtrmmCGmhlnt/EBDmC2oV2OT2hl6
TqaRHTrcbVNftrQg1o4UpIgs2cW+fd8t4T4a3NlpgC7fMAexk9kZvDsVTYSN6reB
9D5aArmmz9azw2VpimU/y0UOC5xhFdPvjwUtalPTnS2s6sf05XJk9CMabsud8zWz
IWsg3TLPvuEFFKSCe+GvLfECmlRf4kmP2AsdIFDnptJpZRytpJNXB2QqWTbqS3oq
PoIK8yFBAg2mbkIJrG3bDfrVcilaqitq6buNXvd46XvO8CNsbPRoLkV8pJmTyEZu
oSZnKYHx9Q==
-----END CERTIFICATE-----

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1 @@
{"defaultHandlersVersion":{},"mimeTypes":{"application/pdf":{"action":3,"extensions":["pdf"]},"image/webp":{"action":3,"extensions":["webp"]},"image/avif":{"action":3,"extensions":["avif"]}},"schemes":{"mailto":{"stubEntry":true,"handlers":[null,{"name":"Gmail","uriTemplate":"https://mail.google.com/mail/?extsrc=mailto&url=%s"}]},"receiver":{"action":4}},"isDownloadsImprovementsAlreadyMigrated":true,"isSVGXMLAlreadyMigrated":true}

Binary file not shown.

View File

@@ -0,0 +1,85 @@
#!/usr/bin/env bash
set -ex
START_COMMAND="firefox"
PGREP="firefox"
DEFAULT_ARGS="-kiosk -new-window https://vdi.vtb.ru"
ARGS=${APP_ARGS:-$DEFAULT_ARGS}
options=$(getopt -o gau: -l go,assign,url: -n "$0" -- "$@") || exit
eval set -- "$options"
while [[ $1 != -- ]]; do
case $1 in
-g|--go) GO='true'; shift 1;;
-a|--assign) ASSIGN='true'; shift 1;;
-u|--url) OPT_URL=$2; shift 2;;
*) echo "bad option: $1" >&2; exit 1;;
esac
done
shift
# Process non-option arguments.
for arg; do
echo "arg! $arg"
done
FORCE=$2
# run with vgl if GPU is available
if [ -f /opt/VirtualGL/bin/vglrun ] && [ ! -z "${KASM_EGL_CARD}" ] && [ ! -z "${KASM_RENDERD}" ] && [ -O "${KASM_RENDERD}" ] && [ -O "${KASM_EGL_CARD}" ] ; then
START_COMMAND="/opt/VirtualGL/bin/vglrun -d ${KASM_EGL_CARD} $START_COMMAND"
fi
kasm_exec() {
if [ -n "$OPT_URL" ] ; then
URL=$OPT_URL
elif [ -n "$1" ] ; then
URL=$1
fi
# Since we are execing into a container that already has the browser running from startup,
# when we don't have a URL to open we want to do nothing. Otherwise a second browser instance would open.
if [ -n "$URL" ] ; then
/usr/bin/filter_ready
/usr/bin/desktop_ready
$START_COMMAND $ARGS $OPT_URL
else
echo "No URL specified for exec command. Doing nothing."
fi
}
kasm_startup() {
if [ -n "$KASM_URL" ] ; then
URL=$KASM_URL
elif [ -z "$URL" ] ; then
URL=$LAUNCH_URL
fi
if [ -z "$DISABLE_CUSTOM_STARTUP" ] || [ -n "$FORCE" ] ; then
echo "Entering process startup loop"
set +x
while true
do
if ! pgrep -x $PGREP > /dev/null
then
/usr/bin/filter_ready
/usr/bin/desktop_ready
set +e
$START_COMMAND $ARGS $URL
set -e
fi
sleep 1
done
set -x
fi
}
if [ -n "$GO" ] || [ -n "$ASSIGN" ] ; then
kasm_exec
else
kasm_startup
fi

View File

@@ -0,0 +1,221 @@
[Desktop Entry]
Version=1.0
Name=Firefox Web Browser
Name[ar]=متصفح الويب فَيَرفُكْس
Name[ast]=Restolador web Firefox
Name[bn]=ফায়ারফক্স ওয়েব ব্রাউজার
Name[ca]=Navegador web Firefox
Name[cs]=Firefox Webový prohlížeč
Name[da]=Firefox - internetbrowser
Name[el]=Περιηγητής Firefox
Name[es]=Navegador web Firefox
Name[et]=Firefoxi veebibrauser
Name[fa]=مرورگر اینترنتی Firefox
Name[fi]=Firefox-selain
Name[fr]=Navigateur Web Firefox
Name[gl]=Navegador web Firefox
Name[he]=דפדפן האינטרנט Firefox
Name[hr]=Firefox web preglednik
Name[hu]=Firefox webböngésző
Name[it]=Firefox Browser Web
Name[ja]=Firefox ウェブ・ブラウザ
Name[ko]=Firefox 웹 브라우저
Name[ku]=Geroka torê Firefox
Name[lt]=Firefox interneto naršyklė
Name[nb]=Firefox Nettleser
Name[nl]=Firefox webbrowser
Name[nn]=Firefox Nettlesar
Name[no]=Firefox Nettleser
Name[pl]=Przeglądarka WWW Firefox
Name[pt]=Firefox Navegador Web
Name[pt_BR]=Navegador Web Firefox
Name[ro]=Firefox Navigator Internet
Name[ru]=Веб-браузер Firefox
Name[sk]=Firefox - internetový prehliadač
Name[sl]=Firefox spletni brskalnik
Name[sv]=Firefox webbläsare
Name[tr]=Firefox Web Tarayıcısı
Name[ug]=Firefox توركۆرگۈ
Name[uk]=Веб-браузер Firefox
Name[vi]=Trình duyệt web Firefox
Name[zh_CN]=Firefox 网络浏览器
Name[zh_TW]=Firefox 網路瀏覽器
Comment=Browse the World Wide Web
Comment[ar]=تصفح الشبكة العنكبوتية العالمية
Comment[ast]=Restola pela Rede
Comment[bn]=ইন্টারনেট ব্রাউজ করুন
Comment[ca]=Navegueu per la web
Comment[cs]=Prohlížení stránek World Wide Webu
Comment[da]=Surf på internettet
Comment[de]=Im Internet surfen
Comment[el]=Μπορείτε να περιηγηθείτε στο διαδίκτυο (Web)
Comment[es]=Navegue por la web
Comment[et]=Lehitse veebi
Comment[fa]=صفحات شبکه جهانی اینترنت را مرور نمایید
Comment[fi]=Selaa Internetin WWW-sivuja
Comment[fr]=Naviguer sur le Web
Comment[gl]=Navegar pola rede
Comment[he]=גלישה ברחבי האינטרנט
Comment[hr]=Pretražite web
Comment[hu]=A világháló böngészése
Comment[it]=Esplora il web
Comment[ja]=ウェブを閲覧します
Comment[ko]=웹을 돌아 다닙니다
Comment[ku]=Li torê bigere
Comment[lt]=Naršykite internete
Comment[nb]=Surf på nettet
Comment[nl]=Verken het internet
Comment[nn]=Surf på nettet
Comment[no]=Surf på nettet
Comment[pl]=Przeglądanie stron WWW
Comment[pt]=Navegue na Internet
Comment[pt_BR]=Navegue na Internet
Comment[ro]=Navigați pe Internet
Comment[ru]=Доступ в Интернет
Comment[sk]=Prehliadanie internetu
Comment[sl]=Brskajte po spletu
Comment[sv]=Surfa på webben
Comment[tr]=İnternet'te Gezinin
Comment[ug]=دۇنيادىكى توربەتلەرنى كۆرگىلى بولىدۇ
Comment[uk]=Перегляд сторінок Інтернету
Comment[vi]=Để duyệt các trang web
Comment[zh_CN]=浏览互联网
Comment[zh_TW]=瀏覽網際網路
GenericName=Web Browser
GenericName[ar]=متصفح ويب
GenericName[ast]=Restolador Web
GenericName[bn]=ওয়েব ব্রাউজার
GenericName[ca]=Navegador web
GenericName[cs]=Webový prohlížeč
GenericName[da]=Webbrowser
GenericName[el]=Περιηγητής διαδικτύου
GenericName[es]=Navegador web
GenericName[et]=Veebibrauser
GenericName[fa]=مرورگر اینترنتی
GenericName[fi]=WWW-selain
GenericName[fr]=Navigateur Web
GenericName[gl]=Navegador Web
GenericName[he]=דפדפן אינטרנט
GenericName[hr]=Web preglednik
GenericName[hu]=Webböngésző
GenericName[it]=Browser web
GenericName[ja]=ウェブ・ブラウザ
GenericName[ko]=웹 브라우저
GenericName[ku]=Geroka torê
GenericName[lt]=Interneto naršyklė
GenericName[nb]=Nettleser
GenericName[nl]=Webbrowser
GenericName[nn]=Nettlesar
GenericName[no]=Nettleser
GenericName[pl]=Przeglądarka WWW
GenericName[pt]=Navegador Web
GenericName[pt_BR]=Navegador Web
GenericName[ro]=Navigator Internet
GenericName[ru]=Веб-браузер
GenericName[sk]=Internetový prehliadač
GenericName[sl]=Spletni brskalnik
GenericName[sv]=Webbläsare
GenericName[tr]=Web Tarayıcı
GenericName[ug]=توركۆرگۈ
GenericName[uk]=Веб-браузер
GenericName[vi]=Trình duyệt Web
GenericName[zh_CN]=网络浏览器
GenericName[zh_TW]=網路瀏覽器
Keywords=Internet;WWW;Browser;Web;Explorer
Keywords[ar]=انترنت;إنترنت;متصفح;ويب;وب
Keywords[ast]=Internet;WWW;Restolador;Web;Esplorador
Keywords[ca]=Internet;WWW;Navegador;Web;Explorador;Explorer
Keywords[cs]=Internet;WWW;Prohlížeč;Web;Explorer
Keywords[da]=Internet;Internettet;WWW;Browser;Browse;Web;Surf;Nettet
Keywords[de]=Internet;WWW;Browser;Web;Explorer;Webseite;Site;surfen;online;browsen
Keywords[el]=Internet;WWW;Browser;Web;Explorer;Διαδίκτυο;Περιηγητής;Firefox;Φιρεφοχ;Ιντερνετ
Keywords[es]=Explorador;Internet;WWW
Keywords[fi]=Internet;WWW;Browser;Web;Explorer;selain;Internet-selain;internetselain;verkkoselain;netti;surffaa
Keywords[fr]=Internet;WWW;Browser;Web;Explorer;Fureteur;Surfer;Navigateur
Keywords[he]=דפדפן;אינטרנט;רשת;אתרים;אתר;פיירפוקס;מוזילה;
Keywords[hr]=Internet;WWW;preglednik;Web
Keywords[hu]=Internet;WWW;Böngésző;Web;Háló;Net;Explorer
Keywords[it]=Internet;WWW;Browser;Web;Navigatore
Keywords[is]=Internet;WWW;Vafri;Vefur;Netvafri;Flakk
Keywords[ja]=Internet;WWW;Web;インターネット;ブラウザ;ウェブ;エクスプローラ
Keywords[nb]=Internett;WWW;Nettleser;Explorer;Web;Browser;Nettside
Keywords[nl]=Internet;WWW;Browser;Web;Explorer;Verkenner;Website;Surfen;Online
Keywords[pt]=Internet;WWW;Browser;Web;Explorador;Navegador
Keywords[pt_BR]=Internet;WWW;Browser;Web;Explorador;Navegador
Keywords[ru]=Internet;WWW;Browser;Web;Explorer;интернет;браузер;веб;файрфокс;огнелис
Keywords[sk]=Internet;WWW;Prehliadač;Web;Explorer
Keywords[sl]=Internet;WWW;Browser;Web;Explorer;Brskalnik;Splet
Keywords[tr]=İnternet;WWW;Tarayıcı;Web;Gezgin;Web sitesi;Site;sörf;çevrimiçi;tara
Keywords[uk]=Internet;WWW;Browser;Web;Explorer;Інтернет;мережа;переглядач;оглядач;браузер;веб;файрфокс;вогнелис;перегляд
Keywords[vi]=Internet;WWW;Browser;Web;Explorer;Trình duyệt;Trang web
Keywords[zh_CN]=Internet;WWW;Browser;Web;Explorer;网页;浏览;上网;火狐;Firefox;ff;互联网;网站;
Keywords[zh_TW]=Internet;WWW;Browser;Web;Explorer;網際網路;網路;瀏覽器;上網;網頁;火狐
Exec=firefox %u
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=/usr/lib/firefox/browser/chrome/icons/default/default128.png
Categories=GNOME;GTK;Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;x-scheme-handler/chrome;video/webm;application/x-xpinstall;
StartupNotify=true
Actions=NewWindow;NewPrivateWindow;
[Desktop Action NewWindow]
Name=Open a New Window
Name[ar]=افتح نافذة جديدة
Name[ast]=Abrir una ventana nueva
Name[bn]=Abrir una ventana nueva
Name[ca]=Obre una finestra nova
Name[cs]=Otevřít nové okno
Name[da]=Åbn et nyt vindue
Name[de]=Ein neues Fenster öffnen
Name[el]=Άνοιγμα νέου παραθύρου
Name[es]=Abrir una ventana nueva
Name[fi]=Avaa uusi ikkuna
Name[fr]=Ouvrir une nouvelle fenêtre
Name[gl]=Abrir unha nova xanela
Name[he]=פתיחת חלון חדש
Name[hr]=Otvori novi prozor
Name[hu]=Új ablak nyitása
Name[it]=Apri una nuova finestra
Name[ja]=新しいウィンドウを開く
Name[ko]=새 창 열기
Name[ku]=Paceyeke nû veke
Name[lt]=Atverti naują langą
Name[nb]=Åpne et nytt vindu
Name[nl]=Nieuw venster openen
Name[pt]=Abrir nova janela
Name[pt_BR]=Abrir nova janela
Name[ro]=Deschide o fereastră nouă
Name[ru]=Новое окно
Name[sk]=Otvoriť nové okno
Name[sl]=Odpri novo okno
Name[sv]=Öppna ett nytt fönster
Name[tr]=Yeni pencere aç
Name[ug]=يېڭى كۆزنەك ئېچىش
Name[uk]=Відкрити нове вікно
Name[vi]=Mở cửa sổ mới
Name[zh_CN]=新建窗口
Name[zh_TW]=開啟新視窗
Exec=firefox -new-window
OnlyShowIn=Unity;
[Desktop Action NewPrivateWindow]
Name=Open a New Private Window
Name[ar]=افتح نافذة جديدة للتصفح الخاص
Name[ca]=Obre una finestra nova en mode d'incògnit
Name[de]=Ein neues privates Fenster öffnen
Name[es]=Abrir una ventana privada nueva
Name[fi]=Avaa uusi yksityinen ikkuna
Name[fr]=Ouvrir une nouvelle fenêtre de navigation privée
Name[he]=פתיחת חלון גלישה פרטית חדש
Name[hu]=Új privát ablak nyitása
Name[it]=Apri una nuova finestra anonima
Name[nb]=Åpne et nytt privat vindu
Name[ru]=Новое приватное окно
Name[sl]=Odpri novo okno zasebnega brskanja
Name[tr]=Yeni bir pencere aç
Name[uk]=Відкрити нове вікно у потайливому режимі
Name[zh_TW]=開啟新隱私瀏覽視窗
Exec=firefox -private-window
OnlyShowIn=Unity;

View File

@@ -0,0 +1,117 @@
#!/usr/bin/env bash
set -xe
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
set_desktop_icon() {
sed -i -e 's!Icon=.\+!Icon=/usr/share/icons/hicolor/48x48/apps/firefox.png!' "$HOME/Desktop/firefox.desktop"
}
echo "Install Firefox"
if [[ "${DISTRO}" == @(centos|oracle7|oracle8) ]]; then
if [ "${DISTRO}" == "oracle8" ]; then
dnf install -y firefox p11-kit
else
yum install -y firefox p11-kit
fi
elif [ "${DISTRO}" == "opensuse" ]; then
zypper install -yn p11-kit-tools MozillaFirefox
elif grep -q Jammy /etc/os-release; then
if [ ! -f '/etc/apt/preferences.d/mozilla-firefox' ]; then
add-apt-repository -y ppa:mozillateam/ppa
echo '
Package: *
Pin: release o=LP-PPA-mozillateam
Pin-Priority: 1001
' > /etc/apt/preferences.d/mozilla-firefox
fi
apt-get install -y firefox p11-kit-modules
else
apt-mark unhold firefox
apt-get remove firefox
apt-get update
apt-get install -y firefox p11-kit-modules
fi
if [[ "${DISTRO}" == @(centos|oracle7|oracle8) ]]; then
if [ "${DISTRO}" == "oracle8" ]; then
dnf clean all
else
yum clean all
fi
elif [ "${DISTRO}" == "opensuse" ]; then
zypper clean --all
else
if [ "$ARCH" == "arm64" ] && [ "$(lsb_release -cs)" == "focal" ] ; then
echo "Firefox flash player not supported on arm64 Ubuntu Focal Skipping"
elif ! grep -q Jammy /etc/os-release; then
# Plugin to support running flash videos for sites like vimeo
apt-get update
apt-get install -y browser-plugin-freshplayer-pepperflash
apt-mark hold firefox
apt-get clean -y
fi
fi
if [[ "${DISTRO}" != @(centos|oracle7|oracle8|opensuse) ]]; then
# Update firefox to utilize the system certificate store instead of the one that ships with firefox
rm /usr/lib/firefox/libnssckbi.so
ln /usr/lib/$(arch)-linux-gnu/pkcs11/p11-kit-trust.so /usr/lib/firefox/libnssckbi.so
fi
if [[ "${DISTRO}" == @(centos|oracle7|oracle8) ]]; then
preferences_file=/usr/lib64/firefox/browser/defaults/preferences/all-redhat.js
sed -i -e '/homepage/d' "$preferences_file"
elif [ "${DISTRO}" == "opensuse" ]; then
preferences_file=/usr/lib64/firefox/browser/defaults/preferences/firefox.js
else
preferences_file=/usr/lib/firefox/browser/defaults/preferences/firefox.js
fi
# Disabling default first run URL
echo "pref(\"datareporting.policy.firstRunURL\", \"\");" >> "$preferences_file"
if [[ "${DISTRO}" == @(centos|oracle7|oracle8|opensuse) ]]; then
# Creating a default profile
firefox -headless -CreateProfile "kasm $HOME/.mozilla/firefox/kasm"
# Generate a certdb to be detected on squid start
HOME=/root firefox --headless &
mkdir -p /root/.mozilla
CERTDB=$(find /root/.mozilla* -name "cert9.db")
while [ -z "${CERTDB}" ] ; do
sleep 1
echo "waiting for certdb"
CERTDB=$(find /root/.mozilla* -name "cert9.db")
done
sleep 2
kill $(pgrep firefox)
CERTDIR=$(dirname ${CERTDB})
mv ${CERTDB} $HOME/.mozilla/firefox/kasm/
rm -Rf /root/.mozilla
else
# Creating Default Profile
firefox -headless -CreateProfile "kasm $HOME/.mozilla/firefox/kasm"
fi
if [[ "${DISTRO}" == @(centos|oracle7|oracle8|opensuse) ]]; then
set_desktop_icon
fi
# Starting with version 67, Firefox creates a unique profile mapping per installation which is hash generated
# based off the installation path. Because that path will be static for our deployments we can assume the hash
# and thus assign our profile to the default for the installation
if [[ "${DISTRO}" != @(centos|oracle7|oracle8|opensuse) ]]; then
cat >>$HOME/.mozilla/firefox/profiles.ini <<EOL
[Install4F96D1932A9F858E]
Default=kasm
Locked=1
EOL
elif [[ "${DISTRO}" == @(centos|oracle7|oracle8|opensuse) ]]; then
cat >>$HOME/.mozilla/firefox/profiles.ini <<EOL
[Install11457493C5A56847]
Default=kasm
Locked=1
EOL
fi
chown -R 1000:1000 $HOME/.mozilla

View File

@@ -0,0 +1,10 @@
#!/bin/bash
set -e
libgtk_deb=libgtk.deb
ARCH=$(arch | sed 's/aarch64/arm64/g' | sed 's/x86_64/amd64/g')
wget https://kasmweb-build-artifacts.s3.amazonaws.com/kasm-gtk-3-restricted-file-chooser/5ed0c7b5bf4b56562269b3527b3446febc8bd91a/output/libgtk-3-0_3.22.30-1ubuntu4_${ARCH}.deb -O $libgtk_deb
apt-get install -y --allow-downgrades ./"$libgtk_deb"
rm "$libgtk_deb"

Binary file not shown.