微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 Crostini 中启动时启动 GUI 应用程序?

如何解决如何在 Crostini 中启动时启动 GUI 应用程序?

每当我的 Linux 操作系统在 Chromebook 中启动时,我都想启动一个 GUI 应用程序(例如 Firefox)。每当启动第一个 Linux 应用程序时,Linux 操作系统就会启动。我尝试了许多技术,但都无法使它们发挥作用。

1. ~/.config/autostart/etc/xdg/autostart

中的 .desktop

即使 firefox.desktop 文件本身可以毫无问题地启动 Firefox,这也无法在启动时启动 Firefox。我是否需要以某种特殊方式或其他方式设置权限才能正常工作?

2.通过 .bashrc

启动它

这会在终端启动时启动 Firefox,不一定在 Crostini 启动时启动。如果我通过打开与终端不同的 Linux 应用程序(例如 Chromium)来启动 Crostini,则不会调用 .bashrc

3.通过 /etc/profile.d

启动它

.bashrc 相同的问题。它仅在终端启动时启动 Firefox,而不会在 Crostini 本身启动时启动。

4. systemd 单元文件启动一个 bash 脚本来启动 Firefox

这(到目前为止)无法在启动时启动 Firefox,即使当我手动运行该服务时它可以毫无问题地启动 Firefox。这是我的服务文件代码,该文件位于 /etc/systemd/system/ 中,具有 chmod 640 权限:

[Unit]
Description=Firefox launcher

[Service]
Type=forking
Environment="displat=:0"
Environment="XAUTHORITY=~/.Xauthority"
ExecStart=/mypath/fflauncher.sh

[Install]
WantedBy=graphical.target

这是 fflauncher.sh代码,它具有 chmod +x 权限:

#!/bin/bash
COUNTER=0
while [ 1 ]
do
  if [ -S /tmp/.X11-unix/X0 ]
  then
    xhost local:
    firefox &
    exit 0
  fi
  ((++COUNTER))
  if [ $COUNTER -gt 20 ]
  then
    exit 1
  fi
  sleep 0.5
done

尽管如此,Firefox 不会在启动时启动。但有趣的是,bash 脚本本身实际上是在启动时使用这种方法调用的。 Firefox 应用程序无法运行。

有人对我如何使其工作有任何建议吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。