Hi all,
I am try to run a T30 in kiosk mode for web access. The problem is that if I disable permanently LXDE the app doesn’t appear on screen.
if I leave LXDE in autorun with the system an then type
With Firefox never tried without Graphical server, I got acceptable performance with Wayland, but we have done Chromium run on Linux framebuffer, works very well if you do not need WebRTC or additional plugins video/audio.
I tried this here and Firefox starts in both you cases, i.e. with the LXDM display manager started and stopped and with LXDM disabled starting X followed by starting Firefox works.
What display do you use?
What is Firefox’s console output?
Does the Firefox application terminate or is it running but you have nothing on screen?
X.Org X Server 1.14.7
Release Date: 2014-06-05
X Protocol Version 11, Revision 0
Build Operating System: Linux 4.5.5-201.fc23.x86_64 x86_64
Current Operating System: Linux apalis-t30 3.1.10-g7ec3a91-dirty #9 SMP PREEMPT Wed Aug 31 09:37:01 CEST 2016 armv7l
Kernel command line: core_edp_mv=1300 usb_high_speed=1 ip=off root=/dev/mmcblk0p2 rw,noatime rootfstype=ext3 rootwait igb_mac= consoleblank=0 no_console_suspend=1 console=tty1 console=ttyS0,115200n8 debug_uartport=lsport,0 vmalloc=256M mem=2035M@2048M fbmem=12M@4083M video=tegrafb0:1024x600-16@60
Build Date: 24 June 2016 07:03:10PM
Current version of pixman: 0.32.6
Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Tue Sep 6 07:36:43 2016
(==) Using config file: "/etc/X11/xorg.conf"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
Initializing built-in extension Generic Event Extension
Initializing built-in extension SHAPE
Initializing built-in extension MIT-SHM
Initializing built-in extension XInputExtension
Initializing built-in extension XTEST
Initializing built-in extension BIG-REQUESTS
Initializing built-in extension SYNC
Initializing built-in extension XKEYBOARD
Initializing built-in extension XC-MISC
Initializing built-in extension XFIXES
Initializing built-in extension RENDER
Initializing built-in extension RANDR
Initializing built-in extension COMPOSITE
Initializing built-in extension DAMAGE
Initializing built-in extension MIT-SCREEN-SAVER
Initializing built-in extension DOUBLE-BUFFER
Initializing built-in extension DPMS
Initializing built-in extension X-Resource
Initializing built-in extension XVideo
Initializing built-in extension XVideo-MotionCompensation
Initializing built-in extension XFree86-VidModeExtension
Initializing built-in extension XFree86-DGA
Initializing built-in extension XFree86-DRI
Initializing built-in extension DRI2
Loading extension TEGRA-EGL
6 XSELINUXs still allocated at reset
SCREEN: 0 objects of 184 bytes = 0 total bytes 0 private allocs
DEVICE: 0 objects of 64 bytes = 0 total bytes 0 private allocs
CLIENT: 0 objects of 84 bytes = 0 total bytes 0 private allocs
WINDOW: 0 objects of 28 bytes = 0 total bytes 0 private allocs
PIXMAP: 1 objects of 48 bytes = 48 total bytes 0 private allocs
GC: 4 objects of 16 bytes = 64 total bytes 0 private allocs
CURSOR: 1 objects of 4 bytes = 4 total bytes 0 private allocs
DBE_WINDOW: 0 objects of 12 bytes = 0 total bytes 0 private allocs
TOTAL: 6 objects, 116 bytes, 0 allocs
1 PIXMAPs still allocated at reset
PIXMAP: 1 objects of 48 bytes = 48 total bytes 0 private allocs
GC: 4 objects of 16 bytes = 64 total bytes 0 private allocs
CURSOR: 1 objects of 4 bytes = 4 total bytes 0 private allocs
DBE_WINDOW: 0 objects of 12 bytes = 0 total bytes 0 private allocs
TOTAL: 6 objects, 116 bytes, 0 allocs
4 GCs still allocated at reset
GC: 4 objects of 16 bytes = 64 total bytes 0 private allocs
CURSOR: 1 objects of 4 bytes = 4 total bytes 0 private allocs
DBE_WINDOW: 0 objects of 12 bytes = 0 total bytes 0 private allocs
TOTAL: 5 objects, 68 bytes, 0 allocs
1 CURSORs still allocated at reset
CURSOR: 1 objects of 4 bytes = 4 total bytes 0 private allocs
DBE_WINDOW: 0 objects of 12 bytes = 0 total bytes 0 private allocs
TOTAL: 1 objects, 4 bytes, 0 allocs
1 CURSOR_BITSs still allocated at reset
DBE_WINDOW: 0 objects of 12 bytes = 0 total bytes 0 private allocs
TOTAL: 0 objects, 0 bytes, 0 allocs
And this is Firefox output
root@apalis-t30:~# firefox -height 600 -width 1024
(process:607): GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed
console.error:
[CustomizableUI]
Custom widget with id loop-button does not return a valid node
console.error:
[CustomizableUI]
Custom widget with id loop-button does not return a valid node
The application is still running checking via “top”
If I run Firefox after
systemctl start lxdm.service
The console output is the same but everything works fine.
Just from a very high-level perspective, running applications on-top of fbdev on T30 is for most applications not beneficial. The T30 fbdev implementation is really a dumb framebuffer without any acceleration. Via X-Server, you access the display/graphics engine through the “tegra” DDX driver which makes better use of the hardware…
While for other modules using EGL ontop of fbdev might be nice to avoid Xorg dependencies, for T30 using X is the better option.
However, you can not run Firefox directly on-top of Xorg (it would lack windowing management which is crucial for full-screen/menus etc…) You need a window manager such as the pre-installed Openbox WM.
Something like Xorg & openbox & firefox should get you there.
May I suggest you adding your LVDS configuration script (e.g. lvds-single-channel.sh) which is probably now not started but in the LXDM case was started by /etc/xdg/lxsession/LXDE/autostart to your startup procedure.