Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] Enhance Debian 11 support especially with WebKit #3167

Closed
mxschmitt opened this issue Jul 25, 2020 · 15 comments · Fixed by #15673
Closed

[Feature] Enhance Debian 11 support especially with WebKit #3167

mxschmitt opened this issue Jul 25, 2020 · 15 comments · Fixed by #15673

Comments

@mxschmitt
Copy link
Member

mxschmitt commented Jul 25, 2020

Users often use the official Node.js or Python images as Docker base images which are based on Debian (latest - 10) or only officially available with Debian based builds. GitHub Codespaces with Python (since official Python docker image) uses Debian as well. Currently we neither provide an official Dockerfile which can be used for Debian 10 nor it does work fully there since users have to compile libjpeg themselves and libicu60 is not available in their apt repos either.

If they use e.g. the Ubuntu deb package of libicu60 or compile it themselves from source, the headful (xvfb-run) WebKit variant works but the headless variant crashes.

Related issues:

Building WebKit on Debian 10:

apt update
apt install -y git zip
apt-get build-dep -y cockpit
git clone https://github.com/microsoft/playwright
git config --global user.email "[email protected]"
git config --global user.name "Max Schmitt"

# Prepare Playwright and install build deps
cd playwright
./browser_patches/prepare_checkout.sh webkit
yes | ./browser_patches/webkit/checkout/Tools/gtk/install-dependencies
cd ..

# Build gpgme
wget https://www.gnupg.org/ftp/gcrypt/gpgme/gpgme-1.14.0.tar.bz2
tar -xjvf gpgme-1.14.0.tar.bz2 
cd gpgme-1.14.0/
apt install -y libassuan-dev
./configure
make
make install
cd ..

# Build flatpak
wget https://github.com/flatpak/flatpak/releases/download/1.4.4/flatpak-1.4.4.tar.xz
tar -xvf flatpak-1.4.4.tar.xz
cd flatpak-1.4.4/
apt install -y libcap-dev libarchive-dev libfuse-dev libostree-dev libappstream-glib-dev
./configure
make
make install
cd ..

# Build WebKit
cd playwright
export JHBUILD_RUN_AS_ROOT=
./browser_patches/webkit/build.sh

curl -sL https://deb.nodesource.com/setup_12.x | bash -
apt-get install -y nodejs
./browser_patches/webkit/archive.sh $(pwd)/webkit.zip

When the built binaries will be used from the separate build, then it works fine. Used these requirements:

    libwoff1 \
    libopus0 \
    libwebp6 \
    libwebpdemux2 \
    libenchant1c2a \
    libgudev-1.0-0 \
    libsecret-1-0 \
    libhyphen0 \
    libgdk-pixbuf2.0-0 \
    libegl1 \
    libxslt1.1 \
    libgles2 \
    libnotify4 \
    libharfbuzz-icu0 \
    libvpx5 \
    libevent-2.1-6 \
    # gstreamer and plugins to support video playback in WebKit
    libgstreamer-gl1.0-0 \
    libgstreamer-plugins-bad1.0-0 \
    gstreamer1.0-plugins-good \

Next steps

  • Investigate why the page crashes in headless mode
  • Setup azure bots for building it on Debian.
  • Docs change that node:*-buster needs to be used because Node default images use Debian 9. Not sure how complicated it is to make them Debian 9 compatible too.
@aslushnikov aslushnikov self-assigned this Jul 27, 2020
@chasestarr
Copy link

Thanks for looking into this folks. I have a project that specified playwright with a caret ^ range specifier. The recent 1.2.0 major broke on the node buster image as described above. Pinning at 1.1 for now. If I can be of assistance I'm happy to help test/investigate.

@jaylinski
Copy link

I'm currently also trying to get WebKit running in a Debian container.

I managed to install all required dependencies, but as mentioned above, the page crashes:

