# webosbrew/dev-manager-desktop: a Tauri and Angular front end for webOS TV developer mode

> The webOS Homebrew Team ships a desktop GUI that talks to the same developer-mode interface as ares-cli. It removes the LG SDK from the install path, and it is not a rooting tool.

**webosbrew/dev-manager-desktop** — Device/DevMode Manager for webOS TV

- Repository: https://github.com/webosbrew/dev-manager-desktop
- Stars: 2,596 · Forks: 178
- Language: TypeScript
- License: Apache-2.0
- Published: 2026-09-28 · Updated: 2026-09-28 · Language: en
- Canonical page: https://hysenlabs.com/projects/webosbrew-dev-manager-desktop

## What dev-manager-desktop replaces, and for whom

The project describes itself as a "Simple tool to manage developer mode enabled or rooted webOS TV". That phrasing matters, because it sets the scope: the app manages a TV that is already in developer mode or already rooted. It is not the thing that roots the TV, and no section of the README claims otherwise. The audience is anyone who has been through the LG developer-mode process and then found themselves living in a terminal, running ares-cli commands to add a device, list installed apps, or push an .ipk. The README lists the payoff directly: no need to install the LG SDK or IDE, add a device without the command line, and install apps on the TV with a few clicks. Configuration is stated to be compatible with ares-cli, which is the detail that makes this more than a convenience wrapper. If you already have a working ares-cli setup, the app reads the same configuration rather than asking you to maintain a second one.

## Angular in a webview, Rust underneath, talking to the TV over the network

The repository layout shows two source trees: src/ for the Angular application and src-tauri/ for the Rust side, wired together by Tauri 2. The package.json dependencies confirm the split. On the front end there is Angular 22 with @ng-bootstrap, bootstrap-icons, and @xterm/xterm plus the fit, search and web-links addons, which is what the built-in terminal screenshot is built from. On the Tauri side there are plugins for dialog, fs, http, log, os, shell and upload, and those plugin names map closely to the feature list: shell and xterm for the terminal, fs for the file manager, upload for pushing app packages, http for fetching from the webOS Homebrew repo. The Cargo.toml is a workspace with a single member, src-tauri, and it carries a patch entry that pins r2d2 to a git revision rather than a crates.io release, which is a small signal that the build depends on an unreleased fix. The same file has a commented-out Tauri patch, so the dependency graph has been adjusted at least once and left in place.

## Installing it and connecting a first TV

The README does not describe a package-manager install. It points to the latest release page and a table of installer artifacts, so the first step is choosing the right one for your machine. Windows 10 and later get an .msi, with an x64 and an x86 build and no arm64 build. macOS gets a single universal .dmg that covers both architectures. Debian and Ubuntu get a .deb in amd64 and arm64, and other Linux distributions get an AppImage in amd64 and aarch64. Download the matching file from the releases page and run it.

On Linux, the .deb is installed with the system package manager, and the AppImage is run directly. The README does not print either command, so follow the artifact names in the download table rather than a command copied from elsewhere.

Once the app is open, the Add Device flow is the entry point. The README does not print the field names, but it does state that a device can be added without the command line, which is the whole point of the screen. After a device is added, the Installed Apps view lists what is on the TV and the install action pushes a package to it. For Homebrew packages there is a separate install-from-repo screen, shown in the README as "Install from webOS Homebrew repo".

If you want to build it yourself rather than download it, the package.json scripts are the map: npm run start wraps tauri dev, npm run build wraps tauri build, and the tauri script is itself a wrapper at scripts/tauri-wrapper.js. The engines field requires Node ^22.22.3, ^24.15.0 or >=26.0.0, so an older Node will not do.

```bash
npm install
npm run start
```

## Where the app stops and the TV takes over

The most common wrong expectation is that this tool enables developer mode or roots the TV for you. Nothing in the README supports that reading. The first line scopes it to TVs that are already in developer mode or already rooted, and the feature list is about managing such a device. If your TV is stock and you have not been through the developer-mode sign-in, this app has nothing to connect to.

A second boundary is the platform table. Windows 7, 8 and 8.1 are marked "Dropped support", with the note that the last build for those systems is 1.13.3. Anyone on those versions is pinned to an old release and will not receive the fixes in the 1.99.x line. There is also no arm64 Windows build, so Windows on ARM users have to fall back to the x86 build or run it under emulation.

