feat: add 1Password and Firefox installation tasks, remove MegaSync tasks
Some checks failed
Ansible Lint Check / check-ansible (push) Failing after 16s
Nix Format Check / check-format (push) Successful in 56s
Python Lint Check / check-python (push) Failing after 13s

This commit is contained in:
Menno van Leeuwen 2025-03-18 13:10:26 +01:00
parent f2d7c111e8
commit 85e22281b1
Signed by: vleeuwenmenno
SSH Key Fingerprint: SHA256:OJFmjANpakwD3F2Rsws4GLtbdz1TJ5tkQF0RZmF0TRE
9 changed files with 84 additions and 86 deletions

View File

@ -42,6 +42,8 @@
- python3-venv
- pylint
- black
# Package manager wrapper
- nala
state: present
become: true

View File

@ -18,13 +18,15 @@
mode: "0755"
become: true
- name: Add Zen browser to 1Password custom allowed browsers
- name: Add Browsers to 1Password custom allowed browsers
ansible.builtin.copy:
content: |
ZenBrowser
zen-browser
app.zen_browser.zen
zen
Firefox
firefox
dest: /etc/1password/custom_allowed_browsers
owner: root
group: root

View File

@ -0,0 +1,60 @@
---
- name: Install Firefox via APT (Not Snap)
block:
- name: Remove Firefox Snap if installed
community.general.snap:
name: firefox
state: absent
become: true
- name: Create APT keyring directory if it doesn't exist
ansible.builtin.file:
path: /etc/apt/keyrings
state: directory
mode: '0755'
become: true
- name: Import Mozilla APT repo signing key
ansible.builtin.get_url:
url: https://packages.mozilla.org/apt/repo-signing-key.gpg
dest: /etc/apt/keyrings/packages.mozilla.org.asc
mode: '0644'
become: true
- name: Add Mozilla APT repository
ansible.builtin.lineinfile:
path: /etc/apt/sources.list.d/mozilla.list
line: "deb [signed-by=/etc/apt/keyrings/packages.mozilla.org.asc] https://packages.mozilla.org/apt mozilla main"
create: true
become: true
- name: Set Firefox package priority
ansible.builtin.copy:
dest: /etc/apt/preferences.d/mozilla
content: |
Package: *
Pin: origin packages.mozilla.org
Pin-Priority: 1000
Package: firefox*
Pin: release o=Ubuntu
Pin-Priority: -1
mode: '0644'
become: true
- name: Update apt cache
ansible.builtin.apt:
update_cache: true
become: true
- name: Remove Ubuntu's Firefox transition package
ansible.builtin.apt:
name: firefox
state: absent
become: true
- name: Install Firefox from Mozilla's repository
ansible.builtin.apt:
name: firefox
state: present
become: true

View File

@ -1,65 +0,0 @@
---
- name: Check if MegaSync is already installed
ansible.builtin.command:
cmd: "megasync --version"
register: megasync_check
changed_when: false
failed_when: false
check_mode: false
- name: Create temporary directory for downloads
ansible.builtin.tempfile:
state: directory
suffix: megasync
register: temp_download_dir
changed_when: false
when: megasync_check.rc != 0
- name: Download MegaSync DEB package
ansible.builtin.get_url:
url: https://mega.nz/linux/repo/xUbuntu_24.10/amd64/megasync-xUbuntu_24.10_amd64.deb
dest: "{{ temp_download_dir.path }}/megasync.deb"
mode: "0644"
when: megasync_check.rc != 0
- name: Download MegaSync Nautilus DEB Package
ansible.builtin.get_url:
url: https://mega.nz/linux/repo/xUbuntu_24.04/amd64/nautilus-megasync-xUbuntu_24.04_amd64.deb
dest: "{{ temp_download_dir.path }}/megasync-nautilus-extras.deb"
mode: "0644"
when: megasync_check.rc != 0
- name: Downlod MegaSync Nemo DEB Package
ansible.builtin.get_url:
url: https://mega.nz/linux/repo/xUbuntu_24.04/amd64/nemo-megasync-xUbuntu_24.04_amd64.deb
dest: "{{ temp_download_dir.path }}/megasync-nemo-extras.deb"
mode: "0644"
when: megasync_check.rc != 0
- name: Install MegaSync package
ansible.builtin.apt:
deb: "{{ temp_download_dir.path }}/megasync.deb"
state: present
become: true
when: megasync_check.rc != 0
- name: Install MegaSync Nautilus package
ansible.builtin.apt:
deb: "{{ temp_download_dir.path }}/mega-nautilus-extras.deb"
state: present
become: true
when: megasync_check.rc != 0
- name: Install MegaSync Nemo package
ansible.builtin.apt:
deb: "{{ temp_download_dir.path }}/mega-nemo-extras.deb"
state: present
become: true
when: megasync_check.rc != 0
- name: Clean up temporary files
ansible.builtin.file:
path: "{{ temp_download_dir.path }}"
state: absent
changed_when: false
when: megasync_check.rc != 0 and temp_download_dir.path is defined

