linux
December 15

Steam Deck испрвление ошибки Discover при обновлении пакетов в режиме рабочего стола.

Суть проблемы

При обновлении пакетов в режиме "рабочего стола" менеджер пакетов Discover выдает ошибку типа:

Во время загрузки http://ciscobinary.openh264.org/libopenh264-2.5.1-linux64.7.so.bz2: Server returned status 403

Ошибка возникает по причине недоступности серверов Cisco.

Решение

Для решения этой проблемы скачаем нужный пакет локально с помощью браузера Tor и обновим систему с помощью него.
Скачивать можно на любом устройстве, где установлен Tor - мобильном, ПК, ноутбуке или на самом Steamdeck. В моем случае - на ПК с ОС Windows.

Загрузка пакета

Ссылку из ошибки - в адресную строку Tor-браузера
  • Браузер предложит сохранить файл
Сохраняем пакет локально
  • Переносим сохраненный файл libopenh264-2.5.1-linux64.7.so.bz2 на Steamdeck любым удобным способом, например по сети, с помощью usb-флешки, отправкой через менеджер и пр.
  • Сохраняем файл libopenh264-2.5.1-linux64.7.so.bz2 в любую папку (например в Downloads)
  • Открываем терминал в папке с сохраненным файлом (правая кнопка мыши - "открыть терминал здесь")

Перенаправляем Discover с помощью подмены hosts

  • Открываем для редактирования файл `/etc/hosts`:

# я использую vim

sudo vim /etc/hosts

# или можно и другом редакторе, например в nano

sudo nano /etc/hosts

  • В конец файла добавляем строку

127.0.0.1 ciscobinary.openh264.org

Редактируем /etc/hosts
  • Сохраняем и выходим (в vim - ZZ, в nano - CTRL+X)

Поднимаем локальный сервер

  • Находясь в папке с сохраненным файлом libopenh264-2.5.1-linux64.7.so.bz2, поднимаем сервер на 80 порту:

sudo python -m http.server 80 -b 127.0.0.1

Сервер, запущенный из папки со скаченным пакетом.

Обновление пакетов Discover

  • Открываем менеджер пакетов Discover и запускаем обновление. При поиске пакета libopenh264-2.5.1-linux64.7.so.bz2 менеджер найдёт сохранный локально файл и обновление пройдет без ошибок.
  • После окончания обновления, переходим обратно в терминал и останавливаем сервер нажатием CTRL+С

Возвращаем файл /etc/hosts в исходное состояние

  • Открываем для редактирования файл /etc/hosts:

sudo vim /etc/hosts

  • Удаляем строку или закомментируем её, добавив в начало строки #

#127.0.0.1 ciscobinary.openh264.org

Возвращаем в исходное
  • Сохраняем и выходим.

Готово!