Topgrade – инструмент командной строки для обновления всех пакетов в Linux

by itisgood

В этом руководстве мы рассмотрим интересный инструмент, который нацелен на то, чтобы обновить все, что было установлено в вашей системе, как только запустите одну команду.

Это программное обеспечение является топ-классом, оно обнаруживает инструменты, которые вы используете в вашей системе, и запускает соответствующий диспетчер пакетов для обновления пакетов.

В дистрибутивах семейства Linux RHEL, таких как CentOS, topgrade выполнит обновление yum updateecommand, это обновление dnf для Fedora.

В семействе Debian эквивалентная команда, выполняемая topgrade, чтобы обеспечить все актуальность, – это apt update && apt dist-upgrade.

В Arch Linux он будет использовать run yay или вернуться к pacman, если yay не установлен.

Если у вас нет помощника yay AUR, установленного на Arch Linux, установите его, клонировав PKGBUILD и создав с помощью makepkg.

git clone https://aur.archlinux.org/yay.git
cd yay
makepkg -si

Просто запустив одну команду topgrade, она также выполнит следующее:

  • Обновление пакетов Atom
  • Обновление пакетов Flatpak в Linux
  • Обновление оснастки для Linux
  • Запустит fwupdmgr, чтобы показать обновление прошивки.
  • Обновление пакетов Emacs
  • Запустить сборку обновления
  • Обновление Run.brew && brew upgrade. Это должно обрабатывать как Homebrew, так и Linuxbrew в Unix.
  • Запустить обновление zplug в Unix
  • Unix: запустить обновление для рыбаков
  • Обновление плагинов tmux с помощью TPM
  • Обновите пакеты Vim / Neovim.

Установка topgrade на Linux

Установка topgrade на Linux может быть выполнена путем вытаскивания предварительно скомпилированного двоичного файла или с помощью загрузки.

Если вы используете Arch Linux в качестве основной операционной системы, вы можете установить topgrade из AUR:

$ yaourt -S topgrade

Для всех других операционных систем перейдите на страницу обновлений и загрузите последнюю версию.

На момент написания этой статьи последняя версия – v0.9.0

$ export ver="v0.9.0"
$ wget https://github.com/r-darwish/topgrade/releases/download/${ver}/topgrade-${ver}-x86_64-unknown-linux-gnu.tar.gz

Для пользователей macOS загрузите пакет с именем apple-darwin.tar.gz

Раскройте пакет, чтобы получить двоичный файл:

$ tar xvf topgrade-${ver}x86_64-unknown-linux-gnu.tar.gz

Переместите  извлеченные двоичные файлы в /usr/local/bin

$ sudo mv topgrade /usr/local/bin/

Подтвердить местоположение бинарников:

$ which topgrade
/usr/local/bin/topgrade

Использование topgrade для обновления системных пакетов

Как только пакет будет установлен, вы можете легко использовать его, вызывая имя в терминале:

$ topgrade --help
Topgrade 0.9.0
Upgrade all the things

USAGE:
topgrade [FLAGS]

FLAGS:
-h, --help Prints help information
-t, --tmux Invoke inside tmux
-V, --version Prints version information

Просто введите topgrade на своем, и он начнет обновление  установленных пакетов.

$ topgrade

Если необходимы привилегии sudo, вам будет предложено ввести пароль sudo.

Поскольку у меня есть oh-my-zsh, он также был обновлен.

Запуск topgrade в сеансе tmux

Рекомендуется избегать случайного прерывания работы или таймаута в сети, особенно при работе в удаленной системе.

Для этого используйте:

$ topgrade -t

Если у вас нет tmux, вы можете получить его с помощью диспетчера пакетов ОС:

На Ubuntu:

$ sudo apt-get install tmux

На CentOS / Fedora:

$ sudo yum install tmux
$ sudo dnf install tmux

В Arch Linux используйте:

$ sudo pacman -S tmux

Настройка topgrade

Вы можете поместить файл конфигурации в файл ~ / .config /topgrade.toml. Вот пример:

git_repos = [
    "~/dev/topgrade",
]

[pre_commands]
"Emacs Snapshot" = "rm -rf ~/.emacs.d/elpa.bak && cp -rl ~/.emacs.d/elpa ~/.emacs.d/elpa.bak"

[commands]
"Python Environment" = "~/dev/.env/bin/pip install -i https://pypi.python.org/simple -U --upgrade-strategy eager jupyter"

В этом примере:

  • git_repos – список настраиваемых репозиториев Git
  • pre_commands –  Команды, которые необходимо выполнить перед началом любого действия
  • commands – пользовательские шаги обновления.

Topgrade кажется обязательным инструментом для управления обновлениями в кластере серверов, которым вы управляете ежедневно. Тот факт, что вы можете запустить его в сеансе tmux, просто используя флаг -t, сохраняет обновления более безопасными, гарантируя, что они закончат грациозно.

You may also like

Leave a Comment