patchright-bun-core 1.58.0 → 1.58.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/ThirdPartyNotices.txt +4075 -4075
- package/bin/install_media_pack.ps1 +5 -5
- package/bin/install_webkit_wsl.ps1 +32 -32
- package/bin/reinstall_chrome_beta_linux.sh +42 -42
- package/bin/reinstall_chrome_beta_mac.sh +13 -13
- package/bin/reinstall_chrome_beta_win.ps1 +24 -24
- package/bin/reinstall_chrome_stable_linux.sh +42 -42
- package/bin/reinstall_chrome_stable_mac.sh +12 -12
- package/bin/reinstall_chrome_stable_win.ps1 +24 -24
- package/bin/reinstall_msedge_beta_linux.sh +48 -48
- package/bin/reinstall_msedge_beta_mac.sh +11 -11
- package/bin/reinstall_msedge_beta_win.ps1 +23 -23
- package/bin/reinstall_msedge_dev_linux.sh +48 -48
- package/bin/reinstall_msedge_dev_mac.sh +11 -11
- package/bin/reinstall_msedge_dev_win.ps1 +23 -23
- package/bin/reinstall_msedge_stable_linux.sh +48 -48
- package/bin/reinstall_msedge_stable_mac.sh +11 -11
- package/bin/reinstall_msedge_stable_win.ps1 +23 -23
- package/browsers.json +79 -79
- package/cli.js +18 -18
- package/index.d.ts +17 -17
- package/index.js +32 -32
- package/index.mjs +28 -28
- package/lib/androidServerImpl.js +65 -65
- package/lib/browserServerImpl.js +120 -120
- package/lib/cli/driver.js +97 -97
- package/lib/cli/program.js +589 -589
- package/lib/cli/programWithTestStub.js +74 -74
- package/lib/client/android.js +361 -361
- package/lib/client/api.js +137 -137
- package/lib/client/artifact.js +79 -79
- package/lib/client/browser.js +161 -161
- package/lib/client/browserContext.js +582 -582
- package/lib/client/browserType.js +185 -185
- package/lib/client/cdpSession.js +51 -51
- package/lib/client/channelOwner.js +194 -194
- package/lib/client/clientHelper.js +64 -64
- package/lib/client/clientInstrumentation.js +55 -55
- package/lib/client/clientStackTrace.js +69 -69
- package/lib/client/clock.js +68 -68
- package/lib/client/connection.js +318 -318
- package/lib/client/consoleMessage.js +58 -58
- package/lib/client/coverage.js +44 -44
- package/lib/client/dialog.js +56 -56
- package/lib/client/download.js +62 -62
- package/lib/client/electron.js +138 -138
- package/lib/client/elementHandle.js +284 -284
- package/lib/client/errors.js +77 -77
- package/lib/client/eventEmitter.js +314 -314
- package/lib/client/events.js +103 -103
- package/lib/client/fetch.js +368 -368
- package/lib/client/fileChooser.js +46 -46
- package/lib/client/fileUtils.js +34 -34
- package/lib/client/frame.js +409 -409
- package/lib/client/harRouter.js +87 -87
- package/lib/client/input.js +84 -84
- package/lib/client/jsHandle.js +109 -109
- package/lib/client/jsonPipe.js +39 -39
- package/lib/client/localUtils.js +60 -60
- package/lib/client/locator.js +369 -369
- package/lib/client/network.js +747 -747
- package/lib/client/page.js +745 -745
- package/lib/client/pageAgent.js +64 -64
- package/lib/client/platform.js +77 -77
- package/lib/client/playwright.js +71 -71
- package/lib/client/selectors.js +55 -55
- package/lib/client/stream.js +39 -39
- package/lib/client/timeoutSettings.js +79 -79
- package/lib/client/tracing.js +119 -119
- package/lib/client/types.js +28 -28
- package/lib/client/video.js +59 -59
- package/lib/client/waiter.js +142 -142
- package/lib/client/webError.js +39 -39
- package/lib/client/webSocket.js +93 -93
- package/lib/client/worker.js +85 -85
- package/lib/client/writableStream.js +39 -39
- package/lib/generated/bindingsControllerSource.js +28 -28
- package/lib/generated/clockSource.js +28 -28
- package/lib/generated/injectedScriptSource.js +28 -28
- package/lib/generated/pollingRecorderSource.js +28 -28
- package/lib/generated/storageScriptSource.js +28 -28
- package/lib/generated/utilityScriptSource.js +28 -28
- package/lib/generated/webSocketMockSource.js +336 -336
- package/lib/inProcessFactory.js +60 -60
- package/lib/inprocess.js +3 -3
- package/lib/mcpBundle.js +84 -84
- package/lib/mcpBundleImpl/index.js +147 -147
- package/lib/outofprocess.js +76 -76
- package/lib/protocol/serializers.js +197 -197
- package/lib/protocol/validator.js +2969 -2969
- package/lib/protocol/validatorPrimitives.js +193 -193
- package/lib/remote/playwrightConnection.js +129 -129
- package/lib/remote/playwrightServer.js +334 -334
- package/lib/server/agent/actionRunner.js +335 -335
- package/lib/server/agent/actions.js +128 -128
- package/lib/server/agent/codegen.js +111 -111
- package/lib/server/agent/context.js +150 -150
- package/lib/server/agent/expectTools.js +156 -156
- package/lib/server/agent/pageAgent.js +204 -204
- package/lib/server/agent/performTools.js +262 -262
- package/lib/server/agent/tool.js +109 -109
- package/lib/server/android/android.js +465 -465
- package/lib/server/android/backendAdb.js +177 -177
- package/lib/server/artifact.js +127 -127
- package/lib/server/bidi/bidiBrowser.js +549 -549
- package/lib/server/bidi/bidiChromium.js +149 -148
- package/lib/server/bidi/bidiConnection.js +213 -213
- package/lib/server/bidi/bidiDeserializer.js +116 -116
- package/lib/server/bidi/bidiExecutionContext.js +267 -267
- package/lib/server/bidi/bidiFirefox.js +128 -128
- package/lib/server/bidi/bidiInput.js +146 -146
- package/lib/server/bidi/bidiNetworkManager.js +383 -383
- package/lib/server/bidi/bidiOverCdp.js +102 -102
- package/lib/server/bidi/bidiPage.js +583 -583
- package/lib/server/bidi/bidiPdf.js +106 -106
- package/lib/server/bidi/third_party/bidiCommands.d.js +22 -22
- package/lib/server/bidi/third_party/bidiKeyboard.js +256 -256
- package/lib/server/bidi/third_party/bidiProtocol.js +24 -24
- package/lib/server/bidi/third_party/bidiProtocolCore.js +180 -180
- package/lib/server/bidi/third_party/bidiProtocolPermissions.js +42 -42
- package/lib/server/bidi/third_party/bidiSerializer.js +148 -148
- package/lib/server/bidi/third_party/firefoxPrefs.js +259 -259
- package/lib/server/browser.js +149 -149
- package/lib/server/browserContext.js +702 -702
- package/lib/server/browserType.js +336 -336
- package/lib/server/callLog.js +82 -82
- package/lib/server/chromium/chromium.js +397 -395
- package/lib/server/chromium/chromiumSwitches.js +104 -104
- package/lib/server/chromium/crBrowser.js +520 -511
- package/lib/server/chromium/crConnection.js +197 -197
- package/lib/server/chromium/crCoverage.js +235 -235
- package/lib/server/chromium/crDevTools.js +111 -111
- package/lib/server/chromium/crDragDrop.js +131 -131
- package/lib/server/chromium/crExecutionContext.js +146 -146
- package/lib/server/chromium/crInput.js +187 -187
- package/lib/server/chromium/crNetworkManager.js +707 -707
- package/lib/server/chromium/crPage.js +1001 -1001
- package/lib/server/chromium/crPdf.js +121 -121
- package/lib/server/chromium/crProtocolHelper.js +145 -145
- package/lib/server/chromium/crServiceWorker.js +136 -136
- package/lib/server/chromium/defaultFontFamilies.js +162 -162
- package/lib/server/chromium/protocol.d.js +16 -16
- package/lib/server/clock.js +149 -149
- package/lib/server/codegen/csharp.js +327 -327
- package/lib/server/codegen/java.js +274 -274
- package/lib/server/codegen/javascript.js +247 -247
- package/lib/server/codegen/jsonl.js +52 -52
- package/lib/server/codegen/language.js +132 -132
- package/lib/server/codegen/languages.js +68 -68
- package/lib/server/codegen/python.js +279 -279
- package/lib/server/codegen/types.js +16 -16
- package/lib/server/console.js +57 -57
- package/lib/server/cookieStore.js +206 -206
- package/lib/server/debugController.js +191 -191
- package/lib/server/debugger.js +119 -119
- package/lib/server/deviceDescriptors.js +39 -39
- package/lib/server/deviceDescriptorsSource.json +1778 -1778
- package/lib/server/dialog.js +116 -116
- package/lib/server/dispatchers/androidDispatcher.js +325 -325
- package/lib/server/dispatchers/artifactDispatcher.js +118 -118
- package/lib/server/dispatchers/browserContextDispatcher.js +384 -384
- package/lib/server/dispatchers/browserDispatcher.js +118 -118
- package/lib/server/dispatchers/browserTypeDispatcher.js +64 -64
- package/lib/server/dispatchers/cdpSessionDispatcher.js +44 -44
- package/lib/server/dispatchers/debugControllerDispatcher.js +78 -78
- package/lib/server/dispatchers/dialogDispatcher.js +47 -47
- package/lib/server/dispatchers/dispatcher.js +364 -364
- package/lib/server/dispatchers/electronDispatcher.js +89 -89
- package/lib/server/dispatchers/elementHandlerDispatcher.js +181 -181
- package/lib/server/dispatchers/frameDispatcher.js +227 -227
- package/lib/server/dispatchers/jsHandleDispatcher.js +85 -85
- package/lib/server/dispatchers/jsonPipeDispatcher.js +58 -58
- package/lib/server/dispatchers/localUtilsDispatcher.js +149 -149
- package/lib/server/dispatchers/networkDispatchers.js +213 -213
- package/lib/server/dispatchers/pageAgentDispatcher.js +96 -96
- package/lib/server/dispatchers/pageDispatcher.js +393 -393
- package/lib/server/dispatchers/playwrightDispatcher.js +108 -108
- package/lib/server/dispatchers/streamDispatcher.js +67 -67
- package/lib/server/dispatchers/tracingDispatcher.js +68 -68
- package/lib/server/dispatchers/webSocketRouteDispatcher.js +165 -165
- package/lib/server/dispatchers/writableStreamDispatcher.js +79 -79
- package/lib/server/dom.js +815 -815
- package/lib/server/download.js +70 -70
- package/lib/server/electron/electron.js +273 -273
- package/lib/server/electron/loader.js +29 -29
- package/lib/server/errors.js +69 -69
- package/lib/server/fetch.js +621 -621
- package/lib/server/fileChooser.js +43 -43
- package/lib/server/fileUploadUtils.js +84 -84
- package/lib/server/firefox/ffBrowser.js +418 -418
- package/lib/server/firefox/ffConnection.js +142 -142
- package/lib/server/firefox/ffExecutionContext.js +150 -150
- package/lib/server/firefox/ffInput.js +159 -159
- package/lib/server/firefox/ffNetworkManager.js +256 -256
- package/lib/server/firefox/ffPage.js +497 -497
- package/lib/server/firefox/firefox.js +114 -114
- package/lib/server/firefox/protocol.d.js +16 -16
- package/lib/server/formData.js +147 -147
- package/lib/server/frameSelectors.js +160 -160
- package/lib/server/frames.js +1471 -1471
- package/lib/server/har/harRecorder.js +147 -147
- package/lib/server/har/harTracer.js +607 -607
- package/lib/server/harBackend.js +157 -157
- package/lib/server/helper.js +96 -96
- package/lib/server/index.js +58 -58
- package/lib/server/input.js +277 -277
- package/lib/server/instrumentation.js +72 -72
- package/lib/server/javascript.js +291 -291
- package/lib/server/launchApp.js +128 -128
- package/lib/server/localUtils.js +214 -214
- package/lib/server/macEditingCommands.js +143 -143
- package/lib/server/network.js +667 -667
- package/lib/server/page.js +830 -830
- package/lib/server/pipeTransport.js +89 -89
- package/lib/server/playwright.js +69 -69
- package/lib/server/progress.js +132 -132
- package/lib/server/protocolError.js +52 -52
- package/lib/server/recorder/chat.js +161 -161
- package/lib/server/recorder/recorderApp.js +366 -366
- package/lib/server/recorder/recorderRunner.js +138 -138
- package/lib/server/recorder/recorderSignalProcessor.js +83 -83
- package/lib/server/recorder/recorderUtils.js +157 -157
- package/lib/server/recorder/throttledFile.js +57 -57
- package/lib/server/recorder.js +499 -499
- package/lib/server/registry/browserFetcher.js +177 -177
- package/lib/server/registry/dependencies.js +371 -371
- package/lib/server/registry/index.js +1422 -1422
- package/lib/server/registry/nativeDeps.js +1280 -1280
- package/lib/server/registry/oopDownloadBrowserMain.js +127 -127
- package/lib/server/screencast.js +190 -190
- package/lib/server/screenshotter.js +333 -333
- package/lib/server/selectors.js +112 -112
- package/lib/server/socksClientCertificatesInterceptor.js +383 -383
- package/lib/server/socksInterceptor.js +95 -95
- package/lib/server/trace/recorder/snapshotter.js +147 -147
- package/lib/server/trace/recorder/snapshotterInjected.js +561 -561
- package/lib/server/trace/recorder/tracing.js +604 -604
- package/lib/server/trace/viewer/traceParser.js +72 -72
- package/lib/server/trace/viewer/traceViewer.js +245 -245
- package/lib/server/transport.js +254 -254
- package/lib/server/types.js +28 -28
- package/lib/server/usKeyboardLayout.js +145 -145
- package/lib/server/utils/ascii.js +44 -44
- package/lib/server/utils/comparators.js +139 -139
- package/lib/server/utils/crypto.js +216 -216
- package/lib/server/utils/debug.js +42 -42
- package/lib/server/utils/debugLogger.js +122 -122
- package/lib/server/utils/env.js +73 -73
- package/lib/server/utils/eventsHelper.js +39 -39
- package/lib/server/utils/expectUtils.js +123 -123
- package/lib/server/utils/fileUtils.js +191 -191
- package/lib/server/utils/happyEyeballs.js +207 -207
- package/lib/server/utils/hostPlatform.js +138 -123
- package/lib/server/utils/httpServer.js +203 -203
- package/lib/server/utils/imageUtils.js +141 -141
- package/lib/server/utils/image_tools/colorUtils.js +89 -89
- package/lib/server/utils/image_tools/compare.js +109 -109
- package/lib/server/utils/image_tools/imageChannel.js +78 -78
- package/lib/server/utils/image_tools/stats.js +102 -102
- package/lib/server/utils/linuxUtils.js +71 -71
- package/lib/server/utils/network.js +242 -242
- package/lib/server/utils/nodePlatform.js +154 -154
- package/lib/server/utils/pipeTransport.js +84 -84
- package/lib/server/utils/processLauncher.js +241 -241
- package/lib/server/utils/profiler.js +65 -65
- package/lib/server/utils/socksProxy.js +511 -511
- package/lib/server/utils/spawnAsync.js +41 -41
- package/lib/server/utils/task.js +51 -51
- package/lib/server/utils/userAgent.js +98 -98
- package/lib/server/utils/wsServer.js +121 -121
- package/lib/server/utils/zipFile.js +74 -74
- package/lib/server/utils/zones.js +57 -57
- package/lib/server/videoRecorder.js +124 -124
- package/lib/server/webkit/protocol.d.js +16 -16
- package/lib/server/webkit/webkit.js +108 -108
- package/lib/server/webkit/wkBrowser.js +335 -335
- package/lib/server/webkit/wkConnection.js +144 -144
- package/lib/server/webkit/wkExecutionContext.js +154 -154
- package/lib/server/webkit/wkInput.js +181 -181
- package/lib/server/webkit/wkInterceptableRequest.js +197 -197
- package/lib/server/webkit/wkPage.js +1159 -1158
- package/lib/server/webkit/wkProvisionalPage.js +83 -83
- package/lib/server/webkit/wkWorkers.js +105 -105
- package/lib/third_party/pixelmatch.js +255 -255
- package/lib/utils/isomorphic/ariaSnapshot.js +455 -455
- package/lib/utils/isomorphic/assert.js +31 -31
- package/lib/utils/isomorphic/colors.js +72 -72
- package/lib/utils/isomorphic/cssParser.js +245 -245
- package/lib/utils/isomorphic/cssTokenizer.js +1051 -1051
- package/lib/utils/isomorphic/headers.js +53 -53
- package/lib/utils/isomorphic/locatorGenerators.js +689 -689
- package/lib/utils/isomorphic/locatorParser.js +176 -176
- package/lib/utils/isomorphic/locatorUtils.js +81 -81
- package/lib/utils/isomorphic/lruCache.js +51 -51
- package/lib/utils/isomorphic/manualPromise.js +114 -114
- package/lib/utils/isomorphic/mimeType.js +459 -459
- package/lib/utils/isomorphic/multimap.js +80 -80
- package/lib/utils/isomorphic/protocolFormatter.js +81 -81
- package/lib/utils/isomorphic/protocolMetainfo.js +330 -330
- package/lib/utils/isomorphic/rtti.js +43 -43
- package/lib/utils/isomorphic/selectorParser.js +386 -386
- package/lib/utils/isomorphic/semaphore.js +54 -54
- package/lib/utils/isomorphic/stackTrace.js +158 -158
- package/lib/utils/isomorphic/stringUtils.js +204 -204
- package/lib/utils/isomorphic/time.js +49 -49
- package/lib/utils/isomorphic/timeoutRunner.js +66 -66
- package/lib/utils/isomorphic/trace/entries.js +16 -16
- package/lib/utils/isomorphic/trace/snapshotRenderer.js +499 -499
- package/lib/utils/isomorphic/trace/snapshotServer.js +120 -120
- package/lib/utils/isomorphic/trace/snapshotStorage.js +89 -89
- package/lib/utils/isomorphic/trace/traceLoader.js +131 -131
- package/lib/utils/isomorphic/trace/traceModel.js +365 -365
- package/lib/utils/isomorphic/trace/traceModernizer.js +400 -400
- package/lib/utils/isomorphic/trace/versions/traceV3.js +16 -16
- package/lib/utils/isomorphic/trace/versions/traceV4.js +16 -16
- package/lib/utils/isomorphic/trace/versions/traceV5.js +16 -16
- package/lib/utils/isomorphic/trace/versions/traceV6.js +16 -16
- package/lib/utils/isomorphic/trace/versions/traceV7.js +16 -16
- package/lib/utils/isomorphic/trace/versions/traceV8.js +16 -16
- package/lib/utils/isomorphic/traceUtils.js +58 -58
- package/lib/utils/isomorphic/types.js +16 -16
- package/lib/utils/isomorphic/urlMatch.js +190 -190
- package/lib/utils/isomorphic/utilityScriptSerializers.js +251 -251
- package/lib/utils/isomorphic/yaml.js +84 -84
- package/lib/utils.js +111 -111
- package/lib/utilsBundle.js +109 -109
- package/lib/utilsBundleImpl/index.js +218 -218
- package/lib/utilsBundleImpl/xdg-open +1066 -1066
- package/lib/vite/htmlReport/index.html +84 -84
- package/lib/vite/recorder/assets/codeMirrorModule-DYBRYzYX.css +1 -1
- package/lib/vite/recorder/assets/codeMirrorModule-DadYNm1I.js +32 -32
- package/lib/vite/recorder/assets/index-BSjZa4pk.css +1 -1
- package/lib/vite/recorder/assets/index-BhTWtUlo.js +193 -193
- package/lib/vite/recorder/index.html +29 -29
- package/lib/vite/recorder/playwright-logo.svg +9 -9
- package/lib/vite/traceViewer/assets/codeMirrorModule-a5XoALAZ.js +32 -32
- package/lib/vite/traceViewer/assets/defaultSettingsView-CJSZINFr.js +266 -266
- package/lib/vite/traceViewer/assets/xtermModule-CsJ4vdCR.js +9 -9
- package/lib/vite/traceViewer/codeMirrorModule.DYBRYzYX.css +1 -1
- package/lib/vite/traceViewer/defaultSettingsView.7ch9cixO.css +1 -1
- package/lib/vite/traceViewer/{index.Bk2uYQRV.js → index.BDwrLSGN.js} +2 -2
- package/lib/vite/traceViewer/index.BVu7tZDe.css +1 -1
- package/lib/vite/traceViewer/index.html +43 -43
- package/lib/vite/traceViewer/manifest.webmanifest +16 -16
- package/lib/vite/traceViewer/playwright-logo.svg +9 -9
- package/lib/vite/traceViewer/snapshot.html +21 -21
- package/lib/vite/traceViewer/sw.bundle.js +5 -5
- package/lib/vite/traceViewer/uiMode.Btcz36p_.css +1 -1
- package/lib/vite/traceViewer/uiMode.CQJ9SCIQ.js +5 -5
- package/lib/vite/traceViewer/uiMode.html +17 -17
- package/lib/vite/traceViewer/xtermModule.DYP7pi_n.css +32 -32
- package/lib/zipBundle.js +34 -34
- package/lib/zipBundleImpl.js +5 -5
- package/package.json +1 -1
- package/types/protocol.d.ts +23824 -23824
- package/types/structs.d.ts +45 -45
- package/types/types.d.ts +22843 -22843
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
$osInfo = Get-WmiObject -Class Win32_OperatingSystem
|
|
2
|
-
# check if running on Windows Server
|
|
3
|
-
if ($osInfo.ProductType -eq 3) {
|
|
4
|
-
Install-WindowsFeature Server-Media-Foundation
|
|
5
|
-
}
|
|
1
|
+
$osInfo = Get-WmiObject -Class Win32_OperatingSystem
|
|
2
|
+
# check if running on Windows Server
|
|
3
|
+
if ($osInfo.ProductType -eq 3) {
|
|
4
|
+
Install-WindowsFeature Server-Media-Foundation
|
|
5
|
+
}
|
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
$ErrorActionPreference = 'Stop'
|
|
2
|
-
|
|
3
|
-
# This script sets up a WSL distribution that will be used to run WebKit.
|
|
4
|
-
|
|
5
|
-
$Distribution = "playwright"
|
|
6
|
-
$Username = "pwuser"
|
|
7
|
-
|
|
8
|
-
$distributions = (wsl --list --quiet) -split "\r?\n"
|
|
9
|
-
if ($distributions -contains $Distribution) {
|
|
10
|
-
Write-Host "WSL distribution '$Distribution' already exists. Skipping installation."
|
|
11
|
-
} else {
|
|
12
|
-
Write-Host "Installing new WSL distribution '$Distribution'..."
|
|
13
|
-
$VhdSize = "10GB"
|
|
14
|
-
wsl --install -d Ubuntu-24.04 --name $Distribution --no-launch --vhd-size $VhdSize
|
|
15
|
-
wsl -d $Distribution -u root adduser --gecos GECOS --disabled-password $Username
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
$pwshDirname = (Resolve-Path -Path $PSScriptRoot).Path;
|
|
19
|
-
$playwrightCoreRoot = Resolve-Path (Join-Path $pwshDirname "..")
|
|
20
|
-
|
|
21
|
-
$initScript = @"
|
|
22
|
-
if [ ! -f "/home/$Username/node/bin/node" ]; then
|
|
23
|
-
mkdir -p /home/$Username/node
|
|
24
|
-
curl -fsSL https://nodejs.org/dist/v22.17.0/node-v22.17.0-linux-x64.tar.xz -o /home/$Username/node/node-v22.17.0-linux-x64.tar.xz
|
|
25
|
-
tar -xJf /home/$Username/node/node-v22.17.0-linux-x64.tar.xz -C /home/$Username/node --strip-components=1
|
|
26
|
-
sudo -u $Username echo 'export PATH=/home/$Username/node/bin:\`$PATH' >> /home/$Username/.profile
|
|
27
|
-
fi
|
|
28
|
-
/home/$Username/node/bin/node cli.js install-deps webkit
|
|
29
|
-
sudo -u $Username PLAYWRIGHT_SKIP_BROWSER_GC=1 /home/$Username/node/bin/node cli.js install webkit
|
|
30
|
-
"@ -replace "\r\n", "`n"
|
|
31
|
-
|
|
32
|
-
wsl -d $Distribution --cd $playwrightCoreRoot -u root -- bash -c "$initScript"
|
|
1
|
+
$ErrorActionPreference = 'Stop'
|
|
2
|
+
|
|
3
|
+
# This script sets up a WSL distribution that will be used to run WebKit.
|
|
4
|
+
|
|
5
|
+
$Distribution = "playwright"
|
|
6
|
+
$Username = "pwuser"
|
|
7
|
+
|
|
8
|
+
$distributions = (wsl --list --quiet) -split "\r?\n"
|
|
9
|
+
if ($distributions -contains $Distribution) {
|
|
10
|
+
Write-Host "WSL distribution '$Distribution' already exists. Skipping installation."
|
|
11
|
+
} else {
|
|
12
|
+
Write-Host "Installing new WSL distribution '$Distribution'..."
|
|
13
|
+
$VhdSize = "10GB"
|
|
14
|
+
wsl --install -d Ubuntu-24.04 --name $Distribution --no-launch --vhd-size $VhdSize
|
|
15
|
+
wsl -d $Distribution -u root adduser --gecos GECOS --disabled-password $Username
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
$pwshDirname = (Resolve-Path -Path $PSScriptRoot).Path;
|
|
19
|
+
$playwrightCoreRoot = Resolve-Path (Join-Path $pwshDirname "..")
|
|
20
|
+
|
|
21
|
+
$initScript = @"
|
|
22
|
+
if [ ! -f "/home/$Username/node/bin/node" ]; then
|
|
23
|
+
mkdir -p /home/$Username/node
|
|
24
|
+
curl -fsSL https://nodejs.org/dist/v22.17.0/node-v22.17.0-linux-x64.tar.xz -o /home/$Username/node/node-v22.17.0-linux-x64.tar.xz
|
|
25
|
+
tar -xJf /home/$Username/node/node-v22.17.0-linux-x64.tar.xz -C /home/$Username/node --strip-components=1
|
|
26
|
+
sudo -u $Username echo 'export PATH=/home/$Username/node/bin:\`$PATH' >> /home/$Username/.profile
|
|
27
|
+
fi
|
|
28
|
+
/home/$Username/node/bin/node cli.js install-deps webkit
|
|
29
|
+
sudo -u $Username PLAYWRIGHT_SKIP_BROWSER_GC=1 /home/$Username/node/bin/node cli.js install webkit
|
|
30
|
+
"@ -replace "\r\n", "`n"
|
|
31
|
+
|
|
32
|
+
wsl -d $Distribution --cd $playwrightCoreRoot -u root -- bash -c "$initScript"
|
|
33
33
|
Write-Host "Done!"
|
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
set -e
|
|
3
|
-
set -x
|
|
4
|
-
|
|
5
|
-
if [[ $(arch) == "aarch64" ]]; then
|
|
6
|
-
echo "ERROR: not supported on Linux Arm64"
|
|
7
|
-
exit 1
|
|
8
|
-
fi
|
|
9
|
-
|
|
10
|
-
if [ -z "$PLAYWRIGHT_HOST_PLATFORM_OVERRIDE" ]; then
|
|
11
|
-
if [[ ! -f "/etc/os-release" ]]; then
|
|
12
|
-
echo "ERROR: cannot install on unknown linux distribution (/etc/os-release is missing)"
|
|
13
|
-
exit 1
|
|
14
|
-
fi
|
|
15
|
-
|
|
16
|
-
ID=$(bash -c 'source /etc/os-release && echo $ID')
|
|
17
|
-
if [[ "${ID}" != "ubuntu" && "${ID}" != "debian" ]]; then
|
|
18
|
-
echo "ERROR: cannot install on $ID distribution - only Ubuntu and Debian are supported"
|
|
19
|
-
exit 1
|
|
20
|
-
fi
|
|
21
|
-
fi
|
|
22
|
-
|
|
23
|
-
# 1. make sure to remove old beta if any.
|
|
24
|
-
if dpkg --get-selections | grep -q "^google-chrome-beta[[:space:]]*install$" >/dev/null; then
|
|
25
|
-
apt-get remove -y google-chrome-beta
|
|
26
|
-
fi
|
|
27
|
-
|
|
28
|
-
# 2. Update apt lists (needed to install curl and chrome dependencies)
|
|
29
|
-
apt-get update
|
|
30
|
-
|
|
31
|
-
# 3. Install curl to download chrome
|
|
32
|
-
if ! command -v curl >/dev/null; then
|
|
33
|
-
apt-get install -y curl
|
|
34
|
-
fi
|
|
35
|
-
|
|
36
|
-
# 4. download chrome beta from dl.google.com and install it.
|
|
37
|
-
cd /tmp
|
|
38
|
-
curl -O https://dl.google.com/linux/direct/google-chrome-beta_current_amd64.deb
|
|
39
|
-
apt-get install -y ./google-chrome-beta_current_amd64.deb
|
|
40
|
-
rm -rf ./google-chrome-beta_current_amd64.deb
|
|
41
|
-
cd -
|
|
42
|
-
google-chrome-beta --version
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
set -e
|
|
3
|
+
set -x
|
|
4
|
+
|
|
5
|
+
if [[ $(arch) == "aarch64" ]]; then
|
|
6
|
+
echo "ERROR: not supported on Linux Arm64"
|
|
7
|
+
exit 1
|
|
8
|
+
fi
|
|
9
|
+
|
|
10
|
+
if [ -z "$PLAYWRIGHT_HOST_PLATFORM_OVERRIDE" ]; then
|
|
11
|
+
if [[ ! -f "/etc/os-release" ]]; then
|
|
12
|
+
echo "ERROR: cannot install on unknown linux distribution (/etc/os-release is missing)"
|
|
13
|
+
exit 1
|
|
14
|
+
fi
|
|
15
|
+
|
|
16
|
+
ID=$(bash -c 'source /etc/os-release && echo $ID')
|
|
17
|
+
if [[ "${ID}" != "ubuntu" && "${ID}" != "debian" ]]; then
|
|
18
|
+
echo "ERROR: cannot install on $ID distribution - only Ubuntu and Debian are supported"
|
|
19
|
+
exit 1
|
|
20
|
+
fi
|
|
21
|
+
fi
|
|
22
|
+
|
|
23
|
+
# 1. make sure to remove old beta if any.
|
|
24
|
+
if dpkg --get-selections | grep -q "^google-chrome-beta[[:space:]]*install$" >/dev/null; then
|
|
25
|
+
apt-get remove -y google-chrome-beta
|
|
26
|
+
fi
|
|
27
|
+
|
|
28
|
+
# 2. Update apt lists (needed to install curl and chrome dependencies)
|
|
29
|
+
apt-get update
|
|
30
|
+
|
|
31
|
+
# 3. Install curl to download chrome
|
|
32
|
+
if ! command -v curl >/dev/null; then
|
|
33
|
+
apt-get install -y curl
|
|
34
|
+
fi
|
|
35
|
+
|
|
36
|
+
# 4. download chrome beta from dl.google.com and install it.
|
|
37
|
+
cd /tmp
|
|
38
|
+
curl -O https://dl.google.com/linux/direct/google-chrome-beta_current_amd64.deb
|
|
39
|
+
apt-get install -y ./google-chrome-beta_current_amd64.deb
|
|
40
|
+
rm -rf ./google-chrome-beta_current_amd64.deb
|
|
41
|
+
cd -
|
|
42
|
+
google-chrome-beta --version
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
set -e
|
|
3
|
-
set -x
|
|
4
|
-
|
|
5
|
-
rm -rf "/Applications/Google Chrome Beta.app"
|
|
6
|
-
cd /tmp
|
|
7
|
-
curl --retry 3 -o ./googlechromebeta.dmg https://dl.google.com/chrome/mac/universal/beta/googlechromebeta.dmg
|
|
8
|
-
hdiutil attach -nobrowse -quiet -noautofsck -noautoopen -mountpoint /Volumes/googlechromebeta.dmg ./googlechromebeta.dmg
|
|
9
|
-
cp -pR "/Volumes/googlechromebeta.dmg/Google Chrome Beta.app" /Applications
|
|
10
|
-
hdiutil detach /Volumes/googlechromebeta.dmg
|
|
11
|
-
rm -rf /tmp/googlechromebeta.dmg
|
|
12
|
-
|
|
13
|
-
/Applications/Google\ Chrome\ Beta.app/Contents/MacOS/Google\ Chrome\ Beta --version
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
set -e
|
|
3
|
+
set -x
|
|
4
|
+
|
|
5
|
+
rm -rf "/Applications/Google Chrome Beta.app"
|
|
6
|
+
cd /tmp
|
|
7
|
+
curl --retry 3 -o ./googlechromebeta.dmg https://dl.google.com/chrome/mac/universal/beta/googlechromebeta.dmg
|
|
8
|
+
hdiutil attach -nobrowse -quiet -noautofsck -noautoopen -mountpoint /Volumes/googlechromebeta.dmg ./googlechromebeta.dmg
|
|
9
|
+
cp -pR "/Volumes/googlechromebeta.dmg/Google Chrome Beta.app" /Applications
|
|
10
|
+
hdiutil detach /Volumes/googlechromebeta.dmg
|
|
11
|
+
rm -rf /tmp/googlechromebeta.dmg
|
|
12
|
+
|
|
13
|
+
/Applications/Google\ Chrome\ Beta.app/Contents/MacOS/Google\ Chrome\ Beta --version
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
$ErrorActionPreference = 'Stop'
|
|
2
|
-
|
|
3
|
-
$url = 'https://dl.google.com/tag/s/dl/chrome/install/beta/googlechromebetastandaloneenterprise64.msi'
|
|
4
|
-
|
|
5
|
-
Write-Host "Downloading Google Chrome Beta"
|
|
6
|
-
$wc = New-Object net.webclient
|
|
7
|
-
$msiInstaller = "$env:temp\google-chrome-beta.msi"
|
|
8
|
-
$wc.Downloadfile($url, $msiInstaller)
|
|
9
|
-
|
|
10
|
-
Write-Host "Installing Google Chrome Beta"
|
|
11
|
-
$arguments = "/i `"$msiInstaller`" /quiet"
|
|
12
|
-
Start-Process msiexec.exe -ArgumentList $arguments -Wait
|
|
13
|
-
Remove-Item $msiInstaller
|
|
14
|
-
|
|
15
|
-
$suffix = "\\Google\\Chrome Beta\\Application\\chrome.exe"
|
|
16
|
-
if (Test-Path "${env:ProgramFiles(x86)}$suffix") {
|
|
17
|
-
(Get-Item "${env:ProgramFiles(x86)}$suffix").VersionInfo
|
|
18
|
-
} elseif (Test-Path "${env:ProgramFiles}$suffix") {
|
|
19
|
-
(Get-Item "${env:ProgramFiles}$suffix").VersionInfo
|
|
20
|
-
} else {
|
|
21
|
-
Write-Host "ERROR: Failed to install Google Chrome Beta."
|
|
22
|
-
Write-Host "ERROR: This could be due to insufficient privileges, in which case re-running as Administrator may help."
|
|
23
|
-
exit 1
|
|
24
|
-
}
|
|
1
|
+
$ErrorActionPreference = 'Stop'
|
|
2
|
+
|
|
3
|
+
$url = 'https://dl.google.com/tag/s/dl/chrome/install/beta/googlechromebetastandaloneenterprise64.msi'
|
|
4
|
+
|
|
5
|
+
Write-Host "Downloading Google Chrome Beta"
|
|
6
|
+
$wc = New-Object net.webclient
|
|
7
|
+
$msiInstaller = "$env:temp\google-chrome-beta.msi"
|
|
8
|
+
$wc.Downloadfile($url, $msiInstaller)
|
|
9
|
+
|
|
10
|
+
Write-Host "Installing Google Chrome Beta"
|
|
11
|
+
$arguments = "/i `"$msiInstaller`" /quiet"
|
|
12
|
+
Start-Process msiexec.exe -ArgumentList $arguments -Wait
|
|
13
|
+
Remove-Item $msiInstaller
|
|
14
|
+
|
|
15
|
+
$suffix = "\\Google\\Chrome Beta\\Application\\chrome.exe"
|
|
16
|
+
if (Test-Path "${env:ProgramFiles(x86)}$suffix") {
|
|
17
|
+
(Get-Item "${env:ProgramFiles(x86)}$suffix").VersionInfo
|
|
18
|
+
} elseif (Test-Path "${env:ProgramFiles}$suffix") {
|
|
19
|
+
(Get-Item "${env:ProgramFiles}$suffix").VersionInfo
|
|
20
|
+
} else {
|
|
21
|
+
Write-Host "ERROR: Failed to install Google Chrome Beta."
|
|
22
|
+
Write-Host "ERROR: This could be due to insufficient privileges, in which case re-running as Administrator may help."
|
|
23
|
+
exit 1
|
|
24
|
+
}
|
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
set -e
|
|
3
|
-
set -x
|
|
4
|
-
|
|
5
|
-
if [[ $(arch) == "aarch64" ]]; then
|
|
6
|
-
echo "ERROR: not supported on Linux Arm64"
|
|
7
|
-
exit 1
|
|
8
|
-
fi
|
|
9
|
-
|
|
10
|
-
if [ -z "$PLAYWRIGHT_HOST_PLATFORM_OVERRIDE" ]; then
|
|
11
|
-
if [[ ! -f "/etc/os-release" ]]; then
|
|
12
|
-
echo "ERROR: cannot install on unknown linux distribution (/etc/os-release is missing)"
|
|
13
|
-
exit 1
|
|
14
|
-
fi
|
|
15
|
-
|
|
16
|
-
ID=$(bash -c 'source /etc/os-release && echo $ID')
|
|
17
|
-
if [[ "${ID}" != "ubuntu" && "${ID}" != "debian" ]]; then
|
|
18
|
-
echo "ERROR: cannot install on $ID distribution - only Ubuntu and Debian are supported"
|
|
19
|
-
exit 1
|
|
20
|
-
fi
|
|
21
|
-
fi
|
|
22
|
-
|
|
23
|
-
# 1. make sure to remove old stable if any.
|
|
24
|
-
if dpkg --get-selections | grep -q "^google-chrome[[:space:]]*install$" >/dev/null; then
|
|
25
|
-
apt-get remove -y google-chrome
|
|
26
|
-
fi
|
|
27
|
-
|
|
28
|
-
# 2. Update apt lists (needed to install curl and chrome dependencies)
|
|
29
|
-
apt-get update
|
|
30
|
-
|
|
31
|
-
# 3. Install curl to download chrome
|
|
32
|
-
if ! command -v curl >/dev/null; then
|
|
33
|
-
apt-get install -y curl
|
|
34
|
-
fi
|
|
35
|
-
|
|
36
|
-
# 4. download chrome stable from dl.google.com and install it.
|
|
37
|
-
cd /tmp
|
|
38
|
-
curl -O https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
|
|
39
|
-
apt-get install -y ./google-chrome-stable_current_amd64.deb
|
|
40
|
-
rm -rf ./google-chrome-stable_current_amd64.deb
|
|
41
|
-
cd -
|
|
42
|
-
google-chrome --version
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
set -e
|
|
3
|
+
set -x
|
|
4
|
+
|
|
5
|
+
if [[ $(arch) == "aarch64" ]]; then
|
|
6
|
+
echo "ERROR: not supported on Linux Arm64"
|
|
7
|
+
exit 1
|
|
8
|
+
fi
|
|
9
|
+
|
|
10
|
+
if [ -z "$PLAYWRIGHT_HOST_PLATFORM_OVERRIDE" ]; then
|
|
11
|
+
if [[ ! -f "/etc/os-release" ]]; then
|
|
12
|
+
echo "ERROR: cannot install on unknown linux distribution (/etc/os-release is missing)"
|
|
13
|
+
exit 1
|
|
14
|
+
fi
|
|
15
|
+
|
|
16
|
+
ID=$(bash -c 'source /etc/os-release && echo $ID')
|
|
17
|
+
if [[ "${ID}" != "ubuntu" && "${ID}" != "debian" ]]; then
|
|
18
|
+
echo "ERROR: cannot install on $ID distribution - only Ubuntu and Debian are supported"
|
|
19
|
+
exit 1
|
|
20
|
+
fi
|
|
21
|
+
fi
|
|
22
|
+
|
|
23
|
+
# 1. make sure to remove old stable if any.
|
|
24
|
+
if dpkg --get-selections | grep -q "^google-chrome[[:space:]]*install$" >/dev/null; then
|
|
25
|
+
apt-get remove -y google-chrome
|
|
26
|
+
fi
|
|
27
|
+
|
|
28
|
+
# 2. Update apt lists (needed to install curl and chrome dependencies)
|
|
29
|
+
apt-get update
|
|
30
|
+
|
|
31
|
+
# 3. Install curl to download chrome
|
|
32
|
+
if ! command -v curl >/dev/null; then
|
|
33
|
+
apt-get install -y curl
|
|
34
|
+
fi
|
|
35
|
+
|
|
36
|
+
# 4. download chrome stable from dl.google.com and install it.
|
|
37
|
+
cd /tmp
|
|
38
|
+
curl -O https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
|
|
39
|
+
apt-get install -y ./google-chrome-stable_current_amd64.deb
|
|
40
|
+
rm -rf ./google-chrome-stable_current_amd64.deb
|
|
41
|
+
cd -
|
|
42
|
+
google-chrome --version
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
set -e
|
|
3
|
-
set -x
|
|
4
|
-
|
|
5
|
-
rm -rf "/Applications/Google Chrome.app"
|
|
6
|
-
cd /tmp
|
|
7
|
-
curl --retry 3 -o ./googlechrome.dmg https://dl.google.com/chrome/mac/universal/stable/GGRO/googlechrome.dmg
|
|
8
|
-
hdiutil attach -nobrowse -quiet -noautofsck -noautoopen -mountpoint /Volumes/googlechrome.dmg ./googlechrome.dmg
|
|
9
|
-
cp -pR "/Volumes/googlechrome.dmg/Google Chrome.app" /Applications
|
|
10
|
-
hdiutil detach /Volumes/googlechrome.dmg
|
|
11
|
-
rm -rf /tmp/googlechrome.dmg
|
|
12
|
-
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --version
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
set -e
|
|
3
|
+
set -x
|
|
4
|
+
|
|
5
|
+
rm -rf "/Applications/Google Chrome.app"
|
|
6
|
+
cd /tmp
|
|
7
|
+
curl --retry 3 -o ./googlechrome.dmg https://dl.google.com/chrome/mac/universal/stable/GGRO/googlechrome.dmg
|
|
8
|
+
hdiutil attach -nobrowse -quiet -noautofsck -noautoopen -mountpoint /Volumes/googlechrome.dmg ./googlechrome.dmg
|
|
9
|
+
cp -pR "/Volumes/googlechrome.dmg/Google Chrome.app" /Applications
|
|
10
|
+
hdiutil detach /Volumes/googlechrome.dmg
|
|
11
|
+
rm -rf /tmp/googlechrome.dmg
|
|
12
|
+
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --version
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
$ErrorActionPreference = 'Stop'
|
|
2
|
-
$url = 'https://dl.google.com/tag/s/dl/chrome/install/googlechromestandaloneenterprise64.msi'
|
|
3
|
-
|
|
4
|
-
$wc = New-Object net.webclient
|
|
5
|
-
$msiInstaller = "$env:temp\google-chrome.msi"
|
|
6
|
-
Write-Host "Downloading Google Chrome"
|
|
7
|
-
$wc.Downloadfile($url, $msiInstaller)
|
|
8
|
-
|
|
9
|
-
Write-Host "Installing Google Chrome"
|
|
10
|
-
$arguments = "/i `"$msiInstaller`" /quiet"
|
|
11
|
-
Start-Process msiexec.exe -ArgumentList $arguments -Wait
|
|
12
|
-
Remove-Item $msiInstaller
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
$suffix = "\\Google\\Chrome\\Application\\chrome.exe"
|
|
16
|
-
if (Test-Path "${env:ProgramFiles(x86)}$suffix") {
|
|
17
|
-
(Get-Item "${env:ProgramFiles(x86)}$suffix").VersionInfo
|
|
18
|
-
} elseif (Test-Path "${env:ProgramFiles}$suffix") {
|
|
19
|
-
(Get-Item "${env:ProgramFiles}$suffix").VersionInfo
|
|
20
|
-
} else {
|
|
21
|
-
Write-Host "ERROR: Failed to install Google Chrome."
|
|
22
|
-
Write-Host "ERROR: This could be due to insufficient privileges, in which case re-running as Administrator may help."
|
|
23
|
-
exit 1
|
|
24
|
-
}
|
|
1
|
+
$ErrorActionPreference = 'Stop'
|
|
2
|
+
$url = 'https://dl.google.com/tag/s/dl/chrome/install/googlechromestandaloneenterprise64.msi'
|
|
3
|
+
|
|
4
|
+
$wc = New-Object net.webclient
|
|
5
|
+
$msiInstaller = "$env:temp\google-chrome.msi"
|
|
6
|
+
Write-Host "Downloading Google Chrome"
|
|
7
|
+
$wc.Downloadfile($url, $msiInstaller)
|
|
8
|
+
|
|
9
|
+
Write-Host "Installing Google Chrome"
|
|
10
|
+
$arguments = "/i `"$msiInstaller`" /quiet"
|
|
11
|
+
Start-Process msiexec.exe -ArgumentList $arguments -Wait
|
|
12
|
+
Remove-Item $msiInstaller
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
$suffix = "\\Google\\Chrome\\Application\\chrome.exe"
|
|
16
|
+
if (Test-Path "${env:ProgramFiles(x86)}$suffix") {
|
|
17
|
+
(Get-Item "${env:ProgramFiles(x86)}$suffix").VersionInfo
|
|
18
|
+
} elseif (Test-Path "${env:ProgramFiles}$suffix") {
|
|
19
|
+
(Get-Item "${env:ProgramFiles}$suffix").VersionInfo
|
|
20
|
+
} else {
|
|
21
|
+
Write-Host "ERROR: Failed to install Google Chrome."
|
|
22
|
+
Write-Host "ERROR: This could be due to insufficient privileges, in which case re-running as Administrator may help."
|
|
23
|
+
exit 1
|
|
24
|
+
}
|
|
@@ -1,48 +1,48 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
|
|
3
|
-
set -e
|
|
4
|
-
set -x
|
|
5
|
-
|
|
6
|
-
if [[ $(arch) == "aarch64" ]]; then
|
|
7
|
-
echo "ERROR: not supported on Linux Arm64"
|
|
8
|
-
exit 1
|
|
9
|
-
fi
|
|
10
|
-
|
|
11
|
-
if [ -z "$PLAYWRIGHT_HOST_PLATFORM_OVERRIDE" ]; then
|
|
12
|
-
if [[ ! -f "/etc/os-release" ]]; then
|
|
13
|
-
echo "ERROR: cannot install on unknown linux distribution (/etc/os-release is missing)"
|
|
14
|
-
exit 1
|
|
15
|
-
fi
|
|
16
|
-
|
|
17
|
-
ID=$(bash -c 'source /etc/os-release && echo $ID')
|
|
18
|
-
if [[ "${ID}" != "ubuntu" && "${ID}" != "debian" ]]; then
|
|
19
|
-
echo "ERROR: cannot install on $ID distribution - only Ubuntu and Debian are supported"
|
|
20
|
-
exit 1
|
|
21
|
-
fi
|
|
22
|
-
fi
|
|
23
|
-
|
|
24
|
-
# 1. make sure to remove old beta if any.
|
|
25
|
-
if dpkg --get-selections | grep -q "^microsoft-edge-beta[[:space:]]*install$" >/dev/null; then
|
|
26
|
-
apt-get remove -y microsoft-edge-beta
|
|
27
|
-
fi
|
|
28
|
-
|
|
29
|
-
# 2. Install curl to download Microsoft gpg key
|
|
30
|
-
if ! command -v curl >/dev/null; then
|
|
31
|
-
apt-get update
|
|
32
|
-
apt-get install -y curl
|
|
33
|
-
fi
|
|
34
|
-
|
|
35
|
-
# GnuPG is not preinstalled in slim images
|
|
36
|
-
if ! command -v gpg >/dev/null; then
|
|
37
|
-
apt-get update
|
|
38
|
-
apt-get install -y gpg
|
|
39
|
-
fi
|
|
40
|
-
|
|
41
|
-
# 3. Add the GPG key, the apt repo, update the apt cache, and install the package
|
|
42
|
-
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /tmp/microsoft.gpg
|
|
43
|
-
install -o root -g root -m 644 /tmp/microsoft.gpg /etc/apt/trusted.gpg.d/
|
|
44
|
-
sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/edge stable main" > /etc/apt/sources.list.d/microsoft-edge-dev.list'
|
|
45
|
-
rm /tmp/microsoft.gpg
|
|
46
|
-
apt-get update && apt-get install -y microsoft-edge-beta
|
|
47
|
-
|
|
48
|
-
microsoft-edge-beta --version
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
set -e
|
|
4
|
+
set -x
|
|
5
|
+
|
|
6
|
+
if [[ $(arch) == "aarch64" ]]; then
|
|
7
|
+
echo "ERROR: not supported on Linux Arm64"
|
|
8
|
+
exit 1
|
|
9
|
+
fi
|
|
10
|
+
|
|
11
|
+
if [ -z "$PLAYWRIGHT_HOST_PLATFORM_OVERRIDE" ]; then
|
|
12
|
+
if [[ ! -f "/etc/os-release" ]]; then
|
|
13
|
+
echo "ERROR: cannot install on unknown linux distribution (/etc/os-release is missing)"
|
|
14
|
+
exit 1
|
|
15
|
+
fi
|
|
16
|
+
|
|
17
|
+
ID=$(bash -c 'source /etc/os-release && echo $ID')
|
|
18
|
+
if [[ "${ID}" != "ubuntu" && "${ID}" != "debian" ]]; then
|
|
19
|
+
echo "ERROR: cannot install on $ID distribution - only Ubuntu and Debian are supported"
|
|
20
|
+
exit 1
|
|
21
|
+
fi
|
|
22
|
+
fi
|
|
23
|
+
|
|
24
|
+
# 1. make sure to remove old beta if any.
|
|
25
|
+
if dpkg --get-selections | grep -q "^microsoft-edge-beta[[:space:]]*install$" >/dev/null; then
|
|
26
|
+
apt-get remove -y microsoft-edge-beta
|
|
27
|
+
fi
|
|
28
|
+
|
|
29
|
+
# 2. Install curl to download Microsoft gpg key
|
|
30
|
+
if ! command -v curl >/dev/null; then
|
|
31
|
+
apt-get update
|
|
32
|
+
apt-get install -y curl
|
|
33
|
+
fi
|
|
34
|
+
|
|
35
|
+
# GnuPG is not preinstalled in slim images
|
|
36
|
+
if ! command -v gpg >/dev/null; then
|
|
37
|
+
apt-get update
|
|
38
|
+
apt-get install -y gpg
|
|
39
|
+
fi
|
|
40
|
+
|
|
41
|
+
# 3. Add the GPG key, the apt repo, update the apt cache, and install the package
|
|
42
|
+
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /tmp/microsoft.gpg
|
|
43
|
+
install -o root -g root -m 644 /tmp/microsoft.gpg /etc/apt/trusted.gpg.d/
|
|
44
|
+
sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/edge stable main" > /etc/apt/sources.list.d/microsoft-edge-dev.list'
|
|
45
|
+
rm /tmp/microsoft.gpg
|
|
46
|
+
apt-get update && apt-get install -y microsoft-edge-beta
|
|
47
|
+
|
|
48
|
+
microsoft-edge-beta --version
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
set -e
|
|
3
|
-
set -x
|
|
4
|
-
|
|
5
|
-
cd /tmp
|
|
6
|
-
curl --retry 3 -o ./msedge_beta.pkg "$1"
|
|
7
|
-
# Note: there's no way to uninstall previously installed MSEdge.
|
|
8
|
-
# However, running PKG again seems to update installation.
|
|
9
|
-
sudo installer -pkg /tmp/msedge_beta.pkg -target /
|
|
10
|
-
rm -rf /tmp/msedge_beta.pkg
|
|
11
|
-
/Applications/Microsoft\ Edge\ Beta.app/Contents/MacOS/Microsoft\ Edge\ Beta --version
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
set -e
|
|
3
|
+
set -x
|
|
4
|
+
|
|
5
|
+
cd /tmp
|
|
6
|
+
curl --retry 3 -o ./msedge_beta.pkg "$1"
|
|
7
|
+
# Note: there's no way to uninstall previously installed MSEdge.
|
|
8
|
+
# However, running PKG again seems to update installation.
|
|
9
|
+
sudo installer -pkg /tmp/msedge_beta.pkg -target /
|
|
10
|
+
rm -rf /tmp/msedge_beta.pkg
|
|
11
|
+
/Applications/Microsoft\ Edge\ Beta.app/Contents/MacOS/Microsoft\ Edge\ Beta --version
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
$ErrorActionPreference = 'Stop'
|
|
2
|
-
$url = $args[0]
|
|
3
|
-
|
|
4
|
-
Write-Host "Downloading Microsoft Edge Beta"
|
|
5
|
-
$wc = New-Object net.webclient
|
|
6
|
-
$msiInstaller = "$env:temp\microsoft-edge-beta.msi"
|
|
7
|
-
$wc.Downloadfile($url, $msiInstaller)
|
|
8
|
-
|
|
9
|
-
Write-Host "Installing Microsoft Edge Beta"
|
|
10
|
-
$arguments = "/i `"$msiInstaller`" /quiet"
|
|
11
|
-
Start-Process msiexec.exe -ArgumentList $arguments -Wait
|
|
12
|
-
Remove-Item $msiInstaller
|
|
13
|
-
|
|
14
|
-
$suffix = "\\Microsoft\\Edge Beta\\Application\\msedge.exe"
|
|
15
|
-
if (Test-Path "${env:ProgramFiles(x86)}$suffix") {
|
|
16
|
-
(Get-Item "${env:ProgramFiles(x86)}$suffix").VersionInfo
|
|
17
|
-
} elseif (Test-Path "${env:ProgramFiles}$suffix") {
|
|
18
|
-
(Get-Item "${env:ProgramFiles}$suffix").VersionInfo
|
|
19
|
-
} else {
|
|
20
|
-
Write-Host "ERROR: Failed to install Microsoft Edge Beta."
|
|
21
|
-
Write-Host "ERROR: This could be due to insufficient privileges, in which case re-running as Administrator may help."
|
|
22
|
-
exit 1
|
|
23
|
-
}
|
|
1
|
+
$ErrorActionPreference = 'Stop'
|
|
2
|
+
$url = $args[0]
|
|
3
|
+
|
|
4
|
+
Write-Host "Downloading Microsoft Edge Beta"
|
|
5
|
+
$wc = New-Object net.webclient
|
|
6
|
+
$msiInstaller = "$env:temp\microsoft-edge-beta.msi"
|
|
7
|
+
$wc.Downloadfile($url, $msiInstaller)
|
|
8
|
+
|
|
9
|
+
Write-Host "Installing Microsoft Edge Beta"
|
|
10
|
+
$arguments = "/i `"$msiInstaller`" /quiet"
|
|
11
|
+
Start-Process msiexec.exe -ArgumentList $arguments -Wait
|
|
12
|
+
Remove-Item $msiInstaller
|
|
13
|
+
|
|
14
|
+
$suffix = "\\Microsoft\\Edge Beta\\Application\\msedge.exe"
|
|
15
|
+
if (Test-Path "${env:ProgramFiles(x86)}$suffix") {
|
|
16
|
+
(Get-Item "${env:ProgramFiles(x86)}$suffix").VersionInfo
|
|
17
|
+
} elseif (Test-Path "${env:ProgramFiles}$suffix") {
|
|
18
|
+
(Get-Item "${env:ProgramFiles}$suffix").VersionInfo
|
|
19
|
+
} else {
|
|
20
|
+
Write-Host "ERROR: Failed to install Microsoft Edge Beta."
|
|
21
|
+
Write-Host "ERROR: This could be due to insufficient privileges, in which case re-running as Administrator may help."
|
|
22
|
+
exit 1
|
|
23
|
+
}
|