pw:browser => browserType.launch started +0ms
  pw:browser <launching> /home/jenkins/.cache/ms-playwright/webkit-1322/pw_run.sh --inspector-pipe --headless --no-startup-window [] +281ms
  pw:browser <launched> pid=7937 [] +5ms
  pw:protocol SEND ► {"id":1,"method":"Playwright.enable"} [] +0ms
  pw:protocol ◀ RECV {"result":{},"id":1} [] +134ms
  pw:browser <= browserType.launch succeeded +142ms
  pw:protocol SEND ► {"id":2,"method":"Playwright.createContext"} [] +4ms
  pw:protocol ◀ RECV {"result":{"browserContextId":"8000000000000002"},"id":2} [] +8ms
  pw:protocol SEND ► {"id":3,"method":"Playwright.setDownloadBehavior","params":{"behavior":"deny","downloadPath":"/tmp/playwright_downloads-kJSgkn","browserContextId":"8000000000000002"}} [] +4ms
  pw:protocol ◀ RECV {"result":{},"id":3} [] +3ms
  pw:protocol SEND ► {"id":4,"method":"Playwright.createPage","params":{"browserContextId":"8000000000000002"}} [] +3ms
  pw:protocol ◀ RECV {"method":"Playwright.pageProxyCreated","params":{"browserContextId":"8000000000000002","pageProxyId":"7"}} [] +12ms
  pw:protocol ◀ RECV {"method":"Target.targetCreated","params":{"targetInfo":{"targetId":"page-8","type":"page","isPaused":true}},"browserContextId":"8000000000000002","pageProxyId":"7"} [] +18ms
  pw:protocol SEND ► {"id":5,"method":"Dialog.enable","pageProxyId":"7"} [] +12ms
  pw:protocol SEND ► {"id":6,"method":"Emulation.setActiveAndFocused","params":{"active":true},"pageProxyId":"7"} [] +4ms
  pw:protocol SEND ► {"id":7,"method":"Emulation.setDeviceMetricsOverride","params":{"width":411,"height":731,"fixedLayout":false,"deviceScaleFactor":1},"pageProxyId":"7"} [] +6ms
  pw:protocol SEND ► {"id":9,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":8,\"method\":\"Page.setScreenSizeOverride\",\"params\":{\"width\":411,\"height\":731}}","targetId":"page-8"},"pageProxyId":"7"} [] +6ms
  pw:protocol SEND ► {"id":10,"method":"Emulation.setAuthCredentials","params":{"username":"","password":""},"pageProxyId":"7"} [] +6ms
  pw:protocol SEND ► {"id":12,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":11,\"method\":\"Page.enable\"}","targetId":"page-8"},"pageProxyId":"7"} [] +4ms
  pw:protocol SEND ► {"id":14,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":13,\"method\":\"Page.getResourceTree\"}","targetId":"page-8"},"pageProxyId":"7"} [] +4ms
  pw:protocol ◀ RECV {"result":{"pageProxyId":"7"},"id":4} [] +3ms
  pw:protocol ◀ RECV {"result":{},"id":5,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +4ms
  pw:protocol ◀ RECV {"result":{},"id":6,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +5ms
  pw:protocol ◀ RECV {"result":{},"id":7,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +3ms
  pw:protocol ◀ RECV {"result":{},"id":9,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +5ms
  pw:protocol ◀ RECV {"result":{},"id":10,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +3ms
  pw:protocol ◀ RECV {"result":{},"id":12,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +7ms
  pw:protocol ◀ RECV {"result":{},"id":14,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +0ms
  pw:protocol ◀ RECV {"method":"Target.dispatchMessageFromTarget","params":{"targetId":"page-8","message":"{\"result\":{},\"id\":8}"},"browserContextId":"8000000000000002","pageProxyId":"7"} [] +239ms
  pw:protocol ◀ RECV {"method":"Target.dispatchMessageFromTarget","params":{"targetId":"page-8","message":"{\"method\":\"Page.defaultAppearanceDidChange\",\"params\":{\"appearance\":\"Light\"}}"},"browserContextId":"8000000000000002","pageProxyId":"7"} [] +1ms
  pw:protocol ◀ RECV {"method":"Target.dispatchMessageFromTarget","params":{"targetId":"page-8","message":"{\"result\":{},\"id\":11}"},"browserContextId":"8000000000000002","pageProxyId":"7"} [] +0ms
  pw:protocol ◀ RECV {"method":"Target.dispatchMessageFromTarget","params":{"targetId":"page-8","message":"{\"result\":{\"frameTree\":{\"frame\":{\"id\":\"9.3\",\"loaderId\":\"1\",\"url\":\"about:blank\",\"mimeType\":\"text/html\",\"securityOrigin\":\"://\"},\"resources\":[]}},\"id\":13}"},"browserContextId":"8000000000000002","pageProxyId":"7"} [] +2ms
  pw:protocol SEND ► {"id":16,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":15,\"method\":\"Runtime.enable\"}","targetId":"page-8"},"pageProxyId":"7"} [] +4ms
  pw:protocol SEND ► {"id":18,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":17,\"method\":\"Page.createUserWorld\",\"params\":{\"name\":\"__playwright_utility_world__\"}}","targetId":"page-8"},"pageProxyId":"7"} [] +0ms
  pw:protocol SEND ► {"id":20,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":19,\"method\":\"Console.enable\"}","targetId":"page-8"},"pageProxyId":"7"} [] +3ms
  pw:protocol SEND ► {"id":22,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":21,\"method\":\"Network.enable\"}","targetId":"page-8"},"pageProxyId":"7"} [] +1ms
  pw:protocol SEND ► {"id":24,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":23,\"method\":\"Worker.enable\"}","targetId":"page-8"},"pageProxyId":"7"} [] +2ms
  pw:protocol SEND ► {"id":26,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":25,\"method\":\"Page.overrideUserAgent\",\"params\":{\"value\":\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Safari/605.1.15\"}}","targetId":"page-8"},"pageProxyId":"7"} [] +1ms
  pw:protocol SEND ► {"id":28,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":27,\"method\":\"Page.setBootstrapScript\",\"params\":{\"source\":\"\"}}","targetId":"page-8"},"pageProxyId":"7"} [] +1ms
  pw:protocol SEND ► {"id":30,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":29,\"method\":\"Page.setScreenSizeOverride\",\"params\":{\"width\":411,\"height\":731}}","targetId":"page-8"},"pageProxyId":"7"} [] +8ms
  pw:protocol SEND ► {"id":32,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":31,\"method\":\"Page.setEmulatedMedia\",\"params\":{\"media\":\"\"}}","targetId":"page-8"},"pageProxyId":"7"} [] +3ms
  pw:protocol SEND ► {"id":34,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":33,\"method\":\"Page.setForcedAppearance\",\"params\":{\"appearance\":\"Light\"}}","targetId":"page-8"},"pageProxyId":"7"} [] +1ms
  pw:protocol SEND ► {"id":36,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":35,\"method\":\"Network.setExtraHTTPHeaders\",\"params\":{\"headers\":{}}}","targetId":"page-8"},"pageProxyId":"7"} [] +2ms
  pw:protocol SEND ► {"id":38,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":37,\"method\":\"Page.setTouchEmulationEnabled\",\"params\":{\"enabled\":false}}","targetId":"page-8"},"pageProxyId":"7"} [] +1ms
  pw:protocol ◀ RECV {"result":{},"id":16,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +2ms
  pw:protocol ◀ RECV {"result":{},"id":18,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +1ms
  pw:protocol ◀ RECV {"result":{},"id":20,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +1ms
  pw:protocol ◀ RECV {"result":{},"id":22,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +1ms
  pw:protocol ◀ RECV {"result":{},"id":24,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +1ms
  pw:protocol ◀ RECV {"result":{},"id":26,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +0ms
  pw:protocol ◀ RECV {"result":{},"id":28,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +1ms
  pw:protocol ◀ RECV {"result":{},"id":30,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +2ms
  pw:protocol ◀ RECV {"result":{},"id":32,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +1ms
  pw:protocol ◀ RECV {"result":{},"id":34,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +1ms
  pw:protocol ◀ RECV {"result":{},"id":36,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +4ms
  pw:protocol ◀ RECV {"result":{},"id":38,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +0ms
  pw:protocol ◀ RECV {"method":"Target.targetDestroyed","params":{"targetId":"page-8","crashed":true},"browserContextId":"8000000000000002","pageProxyId":"7"} [] +12ms
  pw:protocol SEND ► {"id":39,"method":"Target.resume","params":{"targetId":"page-8"},"pageProxyId":"7"} [] +4ms
(node:7764) UnhandledPromiseRejectionWarning: Protocol error (Runtime.enable): The page has been closed.Error
    at /home/jenkins/workspace/node_modules/playwright/lib/webkit/wkConnection.js:103:63
    at new Promise (<anonymous>)
    at WKSession.send (/home/jenkins/workspace/node_modules/playwright/lib/webkit/wkConnection.js:102:16)
    at WKPage._initializeSessionMayThrow (/home/jenkins/workspace/node_modules/playwright/lib/webkit/wkPage.js:122:21)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
    at async WKPage._initializeSession (/home/jenkins/workspace/node_modules/playwright/lib/webkit/wkPage.js:102:9)
    at async Promise.all (index 1)
    at async WKPage._onTargetCreated (/home/jenkins/workspace/node_modules/playwright/lib/webkit/wkPage.js:241:17)

Are there any WebKit logs to further debug this?

@mxschmitt
Copy link
Member Author

@jaylinski unfortunately until now there is no way to run headless WebKit on Debian. As a workaround you can use xvfb-run and run headful WebKit which would work.

mxschmitt referenced this issue in evulse/heroku-playwright-buildpack Sep 1, 2020
@dgozman dgozman changed the title [BUG] Enhance Debian 10 support especially with WebKit [Feature] Enhance Debian 10 support especially with WebKit Nov 24, 2020
@yswtrue
Copy link

yswtrue commented Dec 1, 2020

I'm currently also trying to get WebKit running in a Debian container.

I managed to install all required dependencies, but as mentioned above, the page crashes:

pw:browser => browserType.launch started +0ms
  pw:browser <launching> /home/jenkins/.cache/ms-playwright/webkit-1322/pw_run.sh --inspector-pipe --headless --no-startup-window [] +281ms
  pw:browser <launched> pid=7937 [] +5ms
  pw:protocol SEND ► {"id":1,"method":"Playwright.enable"} [] +0ms
  pw:protocol ◀ RECV {"result":{},"id":1} [] +134ms
  pw:browser <= browserType.launch succeeded +142ms
  pw:protocol SEND ► {"id":2,"method":"Playwright.createContext"} [] +4ms
  pw:protocol ◀ RECV {"result":{"browserContextId":"8000000000000002"},"id":2} [] +8ms
  pw:protocol SEND ► {"id":3,"method":"Playwright.setDownloadBehavior","params":{"behavior":"deny","downloadPath":"/tmp/playwright_downloads-kJSgkn","browserContextId":"8000000000000002"}} [] +4ms
  pw:protocol ◀ RECV {"result":{},"id":3} [] +3ms
  pw:protocol SEND ► {"id":4,"method":"Playwright.createPage","params":{"browserContextId":"8000000000000002"}} [] +3ms
  pw:protocol ◀ RECV {"method":"Playwright.pageProxyCreated","params":{"browserContextId":"8000000000000002","pageProxyId":"7"}} [] +12ms
  pw:protocol ◀ RECV {"method":"Target.targetCreated","params":{"targetInfo":{"targetId":"page-8","type":"page","isPaused":true}},"browserContextId":"8000000000000002","pageProxyId":"7"} [] +18ms
  pw:protocol SEND ► {"id":5,"method":"Dialog.enable","pageProxyId":"7"} [] +12ms
  pw:protocol SEND ► {"id":6,"method":"Emulation.setActiveAndFocused","params":{"active":true},"pageProxyId":"7"} [] +4ms
  pw:protocol SEND ► {"id":7,"method":"Emulation.setDeviceMetricsOverride","params":{"width":411,"height":731,"fixedLayout":false,"deviceScaleFactor":1},"pageProxyId":"7"} [] +6ms
  pw:protocol SEND ► {"id":9,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":8,\"method\":\"Page.setScreenSizeOverride\",\"params\":{\"width\":411,\"height\":731}}","targetId":"page-8"},"pageProxyId":"7"} [] +6ms
  pw:protocol SEND ► {"id":10,"method":"Emulation.setAuthCredentials","params":{"username":"","password":""},"pageProxyId":"7"} [] +6ms
  pw:protocol SEND ► {"id":12,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":11,\"method\":\"Page.enable\"}","targetId":"page-8"},"pageProxyId":"7"} [] +4ms
  pw:protocol SEND ► {"id":14,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":13,\"method\":\"Page.getResourceTree\"}","targetId":"page-8"},"pageProxyId":"7"} [] +4ms
  pw:protocol ◀ RECV {"result":{"pageProxyId":"7"},"id":4} [] +3ms
  pw:protocol ◀ RECV {"result":{},"id":5,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +4ms
  pw:protocol ◀ RECV {"result":{},"id":6,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +5ms
  pw:protocol ◀ RECV {"result":{},"id":7,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +3ms
  pw:protocol ◀ RECV {"result":{},"id":9,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +5ms
  pw:protocol ◀ RECV {"result":{},"id":10,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +3ms
  pw:protocol ◀ RECV {"result":{},"id":12,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +7ms
  pw:protocol ◀ RECV {"result":{},"id":14,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +0ms
  pw:protocol ◀ RECV {"method":"Target.dispatchMessageFromTarget","params":{"targetId":"page-8","message":"{\"result\":{},\"id\":8}"},"browserContextId":"8000000000000002","pageProxyId":"7"} [] +239ms
  pw:protocol ◀ RECV {"method":"Target.dispatchMessageFromTarget","params":{"targetId":"page-8","message":"{\"method\":\"Page.defaultAppearanceDidChange\",\"params\":{\"appearance\":\"Light\"}}"},"browserContextId":"8000000000000002","pageProxyId":"7"} [] +1ms
  pw:protocol ◀ RECV {"method":"Target.dispatchMessageFromTarget","params":{"targetId":"page-8","message":"{\"result\":{},\"id\":11}"},"browserContextId":"8000000000000002","pageProxyId":"7"} [] +0ms
  pw:protocol ◀ RECV {"method":"Target.dispatchMessageFromTarget","params":{"targetId":"page-8","message":"{\"result\":{\"frameTree\":{\"frame\":{\"id\":\"9.3\",\"loaderId\":\"1\",\"url\":\"about:blank\",\"mimeType\":\"text/html\",\"securityOrigin\":\"://\"},\"resources\":[]}},\"id\":13}"},"browserContextId":"8000000000000002","pageProxyId":"7"} [] +2ms
  pw:protocol SEND ► {"id":16,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":15,\"method\":\"Runtime.enable\"}","targetId":"page-8"},"pageProxyId":"7"} [] +4ms
  pw:protocol SEND ► {"id":18,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":17,\"method\":\"Page.createUserWorld\",\"params\":{\"name\":\"__playwright_utility_world__\"}}","targetId":"page-8"},"pageProxyId":"7"} [] +0ms
  pw:protocol SEND ► {"id":20,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":19,\"method\":\"Console.enable\"}","targetId":"page-8"},"pageProxyId":"7"} [] +3ms
  pw:protocol SEND ► {"id":22,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":21,\"method\":\"Network.enable\"}","targetId":"page-8"},"pageProxyId":"7"} [] +1ms
  pw:protocol SEND ► {"id":24,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":23,\"method\":\"Worker.enable\"}","targetId":"page-8"},"pageProxyId":"7"} [] +2ms
  pw:protocol SEND ► {"id":26,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":25,\"method\":\"Page.overrideUserAgent\",\"params\":{\"value\":\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Safari/605.1.15\"}}","targetId":"page-8"},"pageProxyId":"7"} [] +1ms
  pw:protocol SEND ► {"id":28,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":27,\"method\":\"Page.setBootstrapScript\",\"params\":{\"source\":\"\"}}","targetId":"page-8"},"pageProxyId":"7"} [] +1ms
  pw:protocol SEND ► {"id":30,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":29,\"method\":\"Page.setScreenSizeOverride\",\"params\":{\"width\":411,\"height\":731}}","targetId":"page-8"},"pageProxyId":"7"} [] +8ms
  pw:protocol SEND ► {"id":32,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":31,\"method\":\"Page.setEmulatedMedia\",\"params\":{\"media\":\"\"}}","targetId":"page-8"},"pageProxyId":"7"} [] +3ms
  pw:protocol SEND ► {"id":34,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":33,\"method\":\"Page.setForcedAppearance\",\"params\":{\"appearance\":\"Light\"}}","targetId":"page-8"},"pageProxyId":"7"} [] +1ms
  pw:protocol SEND ► {"id":36,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":35,\"method\":\"Network.setExtraHTTPHeaders\",\"params\":{\"headers\":{}}}","targetId":"page-8"},"pageProxyId":"7"} [] +2ms
  pw:protocol SEND ► {"id":38,"method":"Target.sendMessageToTarget","params":{"message":"{\"id\":37,\"method\":\"Page.setTouchEmulationEnabled\",\"params\":{\"enabled\":false}}","targetId":"page-8"},"pageProxyId":"7"} [] +1ms
  pw:protocol ◀ RECV {"result":{},"id":16,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +2ms
  pw:protocol ◀ RECV {"result":{},"id":18,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +1ms
  pw:protocol ◀ RECV {"result":{},"id":20,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +1ms
  pw:protocol ◀ RECV {"result":{},"id":22,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +1ms
  pw:protocol ◀ RECV {"result":{},"id":24,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +1ms
  pw:protocol ◀ RECV {"result":{},"id":26,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +0ms
  pw:protocol ◀ RECV {"result":{},"id":28,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +1ms
  pw:protocol ◀ RECV {"result":{},"id":30,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +2ms
  pw:protocol ◀ RECV {"result":{},"id":32,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +1ms
  pw:protocol ◀ RECV {"result":{},"id":34,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +1ms
  pw:protocol ◀ RECV {"result":{},"id":36,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +4ms
  pw:protocol ◀ RECV {"result":{},"id":38,"browserContextId":"8000000000000002","pageProxyId":"7"} [] +0ms
  pw:protocol ◀ RECV {"method":"Target.targetDestroyed","params":{"targetId":"page-8","crashed":true},"browserContextId":"8000000000000002","pageProxyId":"7"} [] +12ms
  pw:protocol SEND ► {"id":39,"method":"Target.resume","params":{"targetId":"page-8"},"pageProxyId":"7"} [] +4ms
(node:7764) UnhandledPromiseRejectionWarning: Protocol error (Runtime.enable): The page has been closed.Error
    at /home/jenkins/workspace/node_modules/playwright/lib/webkit/wkConnection.js:103:63
    at new Promise (<anonymous>)
    at WKSession.send (/home/jenkins/workspace/node_modules/playwright/lib/webkit/wkConnection.js:102:16)
    at WKPage._initializeSessionMayThrow (/home/jenkins/workspace/node_modules/playwright/lib/webkit/wkPage.js:122:21)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
    at async WKPage._initializeSession (/home/jenkins/workspace/node_modules/playwright/lib/webkit/wkPage.js:102:9)
    at async Promise.all (index 1)
    at async WKPage._onTargetCreated (/home/jenkins/workspace/node_modules/playwright/lib/webkit/wkPage.js:241:17)

Are there any WebKit logs to further debug this?

same error

@gkushang
Copy link

gkushang commented Jun 4, 2021

@mxschmitt @aslushnikov we are facing a similar issue in our Jenkins CI with the below error. This is blocking our tests to run on WebKit and Firefox browses. Do you have any workaround?

23:38:06     [1] Error | Error: browserType.launch: Host system is missing dependencies!
23:38:06   Install missing packages with:
23:38:06       sudo apt-get install gstreamer1.0-libav
23:38:06   Missing libraries we didn't find packages for:
23:38:06       libnotify.so.4
23:38:06       libvpx.so.6
23:38:06       libopus.so.0
23:38:06       libicui18n.so.66
23:38:06       libicuuc.so.66
23:38:06       libwoff2dec.so.1.0.2
23:38:06       libharfbuzz-icu.so.0
23:38:06       libgcrypt.so.20
23:38:06       libgstapp-1.0.so.0
23:38:06       libgstbase-1.0.so.0
23:38:06       libgstreamer-1.0.so.0
23:38:06       libgstpbutils-1.0.so.0
23:38:06       libgstaudio-1.0.so.0
23:38:06       libgsttag-1.0.so.0
23:38:06       libgstvideo-1.0.so.0
23:38:06       libgstgl-1.0.so.0
23:38:06       libgstcodecparsers-1.0.so.0
23:38:06       libgstfft-1.0.so.0
23:38:06       libjpeg.so.8
23:38:06       libpng16.so.16
23:38:06       libwebpdemux.so.2
23:38:06       libwebp.so.6
23:38:06       libenchant.so.1
23:38:06       libsecret-1.so.0
23:38:06       libhyphen.so.0
23:38:06       libGLESv2.so.2

@AlexDaniel
Copy link

Woah. I'm a little bit confused. In many years it's the first time being in this situation, when the installation instructions are missing and I don't see any alternative. As a developer using Debian, what exactly am I supposed to do regarding this issue? I should compile libjpeg and libicu60 myself and then only use headful runs, right?

@AlexDaniel
Copy link

AlexDaniel commented Feb 16, 2022

OK. Reporting back. I pulled libjpeg-turbo8 and libicu66 deb files from ubuntu and installed them in debian without any issue. I then ran npx playwright test (headless) and it seems to work. --headed option is working too. So far, so good. Though keep in mind that I'm on debian sid (unstable), so maybe that's why it was so easy. Your mileage may vary.

@tom-fletcher
Copy link

tom-fletcher commented Apr 5, 2022

Taking @AlexDaniel's report and automating it, I have the following working using 1.20.2 on a GitHub Codespaces image (running Debian 11 bullseye):

In .devcontainer/devcontainer.json add an onCreateCommand key:

{
	...
	"onCreateCommand": "./.devcontainer/on-create.sh",
	...
}

Create an on-create.sh bash script in the .devcontainer folder with the following:

#!/bin/bash
sudo apt-get update

packages=(
	"http://archive.ubuntu.com/ubuntu/pool/main/libj/libjpeg-turbo/libjpeg-turbo8_2.0.3-0ubuntu1_amd64.deb"
	"http://archive.ubuntu.com/ubuntu/pool/main/i/icu/libicu66_66.1-2ubuntu2_amd64.deb"
	"http://ftp.de.debian.org/debian/pool/main/e/enchant/libenchant1c2a_1.6.0-11.1+b1_amd64.deb"
)

for package in ${packages[@]}; do
	wget -O /tmp/$(basename $package) $package
	sudo apt-get install -fy /tmp/$(basename $package)
done

npx playwright install-deps

Ensure your on-create.sh script is executable:

chmod +x ./.devcontainer/on-create.sh

Notes

  • If you aren't using a Docker container, you can just create and run the bash script locally
  • Playwright installs a lot of dependencies, so be aware this will take some time to complete
  • I also had a dependency error for libenchant1c2a. Debian 11 has libenchant-2-2 available, but I needed to manually install this package too

@martadinata666
Copy link

martadinata666 commented May 1, 2022

So after 1.21.1 update, dist beside ubuntu will blocked completely. Is this something really needed by upstream move?

Gonna update the package list needed.
Missing list on debian 11

browserType.launch: 

Host system is missing dependencies to run browsers. 
Missing libraries:                                   
libgobject-2.0.so.0                              
libglib-2.0.so.0                                 
libnss3.so                                       
libnssutil3.so                                   
libsmime3.so                                     
libnspr4.so                                      
libatk-1.0.so.0                                  
libatk-bridge-2.0.so.0                           
libcups.so.2                                     
libgio-2.0.so.0                                  
libdrm.so.2                                      
libdbus-1.so.3                                   
libxcb.so.1                                      
libxkbcommon.so.0                                
libX11.so.6                                      
libXcomposite.so.1                               
libXdamage.so.1                                  
libXext.so.6                                     
libXfixes.so.3                                   
libXrandr.so.2 
libgbm.so.1                                     
libpango-1.0.so.0 
libcairo.so.2                                     
libasound.so.2                                    
libatspi.so.0       
apt install --no-install-recommends -y libatk1.0-0 libglib2.0-0 libnss3 libatk-bridge2.0-0 libcups2 libdrm2 libdbus-1-3 libxkbcommon0 libxcomposite1 libxdamage1 libxext6 libxfixes3 libxrandr2 libgbm1 libpango-1.0-0 libcairo2 libasound2 libatspi2.0-0

@aslushnikov
Copy link
Collaborator

aslushnikov commented May 2, 2022

So after 1.21.1 update, dist beside ubuntu will blocked completely. Is this something really needed by upstream move?

@martadinata666 this was done by accident in 1.21.0, but was reverted and should be working as before in 1.21.1. What's not working for you?

@martadinata666
Copy link

martadinata666 commented May 2, 2022

i can't use install-deps chromium, and i cant really tell about other browser type. it told me something like not supported Linux distribution

@sebinsua
Copy link

I ran run.sh from utils/linux-browser-dependencies against my current clients approved Docker container and it produced the following:

RUN_RESULT

Working on: Debian GNU/Linux 10 (buster)
Started at: May 20, 2022
Finding packages for 107 missing libraries...
  1/107: /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/bin/WebKitWebDriver: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/bin/WebKitWebDriver) => []
         ERROR: failed to resolve '/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/bin/WebKitWebDriver: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/bin/WebKitWebDriver)' required by webkit-1641
  2/107: /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/bin/WebKitWebDriver: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/bin/WebKitWebDriver) => []
         ERROR: failed to resolve '/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/bin/WebKitWebDriver: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/bin/WebKitWebDriver)' required by webkit-1641
  3/107: /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18.21.0: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18.21.0) => []
         ERROR: failed to resolve '/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18.21.0: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18.21.0)' required by webkit-1641
  4/107: /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18.21.0: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18.21.0) => []
         ERROR: failed to resolve '/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18.21.0: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18.21.0)' required by webkit-1641
  5/107: /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37.57.0: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18) => []
         ERROR: failed to resolve '/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37.57.0: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18)' required by webkit-1641
  6/107: /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37.57.0: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37.57.0) => []
         ERROR: failed to resolve '/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37.57.0: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37.57.0)' required by webkit-1641
  7/107: /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37.57.0: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18) => []
         ERROR: failed to resolve '/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37.57.0: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18)' required by webkit-1641
  8/107: /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37.57.0: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37.57.0) => []
         ERROR: failed to resolve '/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37.57.0: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37.57.0)' required by webkit-1641
  9/107: /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtkinjectedbundle.so: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18) => []
         ERROR: failed to resolve '/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtkinjectedbundle.so: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18)' required by webkit-1641
 10/107: /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtkinjectedbundle.so: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37) => []
         ERROR: failed to resolve '/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtkinjectedbundle.so: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37)' required by webkit-1641
 11/107: /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtkinjectedbundle.so: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18) => []
         ERROR: failed to resolve '/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtkinjectedbundle.so: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18)' required by webkit-1641
 12/107: /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtkinjectedbundle.so: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37) => []
         ERROR: failed to resolve '/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtkinjectedbundle.so: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37)' required by webkit-1641
 13/107: /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/bin/WPEWebDriver: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/bin/WPEWebDriver) => []
         ERROR: failed to resolve '/root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/bin/WPEWebDriver: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/bin/WPEWebDriver)' required by webkit-1641
 14/107: /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/bin/WPEWebDriver: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/bin/WPEWebDriver) => []
         ERROR: failed to resolve '/root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/bin/WPEWebDriver: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/bin/WPEWebDriver)' required by webkit-1641
 15/107: /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEInjectedBundle.so: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEWebKit-1.0.so.3) => []
         ERROR: failed to resolve '/root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEInjectedBundle.so: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEWebKit-1.0.so.3)' required by webkit-1641
 16/107: /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEInjectedBundle.so: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEWebKit-1.0.so.3) => []
         ERROR: failed to resolve '/root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEInjectedBundle.so: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEWebKit-1.0.so.3)' required by webkit-1641
 17/107: /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEWebKit-1.0.so.3.17.0: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEWebKit-1.0.so.3.17.0) => []
         ERROR: failed to resolve '/root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEWebKit-1.0.so.3.17.0: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEWebKit-1.0.so.3.17.0)' required by webkit-1641
 18/107: /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEWebKit-1.0.so.3.17.0: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEWebKit-1.0.so.3.17.0) => []
         ERROR: failed to resolve '/root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEWebKit-1.0.so.3.17.0: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEWebKit-1.0.so.3.17.0)' required by webkit-1641
 19/107: libEGL.so.1 => ["libegl1"]
 20/107: libGLESv2.so.2 => ["libgles2"]
 21/107: libGLX.so.0 => ["libglx0"]
 22/107: libOpenGL.so.0 => ["libopengl0"]
 23/107: libWPEBackend-fdo-1.0.so.1 => []
         ERROR: failed to resolve 'libWPEBackend-fdo-1.0.so.1' required by webkit-1641
 24/107: libWPEWebKit-1.0.so.3 => []
         ERROR: failed to resolve 'libWPEWebKit-1.0.so.3' required by webkit-1641
 25/107: libX11-xcb.so.1 => ["libx11-xcb1"]
 26/107: libX11.so.6 => ["libx11-6","nxagent"]
 27/107: libXcomposite.so.1 => ["libxcomposite1","libxcomposite1-dbg"]
 28/107: libXcursor.so.1 => ["libxcursor1"]
 29/107: libXdamage.so.1 => ["libxdamage1"]
 30/107: libXext.so.6 => ["libxext6","libxext6-dbg"]
 31/107: libXfixes.so.3 => ["libxfixes3"]
 32/107: libXi.so.6 => ["libxi6"]
 33/107: libXrandr.so.2 => ["libxrandr2"]
 34/107: libXrender.so.1 => ["libxrender1"]
 35/107: libXtst.so.6 => ["libxtst6"]
 36/107: libasound.so.2 => ["libasound2"]
 37/107: libatk-1.0.so.0 => ["libatk1.0-0"]
 38/107: libatk-bridge-2.0.so.0 => ["libatk-bridge2.0-0"]
 39/107: libatspi.so.0 => ["libatspi2.0-0"]
 40/107: libcairo-gobject.so.2 => ["libcairo-gobject2"]
 41/107: libcairo.so.2 => ["libcairo2"]
 42/107: libcups.so.2 => ["libcups2"]
 43/107: libdbus-1.so.3 => ["dbus-tests","libdbus-1-3"]
 44/107: libdbus-glib-1.so.2 => ["libdbus-glib-1-2"]
 45/107: libdrm.so.2 => ["libdrm2"]
 46/107: libenchant.so.1 => ["libenchant1c2a"]
 47/107: libepoxy.so.0 => ["libepoxy0"]
 48/107: libevdev.so.2 => ["libevdev2"]
 49/107: libexpat.so.1 => ["libexpat1"]
 50/107: libffi.so.7 => []
         ERROR: failed to resolve 'libffi.so.7' required by webkit-1641
 51/107: libfontconfig.so.1 => ["libfontconfig1"]
 52/107: libfreetype.so.6 => ["libfreetype6"]
 53/107: libgbm.so.1 => ["libgbm1"]
 54/107: libgdk-3.so.0 => ["libgtk-3-0"]
 55/107: libgdk_pixbuf-2.0.so.0 => ["libgdk-pixbuf2.0-0"]
 56/107: libgio-2.0.so.0 => ["libglib2.0-0"]
 57/107: libglib-2.0.so.0 => ["libglib2.0-0","libglib2.0-dev"]
 58/107: libgmodule-2.0.so.0 => ["libglib2.0-0"]
 59/107: libgobject-2.0.so.0 => ["libglib2.0-0","libglib2.0-dev"]
 60/107: libgstallocators-1.0.so.0 => ["libgstreamer-plugins-base1.0-0"]
 61/107: libgstapp-1.0.so.0 => ["libgstreamer-plugins-base1.0-0"]
 62/107: libgstaudio-1.0.so.0 => ["libgstreamer-plugins-base1.0-0"]
 63/107: libgstbase-1.0.so.0 => ["libgstreamer1.0-0"]
 64/107: libgstfft-1.0.so.0 => ["libgstreamer-plugins-base1.0-0"]
 65/107: libgstgl-1.0.so.0 => ["libgstreamer-gl1.0-0"]
 66/107: libgstpbutils-1.0.so.0 => ["libgstreamer-plugins-base1.0-0"]
 67/107: libgstreamer-1.0.so.0 => ["libgstreamer1.0-0"]
 68/107: libgsttag-1.0.so.0 => ["libgstreamer-plugins-base1.0-0"]
 69/107: libgstvideo-1.0.so.0 => ["libgstreamer-plugins-base1.0-0"]
 70/107: libgtk-3.so.0 => ["libgtk-3-0"]
 71/107: libgudev-1.0.so.0 => ["libgudev-1.0-0"]
 72/107: libharfbuzz-icu.so.0 => ["libharfbuzz-icu0"]
 73/107: libharfbuzz.so.0 => ["libharfbuzz0b"]
 74/107: libhyphen.so.0 => ["libhyphen0"]
 75/107: libicui18n.so.66 => []
         ERROR: failed to resolve 'libicui18n.so.66' required by webkit-1641
 76/107: libicuuc.so.66 => []
         ERROR: failed to resolve 'libicuuc.so.66' required by webkit-1641
 77/107: libjavascriptcoregtk-4.0.so.18 => ["libjavascriptcoregtk-4.0-18"]
 78/107: libjpeg.so.8 => []
         ERROR: failed to resolve 'libjpeg.so.8' required by webkit-1641
 79/107: liblcms2.so.2 => ["liblcms2-2"]
 80/107: libmanette-0.2.so.0 => ["libmanette-0.2-0"]
 81/107: libnotify.so.4 => ["libnotify4"]
 82/107: libnspr4.so => ["firefox-esr","libnspr4","thunderbird"]
 83/107: libnss3.so => ["firefox-esr","libnss3","thunderbird"]
 84/107: libnssutil3.so => ["firefox-esr","libnss3","thunderbird"]
 85/107: libopenjp2.so.7 => ["libopenjp2-7"]
 86/107: libopus.so.0 => ["libopus0"]
 87/107: libpango-1.0.so.0 => ["libpango-1.0-0"]
 88/107: libpangocairo-1.0.so.0 => ["libpangocairo-1.0-0"]
 89/107: libpng16.so.16 => ["libpng16-16"]
 90/107: libproxy.so.1 => ["libproxy1v5"]
 91/107: libsecret-1.so.0 => ["libsecret-1-0"]
 92/107: libsmime3.so => ["firefox-esr","libnss3","thunderbird"]
 93/107: libsoup-2.4.so.1 => ["libsoup2.4-1"]
 94/107: libsqlite3.so.0 => ["libsqlite3-0"]
 95/107: libwayland-client.so.0 => ["libwayland-client0"]
 96/107: libwayland-egl.so.1 => ["libwayland-egl1"]
 97/107: libwayland-server.so.0 => ["libwayland-server0"]
 98/107: libwebkit2gtk-4.0.so.37 => ["libwebkit2gtk-4.0-37"]
 99/107: libwebp.so.6 => ["libwebp6"]
