• skulblaka@sh.itjust.works
    link
    fedilink
    arrow-up
    5
    arrow-down
    1
    ·
    1 day ago

    RetroArch has the old-school Linux problem of “all the functionality you need, plus all the functionality anyone might ever need, plus all the functionality that no-one needs, all arranged seemingly at random in dozens of menus”

    This definitely does happen sometimes, especially these days, but this is explicitly opposite to old-school Linux design principles. A program should do one thing, it should do it well, and it should be able to be plugged in to other processes in order to accomplish whatever this single-purpose program accomplishes. If you want it to do something else, go get/write a different package to do something different. This is actually explicitly stated in the “Unix Philosophy” papers by Ken Thompson, Dennis Ritchie, et al.

    • Natanox@discuss.tchncs.de
      link
      fedilink
      English
      arrow-up
      1
      ·
      9 hours ago

      The concept suffers a little bit with graphical applications. They don’t exactly have equivalents to stdin, stdout and stderr which you could pipe or read/write willy-nilly.

      RetroArch isn’t far off from the philosophy I think, those emulation cores are pretty much independent projects plugged into a frontend. Unfortunately that default frontend is pretty clunky and doesn’t come with sane defaults for known ROMs. Or even sane menu navigation tbh, main menu and game menu looked way too similar last time I used it…