!djTaTBQyWEPRQxrPTb:nixos.org

Nixpkgs Architecture Team

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

Load older messages


SenderMessageTime
10 Jul 2022
@k900:0upti.meK900And which has no dentry cache15:34:09
@qyliss:fairydust.spaceAlyssa Rossbecause you have to store the whole tree every time15:34:15
@qyliss:fairydust.spaceAlyssa Rosswhereas with two levels of prefix directories you have to store 1/26^2 of the tree every time15:34:36
@k900:0upti.meK900Man I really wish I had the brain juice to push this sort of stuff 15:34:55
@k900:0upti.meK900I'd love to see it happen but it's so much coordination work and I'm already burned out as is15:35:48
@kevincox:matrix.orgkevincox Well you store the while tree but 99% is the same as last time so it compresses just like any other blob with a 1-line change. 15:35:49
@infinisil:matrix.orginfinisil K900: This team should help with that :D 15:36:20
@qyliss:fairydust.spaceAlyssa Rossthat's true, but I don't compression will help as much as just not having to re-store something in the first place15:36:25
@qyliss:fairydust.spaceAlyssa Rossadditionally, it means diffing the whole tree rather than diffing three smaller tries15:36:47
@qyliss:fairydust.spaceAlyssa Rossfor which compression is an anti-optimisation15:37:09
@infinisil:matrix.orginfinisil

Problem: This is the list of <=2 letter attribute names in pkgs.*:

[ "R" "ag" "ao" "at" "b4" "bb" "bc" "cl" "cv" "db" "di" "ed" "em" "es" "et" "f2" "f3" "fd" "fq" "fx" "gd" "gh" "gn" "go" "gt" "gv" "gx" "h" "h2" "h3" "hr" "ht" "hy" "i3" "ii" "io" "ir" "iv" "iw" "ix" "j" "jc" "jd" "jl" "jo" "jp" "jq" "jx" "k6" "kn" "ko" "kt" "lf" "lr" "lv" "ly" "m4" "mc" "mg" "mm" "mr" "mu" "mx" "n3" "nb" "ne" "nq" "oh" "oq" "ox" "p4" "pn" "ps" "pt" "pv" "rc" "rq" "rr" "rs" "rt" "rw" "rx" "s6" "sd" "sl" "so" "sq" "st" "su" "sx" "t" "td" "tk" "tm" "ts" "tv" "tz" "ua" "up" "uq" "v8" "vc" "vp" "ws" "wt" "wv" "xa" "xd" "xe" "xh" "xv" "xz" "yi" "yj" "yq" "z3" "zk" "zx" "zz" ]
15:37:46
@qyliss:fairydust.spaceAlyssa Rossinfinisil: you can choose the prefixes based on some criteria apart from length, that's fine15:38:25
@qyliss:fairydust.spaceAlyssa Rosse.g. I saw some package list (maybe from Debian?) that mostly had one letter prefixes but also had a ones for "liba", "libb", etc.15:38:49
@infinisil:matrix.orginfinisilIf we want to do auto-calling of these packages, then the attribute name should be determined from the file path though 🤔15:39:27
@qyliss:fairydust.spaceAlyssa Rossthis doesn't prevent that?15:39:43
@qyliss:fairydust.spaceAlyssa Rossattr name is just the last component of the path15:39:49
@infinisil:matrix.orginfinisilAh I see15:39:54
@qyliss:fairydust.spaceAlyssa Ross"pkgs/prefixed/libg/libgit2"15:40:24
@qyliss:fairydust.spaceAlyssa Rosshttps://sources.debian.org/ is what I was thinking of15:40:52
@infinisil:matrix.orginfinisil For e.g. R, how about pkgs/prefixed/R/R/R/default.nix? 15:41:41
@infinisil:matrix.orginfinisilOr would that be too weird15:41:53
@qyliss:fairydust.spaceAlyssa Rossif we say there are always exactly two levels, that's fine15:42:22
@kevincox:matrix.orgkevincox
In reply to @infinisil:matrix.org
If we want to do auto-calling of these packages, then the attribute name should be determined from the file path though 🤔
Technically the other way around. With the attribute name we need to be able to find the file.
15:44:42
@kevincox:matrix.orgkevincox Maybe both if we need to support iteration. 15:44:55
@qyliss:fairydust.spaceAlyssa RossHydra needs to be able to iterate15:45:21
@kevincox:matrix.orgkevincox So we need to be able to go both ways. Otherwise we still need to construct the full attrs for every eval. 15:46:02
@infinisil:matrix.orginfinisilIt's very easy to go both ways15:47:30
@kevincox:matrix.orgkevincox We can also consider a "slow path" or hack for hydra-type build all. But that probably isn't necessary. 15:47:36
@k900:0upti.meK900 crates.io does a weird thing 15:49:24
@k900:0upti.meK900They have 1/a.json, 2/aa.json, 3/aaa.json, and then aa/aa/aaaa.json etc15:49:59

Show newer messages


Back to Room ListRoom Version: 9