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.
- flatrun: Run an app by a matching search filter. If multiple matches, then print all matching app ids instead.
- 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
. - 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
). Requiresfzf
.
# 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
)
We have that already:
$ ls "/var/lib/flatpak/exports/bin/"
Well now I feel silly. Brb changing my default path.
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
… and this part is before
/usr/local/bin
making it impossible to override Flatpak bins or desktop files.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.