Verge
Official Verge Core Source Code Repository :muscle:
Install / Use
/learn @vergecurrency/VergeREADME
VERGE Source Code [XVG]
Latest commit is stable, building on all platforms?:
<p align="left"> <a href="https://github.com/vergecurrency/verge/actions/workflows/check-commit.yml"> <img src="https://github.com/vergecurrency/verge/actions/workflows/check-commit.yml/badge.svg"> </a> </p>Build Requirements
Verge Core requires a modern C++ toolchain and has migrated to reduce external dependencies for better performance and maintainability.
Minimum Requirements
| Component | Requirement | Notes | |-----------|-------------|--------| | Compiler | GCC 9.0+ / Clang 10.0+ / MSVC 2019+ | C++17 support required | | C++ Standard | C++17 (targeting C++20) | Modern features for better performance | | CMake | 3.16+ | Recommended build system | | Boost | 1.70+ (selective components) | Reduced dependency footprint |
Supported Operating Systems
| OS | Version | Architecture | |----|---------|--------------| | Ubuntu | 22.04, 24.04 | x64, ARM64 | | Debian | 11+ | x64, ARM64 | | CentOS/RHEL | 8+ | x64 | | macOS | 13.0+ (Ventura), 14.0 (Sonoma) |x64, ARM64 (Apple Silicon) | | Windows | 10 32bit/64bit, 11 32bit/64bit | x64
Modern C++ Migration Benefits
🚀 Performance Improvements
- Faster Compilation: Reduced template instantiation overhead
- Better Optimization: Modern compiler optimizations with C++17/20
- Memory Efficiency: Smart pointers and RAII reduce memory leaks
- Parallel Processing: Standard library threading primitives
📦 Reduced Dependencies
- Smaller Binary Size: Less dependency on external libraries
- Easier Deployment: Fewer runtime dependencies to manage
- Simplified Building: Standard library features reduce complex linking
🛡️ Enhanced Security & Reliability
- Memory Safety: Smart pointers prevent common vulnerabilities
- Type Safety: Modern C++ type system catches errors at compile time
- Thread Safety: Better concurrency primitives prevent race conditions
- Exception Safety: RAII patterns ensure proper resource cleanup
🔧 Developer Experience
- Modern Tooling: Better IDE support and debugging
- Cleaner Code: More expressive and maintainable codebase
- Faster Development: Standard library features reduce boilerplate
- Better Testing: Modern testing frameworks and practices
Specifications
Specification | Value --- | --- Protocol | PoW (proof of Work) Algorithms | scrypt, x17, Lyra2rev2, myr-groestl, & blake2s Blocktime | 30 seconds Total Supply | 16,521,951,238 XVG (Complete!) RPC port | 20102 (testnet: 21102) P2P port | 21102 (testnet: 21104) pre-mine | Not Applicable ICO | Not Applicable
Blockrewards
Block Number Range | Reward --- | --- 0 to 14,000 | 200,000 coins 14,001 to 28,000 | 100,000 coins 28,001 to 42,000 | 50,000 coins 42,001 to 210,000 | 25,000 coins 210,001 to 378,000 | 12,500 coins 378,001 to 546,000 | 6,250 coins 546,001 to 714,000 | 3,125 coins 714,001 to 2,124,000 | 1,560 coins 2,124,001 to 3,700,000 | 730 coins 3,700,001 to 4,200,000 | 400 coins 4,200,001 to 4,700,000 | 200 coins 4,700,001 to 5,200,000 | 100 coins 5,200,001 to 5,700,000 | 50 coins 5,700,001 to 6,200,000 | 25 coins 6,200,001 to 6,700,000 | 12.5 coins 6,700,001 to 7,200,000 | 6.25 coins 7,200,001+ | 0.0 coins
Resources
- [Blockchain Explorer] (https://verge-blockchain.info/) https://verge-blockchain.info/
- [Blockchain Explorer] (https://xvgblockexplorer.com/) https://xvgblockexplorer.com/
- [Blockchain Explorer Testnet] (https://testnet.verge-blockchain.info/) https://testnet.verge-blockchain.info/
- [Network Hash and Difficulty] (https://vergecurrency.network/d/VmzuEE5Mk/verge-blockchain?) https://vergecurrency.network/d/VmzuEE5Mk/verge-blockchain
- [Network Transaction Information] (https://network.verge-blockchain.com/d/e8a7802b-23c3-4d81-88f3-fcd0e2efb235/) https://network.verge-blockchain.com/d/e8a7802b-23c3-4d81-88f3-fcd0e2efb235/ (all real transactions only! empty blocks, mining pool txs, etc are filtered out!)
- [Mining Pool List] (https://miningpoolstats.stream/) Most pools of our 5 algorithms can be found here!
- [Black Paper] (https://vergecurrency.com/static/blackpaper/verge-blackpaper-v5.0.pdf) Verge's whitepaper can be found here!
Building From Source
Community
Wallets
Binary (pre-compiled) wallets are available on all platforms here in Releases.
Note: Important! Only download pre-compiled wallets from the official Verge website or official Github repos.
Note: For a fresh wallet install you can reduce the blockchain syncing time by downloading a nightly snapshot and following the setup instructions.
Windows Wallet Usage
-
Download the pre-compiled software from the releases section here.
-
Install
-
In windows file explorer, open
c:\Users\XXX\AppData\Roaming\VERGE(be sure to change XXX to your windows user) -
Right click and create a new file
verge.txt -
Edit the file to have the following contents (be sure to change the password)
rpcuser=vergerpcusername rpcpassword=85CpSuCNvDcYsdQU8w621mkQqJAimSQwCSJL5dPT9wQX rpcport=20102 port=21102 daemon=1 algo=groestl -
Save and close the file
-
Rename the file to
verge.conf -
Start the VERGE-qt program.
-
Open up VERGE-qt console and run
getinfo(orgetmininginfo) to verify settings.
Note: You must re-start the wallet after making changes to
verge.conf.
MacOS Wallet
- Download the pre-compiled macos software from the releases section here.
- Double click the DMG
- Drag the Verge-Qt to your Applications folder
- Double click the Verge-Qt application to open it.
- Go grab a :coffee: while it syncs with the blockchain
Note: It may look like it is frozen or hung while it is indexing and syncing the blockchain. It's not. It's chugging away, but currently the UI doesn't give you a lot of feedback on status. We're working to fix that. Syncing takes a while to complete (ie. > 10 minutes or more) so just be patient.
Note: If you want to change your configuration the file is located at
~/Library/Application\ Support\VERGE\VERGE.conf. This isn't required by default.
Unix Wallet
-
Compile using Unix instructions.
-
The wallet GUI is in
./verge/src/qtand the daemon in./verge/src. -
Optional - the binaries to your favorite location. for use by all users, run the following commands:
sudo cp src/VERGEd /usr/bin/ sudo cp src/qt/VERGE-qt /usr/bin/ -
Run
./VERGEdfrom wherever you put it. The output from this command will tell you that you need to make aVERGE.conffile and will suggest some good starting values. -
Open up your new config file that was created in your home directory in your favorite text editor
nano ~/.VERGE/VERGE.conf -
Paste the output from the
VERGEdcommand into the VERGE.conf like this: (It is recommended to change the password to something unique.)rpcuser=vergerpcusername rpcpassword=85CpSuCNvDcYsdQU8w621mkQqJAimSQwCSJL5dPT9wQX rpcport=20102 port=21102 daemon=1 algo=groestl -
Save the file and exit your editor. If using
nanotypectrl + xon your keyboard and theyand hitting enter. This should have created aVERGE.conffile with what you just added. -
Start the Verge daemon again
./path/to/VERGEd
Note: To check the status of how much of the blockchain has been downloaded (aka synced) type
./path/to/VERGEd getinfo.
Note: If you see something like 'Killed (program cc1plus)' run
dmesgto see the error(s)/problems(s). This is most likely caused by running out of resources. You may need to add some RAM or add some swap space.
You can also check out this Linux Wallet Video Tutorial.
Use Unstoppable Domains
To use VERGE with Unstoppable Domains for sending co
