Skip to content

Releases: krambovic/Lumen

Lumen v1.9.7

Choose a tag to compare

@github-actions github-actions released this 07 Aug 20:56

What's Changed

  • feat: added proxy authentication and limited non-admin mode
  • feat: added HTTP GET latency tests and resizable server columns
  • feat: expanded subscription, AnyTLS, Snell, Clash and OpenVPN TCP imports
  • fix: fixed regional presets, service actions and first-start routing state
  • fix: prevented DNS leaks and stale sing-box route/DNS rules
  • fix: renamed the sing-box TUN adapter to tun0 and improved startup cleanup
  • fix: fixed real latency and speed test lifecycle
  • fix: fixed VPN client conflict handling and false own-Xray detection
  • fix: fixed Windows 10 autostart visibility, Mica logging and window frame layout
  • fix: prevented PowerShell cleanup errors during Windows shutdown
  • fix: fixed portable startup, single-instance activation and non-admin launch
  • fix: fixed installer builds and replacement of existing release assets
  • security: protected stored proxy credentials with Windows DPAPI
  • security: hardened updates, resource hashes and diagnostics redaction

Full Changelog: v1.9.6...v1.9.7

Lumen Android 1.1.0

Choose a tag to compare

@krambovic krambovic released this 29 Jul 13:07
7523777

What's Changed

  • feat: added in-app Android updates from GitHub. Lumen finds only published android-v… releases, selects the correct ABI, validates the package name, version and signing certificate, requests the unknown-sources permission when required, and hands the verified APK to Android's PackageInstaller.
  • feat: rebuilt Domain/IP Routing and App Routing in the Lumen style. Domain, IP, geo and rule-set entries can be added, edited or removed with DIRECT, PROXY and BLOCK actions; split tunneling now has safe allow/exclude handling and a curated Auto-select list instead of selecting every installed app.
  • feature: bundled Russian geo rule sets and the ads rule set for first-run protection. Only one regional geo source is active at a time, and switching Russia, China or Iran atomically replaces both the downloaded .srs files and the automatic routing rules.
  • feat: subscriptions can now be renamed and have their URL edited. Plain HTTP links are available behind an explicit opt-in setting, redirects are checked as well, refreshes report added/updated/removed nodes, and stable node identities preserve selection, ping and AUTO country pools across updates.
  • feature: ping now uses the method selected in Settings with HTTP GET as the reliable default. Hysteria/Hysteria 2, TUIC, WireGuard/AWG/WARP and OpenVPN can be measured through a temporary sing-box-extended outbound instead of an invalid TCP port check; running checks can be restarted or stopped and dashboard results reset when the server changes.
  • feature: added SHA-256 certificate public-key pin editing and import support for VLESS, VMess, Trojan, Hysteria, Hysteria 2 and TUIC. Hex, Base64 and sha256/… values are normalized to certificate_public_key_sha256 accepted by the bundled extended core.
  • fix: rebuilt VPN startup, shutdown and network-change handling. The service binds to the real underlying network, refreshes physical DNS after Wi-Fi/mobile changes, excludes Lumen from its own TUN, rejects stale generated configs, verifies the native tunnel worker and keeps session/traffic notification state updating even when speed statistics are disabled.
  • fix: corrected generated DNS and routing for sing-box-extended: secure bootstrap and DoH hostname resolution, Android/system DNS mode, custom JSON validation, profile DNS fallback, DNS hijack/fake-IP ordering, user rule precedence, local binary rule sets and endpoint pinning against carrier DNS sinkholes.
  • fix: hardened protocol and import compatibility across AUTO pools, AWG/WARP, MASQUE, OpenVPN, Clash/Mihomo, VLESS, VMess, Trojan, Hysteria, TUIC and Mieru. Native dependency closures and urltest tags are preserved, invalid TLS/uTLS fields are normalized, OpenVPN credentials/encrypted keys/ciphers are handled, and unsupported profiles now fail with a useful error instead of a broken core config.
  • fix: unified dashboard and Servers group panels, added the connected-server Check tile, improved subscription and server editing, corrected AUTO/WARP labels and country handling, refreshed the dark adaptive launcher icon, and completed the affected Persian and Chinese strings.
  • feature: added signed armeabi-v7a builds alongside arm64-v8a, x86_64 and universal APKs.

