tilde.club/docs/server.org

2.6 KiB

Server Configuration

Preface

This is a literate shell program written. The formatting is pretty straightforward. You can have documentation and code mixed up and make nice PDFs but also spit out code. It's good for public projects. It looks okay on Github.

Let's set up a tilde.club server!

Base machine

  • A standard unix server, Ubuntu or Fedora or Centos.
  • [TK explain servers and server math]

TODO Getting started

  • Add apropos descriptions for each application?

We need to start by installing some basics.

First we automatically upgrade the system

echo "Installing basics"
dnf update
dnf upgrade
reboot

And we remove Java; it's a beast and it takes a lot of memory and is generally a pretty bad citizen on machines that many people share.

echo "Removing java"
dnf uninstall java

Shells

dnf install zsh
dnf install csh
dnf install fish

Data

dnf install rrdtool
dnf install jq

Games

dnf install frotz
dnf install mlmmj

Editors

dnf install mg vile zile nano vim

Usenet

dnf install slang slang-devel slang-static slang-slsh

Then download slrn and do a manual install

dnf install slrn

Same with tin

dnf install tin

Servers

Now we install servers, which allow client software to connect and issue commands. Each server is like a small computer unto itself.

The first server we fetch is Webmin, which is a systems administration tool that you can use from the web.

echo "Installing servers"
echo "2) nginx"
dnf install nginx
echo "3) Unix Talk"
dnf install talk-server 
echo "4) postfix mail server"
dnf install postfix
echo "5) dovecot IMAP server"
dnf install dovecot

Applications

dnf install emacs
dnf install tmux
dnf install htop
dnf install elinks 
dnf install nail # [?why did I did this]
dnf install lynx
dnf install links
dnf install figlet
dnf install ImageMagick
dnf --enablerepo=epel install -y mosh

# Irc clients
dnf install ScrollZ
dnf install irssi
dnf install alpine
dnf install pico
dnf install readline
dnf install tig
dnf install sbcl
dnf install fortune-mod
dnf install tidy
dnf install jq
dnf install git-core
dnf --enablerepo=epel install nodejs
dnf --enablerepo=epel install npm

Development Tools

dnf groupinstall "Development Tools"
dnf install gcc
chmod 700 /usr/bin/gcc*
chmod 700 /usr/bin/cc*

Add other things