= rclone =
 * https://github.com/rclone/rclone
 * https://rclone.org/
Rclone is a command line program to manage files on cloud storage. (Google drive)
Rclone mounts any local, cloud or virtual filesystem as a disk on Windows, macOS, linux and FreeBSD, and also serves these over SFTP, HTTP, WebDAV, FTP and DLNA.

Supported providers:
 * Amazon S3
 * Dropbox
 * FTP
 * Google Drive
 * Google Photos
 * HDFS
 * HTTP
 * Microsoft Azure Blob Storage
 * Microsoft OneDrive
 * SFTP
 * WebDAV
 * The local filesystem 

== Debian setup ==
{{{#!highlight bash
sudo apt install rclone
rclone config
# n) New remote
n/s/q> n
name> remotedrive
#Type of storage to configure.
#Enter a string value. Press Enter for the default ("").
#Choose a number from below, or type in your own value
#12 / Google Drive
#   \ "drive"
Storage> 12
#** See help for drive backend at: https://rclone.org/drive/ **
#Google Application Client Id
#Leave blank normally.
#Enter a string value. Press Enter for the default ("").
client_id> 
#Google Application Client Secret
#Leave blank normally.
#Enter a string value. Press Enter for the default ("").
client_secret> 
#Scope that rclone should use when requesting access from drive.
#Enter a string value. Press Enter for the default ("").
#Choose a number from below, or type in your own value
# 1 / Full access all files, excluding Application Data Folder.
#   \ "drive"
scope> 1
#ID of the root folder
#Leave blank normally.
#Fill in to access "Computers" folders. (see docs).
#Enter a string value. Press Enter for the default ("").
root_folder_id> 
#Service Account Credentials JSON file path 
#Leave blank normally.
#Needed only if you want use SA instead of interactive login.
#Enter a string value. Press Enter for the default ("").
service_account_file> 
#Edit advanced config? (y/n)
#y) Yes
#n) No
y/n> n
#Remote config
#Use auto config?
# * Say Y if not sure
# * Say N if you are working on a remote or headless machine or Y didn't work
#y) Yes
#n) No
y/n> y
#If your browser doesn't open automatically go to the following link: #http://127.0.0.1:53682/auth
#Log in and authorize rclone for access
#Waiting for code...
#Got code
# Configure this as a team drive?
# y) Yes
# n) No
y/n> y
#Fetching team drive list...
#Choose a number from below, or type in your own value
# 1 / XYZ Team
#   \ "..."
Enter a Team Drive ID> 1
#--------------------
#[remotedrive]
#scope = drive
#token = #{"access_token":"...","token_type":"Bearer","refresh_token":"...","expiry":"2???-#09-02T17:51:??.???+01:00"}
#team_drive = XXXXXYXYXY
#--------------------
#y) Yes this is OK
#e) Edit this remote
#d) Delete this remote
y/e/d> y
#Current remotes:
#Name                 Type
#====                 ====
#remotedrive          drive
#e) Edit existing remote
#n) New remote
#d) Delete remote
#r) Rename remote
#c) Copy remote
#s) Set configuration password
#q) Quit config
e/n/d/r/c/s/q> q

rclone listremotes
# remotedrive:
cd ~
mkdir ~/Documents/remotedrive
fusermount -u  ~/Documents/remotedrive
rclone mount remotedrive: Documents/remotedrive # ctrl+c to unmount/quit

}}}

{{{#!highlight sh 
rclone config
n) New remote
s) Set configuration password
q) Quit config
n/s/q> n

Enter name for new remote.
name> remotedrive

Option Storage.
Type of storage to configure.
Choose a number from below, or type in your own value.
19 / Google Photos
   \ (google photos)
Storage> 19
Option client_id.
OAuth Client Id.
Leave blank normally.
Enter a value. Press Enter to leave empty.
client_id> 

Option client_secret.
OAuth Client Secret.
Leave blank normally.
Enter a value. Press Enter to leave empty.
client_secret> 