Full Changelog: android-v1.0.0...android-v1.1.0

Lumen Android 1.0.0

Choose a tag to compare

@krambovic krambovic released this 26 Jul 22:08

🚀 انتشار اولین نسخه کلاینت LUMEN

با افتخار اولین نسخه از کلاینت LUMEN را برای دسترسی آسان‌تر، سریع‌تر و بهتر به اینترنت آزاد منتشر می‌کنیم.

با همکاری تیم VOXI در ایران، تلاش کرده‌ایم برنامه‌ای بهینه، پایدار و کاربرپسند برای کاربران ایران، روسیه و چین توسعه دهیم. این تنها آغاز راه است و با همکاری و بازخورد کاربران، LUMEN را هر روز بهتر و کامل‌تر خواهیم کرد.

📢 کانال رسمی VOXI: @VOXINET


🚀 First Release of the LUMEN Client

We are proud to announce the first release of the LUMEN client, designed to provide easier, faster, and more reliable access to the free internet.

In collaboration with the VOXI team in Iran, we have developed an optimized, stable, and user-friendly application for users in Iran, Russia, and China. This is just the beginning, and with continued collaboration and community feedback, we will keep improving and expanding LUMEN.

📢 Official VOXI Channel: @VOXINET


🚀 Первая версия клиента LUMEN

Мы рады представить первую версию клиента LUMEN, созданного для более удобного, быстрого и стабильного доступа к свободному интернету.

Совместно с командой VOXI в Иране мы разработали оптимизированное, стабильное и удобное приложение для пользователей Ирана, России и Китая. Это только начало, и благодаря сотрудничеству и отзывам пользователей мы продолжим активно развивать и совершенствовать LUMEN.

📢 Официальный канал VOXI: @VOXINET

Lumen Android 1.0.0

  • feat: user-created server groups. Create, rename and delete your own groups next to the built-in ones, assign servers from the per-server menu or by multi-select, and move them back out. Deleting a group never deletes its servers — they return to the default bucket. Membership is keyed on a stable node key rather than the database row id, so it survives a subscription refresh that re-imports every node.
  • feat: launcher icon picker. Customization now offers three tiles — Follow system, Light and Dark — backed by <activity-alias> entries. The switch is written so that every intermediate state keeps exactly one launcher entry enabled, even if the process is killed mid-switch, and the stored choice is re-applied on startup so a reinstall does not silently revert it.
  • feat: full provider card for subscriptions. The announcement, description and banner are rendered, together with buttons for whatever links the panel actually sent — Channel/Bot, Support, Email, Website, Premium. Buttons appear only for links that exist, so a plain subscription looks exactly as before. hide-url is honoured.
  • feature: complete subscription header support. profile-description, announce-url, telegram-url, support-url, support-email, profile-web-page-url / homepage, premium-url, the banner-* family, hide-url and sort-order are now read, typed and validated. Header names are matched case-insensitively, documented alternatives (subscription-name, content-disposition) are accepted, and the same parameters may arrive as body comments — HTTP headers win.
  • feature: provider metadata is persistent. The announcement, links and update interval are stored in the database instead of living in memory, so they survive a restart. A refresh that returns fewer headers no longer erases values the panel sent earlier — the same rule the traffic counters already followed.
  • feature: device DNS resolvers are used for bootstrap. The bootstrap resolver was hard-coded to 1.1.1.1; it now prefers the resolvers the current network reports, falling back to 1.1.1.1 only when none is usable. On carriers that block or hijack UDP/53 to public resolvers, the client could previously not even resolve the tunnel endpoint's own hostname.
  • fix: DNS exchange failures on subscriptions that worked everywhere else. When a node's profile carried a private DNS address (a WireGuard/AmneziaWG DNS = line, often 10.x.x.x), dns.final pointed straight at it. sing-box has no failover for dns.final — it is exactly one server — so a resolver that nothing answers on inside the tunnel killed every single name lookup while the tunnel itself was healthy, producing endless dns exchange failed. The profile resolver is now raced against the proxied resolver, so it still wins when it works and no longer takes everything down when it does not. Desktop was unaffected because it does not route all DNS through the proxy by default.
  • fix: bind: address already in use on the local HTTP inbound. Reconnects and server switches could die with start inbound/http[http-in]: listen tcp 127.0.0.1:10809: bind: address already in use. Port-conflict recovery covered only the SOCKS inbound, so retries re-picked that port and hit the same HTTP conflict every time — which is why changing the port in settings did not help. The HTTP inbound is now conflict-checked and relocated the same way.
  • fix: base64 subscription fields shown raw. A panel sending base64:... for profile-title, profile-description, announce, banner-text or banner-button-text had that literal string displayed. Only the title was ever decoded. The decoder now handles all of them, accepts a case-insensitive prefix, the URL-safe alphabet and missing padding, leaves an unprefixed value alone even when it looks like base64, and falls back to the raw text instead of blanking the card on malformed input.

