Basically title.

I’m wondering if a package manager like flatpak comes with any drawback or negatives. Since it just works on basically any distro. Why isn’t this just the default? It seems very convenient.

  • AMDIsOurLord@lemmy.ml
    link
    fedilink
    arrow-up
    29
    arrow-down
    1
    ·
    8 months ago

    1- It takes a lot of space. jUsT bUy a bIgGeR dRiVe --stfu I’m not going to spend money for you to waste it

    1- a) Everyone assumes you’re an American with 20Gbps symmetrical fiber optic. My internet can’t handle 2+ Gb downloads for a fucking 50 Mb app bro

    2- Duplicate graphics drivers. Particularly painful with Nvidia

    3- It puts a lot of security work with distro library trees straight into the shitter

    4- Horrendously designed system for CLI apps (flatpak run org.whocares.shit.app)

    5- Filesystem isolation has many upsides for security but also it can cause some pain (definitely nitpicking)

    • robojeb@lemmy.world
      link
      fedilink
      arrow-up
      12
      arrow-down
      2
      ·
      8 months ago

      Where in America is there 20Gbps symmetrical fiber? Everywhere I know tops out at 1gbps if you are lucky that your ISP isn’t shit, and lots of areas are still on slow cable.

      In my area my options are 200mbps cable or 100mbps ADSL (which inexplicably costs more than the cable Internet)

      • S_H_K@lemmy.dbzer0.com
        link
        fedilink
        arrow-up
        2
        arrow-down
        1
        ·
        8 months ago

        Maybe is an hyperbole I have optic fiber straight to my door here and is 10gbps tops but usually it works around 80% of that with some conditions. And it’s not symmetrical I don’t recall the up speed tho.

      • samc@feddit.uk
        link
        fedilink
        English
        arrow-up
        2
        arrow-down
        1
        ·
        8 months ago

        Best I’ve ever had was like 60mbps down. Might be a budget thing though, I refuse to pay more than £30/month for internet

      • Russianranger@lemmy.world
        link
        fedilink
        arrow-up
        2
        arrow-down
        1
        ·
        8 months ago

        Lived in 8 different states in the US - never had anything above 1 Gbps. Typically been 300-500 mbps, with only the past and current state state where I’ve gotten 1gbps. Poster is just assuming because we’re a first world country that we have good internet. We don’t. I hear Europe has better speeds than us.

    • shapis@lemmy.ml
      link
      fedilink
      arrow-up
      3
      arrow-down
      1
      ·
      edit-2
      8 months ago

      All of this. Plus often it just doesn’t work.

      And no. I do not want to blind fiddle with the permissions to fix it.

  • Snoopy@jlai.lu
    link
    fedilink
    arrow-up
    27
    ·
    edit-2
    8 months ago

    There is some drawback. The main one : app can’t communicate with each other.

    Example firefox and his extension keepass. As keepass can’t communicate with firefox, you will have to open both apps and switch their windows.

    You can use flatseal to manage communicatiom between app but that’s not an easy process and may prove a security issue if you don’t understand the technical jargon.

  • jan teli@lemmy.world
    link
    fedilink
    arrow-up
    15
    arrow-down
    1
    ·
    edit-2
    8 months ago

    Some people don’t like it because it uses a bit more storage and can start a bit slower, (I think) they can’t be used for system packages, and I’ve also had some issues with theming

      • wildbus8979@sh.itjust.works
        link
        fedilink
        arrow-up
        1
        ·
        8 months ago

        Using flatpak on low end devices (like Linux phones), I can tell you from experience, the speed liss is noticeable. Specially for application startup. As is the resource overhead.

        • GravitySpoiled@lemmy.ml
          link
          fedilink
          English
          arrow-up
          1
          ·
          8 months ago

          That’s a fairly good point. On mobile startup can be crucial because sessions are short in comparison to desktop where you have linger sessions and startup time is negligable (even the slow startup times of snaps could be ignored for e.g. a video editing session)

          Low specs shouldn’t keep the community from moving into newer technology.

      • acockworkorange@mander.xyz
        link
        fedilink
        arrow-up
        0
        ·
        8 months ago

        One thing I always wondered is whether libraries in memory would be duplicated or not. I have seen a lot of people talking about storage space which is cheap and shouldn’t really be the focus for desktops. But I haven’t seen anything about in memory usage.

          • acockworkorange@mander.xyz
            link
            fedilink
            arrow-up
            1
            ·
            8 months ago

            Me neither but I if we’re considering having all but the core of the distro in Flatpacks, this policy might mean Linux becoming less accessible to more modest configurations.

            Unless Flatpacks deal with it somehow like regular packages do. If two app packages contain the same library within (as opposed to packaged in a dependency), can Flatpack figure out they’re the same and share code memory between the two? For library packages with two apps depending on different versions of the same third party flatpack, does it assume the newer version can be applied to both, optimizing memory usage? If so, wouldn’t that break the premise of flatpacks?

            Can I convince my autocorrect that flatpacks and flapjacks are different things?

            Inquiring minds want to know.

  • therealjcdenton@lemmy.zip
    link
    fedilink
    English
    arrow-up
    11
    ·
    8 months ago

    They dont integrate well into your system like they should, (theming, bookmarks, storage, etc), and to fix that you gotta do some work arounds that should be done automatically

  • aberrate_junior_beatnik@midwest.social
    link
    fedilink
    English
    arrow-up
    12
    arrow-down
    1
    ·
    8 months ago

    I think its biggest weakness is also its biggest strength: isolation. Sometimes desktop integration doesn’t work quite right. For instance, the 1password browser extension can’t integrate with the desktop app when you use flatpak firefox.

  • BigTrout75@lemmy.world
    link
    fedilink
    English
    arrow-up
    10
    arrow-down
    1
    ·
    8 months ago

    Endlessly reading on social media that is not a good from Linux “gurus”. LOL

    It’s been great for me, but I wish it had a official gui for permissions management.

    • Communist@lemmy.ml
      link
      fedilink
      English
      arrow-up
      7
      arrow-down
      1
      ·
      8 months ago

      Are you aware of flatseal?

      If you are, is there an issue with using it for you?

    • samc@feddit.uk
      link
      fedilink
      English
      arrow-up
      6
      ·
      8 months ago

      I wish there was an option for an android style system where, when an application wants to use a permission for the first time, you get a pop up asking you to grant that permission.

      Or, more generally, just some way to ensure that (a) a flatpak isn’t granted the permissions it wants automatically and (b) I can then manually grant those permissions as conveniently as possible

  • TCB13@lemmy.world
    link
    fedilink
    English
    arrow-up
    9
    ·
    edit-2
    8 months ago

    Yes, I love it and don’t get me wrong but there are many downsides and they all result from poor planning and/or bad decisions around how flatpak was built. Here are a few:

    • Poor integration with the system: sometimes works against you and completely bypasses your system instead of integrating with it / using its features better. To me it seems more like the higher levels are missing pieces to facilitate communication between applications (be it protocols, code or documentation) and sometimes it is as simple as configuration;
    • Overhead, you’ll obviously end up with a bunch of copies of the same libraries and whatnot for different applications;
    • No reasonable way to use it / install applications offline. This can become a serious pain point if you’re required to work in air gapped systems or you simply want to level of conservation for the future - it doesn’t seem reasonable at all to have to depend on some repository system that might gone at some point. Note that they don’t provide effective ways to mirror the entire repository / host it locally nor to download some kind of installable package for what you’re looking for;
    • A community that is usually more interested in beating around the bush than actually fixing what’s wrong. Eg. a password manager (KeePassXC) and a browser (Firefox/Ungoogled) both installed via flatpak can’t communicate with each other because developers seem to be more interested in pointing fingers on GitHub than fixing the issue.

    Flatpak acts as a restrictive sandbox experience that is mostly about “let’s block things and we don’t care about anything else”. I don’t think it’s reasonable to have situations like applications that aren’t picking the system theme / font without the user doing a bunch of links or installing more copies of whatever you already have. Flatpak in general was a good ideia, but the system integration execution is a shame.

    • Beej Jorgensen@lemmy.sdf.org
      link
      fedilink
      arrow-up
      5
      ·
      8 months ago

      The double-edged sword of isolation.

      On the one hand, poor communication between apps and waste of storage.

      On the other, relative safety from malicious applications, or from otherwise-safe applications built on top of a thousand libraries none of which have been audited by the dev.

      I don’t know how it’s going to go down, but I suspect something will come along to address these issues and snatch the market away from Flatpak.

      • TCB13@lemmy.world
        link
        fedilink
        English
        arrow-up
        4
        ·
        edit-2
        8 months ago

        but I suspect something will come along to address these issues and snatch the market away from Flatpak.

        I believe it could only be fixed by a team from GNOME or KDE, they’re the one in a position to develop something like Flatpak but deeply integrated with the system instead of trying to get around it.

        For what’s worth Apple did a very good job when it came to the isolation and containerization of desktop applications, but again only possible because they control both sides.

        Apple enforces a LOT of isolaton, they call it sandboxed apps and it is all based on capabilities, you may enjoy reading this. Applications get their isolated space at ~/Library/Containers and are not allowed to just write to any file system path they want.

        A sandboxed app may even think it is writing into a system folder for preference storage for example - but the system rewrites the path so that it ends up in the Container folder instead. For example under macOS apps typically write their data to ~/Library/Application Support. A sandboxed app cannot do that - and the data is instead written beneath the ~/Library/Containers/app-id path for that app.

        And here’s how good Apple is, any application, including 3rd party tools running inside Terminal will be restricted:

        I bet most people weren’t expecting that a simple ls would trigger the sandbox restrictions applied to the Terminal application. The best part is that instead of doing what Flatpak does (just blocking things and leaving the user unable to to anything) the system will prompt you for a decision.

        I believe this was the best way to go about things but it would require to get a DE team to make it in a cohesive and deeply integrated with the system. Canonical could do it… but we all know how Canonical is.

        • Zamundaaa@discuss.tchncs.de
          link
          fedilink
          English
          arrow-up
          2
          ·
          8 months ago

          The best part is that instead of doing what Flatpak does (just blocking things and leaving the user unable to to anything) the system will prompt you for a decision.

          No, Flatpak isn’t the problem here, portals for these things exist. The problem is that apps would have to use them, and unlike Apple, there’s noone restricting the old / unrestricted ways of doing things… So apps usually don’t port over to the portals.

          Even where the unrestricted APIs stop working, like with screen capture and Wayland, apps are excruciatingly slow to port over, because they don’t get kicked from app stores for it, and because many users can still fall back to using the old system.

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

            While what you say is true, the “portals” were an afterthought, an imposition to developers and a cumbersome and poorly documented solution. Just like the theming and most other things.

            Instead of bluntly blocking things why can’t Flatpak just simulate a full environment and just prompt the user whenever some application wants to read/write to file / unix socket at some path? A GUI capable of automatically enumerating those resources and a bunch of checkboxes like "app X and Y both have access to socket at /var/run/socketY would also solve most of the issues.

            • Zamundaaa@discuss.tchncs.de
              link
              fedilink
              English
              arrow-up
              1
              ·
              8 months ago

              Instead of bluntly blocking things why can’t Flatpak just simulate a full environment and just prompt the user whenever some application wants to read/write to file / unix socket at some path?

              Because the user getting a hundred popups on app start for various files the app needs isn’t exactly a usable experience. Also, blocking the app’s main thread (which is the only way you could do this) is likely to break it and cause tons of user complaints too.

              Aside from apps using the APIs meant for the purpose of permission systems, there’s no good way to make it work.

      • okamiueru@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        8 months ago

        Do you know if flatpak leverages the memory side of this? With shared libs, you only keep one copy in memory, regardless of how many applications use it. Makes application launch faster, and memory usage lower.

        For flatpak, it of course will load whatever it needs to load, but does it manage to avoid loading stuff across other flatpaks?

  • kugmo@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    8
    ·
    8 months ago
    • overly verbose way to launch them in terminal
    • can sometimess not even respect your gtk/qt theming
    • sandboxing/permission system can lead to you trying to figure out which directory you need to give access to when you want to save file if it wasn’t preconfigured
    • uses its own libraries and not system libraries, want to play the hit new AAA game with steam flatpak? get fucked it requires a mesa commit that was merged 8 hours a go and you’re stuck on 23.0.4 and can’t use the fit release.

    Flatpak probably has it’s specific uses like trying to use one piece of proprietary software that you don’t trust and don’t want to give it too much access to your system, or most GUI software clients having an easy way to install Discord on your Steam Deck (no terminal usage, Linux is easy yay), but native packages 99% of the time work better.

    • jbk@discuss.tchncs.de
      link
      fedilink
      arrow-up
      0
      ·
      8 months ago

      uses its own libraries and not system libraries, want to play the hit new AAA game with steam flatpak? get fucked it requires a mesa commit that was merged 8 hours a go and you’re stuck on 23.0.4 and can’t use the git release.

      Can’t you just install a git snapshot of mesa in a flatpak and use that? Then it’d be an upside

      • 9tr6gyp3@lemmy.world
        link
        fedilink
        arrow-up
        0
        ·
        edit-2
        8 months ago

        The downside is having to do that manually. Kind of ruins the whole point of it. Flatpaks will remain out-dated until the maintainer has time to push it out. Forever behind.

        • jbk@discuss.tchncs.de
          link
          fedilink
          arrow-up
          0
          ·
          8 months ago

          There’s the org.freedesktop.Platform.GL{,32}.mesa-git runtime(?) so that seems wrong. What app always needs the latest snapshot mesa version anyway?

  • cygon@lemmy.world
    link
    fedilink
    arrow-up
    7
    ·
    8 months ago

    I’m a little put off by the inconvenient command line and the mandatory bells and whistles (flathub is nice and all, but must it be baked into the main executable rather than having the package manager as an optional thing on top?).

    So far, AppImage just looks superior to me. Works without installing a runtime into my system, no need to become root and integrate an app into a system-wide managed package repository, I can just run it.

  • BrianTheeBiscuiteer@lemmy.world
    link
    fedilink
    arrow-up
    8
    arrow-down
    1
    ·
    8 months ago

    For me it’s lacking in user friendliness. Go easy on the downvotes if I’m doing it the hard way.

    • Flatpaks aren’t really single-executables. You have to use to the flatpak command to run them.
    • I can’t just say flatpak run firefox, I have to use the full app-id which could be quite long.

    Yes, I could make this simpler with scripts or aliases but how hard would it have been for Flatpak to automatically do this for me?

    • Miyabi@iusearchlinux.fyi
      link
      fedilink
      arrow-up
      2
      ·
      8 months ago

      I’m using KDE and when I download a flatpak it automatically creates a .desktop file. I think gnome does this too if I’m not mistaken. I do have to restart or relogin for it to put the file there but that’s not that bad IMO.

  • SethranKada@lemmy.ca
    link
    fedilink
    English
    arrow-up
    7
    ·
    8 months ago

    It’s great for user apps, gui apps, and sandboxing. It’s terrible for cli apps, libraries, development, and integration.

    • tourist@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      8 months ago

      Yeah, I got an error message when I tried to update VSCode installed via flatpak

      Actually, I can’t remember if the error was from not being able to update or if an extension was having issues

      either way I still ditched it and grabbed the rpm version

  • Gamma@programming.dev
    link
    fedilink
    English
    arrow-up
    7
    ·
    8 months ago

    Others have mentioned disk usage and desktop integration. There is some truth to them, but shared runtimes keeps disk uasge down (although worse than native apps). Desktop launchers now search /var/lib/flatpak/exports/share/applications by default, but I’m still having issues with themes in one or two niche apps.

    Trust is the big one. The benefit of your distro’s packages is that they are maintained by a limited number of maintainers. Flatpaks have a much, much larger number of maintainers, which is where sandboxing comes in. Flathub now marks apps with lax permissions as “potentially unsafe”, which is a huge step in communicating this to the average user.

    Most desktop apps can get away with having next to no access, as long as they support the appropriate XDG desktop portals.

    Ultimately, your mileage will vary, as there are many classes of application which are ill-suited to being sandboxed. Program launchers, programming languages, IDEs, file managers are a few.

    • shea@lemmy.blahaj.zone
      link
      fedilink
      arrow-up
      2
      arrow-down
      1
      ·
      8 months ago

      just like every other executable downloaded from the Internet, man. doesn’t seem too scary

      • sebsch@discuss.tchncs.de
        link
        fedilink
        arrow-up
        4
        ·
        edit-2
        8 months ago

        It is. I like Linux exactly because I trust the packages from the distribution. Everything else is an attack vector and untrusted

        Edit: you install random binaries from the internet? Oo

  • TheAgeOfSuperboredom@lemmy.ca
    link
    fedilink
    arrow-up
    6
    ·
    8 months ago

    I don’t use Flatpak much, but I rarely see issues. Sometimes I see minor things like themes not quite being right, but its never been bad enough for me to spend the time to fix it.

    I suppose another downside is the need to have the base runtime packages, so it could take more disk space if each app uses a different one. In practice apps will share runtimes though.

  • Responsabilidade@lemmy.eco.br
    link
    fedilink
    arrow-up
    7
    arrow-down
    1
    ·
    8 months ago

    As everything in life, yes, there is downside. Major downside is that it can occupy more space in your hd or ssd.

    However I think the downsides are not that bad to justify all the hatred some guys have.

    Flatpak positive sides are way more relevant then the downsides