在树莓派启动时执行一个 kivy 脚本

Execute a kivy Script on start up of the raspberry

我想执行一个 python 脚本,在 Raspberry pi 启动时启动一个 kivy 应用程序。一个小细节是我使用了一种解决方法来启动我的 kivy 应用程序(参见 this thread on kivy's github and especially, this response

如您所见,我的脚本非常基础(并且可以正常运行):

#!/bin/sh

./kivyrun /home/pi/Desktop/interfacebancdetest_dev/main.py

我已经尝试过的

我关注了this tutorial,并创建了一个"LPBM.desktop"/home/pi/.config/autostart/

我的脚本

[Desktop Entry]
Type=Application
Name=LPBM
Exec=/home/pi/Desktop/LPBM.sh

但是没用...

我也尝试修改我的 /etc/rc.local 并在 exit 0 之前添加了 /home/pi/Desktop/LPBM.sh 但是它再次不起作用所以我有点卡住了...

您应该能够直接从自动启动文件启动脚本。

需要记住的一件事是,自动启动位置可能会有所不同,具体取决于您登录的用户身份。例如,对于默认的 Raspian 安装,LXDE 桌面环境自动启动文件的本地路径当前为:

~/.config/lxsession/LXDE-pi/autostart

如果您添加前缀为 @ 的条目,它应该会为您启动脚本。 根据我的经验,使用绝对路径是最稳定的。

在您的情况下,您是在本地调用 ./kivyrun,但您可以使用 which kivyrun 找出它的安装位置。之后剩下的就是将 kivyrun 指向您的脚本,例如:

@/absolute/path/to/kivyrun /home/pi/Desktop/interfacebancdetest_dev/main.py

其中 /absolute/path/to/ 将被替换为之前 which kivyrun 返回的绝对路径