Which areas of Linux would benefit most from further standardization?
-
I'm primarily talking about Win32 API when I talk about Windows, and for Mac primarily Foundation/AppKit (Cocoa) and other system frameworks. What third-party libraries do or don't do is their own thing.
There's also nothing wrong with bundling specialized dependencies in principle if you provide precompiled binaries. If it's shipped via the system package manager, that can manage the library versions and in fact it should do that as far as possible. Where this does become a problem is when you start shipping stuff like entire GUI toolkits (hello bundled Qt which breaks Plasma's style plugins every time because those are not ABI-compatible either).
The amount of time that I had to get out of .dll-hell on Windows on the other hand. The Linux way is better and way more stable.
Try running an old precompiled Linux game (say Unreal Tournament 2004 for example). They can be a pain to get working. This is not just some "ooooh gotcha" case, this is an important thing that's missing for software preservation and cross-compatibility, because not everything can be compiled from source by distro packagers, and not every unmaintained open-source software can be compiled on modern systems (and porting it might not be easy because of the same problem).
I suppose what Linux is severely lacking is a comprehensive upwards-compatible system API (such as Win32 or Cocoa) which reduces the churn between distros and between version releases. Something that is more than just libc.
We could maybe have had this with GNUstep, for example (and it would have solved a bunch of other stuff too). But it looks like nobody cares about GNUstep and instead it seems like people are more interested in sidestepping the problem with questionably designed systems like Flatpak.
There was the Linux Standard Base project, but there were multiple issues with it and finally it got abandoned. Some distributions still have a /etc/lsb-release file for compatibility.
-
The diversity of Linux distributions is one of its strengths, but it can also be challenging for app and game development. Where do we need more standards? For example, package management, graphics APIs, or other aspects of the ecosystem? Would such increased standards encourage broader adoption of the Linux ecosystem by developers?
Rewrite the entire kernel exclusively in rust!
-hehehe-
-
Where app data is stored.
~/.local
~/.config
~/.var
~/.appname
Pick one and stop cluttering my home directory
Yea I like how a lot have moved to using .config but mozilla just moved out of there and now has a .mozilla folder outside of it.. wtf... It is insanely sad.
I have actually moved my entire "user home folder".. folders out of there just because it is so ugly and unorganized. I now use /home/user/userfolders/.. all my stuff like documents / videos etc in here
-
it's pretty bad. steam for example has both
~/.steam and
~/.local/share/Steam
for some reason. I'm just happy I moved to an impermanent setup for my PC, so I don't need to worry something I temporarily install is going to clutter my home directory with garbage -
The diversity of Linux distributions is one of its strengths, but it can also be challenging for app and game development. Where do we need more standards? For example, package management, graphics APIs, or other aspects of the ecosystem? Would such increased standards encourage broader adoption of the Linux ecosystem by developers?
While all areas could benefit in terms of stability and ease of development from standadization, the whole system and each area would suffer in terms of creativity. There needs to be a balance.
However, if I had to choose one thing, I'd say the package management. At the moment we have deb, rpm, pacman, flatpak, snap (the latter probably should not be considered as the server side is proprietary) and more from some niche distros. This makes is very difficult for small developers to offer their work to all/most users.
Otherwise, I think it is a blessing having so many DEs, APIs, etc. -
Rewrite the entire kernel exclusively in rust!
-hehehe-
-
that .steam is a bunch of symlinks to the .local one.. which makes it even worse. they have also .steampid and .steampath.
and even worse a bunch of games are starting to add them there too.
Factorio puts game saves in ~/.factorio for some reason...
-
Factorio puts game saves in ~/.factorio for some reason...
-
I really don't understand this. I put a fairly popular Linux distro on my son's computer and never needed to touch the command line. I update it by command line only because I think it's easier.
Sure, you may run into driver scenarios or things like that from time to time, but using supported hardware would never present that issue. And Windows has just as many random "gotchas".
I try to avoid using the command line as much as possible, but it still crops up from time to time.
Back when I used windows, I would legitimately never touch the command line. I wouldn't even know how to interact with it.
We're not quite there with Linux, but we're getting closer!
-
Why do people keep saying this? If you don't want to use the command line then don't.
But there is no good reason to say people shouldn't. It's always the best way to get across what needs to be done and have the person execute it.
The fedora laptop I have been using for the past year has never needed the command line.
On my desktop I use arch. I use the command line because I know it and it makes sense.
It’s always the best way to get across what needs to be done and have the person execute it.
Sigh. If you want to use the command line, great. Nobody is stopping you.
For those of us who don't want to use the command line (most regular users) there should be an option not to, even in Linux.
Its sad people see it as a negative when it is really useful.
It's even sadder seeing people lose sight of their humanity when praising the command line while ignoring all of its negatives.
-
Configuration gui standard.
Usually there is a config file that I am suppose to edit as root and usually done in the terminal.There should be a general gui tool that read those files and obey another file with the rules. Lets say it is if you enable this feature then you can't have this on at the same time. Or the number has to be between 1 and 5. Not more or less on the number.
Basic validation. And run the program with --validation to let itself decide if it looks good or not. -
Not really. There are barely any chips out there.
Oct 2021: 200 billion ARM chips
Nov 2023: 1 billion RISC-V chips, hoping to hit 16 billion by 2030
Nov 2024: 300 billion ARM chips
-
Generally speaking, Linux needs better binary compatibility.
Currently, if you compile something, it's usually dynamically linked against dozens of libraries that are present on your system, but if you give the executable to someone else with a different distro, they may not have those libraries or their version may be too old or incompatible.
Statically linking programs is often impossible and generally discouraged, making software distribution a nightmare. Flatpak and similar systems made things easier, but it's such a crap solution and basically involves having an entire separate OS installed in parallel, with its own problems like having a version of Mesa that's too old for a new GPU and stuff like that. Application must be able to be packaged with everything they need with them, there is no reason for dynamic linking to be so important in Linux these days.
I'm not in favor of proprietary software, but better binary compatibility is a necessity for Linux to succeed, and I'm saying this as someone who's been using Linux for over a decade and who refuses to install any proprietary software. Sometimes I find myself using apps and games in Wine even when a native version is available just to avoid the hassle of having to find and probably compile libobsoletecrap-5.so
-
Disagree - making it harder to ship proprietary blob crap "for Linux" is a feature, not a bug.
That's a fair disagreement to have, and a sign that you're fighting bigger battles than just getting software to work.
Static linking really is only an issue for proprietary software. Free software will always give users the option to fix programs that break due to updated dependencies.
-
Yes, I find that dude to be very disagreeable. He's like everything that haters claim Linus Torvalds is - but manifested IRL.
-
If the people criticizing him could roll up their sleeves and make better software, then I'd take their criticisms seriously.
Otherwise they're "just a critic."
OpenRC works just fine on my PC
-
It’s always the best way to get across what needs to be done and have the person execute it.
Sigh. If you want to use the command line, great. Nobody is stopping you.
For those of us who don't want to use the command line (most regular users) there should be an option not to, even in Linux.
Its sad people see it as a negative when it is really useful.
It's even sadder seeing people lose sight of their humanity when praising the command line while ignoring all of its negatives.
lose sight of their humanity
Ok this is now a stupid conversation. Really? Humanity?
Look, you can either follow a flowchart of a dozen different things to click on to get information about your thunderbolt device or type
boltctrl -list
Do you want me to create screen shots of every step of the way to use a gui or just say type 12 characters? That is why it is useful. It is easy to explain, easy to ask someone to do it. Then they can copy and paste a response, instead of yet another screenshot.
Next thing you know you will be telling me it is against humanity to "right click". Or maybe we all should just get a Mac Book Wheel
Look, I am only advocating that it is a very useful tool. There is nothing "bad" about it, or even hard. What is the negative?
But I also said, I have been using a Fedora laptop for over a year and guess what? I never needed the command line. Not once.
-
lose sight of their humanity
Ok this is now a stupid conversation. Really? Humanity?
Look, you can either follow a flowchart of a dozen different things to click on to get information about your thunderbolt device or type
boltctrl -list
Do you want me to create screen shots of every step of the way to use a gui or just say type 12 characters? That is why it is useful. It is easy to explain, easy to ask someone to do it. Then they can copy and paste a response, instead of yet another screenshot.
Next thing you know you will be telling me it is against humanity to "right click". Or maybe we all should just get a Mac Book Wheel
Look, I am only advocating that it is a very useful tool. There is nothing "bad" about it, or even hard. What is the negative?
But I also said, I have been using a Fedora laptop for over a year and guess what? I never needed the command line. Not once.
Ok this is now a stupid conversation. Really? Humanity?
Yeah, humanity. The fact you think it's 'stupid' really just proves my point that you're too far gone.
or type boltctl -list
Really? You just have every command memorized? You never need to look any of them up? No copy-pasting!
Come on, at least try to make a decent argument to avoid looking like a troll.
I'm glad rational people have won out and your rhetoric is falling further and further by the wayside. The command line is great for development and developers. It's awful for regular users which is why regular users never touch it.
You lost sight of your humanity, which is why you don't even think about how asinine it is to say "just type this command!" as though people are supposed to know it intuitively.
Gonna block ya now. Arguing with people like you is tiresome and a waste of time.
Have fun writing commands. Make sure you don't use a GUI to look them up, or else you'd be proving me right.
-
Ok this is now a stupid conversation. Really? Humanity?
Yeah, humanity. The fact you think it's 'stupid' really just proves my point that you're too far gone.
or type boltctl -list
Really? You just have every command memorized? You never need to look any of them up? No copy-pasting!
Come on, at least try to make a decent argument to avoid looking like a troll.
I'm glad rational people have won out and your rhetoric is falling further and further by the wayside. The command line is great for development and developers. It's awful for regular users which is why regular users never touch it.
You lost sight of your humanity, which is why you don't even think about how asinine it is to say "just type this command!" as though people are supposed to know it intuitively.
Gonna block ya now. Arguing with people like you is tiresome and a waste of time.
Have fun writing commands. Make sure you don't use a GUI to look them up, or else you'd be proving me right.
You blocked me over a difference of opinion?
Wow.
-
Domain authentication and group policy analogs.