Auto boot app

I need to create a stripped down Raspberry Pi OS that has no desktop but simply loads my Xojo app when the device boots as the app needs to run fully unattended and simply display the ui.

The app is for digital signage.

Is it a web app or desktop app ?

It needs to be both as it will be a desktop app controlled by a web interface.

I am now thinking it will probably have to be two apps, one for the desktop display and another webserver service for the browser interface and then use IPC or some method to make the two talk to each other.

Most kiosks just use chromium browser and show a web application. For this you could easily use FullPageOS that is available from Raspberry Pi imager.

There are plenty of options for the Pi, no need to reinvent the wheel, specially with xojo :yum:

You can look at the Pi partners in digital signage

Or look for tutorials using free sofware for linux.

i used to do that before , i did some tests when pi was first introduced but quit because of the lack of the documentation and resources that time. That was few years ago.

From what i remember i had to install few apps and have my app, as well a supposedly signage app run as a kiosk mode without needing to install full X interface .

No idea if still works but you can do the following :

You will need to install raspbian lite and configure your connection , wired or wireless and allow remote ssh to it .

Then install the dependencies for this to work

sudo apt-get update && sudo apt-get upgrade
sudo apt-get install matchbox xorg x11-xserver-utils ttf-mscorefonts-installer xwit sqlite3 libnss3

I assme that you do install all the dependencies that xojo needs.

I guess you will need at least the following

sudo apt-get install libunwind8
sudo apt-get install libwebkitgtk-3.0
sudo apt-get install libsoup

then you will need to edit your rc.local and add the line before the exit command.

startx &

This will start the x Engine

After this you will need to edit xinitrc which you can find it in /etc/X11/xinit/xinitrc

Here you will need to remove all the content in that file and add the following code

while true; do

xset -dpms
xset s off
matchbox-window-manager &
yourXojoApp

done;

Restart your rPi and once loaded it should show your app running in a Kiosk mode type.

Hope it helps and still works, I’ll try to test it in the next days .

OMG! Thank you do much for all the info. I would never have known how to do any of that.

Not sure Mark Z thought that when he looked at mySpace :wink:

What I need is for internal use and needs to do things that are not available on products available in my budget and thought ir would be fun to try and do something myself

and just did a test with an rPi3 that i had around and it works as expected. That is a XOJO arm app done with Xojo 2022 R4.1 and runs as Kiosk with the above steps.

That would be my code here

#!/bin/sh

# /etc/X11/xinit/xinitrc

#

# global xinitrc file, used by all X sessions started by xinit (startx)

# invoke global X session script

while true; do

xset -dpms

xset s off

matchbox-window-manager -use_cursor no &

/opt/testPi/testPi

done;

I updated the code to hide the cursor

just as a note ,

matchbox-window-manager --help
usage: matchbox-window-manager [options …]
-display
-theme
-use_titlebar <yes|no>
-use_cursor <yes|no>
-use_lowlight <yes|no>
-use_dialog_mode <free|static|const-horiz>
-use_desktop_mode <decorated|plain>
-use_super_modal <yes|no>
-force_dialogs
-kbdconfig

Thanks again. I will take a look at matchbox, looks cool