Jak mogę zaktualizować rozszerzenia GNOME Shell z wiersza poleceń?

14

Czasami dostaję wiadomości z informacją, że istnieje aktualizacja jednego z moich rozszerzeń GNOME Shell, kierując mnie do https://extensions.gnome.org/local/, gdzie mogę uruchomić aktualizację przez interfejs sieciowy.

Wolę wywoływać aktualizacje z wiersza poleceń, podobnie jak wywołanie apt update && apt upgrade. W jaki sposób mogę to zrobić?

david.libremone
źródło
Możesz użyć cronzadania do wyodrębnienia rozszerzeń powłoki z /etc/shellspliku i uruchomienia apt-getaktualizacji dla każdej wartości - tylko jeden pomysł.
The Pizza Overlord
1
@ThePizzaOverlord Nie są to rzeczy spakowane, a kiedy już są, często są zastępowane przez wersje dostarczone bezpośrednio przez Gnome.
Oli
Zobacz numer 906 gnome-shell, aby uzyskać prośbę o dodanie tej funkcji.
Peterino,

Odpowiedzi:

10

Komentarze do tego artykułu omgubuntu.co.uk wymieniają dwa możliwe sposoby:

  1. Instalator GNOME Shell Extension · Github , o skrypt bash do zainstalowania i poszukać rozszerzeń z extensions.gnome.org . Zainstaluj za pomocą

    wget -O gnome-shell-extension-installer "https://github.com/brunelli/gnome-shell-extension-installer/raw/master/gnome-shell-extension-installer"
    chmod +x gnome-shell-extension-installer
    sudo mv gnome-shell-extension-installer /usr/bin/

    Zaktualizuj rozszerzenia 23i 42dla GNOME Shell za 3.18.4pomocą

    ids=( 23 42 )
    gnome=3.18.4
    gnome-shell-extension-installer ${ids[@]} $gnome --yes --update --restart-shell

    Zaktualizuj wszystkie rozszerzenia za pomocą

    gnome-shell-extension-installer --yes --update --restart-shell

    Nie mogłem tego przetestować, ale jestem prawie pewien, że jest to skryptowalne.

  2. Jeśli zainstalowałeś swoje rozszerzenia przez klonowanie ich repozytoriów git /path/, możesz po prostu git pullrepozytoria jeden po drugim:

    for i in /path/*; do
      git -C"$i" pull
    done

    Następnie musisz ponownie załadować GNOME Shell za pomocą Alt+ F2i rlub polecenia gnome-shell -r.

deser
źródło
0

Gnomeshell-extension-manage skrypt Nicolas Bernaertsa pozwala zainstalować i usunąć rozszerzenie GNOME Shell zarówno w całym systemie oraz w przestrzeni użytkownika.

Oto, jak chcesz to zainstalować:

wget https://raw.githubusercontent.com/NicolasBernaerts/ubuntu-scripts/master/ubuntugnome/gnomeshell-extension-manage
chmod 755 gnomeshell-extension-manage
sudo mv -iv gnomeshell-extension-manage /usr/local/bin/gnome-shell-extension-manage

Dzięki temu jest dostępny dla każdego użytkownika: (wraz z podobnymi poleceniami GNOME)

$ gnome-shell-extension-manage 
Install/remove extension from Gnome Shell Extensions site https://extensions.gnome.org/
Extension ID should be retrieved from https://extensions.gnome.org/extension/<ID>/extension-name/
Version installed will be targeted as the same as Gnome Shell or the next available one
Parameters are :
  --install               Install extension (default)
  --remove                Remove extension
  --user                  Installation/remove in user mode (default)
  --system                Installation/remove in system mode
  --version <version>     Force Gnome version (use 'latest' to force latest one)
  --extension-id <id>     Extension ID in Gnome Shell Extension site (compulsory)

Gnome Shell - Zarządzanie rozszerzeniami konsola blogu opisuje w jaki sposób jest ona wykorzystywana. Aby zaktualizować rozszerzenie, musisz dodać --version latestdo polecenia.


Dwie główne różnice, technicznie rzecz biorąc, w stosunku do instalatora rozszerzenia gnome-shell- Iana Iana Brunellego to to, że możesz wykonywać instalacje systemowe i że używa wgetzamiast curlpobierać rozszerzenia.

Peterino
źródło
Jeśli uruchomisz gnome-shell-extension-installjako sudo, zostanie zainstalowany w całym systemie.
eduncan911