在命令行上安装 gnome-shell 扩展?

在命令行上安装 gnome-shell 扩展?

我正在寻找一种方法可靠地在命令行上安装 gnome-shell 扩展。最终,我想要一个 Ansible 剧本。

举个例子,我想安装自定义热点角扩展

我发现medium.com 上的“使用命令行安装 GNOME 扩展”并且linuxhint.com 上的“如何在 Ubuntu 20.04 上安装 Gnome 扩展”. 随后我做了以下事情:

wget -O/tmp/extension.zip https://extensions.gnome.org/extension-data/custom-hot-corners-extendedG-dH.github.com.v11.shell-extension.zip
uuid=$(unzip -c /tmp/extension.zip metadata.json | grep uuid | cut -d \" -f4)
unzip /tmp/extension.zip -d "~/.local/share/gnome-shell/extensions/$uuid"
gnome-shell-extension-tool -e "$uuid"
# or:
gnome-extensions enable "$uuid"

但它不起作用-我收到一个错误:扩大 ”[电子邮件保护]“ 不存在

当然,它也不会显示在 gnome-extensions-app 中。从GNOME 扩展浏览器中的网站运行良好。

还尝试使用来自 brunelli 的 gnome-shell-extension-installer 脚本- 也不行… :/

我在 Ubuntu 21.10 Impish 上使用 GNOME Shell 40.5。

答案1

我最近遇到了gnome-扩展-cli,它似乎已经存在了一段时间,但直到最近才开始活跃起来(见代码频率该项目的一部分)。我认为它是一款很棒的工具,它能产生漂亮的输出,并且脚本友好。CLI 允许您搜索、安装、升级、启用和列出 GNOME 扩展等。

如果您不介意在目标机器上安装 Python 依赖项,您可以编写几个 Ansible 任务来实现您的目标,如下所示:

- name: Install CLI tool to manage GNOME extensions
  ansible.builtin.pip:
    name: gnome-extensions-cli
    extra_args: --user --upgrade

- name: Install and enable GNOME extensions
  ansible.builtin.command:
    cmd: gext install "gTile@vibou" gext enable "gTile@vibou"

答案2

您可以.zip使用以下文件进行安装:

gnome-extensions install ./custom-hot-corners-extendedG-dH.github.com.v11.shell-extension.zip

安装后可能无法立即工作(该插件也不会出现在扩展应用程序的已安装扩展列表中),这显然是一个需要报告的错误。但是,一旦你注销并重新登录,它就会开始工作。

gnome-shell-extension-tool为了实用性,已经被淘汰了gnome-extensions

相关内容