fix:
```
playwright-webkit> setting RPATH to: /nix/store/q5vyb8dni0fv6a9fh65ifm4galvi51k2-playwright-webkit/minibrowser-wpe/lib:/nix/store/sv8pf8cqmgrgh7jl2n9ww3knslxnfz33-libevent-2.1.13/lib:/nix/store/f9yy4q7dkvpw3i508nf510h9s240f3pf-libopus-1.6.1/lib:/nix/store/85v143gw8jcqjg04gxb38c4han2z7myb-freetype-2.14.3/lib:/nix/store/hrxf1fxrp7qwxrlv5k4aqxlwlam952aa-fontconfig-2.18.3-lib/lib:/nix/store/ixb298xx205dwm4n39kc93njl898wa62-libepoxy-1.5.10/lib:/nix/store/9wh3vnl7plpk052nczlzyh3v7zb3jhkw-libwebp-1.6.0/lib:/nix/store/pzky0fzxs3iy95lf14ffybxg973nv933-expat-2.8.4/lib:/nix/store/0a1k64ih9k5ribbjs07bgmzhb43djnr0-harfbuzz-13.2.1/lib:/nix/store/nms9avlwlsidnq1yiqs53ls4h9v7bmys-libjpeg-turbo-3.1.4.1/lib:/nix/store/pdm9fz4pc70pwhgzj88wilg3pzsyk7q1-libpng-apng-1.6.58/lib:/nix/store/lw86vj9kfwgvlivg3p8qg2nibpmhmsl9-zlib-1.3.2/lib:/nix/store/7mf69bavdjazjvbhflj0s40d2a6mk5wb-glib-2.88.3/lib:/nix/store/kvg90amxwq1gpm6yhhwykiiq9n97dnrl-libsoup-3.6.6/lib:/nix/store/yxnhmna7iyk0gb83q90315dcv1ixcnxd-gstreamer-1.28.6/lib:/nix/store/604gsr59rj7dzd0nrhp143rpvf7gyiaz-gcc-15.3.0-lib/lib:/nix/store/wkiqjb44n5k0fwhmc523dvflspd47q3b-gcc-15.3.0-libgcc/lib
playwright-webkit> auto-patchelf: 1 dependencies could not be satisfied
playwright-webkit> error: auto-patchelf could not satisfy dependency libmanette-0.2.so.0 wanted by /nix/store/q5vyb8dni0fv6a9fh65ifm4galvi51k2-playwright-webkit/minibrowser-wpe/lib/libWPEWebKit-2.0.so.1.12.0
playwright-webkit> auto-patchelf failed to find all the required dependencies.
playwright-webkit> Add the missing dependencies to --libs or use `--ignore-missing="foo.so.1 bar.so etc.so"`.
```
https://github.com/microsoft/playwright/releases/tag/v1.63.0
Use Chrome for Testing downloads for ARM64 Linux Chromium and its
headless shell. Refresh their hashes and install Chromium under the
directory expected by the updated driver.
Assisted-by: OpenAI Codex (GPT-6)
https://github.com/microsoft/playwright/releases/tag/v1.62.1
Remove platform-specific browser revision overrides because nixpkgs packages only the top-level revisions.
Refresh the Darwin browser hashes and represent them with system keys so the updater handles every platform uniformly and fails if a replacement is missed.
Update the browser-download test for Playwright’s bundled registry export.
Assisted-by: Codex (GPT-5)
- Replace libxml2 symlink workaround with libxml2_13 which provides
the libxml2.so.2 soname the bundled WebKit expects
- Set Mesa as EGL vendor fallback when no system EGL is configured,
enabling WPE WebKit's headless rendering
- Patch out ldconfig-based dlopen check for WebKit which doesn't
work under Nix (libraries are provided via rpath)
this creates some eval errors that will be fixed in the next commit
done with the following script:
```fish
\#!/usr/bin/env fish
set packagesjson (nix eval --impure --json --expr '
let
lib = import ./lib;
in
import pkgs/servers/x11/xorg/default.nix (lib.mapAttrs (
name: _:
if name == "lib" then
lib
else if name == "config" then
{ allowAliases = false; }
else
name
) (__functionArgs (import pkgs/servers/x11/xorg/default.nix))) { }
' | jq)
set one (grep '^ [A-Za-z0-9_-]*$' pkgs/servers/x11/xorg/default.nix | string trim | string replace -r '$' Z | sort | string sub -e -1)
set two (grep '^ [A-Za-z0-9_-]* = [A-Za-z0-9_-]*;$' pkgs/servers/x11/xorg/default.nix | cut -d= -f1 | string trim | string replace -r '$' Z | sort | string sub -e -1)
for arg in $one $two
set oname $arg
set nname (echo $packagesjson | jq -r .$oname)
if test $nname = null
echo (set_color red)warn:(set_color normal) unknown package xorg.$oname >&2
continue
end
echo $oname "->" $nname
# replace basic xorg.$name references
for file in (rg -F "xorg.$oname" --files-with-matches pkgs)
# special cases
sd -F "$oname = xorg.$oname;" "$nname = $nname;" $file
# replace
sd -F "xorg.$oname" "$nname" $file
# fixup function arguments
# prevent duplicate function args
if grep -E " ($oname|$nname),\$" $file >/dev/null
continue
end
if grep 'xorg\..' $file >/dev/null # case1: there is more so we can't just remove the function arg
if grep ' xorg,$' $file >/dev/null
sd ' xorg,$' " xorg,
$nname," $file
else if grep ' xorg ? .*,$' $file >/dev/null
sd 'xorg( ? .*),$' "xorg\$1,
$nname," $file
else
sd -F 'xorg,' "$nname,
xorg," $file
end
else # case there is no more xorg..* so we can just replace the function arg
sd 'xorg(| ? .*),.*$' "$nname," $file
end
end
end
nix fmt
```
> auto-patchelf: 2 dependencies could not be satisfied
> error: auto-patchelf could not satisfy dependency libxml2.so.2 wanted by /nix/store/bz0scnv4x47f9piavdj5l6ww60i60mww-playwright-webkit/minibrowser-wpe/lib/libWPEWebKit-2.0.so.1.6.0
> error: auto-patchelf could not satisfy dependency libxml2.so.2 wanted by /nix/store/bz0scnv4x47f9piavdj5l6ww60i60mww-playwright-webkit/minibrowser-wpe/bin/.MiniBrowser-wrapped
> auto-patchelf failed to find all the required dependencies.
> Add the missing dependencies to --libs or use `--ignore-missing="foo.so.1 bar.so etc.so"`.
> For full logs, run:
> nix log
> /nix/store/fqnh2989sp0csn98k8kivrkiq6b4l556-playwright-webkit.drv
Signed-off-by: Brian McGillion <bmg.avoin@gmail.com>
This reverts commit 65a333600d.
This wasn't tested for correctness with something like fodwatch [0],
and should not have been (self-)merged so quickly, especially without
further review.
It also resulted in the breakage of at least one package [1] (and that's
the one we know of and was caught).
A few packages that were updated in between this commit and this revert
were not reverted back to using `rev`, but other than that, this is a
1:1 revert.
[0]: https://codeberg.org/raphaelr/fodwatch
[1]: https://github.com/NixOS/nixpkgs/pull/396904 / 758551e458