Virustotal 0/67

Full Changelog: android-v0.9.9...android-v1.0.0

Lumen Android 0.9.9

Choose a tag to compare

@krambovic krambovic released this 26 Jul 19:38
b373334

Lumen Android v0.9.9

First public release of the Lumen Android client.

What's Changed

Features

  • feat(logging): add persistent rotating logs that survive application restarts and can be completely disabled in Settings
  • feat(ping): add AmneziaWG measurements and HTTP GET checks alongside TCP, ICMP and real-proxy testing
  • feat(core): add multiplex protocol, stream, padding and Brutal settings
  • feat(network): add TCP Fast Open, Multipath TCP, UDP fragmentation and UDP-over-TCP settings
  • feat(dns): add extended DNS configuration and urltest tuning verified against the bundled core
  • feat(theme): add the Rosé Pine theme and correct the AMOLED Black and Material You options
  • feat(haptics): add feedback when connecting, disconnecting and adding a server
  • feat(icon): add a themed launcher icon with light and dark system variants
  • feat(import): open the matching server group after import and place manual or file imports in Default
  • feat(import): support Clash-style JSON containing a single WireGuard or AmneziaWG node
  • feat(awg): support amnezia-wg-option, including AWG 2.0 packet templates
  • feat(servers): share sorting options between Dashboard and Servers and remember the selected order
  • feat(telemetry): enable anonymous Android telemetry by default, with an option to disable it in App Settings

Fixes

  • fix(auto): preserve generated proxy-N outbound tags so AUTO and urltest pools no longer reference missing dependencies
  • fix(auto): prevent profiles containing Hysteria nodes from crashing AUTO pools during core startup
  • fix(network): apply the Block QUIC rule only to QUIC instead of rejecting all UDP traffic on port 443
  • fix(vpn): store large generated configurations in private application storage instead of exceeding Android's Binder transaction limit
  • fix(vpn): reliably stop previous core processes before reconnecting or switching servers
  • fix(vpn): retry local SOCKS bind conflicts and fall back when the configured port is occupied
  • fix(errors): surface the core's first FATAL message and stop readiness checks immediately after an early core exit
  • fix(openvpn): require credentials only for OpenVPN profiles that use username/password authentication
  • fix(subscriptions): persist traffic usage and expiration information across application restarts
  • fix(subscriptions): correctly handle expiration timestamps, unlimited traffic and missing subscription-userinfo headers
  • fix(subscriptions): try Lumen's User-Agent first and use Happ or other profiles only as fallbacks
  • fix(qr): request camera permission when the QR scanner opens and show Lumen's own denial explanation
  • fix(ping): add an overall deadline so stalled measurements cannot run forever
  • fix(servers): prevent long subscription names from breaking the group chip layout
  • fix(database): remove the destructive Room migration fallback that could silently erase saved servers
  • fix(widget): restrict VPN control broadcasts so other installed applications cannot stop the tunnel

Note

There are no armeabi-v7a or x86 builds because the bundled sing-box-extended core is not compiled for those ABIs.

Virustotal: 0/65

Lumen v1.9.6

Choose a tag to compare

@github-actions github-actions released this 23 Jul 12:49

What's Changed

  • fix: fix awg
  • fix: added drag&drop for .ovpn
  • fix: fixed startup

Full Changelog: v1.9.3...v1.9.6

Lumen v1.9.5

Choose a tag to compare

@github-actions github-actions released this 23 Jul 09:46

What's Changed

  • feat(brand): rebrand application to Lumen, update app icons, installer scripts, and repository links
  • feat(deeplinks): add lumen:// system URL scheme handler for one-click browser configuration imports
  • feat(protocols): add NaïveProxy (naive+https://) configuration parser and core execution support
  • feat(protocols): add OpenVPN (.ovpn) configuration file import and parser support
  • feat(engines): expand sing-box extended support and AmneziaWG (AWG) header/junk normalization (jc, jmin, jmax, s1..s4, h1..h4, i1..i5)
  • feat(subscriptions): enhance Happ Crypt (happ://crypt..crypt5) link decryption and subscription parsing
  • fix(ui): resolve QML text field context menu actions (Copy, Cut, Paste, Select All) and native menu filter
  • fix(routing): correct domain typo in Anthropic / Claude routing preset

Full Changelog: v1.9.3...v1.9.5

Lumen v1.9.4-pre.04

Lumen v1.9.4-pre.04 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 22 Jul 14:32

Изменения

С прошлого пре-релиза v1.9.4-pre.03

  • fix: repair legacy update migration and restart (62c4412)

Lumen v1.9.4-pre.03

Lumen v1.9.4-pre.03 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 22 Jul 08:40

Изменения

С прошлого пре-релиза v1.9.4-pre.02

  • fix: harden Lumen migration, AWG defaults and text menus (74de240)

Lumen v1.9.4-pre.02

Lumen v1.9.4-pre.02 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 22 Jul 07:47

Изменения

С прошлого пре-релиза v1.9.4-pre.01

  • feat: expand protocol support, deep links and Lumen migration (84e0523)

Lumen v1.9.4-pre.01

Lumen v1.9.4-pre.01 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 21 Jul 18:08

Изменения

С прошлого пре-релиза v1.7.3-pre.04

  • refactor: rename application to Lumen and update repository links (4b3a574)
  • fix: unignore Lumen-qml.spec in gitignore for CI build (f447170)
  • bump version (f11087f)
  • refactor: rename application to Lumen and update repository links (2bb4c20)
  • fix: anthropic domain preset typo correct (165f7a3)
  • chore: release version 1.9.3 (9864c6b)
  • chore: release version 1.9.2 (dfd4f5f)
  • chore: release version 1.9.1 (d837a71)
  • docs: document Happ subscription support (efbe3e9)
  • chore: release version 1.9.0 (75ef552)
  • chore: release version 1.8.7 (f2eb610)
  • chore: release version 1.8.6 (54bb21c)
  • upd readme (b7386fe)
  • chore: release version 1.8.5 (b21b037)
  • Update README-RU.md (8b03762)
  • Update README.md (8da0c84)
  • chore: release version 1.8.3 (bf9ca0e)
  • chore: release version 1.8.2 (707e7e4)
  • chore: release version 1.8.1 (31559e1)
  • chore: release version 1.8.0 (1ee63f9)
  • Update README-RU.md (aa7518f)
  • Update README.md (dc98830)
  • feat(subscriptions): decrypt Happ crypt links (happ://crypt..crypt5) (6e5aad6)
  • chore: release version 1.7.7 (06db3b4)
  • docs: remove outdated docs (c8af588)
  • fix(ui): various ui improvements and fixes (ed4423f)
  • fix(ui): various nodes page improvements & version bump (4aaa722)
  • chore(release): release version 1.7.6 (bf7c19e)
  • chore(release): release version 1.7.5 (c81e8f1)
  • chore(release): release version 1.7.4 (b26ba40)
  • chore(release): update release notes for version 1.7.3 (687af6c)