Created
December 7, 2025 08:05
-
-
Save svin24/4ff2b5c492f9b98933547e8f0d420dfd to your computer and use it in GitHub Desktop.
A local zen install script in case you don't like using flatpak browsers.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/usr/bin/env bash | |
| set -euo pipefail | |
| INSTALL_DIR="$HOME/.local/zen" | |
| BIN_DIR="$HOME/.local/bin" | |
| DESKTOP_FILE="$HOME/.local/share/applications/zen.desktop" | |
| ICON_DIR="$HOME/.local/share/icons/hicolor/128x128/apps" | |
| echo "Installing/Updating Zen Browser → $INSTALL_DIR" | |
| echo | |
| # Create installation directories | |
| mkdir -p "$INSTALL_DIR" "$BIN_DIR" "$HOME/.local/share/applications" "$ICON_DIR" | |
| # Download/Extract/Cleanup | |
| echo "Downloading latest Zen Browser..." | |
| curl -L "https://github.com/zen-browser/desktop/releases/latest/download/zen.linux-x86_64.tar.xz" \ | |
| --fail --show-error --progress-bar -o /tmp/zen-latest.tar.xz | |
| echo "Extracting archive..." | |
| tar -xf /tmp/zen-latest.tar.xz -C "$INSTALL_DIR" --strip-components=1 | |
| rm -f /tmp/zen-latest.tar.xz | |
| # Make zen command available | |
| ln -sf "$INSTALL_DIR/zen" "$BIN_DIR/zen" | |
| # Install icon and Create icon cache | |
| cp "$INSTALL_DIR/browser/chrome/icons/default/default128.png" "$ICON_DIR/zen.png" | |
| gtk-update-icon-cache "$HOME/.local/share/icons/hicolor" 2>/dev/null || true | |
| update-icon-caches "$HOME/.local/share/icons" 2>/dev/null || true | |
| # Create .desktop file and refresh desktop file database | |
| cat > "$DESKTOP_FILE" << 'EOF' | |
| [Desktop Entry] | |
| Name=Zen Browser | |
| Comment=Experience tranquillity while browsing the web without people tracking you! | |
| Exec=zen %u | |
| Icon=zen | |
| Type=Application | |
| MimeType=text/html;text/xml;application/xhtml+xml;x-scheme-handler/http;x-scheme-handler/https;application/x-xpinstall;application/pdf;application/json; | |
| StartupWMClass=zen | |
| Categories=Network;WebBrowser; | |
| StartupNotify=true | |
| Terminal=false | |
| X-MultipleArgs=false | |
| Keywords=Internet;WWW;Browser;Web;Explorer; | |
| Actions=new-window;new-private-window;profilemanager; | |
| [Desktop Action new-window] | |
| Name=Open a New Window | |
| Exec=zen %u | |
| [Desktop Action new-private-window] | |
| Name=Open a New Private Window | |
| Exec=zen --private-window %u | |
| [Desktop Action profilemanager] | |
| Name=Open the Profile Manager | |
| Exec=zen --ProfileManager %u | |
| EOF | |
| chmod +x "$DESKTOP_FILE" | |
| update-desktop-database "$HOME/.local/share/applications" 2>/dev/null || true | |
| echo | |
| echo "Zen Browser is ready!" | |
| echo "Launch with: zen (or from your app menu)" | |
| echo |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment