Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upFix Windows nightly build #21545
Fix Windows nightly build #21545
Conversation
highfive
commented
Aug 30, 2018
|
Heads up! This PR modifies the following files:
|
|
This patch tries to include the merge modules provided by GStreamer in Servo's MSI installer. Unfortunately, it is currently failing during
Which is a bit confusing, as I am downloading the merge modules from https://gstreamer.freedesktop.org/data/pkg/windows/1.14.2/gstreamer-1.0-x86_64-1.14.2-merge-modules.zip, which are supposed to be for 64 bits (?). (FWIW I tried with the 32 bits version as well with the same result).
There are also a bunch of warnings like:
The installer is generated anyway and after execution the application folder contains a few new dirs:
Inside The generated <?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Product Id="*"
Name="Servo Tech Demo"
Manufacturer="Mozilla Research"
UpgradeCode="060cd15d-eab1-4614-b438-3988e3efdcf1"
Language="1033"
Codepage="1252"
Version="1.0.0">
<Package Id="*"
Keywords="Installer"
Description="Servo Tech Demo Installer"
Manufacturer="Mozilla Research"
InstallerVersion="200"
Platform="x64"
Languages="1033"
SummaryCodepage="1252"
Compressed="yes"/>
<MajorUpgrade AllowDowngrades="yes"/>
<Media Id="1"
Cabinet="Servo.cab"
EmbedCab="yes"/>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFiles64Folder" Name="PFiles">
<Directory Id="MozResearch" Name="Mozilla Research">
<Directory Id="INSTALLDIR" Name="Servo Tech Demo">
<Component Id="Servo"
Guid="95bcea71-78bb-4ec8-9766-44bc01443840"
Win64="yes">
<File Id="ServoEXE"
Name="servo.exe"
DiskId="1"
Source="C:\Users\harpo\servo\target\release\servo.exe"
KeyPath="yes">
<Shortcut Id="StartMenuServoTechDemo"
Directory="ProgramMenuDir"
Name="Servo Tech Demo"
WorkingDirectory="INSTALLDIR"
Icon="servo.exe"
Advertise="yes"/>
</File>
<File Id="IdlibcryptoMDdll"
Name="libcryptoMD.dll"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\libcryptoMD.dll"
DiskId="1"/>
<File Id="IdlibsslMDdll"
Name="libsslMD.dll"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\libsslMD.dll"
DiskId="1"/>
</Component>
<Merge Id="Idbase_crypto_1142_x86_64msm"
Language="1033"
SourceFile="C:\Users\harpo\servo\target\release\msi\temp\servo\msm\base-crypto-1.14.2-x86_64.msm"
DiskId="1"/>
<Merge Id="Idbase_system_10_1142_x86_64msm"
Language="1033"
SourceFile="C:\Users\harpo\servo\target\release\msi\temp\servo\msm\base-system-1.0-1.14.2-x86_64.msm"
DiskId="1"/>
<Merge Id="Idgstreamer_10_capture_1142_x86_64msm"
Language="1033"
SourceFile="C:\Users\harpo\servo\target\release\msi\temp\servo\msm\gstreamer-1.0-capture-1.14.2-x86_64.msm"
DiskId="1"/>
<Merge Id="Idgstreamer_10_codecs_1142_x86_64msm"
Language="1033"
SourceFile="C:\Users\harpo\servo\target\release\msi\temp\servo\msm\gstreamer-1.0-codecs-1.14.2-x86_64.msm"
DiskId="1"/>
<Merge Id="Idgstreamer_10_codecs_gpl_1142_x86_64msm"
Language="1033"
SourceFile="C:\Users\harpo\servo\target\release\msi\temp\servo\msm\gstreamer-1.0-codecs-gpl-1.14.2-x86_64.msm"
DiskId="1"/>
<Merge Id="Idgstreamer_10_codecs_restricted_1142_x86_64msm"
Language="1033"
SourceFile="C:\Users\harpo\servo\target\release\msi\temp\servo\msm\gstreamer-1.0-codecs-restricted-1.14.2-x86_64.msm"
DiskId="1"/>
<Merge Id="Idgstreamer_10_core_1142_x86_64msm"
Language="1033"
SourceFile="C:\Users\harpo\servo\target\release\msi\temp\servo\msm\gstreamer-1.0-core-1.14.2-x86_64.msm"
DiskId="1"/>
<Merge Id="Idgstreamer_10_devtools_1142_x86_64msm"
Language="1033"
SourceFile="C:\Users\harpo\servo\target\release\msi\temp\servo\msm\gstreamer-1.0-devtools-1.14.2-x86_64.msm"
DiskId="1"/>
<Merge Id="Idgstreamer_10_dvd_1142_x86_64msm"
Language="1033"
SourceFile="C:\Users\harpo\servo\target\release\msi\temp\servo\msm\gstreamer-1.0-dvd-1.14.2-x86_64.msm"
DiskId="1"/>
<Merge Id="Idgstreamer_10_editing_1142_x86_64msm"
Language="1033"
SourceFile="C:\Users\harpo\servo\target\release\msi\temp\servo\msm\gstreamer-1.0-editing-1.14.2-x86_64.msm"
DiskId="1"/>
<Merge Id="Idgstreamer_10_effects_1142_x86_64msm"
Language="1033"
SourceFile="C:\Users\harpo\servo\target\release\msi\temp\servo\msm\gstreamer-1.0-effects-1.14.2-x86_64.msm"
DiskId="1"/>
<Merge Id="Idgstreamer_10_encoding_1142_x86_64msm"
Language="1033"
SourceFile="C:\Users\harpo\servo\target\release\msi\temp\servo\msm\gstreamer-1.0-encoding-1.14.2-x86_64.msm"
DiskId="1"/>
<Merge Id="Idgstreamer_10_libav_1142_x86_64msm"
Language="1033"
SourceFile="C:\Users\harpo\servo\target\release\msi\temp\servo\msm\gstreamer-1.0-libav-1.14.2-x86_64.msm"
DiskId="1"/>
<Merge Id="Idgstreamer_10_net_1142_x86_64msm"
Language="1033"
SourceFile="C:\Users\harpo\servo\target\release\msi\temp\servo\msm\gstreamer-1.0-net-1.14.2-x86_64.msm"
DiskId="1"/>
<Merge Id="Idgstreamer_10_net_restricted_1142_x86_64msm"
Language="1033"
SourceFile="C:\Users\harpo\servo\target\release\msi\temp\servo\msm\gstreamer-1.0-net-restricted-1.14.2-x86_64.msm"
DiskId="1"/>
<Merge Id="Idgstreamer_10_playback_1142_x86_64msm"
Language="1033"
SourceFile="C:\Users\harpo\servo\target\release\msi\temp\servo\msm\gstreamer-1.0-playback-1.14.2-x86_64.msm"
DiskId="1"/>
<Merge Id="Idgstreamer_10_system_1142_x86_64msm"
Language="1033"
SourceFile="C:\Users\harpo\servo\target\release\msi\temp\servo\msm\gstreamer-1.0-system-1.14.2-x86_64.msm"
DiskId="1"/>
<Merge Id="Idgstreamer_10_visualizers_1142_x86_64msm"
Language="1033"
SourceFile="C:\Users\harpo\servo\target\release\msi\temp\servo\msm\gstreamer-1.0-visualizers-1.14.2-x86_64.msm"
DiskId="1"/>
<Directory Id="Idresources" Name="resources">
<Component Id="Idresources"
Guid="5700f161-1bef-4089-b7af-a2d8771b3399"
Win64="yes">
<CreateFolder/>
<File Id="Id_resources_ahem.css"
Name="ahem.css"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\ahem.css"
DiskId="1"/>
<File Id="Id_resources_android_params"
Name="android_params"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\android_params"
DiskId="1"/>
<File Id="Id_resources_badcert.html"
Name="badcert.html"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\badcert.html"
DiskId="1"/>
<File Id="Id_resources_badcert.jpg"
Name="badcert.jpg"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\badcert.jpg"
DiskId="1"/>
<File Id="Id_resources_cert_google_only"
Name="cert-google-only"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\cert-google-only"
DiskId="1"/>
<File Id="Id_resources_certs"
Name="certs"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\certs"
DiskId="1"/>
<File Id="Id_resources_Credits.rtf.mako"
Name="Credits.rtf.mako"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\Credits.rtf.mako"
DiskId="1"/>
<File Id="Id_resources_gatt_blocklist.txt"
Name="gatt_blocklist.txt"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\gatt_blocklist.txt"
DiskId="1"/>
<File Id="Id_resources_hsts_preload.json"
Name="hsts_preload.json"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\hsts_preload.json"
DiskId="1"/>
<File Id="Id_resources_iso_8859_8.css"
Name="iso-8859-8.css"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\iso-8859-8.css"
DiskId="1"/>
<File Id="Id_resources_neterror.html"
Name="neterror.html"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\neterror.html"
DiskId="1"/>
<File Id="Id_resources_not_found.html"
Name="not-found.html"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\not-found.html"
DiskId="1"/>
<File Id="Id_resources_prefs.json"
Name="prefs.json"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\prefs.json"
DiskId="1"/>
<File Id="Id_resources_presentational_hints.css"
Name="presentational-hints.css"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\presentational-hints.css"
DiskId="1"/>
<File Id="Id_resources_privatekey_for_testing.key"
Name="privatekey_for_testing.key"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\privatekey_for_testing.key"
DiskId="1"/>
<File Id="Id_resources_public_domains.txt"
Name="public_domains.txt"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\public_domains.txt"
DiskId="1"/>
<File Id="Id_resources_quirks_mode.css"
Name="quirks-mode.css"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\quirks-mode.css"
DiskId="1"/>
<File Id="Id_resources_quotes.css"
Name="quotes.css"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\quotes.css"
DiskId="1"/>
<File Id="Id_resources_rippy.png"
Name="rippy.png"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\rippy.png"
DiskId="1"/>
<File Id="Id_resources_self_signed_certificate_for_testing.crt"
Name="self_signed_certificate_for_testing.crt"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\self_signed_certificate_for_testing.crt"
DiskId="1"/>
<File Id="Id_resources_servo.css"
Name="servo.css"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\servo.css"
DiskId="1"/>
<File Id="Id_resources_servo.icns"
Name="servo.icns"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\servo.icns"
DiskId="1"/>
<File Id="Id_resources_Servo.ico"
Name="Servo.ico"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\Servo.ico"
DiskId="1"/>
<File Id="Id_resources_servo.png"
Name="servo.png"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\servo.png"
DiskId="1"/>
<File Id="Id_resources_servo.svg"
Name="servo.svg"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\servo.svg"
DiskId="1"/>
<File Id="Id_resources_servo64.png"
Name="servo64.png"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\servo64.png"
DiskId="1"/>
<File Id="Id_resources_tumbeast.png"
Name="tumbeast.png"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\tumbeast.png"
DiskId="1"/>
<File Id="Id_resources_user_agent.css"
Name="user-agent.css"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\user-agent.css"
DiskId="1"/>
</Component>
<Directory Id="Idahem" Name="ahem">
<Component Id="Idahem"
Guid="0bb19733-98aa-408a-8f10-53cfd93a1bb8"
Win64="yes">
<CreateFolder/>
<File Id="Id_resources_ahem_Ahem.ps"
Name="Ahem.ps"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\ahem\Ahem.ps"
DiskId="1"/>
<File Id="Id_resources_ahem_Ahem.sit"
Name="Ahem.sit"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\ahem\Ahem.sit"
DiskId="1"/>
<File Id="Id_resources_ahem_AHEM____.TTF"
Name="AHEM____.TTF"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\ahem\AHEM____.TTF"
DiskId="1"/>
<File Id="Id_resources_ahem_COPIED_FROM"
Name="COPIED-FROM"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\ahem\COPIED-FROM"
DiskId="1"/>
<File Id="Id_resources_ahem_COPYING"
Name="COPYING"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\ahem\COPYING"
DiskId="1"/>
<File Id="Id_resources_ahem_README"
Name="README"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\ahem\README"
DiskId="1"/>
</Component>
</Directory>
<Directory Id="Iduser_agent_js" Name="user-agent-js">
<Component Id="Iduser_agent_js"
Guid="cd66a0d5-a0be-4f55-b4c4-f15d938ff084"
Win64="yes">
<CreateFolder/>
<File Id="Id_resources_user_agent_js_00.example.js"
Name="00.example.js"
Source="C:\Users\harpo\servo\target\release\msi\temp\servo\resources\user-agent-js\00.example.js"
DiskId="1"/>
</Component>
</Directory>
</Directory>
</Directory>
</Directory>
</Directory>
<Directory Id="ProgramMenuFolder" Name="Programs">
<Directory Id="ProgramMenuDir" Name="Servo Tech Demo">
<Component Id="ProgramMenuDir" Guid="e04737ce-16eb-4977-9b4c-ed2db8a5a77d">
<RemoveFolder Id="ProgramMenuDir" On="both"/>
<RegistryValue Root="HKCU"
Key="Software\Mozilla Research\Servo Tech Demo"
Type="string"
Value=""
KeyPath="yes"/>
</Component>
</Directory>
</Directory>
</Directory>
<Feature Id="Complete" Level="1">
<ComponentRef Id="Servo"/>
<ComponentRef Id="Idresources"/>
<ComponentRef Id="Idahem"/>
<ComponentRef Id="Iduser_agent_js"/>
<ComponentRef Id="ProgramMenuDir"/>
<MergeRef Id="Idbase_crypto_1142_x86_64msm"/>
<MergeRef Id="Idbase_system_10_1142_x86_64msm"/>
<MergeRef Id="Idgstreamer_10_capture_1142_x86_64msm"/>
<MergeRef Id="Idgstreamer_10_codecs_1142_x86_64msm"/>
<MergeRef Id="Idgstreamer_10_codecs_gpl_1142_x86_64msm"/>
<MergeRef Id="Idgstreamer_10_codecs_restricted_1142_x86_64msm"/>
<MergeRef Id="Idgstreamer_10_core_1142_x86_64msm"/>
<MergeRef Id="Idgstreamer_10_devtools_1142_x86_64msm"/>
<MergeRef Id="Idgstreamer_10_dvd_1142_x86_64msm"/>
<MergeRef Id="Idgstreamer_10_editing_1142_x86_64msm"/>
<MergeRef Id="Idgstreamer_10_effects_1142_x86_64msm"/>
<MergeRef Id="Idgstreamer_10_encoding_1142_x86_64msm"/>
<MergeRef Id="Idgstreamer_10_libav_1142_x86_64msm"/>
<MergeRef Id="Idgstreamer_10_net_1142_x86_64msm"/>
<MergeRef Id="Idgstreamer_10_net_restricted_1142_x86_64msm"/>
<MergeRef Id="Idgstreamer_10_playback_1142_x86_64msm"/>
<MergeRef Id="Idgstreamer_10_system_1142_x86_64msm"/>
<MergeRef Id="Idgstreamer_10_visualizers_1142_x86_64msm"/>
</Feature>
<Icon Id="servo.exe" SourceFile="C:\Users\harpo\servo\target\release\servo.exe"/>
</Product>
</Wix>@Manishearth @larsbergstrom I could use some help here :) |
NiLSPACE
commented
Aug 31, 2018
I don't know if it matters, but according to GStreamer-rs' readme it uses GStreamer v1.12.3: https://github.com/sdroege/gstreamer-rs#gstreamer-binaries-1 |
Thanks for your comment. I assume that the That said, it may be worth trying with different binaries. |
|
I changed the approach here. Instead of using merge modules I chose to do the "Shared GStreamer" option as described in GStreamer docs, where we bundle the GStreamer installer inside Servo's installer. With the current patch, I don't get the missing GStreamer dlls error anymore. I am still seeing the one about the missing |
|
Hmm. Does the regular servo installer built with gstreamer disabled work
for you? I don't see why gstreamer would need nspr (maybe post-upgrade
mozjs does?)
…On Mon, Sep 3, 2018, 8:43 PM Fernando Jiménez Moreno < ***@***.***> wrote:
I changed the approach here. Instead of using merge modules I chose to do
the "Shared GStreamer" option as described in GStreamer docs
<https://gstreamer.freedesktop.org/documentation/deploying/windows.html>,
where we bundle the GStreamer installer inside Servo's installer.
With the current patch, I don't get the missing GStreamer dlls error
anymore. I am still seeing the one about the missing nspr4.dll though.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#21545 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/ABivSBVUUNl0Tt_8-DhUcrs1I-PMEHtTks5uXUb-gaJpZM4WT1lv>
.
|
|
I haven't tried disabling GStreamer, but I can confirm that this comes from I tried moving it manually into Servo's installation folder and it fixes the missing dll issue. Unfortunately, that one does not seem to be the last issue. Now Servo is opening and immediately closing without loading anything or providing any ouput or error message :_( |
|
Looks like the spidermonkey upgrade (or some other change) _also_ broke the
installer :)
(We should probably periodically test these things on fresh VMs)
…On Mon, Sep 3, 2018, 9:12 PM Fernando Jiménez Moreno < ***@***.***> wrote:
I haven't tried disabling GStreamer, but I can confirm that this comes
from mozjs. We generate this dll while building mozjs_sys, so we can get
it from there.
I tried moving it manually into Servo's installation folder and it fixes
the missing dll issue. Unfortunately, that one does not seem to be the last
issue. Now Servo is opening and immediately closing without loading
anything or providing any ouput or error message :_(
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#21545 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/ABivSIFbJTlRRfop2-DL54fdTEhzpyqYks5uXU3SgaJpZM4WT1lv>
.
|
|
I confirmed again that the missing I am trying to get additional information about the crash, but unfortunately I'm currently unable to create dev builds on Windows #21604 |
|
r=me cc @larsbergstrom is this method of packaging consistent with the license? We are shipping the gstreamer MSI in the bundle, but it's still dynamically linked |
|
@Manishearth Yes. Our only restrictions with LGPL code and packaging are around not linking it statically into the code. That said, we may have some license disclosure rules that we should look into as a follow-up issue. i.e., we may need to plunk a LICENSES file into the toplevel of our installation. |
|
Looks ready to land then (unless you want to plop in the LICENSE file now) Needs tidy fixes:
|
|
The CC @jdm |
|
a56dc48 fixes the missing |
|
r? @Manishearth for the additional commit fixing the If you are ok with this last change, I think we are good here and we can merge it as is. We can add the LICENSES and EULA later. |
|
@bors r+ |
|
Travis has a "can't find crate fontsan" error, which seems weird? |
|
@bors r- Let's retrigger travis first. r=me if travis is passing |
Does not seem to be related. It's been happening for the last few builds https://travis-ci.org/servo/servo/builds (You probably want to use @bors-servo here :P ) |
|
I filed #21677 for that |
|
@bors r+ |
|
@bors-servo r+ |
|
|
|
@bors-servo r=Manishearth |
|
|
Fix Windows nightly build <!-- Reviewable:start --> This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/21545) <!-- Reviewable:end -->
|
|
|
@bors-servo r=Manishearth |
|
|
Fix Windows nightly build <!-- Reviewable:start --> This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/21545) <!-- Reviewable:end -->
|
|
|
@bors-servo retry |
|
|
|
|
ferjm commentedAug 30, 2018
•
edited by SimonSapin
This change is