How can I easily and conveniently transfer files wirelessly between my linux computer and android phone?
I'm running OpenSUSE leap 15.5, When I was on the linux mint, I was using warpinator but using it on openSUSE is troublesome and I wish there was a linux version of blip but unfortunately there is not.
This just stops working on either my Linux laptop or my phone randomly. I'll need to kill the process and restart it
Does anyone know how I can fix this? Battery optimisations are turned off on the phone.
If you turned off battery optimisations globally, it might still kill it. You specifically have to go into app options and allow it to be always on, as well as allowing all it's notifications
could be something fucked with your network settings or ports. if you have 2.4 and 5ghz modes try connecting your ipad to the mode different from the one used by your pc, works for me (edit: on android phone) and I still have no idea why
Never could get it to work with phones, and that from Arch, Mint, Asahi, Macos all sharing flawlessly between thembut no phone would reliably stay sync'ed.
" KdeConnect": Notifications, messages, clioboard sharing, link sharing, remote control of your pointing.device, keyboard, command inputs on computer... When it works it's great, but it is hit-and-miss between distros and updates catching up.
Solid explorer on my phone. Nautilus or any file manager on PC.
sftp each one from the other. Add the connection as a favourite. File transfer becomes a drag and drop thing.
Bonus points if you create a static IP for each device.
This may be super-nitpicky (and I lose LocalSend and use it a lot), but there is one difference between LocalSend and Airdrop.
LocalSend requires network connectivity (and requires the devices to be on the same network), whereas Airdrop can work without any network connection (using Bluetooth).
Went to look into it, and seems to be in very early stages. I'll set up the flatpak on my computer and laptop to help where I can, seems like a very nice option. Do you know how to integrate it to Android? I could not find anything on that.
Edit: So it works from the KDEConnect Android app. Nice.
I use syncthing all over the place for this sort of thing. I have some sync directories that are multi way synced across multiple devices, others that are one-way drop targets to a specific device, others that are for operations like backing up photos. It's quite excellent with a good sync algorithm that rarely results in conflicts.
LocalSend or KDE Connect.
Syncthing if you need to sync files (Like an important documents folder that always needs to be up to date between your PC and Phone)
syncthing is the easy option if you have some files you always want to have on both. if you just want to access your desktop files from your phone, I recommend Cx File Explorer for Android, it's a file browser that supports various network file share protocols including Samba and SFTP.
Does it support "sending a file larger than 2 gigs, without mysteriously deleting it at the end, but if you manage to sneak a hardlink to the file while it's transferring then it's okay"?
KDE Connect has been mentioned before. You can supplement this and other tools by using a VPN so that both endpoints can see each other even if the underlying network does not allow this. My preferred solutions are Tailscale (managed, cloud-based) or Headscale (for self-hosting).
Alternatively, Material Files (available in F-Droid) can easily create a local FTP server or connect to a NAS. It's also a pretty good file manager app.
Supports a ton of back ends, self hosted, and commercial options. You can transparently encrypt with private keys you control.
I personally use B2 Backblaze for storage.
My phone backs up every night and Round Sync pushes them to B2. On my desktop I can mount as a volume. I can also access my storage from my phone going the other direction.
I've done the same using SFTP if I don't want the overhead of persistent file storage.
It does not support indexing or previews for searching or finding say a photo. You can put whatever you want for data. So I have caches, indexes, and thumbnails that work in Linux. I can't really make use of those on my phone though.
Rclones bisync feature is also a bit dangerous when I tried to use it a year ago. I more than once "deleted" everything. B2 doesn't delete by default, just hides, so I was able to recover. I now do unidirectional syncs from my machines to different buckets until I'm motivated to investigate a proper 3-way merge solution.
I use a mix of GSConnect/KDEConnect, Warpinator, and Syncthing. I've got a shared "dropoff" folder on Syncthing that lets me easily drop files from one device to another. You're having issues with Warpinator but if you're able to figure out the issue there, that's my second go-to for one-time file transfers. KDEConnect is a bit more fiddly, but I use it mostly for sharing clipboard info and the occasional file when it's stable enough.
I used KDEConnect in the past but ran into issues where somehow media sent to my phone wasn't saved somehow. Probably some permission issue but I didn't manage to fix it. Also the windows client only allows selection of one file at a time.
Recently I've tried out LocalSend and found it a much smoother experience.
If you want just a replacement for Warpinator, LocalSend is definitely the way to go. I used Warpinator before, and LocalSend is just an overall better version of the same thing imo. Finds other devices instantly, can also send text in addition to files and folders, and is available across platforms.
There might be more modern ways of doing this, but I run "Wifi FTP server" on my phone, with my download directory as its root. Then I use filezilla or whatever to transfer what I need. Trouble free and platform agnostic.
If it's anything big I send it to my synology nas. If it's something small then I honestly just send it through Signal. Although, I do wanna try this kde connect thing out as well.
Syncthing is great to periodically sync files between Linux and Android.
And you could use it as file transfer service for occasional needs if you just share an empty directory.
uhm, well you can't primarily because android is a hot mess (quick note: this is mostly me ranting about the hell that android is for no fucking reason)
First of all, android only supports MDNS since android 12 and newer, MANY years after the standard was even finalized and put into use. (like a concerning amount) And yes, you can technically use that networking on a per app level (since android 6 or 8 i think), if it's implemented, but most apps don't because they're android apps. And the ones that do are basically useless (very cool thanks android)
Ignoring this, let's say that you have a samba server, and have a local DNS config setup to get around the MDNS bullshit. Oops, funny story, android doesn't natively support SMB shares, because apparently they aren't real and don't fucking exist. Now to be clear, most file managers do actually support SMB, the problem here is that those are often shit, and only supported in the actual file manager itself. If you wanted to per se, mount a samba share on android on the FS level, it is either impossible, or REQUIRES ROOT ACCESS.
Man it's a good thing rooting is easy, and not super convoluted, or risks bricking your phone in the event that it's designed like utter shit and cannot recover from being flashed incorrectly. (to be clear, i don't know shit about rooting, because it's a fucking disaster, and i might be misrepresenting it here, but only rooting, everything else is accurate)
so basically, cool story, the only option here that you have is using apps that are specifically designed to implement their own file transfer functionalities and protocols. There is one redeeming factor to this, and it's the fact that rsync exists, and that it isn't shit, but rsync isn't samba, so eat shit android. Rest in piss you disaster of an OS.
Server or desktop, and what types of files? I find that a self-hosted version of NextCloud does pretty well for keeping contacts, images, and videos in sync.
(You could run it on a Pi as an intermediary to both if desired)
I used to use stuff like AndFTP in the past for similar functions
I've been using SSHelper together with rsync for years and it works perfectly. You can log in the first time with a password, and place your public key to use key based auth going forward.
In addition to doing this over WiFi I also often use a usb to ethernet adapter (usb side plugged into phone) to get better performance if I'm doing larger transfers, for example copying off a large number of photos.
Edit: looks like there's a note on the play store page about incompatibility with newer Android versions. Disappointing. I guess I'll have to find another solution when I eventually upgrade my phone.
Croc or syncthing depending on what kind of experience you are after. Syncthing if you want to have a shared folder like expert. And croc if you just need to send something. Croc has an app on f-droid, and syncthing is on the app store. Both are open source and pretty for excellent in their own right.
I can recommend syncthing. If it's a file you want to keep updated between the two devices, it's great and easy to set up. I use it for my password manager database.
samba. share a folder on pc, and on your phone use a file manager that can access smb folders in your local network, then just copy or move from or to that folder. bit of a hassle to set up the first time, but makes things more convenient in the long run.
If by wirelessly you mean via Wi-Fi network then one convenient option is qrcp. It generates a QR-code right in your terminal, which you can scan with a phone and send/receive files through a web interface on the URL it provides.
If you want to transfer files regularly, there is another option. Almost every distro has Python installed, and the Python has a "built-in" FTP server.
You need to just cd into desired directory and run the command python -m pyftpdlib -w. It will open a FTP server with root in this directory.
You then can access it through a file manager, like Material Files for example, and send files and folders back and forth. In Material Files you can save the server address for future use.
My go to hack was quickly running a python http server and connect to it. I can't remember what the command was exactly. Something like python -m http.server or so, then connect to the ip from my phone, heh.