Compare commits

..

No commits in common. "main" and "V0.1" have entirely different histories.
main ... V0.1

103 changed files with 150 additions and 950 deletions

View File

@ -1,4 +1,4 @@
DBP MYSTIC INSTALLER SCRIPT v0.7
DBP MYSTIC INSTALLER SCRIPT v0.1
This Script will help you install the Mystic
BBS System on Debian Linux. It also Compiles
Cryptlib, Adds Fail2ban, Logmanagent, Multi

View File

@ -2,10 +2,13 @@
Installscript / Systemd Files / Themes German&English
bash -c "$(wget -qLO - https://gitea.disconnected-by-peer.at/geos_one/mystic/raw/branch/main/install.sh)"
Thankyou
https://vswitchzero.com/mystic-systemd/ for the initial systemd scripts for mis and mrc
https://tteck.github.io/Proxmox/ for the layout of the install script and the cool error tracker.
https://www.youtube.com/@MysticGuyBBS for the inspiration for creating the script.
https://www.youtube.com/@MysticGuyBBS for the inspiration for creating the script.

View File

@ -2,6 +2,9 @@ if [ $CRYPT = "Yes" ]; then
echo "" >> ${DBP_INFO}
echo "Mystic SSL Support" >> ${DBP_INFO}
echo "with the libcl support you can now activate ssl in the Mystic system" >> ${DBP_INFO}
echo "also with the Cryptlib support a tool called pemtrans has been istalled" >> ${DBP_INFO}
echo "with it you can import your ssl certs like LetsEncrypt into the Mystic system" >> ${DBP_INFO}
echo "./pemtrans <key> <cert> <out> <label> <secret>" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}
fi

View File

@ -1,7 +0,0 @@
if [ $CRYPT = "Yes" ]; then
echo "" >> ${DBP_INFO}
echo "Mystic SSL Support" >> ${DBP_INFO}
echo "with the libcl support you can now activate ssl in the Mystic system" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}
fi

View File

@ -22,10 +22,40 @@ ln -sf libcl.so.3.4.5 ${LIBDIR}/libcl.so.3.4 &>/dev/null
ln -sf libcl.so.3.4 ${LIBDIR}/libcl.so.3 &>/dev/null
ln -sf libcl.so.3 ${LIBDIR}/libcl.so &>/dev/null
popd &>/dev/null
msg_ok "Setting up ${APP} cryptlib for ssh/ssl (be patient compiling cryptlib)"
msg_info "Setting up ${APP} pemtrans (be patient compiling pemtrans)"
SSLDEV=$(apt-cache madison libssl-dev | grep 1.0.1 | awk '{print $3}')
apt install -y --allow-downgrades libssl1.0.0 libssl-dev=${SSLDEV} &>/dev/null
wget -N https://github.com/amenonsen/pemtrans/archive/refs/heads/master.zip -O $MSTEMPDIR/pemtrans.zip &>/dev/null
rm -rf $MSTEMPDIR/pemtrans-master &>/dev/null
pushd $MSTEMPDIR/ &>/dev/null
unzip pemtrans.zip &>/dev/null
popd &>/dev/null
cat << 'EOF' > $MSTEMPDIR/pemtrans-master/Makefile
## Tell the compiler where to find <openssl/pem.h> and <cryptlib.h>
## Cryptlib is usually linked with these libraries:
EXTRA_LIBS = -lresolv -lpthread
## Remember to change theese to suit your environment!!
INCLUDES = -I../cryptlib-3.4.5
pemtrans: pemtrans.c
gcc $(INCLUDES) $(LIBS) -o pemtrans pemtrans.c $(CRYPTLIB) \
-lcrypto -lssl -lcl $(EXTRA_LIBS)
EOF
pushd $MSTEMPDIR/pemtrans-master &>/dev/null
make &>/dev/null
cp pemtrans ${MYSTIC_DIR}/
cp pemtrans.1 ${MYSTIC_DIR}/docs/
cp README ${MYSTIC_DIR}/docs/pemtrans_README
popd &>/dev/null
apt purge -y gcc g++ cpp &>/dev/null
apt install -y gcc g++ cpp &>/dev/null
msg_ok "Setting up ${APP} cryptlib for ssh/ssl (be patient compiling cryptlib)"
msg_ok "Setting up ${APP} pemtrans (be patient compiling pemtrans)"
fi

View File

@ -1,31 +0,0 @@
if [ $CRYPT = "Yes" ]; then
msg_info "Setting up ${APP} cryptlib for ssh/ssl (be patient compiling cryptlib)"
cmd_exec apt install -y build-essential &>>$INSTALLLOG
cmd_exec apt install -y gcc-9 g++-9 cpp-9 gcc g++ cpp &>>$INSTALLLOG
cmd_exec apt install -y patch &>>$INSTALLLOG
cmd_exec apt install -y dos2unix &>>$INSTALLLOG
cmd_exec wget -N http://www.mysticbbs.com/downloads/cl345.zip -O $MSTEMPDIR/cryptlib345.zip &>>$INSTALLLOG
cmd_exec rm -rf $MSTEMPDIR/cryptlib-3.4.5 &>>$INSTALLLOG
cmd_exec mkdir -p $MSTEMPDIR/cryptlib-3.4.5 &>>$INSTALLLOG
cmd_exec pushd $MSTEMPDIR/cryptlib-3.4.5 &>>$INSTALLLOG
cmd_exec unzip ../cryptlib345.zip &>>$INSTALLLOG
cmd_exec dos2unix tools/* &>>$INSTALLLOG
cmd_exec dos2unix kernel/* &>>$INSTALLLOG
cmd_exec patch -p1 -i $MSTEMPDIR/mystic/cryptlib/patches/gccversion-345.patch &>>$INSTALLLOG
cmd_exec patch -p0 -i $MSTEMPDIR/mystic/cryptlib/patches/cl-linux-yield.patch &>>$INSTALLLOG
cmd_exec ln -sf gcc-9 /usr/bin/gcc &>>$INSTALLLOG
cmd_exec ln -sf g++-9 /usr/bin/g++ &>>$INSTALLLOG
cmd_exec ln -sf cpp-9 /usr/bin/cpp &>>$INSTALLLOG
cmd_exec make shared &>>$INSTALLLOG
cmd_exec cp libcl.so.3.4.5 ${LIBDIR}/ &>>$INSTALLLOG
cmd_exec ln -sf libcl.so.3.4.5 ${LIBDIR}/libcl.so.3.4 &>>$INSTALLLOG
cmd_exec ln -sf libcl.so.3.4 ${LIBDIR}/libcl.so.3 &>>$INSTALLLOG
cmd_exec ln -sf libcl.so.3 ${LIBDIR}/libcl.so &>>$INSTALLLOG
cmd_exec popd &>>$INSTALLLOG
cmd_exec apt purge -y gcc g++ cpp &>>$INSTALLLOG
cmd_exec apt install -y gcc g++ cpp &>>$INSTALLLOG
msg_ok "Setting up ${APP} cryptlib for ssh/ssl (be patient compiling cryptlib)"
fi

View File

@ -1,8 +0,0 @@
CRYPT=$(whiptail --title "SSL SSH Support for Mystic" --radiolist --cancel-button Exit-Script "Choose Yes No" 8 58 2 \
"Yes" "Add ssl Support" ON \
"No" "Don't add ssl Support" OFF \
3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 0 ]; then
echo -e "${DGN}Add ssl Support: ${BGN}$CRYPT${CL}"
fi

View File

@ -1,5 +0,0 @@
for file in $(ls *-v6.sh) ; do
cp -- "${file}" "$(echo "${file}" | sed -e 's/v6\.sh/v7\.sh/')"
done
git rm *-v5.sh

View File

@ -27,7 +27,7 @@ fi
MYSTIC_DIR="@MYSTIC_DIR@"
TMP_DIR=$(mktemp -d)
BAN_UNBAN_ENABLE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S General -k BanUnbanIP --silent`
BAN_UNBAN_ENABLE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S GeneralDbP -k BanUnbanIP --silent`
BAN_UNBAN_SERVICE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S BanUnbanIP -k BanningService --silent`
BAN_UNBAN_MYSTIC=`${MYSTIC_DIR}/inimod r ${INIFILE} -S BanUnbanIP -k UnbanInMystic --silent`

View File

@ -21,30 +21,30 @@ fi
MYSTIC_DIR="@MYSTIC_DIR@"
TMP_DIR=$(mktemp -d)
MIS_ENABLE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S General -k MisLog --silent`
MIS_ENABLE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S GeneralDbP -k MisLog --silent`
MIS_KEEP=`${MYSTIC_DIR}/inimod r ${INIFILE} -S MisLog -k RetentionTime --silent`
POLL_ENABLE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S General -k PollLog --silent`
POLL_ENABLE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S GeneralDbP -k PollLog --silent`
POLL_KEEP=`${MYSTIC_DIR}/inimod r ${INIFILE} -S PollLog -k RetentionTime --silent`
MUTIL_ENABLE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S General -k MutilLog --silent`
MUTIL_ENABLE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S GeneralDbP -k MutilLog --silent`
MUTIL_KEEP=`${MYSTIC_DIR}/inimod r ${INIFILE} -S MutilLog -k RetentionTime --silent`
ERROR_ENABLE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S General -k ErrorLog --silent`
ERROR_ENABLE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S GeneralDbP -k ErrorLog --silent`
ERROR_KEEP=`${MYSTIC_DIR}/inimod r ${INIFILE} -S ErrorLog -k RetentionTime --silent`
MRCCHAT_ENABLE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S General -k MrcChatLog --silent`
MRCCHAT_ENABLE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S GeneralDbP -k MrcChatLog --silent`
MRCCHAT_KEEP=`${MYSTIC_DIR}/inimod r ${INIFILE} -S MrcChatLog -k RetentionTime --silent`
MRCSERVER_ENABLE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S General -k MrcServerLog --silent`
MRCSERVER_ENABLE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S GeneralDbP -k MrcServerLog --silent`
MRCSERVER_KEEP=`${MYSTIC_DIR}/inimod r ${INIFILE} -S MrcServerLog -k RetentionTime --silent`
NODE_ENABLE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S General -k NodeLog --silent`
NODE_ENABLE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S GeneralDbP -k NodeLog --silent`
NODE_COUNT=`${MYSTIC_DIR}/inimod r ${INIFILE} -S NodeLog -k MaxNodes --silent`
NODE_KEEP=`${MYSTIC_DIR}/inimod r ${INIFILE} -S NodeLog -k RetentionTime --silent`
NODE_START=0
NODE_START=1
IP2L_ENABLE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S General -k Ip2Location --silent`
IP2L_ENABLE=`${MYSTIC_DIR}/inimod r ${INIFILE} -S GeneralDbP -k Ip2Location --silent`
IP2L_TOKEN=`${MYSTIC_DIR}/inimod r ${INIFILE} -S Ip2Location -k Token --silent`
IP2L_DB=`${MYSTIC_DIR}/inimod r ${INIFILE} -S Ip2Location -k Database --silent`

View File

@ -1,4 +1,4 @@
[General]
[GeneralDbP]
Ip2Location=false
MisLog=false
@ -12,13 +12,13 @@ BanUnbanIP=false
BaseDir=@MYSTIC_DIR@
; Logfile Format not implemented at the moment ist hardcoded to YYYYMMDD
; Logfielformat not inplemented at the moment ist hardcoded to YYYYMMDD
LogFileFormat=YYYY-MM-DD
[Ip2Location]
; Pleas Create an Free Account at https://lite.ip2location.com/ and fill in the Token
; if you Buy the the Service you can CHange the Database to reflect your purchase.
; But chose the BIN Version for the download
; But chose the BIN Veriosn for the download
Token=PleasePutTokenHere
Database=DB1LITEBIN

18
dbp/info-v1.sh Normal file
View File

@ -0,0 +1,18 @@
echo "" >> ${DBP_INFO}
echo "To activate the Disconnected-by-peer scripts for Mystic" >> ${DBP_INFO}
echo "you have to activate it in the Mystic Event Editor" >> ${DBP_INFO}
echo "Below is a suggested configuration" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "Active | Description | Event Type | Exec Hour:Min | Shell | Prefix | Semaphore | Kill-After | Warning | SMTWTFS" >> ${DBP_INFO}
echo "-------+--------------------------------+------------+---------------+--------------------------------------------------+--------+--------------------------+--------------------------+---------+--------" >> ${DBP_INFO}
echo "Yes | Daily Tasks | Shell | 00:00 | cron -f dbp.ini | Yes | | | 0 | SMTWTFS" >> ${DBP_INFO}
echo "Yes | Nightly Maintenance | Shell | 04:00 | mutil maint.ini | Yes | | | 0 | SMTWTFS" >> ${DBP_INFO}
echo "Yes | Firewall Ban | IP Blocked | 00:00 | banunban -f dbp.ini -d banip -i @IP@ | Yes | | | 0 | -------" >> ${DBP_INFO}
echo "Yes | Sending Outbound Echo/Net Mail | Semaphore | 00:00 | mutil mailout.ini|mis poll send|mutil mailin.ini | Yes | echomail.out|netmail.out | echomail.out|netmail.out | 0 | -------" >> ${DBP_INFO}
echo "Yes | Toss Incomming Echo/Net Mail | Semaphore | 00:00 | mutil mailin.ini | Yes | echomail.in|netmail.in | echomail.in|netmail.in | 0 | -------" >> ${DBP_INFO}
echo "Yes | Poll Echomail | Inteval | 01:05 | mis poll forced|mutil mailin.ini | Yes | | | | SMTWTFS" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "Bevore activating any services you have to configure the ${MYSTIC_DIR}/dbp.ini file to your needs and installed services" >> ${DBP_INFO}
echo "then you can start the ./cron -f dbp.ini as the mystic user" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}

View File

@ -1,18 +0,0 @@
echo "" >> ${DBP_INFO}
echo "To activate the Disconnected-by-peer scripts for Mystic" >> ${DBP_INFO}
echo "you have to activate it in the Mystic Event Editor" >> ${DBP_INFO}
echo "Below is a suggested configuration" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "Active | Description | Event Type | Exec Hh:Mm | Shell | Prefix | Semaphore | Kill-After | Warning | SMTWTFS" >> ${DBP_INFO}
echo "-------+---------------------------+------------+------------+------------------------------------------+--------+--------------------------+--------------------------+---------+--------" >> ${DBP_INFO}
echo "Yes | Daily Tasks | Shell | 00:00 | cron -f dbp.ini | Yes | | | 0 | SMTWTFS" >> ${DBP_INFO}
echo "Yes | Nightly Maintenance | Shell | 04:00 | mutil maint | Yes | | | 0 | SMTWTFS" >> ${DBP_INFO}
echo "Yes | Firewall Ban | IP Blocked | 00:00 | banunban -f dbp.ini -d banip -i @IP@ | Yes | | | 0 | -------" >> ${DBP_INFO}
echo "Yes | Sending Out Echo/Net Mail | Semaphore | 00:00 | mutil mailout|mis poll send|mutil mailin | Yes | echomail.out|netmail.out | echomail.out|netmail.out | 0 | -------" >> ${DBP_INFO}
echo "Yes | Toss Incom Echo/Net Mail | Semaphore | 00:00 | mutil mailin | Yes | echomail.in|netmail.in | echomail.in|netmail.in | 0 | -------" >> ${DBP_INFO}
echo "Yes | Poll Echomail | Inteval | 01:05 | mis poll forced|mutil mailin | Yes | | | | SMTWTFS" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "Before activating any services you have to configure the ${MYSTIC_DIR}/dbp.ini file to your needs and installed services" >> ${DBP_INFO}
echo "then you can start the ./cron -f dbp.ini as the mystic user" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}

View File

@ -1,18 +0,0 @@
echo "" >> ${DBP_INFO}
echo "To activate the Disconnected-by-peer scripts for Mystic" >> ${DBP_INFO}
echo "you have to activate it in the Mystic Event Editor" >> ${DBP_INFO}
echo "Below is a suggested configuration" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "Active | Description | Event Type | Exec Hh:Mm | Shell | Prefix | Semaphore | Kill-After | Warning | SMTWTFS" >> ${DBP_INFO}
echo "-------+---------------------------+------------+------------+------------------------------------------+--------+--------------------------+--------------------------+---------+--------" >> ${DBP_INFO}
echo "Yes | Daily Tasks | Shell | 00:00 | cron -f dbp.ini | Yes | | | 0 | SMTWTFS" >> ${DBP_INFO}
echo "Yes | Nightly Maintenance | Shell | 04:00 | mutil maint | Yes | | | 0 | SMTWTFS" >> ${DBP_INFO}
echo "Yes | Firewall Ban | IP Blocked | 00:00 | banunban -f dbp.ini -d banip -i @IP@ | Yes | | | 0 | -------" >> ${DBP_INFO}
echo "Yes | Sending Out Echo/Net Mail | Semaphore | 00:00 | mutil mailout|mis poll send|mutil mailin | Yes | echomail.out|netmail.out | echomail.out|netmail.out | 0 | -------" >> ${DBP_INFO}
echo "Yes | Toss Incom Echo/Net Mail | Semaphore | 00:00 | mutil mailin | Yes | echomail.in|netmail.in | echomail.in|netmail.in | 0 | -------" >> ${DBP_INFO}
echo "Yes | Poll Echomail | Inteval | 01:05 | mis poll forced|mutil mailin | Yes | | | | SMTWTFS" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "Before activating any services you have to configure the ${MYSTIC_DIR}/dbp.ini file to your needs and installed services" >> ${DBP_INFO}
echo "then you can start the ./cron -f dbp.ini as the mystic user" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}

View File

@ -1,24 +0,0 @@
if [ $DBPSCRIPTS = "Yes" ]; then
msg_info "Installing bbs.disconnected-by-peer.at Scripts Dependencies for ${APP}"
cmd_exec wget -N https://ftp.disconnected-by-peer.at/IniMod/IniMod_linux_${INIMOD_ARCH}.zip -O $MSTEMPDIR/IniMod_linux_${INIMOD_ARCH}.zip &>>$INSTALLLOG
cmd_exec rm -rf $MSTEMPDIR/IniMod_linux_${INIMOD_ARCH} &>>$INSTALLLOG
cmd_exec mkdir -p $MSTEMPDIR/IniMod_linux_${INIMOD_ARCH} &>>$INSTALLLOG
cmd_exec pushd $MSTEMPDIR/IniMod_linux_${INIMOD_ARCH} &>>$INSTALLLOG
cmd_exec unzip ../IniMod_linux_${INIMOD_ARCH}.zip &>>$INSTALLLOG
cmd_exec cp inimod ${MYSTIC_DIR} &>>$INSTALLLOG
cmd_exec chmod +x ${MYSTIC_DIR}/inimod &>>$INSTALLLOG
cmd_exec cp README.txt ${MYSTIC_DIR}/docs/inimod_README.txt &>>$INSTALLLOG
cmd_exec popd &>>$INSTALLLOG
msg_ok "Installing bbs.disconnected-by-peer.at Scripts Dependencies for ${APP}"
msg_info "Installing DbP Cron/banip/unbanip Scripts"
cmd_exec pushd $MSTEMPDIR/mystic/dbp &>>$INSTALLLOG
sed -e "s!@MYSTIC_DIR@!${MYSTIC_DIR}!g" cron.sh > ${MYSTIC_DIR}/cron
cmd_exec chmod +x ${MYSTIC_DIR}/cron &>>$INSTALLLOG
sed -e "s!@MYSTIC_DIR@!${MYSTIC_DIR}!g" banunban.sh > ${MYSTIC_DIR}/banunban
cmd_exec chmod +x ${MYSTIC_DIR}/banunban &>>$INSTALLLOG
sed -e "s!@MYSTIC_DIR@!${MYSTIC_DIR}!g" dbp.ini > ${MYSTIC_DIR}/dbp.ini
cmd_exec popd &>>$INSTALLLOG
msg_ok "Installing DbP Cron/banip/unbanip Scripts"
fi

View File

@ -1,8 +0,0 @@
DBPSCRIPTS=$(whiptail --title "Add The Disconnected by Peer Support Script" --radiolist --cancel-button Exit-Script "Choose Yes No" 8 58 2 \
"Yes" "Add DbP Script" ON \
"No" "Don't add DbP Script" OFF \
3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 0 ]; then
echo -e "${DGN}Add DbP Support Script: ${BGN}$DBPSCRIPTS${CL}"
fi

View File

@ -1,5 +0,0 @@
for file in $(ls *-v6.sh) ; do
cp -- "${file}" "$(echo "${file}" | sed -e 's/v6\.sh/v7\.sh/')"
done
git rm *-v5.sh

8
dosemu2/info-v1.sh Normal file
View File

@ -0,0 +1,8 @@
if [ $DOSEMU = "Yes" ]; then
echo "" >> ${DBP_INFO}
echo "DosEmu2 Integration with Mystic" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "For the correct DosEmu2 integration follow the Mystic Doors doc ${MYSTIC_DIR}/docs/unix.install.txt" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}
fi

View File

@ -1,21 +0,0 @@
if [ "${DOSEMU}" = "Yes" ]; then
if [ "${DOSEMUVER}" = "dosemu2" ]; then
echo "" >> ${DBP_INFO}
echo "DosEmu2 Integration with Mystic" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "For the correct DosEmu2 integration follow the Mystic Doors doc ${MYSTIC_DIR}/docs/unix.install.txt" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}
fi
if [ "${DOSEMUVER}" = "dosemu" ]; then
echo "" >> ${DBP_INFO}
echo "DosEmu Integration with Mystic" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "For the correct DosEmu integration follow the Mystic Doors doc ${MYSTIC_DIR}/docs/unix.install.txt" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}
fi
fi

View File

@ -1,21 +0,0 @@
if [ "${DOSEMU}" = "Yes" ]; then
if [ "${DOSEMUVER}" = "dosemu2" ]; then
echo "" >> ${DBP_INFO}
echo "DosEmu2 Integration with Mystic" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "For the correct DosEmu2 integration follow the Mystic Doors doc ${MYSTIC_DIR}/docs/unix.install.txt" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}
fi
if [ "${DOSEMUVER}" = "dosemu" ]; then
echo "" >> ${DBP_INFO}
echo "DosEmu Integration with Mystic" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "For the correct DosEmu integration follow the Mystic Doors doc ${MYSTIC_DIR}/docs/unix.install.txt" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}
fi
fi

12
dosemu2/install-v1.sh Normal file
View File

@ -0,0 +1,12 @@
if [ $DOSEMU = "Yes" ]; then
msg_info "Installing DosEmu2 Dependencies for ${APP}"
pushd $MSTEMPDIR &>/dev/null
curl 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x6d9cd73b401a130336ed0a56ebe1b5ded2ad45d6' | tee /etc/apt/trusted.gpg.d/code.launchpad.net-dosemu2.asc &>/dev/null
echo "deb https://ppa.launchpadcontent.net/dosemu2/ppa/ubuntu $UBUNTU main" | tee /etc/apt/sources.list.d/dosemu2.list &>/dev/null
apt update &>/dev/null
apt install -y dosemu2 &>/dev/null
#apt install -y install-otherdos &>/dev/null
msg_ok "Installing DosEmu2 Dependencies for ${APP}"
fi

View File

@ -1,28 +0,0 @@
if [ "${DOSEMU}" = "Yes" ]; then
if [ "${DOSEMUVER}" = "dosemu2" ]; then
msg_info "Installing DosEmu2 Dependencies for ${APP}"
pushd $MSTEMPDIR &>/dev/null
curl 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x6d9cd73b401a130336ed0a56ebe1b5ded2ad45d6' | tee /etc/apt/trusted.gpg.d/code.launchpad.net-dosemu2.asc &>/dev/null
echo "deb https://ppa.launchpadcontent.net/dosemu2/ppa/ubuntu $UBUNTU main" | tee /etc/apt/sources.list.d/dosemu2.list &>/dev/null
apt update &>/dev/null
apt install -y dosemu2 &>/dev/null
#apt install -y install-otherdos &>/dev/null
msg_ok "Installing DosEmu2 Dependencies for ${APP}"
fi
if [ "${DOSEMUVER}" = "dosemu" ]; then
msg_info "Installing DosEmu Dependencies for ${APP}"
pushd $MSTEMPDIR &>/dev/null
curl 'https://deb.freexian.com/extended-lts/archive-key.gpg' | tee /etc/apt/trusted.gpg.d/freexian-archive-extended-lts.gpg &>/dev/null
echo "deb http://deb.freexian.com/extended-lts stretch main contrib" | tee /etc/apt/sources.list.d/stretch.list &>/dev/null
apt update &>/dev/null
apt install -y dosemu &>/dev/null
#apt install -y install-otherdos &>/dev/null
msg_ok "Installing DosEmu Dependencies for ${APP}"
fi
fi

View File

@ -1,28 +0,0 @@
if [ "${DOSEMU}" = "Yes" ]; then
if [ "${DOSEMUVER}" = "dosemu2" ]; then
msg_info "Installing DosEmu2 Dependencies for ${APP}"
cmd_exec pushd $MSTEMPDIR &>>$INSTALLLOG
curl 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x6d9cd73b401a130336ed0a56ebe1b5ded2ad45d6' | tee /etc/apt/trusted.gpg.d/code.launchpad.net-dosemu2.asc &>>$INSTALLLOG
echo "deb https://ppa.launchpadcontent.net/dosemu2/ppa/ubuntu $UBUNTU main" | tee /etc/apt/sources.list.d/dosemu2.list &>>$INSTALLLOG
cmd_exec apt update &>>$INSTALLLOG
cmd_exec apt install -y dosemu2 &>>$INSTALLLOG
#cmd_exec apt install -y install-otherdos &>>$INSTALLLOG
msg_ok "Installing DosEmu2 Dependencies for ${APP}"
fi
if [ "${DOSEMUVER}" = "dosemu" ]; then
msg_info "Installing DosEmu Dependencies for ${APP}"
cmd_exec pushd $MSTEMPDIR &>>$INSTALLLOG
curl 'https://deb.freexian.com/extended-lts/archive-key.gpg' | tee /etc/apt/trusted.gpg.d/freexian-archive-extended-lts.gpg &>>$INSTALLLOG
echo "deb http://deb.freexian.com/extended-lts stretch main contrib" | tee /etc/apt/sources.list.d/stretch.list &>>$INSTALLLOG
cmd_exec apt update &>>$INSTALLLOG
cmd_exec apt install -y dosemu &>>$INSTALLLOG
#cmd_exec apt install -y install-otherdos &>>$INSTALLLOG
msg_ok "Installing DosEmu Dependencies for ${APP}"
fi
fi

8
dosemu2/prompt-v1.sh Normal file
View File

@ -0,0 +1,8 @@
DOSEMU=$(whiptail --title "Add DosEmu2 to Mystic" --radiolist --cancel-button Exit-Script "Choose Yes No" 8 58 2 \
"Yes" "Add DosEmu2 Script" ON \
"No" "Don't add DosEmu2 Script" OFF \
3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 0 ]; then
echo -e "${DGN}Add DbP Script: ${BGN}$DOSEMU${CL}"
fi

View File

@ -1,8 +0,0 @@
DOSEMU=$(whiptail --title "Add DosEmu2/DosEmu to Mystic" --radiolist --cancel-button Exit-Script "Choose Yes No" 8 58 2 \
"Yes" "Add DosEmu2/DosEmu Support" ON \
"No" "Don't add DosEmu2/DosEmu Support" OFF \
3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 0 ]; then
echo -e "${DGN}Add DosEmu2/DosEmu Support: ${BGN}$DOSEMU${CL}"
fi

View File

@ -1,8 +0,0 @@
DOSEMU=$(whiptail --title "Add DosEmu2/DosEmu to Mystic" --radiolist --cancel-button Exit-Script "Choose Yes No" 8 58 2 \
"Yes" "Add DosEmu2/DosEmu Support" ON \
"No" "Don't add DosEmu2/DosEmu Support" OFF \
3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 0 ]; then
echo -e "${DGN}Add DosEmu2/DosEmu Support: ${BGN}$DOSEMU${CL}"
fi

View File

@ -1,5 +0,0 @@
for file in $(ls *-v6.sh) ; do
cp -- "${file}" "$(echo "${file}" | sed -e 's/v6\.sh/v7\.sh/')"
done
git rm *-v5.sh

View File

@ -4,7 +4,7 @@ echo "Fail2Ban Mystic integration" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "A Fail2ban Systemd service override has been installed so tha the unprivileged user mystic can add and remove " >> ${DBP_INFO}
echo "IP's to the fail2ban system" >> ${DBP_INFO}
echo "to activate the fail2ban integration you will have to enable it in the ${MYSTIC_DIR}/dbp.ini file" >> ${DBP_INFO}
echo "to activate the fail2ban integration you will have to enabel it in the ${MYSTIC_DIR}/dbp.ini file" >> ${DBP_INFO}
echo " for this to work correctly you wil have to change the firewall Line in the Event Editor to the suggested" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}

View File

@ -1,21 +0,0 @@
if [ $BANUNBAN = "fail2ban" ]; then
echo "" >> ${DBP_INFO}
echo "Fail2Ban Mystic integration" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "A Fail2ban Systemd service override has been installed so tha the unprivileged user mystic can add and remove " >> ${DBP_INFO}
echo "IP's to the fail2ban system" >> ${DBP_INFO}
echo "to activate the fail2ban integration you will have to enable it in the ${MYSTIC_DIR}/dbp.ini file" >> ${DBP_INFO}
echo " for this to work correctly you wil have to change the firewall Line in the Event Editor to the suggested" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}
fi
if [ $BANUNBAN = "ipban" ]; then
echo "" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}
fi

View File

@ -1,53 +0,0 @@
if [ $BANUNBAN = "fail2ban" ]; then
msg_info "Installing Fail2Ban Dependencies for ${APP}"
cmd_exec apt install -y fail2ban &>>$INSTALLLOG
cmd_exec apt install -y iptables &>>$INSTALLLOG
cmd_exec apt install -y ipset &>>$INSTALLLOG
if [ -z "${FAIL2BAN_GROUP}" ]; then
cmd_exec groupadd fail2ban &>>$INSTALLLOG
fi
cmd_exec usermod --append --groups fail2ban mystic &>>$INSTALLLOG
msg_ok "Installing Fail2Ban Dependencies for ${APP}"
msg_info "Installing Fail2Ban Scripts for ${APP}"
cmd_exec pushd $MSTEMPDIR/mystic/fail2ban &>>$INSTALLLOG
cmd_exec sed -e "s!@MYSTIC_DIR@!${MYSTIC_DIR}!g" action.d/mysticbbs.conf > /etc/fail2ban/action.d/mysticbbs.conf
cmd_exec sed -e "s!@MYSTIC_DIR@!${MYSTIC_DIR}!g" filter.d/mysticbbs.conf > /etc/fail2ban/filter.d/mysticbbs.conf
cmd_exec sed -e "s!@MYSTIC_DIR@!${MYSTIC_DIR}!g" jail.d/mysticbbs.conf > /etc/fail2ban/jail.d/mysticbbs.conf
cmd_exec mkdir -p /etc/systemd/system/fail2ban.service.d
cmd_exec cp systemd/override.conf /etc/systemd/system/fail2ban.service.d/override.conf
cmd_exec popd &>>$INSTALLLOG
msg_ok "Installing Fail2Ban Scripts for ${APP}"
fi
if [ $BANUNBAN = "ipban" ]; then
msg_info "Installing IpBan Dependencies for ${APP}"
cmd_exec pushd $MSTEMPDIR &>>$INSTALLLOG
cmd_exec wget -N https://github.com/DigitalRuby/IPBan/raw/master/IPBanCore/Linux/Scripts/Install.sh -O $MSTEMPDIR/ipban-install.sh &>>$INSTALLLOG
cmd_exec apt install -y fail2ban &>>$INSTALLLOG
cmd_exec apt install -y iptables &>>$INSTALLLOG
cmd_exec apt install -y ipset &>>$INSTALLLOG
cmd_exec apt install -y xmlstarlet &>>$INSTALLLOG
cmd_exec sed -i '/yum/d' $MSTEMPDIR/ipban-install.sh &>>$INSTALLLOG
cmd_exec sed -i '/systemctl/d' $MSTEMPDIR/ipban-install.sh &>>$INSTALLLOG
cmd_exec sed -e 's!sudo !!g' -i $MSTEMPDIR/ipban-install.sh &>>$INSTALLLOG
cmd_exec sed -e 's!-qq!-qqo!g' -i $MSTEMPDIR/ipban-install.sh &>>$INSTALLLOG
cmd_exec sed -i '/nano/d' $MSTEMPDIR/ipban-install.sh &>>$INSTALLLOG
cmd_exec bash $MSTEMPDIR/ipban-install.sh &>>$INSTALLLOG
if [ -z "${IPBAN_GROUP}" ]; then
cmd_exec groupadd ipban &>>$INSTALLLOG
fi
cmd_exec usermod --append --groups ipban mystic &>>$INSTALLLOG
cmd_exec chown -R root:ipban /opt/ipban &>>$INSTALLLOG
cmd_exec chmod 775 /opt/ipban/ &>>$INSTALLLOG
cmd_exec dos2unix /opt/ipban/*.{config,xml,md} &>>$INSTALLLOG
cmd_exec popd &>>$INSTALLLOG
msg_ok "Installing IpBan Dependencies for ${APP}"
fi

View File

@ -1,9 +0,0 @@
BANUNBAN=$(whiptail --title "Add Ban / Unban to Mystic" --radiolist --cancel-button Exit-Script "Choose Fail2Ban IpBan No" 12 58 5 \
"fail2ban" "Add Fail2Ban" ON \
"ipban" "Add IpBan" OFF \
"No" "Don't add IP Banning" OFF \
3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 0 ]; then
echo -e "${DGN}Add Fail2Ban: ${BGN}$BANUNBAN${CL}"
fi

View File

@ -1,5 +0,0 @@
for file in $(ls *-v6.sh) ; do
cp -- "${file}" "$(echo "${file}" | sed -e 's/v6\.sh/v7\.sh/')"
done
git rm *-v5.sh

View File

@ -12,9 +12,8 @@ CM="${GN}✓${CL}"
APP="Mystic BBS"
MSDIR="/opt/mystic"
MSTEMPDIR="/usr/local/src/mystic"
INSTALLLOG=$MSTEMPDIR/install.log
TMP_DIR=$(mktemp -d)
SCRIPT_VER="v7"
SCRIPT_VER="v1"
GROUP=$(getent group mystic)
USER=$(getent shadow mystic)
@ -40,13 +39,6 @@ function error_exit() {
exit $EXIT
}
function cmd_exec() {
{
printf "$(date '+%Y-%m-%d %H:%M:%S') %s\n" "$*"
"$@"
} >> $INSTALLLOG
}
if command -v pveversion >/dev/null 2>&1; then echo -e "⚠️ Can't Install on Proxmox "; exit; fi
while true; do
read -p "This will Install ${APP} on $hostname. Proceed(y/n)?" yn
@ -68,11 +60,9 @@ function msg_ok() {
echo -e "${BFR} ${CM} ${GN}${msg}${CL}"
}
mkdir -p $MSTEMPDIR &>/dev/null
msg_info "Installing needed base packages"
cmd_exec apt update &>>$INSTALLLOG
cmd_exec apt install lsb-release dpkg-dev wget curl figlet lolcat unzip whiptail dialog -y &>>$INSTALLLOG
apt update &>/dev/null
apt install lsb-release dpkg-dev wget curl figlet lolcat unzip -y &>/dev/null
msg_ok "Installing needed base packages"
function header_info {
@ -92,34 +82,24 @@ if [ "${ARCH}" = "x86_64-linux-gnu" ]; then
INIMOD_ARCH="amd64"
MYSTIC_ARCH="l64"
MYSTIC_EXT="rar"
RARLAB="rar"
DOSEMUVER="dosemu2"
elif [ "${ARCH}" = "i386-linux-gnu" ]; then
INIMOD_ARCH="amd32"
MYSTIC_ARCH="l32"
MYSTIC_EXT="rar"
RARLAB="rar"
DOSEMUVER="dosemu"
elif [ "${ARCH}" = "aarch64-linux-gnu" ]; then
INIMOD_ARCH="arm64"
MYSTIC_ARCH="p64"
MYSTIC_EXT="zip"
RARLAB=""
DOSEMUVER="dosemu2"
elif [ "${ARCH}" = "arm-linux-gnueabihf" ]; then
INIMOD_ARCH="arm32"
MYSTIC_ARCH="p32"
MYSTIC_EXT="zip"
RARLAB=""
DOSEMUVER=""
else
echo "Architecture not supported: ${ARCH}"
exit 1
fi
if [ "${CODENAME}" = "trixie" ]; then
UBUNTU="kinetic"
elif [ "${CODENAME}" = "bookworm" ]; then
if [ "${CODENAME}" = "bookworm" ]; then
UBUNTU="kinetic"
elif [ "${CODENAME}" = "bullseye" ]; then
UBUNTU="focal"
@ -131,14 +111,6 @@ else
UBUNTU="${CODENAME}"
fi
if [ "${CODENAME}" = "trixie" ]; then
msg_info "adding bullseye repository to bookworm for python2"
echo "deb http://deb.debian.org/debian bullseye contrib non-free main" > /etc/apt/sources.list.d/bullseye.list
echo "deb http://deb.debian.org/debian bullseye-updates contrib non-free main" >> /etc/apt/sources.list.d/bullseye.list
echo "deb http://security.debian.org bullseye-security contrib non-free main" >> /etc/apt/sources.list.d/bullseye.list
msg_ok "adding bullseye repository to bookworm for python2"
fi
if [ "${CODENAME}" = "bookworm" ]; then
msg_info "adding bullseye repository to bookworm for python2"
echo "deb http://deb.debian.org/debian bullseye contrib non-free main" > /etc/apt/sources.list.d/bullseye.list
@ -147,38 +119,35 @@ echo "deb http://security.debian.org bullseye-security contrib non-free main" >>
msg_ok "adding bullseye repository to bookworm for python2"
fi
if [ "${CODENAME}" = "noble" ]; then
msg_info "adding jammy repository to noble for python2"
echo "deb http://archive.ubuntu.com/ubuntu jammy main restricted universe multiverse" > /etc/apt/sources.list.d/jammy.list
echo "deb http://archive.ubuntu.com/ubuntu jammy-updates main restricted universe multiverse" >> /etc/apt/sources.list.d/jammy.list
echo "deb http://archive.ubuntu.com/ubuntu jammy-security main restricted universe multiverse" >> /etc/apt/sources.list.d/jammy.list
msg_ok "adding jammy repository to noble for python2"
fi
msg_info "adding jessie lts repository for openssl 1.0"
wget https://deb.freexian.com/extended-lts/archive-key.gpg -O /etc/apt/trusted.gpg.d/freexian-archive-extended-lts.gpg &>/dev/null
echo "deb http://deb.freexian.com/extended-lts jessie main contrib non-free" > /etc/apt/sources.list.d/jessie-extended-lts.list
msg_ok "adding jessie lts repository for openssl 1.0"
msg_info "Setting up ${APP} Repository"
cmd_exec apt install -y software-properties-common &>>$INSTALLLOG
apt install -y software-properties-common &>/dev/null
if [ "${DIST}" = "Debian" ]; then
cmd_exec apt-add-repository -y contrib &>>$INSTALLLOG
cmd_exec apt-add-repository -y non-free &>>$INSTALLLOG
apt-add-repository -y contrib &>/dev/null
apt-add-repository -y non-free &>/dev/null
fi
if [ "${DIST}" = "Ubuntu" ]; then
cmd_exec apt-add-repository -y universe &>>$INSTALLLOG
cmd_exec apt-add-repository -y restricted &>>$INSTALLLOG
cmd_exec apt-add-repository -y multiverse &>>$INSTALLLOG
apt-add-repository -y universe &>/dev/null
apt-add-repository -y restricted &>/dev/null
apt-add-repository -y multiverse &>/dev/null
fi
cmd_exec apt update &>>$INSTALLLOG
cmd_exec apt install -y curl wget gnupg unzip unrar &>>$INSTALLLOG
cmd_exec mkdir -p $MSTEMPDIR &>>$INSTALLLOG
apt update &>/dev/null
apt install -y curl wget gnupg unzip unrar &>/dev/null
mkdir -p $MSTEMPDIR &>/dev/null
msg_ok "Setting up ${APP} Repository"
#==============================================================================================================
msg_info "Downloading ${APP} Mystic BBS Disconnected-by-Peer Installer Files"
cmd_exec wget -N https://gitea.disconnected-by-peer.at/geos_one/mystic/archive/main.zip -O $MSTEMPDIR/dbp-main.zip &>>$INSTALLLOG
cmd_exec rm -rf $MSTEMPDIR/mystic &>>$INSTALLLOG
cmd_exec pushd $MSTEMPDIR &>>$INSTALLLOG
cmd_exec unzip dbp-main.zip &>>$INSTALLLOG
cmd_exec popd &>>$INSTALLLOG
wget -N https://gitea.disconnected-by-peer.at/geos_one/mystic/archive/main.zip -O $MSTEMPDIR/dbp-main.zip &>/dev/null
rm -rf $MSTEMPDIR/mystic &>/dev/null
pushd $MSTEMPDIR &>/dev/null
unzip dbp-main.zip &>/dev/null
popd &>/dev/null
msg_ok "Downloading ${APP} Mystic BBS Disconnected-by-Peer Installer Files"
#==============================================================================================================
@ -199,10 +168,8 @@ source $MSTEMPDIR/mystic/ip2location/prompt-${SCRIPT_VER}.sh
source $MSTEMPDIR/mystic/dbp/prompt-${SCRIPT_VER}.sh
# Add Fail2ban | banip
source $MSTEMPDIR/mystic/fail2ban/prompt-${SCRIPT_VER}.sh
# Add Dosemu2
if [ -n "${DOSEMUVER}" ]; then
# Add Fail2ban | banip
source $MSTEMPDIR/mystic/dosemu2/prompt-${SCRIPT_VER}.sh
fi
#==============================================================================================================
@ -222,10 +189,8 @@ source $MSTEMPDIR/mystic/ip2location/install-${SCRIPT_VER}.sh
source $MSTEMPDIR/mystic/dbp/install-${SCRIPT_VER}.sh
# Add Fail2ban | banip
source $MSTEMPDIR/mystic/fail2ban/install-${SCRIPT_VER}.sh
# Add Dosemu2
if [ -n "${DOSEMUVER}" ]; then
# Add Fail2ban | banip
source $MSTEMPDIR/mystic/dosemu2/install-${SCRIPT_VER}.sh
fi
#==============================================================================================================
@ -245,10 +210,8 @@ source $MSTEMPDIR/mystic/ip2location/config-${SCRIPT_VER}.sh
source $MSTEMPDIR/mystic/dbp/config-${SCRIPT_VER}.sh
# Add Fail2ban | banip
source $MSTEMPDIR/mystic/fail2ban/config-${SCRIPT_VER}.sh
# Add Dosemu2
if [ -n "${DOSEMUVER}" ]; then
# Add Fail2ban | banip
source $MSTEMPDIR/mystic/dosemu2/config-${SCRIPT_VER}.sh
fi
#==============================================================================================================
@ -277,20 +240,12 @@ source $MSTEMPDIR/mystic/ip2location/info-${SCRIPT_VER}.sh
source $MSTEMPDIR/mystic/dbp/info-${SCRIPT_VER}.sh
# Add Fail2ban | banip
source $MSTEMPDIR/mystic/fail2ban/info-${SCRIPT_VER}.sh
# Add Dosemu2
if [ -n "${DOSEMUVER}" ]; then
# Add Fail2ban | banip
source $MSTEMPDIR/mystic/dosemu2/info-${SCRIPT_VER}.sh
fi
#==============================================================================================================
echo "if you want to start some mystic tools become the mystic user first (su - mystic) or" >> ${DBP_INFO}
echo "start the command with sudo -u mystic ./mis ...." >> ${DBP_INFO}
echo "when you switched to the ${MYSTIC_DIR}" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}
cmd_exec chown mystic:mystic -R ${MYSTIC_DIR} &>>$INSTALLLOG
chown mystic:mystic -R ${MYSTIC_DIR} &>/dev/null
cat ${DBP_INFO}
echo "These Infos are also been put into ${DBP_INFO}"

View File

@ -13,7 +13,7 @@ APP="Mystic BBS"
MSDIR="/opt/mystic"
MSTEMPDIR="/usr/local/src/mystic"
TMP_DIR=$(mktemp -d)
SCRIPT_VER="v6"
SCRIPT_VER="v1"
GROUP=$(getent group mystic)
USER=$(getent shadow mystic)
@ -62,7 +62,7 @@ function msg_ok() {
msg_info "Installing needed base packages"
apt update &>/dev/null
apt install lsb-release dpkg-dev wget curl figlet lolcat unzip whiptail dialog -y &>/dev/null
apt install lsb-release dpkg-dev wget curl figlet lolcat unzip -y &>/dev/null
msg_ok "Installing needed base packages"
function header_info {
@ -82,26 +82,18 @@ if [ "${ARCH}" = "x86_64-linux-gnu" ]; then
INIMOD_ARCH="amd64"
MYSTIC_ARCH="l64"
MYSTIC_EXT="rar"
RARLAB="rar"
DOSEMUVER="dosemu2"
elif [ "${ARCH}" = "i386-linux-gnu" ]; then
INIMOD_ARCH="amd32"
MYSTIC_ARCH="l32"
MYSTIC_EXT="rar"
RARLAB="rar"
DOSEMUVER="dosemu"
elif [ "${ARCH}" = "aarch64-linux-gnu" ]; then
INIMOD_ARCH="arm64"
MYSTIC_ARCH="p64"
MYSTIC_EXT="zip"
RARLAB=""
DOSEMUVER="dosemu2"
elif [ "${ARCH}" = "arm-linux-gnueabihf" ]; then
INIMOD_ARCH="arm32"
MYSTIC_ARCH="p32"
MYSTIC_EXT="zip"
RARLAB=""
DOSEMUVER=""
else
echo "Architecture not supported: ${ARCH}"
exit 1
@ -127,6 +119,11 @@ echo "deb http://security.debian.org bullseye-security contrib non-free main" >>
msg_ok "adding bullseye repository to bookworm for python2"
fi
msg_info "adding jessie lts repository for openssl 1.0"
wget https://deb.freexian.com/extended-lts/archive-key.gpg -O /etc/apt/trusted.gpg.d/freexian-archive-extended-lts.gpg &>/dev/null
echo "deb http://deb.freexian.com/extended-lts jessie main contrib non-free" > /etc/apt/sources.list.d/jessie-extended-lts.list
msg_ok "adding jessie lts repository for openssl 1.0"
msg_info "Setting up ${APP} Repository"
apt install -y software-properties-common &>/dev/null
if [ "${DIST}" = "Debian" ]; then
@ -171,10 +168,8 @@ source $MSTEMPDIR/mystic/ip2location/prompt-${SCRIPT_VER}.sh
source $MSTEMPDIR/mystic/dbp/prompt-${SCRIPT_VER}.sh
# Add Fail2ban | banip
source $MSTEMPDIR/mystic/fail2ban/prompt-${SCRIPT_VER}.sh
# Add Dosemu2
if [ -n "${DOSEMUVER}" ]; then
# Add Fail2ban | banip
source $MSTEMPDIR/mystic/dosemu2/prompt-${SCRIPT_VER}.sh
fi
#==============================================================================================================
@ -194,10 +189,8 @@ source $MSTEMPDIR/mystic/ip2location/install-${SCRIPT_VER}.sh
source $MSTEMPDIR/mystic/dbp/install-${SCRIPT_VER}.sh
# Add Fail2ban | banip
source $MSTEMPDIR/mystic/fail2ban/install-${SCRIPT_VER}.sh
# Add Dosemu2
if [ -n "${DOSEMUVER}" ]; then
# Add Fail2ban | banip
source $MSTEMPDIR/mystic/dosemu2/install-${SCRIPT_VER}.sh
fi
#==============================================================================================================
@ -217,10 +210,8 @@ source $MSTEMPDIR/mystic/ip2location/config-${SCRIPT_VER}.sh
source $MSTEMPDIR/mystic/dbp/config-${SCRIPT_VER}.sh
# Add Fail2ban | banip
source $MSTEMPDIR/mystic/fail2ban/config-${SCRIPT_VER}.sh
# Add Dosemu2
if [ -n "${DOSEMUVER}" ]; then
# Add Fail2ban | banip
source $MSTEMPDIR/mystic/dosemu2/config-${SCRIPT_VER}.sh
fi
#==============================================================================================================
@ -249,20 +240,12 @@ source $MSTEMPDIR/mystic/ip2location/info-${SCRIPT_VER}.sh
source $MSTEMPDIR/mystic/dbp/info-${SCRIPT_VER}.sh
# Add Fail2ban | banip
source $MSTEMPDIR/mystic/fail2ban/info-${SCRIPT_VER}.sh
# Add Dosemu2
if [ -n "${DOSEMUVER}" ]; then
# Add Fail2ban | banip
source $MSTEMPDIR/mystic/dosemu2/info-${SCRIPT_VER}.sh
fi
#==============================================================================================================
echo "if you want to start some mystic tools become the mystic user first (su - mystic) or" >> ${DBP_INFO}
echo "start the command with sudo -u mystic ./mis ...." >> ${DBP_INFO}
echo "when you switched to the ${MYSTIC_DIR}" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}
chown mystic:mystic -R ${MYSTIC_DIR} &>/dev/null
cat ${DBP_INFO}
echo "These Infos are also been put into ${DBP_INFO}"
echo "The Infos abouth has been put into ${DBP_INFO}"

View File

@ -2,7 +2,7 @@ if [ $IP2L = "Yes" ]; then
echo "IP2Location Downloader" >> ${DBP_INFO}
echo "With the downloader the IP2Location data of mystic can be updated" >> ${DBP_INFO}
echo "you will have to activate it in the ${MYSTIC_DIR}/dbp.ini" >> ${DBP_INFO}
echo "there you have to add your ip2location API key and set the database type" >> ${DBP_INFO}
echo "there youz have to add your ip2location API key and set the databse type" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}
fi

View File

@ -1,8 +0,0 @@
if [ $IP2L = "Yes" ]; then
echo "IP2Location Downloader" >> ${DBP_INFO}
echo "With the downloader the IP2Location data of mystic can be updated" >> ${DBP_INFO}
echo "you will have to activate it in the ${MYSTIC_DIR}/dbp.ini" >> ${DBP_INFO}
echo "there you have to add your ip2location API key and set the database type" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}
fi

View File

@ -1,14 +0,0 @@
if [ $IP2L = "Yes" ]; then
msg_info "Setting up IP2Location Download Client for ${APP}"
cmd_exec apt install -y libwww-perl &>>$INSTALLLOG
cmd_exec wget -N https://www.ip2location.com/downloads/ip2location-downloader-linux.zip -O $MSTEMPDIR/ip2location-downloader-linux.zip &>>$INSTALLLOG
cmd_exec rm -rf $MSTEMPDIR/ip2location-downloader-linux &>>$INSTALLLOG
cmd_exec mkdir -p $MSTEMPDIR/ip2location-downloader-linux &>>$INSTALLLOG
cmd_exec pushd $MSTEMPDIR/ip2location-downloader-linux &>>$INSTALLLOG
cmd_exec unzip ../ip2location-downloader-linux.zip &>>$INSTALLLOG
cmd_exec cp download.pl ${MYSTIC_DIR}/ip2location
cmd_exec chmod +x ${MYSTIC_DIR}/ip2location
cmd_exec cp readme.txt ${MYSTIC_DIR}/docs/ip2location_README.txt
cmd_exec popd &>>$INSTALLLOG
msg_ok "Setting up IP2Location Download Client for ${APP}"
fi

View File

@ -1,8 +0,0 @@
IP2L=$(whiptail --title "Add The IP2Location Download Client to Mystic" --radiolist --cancel-button Exit-Script "Choose Yes No" 8 58 2 \
"Yes" "Add IP2Location Download Client" ON \
"No" "Don't Add IP2Location Download Client" OFF \
3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 0 ]; then
echo -e "${DGN}Add DbP Script: ${BGN}$IP2L${CL}"
fi

View File

@ -1,5 +0,0 @@
for file in $(ls *-v6.sh) ; do
cp -- "${file}" "$(echo "${file}" | sed -e 's/v6\.sh/v7\.sh/')"
done
git rm *-v5.sh

View File

@ -2,12 +2,10 @@ if [ $MRCCLIENT = "Yes" ]; then
echo "" >> ${DBP_INFO}
echo "Multi Relay Chat" >> ${DBP_INFO}
echo "when you are using the mrc then activate the logrotate in the ${MYSTIC_DIR}/dbp.ini file" >> ${DBP_INFO}
echo "and set the wanted retention time for the logs" >> ${DBP_INFO}
echo "and set the wanted retentiontame for the logs" >> ${DBP_INFO}
echo "you will also have to set the cron script in the Mystic Event Editor" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "if you are running your own Multi Relay Chat Server you have to modify the ${MYSTIC_DIR}/mrc_client-start" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "a systemd file has been installed mrc_client.service" >> ${DBP_INFO}
echo "if you are runnign your own Multi Relay Chat Server you have to modify the ${MYSTIC_DIR}/mrc_client-start" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}
fi

View File

@ -1,13 +0,0 @@
if [ $MRCCLIENT = "Yes" ]; then
echo "" >> ${DBP_INFO}
echo "Multi Relay Chat" >> ${DBP_INFO}
echo "when you are using the mrc then activate the logrotate in the ${MYSTIC_DIR}/dbp.ini file" >> ${DBP_INFO}
echo "and set the wanted retention time for the logs" >> ${DBP_INFO}
echo "you will also have to set the cron script in the Mystic Event Editor" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "if you are running your own Multi Relay Chat Server you have to modify the ${MYSTIC_DIR}/mrc_client-start" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "a systemd file has been installed mrc_client.service" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}
fi

View File

@ -1,30 +0,0 @@
MRC_VER="129a"
if [ $MRCCLIENT = "Yes" ]; then
msg_info "Setting up Multi Relay Chat for ${APP}"
cmd_exec apt install -y build-essential &>>$INSTALLLOG
cmd_exec wget -N https://www.phenomprod.com/releases/mystic/pn-mrc${MRC_VER}.zip -O $MSTEMPDIR/pn-mrc${MRC_VER}.zip &>>$INSTALLLOG
cmd_exec rm -rf $MSTEMPDIR/pn-mrc${MRC_VER} &>>$INSTALLLOG
cmd_exec mkdir -p $MSTEMPDIR/pn-mrc${MRC_VER} &>>$INSTALLLOG
cmd_exec pushd $MSTEMPDIR/pn-mrc${MRC_VER} &>>$INSTALLLOG
cmd_exec unzip ../pn-mrc${MRC_VER}.zip &>>$INSTALLLOG
cmd_exec cp mrc_${MRC_VER}/mrc_{client,config}.py ${MYSTIC_DIR}/ &>>$INSTALLLOG
cmd_exec cp mrc_${MRC_VER}/scripts/* ${MYSTIC_DIR}/themes/default/scripts/ &>>$INSTALLLOG
cmd_exec cp mrc_${MRC_VER}/text/* ${MYSTIC_DIR}/themes/default/text/ &>>$INSTALLLOG
cmd_exec cp installation.asc ${MYSTIC_DIR}/docs/mrc_installation.asc &>>$INSTALLLOG
cmd_exec popd &>>$INSTALLLOG
cmd_exec mkdir -p ${MYSTIC_DIR}/data/mrc &>>$INSTALLLOG
msg_ok "Setting up Multi Relay Chat for ${APP}"
msg_info "Installing Multi Relay Chat Systemd Start/Stop Scripts and Service File"
cmd_exec pushd $MSTEMPDIR/mystic/mrc-client &>>$INSTALLLOG
sed -e "s!@MYSTIC_DIR@!${MYSTIC_DIR}!g" mrc_client-start.sh > ${MYSTIC_DIR}/mrc_client-start
cmd_exec chmod +x ${MYSTIC_DIR}/mrc_client-start &>>$INSTALLLOG
sed -e "s!@MYSTIC_DIR@!${MYSTIC_DIR}!g" mrc_client-stop.sh > ${MYSTIC_DIR}/mrc_client-stop
cmd_exec chmod +x ${MYSTIC_DIR}/mrc_client-stop &>>$INSTALLLOG
sed -e "s!@MYSTIC_DIR@!${MYSTIC_DIR}!g" mrc-client.service > /etc/systemd/system/mrc-client.service
cmd_exec popd &>>$INSTALLLOG
cmd_exec systemctl daemon-reload &>>$INSTALLLOG
msg_ok "Installing Multi Relay Chat Systemd Start/Stop Scripts and Service File"
fi

View File

@ -1,8 +0,0 @@
MRCCLIENT=$(whiptail --title "Multi Relay Chat Support in Mystic" --radiolist --cancel-button Exit-Script "Choose Yes No" 8 58 2 \
"Yes" "Add MrC Support" ON \
"No" "Don't add MrC Support" OFF \
3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 0 ]; then
echo -e "${DGN}Add Multi Realy Chat Support: ${BGN}$MRCCLIENT${CL}"
fi

View File

@ -1,5 +0,0 @@
for file in $(ls *-v6.sh) ; do
cp -- "${file}" "$(echo "${file}" | sed -e 's/v6\.sh/v7\.sh/')"
done
git rm *-v5.sh

View File

@ -2,10 +2,8 @@ if [ $MRCSERVER = "Yes" ]; then
echo "" >> ${DBP_INFO}
echo "Multi Relay Chat Server" >> ${DBP_INFO}
echo "when you are using the mrc then activate the logrotate in the ${MYSTIC_DIR}/dbp.ini file" >> ${DBP_INFO}
echo "and set the wanted retention time for the logs" >> ${DBP_INFO}
echo "and set the wanted retentiontame for the logs" >> ${DBP_INFO}
echo "you will also have to set the cron script in the Mystic Event Editor" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "a systemd file has been installed mrc_server.service" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}
fi

View File

@ -1,11 +0,0 @@
if [ $MRCSERVER = "Yes" ]; then
echo "" >> ${DBP_INFO}
echo "Multi Relay Chat Server" >> ${DBP_INFO}
echo "when you are using the mrc then activate the logrotate in the ${MYSTIC_DIR}/dbp.ini file" >> ${DBP_INFO}
echo "and set the wanted retention time for the logs" >> ${DBP_INFO}
echo "you will also have to set the cron script in the Mystic Event Editor" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "a systemd file has been installed mrc_server.service" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}
fi

View File

@ -1,30 +0,0 @@
MRC_SERVER_VER="v10"
if [ $MRCSERVER = "Yes" ]; then
msg_info "Setting up Multi Relay Chat Server for ${APP}"
cmd_exec apt install -y build-essential &>>$INSTALLLOG
cmd_exec wget -N https://sourceforge.net/projects/mystic-relay-chat/files/mrc_${MRC_SERVER_VER}.zip -O $MSTEMPDIR/mrc${MRC_SERVER_VER}.zip &>>$INSTALLLOG
cmd_exec rm -rf $MSTEMPDIR/mrc${MRC_SERVER_VER} &>>$INSTALLLOG
cmd_exec mkdir -p $MSTEMPDIR/mrc${MRC_SERVER_VER} &>>$INSTALLLOG
cmd_exec pushd $MSTEMPDIR/mrc${MRC_SERVER_VER} &>>$INSTALLLOG
cmd_exec unzip ../mrc${MRC_SERVER_VER}.zip &>>$INSTALLLOG
cmd_exec cp mrc_server.py ${MYSTIC_DIR}/ &>>$INSTALLLOG
cmd_exec cp sysop.doc ${MYSTIC_DIR}/docs/mrc_server_sysop.doc &>>$INSTALLLOG
cmd_exec cp whatsnew.txt ${MYSTIC_DIR}/docs/mrc_server_whatsnew.txt &>>$INSTALLLOG
cmd_exec cp servers.lst ${MYSTIC_DIR}/docs/mrc_server_server.lst &>>$INSTALLLOG
cmd_exec popd &>>$INSTALLLOG
cmd_exec mkdir -p ${MYSTIC_DIR}/data/mrc &>>$INSTALLLOG
msg_ok "Setting up Multi Relay Chat Server for ${APP}"
msg_info "Installing Multi Relay Chat Server Systemd Start/Stop Scripts and Service File"
cmd_exec pushd $MSTEMPDIR/mystic/mrc-server &>>$INSTALLLOG
sed -e "s!@MYSTIC_DIR@!${MYSTIC_DIR}!g" mrc_server-start.sh > ${MYSTIC_DIR}/mrc_server-start
cmd_exec chmod +x ${MYSTIC_DIR}/mrc_server-start &>>$INSTALLLOG
sed -e "s!@MYSTIC_DIR@!${MYSTIC_DIR}!g" mrc_server-stop.sh > ${MYSTIC_DIR}/mrc_server-stop
cmd_exec chmod +x ${MYSTIC_DIR}/mrc_server-stop &>>$INSTALLLOG
sed -e "s!@MYSTIC_DIR@!${MYSTIC_DIR}!g" mrc-server.service > /etc/systemd/system/mrc-server.service
cmd_exec systemctl daemon-reload &>>$INSTALLLOG
cmd_exec popd &>>$INSTALLLOG
msg_ok "Installing Multi Relay Chat Server Systemd Start/Stop Scripts and Service File"
fi

View File

@ -27,7 +27,7 @@ fi
# Starting the MRC python script
cd $MRC_PATH >/dev/null
/usr/bin/python2 ./mrc_server.py $MRC_SERVER:$MRC_PORT |& tee -a data/mrc/mrcserver.log &
/usr/bin/python2 ./mrc_server.py $MRC_SERVER:$MRC_PORT > data/mrc/mrcserver.log 2>&1 &
cd - >/dev/null
# Wait 3 seconds and check for a PID

View File

@ -4,5 +4,5 @@ MRCSERVER=$(whiptail --title "Multi Relay Chat Server Support in Mystic" --radio
3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 0 ]; then
echo -e "${DGN}Add Multi Relay Chat Server Support: ${BGN}$MRCSERVER${CL}"
echo -e "${DGN}Add Multi Realy Chat Server Support: ${BGN}$MRCSERVER${CL}"
fi

View File

@ -1,8 +0,0 @@
MRCSERVER=$(whiptail --title "Multi Relay Chat Server Support in Mystic" --radiolist --cancel-button Exit-Script "Choose Yes No" 8 58 2 \
"Yes" "Add MrC Server Support" OFF \
"No" "Don't add MrC Server Support" ON \
3>&1 1>&2 2>&3)
exitstatus=$?
if [ $exitstatus = 0 ]; then
echo -e "${DGN}Add Multi Relay Chat Server Support: ${BGN}$MRCSERVER${CL}"
fi

View File

@ -1,5 +0,0 @@
for file in $(ls *-v6.sh) ; do
cp -- "${file}" "$(echo "${file}" | sed -e 's/v6\.sh/v7\.sh/')"
done
git rm *-v5.sh

View File

@ -1,75 +0,0 @@
msg_info "Correcting mutil.ini & mide.ini hardcoded paths"
sed -e 's/\\/\//g' -i ${MYSTIC_DIR}/mutil.ini
sed -e "s!c:/mystic!${MYSTIC_DIR}!g" -i ${MYSTIC_DIR}/mutil.ini
sed -e "s!d:/mystic!${MYSTIC_DIR}!g" -i ${MYSTIC_DIR}/mutil.ini
sed -e "s!d:/nodelist!${MYSTIC_DIR}/files/nodelist!g" -i ${MYSTIC_DIR}/mutil.ini
sed -e 's/\\/\//g' -i ${MYSTIC_DIR}/mide.ini
sed -e "s!c:/mystic!${MYSTIC_DIR}!g" -i ${MYSTIC_DIR}/mide.ini
msg_ok "Correcting mutil.ini & mide.ini hardcoded paths"
msg_info "SPlitting mutil.ini into it's parts for later merge"
mkdir -p ${MYSTIC_DIR}/mutil.d
cat ${MYSTIC_DIR}/mutil.ini | sed '/\[General\]/q' | sed '$d' > ${MUTIL_DIR}/README.txt
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[General\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/General
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[Import_FIDONET\.NA\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/Import_FIDONET.NA
configarray=('Import_FIDONET.NA')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[Import_FILEBONE\.NA\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/Import_FILEBONE.NA
configarray+=('Import_FILEBONE.NA')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[Export_FILEBONE\.NA\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/Export_FILEBONE.NA
configarray+=('Export_FILEBONE.NA')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[Export_AREAS\.BBS\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/Export_AREAS.BBS
configarray+=('Export_AREAS.BBS')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[Export_GOLDED\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/Export_GOLDED
configarray+=('Export_GOLDED')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[Import_FILES\.BBS\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/Import_FILES.BBS
configarray+=('Import_FILES.BBS')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[MassUpload\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/MassUpload
configarray+=('MassUpload')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[GenerateTopLists\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/GenerateTopLists
configarray+=('GenerateTopLists')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[GenerateAllFiles\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/GenerateAllFiles
configarray+=('GenerateAllFiles')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[PurgeMessageBases\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/PurgeMessageBases
configarray+=('PurgeMessageBases')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[PackMessageBases\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/PackMessageBases
configarray+=('PackMessageBases')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[PostTextFiles\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/PostTextFiles
configarray+=('PostTextFiles')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[Import_MessageBase\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/Import_MessageBase
configarray+=('Import_MessageBase')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[ImportEchoMail\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/ImportEchoMail
configarray+=('ImportEchoMail')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[ExportEchoMail\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/ExportEchoMail
configarray+=('ExportEchoMail')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[MergeNodeLists\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/MergeNodeLists
configarray+=('MergeNodeLists')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[FileToss\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/FileToss
configarray+=('FileToss')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[PackFileBases\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/PackFileBases
configarray+=('PackFileBases')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[LinkMessages\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/LinkMessages
configarray+=('LinkMessages')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[PurgeUserBase\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/PurgeUserBase
configarray+=('PurgeUserBase')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[PackUserBase\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/PackUserBase
configarray+=('PackUserBase')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[FileSort\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/FileSort
configarray+=('FileSort')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[AutoHatch\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/AutoHatch
configarray+=('AutoHatch')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[EchoNodeTracker\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/EchoNodeTracker
configarray+=('EchoNodeTracker')
cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[EchoUnlink\]/, /\[/p' | sed '$d' > ${MUTIL_DIR}/EchoUnlink
#cat ${MYSTIC_DIR}/mutil.ini | sed -n '/\[EchoUnlink\]/, $p' | sed '$d' > ${MUTIL_DIR}/EchoUnlink
configarray+=('EchoUnlink')
msg_ok "SPlitting mutil.ini into it's parts for later merge"
source $MSTEMPDIR/mystic/mystic/maint-${SCRIPT_VER}.sh
source $MSTEMPDIR/mystic/mystic/mailout-${SCRIPT_VER}.sh
source $MSTEMPDIR/mystic/mystic/mailin-${SCRIPT_VER}.sh
source $MSTEMPDIR/mystic/mystic/importna-${SCRIPT_VER}.sh
msg_info "Correcting Linefeed for docs and Setting permissions"
cmd_exec dos2unix ${MYSTIC_DIR}/docs/ &>>$INSTALLLOG
cmd_exec chown mystic:mystic -R ${MYSTIC_DIR} &>>$INSTALLLOG
msg_ok "Correcting Linefeed for docs and Setting permissions"

View File

@ -1,19 +0,0 @@
cmd_exec pushd ${MUTIL_DIR} &>>$INSTALLLOG
configfile="importna.ini"
config=('Import_FIDONET.NA' 'Import_FILEBONE.NA')
msg_info "Merging ${config} into ${configfile}"
preparray=("${configarray[@]}")
for el in ${config[@]}
do
preparray=("${preparray[@]/$el}")
done
cat General ${config[@]} > ${MYSTIC_DIR}/${configfile}
for el in ${preparray[@]}
do
sed -e "/$el/d" -i ${MYSTIC_DIR}/${configfile}
done
msg_ok "Merging ${config} into ${configfile}"
cmd_exec popd &>>$INSTALLLOG

View File

@ -1,5 +1,5 @@
PYTHON2=`ls ${LIBDIR}/libpython2*.so.1`
PYTHON3=`ls ${LIBDIR}/libpython3*.so.1`
PYTHON2=$(ls /usr/lib/x86_64-linux-gnu/libpython2*.so.1)
PYTHON3=$(ls /usr/lib/x86_64-linux-gnu/libpython3*.so.1)
echo "" >> ${DBP_INFO}
echo "Settings in Mystic General Settings" >> ${DBP_INFO}
@ -7,6 +7,4 @@ echo "" >> ${DBP_INFO}
echo "Python2 Library: $PYTHON2" >> ${DBP_INFO}
echo "Python3 Library: $PYTHON3" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "a systemd file has been installed mystic.service" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}

View File

@ -1,12 +0,0 @@
PYTHON2=`ls ${LIBDIR}/libpython2*.so.1`
PYTHON3=`ls ${LIBDIR}/libpython3*.so.1`
echo "" >> ${DBP_INFO}
echo "Settings in Mystic General Settings" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "Python2 Library: $PYTHON2" >> ${DBP_INFO}
echo "Python3 Library: $PYTHON3" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "a systemd file has been installed mystic.service" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}

View File

@ -1,5 +1,3 @@
UPSTREAM="downloads"
#UPSTREAM="downloads/prealpha"
MYSTIC_VER="112a48"
echo -e "Plz set the install dir the same as bevor"
@ -7,13 +5,8 @@ echo -e "${DGN}Install Mystic to: ${BGN}$MYSTIC_DIR${CL}"
read -p "Press enter to continue"
msg_info "Starting ${APP} Installation"
apt install -y python3 python2 &>/dev/null
PYTHON3_VER=$(python3 $MSTEMPDIR/mystic/mystic/python_ver.py)
PYTHON2_VER=$(python2 $MSTEMPDIR/mystic/mystic/python_ver.py)
apt install -y libpython${PYTHON3_VER} libpython${PYTHON2_VER} arj zip unrar dos2unix ${RARLAB} &>/dev/null
wget -N http://www.mysticbbs.com/${UPSTREAM}/mys${MYSTIC_VER}_${MYSTIC_ARCH}.${MYSTIC_EXT} -O $MSTEMPDIR/mys${MYSTIC_VER}_${MYSTIC_ARCH}.${MYSTIC_EXT} &>/dev/null
apt install -y unrar-free python3 python2 libpython2.7 zip rar &>/dev/null
wget -N http://www.mysticbbs.com/downloads/mys${MYSTIC_VER}_${MYSTIC_ARCH}.${MYSTIC_EXT} -O $MSTEMPDIR/mys${MYSTIC_VER}_${MYSTIC_ARCH}.${MYSTIC_EXT} &>/dev/null
rm -rf $MSTEMPDIR/mystic-${MYSTIC_VER} &>/dev/null
mkdir -p $MSTEMPDIR/mystic-${MYSTIC_VER} &>/dev/null
pushd $MSTEMPDIR/mystic-${MYSTIC_VER} &>/dev/null
@ -39,7 +32,7 @@ if [ -z "${GROUP}" ]; then
groupadd mystic &>/dev/null
fi
if [ -z "${USER}" ]; then
useradd -m --home-dir ${MYSTIC_DIR} -g mystic mystic &>/dev/null
useradd --home-dir ${MYSTIC_DIR} -g mystic mystic &>/dev/null
fi
chown mystic:mystic -R ${MYSTIC_DIR} &>/dev/null
find ${MYSTIC_DIR} -name '*.txt' -type f -exec dos2unix {} \; &>/dev/null
@ -59,30 +52,11 @@ find ${MYSTIC_DIR} -name '*.ms' -type f -exec chmod 0664 {} \; &>/dev/null
msg_ok "Creating ${APP} und setting Permissions in ${MYSTIC_DIR}"
msg_info "Installing ${APP} Systemd Start/Stop Scripts and Service File"
MID=$(id -u mystic)
sed -e "s!@MYSTIC_DIR@!${MYSTIC_DIR}!g" $MSTEMPDIR/mystic/mystic/mis-start.sh > ${MYSTIC_DIR}/mis-start
chmod +x ${MYSTIC_DIR}/mis-start
sed -e "s!@MYSTIC_DIR@!${MYSTIC_DIR}!g" $MSTEMPDIR/mystic/mystic/mis-stop.sh > ${MYSTIC_DIR}/mis-stop
chmod +x ${MYSTIC_DIR}/mis-stop
sed -e "s!@MYSTIC_DIR@!${MYSTIC_DIR}!g" $MSTEMPDIR/mystic/mystic/mis.service > /etc/systemd/system/mystic.service
sed -e "s!@MID@!${MID}!g" $MSTEMPDIR/mystic/mystic/mystic.conf.tmpfiles.d > /etc/tmpfiles.d/mystic.conf
systemctl daemon-reload
msg_ok "Installing ${APP} Systemd Start/Stop Scripts and Service File"
msg_info "Setting up ${APP} Official lha (be patient compiling lha)"
apt install -y build-essential binutils make csh g++ sed gawk autoconf automake autotools-dev &>/dev/null
wget -N https://github.com/jca02266/lha/archive/refs/tags/release-20211125.zip -O $MSTEMPDIR/lha-20211125.zip &>/dev/null
rm -rf $MSTEMPDIR/lha-release-20211125 &>/dev/null
pushd $MSTEMPDIR &>/dev/null
unzip lha-20211125.zip &>/dev/null
popd &>/dev/null
pushd $MSTEMPDIR/lha-release-20211125 &>/dev/null
aclocal &>/dev/null
autoheader &>/dev/null
automake -a &>/dev/null
autoconf &>/dev/null
./configure &>/dev/null
make &>/dev/null
make install &>/dev/null
popd &>/dev/null
msg_ok "Setting up ${APP} Official lha (be patient compiling lha)"

View File

@ -1,88 +0,0 @@
UPSTREAM="downloads"
#UPSTREAM="downloads/prealpha"
MYSTIC_VER="112a48"
echo -e "Plz set the install dir the same as bevor"
echo -e "${DGN}Install Mystic to: ${BGN}$MYSTIC_DIR${CL}"
read -p "Press enter to continue"
msg_info "Starting ${APP} Installation"
cmd_exec apt install -y python3 python2 &>>$INSTALLLOG
PYTHON3_VER=$(python3 $MSTEMPDIR/mystic/mystic/python_ver.py)
PYTHON2_VER=$(python2 $MSTEMPDIR/mystic/mystic/python_ver.py)
cmd_exec apt install -y libpython${PYTHON3_VER} libpython${PYTHON2_VER} arj zip unrar dos2unix ${RARLAB} &>>$INSTALLLOG
cmd_exec wget -N http://www.mysticbbs.com/${UPSTREAM}/mys${MYSTIC_VER}_${MYSTIC_ARCH}.${MYSTIC_EXT} -O $MSTEMPDIR/mys${MYSTIC_VER}_${MYSTIC_ARCH}.${MYSTIC_EXT} &>>$INSTALLLOG
cmd_exec rm -rf $MSTEMPDIR/mystic-${MYSTIC_VER} &>>$INSTALLLOG
cmd_exec mkdir -p $MSTEMPDIR/mystic-${MYSTIC_VER} &>>$INSTALLLOG
cmd_exec pushd $MSTEMPDIR/mystic-${MYSTIC_VER} &>>$INSTALLLOG
if [ "${MYSTIC_EXT}" = "rar" ]; then
cmd_exec unrar x $MSTEMPDIR/mys${MYSTIC_VER}_${MYSTIC_ARCH}.${MYSTIC_EXT} &>>$INSTALLLOG
elif [ "${MYSTIC_EXT}" = "zip" ]; then
cmd_exec unzip $MSTEMPDIR/mys${MYSTIC_VER}_${MYSTIC_ARCH}.${MYSTIC_EXT} &>>$INSTALLLOG
else
exit 1
fi
cmd_exec chmod +x install &>>$INSTALLLOG
./install
cmd_exec popd &>>$INSTALLLOG
msg_ok "Finisched ${APP} Installation"
cmd_exec pushd ${MYSTIC_DIR} &>>$INSTALLLOG
cmd_exec apt install -y patch &>>$INSTALLLOG
cmd_exec patch -p0 -i $MSTEMPDIR/mystic/mystic/patches/mutil-ini-echounlink.patch &>>$INSTALLLOG
cmd_exec popd &>>$INSTALLLOG
msg_info "Creating ${APP} und setting Permissions in ${MYSTIC_DIR}"
if [ -z "${GROUP}" ]; then
cmd_exec groupadd mystic &>>$INSTALLLOG
fi
if [ -z "${USER}" ]; then
cmd_exec useradd -m --home-dir ${MYSTIC_DIR} -g mystic mystic &>>$INSTALLLOG
fi
cmd_exec chown mystic:mystic -R ${MYSTIC_DIR} &>>$INSTALLLOG
cmd_exec find ${MYSTIC_DIR} -name '*.txt' -type f -exec dos2unix {} \; &>>$INSTALLLOG
cmd_exec find ${MYSTIC_DIR} -name '*.ini' -type f -exec dos2unix {} \; &>>$INSTALLLOG
cmd_exec find ${MYSTIC_DIR} -name '*.txt' -type f -exec chmod 0664 {} \; &>>$INSTALLLOG
cmd_exec find ${MYSTIC_DIR} -name '*.ini' -type f -exec chmod 0664 {} \; &>>$INSTALLLOG
cmd_exec find ${MYSTIC_DIR} -name '*.dat' -type f -exec chmod 0664 {} \; &>>$INSTALLLOG
cmd_exec find ${MYSTIC_DIR} -name '*.ans' -type f -exec chmod 0664 {} \; &>>$INSTALLLOG
cmd_exec find ${MYSTIC_DIR} -name '*.asc' -type f -exec chmod 0664 {} \; &>>$INSTALLLOG
cmd_exec find ${MYSTIC_DIR} -name '*.hlp' -type f -exec chmod 0664 {} \; &>>$INSTALLLOG
cmd_exec find ${MYSTIC_DIR} -name '*.mnu' -type f -exec chmod 0664 {} \; &>>$INSTALLLOG
cmd_exec find ${MYSTIC_DIR} -name '*.mnu' -type f -exec chmod 0664 {} \; &>>$INSTALLLOG
cmd_exec find ${MYSTIC_DIR} -name '*.mps' -type f -exec chmod 0664 {} \; &>>$INSTALLLOG
cmd_exec find ${MYSTIC_DIR} -name '*.mpx' -type f -exec chmod 0664 {} \; &>>$INSTALLLOG
cmd_exec find ${MYSTIC_DIR} -name '*.mpy' -type f -exec chmod 0664 {} \; &>>$INSTALLLOG
cmd_exec find ${MYSTIC_DIR} -name '*.ms' -type f -exec chmod 0664 {} \; &>>$INSTALLLOG
msg_ok "Creating ${APP} und setting Permissions in ${MYSTIC_DIR}"
msg_info "Installing ${APP} Systemd Start/Stop Scripts and Service File"
MID=$(id -u mystic)
sed -e "s!@MYSTIC_DIR@!${MYSTIC_DIR}!g" $MSTEMPDIR/mystic/mystic/mis-start.sh > ${MYSTIC_DIR}/mis-start
cmd_exec chmod +x ${MYSTIC_DIR}/mis-start
sed -e "s!@MYSTIC_DIR@!${MYSTIC_DIR}!g" $MSTEMPDIR/mystic/mystic/mis-stop.sh > ${MYSTIC_DIR}/mis-stop
cmd_exec chmod +x ${MYSTIC_DIR}/mis-stop
sed -e "s!@MYSTIC_DIR@!${MYSTIC_DIR}!g" $MSTEMPDIR/mystic/mystic/mis.service > /etc/systemd/system/mystic.service
sed -e "s!@MID@!${MID}!g" $MSTEMPDIR/mystic/mystic/mystic.conf.tmpfiles.d > /etc/tmpfiles.d/mystic.conf
cmd_exec systemctl daemon-reload
msg_ok "Installing ${APP} Systemd Start/Stop Scripts and Service File"
msg_info "Setting up ${APP} Official lha (be patient compiling lha)"
cmd_exec apt install -y build-essential binutils make csh g++ sed gawk autoconf automake autotools-dev &>>$INSTALLLOG
cmd_exec wget -N https://github.com/jca02266/lha/archive/refs/tags/release-20211125.zip -O $MSTEMPDIR/lha-20211125.zip &>>$INSTALLLOG
cmd_exec rm -rf $MSTEMPDIR/lha-release-20211125 &>>$INSTALLLOG
cmd_exec pushd $MSTEMPDIR &>>$INSTALLLOG
cmd_exec unzip lha-20211125.zip &>>$INSTALLLOG
cmd_exec popd &>>$INSTALLLOG
cmd_exec pushd $MSTEMPDIR/lha-release-20211125 &>>$INSTALLLOG
cmd_exec aclocal &>>$INSTALLLOG
cmd_exec autoheader &>>$INSTALLLOG
cmd_exec automake -a &>>$INSTALLLOG
cmd_exec autoconf &>>$INSTALLLOG
cmd_exec ./configure &>>$INSTALLLOG
cmd_exec make &>>$INSTALLLOG
cmd_exec make install &>>$INSTALLLOG
cmd_exec popd &>>$INSTALLLOG
msg_ok "Setting up ${APP} Official lha (be patient compiling lha)"

View File

@ -1,19 +0,0 @@
cmd_exec pushd ${MUTIL_DIR} &>>$INSTALLLOG
configfile="mailin.ini"
config=('ImportEchoMail' 'FileToss')
msg_info "Merging ${config} into ${configfile}"
preparray=("${configarray[@]}")
for el in ${config[@]}
do
preparray=("${preparray[@]/$el}")
done
cat General ${config[@]} > ${MYSTIC_DIR}/${configfile}
for el in ${preparray[@]}
do
sed -e "/$el/d" -i ${MYSTIC_DIR}/${configfile}
done
msg_ok "Merging ${config} into ${configfile}"
cmd_exec popd &>>$INSTALLLOG

View File

@ -1,19 +0,0 @@
cmd_exec pushd ${MUTIL_DIR} &>>$INSTALLLOG
configfile="mailout.ini"
config=('ExportEchoMail')
msg_info "Merging ${config} into ${configfile}"
preparray=("${configarray[@]}")
for el in ${config[@]}
do
preparray=("${preparray[@]/$el}")
done
cat General ${config[@]} > ${MYSTIC_DIR}/${configfile}
for el in ${preparray[@]}
do
sed -e "/$el/d" -i ${MYSTIC_DIR}/${configfile}
done
msg_ok "Merging ${config} into ${configfile}"
cmd_exec popd &>>$INSTALLLOG

View File

@ -1,7 +1,7 @@
pushd ${MUTIL_DIR} &>/dev/null
configfile="maint.ini"
config=('PurgeMessageBases' 'PackMessageBases' 'MergeNodeLists' 'PackFileBases' 'LinkMessages' 'PurgeUserBase' 'PackUserBase' 'FileSort')
config=('PurgeMessageBases' 'PackMessageBases' 'MergeNodeLists' 'PackFileBases' 'PurgeUserBase' 'PackUserBase' 'FileSort')
msg_info "Merging ${config} into ${configfile}"
preparray=("${configarray[@]}")
for el in ${config[@]}

View File

@ -1,19 +0,0 @@
cmd_exec pushd ${MUTIL_DIR} &>>$INSTALLLOG
configfile="maint.ini"
config=('PurgeMessageBases' 'PackMessageBases' 'MergeNodeLists' 'PackFileBases' 'LinkMessages' 'PurgeUserBase' 'PackUserBase' 'FileSort')
msg_info "Merging ${config} into ${configfile}"
preparray=("${configarray[@]}")
for el in ${config[@]}
do
preparray=("${preparray[@]/$el}")
done
cat General ${config[@]} > ${MYSTIC_DIR}/${configfile}
for el in ${preparray[@]}
do
sed -e "/$el/d" -i ${MYSTIC_DIR}/${configfile}
done
msg_ok "Merging ${config} into ${configfile}"
cmd_exec popd &>>$INSTALLLOG

View File

@ -1 +0,0 @@
d /run/user/@MID@ 0755 mystic mystic -

View File

@ -1,13 +0,0 @@
MSAPPDIR=$(whiptail --inputbox "Mystic Install Directory that also must be set in the Mystic insallation Programm." 8 58 $MSDIR --title "Install Directory" --cancel-button Exit-Script 3>&1 1>&2 2>&3)
exitstatus=$?
if [ -z $MSAPPDIR ]; then
MYSTIC_DIR="$MSDIR"
echo -e "${DGN}Installing Mystic to: ${BGN}$MYSTIC_DIR${CL}"
else
if [ $exitstatus = 0 ]; then
MYSTIC_DIR="$MSAPPDIR"
echo -e "${DGN}Installing Mystic to: ${BGN}$MYSTIC_DIR${CL}"
fi
fi
MUTIL_DIR=${MYSTIC_DIR}/mutil.d

View File

@ -1,3 +0,0 @@
import sys
info = sys.version_info
print(str(info.major) + "." + str(info.minor))

View File

@ -1,5 +0,0 @@
for file in $(ls *-v6.sh) ; do
cp -- "${file}" "$(echo "${file}" | sed -e 's/v6\.sh/v7\.sh/')"
done
git rm *-v5.sh

View File

@ -1,10 +0,0 @@
if [ $SPELL = "Yes" ]; then
echo "" >> ${DBP_INFO}
echo "More infos about the Spellcheck can be found in the" >> ${DBP_INFO}
echo "${MYSTIC_DIR}/docs/Spellcheck_README.txt" >> ${DBP_INFO}
echo "Also in" >> ${DBP_INFO}
echo "${MYSTIC_DIR}/data/dictlist.txt" >> ${DBP_INFO}
echo "you can add additional Hunspell compatible dictionaries" >> ${DBP_INFO}
echo "" >> ${DBP_INFO}
echo "==============================================================================================================" >> ${DBP_INFO}
fi

View File

@ -1,16 +0,0 @@
if [ $SPELL = "Yes" ]; then
msg_info "Setting up Spellcheck for ${APP}"
cmd_exec apt install -y libhunspell-dev &>>$INSTALLLOG
cmd_exec wget -N http://www.mysticbbs.com/downloads/mystic_spellcheck_v2.zip -O $MSTEMPDIR/mystic_spellcheck_v2.zip &>>$INSTALLLOG
cmd_exec rm -rf $MSTEMPDIR/mystic_spellcheck_v2 &>>$INSTALLLOG
cmd_exec mkdir -p $MSTEMPDIR/mystic_spellcheck_v2 &>>$INSTALLLOG
cmd_exec pushd $MSTEMPDIR/mystic_spellcheck_v2 &>>$INSTALLLOG
cmd_exec unzip ../mystic_spellcheck_v2.zip &>>$INSTALLLOG
cmd_exec cp dictionary.* ${MYSTIC_DIR}/data/
cmd_exec cp wordlist.txt ${MYSTIC_DIR}/data/
cmd_exec cp README.txt ${MYSTIC_DIR}/docs/Spellcheck_README.txt
cmd_exec echo "; List secondary dicitinoaries in this File" > ${MYSTIC_DIR}/data/dictlist.txt
cmd_exec echo "; more details in the Spellcheck_README.txt" >> ${MYSTIC_DIR}/data/dictlist.txt
cmd_exec popd &>>$INSTALLLOG
msg_ok "Setting up Spellcheck for ${APP}"
fi

Some files were not shown because too many files have changed in this diff Show More