Re: A dumb question

2017-05-02 Thread Francisco Gómez
May 2, 2017 12:00 PM, "Laurent Bercot" 
wrote:

> Old? Let's see...
> The MTA used by this very mailing-list is netqmail-1.06, i.e.
> qmail (latest version released in 1996) with user-contributed
> patches, the latest of which is from 2005.
> So yeah, that's 12 years old software. It could be going to middle
> school right now.
> And it works. I think the usual motto is "if it ain't broken, don't
> fix it". :)

To be honest, it's surprising to say the least to hear of a program
that fully meets its purpose, is complete and has no bugs. The "ain't
broken, don't fix it" motto is usually invalid because of this, as
people demand new features, related tools and libraries get updated,
code becomes larger and taking care of multiple tasks, programmers
create bugs, and so on. You know better than I do.

> The latest runit version is from 2014 - that's only 3 years old.
> It's not even kindergarten age, come on. Did you know that some Linux
> distributions still ship GNU make 3.81, a version of GNU make that is
> 11 years old?

No, I didn't, usually I just do `./configure && make && make install`
and it just works. Despite of this, GNU make 4 exists, and it has been
last updated on June 2016. So perhaps software is improvable after all.

> systemd, on the other hand, hasn't left the maternity hospital - but
> how could it? it's such a fragile baby, it needs constant attention,
> it can barely leave the incubator. If you ask me, it should never
> have left the womb in the first place. :-Þ

That fragile baby must be the child of a demigod, as it is one of the
most used inits out there already, and most complaints come from either
its (somehow working and usable) centralized design, having to type
Ctrl-Alt-Del 7 times in less than 2 seconds for rebooting, or it being
a core part of Red Hat's evil plan to conquer the world (less likely).

Anyway, don't take me wrong. I *do* prefer the model of Runit over the
model of Systemd. But those who don't are quite abundant. And think
about this: there is no "correct lifespan" for a program to last..
People expect things to be done for themselves and demand new ways to
do things that get closer to how they think. You can't know what's
happening everywhere or what will happen, however you do know from
barely every project and from your past experience that updates keep
constantly rolling. Besides, if you could magically do perfect small
applications, that means you'd have to keep working with and on
millions of small tools, right? Wouldn't that just add up complexity!?

tl;dr: Not everyone is DJB, so not everyone thinks like DJB. And some
of them make me write mails to people who think like DJB. Others make
and use Systemd instead. Sad.

>> Has Runit been so well tested and hardened,
>> is it such a simple codebase? Or are there not enough interested,
>> capable people maintaining the project?
>
> The answer to both questions is partly yes.
> There is one lingering bug in runit that I know of, but it only
> triggers in extreme corner cases. Apart from that, it just works,
> does what it'supposed to do, and is a very simple codebase, so
> there's no need to constantly tinker with it.
> It is also true that it would benefit from closer maintenance.
> Gerrit Pape, runit's author, is still around and still reads this
> list, but is not as active as he was a few years ago (typically
> during runit development). Fortunately, there are not many feature
> requests.

OK, I see. So there's a single bug left. It could be fixed. A single
known bug can either mean a really overlooked program or something more
stable than Systemd. And I incline myself towards the latter,
considering it has over 13 years of development on its back, being most
likely today more popular than it's ever been (i.e. it is actually the
default on a distro as well as packaged on many popular ones).

> As others have mentioned, if you're looking for a closely maintained
> supervision suite that is similar to runit, may I recommend
> http://skarnet.org/software/s6 ? It's not going away any time soon,
> and neither is its author - I hope ;) Lots of work have been put into
> s6 in the last few years, more than in any other supervision suite,
> with the possible exception of nosh; the fact that Void Linux has not
> yet switched to s6 is proof that runit is still working well enough
> for them and they don't feel the need to change

Great then! I still don't feel either the need to switch. I'll
definitely try it out on a QEMU VM or a Docker container, but so far
Runit is seriously impressive.

Greetings to the creator of s6! I hope too that he doesn't go anytime
soon!

Francisco / @espectalll



Re: A dumb question

2017-05-02 Thread Francisco Gómez García
May 2, 2017 8:35 AM, "Steve Litt"  wrote:

