November 22, 2020

Great talk by Simon (probono) about the Linux desktop platform.

  • Nobody wants to ship binaries for Linux, because there is no Linux platform, there’s hundreds of distros, further splintered into dozens of desktop environments.
  • Windows and Mac are stable or at least predictable platforms. Linux is a constant moving target.
  • Flatpak and Snappy try to solve this by bypassing the distribution’s platform and talking directly to the kernel which is fixed.
  • The real OS (distribution) is essentially useless, it’s only there to show the desktop
  • Each *pak carries its own OS
  • A true platform is something that allows authors to run their stuff on top, not something authors need to apply to get their stuff into.
    • all successful OSes are platforms
    • linux distros are not
    • example: Ubuntu prefers that devs ship their software via Ubuntu store; this is a lose-lose for authors and users alike
  • We should cherish backwards compatibility
    • devs should target the oldest still-supported distros, not the latest (learn from Firefox and OpenOffice)
    • lib authors can’t fix” version numbers, because distributions decide version numbers (crazy!); example: in Ubuntu
    • lib paths (despite FHS) are not standardized between distros
    • same for certificates, basic libraries and other common components, all the way to basic image format libraries
  • ELF run failure is very ungraceful
  • Someone should come forward and set the common ground.

Simon is the creator of Appimage. He has a cool blog where he discusses platform usability issues. I especially recommend these posts:

Previous post
QuickPYTHON is a QBasic-like environment for Python. Very cool
Next post
Bring back the ease of 80s and 90s personal computing Can we make a friendly Libre Desktop operating system with focus on simplicity, minimalist