I don’t know if anyone else will find this useful but I have a 24/7 Raspberry Pi development server that I test console and web applications on. I got tired of having to start up a terminal to launch the Xojo Console Debugger every time I needed it. I really wanted the console debugger to always be running. I tried to use my old standby: crontab with an @reboot entry but that failed because the network wasn’t up and running when the console debugger was launched by crontab.
So, I looked for some info about how to run the debugger as a service under systemd. Now when my Raspberry Pi development server reboots it automatically launches the console debugger.
I created a “xojo_console_debugger.service” file and placed it in the “/lib/systemd/system” folder. The contents of the file look like this:
[Unit]
Description=Xojo Console Debugger
After=network-online.target
[Service]
ExecStart=/root/RemoteDebuggerConsole/RemoteDebuggerConsole
WorkingDirectory=/root/RemoteDebuggerConsole/
StandardOutput=inherit
StandardError=inherit
Restart=always
User=root
[Install]
WantedBy=multi-user.target
To make the new service run at every boot up, issue this command:
systemctl enable xojo_console_debugger.service
Then I rebooted the Raspberry Pi. When the Raspberry Pi came up again the console debugger was running! To control or check the status of the console debugger service use these commands:
service xojo_console_debugger.service status
service xojo_console_debugger.service start
service xojo_console_debugger.service stop
This was my first attempt ever at using systemd. If I discover any issues with this I’ll post a follow up. But for now this seems to be doing exactly what I’d hoped for.
-Wes