                                 Apache License
                           Version 2.0, January 2004
                        http://www.apache.org/licenses/

Copyright (c) 2025-2026 UNITRONIX (Krzysztof Nienartowicz). All rights reserved.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

---

## Licensing

This project is available under a dual-licensing model:

### Open Source License (Apache 2.0)

The BetterDesk Server and Console are licensed under the Apache License 2.0.
You may use, modify, and distribute this software freely under the terms
of Apache 2.0. See above for the full license text.

### Commercial License

For organizations requiring:
- Extended support and SLA guarantees
- Custom features and integrations
- White-label / OEM redistribution rights
- Priority bug fixes and security patches

Contact: UNITRONIX (Krzysztof Nienartowicz) (via GitHub Issues or email)

---

## Clean-Room Implementation Notice

BetterDesk Server (`betterdesk-server/`) is an independent, clean-room
implementation of the RustDesk rendezvous and relay protocol. It contains
**no code derived from the RustDesk project**. The server implements published
protocol specifications for client compatibility, similar to how any HTTP
server implements the HTTP protocol without being derived from Apache or Nginx.

BetterDesk Console (`web-nodejs/`) is an entirely original Node.js/Express
web application. It has no code-level dependency on RustDesk.

Protocol definitions (`.proto` files) describe message formats for
interoperability and are not derived from any copyrighted source code.

---

## Archive Directory Exclusion

The `archive/` directory (excluded from distribution via `.gitignore`) contains
deprecated code from earlier development phases, including legacy Rust-based
server binaries and source code licensed under AGPL-3.0. These files are
**NOT covered by this Apache 2.0 license** and retain their original AGPL-3.0
licensing. They are preserved locally for historical reference and migration
tooling only and are never included in releases, packages, or Docker images.

Earlier commits in this repository's git history may contain AGPL-3.0 licensed
files that were part of the project when it was originally released under
AGPL-3.0. The license change to Apache 2.0 applies to the current and all
future versions of the active codebase (`betterdesk-server/` and `web-nodejs/`).

---

## Trademark Notice

"RustDesk" is a trademark of the RustDesk Team. BetterDesk is an independent
project that implements the RustDesk protocol for client compatibility. Use of
the name "RustDesk" in this project is purely descriptive (indicating protocol
compatibility) and does not imply affiliation with or endorsement by the
RustDesk Team.

---

## Component Licenses

### BetterDesk Server (Go)
License: Apache License 2.0
Copyright: 2025-2026 UNITRONIX (Krzysztof Nienartowicz)
Location: betterdesk-server/

### BetterDesk Console (Node.js)
License: Apache License 2.0
Copyright: 2025-2026 UNITRONIX (Krzysztof Nienartowicz)
Location: web-nodejs/

### Third-Party Dependencies

#### Go Server Dependencies
- coder/websocket — ISC License
- jackc/pgx/v5 — MIT License
- golang.org/x/crypto — BSD-3-Clause (Google)
- google.golang.org/protobuf — BSD-3-Clause (Google)
- modernc.org/sqlite — BSD-3-Clause

#### Node.js Console Dependencies
- express — MIT License
- bcrypt — MIT License
- better-sqlite3 — MIT License
- ejs — Apache-2.0 License
- helmet — MIT License
- tweetnacl — Unlicense
- ws — MIT License
- otplib — MIT License
- pg — MIT License

#### Frontend
- Material Icons — Apache License 2.0 (Google Inc.)
