| 1 Jul 2025 |
roberth | Right, so to clarify, if your main goal is to distribute a built game, you should not use builtin fetchers for anything but Nix expressions, because those will be intermediate results, and only in case of FODs it's possible to optimize those away by virtue of the dependent being available and having no reference to the source | 12:05:59 |
roberth | So what we're left with is the "developer" use case | 12:06:15 |
emily | it is "reasonably" pure since things are still addressed by hash but it seems to me the only way to get builds involving >40 GiB of assets without years of experimental work on the Nix end | 12:06:25 |
roberth | For development, presumably you want a quick build, so making asset processing fine grained with a derivation per asset would be the thing to do | 12:06:59 |
magic_rb | To clarify, i dont have an immediate use case for this. It would be nice, but so far i dont have a game id be developing lol | 12:07:17 |
| sinan changed their profile picture. | 12:07:52 |
magic_rb | So this was more something i wanted to look at personally, but it seems i severely underestimated the complexity | 12:09:11 |
roberth | If you're ok with some eagerness for now, the complexity isn't so bad | 12:09:57 |
roberth | This one's the easiest to implement, and it can follow the LFS pattern | 12:10:20 |
magic_rb | Honestly even the eager version would be nice, currently it just leaves a bunch of dangling symlinks | 12:10:45 |
magic_rb | So option one, "deference it completely and return the file contents" | 12:11:07 |
roberth | yep | 12:11:16 |
roberth | That one can follow the structure of the LFS implementation | 12:11:40 |
magic_rb | Can it be done as a plugin or does it have to be done in tree? | 12:11:59 |
magic_rb | While experimenting a plugin would be much easier | 12:12:10 |
roberth | (oh, it quoted the whole message lol) | 12:12:11 |
roberth | I don't feel like plugins are easier because I don't think libfetchers plugins have been done, but I could be wrong | 12:13:00 |
magic_rb | Well ill trust you on this one, i know nothing about nix's codebase, ill see if i get to this till nixcon | 12:13:35 |
magic_rb | Thanks for the chat robert | 12:14:35 |
roberth | Glad I could help :) | 12:32:02 |
| 2 Jul 2025 |
| @michael.zeagler:matrix.org left the room. | 02:12:28 |
| 3 Jul 2025 |
aleksana 🏳️⚧️ (force me to bed after 18:00 UTC) | Dumb question, why is queryDerive in perl binding having the different output from nix derivation show? And the former sometimes doesn't exist, for example for FOD derivation | 03:35:44 |
aleksana 🏳️⚧️ (force me to bed after 18:00 UTC) | => diff <(nix derivation show /nix/store/l8k0pylnpwqygghg81xl0xd2gh6mwx51-hyprland-0.49.0.drv) <(nix derivation show /nix/store/wr5llaxf7b2hs9h4w57r1in3p27gip19-hyprland-0.49.0.drv)
2c2
< "/nix/store/l8k0pylnpwqygghg81xl0xd2gh6mwx51-hyprland-0.49.0.drv": {
---
> "/nix/store/wr5llaxf7b2hs9h4w57r1in3p27gip19-hyprland-0.49.0.drv": {
54a55,60
> "/nix/store/07m7dxvrn127dxbkw1z560f9lqp0k1fy-systemd-257.6.drv": {
> "dynamicOutputs": {},
> "outputs": [
> "dev"
> ]
> },
103c109
< "/nix/store/8crp9ab8mh8n9px3jpybirplvyqmvyfi-aquamarine-0.8.0.drv": {
---
> "/nix/store/88mr8yy390m73mml6j1yydssn4kgv2nw-xwayland-24.1.8.drv": {
106c112
< "dev"
---
> "out"
145,150d150
< "/nix/store/dnlpqxhg50xmwxs85jqgzd29h4x8d2y9-systemd-257.6.drv": {
< "dynamicOutputs": {},
< "outputs": [
< "dev"
< ]
< },
235c235
< "/nix/store/qf8z2a2m2szv64q7fz1gc1cbaylzjx30-xcb-util-errors-1.0.1.drv": {
---
> "/nix/store/nmkl6ljyvnfb778jdkahpjclzxdgm6fr-aquamarine-0.8.0.drv": {
241c241
< "/nix/store/qvfgs67p2lg8xmy6lvj3wwx406ql5cjq-xwayland-24.1.8.drv": {
---
> "/nix/store/qf8z2a2m2szv64q7fz1gc1cbaylzjx30-xcb-util-errors-1.0.1.drv": {
244c244
< "out"
---
> "dev"
| 04:16:53 |
aleksana 🏳️⚧️ (force me to bed after 18:00 UTC) | The left is from the second line of nix derivation show /nix/store/dc5vnmz4y7dmy2h5m1pri7ldpv2q4lv1-hyprland-0.49.0, and the right is from $store->queryDeriver("/nix/store/dc5vnmz4y7dmy2h5m1pri7ldpv2q4lv1-hyprland-0.49.0") | 04:18:57 |
aleksana 🏳️⚧️ (force me to bed after 18:00 UTC) | I know it now. Same with https://github.com/NixOS/nix/issues/7562 | 04:38:09 |
| 4 Jul 2025 |
magic_rb | idk who i was talking to, maybe emily or aleksana but i was complaining about nix always copying my dotfiles to the nix store. So what happened just now is i did .dump of my nix DB, then .read into a fresh DB and it had 3 effects afaict:
- it shrunk from 599MB to 380MB ish
- nix GC completed no problem and it felt substantially faster on average, it wasnt randomly getting stuck
- nix no longer copies my dotfiles every time?
| 18:48:29 |
dramforever | 1 can probably be done with vaccum | 19:06:59 |
magic_rb | Probably | 19:54:28 |
| 5 Jul 2025 |
| sinan changed their profile picture. | 04:04:36 |
| jasi 🏳️⚧️ changed their profile picture. | 20:49:27 |