FLATPAK-CREATE-USB(1)
π FLATPAK CREATE-USB π
okay bestie, so this is the flatpak create-usb page β the one in the flatpak manual, section 1. it's the "put ur apps on a USB stick and go" tool. sit down, get comfy, we're doing this. π
β¨ NAME β¨
flatpak-create-usb β copy apps and/or runtimes onto removable media. that's it, that's the job. π¦
β¨ SYNOPSIS β¨
flatpak create-usb [OPTION...] MOUNT-PATH REF...
β¨ DESCRIPTION β¨
So here's the whole vibe: this copies the apps and/or runtimes you name as REFs onto the removable media that's mounted at MOUNT-PATH, and it brings along all the dependencies and metadata you'd need to actually install them. π
It's one way of moving flatpaks between computers without needing an Internet connection. iconic, honestly.
After you run this command, you can plug the USB drive into another computer that already has the relevant remote(s) configured, and Flatpak will install or update from the drive offline (details below π). And if that computer is online? Then the drive just acts as a cache β some objects get pulled off the drive, and others come from the Internet. Either way, she works. β¨
For this process to work, a collection ID must be configured on the relevant remotes on both the source and destination computers, and on the remote server. don't skip this, fr fr, it will not work and you will be sad π
On the destination computer, you can install from the USB (or from any mounted filesystem, honestly) by using the --sideload-repo option with flatpak install. You can also set up sideload paths using symlinks β peep flatpak(1) for that. Flatpak also ships some systemd units that automatically sideload from hot-plugged USB drives, but those may or may not be enabled depending on your Linux distribution. distribution-dependent, yk how it is. π
Now, about each REF argument: it's a full or partial identifier in the flatpak ref format, which looks like this:
(app|runtime)/ID/ARCH/BRANCH
Every element except ID is optional and can be left out, including the slashes, so most of the time you literally just need to type the ID. anything you leave out gets matched against what's installed, and if there are multiple matches, you get an error message listing the alternatives. it's giving helpful, not shady. π
By default this looks for both installed apps and runtimes matching the given REF, but you can narrow that down with the --app or --runtime option. ur call, bestie.
All REFs must be in the same installation (user, system, or other). Otherwise it's ambiguous which repository metadata refs to put on the USB drive. one installation at a time, no mixing. periodt. π
By default, flatpak create-usb uses .ostree/repo as the destination directory under MOUNT-PATH. But if you specify a different location with --destination-repo, a symbolic link will be created for you in .ostree/repos.d. That way β either path you take β the repository will be found by flatpak (and other consumers of libostree) for install/update operations. cute and consistent. π«Ά
And unless you override it with --system, --user, or --installation, this command searches both the system-wide installation and the per-user one for REF, and errors out if it exists in more than one. so if it's in both places, she's gonna yell. π
β¨ OPTIONS β¨
The following options are understood:
-h,--helpβ show help options and exit. the classic. πΈ-u,--userβ copy refs from the per-user installation.--systemβ copy refs from the default system-wide installation.--installation=NAMEβ copy refs from a system-wide installation specified byNAMEamong those defined in/etc/flatpak/installations.d/. using--installation=defaultis equivalent to using--system.--appβ assume that allREFs are apps if not explicitly specified.--runtimeβ assume that allREFs are runtimes if not explicitly specified.--destination-repo=DESTβ create the repository inDESTunderMOUNT-PATH, rather than the default location.--allow-partialβ don't print a warning when exporting partially installed commits, for example locale extensions without all languages. > heads up: these can cause problems when installing them, for example if the language config is different on the installing side. so likeβ¦ know what you're doing. π-v,--verboseβ print debug information during command processing. for when u need to see everything. π₯--ostree-verboseβ print OSTree debug information during command processing. even more everything. β¨
β¨ EXAMPLES β¨
$ flatpak create-usb
/run/media/mwleeds/1a9b4cb2-a7ef-4d9b-91a5-6eaf8fdd2bf6/
com.endlessm.wiki_art.en
look at her go. π
β¨ SEE ALSO β¨
flatpak(1), flatpak remote-modify(1), flatpak-install(1), flatpak-list(1), ostree-create-usb(1)
okay that's the whole page, bestie. π this was the flatpak create-usb manual β FLATPAK CREATE-USB(1) β brought to you by the flatpak manual pages themselves. go forth and put ur apps on a stick. mwah. πβ¨π¦π
π¦ where this page comes from
- debian trixie: flatpak 1.16.6-1~deb13u3
- fedora 44: flatpak 1.18.4-1.fc44 Β· LGPL-2.1-or-later
- fedora 44: flatpak 1.18.4-1.fc44 Β· LGPL-2.1-or-later
- nixpkgs unstable: flatpak 1.18.4
- ubuntu stonking: flatpak 1.18.4-1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms