Swarm proof-of-concept release 0.2


Here is a video showing you how to

This is based on the Swarm Guide and it is recommended that you look there if you have any problems.
All commands you see in the video are repeated below.

The commands used in the video are:

Installing golang and git


sudo apt install golang git

Preparing golang


mkdir ~/go
export GOPATH="$HOME/go"
echo 'export GOPATH="$HOME/go"' >> ~/.profile

Getting the sources


mkdir -p $GOPATH/src/github.com/ethereum
cd $GOPATH/src/github.com/ethereum
git clone https://github.com/ethereum/go-ethereum
cd go-ethereum
git checkout master
go get github.com/ethereum/go-ethereum

Compiling geth and swarm


go install -v ./cmd/geth
go install -v ./cmd/swarm

./go/bin/swarm version

Preparing and running geth and swarm


mkdir -p $HOME/Desktop/ethereum

$GOPATH/bin/geth --testnet --datadir=$HOME/Desktop/ethereum account new

$GOPATH/bin/geth --testnet --fast --datadir /home/swarm/Desktop/ethereum

$GOPATH/bin/swarm --bzzaccount ADDRESS-GOES-HERE --datadir $HOME/Desktop/ethereum/testnet --ethapi $HOME/Desktop/ethereum/geth.ipc

$HOME/go/bin/geth attach ipc:$HOME/go/bin/bzzd.ipc

Trying out local URLs


http://localhost:8500/bzz:/theswarm.test
http://localhost:8500/bzz:/1b5d887cea699d18560ae6dcaf06676f5064f630978b8031d9beb6fbddd82a82

http://localhost:8500/bzz:/album.test
The album app has moved to bzz:/photoalbum.eth

Registering a name


https://raw.githubusercontent.com/ethereum/ens/master/ensutils.js
http://faucet.ropsten.be:3001/

$HOME/go/bin/geth attach ipc:$HOME/go/bin/bzzd.ipc

loadScript('/home/swarm/Desktop/ensutils.js')

eth.accounts[0]

personal.unlockAccount(eth.accounts[0])
testRegistrar.register(web3.sha3('snowdogs'), eth.accounts[0], {from: eth.accounts[0]});

eth.accounts[0] == ens.owner(namehash('snowdogs.test'))

ens.setResolver(namehash('snowdogs.test'), publicResolver.address, {from: eth.accounts[0], gas: 100000});

publicResolver.setContent(namehash('snowdogs.test'), '0x <- important HASH-GOES-HERE', {from: eth.accounts[0], gas: 100000})

http://localhost:8500/bzz:/snowdogs.test
http://swarm-gateways.net/bzz:/snowdogs.test

http://localhost:8500/bzz:/explorer.test
The explorer has moved to bzz:/swarm-explorer.eth
http://localhost:8500/bzz:/explorer.test/#/snowdogs.test

So what is next for swarm?

Right now we are running connection test. Monitoring how swarm nodes connect up and share data. There are a lot of little things to iron out. Please play around, try things out. Find bug. Report issues on github.

Once the connections are more stable and reliable, we will be testing SWAP - the first installment of our incentive system.

As for development, a tentative roadmap can be found here
Please keep in touch with us on gitter, we'd love to hear from you.
Our Gitter Channel