Merge branch 'jt/urbit-large-log' (#2211)

* jt/urbit-large-log:
  build: add urbit-large-log derivation
  build: use generic builder in urbit derivation

Signed-off-by: Jared Tobin <jared@tlon.io>
This commit is contained in:
Jared Tobin 2020-01-31 14:54:09 +04:00
commit 0fc9056074
No known key found for this signature in database
GPG Key ID: 0E4647D58F8A69E4
4 changed files with 32 additions and 17 deletions

View File

@ -24,6 +24,13 @@ let
urbit = mkUrbit { debug = false; };
urbit-debug = mkUrbit { debug = true; };
urbit-large-log = pkgs.stdenv.lib.overrideDerivation urbit (_: {
patches = [ ./urbit/patches/large-log-limit.patch ];
patchFlags = "-p3";
});
in
{ inherit ent ge-additions arvo arvo-ropsten herb urbit urbit-debug; }
{ inherit ent ge-additions arvo arvo-ropsten herb;
inherit urbit urbit-debug urbit-large-log;
}

View File

@ -1,15 +0,0 @@
source $stdenv/setup
cp -r $src ./src
chmod -R u+w ./src
cd src
bash ./configure
make clean
make all -j8
make test
mkdir -p $out/bin
cp ./build/urbit $out/bin/$exename
cp ./build/urbit-worker $out/bin/$exename-worker

View File

@ -27,9 +27,17 @@ let
inherit name meta;
exename = name;
src = ../../../pkg/urbit;
builder = ./builder.sh;
nativeBuildInputs = deps ++ vendor;
installPhase = ''
make all -j8
make test
mkdir -p $out/bin
cp ./build/urbit $out/bin/$exename
cp ./build/urbit-worker $out/bin/$exename-worker
'';
# See https://github.com/NixOS/nixpkgs/issues/18995
hardeningDisable = if debug then [ "all" ] else [];

View File

@ -0,0 +1,15 @@
diff --git a/pkg/urbit/vere/lmdb.c b/pkg/urbit/vere/lmdb.c
index b46cc66ee..b8f647dde 100644
--- a/pkg/urbit/vere/lmdb.c
+++ b/pkg/urbit/vere/lmdb.c
@@ -44,8 +44,8 @@ MDB_env* u3_lmdb_init(const char* log_path)
// TODO: Start with forty gigabytes for the maximum event log size. We'll
// need to do something more sophisticated for real in the long term, though.
//
- const size_t forty_gigabytes = 42949672960;
- ret_w = mdb_env_set_mapsize(env, forty_gigabytes);
+ const size_t sixty_gigabytes = 64424509440;
+ ret_w = mdb_env_set_mapsize(env, sixty_gigabytes);
if (ret_w != 0) {
u3l_log("lmdb: failed to set database size: %s\n", mdb_strerror(ret_w));
return 0;