kapitainsky / RcloneBrowser

Simple cross platform GUI for rclone. Supports macOS, GNU/Linux, BSD family and Windows.
https://github.com/kapitainsky/RcloneBrowser
MIT License
2.28k stars 218 forks source link

Hidden Remotes #178

Open darkphase opened 2 years ago

darkphase commented 2 years ago

Hi Would it be possible to implement the functionality to hide some remotes... Even, an implementation, hides remote names starting with a specific prefix would be enough. Regards

kapitainsky commented 2 years ago

Could you tell me what purpose it would have? You can always delete remotes if not needed.

On 2 Oct 2021, at 16:12, Darkphàs Dé Lône @.***> wrote:

Hi Would it be possible to implement the functionality to hide some remotes... Even, an implementation, hides remote names starting with a specific prefix would be enough. Regards

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/kapitainsky/RcloneBrowser/issues/178, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADXJHOTZBY3ULJGTHR57USDUE4OPJANCNFSM5FGP5LQQ. Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

darkphase commented 2 years ago

For example; as a simple scenerio using encryption remote over another remote. It would be nice to hide under lying one... Just to see encrypted one...

When using union remotes the things get out of hand pretty quickly...

At the end I'm just suggesting a filtering method what Browser lists or not.

kapitainsky commented 2 years ago

ok I think that indeed the easiest will be to hide all remotes starting with e.g. ".", so for example .crypt wont be listed.

Slider-Override commented 2 years ago

But the regular remotes need to be listed to use the .crypt or?

If google drive is not known, how can the crypt use the Google drive to store crypt files?

Slider-Override commented 2 years ago

So of i understand correct that there is no way to hide the "Source" remote from a "Crypt" remote in the config ?

I am searching for days for a solution, but did not see any solution yet.

kapitainsky commented 2 years ago

Nope - it is not available yet. But now I understand what the issue is and will add it

On 19 Apr 2022, at 12:13, Slider-Override @.***> wrote:

So of i understand correct that there is no way to hide the "Source" remote from a "Crypt" remote in the config ?

I am searching for days for a solution, but did not see any solution yet.

— Reply to this email directly, view it on GitHub https://github.com/kapitainsky/RcloneBrowser/issues/178#issuecomment-1102517187, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADXJHOUBKL2VRXYLRMR6I7LVF2IPPANCNFSM5FGP5LQQ. You are receiving this because you commented.

Slider-Override commented 2 years ago

Hidding in the GUI will be cool, but this mean its still visible in the rclone.config which can be read by command line or edit the file.

It will be awesome if it will be also possible to also use the RcloneBrowser as well with a parameter to decrypt "Encrypted rclone configuration File"

Example:

RcloneBrowser.exe -configfile ".\rclone.config" -rconepath ".\rclone.exe" -pass "MySecrityPassword" -hideremote "gdrive" -runonly

-configfile = path to the config (for portable mode) -rconepath = path to the rclone.exe (for portable mode) -pass = Password for the config file -hideremote = hide the source remote from the GUI -runonly = disable the config button in the GUI (so that the config files can not be readed)

Just a idea :-) This way I guess everything will be coverd :-)

darkphase commented 2 years ago

@Slider-Override But if you want to use commandline why not just use rclone directly... The thing I suggested is just about GUI listing component... To reduce the clutter... Of course GUI may have been enhanced many ways... A settings dialog to hide remotes for example... But it may have too much of a work so I suggested that way...

@kapitainsky I'm not sure (.) would be a good choice of a prefix... I hope it won't introduce problems with rclone...

Slider-Override commented 2 years ago

If it's in the GUI each "user" can change the setting back to see the hidden config again. If I set it via command line, you can run it via each loader (external program) to hide all settings and also the password.

Also you can use it as portable version.

darkphase commented 2 years ago

Are you mean something like this https://github.com/FoxP/RcloneBrowserLauncher

One thing I didn't understand though.. Where do we get V2.00 of RcloneBrowser?!!

Slider-Override commented 2 years ago

not realy, the idea behind "RcloneBrowserLauncher" is good, but do not help here because:

My Idea is more, I like to share the portable app (like in a zip) with my friends, and they start the rclonebrowser with for example the pw "view" and they can just see the "encrypted gdrive" and the regular "gdrive" is hidden for them (also the configure button).

KaladinDMP commented 6 months ago

I have done this, hardcoded the password into the rclone.exe i did it this way because go is easier for me. Then rclonebrowser is able to read the config but the config remains encrypted and rclone browser doesnt ask for the password... Of course theres ways to beat this but 99% of people likely wont be able to or wont try. download rclone source and edit crypt.go in rclone\fs\config\crypt.go lines 44-57

// Decrypt will automatically decrypt a reader
func Decrypt(b io.ReadSeeker) (io.Reader, error) {
    ctx := context.Background()
    ci := fs.GetConfig(ctx)
    var usingPasswordCommand bool

    // Check if the password is already set
    if len(configKey) == 0 {
        // Set the password directly
        err := SetConfigPassword("RCLONE.CONFPASSWORD")
        if err != nil {
            return nil, fmt.Errorf("failed to set password: %w", err)
        }
    }

There is a bit more to it but thats the hard part, comment out any rclone commands you dont want such as config (removes config show) etc. Make sure you build with the icon otherwise you will have no icon!

I also had a friend make a custom rclone browser that hid any remote starting with "DoNotUse - " so that the remotes that have the encrypted stuff are invisible and only the normal looking remotes show. This was more for my use case but i dont use it anymore and it would be a crime to let it just die, wish i had the source or more info to explain how its done and allow the remotes to be named another way ... but i dont. Just trying to be helpful and share but if this upsets the repo owner or anyone else let me know ill remove.... Custom Rclone Browser w Hidden Remotes