mirror of
https://github.com/basicswap/basicswap.git
synced 2024-12-22 11:39:34 +00:00
171 lines
5.4 KiB
Scheme
171 lines
5.4 KiB
Scheme
(define-module (guix)
|
|
#:use-module (guix packages)
|
|
#:use-module ((guix licenses) #:prefix license:)
|
|
#:use-module (guix build-system python)
|
|
#:use-module (guix build-system gnu)
|
|
#:use-module (guix git-download)
|
|
#:use-module (guix download)
|
|
#:use-module (guix search-paths)
|
|
#:use-module (gnu packages)
|
|
#:use-module (gnu packages pkg-config)
|
|
#:use-module (gnu packages autotools)
|
|
#:use-module (gnu packages certs)
|
|
#:use-module (gnu packages check)
|
|
#:use-module (gnu packages databases)
|
|
#:use-module (gnu packages finance)
|
|
#:use-module (gnu packages gnupg)
|
|
#:use-module (gnu packages protobuf)
|
|
#:use-module (gnu packages python)
|
|
#:use-module (gnu packages python-build)
|
|
#:use-module (gnu packages python-crypto)
|
|
#:use-module (gnu packages python-xyz)
|
|
#:use-module (gnu packages libffi)
|
|
#:use-module (gnu packages license))
|
|
|
|
|
|
(define libsecp256k1-anonswap
|
|
(package
|
|
(name "libsecp256k1-anonswap")
|
|
(version "anonswap_v0.2")
|
|
(source (origin
|
|
(method git-fetch)
|
|
(uri (git-reference
|
|
(url "https://github.com/tecnovert/secp256k1")
|
|
(commit version)))
|
|
(sha256
|
|
(base32
|
|
"1r07rkrw5qsnc5v1q7cb0zfs1cr62fqwq7kd2v8650g6ha4k5r8i"))
|
|
(file-name (git-file-name name version))))
|
|
(build-system gnu-build-system)
|
|
(arguments
|
|
'(#:configure-flags '("--enable-shared"
|
|
"--disable-dependency-tracking"
|
|
"--with-pic"
|
|
"--enable-module-extrakeys"
|
|
"--enable-module-recovery"
|
|
"--enable-module-schnorrsig"
|
|
"--enable-experimental"
|
|
"--enable-module-ecdh"
|
|
"--enable-benchmark=no"
|
|
"--enable-tests=no"
|
|
"--enable-module-ed25519"
|
|
"--enable-module-generator"
|
|
"--enable-module-dleag"
|
|
"--enable-module-ecdsaotves"
|
|
"--with-valgrind=no"
|
|
)))
|
|
(native-inputs
|
|
(list autoconf automake libtool))
|
|
(synopsis "C library for EC operations on curve secp256k1")
|
|
(description
|
|
"Optimized C library for EC operations on curve secp256k1.\n")
|
|
(home-page "https://github.com/bitcoin-core/secp256k1")
|
|
(license license:unlicense)))
|
|
|
|
|
|
(define python-coincurve-anonswap
|
|
(package
|
|
(name "python-coincurve-anonswap")
|
|
(version "anonswap_v0.2")
|
|
(source
|
|
(origin
|
|
(method git-fetch)
|
|
(uri
|
|
(git-reference
|
|
(url "https://github.com/tecnovert/coincurve")
|
|
(commit version)))
|
|
(file-name
|
|
(git-file-name name version))
|
|
(sha256
|
|
(base32 "08fz02afh88m83axfm8jsgq1c65mw1f3g07x9hz361vblvqjwzqh"))))
|
|
(build-system python-build-system)
|
|
(arguments
|
|
'(#:tests? #f ;XXX fails to load "libsecp256k1.dll"
|
|
#:phases (modify-phases %standard-phases
|
|
(add-after 'unpack 'patch-libsec256k1-path
|
|
(lambda _
|
|
(substitute* "setup.py"
|
|
(("if has_system_lib\\(\\)")
|
|
"if True")
|
|
((", 'requests'")
|
|
"")
|
|
(("download_library\\(self\\)")
|
|
"")))))))
|
|
(propagated-inputs
|
|
(list
|
|
libsecp256k1-anonswap
|
|
python-asn1crypto
|
|
python-cffi))
|
|
(native-inputs
|
|
(list
|
|
python-setuptools
|
|
pkg-config
|
|
))
|
|
(synopsis "Python libsecp256k1 wrapper")
|
|
(description "Python libsecp256k1 wrapper.")
|
|
(home-page "https://github.com/tecnovert/coincurve")
|
|
(license license:bsd-3)))
|
|
|
|
(define python-sqlalchemy-1.4.39
|
|
(package
|
|
(inherit python-sqlalchemy)
|
|
(version "1.4.39")
|
|
(source
|
|
(origin
|
|
(method url-fetch)
|
|
(uri (pypi-uri "SQLAlchemy" version))
|
|
(sha256
|
|
(base32 "09sx2lghywnm7qj1xm8xc3xrgj40bndfh2hbiaq4cfvm71h8k541"))))))
|
|
|
|
(define-public basicswap
|
|
(package
|
|
(name "basicswap")
|
|
(version "0.12.1")
|
|
(source (origin
|
|
(method git-fetch)
|
|
(uri (git-reference
|
|
(url "https://github.com/tecnovert/basicswap")
|
|
(commit "15bf9b2187d3b8a03939e61b4c3ebf4d90fcc919")))
|
|
(sha256
|
|
(base32
|
|
"14gn6156x53c6panxdnd1awkd23jxnihvbqy886j66w5js3b5i8h"))
|
|
(file-name (git-file-name name version))))
|
|
(build-system python-build-system)
|
|
|
|
(native-search-paths (list $SSL_CERT_DIR $SSL_CERT_FILE))
|
|
(arguments
|
|
'(#:tests? #f ; TODO: Add coin binaries
|
|
#:phases (modify-phases %standard-phases
|
|
(add-after 'unpack 'patch-env
|
|
(lambda* (#:key inputs #:allow-other-keys)
|
|
(substitute* "bin/basicswap_prepare.py"
|
|
(("GUIX_SSL_CERT_DIR = None")
|
|
(string-append "GUIX_SSL_CERT_DIR = \"" (search-input-directory inputs "etc/ssl/certs") "\"")))
|
|
)
|
|
))))
|
|
(propagated-inputs
|
|
(list
|
|
gnupg
|
|
nss-certs
|
|
python-coincurve-anonswap
|
|
python-pycryptodome
|
|
python-pytest
|
|
python-protobuf
|
|
python-sqlalchemy-1.4.39
|
|
python-pyzmq
|
|
python-gnupg
|
|
python-jinja2
|
|
python-pysocks
|
|
python-mnemonic
|
|
))
|
|
(native-inputs
|
|
(list
|
|
python-setuptools
|
|
python-wheel
|
|
python-pylint
|
|
python-pyflakes
|
|
))
|
|
(synopsis "Simple Atomic Swap Network - Proof of Concept")
|
|
(description #f)
|
|
(home-page "https://github.com/tecnovert/basicswap")
|
|
(license license:bsd-3)))
|