Commit graph

612 commits

Author SHA1 Message Date
Oğuz Ersen
ce0e8af4db Translated using Weblate (Turkish)
Currently translated at 100.0% (16 of 16 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (1 of 1 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (169 of 169 strings)

Translated using Weblate (Turkish)

Currently translated at 100.0% (164 of 164 strings)

Co-authored-by: Oğuz Ersen <oguzersen@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/tr/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault_contactsbackup/tr/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault_storage/tr/
Translation: CalyxOS/Seedvault
Translation: CalyxOS/Seedvault contacts backup
Translation: CalyxOS/Seedvault storage backup
2022-03-24 21:18:05 +05:30
Weblate
4c829c6760 Added translation using Weblate (Uyghur)
Added translation using Weblate (Uyghur)

Added translation using Weblate (Uyghur)

Added translation using Weblate (English (India))

Added translation using Weblate (Norwegian Bokmål)

Added translation using Weblate (Serbian (latin))

Added translation using Weblate (Spanish (American))

Added translation using Weblate (French (Canada))

Added translation using Weblate (Chinese (Simplified))

Added translation using Weblate (Chinese (Traditional))

Added translation using Weblate (English (Canada))

Added translation using Weblate (English (Australia))

Added translation using Weblate (Burmese)

Added translation using Weblate (Assamese)

Added translation using Weblate (Tagalog)

Added translation using Weblate (Portuguese (Portugal))

Added translation using Weblate (Uzbek)

Added translation using Weblate (Urdu)

Added translation using Weblate (Kyrgyz)

Added translation using Weblate (Slovenian)

Added translation using Weblate (Sinhala)

Added translation using Weblate (Slovak)

Added translation using Weblate (Khmer (Central))

Added translation using Weblate (Kannada)

Added translation using Weblate (Korean)

Added translation using Weblate (Albanian)

Added translation using Weblate (Serbian)

Added translation using Weblate (Kazakh)

Added translation using Weblate (Georgian)

Added translation using Weblate (Finnish)

Added translation using Weblate (Persian)

Added translation using Weblate (Swedish)

Added translation using Weblate (French)

Added translation using Weblate (Spanish)

Added translation using Weblate (Nepali)

Added translation using Weblate (Dutch)

Added translation using Weblate (Indonesian)

Added translation using Weblate (Azerbaijani)

Added translation using Weblate (Zulu)

Added translation using Weblate (Arabic)

Added translation using Weblate (Italian)

Added translation using Weblate (Amharic)

Added translation using Weblate (Swahili)

Added translation using Weblate (Afrikaans)

Added translation using Weblate (Marathi)

Added translation using Weblate (Malay)

Added translation using Weblate (Polish)

Added translation using Weblate (Macedonian)

Added translation using Weblate (Mongolian)

Added translation using Weblate (Malayalam)

Added translation using Weblate (Hebrew)

Added translation using Weblate (Hindi)

Added translation using Weblate (Hungarian)

Added translation using Weblate (Croatian)

Added translation using Weblate (Armenian)

Added translation using Weblate (English (United Kingdom))

Added translation using Weblate (Icelandic)

Added translation using Weblate (Vietnamese)

Added translation using Weblate (Punjabi)

Added translation using Weblate (Portuguese)

Added translation using Weblate (Czech)

Added translation using Weblate (Catalan)

Added translation using Weblate (Odia)

Added translation using Weblate (Japanese)

Added translation using Weblate (Bosnian)

Added translation using Weblate (Ukrainian)

Added translation using Weblate (Bulgarian)

Added translation using Weblate (Belarusian)

Added translation using Weblate (Bengali)

Added translation using Weblate (Romanian)

Added translation using Weblate (Russian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Basque)

Added translation using Weblate (Danish)

Added translation using Weblate (German)

Added translation using Weblate (Portuguese (Brazil))

Added translation using Weblate (Chinese (Traditional, Hong Kong))

Added translation using Weblate (Tamil)

Added translation using Weblate (Telugu)

Added translation using Weblate (Thai)

Added translation using Weblate (Lithuanian)

Added translation using Weblate (Latvian)

Added translation using Weblate (Turkish)

Added translation using Weblate (Lao)

Added translation using Weblate (Galician)

Added translation using Weblate (Gujarati)

Added translation using Weblate (English (India))

Added translation using Weblate (Norwegian Bokmål)

Added translation using Weblate (Serbian (latin))

Added translation using Weblate (Spanish (American))

Added translation using Weblate (French (Canada))

Added translation using Weblate (Chinese (Simplified))

Added translation using Weblate (Chinese (Traditional))

Added translation using Weblate (English (Canada))

Added translation using Weblate (English (Australia))

Added translation using Weblate (Burmese)

Added translation using Weblate (Assamese)

Added translation using Weblate (Tagalog)

Added translation using Weblate (Portuguese (Portugal))

Added translation using Weblate (Uzbek)

Added translation using Weblate (Urdu)

Added translation using Weblate (Kyrgyz)

Added translation using Weblate (Slovenian)

Added translation using Weblate (Sinhala)

Added translation using Weblate (Slovak)

Added translation using Weblate (Khmer (Central))

Added translation using Weblate (Kannada)

Added translation using Weblate (Korean)

Added translation using Weblate (Albanian)

Added translation using Weblate (Serbian)

Added translation using Weblate (Kazakh)

Added translation using Weblate (Georgian)

Added translation using Weblate (Finnish)

Added translation using Weblate (Persian)

Added translation using Weblate (Swedish)

Added translation using Weblate (French)

Added translation using Weblate (Spanish)

Added translation using Weblate (Nepali)

Added translation using Weblate (Dutch)

Added translation using Weblate (Indonesian)

Added translation using Weblate (Azerbaijani)

Added translation using Weblate (Zulu)

Added translation using Weblate (Arabic)

Added translation using Weblate (Italian)

Added translation using Weblate (Amharic)

Added translation using Weblate (Swahili)

Added translation using Weblate (Afrikaans)

Added translation using Weblate (Marathi)

Added translation using Weblate (Malay)

Added translation using Weblate (Polish)

Added translation using Weblate (Macedonian)

Added translation using Weblate (Mongolian)

Added translation using Weblate (Malayalam)

Added translation using Weblate (Hebrew)

Added translation using Weblate (Hindi)

Added translation using Weblate (Hungarian)

Added translation using Weblate (Croatian)

Added translation using Weblate (Armenian)

Added translation using Weblate (English (United Kingdom))

Added translation using Weblate (Icelandic)

Added translation using Weblate (Vietnamese)

Added translation using Weblate (Punjabi)

Added translation using Weblate (Portuguese)

Added translation using Weblate (Czech)

Added translation using Weblate (Catalan)

Added translation using Weblate (Odia)

Added translation using Weblate (Japanese)

Added translation using Weblate (Bosnian)

Added translation using Weblate (Ukrainian)

Added translation using Weblate (Bulgarian)

Added translation using Weblate (Belarusian)

Added translation using Weblate (Bengali)

Added translation using Weblate (Romanian)

Added translation using Weblate (Russian)

Added translation using Weblate (Estonian)

Added translation using Weblate (Basque)

Added translation using Weblate (Danish)

Added translation using Weblate (German)

Added translation using Weblate (Portuguese (Brazil))

Added translation using Weblate (Chinese (Traditional, Hong Kong))

Added translation using Weblate (Tamil)

Added translation using Weblate (Telugu)

Added translation using Weblate (Thai)

Added translation using Weblate (Lithuanian)

Added translation using Weblate (Latvian)

Added translation using Weblate (Turkish)

Added translation using Weblate (Lao)

Added translation using Weblate (Galician)

Added translation using Weblate (Gujarati)

Co-authored-by: Weblate <noreply@weblate.org>
2022-03-24 21:18:05 +05:30
Yaron Shahrabani
e69a7b3f0d Translated using Weblate (Hebrew)
Currently translated at 100.0% (169 of 169 strings)

Translated using Weblate (Hebrew)

Currently translated at 100.0% (169 of 169 strings)

Translated using Weblate (Hebrew)

Currently translated at 100.0% (164 of 164 strings)

Translated using Weblate (Hebrew)

Currently translated at 95.7% (157 of 164 strings)

Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/he/
Translation: CalyxOS/Seedvault
2022-03-24 21:18:05 +05:30
Michael Bestas
c06cab77cc Translated using Weblate (Greek)
Currently translated at 100.0% (169 of 169 strings)

Translated using Weblate (Greek)

Currently translated at 100.0% (16 of 16 strings)

Translated using Weblate (Greek)

Currently translated at 100.0% (164 of 164 strings)

Added translation using Weblate (Greek)

Translated using Weblate (Greek)

Currently translated at 100.0% (1 of 1 strings)

Translated using Weblate (Greek)

Currently translated at 100.0% (164 of 164 strings)

Added translation using Weblate (Greek)

Translated using Weblate (Greek)

Currently translated at 99.3% (163 of 164 strings)

Co-authored-by: Michael Bestas <mkbestas@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/el/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault_contactsbackup/el/
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault_storage/el/
Translation: CalyxOS/Seedvault
Translation: CalyxOS/Seedvault contacts backup
Translation: CalyxOS/Seedvault storage backup
2022-03-24 21:18:05 +05:30
Torsten Grote
17a83eaab3 Always add a storage option placeholder for DavX5 2022-01-13 06:32:05 +05:30
Torsten Grote
4ee7605b50 Refactor StorageRoots to be more generic to prepare for non-SAF storage plugins
and to make it easier to add placeholders for storage options
2022-01-13 06:32:05 +05:30
Michael Bestas
b1ca70193c Fix storage restore progress string 2022-01-12 04:35:09 +05:30
Chirayu Desai
2b4bb1cb4f Deleted translation using Weblate (Uyghur) 2022-01-12 03:50:48 +05:30
Michael Bestas
08610e1332 Don't hide navigation bar in setup wizard
Also:
Remove back button from recovery code input page
Convert root back button to skip button

Change-Id: I0bca13b53ac3898f2ab3b8503aaf7d2bc51a983a
2022-01-05 01:45:01 +05:30
Giovanni Ricca
efaeaa56ad Translated using Weblate (Italian)
Currently translated at 72.5% (116 of 160 strings)

Translation: CalyxOS/Seedvault
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/it/
2022-01-05 01:40:46 +05:30
Chirayu Desai
4795a88762 Deleted translation using Weblate (Spanish (Argentina)) 2022-01-05 01:40:46 +05:30
Michael Bestas
6e6695fea1 Remove unused translations
* Fixes lint checks after 0f241f7d25

Change-Id: I578e5bc68e6c0a1cedc8da8c547d1813e212d072
2022-01-05 01:40:46 +05:30
ssantos
302740f59d Translated using Weblate (Portuguese)
Currently translated at 100.0% (160 of 160 strings)

Translation: CalyxOS/Seedvault
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/pt/
2022-01-05 01:40:46 +05:30
fem
06ef8fc124 Translated using Weblate (Japanese)
Currently translated at 99.3% (159 of 160 strings)

Translation: CalyxOS/Seedvault
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/ja/
2022-01-05 01:40:46 +05:30
Gabriel Cardoso
d4da47634f Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (160 of 160 strings)

Translation: CalyxOS/Seedvault
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/pt_BR/
2022-01-05 01:40:46 +05:30
御守りのいちか
e00b899055 Translated using Weblate (Chinese (Traditional))
Currently translated at 21.8% (35 of 160 strings)

Translation: CalyxOS/Seedvault
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/zh_Hant/
2022-01-05 01:40:46 +05:30
Gabriel Cardoso
8bcb1e8692 Translated using Weblate (Portuguese (Brazil))
Currently translated at 92.5% (148 of 160 strings)

Translation: CalyxOS/Seedvault
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/pt_BR/
2022-01-05 01:40:46 +05:30
Ilya
723b958ba4 Translated using Weblate (Russian)
Currently translated at 98.7% (158 of 160 strings)

Translation: CalyxOS/Seedvault
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/ru/
Change-Id: I218e6e24e5c72fb640865c8615ff38373681196d
2022-01-05 01:40:46 +05:30
Reza Almanda
eb31b2444a Translated using Weblate (Indonesian)
Currently translated at 52.5% (84 of 160 strings)

Translation: CalyxOS/Seedvault
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/id/
2022-01-05 01:40:46 +05:30
Milo Ivir
c61c88f1df Translated using Weblate (Croatian)
Currently translated at 100.0% (160 of 160 strings)

Translation: CalyxOS/Seedvault
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/hr/
Change-Id: I4073f6c141d5b448003b60d0a818ed4bc6306177
2022-01-05 01:40:46 +05:30
Armand LB
31d2d9c46b Translated using Weblate (French)
Currently translated at 100.0% (160 of 160 strings)

Translation: CalyxOS/Seedvault
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/fr/
Change-Id: I83217e2b06c0dfa38eeca6caa8601138a24a3582
2022-01-05 01:40:46 +05:30
Yaron Shahrabani
25a416bcfc Translated using Weblate (Hebrew)
Currently translated at 97.5% (156 of 160 strings)

Translation: CalyxOS/Seedvault
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/he/
2022-01-05 01:40:46 +05:30
Nekromanser
95aa1b28f5 Translated using Weblate (Finnish)
Currently translated at 100.0% (160 of 160 strings)

Translation: CalyxOS/Seedvault
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/fi/
2022-01-05 01:40:46 +05:30
Weblate
2a7284e8ea Added translation using Weblate (Uyghur) 2022-01-05 01:40:46 +05:30
Weblate
975421198d Added translation using Weblate (Spanish (Argentina)) 2022-01-05 01:40:46 +05:30
Nekromanser
8cc88ac993 Translated using Weblate (Finnish)
Currently translated at 85.0% (136 of 160 strings)

Translation: CalyxOS/Seedvault
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/fi/
2022-01-05 01:40:46 +05:30
Alexandre Brochand
873a095d8f Translated using Weblate (French)
Currently translated at 91.2% (146 of 160 strings)

Translation: CalyxOS/Seedvault
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/fr/
2022-01-05 01:40:46 +05:30
bruh
61567ed83a Translated using Weblate (Vietnamese)
Currently translated at 100.0% (160 of 160 strings)

Translation: CalyxOS/Seedvault
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/vi/
Change-Id: I8d7115c34f86e960c8e2cf168f3c3144214eaf71
2022-01-05 01:40:46 +05:30
Óscar Fernández Díaz
457e287c67 Translated using Weblate (Spanish)
Currently translated at 100.0% (160 of 160 strings)

Translation: CalyxOS/Seedvault
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/es/
Change-Id: Ib2ef827f26476597d478f8deca5673a2dbac4d59
2022-01-05 01:40:46 +05:30
Gediminas Murauskas
43f2c7a751 Translated using Weblate (Lithuanian)
Currently translated at 100.0% (160 of 160 strings)

Translation: CalyxOS/Seedvault
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/lt/
Change-Id: Iea1fe96abe6845c361171ad7d775922c9d0cc782
2022-01-05 01:40:46 +05:30
Yaron Shahrabani
a026af10b9 Translated using Weblate (Hebrew)
Currently translated at 69.3% (111 of 160 strings)

Translation: CalyxOS/Seedvault
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/he/
2022-01-05 01:40:46 +05:30
Eric
9a1f5e3864 Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (160 of 160 strings)

Co-authored-by: Eric <spice2wolf@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/zh_Hans/
Translation: CalyxOS/Seedvault
Change-Id: I61376609ee1b59f103fa469790127ae36c4fc47a
2022-01-05 01:40:46 +05:30
nautilusx
51293688c9 Translated using Weblate (German)
Currently translated at 100.0% (160 of 160 strings)

Co-authored-by: nautilusx <translate@disroot.org>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/de/
Translation: CalyxOS/Seedvault
Change-Id: I791df0a0ceac12eb492b7837be841bc613f822e0
2022-01-05 01:40:46 +05:30
Oğuz Ersen
3210e79305 Translated using Weblate (Turkish)
Currently translated at 100.0% (160 of 160 strings)

Co-authored-by: Oğuz Ersen <oguzersen@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/tr/
Translation: CalyxOS/Seedvault
Change-Id: I509a1c362e1e96e5ac4967e00071b286c675178d
2022-01-05 01:40:46 +05:30
Torsten Grote
7d4fd105bf Fix finishing RequireProvisioningActivity when provisioning is aborted
On Android 11 this worked fine, but on Android 12 onStart() happens before activity results get delivered. We finish the activity when receiving a cancelled result. However, when onStart() gets called before we know the result, we relaunch an activity required for provisioning again instead of finishing.
2022-01-04 21:46:42 +05:30
Torsten Grote
a717ebaf9c
Merge pull request #323 from chirayudesai/12
Android 12 - 12-3.0 - new backup format!
2021-12-15 16:10:43 -03:00
Torsten Grote
0746af4304
Allow DAVx5 DocumentsProvider by default 2021-11-12 14:34:00 -03:00
Chirayu Desai
e972956929 Android 12 - 12-3.0
* Bump version following versioning scheme
* 3.0 now following new backup format
* Add initial entry to changelog

Change-Id: Ifca1b3feac0f510890450a1999b42897894d58ee
2021-10-13 18:06:30 +05:30
Torsten Grote
b0c6eeb9f7 Clean up stuck notifications when service gets killed 2021-10-13 17:16:16 +05:30
Torsten Grote
c7880b8a8b Don't crash when no store app is installed 2021-10-13 16:25:41 +05:30
Torsten Grote
c5a295d31c Allow storage backups to launch foreground service from background 2021-10-13 16:25:41 +05:30
Torsten Grote
97398f1c5c Build build storage backup lib within AOSP
This removes the AAR binary from the repo as it isn't needed anymore. Also room schema migrations will need to be one manually in the future as schema export doesn't seem to work in AOSP.
2021-10-13 16:25:41 +05:30
Torsten Grote
5662409ef5 Fix icon colors 2021-10-13 16:25:41 +05:30
Torsten Grote
75d4c7d05c Don't use setUnlockedDeviceRequired() on the backup key
as importing it with Android 12 GSI fails. This key is only used to restore old backups anyway and the new one doesn't use this restriction.
2021-10-13 16:25:41 +05:30
Torsten Grote
579919d5e7 Code style and lint after Android 12 version bumps 2021-10-13 16:25:41 +05:30
Torsten Grote
e80d89f0a2 Use our transport flags when creating RestoreSets
This hopefully prevents apps skipping restore that require end-to-end encrypted backup transports.

3762670bb7
2021-10-13 16:25:41 +05:30
Torsten Grote
7f4b565d2a First version bumps for Android 12 2021-10-13 16:25:41 +05:30
Torsten Grote
b029b0b029 Improve behavior of @pm@ backups when we can't do backups
Before, we were faking a backup and just returned true, but remembering that next time, we need to do a fresh non-incremental @pm@ backup.
Now, we backup to local cache, but don't upload it. On next run, when we can do backups again, we will upload the updated cache. This simplifies things and reduces the special logic required.
2021-10-13 16:15:20 +05:30
Torsten Grote
36c35d6f98 Force backup initialization when we have no cached metadata
as it can happen after clearing app data
2021-10-13 16:15:20 +05:30
Torsten Grote
c59a006a00 Remove @pm@ optimization from BackupNotificationManager
as it shouldn't be needed anymore
2021-10-13 16:15:20 +05:30
Torsten Grote
b8b6882484 Don't try to clear data of NO_DATA system apps
This speeds up the backup quite a bit since there's many such apps
2021-10-13 16:15:20 +05:30
Torsten Grote
79777a7b6f Close K/V DB after restoring records
also don't log stack trace when not finding backup type
2021-10-13 16:15:20 +05:30
Torsten Grote
ef5d1c3bc8 Port auto restore optimization from legacy v0 code to new v1 code 2021-10-13 16:15:20 +05:30
Torsten Grote
3c5e4120c7 Refactor Storage Plugin API 2021-10-13 16:15:20 +05:30
Torsten Grote
50066f0317 Let ApkBackup and ApkRestore use the new storage plugin API 2021-10-13 16:15:20 +05:30
Torsten Grote
183e34afd2 Remove legacy backup plugin code 2021-10-13 16:15:20 +05:30
Torsten Grote
1885021c1c Move backup of APKs of opt-out apps to after uploading @pm@ DB 2021-10-13 16:15:20 +05:30
Torsten Grote
a0f3c6b45f K/V restore using single file 2021-10-13 16:15:20 +05:30
Torsten Grote
0c915e5eb8 K/V backup using single file
Tests are still broken until restore has also been implemented with single file approach
2021-10-13 16:15:20 +05:30
Torsten Grote
23bb385190 Use new storage API for full restore 2021-10-13 16:15:20 +05:30
Torsten Grote
674568ca11 Use new storage API for full backups 2021-10-13 16:15:20 +05:30
Torsten Grote
4bdaaa0ce9 Make RestoreCoordinator use the new storage API with salt and backup type
This breaks restores until all the other required changed have been implemented.
2021-10-13 16:15:20 +05:30
Torsten Grote
75cf014e5d Add crypto method to get salted names for package data and APKs
This will only hide installed apps from naive attackers as the APKs are still not encrypted and even then other attacks would be possible.

However, it allows us to simplify our storage plugin API.
2021-10-13 16:15:20 +05:30
Torsten Grote
793663acb5 Add salt and backup type to metadata 2021-10-13 16:15:20 +05:30
Torsten Grote
39cb0c6443 Factor getting secure random bytes into Crypto interface 2021-10-13 16:15:20 +05:30
Torsten Grote
a77d927624 Remove deprecated methods from BackupPlugin 2021-10-13 16:15:20 +05:30
Torsten Grote
db4103e752 Move code to get available backups from RestorePlugin to BackupPlugin 2021-10-13 16:15:20 +05:30
Torsten Grote
5d1e3debd1 Define new and simpler BackupPlugin API
leaving the old one in place still
2021-10-13 16:15:20 +05:30
Torsten Grote
2932af463c Check version of backup files against expected version from metadata
and throw security exception if it does not match
2021-10-13 16:15:20 +05:30
Torsten Grote
5523e57fe7 Add current metadata to RestoreCoordinator state
so we know which backup version we need to expect during restore
2021-10-13 16:15:20 +05:30
Torsten Grote
bcb245531c Refactor fetching of restorable backups
so that we don't go through the BackupManager API, but use RestoreCoordinator directly
2021-10-13 16:15:20 +05:30
Torsten Grote
aeafc80bb9 Clean up after moving all backup code to new v1 version 2021-10-13 16:15:20 +05:30
Torsten Grote
f4dc776ed3 Do full backups with new version 1 with new crypto
Restoring still supports version 0 with old crypto
2021-10-13 16:15:20 +05:30
Torsten Grote
0c3ea7679b Do K/V backup with new version 1 with new crypto
Restoring still supports version 0 with old crypto
2021-10-13 16:15:20 +05:30
Torsten Grote
3ffb79b04f Write metadata with new version 1
Reading still supports version 0
2021-10-13 16:15:20 +05:30
Torsten Grote
0f241f7d25 Ensure that we have the main key for v1 crypto
We ask the user to generate a new key, because actively asking for the old one is training bad security habits, but technically verifying the old key will also work.
2021-10-13 16:15:20 +05:30
Torsten Grote
7dceb98670 Add test for decrypting and reading version 0 metadata 2021-10-13 16:15:20 +05:30
Torsten Grote
b707d7f9d0 Add test for full and k/v restore of version 0 backups 2021-10-13 16:15:20 +05:30
Michael Bestas
1cae6dc60e Bump version to 11-2.3
Change-Id: I792a1b1039f2ffcf23301334914b9c1fc75244ef
2021-10-05 01:34:35 +05:30
Michael Bestas
bfdf69c2f0 Switch all translations references to github.com/seedvault-app
Change-Id: I400b831c64ca72aa07940e323885595e864b2745
2021-10-05 01:34:35 +05:30
Michael Bestas
dce3ad244d Fix translations after replacing novacrypt BIP39 library
Change-Id: Ie8fe00a8d870374ce86c3766307f954dc9d259ba
2021-10-05 01:34:35 +05:30
Chirayu Desai
88f44a9f66 Merge branch 'master' of https://github.com/seedvault-app/seedvault into android11-11-2.2-merge
* 'master' of https://github.com/seedvault-app/seedvault: (50 commits)
  Bump version to 11-2.2
  Changelog: Update till 11-2.1
  Restrict exported components
  Allow launching restore through a dialer code
  Add expert settings with an option for unlimited quota
  Prevent screenshots of recovery code
  Use clearer more generic strings
  Ask for system authentication before storing a new recovery code
  Split up validating, verifying and storing of recovery code
  Disable Nextcloud restore when not installed and no store available
  Disable spell-checker on recovery code input
  Add warning for third-party tools to README
  document potential information leakage through the long-lived SQL caches
  Provide an overview over key derivations
  Compares kotlin-bip39 library with bitcoinj library
  Link FAQ in Readme to make it more discoverable
  Move LocalContactsBackup to product partition
  Add newline at the end of all files
  Improve .editorconfig setup
  Don't backup on metered networks
  ...

Conflicts:
	app/src/main/res/values-de/strings.xml
	app/src/main/res/values-es/strings.xml
	app/src/main/res/values-pt/strings.xml
	app/src/main/res/values-zh-rCN/strings.xml

Conflicts resolved by simply checking out translations from android11,
since they are not modified in master at all.

Change-Id: I0a83c72dbc78b38985b46f9b75ce92e27acd2e03
2021-09-29 19:52:03 +05:30
Chirayu Desai
08abcb63d7 Bump version to 11-2.2
User-facing changes:
* Don't backup on metered networks
* Disable spell-checker on recovery code input
* Disable Nextcloud restore when not installed and no store available
* Ask for system authentication before storing a new recovery code
* Prevent screenshots of recovery code
* Add expert settings with an option for unlimited quota
* Allow launching restore through a dialer code
* Restrict exported components

Others:
* Improve .editorconfig setup
* Move LocalContactsBackup to product partition
* Link FAQ in Readme to make it more discoverable
* Compares kotlin-bip39 library with bitcoinj library
* Provide an overview over key derivations
* document potential information leakage through the long-lived SQL caches
* Add warning for third-party tools to README

Change-Id: I095af13d0ff010c9602bc323267c074ce7d019a2
2021-09-29 19:33:45 +05:30
flawedworld
b2cd3c76a3 Restrict exported components
Change-Id: I30e5f530b6814acd4d3940279de6100f82e68445
2021-09-29 18:57:14 +05:30
Chirayu Desai
38f01765ec Allow launching restore through a dialer code
* We don't show Restore in menu by default since it's
  not the best idea to restore a running system
* However, at the same time, it's good to have a way to do
  that for those who'd like to restore anyway, and the only
  current way is adb, which is not ideal
* Dialing "*#*#RESTORE#*#*" will launch the restore activity

Change-Id: I258fead82f7e916a4de0b314e1840d7aa4b3746c
2021-09-29 18:57:14 +05:30
Torsten Grote
a5a3a85c6c Add expert settings with an option for unlimited quota
Change-Id: Iebaea41ce4e69912f7cb723bd92e94e4396aa657
2021-09-28 22:02:04 +05:30
Torsten Grote
d2a748c34a Prevent screenshots of recovery code
This is may be inconvenient for some people, but it is way more secure as screenshots can be accessed by malicious apps that look our for BIP39 codes. Better to store the code on paper.
2021-09-24 02:55:56 +05:30
Torsten Grote
3b1a4e3881 Use clearer more generic strings 2021-09-24 02:55:56 +05:30
Torsten Grote
6e838978e3 Ask for system authentication before storing a new recovery code
This will help to prevent data extraction via seedvault when somebody gets hold of an unlocked phone. However, it will not help against someone able to force you to provide fingerprints or other device secrets.
2021-09-24 02:55:56 +05:30
Torsten Grote
e0f728205d Split up validating, verifying and storing of recovery code 2021-09-24 02:55:56 +05:30
Alex
5bca365c14 Translated using Weblate (Tamil)
Currently translated at 97.7% (132 of 135 strings)

Co-authored-by: Alex <alexraj2003@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/ta/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
Shanavas
28e02a144a Translated using Weblate (Malayalam)
Currently translated at 12.5% (17 of 135 strings)

Co-authored-by: Shanavas <shanavas.m2@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/ml/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
bruh
9fde673be6 Translated using Weblate (Vietnamese)
Currently translated at 100.0% (135 of 135 strings)

Co-authored-by: bruh <quangtrung02hn16@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/vi/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
Maciej Błędkowski
584c76e0af Translated using Weblate (Polish)
Currently translated at 100.0% (135 of 135 strings)

Co-authored-by: Maciej Błędkowski <mble@tuta.io>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/pl/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
ssantos
a9f10b4749 Translated using Weblate (Portuguese)
Currently translated at 100.0% (135 of 135 strings)

Co-authored-by: ssantos <ssantos@web.de>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/pt/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
Kaantaja
18ce429db5 Translated using Weblate (Finnish)
Currently translated at 100.0% (135 of 135 strings)

Co-authored-by: Kaantaja <ufdbvgoljrjkrkyyub@ianvvn.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/fi/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
Tymofii Lytvynenko
b4e5d1a9d3 Translated using Weblate (Ukrainian)
Currently translated at 100.0% (135 of 135 strings)

Translated using Weblate (Ukrainian)

Currently translated at 25.9% (35 of 135 strings)

Co-authored-by: Tymofii Lytvynenko <till.svit@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/uk/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
Gediminas Murauskas
ac3f996660 Translated using Weblate (Lithuanian)
Currently translated at 100.0% (135 of 135 strings)

Co-authored-by: Gediminas Murauskas <muziejusinfo@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/lt/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
Óscar Fernández Díaz
f7ab10f526 Translated using Weblate (Spanish)
Currently translated at 100.0% (135 of 135 strings)

Co-authored-by: Óscar Fernández Díaz <oscfdezdz@tuta.io>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/es/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
František Oboňa
710a9c39bf Translated using Weblate (Slovak)
Currently translated at 99.2% (134 of 135 strings)

Translated using Weblate (Slovak)

Currently translated at 11.8% (16 of 135 strings)

Co-authored-by: František Oboňa <frantisekobona@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/sk/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
oksya8and8
d175c3f5c8 Translated using Weblate (Japanese)
Currently translated at 100.0% (135 of 135 strings)

Co-authored-by: oksya8and8 <darknessyasuko@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/ja/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
Taro Tanaka
f74f27bd6a Translated using Weblate (Japanese)
Currently translated at 31.8% (43 of 135 strings)

Co-authored-by: Taro Tanaka <anon_japan@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/ja/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
Yuya Shimbori
7f0d9a8ce2 Translated using Weblate (Japanese)
Currently translated at 29.6% (40 of 135 strings)

Co-authored-by: Yuya Shimbori <yuyaj@tutanota.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/ja/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
ibukinus
fef672d875 Translated using Weblate (Japanese)
Currently translated at 20.0% (27 of 135 strings)

Co-authored-by: ibukinus <myon.ibuki@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/ja/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
Algustionesa Yoshi
ce3d440e3d Translated using Weblate (Indonesian)
Currently translated at 48.1% (65 of 135 strings)

Co-authored-by: Algustionesa Yoshi <algustionesa@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/id/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
Noway Imtellingyouidiot
f4c6047919 Translated using Weblate (Hungarian)
Currently translated at 48.1% (65 of 135 strings)

Co-authored-by: Noway Imtellingyouidiot <johns.videos+weblate@mailbox.org>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/hu/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
Shashi A
a11298c263 Translated using Weblate (Telugu)
Currently translated at 95.5% (129 of 135 strings)

Translated using Weblate (Telugu)

Currently translated at 65.1% (88 of 135 strings)

Co-authored-by: Shashi A <bitcoinbabu401@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/te/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
Yurical
4605e2d853 Translated using Weblate (Korean)
Currently translated at 100.0% (135 of 135 strings)

Co-authored-by: Yurical <yurical1@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/ko/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
Allan Nordhøy
4ba0456971 Translated using Weblate (Norwegian Bokmål)
Currently translated at 69.6% (94 of 135 strings)

Co-authored-by: Allan Nordhøy <epost@anotheragency.no>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/nb_NO/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
Oğuz Ersen
5a7d109e11 Translated using Weblate (Turkish)
Currently translated at 100.0% (135 of 135 strings)

Co-authored-by: Oğuz Ersen <oguzersen@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/tr/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
Artem
6e1d2f9055 Translated using Weblate (Russian)
Currently translated at 100.0% (135 of 135 strings)

Co-authored-by: Artem <Localizer_in_Russian@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/ru/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
Eric
087f8b726c Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (135 of 135 strings)

Co-authored-by: Eric <spice2wolf@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/zh_Hans/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
nautilusx
25e2ca8b7d Translated using Weblate (German)
Currently translated at 100.0% (135 of 135 strings)

Co-authored-by: nautilusx <translate@disroot.org>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/de/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
Chirayu Desai
77b8ac9a50 Deleted translation using Weblate (Spanish (Argentina))
Deleted translation using Weblate (Uyghur)

Co-authored-by: Chirayu Desai <chirayudesai1@gmail.com>
2021-09-24 02:54:42 +05:30
Weblate
6f7c1c2000 Added translation using Weblate (Spanish (Argentina))
Added translation using Weblate (Uyghur)

Co-authored-by: Weblate <noreply@weblate.org>
2021-09-24 02:54:42 +05:30
Alexandre Brochand
da4a58810b Translated using Weblate (French)
Currently translated at 100.0% (135 of 135 strings)

Co-authored-by: Alexandre Brochand <armandleborgne@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/fr/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
ArunJRK
55d7d62624 Translated using Weblate (Tamil)
Currently translated at 1.4% (2 of 135 strings)

Co-authored-by: ArunJRK <Arun.jrk99@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/ta/
Translation: CalyxOS/Seedvault
2021-09-24 02:54:42 +05:30
Michael Bestas
26516d72a2 Disable Nextcloud restore when not installed and no store available
Attempting to install Nextcloud in SetupWizard on a device
that has no app store installed results in a crash.
Disable the option and use an appropriate summary.

Change-Id: Ie3dff8d85ed68b27858fa37b3efb97eb345fa372
2021-09-24 02:53:10 +05:30
Torsten Grote
71f7fd8474 Disable spell-checker on recovery code input
to prevent potential cloud learning or otherwise leaking code
2021-09-24 02:52:06 +05:30
Torsten Grote
d6a95e40ec Compares kotlin-bip39 library with bitcoinj library
to ensure that kotlin-bip39 is not malicious and can be upgraded safely
2021-09-24 00:02:43 +05:30
Torsten Grote
b149195e7a
Merge branch 'master' into code-style 2021-09-08 05:37:02 -03:00
Michael Bestas
532ed5e3f1
Add newline at the end of all files
Change-Id: I85718a4d8254d27e36f1712e4430e82863ba721e
2021-08-25 18:25:00 +03:00
Luca Stefani
bc24c7804d Don't backup on metered networks
* We better not overuse metered networks as such connections
* are usually sensitive to heavy data usage due to monetary costs and/or data limitations.
2021-08-25 14:59:49 +02:00
Chirayu Desai
96ffcc258d Bump version to 11-2.1
* Only change here is the BIP39 dependency replacement, however
  I'm still bumping version so that it's easy to figure out in case
  there ever was a build with just 2.0 and not this due to whatever reason

Change-Id: I9783d5e038d002e871c09be6fe61174c5a5b901f
2021-07-06 00:02:14 +05:30
Torsten Grote
05640ebb63 Replace novacrypt BIP39 library with the zcash one
which is MIT licensed instead of GPLv3

Change-Id: I30041de5ab1c1f8c7d5f57d6c60e28300a285259
2021-07-05 23:50:18 +05:30
Chirayu Desai
fd4c92bd84 SeedVault 2.0: Now with storage backup!
Change-Id: Ifd639c3c9205b417d1ec37c8e7a11a2119b5cb48
2021-07-05 22:35:08 +05:30
Torsten Grote
d13b9ea3fd Always run storage backups in a foreground service
otherwise we get killed for using too much CPU
2021-07-05 20:08:29 +05:30
Torsten Grote
26e35e1820 Make 'skip' buttons bigger so they are easier to tap 2021-07-05 20:08:29 +05:30
Torsten Grote
a4cbb0b6df Only request app backup when it is actually enabled 2021-07-05 20:08:29 +05:30
Torsten Grote
1ff8e54748 Re-initialize backup location when changing recovery code
* delete all storage backups for current user
* clears the storage backup cache
* start a new app data restore set and initializes it

The reason is that old backups won't be readable anymore with the new key. We also can't delete other backups safely as we did before, because we can't be sure that they don't belong to a different device or user.
2021-07-05 20:08:29 +05:30
Torsten Grote
347d2a316f Allow using the same storage location on different devices or user profiles
Previously, we would put our files directly in the root of the storage location and delete any existing backups there. When used by different devices or user profiles, these would keep deleting each other's backups.
2021-07-05 20:08:29 +05:30
Torsten Grote
342bd2068a Clear existing storage snapshots from storage medium
because that scenario isn't supported at the moment
2021-07-05 20:08:29 +05:30
Torsten Grote
e21207de32 Only require network for storage backups when storage needs network 2021-07-05 20:08:29 +05:30
Torsten Grote
b8ac11e724 apply ktlint to storage.lib as well 2021-07-05 20:08:29 +05:30
Torsten Grote
d6bd36ad8b Backup now: run storage backup before app backup 2021-07-05 20:08:29 +05:30
Torsten Grote
9ca6cf2aae Allow to skip app restore to reach file restore 2021-07-05 20:08:29 +05:30
Torsten Grote
bdefb04a0d Add UI for restoring files after app restore 2021-07-05 20:08:29 +05:30
Torsten Grote
fa123f07a0 Improve finding restore sets
now that we store more things in the same folder
2021-07-05 20:08:29 +05:30
Torsten Grote
5b2b75047e handle storage backup when USB is used as target 2021-07-05 20:08:29 +05:30
Torsten Grote
6c633b70c3 Add storage library (and demo app)
and use for periodic files backup
2021-07-05 20:08:29 +05:30
Torsten Grote
1cd3a3a0e6 Fix log message when canceling full backup 2021-07-05 20:08:29 +05:30
Chirayu Desai
cda1e0c98e
Merge branch 'android11' into android11-merge-master/11-1.2 2021-07-05 19:46:24 +05:30
Chirayu Desai
5bfc5da3f7 Bump version to 11-1.2
Change-Id: I3817cf2320379504a8205125e7fa4894e3e57deb
2021-07-05 19:38:58 +05:30
Dhina17
7f9c2b4eb1 colors: Sync with Settings theme
Change-Id: I69366b7744a76658607bd48a81e06975c4c6060c
2021-07-05 19:20:08 +05:30
Torsten Grote
11564c8c35 Make recovery code fit on smaller screens 2021-07-05 18:56:01 +05:30
Chirayu Desai
d7e2cd67e9 l10n: zh-rCN: Fix xliff:g
Change-Id: I2506aa8f92ec57bd2bb1a1426c45742a283b1400
2021-07-05 18:21:48 +05:30
Chirayu Desai
c102fb5166 l10n: my: Remove English strings
* Only added since I couldn't figure out how to delete this translation from weblate

Change-Id: I8127dbee63a9dcf15ef8d404ce4313a52d7ca4b4
2021-07-05 18:21:48 +05:30
Chirayu Desai
12fe1ef6ef l10n: fi,it: Fix < and >
Change-Id: I28b19ca0de11eb07d233416271fd5f5a0fd76ac3
2021-07-05 18:21:48 +05:30
Chirayu Desai
bf70bec4f0 Translated using Weblate (Burmese)
Currently translated at 51.1% (69 of 135 strings)

Translated using Weblate (Burmese)

Currently translated at 50.3% (68 of 135 strings)

Translated using Weblate (Burmese)

Currently translated at 48.8% (66 of 135 strings)

Co-authored-by: Chirayu Desai <chirayudesai1@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/my/
Translation: CalyxOS/Seedvault
2021-07-05 18:13:56 +05:30
Daisuke Masamura
3c2eeb089f Translated using Weblate (Japanese)
Currently translated at 17.7% (24 of 135 strings)

Co-authored-by: Daisuke Masamura <weblate.p1q2j@8shield.net>
Translate-URL: https://hosted.weblate.org/projects/calyxos/seedvault/ja/
Translation: CalyxOS/Seedvault
2021-07-05 18:13:56 +05:30