Grin MimbleWimble on Linux Debian/Ubuntu
Short guide how to run own Grin node.
This guide is written for Debian 9 (should also work on another Linux distributions). Make sure, your security policy allows inbound and outbound connections for port 13413 (?), 13414 (grin server),13415 (wallet),13416 (stratum server — for mining).
Chain explorers https://grinscan.net/ or https://grinexplorer.net/
1. Install dependencies
set -ex && \
sudo apt-get update && \
sudo apt-get --no-install-recommends --yes install \
build-essential \
libgit2-dev \
clang \
libncurses5-dev \
libncursesw5-dev \
zlib1g-dev \
pkg-config \
libssl-dev \
llvm \
cmake \
git \
curl \
tmux
# Install Rust
curl https://sh.rustup.rs -sSf | sh -s -- -y
2. Download repository and build binary
git clone https://github.com/mimblewimble/grin.git
cd grin
cargo build --release
3. Edit .bash_profile
This will become handy, because you don't have to struggle with a path to binary again and again.
echo "export PATH=\"\$PATH:/home/$USER/grin/target/release\"" >> ~/.bash_profile
source ~/.bash_profile
4. Create a wallet
grin wallet init
Write down a seed and type down a strong password (not necessary on Floonet/Testnet). Remember, every important file is by default in “~/.grin” folder from now on. After this command, you can see “wallet_data” folder and “grin-wallet.toml”. By default is wallet available only from localhost, if you want to allow sending a coins, you have to allow external connections. Grin is different then other coins, to send a coins, you have to exchange data first. So let allow external connections to connect to our wallet.
sed -i 's/api_listen_interface = "127.0.0.1"/api_listen_interface = "0.0.0.0"/' ~/.grin/grin-wallet.toml
5. Run a Grin node
grin server run
This will start a Grin node, which will synchronise a Blockchain.

So now we can play with a wallet. Press Q and close the Grin server and start server as daemon.
grin server start
Now is Grin server running on background.
6. Send a tx
As i mentioned earlier, transactions in Grin are a little bit different. You can make the transaction by sending a file, through keybase or the simplest solution is through nodes communicating by http. We allowed a communication with other nodes in step 4. Now we start a wallet listener.
grin wallet listen
Add password. This is not really handy, so we left this window open and create a new tab in terminal. Thanks to Photon, you can ask for some free test Grin coins simply by running this command on your node.
curl gringod.infogrin wallet info

Now you can try to send 1 Grin to somebody else. -c means, how many confirmations you are accepting as enough. If you need to make small transfers, keep it on 0 confirmations.
grin wallet send -c 0 -d http://<IP>:<PORT> 1
if you don't have another server, just send it to me :)
grin wallet send -c 0 -d http://35.185.44.236:13415 1