The officially official Devuan Forum!

You are not logged in.

#1 2024-02-15 22:30:19

Prowler_Gr
Member
Registered: 2023-12-23
Posts: 13  

antiX 23.1 "init-diversity" edition

antiX is not a Devuan derivative but a sister distro with some common goals.

I believe this would be of high interest to the broad Devuan community, therefore I'm posting this here:

https://antixlinux.com/unofficial-antix … sity-spin/

We offer you a development release of antiX-23-full edition (32 and 64 bit) shipping with 4 init systems out of the box and still systemd-free!

*sysVinit
*runit
*s6
*s6-66

This ‘spin’ has been developed by ProwlerGR and is fully supported by the antiX team, even though it is in development stage.

* Multiple grub (isolinux) entries available allow to boot live into any of the 4 available inits
* The s6-rc Service Manager (inspired by the runit Service Manager), comes preinstalled making s6-rc management a breeze.
* Service files have been optimised, providing a very strong foundation for any official work to come.

Just a few notes to all that plan to try it:
– Running it live works as expected for what it is intended.
– If you plan to install, it is important to boot into the “default” boot entry prior to installing. The installer has unpredicted behaviour breaking a few things (reboot, poweroff) if you install using the non default init entries.
– To enable the multi-init grub menu after first install from iso just run
sudo dpkg-reconfigure grub-multi-init-enabler

Username = antix
Password for user and root = antix

This work would not have been possible without the active cooperation of Eric (Obarun), aitor (gnuinos) and antiX testers and devs.

Download here: https://sourceforge.net/projects/antix- … s/Testing/

Please post comments at the antiX forum.

Offline

#2 2024-02-16 02:20:46

nixer
Member
From: North Carolina, USA
Registered: 2016-11-30
Posts: 187  

Re: antiX 23.1 "init-diversity" edition

A few days ago, I read on this forum that "Artix was to Arch what Devuan is to Debian", so that got me to thinking about playing with something new.  So I installed it with the s6 init system and I was pleasantly surprised at just how fast it boots and how smooth it runs.  This really got me interested in s6. 

So earlier today, I was web searching for debian s6 packages and somehow I landed on the antix forum.  Before you posted this here, I found and read your announcement and just had to try this out.  I installed it in virtualbox and gave it a test drive.  The concept is great and all the init options worked after installation with the stated update of grub.  It is experimental so I did not expect perfection, and overall it worked great.

I must say that this is definitely init-freedom and init-diversity in action!  This release is impressive.  You have done an excellent job!

Offline

#3 2024-02-16 20:34:50

aitor
Member
From: basque country
Registered: 2016-12-03
Posts: 220  
Website

Re: antiX 23.1 "init-diversity" edition

Prowler_Gr wrote:

I believe this would be of high interest to the broad Devuan community, therefore I'm posting this here:

https://antixlinux.com/unofficial-antix … sity-spin/

Thanks for sharing the iso in d1g, Prowler_Gr smile


If you work systematically, things will come by itself (Lev D. Landau)

Offline

#4 2024-02-16 21:08:28

golinux
Administrator
Registered: 2016-11-25
Posts: 3,145  

Re: antiX 23.1 "init-diversity" edition

Anticapitalista was a regular here for years. Was very sorry that he decided to leave us because of another user's borderline posts. I miss him . . .

Offline

#5 2024-02-17 11:44:44

Prowler_Gr
Member
Registered: 2023-12-23
Posts: 13  

Re: antiX 23.1 "init-diversity" edition

nixer wrote:

This release is impressive.  You have done an excellent job!

Thank you @nixer for your kind words.

aitor wrote:

Thanks for sharing the iso in d1g, Prowler_Gr smile

Thank you once more @aitor for all your contributions to help us get so far.
Without your gnuinos experimental build & the s6 deb-src sources you shared, and Eric's personal involvement with 66 it wouldn't have happened (at least in its current form & timing)
It was a great experience for me to collaborate with 3 great distro leaders (antiX - gnuinos - Obarun) to get this out for the community to test.

golinux wrote:

Anticapitalista was a regular here for years. Was very sorry that he decided to leave us because of another user's borderline posts. I miss him . . .