The README does not document what happens when a device is left in a bad state, and it does not describe a rollback or recovery procedure. That is a real gap for a tool that installs packages on a television you cannot easily attach a keyboard to. Treat the install action as something to try on a device you are willing to reset, at least until you have read the release notes for the version you are running.

Finally, the release cadence is uneven. v1.99.18 landed on 2026-02-15, v1.99.19 on 2026-08-09, and v1.99.20 on 2026-08-19. The repository's last push was on 2026-09-23. The gap between February and August is worth knowing if you are deciding whether a bug you hit is likely to be fixed soon.

## Compared with staying in ares-cli

The honest alternative is not another GUI. It is the ares-cli command line the app is built to be compatible with. The difference is not capability, it is where the work happens. ares-cli is a set of commands you run from a shell, and it is scriptable: you can put device setup and package installation into a build script, run it in CI, and reproduce it on another machine from a text file. dev-manager-desktop puts the same operations behind screens, which is faster for one-off tasks and for people who do not want to install the LG SDK at all. The trade-off is that a GUI is harder to automate and harder to diff. If your workflow is "run these four commands after every build", the command line wins. If your workflow is "check what is on the TV and install this one package", the app wins. Because the README states the configuration is compatible with ares-cli, the two are not mutually exclusive, and that compatibility is the strongest argument for trying the app alongside an existing setup rather than instead of it.

## Licence, build cost and the upgrade path

The project is Apache-2.0, which permits commercial use and modification and includes an explicit patent grant. That is a permissive licence, and it is the same family used by many tooling projects. Redistributing a modified build means carrying the licence and the notices with it; this is a description of the terms, not legal advice, and anyone shipping a fork should read the LICENSE file in the repository.

Upgrade cost depends on how you installed it. If you use the .msi, .dmg, .deb or AppImage, upgrading means downloading the next artifact and running it again. The README does not describe an in-app updater, so there is no auto-update path documented. If you build from source, the cost is higher: Node 22.22.3 or newer, the Rust toolchain for Tauri, and the wrapper scripts under scripts/. There is also a flake.nix and flake.lock in the repository root, which suggests a Nix-based development environment is maintained, though the README does not explain how to use it. The Cargo.toml patch pinning r2d2 to a specific git revision is the kind of thing that can break a from-source build if that repository moves or disappears.

## Conclusion

Adopt it if you already have developer mode or root on a webOS TV and want a GUI instead of the ares-cli toolchain; the README states the configuration is compatible with ares-cli, so the two can share a setup. Skip it if you need an Android or iOS client, if you are on Windows 7 or 8.1 (support was dropped after 1.13.3), or if you expect the app to root a retail TV for you. Before installing, verify which of the five installer artifacts matches your CPU and OS, and check the release notes for the version you pick, because the README does not document a rollback path for a device left in a bad state.

## FAQ

### How do I install dev-manager-desktop?

There is no package-manager command in the README. It points to the latest release page and a table of installers: an .msi for Windows, a universal .dmg for macOS, and a .deb or AppImage for Linux, chosen by architecture.

### Does dev-manager-desktop enable developer mode or root my LG TV?

No. The README describes it as a tool to manage a developer mode enabled or rooted webOS TV, so the TV has to be in developer mode or already rooted before the app is useful.

### Which operating systems and architectures does dev-manager-desktop support?

The README lists Windows 10 and later (x64 and x86, no arm64), macOS (one universal build), and Linux as a .deb for Debian and Ubuntu or an AppImage for other distributions, in amd64, arm64 and aarch64 variants. Windows 7, 8 and 8.1 are marked as dropped support, with 1.13.3 as the last build for them.

### Does dev-manager-desktop need the LG SDK installed?

The README states one of its features is that there is no need to install the LG SDK or IDE, and that its configuration is compatible with ares-cli.

### What Node version do I need to build dev-manager-desktop from source?

The package.json engines field requires Node ^22.22.3, ^24.15.0 or >=26.0.0. The build scripts are npm run start (which wraps tauri dev) and npm run build (which wraps tauri build).

## Sources

- [Issues](https://github.com/webosbrew/dev-manager-desktop/issues)
- [License: Apache-2.0](https://github.com/webosbrew/dev-manager-desktop/blob/main/LICENSE)
- [README](https://github.com/webosbrew/dev-manager-desktop/blob/main/README.md)
- [Releases](https://github.com/webosbrew/dev-manager-desktop/releases)
- [webosbrew/dev-manager-desktop on GitHub](https://github.com/webosbrew/dev-manager-desktop)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/webosbrew-dev-manager-desktop
