!djTaTBQyWEPRQxrPTb:nixos.org

Nixpkgs Architecture Team

235 Members
https://github.com/nixpkgs-architecture, weekly public meetings on Wednesday 15:00-16:00 UTC at https://meet.jit.si/nixpkgs-architecture52 Servers

Load older messages


SenderMessageTime
29 Jul 2022
@profpatsch:augsburg.oneprofpatschI might do a little experiment with chez and see how it goes17:20:25
@infinisil:matrix.orginfinisilOther than bash sucking and us wanting to replace it with something better, are there any other motivations?17:21:00
@j-k:matrix.orgj-kI thought the main problem with stdenv mkDerivation is how c & make centric it is17:21:32
@profpatsch:augsburg.oneprofpatschI don’t see a big reason for replacing bash tbh, I’d rather start by designing a replacement for the horrible phases abstraction17:21:35
@profpatsch:augsburg.oneprofpatschAnd the hook stuff17:21:46
@profpatsch:augsburg.oneprofpatschWhich is next to impossible to grok, so all you can do is cargo-cult17:22:24
@qyliss:fairydust.spaceAlyssa Rossyeah, I don't think it's that important17:22:36
@qyliss:fairydust.spaceAlyssa RossI think replacing it with OSH would be a good step, just because it'd be so easy17:22:51
@qyliss:fairydust.spaceAlyssa RossAnd be an evolutionary improvement.17:22:57
@infinisil:matrix.orginfinisilI think bash is holding us back from doing improvements to phases and co.17:23:02
@profpatsch:augsburg.oneprofpatschalthough both might be coupled, because the phases thing is a natural extension of using lots of script interpolation17:23:03
@profpatsch:augsburg.oneprofpatschinfinisil: weak agree17:23:15
@profpatsch:augsburg.oneprofpatschimo the first mistake was not using the fact that nix drvs are nix lists of argv17:23:48
@profpatsch:augsburg.oneprofpatschbut, like, I don’t see how anything but incremental improvements can work, because the amount of code is so big and there’s next to no static analysis possible.17:25:22
@profpatsch:augsburg.oneprofpatschSo OSH sounds like a good step, iff its performance is better or the same17:25:43
@profpatsch:augsburg.oneprofpatschI don’t have a strong will/desire to work on any of this tho (besides my own tiny experiments), so I will stop monologuing now :P17:26:48
@infinisil:matrix.orginfinisilIs the idea to use OSH-specific features to implement better phases and co. then?17:26:59
@qyliss:fairydust.spaceAlyssa Rossno, it's orthogonal17:30:07
@qyliss:fairydust.spaceAlyssa Rossthe idea is to just have a better shell17:30:14
@j-k:matrix.orgj-kwould anything need to change with escapeShellArg need modification for oil?17:41:25
@j-k:matrix.orgj-k * would anything with escapeShellArg need modification for oil?17:41:38
@qyliss:fairydust.spaceAlyssa RossOSH is designed to be bash-compatible17:46:34
@qyliss:fairydust.spaceAlyssa Rossthere's a whole RFC exploring this17:46:46
@infinisil:matrix.orginfinisilI'm asking myself the question why we care about a single language at all, couldn't we allow multiple?17:59:00
@infinisil:matrix.orginfinisilE.g. what if every phase (if that concept were kept) could be in its own language, and we'd have an interface for passing data between phase18:00:17
@infinisil:matrix.orginfinisil * E.g. what if every phase (if that concept were kept) could be in its own language, and we'd have an interface for passing data between phases18:00:19
@kevincox:matrix.orgkevincoxI think for nixpkgs having a single language improves uniformity allowing any contributor to easily pick up and work on any packages. I like strong conventions. That being said if we are adding new Nix primitives I would like to ensure that those are available to all languages for those who don't want to adopt nixpkgs conventions.18:00:25
@kevincox:matrix.orgkevincox
In reply to @infinisil:matrix.org
E.g. what if every phase (if that concept were kept) could be in its own language, and we'd have an interface for passing data between phases
This strikes me as likely to add far more complexity than value.
18:00:56
@infinisil:matrix.orginfinisilBeing able to easily contribute is a good argument18:01:48
@infinisil:matrix.orginfinisil I had one other use case in mind: Being able to easily extend phases (e.g. current hooks) in e.g. .overrideAttrs. This use case would work well with multiple languages 18:02:56

Show newer messages


Back to Room ListRoom Version: 9