Subject: Multiple machine management

From: Martin Kjær Jørgensen <[email-masked]>
Date: Thu, 30 Apr 2026 09:21:56 +0200

Hey users,

How do you maintain multiple Alpine Linux installations in your daily lives? I
assume you have desktops, laptops, work stations, etc. you run Alpine on, and
wish to maintain them by using rules/lists across machines that dictate what
to do on then.

I'm thinking about problems like:

- updates/patches
- config (/etc files)
- upgrades
- automatically installing desired packages
- automatically removing obsolete or unneeded packages

I know there are tools like rsync, and comparing world files to help, but I
wonder if you or Alpine have made tools for these problems in particular.

-- 
/Martin

---

From: Christian Kujau <[email-masked]>
Date: Sun, 3 May 2026 14:34:30 +0200 (CEST)

> - automatically installing desired packages

There's apk-autoupdate tool:

  https://wiki.alpinelinux.org/wiki/Alpine_Package_Keeper#Autoupdate_tool_for_apk

Never used it though, I'm using a cron job with "apk upgrade" and this 
works quite well.

> - automatically removing obsolete or unneeded packages

Automatic package removals...I'd be careful with that :-) Can you give an 
example on why you want to do that? Like, "remove the 10 least used 
packages" or something? Do other distributions have something like this?

> - config (/etc files)

What about this, what do you intend to manage here?

C.
-- 
BOFH excuse #188:

..disk or the processor is on fire.

---

From: Ralf Mardorf <[email-masked]>
Date: Sun, 03 May 2026 15:16:39 +0200

On Sun, 2026-05-03 at 14:34 +0200, Christian Kujau wrote:
> Automatic package removals...I'd be careful with that :-) Can you give
> an example on why you want to do that? Like, "remove the 10 least used

I think in this context, the OP is referring to synchronization between
different Alpine installations.

So if the Foo package was removed in Alpine installation 1, it should
also be removed in Alpine installation 2.

---

From: Martin Kjær Jørgensen <[email-masked]>
Date: Mon, 04 May 2026 13:11:02 +0200

> Never used it though, I'm using a cron job with "apk upgrade" and this 

Thanks for the hint. I'll look into it.

> packages" or something? Do other distributions have something like this?

I do not know if other distributions have such a tool. I thought about keeping
one or more text files, like the world file, that lists desired packages for
groups of machines. So machine checks if its in a particular group and
install/removes packages accordingly.

A simple use case; imagine you have a desktop and a laptop. You wish to make
sure needed packages are installed on both systems but also removes packages
not needed or wanted anymore. You also want to maintain lists of packages only
wanted on desktop and another for the laptop. For instance, the desktop might
not need wireless tools and firmware, but the laptop does.

> What about this, what do you intend to manage here?

I intent to keep a repository or file system with /etc files so that machines
can easily share/sync their /etc. I realize, most files in /etc would not be
synced between machines, but a few might. Like setting files for daemons
needed on all systems, bash/profile files, and similar.

-- 
/Martin

---

From: Silas <[email-masked]>
Date: Tue, 5 May 2026 11:30:20 -0300

>> What about this, what do you intend to manage here?

Why not using a a Infrastructure as Code such as Ansible (or other) to 
automatize your machines configuration? This is exactly how I manage my 
many Unix machines (different Linux distributions and BSD as well).

---

From: "Sertonix" <[email-masked]>
Date: Mon, 04 May 2026 11:33:42 +0000

> - automatically removing obsolete or unneeded packages

For that I use custom (meta)packages with dependencies and config files:
https://codeberg.org/sertonix/aports/src/branch/main/custom

I build the packages on a specific device and have them automatically
copied to other devices through syncthing. Then on the next upgrade the
changes are applied.

---

From: Martin Kjær Jørgensen <[email-masked]>
Date: Tue, 05 May 2026 09:10:22 +0200

> https://codeberg.org/sertonix/aports/src/branch/main/custom

I like that approach, but I was wondering why do you prefix packages with
"0+"?

> copied to other devices through syncthing.

Why use syncthing for distribution, instead of uploading to a remote web
server for clients to pull from?

>Then on the next upgrade the changes are applied.

Once the packages are distributes, does your machines automatically update
unattended, or do you manually trigger upgrade?

-- 
/Martin

---

From: [email-masked]
Date: Wed, 6 May 2026 14:00:30 +0200 (CEST)

you can try pyinfra