Live data from Hacker News

Ask HN: What did Linux not do right?

news.ycombinator.com

71–80 of 173 posts

Re: Ask HN: What did Linux not do right?

#71

I think the linux dev community and foss developers in general could be much more aggressive about going after government grant money. Open source software is used in everything from biomedical research to fundamental science, to industry, to defense. Somehow, these key shared resources are still run on a budget that's barely a rounding error by comparison. I know writing grant proposals sucks and everyone wants to b…

You're not wrong about defense however there is a huge caveat. From what I'm told, when a company in defense (in the US) uses FOSS they must sign a waiver saying that they will be responsible for all updates and vulnerabilities discovered with said library. This also means that if the library stops being maintained, the company is responsible for maintaining the library.

I know that the reason why RHEL is preferred over Ubuntu or other distros is the fact RHEL has a paid license and provides regular updates to even "dead" or EoL libraries and packages.

Having said that, I wish more companies would take that dive. I've been in situations where the company would not sign a waiver so we had to essentially re-create a functionality that a FOSS library already provides.

Re: Ask HN: What did Linux not do right?

#72
post #47

Earlier quoted context omitted.

Before if you knew the standard unix-ey tools you could get by. For example, want to list services? Just use `ls /etc/init.d/`. Want to monitor a log file? Use something like `tail -f /var/log/whatever`. Want to see what filesystems are supposed to be mounter? Just opne /etc/fstab with your favorite text editor. Sure, it wasn't super consistent but you used the same tools as you always used, whether you're editing so…

>> For example, want to list services? Just use `ls /etc/init.d/` You can do systemctl list-unit-files If you want to see the enabled services, then add --state=enabled , for disable --state=disabled. You can grep for those words as well. >> Want to monitor a log file? Use something like `tail -f /var/log/whatever` You can still do that. With systemd, You can use journalctl to tail the log file by journalctl -u -f ,…

> With systemd, You can use journalctl to tail the log file by journalctl -u -f , so something like journalctl -u postfix -f

Last time I seriously used systemd I ran in to occasional log corruption. I've never not been able to just tail or cat log files even if they became corrupt (somehow?) but for whatever reason systemd can (or could?) get your logs in a state where they're unreadable with its purpose built journalctl tool. For example:

https://bbs.archlinux.org/viewtopic.php?id=249028

It was a long while back so I hope it's fixed by now, but I'm skeptical of the quality of the whole system given how much worse it was at reading files. (Compared to grep, which has never failed me.)

Re: Ask HN: What did Linux not do right?

#73
post #7
post #2

If you were starting a project like that today, it'd probably be a capability-based microkernel written in Rust.

You probably already know this, but "a capability-based microkernel written in Rust" describes RedoxOS. http://redox-os.org/

I can't see how it is 'capability-based'.

The system call interface has no capability operations.

https://docs.rs/redox_syscall/0.3.4/syscall/call/index.html

Re: Ask HN: What did Linux not do right?

#74

Not Linux, but Systemd[0] makes many people angry. Entire distros have purposefully not included it. Look at Devuan[1] [0] https://en.m.wikipedia.org/wiki/Systemd [1] https://www.devuan.org/

Systemd does not make people angry, they want to be angry by themselves for mostly religios and nostalgic reasons. Having a well integrated system is really valuable and saves you a ton of work and time. If you want to replace most of systemd features you need like 25 different softwares which all work differently, are configured different and are not that well integrated with each other which means you need to do more things and be way more careful that everything works together.

Devuan only has one and only one selling point: not systemd, which makes it for most people a unattractive choice.

Re: Ask HN: What did Linux not do right?

#75
post #18

Earlier quoted context omitted.

Isn’t this what windows does?

If you call changing APIs every other major release of Windows, then sure. Having your drivers in tree allows the developer changing said API to update everything in tree that depends on said API which they are changing.

> If you call changing APIs every other major release of Windows, then sure.

Yet here I am, on windows 10, using printer drivers designed and released for windows vista.