> I also am surprised you could get Gnome to work without systemd. Just
> for fun, try out LXDE, and install dmenu and have it at the ready
> with an easy hotkey. I think you'll love the productivity 
> enhancement, once you get used to it.

Yes, GNOME works, and on its entirety! No missing features on Void so far but 
GNOME Software (because of xbps and PackageKit, naturally). Who could have 
guessed that they didn't need to enforce their init of choice to make the 
desktop of their dreams?

While LXDE is not of my taste, I did try out i3 with dmenu, as in fact I had it 
set as my default X session on Arch like half a year ago. It works really great 
overall, but from time to time I find myself being too specific about which 
programs I want to launch and how, often going to the terminal instead (as it 
usually provides richer autocompletion) - or even worse, I just end up using 
the GNOME apps but without the GNOME desktop, completely breaking the workflow. 
Besides, one of my computers is a Microsoft Surface (please forgive me, I'm a 
sinner), which means high display density and touch input, something that I 
have only seen Enlightenment and GNOME handling well enough.

I don't know what's with suckless tools in general that they seem so close to 
doing their job right, but always become a little too hard and effort-demanding 
for my taste. Perhaps it's a matter of time, but for now I'm sticking with 
GNOME, even despite its overhead. I end up saving time by just pressing Super, 
typing what I want and getting it.

> You'll meet plenty of people like that. He almost certainly hasn't
> tried Runit. If "barely maintained" is why he recommends systemd, 
> he's just flapping his gums.

You're right, he has not been bothered to try it - because of that. It's the

> Or, maybe, he's a systemd sycophant and you backed him into a corner
> where he couldn't enthuse about systemd because it's better than
> sysvinit, as if those were the only two choices.

No need to back anyone into a corner, since that's a very common reaction of 
Systemd fans after being talked about *any* potential alternative, as if could 
only mean going back to sysvinit, having a subpar service management system, 
losing compatibility with "modern" software and eventually breaking everything 
by the means of a malfunctioning script. And I believed so at first, after 
unsuccessfully trying out OpenRC on Arch and Debian. But not the case anymore, 
in part because I got better at reading and typing stuff on a keyboard, in part 
because Runit is just so good.

> Pre-cisely! As of 2014, it did everything it was supposed to do, and
> did it according to specification. The niche it fills is as the simple init, 
> so there's no reason to add features.

Keep in mind there are still bugs to be fixed and things to be polished, see // 
XXX comments on the source code. It's not perfect yet. And the person who told 
me the "it is too old" thing used arguments such as "it will eventually not 
compile" - while I doubt a small codebase on plain C will stop compiling in the 
near future, it is indeed something to keep an eye on. Anyway, the response is 
somewhat what I expected and I'm glad Runit meets my best expectations.

> Last time I looked, there's one guy maintaining it. That one guy
> wrote it, and every once in a while he fixes a bug or whatever. But
> here's the thing: He isn't riding his software to fame and glory, so
> he feels no need to cram more and more features into it: And that's
> the way I like it.

Good. Don't keep needless or wrongfully-placed features rolling, I just need my 
computer working at its best and letting me work at my best. But keep in mind 
also that "updates" are not intrinsically the same as "new features".

> Runit's so simple I could maintain it that if Gerrit Pape dropped
> dead tomorrow, I could pick it up and maintain it. That's the benefit
> of having software developed by one guy.

Aaand that's the part where I absolutely fall in love with the UNIX 
philosophy, KISS and such. Actually understanding how your computer works and 
being able to tweak it if *really* needed, free software at its best. It can't 
be the model for everything (e.g. web browsers and Emacs), but if it can work, 
it certainly is great. I have checked the source code, so I can trust your 
words - it seems that even someone yet a long way to understand everything 
computers like I am could fork it and make the right improvements with a bit of 
patience and time. So, in essence, that was the reply I was looking for.

> But wait, there's more. Let's say Gerrit Pape and I are on the same
> airplane and it crashes in the Andes mountains. No problem, there's
> another init system called s6 that's extremely similar to Runit, and
> you could switch between the two without breaking a sweat.

I also assume that every human being who could possibly understand the source 
code of 

Re: A dumb question

2017-05-02 Thread Francisco Gómez García
May 2, 2017 12:08 AM, "Alex Efros"  wrote:
> Hi!

