Packet – New GTK4 Android Quick Share App for Linux

Looking for a way to transfer files, photos, and videos between Android and Linux Desktop? Here’s a new free open-source application works in process.

It’s Pocket, an application that’s written in Rust programming language and uses GTK4 + LibAdwaita for its modern interface that well integrated with Ubuntu, Fedora, and other Linux with recent GNOME Desktop.

There are quite a few applications to share and transfer files between mobile devices and PC/laptops. Personally, I use Localsend to send files from iPhone to my Ubuntu laptop.

For Android, there’s built-in Quick Share (formerly Nearby Share) as part of Google Play Services, which, allows to use Bluetooth and WiFi Direct (without internet connection required) to send files to nearby devices.

It’s available in Android (version 6+), ChromeOS, and Windows (as app). Now for Linux, there’s a free open-source client in development.

Packet implement Google’s Quick Share protocol partially, allowing to send & receive files wirelessly with Android devices using Quick Share. And, it supports transferring date between other Linux devices with the app (Packet) installed.

The app requires Bluetooth to be enabled and the devices to be connected to a Wi-Fi network with mDNS. When everything’s ready, it will display app status as Ready Visible as "HOSTNAME" in bottom. Then, you can either drag’n’drop files into app window and click send to nearby devices, or receive files from remote Linux or Android.

How to Install Packet in your Linux

Packet is available to install in most Linux as Flatpak package, which runs in sandbox environment.

Fedora Workstation (with 3rd party repository enabled) and Linux Mint 21/22 can search for and install the app package from either GNOME Software or Software Manager.

While Debian, Ubuntu and other Linux can run the steps below one by one to get the package:

  • First, open terminal (Ctrl+Alt+T) and run command to install the Flatpak daemon package:
    sudo apt install flatpak

    For non-debian based distributions, follow the official setup guide to enable Flatpak support.

    Enable Flatpak support in Ubuntu
  • Next, run the command to install the Flatpak package:
    flatpak install https://dl.flathub.org/repo/appstream/io.github.nozwock.Packet.flatpakref

    The command will add flathub repository (if you don’t have it), download and install ru-time libraries (also in sandbox) along with the app itself.

After installed the app, either start it from your system application launcher (log out and back in if app icon is not visible), or run command below to launch from terminal:

flatpak run io.github.nozwock.Packet

And for updates, use command flatpak run io.github.nozwock.Packet.

In addition, if you have your Linux with firewall enabled, then you need to enable static network port in Packet app preferences dialog, and add that port (9300 by default) into firewall allow-list.

And, the app by default saves files into user Downloads folder. In case you want to set a custom folder, configure it in Preferences dialog, and set folder access permission by using Flatseal application, which can be installed by running the command below:

flatpak install https://dl.flathub.org/repo/appstream/com.github.tchx84.Flatseal.flatpakref
manage permissions via Flatseal

Uninstall:

For any reason, you may easily remove the app package by running command below in a terminal window:

flatpak uninstall --delete-data io.github.nozwock.Packet

And, run flatpak uninstall --unused to remove useless run-times.

Hi, I'm Ji, the creator of Ubuntuhandbook.org. Now, I'm also writing partly in this web site.