Solved Local web-client/server Kiosk system

obsigna

Profile disabled
I need to set up a kiosk system which must not be connected to any network, consisting of a web server on localhost and a web browser which needs to talk to the local server only.

The web server part is ready to go, and I got no doubts with that one.

Regarding the web browser, I am seeking advice for the most minimal installation. My web application works fine with Google Chrome, Firefox and Safari (although tested only on Windows, macOS and iOS). Questions:
  • may I assume, what works (HTML, JavaScript, SVG) in browsers on the other OS's will work on FreeBSD equally well, given a browser of the same brand?

  • which browser is more lightweight Chrome or Firefox, and which one is better supported on FreeBSD?

  • are there any other browsers, which I might want to try?

  • I read about a Firefox kiosk installation on Linux on top of X.Org only, without needing a window manager nor a desktop environment. Is this possible on FreeBSD as well? Please push me in the right direction, and I will find out the very details.

  • would this be possible on a Core i7 Skylake system, or should I go for older hardware?
 
1) And the same version of browser, yes, though Chrome != Chromium 100%

2) Firefox in both cases. Chromium has issues with tabs crashing

3) Depends on your needs. There are a lot of other browsers out there that are lighter and based on the same rendering engine.

4) I think I saw a headline about it. I'm sure it can be done.

5) I'm running i7 but not Skylake for my workstation and some servers.
 
With NanoBSD you could build an appliance that you can yank the power cord on with no problems.

That would involve some legwork but the end result is an appliance image.

You could do the same without the 'Read-Only' aspect of NanoBSD and use crochet to build with.
Adding your custom packages and even the config files already in-place.

I remember using this post for the auto login
https://forums.freebsd.org/posts/125992/
 
drhowarddrfine and Phishfry, thank you very much for the input.

I started by installing X.Org and Firefox from packages, but Firefox crashed because of a D-bus misconfiguration. So, I installed Firefox from the ports with the D-bus option disabled, and I could start it using:
$ sudo xinit firefox $* -- :1
I saw only 2 issues which are most probably related to the missing window manager. I cannot resize the browser window and pull down menus do not open (menus are usually also windows). Otherwise, everything HTML5, CSS and SVG renders fine without any display glitches -- very promising. Now it became late here, and tomorrow I will try the setup with x11-wm/openbox.
 
x11-wm/openbox is what I needed. Phishfry thank you for the hint. Looks great, the browser window can be resized and the menus of the site do open.

CyControl-Firefox-Kiosk.png
 
What was your hardware choice? Touchsceeen?
This particular one, no.

A customer is going to purchase one of my headless potentiostats (electrochemical laboratory equipment). Suddenly they realized that the system is not working with Windows and the IT department does not allow anything to be connected into their network that is not running Windows which they configured by themselves (full stop)

OK, the solution is now that they won't receive a headless system which they may operate by any web browser in their network, but instead a standalone equipment with regular PC screen, keyboard and mouse.

I was very concerned how to deal with it in a tight schedule, and now I am quite happy that with your help I can satisfy the needs of my customer with this very nice solution. I think I need only to add a simple file manager, in order the lab scientist may copy the measurement curves to a USB pen drive and move it into his desktop for further evaluation.

The web application is programmed so that it looks nice in modern web browsers on almost all kind of devices, and I am sure that it would look perfect also on a touch screen, it was tested already on iPads and iPhones. The server part of the web app works equally well on x86 machines and on a BeagleBone Black. I am almost ready getting the ADC ports of the BBB linked to the web server.
 
Its really sad to see no maintainer for pcmanfm. It has not had a upstream release since 2016 but heck it works OK. Just like the whole LXDE suite.
Sort of abandoned and lifeless. But it does all work and has for quite a while. You could call it very consistent.
Many of the LXDE developers left the master project and forked it to LXDE-QT which has more heft to it as could be expected with QT.
Something worth considering for long term viability though.
I like how LXDE is built on OpenBox which has been around forever. When I first started on FreeBSD Arm/Xorg/Openbox was all that I could get built.
Most of the accessories too like lxde-session and their taskbar(if needed).Plus with conky and all the wizzbang you cant get it pretty custom.
That's the sign of a good WM system. Barebones kiosk if you want it or fully customized desktop. All running on minimal resources.

Makes you wonder why Diebold and NCR cant figure out embedded OS and need Microsoft. Incompetent.
At least in the old days they bought pro gear like Wind River embedded OS instead of the Billys Wild West touchmee screen!!!
 
My idea was to create a symlink of the directory where my system stores the measurement data into the users home directory, and although I set appropriate access rights, x11-fm/pcmanfm was not able to enter the symlinked directory, while x11-fm/nautilus could enter and copy data out of it.

I need to think a little bit about where my system should store the data, perhaps avoiding that the file manager sees any symlink. I would also like to restrict the file manager to the users home directory.
 
Back
Top