FS#77107 - [dart] Don't simply download the binary from google servers

Attached to Project: Community Packages
Opened by Daniele Basso (tiziodcaio) - Friday, 13 January 2023, 00:57 GMT
Last edited by George Rawlinson (rawlinsong) - Thursday, 22 June 2023, 08:58 GMT
Task Type Feature Request
Category Packages
Status Closed
Assigned To George Rawlinson (rawlinsong)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No


Description: After a lot of studies of google's infrastructures for implement dart's sdk build system, I've created a PKGBUILD that potentially should be replacing the actual one, building dart-sdk from source using system clang and pulling only what's necessary (totally """only""" 3GB of $srcdir), creating a binary ~40MB smaller.

See the AUR package dart-system for more details and testing...
This task depends upon

Closed by  George Rawlinson (rawlinsong)
Thursday, 22 June 2023, 08:58 GMT
Reason for closing:  Implemented
Additional comments about closing:  3.0.2-1
Comment by Daniele Basso (tiziodcaio) - Thursday, 02 February 2023, 18:11 GMT Comment by Christian Heusel (gromit) - Sunday, 14 May 2023, 16:17 GMT
Is this solving an actual problem or does it just convert the package source from binary to source based?
Comment by Daniele Basso (tiziodcaio) - Monday, 15 May 2023, 02:21 GMT
It's the second one. It's a feature request.
Comment by loqs (loqs) - Saturday, 20 May 2023, 22:06 GMT
@tiziodcaio have you tried building the package in a clean chroot [1]? It was missing a makedepends on git for git sources then python-httplib2 and python-six needed by depot_tools/gclient.py it then fails in build() [2].

[1] https://wiki.archlinux.org/title/DeveloperWiki:Building_in_a_clean_chroot
[2] dart-system-2.19.0-2-x86_64-build.log
Comment by loqs (loqs) - Friday, 26 May 2023, 16:03 GMT
@tiziodcaio please take a look at the attached diff to dart-system which builds for me. I changed the use of gclient.py to match that of the electron package I also added lld and llvm to makedepends in addition to the additions mentioned in my previous comment.
Comment by Daniele Basso (tiziodcaio) - Sunday, 28 May 2023, 00:34 GMT
Great! Now I'll update the package and see what will happen
Comment by George Rawlinson (rawlinsong) - Wednesday, 21 June 2023, 20:19 GMT
I’ll have a look at this, and if I’m happy with it, it’ll be implemented.
Comment by Christian Heusel (gromit) - Wednesday, 21 June 2023, 21:56 GMT
There now is a merge request for this (internal ownly) where I commited the suggestions by @loqs and @tiziodcaio while preserving the authorship of the actual changes:
Comment by George Rawlinson (rawlinsong) - Thursday, 22 June 2023, 08:58 GMT
MR accepted.

Sidenote: I am horrified by how complicated the build system is. I can't reliably cache any of whatever it downloads, so I *really* hope I won't have to do much poking for future bug reports.