| 26 May 2021 |
@gytis-ivaskevicius:matrix.org | In reply to @andi:kack.it The good parts about our bash is that it is extensible. You don't have to rebuild the world if you add new features to the build env as you can just pull in some setup hook that is being sourced. how is that different from pretty much any scripting language? you just eval some code | 10:30:22 |
Jonas Chevalier | the main reason why bash works well is that the program can be composed from a number of "chunks" for each phases | 10:30:41 |
andi- | Yeah sure but it has to be not painful to implement and having to go back to the stdenv code must be rare. | 10:30:50 |
@gytis-ivaskevicius:matrix.org | In reply to @zimbatm:numtide.com the main reason why bash works well is that the program can be composed from a number of "chunks" for each phases yeah, but really - basically any shell can do that and then some | 10:31:27 |
@gytis-ivaskevicius:matrix.org | I noted im pretty interested in ion shell https://doc.redox-os.org/ion-manual/html/ Maybe it would be cool to try to build some rewrite of mkderivation just for fun :D | 10:32:26 |
andi- | If we think about changing stdenv we might as well think about using structured attributes everywhere. Does ION support JSON out of the box? | 10:32:31 |
@gytis-ivaskevicius:matrix.org | In reply to @andi:kack.it If we think about changing stdenv we might as well think about using structured attributes everywhere. Does ION support JSON out of the box? i dont think so. Probably nu shell does tho | 10:32:58 |
@gytis-ivaskevicius:matrix.org |  Download image.png | 10:33:15 |
@gytis-ivaskevicius:matrix.org | 👀 | 10:33:19 |
Jonas Chevalier | it's not a middle finger :) | 10:33:34 |
andi- | Jonas Chevalier: you might have run into the same issue as I did :D | 10:33:37 |
Jonas Chevalier | it's supposed to be an index | 10:33:41 |
@gytis-ivaskevicius:matrix.org | In reply to @andi:kack.it If we think about changing stdenv we might as well think about using structured attributes everywhere. Does ION support JSON out of the box? on other hand ion shell is quite new - i bet PR with partial jq would be welcome :D | 10:34:08 |
@gytis-ivaskevicius:matrix.org | I started playing around with their codebase, fixed autocompletion (partially) | 10:34:30 |
@gytis-ivaskevicius:matrix.org | Really want to get it to shape | 10:34:42 |
andi- | In reply to @zimbatm:numtide.com it's supposed to be an index Googling that icon shows middle finger :P | 10:34:47 |
Jonas Chevalier | oops, my bad | 10:35:12 |
Jonas Chevalier | ahem :) | 10:35:35 |
@gytis-ivaskevicius:matrix.org | Do you guys think that it would be worth replacing bash within few years timeline? 🤔 | 10:36:03 |
andi- | If it provides benefits over just not being bash :D | 10:36:21 |
@gytis-ivaskevicius:matrix.org | (And honestly i'd love to see some linux disto that is like "fuck posix, and other old standards") | 10:36:51 |
andi- | If I can write more nix code instead of bash for complex builds. stdenv.doBuild { steps = [ (mkDir "foo") (chDir "foo") (invoke "make") ]; } | 10:37:01 |
Jonas Chevalier | at the moment we don't have much visibility on how much bash is an overhead to build times | 10:37:02 |
@gytis-ivaskevicius:matrix.org | In reply to @andi:kack.it If it provides benefits over just not being bash :D How much value are we talking about? | 10:37:07 |
Jonas Chevalier | I bet there is a factor of 10 available for small derivations | 10:37:17 |
@gytis-ivaskevicius:matrix.org | In reply to @zimbatm:numtide.com I bet there is a factor of 10 available for small derivations oh yeah, in fact maybe small binary or nix builtin should be written for trivial-builders.nix | 10:37:54 |
andi- | Oh yes | 10:37:56 |
andi- | When I was working on my package set it became so obvious how slow bash is :/ | 10:38:15 |
andi- | Simply not having any stdenv was so much fast :D | 10:38:31 |
andi- | In reply to @gytis-ivaskevicius:matrix.org How much value are we talking about? I think a guix style benefit would be nice but probably not realistic as they also execute guile within the build. | 10:39:16 |