Remove outdated installation docs.

[?]
Jan 31, 2021, 7:18 PM
JJQTDJZT32I4R2X4PL3I7GY4CNYFFD5WNGRAUIC7P6AQUWP74HAAC

Dependencies

  • [2] NZGH6W6V add cabal install cpphs step to docs to avoid thyme install failure
  • [3] XZLSHL4D The server is now (tenuously) running, and serving pages via SSL!
  • [4] QO4NFWIY Added sample config file.
  • [5] IRG4KNAE Trivial deletion.
  • [6] M4KM76DG Merge branch 'stackify'
  • [7] EQXRXRZD Changed to use tasty instead of test-framework
  • [8] RSEB2NFG Replacing Snap with Scotty.
  • [9] PBD7LZYQ Postgres & auth are beginning to function.
  • [10] 45QJYWN3 Fixing up the README. Still struggling with the ending.
  • [11] E2KOBKIJ Add setup script detailing the setup of the docker host.
  • [12] 2Y2QZFVF Switch to more modern cabal2nix-based workflow.
  • [13] LEINLS3X Update deployment documentation.
  • [14] NTPC7KJE Trivial changes, feature scratchpad.
  • [15] GMYPBCWE Make docker-compose work.
  • [16] EW2XN7KU Update docker build, clean up migration for payments tables.
  • [17] LAROLAYU WIP
  • [18] ADMKQQGC Initial empty Snap project.
  • [19] EZQG2APB Update task list.
  • [20] OBFPJS2G Project successfully builds and tests under nix.
  • [21] PGZJ736C Update aftok.cfg.example and revise INSTALL instructions
  • [22] KEP5WUFJ Convert project to stack-based build.
  • [23] HMDM3B55 Implement core of payments/billing infrastructure.
  • [24] HN754HM5 Add README.
  • [25] RFYEVKZQ Add nix-shell based build environment.
  • [26] IPG33FAW Add billing daemon
  • [27] 46OSK255 Add reactclient submodule.
  • [28] RJ2RF7DG License under the AGPL
  • [29] 4ZLEDBK7 Initial attempts at dockerizing, cabal isn't cooperating.
  • [30] 4U7F3CPI THE GREAT RENAMING OF THINGS!
  • [31] 373LXH2X Add MAYBE.md, update task list.
  • [32] 2WOOGXDH Use dbmigrations to manage database state.
  • [33] X3ES7NUA Fine. I'll use ormolu. At least it doesn't break the code.
  • [34] RB2ETNIF Add skeletal PureScript client project.
  • [35] NVOCQVAS Initial failing tests.
  • [36] DLZRD7VB Add a preliminary, probably somewhat broken set of setup instructions.
  • [37] AXKKXBWN Initial attempt at writing down my ideas for a company based on trust.
  • [38] ZKJJVD2H Fix aftok-server runit script permissions.
  • [39] JEOPOOPT Dockerfile now builds correctly.
  • [40] 5W5M56VJ Move library code to 'lib'
  • [41] T44T2PDL Rename trust.txt to README.md
  • [42] 64C6AWH6 Rename Ananke -> Quixotic, project reboot.
  • [43] 45AI46JN Move readme to inception.md
  • [44] EPOYLP7O A little .gitignore cleanup.
  • [45] ZP62WC47 Begin conversion to build with stack.
  • [46] DFOBMSAO Initial work on payments API
  • [47] B6HWAPDP Modularize & update to recent haskoin.
  • [48] NJNMO72S Add zcash.com submodule and update client to modern halogen.

Change contents

  • file deletion: INSTALL.md (----------)
    [4.2][4.2205:2239](),[4.2239][4.1:1]()
    Development Installation
    ========================
    First, you'll need a local install of postgres. This is because the
    postgresql-simple package requires some of the postgres command-line tools
    and/or libraries in order to build.
    You'll want to create a new postgres database for the aftok project, and a
    user with superuser permissions on that database. Then, you can use the
    script sql/aftok-pg.sql to create the initial state of your database.
    psql -h localhost -f sql/aftok-pg.sql aftok aftok
    Then, the usual setup steps apply:
    cabal sandbox init
    cabal configure
    cabal install --only-dependencies --enable-tests
    cabal build
    cabal test
    If using nix, instead you can do the following:
    cd <project_root>
    cabal2nix --shell . > shell.nix
    nix-shell -I ~ --command 'cabal configure --enable-tests'
    Next, copy the example config file into place and edit it to provide the port you want
    the service to run on, and your postgres database connection information.
    cp conf/aftok.cfg.example conf/aftok.cfg
    vi conf/aftok.cfg
    Now, when you do 'cabal run aftok-server' it should actually start up and run.
    There are a few shell scripts in <project_root>/scripts that provide basic
    functionality for creating a project, creating a user, and starting and
    stopping your clock. Right now these are hardcoded with project identifiers and
    a bitcoin address that are local to a test blockchain on my system. Speaking of
    which, you'll also eventually want to install bitcoind, although at the moment
    basically nothing related to the bitcoin infrastructure is working anyway so
    it's not immediately necessary.
    Docker Installation
    ===================
    The Aftok server application is now deployable under Docker. Here's how you can
    go about running the server in a local docker container:
    docker build -t <yourid>/aftok:<version> .
    for example,
    docker build -t nuttycom/aftok:0.1 .
    To run the container in "development" mode, it's useful to leave open a TTY, so that you
    can see output from stdout:
    docker run -i -t --net="host" -v /home/nuttycom/projects/aftok/docker-conf:/etc/aftok <image_id>
    Or, you can daemonize the container, as we will do in production:
    docker run -d --net="host" -v /home/nuttycom/projects/aftok/docker-conf:/etc/aftok <image_id>
    In both of these cases, I'm simply using the --net="host" switch to allow the container
    access to 'localhost' on the host machine, so that I don't have to explicitly
    configure where postgres is running.
    This will give you an image ID that you can then run. The container is set up
    to provide a mountable filesystem volume at /etc/aftok where you can put your
    configuration files. You will need to copy your aftok.cfg file and your two
    .pem files to somewhere local (say, a docker-conf directory) and then edit the
    aftok.cfg file make sense in the context of the container. For example, here's
    an aftok.cfg set up for docker use:
    ~~~
    port = 8000
    siteKey = "/etc/aftok/snap-site-key"
    db {
    host = "localhost"
    port = 5432
    user = "aftok"
    pass = ""
    db = "aftok"
    # Nmuber of distinct connection pools to maintain. The smallest acceptable
    # value is 1.
    numStripes = 1
    # Number of seconds an unused resource is kept open. The smallest acceptable
    # value is 0.5 seconds.
    idleTime = 5
    # Maximum number of resources to keep open per stripe. The smallest
    # acceptable value is 1.
    maxResourcesPerStripe = 20
    }
    ~~~
    cabal install cpphs //for some reason the thyme library won't find this dependency on its own