www/mozilla-firefox: Install a policy configuration file
mostly taken from https://justthebrowser.com/firefox/, Disables:
- Firefox Studies
- Checking if firefox is the default browser
- Sponsored stuff on the home page
- GenAI features
- PerplexityAI from the default search engines
in addition, frob GoToIntranetSiteForSingleWordEntryInAddressBar, which
forces firefox to ask your dns first if you enter a single word in the
address bar, useful to access local sites on your network instead of
sending your internal dns entries to $searchengine.
cf https://mozilla.github.io/policy-templates/#gotointranetsiteforsinglewordentryinaddressbar
many knobs to frob, but those seem to be a decent baseline to fight
against enshittification.
Make SHA aarch64 assembly build with gcc.
gcc is extremely fussy about register naming and insists on q and s naming
for the ARM CE SHA instructions, even though they're referring to the same
register (while LLVM just figures it out). Work around this by mapping
registers to their required variant at usage and defining a handful of
mappings between v registers and alternate names/views.
This is still somewhat ugly, but seems to be one of the cleaner options
that will allow portable to enable SHA assembly on platforms that use gcc.
ok kenjiro@ tb@
update to py3-ruamel.yaml-0.19.1
upstream dropped the required dep on ruamel.yaml.clib in favour of a
zig-compiled extension instead, but they still prefer .clib if available
(at least for now)