I thought I’ll make this thread for all of you out there who have questions but are afraid to ask them. This is your chance!

I’ll try my best to answer any questions here, but I hope others in the community will contribute too!

  • @starman@programming.dev
    link
    fedilink
    English
    13
    edit-2
    9 months ago

    On Android, when an app needs something like camera or location or whatever, you have to give it permission. Why isn’t there something like this on Linux desktop? Or at least not by default when you install something through package manager.

    • Laura
      link
      fedilink
      169 months ago

      Android apps are sandboxed by default while packages on Linux run with the users permission.

      There is already something like this with Flatpak since it also sandboxes every installed program and only grants requested permissions.

    • Eugenia
      link
      fedilink
      English
      89 months ago

      Because it requires a very specific framework to be built from the ground up, and FDO doesn’t specify these. A lot of breakage would happen if were to shoehorn such changes into Linux suddenly. Android has many layers of security that they’re fundamentally different than that of the unix philosophy. That’s why Android, even if it’s based on Linux, it’s not really considered “a distro”.

    • @baseless_discourse@mander.xyz
      link
      fedilink
      4
      edit-2
      8 months ago

      It is technically doable, but that would require a unified method to call when an app needs camera, and that method will show the prompt.

      This would technically require developers to rewrite their apps on linux, which is not happening anytime soon.

      Fortunately, pipwire and xdg-portal is currently doing this work, like when you screen share on zoom using pipwire, a system prompt will pop up asking you for what app to share. Unlike on Windows, zoom cannot see your active windows when using this method, only the one that you choose to share.

      Most application framework, including GTK and electron, are actively supporting pipwire and portal, so the future is bright.

      There is a lot of work in improving security and usablity of linux sandbox, and it is already much better than Windows (maybe also better than macos?). I am confident, in 5 years, linux sandbox stack (flatpak, protal, pipewire) will be as secure and usable as on android and ios.

        • @baseless_discourse@mander.xyz
          link
          fedilink
          18 months ago

          If I understand correctly pipwire is supposed to be the “portal” but for audio and videos.

          But I believe camera portal is already there, using pipwire. All they need to add is a popup to request usage when the app needs it.

          • Possibly linux
            link
            fedilink
            English
            28 months ago

            XDG portals is the standard interface that applications (should) use to do things on your system. It is most commonly associated with flatpaks and Wayland.

            You could have pipewire as the back end but XDG portal implementation usually is controlled by the desktop.

    • macniel
      link
      fedilink
      39 months ago

      Sandboxing wasn’t considered during development of Linux. But recent development incorporates this practice and can be found for example in flatpaks.

    • Possibly linux
      link
      fedilink
      English
      18 months ago

      Flatpaks get permission though XDG-portals. The difference is there are usually no popups