What GNU + Linux software could enable deep integration of backup, sync, and transfer; just as convenient and beginner-friendly (edit: and efficient) as what Apple provides?
For example, iOS has these features:
iCloud backup restore or peer-to-peer transfer, very early in the device setup process
Two ways for things to be stored in iCloud, each with a corresponding list of per-app (not per-folder) toggle switches in iCloud Settings
"Saved to iCloud" normal syncing
Requires apps to use the right APIs and to handle conflicting changes
Allows same data to be read and modified by multiple devices
iCloud backup
Available for all apps
Separate backup per device
Only downloaded when setting up a new device
In app sandboxes, only excludes tmp (Flatpak equivalent is somewhere in /run) and Library/Caches (equivalent to cache directory in Flatpak sandbox) by default
Allows apps to set isExcludedFromBackup attribute for specific files (useful for things that are easy to recreate via download but are expected by the user to not be automatically deleted)
Includes system configuration such as home screen layout
Backs up a list of installed apps without backing up their executables and assets
Synced list of previously installed apps, not separate per-device
I've had this idea a few times over the years, but I always get stuck at figuring out: what is it actually I want to happen? If I remove a local file, should it be removed from the backup too? If I edit a file, should the newer version replace the old in the backup, or be saved separately, or just the delta between the files? I could never decide what I wanted.
Not that I have it all figured out, but it sounds like it would help to decouple backup from sync. I have syncthing keep a two-way sync, including deletes, but have syncthing's trash as a "backup" (items deleted after n-days) on each device in case I accidentally delete something. Then I have a nightly, encrypted backups with versions stored offsite (eg borg) which is only meant to be used if there's major failure like a flood or fire. HDD failure is covered by RAID10 NAS. Somewhere in there I have or need a data integrity/hash check, but at least it's a start.