• JoeyJoeJoeJr@lemmy.ml
      link
      fedilink
      arrow-up
      6
      arrow-down
      2
      ·
      1 year ago

      It’s actually less about the library being obscure, and more about version conflicts, which is actually more a problem with common libraries.

      For example, let’s say you want to install applications A, B, and C, and they each depend on library L. If A depends on Lv1, and B depends on Lv2, and C depends on Lv3, with traditional package management, you’re in a predicament. You can only have one copy of L, and the versions of L may not be compatible.

      Solutions like snap, flatpak, appimage, and even things like Docker and other containerization techniques, get around this issue by having applications ship the specific version of the library they need. You end up with more copies of the library, but every application has exactly the version it needs/the developer tested with.