New Release: Vault Phase 1 (real vault)

Ah I see. Between digitalocean vaults and decentralized network integrations, do you know where do we stand? This is really an amazing release, everything is coming together rather quickly now.

1 Like

It is certainly exciting and happening fast.

We now have a single Vault, either shared or local.

The next stage is multiple vaults with a single section - so kind of a mid point.

Then multiple vaults, multiple sections and we have Fleming.

Then a bit more to Maxwell and release.


See my earlier reply:


Maybe you encountered it already, but this week in trending Github projects, Nu Shell: a shell written in Rust. Could be useful somehow for the Interactive shell.


Yeah, it was shared by some of the folks internally a few days back (it was @chriso actually :slightly_smiling_face: ), what I got from a quick look at it was that it could be possible to have a plugin for that shell which adds support for safe:// to its open cmd


Since this is also related to real vaults, re-posting @Karamu’s post from other thread:


Have been too busy to stay tuned in depth but once you guys have an idiot proof point and click version be sure to let us know!

Keep up the effort.
Well done


Manjaro user here,

safe_vault is not working for me:

[admin@Resosur-uq resosur]$ ./safe_vault
-bash: ./safe_vault: cannot execute binary file: Exec format error

FYI, the release has been updated with a Windows version of the browser POC, which now builds/packs/works! :tada:


I currently have a problem with running the safe vault.
I am not at the browser stage yet.

I use a rPi3 and I have created the safe_vault from source on the rPi3.

Your error reads like you need to make the vault file executable, perhaps.

chmod +x <the file> may work for you

otherwise I’m sorry to say we dont support manjaro, and I;m not sure about the status of arm/rasp either right now.


I faced the same issue on a pi4 : the binaries released by Maidsafe are not built against arm platform.
But I could successfully build the vault, cli, and cli authentication on the pi, simply by cloning the respective git repos, and issuing a ‘cargo build’ command.
This worked out of the box under raspbian buster, provided that rust was installed with rustup and libssl-dev is installed too.


Thanks, I hadn’t done that because I saw a Makefile, so I ran make instead,
but I guess that wasn’t the correct way of building safe_vault.

I now have safe_vault running and it’s stalled at:

Waiting for connections...

It looks like it’s ready to accept connections from safe/safe_auth CLIs and/or PoC browser, doesn’t it work @folaht?
If not, you could try running it with RUST_LOG=trace to get additional info


Oh, so it’s working?

I have no clue what the applications are supposed to do.
I expected the vault to connect to other vaults and form a vault network.

Do I run this as a daemon and then run safe_auth on the server as well?
If the vault is only local, does that mean the sites are as well and that the shared vault is the new test network?

Yes you can do that, you should be able to connect with the CLIs locally to it.

Correct, you can test everything locally with your vault, or connect to the shared vault (which is just a vault running on a server with a public IP so people can connect to it without running one locally). Look at the original post for instructions on how to connect to it.

1 Like

2 remarks regarding safe cli flags:

  • Why the verbose flags for safe cat commands are -i, -ii, -iii, whereas they are -v, -vv, -vvv for safe_vault? This seems inconsistent to me.

  • I don’t understand the help on -t flag for safe nrs create command:

The default is set but using a direct link to the final destination that was provided with --link, rather than a link to the sub name being created (which is the default behaviour if this flag is not passed)

(I have no idea what that means)


Another question: Is safe_vault currently in master branch (commit 8b66ce2f5cad843a605b53094c1ca132a3e0c0c5) and compiled from source, supposed to be compatible with safe-browser from here (CLI-POC-2)

I have copied the vault_connection_info.config from the vault server to the browser client. I have also authorized firewall for the choosen udp port on the vault.

It works partially because I get the following lines from the vault logs:

