5 Jun 2025 |
yadov3k | https://github.com/NixOS/nix/blob/master/docker.nix#L152 https://hub.docker.com/r/nixos/nix | 07:34:14 |
6 Jun 2025 |
| h0nig2k joined the room. | 08:35:57 |
| @joei:envs.net left the room. | 15:50:00 |
| jakobkukla joined the room. | 22:32:31 |
7 Jun 2025 |
| matrixrooms.info mod bot (does NOT read/send messages and/or invites; used for checking reported rooms) left the room. | 22:13:53 |
| matrixrooms.info mod bot (does NOT read/send messages and/or invites; used for checking reported rooms) joined the room. | 23:45:28 |
8 Jun 2025 |
| pveierland joined the room. | 00:19:02 |
pveierland | How can the nix eval cache database store attribute names in a text database column (unicode) if attribute names are nix strings that do not have character encoding? | 00:19:18 |
emily | have you tried to break it? | 00:29:00 |
emily | I wouldn't be surprised if it just breaks | 00:29:03 |
emily | IIRC passing non-ASCII attribute names via the CLI might not work though | 00:29:09 |
pveierland | No, just trying to confirm my understanding of the data model | 00:30:14 |
emily | I suspect the answer is that it wasn't really thought about :) | 00:35:01 |
emily | Nix string handling is sort of weird | 00:35:13 |
pveierland | Cool, will try my best to accommodate byte strings then :) | 00:36:44 |
| zitrone joined the room. | 01:02:47 |
pveierland | (Details in this crate were quite helpful to understand path encoding handling: https://docs.rs/gix-path/latest/gix_path/) | 02:00:45 |
emily | I wouldn't recommend supporting non-UTF-8 attrpaths in tooling. | 12:57:08 |
emily | you run into the "Makefile problem" (https://wiki.mercurial-scm.org/EncodingStrategy#The_.22makefile_problem.22) quickly – text has to be able to refer to paths | 12:57:37 |
emily | see https://docs.rs/camino/latest/camino/ for a perspective on this as applied to file paths | 12:58:00 |
emily | anyway, nix eval nixpkgs#é and nix eval nixpkgs#'"é"' both behave bizarrely (they interpret nixpkgs as a path for some reason), so I suspect ASCII is the only reliable thing | 12:59:00 |
pveierland | I agree, it would be way easier to just do a possibly lossy conversion of all attrpaths and paths to UTF8, and it would probably result in fewer bugs overall + less code and specialized parsers etc | 13:50:15 |
pveierland | Just trying to avoid losing any necessary representational ability | 13:51:09 |
pveierland | Then again, if a tool like git was rebuilt today maybe it would just insist UTF8 everywhere | 13:51:36 |
pveierland | I guess the issue for tools such as nix and git is that they need to work with such a broad set of environments so it might not be possible to make that assumption yet | 13:53:54 |
pveierland | Redacted or Malformed Event | 13:54:30 |
emily | Nix not doing Unicode properly is just historical reasons I think. | 15:04:07 |
emily | it's not like it makes it handle e.g. UTF-16 better, because it can't do NUL bytes either. | 15:04:20 |
dramforever | well, those should be url encoded, right? | 16:32:45 |
dramforever | i guess it also breaks with non-ascii separately some other way | 16:33:47 |