Introduced a new function to check if a directory or its parent is writable. Updated the logic to resolve the server source root for updates, ensuring it falls back to a predefined path if the preferred path is not writable. This change enhances the update process by providing better error handling and flexibility in server source management.
Apply setgid group-write on $RUSTDESK_PATH for the betterdesk console user,
re-sync permissions after the Go server starts, and verify both console data/
and Go data directories.
Fixes#206
Apply setgid group-write on $RUSTDESK_PATH for the betterdesk console user,
re-sync permissions after the Go server starts, and verify both console data/
and Go data directories. Patch release 3.3.2 on main.
Fixes#206
- Introduced server URL validation via `GET /api/bd/server-info` and `probe_server_url`.
- Added LAN discovery capabilities using UDP and optional mDNS for local network panel detection.
- Implemented a local settings window for managing URL, TLS settings, and user preferences.
- Enhanced dashboard with a unified sidebar and improved scrolling behavior.
- Updated documentation and pre-release checklist to reflect new features and requirements.
Enable vendor-aware VA-API/GStreamer and WebView2 hardware decode for smoother
remote video; fix Connect invoke, session back-to-close, and dashboard layout
with collapsible device list and sidebar sections that scroll inside the window.
- Fixed the address book list/grid scrolling behavior in the web dashboard to prevent it from stretching the whole page.
- Updated Tauri ACL permissions for the desktop client to ensure correct handling of `open_session` invokes with appropriate payloads.
- Improved CSS for the dashboard to ensure proper height management and overflow handling.
- Added a new Tauri v2 operator shell for RdClient desktop, featuring first-run panel URL setup and session management.
- Implemented automatic session detection for Linux and TLS support for both HTTP and HTTPS with various certificate options.
- Enhanced remote session opening functionality to utilize the new desktop client when available.
Replace the flat device table with a RustDesk-inspired address book: sidebar navigation, colored card grid, quick-connect bar, and 30s server sync using panel branding tokens and fonts.
- Added a dedicated login page for the Remote Desktop client, allowing operators to sign in when their session expires.
- Implemented safe return URL handling for the login process.
- Updated authentication middleware to support RdClient-specific routes and permissions.
- Enhanced localization support for the new login feature across multiple languages.
- Improved user experience by redirecting to the appropriate pages based on authentication status.
- Introduced a new Remote Desktop client dashboard accessible via the Tools menu, allowing users to connect to devices in a new browser tab.
- Added localization strings for the Remote Desktop feature in multiple languages.
- Updated sidebar to include a link to the new dashboard with appropriate permissions and styling enhancements.
Batch peer lookups for address book and scoped RustDesk lists, sweep stale billing pending relays, fix simultaneous relay pairing race, and add signal→relay compat test coverage.
Batch peer status writes, skip heartbeat rate limits for known peers, CDAP session cleanup on disconnect, relay WS conn limits, Postgres query timeouts, org login throttling, and CI with go test -race.
- Introduced a new glass surface effect for cards, modals, and forms, enhancing the UI with a frosted glass appearance.
- Added localization strings for the glass surface feature in multiple languages.
- Implemented settings for enabling/disabling the glass effect, adjusting color, blur, and opacity through the settings interface.
- Updated CSS variables to support the new glass surface styling.
- Translated "Show" and "Hide" to "顯示" and "隱藏" in zh-TW.json.
- Updated "Show" and "Hide" to "显示" and "隐藏" in zh.json.
- Changed "Password must be at least 6 characters" to "密码至少需要 6 个字符" in both localization files.
- Removed references to SMTP configuration in subtitles across multiple language files to streamline messaging.
- Ensured consistency in the presentation of alert rules and remote commands.
- Added a modular studio layout with a live preview panel, autosave, server-side appearance profiles, and a built-in theme gallery.
- Expanded Google Fonts picker and enabled custom font uploads (woff2/ttf).
- Updated the appearance tab for real-time changes without full page reloads and introduced a read-only mode for users without edit permissions.
- Improved localization by updating language files with new strings for branding and appearance features.
- Redesigned the updates tab to adopt a Windows 11-inspired layout, improving user experience.
- Added a hero section for update status with dynamic messaging based on update state.
- Implemented new CSS styles for better visual consistency and responsiveness.
- Updated JavaScript functions to manage update status rendering and alerts effectively.
- Enhanced localization support by adding new language strings for the updates section.
- Added session management features to synchronize media capture and input handling across active tabs.
- Updated audio handling to respect session activity and mute states.
- Improved clipboard functionality to only allow copying to local clipboard from the active session.
- Refactored input capture logic to ensure it only activates for the active viewer tab.
- Introduced a new `syncSessionMediaCapture` function to manage media input across sessions.
- Introduced email notifications for help requests, allowing operators assigned to device folders or groups to receive alerts.
- Moved SMTP configuration to **Settings → Email**, including options for host, credentials, and alert email.
- Updated console layout for better usability and removed legacy SMTP automation tab.
- Added `nodemailer` as a dependency for email handling.