diff --git a/Dockerfile b/Dockerfile index 615bb9e..ae01ee5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ # NAME leenooks/sbbs # VERSION latest -FROM debian:buster-slim +FROM debian:bullseye-slim # Base utilities RUN apt-get update \ @@ -13,44 +13,54 @@ RUN apt-get update \ # Set the default timezone for the container RUN ln -sf /usr/share/zoneinfo/Australia/Melbourne /etc/localtime +# Add NNCP +RUN echo "deb http://deb.debian.org/debian bullseye-backports main" > /etc/apt/sources.list.d/backports.list + +RUN apt-get update \ + && apt-get install -yyq nncp less ssmtp \ + && mkdir /etc/nncp \ + && apt-get -y autoremove \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /var/log/nncp + # Add in Leenooks' apt repository -RUN curl -sL http://apt.leenooks.net/setup.sh | DISTRO=buster bash +RUN curl -sL http://apt.leenooks.net/setup.sh | DISTRO=bullseye bash # Add ZeroTier -RUN echo "deb [trusted=yes] http://download.zerotier.com/debian/buster buster main" > /etc/apt/sources.list.d/zerotier.list +#RUN echo "deb [trusted=yes] http://download.zerotier.com/debian/bullseye bullseye main" > /etc/apt/sources.list.d/zerotier.list # Leenooks Utils -RUN apt-get update \ - && apt-get install -yqq zerotier-one \ - && apt-get -y autoremove \ - && apt-get clean \ - && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* +#RUN apt-get update \ +# && apt-get install -yqq zerotier-one \ +# && apt-get -y autoremove \ +# && apt-get clean \ +# && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* # Other Utilities -RUN echo "deb http://deb.debian.org/debian stretch main contrib" > /etc/apt/sources.list.d/contrib.list -RUN apt-get update \ - && apt-get install -yqq dosemu \ - && sed -ie 's#^lredir \(.*\)/media/cdrom#rem &#' /etc/dosemu/freedos/autoexec.bat \ - && apt-get -y autoremove \ - && apt-get clean \ - && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* +#RUN echo "deb http://deb.debian.org/debian stretch main contrib" > /etc/apt/sources.list.d/contrib.list +#RUN apt-get update \ +# && apt-get install -yqq dosemu \ +# && sed -ie 's#^lredir \(.*\)/media/cdrom#rem &#' /etc/dosemu/freedos/autoexec.bat \ +# && apt-get -y autoremove \ +# && apt-get clean \ +# && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* # Build SBBS COPY 0001-Feature-main-sbbs-404-Reserve-space-up-to-tagsBuffer.patch /tmp/ RUN apt-get update \ - && apt-get install -yqq git build-essential libnspr4-dev libncurses5-dev libncursesw5-dev libarchive-dev cvs wget pkgconf libcap2-bin sudo libarchive13 \ + && apt-get install -yqq git build-essential autoconf2.13 libnspr4-dev libncurses5-dev libncursesw5-dev libarchive-dev cvs wget python2.7 pkgconf libcap2-bin sudo libarchive13 \ && mkdir /opt/sbbs && cd /tmp \ && wget https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/install/GNUmakefile \ && git clone https://gitlab.com/SynchronetBBS/sbbs.git /opt/sbbs/repo \ && cd /opt/sbbs/repo && git checkout -b custom && git apply /tmp/0001-Feature-main-sbbs-404-Reserve-space-up-to-tagsBuffer.patch && cd /tmp \ - && make RELEASE=1 USE_DOSEMU=1 NO_X=1 SBBSDIR=/opt/sbbs install \ + && make RELEASE=1 NO_X=1 SBBSDIR=/opt/sbbs install \ && rm -rf /opt/sbbs/3rdp /opt/sbbs/src \ && mv /opt/sbbs/ctrl /opt/sbbs/ctrl.orig \ && mv /opt/sbbs/text /opt/sbbs/text.orig \ && mv /opt/sbbs/xtrn /opt/sbbs/xtrn.orig \ && mkdir /opt/sbbs/nodes.orig && mv /opt/sbbs/node[1-5] /opt/sbbs/nodes.orig \ && find /opt/sbbs -name CVS -type d -exec rm -rf {} + \ - && SUDO_FORCE_REMOVE=yes apt-get -y purge git build-essential libnspr4-dev libncurses5-dev libarchive-dev libncursesw5-dev cvs wget pkgconf libcap2-bin sudo \ + && SUDO_FORCE_REMOVE=yes apt-get -y purge git build-essential autoconf2.13 libnspr4-dev libncurses5-dev libarchive-dev libncursesw5-dev cvs wget pkgconf libcap2-bin sudo \ && apt-get -y autoremove \ && apt-get clean \ && rm -rf /opt/sbbs/repo \ @@ -67,13 +77,14 @@ WORKDIR /opt/sbbs ENV SBBSCTRL=/opt/sbbs/ctrl ENV SBBSEXEC=/opt/sbbs/exec ENV PATH=$PATH:${SBBSEXEC} +ENV NNCPCFG /etc/nncp/nncp.conf COPY start.sh ${SBBSEXEC}/ COPY doorparty.js ${SBBSEXEC}/ COPY main.cnf /opt/sbbs/ctrl.orig/ -VOLUME [ "/var/lib/zerotier-one" ] -VOLUME [ "/opt/sbbs/data","/opt/sbbs/ctrl","/opt/sbbs/fido","/opt/sbbs/mods","/opt/sbbs/text" ] +VOLUME [ "/var/lib/zerotier-one","/var/spool/nncp" ] +VOLUME [ "/opt/sbbs/data","/opt/sbbs/ctrl","/opt/sbbs/fido","/opt/sbbs/mods","/opt/sbbs/text","/etc/nncp" ] COPY logrotate.d /etc/logrotate.d/ RUN chmod 644 /etc/logrotate.d/* diff --git a/supervisord.d/nncp.conf b/supervisord.d/nncp.conf new file mode 100644 index 0000000..3f2386e --- /dev/null +++ b/supervisord.d/nncp.conf @@ -0,0 +1,3 @@ +[program:nncp] +#environment=NNCPCFG="/etc/nncp/nncp.conf" +command=/usr/bin/nncp-daemon -autotoss