Files
nixpkgs/docs/packages/launch-webapp.md
m3tm3re 44485c4c72 docs: update zellij-ps to reflect project switcher functionality
- Update package description and fix mainProgram typo
- Rewrite documentation to describe project switching, not process viewing
- Add PROJECT_FOLDERS configuration and usage examples
- Update all references across docs (README, guides, module overviews)
2025-12-30 15:42:52 +01:00

3.3 KiB

launch-webapp

Launches a web app using your default browser in app mode.

Description

launch-webapp is a shell script that launches web applications (like Discord, Spotify Web, etc.) in your default browser's "app mode". This provides a more native-like experience for web apps.

Features

  • 🌐 Auto-Detection: Detects your default web browser
  • 🚀 App Mode: Launches in dedicated app window (no address bar)
  • 🎨 Native Feel: Removes browser chrome for app-like experience
  • 🔄 Session Management: Keeps web apps separate from regular browsing
  • 🖥️ Wayland Support: Works with Wayland session managers (via uwsm)

Installation

Via Overlay

{pkgs, ...}: {
  environment.systemPackages = with pkgs; [
    launch-webapp
  ];
}

Direct Reference

{pkgs, ...}: {
  environment.systemPackages = with pkgs; [
    inputs.m3ta-nixpkgs.packages.${pkgs.system}.launch-webapp
  ];
}

Run Directly

nix run git+https://code.m3ta.dev/m3tam3re/nixpkgs#launch-webapp

Usage

Basic Usage

# Launch web app
launch-webapp https://web.telegram.org

# Launch with additional arguments
launch-webapp https://web.whatsapp.com --app-name="WhatsApp"

Examples

Launch Discord Web

launch-webapp https://discord.com/app

Launch Spotify Web

launch-webapp https://open.spotify.com

Launch Google Chat

launch-webapp https://chat.google.com

Configuration

Supported Browsers

The script auto-detects and supports:

  • Google Chrome
  • Brave Browser
  • Microsoft Edge
  • Opera
  • Vivaldi
  • Chromium (fallback)

Default Browser

The script uses xdg-settings to detect your default browser.

# Check your default browser
xdg-settings get default-web-browser

Wayland Support

The script uses uwsm (Wayland Session Manager) for proper Wayland support. Ensure uwsm is installed and configured.

Desktop Integration

Create Desktop Entry

Create ~/.local/share/applications/webapp-discord.desktop:

[Desktop Entry]
Name=Discord Web
Comment=Discord Web App
Exec=launch-webapp https://discord.com/app
Icon=discord
Type=Application
Categories=Network;InstantMessaging;

Add to Menu

The desktop entry will appear in your application menu after creating it.

Requirements

  • xdg-utils: For default browser detection
  • uwsm: Wayland session manager
  • Your preferred browser (Chrome, Brave, etc.)

Platform Support

  • Linux (primary, requires Wayland)
  • macOS (not tested)
  • Windows (not supported)

Build Information

  • Version: 0.1.0
  • Type: Shell script
  • License: MIT

Troubleshooting

Browser Not Found

If the script doesn't find your browser, ensure it's installed:

{pkgs, ...}: {
  environment.systemPackages = with pkgs; [
    google-chrome
    # or brave-browser, microsoft-edge, etc.
  ];
}

Wayland Issues

If you encounter Wayland issues:

# Check uwsm is installed
which uwsm

# Check Wayland session
echo $XDG_SESSION_TYPE  # Should be "wayland"

App Won't Launch

Check the browser supports app mode:

# Test manually
google-chrome --app=https://example.com