You could, instead of basing it on Ubuntu, base it on Void Linux.
Void Linux is a general purpose (fit for any purpose) rolling release distribution which uses its own package manager and has runit instead of systemd.
Now, the default install is pretty bare-bones, so why not make a distribution based on Void which aims for the end-user desktop? Perhaps low-power desktop by providing a default selection of applications which are suited for a small system.
The things you’d need to build yourself:
a GUI front-end for xbps.
(maybe) a GUI front-end for managing runit-services.
If you go with XFCE as your GUI, I’d use GTK+ for your GUIs.
You’d need to provide a sane default configuration for your OS.
So, if you go for this, you’ve got your work cut out for you.
There is one of those in Antix.
AFAIK Antix is the only distro with a services gui… it can be had with either runit or sysvinit.
So maybe one could move it from Antix to Void?
U mean only for the void one or just any other base ?
Currently im at a stage where customisation of xfce is ready in Xubuntu VM…making the layout like cinnamon/windows. Now setting up the taskbar…then will do the themes and then some softwares…the list goes in and on
Hope in your write up of the project you are able to discuss your choice, why this one, what it offers over others in terms of user experiences, speed, size. Perhaps a comparison table this against others from the same range of ubuntu offerings
In projects like these the more quality you put in the better the mark, silly, even if the finished project doesn’t even work. Which can happen with unknown issues.
So well documented
I chose this because…
So perhaps a table showing what is available or not… not to give you the answer but around (this is the idea and not correct info)
Someone already mentioned AntiX. It has some very nice tools that make it easy to create your own spin based on that distribution. I think it’s a great starting point. You mentioned lightweight and a system that runs on old computers. A lot of people seem to think XFCE is lightweight and it’s usually a lighter option than Gnome or KDE, but it’s really not the most efficient choice if you want something that works well on really old computers. The Equinox Desktop Environment is probably more lightweight than most of the other options out there, but for older computers with low resources, it’s usually better to get a lightweight window manager and some useful tools to replace standard desktops. AntiX has several lightweight window managers like Openbox, Icewm and JWM already installed and ready to try out. Some people prefer tiling window managers like dwm. If you want to breathe new light into an old distribution that’s no longer maintained, you might want to look into INX. It’s completely command line and was designed for people who wanted to learn more about working with the command line. I’ve been very interested in the idea of putting together a lightweight distro for a while now. I’ve been looking at alternative GUI libraries for lighter options to GTK and Qt. Some of the options I’ve experimented with more recently are FLTK, SDL and Raylib as well as command line tools and curses based programs. One good way to tell if something is lightweight is to compile it yourself from source. If there are lots of dependencies and it has a lot of source code and it’s difficult to build, odds are, it’s not lightweight. If you’re interested in software alternatives that are more lightweight than a lot of the popular programs out there, let me know. Linux From Scratch may be overkill for a lot of people, but I love the idea of being able to build the programs I use from source code and having a better idea of how they work. It’s also much easier to customize if you can modify and build programs from the source code yourself.
Yes, I used a very interesting Antix spin that allowed choice of init system.
You seem to be interested in light distros. What is your opinion on init systems in relation to lightness.?
I would think maybe the way BSD uses a simple init process plus rc scripts is probably the lightest.?
You are right about compiling. Large bloated packages like browsers take forever to build.
I think your post is really helpful to anyone wanting to make a spin. Well done.
Richard Felker who created the musl library wrote a very simple init.c program. Haven’t used runit myself, but I did read about it and it sounded interesting. I liked Debian’s file-rc. Don’t see a package for it anymore. Busybox has an init program built in which is an interesting option if you’re already using Busybox in place of GNU coreutils on the system. The BSD init system is nice but not as lightweight as some of these other options. Slackware uses a BSD like init system. We have AIX systems at work and they’re using something like that too. With the machines I use where I work, I like the AIX init system better than the Linux systemd system and find the AIX system easier to work with.
Runit , apart from providing an init, starts a supervisor process for every daemon. So it makes lots of processes. You may consider that not-light.
Runit is a development of ‘daemontools’ software written by Daniel Bernstein
There are further developments in S6 and dinit.
And, thanks, I did not know about Busybox providing an init.
Thanks, there is more out there than I appreciated.
I spent a lot of time with S6 and 66.
You can find it here in the forum… search for ‘init system’
BTW have you seen Obarun… it uses busybox, but not for an init.
I am coming to the conclusion that servers need a rather complicated init system that deals with dependencies, process supervision and grouping of services for management
but
home desktop users need only a simple init system that can manage starting and stopping services.
and
now you are telling me that small embedded systems need only a simple init process and an initial startup of services.
That all seems to make sense…
systemd or S6 for servers
OpenRC or similar for desktops
tiny inits for embedded
I recall reading one of the main reasons there was a push to adopt systemd was that it could do a better job of starting up multiple services concurrently. If you’re not running several services or don’t care about the start up time of the system, something like systemd could be overkill.
Exactly… it is called parallel startup.
S6 and 66 have caught up with systemd, they do that too.
Yes.
At home, I have never needed to do anything other than
add a new daemon to the startup
start or stop a daemon while running
Any simple init system can do that (eg OpenRC)
I cant see the point of supervision of services either. It is supposed to watch each daemon and if it stops restart it.
I would have thought that if a daemon keeps stopping, it is poorly coded and ought to be fixed. Running another process to watch it is a very poor way to fix a badly coded daemon.