Option read_only.
Set to make the Google Photos backend read only.
If you choose read only then rclone will only request read only access
to your photos, otherwise rclone will request full access.
Enter a boolean value (true or false). Press Enter for the default (false).
read_only> false

Edit advanced config?
y) Yes
n) No (default)
y/n> n

Use auto config?
 * Say Y if not sure
 * Say N if you are working on a remote or headless machine

y) Yes (default)
n) No
y/n> y

2025/03/09 22:32:17 NOTICE: If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth?state=aaaaaa
2025/03/09 22:32:17 NOTICE: Log in and authorize rclone for access
2025/03/09 22:32:17 NOTICE: Waiting for code...
2025/03/09 22:33:47 NOTICE: Got code
Warning

IMPORTANT: All media items uploaded to Google Photos with rclone
are stored in full resolution at original quality.  These uploads
will count towards storage in your Google Account.
y) Yes (default)
n) No
y/n> y

Configuration complete.
Options:
- type: google photos
- token: {"access_token":"","token_type":"Bearer","refresh_token":"","expiry":""}
Keep this "remotedrive" remote?
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> y

Current remotes:

Name                 Type
====                 ====
remotedrive          google photos

e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> q
rclone listremotes 
# remotedrive:
cd ~
mkdir ~/Documents/remotedrive
fusermount -u  ~/Documents/remotedrive
rclone mount remotedrive: ~/Documents/remotedrive
}}}

== Google drive ==
{{{#!highlight sh
rclone config
Current remotes:

Name                 Type
====                 ====
remotedrive          google photos

e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> n

Enter name for new remote.
name> googledrive

Option Storage.
Type of storage to configure.
Choose a number from below, or type in your own value.
18 / Google Drive
   \ (drive)

Storage> 18

Option client_id.
Google Application Client Id
Setting your own is recommended.
See https://rclone.org/drive/#making-your-own-client-id for how to create your own.
If you leave this blank, it will use an internal key which is low performance.
Enter a value. Press Enter to leave empty.
client_id> 

Option client_secret.
OAuth Client Secret.
Leave blank normally.
Enter a value. Press Enter to leave empty.
client_secret> 

Option scope.
Scope that rclone should use when requesting access from drive.
Choose a number from below, or type in your own value.
Press Enter to leave empty.
 1 / Full access all files, excluding Application Data Folder.
   \ (drive)
 2 / Read-only access to file metadata and file contents.
   \ (drive.readonly)
   / Access to files created by rclone only.
 3 | These are visible in the drive website.
   | File authorization is revoked when the user deauthorizes the app.
   \ (drive.file)
   / Allows read and write access to the Application Data folder.
 4 | This is not visible in the drive website.
   \ (drive.appfolder)
   / Allows read-only access to file metadata but
 5 | does not allow any access to read or download file content.
   \ (drive.metadata.readonly)
scope> 1

Option service_account_file.
Service Account Credentials JSON file path.
Leave blank normally.
Needed only if you want use SA instead of interactive login.
Leading `~` will be expanded in the file name as will environment variables such as `${RCLONE_CONFIG_DIR}`.
Enter a value. Press Enter to leave empty.
service_account_file> 

Edit advanced config?
y) Yes
n) No (default)
y/n> 

Use auto config?
 * Say Y if not sure
 * Say N if you are working on a remote or headless machine

y) Yes (default)
n) No
y/n>  

2025/03/10 17:21:45 NOTICE: If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth?state=aaaa
2025/03/10 17:21:45 NOTICE: Log in and authorize rclone for access
2025/03/10 17:21:45 NOTICE: Waiting for code...
2025/03/10 17:22:29 NOTICE: Got code
Configure this as a Shared Drive (Team Drive)?

y) Yes
n) No (default)
y/n> 

Configuration complete.
Options:
- type: drive
- scope: drive
- token: {}
- team_drive: 
Keep this "googledrive" remote?
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> 

Current remotes:

Name                 Type
====                 ====
googledrive          drive

e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> q

cd ~
mkdir ~/Documents/googledrive
fusermount -u  ~/Documents/googledrive
rclone mount googledrive: ~/Documents/googledrive

}}}