Re: Ask HN: What did Linux not do right?

#76
post #70

Linux's fundamental, unsolvable problem is that it's not an operating system. Instead, it's a kernel, with a bunch of other systems stapled to it. This creates headaches both for new members ("Which distro should I use?") to users with a bit of experience ("Should I use X11 or Wayland?") to the admirable people down in the trenches ("alsa or pulseaudio?"). Linux prides itself about its flexibility, but all this does…

So Linux is worse because you are more familiar with Windows?!

Also I am running into all kinds of problems every day with Windows and end up on Google all the time with way worse answers, no way to deeply debug most things and worst no way to fix them myself. I am way to often depending on some big capitalistic company to fix my problems and hope they feel like doing it. Linux is DIY capable. If I have the abilities and time to fix something I can most of the time do it myself.

Also to answer some of your questions: - you want to use Pulseaudio, alsa has no usecase on a desktop - and use vim or neovim if you are into plugins. vi is just an old editor which got replaced by vim.

Re: Ask HN: What did Linux not do right?

#77
post #47

Earlier quoted context omitted.

Before if you knew the standard unix-ey tools you could get by. For example, want to list services? Just use `ls /etc/init.d/`. Want to monitor a log file? Use something like `tail -f /var/log/whatever`. Want to see what filesystems are supposed to be mounter? Just opne /etc/fstab with your favorite text editor. Sure, it wasn't super consistent but you used the same tools as you always used, whether you're editing so…

>> For example, want to list services? Just use `ls /etc/init.d/` You can do systemctl list-unit-files If you want to see the enabled services, then add --state=enabled , for disable --state=disabled. You can grep for those words as well. >> Want to monitor a log file? Use something like `tail -f /var/log/whatever` You can still do that. With systemd, You can use journalctl to tail the log file by journalctl -u -f ,…

Totally useless for piping through other Unix tools.

Notably many exit codes are missing from systemd toolkits.

Gone are the Unix philosophy of mixing tools to achieve your objectives.

Re: Ask HN: What did Linux not do right?

#78

Earlier quoted context omitted.

> if you knew the standard unix-ey tools you could get by And if you know the standard systemd tools, you can get by with systemd. It's far from enigmatic, the docs are freely available. Yes, systemd does things differently from what you might be used to, but I don't see how that's an issue beyond having to surf the usual learning curve of a new tool. > how do I see what services are available under systemd? systemct…

> but I don't see how that's an issue beyond having to surf the usual learning curve of a new tool. I responded to that in another post, but basically unix is a programming environment and when you start composing tools together you get a powerful solution for quickly throwing things together.

Can’t do that easily with systemd tool if they don’t support stderr or Unix pipe.

Re: Ask HN: What did Linux not do right?

#79

Not Linux, but Systemd[0] makes many people angry. Entire distros have purposefully not included it. Look at Devuan[1] [0] https://en.m.wikipedia.org/wiki/Systemd [1] https://www.devuan.org/

Why bother with systemd when it opens a network socket at PID 1 to do DHCP client.

Can we say “anti-compartmentalization”?

Re: Ask HN: What did Linux not do right?

#80
Not the kernel, but the OS. Backwards compatibility and having GUI libraries LGPLed.

The Linux kernel has a rule not to break users, and for the most part, it is followed. This is not followed in userland where glibc and GNU GCC C++ library do break users with they accidentally do not follow the spec. GUI libraries like GTK and QT break binary and source compatibility every decade or so. Windows tries it's best to keep it and that makes people want to invest in it.

Now LGPL libraries, it is very difficult to write a self contained proprietary GUI binary on Linux. This is desirable because of the above, GUI libraries like to break compatibility every decade so you want to include your own so it can run in the future. Sublime has to write their own GUI frontend. Most proprietary developers use electron.

A solution to both is Iced, but it hasn't been out that long. Likely will try writing a small app in it later. Mit Licensed. Wayland and Vulkan support. https://github.com/iced-rs/iced

Post reply on HN