custom/update

 Используется 2 скрипта:

1) Отображает количество пакетов, готовых к обновлению. Использует утилиту wc с аргументом -l, для полсчета строк (каждый пакет занимает 1 строку):

#!/bin/sh

# Сам список обновления при проверке я сохраняю в файл, 
# чтобы вывести его во всплывающем окне при наведении на кнопку.
checkupdates > /home/tehop/.scripts/updates/updateslist.txt

# Заодно сохраняю в переменную количество обновлений для вывода в waybar
countupdates=`bat /home/tehop/.scripts/updates/updateslist.txt | wc -l`

if [[ $countupdates -gt 0 ]]; then

    # Первый stdout отправит текст в текст кнопки 
	echo "$countupdates"

    # А все последующие отправят во всплывашку при наведении
    # по этому вторым выводом я делаю список обновлений, читая
    # файл, в который я этот список сохранял выше
	echo `bat /home/tehop/.scripts/updates/updateslist.txt`

	notify-send "Некоторые пакеты готовы к обновлению."
else
	echo "0"

    # Если обновлений нет, то при наведении мышки будет надпись ниже
	echo "Пакеты, доступные к обновлению, отсутствуют"
fi

Для работы команды "checkupdates" требуется установка пакета из офф. репозитория Arh Linux (pacman-contrib)

sudo pacman -Su pacman-contrib

2) Скрипт, запускающий обновления в фоновом режиме:

#!/bin/bash

pkexec pacman -Syu --noconfirm
notify-send "Работа Pacman завершена"

У меня система работает достаточно долгое время, после обновления ломались шрифты один раз, hyprland частенько меняет синтаксис своих конфигурационных файлов, из-за чего приходилось чинить WM, но в целом системе я доверяю и обновляю фоном. Вообще желательно обновлять через эмулятор терминала, чтобы отслеживать какие обновления к вам летят и проконтролировать, не поломают ли они что-то. Или pamac используйте, я не видел что это такое, знаю, что GUI - менеджер обновлений. Ну и я всё таки добавил вывод списка самих пакетов, которые доступны к обновлению. Текст идет сплошняком, мб не сильно читаемо, но мне вроде бы не мешает

Использует команду pkexec, чтобы вбить пароль в графическом окне.

Для этого я установил polkit-gnome

sudo pacman -Sy polkit-gnome  

Все необходимое можно глянуть и скачать тут