Hey! First of all, thanks for the quick, polite reply. Didn't expect to be 
written in days, actually - so that on itself is already a good-enough greeting.
 
> That sounds like everyone has own preference and that's ok. If you
> like complexity and issues - use systemd, that's what it's for. It
> works too, more or less, so you've such an option.

Most people on the init debate I've seen actually think that they're saving 
effort because Systemd is such a complex project that can carry heavy tasks and 
wisely assign system resources to every daemon, allowing an ease of use and a 
stable-enough system that would otherwise be impossible. I thought so before 
trying out Runit, especially since my previous OpenRC experience was 
not-so-good and systems like Debian make Systemd a dependency even for Xorg. 
Then again, most people prefer using Windows.

> Most of djb's and djb-like software (with notable exception of qmail)
> is small, simple, does just one thing, does it completely enough,
> does it reliable enough… and thus it doesn't needs to be updated,
> fixed or even improved. Because if you needs it to be improved then
> usually that means you just need some other software, not that one.

Of course, the epitomy of the UNIX philosophy. Yet not everyone seems to think 
that it is the right model for controlling their systems, and they'd rather 
have something that keeps on giving, either bugs or features, in a complete 
package. A matter of taste?

> Runit may have some very minor issues, which no one is interested enough to 
> fix, but in general it does it's work very well

I have, in fact, bothered to take a quick look at the source code. It does have 
some XXX comments indicating assumptions, warnings and a few things that should 
be coded, which basically means that the program is not "finished" as in an 
error-free, 100% reliable-by-itself piece of software. Perhaps that could give 
enough work to keep the project releasing a few more versions, as "good enough" 
is still not "perfect".

> and it doesn't matter how many years ago it was released if it still
> does everything we needs today without any issues. Actually I find
> this very cool, because it's just one thing less to bother about and
> to re-learn every few years because it's buggy and/or changes too
> fast under my fingers.

Personally, I don't care at all about the ever-changing world of software 
making yet another change. But I do see the value for those who would rather 
have a defined set of tools. In this case, it's a matter of preferences as well.
 
> I don't see anything wrong with such a question. People gets used to
> software which wasn't designed well and/or try to do many tasks at
> once and thus they doesn't expect anything good from software which
> doesn't looks like it fix a couple of bugs every week - because they
> know there are bugs in every software, and they know they'll need
> active support to fix bugs they'll find… and thus without such
> support using software isn't an option at all. Runit, and few other
> notable software, is different - it just works, and works well. It
> doesn't do everything you may need (just like all other similar
> software), but everything it does it does well and it functionality
> is more than enough in many use cases - no necessarily in your use
> case, of course (take a look at s6 if you'll need more features).

Exactly! I do, however, come from being shocked again and again of software 
becoming heavier, more centralized and not proportionally useful or stable 
enough. I certainly don't hate Systemd, but neither consider it "good design" 
or the ideal by any means. And so I'm glad Runit exists, I'm really impressed 
by it and so I don't want to abandon it because "it's dead".

Good to know there's s6 as well, chances are I'll end up using it in the 
future. For now, though, runsv services do the job.

Thank you for the help, Alex! Best regards!

Francisco / @espectalll


A dumb question

2017-05-01 Thread Francisco Gómez
Hello there, nice to meet you! If you don't mind, I'll be quite too
straight and tell you what I'm coming for.

So, a few days ago, I switched to Void Linux. This not only meant that
my hipster non-mainstream levels had increased over 9000, but that I
had switched from Systemd to Runit as well. At first, I found it
amazing that the system and the GNOME desktop could do so much and so
easily without relying on a heavy init overlord. I shared my joy to my
fellow colleagues. And during the process, someone recently told me
something like this.

"It's old software. Its last version is from 2014. If I have to
choose between a dynamic, bug-filled init like Systemd and a barely
maintained init like Runit, I'd rather use Systemd."

That sounds bad, doesn't it?

I hence ask: why is it that Runit has no new versions, neither a VCS
repository or bug tracker? Has Runit been so well tested and hardened,
is it such a simple codebase? Or are there not enough interested,
capable people maintaining the project?

Sorry for asking this, but I'm really curious and interested on using
Runit, and questions need answers. Even if those questions are really
questionable on themselves. Cheers~