Files
dotfiles/config/ansible/tasks/workstations/zen-browser.yml

85 lines
2.5 KiB
YAML

---
- name: Set Zen browser version
ansible.builtin.set_fact:
zen_browser_version: "1.9.1b"
- name: Create directory for browser
ansible.builtin.file:
path: "/opt/{{ browser_name }}"
state: directory
mode: "0755"
become: true
- name: Download Zen browser tarball
ansible.builtin.get_url:
url: "https://github.com/zen-browser/desktop/releases/download/{{ zen_browser_version }}/zen.linux-x86_64.tar.xz"
dest: "/tmp/{{ browser_name }}.tar.xz"
mode: "0644"
become: true
- name: Extract browser tarball
ansible.builtin.unarchive:
src: "/tmp/{{ browser_name }}.tar.xz"
dest: "/opt/{{ browser_name }}"
remote_src: true
extra_opts: [--strip-components=1]
become: true
- name: Create symlink to browser executable
ansible.builtin.file:
src: "/opt/{{ browser_name }}/{{ browser_executable }}"
dest: "/usr/local/bin/{{ browser_name }}"
state: link
become: true
- name: Create desktop file
ansible.builtin.copy:
content: |
[Desktop Entry]
Version=1.0
Name=Zen Browser
Exec=/usr/local/bin/{{ browser_name }} %u
Icon=/opt/zen/browser/chrome/icons/default/default128.png
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=/usr/local/bin/{{ browser_name }} %u
[Desktop Action new-private-window]
Name=Open a New Private Window
Exec=/usr/local/bin/{{ browser_name }} --private-window %u
[Desktop Action profilemanager]
Name=Open the Profile Manager
Exec=/usr/local/bin/{{ browser_name }} --ProfileManager %u
dest: "/usr/share/applications/zen.desktop"
mode: "0644"
become: true
- name: Update desktop database
ansible.builtin.command:
cmd: update-desktop-database /usr/share/applications
creates: /usr/share/applications/mimeinfo.cache
become: true
- name: Make desktop file executable
ansible.builtin.file:
dest: "/usr/share/applications/zen.desktop"
mode: "0755"
become: true
- name: Clean up downloaded tarball
ansible.builtin.file:
path: "/tmp/{{ browser_name }}.tar.xz"
state: absent
become: true