What's Needed To Fix Linux

I really am a Linux fan but my comments here may not show it.  Although I'm quite familiar with Linux CLI to administer servers, I find Linux GUI OS's like Ubuntu at times very clunky.

This is partially because there's no such thing as a "self-made" Linux from scratch where the UI was designed by a single team.  Linux is made up of several different projects that are generally completely separate and this lack of integratiion is a key issue that makes things frustrating.

The other frustration is the archaic way that Linux functions, it still hasn't changed much from it's infancy.  It still has a kernel with it's own set of drivers and then userspace tools are loaded on top of that.

The first problem is that everything about Linux is constantly changing, instead of just making things work, there is too much focus on changing/improving for the sake of it.  Linux attempts to do too many things at once but it can succeed as evidened by commercial solutions like Google's Android, and Apple's iOS/OSX platforms which are based on Linux and Unix (BSD) respectively.

What those platforms fix is the scattered collection of ideas that don't work well together, this shows what a single team can do. I believe the OpenSource world is too far apart to make the same solutions work.

The architecture the successful commericial platforms use is simply a hack of the OpenSource Nix platforms.  All they've done is standardize an API for programming, this allows developers to easily create apps that will simply just "work" and will likely work even in future iterations of those OS's.  Wheras Linux has a dynamic set of changing libraries that work fine, really they would probably be perfect if they would just be able to contain all of them in a set and certain/static API like Apple and Google have done.

All that's left after that point is to simply standardize how driver's are written, loaded and used in Linux.  Driver's should all be binary or like a Windows .dll, where it's simply written for "Windows XP" or "Linux X" and it will work with all future versions, no need to keep recompiling and breaking things with a kernel upgrade.  For that matter, the kernel shouldn't directly include any drivers because it's that close coupling that causes such annoyances and problems.

I only wish I had the time or money to make this all happen, the closest thing we have is probably Ubuntu but they still haven't created any sort of an API.  People simply want what works, and Microsoft and Apple have shown the path to create standardized platforms that can evolve (somewhat) without breaking everything (at least sometimes) and at least having a stable and predictable API to write for.  This is the other problem with Linux because there's next to no software and why would there be when it's so difficult to write software you know will work?

I realize there is some movement for a standardized Linux API but it looks like it's a long ways from fruition unfortunately.


Tags:

linuxi, linux, comments, cli, administer, servers, gui, os, ubuntu, clunky, partially, quot, ui, projects, generally, integratiion, frustrating, frustration, archaic, functions, hasn, infancy, kernel, drivers, userspace, improving, attempts, succeed, evidened, solutions, google, android, ios, osx, platforms, unix, bsd, respectively, scattered, opensource, architecture, commericial, hack, nix, ve, standardize, api, programming, allows, developers, apps, iterations, wheras, dynamic, libraries, contain, static, binary, dll, xp, versions, recompiling, upgrade, shouldn, coupling, annoyances, haven, microsoft, standardized, evolve, somewhat, predictable, software, movement, fruition,

Latest Articles

  • ssh Too many authentication failures not prompting for password
  • LightDM Mint Ubuntu Debian won't start errors Nvidia Graphics
  • WARNING: Unable to determine the path to install the libglvnd EGL vendor library config files. Check that you have pkg-config and the libglvnd development libraries installed, or specify a path with --glvnd-egl-config-path. Linux Ubuntu Mint Debian E
  • How To Upgrade Linux Mint 18.2 to 18.3 to 19.x and 20.x
  • MP3s Won't Play / ID3 Version 2.4 Issues in Cars and Other MP3 Players/CDs/DVDs Solution
  • LXC Containers LXD How to Install and Configure Tutorial Ubuntu Debian Mint
  • GlusterFS HowTo Tutorial For Distributed Storage in Docker, Kubernetes, LXC, KVM, Proxmox
  • Ubuntu Mint audio output not working pulseaudio "pulseaudio[13710]: [pulseaudio] sink-input.c: Failed to create sink input: too many inputs per sink."
  • How To Shrink Dynamically Allocated VM QEMU KVM VMware Disk Image File
  • How To Enable Linux Swapfile Instead of Partition Ubuntu Mint Debian Centos
  • 404 Not Found [IP: 151.101.194.132 80] apt update Debian 11 Bullseye Solution The repository 'http://security.debian.org bullseye/updates Release' does not have a Release file.
  • WARNING: Can't download daily.cvd from db.local.clamav.net freshclam clamav error solution
  • (firefox:9562): LIBDBUSMENU-GLIB-WARNING **: Unable to get session bus: Failed to execute child process "dbus-launch" (No such file or directory) Solution
  • Debian Mint Ubuntu Which Package Provides missing top, ps and w Solution
  • Vbox Virtualbox DNS NAT Network Mode NOT working
  • Docker Tutorial HowTo Install Docker, Use and Create Docker Container Images Clustering Swarm Mode Monitoring Service Hosting Provider
  • Zoom Password Error 'That passcode was incorrect' - Solution Wrong Passcode Wrong Meeting Name
  • How To Startup and Open Remote/Local Folder/Directory in Ubuntu Linux Mint automatically upon login
  • How To Reset Windows Server Password 2019, 2022, 7, 8, 10, 11 Recovery and Removal Guide Using Linux Ubuntu Mint Debian
  • How To Create OpenVPN Server for Secure Remote Corporate Access in Linux Debian/Mint/Ubuntu with client public key authentication