Skip to content

Instantly share code, notes, and snippets.

@ponfertato
Last active January 22, 2026 16:14
Show Gist options
  • Select an option

  • Save ponfertato/8164ae4dc2e37ac4ba349bd2d2f3eb66 to your computer and use it in GitHub Desktop.

Select an option

Save ponfertato/8164ae4dc2e37ac4ba349bd2d2f3eb66 to your computer and use it in GitHub Desktop.
Набор оптимизированных .desktop файлов для NixOS (Flake) + KDE Plasma: мультиклиент VPN (v2rayN/FlClash/Karing), универсальный запуск пакетов Nix с выбором канала, и ByeDPI Launcher с 5 стратегиями обхода DPI + кастомные параметры. Все файлы полностью автономные, с поддержкой русской локализации и контекстными действиями. 🥔
#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Type=Application
Name=ByeDPI Launcher
Name[ru]=ByeDPI Запуск
Comment=Выбор стратегии обхода DPI через ciadpi
Comment[ru]=Выбор стратегии обхода DPI через ciadpi
Exec=konsole --hold -e bash -c 'export NIXPKGS_ALLOW_UNFREE=1; export NIX_CONFIG="experimental-features = nix-command flakes"; strategies=("Стратегия 1 (Агрессивная)" "Стратегия 2 (Оригинальная)" "Стратегия 3 (Минимум TCP)" "Стратегия 4 (Без TCP split/disorder)" "Стратегия 5 (Самый минимум)" "Своя стратегия"); PS3="Выберите стратегию: "; select strategy in "${strategies[@]}"; do case $strategy in "Стратегия 1 (Агрессивная)") params="--disorder 2 --split 2 --mod-http=h,d --tlsrec 2 --auto=ttl --udp-fake 6 --fake -1 --ttl 8 --debug 1";; "Стратегия 2 (Оригинальная)") params="--disorder 1 --split 1 --mod-http=h,d --tlsrec 1+s --auto=torst --udp-fake 6 --fake -1 --ttl 8 --debug 1";; "Стратегия 3 (Минимум TCP)") params="--split 1 --mod-http=h,d --tlsrec 1 --auto=ttl --fake -1 --ttl 8 --debug 1";; "Стратегия 4 (Без TCP split/disorder)") params="--mod-http=h,d --tlsrec 1+s --fake -1 --ttl 8 --debug 1";; "Стратегия 5 (Самый минимум)") params="--mod-http=h,d --tlsrec 1 --fake -1 --ttl 8 --debug 1";; "Своя стратегия") read -p "Введите параметры ciadpi (без -p): " custom_params; params=$custom_params;; *) echo "Неверный выбор"; continue;; esac; echo "Запуск ciadpi с параметрами: $params"; nix shell nixpkgs#byedpi --command ciadpi -p 10808 $params; break; done'
Icon=network-vpn
Terminal=false
Categories=Network;Proxy;
StartupNotify=true
Keywords=proxy;dpi;bypass;socks;
Keywords[ru]=прокси;dpi;обход;socks;
StartupWMClass=konsole
Actions=Help;Status;
[Desktop Action Help]
Name=Справка по параметрам
Name[ru]=Справка по параметрам
Exec=konsole --hold -e bash -c 'echo "=== Основные параметры ciadpi ==="; echo; echo "--disorder <pos> : Изменяет порядок отправки пакетов"; echo "--split <pos> : Разбивает запрос на части"; echo "--mod-http=h,d : Модификация HTTP заголовков"; echo "--tlsrec <pos> : Разделение TLS записей"; echo "--fake <pos> : Поддельные пакеты для обхода DPI"; echo "--ttl <num> : TTL для поддельных пакетов"; echo "--auto=<event> : Авто-режим при событиях (torst, ssl_err)"; echo "--udp-fake <num> : Количество фейковых UDP пакетов"; echo "--debug <level> : Уровень отладки"; echo; echo "Порт по умолчанию: 10808 (SOCKS5)"; echo "Локальный адрес: 127.0.0.1"; echo; echo "Для кастомной стратегии вводите параметры без -p"; echo "Пример: --split 1 --fake -1 --ttl 8"; echo; read -p "Нажмите Enter для выхода..."'
[Desktop Action Status]
Name=Статус прокси
Name[ru]=Статус прокси
Exec=konsole --hold -e bash -c 'echo "Проверка статуса прокси:"; if pgrep -x "ciadpi" &>/dev/null; then echo "✅ ciadpi: запущен на 127.0.0.1:10808"; echo "TCP:"; ss -tulpn | grep "10808" 2>/dev/null || echo "Нет TCP подключений"; echo "UDP:"; ss -ulpn | grep "10808" 2>/dev/null || echo "Нет UDP подключений"; else echo "❌ ciadpi: не запущен"; fi; echo; read -p "Нажмите Enter для выхода..."'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment