• JohnEdwa@sopuli.xyz
    link
    fedilink
    English
    arrow-up
    0
    ·
    5 months ago

    How would that patch be distributed?

    Lets take VLC from this Windows example, the one that blocks windows updates is a really old version of it. If you have that, you need to either uninstall VLC or remove it to get Win 11 to update.

    If there was a bug where having a really old version of VLC on your system would somehow break if you updated the kernel, would a complicated workaround patch be integrated into the kernel just in case for forever?
    Or would the patch work exactly the same way as windows, where it would check for that version of VLC and tell you to remove or update it first?

    • Rustmilian@lemmy.world
      link
      fedilink
      English
      arrow-up
      0
      ·
      5 months ago

      I see you’re unaware of the number one rule of the Linux Kernel : DO NOT BREAK USER SPACE
      The patch would be distributed the exact same way that we distribute every single other patch in Linux.

      • JohnEdwa@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        0
        ·
        edit-2
        5 months ago

        the exact same way that we distribute every single other patch in Linux.

        Which is?

        I see you’re unaware of the number one rule of the Linux Kernel : DO NOT BREAK USER SPACE

        For sure, my linux experience is limited to playing around with raspis and the Steam Deck, and running apt-get update / upgrade and accepting everything at once. I haven’t actually even had a need to refuse updating something individually so I have no idea what the protocol is if I wouldn’t want to update some application. What I do know is that basically every single linux application has dependencies and if you don’t install, update or remove exactly what that application demands you to do, most of them refuse to install or update themselves - blocking updating because you have or don’t have something else on your system seems to be basically the norm with Linux.

        • Rustmilian@lemmy.world
          link
          fedilink
          English
          arrow-up
          0
          ·
          edit-2
          5 months ago

          Which is?

          Directly patching the code, then letting the distros do their thing.

          I have no idea what the protocol is if I wouldn’t want to update some application.

          You’d just put it in an exclude list in your specific package managers config file for example. The depends are forward compatible and will just keep updating as normal. Very very rarely is there ever a case where forward compatibility is broken, and if it ever is the devs did so for a very thought out reason.

          blocking updating because you have or don’t have something else on your system seems to be basically the norm with Linux.

          It is yes. Because if you don’t have a library an application depends on then it just won’t run.
          Except “have”, that’s not a real scenario; it’s always a matter of not having something; there’s packages that may conflict because they provide a different implementation of the same interface, but you’ll never be blocked by an application that depends on that interface.
          The dependencies are defined by the distro maintainers when they packaged the software.
          It ensures that package will function properly when installed.

          If you really really want a really really old version of something that depends on deprecated dependencies/libs, there’s always portable and universal package solutions that include those specific deps with it instead of relying on system libs.