Without knowing the history of what might have happened back then, I believe he'd be happy to hear from you. Any feedback from you about this release on the antiX forum might be an excellent opportunity to break the ice wink

Last edited by Prowler_Gr (2024-02-17 14:16:50)

Offline

#6 2024-02-20 15:14:38

UnixMan1230
Member
Registered: 2023-10-21
Posts: 38  

Re: antiX 23.1 "init-diversity" edition

This is the first I've seen of any real experimentation with s6 beyond GNUinos, this should be pretty interesting...maybe someday it'll be solid enough to upstream to Devuan? That'd be cool.


"Less is only more when it's what you're looking for" -Unknown

Offline

#7 2024-03-02 20:52:09

bimon
Member
Registered: 2019-09-09
Posts: 172  

Re: antiX 23.1 "init-diversity" edition

What do you think about creating a systemd like CLI and service definitions for Devuan with S6 init ?

My idea is to create a wrapper which would automatically translate somehow config files looking like systemd into S6 syntax when any such config file has been changed and its syntax has been linted without an error.

It is not related to binding to actual systemd software except adding compatibility at user/admin syntax level familiar with systemd CLI, etc.

So nothing from systemd system manager would be imitated by such a CLI except init system service definitions language (may be a subset of it).

IMHO it would make it much easier to migrate existing Debian systems to Devuan with S6 init and make creating new service config files much easier. When such S6 looking like systemd is ready it would be more difficult to argue for using systemd instead of S6 just for its service definitions language.

There are many examples of transpiling from one programming language to another. IMHO it is much easier for systemd config files.
I would even offer two modes for new init syntax: legacy (compatible with systemd) and new YAML syntax still similar to systemd but more modern and advanced. And S6 under the hood without any actual systemd dependencies of course smile

Last edited by bimon (2024-03-02 20:53:29)

Offline

#8 2024-03-03 08:54:39

Prowler_Gr
Member
Registered: 2023-12-23
Posts: 13  

Re: antiX 23.1 "init-diversity" edition

@bimon:

This is not a new idea, skarnet has already dedicated a full section on his website mapping out in detail the amount of work required to create such a translator (or parser) converting systemd units to s6-rc services.

https://skarnet.org/software/s6/unit-conversion.html

On the other hand Eric Vidal of Obarun (author of 66), has developed the framework for 66 to use service frontend files in very similar syntax to systemd unit files.

https://web.obarun.org/software/66/late … ntend.html
.
These are really easy to create without the real need of a systemd parser.
If you pay attention to section  “A word about the @execute key” you will find that you could pretty much use a sysvinit script, a bash script to resolve a systemd file, or a simple execline command to run a service with s6-66.

The antiX build is a very good testbed to explore all these options, and the developers there are keen to adopt this for their future releases.

I just hope Devuan is prepared to do the same once antiX gets this off the ground in a fully supported OFFICIAL release.

Offline

#9 2024-03-03 12:25:58

boughtonp
Member
From: UK
Registered: 2023-01-19
Posts: 203  
Website

Re: antiX 23.1 "init-diversity" edition

bimon wrote:

What do you think about creating a systemd like CLI and service definitions for Devuan with S6 init ?

My idea is to create a wrapper which would automatically translate somehow config files looking like systemd into S6 syntax when any such config file has been changed and its syntax has been linted without an error.

For something similar (unrelated to s6), see sr.ht/~craftyguy/superd

https://sr.ht/~craftyguy/superd/ wrote:

superd is a user service supervisor that is only intended to be used for supervising user services. It makes absolutely no attempt to replace init/pid 1, and should never be used do to that.
...
Service configuration uses systemd's .service files, so that it's low(er) effort to configure services. Many things intended to run as user services already have systemd config written.


3.1415P265E589T932E846R64338

Offline

#10 2024-03-05 01:26:57

aitor
Member
From: basque country
Registered: 2016-12-03
Posts: 220  
Website

Re: antiX 23.1 "init-diversity" edition

bimon wrote:

There are many examples of transpiling from one programming language to another. IMHO it is much easier for systemd config files.
I would even offer two modes for new init syntax: legacy (compatible with systemd) and new YAML syntax still similar to systemd but more modern and advanced. And S6 under the hood without any actual systemd dependencies of course smile