100/107: libwebpdemux.so.2 => ["libwebpdemux2"]
101/107: libwoff2dec.so.1.0.2 => ["libwoff1"]
102/107: libwpe-1.0.so.1 => []
         ERROR: failed to resolve 'libwpe-1.0.so.1' required by webkit-1641
103/107: libxcb-shm.so.0 => ["libxcb-shm0"]
104/107: libxcb.so.1 => ["libxcb1"]
105/107: libxkbcommon.so.0 => ["libxkbcommon0"]
106/107: libxml2.so.2 => ["libxml2"]
107/107: libxslt.so.1 => ["libxslt1.1"]

Picking packages for 10 libraries that have multiple package candidates
   1/10: libX11.so.6 => libx11-6
         (note) packages are ["libx11-6","nxagent"]
   2/10: libXcomposite.so.1 => libxcomposite1
         (note) packages are ["libxcomposite1","libxcomposite1-dbg"]
   3/10: libXext.so.6 => libxext6
         (note) packages are ["libxext6","libxext6-dbg"]
   4/10: libdbus-1.so.3 => libdbus-1-3
         (note) packages are ["dbus-tests","libdbus-1-3"]
   5/10: libglib-2.0.so.0 => libglib2.0-0
         (note) packages are ["libglib2.0-0","libglib2.0-dev"]
   6/10: libgobject-2.0.so.0 => libglib2.0-0
         (note) packages are ["libglib2.0-0","libglib2.0-dev"]
   7/10: libnspr4.so => libnspr4
         (note) packages are ["firefox-esr","libnspr4","thunderbird"]
   8/10: libnss3.so => libnss3
         (note) packages are ["firefox-esr","libnss3","thunderbird"]
   9/10: libnssutil3.so => libnss3
         (note) packages are ["firefox-esr","libnss3","thunderbird"]
  10/10: libsmime3.so => libnss3
         (note) packages are ["firefox-esr","libnss3","thunderbird"]

