From 8f685d383330836caa95ab974279a318764d23a4 Mon Sep 17 00:00:00 2001 From: Ahmed Abdelhalim Date: Wed, 26 Nov 2025 18:11:08 +0100 Subject: Revert adding user.js config Since the configs were mainly to control UI pref (which is not usable with user.js, as it will always override manual customization) The rest of the features provided by user.js isn't necessary and are already covered by policies. So for now, I'm removing this user.js integration, maybe revisit it later if it's proven to be useful, ATM, it complicates and brittles the setup without providing any additional value. --- roles/firefox/defaults/main.yml | 28 +--------------------------- roles/firefox/meta/argument_specs.yml | 32 +------------------------------- roles/firefox/tasks/main.yml | 29 ----------------------------- roles/firefox/templates/user.js.j2 | 13 ------------- 4 files changed, 2 insertions(+), 100 deletions(-) delete mode 100644 roles/firefox/templates/user.js.j2 diff --git a/roles/firefox/defaults/main.yml b/roles/firefox/defaults/main.yml index 2d24c7dc..e6e142f8 100644 --- a/roles/firefox/defaults/main.yml +++ b/roles/firefox/defaults/main.yml @@ -2,36 +2,10 @@ # Check firefox policies documentation at: # https://mozilla.github.io/policy-templates/ # The policies override dictionary can be used to override the default policies. -# This is merged with the _firefox_policies_default dictionary, +# This is merged with the firefox_default_policies dictionary, # and converted into JSON format using a Jinja2 tojson filter. firefox_policies_override: {} firefox_extra_extensions: {} -firefox_user_prefs_override: {} - -# Default user preferences for Firefox. -firefox_default_user_prefs: - "browser.newtabpage.enabled": false - "browser.aboutConfig.showWarning": false - "browser.tabs.closeWindowWithLastTab": false - "privacy.trackingprotection.enabled": true - "privacy.trackingprotection.socialtracking.enabled": true - "privacy.donottrackheader.enabled": true - "dom.security.https_only_mode": true - "dom.security.https_only_mode_ever_enabled": true - "datareporting.healthreport.uploadEnabled": false - "datareporting.policy.dataSubmissionEnabled": false - "toolkit.telemetry.unified": false - "toolkit.telemetry.enabled": false - "toolkit.telemetry.server": "" - "toolkit.telemetry.archive.enabled": false - "toolkit.telemetry.newProfilePing.enabled": false - "toolkit.telemetry.shutdownPingSender.enabled": false - "toolkit.telemetry.updatePing.enabled": false - "toolkit.telemetry.bhrPing.enabled": false - "toolkit.telemetry.firstShutdownPing.enabled": false - "extensions.pocket.enabled": false - "sidebar.verticalTabs": true - "sidebar.verticalTabs.dragToPinPromo.dismissed": true # Default extensions to be installed in Firefox. firefox_default_extensions: diff --git a/roles/firefox/meta/argument_specs.yml b/roles/firefox/meta/argument_specs.yml index 13f9f61d..ef16d594 100644 --- a/roles/firefox/meta/argument_specs.yml +++ b/roles/firefox/meta/argument_specs.yml @@ -1,6 +1,6 @@ --- # NOTE: The defaults below are sensible role defaults and are not meant to be changed directly. -# Use the override variables (firefox_policies_override, firefox_extra_extensions, firefox_user_prefs_override) +# Use the override variables (firefox_policies_override, firefox_extra_extensions) # to customize behavior. # But also you can change these defaults directly. argument_specs: @@ -16,10 +16,6 @@ argument_specs: type: "dict" description: "Extra firefox extensions to install via policies (added to the default extensions)" default: {} - firefox_user_prefs_override: - type: "dict" - description: "Override role's default user pref (user.js preferences for Firefox profile)" - default: {} firefox_default_extensions: # Default extensions to be installed in Firefox via policies # - uBlock Origin @@ -140,29 +136,3 @@ argument_specs: FirfoxLabs: false UseSystemPrintDialog: true VisualSearchEnabled: true - firefox_default_user_prefs: - type: "dict" - description: "Default (sensible) user.js preference for Firefox" - default: - "browser.newtabpage.enabled": false - "browser.aboutConfig.showWarning": false - "browser.tabs.closeWindowWithLastTab": false - "privacy.trackingprotection.enabled": true - "privacy.trackingprotection.socialtracking.enabled": true - "privacy.donottrackheader.enabled": true - "dom.security.https_only_mode": true - "dom.security.https_only_mode_ever_enabled": true - "datareporting.healthreport.uploadEnabled": false - "datareporting.policy.dataSubmissionEnabled": false - "toolkit.telemetry.unified": false - "toolkit.telemetry.enabled": false - "toolkit.telemetry.server": "" - "toolkit.telemetry.archive.enabled": false - "toolkit.telemetry.newProfilePing.enabled": false - "toolkit.telemetry.shutdownPingSender.enabled": false - "toolkit.telemetry.updatePing.enabled": false - "toolkit.telemetry.bhrPing.enabled": false - "toolkit.telemetry.firstShutdownPing.enabled": false - "extensions.pocket.enabled": false - "sidebar.verticalTabs": true - "sidebar.verticalTabs.dragToPinPromo.dismissed": true diff --git a/roles/firefox/tasks/main.yml b/roles/firefox/tasks/main.yml index e354005f..a412df0c 100644 --- a/roles/firefox/tasks/main.yml +++ b/roles/firefox/tasks/main.yml @@ -8,35 +8,6 @@ name: "{{ firefox_package }}" state: "present" -- name: "Initialize Firefox default profile" - ansible.builtin.command: "timeout 3 firefox --headless" - failed_when: false - args: - creates: "{{ firefox_folder }}/profiles.ini" - changed_when: false - -- name: "Find default Firefox profile directory" - ansible.builtin.find: - paths: "{{ firefox_folder }}" - patterns: "*.default*" - file_type: "directory" - register: firefox_default_profile - -- name: "Set Firefox profile path" - ansible.builtin.set_fact: - firefox_profile_path: "{{ firefox_default_profile.files[0].path }}" - when: firefox_default_profile.matched > 0 - -- name: "Set firefox_user_prefs fact" - ansible.builtin.set_fact: - firefox_user_prefs: "{{ firefox_default_user_prefs | combine(firefox_user_prefs_override) }}" - -- name: "Deploy user.js to Firefox profile" - ansible.builtin.template: - src: "user.js.j2" - dest: "{{ firefox_profile_path }}/user.js" - mode: "0644" - - name: "Install browserpass extension for Firefox" ansible.builtin.include_tasks: "install_browserpass.yml" when: firefox_install_browserpass | default(false) diff --git a/roles/firefox/templates/user.js.j2 b/roles/firefox/templates/user.js.j2 deleted file mode 100644 index 547ccf8f..00000000 --- a/roles/firefox/templates/user.js.j2 +++ /dev/null @@ -1,13 +0,0 @@ -// Firefox user.js - User preferences -// This file is automatically generated by Ansible -// Manual changes will be overwritten - -{% for pref, value in firefox_user_prefs.items() %} -{% if value is string %} -user_pref("{{ pref }}", "{{ value }}"); -{% elif value is boolean %} -user_pref("{{ pref }}", {{ value | lower }}); -{% else %} -user_pref("{{ pref }}", {{ value }}); -{% endif %} -{% endfor %} -- cgit v1.2.3