aboutsummaryrefslogtreecommitdiff

koszko.org server configuration

This is Guix system (container) configuration used for the system serving https://koszko.org

Use & installation

The command

make && sudo make start-container

causes the container to be run in a test enviroment, with some host directories (e.g. /var/www/koszko.org/html) faked to contain sample files. The command

make fake-client

spawns a shell in which koszko.org and some other domains resolve to the IP address under which the container services are visible to the host. The command

make enter-container

spawns a shell inside the previously-started container. Finally,

sudo make install

registers the container startup script as a Guix gc root and creates an /etc/init.d SysV-style init script for starting it. The container can then be started by systemd with

sudo systemctl daemon-reload # only needed once after installation
sudo systemctl start guix-container

or by the good old SysV init with

sudo service guix-container start

You can of course also use other systemd or SysV init commands to manage the container service.

Feel free to look into the Makefile to see what other helpful targets are available.

Notes

After entering the server container, a sample email can be sent with

(echo "To: foo@bar";
   echo "Reply-To: my@email.com"
   echo "Subject: Hello!";
   echo "";
   echo "My Mail Content") | exim koszko@koszko.org

Copying

The configuration as a whole is available under GPL-2.0-or-later. Most of the code is Copyright (C) 2022-2023 Wojtek Kosior — this part is additionally available under the terms of CC0-1.0. This repository is REUSE-compliant. Please look at the SPDX identifiers to determine the licensing of particular files or use the reuse spdx command to get a complete report.

The above only concerns the contents of this git repository. The subrepos linked from here may be governed by different distribution terms.