I wrote a simple script in order to help someone in a recent reply from me, to make running Flatpak applications from terminal easier. After that I worked a little bit on it further and now ended up with 2 completely different approaches.

  1. flatrun: Run an app by a matching search filter. If multiple matches, then print all matching app ids instead.
  2. flatapp: Show list of installed apps in an interactive menu. Plus show a description of the app in a preview window. Run the selected application. Requires fzf.
  3. flatsearch: Show search results from repository in an interactive menu. A selected entry will be installed or uninstalled if it exists already (with confirmation from flatpak). Requires fzf.
# Show all matching apps
$ flatrun F
com.github.tchx84.Flatseal
io.freetubeapp.FreeTube

# Run io.freetubeapp.FreeTube
$ flatrun freetube

# Show help for com.obsproject.Studio
$ flatrun obs --help

or flatapp: (requires fzf)

and new flatsearch youtube (requires fzf)

  • mwguy@infosec.pub
    link
    fedilink
    arrow-up
    6
    ·
    5 months ago

    Can we just have flatpak apps added to the system path by default? Like have a directory /usr/local/flatpak/bin and have links to all the executable show up there. Then users can choose to add that to their path if they wish.

        • thingsiplay@beehaw.orgOP
          link
          fedilink
          arrow-up
          2
          ·
          5 months ago

          No need to feel silly. If you didn’t ask, you wouldn’t learn about it. I learned about it yesterday in the post where I initially gave the first version of the script. It’s a documentation issue I would say, in some way. Such an important part should have been made clear for every user.

          I “insist” you feel not sorry, because I’m in the same boat as you. :D

        • thingsiplay@beehaw.orgOP
          link
          fedilink
          arrow-up
          1
          ·
          edit-2
          5 months ago

          One can just move the path to another place in the $PATH. Not really impossible. Not an elegant solution, just proof of concept:

          export PATH="$(echo "${PATH}" | sed 's+:/var/lib/flatpak/exports/bin++'):/var/lib/flatpak/exports/bin"
          

          Edit:

          Or if it makes you uncomfortable to change the placement of this folder in the $PATH, instead you can just add a new directory solely for this purpose. In example add “/home/yourname/.local/flatpak/bin” (or whatever else you like) and put it in front of the flatpak exports directory.