Скорее всего, ваша попытка редактирования google-chrome.desktop
не сработала, потому что в этом файле есть более одной Exec
записи, и та, которую вы изменили, на самом деле не используется.
Используя пакет Chrome для Debian из репозитория Google, google-chrome.desktop
показывает три Exec
записи в трех отдельных разделах (групп в номенклатуре freedesktop.org):
$ grep -E '^Exec|^\[|^Name=' /usr/share/applications/google-chrome.desktop
[Desktop Entry]
Name=Google Chrome
Exec=/usr/bin/google-chrome-stable %U
[Desktop Action new-window]
Name=New Window
Exec=/usr/bin/google-chrome-stable
[Desktop Action new-private-window]
Name=New Incognito Window
Exec=/usr/bin/google-chrome-stable --incognito
Вариант с опцией --incognito
— скорее всего тот, который вы редактировали — выполняется только при выборе «Новое окно в режиме инкогнито» в контекстном меню (, например. после щелчка правой кнопкой мыши по значку Chrome в деятельности GNOME ).
Если вы не стремились изменить конфигурацию для каждого пользователя в вашей системе, я предлагаю вам создать собственную, настроенную версиюgoogle-chrome.desktop
:
$ cp /usr/share/applications/google-chrome.desktop ~/.local/share/applications/
Затем отредактируйте запись Exec
, по крайней мере в группе [Desktop Entry]
(вы можете оставить другие записи Exec
выровненными, чтобы гарантировать, что Chrome будет вести себя так же нет независимо от того, какой пункт меню вы использовали для его запуска):
Exec=/usr/bin/google-chrome-stable --proxy-server="socks5://proxyURL:proxyPORT" --host-resolver-rules="MAP * ~NOTFOUND, EXCLUDE proxyURL" %U
Как отметил Доминик Матис в комментарии , вы можете добавить параметр --host-resolver-rules
, чтобы предотвратить обход настроек прокси-сервера с помощью предварительной выборки DNS Chrome, как описано в Документация Chromium .
При необходимости отрегулируйте proxyURL
и proxyPORT
; не забудьте установить proxyURL
для опций --proxy-server
и --host-resolver-rules
.
Если вы хотите, чтобы действие открытия по умолчанию запускало Chrome без установки прокси-сервера, вы можете оставить основную запись [Desktop Entry]
's Exec
нетронутой и вместо этого добавить действие . Это требует от вас
Actions
в группе [Desktop Entry]
; [Desktop Entry]
...
Actions=new-window;new-private-window;new-proxied-window;
...
[Desktop Action new-proxied-window]
Name=New Proxied Window
Exec=/usr/bin/google-chrome-stable --proxy-server="socks5://proxyURL:proxyPORT" --host-resolver-rules="MAP * ~NOTFOUND, EXCLUDE proxyURL" %U
«Новое проксированное окно» появится в качестве опции, если щелкнуть правой кнопкой мыши значок Chrome (, для этого может потребоваться выход/вход в систему ).Обратите внимание, что все одновременно запущенные экземпляры Chrome будут использовать те же настройки прокси-сервера, что и первый, который вы открыли, если только вы не запустите их с параметром--user-data-dir
.
Я публикую это, потому что если кто-то еще столкнется с такой же проблемой, он или она сможет ее решить.
Я использовал таскель
sudo apt install taskel
sudo taskel install ubuntu-gnome-desktop
И заработало после перезагрузки.