diff options
author | Konstantin Shalygin | 2018-05-31 21:53:03 +0700 |
---|---|---|
committer | Konstantin Shalygin | 2018-05-31 21:53:03 +0700 |
commit | 44553e2ac433ba5c64e9020b52c241df25dc6c93 (patch) | |
tree | 8a84c7a1347e7560daecf8e94e88abe546e89ae4 | |
parent | 3f9f8ebb7a0b99961556670118379e5c3e9a15d2 (diff) | |
download | aur-44553e2ac433ba5c64e9020b52c241df25dc6c93.tar.gz |
Aeond Sophia v0.12.0.0
-rw-r--r-- | .SRCINFO | 28 | ||||
-rw-r--r-- | PKGBUILD | 42 | ||||
-rw-r--r-- | aeon-0.12.0.0_gcc8.patch | 85 | ||||
-rw-r--r-- | aeon.tmpfiles | 1 | ||||
-rw-r--r-- | aeond.conf | 3 | ||||
-rw-r--r-- | aeond.service | 7 |
6 files changed, 139 insertions, 27 deletions
@@ -1,23 +1,37 @@ # Generated by mksrcinfo v8 -# Mon Feb 5 07:38:00 UTC 2018 +# Thu May 31 14:50:28 UTC 2018 pkgbase = aeon pkgdesc = A lightweight CryptoNote digital currency. - pkgver = 0.9.14.0 + pkgver = 0.12.0.0 pkgrel = 1 url = https://github.com/aeonix/aeon arch = x86_64 arch = armv7h arch = aarch64 license = custom:Cryptonote - makedepends = boost-libs + makedepends = git + makedepends = cmake + makedepends = boost + makedepends = doxygen + makedepends = rapidjson + depends = boost-libs + depends = openssl + depends = zeromq + depends = pcsclite + depends = icu + backup = etc/aeond.conf source = aeond.service source = aeon.sysusers source = aeon.tmpfiles - source = https://github.com/aeonix/aeon/archive/v0.9.14.0.tar.gz - sha256sums = 6c3cbbe52f86e9c4c423a89938835a8dcec92ce5d9243744bda1ec18faa21924 + source = aeond.conf + source = https://github.com/aeonix/aeon/archive/v0.12.0.0.tar.gz + source = aeon-0.12.0.0_gcc8.patch + sha256sums = 5212dff199bb3880191292976cd8278dcdbae64f9c0ab39a9c2a91a4733186c3 sha256sums = a0cdf75b86073829f4033e367f36e9418dc20556e7adfa6ffac8653c67cd6337 - sha256sums = 6e9858948c25510f0a30cd179db494d18b32d428183f6679cb7be8ff479aae21 - sha256sums = 50379f3dfb85fdcf62a92f63fef2a4afc51efdba6a62cf4693a02621b596b8ba + sha256sums = 1da20b66d52db4f1c5b3106cf27ee54033650a0e36c5c775b25c9e86e6027be0 + sha256sums = 3ef15e3c9e2d146c415f2e483dd10e4ec36f653e4684c254d9f69a5fb699036b + sha256sums = 61091d6c76417d6c4901dd3583ecd8b40bc651fd2a78ac78093a3f9c0b36c5b1 + sha256sums = cf1733cea4f6a689add1a9300ed81d0a9115f2c1021ac125ee9d083972027770 pkgname = aeon @@ -2,42 +2,48 @@ # Contributor: Konstantin Shalygin <k0ste@k0ste.ru> pkgname='aeon' -pkgver='0.9.14.0' +pkgver='0.12.0.0' pkgrel='1' pkgdesc='A lightweight CryptoNote digital currency.' arch=('x86_64') url="https://github.com/${pkgname}ix/${pkgname}" -makedepends=('boost-libs') +depends=('boost-libs' 'openssl' 'zeromq' 'pcsclite' 'icu') +makedepends=('git' 'cmake' 'boost' 'doxygen' 'rapidjson') license=('custom:Cryptonote') arch=('x86_64' 'armv7h' 'aarch64') source=("${pkgname}d.service" "${pkgname}.sysusers" "${pkgname}.tmpfiles" - "${url}/archive/v${pkgver}.tar.gz") -sha256sums=('6c3cbbe52f86e9c4c423a89938835a8dcec92ce5d9243744bda1ec18faa21924' + "${pkgname}d.conf" + "${url}/archive/v${pkgver}.tar.gz" + "aeon-0.12.0.0_gcc8.patch") +sha256sums=('5212dff199bb3880191292976cd8278dcdbae64f9c0ab39a9c2a91a4733186c3' 'a0cdf75b86073829f4033e367f36e9418dc20556e7adfa6ffac8653c67cd6337' - '6e9858948c25510f0a30cd179db494d18b32d428183f6679cb7be8ff479aae21' - '50379f3dfb85fdcf62a92f63fef2a4afc51efdba6a62cf4693a02621b596b8ba') + '1da20b66d52db4f1c5b3106cf27ee54033650a0e36c5c775b25c9e86e6027be0' + '3ef15e3c9e2d146c415f2e483dd10e4ec36f653e4684c254d9f69a5fb699036b' + '61091d6c76417d6c4901dd3583ecd8b40bc651fd2a78ac78093a3f9c0b36c5b1' + 'cf1733cea4f6a689add1a9300ed81d0a9115f2c1021ac125ee9d083972027770') +backup=("etc/${pkgname}d.conf") + prepare() { cd "${pkgname}-${pkgver}" - mkdir build + git clone git://github.com/monero-project/miniupnp.git external/miniupnp + git clone git://github.com/monero-project/unbound.git external/unbound + git -C external/miniupnp checkout monero + git -C external/unbound checkout monero + patch -p1 -i "${srcdir}/aeon-0.12.0.0_gcc8.patch" } build() { - cd "${pkgname}-${pkgver}/build" - cmake .. \ - -DCMAKE_BUILD_TYPE="Release" \ - -DCMAKE_C_FLAGS="-fassociative-math" \ - -DCMAKE_CXX_FLAGS="-fassociative-math" \ - -DCMAKE_INSTALL_PREFIX="/usr" - make + cd "${pkgname}-${pkgver}" + make release } package() { - cd "${pkgname}-${pkgver}/build/src" - install -Dm775 "${pkgname}d" "${pkgdir}/usr/bin/${pkgname}d" - install -Dm775 "simplewallet" "${pkgdir}/usr/bin/${pkgname}-wallet-cli" + cd "${pkgname}-${pkgver}" install -Dm0644 "${srcdir}/${pkgname}.tmpfiles" "${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf" install -Dm0644 "${srcdir}/${pkgname}.sysusers" "${pkgdir}/usr/lib/sysusers.d/${pkgname}.conf" - install -Dm644 "${srcdir}/${pkgname}d.service" "${pkgdir}/usr/lib/systemd/system/${pkgname}d.service" + install -Dm0644 "${srcdir}/${pkgname}d.service" "${pkgdir}/usr/lib/systemd/system/${pkgname}d.service" + install -Dm0644 "${srcdir}/${pkgname}d.conf" "${pkgdir}/etc/${pkgname}d.conf" + cp -r "build/release/bin" "${pkgdir}/usr" } diff --git a/aeon-0.12.0.0_gcc8.patch b/aeon-0.12.0.0_gcc8.patch new file mode 100644 index 000000000000..7f61f812251a --- /dev/null +++ b/aeon-0.12.0.0_gcc8.patch @@ -0,0 +1,85 @@ +diff -Naupr aeon-0.12.0.0_orig/external/rapidjson/document.h aeon-0.12.0.0/external/rapidjson/document.h +--- aeon-0.12.0.0_orig/external/rapidjson/document.h 2018-05-24 15:54:20.000000000 +0700 ++++ aeon-0.12.0.0/external/rapidjson/document.h 2018-05-31 13:38:38.880208263 +0700 +@@ -1936,7 +1936,12 @@ private: + if (count) { + GenericValue* e = static_cast<GenericValue*>(allocator.Malloc(count * sizeof(GenericValue))); + SetElementsPointer(e); ++RAPIDJSON_DIAG_PUSH ++#if defined(__GNUC__) && __GNUC__ >= 8 ++RAPIDJSON_DIAG_OFF(class-memaccess) // ignore complains from gcc that no trivial copy constructor exists. ++#endif + std::memcpy(e, values, count * sizeof(GenericValue)); ++RAPIDJSON_DIAG_POP + } + else + SetElementsPointer(0); +@@ -1949,7 +1954,12 @@ private: + if (count) { + Member* m = static_cast<Member*>(allocator.Malloc(count * sizeof(Member))); + SetMembersPointer(m); ++RAPIDJSON_DIAG_PUSH ++#if defined(__GNUC__) && __GNUC__ >= 8 ++RAPIDJSON_DIAG_OFF(class-memaccess) // ignore complains from gcc that no trivial copy constructor exists. ++#endif + std::memcpy(m, members, count * sizeof(Member)); ++RAPIDJSON_DIAG_POP + } + else + SetMembersPointer(0); +diff -Naupr aeon-0.12.0.0_orig/src/crypto/chacha.h aeon-0.12.0.0/src/crypto/chacha.h +--- aeon-0.12.0.0_orig/src/crypto/chacha.h 2018-05-24 15:54:20.000000000 +0700 ++++ aeon-0.12.0.0/src/crypto/chacha.h 2018-05-31 13:39:11.727214182 +0700 +@@ -73,14 +73,14 @@ namespace crypto { + static_assert(sizeof(chacha_key) <= sizeof(hash), "Size of hash must be at least that of chacha_key"); + tools::scrubbed_arr<char, HASH_SIZE> pwd_hash; + crypto::cn_slow_hash(data, size, pwd_hash.data(), 0/*light*/, 0/*variant*/, 0/*prehashed*/); +- memcpy(&key, pwd_hash.data(), sizeof(key)); ++ memcpy(&unwrap(key), pwd_hash.data(), sizeof(key)); + } + + inline void generate_chacha_key_prehashed(const void *data, size_t size, chacha_key& key) { + static_assert(sizeof(chacha_key) <= sizeof(hash), "Size of hash must be at least that of chacha_key"); + tools::scrubbed_arr<char, HASH_SIZE> pwd_hash; + crypto::cn_slow_hash(data, size, pwd_hash.data(), 0/*light*/, 0/*variant*/, 1/*prehashed*/); +- memcpy(&key, pwd_hash.data(), sizeof(key)); ++ memcpy(&unwrap(key), pwd_hash.data(), sizeof(key)); + } + + inline void generate_chacha_key(std::string password, chacha_key& key) { +diff -Naupr aeon-0.12.0.0_orig/src/cryptonote_basic/account.cpp aeon-0.12.0.0/src/cryptonote_basic/account.cpp +--- aeon-0.12.0.0_orig/src/cryptonote_basic/account.cpp 2018-05-24 15:54:20.000000000 +0700 ++++ aeon-0.12.0.0/src/cryptonote_basic/account.cpp 2018-05-31 13:38:38.880208263 +0700 +@@ -157,7 +157,7 @@ DISABLE_VS_WARNINGS(4244 4345) + void account_base::create_from_viewkey(const cryptonote::account_public_address& address, const crypto::secret_key& viewkey) + { + crypto::secret_key fake; +- memset(&fake, 0, sizeof(fake)); ++ memset(&unwrap(fake), 0, sizeof(fake)); + create_from_keys(address, fake, viewkey); + } + //----------------------------------------------------------------- +diff -Naupr aeon-0.12.0.0_orig/src/daemon/rpc_command_executor.cpp aeon-0.12.0.0/src/daemon/rpc_command_executor.cpp +--- aeon-0.12.0.0_orig/src/daemon/rpc_command_executor.cpp 2018-05-24 15:54:20.000000000 +0700 ++++ aeon-0.12.0.0/src/daemon/rpc_command_executor.cpp 2018-05-31 13:38:38.880208263 +0700 +@@ -972,7 +972,7 @@ bool t_rpc_command_executor::print_trans + } + else + { +- memset(&res.pool_stats, 0, sizeof(res.pool_stats)); ++ res.pool_stats = {}; + if (!m_rpc_server->on_get_transaction_pool_stats(req, res, false) || res.status != CORE_RPC_STATUS_OK) + { + tools::fail_msg_writer() << make_error(fail_message, res.status); +diff -Naupr aeon-0.12.0.0_orig/src/rpc/core_rpc_server_commands_defs.h aeon-0.12.0.0/src/rpc/core_rpc_server_commands_defs.h +--- aeon-0.12.0.0_orig/src/rpc/core_rpc_server_commands_defs.h 2018-05-24 15:54:20.000000000 +0700 ++++ aeon-0.12.0.0/src/rpc/core_rpc_server_commands_defs.h 2018-05-31 13:38:38.880208263 +0700 +@@ -1554,6 +1554,8 @@ namespace cryptonote + std::vector<txpool_histo> histo; + uint32_t num_double_spends; + ++ txpool_stats(): bytes_total(0), bytes_min(0), bytes_max(0), bytes_med(0), fee_total(0), oldest(0), txs_total(0), num_failing(0), num_10m(0), num_not_relayed(0), histo_98pc(0), num_double_spends(0) {} ++ + BEGIN_KV_SERIALIZE_MAP() + KV_SERIALIZE(bytes_total) + KV_SERIALIZE(bytes_min) diff --git a/aeon.tmpfiles b/aeon.tmpfiles index efd1e0043f7a..fb0e847bae87 100644 --- a/aeon.tmpfiles +++ b/aeon.tmpfiles @@ -1 +1,2 @@ d /var/lib/aeon 0755 aeon aeon +d /var/log/aeon 0755 aeon aeon diff --git a/aeond.conf b/aeond.conf new file mode 100644 index 000000000000..f6882e4d133d --- /dev/null +++ b/aeond.conf @@ -0,0 +1,3 @@ +data-dir=/var/lib/aeon +log-file=/var/log/aeon/aeond.log +log-level=0 diff --git a/aeond.service b/aeond.service index 435d251f9f2e..33157d5b5bab 100644 --- a/aeond.service +++ b/aeond.service @@ -7,8 +7,11 @@ User=aeon Group=aeon WorkingDirectory=~ RuntimeDirectory=aeon -Type=simple -ExecStart=/usr/bin/aeond --no-console +Type=forking +PIDFile=/run/aeon/aeond.pid +ExecStart=/usr/bin/aeond --config-file /etc/aeond.conf \ + --detach --pidfile /run/aeon/aeond.pid +Restart=always [Install] WantedBy=multi-user.target |