----- Library to package name mapping -----
{
  "libasound.so.2": "libasound2",
  "libatk-1.0.so.0": "libatk1.0-0",
  "libatk-bridge-2.0.so.0": "libatk-bridge2.0-0",
  "libatspi.so.0": "libatspi2.0-0",
  "libcairo-gobject.so.2": "libcairo-gobject2",
  "libcairo.so.2": "libcairo2",
  "libcups.so.2": "libcups2",
  "libdbus-1.so.3": "libdbus-1-3",
  "libdbus-glib-1.so.2": "libdbus-glib-1-2",
  "libdrm.so.2": "libdrm2",
  "libEGL.so.1": "libegl1",
  "libenchant.so.1": "libenchant1c2a",
  "libepoxy.so.0": "libepoxy0",
  "libevdev.so.2": "libevdev2",
  "libexpat.so.1": "libexpat1",
  "libfontconfig.so.1": "libfontconfig1",
  "libfreetype.so.6": "libfreetype6",
  "libgbm.so.1": "libgbm1",
  "libgdk_pixbuf-2.0.so.0": "libgdk-pixbuf2.0-0",
  "libgdk-3.so.0": "libgtk-3-0",
  "libgio-2.0.so.0": "libglib2.0-0",
  "libGLESv2.so.2": "libgles2",
  "libglib-2.0.so.0": "libglib2.0-0",
  "libGLX.so.0": "libglx0",
  "libgmodule-2.0.so.0": "libglib2.0-0",
  "libgobject-2.0.so.0": "libglib2.0-0",
  "libgstallocators-1.0.so.0": "libgstreamer-plugins-base1.0-0",
  "libgstapp-1.0.so.0": "libgstreamer-plugins-base1.0-0",
  "libgstaudio-1.0.so.0": "libgstreamer-plugins-base1.0-0",
  "libgstbase-1.0.so.0": "libgstreamer1.0-0",
  "libgstfft-1.0.so.0": "libgstreamer-plugins-base1.0-0",
  "libgstgl-1.0.so.0": "libgstreamer-gl1.0-0",
  "libgstpbutils-1.0.so.0": "libgstreamer-plugins-base1.0-0",
  "libgstreamer-1.0.so.0": "libgstreamer1.0-0",
  "libgsttag-1.0.so.0": "libgstreamer-plugins-base1.0-0",
  "libgstvideo-1.0.so.0": "libgstreamer-plugins-base1.0-0",
  "libgtk-3.so.0": "libgtk-3-0",
  "libgudev-1.0.so.0": "libgudev-1.0-0",
  "libharfbuzz-icu.so.0": "libharfbuzz-icu0",
  "libharfbuzz.so.0": "libharfbuzz0b",
  "libhyphen.so.0": "libhyphen0",
  "libjavascriptcoregtk-4.0.so.18": "libjavascriptcoregtk-4.0-18",
  "liblcms2.so.2": "liblcms2-2",
  "libmanette-0.2.so.0": "libmanette-0.2-0",
  "libnotify.so.4": "libnotify4",
  "libnspr4.so": "libnspr4",
  "libnss3.so": "libnss3",
  "libnssutil3.so": "libnss3",
  "libOpenGL.so.0": "libopengl0",
  "libopenjp2.so.7": "libopenjp2-7",
  "libopus.so.0": "libopus0",
  "libpango-1.0.so.0": "libpango-1.0-0",
  "libpangocairo-1.0.so.0": "libpangocairo-1.0-0",
  "libpng16.so.16": "libpng16-16",
  "libproxy.so.1": "libproxy1v5",
  "libsecret-1.so.0": "libsecret-1-0",
  "libsmime3.so": "libnss3",
  "libsoup-2.4.so.1": "libsoup2.4-1",
  "libsqlite3.so.0": "libsqlite3-0",
  "libwayland-client.so.0": "libwayland-client0",
  "libwayland-egl.so.1": "libwayland-egl1",
  "libwayland-server.so.0": "libwayland-server0",
  "libwebkit2gtk-4.0.so.37": "libwebkit2gtk-4.0-37",
  "libwebp.so.6": "libwebp6",
  "libwebpdemux.so.2": "libwebpdemux2",
  "libwoff2dec.so.1.0.2": "libwoff1",
  "libX11-xcb.so.1": "libx11-xcb1",
  "libX11.so.6": "libx11-6",
  "libxcb-shm.so.0": "libxcb-shm0",
  "libxcb.so.1": "libxcb1",
  "libXcomposite.so.1": "libxcomposite1",
  "libXcursor.so.1": "libxcursor1",
  "libXdamage.so.1": "libxdamage1",
  "libXext.so.6": "libxext6",
  "libXfixes.so.3": "libxfixes3",
  "libXi.so.6": "libxi6",
  "libxkbcommon.so.0": "libxkbcommon0",
  "libxml2.so.2": "libxml2",
  "libXrandr.so.2": "libxrandr2",
  "libXrender.so.1": "libxrender1",
  "libxslt.so.1": "libxslt1.1",
  "libXtst.so.6": "libxtst6",
}

