> It is built in the simplest way, using Devuan debootstrapped system with kernel, dtb, u-boot, and board support packages from Armbian
By the way, reading this, an idea just hit me. It persistantly seems evident distro maintains often struggle to maintain huge repositories in both well-tested and up-to-date state. Why don't we separate OS distribution and apps repos into separate independent projects? Perhaps it could be enough for distro authors to concentrate on maintaining the actuall OS (system packages). Probably also a humble number of essential apps. Everything else could be then maintained in form of PPAs by whoever is interested.
Even existence of distro "flavours" focusing on specific DEs always felt a quirk to me. An operation of installing and choosing a specific DE should never have been requiring any attention from the distro author. The fact it does suggesrs there are quirks which have to be addressed, these should better be polished away globally than worked around in every installation script.
that's the way the "immutable" distros are going. they provide a base system and then a ton of packages come from containers or flatpaks. Like things based on OpenSuSE's MicroOS or Fedora's Silverblue and Kinoite but it does require the flavors currently, since the DE are considered core packages.
Can't we still have traditional repositories though? I personally dislike snaps and flatpaks because they usually are shipped with libarries hard-baked in rather than using separately-updatable libraries in the OS, using them also often means app duplication on per-user level and at least Snap didn't support Guest sessions (because of non-standard home directory path) the last time I checked.
Not really. I just meant that an OS team probably should only work on engineering and shipping the actual OS and should not dedicate a minute of their time to running a repository with Audacity or Wesnoth in it (I like and use both). Someone else should (as long as they feel interested).
> By the way, reading this, an idea just hit me. It persistantly seems evident distro maintains often struggle to maintain huge repositories in both well-tested and up-to-date state. Why don't we separate OS distribution and apps repos into separate independent projects
Because applications rely on libraries in the distribution and need to be in sync for when they change.
Ways around this are Flatpak, where those shared libraries for applications are shared runtimes that are distro agnostic.
Is Devuan still having a usecase? No offense, I am simply curious. Lately I see statements that you can use standard Debian and have it instaled without systemd. It won't be the default I assume, but how do Devuan and Debian (without systemd) compare nowadays?
Since the change, you could always use debian without systemd. It was trivial, especially for servers.
Desktops took more care, but that was still a non-issue.
But lately, especially since bookworm, things are less solid. rsyslogd is not a default install item now, and when you install it, there is no init script.
This is fine for servers which want centralized logging under systemd, because of course it can start syslog with the included unit file.
But if you remove systemd, by default you have no logging daemon, and once installed, no init script by default.
To my knowledge, this is not trivial (maybe not even possible now). there are simply too many packages that now define systemd as a requirement, like udev, dbus, etc.
If you want a systemd-free Debian, then Devuan is your go-to.
Yes, apart from being systemd free per default, it is backed by a nice community.
Also Debian having the possibility of providing systemd alternatives now, doesn't guarantee that this will be so forever. My personal guess is that at one point, systemd will be the only de-facto working init for desktop systems on Debian.
> Both Armbian and Devuan have their own toolchains for ARM boards and both have fatal flaws: the former is locked to systemd-based distros, the latter has poor support for ARM boards.
Isn't it possible to improve Devuan's toolchain so that it better supports ARM boards?
And, for that matter - isn't it possible to do the same for Debian itself, so that the delta to Devuan would inherit decent support for ARM boards?
I'm not a toolchain expert, so an answer with links to explanation of relevant concepts/jaron would be appreciated.
---
Regardless - I'm always happy to hear news about widening adoption and influence of Devuan. I believe a non-systemd distribution is the way to go and am glad Devuan offers that for the Debian space (while Debian, unfortunately, forces systemd on you and it's not just an option).
Everything is possible, the question is who will do that.
I'm not an expert in anything either. Both toolchains make me depressed.
But I'm glad I can run Devuan on my boards at last. Many thanks to both projects.
> Expanding out the stack here, Armvuan = Armbian + Devuan = ARM + Debian + Debian - systemd, so Armvuan = systemd-less Debian for ARM?
Not quite:
Armvuan = Armbian U Devuan = (Debian + ARM) U (Debian & ¬systemd) = Debian + ARM
Therefore: Armvuan == Armbian
If you look at the top of the file tree, Armbian is checked out as a submodule and forms the basis of the project. Also note that the commit history is short and makes no mention of Devuan: https://github.com/declassed-art/armvuan/commits/main
Daedalus is the codename of Devuan's current release (same as bookworm in Debian) and it's on the top of tree too. Well, almost. Anyway, it's visible on gh.
I would not say Armbian is the basis of the project. Its builder is just a useful tool. I tried to distance from it as far as possible, bearing in mind Devuan's arm-sdk as the next toy to play with. I gave it a try as well, but found Armbian builder is better.
Are they ? Because all of that looks like posturing on principles.
Like, I have plenty of issues with systemd but still on span of 461 systems we manage (mostly Debian with some centos here and there) with variety of use cases (from "legacy" to k8s running on ceph cluster) it saved us tens of thousands lines of code and allowed some tricky use cases to be far more reliable than before.
Because apparently despise vehement claims sysV scripts are "simple" and "straightforward" it turns out there is plenty of edge cases that most developers don't fix in those scripts.
For example the fact doing start -> status immediately after in many Java apps will tell you your application is not running, because developer delegated Java app to write its own pid file and that takes time for JVM to start. So if something like Pacemaker does exactly that (start app, wait for start script to finish, run status, Pacemaker thinks app didn't start and fails the service).
Especially if the 6 users are completely happy with it, then that is validation that it has a solid use-case. It means there are possibly many more who would use it, just that they've not heard about it yet.
ill be sure to ask my veterinarian if once daily Armvuan is right for pickles though.
By the way, reading this, an idea just hit me. It persistantly seems evident distro maintains often struggle to maintain huge repositories in both well-tested and up-to-date state. Why don't we separate OS distribution and apps repos into separate independent projects? Perhaps it could be enough for distro authors to concentrate on maintaining the actuall OS (system packages). Probably also a humble number of essential apps. Everything else could be then maintained in form of PPAs by whoever is interested.
Even existence of distro "flavours" focusing on specific DEs always felt a quirk to me. An operation of installing and choosing a specific DE should never have been requiring any attention from the distro author. The fact it does suggesrs there are quirks which have to be addressed, these should better be polished away globally than worked around in every installation script.
you mean like flatpack and snap which also have the benefit of decoupling .so dependency management?
or maybe like nix which you can run as a package manager on other dristros then NixOS?
Because applications rely on libraries in the distribution and need to be in sync for when they change.
Ways around this are Flatpak, where those shared libraries for applications are shared runtimes that are distro agnostic.
The Linux Filesystem Hierarchy Standard also tried to do what you are saying, but in a less ambitious way.
Desktops took more care, but that was still a non-issue.
But lately, especially since bookworm, things are less solid. rsyslogd is not a default install item now, and when you install it, there is no init script.
This is fine for servers which want centralized logging under systemd, because of course it can start syslog with the included unit file.
But if you remove systemd, by default you have no logging daemon, and once installed, no init script by default.
Easy to fix, but a reduced ease of use.
If you want a systemd-free Debian, then Devuan is your go-to.
It’s in the orphan-sysvinit-scripts package.
Also Debian having the possibility of providing systemd alternatives now, doesn't guarantee that this will be so forever. My personal guess is that at one point, systemd will be the only de-facto working init for desktop systems on Debian.
For the other 9X%, the world has moved on
Isn't it possible to improve Devuan's toolchain so that it better supports ARM boards?
And, for that matter - isn't it possible to do the same for Debian itself, so that the delta to Devuan would inherit decent support for ARM boards?
I'm not a toolchain expert, so an answer with links to explanation of relevant concepts/jaron would be appreciated.
---
Regardless - I'm always happy to hear news about widening adoption and influence of Devuan. I believe a non-systemd distribution is the way to go and am glad Devuan offers that for the Debian space (while Debian, unfortunately, forces systemd on you and it's not just an option).
Not quite:
Armvuan = Armbian U Devuan = (Debian + ARM) U (Debian & ¬systemd) = Debian + ARM
Therefore: Armvuan == Armbian
If you look at the top of the file tree, Armbian is checked out as a submodule and forms the basis of the project. Also note that the commit history is short and makes no mention of Devuan: https://github.com/declassed-art/armvuan/commits/main
I would not say Armbian is the basis of the project. Its builder is just a useful tool. I tried to distance from it as far as possible, bearing in mind Devuan's arm-sdk as the next toy to play with. I gave it a try as well, but found Armbian builder is better.
Like, I have plenty of issues with systemd but still on span of 461 systems we manage (mostly Debian with some centos here and there) with variety of use cases (from "legacy" to k8s running on ceph cluster) it saved us tens of thousands lines of code and allowed some tricky use cases to be far more reliable than before.
Because apparently despise vehement claims sysV scripts are "simple" and "straightforward" it turns out there is plenty of edge cases that most developers don't fix in those scripts.
For example the fact doing start -> status immediately after in many Java apps will tell you your application is not running, because developer delegated Java app to write its own pid file and that takes time for JVM to start. So if something like Pacemaker does exactly that (start app, wait for start script to finish, run status, Pacemaker thinks app didn't start and fails the service).
https://github.com/armbian/build/blob/b7bc0015b064b825cb0340...