[ValentinesNet] [14/2/24 Testnet] [Offline]

Right now we have a suspicion from our log-diving that the high-mem nodes are those that subscribed to gossip for royalties. This testnet is aiming to probe that hypothesis by removing gossip royalties!

(Note: we have another approach to this lined up via DAG nodes, so it may well be we’d be doing this down the line anyway; at least now we can confirm something).

The aim here is largely to see if we have avoided such high memory nodes. We’ll also be trying to keep this up as new nodes are released once more! (Internal upgrade tests found some more errors in the last week, but it appears to be on the go). More will be reported on that front as/when we’ll be doing that.

Network Details

Node version: 0.104.18
Client version: 0.89.65
Faucet url:

We have 51 droplets running a total of 2001 nodes. One droplet has 2vcpu and 4GB of memory.

If you are a regular user, see the ‘quickstart’ section for getting up and running.

If you are a first-time user, or would like more information, see the ‘further information’ section.


If you already have safeup, you can obtain the client and node binaries:

safeup client --version 0.89.65
safeup node --version 0.104.18

Run a Node





Check local node’s reward balance

Your local node’s peer id will be printed to the terminal on startup with an example command). (You can also retrieve this from the node directory.)

safe wallet balance --peer-id="<local-node-peer-id>"

Connect to the Network as a Client


safe wallet get-faucet
safe files upload <directory-path>


safe wallet get-faucet
safe files upload <directory-path>

To do this with non-default batch-sizes (along with SAFE_PEERS set as above):

safe files upload --batch-size 40 <directory-path> 

40 being the integer value you want to set

Further Information

You can participate in the testnet either by connecting as a client or running your own node.

Connecting as a client requires the safe client binary; running a node requires the safenode binary.

Obtaining Binaries

We have a tool named safeup which is intended to make it easy to obtain the client, node, and other utility binaries.

Installing Safeup

On Linux/macOS, run the following command in your terminal:

curl -sSL https://raw.githubusercontent.com/maidsafe/safeup/main/install.sh | bash

On Windows, run the following command in a Powershell session (be careful to use Powershell, not cmd.exe):

iex (Invoke-RestMethod -Uri "https://raw.githubusercontent.com/maidsafe/safeup/main/install.ps1")

On either platform, you may need to restart your shell session for safeup to become available.

Installing Binaries

After obtaining safeup, you can install binaries like so:

safeup client # get the latest version of the client
safeup client --version 0.89.65 # get a specific version

safeup node # get the latest version of the node
safeup node --version 0.104.18 # get a specific version

safeup update # update all installed components to latest versions

When participating in our testnets, it is recommended to use a specific version. In our project we release a new version of the binaries every time we merge new code. This happens frequently, so over the lifetime of a testnet, many new releases will probably occur. So for participating in this particular testnet, you may not want the latest version.

The binaries are installed to ~/.local/bin on Linux and macOS, and on Windows they go to C:\Users\<username>\safe. Windows doesn’t really have a standard location for binaries that doesn’t require elevated privileges.

The safeup tool will modify the PATH variable on Linux/macOS, or the user Path variable on Windows. The effect of this is that the installed binaries will then become available in your shell without having to refer to them with their full paths. However, if you’re installing for the first time, you may need to start a new shell session for this change to be picked up.

Running a Node

You can participate in the testnet by running your own node. At the moment, you may not be successful if you’re running the node from your home machine. This is a situation we are working on. If you run from a cloud provider like Digital Ocean or AWS, you should be able to participate.

You can run the node process like so:

# Linux/macOS

# Windows

This will output all the logs to the filesystem, with the location of logs being platform specific:

# Linux
~/.local/share/safe/node/<peer id>/logs

# macOS
/Users/<username>/Library/Application Support/safe/node/<peer id>/logs

# Windows

If you wish, you can also provide your own path:

# Linux/macOS
SN_LOG=all safenode --log-output-dest <path>

# Windows
$env:SN_LOG = "all"; safenode --log-output-dest <path>

The advantage of using the predefined data-dir location is you can run multiple nodes on one machine without having to specify your own unique path for each node and manage that overhead yourself.

Connecting as a Client

You can use the safe client binary to connect as a client and upload or download files to/from the network.

Using the Client

You’ll first need to get some Safe Network Tokens:

safe wallet get-faucet

You can now proceed to use the client, by, e.g., uploading files:

safe files upload <directory-path>

To download that same content:

safe files download

This will download the files to the default location, which is platform specific:

# Linux

# macOS
/Users/<username>/Library/Application Support/safe/client/downloaded_files

# Windows

To download to a particular file or directory:

safe file download [directory/filename] [NetworkAddress]



If you’ve used previous versions of the network before and you find problems when running commands, you may want to consider clearing out previous data (worthless DBCs from previous runs, old logs, old keys, etc.).

# Linux
rm -rf ~/.local/share/safe

# macOS
rm -rf ~/Library/Application\ Support/safe

# Windows
rmdir /s C:\Users\<username>\AppData\Roaming\safe

If you encounter a problem running any of our binaries on Windows, it’s possible you need the Visual C++ Redistributable installed.


Off to the races! :wink: Uploading now.


BegBlag and southside tests are a pass :slight_smile:

"AnarchyInTheSouthside.mp3" c0893739a688b739aac5b75ac845b6c428c21b73dc782352bb1ad529495a87af
"BegBlagandSteal.mp3" 3509bad03dc869dec883c7b44662c3503d2517fa9e828bb64f4dbe719d3837bf

also a 2gb movie file went up in under 4 min at batch size 64 :slight_smile:
so the ducks are back

Iv set my nodes to join slowley this test net so ill have 21 nodes joining every 80 minutes untill 50 nodes per system.


