FROM debian ENV DEBIAN_FRONTEND noninteractive ARG ARCH ARG TZ=Europe/London RUN apt update && apt upgrade -y && apt install -y wget xfce4 chromium xrdp sudo dbus-x11 git vim bash-completion openjdk-17-jdk telnet net-tools iputils-ping RUN wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg \ && install -o root -g root -m 644 packages.microsoft.gpg /etc/apt/trusted.gpg.d/ \ && sh -c 'echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/trusted.gpg.d/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list' \ && rm -f packages.microsoft.gpg RUN wget https://packages.microsoft.com/config/debian/11/packages-microsoft-prod.deb -O packages-microsoft-prod.deb \ && dpkg -i packages-microsoft-prod.deb RUN wget https://dot.net/v1/dotnet-install.sh && \ chmod +x ./dotnet-install.sh && \ ./dotnet-install.sh -c STS --install-dir /dotnet && \ echo 'export DOTNET_ROOT=/dotnet' > /etc/profile.d/dotnet.sh && \ echo 'export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools:/opt/JetBrains\ Rider-2022.3/bin' >> /etc/profile.d/dotnet.sh RUN apt update && apt install -y code WORKDIR /opt ADD https://download-cdn.jetbrains.com/rider/JetBrains.Rider-2022.3${ARCH}.tar.gz /opt/ COPY ./auto-install.xml /tmp RUN wget https://github.com/squirrel-sql-client/squirrel-sql-stable-releases/releases/download/4.5.1-installer/squirrel-sql-4.5.1-standard.jar && \ java -jar squirrel-sql-4.5.1-standard.jar /tmp/auto-install.xml && \ rm squirrel-sql-4.5.1-standard.jar && \ mv /root/.local/share/applications/SQ*.desktop /usr/share/applications/ ADD ./jdbc.tgz /opt/squirrelSql/ RUN wget https://download.docker.com/linux/static/stable/x86_64/docker-20.10.22.tgz && \ tar xvzf docker-20.10.22.tgz --strip-components 1 -C /usr/local/bin && \ rm docker-20.10.22.tgz && \ mkdir -p /usr/libexec/docker/cli-plugins && \ chmod +x /usr/libexec/docker/cli-plugins && \ wget -O 'docker-compose' https://github.com/docker/compose/releases/download/v2.14.1/docker-compose-linux-x86_64 && \ chmod +x docker-compose && \ mv docker-compose /usr/libexec/docker/cli-plugins/ && \ ln -sv /usr/libexec/docker/cli-plugins/docker-compose /usr/local/bin/docker-compose RUN apt-get clean && \ apt-get -y remove && \ addgroup --system --gid 998 docker && \ echo 'root:Lisewsk1' | chpasswd && \ useradd -ms /bin/bash paul && \ echo 'paul:harry1996' | chpasswd && \ usermod -a -G sudo paul && \ usermod -a -G docker paul && \ useradd -ms /bin/bash tony && \ echo 'tony:GPSPass' | chpasswd && \ usermod -a -G sudo tony && \ usermod -a -G docker tony RUN apt install -y build-essential dpkg-dev libpulse-dev git autoconf libtool && \ echo 'paul ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/90-super && \ addgroup -gid 222 crontab RUN echo 'deb-src http://deb.debian.org/debian bullseye main' >> /etc/apt/sources.list WORKDIR /tmp RUN apt-get update && apt-get source pulseaudio && \ apt-get build-dep -yy pulseaudio && \ apt install git autoconf pkg-config libssl-dev libpam0g-dev \ libx11-dev libxfixes-dev libxrandr-dev nasm xsltproc flex \ bison libxml2-dev dpkg-dev libcap-dev WORKDIR /tmp/pulseaudio-14.2 RUN dpkg-buildpackage -rfakeroot -uc -b WORKDIR /tmp RUN git clone https://github.com/neutrinolabs/xrdp.git WORKDIR /tmp/xrdp RUN ./bootstrap RUN ./configure RUN make RUN make install WORKDIR /tmp RUN apt -yy install libpulse-dev RUN git clone https://github.com/neutrinolabs/pulseaudio-module-xrdp.git WORKDIR /tmp/pulseaudio-module-xrdp RUN ./bootstrap && ./configure PULSE_DIR=/tmp/pulseaudio-11.1 RUN make RUN mkdir -p /tmp/so RUN cp src/.libs/*.so /tmp/so RUN su -c 'cd ~ && \ git clone https://github.com/neutrinolabs/pulseaudio-module-xrdp.git && \ cd pulseaudio-module-xrdp && \ scripts/install_pulseaudio_sources_apt_wrapper.sh && \ ./bootstrap && ./configure PULSE_DIR=~/pulseaudio.src && \ make && \ sudo make install' paul ENTRYPOINT /etc/init.d/xrdp start && tail -F /var/log/xrdp-sesman.log