What can we learn from Hyperbola Linux?

It seems fixed to me… rather like MX… you get all updates (not just security like Debian) but when a new release comes out you need to reinstall ( or inline upgrade).

There are not 3 distros.

2 Likes

Thanks Neville,

fixed seems good.
Sometimes I don´t get the nomenclature used by DistroWatch. Sorry.

Cheers from Rosika :slightly_smiling_face:

I am not sure they even understand.

Hey Neville,
I don’t agree with the sentiment, at least in terms of RAM usage. You have a good argument in terms of Free Software philosophy.

First, RAM is pretty cheap, especially DDR4 RAM. I recently bought 32 GB of it back in spring for like 50 or 60 USD.

Second, while I am glad you like Hyperbola Linux, for most people, this distro would probably not be good enough for consideration. Even for me, someone who likes Linux/FOSS software enough to spend time on this forum, would not ever consider it for anything else than a fun side project to get running.

The reason for this I think is pretty simple: there are a ton of missing features and programs due to their dedication to their goals, as noble as they are. I know you are aware of this, but I am mentioning it to say that some of the extra 1 GB of RAM usage on startup are due to these programs and features that people generally want. That means that this extra 1 GB is not 1 GB of RAM wasted, but being put to purposeful use.

Additionally, in comparison to Windows, Linux’s resource usage is positively tiny. I would say that Linux software, in general, seems to do a good job of managing resources appropriately. Could it maybe do better? I mean, if you put in enough effort you can probably make just about every program more efficient. The question is: is that effort better spent elsewhere? Most of the time, considering how well Linux is already doing in this regard, I have to say yes.

The exception to what I am saying might be SystemD - I am still not sure what I think of it, but it does seem like it would be better if it was at least split up into different programs, if not a several completely different programs.

4 Likes

Hi Jimmy,
Oh yeah, it is not about ram, I was just using ram as a rough measure of the amount of code removed.
Pruning Arch down to 10% of the size of Debian is a substantial reduction.

As you say, even Debian or LM are tiny compared to Windows. The Win situation is impossible…having to buy a new desktop every time they release an upgrade is crazy .
Linux does not want to go there.

I am happy for people to use things like LM or Ubuntu with piles of software. This discussion is more about future development of Linux, and do we start from where we are today, or do a bit of pruning first?

Systemd is an extreme case. I have used OpenRC and Runit and the old SysVinit and to my mind they are all simpler to learn and use. Runit even has a GUI… you can see it in Antix with Runit. I agree systemd should be split up.

There was a Linux Magazine article on runit.
One of the comments was
“I could master runit in half an hour, systemd would take me a lifetime”
That really says it all.

One of the most interesting things I learnt was how much one can get out of a Window Manager, without going to a full DE.

I would not say I particularly like Hyperbola. I enjoyed the challenge, and I learnt a lot about window managers and about pacman. What I liked was the Free Software Dogma.

It is going to be interesting to see what Hyperbola does with a BSD kernel . They already have a BSD version of X11. I think BSD will bring a new simplicity into their distro.

Thanks for the interest Jimmy.
Regards
Neville

5 Likes

Not necessarily the first - there was a hybrid Debian some 10 years ago using the BSD kernel…

4 Likes

Yes. I think there may have been a Gentoo too.
The purists might say Debian is not solely GNU and therefore not completely free. I has lots of non-gnu packages and some of them break the rules.
Example Xorg. Hyperbola uses the OpenBSD xenocara version of X, which is much closer to the original X11R6 we all used to use with SunOS and Solarus.

1 Like

I think I misunderstood what you were saying then, apologies.

I agree - certainly we do not want Linux to be anything like that. I built this computer for Windows 10, and I cannot even say that it runs it well with 8 GB of RAM, at least not compared to Ubuntu. Part of the reason why I haven’t gone back to my Windows 10 side, even after I bought the extra RAM.

I have some interest in trying these - I haven’t done much research. Currently I’ve only used a few Linux distros and they all happen to use Systemd. It does seem that at best, Systemd’s continued development is ill-advised. I know you can make Arch run without Systemd, but Systemd is still the default.

