wiki/structured/cli.flatpak.org
Gabriel Arazas ae3656f006 Make the command line notes consistent
Just the title anyways. It makes easier to find aside from the file name
and also makes it clear in case I refer to them from other documents.
2021-06-20 10:22:13 +08:00

63 lines
1.5 KiB
Org Mode

#+title: Command line: Flatpak
#+date: "2021-06-04 07:39:11 +08:00"
#+date_modified: "2021-06-19 17:42:15 +08:00"
#+language: en
Flatpak is a cross-Linux-distro deployment system commonly used for packaging desktop applications.
* Options
Flatpak has a similar interface to Git being composed of subcommands with specific options.
- =-v, --verbose= - just print more information
Most of the query-related subcommands (e.g., =search=, =list=) has the following options.
- =--columns=${COLUMNS}= - print the columns listed; useful for extracting the information you want
you can find the related fields from the respective manual page
* Examples
Flatpak has a lot of stuff so we'll bring some examples to get started.
** Basic usage
Or at least how I think it would be for a starting user.
#+begin_src shell
flatpak search ferdi
flatpak install ferdi
flatpak uninstall ferdi
#+end_src
** Package installation interface
[[id:4eb1f8b1-bc12-4a6c-8fa4-20e4c3542cf2][fzf]] is the star here.
#+begin_src shell
flatpak search ${QUERY} --columns=application \
| fzf --multi --prompt "Choose Flatpak package(s) to install > " \
| xargs --replace="{}" flatpak install --noninteractive {}
#+end_src
** Package uninstallation interface
If there's one for installing packages, there's also one for removing them.
#+begin_src shell
flatpak list ${QUERY} --columns=application \
| fzf --multi --prompt "Choose Flatpak package(s) to remove > " \
| xargs --replace="{}" flatpak uninstall --noninteractive {}
#+end_src