byedpi icon indicating copy to clipboard operation
byedpi copied to clipboard

Новый вариант byedpi.service ломает работоспособность

Open GambitVKM opened this issue 1 year ago • 11 comments

https://github.com/hufrea/byedpi/blob/main/dist/linux/byedpi.service ExecStart=/usr/bin/ciadpi --split 1 --disorder 3+s --mod-http=h,d --auto=torst --tlsrec 1+s $ARGS На мой взгляд опции корректнее поместить в конфиг. Это лучше, чем размазывать ключи тонким слоем по разным файлам. К тому же у меня, например, второй аргумент ломает работоспособность.

GambitVKM avatar Sep 22 '24 08:09 GambitVKM

@GambitVKM, отредактируй (ну или переопредели) сервис и добавь в него:

[Service]
// ...
EnvironmentFile=-/etc/byedpi
ExecStart=ciadpi $OPTIONS

в /etc/ создай файл byedpi, со следующим содержимым (со своими ключами, разумеется):

OPTIONS="--disorder 1"

Из плюсов, не нужно делать daemon-reload после правки ключей, как при редактировании .service файла напрямую.

Себе для Arch Linux накидал PKGBUILD, хранит "настройки" в /etc/ и ставится системным, а не пользовательским сервисом.

Ну а конфиг автор добавлять не хочет, чтобы не раздувать утилиту, не тянуть в нее парсер.

lufog avatar Sep 22 '24 15:09 lufog

@GambitVKM, отредактируй (ну или переопредели) сервис и добавь в него:

[Service]
// ...
EnvironmentFile=-/etc/byedpi
ExecStart=ciadpi $OPTIONS

в /etc/ создай файл byedpi, со следующим содержимым (со своими ключами, разумеется):

OPTIONS="--disorder 1"

Из плюсов, не нужно делать daemon-reload после правки ключей, как при редактировании .service файла напрямую. У меня byedpi не хотел настройки окружения читать, либо я что-то неверно сделал

Себе для Arch Linux накидал PKGBUILD, хранит "настройки" в /etc/ и ставится системным, а не пользовательским сервисом.

https://github.com/hufrea/byedpi/pull/134 Собрал rpm, сейчас разбираюсь как deb собирать. Автор, почему-то, мержить не спешит.

andrewclarkii avatar Sep 22 '24 16:09 andrewclarkii

@lufog, с переопределением сервиса понятно. На данный момент у меня так и сделано. Вопрос в том, зачем вообще ключи в файле сервиса? В AUR задаются тем же вопросом. Есть конфиг. Может, все же стоит хранить все параметры конфигурации именно там? Нужно передать некие дефолтные значения? Так внести их туда сразу.

GambitVKM avatar Sep 22 '24 16:09 GambitVKM

На мой взгляд опции корректнее поместить в конфиг.

Да, так будет правильнее, можно использовать EnvironmentFile, как предлагает @lufog. Раз уже есть готовые юниты, возможно кто-то пришлет PR, а нет, так сам поправлю позже.

Собрал rpm, сейчас разбираюсь как deb собирать. Автор, почему-то, мержить не спешит.

Мне же это поддерживать потом придется, необходимо все протестировать, изучить (вдруг в PR что-то сделано некорректно). А то выйдет как тут, с systemd.

hufrea avatar Sep 22 '24 17:09 hufrea

Да, так будет правильнее, можно использовать EnvironmentFile, как предлагает @lufog. Раз уже есть готовые юниты, возможно кто-то пришлет PR, а нет, так сам поправлю позже.

Вы имеющееся сначала возмите. В моем .service файле, который я проверял, так и было сделано. Я его не приложил, правда. Так же я исправил makefile на предмет определения опций компиляторов по-умолчанию в разных дистрибутивах.

Собрал rpm, сейчас разбираюсь как deb собирать. Автор, почему-то, мержить не спешит.

Мне же это поддерживать потом придется, необходимо все протестировать, изучить (вдруг в PR что-то сделано некорректно). А то выйдет как тут, с systemd. Так сделано так, что бы имеющееся собиралось в пакет сразу же. Я тут появляюсь переодически, смогу помогать по мере возможности.

andrewclarkii avatar Sep 22 '24 17:09 andrewclarkii

Вопрос в том, зачем вообще ключи в файле сервиса?

Потому что, я ленивый!

trevarj avatar Sep 22 '24 17:09 trevarj

К тому же у меня, например, второй аргумент ломает работоспособность.

@hufrea, а почему такой суровый конфиг по-умолчанию? И его нет в примерах в README. Всё, что серьёзнее --split может ломать сайты, с --disorder на неделе были приключения.

radioxoma avatar Sep 23 '24 06:09 radioxoma

а почему такой суровый конфиг по-умолчанию?

Обычный --split не работает на многих провайдерах, т.к. они уже давно научились пересобирать запрос (хотя на YouTube он все еще может действовать). --disorder до ютубовских блокировок работал хорошо и практически ничего не ломал (кроме HTTP у некоторых). Этот конфиг взят из батника для Windows, где --disorder работает некорректно из-за полной ретрансмиссии и упомянут тут. После был немного изменен по предложению отсюда.

hufrea avatar Sep 23 '24 10:09 hufrea

Я имел в виду, что лучше пусть из-за дефолтного конфига не работает обход блокировок, чем ломается доступ ко всей сети. Хотя... только что с ним ещё раз проверил МГТС, часть незаблокированных и заблокированных сайтов стала открываться, раньше не работало.

radioxoma avatar Sep 23 '24 14:09 radioxoma

Засинхронизировал файлы .conf и .service

Еще вроде полезная функция Dynamic user feature, может тоже добавите?

nebulosa2007 avatar Sep 27 '24 17:09 nebulosa2007

@nebulosa2007, она доступна только для системного сервиса, а этот хотят оставить универсальным (подробнее тут #152). Не запаривайся, просто скопируй файл в репу и добавь DynamicUser (оно того стоит). Все равно пакетом ставишь сервис системным. Сам так же делаю.

lufog avatar Sep 27 '24 20:09 lufog

Мне кажется, вопрос решен в полном объеме и issue можно закрывать.

GambitVKM avatar Oct 25 '24 20:10 GambitVKM