Running safe-vault v0.19.2
INFO 2019-09-15T19:31:20Z [src/] QuicP2p started on pp.pp.pp.pp:5483
with certificate [...]
INFO 2019-09-15T19:39:24Z [src/] 21fb7b..: Connected to new client on nn.nn.nn.nn:34443
INFO 2019-09-15T19:39:24Z [src/] 21fb7b..: Accepted App(Bls(a4869e..), owner: Bls(a4869e..)) on nn.nn.nn.nn:34443.
INFO 2019-09-15T19:41:44Z [src/] 21fb7b..: Networking error: Connection was actively cancelled
INFO 2019-09-15T19:41:44Z [src/] 21fb7b..: Disconnected from App(Bls(a4869e..), owner: Bls(a4869e..)) on nn.nn.nn.nn:34443

(where pp.pp.pp.pp and nn.nn.nn.nn are IP addresses of server and client)

But I cannot display a small page that is stored in the vault. I get:

And this name exists in the vault:

./safe cat safe://test -iii
Native data type: PublishedSeqAppendOnlyData
Type tag: 1100
XOR name: 0x4a5203f8655e7d7625f2f0b288790356e72fd56e921e58d1d1053c584bac6648

Resolved using NRS Map:
PublicName: "test"
Container XOR-URL: safe://hnyydyw5xyknabqan31b8fkpyrd4nydtwpausi3urhtxqob4fk78n6siaybqh
Native data type: PublishedSeqAppendOnlyData
Type tag: 1500
XOR name: 0x36f028580bb02cc8272a9a020f4200e346e276ae664e45ee80745574e2f5ab80
Version: 0
| NRS name/subname | Created              | Modified             | Link                                                                     |
| test             | 2019-09-14T20:43:42Z | 2019-09-14T20:43:42Z | safe://hnyynyiffry9acix847tf6mamfnd3ypmqqm6ip4jbhsgt4rnuasnmiturobnc?v=0 |

Files of FilesContainer (version 0) at "safe://test":
| Name                          | Size | Created              | Modified             | Link                                                              |
| /xtest/img/safe_logo_blue.svg | 5851 | 2019-09-14T20:38:19Z | 2019-09-14T20:38:19Z | safe://hbwynon5ey35si9umca83jkuo6t6qkmkwcp6s9t3g964d9u8fyippaza6z |
| /xtest/index.html             | 398  | 2019-09-14T20:38:19Z | 2019-09-14T20:38:19Z | safe://hbhybydex8tt7x4mqq3h6mm3i5d65zeaa7t47ju47fco4e3p6o6z34pjnf |

Note: safe-cli is also build from source in master branch (commit 5910ca91dbe3539352d7af94f551d4f2ed164dc4)

1 Like

I personally don’t think they should be compared in these terms of consistency across CLIs (I do agree we should aim at that for CLIs), the --verbose on the safe_vault CLI is to change logging levels, which we will eventually have on safe CLI, whilst the --info flags are specific to cat command and not about the logging level, or information about the process happening when executing a command, but more information about the content you are fetching. This means that we will eventually be able to do $ safe cat -ii -vvv to see more logging level when fetching content (thanks to the --verbose flags) and also get the additional info about the content being fetched (thanks to the --info flags).

I did have a hard time trying to describe it, and you are confirming I didn’t succeed :smiley: !
When you add a subname you can set it to be the new default for the public name, i.e. if you add subname subname6 to publicname mypubname and set it as default, it means safe://mypubname is now like an alias to safe://subname6.mypubname and it will be resolved to the same URL subname6 is mapped to, even if you update that mapping. If you otherwise pass that -t flag when adding subname6 as before, the default will be set to the URL you are passing in that same command, but if you then update the map of such subname you were adding, it won’t change the resolution/mapping of the safe://mypubname as before. I’ll happy to know a better way to describe it in the help menu, we can update it as we wish ofc, so please just let me know your thoughts for enhancing it.


@tfa I suspect the issue is simply that you are using the latest CLI code from repo which includes the Media-type in the XOR-URLs but you are using the PoC browser which still doesn’t have the latest HL API so it cannot decode them, therefore it’s failing. You could try uploading the content with v0.3.0 of the CLI and you should see it in the browser with no issues. We’ll be upgrading the API on browser repo in the next few days and it will be able to also decode those new XOR-URLs