======= chromium-1006:  required packages =======
[
  "libasound2",
  "libatk-bridge2.0-0",
  "libatk1.0-0",
  "libatspi2.0-0",
  "libcairo2",
  "libcups2",
  "libdbus-1-3",
  "libdrm2",
  "libexpat1",
  "libgbm1",
  "libglib2.0-0",
  "libnspr4",
  "libnss3",
  "libpango-1.0-0",
  "libx11-6",
  "libxcb1",
  "libxcomposite1",
  "libxdamage1",
  "libxext6",
  "libxfixes3",
  "libxkbcommon0",
  "libxrandr2"
]

------- chromium-1006:  unresolved libraries -------
[]

======= ffmpeg-1007:  required packages =======
[]

------- ffmpeg-1007:  unresolved libraries -------
[]

======= firefox-1323:  required packages =======
[
  "libasound2",
  "libatk1.0-0",
  "libcairo-gobject2",
  "libcairo2",
  "libdbus-1-3",
  "libdbus-glib-1-2",
  "libfontconfig1",
  "libfreetype6",
  "libgdk-pixbuf2.0-0",
  "libglib2.0-0",
  "libgtk-3-0",
  "libpango-1.0-0",
  "libpangocairo-1.0-0",
  "libx11-6",
  "libx11-xcb1",
  "libxcb-shm0",
  "libxcb1",
  "libxcomposite1",
  "libxcursor1",
  "libxdamage1",
  "libxext6",
  "libxfixes3",
  "libxi6",
  "libxrandr2",
  "libxrender1",
  "libxtst6"
]

