Looking for a replacement for Slack/Discord as they proceed toward corporate enshittification, I landed on Mattermost. Of course, it too now has found some enshittification by making all of the "easy" update mechanisms based on the pricy team editions, while pushing the actual open source edition somewhere into the bottom of a locked filing cabinet stuck in a disused lavatory with a sign on the door saying "Beware of the Leopard".
The Team edition is still updated though, if you download a tar file from the archive here: https://docs.mattermost.com/product-overview/version-archive.html
Since I started from the Omnibus edition on Ubuntu, I ended up with my various files stored over in /var/opt/mattermost/data which turned out to be a blessing, it means the easiest way to update the application itself is:
- Stop the existing mattermost process with
sudo systemctl stop mattermost. - Save a copy of
/opt/mattermost/config/config.json - Nuke
/opt/mattermostand replace it with the new version usingtar -xvzf <new_mattermost> /opt - Copy back over the cached config.
- A simple
sudo chown -R mattermost:mattermost /opt/mattermostfixes up the owners. sudo systemctl restart mattermostgets things restarted.
This setup has actually been simpler to update than the mmomni one which assumed that the nginx proxy was running in the same host as matttermost itself and always attempted to blow away some of the proxy config settings on every upgrade.
Of course we'll see how long this lasts and if it gets even harder to keep it running in the future.