Skip to content

Releases: venterum/veil

v0.5.0

Choose a tag to compare

@venterum venterum released this 18 Aug 12:49

What's new?

  • Add update check screen (About → Update → Check for update): shows current version, update status, pre-release and auto-check toggles, and a download button when a new version is available
  • Automatic update checks via GitHub on app launch — notifies about new versions once a day
  • Fixed localization: translated all missing strings and arrays across all 8 locales

v0.4.1

Choose a tag to compare

@venterum venterum released this 15 Aug 21:29

What's new?

  • Migrate server cards to Compose (preload tabs, Compose icons, overflow menu)
  • Fix olcRTC connections against current servers by updating the olcrtc submodule to the OLC2 record layer (directional HKDF-SHA256 keys, replay protection) and migrating OlcrtcManager to the new instance-based mobile.Runtime API (#4)

v0.4.0

Choose a tag to compare

@venterum venterum released this 14 Aug 22:28

⭐ Highlights

  • Redesigned Add config menu — popup menus replaced with a categorized bottom sheet (import, featured builders, server protocols) with M3 Expressive spring animations
  • Custom subscription HTTP headers + HWID — send per-subscription headers and a generated device ID (x-hwid) for providers that require one
  • New overflow menu on the main screen — all bulk actions consolidated behind a button
  • Connection details migrated to Compose — XML bottom sheet replaced with a Compose sheet

What's new?

  • Redesign the add config flow as a categorized ModalBottomSheet: Import (QR code / clipboard / file), builders (policy group, proxy chain) and server protocols
  • Updated overflow menu () to the main screen toolbar
  • Migrate connection details sheet to Compose; remove the XML bottom_sheet_connection_info.xml layout
  • Add per-subscription custom HTTP headers (one Name: value per line) on top of the existing User-Agent, e.g.:
{
 "Authorization": "Bearer test"
}
  • Add per-subscription HWID (Device ID) field with a Generate button (random 16-char [a-zA-Z0-9=-]), sent as x-hwid header (#2)
  • Fix formatBytes crash on very large totals by extending units up to EB (previously crashed for some subscription stats) (#3)

v0.3.0

Choose a tag to compare

@venterum venterum released this 04 Aug 21:34

⭐ Highlights

  • Major Compose migration — some elements from main screen and many other screens ported from XML to Jetpack Compose (some from v2rayNG upstream 2.3.x)
  • Updated xray core — AndroidLibXrayLite bumped to v26.7.28 (xray-core v26.7.28)
  • Widget rewritten to Glance DataStore — more reliable widget state instead of MMKV

What's new?

  • Migrate XML control bar and many screens to Compose (see upstream section below)
  • Search button toggle — option to enable/disable the search button on the main screen
  • Replaced search bars across app picker, bypass list, logcat and main layouts with the new Compose toolbar search actions
  • Rewrote the About page in Compose with updated content
  • Refactor widget state to use Glance DataStore instead of MMKV
  • Update AndroidLibXrayLite to v26.7.28 (xray-core v26.7.28)
  • Update hev-socks5-tunnel to 2.16.0
  • Update olcrtc submodule (Jitsi ICE restricted to udp4)

Changes from upstream (2dust — v2rayNG 2.2.6 → 2.3.2)

  • Some compose screens were implemented
  • Balancer strategies (Least Ping / Least Load / Random / Round Robin)
  • Warn on insecure nodes without pinned cert (pinnedCA256)
  • Auto-remove invalid + auto-sort subscription after core tests
  • XHTTP/gRPC/KCP transport support in server editor
  • Per-subscription User-Agent header for updates
  • Update AndroidLibXrayLite to v26.7.28, hev-socks5-tunnel to 2.16.0

v0.2.1

Choose a tag to compare

@venterum venterum released this 24 Jul 20:56

Added

  • Runtime launcher icon switching — three variants: Default, Wink, Summer
  • olcRTC core updates
  • Lock screen visibility toggle for live speed notifications
  • Connection status dot indicators in server lists
  • Menu option to auto-select Russian apps for per-app proxy
  • Widget preview image and layout for the system picker
  • New notification icon asset

Changed

  • Rewrote widget from RemoteViews to Jetpack Glance (Compose-based, MMKV-backed state)
  • Shorter "Restart service" notification title
  • Adjusted button spacing in expressive layout

Fixed

  • Widget state sync on boot — stale MMKV values are now reset in BootReceiver
  • TUN interface now stops before proxy shutdown in hybrid mode, preventing dangling routes

Translations

  • Added Russian strings for widget, mode settings, and new features

v0.2.0

Choose a tag to compare

@venterum venterum released this 15 Jul 15:29

⭐ Highlights

  • Live status bar speed updates — real-time traffic speed in notification area, plus TUN toggle for Android 16+ (in hybrid mode)
  • All Servers tab — unified grouped view of all servers with collapse/expand
  • New app icon

What's new?

  • Update AndroidLibXrayLite to v26.7.5
  • Sync upstream v2rayNG 2.2.6 (see upstream section below)
  • Update olcrtc submodule
  • All Servers tab — new fragment showing every server grouped by subscription
  • Live speed in notification — real-time upload/download stats via NotificationManager; TUN on/off toggle for Android 16+
  • add olcRTC DNS support; fix TUN/proxy shutdown ordering; UI string adjustments

Changes from upstream (2dust — v2rayNG 2.2.5 → 2.2.6)

  • Root system-wide proxy mode without VpnService
  • Maxsplit fragment option
  • Fix ip6tables "No chain/target/match by that name" on devices lacking xt_addrtype kernel module
  • Improve DNS handling
  • Add android.permission.ACCESS_LOCAL_NETWORK for Android 17
  • Code cleanup
  • Update hev-socks5-tunnel submodule
  • Update AndroidLibXrayLite
  • Update build CI / bump actions/cache
  • Persian translation overhaul
  • Russian translation update
  • Luri Bakhtiari translation update

v0.1.1

Choose a tag to compare

@venterum venterum released this 05 Jul 06:37

fix: add geoip-only-cn-private.dat to arr

v0.1.0 — The initial release

Pre-release

Choose a tag to compare

@venterum venterum released this 03 Jul 06:18

Warning: This is an early release. Bugs, crashes, and breaking changes are expected. Use at your own risk.

Veil is a fork of v2rayNG with a fully redesigned Material 3 UI and olcRTC support.

New features

olcRTC tunnel

  • Encrypted TCP-over-WebRTC tunnel with dedicated UI (OlcrtcActivity)
  • Carriers: Jitsi, Telemost, WbStream
  • Transports: DataChannel, VP8, SEI

Connection modes

  • VPN — all traffic through the VPN tunnel (default)
  • Proxy only — standalone SOCKS5 proxy, no TUN
  • Proxy + TUN — SOCKS5 proxy with a runtime TUN toggle — switch the VPN tunnel on and off without reconnecting

Connection info bottom sheet

Long-press the connection card (Expressive mode) to open a bottom sheet showing:

  • Current IP address
  • Geographic location (city, region, country)
  • ISP / organization / ASN
  • Real-time upload and download speeds

TUN runtime toggle

In Proxy + TUN mode, enable or disable the VPN tunnel on the fly from the main screen without disconnecting the proxy.

UI and interaction

  • Spring animations on all controls — cards squash and bounce on press, UI elements spring into view
  • Haptic feedback on taps, long-presses, and navigation actions
  • Material 3 Expressive shape system — rounded corners on dialogs, menus, popups
  • Dynamic color support (Monet, Android 12+)
  • Material Snackbar replaces Toasty for all notifications — themed per day/night mode
  • Navigation drawer redesigned with section headers and a kill-app action
  • Mode selector dialog in the drawer — switch between VPN, Proxy, and Proxy + TUN
  • Locate server — find and scroll to the currently selected server across groups

Settings

  • SOCKS credentials generator — generate random username/password for SOCKS proxy
  • Telegram proxy shortcut — quickly add your local SOCKS5 proxy via tg:// link

Preserved from v2rayNG 2.2.5

All standard features remain fully functional:

  • Protocols: VMess, VLESS, Shadowsocks, Trojan, SOCKS, WireGuard, Hysteria2
  • Subscription management with automatic updates
  • Per-app proxy, routing rules, DNS configuration
  • mux, fragmentation, sniffing
  • geoip / geosite rule support
  • QR code scan and share
  • Config backup and restore (local and WebDAV)
  • Tasker / Locale plugin support
  • Home screen widget