Hey,
I was wondering what folks use to quickly send a file or a link between your PC and android phone in a lightweight and self hosted way.
Currently I use syncthing to copy files around, but I’m looking for something more immediate, and quick than doesn’t involve searching for folders in a file manager.
Example use case: Send a file from PC to phone. Notification pops up on phone, tap it to access.
(PC runs OpenBSD)
What lightweight software do you guys use?
Stuff I tried so far:
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.
Rules:
Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.
No spam posting.
Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it’s not obvious why your post topic revolves around selfhosting, please include details to make it clear.
Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
No trolling.
Resources:
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
Here are a bunch of local services I’ve used at one point or another from phone to PC or PC to PC. Not sure if any links are out of date.
KDE Connect
Wormhole (Closed Source)
LocalSend
SnapDrop
ShareDrop
FilePizza
Original Wormhole
PeerTransfer
JustBeamIt
Send Visee
+1 KDE Connect. File transfer works great on Android, Linux, and even on Windows 10/11! Clipboard sync is also a game changer; super easy to copy and paste across devices.
+1 Love LocalSend!
+1 for LocalSend. Well worth checking out.
Another +1 for it here. Use it multiple times a day between Linux, MacOS, android, and iOS.
PairDrop is a fork of SnapDrop, which at one point had more features and active development. Don’t know, how it is nowadays though.
I love localsend.
Works on Linux, Android, iOS, Windows, and Mac. It is basically an OS agnostic Airdrop.
It’s FOSS, so you can go to the Github and build from source for OpenBSD, but I have no idea if that would work.
Dart (the language it’s written in) doesn’t work on BSD, so sadly that’s out of the question for now.
Maybe snapdrop?
When I was obsd I did FTP and rsync for everything. Syncthing had dinner performance issues for me.
Maybe Seafile but I had a bad time with that.
Dang, that’s too bad. Hopefully one day!
I use KDEConnect. I don’t know about iPhone but it works with Android, Linux and Windows.
I have tried to use KDEconnect over and over, It doesn’t work on my work network, it doesn’t work on most of my home network, If my laptop my cell phone come up as different IPs it gets confused. It’s discoverability is just absolutely horrible except for a select number of plain vanilla networks.
Damn that sucks :(. Seems to me I have to disable my VPN in order to discover devices, but I can re-enable it afterwards. I use it mostly for clipboard sharing between devices.
My home network is split between wired and wireless, they’re on different IP ranges. I have every proper forwarding protocol and UDP sniffing everything set up so that devices can talk to each other across subnets.
It refuses.
So at home I can set it up on Linux to use a static IP to find my phone. And the phone kind of deals with it and works most of the time. But then I go to work and my IPs are the two devices change. Then I’m SOL.
Also if I’m home and I’m roaming onto one of my other networks to talk to security cameras or something it’s incapable of talking to my PC.
Honestly it’s discovery is just bad for me. I really wish that it’s supported a list of IPs, or gave me some kind of client I could run in concert with tail scale or I could move s*** around it’s just absolutely inflexible and for no good reason.
I usually use kde connect.
I use a Gnome implementation of this and it works great too.
KDE Connect also works on Gnome, Windows and Android. I can’t recommend it enough. Transfering a single image from phone to PC is instantaneous
And having a unified clippboard is just so convenient
Yeah, me too. It is quick and easy. I use SyncThing for things I want to keep synced.
A cable
I use ADBFileManager https://github.com/T0biasCZe/AdbFileManager/ which is much faster than MTP
I use QuickDAV and OwlFiles.
I ll just hijack this thread : when plugging my android into laptop, the laptop doesn’t recognise it as anything. And the phone doesn’t give me the option to “share files” instead of just charge. Does anyone knows what’s wrong?
Check if your cable has data lanes, some cables don’t have them and can only be used for charging. Tap the charging notification and check if you can change it to file transfer.
Had the same issue before, cable was the cause.
Syncthing or https://pairdrop.net/
I use Cx file explorer and mount my PC via sshfs in there. It’s closed source but it supports a whole bunch of protocols including samba, ftp and webdav. And it can launch a webserver on your phone to offer the phone’s files. But sshfs is the most convenient for me.
And for links and other small texts I use either KDEConnect’s copy and paste sync or just send myself the text in Signal.
For more manual stuff; Ssh and X-Plore File Explorer.
Internal, sd card, ssh, ftp(s), google drive, dropbox, and a bunch of other cloud providers; treats it all like one big file system that I can casually copy/move files between.
For just syncing files between folders: FolderSync. The ‘downloads’ folder on my phone is setup as a 2-way sync with a folder on my server. Drop a file in either side, click sync, file is in both places. I use this to keep most of the files on my phone backed up, not just syncing the download folder.
I was a dedicated xplore user for years until I saw all the advertising cookies that they stuffed into it. That made me sad and I uninstall it.
I just paid the whole 4$ for the pro version and to support an otherwise free app I’ve quite enjoyed.
No ads/tracking anymore.
Devs gotta eat.
I also had the pro version. Last time I installed it, it asked me to review a bunch of cookies.
This was about a year ago. Could have changed since then.
I keep a fairly close eye on my DNS traffic; it still does crash reporting through Crashlytics (which I just block), but that’s about it.
Kdeconnect. Alternatively NextCloud or sending an email to myself.
Seconding sending an email. SMB for big stuff.
https://pairdrop.net/
open source, can be self hosted or you can use the official instance.
Personally I have been using KDE connect most of the time when I am at home.
Pairdrop I use more when sharing with other people across the internet.
Never heard of that tool. Thank you for sharing it!
I like this a lot.
A question. Docs say:
Does this mean if you self-host on your LAN for personal use without https, then nothing is encrypted, or does WebRTC negotiate its own crypto?
Sounds like WebRTC crypto is mandatory.
https://telnyx.com/resources/webrtc-encryption-and-security
For single files, I use qrcp
Do you have any hosting in your home lab? Preferably something for running a docker container, but a hypervisor could do the job too.
Nextcloud is an option if you do. Technically speaking you could properly protect it and make it public. You don’t have to do that though. Any file you upload on your computer could be copied to your phone or vice versa. If it’s public, then this could be done from anywhere.
Yes, I have a Linux vm for docker. I’ve chucked up a pairdrop container. So easy.
Can’t say I’ve used that… Yet. I like nextcloud because besides being compatible with Linux/Windows and having an Android app, it also has a simple web UI to access the files. It’s probably closer to self hosted OneDrive than anything else I can think of. Kinda like the simplicity of pairdrop though.