MeidokonWiki:

arkroyal

Decommissioned on 2022-06-09

local work

IPv6

Autoconfigured

Puppet

Using local repo of serverless puppet stuff

Lets Encrypt for certs

After everything being broken all the time, I finally cleaned up and move the cert renewal stuff to something newer. After they stopped supporting the old ACME v1 client I'd been using since the beginning. -_-

Certbot kinda seems like a pain in the arse so I'm using Dehydrated: https://github.com/dehydrated-io/dehydrated

Way simpler, easier to configure and use, more intuitive. Win-win.

Config goes in /etc/dehydrated/domains.txt, gets run regularly from root's crontab. Weekly run of dehydrated -c and that's it.

I created /etc/dehydrated/manual_dns_challenge_hook.sh based on notes from https://github.com/lukas2511/dehydrated/wiki/example-dns-01-nsupdate-script

nginx config

nginx catches ACME requests in the default vhost, and protected domains read their cert and key from /var/lib/dehydrated/certs/DOMAIN/

Wordpress

Running a vanilla Wordpress 5.8.3 for https://blog.meidokon.net/

Wordpress has come a long way, I'm genuinely impressed. The editor is fantastic now, the new Content Blocks scheme makes it a contender to Squarespace in my eyes, but you can self-host instead of using their cloud. Full control over the potential for speed and caching is very, very nice.

Now go tweak it up however you like it.

Decommissioning a site on arkroyal

Admin bits

User content bits

Moin customisation

I've tweaked the memodump theme to take advantage of really big screens (ie. my normal-sized one).

Upgrade to moin 1.9.11

Download and unpack new version to moin user account. I'm going to "install" moin locally (in the homedir), and keep the instance data separate from the code that it's executing.

cd moin-1.9.11/
python setup.py install --user --force --record=2021-06-28_moin_install.log --install-data=~/moin_instance
Writing /home/moin/.local/lib/python2.7/site-packages/moin-1.9.11.egg-info
writing list of installed files to '2021-06-28_moin_install.log'

Update ~/.profile to include the moin binary

# set PATH so it includes user's private local bin if it exists
if [ -d "$HOME/.local/bin" ] ; then
    PATH="$HOME/.local/bin:$PATH"
fi

Move the instance contents to dir where I wanted it, the intermediate dirs are completely empty and make no sense for a user-local install.

moin@arkroyal:~/moin_instance$ mv share/moin/* ./

In instance/server/, copy moin.wsgi to app.py and fix up the config path. Can leave the app path because it's "installed" now.

# Set 1b) to instance/config/
sys.path.insert(0, '/home/moin/moin_instance/config')

Move the old instance data to the new empty instance dir:

moin@arkroyal:~/moin_instance/data$ rm -rf cache dict edit-log event-log meta pages user plugin

moin@arkroyal:~/apps/moin-1.9.3/wiki/data$ cp -a cache dict edit-log event-log* meta pages plugin user ~/moin_instance/data/             

Run the upgrade now:

moin@arkroyal:~/moin_instance$ moin --config-dir /home/moin/moin_instance --wiki-url=https://moin.meidokon.net/ migration data

Following the rest of the guide: stop moin, delete cache with moin ... maint cleancache, start moin again

moin@arkroyal:~/moin_instance$ moin --config-dir=/home/moin/moin_instance maint cleancache

MeidokonWiki: servers/arkroyal (last edited 2022-06-09 05:14:48 by furinkan)