Skip to content

Add LibreWolf as supported browser - #13309

Open
TheBananaPancake wants to merge 1 commit into
omacom:quattrofrom
TheBananaPancake:add-librewolf-browser
Open

TheBananaPancake wants to merge 1 commit into
omacom:quattrofrom
TheBananaPancake:add-librewolf-browser

Conversation

@TheBananaPancake

Copy link
Copy Markdown

Signed-off-by: TheBananaPancake 256630335+TheBananaPancake@users.noreply.github.com

@llstrk

llstrk commented Sep 27, 2026

Copy link
Copy Markdown

Automated AI review

Community review: Independent automated community review, unaffiliated with the Omarchy team, intended to help prepare PRs for their review.

Verified: the LibreWolf plumbing is correct at 8c347d8. The package name, launcher, .desktop ID and policy directory match what the librewolf package ships. The menu rows and the new U+E90F glyph are consistent, and the tests pass. One issue remains: the policy step replaces the policies.json that the librewolf package itself installs. There is also a font code-point collision with two other open PRs.

The policy step overwrites LibreWolf's own policies.json

omarchy-install-browser librewolf calls browser_policy_setup_firefox_distribution /usr/lib/librewolf/distribution, which ends in install ... -T default/firefox/policies.json <dir>/policies.json. For Firefox no package ships that file: Arch's firefox package ships only distribution/distribution.ini. The Arch [extra] librewolf package (file list for 156.0.1_1-1; the LibreWolf and Arch packaging source at 155.0.1_1-1, the version on the Omarchy stable mirror, installs the same file) also ships usr/lib/librewolf/distribution/policies.json, which comes from LibreWolf's own build. LibreWolf uses Firefox's policy loader unmodified, and that loader (156.0.1 source) reads a single file: /etc/librewolf/policies/policies.json if it exists, otherwise distribution/policies.json. It never merges the two.

A sandboxed run of the PR's helper against LibreWolf's upstream policies.json at tag 156.0.1-1, the file its build installs, with sudo stubbed in a private directory tree, gave:

distribution/policies.json   before (package)                 after (this PR)
top-level policies           22 (AIControls, DisableTelemetry,   1 (Preferences)
                             ExtensionSettings, HttpsOnlyMode,
                             WebsiteFilter, ...)
uBlock Origin install        present (ExtensionSettings)       absent

Impact:

  • Between omarchy install browser librewolf and the next librewolf upgrade, LibreWolf runs without the enterprise policies it ships. That includes the uBlock Origin auto-install and the HTTPS-only mode the policy turns on by default. This is inferred from the policy file and the loader source. LibreWolf itself was not launched. Preferences set in librewolf.cfg are not affected.
  • The Arch PKGBUILD has no backup= entry, and Omarchy's pacman config has no NoUpgrade. pacman therefore extracts the packaged file over the on-disk copy on the next librewolf upgrade, so Omarchy's five preferences are silently lost. This is read from pacman's add.c, not run.

Suggested change (optional approaches):

  • Pass a LibreWolf-specific policy file, containing LibreWolf's policies plus Omarchy's Preferences, as the helper's second argument. Open PR Point Zen's policy at the directory the package uses #12148 takes this route for Zen with default/firefox/zen-policies.json. This keeps LibreWolf's policies at first run, but it would still be reverted on upgrade.
  • Or install that merged file at /etc/librewolf/policies/policies.json. The librewolf package does not ship that path, and the loader prefers it, so it survives upgrades. It replaces the packaged file rather than merging with it, so it has to carry LibreWolf's policies too, and later LibreWolf policy changes stay hidden until Omarchy updates its copy.
  • Or skip the policy file for LibreWolf, keep the Wayland step, and say so in the manual.

The new assertion at test/shell.d/default-apps-test.sh:258 checks the overwrite command itself, so it passes either way.

U+E90F is already claimed by two other open PRs

Open #12137 assigns U+E90F to Brave (and U+E910 to Zen). Open #12251 assigns U+E90F to Phantombot. All three regenerate the binary default/fonts/omarchy/omarchy.ttf.

Impact: Git cannot merge the binary font, so whichever PR lands later cannot simply rebase. #12251's e900-e90f range check would still pass with the wrong glyph at U+E90F, so a bad resolution would not be caught by the tests.

