diff --git a/builder/build.sh b/builder/build.sh index 73a7b34..e9813f1 100755 --- a/builder/build.sh +++ b/builder/build.sh @@ -63,7 +63,7 @@ ln -s /src/unix/xserver/hw/vnc/Xvnc Xvnc cd .. mkdir -p man/man1 touch man/man1/Xserver.1 -touch man/man1/Xvnc.1 +cp /src/unix/xserver/hw/vnc/Xvnc.man man/man1/Xvnc.1 mkdir lib cd lib if [ -d /usr/lib/x86_64-linux-gnu/dri ]; then diff --git a/builder/dockerfile.fedora_thirtythree.build b/builder/dockerfile.fedora_thirtythree.build new file mode 100644 index 0000000..be70715 --- /dev/null +++ b/builder/dockerfile.fedora_thirtythree.build @@ -0,0 +1,38 @@ +FROM fedora:33 + +ENV KASMVNC_BUILD_OS fedora +ENV KASMVNC_BUILD_OS_CODENAME thirtythree +ENV XORG_VER 1.20.10 + +# RUN dnf install -y build-dep xorg-server libxfont-dev sudo +RUN dnf install -y gcc cmake git gnutls-devel vim wget +#tightvncserver +RUN dnf install -y libjpeg-turbo-devel libpng-devel libtiff-devel giflib-devel openssl-devel + +#libavcodec-dev +RUN dnf -y install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm +RUN dnf -y install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm +RUN dnf -y install ffmpeg-devel + +RUN dnf install -y make +RUN dnf group install -y "Development Tools" +RUN dnf install -y xorg-x11-server-devel zlib-devel libjpeg-turbo-devel +RUN dnf install -y libxkbfile-devel libXfont2-devel xorg-x11-font-utils \ + xorg-x11-xtrans-devel xorg-x11-xkb-utils-devel +RUN dnf install -y mesa-dri-drivers +RUN dnf install -y bzip2 redhat-lsb-core + +# Additions for webp +RUN cd /tmp && wget https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-1.0.2.tar.gz +RUN cd /tmp && tar -xzvf /tmp/libwebp-* +RUN cd /tmp/libwebp-1.0.2 && \ + ./configure --enable-static --disable-shared && \ + make && make install + +RUN useradd -m docker && echo "docker:docker" | chpasswd + +COPY . /src +RUN chown -R docker:docker /src + +USER docker +ENTRYPOINT ["/src/builder/build.sh"] diff --git a/builder/dockerfile.fedora_thirtythree.rpm.build b/builder/dockerfile.fedora_thirtythree.rpm.build new file mode 100644 index 0000000..ae92ec7 --- /dev/null +++ b/builder/dockerfile.fedora_thirtythree.rpm.build @@ -0,0 +1,13 @@ +FROM fedora:33 + +RUN dnf install -y fedora-packager fedora-review +RUN dnf install -y tree vim less +RUN dnf install -y redhat-lsb-core +RUN dnf install -y dnf-plugins-core + +COPY centos/*.spec /tmp +RUN dnf builddep -y /tmp/*.spec + +RUN useradd -m docker && echo "docker:docker" | chpasswd + +USER docker diff --git a/builder/dockerfile.fedora_thirtythree.rpm.test b/builder/dockerfile.fedora_thirtythree.rpm.test new file mode 100644 index 0000000..bdd4205 --- /dev/null +++ b/builder/dockerfile.fedora_thirtythree.rpm.test @@ -0,0 +1,64 @@ +FROM fedora:33 + +ENV DISPLAY=:1 \ + VNC_PORT=8443 \ + VNC_RESOLUTION=1280x720 \ + MAX_FRAME_RATE=24 \ + VNCOPTIONS="-PreferBandwidth -DynamicQualityMin=4 -DynamicQualityMax=7" \ + HOME=/home/user \ + TERM=xterm \ + STARTUPDIR=/dockerstartup \ + INST_SCRIPTS=/dockerstartup/install \ + KASM_RX_HOME=/dockerstartup/kasmrx \ + DEBIAN_FRONTEND=noninteractive \ + VNC_COL_DEPTH=24 \ + VNC_RESOLUTION=1280x1024 \ + VNC_PW=vncpassword \ + VNC_USER=user \ + VNC_VIEW_ONLY_PW=vncviewonlypassword \ + LD_LIBRARY_PATH=/usr/local/lib/ \ + OMP_WAIT_POLICY=PASSIVE \ + SHELL=/bin/bash \ + SINGLE_APPLICATION=0 \ + KASMVNC_BUILD_OS=fedora \ + KASMVNC_BUILD_OS_CODENAME=thirtythree + +EXPOSE $VNC_PORT + +WORKDIR $HOME + +### REQUIRED STUFF ### + +RUN dnf install -y openssl xterm gettext wget +RUN dnf install -y nss_wrapper +RUN dnf install -y xorg-x11-xauth xorg-x11-xkb-utils \ + xkeyboard-config xorg-x11-server-utils +# xorg-x11-server-Xorg +# RUN dnf install -y @xfce-desktop-environment +RUN dnf group install -y lxde-desktop +RUN dnf erase -y pm-utils xscreensaver* +RUN dnf install -y redhat-lsb-core +RUN dnf install -y vim less + +RUN echo 'source $STARTUPDIR/generate_container_user' >> $HOME/.bashrc + +RUN mkdir -p $STARTUPDIR +COPY startup/ $STARTUPDIR + +### START CUSTOM STUFF #### + +ARG KASMVNC_PACKAGE_DIR +COPY $KASMVNC_PACKAGE_DIR/*.rpm /tmp +# RUN dnf remove -y tigervnc-server-minimal +RUN dnf localinstall -y --allowerasing /tmp/*.rpm + +### END CUSTOM STUFF ### + +RUN chown -R 1000:0 $HOME +USER 1000:kasmvnc +WORKDIR $HOME + +RUN mkdir ~/.vnc && echo '/usr/bin/lxsession -s LXDE &' >> ~/.vnc/xstartup && \ + chmod +x ~/.vnc/xstartup + +ENTRYPOINT [ "/dockerstartup/vnc_startup.sh" ]