------- firefox-1323:  unresolved libraries -------
[]

======= webkit-1641:  required packages =======
[
  "libatk-bridge2.0-0",
  "libatk1.0-0",
  "libcairo2",
  "libdbus-1-3",
  "libdrm2",
  "libegl1",
  "libenchant1c2a",
  "libepoxy0",
  "libevdev2",
  "libfontconfig1",
  "libfreetype6",
  "libgbm1",
  "libgdk-pixbuf2.0-0",
  "libgles2",
  "libglib2.0-0",
  "libglx0",
  "libgstreamer-gl1.0-0",
  "libgstreamer-plugins-base1.0-0",
  "libgstreamer1.0-0",
  "libgtk-3-0",
  "libgudev-1.0-0",
  "libharfbuzz-icu0",
  "libharfbuzz0b",
  "libhyphen0",
  "libjavascriptcoregtk-4.0-18",
  "liblcms2-2",
  "libmanette-0.2-0",
  "libnotify4",
  "libopengl0",
  "libopenjp2-7",
  "libopus0",
  "libpango-1.0-0",
  "libpng16-16",
  "libproxy1v5",
  "libsecret-1-0",
  "libsoup2.4-1",
  "libsqlite3-0",
  "libwayland-client0",
  "libwayland-egl1",
  "libwayland-server0",
  "libwebkit2gtk-4.0-37",
  "libwebp6",
  "libwebpdemux2",
  "libwoff1",
  "libx11-6",
  "libxcomposite1",
  "libxdamage1",
  "libxkbcommon0",
  "libxml2",
  "libxslt1.1"
]

