Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Odoo PosBoxLess Script Instalation
#!/usr/bin/env bash
PKGS_TO_INSTALL="cups adduser postgresql-client python python-dateutil python-decorator python-docutils python-feedparser python-imaging python-jinja2 python-ldap python-libxslt1 python-lxml python-mako python-mock python-openid python-passlib python-psutil python-psycopg2 python-babel python-pychart python-pydot python-pyparsing python-pypdf2 python-reportlab python-requests python-tz python-vatnumber python-vobject python-werkzeug python-xlwt python-yaml postgresql python-gevent python-serial python-pip python-dev localepurge vim mc mg screen iw hostapd isc-dhcp-server git rsync console-data"
apt-get -y install ${PKGS_TO_INSTALL}
adduser pi -s /sbin/nologin -p 'raspberry'
cd /home/pi
git clone -b 9.0 --no-checkout --depth 1 https://github.com/odoo/odoo.git
cd odoo
git config core.sparsecheckout true
echo "addons/web
addons/web_kanban
addons/hw_*
addons/point_of_sale/tools/posbox/configuration
openerp/
odoo.py" | tee --append .git/info/sparse-checkout > /dev/null
git read-tree -mu HEAD
pip install pyserial pyusb==1.0.0b1 qrcode evdev babel pypdf
groupadd usbusers
usermod -a -G usbusers pi
usermod -a -G lp pi
usermod -a -G lpadmin pi
sudo -u postgres createuser -s pi
mkdir /var/log/odoo
chown pi:pi /var/log/odoo
echo 'SUBSYSTEM=="usb", GROUP="usbusers", MODE="0660"
SUBSYSTEMS=="usb", GROUP="usbusers", MODE="0660"' > /etc/udev/rules.d/99-usbusers.rules
echo '[Unit]
Description=Odoo PosBoxLess
After=network.target
[Service]
Type=simple
User=pi
Group=pi
ExecStart=/home/pi/odoo/odoo.py --load=web,hw_proxy,hw_posbox_homepage,hw_posbox_upgrade,hw_scale,hw_scanner,hw_escpos
KillMode=mixed
[Install]
WantedBy=multi-user.target
' > /etc/systemd/system/posboxless.service
systemctl enable posboxless.service
reboot
@juanPabloEA

This comment has been minimized.

Copy link

commented Mar 6, 2018

luego de instalar esto que se debe hacer ?

@alexuvero

This comment has been minimized.

Copy link

commented Apr 24, 2018

lo intalo y deve de funcionar com odoo nnormal puerto 8069

@alexuvero

This comment has been minimized.

Copy link

commented Apr 25, 2018

hola instale el scrip pero me da este error
2018-04-25 04:17:33,231 2878 ERROR ? openerp.addons.hw_escpos.controllers.main: Can not get printer description: USBError(13, 'Access denied (insufficient permissions)')
Impossible to handle the device due to previous error [Errno 13] Access denied (insufficient permissions)
por fabor hoy llevo mas de 10 horas intentando esto y eso es lo mejor que me ha ido, le agradeceria mucho su ayuda

@alexuvero

This comment has been minimized.

Copy link

commented Apr 25, 2018

hola, he echo avances aqui dando cabezasos, ayer reintale el ubuntu 10.04, entonces instale su Script Instalación PosBoxLess

ya esto se intala sin problemas, desde el navegador no me sale nada dice "internal server error"
bueno pienso que esto sea por que no tiene nada en el archivo de configuracion "odoo.conf" aunque no se por qu no es una intalacion normal solo se mandan a iniciar os modulos hw_* y punto de venta y el archivo de configuracion que encuentro esta dentro de este ultimo,
en la consola cuando ejecuto el posboxless me sale estos errores, son un fracmento de todo lo que sale.

l

