Install Dogecoin Wallet on CentOS

Reading Time: 3 minutesDogecoin (Ɖ) is one of the many open-source cryptocurrencies that has penetrated the post-Bitcoin marketplace. As of February 2014, Dogecoin rates fifth (5th) in market capitalization among Bitcoin, Litecoin, and all other cryptocurrencies (source). This particular coin’s name is based on the “doge” meme, a slang term for “dog”. Dogecoin is a fork of LiteCoin (presently third in market capitalization) and is based on the scrypt cryptographic algorithm, instead of being SHA-2-based like Bitcoin. The fact that Dogecoin is scrypt-based means that you can still actually mine Dogecoin with your Graphics Card or CPU (or Liquid Web server). Without further delay… to the moon!
Pre-Flight Check
  • These instructions are intended for installing the daemon program for Dogecoin, dogecoind. This daemon allows for interaction with the Dogecoin blockchain to accomplish many different tasks, such as: creating a wallet, sending and receiving Ɖ, and even mining for new Ɖ coins. This tutorial is specifically for installing the headless (non-GUI) version system-wide on a single CentOS 6 node.
  • I’ll be working from a Liquid Web Core Managed CentOS 6.5 server, and I’ll be logged in as root.
Step #1: Installing the Dependencies
First, you’ll follow a simple best practice: ensuring the existing packages are up to date before installing anything new. yum update Then, you’ll install some of the required dependencies that won’t need to be compiled from source. yum -y groupinstall "Development Tools" yum -y install zlib-devel bzip2-devel wget python-devel echo '/usr/local/lib' > /etc/ld.so.conf.d/usr_local_lib.conf && /sbin/ldconfig echo '/usr/local/lib64' > /etc/ld.so.conf.d/usr_local_lib64.conf && /sbin/ldconfig
Step #2: Installing OpenSSL
The current version of OpenSSL in CentOS is 1.0.1e, which is only one release behind (as of February 2014). This version, unfortunately, will not work with dogecoind because it doesn’t include all of the required components.
Note: This crippled version of OpenSSL is the bane of many people trying to install modern programs on RHEL-Based distributions (such as CentOS).
For the purposes of this tutorial, you’ll install the most current version (openssl-1.0.1f) concurrently with the system version. cd /usr/local/src wget -qO- http://www.openssl.org/source/openssl-1.0.1f.tar.gz | tar xzv cd openssl-1.0.1f ./config shared --prefix=/usr/local --openssldir=/usr/local/ssl make && make install
Step #3: Installing Boost (A Collection of C++ Libraries)
cd /usr/local/src wget -qO- http://downloads.sourceforge.net/boost/boost_1_55_0.tar.bz2 | tar xjv cd boost_1_55_0/ ./bootstrap.sh --prefix=/usr/local ./b2 install --with=all
Step #4: Installing BerkeleyDB (A Library for High-Performance Database Functionality)
cd /usr/local/src wget -qO- http://download.oracle.com/berkeley-db/db-5.1.19.tar.gz | tar xzv cd db-5.1.19/build_unix ../dist/configure --prefix=/usr/local --enable-cxx make && make install
Step #5: Installing dogecoind
cd /usr/local/src ldconfig mkdir /usr/local/src/dogecoin-master cd /usr/local/src/dogecoin-master wget -qO- https://github.com/dogecoin/dogecoin/archive/master-1.5.tar.gz --no-check-certificate | tar xzv --strip-components 1 cd src make -f makefile.unix USE_UPNP=- BDB_LIB_PATH=/usr/local/lib OPENSSL_LIB_PATH=/usr/local/lib64 The dogecoind binary should now be compiled. Next we’ll strip the debugging symbols out of the binary and move it to a location that allows for easy execution. strip dogecoind cp -a dogecoind /usr/local/bin/
Step #6: Configuring dogecoind
Most scrypt-based cryptocurrencies use a configuration file that is nearly identical to LiteCoin’s. It is generally safe to use Litecoin documentation when looking up configuration variables. If you do not have a standard non-root user, then you can create one using the useradd command. In this example we’re going to create a user named doge. useradd -m -s/bin/bash doge Assume the identity of the non-privileged user, doge. su - doge Now that you’ve assumed the identity of a non-privileged user, you will want to run dogecoind for the first time. dogecoind Sample Output: [doge@doge01 ~]$ dogecoind Error: To use dogecoind, you must set a secure rpcpassword in the configuration file: /home/doge/.dogecoin/dogecoin.conf It is recommended you use the following random password: rpcuser=dogecoinrpc rpcpassword=G2AYeU66DQdChULRNgBn6AnqbezNkGHChTULLykx1Tuw (you do not need to remember this password) The username and password MUST NOT be the same. If the file does not exist, create it with owner-readable-only file permissions. It is also recommended to set alertnotify so you are notified of problems; for example: alertnotify=echo %s | mail -s "Dogecoin Alert" admin@foo.com The first run of dogecoind as a user (doge , in this case) will generate the required directory and files. You’ll now fetch a basic configuration file and modify it to suit your needs. cd ~/.dogecoin wget https://raw.github.com/dogecoin/dogecoin/master-1.5/release/dogecoin.conf This file contains nothing more than a few current nodes, so you will need to modify it. Again, it is generally safe to use Litecoin documentation when looking up configuration variables. For a refresher on editing files with vim see: New User Tutorial: Overview of the Vim Text Editor
Additional Reading:
And a video for your enjoyment:
Refer a friend and get hosting credit!