Suggested change: coordinate the code point with #12137 and #12251. Whichever PR lands later moves to a free code point and rebuilds the font, menu rows, README line and fc-query range check together.

Several other open PRs have ordinary text conflicts with this one in the browser scripts, browser-policy.sh, the menu, the manual or the tests: #12132, #9430, #12754, #12148, #8913 and #7444.

Documentation:

  • manual/17-ai.md:29 still says "Firefox and Zen do not support this extension". LibreWolf belongs in that sentence too.
  • manual/23-browsers.md:33 says Omarchy "installs a policies file for sensible defaults" for all three browsers. For LibreWolf it currently replaces the browser's own policies, as described above.

Verified:

  • librewolf is in Arch [extra] (packaged by Arch since August 2026) and on the Omarchy stable mirror. The AUR librewolf and librewolf-bin packages no longer exist, so omarchy-pkg-add (plain pacman -S) is the right helper.
  • The package installs /usr/bin/librewolf and /usr/share/applications/librewolf.desktop, and uses /usr/lib/librewolf/distribution as its distribution directory. These match the PR's command, desktop_id and policy directory.
  • setup_firefox_wayland (MOZ_ENABLE_WAYLAND=1) applies to LibreWolf exactly as it does to Firefox, and omarchy-launch-browser picks --private-window for it (read from source). The existing Hyprland rule already lists librewolf.
  • Font: U+E90F is the only code point added, and all existing glyphs are unchanged (outlines, advances, name/OS/2/GSUB tables). The new glyph fills the same 64..960 box as square marks such as LM Studio and Claude, and matches simple-icons librewolf.svg when rasterised (IoU 0.997).
  • Tests: default-apps-test.sh, menu-test.sh, browser-policy-dir-test.sh and menu-guards-test.sh pass at head. The updated default-apps-test.sh and menu-test.sh fail against the base code, so they exercise the new behaviour. The full test/shell suite has the same 10 failing files at head and at base, none caused by this PR.

Review information

Test scope: Source review of the PR at 8c347d8 against quattro at 7b336b1, plus Arch and LibreWolf packaging and settings source, Firefox 156.0.1 policy-loader source, and pacman source. The repository tests, font comparison and policy-helper run executed in an isolated sandbox with sudo and package managers stubbed. LibreWolf was not installed or launched, and no package upgrade was run. First-run and upgrade effects are inferred from source. The PR conflict list comes from git merge-tree against the listed PR heads at review time.

AI process: Opus 5.5 Medium coordination and synthesis, Opus 5.5 Xhigh technical review and final fact check, GPT 6 Sol Xhigh search for related issues, Opus 5.5 Medium editorial check.

Opt out: To stop receiving these reviews, reply to this comment saying so.

@omarchybot omarchybot added the enhancement New feature or request label Sep 27, 2026
@llstrk

llstrk commented Sep 29, 2026

Copy link
Copy Markdown

Automated AI review

Community review: Independent automated community review, unaffiliated with the Omarchy team, intended to help prepare PRs for their review.

Outcome: At f2d4b9f (earlier review), LibreWolf never reads the new /etc/librewolf/policies.json.

Earlier findings:

  • Packaged policies.json overwrite: resolved.
  • U+E90F collision: still present, five open PRs, not two.
  • Conflicts, manual notes: still present.

The new LibreWolf policy file is unused

LibreWolf 156.0.1's loader reads /etc/librewolf/policies/policies.json if present, else the packaged distribution/policies.json, never both. Impact: Omarchy's five preferences never apply. Moving it to policies/ alone hides LibreWolf's 22 policies (uBlock Origin, HTTPS-Only) for good.

