Sharing files between Linux and Android has often been a complicated process involving unreliable Linux utilities or complex network setups. A new application, Packet, aims to solve this by providing a simple, wireless file transfer solution. Let’s find out how!
What Is Packet and How Does It Work
Packet is a Linux application that integrates with Android’s built-in Quick Share (formerly Nearby Share) feature. It allows your Linux machine to be discoverable by and share files with nearby Android phones, tablets, and Chromebooks without requiring any additional apps on your Android device.
The application works by implementing Google’s Quick Share protocol. It uses a combination of Bluetooth for discovery and your local Wi-Fi network for the actual file transfer. When you initiate a share, the Packet broadcasts its presence, and your Android device recognizes it as a valid Quick Share target.
Unlike other solutions like KDE Connect, FTP servers, or cloud storage, Packet doesn’t require you to install extra apps on your Android device or mess with network settings. Quick Share is already built into most Android phones, so you’re good to go right out of the box.
On the Linux side, you just need to install Packet. You don’t need to create an account, subscribe to cloud storage, or configure complex network settings—Packet gets straight to the point. You install it, run it, and start transferring files.
Installing Packet on Linux
Packet is available as a Flatpak, which simplifies installation with most Linux systems. However, first ensure you have Flatpak and the Flathub repository configured on your system.
Once Flatpak is set up, open a terminal and run this:
flatpak install flathub io.github.nozwock.Packet
Confirm the installation when prompted. After it completes, you can find and launch the Packet from your system’s Application menu.
How to Use Packet to Transfer Files to Android
The Packet’s interface is minimal and straightforward for both sending and receiving files. Before getting started, ensure Bluetooth is enabled on your Android device and that both devices are on the same Wi-Fi network. Also, make sure Quick Share is enabled on your devices.
For example, to send files from Linux to Android, launch Packet on your Linux machine from the Applications menu. Then, add files by hitting the Add Files option or simply by dragging and dropping them into the application window.
In the Packet window, click Send and select your Android device once it appears.
A notification will show up on your Android device. Tap Accept to begin the transfer. The file will be delivered to your device’s Downloads folder.
Similarly, to receive files on Linux from Android, open Packet on your Linux computer to make it discoverable. On your Android device, choose the file you plan to send and hit the Share icon. Then, choose Quick Share from the sharing options. Your Linux machine should appear as a target. Tap on its name.
Finally, accept the incoming transfer in the Packet app. The file will be transferred directly to your computer’s Downloads folder.
First Impressions
Packet is a great app with a solid concept, but I encountered a few issues during testing—most of them related to network connectivity.
For example, on my older Android device running Android 12, I was able to receive files from my PC, but couldn’t send files from the phone to the PC, as my PC didn’t appear in the Quick Share search results. As recommended by the developer, I also adjusted my system’s firewall settings, but the PC still didn’t show up. On the other hand, on my newer Android devices, both sending and receiving files work flawlessly without any issues.
If you’re unsure how to enable Packet’s Static Port option, it’s simple: open the Preferences menu (three horizontal lines), scroll to the bottom, and toggle Static Network Port to On. Then, ensure that port 9300 is open in your firewall to allow smooth file transfers.
Packet provides only basic features, such as customizing the device name, toggling visibility on or off, setting your download folder, and running Packet in the background with notifications when transfers are complete. In some file managers, like Nautilus, you can even right-click a file and send it directly using Packet.
To use the Nautilus plugin, first install the required packages:
sudo apt install python3-dbus python3-nautilus
Next, enable the Nautilus plugin from the Preferences tab.
If the integration doesn’t work or shows a missing directory error, you need to create the required directory for Nautilus Python extensions with this:
mkdir -p ~/.local/share/nautilus-python/extensions
This directory is where Packet places its integration script for right-click functionality in Nautilus.
After creating the directory, log out and log back in to your system. Then, open the Nautilus file manager, right-click on the file you want to send, and choose Send With Packet.
The packet will then launch and prompt you to select the recipient. This deep integration makes file sharing between Linux and Android seamless and fast.