# Taler Merchant Demos Setup
*Warning: This page is not completed yet. Follow the instructions at your own risk*
## Installing the dependencies
*Step 0 (Optional - Reccomended): Update Apt Repositories*
> ```$ sudo apt update```
Step 1: `cd` into the directory:
> ```$ cd taler-merchant-demos```
Step 2: Ensure Python 3.5 or above and Flask with the Babel extension are installed using a command like:
> ```$ sudo apt install python3.8 python3-flask-babel -y```
Step 3: Ensure Python3 Pip is installed:
> ```$ sudo apt install python3-pip -y```
Step 4: configure this package using:
> ```$ ./configure --destination=local```
Step 5: Install UWSGI
*NOTE: DO NOT INSTALL USING PIP2 (on my system, that is what the pip command uses) - INSTALL IT USING PIP3*
> ```$ pip3 install uwsgi```
Step 6: Install LXML
*NOTE: DO NOT INSTALL USING PIP2 (on my system, that is what the pip command uses) - INSTALL IT USING PIP3*
> ```$ pip3 install lxml```
Step 7: Install NPM
> ```$ sudo apt install npm; sudo npm install -g npm node sass```
This will the NPM implementation of sass. If you have a Ruby
tool called 'sass' installed, this build will NOT work.
## Quick Install for the dependencies
Here's one command to automatically install all dependencies at once:
> ```$ sudo apt install python3.8 python3-pip npm -y; pip3 install lxml uwsgi; ./configure --destination=local; sudo npm install -g npm node;make sass-install```
## Configuring the demo
*This is just how I did it, and not the main method of doing it*
Step 1: Open the config:
> ```$ editor ~/.config/taler.conf```
Step 2: Adding the required keys:
> Copy & Paste the following into the file:
> ```
> [frontends]
> backend_apikey = "ApiKey Sandbox"
> backend = https://backend.test.taler.net/
>
> [taler]
> currency = TESTKUDOS
>
> [blog]
> http_port = 8080
> serve = http
```
Step 3: Configure the config:
> 1. Replace the backend api key with the api key for the backend
> 2. Replace the backend URL with the actual backend link
> 3. Replace the http port with the port
> 4. (Optional: Replace the currency with your currency)
## Applying Changes
To apply changes, use
> ```$ make install```
To apply ***SCSS*** changes, use
> ```$ make scss-build```
## Running the program
To start the server, use the following command:
> ```$ taler-merchant-demos blog```
## More configuration options.
This makes the blog speak UWSGI over TCP:
> ```
> [frontends]
> backend_apikey = "ApiKey Sandbox"
> backend = https://backend.test.taler.net/
>
> [taler]
> currency = TESTKUDOS
>
> [blog]
> serve = uwsgi
> uwsgi_serve = tcp
> uwsgi_port = XZY
> ```
This makes the blog speak UWSGI over unix domain socket:
> ```
> [frontends]
> backend_apikey = "ApiKey Sandbox"
> backend = https://backend.test.taler.net/
>
> [taler]
> currency = TESTKUDOS
>
> [blog]
> serve = uwsgi
> uwsgi_serve = unix
> uwsgi_unixpath = "/tmp/blog.uwsgi"
> uwsgi_unixpath_mode = XZY
> ```