You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/authentication.md
+15-15Lines changed: 15 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,7 +17,7 @@ If you want to send notification emails using your Gmail account, and you have e
17
17
```{versionadded} 1.21.0
18
18
```
19
19
20
-
There are two ways to provide MFA code to `icloudpd`:
20
+
There are two ways to provide an MFA code to `icloudpd`:
21
21
- Using console
22
22
- Using web interface
23
23
@@ -28,7 +28,7 @@ Other options: *webui*
28
28
29
29
## Access from Mainland China
30
30
31
-
Access to iCloud.com is blocked from mainland China. `icloudpd` can be used with [`--domain cn`](domain-parameter) parameter to support downloading iCloud Photos from mainland China, however, people reported mixed results with that parameter.
31
+
Access to iCloud.com is blocked from mainland China. `icloudpd` can be used with the [`--domain cn`](domain-parameter) parameter to support downloading iCloud Photos from mainland China; however, people have reported mixed results with that parameter.
32
32
33
33
## FIDO
34
34
@@ -40,7 +40,7 @@ Advanced Data Protection (ADP) for iCloud accounts is not supported because `icl
40
40
41
41
## Occasional Errors
42
42
43
-
Some authentication errors may be resolved by clearing `.pyicloud` subfolder in the user's home directory. [Example](https://github.com/icloud-photos-downloader/icloud_photos_downloader/issues/772#issuecomment-1950963522)
43
+
Some authentication errors may be resolved by clearing the `.pyicloud` subfolder in the user's home directory. [Example](https://github.com/icloud-photos-downloader/icloud_photos_downloader/issues/772#issuecomment-1950963522)
44
44
45
45
(password-providers)=
46
46
## Password Providers
@@ -51,16 +51,16 @@ Some authentication errors may be resolved by clearing `.pyicloud` subfolder in
51
51
WebUI support
52
52
```
53
53
54
-
Passwords for iCloud access can be supplied by user in four ways:
54
+
Passwords for iCloud access can be supplied by the user in four ways:
55
55
- Using [`--password`](password-parameter) command line parameter
56
56
- Using keyring
57
57
- Using console
58
58
- Using web interface
59
59
60
-
It is possible to specify which of these three ways `icloudpd` should use, by specifying them with [`--password-provider`](password-provider-parameter) parameter. More than one can be specified and the order
61
-
of providers matches the order then will be checked for password. E.g. `--password-provider keyring --password-provider console` means that `icloudpd` will check password in keyring first and then, if no password found, ask for password in the console.
60
+
It is possible to specify which of these four ways `icloudpd` should use, by specifying them with the[`--password-provider`](password-provider-parameter) parameter. More than one can be specified and the order
61
+
of providers matches the order they will be checked for a password. E.g.,`--password-provider keyring --password-provider console` means that `icloudpd` will check the password in the keyring first and then, if no password is found, ask for a password in the console.
62
62
63
-
Keyring password provider, if specified, saves valid password back into keyring.
63
+
The keyring password provider, if specified, saves the valid password back into the keyring.
64
64
65
65
Console and Web UI are not compatible with each other. Console or WebUI providers, if specified, must be last in the list of providers because they cannot be skipped.
66
66
@@ -90,7 +90,7 @@ Use `icloud`, not `icloudpd`
90
90
(multiple-accounts-and-configs)=
91
91
## Using Multiple Accounts and Config
92
92
93
-
`icloudpd` can process iCloud collections for multiple accounts or use multiple configs for one account. This is achived by specifying `--username` parameter multiples times: any options specified after `--username` will be applied to mentioned user only. Parameters specified before first `--username` work as defaults for all other user configs. Global app-wide settings can be specified anywhere.
93
+
`icloudpd` can process iCloud collections for multiple accounts or use multiple configs for one account. This is achieved by specifying the `--username` parameter multiple times: any options specified after `--username` will be applied to the mentioned user only. Parameters specified before the first `--username` work as defaults for all other user configs. Global app-wide settings can be specified anywhere.
-`--use-os-locale` is global parameter and can be used anywhere
104
-
-`--cookie-directory` is a default for both users; it is okay to use same folder since session and coockies are stored in files based on user name, so they would not collide
105
-
-`--directory ./alice`is specifying that all photos for Alice will be downloaded into ./alice folder
106
-
-`--directory ./bob`is specifying that all photos for Alice will be downloaded into ./alice folder
103
+
-`--use-os-locale` is a global parameter and can be used anywhere
104
+
-`--cookie-directory` is a default for both users; it is okay to use the same folder since sessions and cookies are stored in files based on the user name, so they would not collide
105
+
-`--directory ./alice`specifies that all photos for Alice will be downloaded into the ./alice folder
106
+
-`--directory ./bob`specifies that all photos for Bob will be downloaded into the ./bob folder
Image asset date will be converted to specified TZ and then used for creating folders (see [`--folder-structure`](folder-structure-parameter) parameter)
20
+
The image asset date will be converted to the specified TZ and then used for creating folders (see the [`--folder-structure`](folder-structure-parameter) parameter).
21
21
22
-
Synchronization logic can be adjusted with command-line parameters. Run the following to get full list:
22
+
The synchronization logic can be adjusted with command-line parameters. Run the following to get the full list:
23
23
``` sh
24
24
docker run -it --rm icloudpd/icloudpd:latest icloudpd --help
25
25
```
@@ -40,7 +40,7 @@ Getting Docker:
40
40
41
41
- On Linux, Docker engine and client can be installed using platform package managers, e.g. [Installing on Ubuntu](https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-20-04)
42
42
43
-
- Appliance (e.g. NAS) will have their own way to install Docker engines and running containers - see manufacturer's instructions.
43
+
- Appliances (e.g., NAS) will have their own way to install Docker engines and run containers - see the manufacturer's instructions.
44
44
```
45
45
46
46
(pypi)=
@@ -65,7 +65,7 @@ on Windows:
65
65
pip install icloudpd --user
66
66
```
67
67
68
-
Plus add `C:\Users\<YourUserAccountHere>\AppData\Roaming\Python\Python<YourPythonVersionHere>\Scripts` to PATH. The exact path will be given at the end of `icloudpd` installation.
68
+
Also add `C:\Users\<YourUserAccountHere>\AppData\Roaming\Python\Python<YourPythonVersionHere>\Scripts` to PATH. The exact path will be given at the end of the `icloudpd` installation.
69
69
````
70
70
71
71
```{note}
@@ -88,7 +88,7 @@ cd icloudpd-bin
88
88
makepkg -sirc
89
89
```
90
90
91
-
With the use of the AUR helper e.g. [yay](https://github.com/Jguer/yay) the installation process would look like this:
91
+
With the use of an AUR helper, e.g., [yay](https://github.com/Jguer/yay), the installation process would look like this:
`icloudpd` is available as Intel 64bit binary for macOS, but works on ARM macs too (M1, M2, M3).
106
+
`icloudpd` is available as an Intel 64-bit binary for macOS, but works on ARM Macs too (M1, M2, M3).
107
107
108
-
Here are the steps to make it working:
109
-
- download binary from GitHub [Releases](https://github.com/icloud-photos-downloader/icloud_photos_downloader/releases) into desired local folder
110
-
- add executable flag by running `chmod +x icloudpd-1.32.0-macos-amd64`
111
-
- start it from the terminal: `icloudpd-1.32.0-macos-amd64`
112
-
- Apple will tell you that it cannot check for malicious software and refuse to run the app; click "Ok"
113
-
- Open "System Settings"/"Privacy & Security" and find `icloudpd-1.32.0-macos-amd64` as blocked app; Click "Allow"
108
+
Here are the steps to make it work:
109
+
- Download the binary from GitHub [Releases](https://github.com/icloud-photos-downloader/icloud_photos_downloader/releases) into the desired local folder
110
+
- Add the executable flag by running `chmod +x icloudpd-1.32.0-macos-amd64`
111
+
- Start it from the terminal: `icloudpd-1.32.0-macos-amd64`
112
+
- Apple will tell you that it cannot check for malicious software and refuse to run the app; click "OK"
113
+
- Open "System Settings"/"Privacy & Security" and find `icloudpd-1.32.0-macos-amd64` as a blocked app; click "Allow"
114
114
- Start `icloudpd-1.32.0-macos-amd64` from the terminal again
115
115
- Apple will show another warning; click "Open"
116
-
- After that you can run `icloudpd-1.32.0-macos-amd64 --help` or any other supported command/option
116
+
- After that, you can run `icloudpd-1.32.0-macos-amd64 --help` or any other supported command/option
`icloudpd` works in one of three modes of operation:
8
8
9
9
Copy
10
-
: Download assets from iCloud that are are not in the local storage
10
+
: Download assets from iCloud that are not in the local storage
11
11
12
12
This is the default mode
13
13
14
14
Sync
15
-
: Download assets from iCloud that are are not in the local storage (same as Copy). In addition, delete local files that were removed in iCloud (moved into "Recently Deleted" album)
15
+
: Download assets from iCloud that are not in the local storage (same as Copy). In addition, delete local files that were removed in iCloud (moved into the "Recently Deleted" album)
16
16
17
17
This mode is selected with [`--auto-delete`](auto-delete-parameter) parameter
18
18
19
19
Move
20
-
: Download assets from iCloud that are are not in the local storage (same as Copy). Then delete assets in iCloud that are in local storage, optionally leaving recent ones in iCloud
20
+
: Download assets from iCloud that are not in the local storage (same as Copy). Then delete assets in iCloud that are in local storage, optionally leaving recent ones in iCloud
21
21
22
22
This mode is selected with [`--keep-icloud-recent-days`](keep-icloud-recent-days-parameter) parameter
`--file-match-policy` parameter added and `name-id7` policy implemented
42
42
```
43
43
44
-
In large iCloud collections it is possible to have name collisions. To avoid collisions if files need to be downloaded into the same folder, use [`--file-match-policy`](file-match-policy-parameter) parameter:
45
-
- add unique invariant asset identification suffix to the name (e.g. **"IMG_1234_QAZXSW.JPG"**) with `--file-match-policy name-id7`
46
-
- de-duplicate by adding file size as a suffix (e.g. **"IMG_1234-67890.JPG"** for second asset); `--file-match-policy name-size-dedup-with-suffix` - it is default
44
+
In large iCloud collections, it is possible to have name collisions. To avoid collisions if files need to be downloaded into the same folder, use the[`--file-match-policy`](file-match-policy-parameter) parameter:
45
+
- add a unique invariant asset identification suffix to the name (e.g.,**"IMG_1234_QAZXSW.JPG"**) with `--file-match-policy name-id7`
46
+
- de-duplicate by adding file size as a suffix (e.g.,**"IMG_1234-67890.JPG"** for the second asset); `--file-match-policy name-size-dedup-with-suffix` - this is the default
47
47
48
48
## Live Photos
49
49
50
50
```{versionchanged} 1.18.0
51
51
`--live-photo-mov-filename-policy` parameter added and `original` policy implemented
52
52
```
53
53
54
-
Live Photo assets have two components: still image and short video. `icloudpd` can download both and allows customizing file name of the video portion with [`--live-photo-mov-filename-policy`](live-photo-mov-filename-policy-parameter) parameter:
54
+
Live Photo assets have two components: a still image and a short video. `icloudpd` can download both and allows customizing the file name of the video portion with the[`--live-photo-mov-filename-policy`](live-photo-mov-filename-policy-parameter) parameter:
55
55
56
-
- Use video file name the same as still image with `original` policy; use `--file-match-policy name-id7` to avoid clashes of video file with other videos.
57
-
- Use suffix from the still image with `suffix` policy: **"IMG_1234_HEVC.MOV"** for **"IMG_1234.HEIC"** still. This is default and works for HEIC still images only
56
+
- Use the same video file name as the still image with the `original` policy; use `--file-match-policy name-id7` to avoid clashes of the video file with other videos.
57
+
- Use a suffix from the still image with the `suffix` policy: **"IMG_1234_HEVC.MOV"** for **"IMG_1234.HEIC"** still image. This is the default and works for HEIC still images only
Portal Configuration/Use Node IP for Portal IP/Domain | checked |
23
23
Portal Configuration/Port | `9090` | Same as "Port Forwarding/Host Port" above
24
24
25
-
Once the app has started, connect to the [WebUI](webui) to enter password and MFA code one of two ways:
26
-
- Using browser from your PC to 9090 port of your NAS
27
-
- Clicking on `icloudpd` button in Detail/Application Info section of TrueNAS portal
25
+
Once the app has started, connect to the [WebUI](webui) to enter the password and MFA code in one of two ways:
26
+
- Using a browser from your PC to port 9090 of your NAS
27
+
- Clicking on the `icloudpd` button in the Detail/Application Info section of the TrueNAS portal
28
28
29
29
## Running on Synology NAS
30
30
31
-
The error `Failed to execv() /tmp/staticx-kJmNbp` has a workaround by (from an SSH terminal in my case) running `sudo mount /tmp -o remount,exec`. [#788](https://github.com/icloud-photos-downloader/icloud_photos_downloader/issues/788)
31
+
The error `Failed to execv() /tmp/staticx-kJmNbp` has a workaround by running `sudo mount /tmp -o remount,exec` (from an SSH terminal). [#788](https://github.com/icloud-photos-downloader/icloud_photos_downloader/issues/788)
32
32
33
-
CPU/Arch [used by Synology](https://kb.synology.com/en-me/DSM/tutorial/What_kind_of_CPU_does_my_NAS_have) other than amd64 (after x12):
33
+
CPU/Arch [used by Synology](https://kb.synology.com/en-me/DSM/tutorial/What_kind_of_CPU_does_my_NAS_have) other than amd64 (from x12 onwards):
0 commit comments