[HOW TO] Replace most common cloud services with any old device easily

Cloud services can have their advantages. You can upload some files on them and download them back from any of your devices later without any hassle. When it comes to convenience, they are pretty good, at the downside of privacy; do you trust Google's AI looking through your files? Or Microsoft's Copilot most likely getting similar features in the future? What about data breaches?

If all you wanted was extra storage, I would easily suggest getting an external HDD/SSD, a thumb drive, SD card, etc., according to how much storage you need. But the part this tutorial aims to replace is the extra steps of convenience some cloud services have, for which I'll talk about some programs I've found.

Google Drive / OneDrive

So what if instead of sending your files to Google/Microsoft's big computers, you used your own?

With Syncthing, you can set it to automatically copy a folder and all its files to any device you tell it to, and keep track with the changes done on one device to every device. All that without any account, and keeping your data in only your devices.

Got an old phone that technically still works and has an amount of storage that is good enough for your needs? It does have an android version, and while the official android version's discontinuation was announced just days ago, there is a fork promoted by the official app with a more touch-friendly interface and active support, available on F-droid.

For installing on Linux, Fedora specifically has the package in their repos, so just as easy as:

sudo dnf install syncthing

As for Ubuntu and Debian, I have not checked if the package exists on the repos, but they are available on the official downloads page, along with versions for Windows and MacOS:
Syncthing | Downloads
And here is the link to the android fork:
Syncthing-Fork | F-Droid - Free and Open Source Android App Repository
On desktop, make sure you set the "Start Syncthing" entry in the applications menu to auto-start on boot (how you do that depends on the DE; I do know Cinnamon and KDE Plasma have integrated GUI ways of doing that); because this is a local website that runs in the background.

To set it up, open the "Syncthing Web UI" application, which will open itself in the default browser (if you didn't run the "Start Syncthing" entry before, the browser will just say the website is unreachable). It will show a screen similar to this:


(Note: Even if it's running on the web browser, it's (by default) only accessible from the same local computer.)

First of all, we need to choose a folder to use as our ""cloud storage"" 's mountpoint. You can use the default folder and move your files there, or you can use the Add Folder button to specify another folder.


On "Folder Label" you write the name that you want to identify the folder as within the app, "Folder ID" can be left untouched or modified if you want, and on "Folder Path" you specify what folder in your hard drive you want to use for this.

The "Sharing" tab will be used later, after we connect our devices to our computer.

Now we have to look at our device's ID to make sure we are adding the right device. On the first image I sent, on the "This Device" table, one of the sections is called "Identification" (the one where I edited in a black rectangle). If you click on that blue string, the full-lenght identification code will appear in a pop-up, along with a QR code you can scan to make it easier to connect to it.

With that information, you now go to your second device, go to the "Remote Devices" section down there, click on "Add Remote Device" and, below the box where you can type your device ID will appear nearby devices; make sure a big portion of the identification string matches with the one from the other device and click on it if it does (if it doesn't show up, you will have to manually enter the device ID). A confirmation box will appear on the other device that you will have to accept. Repeat after all your devices have been added.

Now, to share the folder we created before, we will click on said folder, then the "Edit" button to get back on the same pop-up as when we were creating it, then go to the "Sharing" tab and check the box that represents the devices we added. Then, those devices will get a notification (Android) or a pop-up (desktop) asking to accept the folder and choose a directory for it. After that, everything is ready: that folder will automatically send the new and recently modified files to every device it was told to be sent to, acting as an easy and automated way of backing up files and making them accessible from any device you want.

As for the interface of the Android app, there are two different interfaces: the native one (which I won't go much into detail for the sake of not making this too long, but you are free to ask me anything you don't understand about it in a reply to this post) and the Web GUI, the second one being the exact same as the desktop interface: to access it, you tap on the top-left hamburger menu, tap on "Web GUI" and there it is.

Microsoft To Do / Google Tasks & Google Calendar

I haven't done enough researching as to how to sync it with desktop, but so far the Android-to-Android works fine and has more usability than both mentioned proprietary tasks apps (along with calendar events and contacts support, if you want that. Etar calendar, the one LineageOS uses which is available on F-Droid as well, immediately detected the calendar I created on here, but I haven't tested its functionality and reliability much)

The apps I used were DecSync CC for synchronizing in the background and Tasks.org as the tasks app.

The first time you open DecSync CC, it will ask to choose a directory to use. Choose the same one where Syncthing is already working (the Syncthing app that we installed on the GDrive/OneDrive section)

First and most importantly, go to the hamburger menu in the top-left of the screen, tap on Settings, then tap on "Task app" and select "Tasks" to make it work with the tasks app that I mentioned before.

Then, go back to the main screen and create as many tasks lists as you need to stay organized, change the name or even the color of them if you want and make sure the checkmark for each task is activated.

After that, you can go to the tasks app and start creating tasks! But make sure that when you are creating a task, you select a list from "DecSync tasks" and not the local lists, otherwise it will stay on that device only.

The downsides are that the sync doesn't happen immediately and some functions may translate in a non-complete way to the other devices, but the important things (name, description, importance, subtasks and due date of the task) work fine from my testing. If you give it a few minutes, the sync should happen automatically eventually, but if you feel like it's taking too long or you think it's not working, you can open the DecSync CC app, manually tap on the refresh button, then do the same on the other device, and it should sync immediately now.

As for desktop tasks clients that support this, I haven't tested any because I haven't gotten the time, but the author of this app also has a desktop version of DecSync and it does point to a few compatible desktop apps on its github page, I just haven't tested them myself to be able to recommend it nor to confirm if it does cross-platform sync between Android and Linux or not.

Google Keep (Notes)

If you want to write something down and make sure you can access it from more than one device for the sake of convenience, you might have probably considered a service like this. But that use case can also be easily replaced with the type of solution I've given for the other cloud services.

With Syncthing already set up like explained previously, an easy way to do this is just create a folder where your notes will be saved, and manually create and edit a text file.

This would sound way too obvious to type an explanation for desktop, but I'd like to give my personal recommendation for when accessing those notes from Android, as that OS doesn't usually come with simple text editors and not all OEMs allow to create empty files from within their proprietary file explorer.

An FOSS file explorer I've been using for around more than a year, Material Files. It's a nice-looking file explorer that also allows you to create empty files and includes an integrated text editor that seems to work pretty well, so you can just create any file with the .md extension and edit it from there (or you can also use the .txt extension. I choose to avoid it so the "Open with" menu won't be cluttered with options like HTML viewer nor the print service, but that's just personal preference).