Unfortunately I encounter two errors here and I don’t understand exactly what I’m doing wrong:
Step 5 says execute the command dfx identity use nns-ledger-default-identity
I get this error:
Error: Failed to switch default identity to 'nns-ledger-default-identity'.
Caused by: Failed to switch default identity to 'nns-ledger-default-identity'.
Identity nns-ledger-default-identity does not exist at '/home/anon/.config/dfx/identity/nns-ledger-default-identity/identity.pem'.
I thought I need to create an identity with sns-quill. I installed this in the root directory and in the project directory. When I run this: sns-quill generate --pem-file identity.pem --seed-file seed.txt
This identity refers to the identity you should have created at the end of Step 1. You can Ctrl+f for make sure you also import the following identity
If you imported this identity, replace nns-ledger-default-identity with the name you gave to the imported identity.
Right, my mistake. That’s really logical. Thank you!
I have now created the Identity and added sns-quill to the Path. Now I am wondering at step 6 where exactly my NNS dapp is supposed to be. I did dfx nns install. The instructions say it will show me two links. For me, only one link is shown and the command has been running forever now without finishing.
Successfully installed wasm into canister with ID: renrk-eyaaa-aaaaa-aaada-cai
Installed renrk-eyaaa-aaaaa-aaada-cai with genesis-token-canister
NNS canisters installed after 22.0 s
NNS canisters set up after 24.0 s
[ic-nns-init] All NNS canisters have been set up on the replica with http://127.0.0.1:43507/
Uploading NNS configuration data...
You’re supposed to work with two dfx identities and swap between the two as needed. This step refers to the other one, not nns-ledger-default-identity.
I guess it’s possible to only use one for everything, but I haven’t tested it
This will be fixed by the next dfx version. You can already try 0.13.0-beta.0 if you manually install it. The problem is that ic-admin on dfx earlier than 0.13.0 only supports secp256k1 keys, while dfx switched to producing ed25519 in version 0.12.0 (or was it the other way round? I may be switching the two curve names). Therefore: to use ic-admin from dfx version <0.13, you have to use an identity that was generated (referring to dfx identity new, not dfx identity import) with dfx <0.12. If you revert to e.g. dfx 0.11.3 to generate another identity, you can use both with ic-admin
Also: my bad for not documenting this properly. I thought the next dfx release would come much sooner, so I didn’t document this weird behaviour properly.
The team says the error comes from this check and that likely the error is that you forgot to add the developer identity as a hotkey to the neuron you’re trying to propose with. That would be step 2.7.5 with the current version of the instructions.
The error message invalid type: string "0,", expected u64 gives a hint. If you search for "0,", it’ll point you to the second last line, where you have memo: "0,". Change this to a valid u64 (e.g. 534, then it should work. If you want to compare, here is a valid sns.yml.
expected u64 at line 1 column 20
The wrong location indicator is probably because of some parsing library that gets called recursively.
Argument list too long (os error 7)', rs/sns/cli/src/main.rs:337:29
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
I tried the whole thing with the sample version you sent me and other principal IDs but I still get the same error so it can’t be the yaml file probably. @Severin
This is a limitation of bash/your shell, see this SO answer.
Since this didn’t happen on my machine (macOS with zsh), and not on CI (both macOS and Ubuntu, not sure which shells they use), I’d recommend you try with a different shell.
Can you also tell me which shell you’re using? I’d like to reproduce this on CI so we can figure out a way to circumvent that limit and also make sure we test for it.
I’m not sure, I guess you’ll have to try it out. I know that on my machine zsh works well. Maybe it is also possible to somehow adjust the max parameter length?
I’ll ping the team, maybe they have an idea that works without code changes. Otherwise someone would have to do something like this PR that added support for an argument file. Feel free to ping me again if you don’t receive help within a few days.
Hello @mindfulanon . May I ask which version of bash? Just checking as Mac ships with a version that is over a decade old and a lot goes wrong with it.