Mail: [email protected] Phone: +1(424)231-4091

1. The Environment

Before considering installing NexoPOS, a proper environment should be set up. There are many solutions that can be used to host NexoPOS such as local hosting and remote hosting. However, the most important when you must determine the location of the environment is to consider what operating system will be used. This guide will cover :

  • Preparing the environment for Ubuntu 20.04
  • Preparing the environment for Windows 10

Preparing the environment on Linux (Ubuntu 20.04)

Installing Apache, PHP

NexoPOS requires PHP 8.1, so the first thing to install is apache with PHP 8.1 Whether you're using Ubuntu 20.04 locally or remotely, the installation will be made from the CLI (Command Line Interface). If you would like to know how to install and configure PHP 8.1 on Ubuntu, this tutorial covers it.

Installing MySQL and PhpMyAdmin

We'll need to install a database manager and a graphical interface for managing databases such as PhpMyAdmin.

There are many tutorials online that are well-made for this purpose. We suggest the tutorial written on Digital Ocean.

Installing Composer

Composer is required to install NexoPOS, even if you want to install using Github. The installation of Composer is simple. The documentation of Composer explains how you should proceed to install it on Ubuntu. But you can follow these instructions to download and install Composer on your system.

Let's first update the package manager :

sudo apt update

We'll now switch to the home directory and download composer.

cd ~
curl -sS https://getcomposer.org/installer -o composer-setup.php

Let's now install Composer globally so that we can use the shortcut "composer" on the CLI :

sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer

So now by typing "composer" on your CLI, you should have a similar output.

   ______
  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                    /_/
Composer version 2.3.5 2022-04-13 16:43:00

Usage:
  command [options] [arguments]

Options:
  -h, --help                     Display help for the given command. When no command is given display help for the list command
  -q, --quiet                    Do not output any message
  -V, --version                  Display this application version
      --ansi|--no-ansi           Force (or disable --no-ansi) ANSI output
  -n, --no-interaction           Do not ask any interactive question
      --profile                  Display timing and memory usage information
      --no-plugins               Whether to disable plugins.
      --no-scripts               Skips the execution of all scripts defined in composer.json file.
  -d, --working-dir=WORKING-DIR  If specified, use the given directory as working directory.
      --no-cache                 Prevent use of the cache
  -v|vv|vvv, --verbose           Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

Installing Node.js

This step might not be required in the near future as NexoPOS will very soon be released with the assets built. However, this step might be useful for those willing to contribute. Here, the guys from TechAdmin have a mode detailed guide that will be helpful for you.

Installing Supervisor

Supervisor is an application that will help NexoPOS run jobs behind the scene. As we have previously mentioned NexoPOS has background processes that need to be executed. The installation of Supervisor is covered in Laravel documentation, however, for convenience, we'll provide the steps here.

sudo apt-get install supervisor

Then you'll need to configure Supervisor in order to make it point to your NexoPOS installation.

[program:nexopos-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/html/nexopos/artisan queue:work --sleep=3 --tries=3 --max-time=3600
autostart=true
autorestart=true
user=forge
numprocs=8
redirect_stderr=true
stdout_logfile=/var/www/html/nexopos/worker.log
stopwaitsecs=3600

We assume here you plan to install NexoPOS on the directory : /var/www/html/nexopos.

Consider reading the Laravel documentation for further instructions.

Preparing the environment for Windows 10

Regarding Windows configuration, the steps are pretty simple. You just need to install Laragon. It already comes with NodeJs, composer, phpMyAdmin, and many other utilities.

The only thing required is to make sure to configure "Scheduled Tasks" to execute on the directory where NexoPOS is installed. If on Windows you're using WSL, then the above guide for Ubuntu applies.

Next: How To Download And Build NexoPOS.