------- webkit-1641:  unresolved libraries -------
[
  "/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/bin/WebKitWebDriver: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/bin/WebKitWebDriver)",
  "/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/bin/WebKitWebDriver: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/bin/WebKitWebDriver)",
  "/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18.21.0: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18.21.0)",
  "/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18.21.0: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18.21.0)",
  "/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37.57.0: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18)",
  "/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37.57.0: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37.57.0)",
  "/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37.57.0: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18)",
  "/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37.57.0: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37.57.0)",
  "/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtkinjectedbundle.so: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18)",
  "/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtkinjectedbundle.so: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37)",
  "/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtkinjectedbundle.so: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libjavascriptcoregtk-4.0.so.18)",
  "/root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtkinjectedbundle.so: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-gtk/lib/libwebkit2gtk-4.0.so.37)",
  "/root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/bin/WPEWebDriver: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/bin/WPEWebDriver)",
  "/root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/bin/WPEWebDriver: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/bin/WPEWebDriver)",
  "/root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEInjectedBundle.so: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEWebKit-1.0.so.3)",
  "/root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEInjectedBundle.so: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEWebKit-1.0.so.3)",
  "/root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEWebKit-1.0.so.3.17.0: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEWebKit-1.0.so.3.17.0)",
  "/root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEWebKit-1.0.so.3.17.0: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /root/.cache/ms-playwright/webkit-1641/minibrowser-wpe/lib/libWPEWebKit-1.0.so.3.17.0)",
  "libWPEBackend-fdo-1.0.so.1",
  "libWPEWebKit-1.0.so.3",
  "libffi.so.7",
  "libicui18n.so.66",
  "libicuuc.so.66",
  "libjpeg.so.8",
  "libwpe-1.0.so.1"
]

  ====================
        FAILED
  ====================
  

