Added TurboVNC

This commit is contained in:
Héctor Molinero Fernández
2019-07-31 16:05:45 +02:00
parent a36b9af6fd
commit 07570c4d9d
5 changed files with 44 additions and 4 deletions

View File

@@ -129,6 +129,25 @@ RUN make -j"$(nproc)" && make deb
RUN dpkg -i --force-architecture ./virtualgl32_*.deb
]])m4_dnl
# Build TurboVNC
ARG TURBOVNC_TREEISH=2.2.2
ARG TURBOVNC_REMOTE=https://github.com/TurboVNC/turbovnc.git
WORKDIR /tmp/turbovnc/
RUN git clone "${TURBOVNC_REMOTE}" ./
RUN git checkout "${TURBOVNC_TREEISH}"
RUN git submodule update --init --recursive
WORKDIR ./build/
RUN cmake ./ \
-G 'Unix Makefiles' \
-D PKGNAME=turbovnc \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/opt/TurboVNC \
-D CMAKE_POSITION_INDEPENDENT_CODE=1 \
-D TVNC_BUILDJAVA=0 \
../
RUN make -j"$(nproc)" && make deb
RUN dpkg -i --force-architecture ./turbovnc_*.deb
# Build XRDP
ARG XRDP_TREEISH=v0.9.10
ARG XRDP_REMOTE=https://github.com/neutrinolabs/xrdp.git
@@ -352,6 +371,10 @@ COPY --from=build --chown=root:root /tmp/virtualgl/build32/virtualgl32_*.deb /tm
RUN dpkg -i --force-architecture /tmp/virtualgl32.deb && rm -f /tmp/virtualgl32.deb
]])m4_dnl
# Install TurboVNC from package
COPY --from=build --chown=root:root /tmp/turbovnc/build/turbovnc_*.deb /tmp/turbovnc.deb
RUN dpkg -i --force-architecture /tmp/turbovnc.deb && rm -f /tmp/turbovnc.deb
# Install XRDP from package
COPY --from=build --chown=root:root /tmp/xrdp/xrdp_*.deb /tmp/xrdp.deb
RUN dpkg -i /tmp/xrdp.deb && rm -f /tmp/xrdp.deb
@@ -374,7 +397,7 @@ ENV UNPRIVILEGED_USER_SHELL=/bin/bash
ENV DISABLE_GPU=false
ENV RDP_TLS_KEY_PATH=/etc/xrdp/key.pem
ENV RDP_TLS_CERT_PATH=/etc/xrdp/cert.pem
ENV PATH=/opt/VirtualGL/bin:"${PATH}"
ENV PATH=/opt/VirtualGL/bin:/opt/TurboVNC/bin:"${PATH}"
ENV VGL_DISPLAY=:0
## Workaround for AMDGPU X_GLXCreatePbuffer issue:
## https://github.com/VirtualGL/virtualgl/issues/85#issuecomment-480291529

View File

@@ -33,6 +33,15 @@ param=-noreset
param=-nolisten
param=tcp
[Xvnc]
param=/opt/TurboVNC/bin/Xvnc
param=-bs
param=-nolisten
param=tcp
param=-localhost
param=-dpi
param=96
[Chansrv]
FuseMountName=.thinclient_drives

View File

@@ -66,3 +66,11 @@ password=ask
ip=127.0.0.1
port=-1
code=20
[Xvnc]
name=Xvnc
lib=libvnc.so
username=ask
password=ask
ip=127.0.0.1
port=-1

View File

@@ -40,8 +40,8 @@ fi
# Create RANDFILE if it does not exist
RANDFILE=${RANDFILE-${HOME}/.rnd}
if [ ! -f "${RANDFILE}" ]; then
dd if=/dev/urandom of="${RANDFILE}" bs=256 count=1 >/dev/null 2>&1
if [ ! -f "${RANDFILE:?}" ]; then
dd if=/dev/urandom of="${RANDFILE:?}" bs=256 count=1 >/dev/null 2>&1
fi
# Generate SSH keys if they do not exist

View File

@@ -3,7 +3,7 @@
BEGIN {
print("\n")
for (v in ENVIRON) {
if (v !~ /^(PWD|HOME|PATH|SHELL|HOSTNAME|UID|USER|GID|GROUP)$/) {
if (v !~ /^(PWD|HOME|SHELL|HOSTNAME|UID|USER|GID|GROUP)$/) {
gsub(/[^0-9A-Za-z_]/, "_", v);
gsub(/'/, "'\\''", ENVIRON[v])
print("export "v"='"ENVIRON[v]"'")