self.setup_db(httprequest)
File "/home/alexander/odoo/openerp/http.py", line 1557, in setup_db
httprequest.session.db = db_monodb(httprequest)
File "/home/alexander/odoo/openerp/http.py", line 1711, in db_monodb
dbs = db_list(True, httprequest)
File "/home/alexander/odoo/openerp/http.py", line 1685, in db_list
dbs = openerp.service.db.list_dbs(force)
File "/home/alexander/odoo/openerp/service/db.py", line 323, in list_dbs
with closing(db.cursor()) as cr:
File "/home/alexander/odoo/openerp/sql_db.py", line 643, in cursor
return Cursor(self.__pool, self.dbname, self.dsn, serialized=serialized)
File "/home/alexander/odoo/openerp/sql_db.py", line 177, in init
self._cnx = pool.borrow(dsn)
File "/home/alexander/odoo/openerp/sql_db.py", line 526, in _locked
return fun(self, *args, **kwargs)
File "/home/alexander/odoo/openerp/sql_db.py", line 594, in borrow
**connection_info)
File "/usr/lib/python2.7/dist-packages/psycopg2/init.py", line 164, in connect
conn = _connect(dsn, connection_factory=connection_factory, async=async)
OperationalError: FATAL: role "root" does not exist
2018-04-25 14:57:06,837 3885 INFO ? openerp.sql_db: Connection to the database failed
2018-04-25 14:57:06,849 3885 INFO ? werkzeug: 127.0.0.1 - - [25/Apr/2018 14:57:06] "GET /hw_proxy/hello HTTP/1.1" 500 -
2018-04-25 14:57:06,891 3885 ERROR ? werkzeug: Error on request:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/werkzeug/serving.py", line 180, in run_wsgi
execute(self.server.app)
File "/usr/lib/python2.7/dist-packages/werkzeug/serving.py", line 168, in execute
application_iter = app(environ, start_response)
File "/home/alexander/odoo/openerp/service/server.py", line 249, in app
return self.app(e, s)
File "/home/alexander/odoo/openerp/service/wsgi_server.py", line 184, in application
return application_unproxied(environ, start_response)
File "/home/alexander/odoo/openerp/service/wsgi_server.py", line 170, in application_unproxied
result = handler(environ, start_response)
File "/home/alexander/odoo/openerp/http.py", line 1497, in call
return self.dispatch(environ, start_response)
File "/home/alexander/odoo/openerp/http.py", line 1471, in call
return self.app(environ, start_wrapped)
File "/usr/lib/python2.7/dist-packages/werkzeug/wsgi.py", line 591, in call
return self.app(environ, start_response)
File "/home/alexander/odoo/openerp/http.py", line 1633, in dispatch
self.setup_db(httprequest)
File "/home/alexander/odoo/openerp/http.py", line 1557, in setup_db
httprequest.session.db = db_monodb(httprequest)
File "/home/alexander/odoo/openerp/http.py", line 1711, in db_monodb
dbs = db_list(True, httprequest)
File "/home/alexander/odoo/openerp/http.py", line 1685, in db_list
dbs = openerp.service.db.list_dbs(force)
File "/home/alexander/odoo/openerp/service/db.py", line 323, in list_dbs
with closing(db.cursor()) as cr:
File "/home/alexander/odoo/openerp/sql_db.py", line 643, in cursor
return Cursor(self.__pool, self.dbname, self.dsn, serialized=serialized)
File "/home/alexander/odoo/openerp/sql_db.py", line 177, in init
self._cnx = pool.borrow(dsn)
File "/home/alexander/odoo/openerp/sql_db.py", line 526, in _locked
return fun(self, *args, **kwargs)
File "/home/alexander/odoo/openerp/sql_db.py", line 594, in borrow
**connection_info)
File "/usr/lib/python2.7/dist-packages/psycopg2/init.py", line 164, in connect
conn = _connect(dsn, connection_factory=connection_factory, async=async)
OperationalError: FATAL: role "root" does not exist

y la impresora me imprime un tiquet con esto.
20180425_103710

al menos estoy mas cerca que antes, seguire intentando por mi cuenta pero fuera muy bueno contar con su experiencia. y disculpe si lo molesto, mis saludos.

@alexuvero

This comment has been minimized.

Copy link

commented Apr 25, 2018

20180425_141348
20180425_141338

hola otra ves ya soucine ese error pero ahora me sa uno como que no se pued conectar a la base de datos, ya la impresora cuando arranca imprime el ip pero por la direccion que sa no sale da 500 internal error

@dansanti

This comment has been minimized.

Copy link
Owner Author

commented Apr 26, 2018

hola,
lo estas ejecutando con el usuario root, debes ejecutarlo con el usuario pi

@alexuvero

This comment has been minimized.

Copy link

commented Apr 27, 2018

hola muchas gracias por responder, yo lo que hise despues de esto fue crear el usuario pi en el sisttema y el rol root en postgres. por que comprobando la intruccion "adduser pi -s /sbin/nologin -p 'raspberry'" pude comprobar que en ubuntu 16.04 no funciona, entonces lo cree manual y movi todas las carpetas para /home/pi y despues me di cuenta que se trata de conectar con el rol root a postgresql, pues entonces lo cree y listo. , al no crea el usuario pi en el sistema un una de las primeras intrucciones de ai para alante ya ba mal, yo no tenia nada de experiencia en linux, y la personas que intentan ayudar no explican mucho quisas por falta de tiempo ,me parese que sobre un devian ese script funcionaria ala primera, aunque ademas hay que hacer unas modificaciones sensillas en dos archibos para la configuracion de las interfaces por que el nombre que busca no es el que asume ubuntu y esto hace que no vea la lan, yo quisiera hacer un pequeno tutorial recopilando la informacion que obtube de 3 personas mas que me sirvieron para hacer correr e posboxless, para que otras personas como yo no les de esto tanto trabajo, y publicar el script este tuyo con las modificaciones a mi entender para que funcione en ubuntu 16.04, no se si esto a ud le paresca bien. siempre atribuyendole a ud los meritos de haber creado el script, que ud cree, saludos

@dansanti

This comment has been minimized.

Copy link
Owner Author

commented Apr 28, 2018

  • Algo mal puede que hayas hecho, porque yo lo uso en ubuntu 16.04 de esa forma.
  • Lo correcto sería crear una correción a este script, en agradecimiento a publicarlo por lo menos
  • También publicaré un tutorial, en cuanto afine unos temas en el módulo de punto de ventas

Saludos Cordiales

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.