We're currently finding that Chrome is incredibly slow looking at video runs and so I am trying to work out what might cause this. It might relate to this issue about stray ldd processes.

@martadinata666
Copy link

martadinata666 commented Jul 3, 2022

Chromium
By manually finding deps we need only

apt install --no-install-recommends -y libatk1.0-0 libglib2.0-0 libnss3 libatk-bridge2.0-0 libcups2 \
                                           libdrm2 libdbus-1-3 libxkbcommon0 libxcomposite1 libxdamage1 libxext6 libwayland-client0 \
                                           libxfixes3 libxrandr2 libgbm1 libpango-1.0-0 libcairo2 libasound2 libatspi2.0-0

And install using pnpx playwright@${PLAYWRIGHT_VERSION} install-deps chromium in this case, 1.23.11. Adding excesive package, i realized that many of it, is desktop based dependencies. Can we remove this or on some cases this needed?

adwaita-icon-theme dbus dbus-user-session dconf-gsettings-backend dconf-service dmsetup fonts-ubuntu
  fonts-unifont glib-networking glib-networking-common glib-networking-services gsettings-desktop-schemas
  gtk-update-icon-cache hicolor-icon-theme libapparmor1 libargon2-1 libcairo-gobject2 libcap2 libcolord2
  libcryptsetup12 libdconf1 libdeflate0 libdevmapper1.02.1 libdrm-amdgpu1 libdrm-intel1 libdrm-nouveau2
  libdrm-radeon1 libedit2 libegl-mesa0 libelf1 libepoxy0 libfontenc1 libgdk-pixbuf-2.0-0 libgdk-pixbuf2.0-common
  libgl1 libgl1-mesa-dri libglapi-mesa libglvnd0 libglx-mesa0 libglx0 libgtk-3-common libice6 libicu67 libip4tc2
  libjbig0 libjpeg62-turbo libjson-c5 libjson-glib-1.0-0 libjson-glib-1.0-common libkmod2 liblcms2-2 libllvm11
  libpam-systemd libpangocairo-1.0-0 libpangoft2-1.0-0 libpciaccess0 libproxy1v5 librest-0.7-0 libsensors-config
  libsensors5 libsm6 libsoup-gnome2.4-1 libsoup2.4-1 libtiff5 libunwind8 libvulkan1 libwayland-cursor0
  libwayland-egl1 libwebp6 libxaw7 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-sync1
  libxcb-xfixes0 libxcursor1 libxfont2 libxi6 libxinerama1 libxkbfile1 libxml2 libxmu6 libxpm4 libxt6 libxxf86vm1
  libz3-4 shared-mime-info systemd systemd-sysv x11-common x11-xkb-utils xfonts-encodings xfonts-utils
  xserver-common

@mxschmitt mxschmitt changed the title [Feature] Enhance Debian 10 support especially with WebKit [Feature] Enhance Debian 11 support especially with WebKit Jul 12, 2022
@mxschmitt mxschmitt added v1.25 and removed v1.25 labels Jul 12, 2022
@AlexDaniel
Copy link

@mxschmitt that is fantastic news! Thank you very much! ❤️ ❤️ ❤️

@microsoft microsoft deleted a comment from mxschmitt Jul 13, 2022
@pavelfeldman pavelfeldman reopened this Jul 13, 2022
@aslushnikov
Copy link
Collaborator

Turns out this is not fixed yet!

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

Successfully merging a pull request may close this issue.