Closed laamalif closed 4 years ago
Thanks for the report @laamalif. I haven't attempted a Chromium build in a few weeks, but will kick something off and try to debug. I was previously able to build and am running '81.0.4027.2' if you want to give that a shot in the mean time.
I was unfortunately not able to reproduce this issue, my latest build with Chromium 81.0.4040.6
went through fine.
RattlesnakeOS Build SUCCESS
Device: crosshatch
Stack Version: 10.0.1
Stack Region: us-west-2
Release Channel: crosshatch-stable
Instance Type: c5.18xlarge
Instance Region: us-east-2
Instance IP: 18.224.183.124
Build Date: 2020.01.31.04
Elapsed Time: 2hrs 32min 53sec
AOSP Build: QQ1A.200105.002
AOSP Branch: android-10.0.0_r21
Chromium Version: 81.0.4040.6
F-Droid Version: 1.8-alpha1
F-Droid Priv Extension Version: 0.2.11
Build Reason: 'Chromium version 81.0.4027.2 != 81.0.4040.6'
I am seeing this with 81.0.4027.2 as well.
Hmm.. I've had no issues building 81.0.4027.2
or latest 81.0.4040.6
. Normally Chromium build issues like these are easy to reproduce. The only difference between our builds appears to be microg patches, but not sure how that would affect the Chromium build process.
I experienced the same error last night with version 81.0.4040.6
, vanilla RattlesnakeOS with a brand new config and deployment. No special changes. Do you think it would work if I changed CHROME_CHANNEL
to stable?
Stable is still on 79, whereas Q needs 80 or newer. Beta is on 80 though. So instead of dev, it may be worth trying beta (and stable in a few days when 80 hits stable).
Edit: It looks like OP already tried 80.x. So not sure anymore.
Maybe it has to do with too much build parallelization? I'll try a new build with --jobs
in Chromium's build hard set to something like 4 or 8 instead of c5.4xlarge
's 16 from nproc
.
@corrmaan - I was also thinking it could be related to build parallelization, but the original report was on a c5.18xlarge
which has many more cores. So far I've had 1 successful build on 81.0.4027.2
and 2 successful builds on 81.0.4040.6
all on a c5.18xlarge
instances. I'll try to kick off a build on a smaller instance type to see if I can reproduce.
Sounds good. My comment above was just a guess on how the Chromium build operates - after looking in to it it seems to me like any --jobs
settings are handled by autoninja
and wrapped up in some python scripts.
Could also be related to build caching as well since the webview is being built first and then the browser is being built without cleaning first (this was intended to reduce build time). It would be interesting to see if this could reproduce if:
I'm still just trying to get a solid repro at this point; I kicked off a c5.4xlarge build and hoping I bump into the issue easier with that.
Nice, I was able to reproduce this issue with a c5.4xlarge. So the question becomes what to do to fix it. I could:
In the mean time, I'm going to play around with swapping the build order to see what happens in that case.
Looks like swapping the build order to first build the browser and then webview was successful on c5.4xlarge. I might do that at least temporarily until I figure out how to properly fix this situation. I'll try to get a new version out soon with that change.
Nice, thanks @dan-v. I was going to say that removing Chromium entirely seems like a step backwards. At least maybe instead just include an option to disable it. Cleaning between builds seems reasonable enough. Trichrome sounds like a good direction to head in too though. Whatever is easiest!
Pushed a new release with the ordering workaround - hopefully it holds up for the time being. If someone gets a chance to test it out and could report back that would be a great help.
I can confirm that the build passed. Slight OT, but wanted to check if anyone has this chromium issue. On Q, I have never been able to download files in chromium. For eg., downloading a test pdf file (https://www.w3.org/WAI/ER/tests/xhtml/testfiles/resources/pdf/dummy.pdf) throws an "SD card not found" error. I wonder if this is also microg related somehow as that is the only deviation in my build.
Thanks @dan-v, that worked for me too. Sorry @pgera but I haven't ran in to that issue before, but maybe I've never tried downloading files on Chromium either.
Location selection doesnt work on chromium while downloading files. I've also noticed that chromium keep crashing on video playback other than youtube site. maybe codec issue?
@pgera - I can confirm that there appears to be an issue with that. It seems like it downloads it but it says 'failed to open' and it doesn't appear to be on disk. Not entirely sure what this issue is.
@laamalif - The crash on video playback issue is likely the same as seen here: https://github.com/GrapheneOS/Vanadium/pull/52. It sounds like there is a patch that works around the primary issue, but right now I don't support patches of Chromium. I'm gonna wait and see how the issue plays out for now.
@dan-v Do you have plan to support patches for Chromium in future? I think having minimal or webview customization will be good option, in the end you still need another browser for day to day task.
Chromium patch support will be nice feature to have in my opinion or at least customization of webview only build.
@laamalif - i have an enhancement open for it https://github.com/dan-v/rattlesnakeos-stack/issues/104, but I haven't had much time to implement new features lately and have been in maintenance mode for the most part (hopefully that changes in the future as there's a lot i'd like to add/change with this project). Anyways, for now I'm happy to take PRs for enhancements like this.
Closing this and opened up an enhancement to move to Trichrome (https://github.com/dan-v/rattlesnakeos-stack/issues/152)
The download failure is being tracked upstream at https://bugs.chromium.org/p/chromium/issues/detail?id=1045642
and downstream at: https://github.com/GrapheneOS/Vanadium/issues/56 https://github.com/bromite/bromite/issues/485
Prerequisites
Description
Initial build failed due to: chrome/common/buildflags.h' file not found
Tested chromium versions: 81.0.4040.6, 80.0.3971.4, 80.0.3987.78
Steps to Reproduce
Platform
Linux
Full Config Used for Setup
You can mask stack name and email from here.
Email Notification Output
Should look something like this. You can mask stack name from here and you may want to verify contents of log output before pasting.
Full log