Compile Bitcoin Core from Source on Ubuntu - Bitzuma
Compile Bitcoin Core from Source on Ubuntu - Bitzuma
How to compile Bitcoin Core with wallet, from source, on ...
How to Compile Bitcoin Source Code in Ubuntu 16.04 LTS
COMPILE BITCOIN WALLET UBUNTU – Dadniza45
How do I cross-compile a wallet for Windows? article ...
Gridcoin 22.214.171.124-Mandatory "Fern" Release
https://github.com/gridcoin-community/Gridcoin-Research/releases/tag/126.96.36.199 Finally! After over ten months of development and testing, "Fern" has arrived! This is a whopper. 240 pull requests merged. Essentially a complete rewrite that was started with the scraper (the "neural net" rewrite) in "Denise" has now been completed. Practically the ENTIRE Gridcoin specific codebase resting on top of the vanilla Bitcoin/Peercoin/Blackcoin vanilla PoS code has been rewritten. This removes the team requirement at last (see below), although there are many other important improvements besides that. Fern was a monumental undertaking. We had to encode all of the old rules active for the v10 block protocol in new code and ensure that the new code was 100% compatible. This had to be done in such a way as to clear out all of the old spaghetti and ring-fence it with tightly controlled class implementations. We then wrote an entirely new, simplified ruleset for research rewards and reengineered contracts (which includes beacon management, polls, and voting) using properly classed code. The fundamentals of Gridcoin with this release are now on a very sound and maintainable footing, and the developers believe the codebase as updated here will serve as the fundamental basis for Gridcoin's future roadmap. We have been testing this for MONTHS on testnet in various stages. The v10 (legacy) compatibility code has been running on testnet continuously as it was developed to ensure compatibility with existing nodes. During the last few months, we have done two private testnet forks and then the full public testnet testing for v11 code (the new protocol which is what Fern implements). The developers have also been running non-staking "sentinel" nodes on mainnet with this code to verify that the consensus rules are problem-free for the legacy compatibility code on the broader mainnet. We believe this amount of testing is going to result in a smooth rollout. Given the amount of changes in Fern, I am presenting TWO changelogs below. One is high level, which summarizes the most significant changes in the protocol. The second changelog is the detailed one in the usual format, and gives you an inkling of the size of this release.
Note that the protocol changes will not become active until we cross the hard-fork transition height to v11, which has been set at 2053000. Given current average block spacing, this should happen around October 4, about one month from now. Note that to get all of the beacons in the network on the new protocol, we are requiring ALL beacons to be validated. A two week (14 day) grace period is provided by the code, starting at the time of the transition height, for people currently holding a beacon to validate the beacon and prevent it from expiring. That means that EVERY CRUNCHER must advertise and validate their beacon AFTER the v11 transition (around Oct 4th) and BEFORE October 18th (or more precisely, 14 days from the actual date of the v11 transition). If you do not advertise and validate your beacon by this time, your beacon will expire and you will stop earning research rewards until you advertise and validate a new beacon. This process has been made much easier by a brand new beacon "wizard" that helps manage beacon advertisements and renewals. Once a beacon has been validated and is a v11 protocol beacon, the normal 180 day expiration rules apply. Note, however, that the 180 day expiration on research rewards has been removed with the Fern update. This means that while your beacon might expire after 180 days, your earned research rewards will be retained and can be claimed by advertising a beacon with the same CPID and going through the validation process again. In other words, you do not lose any earned research rewards if you do not stake a block within 180 days and keep your beacon up-to-date. The transition height is also when the team requirement will be relaxed for the network.
Besides the beacon wizard, there are a number of improvements to the GUI, including new UI transaction types (and icons) for staking the superblock, sidestake sends, beacon advertisement, voting, poll creation, and transactions with a message. The main screen has been revamped with a better summary section, and better status icons. Several changes under the hood have improved GUI performance. And finally, the diagnostics have been revamped.
The wallet sync speed has been DRASTICALLY improved. A decent machine with a good network connection should be able to sync the entire mainnet blockchain in less than 4 hours. A fast machine with a really fast network connection and a good SSD can do it in about 2.5 hours. One of our goals was to reduce or eliminate the reliance on snapshots for mainnet, and I think we have accomplished that goal with the new sync speed. We have also streamlined the in-memory structures for the blockchain which shaves some memory use. There are so many goodies here it is hard to summarize them all. I would like to thank all of the contributors to this release, but especially thank @cyrossignol, whose incredible contributions formed the backbone of this release. I would also like to pay special thanks to @barton2526, @caraka, and @Quezacoatl1, who tirelessly helped during the testing and polishing phase on testnet with testing and repeated builds for all architectures. The developers are proud to present this release to the community and we believe this represents the starting point for a true renaissance for Gridcoin!
Most significantly, nodes calculate research rewards directly from the magnitudes in EACH superblock between stakes instead of using a two- or three- point average based on a CPID's current magnitude and the magnitude for the CPID when it last staked. For those long-timers in the community, this has been referred to as "Superblock Windows," and was first done in proof-of-concept form by @denravonska.
Network magnitude unit pinned to a static value of 0.25
Max research reward allowed per block raised to 16384 GRC (from 12750 GRC)
New CPIDs begin accruing research rewards from the first superblock that contains the CPID instead of from the time of the beacon advertisement
500 GRC research reward limit for a CPID's first stake
6-month expiration for unclaimed rewards
10-block spacing requirement between research reward claims
Rolling 5-day payment-per-day limit
Legacy tolerances for floating-point error and time drift
The need to include a valid copy of a CPID's magnitude in a claim
10-block emission adjustment interval for the magnitude unit
One-time beacon activation requires that participants temporarily change their usernames to a verification code at one whitelisted BOINC project
Verification codes of pending beacons expire after 3 days
Self-service beacon removal
Burn fee for beacon advertisement increased from 0.00001 GRC to 0.5 GRC
Rain addresses derived from beacon keys instead of a default wallet address
Beacon expiration determined as of the current block instead of the previous block
The ability for developers to remove beacons
The ability to sign research reward claims with non-current but unexpired beacons
As a reminder:
Beacons expire after 6 months pass (180 days)
Beacons can be renewed after 5 months pass (150 days)
Renewed beacons must be signed with the same key as the original beacon
Magnitudes less than 1 include two fractional places
Magnitudes greater than or equal to 1 but less than 10 include one fractional place
A valid superblock must match a scraper convergence
Superblock popularity election mechanics
Yes/no/abstain and single-choice response types (no user-facing support yet)
To create a poll, a maximum of 250 UTXOs for a single address must add up to 100000 GRC. These are selected from the largest downwards.
Burn fee for creating polls scaled by the number of UTXOs claimed
50 GRC for a poll contract
0.001 GRC per claimed UTXO
Burn fee for casting votes scaled by the number of UTXOs claimed
0.01 GRC for a vote contract
0.01 GRC to claim magnitude
0.01 GRC per claimed address
0.001 GRC per claimed UTXO
Maximum length of a poll title: 80 characters
Maximum length of a poll question: 100 characters
Maximum length of a poll discussion website URL: 100 characters
Maximum number of poll choices: 20
Maximum length of a poll choice label: 100 characters
Magnitude, CPID count, and participant count poll weight types
The ability for developers to remove polls and votes
[188.8.131.52] 2020-09-03, mandatory, "Fern"
Backport newer uint256 types from Bitcoin #1570 (@cyrossignol)
Implement project level rain for rainbymagnitude #1580 (@jamescowens)
Upgrade utilities (Update checker and snapshot downloadeapplication) #1576 (@iFoggz)
Provide fees collected in the block by the miner #1601 (@iFoggz)
Add support for generating legacy superblocks from scraper stats #1603 (@cyrossignol)
Port of the Bitcoin Logger to Gridcoin #1600 (@jamescowens)
Implement zapwallettxes #1605 (@jamescowens)
Implements a global event filter to suppress help question mark #1609 (@jamescowens)
Add next target difficulty to RPC output #1615 (@cyrossignol)
Add caching for block hashes to CBlock #1624 (@cyrossignol)
Make toolbars and tray icon red for testnet #1637 (@jamescowens)
Add an rpc call convergencereport #1643 (@jamescowens)
Implement newline filter on config file read in #1645 (@jamescowens)
Implement beacon status icon/button #1646 (@jamescowens)
Add gridcointestnet.png #1649 (@caraka)
Add precision to support magnitudes less than 1 #1651 (@cyrossignol)
Replace research accrual calculations with superblock snapshots #1657 (@cyrossignol)
Publish example gridcoinresearch.conf as a md document to the doc directory #1662 (@jamescowens)
Add options checkbox to disable transaction notifications #1666 (@jamescowens)
Add support for self-service beacon deletion #1695 (@cyrossignol)
Add support for type-specific contract fee amounts #1698 (@cyrossignol)
Add verifiedbeaconreport and pendingbeaconreport #1696 (@jamescowens)
Add preliminary testing option for block v11 height on testnet #1706 (@cyrossignol)
Add verified beacons manifest part to superblock validator #1711 (@cyrossignol)
Implement beacon, vote, and superblock display categories/icons in UI transaction model #1717 (@jamescowens)
Make your own stakebox. Ultimate beginners guide how to compile any wallet on AARCH64 (Raspbery pi and other SBC)
I contemplated to wrote this for a long time, so it's finally time. As you know a lot of altcoins uses PoS (Proof-of-stake) way of "mining" coins. Which basically means, that you hold coins on your unlocked wallet and you are receiving stakes as a reward. This requires very little power and it can bring you a lot of rewards, at just 10W from the wall. So first I am using latest Raspbian on RPI4B 4GB in this example.Setting up Raspbian is not part of this process since it's very well documented. I recommend to change user from pi to something else due to security concerns and you can also do other stuff just search "security Raspberry PI" and you find a lot of articles, but this is not the focus of this guide. I know there are a lot of guides on the internet, but I am using like 5 sources, so it's compiled what other people wrote and some of my research. I am using AnyDesk insted of SSH or VNC server, because it works it's ligthweit and it just works. So after you see the gui of Raspbian, just launch terminal (CTRL + ALT + T) and do basic thing: sudo apt-get update && sudo apt-get upgrade Than press Y and let it run, after is finished, we need to prepare so dependency packages. Since most of the wallets using Berkeley DB 4.8 we need to obtain it. So in terminal wrote:
cd cd Downloads wget http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz tar -xzvf db-4.8.30.NC.tar.gz cd db-4.8.30.NC/build_unix ../dist/configure --enable-cxx make sudo make install
So wait unti it's finished and than you can delete files in Downloads folder in gui or use:
Watch the output folder which it creates, it's stated in the first two lines and copy then by highliting the text and CTRL+SHIFT+C copy it to your clipboard.
cd Streamies (this is that git created folder) ./autogen.sh ./configure CPPFLAGS="-I/uslocal/BerkeleyDB.4.8/include -O2" LDFLAGS="-L/uslocal/BerkeleyDB.4.8/lib" sudo make (this could take hours) sudo make install
And you are done, files is going to be in folder /uslocal/bin (DO NOT delete git created folder, because you are going to need it for faster compiling, when wallet get's and update.)
Now you can list files by:
And then you can copy/move them where ever you want by using:
sudo mv * [destination full path]
Let it run and go back to folder where you move those files.
sudo chmod +x streamies-qt (since we want to run wallet)
In most cases compiled files are going to in format of "shared library" so we need to create script to run it. Open up a text editor from gui or through nano. And paste this to that file:
And save it as a sh file, for example run.sh. Then we need to make it runnable so:
sudo chmod +x run.sh
Now to run it, it's just:
And here we are glorious GUI wallet appears and you are done, you can paste blockchain, wallet.dat from other sources, so this migration is pretty easy and you, if you have it on for exaple flash disk. So this is basic how to compile QT wallets on AARCH64. I am running 7 wallets, 2 of those are Masternodes and RPI 4B 4GB would handle way more, I am at best on half of my RAM. Some wallets need more package, but it's not much of and issue, since compiling stops and you just copy paste nape which is missing put it in the google and add "apt-get" after the name of package and you are going to see, what is the name of the packages so it can be retreived from package assinstant aka apt-get. So basically:
sudo apt-get install [package name]
Then press y and again wrote:
This process is going to continue where it was left off, so nothing is going to run from beginning. Updating wallets is basically exactly same, just repeat steps from "git clone" and after that proceed as it was written above. So I hope this helps some of you, to use this at home and not on some VPS, if you are anxious as me, to host my wallets on remote server.
What is the "It just works" method to use Lightning network? Details in Description
Update: I was able to get a complete lightning node running on my system with GUI wallet. Have to clean up a few dependencies but will post again with commands with all dependencies for anyone who needs help. I am already running a full Bitcoin node on my Ubuntu system. I wish to start using Lightning network but the current methods are too complex, work on CLI only and some don't compile. My requirements are to use the existing full node and run a lightning node on the same system. It should have a GUI for ease of use. Any documentation with steps is welcome. Bonus question: Is it possible to run the lightning node on my desktop and have a wallet on my phone? This way, I can expose the lightning node port over the Internet and use it with my android lightning wallet. Thanks in advance. I hope this is possible.
However, I didn't use --bitcoin.testnet. I used --bitcoin.mainnet instead. Is that ok? Are there any drawbacks to this? I can confirm that the wallet was created in ~/.lnd/data/chain/bitcoin/mainnet/ Also, my bitcoin.conf file has testnet=0. I haven't done anything else yet.
How to get Energi Wallet running on Raspberry Pi 4
Hello, I'm new to the Raspberry Pi and trying to get the NRG Core Cryptocurrency wallet running on my Raspberry. Finally I was able to compile the files after this commands: Download and install the newest updates sudo apt-get update && sudo apt-get upgrade Install the following major dependencies packages sudo apt-get install git build-essential libtool autotools-dev autoconf pkg-config libssl-dev libcrypto++-dev libevent-dev libminiupnpc-dev libgmp-dev libboost-all-dev devscripts libdb++-dev libsodium-dev Install the following QT dependencies packages sudo apt-get install libqt5gui5 libqt5core5a libqt5dbus5 qttools5-dev qttools5-dev-tools libprotobuf-dev protobuf-compiler libcrypto++-dev libminiupnpc-dev qt5-default Install bitcoin PPA files cd /etc/apt/sources.list.d/ sudo nano bitcoin.list Add this line to the file: deb-srchttp://ppa.launchpad.net/bitcoin/bitcoin/ubuntuartful main Close file sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv C70EF1F0305A1ADB9986DBD8D46F45428842CE5E sudo apt-get update Clone Github cdgitclonehttps://github.com/energicryptocurrency/energi.git Install Libdb4.8Libdb4.8-devLibdb++Libdb4.8++-dev Compile the wallet cdenergi./autogen.sh./configure --with-boost-libdir=/uslib/arm-linux-gnueabihfmakesudo makeinstall After compiling I see the files in /uslocal/bin https://preview.redd.it/25m1nm8164k41.jpg?width=2016&format=pjpg&auto=webp&s=3dfec55b307187eea06a279e284a19a6ae5d6d37 No I need to know how to use this files? Can someone help me please?
Dear Groestlers, it goes without saying that 2020 has been a difficult time for millions of people worldwide. The groestlcoin team would like to take this opportunity to wish everyone our best to everyone coping with the direct and indirect effects of COVID-19. Let it bring out the best in us all and show that collectively, we can conquer anything. The centralised banks and our national governments are facing unprecedented times with interest rates worldwide dropping to record lows in places. Rest assured that this can only strengthen the fundamentals of all decentralised cryptocurrencies and the vision that was seeded with Satoshi's Bitcoin whitepaper over 10 years ago. Despite everything that has been thrown at us this year, the show must go on and the team will still progress and advance to continue the momentum that we have developed over the past 6 years. In addition to this, we'd like to remind you all that this is Groestlcoin's 6th Birthday release! In terms of price there have been some crazy highs and lows over the years (with highs of around $2.60 and lows of $0.000077!), but in terms of value– Groestlcoin just keeps getting more valuable! In these uncertain times, one thing remains clear – Groestlcoin will keep going and keep innovating regardless. On with what has been worked on and completed over the past few months.
UPDATED - Groestlcoin Core 2.18.2
This is a major release of Groestlcoin Core with many protocol level improvements and code optimizations, featuring the technical equivalent of Bitcoin v0.18.2 but with Groestlcoin-specific patches. On a general level, most of what is new is a new 'Groestlcoin-wallet' tool which is now distributed alongside Groestlcoin Core's other executables. NOTE: The 'Account' API has been removed from this version which was typically used in some tip bots. Please ensure you check the release notes from 2.17.2 for details on replacing this functionality.
Builds are now done through Gitian
Calls to getblocktemplate will fail if the segwit rule is not specified. Calling getblocktemplate without segwit specified is almost certainly a misconfiguration since doing so results in lower rewards for the miner. Failed calls will produce an error message describing how to enable the segwit rule.
A warning is printed if an unrecognized section name is used in the configuration file. Recognized sections are [test], [main], and [regtest].
Four new options are available for configuring the maximum number of messages that ZMQ will queue in memory (the "high water mark") before dropping additional messages. The default value is 1,000, the same as was used for previous releases.
The rpcallowip option can no longer be used to automatically listen on all network interfaces. Instead, the rpcbind parameter must be used to specify the IP addresses to listen on. Listening for RPC commands over a public network connection is insecure and should be disabled, so a warning is now printed if a user selects such a configuration. If you need to expose RPC in order to use a tool like Docker, ensure you only bind RPC to your localhost, e.g. docker run [...] -p 127.0.0.1:1441:1441 (this is an extra :1441 over the normal Docker port specification).
The rpcpassword option now causes a startup error if the password set in the configuration file contains a hash character (#), as it's ambiguous whether the hash character is meant for the password or as a comment.
The whitelistforcerelay option is used to relay transactions from whitelisted peers even when not accepted to the mempool. This option now defaults to being off, so that changes in policy and disconnect/ban behavior will not cause a node that is whitelisting another to be dropped by peers.
A new short about the JSON-RPC interface describes cases where the results of anRPC might contain inconsistencies between data sourced from differentsubsystems, such as wallet state and mempool state.
A new document introduces Groestlcoin Core's BIP174 interface, which is used to allow multiple programs to collaboratively work to create, sign, and broadcast new transactions. This is useful for offline (cold storage) wallets, multisig wallets, coinjoin implementations, and many other cases where two or more programs need to interact to generate a complete transaction.
The output script descriptor (https://github.com/groestlcoin/groestlcoin/blob/mastedoc/descriptors.md) documentation has been updated with information about new features in this still-developing language for describing the output scripts that a wallet or other program wants to receive notifications for, such as which addresses it wants to know received payments. The language is currently used in multiple new and updated RPCs described in these release notes and is expected to be adapted to other RPCs and to the underlying wallet structure.
A new --disable-bip70 option may be passed to ./configure to prevent Groestlcoin-Qt from being built with support for the BIP70 payment protocol or from linking libssl. As the payment protocol has exposed Groestlcoin Core to libssl vulnerabilities in the past, builders who don't need BIP70 support are encouraged to use this option to reduce their exposure to future vulnerabilities.
The minimum required version of Qt (when building the GUI) has been increased from 5.2 to 5.5.1 (the depends system provides 5.9.7)
getnodeaddresses returns peer addresses known to this node. It may be used to find nodes to connect to without using a DNS seeder.
listwalletdir returns a list of wallets in the wallet directory (either the default wallet directory or the directory configured bythe -walletdir parameter).
getrpcinfo returns runtime details of the RPC server. Currently, it returns an array of the currently active commands and how long they've been running.
deriveaddresses returns one or more addresses corresponding to an output descriptor.
getdescriptorinfo accepts a descriptor and returns information aboutit, including its computed checksum.
joinpsbts merges multiple distinct PSBTs into a single PSBT. The multiple PSBTs must have different inputs. The resulting PSBT will contain every input and output from all the PSBTs. Any signatures provided in any of the PSBTs will be dropped.
analyzepsbt examines a PSBT and provides information about what the PSBT contains and the next steps that need to be taken in order to complete the transaction. For each input of a PSBT, analyze psbt provides information about what information is missing for that input, including whether a UTXO needs to be provided, what pubkeys still need to be provided, which scripts need to be provided, and what signatures are still needed. Every input will also list which role is needed to complete that input, and analyzepsbt will also list the next role in general needed to complete the PSBT. analyzepsbt will also provide the estimated fee rate and estimated virtual size of the completed transaction if it has enough information to do so.
utxoupdatepsbt searches the set of Unspent Transaction Outputs (UTXOs) to find the outputs being spent by the partial transaction. PSBTs need to have the UTXOs being spent to be provided because the signing algorithm requires information from the UTXO being spent. For segwit inputs, only the UTXO itself is necessary. For non-segwit outputs, the entire previous transaction is needed so that signers can be sure that they are signing the correct thing. Unfortunately, because the UTXO set only contains UTXOs and not full transactions, utxoupdatepsbt will only add the UTXO for segwit inputs.
getpeerinfo now returns an additional minfeefilter field set to the peer's BIP133 fee filter. You can use this to detect that you have peers that are willing to accept transactions below the default minimum relay fee.
The mempool RPCs, such as getrawmempool with verbose=true, now return an additional "bip125-replaceable" value indicating whether thetransaction (or its unconfirmed ancestors) opts-in to asking nodes and miners to replace it with a higher-feerate transaction spending any of the same inputs.
settxfee previously silently ignored attempts to set the fee below the allowed minimums. It now prints a warning. The special value of"0" may still be used to request the minimum value.
getaddressinfo now provides an ischange field indicating whether the wallet used the address in a change output.
importmulti has been updated to support P2WSH, P2WPKH, P2SH-P2WPKH, and P2SH-P2WSH. Requests for P2WSH and P2SH-P2WSH accept an additional witnessscript parameter.
importmulti now returns an additional warnings field for each request with an array of strings explaining when fields are being ignored or are inconsistent, if there are any.
getaddressinfo now returns an additional solvable Boolean field when Groestlcoin Core knows enough about the address's scriptPubKey, optional redeemScript, and optional witnessScript for the wallet to be able to generate an unsigned input spending funds sent to that address.
The getaddressinfo, listunspent, and scantxoutset RPCs now return an additional desc field that contains an output descriptor containing all key paths and signing information for the address (except for the private key). The desc field is only returned for getaddressinfo and listunspent when the address is solvable.
importprivkey will preserve previously-set labels for addresses or public keys corresponding to the private key being imported. For example, if you imported a watch-only address with the label "coldwallet" in earlier releases of Groestlcoin Core, subsequently importing the private key would default to resetting the address's label to the default empty-string label (""). In this release, the previous label of "cold wallet" will be retained. If you optionally specify any label besides the default when calling importprivkey, the new label will be applied to the address.
getmininginfo now omits currentblockweight and currentblocktx when a block was never assembled via RPC on this node.
The getrawtransaction RPC & REST endpoints no longer check the unspent UTXO set for a transaction. The remaining behaviors are as follows:
If a blockhash is provided, check the corresponding block.
If no blockhash is provided, check the mempool.
If no blockhash is provided but txindex is enabled, also check txindex.
unloadwallet is now synchronous, meaning it will not return until the wallet is fully unloaded.
importmulti now supports importing of addresses from descriptors. A desc parameter can be provided instead of the "scriptPubKey" in are quest, as well as an optional range for ranged descriptors to specify the start and end of the range to import. Descriptors with key origin information imported through importmulti will have their key origin information stored in the wallet for use with creating PSBTs.
listunspent has been modified so that it also returns witnessScript, the witness script in the case of a P2WSH orP2SH-P2WSH output.
createwallet now has an optional blank argument that can be used to create a blank wallet. Blank wallets do not have any keys or HDseed. They cannot be opened in software older than 2.18.2. Once a blank wallet has a HD seed set (by using sethdseed) or private keys, scripts, addresses, and other watch only things have been imported, the wallet is no longer blank and can be opened in 2.17.2. Encrypting a blank wallet will also set a HD seed for it.
signrawtransaction is removed after being deprecated and hidden behind a special configuration option in version 2.17.2.
The 'account' API is removed after being deprecated in v2.17.2 The 'label' API was introduced in v2.17.2 as a replacement for accounts. See the release notes from v2.17.2 for a full description of the changes from the 'account' API to the 'label' API.
addwitnessaddress is removed after being deprecated in version 2.16.0.
generate is deprecated and will be fully removed in a subsequent major version. This RPC is only used for testing, but its implementation reached across multiple subsystems (wallet and mining), so it is being deprecated to simplify the wallet-node interface. Projects that are using generate for testing purposes should transition to using the generatetoaddress RPC, which does not require or use the wallet component. Calling generatetoaddress with an address returned by the getnewaddress RPC gives the same functionality as the old generate RPC. To continue using generate in this version, restart groestlcoind with the -deprecatedrpc=generate configuration option.
Be reminded that parts of the validateaddress command have been deprecated and moved to getaddressinfo. The following deprecated fields have moved to getaddressinfo: ismine, iswatchonly,script, hex, pubkeys, sigsrequired, pubkey, embedded,iscompressed, label, timestamp, hdkeypath, hdmasterkeyid.
The addresses field has been removed from the validateaddressand getaddressinfo RPC methods. This field was confusing since it referred to public keys using their P2PKH address. Clients should use the embedded.address field for P2SH or P2WSH wrapped addresses, and pubkeys for inspecting multisig participants.
A new /rest/blockhashbyheight/ endpoint is added for fetching the hash of the block in the current best blockchain based on its height (how many blocks it is after the Genesis Block).
A new Window menu is added alongside the existing File, Settings, and Help menus. Several items from the other menus that opened new windows have been moved to this new Window menu.
In the Send tab, the checkbox for "pay only the required fee" has been removed. Instead, the user can simply decrease the value in the Custom Fee rate field all the way down to the node's configured minimumrelay fee.
In the Overview tab, the watch-only balance will be the only balance shown if the wallet was created using the createwallet RPC and thedisable_private_keys parameter was set to true.
The launch-on-startup option is no longer available on macOS if compiled with macosx min version greater than 10.11 (useCXXFLAGS="-mmacosx-version-min=10.11" CFLAGS="-mmacosx-version-min=10.11" for setting the deployment sdkversion)
A new groestlcoin-wallet tool is now distributed alongside Groestlcoin Core's other executables. Without needing to use any RPCs, this tool can currently create a new wallet file or display some basic information about an existing wallet, such as whether the wallet is encrypted, whether it uses an HD seed, how many transactions it contains, and how many address book entries it has.
Since version 2.16.0, Groestlcoin Core's built-in wallet has defaulted to generating P2SH-wrapped segwit addresses when users want to receive payments. These addresses are backwards compatible with all widely used software. Starting with Groestlcoin Core 2.20.1 (expected about a year after 2.18.2), Groestlcoin Core will default to native segwitaddresses (bech32) that provide additional fee savings and other benefits. Currently, many wallets and services already support sending to bech32 addresses, and if the Groestlcoin Core project sees enough additional adoption, it will instead default to bech32 receiving addresses in Groestlcoin Core 2.19.1. P2SH-wrapped segwit addresses will continue to be provided if the user requests them in the GUI or by RPC, and anyone who doesn't want the update will be able to configure their default address type. (Similarly, pioneering users who want to change their default now may set the addresstype=bech32 configuration option in any Groestlcoin Core release from 2.16.0 up.)
BIP 61 reject messages are now deprecated. Reject messages have no use case on the P2P network and are only logged for debugging by most network nodes. Furthermore, they increase bandwidth and can be harmful for privacy and security. It has been possible to disable BIP 61 messages since v2.17.2 with the -enablebip61=0 option. BIP 61 messages will be disabled by default in a future version, before being removed entirely.
The submitblock RPC previously returned the reason a rejected block was invalid the first time it processed that block but returned a generic "duplicate" rejection message on subsequent occasions it processed the same block. It now always returns the fundamental reason for rejecting an invalid block and only returns "duplicate" for valid blocks it has already accepted.
A new submitheader RPC allows submitting block headers independently from their block. This is likely only useful for testing.
The signrawtransactionwithkey and signrawtransactionwithwallet RPCs have been modified so that they also optionally accept a witnessScript, the witness script in the case of a P2WSH orP2SH-P2WSH output. This is compatible with the change to listunspent.
For the walletprocesspsbt and walletcreatefundedpsbt RPCs, if thebip32derivs parameter is set to true but the key metadata for a public key has not been updated yet, then that key will have a derivation path as if it were just an independent key (i.e. no derivation path and its master fingerprint is itself).
The -usehd configuration option was removed in version 2.16.0 From that version onwards, all new wallets created are hierarchical deterministic wallets. This release makes specifying -usehd an invalid configuration option.
This release allows peers that your node automatically disconnected for misbehaviour (e.g. sending invalid data) to reconnect to your node if you have unused incoming connection slots. If your slots fill up, a misbehaving node will be disconnected to make room for nodes without a history of problems (unless the misbehaving node helps your node in some other way, such as by connecting to a part of the Internet from which you don't have many other peers). Previously, Groestlcoin Core banned the IP addresses of misbehaving peers for a period (default of 1 day); this was easily circumvented by attackers with multiple IP addresses. If you manually ban a peer, such as by using the setban RPC, all connections from that peer will still be rejected.
The key metadata will need to be upgraded the first time that the HDseed is available. For unencrypted wallets this will occur on wallet loading. For encrypted wallets this will occur the first time the wallet is unlocked.
Newly encrypted wallets will no longer require restarting the software. Instead such wallets will be completely unloaded and reloaded to achieve the same effect.
A sub-project of Bitcoin Core now provides Hardware Wallet Interaction (HWI) scripts that allow command-line users to use several popular hardware key management devices with Groestlcoin Core. See their project page for details.
This release changes the Random Number Generator (RNG) used from OpenSSL to Groestlcoin Core's own implementation, although entropy gathered by Groestlcoin Core is fed out to OpenSSL and then read back in when the program needs strong randomness. This moves Groestlcoin Core a little closer to no longer needing to depend on OpenSSL, a dependency that has caused security issues in the past. The new implementation gathers entropy from multiple sources, including from hardware supporting the rdseed CPU instruction.
On macOS, Groestlcoin Core now opts out of application CPU throttling ("app nap") during initial blockchain download, when catching up from over 100 blocks behind the current chain tip, or when reindexing chain data. This helps prevent these operations from taking an excessively long time because the operating system is attempting to conserve power.
How to Upgrade?
Windows If you are running an older version, shut it down. Wait until it has completely shut down (which might take a few minutes for older versions), then run the installer. OSX If you are running an older version, shut it down. Wait until it has completely shut down (which might take a few minutes for older versions), run the dmg and drag Groestlcoin Core to Applications. Ubuntu http://groestlcoin.org/forum/index.php?topic=441.0
ALL NEW - Groestlcoin Moonshine iOS/Android Wallet
Built with React Native, Moonshine utilizes Electrum-GRS's JSON-RPC methods to interact with the Groestlcoin network. GRS Moonshine's intended use is as a hot wallet. Meaning, your keys are only as safe as the device you install this wallet on. As with any hot wallet, please ensure that you keep only a small, responsible amount of Groestlcoin on it at any given time.
Groestlcoin Mainnet & Testnet supported
Multiple wallet support
Electrum - Support for both random and custom peers
Biometric + Pin authentication
Custom fee selection
Import mnemonic phrases via manual entry or scanning
BIP39 Passphrase functionality
Support for Segwit-compatible & legacy addresses in settings
Support individual private key sweeping
UTXO blacklisting - Accessible via the Transaction Detail view, this allows users to blacklist any utxo that they do not wish to include in their list of available utxo's when sending transactions. Blacklisting a utxo excludes its amount from the wallet's total balance.
Ability to Sign & Verify Messages
Support BitID for password-free authentication
Coin Control - This can be accessed from the Send Transaction view and basically allows users to select from a list of available UTXO's to include in their transaction.
HODL GRS connects directly to the Groestlcoin network using SPV mode and doesn't rely on servers that can be hacked or disabled. HODL GRS utilizes AES hardware encryption, app sandboxing, and the latest security features to protect users from malware, browser security holes, and even physical theft. Private keys are stored only in the secure enclave of the user's phone, inaccessible to anyone other than the user. Simplicity and ease-of-use is the core design principle of HODL GRS. A simple recovery phrase (which we call a Backup Recovery Key) is all that is needed to restore the user's wallet if they ever lose or replace their device. HODL GRS is deterministic, which means the user's balance and transaction history can be recovered just from the backup recovery key.
Simplified payment verification for fast mobile performance
Groestlcoin Seed Savior is a tool for recovering BIP39 seed phrases. This tool is meant to help users with recovering a slightly incorrect Groestlcoin mnemonic phrase (AKA backup or seed). You can enter an existing BIP39 mnemonic and get derived addresses in various formats. To find out if one of the suggested addresses is the right one, you can click on the suggested address to check the address' transaction history on a block explorer.
If a word is wrong, the tool will try to suggest the closest option.
If a word is missing or unknown, please type "?" instead and the tool will find all relevant options.
NOTE: NVidia GPU or any CPU only. AMD graphics cards will not work with this address generator. VanitySearch is a command-line Segwit-capable vanity Groestlcoin address generator. Add unique flair when you tell people to send Groestlcoin. Alternatively, VanitySearch can be used to generate random addresses offline. If you're tired of the random, cryptic addresses generated by regular groestlcoin clients, then VanitySearch is the right choice for you to create a more personalized address. VanitySearch is a groestlcoin address prefix finder. If you want to generate safe private keys, use the -s option to enter your passphrase which will be used for generating a base key as for BIP38 standard (VanitySearch.exe -s "My PassPhrase" FXPref). You can also use VanitySearch.exe -ps "My PassPhrase" which will add a crypto secure seed to your passphrase. VanitySearch may not compute a good grid size for your GPU, so try different values using -g option in order to get the best performances. If you want to use GPUs and CPUs together, you may have best performances by keeping one CPU core for handling GPU(s)/CPU exchanges (use -t option to set the number of CPU threads).
Fixed size arithmetic
Fast Modular Inversion (Delayed Right Shift 62 bits)
SecpK1 Fast modular multiplication (2 steps folding 512bits to 256bits using 64 bits digits)
Use some properties of elliptic curve to generate more keys
SSE Secure Hash Algorithm SHA256 and RIPEMD160 (CPU)
Groestlcoin EasyVanity 2020 is a windows app built from the ground-up and makes it easier than ever before to create your very own bespoke bech32 address(es) when whilst not connected to the internet. If you're tired of the random, cryptic bech32 addresses generated by regular Groestlcoin clients, then Groestlcoin EasyVanity2020 is the right choice for you to create a more personalised bech32 address. This 2020 version uses the new VanitySearch to generate not only legacy addresses (F prefix) but also Bech32 addresses (grs1 prefix).
Ability to continue finding keys after first one is found
Includes warning on start-up if connected to the internet
Ability to output keys to a text file (And shows button to open that directory)
Show and hide the private key with a simple toggle switch
Show full output of commands
Ability to choose between Processor (CPU) and Graphics Card (GPU) ( NVidia ONLY! )
Features both a Light and Dark Material Design-Style Themes
Free software - MIT. Anyone can audit the code.
Written in C# - The code is short, and easy to review.
Groestlcoin WPF is an alternative full node client with optional lightweight 'thin-client' mode based on WPF. Windows Presentation Foundation (WPF) is one of Microsoft's latest approaches to a GUI framework, used with the .NET framework. Its main advantages over the original Groestlcoin client include support for exporting blockchain.dat and including a lite wallet mode. This wallet was previously deprecated but has been brought back to life with modern standards.
Works via TOR or SOCKS5 proxy
Can use bootstrap.dat format as blockchain database
Import/Export blockchain to/from bootstrap.dat
Import wallet.dat from Groestlcoin-qt wallet
Export wallet to wallet.dat
Use both groestlcoin-wpf and groestlcoin-qt with the same addresses in parallel. When you send money from one program, the transaction will automatically be visible on the other wallet.
Rescan blockchain with a simple mouse click
Works as a full node and listens to port 1331 (listening port can be changed)
Fast Block verifying, parallel processing on multi-core CPUs
Mine Groestlcoins with your CPU by a simple mouse click
All private keys are kept encrypted on your local machine (or on a USB stick)
Lite - Has a lightweight "thin client" mode which does not require a new user to download the entire Groestlcoin chain and store it
Free and decentralised - Open Source under GNU license
Fixed Import/Export to wallet.dat
Rescan wallet option
Change wallet password option
Address type and Change type options through *.conf file
Import from bootstrap.dat - It is a flat, binary file containing Groestlcoin blockchain data, from the genesis block through a recent height. All versions automatically validate and import the file "grs.bootstrap.dat" in the GRS directory. Grs.bootstrap.dat is compatible with Qt wallet. GroestlCoin-Qt can load from it.
In Full mode file %APPDATA%\Groestlcoin-WPF\GRS\GRS.bootstrap.dat is full blockchain in standard bootstrap.dat format and can be used with other clients.
Groestlcoin Electrum Personal Server aims to make using Electrum Groestlcoin wallet more secure and more private. It makes it easy to connect your Electrum-GRS wallet to your own full node. It is an implementation of the Electrum-grs server protocol which fulfils the specific need of using the Electrum-grs wallet backed by a full node, but without the heavyweight server backend, for a single user. It allows the user to benefit from all Groestlcoin Core's resource-saving features like pruning, blocks only and disabled txindex. All Electrum-GRS's feature-richness like hardware wallet integration, multi-signature wallets, offline signing, seed recovery phrases, coin control and so on can still be used, but connected only to the user's own full node. Full node wallets are important in Groestlcoin because they are a big part of what makes the system be trust-less. No longer do people have to trust a financial institution like a bank or PayPal, they can run software on their own computers. If Groestlcoin is digital gold, then a full node wallet is your own personal goldsmith who checks for you that received payments are genuine. Full node wallets are also important for privacy. Using Electrum-GRS under default configuration requires it to send (hashes of) all your Groestlcoin addresses to some server. That server can then easily spy on your transactions. Full node wallets like Groestlcoin Electrum Personal Server would download the entire blockchain and scan it for the user's own addresses, and therefore don't reveal to anyone else which Groestlcoin addresses they are interested in. Groestlcoin Electrum Personal Server can also broadcast transactions through Tor which improves privacy by resisting traffic analysis for broadcasted transactions which can link the IP address of the user to the transaction. If enabled this would happen transparently whenever the user simply clicks "Send" on a transaction in Electrum-grs wallet. Note: Currently Groestlcoin Electrum Personal Server can only accept one connection at a time.
Use your own node
Uses less CPU and RAM than ElectrumX
Used intermittently rather than needing to be always-on
Doesn't require an index of every Groestlcoin address ever used like on ElectrumX
UPDATED – Android Wallet 7.38.1 - Main Net + Test Net
The app allows you to send and receive Groestlcoin on your device using QR codes and URI links. When using this app, please back up your wallet and email them to yourself! This will save your wallet in a password protected file. Then your coins can be retrieved even if you lose your phone.
Add confidence messages, helping users to understand the confidence state of their payments.
Handle edge case when restoring via an external app.
Count devices with a memory class of 128 MB as low ram.
Introduce dark mode on Android 10 devices.
Reduce memory usage of PIN-protected wallets.
Tapping on the app's version will reveal a checksum of the APK that was installed.
Fix issue with confirmation of transactions that empty your wallet.
Groestlcoin Sentinel is a great solution for anyone who wants the convenience and utility of a hot wallet for receiving payments directly into their cold storage (or hardware wallets). Sentinel accepts XPUB's, YPUB'S, ZPUB's and individual Groestlcoin address. Once added you will be able to view balances, view transactions, and (in the case of XPUB's, YPUB's and ZPUB's) deterministically generate addresses for that wallet. Groestlcoin Sentinel is a fork of Groestlcoin Samourai Wallet with all spending and transaction building code removed.
Starting a Private Mining Pool for learning purposes. (Need a little help)
Hi all, just wanted to ask if anyone could give me some help on some errors that I'm getting while trying to run the headless wallet in Ubuntu. Now this pool is going to be private, more of a learning experience to take up my free time. It's also to put to use some old spare computer parts that I used to throw together a computer. Ok, so im running Ubuntu 16.04 on a virtual machine on a windows 7 system. Im testing it out on this before I go balls to the wall and throw it on another system. Anyway. I have all of the prequisite packages and so on. However when I goto compile vertcoin via "make -f makefile.unix" I get this error at the end "makefile.unix:209: recipe for target "obj/wallet.o" failed " make *** [obj/wallet.o] Error:1 Im no linux guru, obviously but I had read somewhere that the cause might have to do with libboost-dev being 1.58. When I restarted from scratch and did not get libboost I got the error something like require boost algorium missing, I really don't feel like restarting from scratch again. I've tried numerious methods and so far I can't get any recent post anywhere to help me out. All methods seems to lead back to this error. There has to be something that Im missing either in the dependancy files, and missing a step. Bascially what im asking is? Has anyone lately started from scratch making a headless wallet. Alot of the old post seem to be down after about two years, or obsolete. Even following the readme in the docs of the github doesn't cover all the bases, or maybe im missing something. I have to be missing something but what i dont know I do have some experience with solo mining with vertcoin and that is setup correctly, however it runs off of an Windows GUI wallet.
Storage space: I am using an 8 GB microSD card for the OS, and a 128 GB USB drive for data. Minimums I would recommend: 8GB SD card and 32 GB USB drive.
Reddcoin Core client version: v184.108.40.206-a8767ba-beta (most recent version at this moment). ↳ Screenshot
You need the OS; Lubuntu. Download Lubuntu (707 MB) for the Raspberry Pi: https://ubuntu-pi-flavour-maker.org/download/. It's a .torrent download, so you will need a BitTorrent client. Message me or post in this thread if you need help with this.
You need software to write the OS to the SD card. I use Etcher. Download Etcher: https://etcher.io/.
Select image: select the lubuntu-16.04.2-desktop-armhf-raspberry-pi.img.xz file.
Select drive: select your microSD card.
Plug the SD card into your Raspberry Pi and power it up.
Lubuntu should boot up.
Set up Lubuntu, connect to the internet (wired or wireless). ↳ As username, I chose "rpi3b". You will see this username throughout this whole tutorial.
Make sure date and time are correct ([Menu] > System Tools > Time and Date). ↳ Click on Unlock to make changes. I personally change Configuration to "Keep synchronized with Internet servers". ↳ Screenshot
Reboot ([Menu] > Logout > Reboot). I am connected to wifi, but have issues getting wifi to work on initial boot. A reboot solves this issue.
Make sure system is up-to-date, install never versions.
Open LXTerminal ([Menu] > System Tools > LXTerminal). ↳ Screenshot
Enter the following in LXTerminal: sudo apt update && sudo apt upgrade ↳ Screenshot
You will be asked if you really want to continue. Enter Y (yes).
Updates are being installed! Wait until it's finished.
Install programs that will be used in this tutorial.
GParted: to partition the USB drive.
Htop: to see the amount of memory (RAM) and swap that is in use.
Enter the following in LXTerminal to install these 2 programs. sudo apt install gparted && sudo apt install htop ↳ Screenshot
Create 2 partitions on the USB drive: 1) Swap partition 2) data partition (for the Reddcoin blockchain) The swap partition is necessary: The Reddcoin wallet can be memory intensive. To prevent any crashes or freezes, add 2 GB of 'virtual' memory by creating a swap partition.
Important: Backup your USB drive if needed. The USB drive will be formatted, so the data on the USB drive will be wiped.
Please use the USB drive solely for this purpose, do not combine it with other stuff.
Keep your USB drive plugged in, do not (randomly) plug it out.
Plug your USB drive in.
GParted will be used to create the partititons. Start GParted via LXTerminal: sudo gparted ↳ Screenshot
Apply the changes. Click on the check mark or select Edit > Apply All Operations. ↳ Screenshot ↳ Screenshot
Important: The name of the swap partition is needed later, so please write it down. Mine is /dev/sda1 (first partition on first drive (drive 'a')). ↳ Screenshot
Reboot. After the reboot, the data partition you just created should be visible on your desktop. ↳ Screenshot
The swap partition is created, so now we can enable and use it.
The swap in use can be monitored with the program Htop. Open Htop ([Menu] > System Tools > Htop) to see the 'Swp' (swap) in use. ↳ Screenshot By default, swap is not used, so 0K. ↳ Screenshot You can leave Htop open.
To enable the swap partition, open LXTerminal and enter the following commands: (Assuming /dev/sda1 is your swap partition.)
Unpack the file (large file, takes around 15 minutes to unpack): sudo xz -d bootstrap.dat.xz ↳ Screenshot
After a successful unpack, your will find the file bootstrap.dat in your USB root folder. ↳ Screenshot
On the first run of the Reddcoin Core client, it will ask for a data directory to store the blockchain and wallet data.
Start the Reddcoin Core client: sudo /media/rpi3b/usb/reddcoin/src/qt/reddcoin-qt ↳ Screenshot
The welcome screen will appear and ask you about the data directory. I suggest a new folder on your USB drive, I picked blockchain. The directory will be created with all the necessary files. ↳ Screenshot
Click on the three dots (...) on the right. ↳ Screenshot
Click on Create Folder at the upper right corner. Type and enter in the folder name. (In my case: blockchain.) Click on Open. ↳ Screenshot ↳ Screenshot ↳ Screenshot
After selecting the directory, the Reddcoin Core client will start. Wait till it's fully loaded and close it.
Move the bootstrap.dat file to your data directory you selected in the previous step. By doing this, Reddcoin Core will use the bootstrap.dat file to import the blockchain, which speeds up syncing. sudo mv bootstrap.dat /media/rpi3b/usb/blockchain/ (Assuming blockchain as data directory.) ↳ Screenshot
The Reddcoin Core client set up is completed, but you still have to sync fully with the blockchain before you can send, receive and stake.
Keep the client running until it's fully synchronized. It will use the bootstrap file first, and download the rest of the blockchain to complete the sync. This can take some time (it took 2 days for me). Syncing the blockchain uses a lot of resources, so the software may react slow.
You can see the progress in the debug window (Help > Debug window). ↳ Screenshot
When the synchronization is completed, the red (out of sync) will disappear on the Overview screen! ↳ Screenshot
When synchronization is complete, you can start staking your Reddcoins.
You can write down your private key or copy and save it in a document. Make sure you save it somewhere only you can access it.
To import later: Debug window -> Console -> importprivkey [label] [label] is optional. ↳ Screenshot (without a label) ↳ Screenshot (with a label)
Boot with only 1 USB drive plugged in: Make sure only the USB drive (with the swap partition and data partition) is plugged in when you boot up your Raspberry Pi. This to make sure the swap partition (/dev/sda1) is recognized correctly. If you boot up with multiple USB drives, Lubuntu might see the USB drive with the swap partition as the second drive (instead of the first drive), and ignore the 2 GB swap partition. If this happens, starting Reddcoin can render the Raspberry Pi unresponsive.
Start Reddcoin Core easier Run a shell script (.sh file), so you can start Reddcoin just by double clicking on an icon on your Desktop.
Right Click on your Desktop and select Create New -> Empty File. ↳ Screenshot
Enter a file name, make sure it ends with .sh, and click on OK. I've chosen for Reddcoin.sh. ↳ Screenshot The file will be created on your Desktop. ↳ Screenshot
Add the command to start Reddcoin to the file.
Right click on the file, select Leafpad (to open the file in a text editor). ↳ Screenshot
Add the following to the file and save the file: sudo /media/rpi3b/usb/reddcoin/src/qt/reddcoin-qt ↳ Screenshot
To be able to execute the shell script (.sh), it has to have 'execute permissions'.
Right click on the file, and select Properties. ↳ Screenshot
Click on the Permissions tab.
For Execute, select Anyone, and click on OK. ↳ Screenshot
To start Reddcoin Core, double click on the file. A new window will pop-up, asking you what you want. Execute in Terminal is what we want, so you can click on enter. ↳ Screenshot Reddcoin Core will now start. Do not close the Terminal window, you can minimize it if needed.
Minimization options Adjust minimization options, so you can safely press on the X button (the close/exit button on the upper right corner).
Activate 'Minimize on close'. Settings -> Options... -> Window (tab) -> Minimize on close. ↳ Screenshot Reddcoin will still run when you click on the X button. To close/exit Reddcoin, right click on the Reddcoin icon in the system tray (bottom right corner). ↳ Screenshot
RealVNC VNC Viewer (client) and VNC Connect (server): To remote connect to the Raspberry Pi, I use VNC Viewer ad VNC Connect from RealVNC.
After your download is finished, open the file and click Install Package. ↳ Screenshot
To run the VNC Connect once:
Open [Menu] > Run, and enter: vncserver-x11 ↳ Screenshot
To auto run on startup:
Open Default applications for LXSession ([Menu] > Preferences > Default applications for LXSession). ↳ Screenshot
In LXSessions configuration, select Autostart in the menu left.
Under Manual autostarted applications, enter vncserver-x11 and click on + Add. ↳ Screenshot ↳ Screenshot
Reboot your Raspberry Pi and check if VNC Connect is started automatically after the reboot.
When VNC Connect is running, you'll see a VNC icon on the right bottom corner. Double click the icon to open VNC Connect and to see the IP address you need to enter to connect to your Raspberry Pi. ↳ Screenshot
I want to stake Reddcoins on my Raspberry Pi, but there is no easy to install package for the Reddcoin Core client. I found some tutorials (mentioned at the bottom, under 'credits'), but I still struggled to get the result I wanted. It took some small adjustments, but I got the GUI Wallet of Reddcoin Core working on my Raspberry Pi Model 3B. See the steps below. :).
If you have any questions or comments, please post a comment in this thread, so others can also benefit from it.
If you would like to tip me: RqvdnNX5MTam855Y2Vudv7yVgtXdcYaQAW.
Even though Raspbian is the primary OS for the Raspberry Pi, it seems that it's not possible to build and compile the Reddcoin wallet software for Raspbian Stretch. However, I got the wallet compiled using Ubuntu MATE.
RPi: Raspberry Pi 3 Model B
OS: Ubuntu MATE 16.04.2 (Xenial)
Space needed: I would recommend at least 32 GB. I am using an 8 GB SD card for the OS, and a 128 GB USB drive for data.
The Reddcoin wallet can be memory intensive. To prevent any crashes or freezes, add 1 GB of 'virtual' memory by creating a swap file. After your Raspberry Pi has rebooted, open MATE Terminal again and enter the following commands:
sudo fallocate -l 1G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
To make sure the swap file persistent (so it survives a reboot), you have to add a line to the /etc/fstab file.
In MATE Terminal, enter the following command to open the file in Pluma (text editor): sudo pluma /etc/fstab
In Pluma, create a new line, add this text: /swapfile none swap sw 0 0 ↳ Screenshot (You should add spaces to vertically align the lines.)
Save and close the file.
Back to MATE Terminal; reboot your Pi: sudo reboot
To see if the swap file is used after a reboot, run: sudo cat /proc/swaps ↳ Screenshot
After the reboot, open MATE Terminal again. Download, unpack, configure, build and install Berkeley DB:
Add this line in Pluma: /uslocal/BerkeleyDB.4.8/lib/ ↳ Screenshot
Save and close the file.
Back in MATE Terminal: sudo ldconfig
Download the source of the Reddcoin wallet and build it:
git clone https://github.com/joroob/reddcoin
sudo ./configure --disable-tests
sudo make ↳ Screenshot (this will take some time; with me it took just over 1 hour)
sudo make install
Speed up synchronizing with the Reddcoin blockchain by bootstrapping.
cd (to make sure your working directory is your home directory)
Download the bootstrap file (1.45 GB): sudo wget https://github.com/reddcoin-project/reddcoin/releases/download/v220.127.116.11/bootstrap.dat.xz
Unpack the file: xz -d bootstrap.dat.xz
After a successful unpack, your will find the file ''bootstrap.dat'' in your home folder. ↳ Screenshot
On the first run of the Reddcoin Core client, it will ask for a data directory to store the blockchain and wallet data.
Start the Reddcoin Core client: sudo $HOME/reddcoin/src/qt/reddcoin-qt
The welcome screen will appear and ask you about the data directory. I suggest a new directory in your home directory, I picked 'blockchain'. The directory will be created with all the necessary files. ↳ Screenshot
After selecting the directory, the Reddcoin Core client will start. Wait till it's fully loaded and close it.
Use the file manager (Caja) to browse to your home directory and move the ''bootstrap.dat'' file to your data directory you selected in the previous step. Your home directory is the first item in the File Manager in the left menu.
The Reddit Core client set up is completed, but you still have to sync fully with the blockchain before you can send, receive and stake.
Launch the Reddcoin Core client again: sudo $HOME/reddcoin/src/qt/reddcoin-qt
Keep the client running until it's fully synchronized. This can take some time (it took 2 days for me).
You can see the progress in the debug window (Help > Debug window). ↳ Screenshot
When the synchronization is completed, the red (out of sync) will disappear on the Overview screen!
Your wallet will be encrypted, and the Reddcoin Core client will be closed. Launch the Reddcore Client again. ↳ Screenshot 4
To stake, you need to unlock your wallet (by entering your password): Settings > Unlock Wallet...
Make sure "For staking only" is checked before clicking OK. ↳ Screenshot
You can only stake with Reddcoins that have matured: coins have to be at least 8 hours in your wallet to mature.
The grey arrow at the bottom should be green when staking. Hover over that icon to see the progress of staking. ↳ Screenshot
Backup your wallet! File > Backup wallet... ↳ Screenshot
Start Reddit on system login. Settings > Options ↳ Screenshot > This works when using only an SD card. > I can't get this to work when using SD card (for OS) and a USB (for data/blockchain).
Adjust minimization options, so you can safely press on the red X (close/exit button). ↳ Screenshot
The default browser, Firefox, stops working and crashes after updating Ubuntu MATE. My solution is installing another browser: Chromium. To install Chromium, enter the following in MATE Terminal: sudo apt-get install chromium-browser ↳ Screenshot You can then access Chromium via [Menu] Applications > Internet. ↳ Screenshot
To remote connect to the Raspberry Pi, I use VNC Connect from RealVNC.
step 12: Build Reddcoin Wallet ---download source code ---- only source from joroob/reddcoin will work because some stweak was needed for ARM CPU
cd ~ git clone https://github.com/joroob/reddcoin.git
---build reddcoin ----
cd reddcoin ./autogen.sh ./configure --with-gui=no --disable-tests cd src make sudo make install
If you finish this, you are in a great position!!! step 13: Create reddcoin configuration file
cd ~ mkdir .reddcoin && cd .reddcoin nano reddcoin.conf rpcuser=YOUR OWN USERNAME, YOU DONT NEED TO REMEMBER THIS, MAKE IT AS LONG AS YOU WANT rpcpassword=YOUR OWN PASS WORD, YOU DONT NEED TO REMEMBER THIS, MAKE IT AS LONG AS YOU WANT
step 14: Use bootstrap (At this point, you had a running reddcoin daemon, now you can start staking. But syncing the full chain takes long time.)
cd ~/.reddcoin wget https://github.com/reddcoin-project/reddcoin/releases/download/v18.104.22.168/bootstrap.dat.xz xz -d bootstrap.dat.xz
step 15: start the reddcoin daemon service cd ~/reddcoin/src ./reddcoind -daemon After this, you can test if the daemon is working, by perform this command: ./reddcoin-cli getblockcount step 16: if your app is not able to sync, it is probably the firewall issue with OS, run this to allow port 45444 (used by Reddcoin) and redo step 15
ADDITIONAL REMARKS: From my PC: I am using putty to execute the command, winSCP to monitor the file location on raspberry. Moving Red Coins out of exchange really a big move, start with normal wallet, don't start with this tutorial :) Ever since I move my coins out of exchange, I am free from all of the ups and downs! Really! So guys and gals, Redd On! UPDATE 18 Mar: my first stake has arrived after 6 days staking :) In case you want to tip me: RaF3TeWqgTzAdnaZQffnsxS74dag13zsAY Edit 1: Format stuff Edit 2: Add step 18 to execute staking command. Edit 3: In case you don't want to compile the source code, you can download my compile version here: https://github.com/hieplenet/reddcoin/releases/tag/v22.214.171.124 (but doing this, you should be aware of the risk of me changing source code for my benefit - I don't change any thing, but you should be cautious, this is the internet :) )
How to install any QT-Wallet on the Raspberry Pi / Pi3B+
Hello and welcome to my first tutorial. Today I will show you how to install almost any QT-wallet on the RaspberryPi. I hope this tutorial will help you. I use the BankSocietyCoin in this tutorial, you can change it also to your fav. Coin. Install Raspbian , *Buster produced a lot of failures on my system while compiling Wallets* (my version: https://downloads.raspberrypi.org/raspbian/images/raspbian-2018-03-14/ ) Run the following commands: Change Swap Size of the Rasp: sudo nano /etc/dphys-swapfile change to CONF_SWAPSIZE=2048 press: ctrl o Enter and ctrl x enable the swap file with its new size: sudo dphys-swapfile setup sudo dphys-swapfile swapon ---------- Install Required Dependencies: apt-get update sudo apt-get install git build-essential libtool autotools-dev autoconf pkg-config libssl-dev libcrypto++-dev libevent-dev libminiupnpc-dev libgmp-dev libboost-all-dev devscripts libdb++-dev libsodium-dev and sudo apt-get install libqt5gui5 libqt5core5a libqt5dbus5 qttools5-dev qttools5-dev-tools libprotobuf-dev protobuf-compiler libcrypto++-dev libminiupnpc-dev qt5-default ---------- Install bitcoin PPA files for the compiling process: cd /etc/apt/sources.list.d/ sudo nano bitcoin.list paste to following line: deb-src http://ppa.launchpad.net/bitcoin/bitcoin/ubuntu artful main press: ctrl o Enter and ctrl x sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv C70EF1F0305A1ADB9986DBD8D46F45428842CE5E sudo apt-get update ---------- Install working libssl: cd && sudo apt-get remove libssl-dev sudo nano /etc/apt/sources.list change stretch to jessie press: ctrl o Enter and ctrl x sudo apt-get update sudo apt-get install libssl-dev sudo apt-mark hold libssl-dev sudo apt-mark hold libssl1.0.0 sudo nano /etc/apt/sources.list Change jessie" back to stretch press: ctrl o Enter and ctrl x sudo apt-get update ---------- Compile and Install BerkeleyDB 4.8.30 : wget http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz sudo tar -xzvf db-4.8.30.NC.tar.gz cd db-4.8.30.NC/build_unix sudo ../dist/configure --enable-cxx sudo make sudo make install export CPATH="/uslocal/BerkeleyDB.4.8/include" export LIBRARY_PATH="/uslocal/BerkeleyDB.4.8/lib" ---------- The wallet: (my way) mkdir wallets , cd wallets git clone https://github.com/RGPickles/BankSocietyCoin cd BankSocietyCoin chmod 755 src/leveldb/build_detect_platform chmod 755 src/secp256k1/autogen.sh cd src/ make -f makefile.unix ./societyd * for qt wallet* cd .. qmake make edit society.conf in .society (rpcuser=SomeCoolRandomUsername rpcpassword=SOMETHINawesomeYOUdontHaveToRemember rpcconnect=127.0.0.1 save. ./society-qt ---------- Have fun! for a Beer - Donations ;) SOCI - Si6V7EwnJqzmFiNGHSbXrtWUXKH6F4EFm3 BTC - 1HpGF4wMzztpJ4KT4o2ySFvnLJ4gCoYaV5 LTC - LS22MgY9G4KbaKhkR5dFi995MbcQhuyDXW ETH - 0x6b5EdC3e58Fd84a40aa942964690adA91C398075 TRX - TKBpktt5QQ9WV57QjonQrGr1vmKLCVQBL6 13.07.2019 DennisHilk ********** if error (makefile.unix:200: obj/rpcclient.o] appears) [This first step is necessary because you will get linking errors if you don't remove the old Boost library] sudo apt remove --purge --auto-remove libboost-dev libboost-thread-dev libboost-system-dev libboost-atomic-dev libboost-regex-dev libboost-chrono-dev mkdir boost cd boost wget https://dl.bintray.com/boostorg/release/1.64.0/source/boost_1_64_0.tar.gz tar xfz boost_1_64_0.tar.gz (can take rly long, dont worry) cd boost_1_64_0/ ./bootstrap.sh ./b2 stage threading=multi link=static --with-thread --with-system sudo ./b2 install threading=multi link=static --with-thread --with-system cd ../../ nano .bash_profile export LIBS="-L/home/YOURS/boost/boost_1_64_0/stage/lib" export CPPFLAGS="-I/home/YOURS/boost/boost_1_64_0" cd society root make clean cd src sudo make -f makefile.unix (if bignum error) sudo apt-get install libgmp-dev or delete opensll and reinstall as above.
Could we get some compiling instructions for Bitcoin SV? I'm having a hard time compiling it to run on my server alongside a bitcoin node. When I try to start it up after compiling, it says unable to start HTTP server. Also, the wallet functions are limited because for whatever reason I can't get it to use the Berkeleys DB. Please post some terminal commands for Ubuntu/Debian based installation :) thanks
##UPDATE## Step 8 - Option 2, has some bugs in the final build process. i haven't had time to work them out yet! This guide will take you through building and running a headless x42 Full Node! The OS I am using here is Ubuntu 18.04, this guide picks up from a complete/fresh ubuntu install. This is meant to setup a staking node and so this guide will run you through building, configuring and setting up staking. It will not cover sending transactions or anything else. The things we are going to do:
Step 1 - Install .net core
Step 2 - Download The x42 Node Source & Compile It
Step 3 - Setting The x42 Node Up To Run On Boot
Step 4 - Setup A New Wallet
Step 5 - Configure The x42 Daemon
Step 6 - Get Address
Step 7 - Check Balance
Step 8 - Connect The UI Wallet To A Headless Node
Step 8 - [Option 1 - Use Installer] Connect The UI Wallet To A Headless Node
Step 8 - [Option 2 - Build/Compile UI Only] Connect The UI Wallet To A Headless Node # BROKEN#
cd ~/ git clone https://github.com/x42protocol/X42-FullNode.git # “cd” into the source folder cd X42-FullNode/src/
Now .net core uses NuGet for package management, before we compile, we need to pull down all of the required packages.. its as simple as running (this will take a couple of minutes) inside of “X42-FullNode/src/”:
now we are ready to compile the source, execute (inside of “X42-FullNode/src/”):
dotnet build --configuration Release
ignore the yellow warnings, this is just the rosyln compiler having a grumble.. if you get red ones then something went wrong! The “--configuration Release” will strip out all debug symbols and slim things down.. only a little, this optional parameter is not mandatory. Once this is done everything is built/compiled, you can run the daemon directly from the repository, this can be done by going to:
cd ~/X42-FullNode/src/x42.x42D/bin/Release/netcoreapp2.1 dotnet x42.x42D.dll
this will kick off the node, however if you exit SSH at this time it will kill the process! however I always recommend copying out the binaries to a separate folder. This can be done with the following:
now we have everything we need to run the node outside the git repository! What we need to do now is run the node and have it create the default x42.conf file.. so
cd ~/x42node dotnet x42.x42D.dll
feel free to hit “CTRL + C” to exit the application after a couple of seconds, by then the folders/files would have been created at the following path:
Step 3 - Setting The x42 Node Up To Run on Boot
Now we are going to create a service file so our x42 node automatically starts when the system is rebooted. THINGS TO NOTE ABOUT BELOW.. CHANGE THE ##USER## to the username your currently using as these files are within your home directory! We need to drop to root for this..
sudo -i cat < /etc/systemd/system/x42node.service [Unit] Description=x42 Node [Service] WorkingDirectory=/home/##USER##/x42node ExecStart=/usbin/dotnet /home/##USER##/x42node/x42.x42D.dll Restart=always # Restart service after 10 seconds if the dotnet service crashes: RestartSec=10 SyslogIdentifier=x42node User=##USER## Environment=ASPNETCORE_ENVIRONMENT=Development [Install] WantedBy=multi-user.target EOF
To enable the service, run the following (as the root user):
systemctl enable x42node.service
BOOM.. the node isn’t running yet.. but next time the system restarts it will automatically run! now lets exit out of root!
We can now start the node up and begin downloading blocks, by running the following command:
sudo systemctl start x42node.service
if you want to check its loaded and see some of the output, you can run:
sudo systemctl status x42node.service
an example of the output:
$ sudo systemctl status x42node.service ● x42node.service - x42 Node Loaded: loaded (/etc/systemd/system/x42node.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2019-01-24 15:47:55 UTC; 14s ago Main PID: 5456 (dotnet) Tasks: 23 (limit: 1112) CGroup: /system.slice/x42node.service └─5456 /usbin/dotnet /home/darthnoodle/x42node/x42.x42D.dll Jan 24 15:48:09 x42staking x42node: Batch Size: 0 Mb (0 headers) Jan 24 15:48:09 x42staking x42node: Cache Size: 0/50 MB Jan 24 15:48:09 x42staking x42node: Jan 24 15:48:09 x42staking x42node: =======Mempool======= Jan 24 15:48:09 x42staking x42node: MempoolSize: 0 DynamicSize: 0 kb OrphanSize: 0 Jan 24 15:48:09 x42staking x42node: Jan 24 15:48:09 x42staking x42node: info: Stratis.Bitcoin.Connection.ConnectionManagerBehavior Jan 24 15:48:09 x42staking x42node: Peer '[::ffff:126.96.36.199]:52342' connected (outbound), agent 'x42:1.2.13 (70012)', height 213920 Jan 24 15:48:09 x42staking x42node: info: Stratis.Bitcoin.Connection.ConnectionManagerBehavior Jan 24 15:48:09 x42staking x42node: Peer '[::ffff:188.8.131.52]:52342' offline, reason: 'Receiving cancelled.'. All node screen output can be found in the /valog/syslog file.
Step 4 - Setup a New Wallet
With the Node running, we now need to setup and/or restore a wallet! Everything will be performed through the API’s, however by default these API’s are listening on localhost (127.0.0.1), if you are connecting in remotely then this would be a problem since you cant hit that IP. The solution, SSH TUNNEL! Execute the following command on your local system:
ssh -L 42220:localhost:42220 @
This binds the local port (on your system) with 127.0.0.1:42220 on the remote system, once you have executed the command you can type the following address in your laptop/desktop’s web browser and be able to access the API’s:
It should be noted that the password and mnemonic are is the most important parts of this request where the “password” will encrypt the wallet and Is required to unlock it.
Hit the “Try it out” button
input the necessary data
Insert the mnemonic
Put a password & passphrase
“Name” is what your wallet will be called
It should look something like the following: https://preview.redd.it/958ttfbxb8d21.jpg?width=603&format=pjpg&auto=webp&s=ce48336436ea4b469b5e87513da802de0bf444ee Hit “Execute”, the “Loading” sign may spin for a few minutes while the wallet is created… once the wallet has been created the “Response Body” will return the mnemonic you have just used.. we now have a wallet!! HOWEVER IT IS NOT LOADED INTO THE NODE JUST YET! This is where we will now jump back out and to configure the node to automatically load the wallet and automatically start staking when it first loads. AGAIN BACKUP YOUR MNEMONIC AND PASSWORD, MAKE SURE THEY ARE ENCRYPTED AND STORED SOMEWHERE SAFE!
Step 5 - Configure The x42 Daemon
Now we are going to modify the x42.conf file in order to automatically load our wallet and start staking 😊 First things first, lets stop our node by running the following command:
sudo systemctl stop x42node.service
CD to the following folder and view its contents:
~/.x42node/x42/x42Main ls -lah
within that folder there should be 2 files you are interested in:
-rw-r--r-- 1 darthnoodle darthnoodle 18K Jan 28 16:01 TestWallet.wallet.json -rw-rw-r-- 1 darthnoodle darthnoodle 3.1K Jan 24 15:25 x42.conf
So TestWallet.wallet.json is our physical wallet that will be loaded, but for right now we want to modify the x42.conf file.. fire up your favourite text editor (if you use VI you’re a masochist)..
The area we are interested in is the following:
####Miner Settings#### #Enable POW mining. #mine=0 #Enable POS. #stake=0 #The address to use for mining (empty string to select an address from the wallet). #mineaddress= #The wallet name to use when staking. #walletname= #Password to unlock the wallet. #walletpassword= #Maximum block size (in bytes) for the miner to generate. #blockmaxsize=1000000 #Maximum block weight (in weight units) for the miner to generate. #blockmaxweight=1000000 #Enable splitting coins when staking. #enablecoinstakesplitting=1 #Minimum size of the coins considered for staking, in satoshis. #minimumstakingcoinvalue=10000000 #Targeted minimum value of staking coins after splitting, in satoshis. #minimumsplitcoinvalue=10000000000
Uncomment (remove the #) of the following lines and change their value:
stake=1 (changed to 1) walletname=TestWallet (changed to our Wallet Name) walletpassword=password123 (changed to the wallet password)
save the file and exit back to the command prompt, now we shall restart the node with the following command:
sudo systemctl status x42node.service
now the wallet is automatically loaded and ready for action! YES I KNOW YOU HAVE PUT YOUR PASSWORD IN CLEARTEXT, THIS IS WHERE YOU SHOULD HARDEN YOUR BOX. IF THEY CAN GET TO THE POINT WHERE THEY CAN READ YOUR CONF FILE THEY CAN JUST GRAB YOUR WALLET AND BRUTEFORCE THE PASSWORD. You can check its loaded by going back to the API and executing the following command:
Or execute the following command on the NODE:
curl -X GET "http://127.0.0.1:42220/Dashboard" -H "accept: application/json"
both will produce the same output, if you scroll to the bottom you should see something like this:
The UI utilises a combination of technologies, however the important part is the code attempts to access the x42 Node API on 127.0.0.1:42220. So you have 2 options here:
Download the Wallet Installers
Compile The UI Yourselves
Pick the option that best suits you given the pros/cons below: Option 1 - Pro's/Cons Pro's
If you use the installer, its quick and easy.
This also installs an x42 node on your system which runs when the UI loads.
If you dont setup an SSH tunnel before running the wallet the local node will bind to the port and the tunnel wont work.. you will be connecting to the local wallet!!
Option 2 - Pro's/Cons Pro's
You only run the UI, the x42 node is not installed
you dont have a superfluous node running, downloading blocks on your local system
Have to download dependencies and manually compile the code
Pre-Requirement - Needed For Both Options!! As previously mentioned, the UI attempts to access the API's on 127.0.0.1:42220, however our node isnt running on our local system. IN ORDER TO GET IT WORKING YOU NEED TO HAVE AN SSH TUNNEL, THIS TUNNEL NEEDS TO REMAIN ACTIVE WHENEVER YOU WANT TO ACCESS THE WALLET. this can be done by executing the following command:
ssh -L 42220:localhost:42220 @
Step 8 - [Option 1 - Use Installer] Connect The UI Wallet To A Headless Node
Step 8 - [Option 2 - Build/Compile UI Only] Connect The UI Wallet To A Headless Node ###BROKEN
THIS IS STILL A WORK IN PROGRESS, THE ELECTRON BUILD DOESNT WANT TO COMPILE BECAUSE SOME CODE IS MANGLED SOMEWHERE!! Ok, this is the fun bit! .. we need to install the following dependencies. these instructions are written for a Windows system but it should be easy enough to perform the same on a *NIX system. Install Dependencies In order to build the wallet UI, you need to install the following components:
when this is done, we have fixed most of the package vulnerabilities 😊 We also get a complaint about the typescript library being too new for the version of angular in use, so run the following command to install the additional dependency:
Edit: Ubuntu Can someone please explain how can I compile any wallet in Ubuntu? Thanks. Bitcoin • CryptoCurrency • Ubuntu Mine Bitcoins with Cgminer On Ubuntu. and configure electrum for having your own personal bitcoin wallet. 1. compile the Accolade coin is digital reward and application platform for driving the advertising and other industry which gives rewards to others. There are lots ... It is still the Wallet,,, btw i used the 0.18 Final as try to compile on Ubuntu 18.04.2 Full install, no virtual Machine. Same thing happened with my clone from the Windows 10 Installation tried to make a 3 OS Clone of my old Lady on the other HD, no problems with the Path and everything, but the Wallet, i dont want to run my Node naked, a Wallet is all i want ;) In this post, I will explain how to compile bitcoin source code on Ubuntu 16.04 LTS. I will be running my Ubuntu instance on AWS though you can follow the same instructions anywhere on Ubuntu 16.04 LTS. Please make sure your server has at least 4 GB of RAM. I am assuming the username is “ubuntu” (without double quotes) but if your username ... Use the following instructions to cross-compile a wallet for Windows using Ubuntu Server 18.04. Update your Ubuntu machine. sudo apt-get update sudo apt-get upgrade. Install the required dependencies. Compile Bitcoin on Ubuntu 14.04. GitHub Gist: instantly share code, notes, and snippets.
How to install Bitcoin Core wallet in any Linux distribution
Use the VanityGen tool to generate a Bitcoin address that stands out from the others. Decide for yourself the first part of the address, and have an address ... This short video shows how to compile the bitcoin source code on linux (ubunu). an easy task to do but it take some time (around 15 min) please read the instruction in the official github https ... Today we are going to compile the latest Bitcoin wallet for Windows Windows 10 has an Ubuntu 16.04 Terminal app in the Microsoft Store that we use to comp... This video Shows how to Compile Bitcoin Source Code on Linux operating systems. it covers almost everything on how to compile bitcoin source code. Build Bitc... Bitcoin 101 - Getting Your BTCs out of Your Paper Wallets & Cold Storage - Fun with Sloppy Wallets - Duration: 10:54. CRI 82,619 views