-
Notifications
You must be signed in to change notification settings - Fork 327
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CIP-0047? | Proposal for open Daedalus or desktop wallet via URL #234
CIP-0047? | Proposal for open Daedalus or desktop wallet via URL #234
Conversation
thanks for following the suggestion to move this into a new CIP 😎 ... also let me remind other editors & reviewers there is useful discussion about this proposal in the draft PR linked above: #130 @danielmain - is this already being used in work you're doing with the Daedalus group? If so the status could be changed to |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Github requires me to leave a comment here 🤓
Yes we are working on it |
… using the same for all kind of wallets
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for your continued work on this 😎
|
||
# 💡 Motivation | ||
|
||
DEX, Web-dApps and Desktop-dApps (e.g. games or desktop applications) should have the possibility to interact directly with desktop wallets. By defining a URI scheme and registering it in the operating system, it will allow opening Daedalus or any desktop wallet same as when you call or click a mailto:[email protected] and your email client is opened. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
changing this to mailto:[email protected]
(i.e, adding backticks around it) should prevent the email address from being formatted differently (as a clickable & invalid email address) in the formatted Markdown (as it appears now).
Title: Daedalus URI Scheme | ||
Authors: Daniel Main <[email protected]> | ||
Comments-URI: | ||
- https://github.com/cardano-foundation/CIPs/pull/130 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
great that you have the last PR discussion in there, but can you also add this one?
- https://github.com/cardano-foundation/CIPs/pull/234
``` | ||
<a href="web+cardano://Ae2tdPwUPEZ76BjmWDTS7poTekAvNqBjgfthF92pSLSDVpRVnLP7meaFhVd?unix-timestamp-timeout=1647896861">Buy/Send/Donate</a> | ||
<a href="web+cardano-testnet://Ae2tdPwUPEZ76BjmWDTS7poTekAvNqBjgfthF92pSLSDVpRVnLP7meaFhVd?unix-timestamp-timeout=1647896861">Buy/Send/Donate (Testnet)</a> | ||
<a href="web+cardano-flight://Ae2tdPwUPEZ76BjmWDTS7poTekAvNqBjgfthF92pSLSDVpRVnLP7meaFhVd?unix-timestamp-timeout=1647896861">Buy/Send/Donate (Mainnet and using Daedalus Flight)</a> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what's the point of web-cardano-flight
? This seems very Daedalus-specific. Why not just use web+cardano
and leave it up to the OS prompt to choose which app to launch (Daedalus or Daedalus Flight)?
Correct examples: | ||
``` | ||
<a href="web+cardano://Ae2tdPwUPEZ76BjmWDTS7poTekAvNqBjgfthF92pSLSDVpRVnLP7meaFhVd?unix-timestamp-timeout=1647896861">Buy/Send/Donate</a> | ||
<a href="web+cardano-testnet://Ae2tdPwUPEZ76BjmWDTS7poTekAvNqBjgfthF92pSLSDVpRVnLP7meaFhVd?unix-timestamp-timeout=1647896861">Buy/Send/Donate (Testnet)</a> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would strongly advise against doing web+cardano-testnet
. Cardano, just like Ethereum, it sure to have many different networks in the future and we don't want to be stuck with a bunch of different URI schemes for every network. Instead, I suggest you include something similar to CIP34 inside the payload
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would strongly advise against doing
web+cardano-testnet
. Cardano, just like Ethereum, it sure to have many different networks in the future and we don't want to be stuck with a bunch of different URI schemes for every network. Instead, I suggest you include something similar to CIP34 inside the payload
@SebastienGllmt : the network cannot be "selected" in Daedalus. For each Network exist a different Daedalus installation. This is how it is implemented, and I am afraid this will not be changed.
Coming back to the vscode example.
vscode://
=> opens Visual Studio
vscode-insiders://
=> opens Visual Studio Insiders
You can run this command (in case you are on macOs), and you will see how most of the desktop applications register their URIs: /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -dump URLSchemeBinding
So, Flight is for us, like the Insider version.
cc: @nikolaglumac
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Cardano, just like Ethereum, it sure to have many different networks in the future and we don't want to be stuck with a bunch of different URI schemes for every network. Instead, I suggest you include something similar to CIP34 inside the payload
At least in Daedalus’ case, each network is handled by a different build.
If we are to define only a single protocol:
, by which the OS differentiates which app to choose, we would have to either:
- let the user choose, after clicking a link, in a system prompt, which Daedalus build to use to handle it, and
- how easy it would be to mis-click is not for me to decide,
- I think some OS-es don’t show the full list of possible apps, just a few recent ones?
- or create a completely separate small app that opens an appropriate Daedalus build (if it is installed) based on
protocol:THIS_PART
which the OS is not concerned with – in effect re-implementing a great deal of what already is there in all 3 OS-es, and having to make it cross-platform, having to detect where each Daedalus is installed etc. etc. – a mess.
@@ -0,0 +1 @@ | |||
Moved to [CIP-0035/README.md](./README.md). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not needed for new CIPs.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As currently written and framed, the proposal is too Daedalus-specific to pretend to be included as a CIP.
If the goal is to define a URI scheme for desktop wallets in general, then it ought to be framed as such for more clarity 👍 , only taking Daedalus as one of the possible example of implementation.
Closing for now, as it's been inactive for a while. Feel free to re-open if there's any update on this topic. |
This PR introduces CIP-0035 where the standard is defined of how websites or desktop applications can open and interact with the installed desktop wallet like Daedalus using a URL.
This is a replacement of the previously draft PR created on 16 Sep 2021 by @tomislavhoracek