Suggested change: put the prefs as pref() lines in /etc/librewolf/defaults/pref/omarchy.js, or copy LibreWolf's policies plus Omarchy's Preferences to /etc/librewolf/policies/policies.json (the copy must track LibreWolf's changes).

Reproducer (fails at f2d4b9f)

Reproducer: LibreWolf never reads the policies.json this PR installs

Reviewed head: f2d4b9f10bb12ca5b058a737aa512d8137b3ecf9 (#13309).

At this head omarchy-install-browser librewolf writes Omarchy's policy file to /etc/librewolf/policies.json. LibreWolf uses Firefox's enterprise policy loader unchanged. On Linux that loader reads /etc/<app name>/policies/policies.json if that file exists, and otherwise the policies.json in the install's distribution/ directory. It reads only one of them. For LibreWolf these are /etc/librewolf/policies/policies.json and /usr/lib/librewolf/distribution/policies.json (shipped by the librewolf package). A top-level /etc/librewolf/policies.json is not on that list.

Source (Firefox 156.0.1, the base of LibreWolf 156.0.1-1, the current Arch [extra] package; identical in 155.0.1):

  • toolkit/components/enterprisepolicies/EnterprisePoliciesParent.sys.mjs:659-688 (_getLocalConfigurationFile: SysConfD + policies/policies.json if it exists, else XREAppDist/policies.json), and :168-186 (on Linux the JSON file is the only policy source).
  • xpcom/io/SpecialSystemDirectory.cpp:161-193 (SysConfD is /etc/ plus the lower-cased application name). LibreWolf's branding sets MOZ_APP_BASENAME=LibreWolf (themes/browser/branding/librewolf/configure.sh:9 at tag 156.0.1-1), and none of LibreWolf's patches touch these files.

Test (PR's test style)

Save as test/shell.d/librewolf-policy-path-test.sh in a checkout of the PR head and run bash test/shell.d/librewolf-policy-path-test.sh from the repository root, unprivileged. It runs the real installer with sudo moved into a temporary root and omarchy-pkg-add stubbed. It uses a small stand-in for the package's own policies.json.

#!/bin/bash

# LibreWolf uses Firefox's enterprise policy loader unchanged. On Linux that
# loader reads /etc/<app name>/policies/policies.json when the file exists and
# otherwise the policies.json in the install's distribution directory, never
# both (JSONPoliciesProvider._getLocalConfigurationFile). For LibreWolf the
# first path is /etc/librewolf/policies/policies.json and the second is the
# /usr/lib/librewolf/distribution/policies.json its package ships. Default
# preferences are also read from /etc/librewolf/defaults/pref/*.js.
#
# This runs omarchy-install-browser librewolf with sudo moved into a temporary
# root, then checks that Omarchy's preferences reach a file LibreWolf reads and
# that LibreWolf still reads the policies its package ships.

set -euo pipefail

source "$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)/base-test.sh"

(( EUID != 0 )) || fail "run this test unprivileged; it must not write the real /etc"

test_tmp=$(mktemp -d)
trap 'rm -rf "$test_tmp"' EXIT

fake_root=$test_tmp/root
mock_bin=$test_tmp/bin
mkdir -p "$mock_bin" "$test_tmp/home" "$fake_root/usr/lib/librewolf/distribution"

# Stand-in for the policies.json the librewolf package ships.
printf '%s\n' '{"policies":{"DisableTelemetry":true,"ExtensionSettings":{"uBlock0@raymondhill.net":{"installation_mode":"force_installed"}}}}' \
  >"$fake_root/usr/lib/librewolf/distribution/policies.json"

# sudo runs the command unprivileged, with system paths moved under the fake root.
cat >"$mock_bin/sudo" <<'SH'
#!/bin/bash
args=()
skip=0
for arg in "$@"; do
  if (( skip )); then
    skip=0
    continue
  fi
  case $arg in
  -o|-g) skip=1 ;;
  /etc/*|/usr/lib/*|/opt/*) args+=("$FAKE_ROOT$arg") ;;
  *) args+=("$arg") ;;
  esac
done
exec "${args[@]}"
SH
printf '#!/bin/bash\nexit 0\n' >"$mock_bin/omarchy-pkg-add"
chmod +x "$mock_bin"/*

FAKE_ROOT=$fake_root HOME=$test_tmp/home OMARCHY_PATH=$ROOT PATH="$mock_bin:$ROOT/bin:$PATH" \
  "$ROOT/bin/omarchy-install-browser" librewolf >/dev/null

policies=$fake_root/etc/librewolf/policies/policies.json
[[ -f $policies ]] || policies=$fake_root/usr/lib/librewolf/distribution/policies.json
written=$(cd "$fake_root" && { find etc -type f 2>/dev/null || true; } | sort | tr '\n' ' ')

prefs_read=false
if grep -q 'widget.wayland.fractional-scale.enabled' "$policies"; then
  prefs_read=true
fi
for pref_file in "$fake_root"/etc/librewolf/defaults/pref/*.js; do
  if [[ -f $pref_file ]] && grep -q 'widget.wayland.fractional-scale.enabled' "$pref_file"; then
    prefs_read=true
  fi
done

$prefs_read ||
  fail "LibreWolf reads Omarchy's preferences" "LibreWolf reads ${policies#"$fake_root"}; Omarchy wrote: $written"
grep -q 'uBlock0@raymondhill.net' "$policies" ||
  fail "LibreWolf keeps the policies its package ships" "LibreWolf reads ${policies#"$fake_root"}; Omarchy wrote: $written"
pass "LibreWolf reads Omarchy's preferences and keeps its own policies"

Actual output at f2d4b9f (exit 1)

LibreWolf reads /usr/lib/librewolf/distribution/policies.json; Omarchy wrote: etc/librewolf/policies.json 
not ok - LibreWolf reads Omarchy's preferences

Controls (same test, disposable copies of the head)

A. Only moving the file into policies/ (stock Omarchy file). LibreWolf would then read Omarchy's file instead of its own, so its shipped policies (uBlock Origin install, HTTPS-Only and the rest) are dropped:

--- a/bin/omarchy-install-browser
+++ b/bin/omarchy-install-browser
@@ -87,7 +87,7 @@
   echo "Installing LibreWolf..."
   omarchy-pkg-add librewolf || exit 1
 
-  browser_policy_setup_firefox_distribution /etc/librewolf
+  browser_policy_setup_firefox_distribution /etc/librewolf/policies
   setup_firefox_wayland
   announce_browser_installed "LibreWolf"
   ;;
LibreWolf reads /etc/librewolf/policies/policies.json; Omarchy wrote: etc/librewolf/policies/policies.json 
not ok - LibreWolf keeps the policies its package ships

B. A LibreWolf-specific file in policies/: LibreWolf 156.0.1-1's own policies.json (22 policies) plus Omarchy's Preferences block, passed as the helper's second argument:

--- a/bin/omarchy-install-browser
+++ b/bin/omarchy-install-browser
@@ -87,7 +87,7 @@
   echo "Installing LibreWolf..."
   omarchy-pkg-add librewolf || exit 1
 
-  browser_policy_setup_firefox_distribution /etc/librewolf
+  browser_policy_setup_firefox_distribution /etc/librewolf/policies "$OMARCHY_PATH/default/firefox/librewolf-policies.json"
   setup_firefox_wayland
   announce_browser_installed "LibreWolf"
   ;;
ok - LibreWolf reads Omarchy's preferences and keeps its own policies

C. Omarchy's five preferences as a system default-preferences file, /etc/librewolf/defaults/pref/omarchy.js, which Firefox loads from SysConfD/defaults/pref/*.js after the application's own defaults (modules/libpref/Preferences.cpp:6215-6230). LibreWolf's shipped policies are left alone:

--- a/bin/omarchy-install-browser
+++ b/bin/omarchy-install-browser
@@ -87,7 +87,10 @@
   echo "Installing LibreWolf..."
   omarchy-pkg-add librewolf || exit 1
 
-  browser_policy_setup_firefox_distribution /etc/librewolf
+  browser_policy_setup_parent /etc/librewolf
+  browser_policy_setup_parent /etc/librewolf/defaults
+  browser_policy_setup_parent /etc/librewolf/defaults/pref
+  as_root install -m 644 -o root -g root -T "$OMARCHY_PATH/default/firefox/librewolf-omarchy.js" /etc/librewolf/defaults/pref/omarchy.js
   setup_firefox_wayland
   announce_browser_installed "LibreWolf"
   ;;

default/firefox/librewolf-omarchy.js in that copy, generated from default/firefox/policies.json:

pref("apz.overscroll.enabled", true);
pref("media.ffmpeg.vaapi.enabled", true);
pref("media.hardware-video-decoding.force-enabled", true);
pref("widget.disable-swipe-tracker", false);
pref("widget.wayland.fractional-scale.enabled", true);
ok - LibreWolf reads Omarchy's preferences and keeps its own policies

The test checks files against the loader's lookup rules taken from the source above. LibreWolf itself was not installed or launched, so B and C are verified against those rules, not in a running browser. The PR's existing default-apps-test.sh passes at this head, because its LibreWolf assertions compare the logged sudo command lines with /etc/librewolf rather than checking where LibreWolf reads.

Details

Loader source (Firefox 156.0.1): EnterprisePoliciesParent.sys.mjs:659-688 picks SysConfD/policies/policies.json if present, otherwise XREAppDist/policies.json; on Linux that JSON file is the only policy source (:168-186). SpecialSystemDirectory.cpp:161-193 makes SysConfD /etc/ plus the lower-cased app name, and LibreWolf's branding sets MOZ_APP_BASENAME=LibreWolf. Preferences.cpp:6215-6230 loads SysConfD/defaults/pref/*.js as system default prefs. None of LibreWolf's 156.0.1-1 patches touch these files.

Optional notes:

  • default-apps-test.sh:254-259 compares the logged sudo command lines, so it passes at this head although LibreWolf reads none of the written file. The reproducer above checks the file against the loader's lookup instead.
  • migrations/1787515927.sh installs the stock Firefox file into any listed directory that exists without a trusted root-owned policies.json. If LibreWolf's policies/ directory were in BROWSER_POLICY_FIREFOX_DIRS, a machine that has not run the migration yet and already has that directory without such a file would get the stock file there, hiding LibreWolf's own policies. Keeping LibreWolf out of that list avoids this (read from source, not run).

Verified:

  • default-apps-test.sh, menu-test.sh, browser-policy-dir-test.sh and menu-guards-test.sh pass at f2d4b9f and on quattro b421b1b merged with this PR.
  • Nothing on quattro since the merge base changes the LibreWolf flow.
Earlier findings still present

U+E90F: open #8124 (Devin), #11342 (Cua), #11367 (MiniMax Code), #12137 (Brave) and #12251 (Phantombot) all assign U+E90F and rebuild omarchy.ttf, which Git cannot merge. Suggested change: coordinate one code point per PR and rebuild the font, menu rows, README line and range check together.

Reproducer: U+E90F is claimed by five other open PRs

Checked on 2026-09-29 against quattro at b421b1b4 and these open PR heads: #8124 19d17cfb, #11342 94e97055, #11367 e5fc68fd, #12137 0ab20f40, #12251 a1a287a6, #13309 f2d4b9f1.

git fetch origin quattro
for n in 8124 11342 11367 12137 12251 13309; do git fetch origin pull/$n/head:pr/$n; done
for n in 8124 11342 11367 12137 12251 13309; do
  printf '#%s: ' $n
  git show pr/$n:default/fonts/omarchy/README.md | grep -F -- '`U+E90F`' | cut -c1-60
done

Actual output:

#8124: - `U+E90F` — Devin, from the official mark published by Cogn
#11342: - `U+E90F` — Cua, the koala mark from <https://cua.ai>, take
#11367: - `U+E90F` — MiniMax Code, from `shell/plugins/agents/assets
#12137: - `U+E90F` — brave, from <https://cdn.simpleicons.org/brave>
#12251: - `U+E90F` — Phantombot, redrawn as a monochrome ghost silho
#13309: - `U+E90F` — LibreWolf, from <https://simpleicons.org/icons/

Each of them also rebuilds the binary default/fonts/omarchy/omarchy.ttf. After merging #13309 into quattro (clean), merging each of the other five on top reports a conflict in the font (git merge-tree --write-tree --name-only <quattro+13309> pr/<n>):

#8124: default/fonts/omarchy/omarchy.ttf
#11342: default/fonts/omarchy/omarchy.ttf
#11367: default/fonts/omarchy/omarchy.ttf
#12137: default/fonts/omarchy/omarchy.ttf
#12251: default/fonts/omarchy/omarchy.ttf

quattro itself assigns U+E900 to U+E90E, so U+E90F is the first free code point for all six PRs.

Text conflicts: #12132, #9430, #12754, #12148, #8913 and #7444 each conflict with quattro plus this PR in the browser scripts, browser-policy.sh, the menu, the manual or the tests.

Documentation: manual/17-ai.md:29 still says "Firefox and Zen do not support this extension", while this PR's manual/23-browsers.md:29 names LibreWolf too. manual/23-browsers.md:33 says Omarchy installs a policies file for sensible defaults, which LibreWolf does not read (above).


Review information

Test scope: Source and sandbox tests at f2d4b9f; LibreWolf was not launched.

AI process: Opus 5.5 Medium coordination and synthesis, Opus 5.5 Xhigh technical review and final fact check, GPT 6 Sol Xhigh search for related issues, Opus 5.5 Medium editorial check.

Opt out: To stop receiving these reviews, reply to this comment saying so.

@TheBananaPancake

Copy link
Copy Markdown
Author

Used the merged-policies option: /etc/librewolf/defaults/pref/ is never read, so I checked the packaged build's EnterprisePoliciesParent.sys.mjs; /etc/librewolf is only consulted for policies/policies.json, and default pref files load from the app dir only. default/librewolf/policies.json is the packaged file plus Omarchy's Preferences, installed to /etc/librewolf/policies/policies.json, with a note to re-copy it when the package changes it. Confirmed in about:policies that both sets apply.

Glyph moved to U+E911 since E90F and E910 are both claimed by open PRs (#12137).

@greptile-apps

greptile-apps Bot commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor

RetriggerConfidence Score: 5/5

[Medium impact] The PR appears safe to merge based on this follow-up review; the outstanding policy-cleanup concern is non-blocking.

Findings

  1. P2 Removal leaves installed policy ▶

Summary

The PR adds LibreWolf to browser commands and menus, and changes its policy setup to merge Omarchy preferences with LibreWolf’s packaged policies at install time.

  • Adds coverage for the policy merge and browser installation flow.
  • Updates the browser manual and menu icon.

Reviews (2) · Last reviewed commit: "Add LibreWolf as supported browser" · Reviewed by Greptile

Comment thread install/helpers/browser-policy.sh
Comment thread default/librewolf/policies.json Outdated
librewolf)
echo "Removing LibreWolf..."
set_fallback_default_browser librewolf.desktop
omarchy-pkg-drop librewolf

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Removal leaves installed policy

The installer writes an Omarchy-managed file under /etc/librewolf/policies, but this branch only removes the package. If the package transaction does not remove that file, removing LibreWolf leaves the system policy behind. Clean up the file created by the installer during removal.

Knowledge Base Used: Packages, apps, and optional services

@jandrusk

jandrusk commented Oct 8, 2026

Copy link
Copy Markdown

Thanks for tracking down the policy loader. One maintenance concern: default/librewolf/policies.json is a frozen copy of the policy file the package ships, so every LibreWolf policy update silently drifts, and the comment in the file is the only reminder. You could merge at install time instead, so Omarchy only owns its own Preferences:

sudo mkdir -p /etc/librewolf/policies
jq -s '.[0] * .[1]' \
  /usr/lib/librewolf/distribution/policies.json \
  "$OMARCHY_PATH/default/librewolf/policies.json" |  # only {"policies": {"Preferences": {...}}}
  sudo tee /etc/librewolf/policies/policies.json >/dev/null

Whether LibreWolf joins the supported-browser list at all is a maintainer call.

Signed-off-by: TheBananaPancake <256630335+TheBananaPancake@users.noreply.github.com>
@TheBananaPancake

Copy link
Copy Markdown
Author

Thanks for spotting that.
Pushed as 680fbdc: default/librewolf/policies.json is now only Omarchy's Preferences, and omarchy-install-browser librewolf merges it over the packaged file at install time with the same jq -s '.[0] * .[1]' deep merge (Omarchy's overlay wins on conflicts, though it only sets Status: default prefs anyway).

The implementation differs from your snippet in two ways, both to reuse the existing policy helpers:

  • The write goes through as_root install -m 644 -o root -g root -T instead of sudo tee, so /etc/librewolf/policies gets the same root-owned, symlink-planting-safe treatment the other browser policy dirs get (browser-policy-dir-test.sh covers this).
  • If the packaged file is missing, the install fails rather than writing a merged file that silently drops LibreWolf's own policies.

Totally fine if the PR doesn't get merged; it's just more convenience for LibreWolf users like me :)

@jandrusk

Copy link
Copy Markdown

Thanks, merging over the packaged file at install time means LibreWolf's own policy updates carry through now. Going through as_root install to match the other browser policy dirs makes sense. LGTM.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants