• rollingflower@lemmy.kde.social
    link
    fedilink
    arrow-up
    22
    arrow-down
    7
    ·
    edit-2
    10 months ago

    Appimages also install another distro onto your system. May be small, but you have no deduplication at all. Flatpak could do a better job at enforcing the use of very few runtimes, but at least it is transparent what is used, unlike with Appimages (where you have no idea if any app has a runtime with a vulnerability etc).

    If they use compression, you replace disk space with CPU power.

    You might want to check flatpak disk usage using this tool

    Mine is

    28,88 GB "naive"
    21,57 GB with deduplication
    16,24 GB with compression
    

    For all my apps, including a ton of stuff I just test. And that on a 1TB drive is just not important.

    Appimages can be placed in ~/.local/bin/ which makes them kinda okay for terminal use. But none of the formats is terminal friendly. Flatpak has a veeeery descriptive syntax, which makes sense but for sure it is a pain to write.

    There are easy workarounds for that though, like this aliasing script

    But yes, CLI stuff is not covered but that is also okay. Flatpak deals with all the huge GUI apps, the distros can take care of the small rest.

    Of course thats not perfect, but snaps have no sandboxing without apparmor (with patches) and appimages have no sandboxing at all, ignoring firejail which is a root binary and has had security vulnerabilities in the past, making it basically a privilege escalator.

    Yes they break that strange XDG idea, and that makes sense. Every app is a container, and if you delete that app directory, all its settings are reset etc. It is a huge advantage for a clean system.

    For sure the directories are long as f*ck but that is an okay drawback for having the ability to control the app data so easily.

      • rollingflower@lemmy.kde.social
        link
        fedilink
        arrow-up
        5
        ·
        10 months ago

        Would you say portable builds (like deadbeef) also install another distro onto your system?

        They statically link binaries which is pretty similar.

        You can also extract the appimage and run the AppRun script, comes with the downside that…

        I guess you cannot update an app anymore when doing that.

        Flatpak uses BTRFS compression afaik, so I dont know if it has a performance hit and it can likely not be turned off.

        Is it strange idea to not want my home cluttered by a bunch of useless top level dotfiles?

        That is .firefox etc. Flatpaks put everything in ~/.var/app/ which doesnt clutter anything.

        Those Appimage helpers sound interesting and I will look at them. The tasks of placing somewhere, creating desktop entries etc. is not hard, but needing to do that manually is a strange and broken concept. I suppose those helper programs have some kind of community support, as Balena Etcher or whatever dont supply .desktop files.

        I agree with the problems you mentioned after that. Relying on glibc is bad, using outdated x86_64 architecture is silly. The last one could be fixed easily. The former one probably not that easily.

        Desktop Linux is messy for sure. But Flatpak is just really good at what it can do.

          • rollingflower@lemmy.kde.social
            link
            fedilink
            arrow-up
            3
            ·
            10 months ago

            Flatpak does this, just have a look. Every app has its config stored in its own directory. Apps only have access to that directory, if they dont get other static permissions.

            yes you could of course script that, but it doesnt change the problem with appimages having insecure updates. Flatpak uses OSTree, Android has a package manager that saves the signature and if that doesnt match, an update fails.

            you can add images inline with ![title](url)