Hacker News new | ask | show | jobs
by woleium 235 days ago
I wish there was an easy auto-update process for Stalwart. is anyone hosting an apt repo for it?

edit: we use it on very resource constrained environments, the container version is too much overhead.

3 comments

Where is the overhead in a container? It is just a regular process. (Ok plus a container runtime process, but that is negligible)
Does podman have a container runtime process? Or does it just exec the child after setting up the environment?

In that case the overhead is just a small amount of kernel accounting.

It's the latter - podman just sets up all the necessary stuff - namespaces, cgroups, seccomp, network, mounts, etc - and then executes the child. No monitoring whatsoever. The best you can do is to have it listen on the socket it uses for the control API (similar to the docker socket).

However, the quadlets technology allows you to easily setup systemd using systemd generators to initialize the containerized applications using podman and then monitor it for any crashes. Quadlets essentially does everything that docker compose does.

That aside, a container's main overheads aren't the compute or the memory. It's the storage overhead. You're essentially replicating the minimal Linux userland for each container, unless that's in a shared layer.

negligible for you, perhaps ;)
isn't it a static binary? Can't you do it the old-school sysadmin way and pull down a binary from github releases and update a symbolic link?
They make breaking changes to settings (and possibly data stores, but I forget) between versions, so to go from, for example, x.y.1 to x.z.5 might involve doing migrations between x.y.2 through x.z.5 just to use the latest version.

This is not the case for all versions, but I've found it to be common enough that I have to read all of the release notes between point versions when upgrading.

It can definitely be improved.

There is a new section in the documentation discussing upgrades:

https://stalw.art/docs/install/upgrade/

The goal is to stabilize the database layout/configuration format very soon so v1.0.0 can be released (hopefully before Q1/Q2 2026).

yes, but that’s not as simple as apt automatic upgrades
want me to write the script out for you?

1. systemd timer

2. curl github api

3. if new release, fetch, verify checksum

4. update symlink

5. restart service

i don’t think repackaging is actually easier here, for main services of a system is ok to skip the package manager.

You will eventually break your email setup by doing this, see my other comment.
What resource constraints allow you to apt-get but not docker pull? It’s the same resulting stack isn’t it?

I am most curious

disk space on the system volume