transfer.sh
transfer.sh copied to clipboard
Feature: support Google Shared Drives
Google shared drives can have unlimited storage space. Using rclone requires more steps, so I hope transfer.sh can directly support it.
Google shared drives API Docs: https://developers.google.com/drive/api/v3/enable-shareddrives
Create Google Shared Drives for free: https://td.msgsuite.workers.dev/
@wc7086 Could you elaborate the use case a little more? Transfer.sh original itention is not to be come an archival sharing service. There might be forks running as such, but that defeats the purpose in my mind. What are your thoughts on this @aspacca ?
@wc7086 Could you elaborate the use case a little more?
https://github.com/rclone/rclone/blob/master/backend/drive/drive.go
Although it can be mounted directly with rclone, it is inconvenient to use docker in this way.
@stefanbenten the reason to support gdrive shared drives is to have unlimited storage (like some of them have), as far as I understand.
I see value i this: I have to investigate what are the requirements, hopefuly just the proper oauth2 scope, that would be an easy fix but would required reauthenticating the client
actually it seems even simplier: we have to provide a param for the drive id to use, that could be a shared one. I have to check how client app can join a share drive, @wc7086 any clue?
Any progress on this?
@hongkongkiwi I have no shared folder to test on
you can try to write the ID of the folder in the shared drive (ie: --basedir) in %gdrive-local-config-path%root_id.conf and see if it works
Nope, this doesn't work
@jonasled thanks for testing
There's a PR to support shared drives on gdrive: https://github.com/dutchcoders/transfer.sh/pull/512
As it is, it introduces breaking change and I cannot merge to main without getting rid of them.
If the original author won't give feedback in a reasonable time I will follow up with the development
actually it seems even simplier: we have to provide a param for the drive id to use, that could be a shared one.
I totally forgot about the investigation I did and how I came to this conclusion: this solution joint with the most of the code already in #512 seems to be the proper one.