Message ID | 87lfelqrni.fsf@guixSD.i-did-not-set--mail-host-address--so-tickle-me |
---|---|
State | Work in progress |
Headers | show |
Series | [bug#44926,WIP] Add dart-2.8.4 | expand |
Context | Check | Description |
---|---|---|
cbaines/applying patch | fail | View Laminar job |
cbaines/issue | success | View issue |
Le Sat, 28 Nov 2020 19:10:09 +0100, Nicolò Balzarotti <anothersms@gmail.com> a écrit : > Hi Guix! > As announced on guix-devel, I bootstrapped the dart compiler from > source. > > Following patches add dart 2.8.4 (latest release is 2.10, but I wanted > to be sure that this work in progress is fine before continuing, as I > fear that 4 other steps are required). > > NOTE: I tagged this as WIP as I've not yet disabled analytics yet (I > disabled it from the first added version, but I was wondering if I > need to disable it in _each_ version or if just the latest one is > fine. Patching all of them will require some time). > > (Each build takes ~20min on my server and ~60min on my laptop, and > there's a dozen of them) > > Let me know if there are major problems or if I can go on with > disabling analytics! > > Thanks, Nicolò > Impressive :) I can see a few issues in terms of style in these patches, but looking at the first dart version, it looks like it's going to work :) So, instead of using dart-zlib, dart-boringssl, ..., I'd recommend changing dart-pkg to something like this: (define* (dart-pkg name tag hash #:optional (url (string-append "https://github.com/dart-lang/" (string-replace-substring name "-" "_") ".git"))) (origin (method git-fetch) (uri (git-reference (url url) (commit tag))) ...)) That way, dart-zlib, ... also have a proper file name ;) I don't really like the fact that the build system simply bundles these dependencies instead of link dynamically to them, but I guess it's hard to do anything for that, and for bootstrap versions, I don't think it's too much of an issue. You should also make sure to clean up your patches: for instance patch 8 modifies things you've added before (I think it's only because of whitespace, but that's not clean). Thank you!
Julien Lepiller <julien@lepiller.eu> writes: > Le Sat, 28 Nov 2020 19:10:09 +0100, > Nicolò Balzarotti <anothersms@gmail.com> a écrit : > >> Hi Guix! >> As announced on guix-devel, I bootstrapped the dart compiler from >> source. >> >> Following patches add dart 2.8.4 (latest release is 2.10, but I wanted >> to be sure that this work in progress is fine before continuing, as I >> fear that 4 other steps are required). >> >> NOTE: I tagged this as WIP as I've not yet disabled analytics yet (I >> disabled it from the first added version, but I was wondering if I >> need to disable it in _each_ version or if just the latest one is >> fine. Patching all of them will require some time). >> >> (Each build takes ~20min on my server and ~60min on my laptop, and >> there's a dozen of them) >> >> Let me know if there are major problems or if I can go on with >> disabling analytics! >> >> Thanks, Nicolò >> > > Impressive :) > > I can see a few issues in terms of style in these patches, but looking > at the first dart version, it looks like it's going to work :) > > So, instead of using dart-zlib, dart-boringssl, ..., I'd recommend > changing dart-pkg to something like this: > > (define* (dart-pkg name tag hash #:optional > (url (string-append > "https://github.com/dart-lang/" > (string-replace-substring name "-" "_") > ".git"))) > (origin > (method git-fetch) > (uri (git-reference > (url url) > (commit tag))) > ...)) > Sure, I'll do this > That way, dart-zlib, ... also have a proper file name ;) > > I don't really like the fact that the build system simply bundles these > dependencies instead of link dynamically to them, but I guess it's hard > to do anything for that, and for bootstrap versions, I don't think it's > too much of an issue. Yeah I too don't like it, but I really never used (and don't like) the gn build system, so any change requires a lot of time. I know that we usually unbundle things, and if required I might try again. > > You should also make sure to clean up your patches: for instance patch > 8 modifies things you've added before (I think it's only because of > whitespace, but that's not clean). Ops, sorry! > > Thank you! Thank you Julien! I'll submit a v2 tomorrow.
From b75b8f98be9e565d78100e201414cf204b8ef197 Mon Sep 17 00:00:00 2001 From: nixo <nicolo@nixo.xyz> Date: Sat, 28 Nov 2020 16:59:58 +0100 Subject: [PATCH 20/20] gnu: Add dart-2.8.4. * gnu/packages/dart.scm (dart-2.8.4): New variable. --- gnu/packages/dart.scm | 81 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) diff --git a/gnu/packages/dart.scm b/gnu/packages/dart.scm index d706825d76..1ab0c1e82b 100644 --- a/gnu/packages/dart.scm +++ b/gnu/packages/dart.scm @@ -1354,3 +1354,84 @@ (alist-replace "dart" `(,dart-2.6.1) (package-native-inputs dart-2.6.1))))) + +(define-public dart-2.8.4 + (package + (inherit dart-2.7.2) + (version "2.8.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/dart-lang/sdk.git") + (commit version))) + (sha256 + (base32 + "0wgchkqplx6bjgb901rm583iqbmi7fy29c1xzhlddgmnz1x7yh6c")))) + (inputs + (append + `(("dart-pkg-stagehand" + ,(dart-pkg "stagehand" "v3.3.7" + "0xwssdfcl3isrfycazqhar52dms20zvg9g4zn8pmifc86zfmkcfh"))) + (replace-inputs + dart-2.7.2 + `(("dart-pkgtested-package-config" + ,(dart-pkg "package-config" "v1.9.2" + "0gaws9v3w95fmgn74wiyif0fdjx0dvivwpzk6a3gmqjp0jrr1rqh")) + ("dart-pkg-args" + ,(dart-pkg "args" "1.6.0" + "0lwms9wysfwk1dbzrgas3qfjmxrz07n2hlzvyb21dr5scjmvm8sx")) + ("dart-pkg-async" + ,(dart-pkg "async" "2.4.1" + "0447x7v58y8fqj3zfykbpy4lmp5w39p3psxa7kk3idjvq3rdqf53")) + ("dart-pkg-cli-util" + ,(dart-pkg "cli-util" "4ad7ccbe3195fd2583b30f86a86697ef61e80f41" + "1hgnck9g39z1vcnf0lysmb5sj4917l51p7hqwvkkf475nwdhfnxm")) + ("dart-pkg-dartdoc" + ,(dart-pkg "dartdoc" "v0.30.3" + "0xks7srhg0zwl6q9rzj9ralh91144yvhi378m144ydma4b9c3vac")) + ("dart-pkg-http-multi-server" + ,(dart-pkg "http_multi_server" "ea269f79321d659208402088f3297e8920a88ee6" + "0lfkw7kkghdm29h78hafjxyp01aj9whc6s9z0dhyyc56aar4jfhf")) + ("dart-pkg-intl" + ,(dart-pkg "intl" "0.16.1" + "0a87y8vy8zm2cpyq83f7anpfq0a6kgpphcl7cq3s96b0k9dvfpkl")) + ("dart-pkg-linter" + ,(dart-pkg "linter" "0.1.114" + "1cpkqb4pzks3xphx1vilplfmmlsxhs28pfzb9k0c70wgzm4biw91")) + ("dart-pkg-matcher" + ,(dart-pkg "matcher" "0.12.5" + "0y0qnx96sxrqfw92zy9ln678isbb6cl1gfk6lisgpch3q5d7q7f1")) + ("dart-pkg-path" + ,(dart-pkg "path" "1.6.2" + "0ag6bplqw7rpysgv77nsgx86758add9jszrp4v68xhld69vn5pvd")) + ("dart-pkg-pub" + ,(dart-pkg "pub" "3606265962da4248d34d352aa3d170aae4496a90" + "0sa9yvb4zx20v1h85d3i3hv917hp5hwcghrvzcl1r9afsprkjdln")) + ("dart-pkg-pub-semver" + ,(dart-pkg "pub-semver" "v1.4.4" + "1yg9fl7ynnrp8c8iax070zx6dyakj8fbghzrxmx4rnblak63ijsj")) + ("dart-pkg-shelf-packages-handler" + ,(dart-pkg "shelf-packages-handler" "2.0.0" + "1nhvj92kjag6ids8y4ld99p3v8qk6fgygc89yyi98xf3v6ijr01b")) + ("dart-pkg-source-map-stack-trace" + ,(dart-pkg "source-map-stack-trace" "2.0.0" + "0vq22isaypcfgrajfv0f6ww74cskbl8m171kq65rg9syxs50a96g")) + ("dart-pkg-source-span" + ,(dart-pkg "source-span" "1.7.0" + "055lw4x27am90shz4wa4xlnv44ndk12gd0965ffidys705xfk1cg")) + ("dart-pkg-stream-channel" + ,(dart-pkg "stream-channel" "2.0.0" + "02hs73jj4yg9sqqw2wjrrf179svdgrzamiaqmpncz3n3x12jk0hl")) + ("dart-pkg-watcher" + ,(dart-pkg "watcher" "0.9.7+14" + "1kgxisvfbhvr5q30776plh3xn7iy0ckhy4wpzsvp2pbd63kmi2wa")) + ("dart-pkg-web-socket-channel" + ,(dart-pkg "web-socket-channel" "1.0.15" + "1dcc91f1q6fl6jzyqaplg6cc5k67wcczb93z7gqnk6lijlqlmy6g")) + ("dart-pkg-yaml" + ,(dart-pkg "yaml" "2.2.0" + "1y5xwps838yys9aw72n2300p2r5jjvz6v4klsp38y55f9kfh2dax")))))) + (native-inputs + (alist-replace "dart" `(,dart-2.7.2) + (package-native-inputs dart-2.7.2))))) -- 2.29.2