EDIT: Updated on July 5th, 2016 to update versions. For all of us "feeling forgotten" OS X users, I thought I'd put together a guide for setting up a remote Linux masternode using a local OS X - based wallet. Enough said... let's get started. Step 1: Make sure you've downloaded and installed the latest Qt wallet from the Dash.org website on your local OSX computer I'm not going to walk you through these steps, because if you can't download and open a dmg file and drag the contents to your application folder, you have no business operating a masternode... Doh!!! Damn it, I wasn't going to walk you through that! :tongue: Step 2: Make sure all of the following is completed I'm assuming you've already done the following - Opened your Dash Qt and allowed it to fully sync, encrypted it, and backed it up... do this before depositing any Dash into your wallet - Created a hardened 64-bit Linux instance on your favorite server hosting service such as AWS, Vultr, or some other service. You should have secured the necessary ports, created tough logins, etc. If you have not yet done this, there are plenty of other guides here that walk you through the steps, so I'm not going to recreate the wheel here. I particularly like SocioMind's excellent thread and associated guide here, but feel free to use others - https://dashtalk.org/threads/comple...e-for-noobs-and-experienced-users-alike.1609/ Step 3: Relocate dashd to the proper folder on your Mac By default, when you download the Qt, dashd is stored in your "downloads" file folder. This obviously isn't a great place for it. So if you haven't done so already, you'll want to move the file to your dash support folder. Make sure Dash is shut down. Open the terminal utility (which can be found in Utilities folder inside the Applications folder), and enter the following into the command line to move dashd to the Dash support folder Code: cd ~ cd ~/Downloads mv dashd ~/Library/Application\ Support/Dash Leave the Terminal window open. You will need it later. Step 4: Reopen the Dash application and get a new address and MN private key Once the Dash application is open, go up to the menu and click on "Tools" and select "Debug console". A new window should appear with the "Console" tab selected at the top. Enter the following into the command line at the bottom. Code: masternode genkey Copy the string of characters to another application like Word or Notes. You will need that string later. Now you need an address for your masternode. Get one by going to the "File" menu, click on "Receiving addresses", and click "New". You can then label the address (e.g., "MN01"). You will need a different address for each masternode you plan to create. Step 5: Put 1000 Dash in your new address You need to fund your zero address with 1000 Dash before you can activate your MN. It must be one transaction of exactly 1000 Dash. No, you cannot send more than 1000 Dash. No, you cannot send 999.99 Dash. No, you cannot put in 1 Dash first and then 999 Dash. It must be all at once. If you want to test the address first, fine, but you will still need to send 1000 Dash later all in one transaction. No, if you have 1000 Dash in the wallet already, that doesn't count... you must send it to yourself by sending it to your new address. Step 6: While we are waiting for the needed 6 confirmations of our 1000 Dash transfer, we can now prepare the remote server Once logged in, download the current set of Dash files. Code: cd ~ wget https://www.dash.org/binaries/dash-0.12.0.58-linux64.tar.gz Unpack the contents of the file, copy dashd, and dash-cli and then set permissions. Code: tar xfvz dash-0.12.0.58-linux64.tar.gz cp dash-0.12.0/bin/dashd dashd cp dash-0.12.0/bin/dash-cli dash-cli chmod 755 dashd Before we launch dashd, we need to create a configuration file. Code: mkdir .dash cd .dash nano dash.conf Once open, you'll want to insert the following text. Code: rpcuser=<enter any user name> rpcpassword=<enter any long password> rpcallowip=127.0.0.1 listen=1 server=1 daemon=1 logtimestamps=1 maxconnections=256 masternode=1 masternodeprivkey=<enter your masternode key which you generated earlier> You now want to hit ctrl+x to exit and make sure to save as "dash.conf". Now that you have a config file, you can launch dashd. Code: cd ~ ./dashd <wait 15 seconds> ./dash-cli getinfo If you run the "getinfo" command several times, you should see that the number of blocks is increasing. The number of blocks must eventually catch up to the current blockchain before your masternode is active. You can check if the number of blocks is up to the current height by comparing to the current number of blocks reported on one of the many Dash blockchain explorers... there are several listed on the dash.org website. However, we don't need to wait for that to complete for us to move on to the next steps, so let's keep going while the blockchain continues to download. Step 7: Remove unneeded files and folders from our download We are done with the installation files and folders, so those can be removed. Code: ls rm -rf dash-0.12.0 rm dash-0.12.0.58-linux64.tar.gz Step 8: Go back to your Mac's Terminal and create configuration files Back in Terminal on our local machine, we need to create a config file. Make sure that Dash wallet is closed. Code: cd ~/Library/Application\ Support/Dash nano dash.conf This should bring up a GNU session that is blank (unless you already had a conf file created). In any case, make sure it has the following text. Code: rpcuser=<enter a username of your choosing> rpcpassword=<enter a really long string of random characters> rpcallowip=127.0.0.1 listen=0 server=1 daemon=1 logtimestamps=1 maxconnections=8 You now want to hit ctrl+x to exit and make sure to save as "dash.conf". We will also need a masternode.conf file. After saving the dash.conf file, you should be back at the Terminal command in the Dash folder. Code: nano masternode.conf This should bring up a new GNU session. You will need to select a name or "alias" for each of your masternodes. In the example below, I have chosen "MN01", but you can name it whatever you want. Populate the file with the following: Code: MN01 <IP Address of your remote masternode>:9999 <masternode private key generated earlier> <hash of the 1000 Dash deposit> <index number of the deposit> The tricky part here is identifying the transaction ID and index of your 1000 Dash deposit, but it is really easy using most block explorers. There are two simple ways to find it. The first way is to enter the receiving address for your masternode that you deposited your 1000 Dash into, click on the "hash" of the 1000 Dash transaction you just completed, and you should see the transaction listed under "outputs" with an index number. Use this hash and index number for your masternode.conf file. A second method is to use the Qt wallet to determine the transaction ID (a.k.a., "hash"). Click on the transactions tab and double click on the 1000 Dash transaction. It should be the most recent transaction and listed as "Payment to yourself". Copy the "Transaction ID" without the "-" and three numbers on the far right, and paste that into a block explorer. You'll see the address with the 1000 Dash deposit and an index number. You will need a separate line for each masternode in the masternode.conf file. But you may add as many masternodes to the same wallet and the masternode.conf file as you wish. Exit and save the file and close your Dash-qt file. You will need to open it with the configuration files saved before it will open with those settings and masternode data. Step 9: Start your masternode(s) Now launch the Dash Qt and reopen a console session. Enter the following to activate your remote masternode. Code: walletpassphrase <enter passphrase> 60 masternode start-alias <alias of the masternode you are starting> You should get a message saying "started masternode successfully". To double check, go back to your remote server and enter the following. Code: ./dash-cli masternode list full | grep <your MN IP address> If your address comes up with "ENABLED" in the string, you've done everything correct. Congratulations! If it doesn't show enabled, don't panic yet. The blockchain must fully download on the remote server before it becomes active. You can check the status of the blockchain download by running the "getinfo" command repeatedly until it is fully caught up to the current number of blocks. Once it is caught up, give it a minute and try again to see if it shows as "ENABLED". Hopefully, I remembered all the steps, but let me know if you have any issues.