if anyone wants to see how my nodes are doing they can be checked here NTracking


You should’ve called this divorceNet, releasing a test on valentines. :smile: you all are testing relationships here!




id forgotten about it so just as well this handy reminder came along :slight_smile:


I’m so in love with the testnet :two_hearts:


Now this a testnet you can fall in love with.


The year of the SolutionNetsTM continues


Roses are red, violets are blue
David’s jacket squeaks, we seem to have got rid of memory leaks…

I’ll get my coat…


Hey, anyone care to set up this chat @happybeing made?

I tried to, but ran into problem of:

could not find Cargo.toml in /home/xxx or any parent directory

I tried to find a fix for that, but it seems to be a rabbit hole too deep for my current time resources.


Seeing its Valentines day, heres the 67 US market only Stones compilation Flowers

Starting to chunk "Flowers/" now.
Chunking 12 files...
Uploading 86 chunks
*          Uploaded Files            *
"08 Please Go Home.m4a" df1056ce814819c7b2369e18a59ffa033746c5069ef7feea2830c0361c7436a7
"06 My Girl.m4a" 8f64ca8517b5183d4cc93df1ee2b504cbcd81c46de47de452ff4997d099e626b
"12 Sittin' On A Fence.m4a" 87519bba027d3496f988154f38cfc897ee0144a9cc6bc92b9632b652cd50344c
"09 Mother's Little Helper.m4a" ecfa8dd6ec97e72698288e5cfd228f23aac13bd6d12258191bfdeb950f74f297
"11 Ride On, Baby.m4a" fd2cd2802c0e336b00c2aff5cb1e1bf74ba0e229e1a51f94c1b6cf6fea9fb9b1
"03 Let's Spend The Night Together.m4a" da0499bdf33c0f2f08a58a1ea40574ab0d13a6a375e71f34a0c5c880acc2a020
"05 Out Of Time.m4a" e81c6a35c43375756baf6e8fdba78a86f24b0aa63bd6ea65018576a51cb92c8b
"10 Take It Or Leave It.m4a" af067a9c6a39d15466d6199155081a39eb18fc1def4b8ce2de909ea24b33e179
"04 Lady Jane.m4a" 24f918338dc214db7800917c0e64829a2a59c9f6bd4cef8a31686dbed9de095e
"01 Ruby Tuesday.m4a" d1637afda07d9d4b4e9b5e9fd85bf683171402fda2104476b40352c1bcfb1ef5
"02 Have You Seen Your Mother, Baby, Standing In The Shadow_.m4a" 08ef1474419124975abed6ce0cc17871f31e17062a503222fd45f8d79fc19dd2
"07 Back Street Girl.m4a" 65aefd6b5e49606aa0bc79ed36263e50a70317190f2327a48e49be15819b41bb

Thx 4 the testnet Maidsafe devs,

I hereby declare my love for the SAFE NETWORK and these kids that make it happens :heart_eyes: :kissing_heart: :smiling_face_with_three_hearts: :kissing: :heartpulse:

Keep hacking/testing super ants

Sorry love, most important now test :sweat_smile: :beer: :beers:


anyone else?

Installing safenode version 0.104.18...
  [########################################] 9.45 MiB/9.45 MiB
Error: Text file busy (os error 26)


Edit: just needed a good old reboot.


I think that means you had a node running so it can’t write to the executable.

@Toivo I realised on my walk you are not running from the safe_network directory, so try cd safe_network first and don’t forget to remove --local-discovery from the commands in the README.

root@dd1ff72c56a8:~# time safe files upload -p openSUSE-Tumbleweed-NET-x86_64-Current.iso 
Logging to directory: "/root/.local/share/safe/client/logs/log_2024-02-14_14-32-27"
Built with git version: 9615a81 / main / 9615a81
Instantiating a SAFE client...
Trying to fetch the bootstrap peers from https://sn-testnet.s3.eu-west-2.amazonaws.com/network-contacts
Connecting to the network with 48 peers
🔗 Connected to the Network                                                                                                                                                                                                "openSUSE-Tumbleweed-NET-x86_64-Current.iso" will be made public and linkable
Starting to chunk "openSUSE-Tumbleweed-NET-x86_64-Current.iso" now.
Chunking 1 files...
Uploading 547 chunks
⠤ [00:04:15] [#######################################>] 546/547                                                                                                                                                            Retrying failed chunks 1 ...
⠉ [00:04:23] [#######################################>] 546/547                                                                                                                                                            Retrying failed chunks 0 ...
*          Uploaded Files            *
"openSUSE-Tumbleweed-NET-x86_64-Current.iso" e0abdd3b4b2328a783091dd1f070c97b69884427a356c001fc62db05216ede65
Among 547 chunks, found 1 already existed in network, uploaded the leftover 546 chunks in 4 minutes 23 seconds
*          Payment Details           *
Made payment of 0.000329619 for 546 chunks
Made payment of 0.000057911 for royalties fees
New wallet balance: 199.999612470

real    5m27.776s
user    3m8.172s
sys     1m26.136s

So less than 6 minutes for 273MB = 0,758 MBps = 6,06 Mbps (I have a much better uplink, but still pretty good, I guess).


I am having a bit of a nightmare net here, I don’t think it is the actual network but nothing is working. nodes are not getting chunks, even after rm -rf ~/.local/share/safe old nodes remain. love is not in the air over here I tell you.


Well you already turned it off and on again so you’ve used up your premium support. :man_shrugging:


well the nodes remaining was me operating on too little sleep but as yet I have not discovered why my nodes are not getting chunks. @aatonnomicc did you notice a delay?

1 Like