That seems to be the main appeal. And it is cool that it runs as well as it does with those restrictions. But I think its a long way off from being anyone’s daily driver, except maybe the most ardent follower of Free Software philosophy.

I have heard of BSD, but I have never tried it. I am curious too what it will change about their distro. The Linux kernel has a lot of advantages, but simplicity is certainly not one of them. Out of curiosity, Neville, can you use any GPU drivers with Hyperbola? I know the open-source drivers for Nvidia GPUs aren’t ready yet, but AMD GPUs have had open-source drivers for quite a while.

I think its a bit too broad a subject to even make a general statement about. Some software obviously needs some pruning and some doesn’t. Of that software that needs it, some is going to be worse than others (as we previously mentioned, for example, Systemd). Some software probably undergoes regular pruning and some doesn’t as well. If the suggestion is that the decentralized nature of open source software leads to less pruning, I could see that. However, with my experience working with a company, I can also say it is quite rare for that kind of software to be pruned as well, as usually companies aren’t paid for pruning software unless it is really necessary.

I think what would be best, would be to make a list of the most important software that should be looked at - e.g. most people wouldn’t care if like a calculator app is a little inefficient (because it doesn’t use many resources anyway), but even a small gain in efficiency to something core to a distro could have a big impact.

1 Like

Hi Jimmy,
Antix is a good place to try alternate init systems.
You can get it with either OpenRC or Runit.
it is small, and an easy install, and has a familiar Debian base.

True. It might make it in and old PC with limited resources.

Bsd has different filesystems… zfs, ffs, ufs.
You cant have ext.
It also has a different package system

I used it in a VM (virt-manager) , so I avoided those issues. When you look in /lib/firmware in Hyperbola there is nothing there… no binary blobs. The drivers are there… it has amdgpu for example.
I am guessing but I think my amd video card would work but may not be accelerated.

That is a good idea. I might try, although I am hardly qualified to say. Lets see if we can come up with less than half a dozen priority packages for pruning/rewrite.

Cheers
Neville

2 Likes

My personal take is that any decisions about where to go from here should keep in mind the most fundamental of Linux philosophies, “Do one thing, and do it well”. As I learn about systemd and other fundamental components of a GNU/Linux distribution, I see that nearly all of them seem to have lost sight of that philosophy. I want to see that change going forward, if at all possible.

Ernie

2 Likes

Thanks Ernie,
That is indeed an important part of what Hypdrbola is about.
Do-everything packages are a blight. They seem mostly to arise from coorporate projects.
Linux today is not really GNU/Linux
it is GNU/coorporate-addons/Linux.

We truly have lost site of the original Unix philosophy.

It seems to be driven by the assumption that users like to live
inside one piece of software and do everything with mouse clicks. No concept of having a toolbox and putting things together to build an application.

Regards
Neville

1 Like

That’s why I added my 2Cents worth. I want a boot loader that manages the boot process very well and nothing more. I like how systemd manages system services, but If its going to do that I don’t think it should be having anything to do with the boot process, and on Solus (and a few other distros) it does. That should be handled by a boot loader. If systemd wants to be a boot loader, it shouldn’t be having anything to do with managing system services etc. I appreciate corporate contributions but I wish they understood the original Linux philosophy. Maybe that should become a requirement for contributions - do one thing, and do it very well. Our philosophy may even help corporations manage their operations better. After all, one person doing one thing very well would provide an excellent responsibility path when something goes wrong. :slight_smile:

Ernie

Nice thought.
The problem seems to be accountants. The whole idea of management seems to be to get to some production target as soon as possible, then cut off the money drain in that direction. So a programmer has little time for research and planning, and no time at all for cleanup afterwards. The result is code bloat.
The same management style seems to have invaded the scientific research world. The result is a whole lot of trivial results from defined projects, and nothing original or simple or innovative.
Did you see the FOSS news note on Denis Ritchie? We should all be grateful that there apparently once was a time at AT&T when people like Kernighan and Ritchie could be free to innovate. Their C and Unix work is unique. Could it happen today? I doubt it. That is sad.

