aragon / aragon-desktop

(Aragon 1) Managing an decentralized organization on a desktop near you
GNU General Public License v3.0
37 stars 17 forks source link

Give users the ability to set what nodes the desktop client uses without needing to load Aragon #76

Open john-light opened 5 years ago

john-light commented 5 years ago

Currently Aragon uses a Ethereum and IPFS nodes run by the Aragon Association by default. The problem here is that if either of these nodes becomes unavailable for any reason, the desktop app becomes un-usable because it needs to talk to these nodes to fetch the latest frontend via aragonPM and IPFS. Once the latest frontend loads, then users are able to change the default node in their client settings.

Solution: give users the ability in the desktop client to set what Ethereum and IPFS nodes are used to fetch the latest frontend, without needing access to the frontend first. This can be a default settings page that is bundled with the desktop client install and loads automatically if the client notices it cannot fetch the frontend client from the current default node.

luisivan commented 5 years ago

@sohkai is there anything stopping us from just using whatever web3 provider the user is using (if we detect one), as opposed to defaulting to our nodes? Is that filters/events support in web3 providers that holds us back from that?

sohkai commented 5 years ago

is there anything stopping us from just using whatever web3 provider the user is using

Generally because it was super slow to get events (in the past), but we can change this logic and re-test. On desktop we can definitely just detect if frame is available and then use that connection for read requests too, since they're starting to bundle a client.

luisivan commented 5 years ago

This would be solved by https://github.com/aragon/aragon-desktop/pull/79