Warpinator: Transfer files or directories over local network

Warpinator is an application created by the Linux Mint team, which provides an easy way to move files and folders between devices on your network.

It’s available as a native Mint app, or as a flatpak on other distributions. There’s also an unofficial port for Android, which can be found in F-Droid.

It works very nicely on the Librem 5, with a few minor display issues. Here’s how to set it up.

Install the flatpak from the PureOS store (or terminal):


Install Warpinator on any devices you want to use for wireless transfers, and adjust the app preferences:


Choose a Group Code name and set it the same on all your devices. The default ports are as seen below, but you can change them to something else. (This screen doesn’t have a close button, but you can dismiss it by minimizing and then swiping it away, which returns you to the main screen.)

You will need to allow these ports (TCP and UDP) in your firewall settings on each device. Note that the desktop app (not the flatpak version above) has a button to automatically add the firewall rule directly from the app, but it seems to only add the TCP rule, so you’ll still need to add UDP manually to avoid errors.

Once your Warpinator instances are set up, open on both devices to start the auto-scanning:


Here, the L5 app has found my Android device, which is also scanning/broadcasting:

Once authorized and connected, it gives me the option of sending a file or directory:


As you can see in the above ill-fitting shot, the Send button is off-screen, but you can just launch the keyboard and use the Return key (or reduce the overall screen scale, if you prefer). Then the file will transmit and you can authorize it on the receiving device.

The experience is very similar to bluetooth file transfers, but over secure WiFi instead. My preferred transfer method is via sftp, but I find that that’s a bit more involved on Android, so this presents an easier method.

Here are some shots of the Android app (from F-Droid):


Finding my L5 on the network:

Waiting for me to approve the transfer:

And here’s a completed transfer from my Android to my laptop:

On the L5 or your computer, unless you choose a different destination in the preferences, a directory named Warpinator is created in your home directory. This is where received files get stored if you use the default.

On Android you can set the default file destination as well, e.g. Downloads, or create a separate Warpinator directory.

P.S. I had to turn off my tracker blocker app on Android to get Warpinator to work.

7 Likes

How does it differ from any of the other methods to transfer files over the local network? e.g. NFS, SFTP (SSH), Samba.

If they have designed their own protocol, is it secure? What are its security properties and considerations? Has the security been independently reviewed?

One selling point could be Android support but if you only run Linux (with or without a fleet of iPhones), that doesn’t apply.

2 Likes

Some additional background on Warpinator, and the unofficial Android port (apparently the Mint lead Clément Lefebvre approves):
https://blog.linuxmint.com/?p=3863
https://www.linuxmint.com/rel_uma_cinnamon_whatsnew.php
https://blog.linuxmint.com/?p=4054


Android port: https://github.com/slowscript/warpinator-android/blob/master/connection-issues.md

For me personally, the main attraction is Android support. Otherwise I would use sftp.

1 Like

OK, so the basic selling point is “zero configuration”. Install app. Run app. And the devices where this has been done find each other and can communicate for the purposes of transferring files.

1 Like

It looks like an iOS app may be possible soonish, too, so:

  • iPhone to Android to iPhone (or iPad)
  • iPhone to GNU/Linux desktop to iPhone
  • etc.
2 Likes