The benefit of having a systemd unit translator was commented months ago in the mailing list:

New goodies from systemd

Although the thread started as a proposal for a systemd-to-sysvinit converter, I certainly consider this idea more feasible for s6/66.

BTW, you can find some related projects in the footer of the wiki below:

https://wiki.debian.org/SummerOfCode202 … translator

Not particularly related to s6, but maybe could help.

Last edited by aitor (2024-03-05 01:29:00)


If you work systematically, things will come by itself (Lev D. Landau)

Offline

#11 2024-03-06 21:51:00

bimon
Member
Registered: 2019-09-09
Posts: 172  

Re: antiX 23.1 "init-diversity" edition

> Although the thread started as a proposal for a systemd-to-sysvinit converter, I certainly consider this idea more feasible for s6/66.

Very good idea to translate ready service definitions from one init system to another and I would also offer from one distribution to another because some distributions have more complete definitions e.g. for OpenRC than Devuan, etc.

So translator shall allow choosing a ready distribution (for example URL to another distro LiveCD ISO) and automatically detect its init system. Then translate from foreign distro systemd/OpenRC -> Devuan OpenRC/S6 for example in a CI/CD pipeline.

Also a tool may have a method to pull service definitions from standalone application source repositories on Github, Gitlab, etc. or repository of another distribution packages.

If someone is interested to sponsor such work I would be glad to try to develop it using Nelua and/or Ion and/or Haxe and/or Crystal:

Nelua: https://nelua.io/ - traspiler from LUA dialect  to C, very easy to use, as productive as LUA, generates very light executable about 10Kb for a Hello World test application or a small C source file. IMHO it is an absolute winner  for writing portable precompiled CLI applications (though relatively young yet):

We love to script in Lua.
    We love C performance.
    We want best of both worlds in a single language and with a unified syntax.
    We want to reuse or mix existing C/C++/Lua code.
    We want type safety and optimizations.
    We want to have efficient code while maintaining readability and safety.
    We want the language features and manual to be minimal and fit our brain.
    We want to deploy anywhere C runs.
    We want to extended the language features by meta programming or modding the compiler.
    We want to code with or without garbage collection depending on our use case.
    We want to abuse of static dispatch instead of dynamic dispatch to gain performance and correctness.

Though Nelua did not build on OpenBSD out of the box, I was able to fix this in about a few minutes, it was a minor incompatibility of OpenBSD time function with Linux.

Haxe: https://haxe.org/documentation/introduc … ction.html
It is the most mature multi-target (JS, Python, Lua, JVM, C++, etc.) transpiler known to me.
IMHO it has the most pleasant and clear syntax, easy to program. Generates very light JS and Python code.
One day its Lua target output may become compatible with Nelua input which would allow it to produce very light AOT binaries.
Haxe transpiling to C++ produces relatively heavy binaries about 1.5Mb for a Hello World test application like Crystal.

Crystal: https://crystal-lang.org/ - very productive  powerful full blown programming language with a pleasant Ruby syntax. It can be a single binary too but large enough, at least 1.5 Mb for a Hello World test application.

Ion: Powerful and still easy with clear syntax Ion shell: https://doc.redox-os.org/ion-manual/var … rrays.html  - it is a bash like single binary shell interpreter.

Microsoft C#: IMHO C# on Mono is good only for executing with JIT compilation with full runtime deployed (the same way as for Python without Nuitka)  because full AOT of Mono is very buggy and development of Mono seems to be stalled. That is why it is IMHO not good for generating self enough binaries like in Golang, Crystal, Nelua, etc. Though there is another tool IL2CPP from Unity, I am not sure how good it is for compiling CLI tools without Unity game engine.  And regarding to modern .NET 8 AOT, it is not as good for  cross-platform development as other options. .NET Native AOT compilation works only for Linux/Android/Windows/Apple, x86/ARM: https://learn.microsoft.com/en-us/dotne … native-aot, unfortunately it lacks support of OpenBSD OS and hardware architectures like MIPS, PowerPC, SPARC, etc.

I can offer price based on number of lines of very DRY code or per hour (say $10-$20/h).

Also I learn to become a DevOps engineer.

Last edited by bimon (2024-03-11 10:26:45)

Offline

Board footer