拡張機能をインストールできますか?https://extensions.gnome.org/使用しないでくださいGNOMEシェルの統合ブラウザプラグイン?
上記のWebサイトで拡張機能を検索してインストールするためのツールを探しています。たとえば、次のようになります。
$ gnome-extensions search <keyword>
$ gnome-extensions install <extension-id>
答え1
ソリューション1
拡張URLがある場合は、以下を使用してください。ここでは、拡張を配列に入れました。インストールしたい拡張子のURLをこの配列に入れます。
#!/bin/bash
array=( https://extensions.gnome.org/extension/1328/disable-workspace-switch-animation/
https://extensions.gnome.org/extension/1532/lock-keys/
https://extensions.gnome.org/extension/104/netspeed/
https://extensions.gnome.org/extension/2182/noannoyance/
https://extensions.gnome.org/extension/1460/vitals/ )
for i in "${array[@]}"
do
EXTENSION_ID=$(curl -s $i | grep -oP 'data-uuid="\K[^"]+')
VERSION_TAG=$(curl -Lfs "https://extensions.gnome.org/extension-query/?search=$EXTENSION_ID" | jq '.extensions[0] | .shell_version_map | map(.pk) | max')
wget -O ${EXTENSION_ID}.zip "https://extensions.gnome.org/download-extension/${EXTENSION_ID}.shell-extension.zip?version_tag=$VERSION_TAG"
gnome-extensions install --force ${EXTENSION_ID}.zip
if ! gnome-extensions list | grep --quiet ${EXTENSION_ID}; then
busctl --user call org.gnome.Shell.Extensions /org/gnome/Shell/Extensions org.gnome.Shell.Extensions InstallRemoteExtension s ${EXTENSION_ID}
fi
gnome-extensions enable ${EXTENSION_ID}
rm ${EXTENSION_ID}.zip
done
ソリューション2
拡張機能のUUIDがある場合は、以下を使用してください。ここではUUIDを配列に入れます。インストールする拡張のUUIDをこの配列に配置します。
#!/bin/bash
array=( [email protected] lockkeys@fawtytoo [email protected] [email protected] [email protected] )
for i in "${array[@]}"
do
VERSION_TAG=$(curl -Lfs "https://extensions.gnome.org/extension-query/?search=${i}" | jq '.extensions[0] | .shell_version_map | map(.pk) | max')
wget -O ${i}.zip "https://extensions.gnome.org/download-extension/${i}.shell-extension.zip?version_tag=$VERSION_TAG"
gnome-extensions install --force ${EXTENSION_ID}.zip
if ! gnome-extensions list | grep --quiet ${i}; then
busctl --user call org.gnome.Shell.Extensions /org/gnome/Shell/Extensions org.gnome.Shell.Extensions InstallRemoteExtension s ${i}
fi
gnome-extensions enable ${i}
rm ${EXTENSION_ID}.zip
done
ボーナス(シナモン)
Linux Mint(Cinnamon)にアクセスできる場合は、次のスクリプトを使用できます。拡張機能をダウンロードして正しいディレクトリに配置します。
#!/bin/bash
array=( https://cinnamon-spices.linuxmint.com/applets/view/83
https://cinnamon-spices.linuxmint.com/applets/view/106
https://cinnamon-spices.linuxmint.com/applets/view/222
https://cinnamon-spices.linuxmint.com/applets/view/238
https://cinnamon-spices.linuxmint.com/applets/view/284
https://cinnamon-spices.linuxmint.com/applets/view/303 )
for i in "${array[@]}"
do
DOWNLOAD_URL=$(curl -Lfs ${i} | grep -m1 -Po '(?<=href=")[^"]*zip')
FILE_NAME=$(echo $DOWNLOAD_URL | grep -Eo "([^\/]+$)")
wget $DOWNLOAD_URL
unzip -o "$FILE_NAME" -d "$HOME/.local/share/cinnamon/applets"
rm "${FILE_NAME}"
done
拡張機能がまだ有効になっていないことがわかります。後に次のような行を追加する必要があるからですdone
。
gsettings set org.cinnamon enabled-applets "['panel1:left:0:[email protected]:0', 'panel1:left:1:[email protected]:1', 'panel1:left:2:[email protected]:2', 'panel1:right:4:[email protected]:3', 'panel1:right:6:[email protected]:4', 'panel1:right:7:[email protected]:5', 'panel1:right:8:[email protected]:6', 'panel1:right:9:[email protected]:7', 'panel1:right:10:[email protected]:8', 'panel1:right:11:[email protected]:9', 'panel1:right:12:[email protected]:10', 'panel1:right:13:[email protected]:11', 'panel1:right:14:[email protected]:12', 'panel1:right:15:[email protected]:13', 'panel1:right:16:[email protected]:14', 'panel1:right:3:temperature@fevimu:15', 'panel1:right:2:download-and-upload-speed@cardsurf:16', 'panel1:right:17:betterlock:17', 'panel1:right:5:turn-off-monitor@zablotski:18']"
価値はenabled-applets
ユーザーによって異なります。。アプレットを有効にするために使用されます。
今私が見せるこの文字列を作成する方法。$HOME/.local/share/cinnamon/applets
(ボーナススクリプトを使用して)拡張機能を追加したら、次に進みます。システム設定>基本設定>ミニプログラムパネルに追加してください。再配置パネルでアプレットを使用するには、Panel edit mode
続行してください。次に、次を実行します。
gsettings get org.cinnamon enabled-applets
これからこの文字列をで使用できますgsettings set org.cinnamon enabled-applets
。しかし、参考にしてくださいパネルにアプレットが追加または削除されるか、パネル内のアプレットの位置が移動されるたびに文字列が変更されます。。
答え2
GNOME シェル拡張インストーラあなたが探しているもの:
答え3
最近触れました。GNOME拡張CLI、これはしばらくあったようですが、最近は新しい活動がありました(参照コード頻度プロジェクト)。私はこれが美しい出力を生成し、スクリプトに優しい素晴らしいツールだと思います。
CLIを使用すると、GNOME拡張機能などを検索、インストール、アップグレード、アクティブ化、および一覧表示できます。拡張機能のUUIDまたはそのパッケージ番号を渡すことができます。
ツールGNOME シェル拡張インストーラ2023年4月現在、@WuerfelDevの提案はもはや維持されていないようです。
答え4
@cdelledonneの提案は私にとって非常に有望に見えます。
上記のWebサイトで拡張機能を検索してインストールするためのツールを探しています。たとえば、次のようになります。
$ gnome-extensions search <keyword> $ gnome-extensions install <extension-id>
ほとんどの人が探しているもの(スクリプトと自動化)なので、質問の後半に集中します。
拡張インストール処理ツール
公式
~によると赤い帽子、それは簡単です:
gnome-extensions install <UUID>
しかし、これはUbuntu 24.04では機能しません。
Python
Python 3は通常Linuxにインストールされます。使いたいですpipx
。確認してください。設定手順、コマンドは5個以下(通常3個)です。
# Install helper tool gnome-extensions-cli
pipx install gnome-extensions-cli
# Install extension by UUID
gext install <UUID>
UUID経由?どちら?どのように?なぜ? !
ブラウザで拡張ページを開き、「ソースを見る」(通常はCTRL+ u)に移動してを検索しますuuid
。
または、ブラウザがこれをサポートし、それを処理する方法を知っている場合は、次の例を使用してください。view-source:https://extensions.gnome.org/extension/4655/date-menu-formatter/
私はGnome 3と拡張機能が登場して以来、拡張機能を主にUUIDではなくID(一般番号)と呼んできたことを知っています。しかし、ここにはUUIDを必要とする2つのツールがあります。はい、長いが私のようにコードを使用して管理したい場合[email protected]
は4655
。
次のように考えることもできます。
Gnomeが私たちがUUIDを使用したい場合は、誰もが簡単に見つけることができるようにページにUUIDを置きます。
GitHubと比較して、このサイトは何年も実際には変更されていません。これは、誰かが直すまで私たちが追跡し続ける問題の1つにすぎません。老化と維持されていない拡張など。
拡張機能は表示されません!
この答えを完了するには:
- 以前にこのコンピュータ/ユーザーで拡張機能を使用したことがない場合は、ログアウトして再度ログインする必要があります。
- 必要に応じてGUIを使用して拡張と設定を管理できるように、同様のパッケージをインストールする必要があります
gnome-shell-extension-prefs
(少なくともUbuntu 24.04デスクトップでは)。