Skip to content

release v1.5.5

Latest

Choose a tag to compare

@github-actions github-actions released this 04 Sep 20:15

Release v1.5.5

Downloads

macOS (Universal) - Supports both Apple Silicon and Intel

Option 1: Installation Script (Recommended)

Install with a single command (version v1.5.5):

curl -fsSL https://raw.githubusercontent.com/Leadaxe/singbox-launcher/develop/scripts/install-macos.sh | bash -s -- v1.5.5

The script will:

  • Download the release archive
  • Extract and install to /Applications/
  • Fix macOS quarantine attributes and permissions
  • Launch the application automatically

Option 2: Manual Installation

  1. Download: singbox-launcher-v1.5.5-macos.zip
  2. Extract the ZIP file
  3. Remove quarantine attribute (required):
    xattr -cr "singbox-launcher.app" && chmod +x "singbox-launcher.app/Contents/MacOS/singbox-launcher"
  4. Double-click singbox-launcher.app to run
    • If macOS blocks the app, go to System Settings → Privacy & Security and click "Open Anyway"
    • Alternatively, right-click the app and select "Open" (first time only)

Windows (amd64)

  1. Download: singbox-launcher-v1.5.5-win64.zip
    • or singbox-launcher-v1.5.5-win64-full.zipfull bundle: sing-box.exe, wintun.dll, the config template and Mesa3D (mesa3d/, used only when no hardware OpenGL — RDP, VMs) are already inside, nothing is downloaded on first launch
  2. Extract the ZIP file to a folder, for example: C:\Program Files\singbox-launcher\
  3. Run singbox-launcher.exe from that folder
    • You may need administrator rights to install to Program Files
    • The regular archive downloads sing-box and wintun.dll on first launch

Windows 7 (x86, legacy)

  1. Download: singbox-launcher-v1.5.5-win7-32.zip
  2. Extract the ZIP file to a folder and run singbox-launcher-win7-32.exe
    • For Windows 7 / 32-bit or legacy compatibility only

Linux Support

⚠️ Linux build temporarily unavailable - мы ищем тестировщика для ручного тестирования перед включением автоматической сборки.

Checksums

See checksums.txt for SHA256 checksums of all files.

Release notes — v1.5.5

EN

Features

  • TUN route exclude addresses. A new Settings field (visible with TUN and auto_route on) takes CIDR prefixes, one per line, that auto_route leaves out of the tunnel at the OS routing level — sing-box tun.route_exclude_address. Traffic to those networks never enters the core: no rules, no sniffing, not shown in the profiler. Empty by default: LAN access is already covered by the Private IPs rule preset inside the core, so use this only when traffic must not touch the tunnel at all (strict_route on Windows, the subnet of a second VPN, management access to a router). Whatever is listed can no longer be reached through the VPN. Idea and first take — PR #114 by alexandersafin. Shared contract 0.12.8.

  • Daemon link indicator next to Core Status. In daemon mode the Core Status row now carries the same coloured dot the Remote tab shows for machines: green means the daemon answers, yellow means the channel is degraded, red means it is unreachable or the core reported FATAL. The state is read from frames of the existing status stream, so no extra polling is added. The "service is not started" branch no longer opens a modal dialog — it is a normal state, and the status row with the marker's tooltip tells you to press Start.

Fixes

  • XHTTP links: host, path and mode come only from the flat link parameters. Same-named keys inside extra= are ignored, exactly as Xray itself does (SplitHTTPConfig.Build overwrites them from the outer object even when empty). A link whose extra carried an empty mode or path: "/" used to lose the real path (HTTP 404) or drop into auto mode and crash the core on uplink_data_placement can be header only in packet-up mode. Shared contract 0.12.7, decision D-097, two corpus cases; existing cases unchanged.
  • An SRS rule survives reopening the Configurator. A rule built from an SRS URL used to work only in the session it was created in: after the Configurator was reopened, the rule's "srs" button disappeared and the Summary tab refused to build with rule-set: remote entry missing tag, which also blocked Save. The rule-set record restored from the state file carried no tag, so the UI could not see it and the build rejected it. The tag is now derived from the URL exactly as the download does, so the rule survives any number of reopenings. The wizard build also stopped emitting user rules twice: with rules present in the current state format, the legacy projection of the same rules is no longer added on top, matching what Save writes into config.json.
  • XHTTP: the mode / uplink_data_placement pair is guarded before the core sees it. uplink_data_placement: header is only valid in packet-up mode; a link combining it with another mode made sing-box refuse the whole config, so every node went down over one bad entry. The pair is now corrected while parsing, and the correction is reported: the source row shows a warning with the reason instead of the fix happening silently.

RU

Возможности

  • Исключения маршрутов TUN. Новое поле в Settings (видно при включённых TUN и auto_route) принимает CIDR-префиксы по одному на строку, которые auto_route оставляет вне туннеля на уровне маршрутов ОС — sing-box tun.route_exclude_address. Трафик в эти сети в ядро не попадает вовсе: без правил, без сниффинга, не виден в профилировщике. По умолчанию пусто: доступ в LAN и так обеспечивает пресет Private IPs внутри ядра, поэтому поле нужно только когда трафик не должен касаться туннеля (strict_route на Windows, подсеть второго VPN, управляющий доступ к роутеру). Что перечислено здесь, через VPN уже не достать. Идея и первый вариант — PR #114 от alexandersafin. Общий контракт 0.12.8.

  • Индикатор связи с демоном у Core Status. В daemon-режиме строка Core Status получила такой же цветной кружок, какой на вкладке Remote стоит у машин: зелёный — демон отвечает, жёлтый — канал деградировал, красный — недоступен или ядро сообщило FATAL. Состояние считается по кадрам уже существующего стрима статуса, отдельных опросов не добавилось. Ветка «служба не запущена» больше не открывает модальное окно — это штатное состояние, и строка статуса вместе с подсказкой маркера говорит нажать Start.

Исправления

  • XHTTP-ссылки: host, path и mode берутся только из плоских параметров ссылки. Одноимённые ключи внутри extra= игнорируются, как в самом Xray (SplitHTTPConfig.Build перезаписывает их внешним объектом даже пустыми). Раньше ссылка с пустым mode или path: "/" в extra теряла настоящий путь (HTTP 404) или уходила в режим auto и роняла ядро на uplink_data_placement can be header only in packet-up mode. Общий контракт 0.12.7, решение D-097, два кейса корпуса; существующие кейсы не изменились.
  • SRS-правило переживает переоткрытие Конфигуратора. Правило, собранное из ссылки на SRS, работало только в той сессии, где его создали: после переоткрытия Конфигуратора у правила пропадала кнопка «srs», а вкладка «Итог» отказывалась собирать конфиг с ошибкой rule-set: remote entry missing tag и не пускала к Save. Причина — запись rule-set, восстановленная из файла состояния, приходила без тега: интерфейс её не видел, а сборка отвергала. Теперь тег выводится из ссылки ровно так же, как при скачивании, и правило переживает сколько угодно переоткрытий. Заодно сборка визарда перестала эмитить пользовательские правила дважды: при наличии правил в текущем формате состояния устаревшая проекция тех же правил сверху больше не добавляется — так же, как это делает Save при записи config.json.
  • XHTTP: пара mode / uplink_data_placement выправляется до ядра. uplink_data_placement: header допустим только в режиме packet-up; ссылка, сочетавшая его с другим режимом, заставляла sing-box отвергнуть весь конфиг — из-за одной битой записи ложились все узлы. Пара теперь исправляется при разборе, и правка не молчит: в строке источника видно предупреждение с причиной.