3
июнь
2026
Работа с Flatpak или APT через прокси-сервер
18:49

Работа с Flatpak или APT через прокси-сервер

3 июнь 2026 18:49

В статье рассмотрена возможность запуска Flatpak и APT через прокси сервер.

Введение

В последний месяц у меня появились проблемы с Flatpak:

1) веб-сайт Flathub.org стал "тормозить" на этапе TLS-рукопожатия, работал очень медленно и загрузка часто "зависала" с ошибкой.
2) не получалось обновить приложение с сайта dl.flathub.org из командной строки с помощью команды "flatpak install".
3) при переустановке Flatpak не работала установка репозитория магазина приложений Flathub (команда "flatpak remote-add" зависала).

Flathub - это магазин приложений Linux в формате Flatpak, опубликованных разработчиками. Некоторые приложения, не входящие в состав основного дистрибутива Linux, можно установить только из Flatpak или Snap.

Причину первой проблемы Flatpak нашёл - некорректно работающее расширение для Mozilla FireFox под названием "Block-site" я удалил. После чего замедление веб-браузера прекратилось.

Вторая проблема с Flatpak- при запуске "flatpak install" команда завершалась по таймауту. Происходил сбой подключения к сайту dl.flathub.org. Причину этой ошибки не знаю.

Третья проблема с Flatpak - невозможно переустановить репозиторий Flathub при переустановке Flatpak, т.к. следующая команда зависала:
"flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo"

F: Loading https://flathub.org/repo/flathub.flatpakrepo using libsoup
F: Should retry request (remaining: 5 retries), due to transient error:
Превышено время ожидания ввода-вывода сокета

I. Решение проблем Flatpak - включение прокси-сервера

Как использовать Flatpak через прокси-сервер

1) Найдите в Интернет работающий прокси сервер типа "http" (например, здесь) и проверьте его на сайте checker.net или mobileproxy.space. Формат адреса для проверки: http://123.45.67.89:8080.

2) Переменная окружения, которые используются flatpak для указания прокси-сервера:

http\_proxy - укажите прокси и порт.

2.1) Для временного (на данную сессию) использования прокси-сервера: в командной строке выполните команду:

export http_proxy=server:port

где вместо "server" - укажите IP адрес http-прокси-сервера,
вместо "port" - укажите порт прокси-сервера.


2.2) Для постоянного использования прокси-сервера:
Отредактируйте файл /etc/environment (для всех пользователей) или ~/.profile (только для текущего пользователя):

sudo nano /etc/environment

или

nano ~/.profile

или создайте .sh - скрипт в каталоге /etc/profile.d/ для установки переменной окружения.

Добавьте в его конец файла строку

export http_proxy=http://server:port

где вместо "server" - укажите IP адрес http прокси-сервера,
вместо "port" - укажите порт прокси-сервера.

3) Запустите установку приложения Flatpak. Чтобы видеть на экране диагностические сообщения в процессе установки, можно добавить ключ "-v" - от слова "verbose" - многословный.

Например:

flatpak -v install de.haeckerfelix.Shortwave.flatpakref 

Где de.haeckerfelix.Shortwave.flatpakref - ранее скачанный с сайта https://flathub.org установочный файл .flatpakref.

Также, можно установить приложение без файла .flatpakref, по полному системному имени (ID) приложения Flatpak. Например:

flatpak -v install de.haeckerfelix.Shortwave

Теперь, при использовании прокси-сервера (в переменной окружения http_proxy указан действующий прокси-сервер) программа установилась командой "flatpak install" без проблем.

Решение проблемы с медленной работой магазина приложений FlatHub - работа через прокси-сервер

Данный способ подразумевает использование магазина Flathub из командной строки (Терминала):

1) Должен быть установлен Flatpak.

Как установить или обновить Flatpak

sudo add-apt-repository ppa:flatpak/stable
sudo apt update
sudo apt install flatpak

2) Для включения прокси-сервера, как написано выше, нужно добавить переменную окружения "http_proxy".
В командной строке выполните команду

export http_proxy="http://server:port"

где вместо "server" - укажите IP адрес http-прокси-сервера,
вместо "port" - укажите порт прокси-сервера.

Или решите вопрос способом, указанном в пункте 2.2.

