remove zen browser, add brave origin

This commit is contained in:
Bartal Laearsson
2026-08-04 09:12:32 +01:00
parent 07c1679f4a
commit ceac38afd4
7 changed files with 5 additions and 124 deletions
+4 -4
View File
@@ -6,7 +6,7 @@
- Sway with SDDM, Waybar, PipeWire, printing, SSH, and NetworkManager
- Faroese keyboard layout, Danish regional formats, and Atlantic/Faroe time
- Foot as the terminal, opening the persistent `tmux` session
- Zen as the default browser, installed from Zen's official release tarball
- Brave Origin as the default browser
- Development tools, formatters, and Fedora-packaged language servers from NixOS
## Run
@@ -25,7 +25,7 @@ ansible-playbook setup.yml -K
| Key | Action |
|---|---|
| `Super+t` | Foot attached to tmux session `main` |
| `Super+b` | Zen Browser |
| `Super+b` | Brave-Origin Browser |
| `Super+d` | Rofi application launcher |
| `Super+q` | Close window |
| `Super+h/j/k/l` | Move focus |
@@ -48,6 +48,6 @@ The main switches live near the top of `vars.yml`:
## Re-running
The playbook is designed to be repeatable. Zen, Bun, Rust, Starship, npm tools,
services, and configuration files are checked before changes are made. Zen
The playbook is designed to be repeatable. Brave Origin, Rust, Starship, npm tools,
services, and configuration files are checked before changes are made. Brave Origin
handles browser updates itself after the initial binary installation.
Binary file not shown.
-1
View File
@@ -31,7 +31,6 @@
when: install_jdtls
- ansible.builtin.import_tasks: tasks/sqlcmd.yml
when: install_sqlcmd
- ansible.builtin.import_tasks: tasks/zen.yml
- ansible.builtin.import_tasks: tasks/dotfiles.yml
- ansible.builtin.import_tasks: tasks/user_config.yml
- ansible.builtin.import_tasks: tasks/pcloud.yml
-1
View File
@@ -72,7 +72,6 @@
export EDITOR=nvim
export VISUAL=nvim
export TERMINAL=foot
export BROWSER=zen
export GTK_THEME=Adwaita:dark
export MOZ_ENABLE_WAYLAND=1
export ELECTRON_OZONE_PLATFORM_HINT=wayland
-112
View File
@@ -1,112 +0,0 @@
---
- name: Check for Zen Browser
ansible.builtin.stat:
path: "{{ zen_install_dir }}/zen"
become: false
register: zen_binary
- name: Create Zen installation directories
ansible.builtin.file:
path: "{{ item }}"
state: directory
owner: "{{ user_name }}"
mode: "0755"
become: false
loop:
- "{{ user_home }}/.tarball-installations"
- "{{ user_home }}/.config"
- "{{ user_home }}/.local/bin"
- "{{ user_home }}/.local/share/applications"
- "{{ user_home }}/.local/share/icons/hicolor/128x128/apps"
- name: Download the current Zen release binary
ansible.builtin.get_url:
url: "{{ zen_archive_url }}"
dest: "{{ zen_archive }}"
mode: "0644"
become: false
when: not zen_binary.stat.exists
- name: Extract Zen Browser
ansible.builtin.unarchive:
src: "{{ zen_archive }}"
dest: "{{ user_home }}/.tarball-installations"
remote_src: true
creates: "{{ zen_install_dir }}/zen"
become: false
- name: Link Zen into the user's PATH
ansible.builtin.file:
src: "{{ zen_install_dir }}/zen"
dest: "{{ user_home }}/.local/bin/zen"
state: link
force: true
become: false
- name: Install Zen application icon
ansible.builtin.copy:
src: "{{ zen_install_dir }}/browser/chrome/icons/default/default128.png"
dest: "{{ user_home }}/.local/share/icons/hicolor/128x128/apps/zen.png"
remote_src: true
owner: "{{ user_name }}"
mode: "0644"
become: false
- name: Install Zen desktop entry
ansible.builtin.copy:
dest: "{{ user_home }}/.local/share/applications/{{ zen_desktop_file }}"
owner: "{{ user_name }}"
mode: "0644"
content: |
[Desktop Entry]
Version=1.0
Type=Application
Name=Zen Browser
Comment=Browse the web
Exec=zen %u
Icon=zen
Terminal=false
StartupNotify=true
StartupWMClass=zen
Categories=Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml+xml;x-scheme-handler/http;x-scheme-handler/https;application/x-xpinstall;application/pdf;application/json;
Actions=new-window;new-private-window;profile-manager;
[Desktop Action new-window]
Name=New Window
Exec=zen --new-window %u
[Desktop Action new-private-window]
Name=New Private Window
Exec=zen --private-window %u
[Desktop Action profile-manager]
Name=Profile Manager
Exec=zen --ProfileManager
become: false
- name: Remove downloaded Zen archive
ansible.builtin.file:
path: "{{ zen_archive }}"
state: absent
become: false
- name: Query default MIME handlers
ansible.builtin.command: "xdg-mime query default {{ item }}"
become: false
loop:
- text/html
- application/xhtml+xml
- x-scheme-handler/http
- x-scheme-handler/https
register: current_browser_handlers
changed_when: false
failed_when: false
- name: Set Zen as the default browser
ansible.builtin.command: "xdg-mime default {{ zen_desktop_file }} {{ item.item }}"
become: false
loop: "{{ current_browser_handlers.results }}"
loop_control:
label: "{{ item.item }}"
when: item.stdout != zen_desktop_file
+1 -1
View File
@@ -1,7 +1,7 @@
# Sway workstation configuration translated from NixOS behavior.
set $mod Mod4
set $term foot -e tmux new-session -A -s main
set $browser zen
set $browser brave-origin
set $menu rofi -show drun
font pango:DejaVu Sans Mono 10
-5
View File
@@ -163,11 +163,6 @@ rustup_components:
- rust-analyzer
- rust-src
zen_archive_url: https://github.com/zen-browser/desktop/releases/latest/download/zen.linux-x86_64.tar.xz
zen_archive: /tmp/zen.linux-x86_64.tar.xz
zen_install_dir: "{{ user_home }}/.tarball-installations/zen"
zen_desktop_file: zen.desktop
sqlcmd_version: "1.8.1"
sqlcmd_archive: sqlcmd-linux-amd64.tar.bz2
sqlcmd_url: "https://github.com/microsoft/go-sqlcmd/releases/download/v{{ sqlcmd_version }}/{{ sqlcmd_archive }}"