Unfortunately (because I wish things were different), I agree with everything you’re saying. Since we’re where we ate today, I suppose we have to start from here and try to find ways to make things better. Do you think any corporate developers will read this? I sure hope so. They may be the folks who can make the moves that get us all back to where the original philosophy really means something again . . . or maybe I’m engaging in a pipe dream :slight_smile:

Ernie

1 Like

Hey Ernie,
I don’t disagree, but we’re talking about a few packages overall on any given distro. Granted, some of these are very central to how the distro works (e.g. Systemd, and I am sure there are others). If a system is running all packages with the Unix philosophy in mind except Systemd, would you say that distro needs to go to the drawing board and rethink all of the software they are using because they aren’t following the Unix philosophy close enough? Obviously not, in this (admittedly contrived) example, there is one piece of software that is a concern. That is my point.

It is not just the accountants. I can speak from my experience with my manager - if I want to refactor something, he often says no unless it will give us additional benefits. Why? Because his manager expects us to produce certain output, and if I am refactoring something then I can’t do something else. Although, in the end, good written code should be THE priority. In my particular case, my team is fortunate that most of the code we have that needs to be refactored isn’t very important and is from the early days of this team (although when we do need to take a look it is kind of a nightmare).

I am sure at least some of them are aware of the problem already, where there is a problem. I would image most corporate-produced FOSS/Linux software is probably already following the Unix philosophy, even if not intentionally. Just the cases where they aren’t, they aren’t being given the resources.

It is good to hear from someone who is working in that
commercial world today.
You view is a little less pessimistic than mine. If Linux is mostly good clean code (I believe the kernel is, for example),
there is some hope we can isolate the poorly coded bits. There is much less control over what gets included in distros, compared to what gets included in the kernel. That is where we need to press for change.

I do believe that most innovations come from deviant individuals rather than from communal efforts. Several really good distros have been started by individuals. It is quite difficult to influence those sort of people… they tend to be rebels. One way is by doing something that conveys a warning message… like Hyperbola. It is like a canary in a coal mine.5

I don’t disagree, but we’re talking about a few packages overall on any given distro.

If you believe what Hyperbola says, it is 90% of the code… by ram usage anyway. That is because it is the big clumsy monster packages, like firefox or systemd, that are the worst offenders. Dependency problems grow exponentially with package size.

. . . but, that’s my point. Something like systemd is very fundamental to how the kernel interacts with the rest of the system, and it’s not even modular in design. It’s an all or nothing proposition. I want distribution creators/designers to be able to pick and choose the parts they combine to create their distributions. If things like systemd were designed in a modular manner so the boot loader could be combined with some other system service manager or vice-versa, I’d feel like it’s at least trying to adhere to our philosophy.

GNU/Linux’s underlying philosophy of doing one thing, and doing it very well, then combining small things to do big jobs made our OS better and more secure than the proprietary alternative(s) right from the start. I just don’t want us to lose sight of that philosophy because it has worked very well over the years, and I think that’s important. I think our philosophy makes GNU/Linux great.

My2Cents,

Ernie

2 Likes

Now here’s the spark of a really interesting project. Maybe assign a system of priority groupings to software?
I–runit, systemd, terminal/console
II–window managers, DEs
III–production–Libre Office, GIMP, browsers
IV–secondary production–Rhythmbox, Clementine, VLC
V–utility–calculator, calendar
VI–specialized–grub-customizer

I’m just a basic user, but I could probably pick a set that would work for most folks. As an example that has really worked, the software packaged in most Chromebooks could be a basic (if limited) and universal Linux.

Now that you’ve stopped laughing, let’s see a few suggestions of a universal Linux distribution.

1 Like

By terminal/console you mean login and boot?
and can I add
VII Build tools, compilers, interpreters

It is apparenly not possible to have commercial software development driven by a philosophy.
so
If commercial software were never made into Linux packages what would be left in Linux?
I think Hyperbola answers that question.