将Firefox版本作为root

时间:2018-10-23 05:17:25

标签: linux bash macos firefox sudo

我有一个要在macOS / Linux上运行的安装脚本。

在安装中期,我需要检测当前安装的Firefox版本,以决定是否使用不推荐使用的功能(例如AutoConfig)还是使用现代功能(例如policies.json)。

  • 对于Windows,我有逻辑从注册表中解析Firefox版本。效果很好。
  • 在macOS / Linux上,我想解析firefox --version的输出,但是当firefox看到脚本以root运行时,它会抱怨:
  

不支持在普通用户会话中以root用户身份运行Firefox。 ($HOME/Users/foo拥有的foo。)

我可以使用sudo -u $USER firefox --version,但似乎在未启用sudo的系统上会遇到可伸缩性问题。是否有另一种方法来获取版本而无需以常规用户身份启动进程?是否有未记录的替代标志?我尝试--headless无济于事。

1 个答案:

答案 0 :(得分:1)

以下似乎是一个以root用户身份运行firefox --version的可行解决方法。

HOME=/tmp XAUTHORITY=/tmp firefox --version

据我所知,/tmp应该始终归root所有,但是如果有例外,请提出一条更好的方法,以便改进此解决方案。