3) Добавляем в Flatpak репозиторий Flathub, если он не был добавлен раньше:

flatpak -v remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

Результат:

flatpak -v remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
F: Opening system flatpak installation at path /var/lib/flatpak
F: Loading https://flathub.org/repo/flathub.flatpakrepo using curl
F: Received 4040 bytes

4) Производим поиск приложения во Flathub из командной строки

Перед запуском следующей команды, разверните окно Терминала во весь экран.

flatpak search application

где вместо application пишем интересующий нас пакет, например, по ключевому слову "notes" (заметки).

flatpak search notes

или

flatpak search shortwave

Результат поиска будет также в текстовом виде:
notes

ИД приложения указан в третьей колонке. Например, "com.vargary.focal" или "de.haeckerfelix.Shortwave".

5) Установите интересующее приложение по его ИД.

flatpak install flathub app_id

где app_id - идентификатор (ИД) приложения Flatpak в магазине приложений Flathub.

Например:

flatpak install flathub com.vargary.focal

или

flatpak install de.haeckerfelix.Shortwave

Результат:

flatpak install flathub com.vargary.focal
Поиск совпадений…

Разрешения com.vargary.focal:
    ipc    network    fallback-x11    wayland    x11    dri    tags [1]

    [1] proprietary

        ID                          Ветвь            Оп           Удалённый репозиторий           Загрузка
 1. [✓] com.vargary.focal           stable           i            flathub                         16,0 МБ / 18,0 МБ

Установка завершена.

Мы установили приложение Flatpak с использованием прокси-сервера!

6) Запуск приложения Flatpak:

flatpak run app_id

где app_id - уникальный идентификатор приложения Flathub. Например, com.vargary.focal.

Результат:
focal

7) Отключение прокси-сервера.

После завершения работы с flatpak можно отключить прокси-сервер в системе, командой:

export http_proxy=""

Как при вызове команды "flatpak run" указать прокси-сервер явно?

Ответ: нужно использовать ключ --env. " (Из справки по команде "flatpak": Установите переменную среды в приложении. Она переопределяет раздел «Контекст» из метаданных приложения. Этот параметр можно использовать несколько раз.)"

flatpak run --env=http_proxy=http://server:port app_id

где вместо "server" - укажите IP адрес http-прокси-сервера,
вместо "port" - укажите порт прокси-сервера,
app_id - идентификатор приложения Flatpak.

II. Решение проблемы APT - включение прокси-сервера

Утилиты Linux для командной строки apt-get и apt также умеют работать через прокси-сервер.
Но указывается прокси-сервер одним из способов:

  • отредактируйте файл /etc/apt/apt.conf.d/01proxy или
  • отредактируйте файл /etc/apt/apt.conf.

    sudo nano /etc/apt/apt.conf

Добавьте в него строки:

Acquire::http::Proxy "http://proxy.example.com:8080";
Acquire::https::Proxy "http://proxy.example.com:8080";

где вместо "server" - укажите IP адрес прокси сервера,
вместо "port" - укажите порт прокси.

Использование прокси-сервера с использованием имени пользователя и пароля

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

"http://username:password@server:port";

где username - имя пользователя, password - пароль,
вместо "server" - укажите IP адрес прокси-сервера,
вместо "port" - укажите порт прокси-сервера.

Наиболее известные списки прокси серверов (по данным Habr.com)

Список сервисов, которые выдают http-прокси серверы приведен в статье на сайте Habr.com:

(Примечание. "Тирлист" - непонятное слово, по видимому автор имел в виду "tier list", что значит список уровней - систему ранжирования чего угодно в уровнях).

Из них у меня открывается лишь один сайт, который бесплатно раздаёт прокси-серверы:

  • Webshare - требует регистрацию через почту GMail, даёт 10 бесплатных записей прокси, защищенных именем пользователя и паролем.

Несмотря на то, что http-прокси от Webshare проходят проверку, запустить полученные прокси-серверы с Flatpak мне не удалось.
Прокси-сервер не работает

Через российский прокси-сервер, Flatpak работает.
Российский прокси-сервер работает

К сожалению, найти работающий прокси-сервер тяжело.


Источники:



Похожие публикации