eyedeekay / I2P-in-Private-Browsing-Mode-Firefox

I2P in Private Browsing mode for Firefox, built using Webextensions and Contextual Identities
https://eyedeekay.github.io/I2P-in-Private-Browsing-Mode-Firefox/
MIT License
63 stars 10 forks source link

Extension Page: Content (Top Section) #122

Closed Shoalsteed closed 2 years ago

Shoalsteed commented 2 years ago

Top Section

In this section , the onboarding needs to be changed. It incorrectly suggests that the browser is for accessing the internet. Additionally, information about application access in redundant, and the onboarding should focus on using the extension, not introducing users to I2P.

Before:

Screen Shot 2022-09-28 at 10 00 52 AM

Mock up with suggested changes: ( ignore colour!)

Screen Shot 2022-09-28 at 10 01 58 AM
eyedeekay commented 2 years ago

It incorrectly suggests that the browser is for accessing the internet.

It says no such thing. It says "Your browser is set up to use I2P" which is true, and that the "Proxy is ready" which is also true. Even if the proxy wasn't ready and I2P wasn't even installed, your browser would still be set up to use I2P. Setting up I2P and setting up a browser to use it are separate processes everywhere except the Easy-Install bundle for Windows. If you couldn't browser the clearnet directly in clearnet tabs the extension would be broken. The browser is ready to use I2P, and clearnet, in separate contexts, which is that it says on the box.

If you mean outproxy use, then there are 2 big problems with that, both related to the separation of the I2P Setup and the Browser Setup processes. I2PIPB cannot assume an outproxy is present at all because it has no insight into the user's configuration or intent:

  1. The only way I could do this is by scraping the information out of the router console page. It would be brittle, it would not be cross-platform, and it would work with only specific versions of specific routers.
  2. The second problem is that even if it could assume that, it would not be possible for the extension to know the user's intent when they open a clearnet website. It is intentionally not a whole-browser solution, it's a container-tab solution. The choice to proxy or not when browsing the clearnet is intentionally left to the user when using an extension only. It is "for" whatever the user chooses to use it for.

As far as I can tell, automatic configuration of browsing with an outproxy for clearnet sites is not only out of scope it's actually impossible. If that's the case, then I believe textual changes in 66f56b4375b8361b62d3898b3c596f34316be208 and 66f56b4375b8361b62d3898b3c596f34316be208 reflect a way to make the act of opening an I2P tab more obvious.

If it's a whole-browser solution we need then that's what https://github.com/eyedeekay/i2p.plugins.firefox does.

Shoalsteed commented 2 years ago

This is the section I am referencing: It mentions the internet:

Screen Shot 2022-09-30 at 3 57 19 PM
eyedeekay commented 2 years ago

OK that makes a little more sense. I still don't know how to delineate it properly, though. It will do all those things, in I2P tabs, which is what it's for. So the verbiage needs to change to reflect that.

Shoalsteed commented 2 years ago

Probably saying something along the lines of "this extension works with your current outproxy configuration and will not interfere with its function. It will isolate these actions in its own container as it does I2P network traffic and when you use an I2P application"

eyedeekay commented 2 years ago

How about "This extension works automatically when you are browsing I2P sites. If you want to use I2P as a proxy to non-I2P sites, use the I2P In Private Browsing button in the toolbar and click New I2P Browser Tab to switch to I2P Browsing in a new tab." instead?

Shoalsteed commented 2 years ago

If a person is not using the Windows easy installer, has not set up anything already to use the existing outproxy, is this instruction still true? Would opening the new I2P browser tab work in this way?

And does this action work for both I2P Java and I2pd?

eyedeekay commented 2 years ago

Yes, no matter what distribution of I2P they're using at this time they do have an outproxy, which is normally going to be exit.stormycloud.i2p. There is no extension-side configuration necessary to use an outproxy, other than switching to an I2P tab.