Skip to content
Svarog Miner is the first vDinar compatible miner made to work on its protocol and structure. This mining software is built for mainly reference purposes as it runs on CPU but can be easily implemented into other miners.
Assembly C Roff M4 Makefile Perl Other
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
compat
doc
.gitignore
AUTHORS
COPYING
ChangeLog
Dockerfile
LICENSE
Makefile.am
NEWS
README
README.md
autogen.sh
compat.h
configure.ac
elist.h
example-cfg.json
miner.h
nomacro.pl
sha2-arm.S
sha2-ppc.S
sha2-x64.S
sha2-x86.S
sha2.c
svarog.1
svarog.c
util.c
vcrypt-arm.S
vcrypt-ppc.S
vcrypt-x64.S
vcrypt-x86.S
vcrypt.c

README.md

Svarog

Introduction

Svarog Miner is a multi-threaded CPU miner for vDinar, made mainly with the purpose of leaving a source to understand vDinar's block structure and protocol. Fork of Jeff Garzik's reference cpuminer.

P.S.: check vDinar's official pool! Mine it at stratum+tcp://vdinar.jugoslaven.com:3333 *Be sure you made a worker account before: https://svarog.jugoslaven.com

Downloads: https://github.com/AndreaDejanGrande/Svarog/releases

Git tree: https://github.com/AndreaDejanGrande/Svarog

License: GPLv2. See COPYING for details.

Documentation

Documentation is available in directory doc. It is organized by topics:

  • FAQ.md for frequently asked questions.

If you'd like to contribute with your own documentation, fork this project and submit a pull request.

Building

Dependencies

Mandatory:

  • automake (automake only needed if building from git repo on a *nix OS)
  • libcurl
  • jansson (jansson is included in-tree)

*nix example

    sudo apt-get install automake
    sudo apt-get install libcurl4-openssl-dev

*nix build instructions

    ./autogen.sh    # only needed if building from git repo
    ./nomacro.pl    # in case the assembler doesn't support macros
    ./configure CFLAGS="-O3" # Make sure -O3 is an O and not a zero!
    make

Notes for AIX users

* To build a 64-bit binary, export OBJECT_MODE=64
* GNU-style long options are not supported, but are accessible
  via configuration file

Windows build instructions, using MinGW

Install MinGW and the MSYS Developer Tool Kit (http://www.mingw.org/)
	* Make sure you have mstcpip.h in MinGW\include
If using MinGW-w64, install pthreads-w64
Install libcurl devel (http://curl.haxx.se/download.html)
	* Make sure you have libcurl.m4 in MinGW\share\aclocal
	* Make sure you have curl-config in MinGW\bin
In the MSYS shell, run:
	./autogen.sh	# only needed if building from git repo
	LIBCURL="-lcurldll" ./configure CFLAGS="-O3"
	make

Architecture-specific notes

ARM:	No runtime CPU detection. The miner can take advantage
	of some instructions specific to ARMv5E and later processors,
	but the decision whether to use them is made at compile time,
	based on compiler-defined macros.
	To use NEON instructions, add "-mfpu=neon" to CFLAGS.
PowerPC: No runtime CPU detection.
	To use AltiVec instructions, add "-maltivec" to CFLAGS.
x86:	The miner checks for SSE2 instructions support at runtime,
	and uses them if they are available.
x86-64:	The miner can take advantage of AVX, AVX2 and XOP instructions,
	but only if both the CPU and the operating system support them.
	    * Linux supports AVX starting from kernel version 2.6.30.
	    * FreeBSD supports AVX starting with 9.1-RELEASE.
	    * Mac OS X added AVX support in the 10.6.8 update.
	    * Windows supports AVX starting from Windows 7 SP1 and
	      Windows Server 2008 R2 SP1.
	The configure script outputs a warning if the assembler
	doesn't support some instruction sets. In that case, the miner
	can still be built, but unavailable optimizations are left off.
	The miner uses the VIA Padlock Hash Engine where available.

Usage instructions

Run "svarog --help" to see options.

Connecting through a proxy: Use the --proxy option. To use a SOCKS proxy, add a socks4:// or socks5:// prefix to the proxy host. Protocols socks4a and socks5h, allowing remote name resolving, are also available since libcurl 7.18.0. If no protocol is specified, the proxy is assumed to be a HTTP proxy. When the --proxy option is not used, the program honors the http_proxy and all_proxy environment variables.

You can’t perform that action at this time.