Go to file
nek0 74407b1c75 fixed permissions 2016-01-30 18:29:45 +01:00
Handler fixed permissions 2016-01-30 18:29:45 +01:00
Import fixed permissions 2016-01-30 18:29:45 +01:00
Migration/0.0.0-0.0.1 fixed permissions 2016-01-30 18:29:45 +01:00
Settings fixed permissions 2016-01-30 18:29:45 +01:00
app fixed permissions 2016-01-30 18:29:45 +01:00
config fixed permissions 2016-01-30 18:29:45 +01:00
messages fixed permissions 2016-01-30 18:29:45 +01:00
static fixed permissions 2016-01-30 18:29:45 +01:00
templates fixed permissions 2016-01-30 18:29:45 +01:00
test fixed permissions 2016-01-30 18:29:45 +01:00
.gitignore added supplier management 2015-10-11 20:11:31 +02:00
Application.hs fixed permissions 2016-01-30 18:29:45 +01:00
Foundation.hs fixed permissions 2016-01-30 18:29:45 +01:00
Import.hs fixed permissions 2016-01-30 18:29:45 +01:00
LICENSE.md fixed permissions 2016-01-30 18:29:45 +01:00
Model.hs fixed permissions 2016-01-30 18:29:45 +01:00
README.md fixed permissions 2016-01-30 18:29:45 +01:00
Settings.hs fixed permissions 2016-01-30 18:29:45 +01:00
stack.yaml stackification 2016-01-22 19:45:30 +01:00
yammat.cabal fixed permissions 2016-01-30 18:29:45 +01:00

README.md

#yammat

Yet Another MateMAT

##Introduction

This project aims to be an implementation for a trust based POS for hackerspaces.

##Dependencies

###External dependencies

In order to build yammat you need the packages cabal-install, ghc, libmagick++-dev and postgresql. Furthermore you need the Haskell packages alex and happy. To install these enter cabal install alex happy into your command line.

###Internal dependencies

Before installing the internal dependencies it is best practice to put the project into a sandbox with cabal sandbox init.

All internal dependencies are in the file yammat.cabal and will be installed automagically with the command cabal install --only-dependencies.

##Building

To build this project enter cabal configure && cabal build exe:yammat into your command line

##Deployment

Copy or link the executable dist/build/yammat/yammat to your desired run location alongside with the folders static and config. The Folders should be copied, or you will get problems with your git pulls.

##Configuration

Check the configuration File config/settings.yml. Create Postgresql Databases according to these settings.

##Lift-Off

Run ./yammat config/settings.yml in your desired run location. Finally point a reverse-proxy (something like nginx) at http://localhost:3000 or any other port you configured in config/settings.yml.

For better control You can wrap an init script around this. How to do this is described in my blog.

##Migrations

###0.0.0-0.0.1

  • Delete column alt_time from table avatar in your Database with alter table "avatar" drop column "alt_time";
  • Start yammat normally to fill database with dummy data and stop it again
  • Run migration script
    • if you have built yammat with a sandbox, run runghc -package-db/full/path/to/sandbox(XXX-ghc-version-packages.conf.d /path/to/yammat/Migration/0.0.0-0.0.1/Migration.hs
      • Note: No space between the option -package-db and its argument
    • without sandbox: runghc /path/to/yammat/Migration/0.0.0-0.0.1/Migration.hs
  • Enjoy your freshly migrated Matemat