View File

@ -40,11 +40,9 @@
- name: Define desired Snaps
ansible.builtin.set_fact:
desired_snaps:
- name: firefox
- name: telegram-desktop
classic: false
- name: bitwarden
classic: false
- name: bw
- name: whatsapp-desktop-client
classic: false
- name: Install desired Snap packages

View File

@ -7,6 +7,10 @@
- name: Include GNOME Extensions tasks
ansible.builtin.import_tasks: tasks/workstations/gnome-extensions.yml
- name: Include Firefox APT installation tasks
ansible.builtin.import_tasks: tasks/workstations/firefox-apt.yml
when: ansible_pkg_mgr == 'apt'
- name: Include flatpaks tasks
ansible.builtin.import_tasks: tasks/workstations/flatpaks.yml
@ -23,8 +27,8 @@
browser_name: "zen"
browser_executable: "zen"
- name: Include 1Password Zen Browser tasks
ansible.builtin.import_tasks: tasks/workstations/1password-zen-browser.yml
- name: Include 1Password Browsers tasks
ansible.builtin.import_tasks: tasks/workstations/1password-browsers.yml
- name: Include Firefox PWA tasks
ansible.builtin.import_tasks: tasks/workstations/firefoxpwa.yml
@ -32,9 +36,6 @@
- name: Include Ulauncher tasks
ansible.builtin.import_tasks: tasks/workstations/ulauncher.yml
- name: Include MegaSync tasks
ansible.builtin.import_tasks: tasks/workstations/megasync.yml
- name: Ensure workstation common packages are installed
ansible.builtin.package:
name:

View File

@ -7,11 +7,11 @@
]
},
"locked": {
"lastModified": 1739757849,
"narHash": "sha256-Gs076ot1YuAAsYVcyidLKUMIc4ooOaRGO0PqTY7sBzA=",
"lastModified": 1742234739,
"narHash": "sha256-zFL6zsf/5OztR1NSNQF33dvS1fL/BzVUjabZq4qrtY4=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "9d3d080aec2a35e05a15cedd281c2384767c2cfe",
"rev": "f6af7280a3390e65c2ad8fd059cdc303426cbd59",
"type": "github"
},
"original": {

View File

@ -56,13 +56,13 @@
# add more by listing them with `dconf read /org/gnome/shell/favorite-apps | sed "s/,//g; s/'/\"/g"` then copy pasting the output here
"org/gnome/shell" = {
favorite-apps = [
"zen.desktop"
"firefox.desktop"
"org.gnome.Nautilus.desktop"
"com.spotify.Client.desktop"
"FFPWA-01JPMJ4K0S7JZDT2469CKNY49H.desktop"
"telegram-desktop_telegram-desktop.desktop"
"whatsapp-desktop-client_whatsapp-desktop-client.desktop"
"vesktop.desktop"
"FFPWA-01JN0Y8Z6KR644ZG4CV0QAYPRF.desktop"
"FFPWA-01JN0YCBNR29VRW8GN5YBZSQ7W.desktop"
"FFPWA-01JN13AEFTM76WVC6TSBYC5AXN.desktop"
"code.desktop"
"org.gnome.Ptyxis.desktop"
];

View File

@ -5,10 +5,10 @@
enable = true;
defaultApplications = {
# default browser
"application/xhtml+xml" = [ "zen.desktop" ];
"text/html" = [ "zen.desktop" ];
"x-scheme-handler/http" = [ "zen.desktop" ];
"x-scheme-handler/https" = [ "zen.desktop" ];
"application/xhtml+xml" = [ "firefox.desktop" ];
"text/html" = [ "firefox.desktop" ];
"x-scheme-handler/http" = [ "firefox.desktop" ];
"x-scheme-handler/https" = [ "firefox.desktop" ];
# Geary
"x-scheme-handler/mailto" = [ "org.gnome.Geary.desktop" ];