fix: add basic support for install/setup of terminal

only if installing alongside existing server app; can improve later
This commit is contained in:
Lance Edgar 2026-01-03 20:52:44 -06:00
parent d6c1e688b1
commit 7225d6b453
6 changed files with 206 additions and 19 deletions

View file

@ -9,7 +9,7 @@ For now this only describes a *development* setup, which assumes the following:
* Python 3.11 or newer
* database in PostgreSQL or MySQL
These steps will setup both the server and terminal in a shared
These steps will setup both the Server and Terminal in a shared
virtual environment.
@ -40,13 +40,13 @@ Install Server
**Please note, you must create your database before running the installer.**
Run the WuttaPOS installer to setup the server app:
Run the WuttaPOS installer to setup the Server app:
.. code-block:: ini
bin/wuttapos install
Now you can run the server app via command line:
Now you can run the Server app via command line:
.. code-block:: ini
@ -86,4 +86,48 @@ should be improved - but that will come later.
Install Terminal
----------------
TODO: this is not yet documented
**Please note, this assumes you already installed the Server as described above.**
For now, we'll just install the Terminal alongside the Server. They
will share the same virtual environment, installed code, app database,
and "most of" the config files.
So within your virtual environment, run the same installer again:
.. code-block:: ini
bin/wuttapos install
.. note::
You will be asked for store and terminal IDs - these should be
valid and refer to actual records for those types, within the
database. See the Admin menu of the Server web app to manage those
records.
At this point the Terminal app should be ready to go. To run the
standalone GUI:
.. code-block:: sh
bin/wuttapos -c app/terminal.conf run
You will need to login; the POS uses a special set of permissions but
the first admin user should already have all that are needed. So just
login using same credentials as for the Server app.
It's also possible (due to the magic of Flet/Flutter) to *serve* the
Terminal as a web app:
.. code-block:: sh
bin/wuttapos -c app/terminal.conf serve
In that case (by default) you can browse it at http://localhost:8332
That might be useful for online demo purposes etc. but definitely the
intention is to run as standalone GUI for production. (However the
story around tablets is TBD.)
For now, running as a web service like that is not a supported
feature.