Skip to content

About

Create and update web app launchers via a central user interface

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Latest commit

 

History

85 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WebApp Manager

The WebApp Manager is a compact GTK/Libadwaita desktop and mobile tool for creating, importing, exporting, and managing Linux web app launchers with dedicated browser profiles.


⚠️ AI-assisted project
This project is under active development. Features may change and instability is possible.


What it does

  • Create and update web app launchers via a central user interface
  • Manage dedicated Firefox and Chromium/Chrome profiles per web app
  • Import existing launchers and .wapp exports
  • Manage icons, user-agent preferences, modes and browser-specific options

Installation

Option A: Flatpak (recommended)

flatpak remote-add --if-not-exists webappmanager https://misc-de.github.io/WebApp-Manager/de.cais.webappmanager.flatpakrepo
flatpak install webappmanager de.cais.webappmanager
flatpak run de.cais.webappmanager

Updates then come with flatpak update. The repository is GPG-signed.

The Flatpak shares its data with a source install: web apps, launchers and browser profiles live in the same locations, so you can switch between the two without losing anything.

Because this app manages host state, the package needs broader permissions than a typical sandboxed app. Notably --talk-name=org.freedesktop.Flatpak, which lets it detect and start browsers on the host through flatpak-spawn. Without it the app still edits launchers, but cannot find or launch a browser. Every permission is commented in flatpak/de.cais.webappmanager.yml.

Available for x86_64 and aarch64 (phones running Phosh/FuriOS included).

Building the package yourself instead:

flatpak install flathub org.gnome.Platform//49 org.gnome.Sdk//49
make flatpak-build
flatpak install --user repo de.cais.webappmanager

Option B: Run from source

1. System dependencies. The app is built on GTK 4 / Libadwaita and needs their GObject-Introspection bindings. Install them from your distribution rather than from pip — the bindings have to match the system GTK build:

# Debian / Ubuntu
sudo apt install python3-gi python3-gi-cairo gir1.2-gtk-4.0 gir1.2-adw-1 python3-pil

# Arch
sudo pacman -S python-gobject gtk4 libadwaita python-pillow

# Fedora
sudo dnf install python3-gobject gtk4 libadwaita python3-pillow

Optional, each gating one feature: python3-cairosvg (SVG icon import) and gir1.2-gtksource-5 (syntax highlighting in the custom-asset editor). See requirements.txt and requirements-optional.txt for the pip equivalents.

2. Get the source.

git clone https://github.com/misc-de/WebApp-Manager.git

Startup

After the first launch, a web app launcher is automatically created on the system.

python3 WebApp-Manager/main.py

Import

Web apps can be imported via .wapp files.

Existing launchers can be extended with the value

ManagedBy=WebApp  

in the existing .desktop file so that they are imported when the WebApp Manager is started.

Third-party browser plugins

This project can work with third-party Firefox extensions. Those extensions are not authored by this project and remain under their upstream licenses and distribution terms.

Current plugin references:

Pictures

Desktop
1

Mobile
2 3

About

Create and update web app launchers via a central user interface

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages