!UUqahLbShAYkkrXmKs:matrix.org

DevOS

36 Members
Seeking help and geeking out together on https://github.com/divnix/devos & https://github.com/divnix/digga10 Servers

Load older messages


SenderMessageTime
16 Aug 2021
@tomberek:matrix.orgtomberek joined the room.01:33:35
@ultranix:matrix.orgultranixI didn't start using follows until devos, what's good about it? every flake follows one nixpkgs commit for example? and you wont need to download a separate one for every flake?01:52:07
@blaggacao:matrix.orgDavid Arnold (blaggacao) Exactly, follows are a necessary consequence of coercing inputs. Remember that overlays is not a language level implementation, but a nixpkgs idiom. 01:55:03
@ultranix:matrix.orgultranixyes01:55:26
@timdeh:matrix.org@timdeh:matrix.orgI mean follows help keep the closure size under control, which is fine for the flake developer, but it can cause cache misses when used unexpectedly by the consumer02:04:31
@timdeh:matrix.org@timdeh:matrix.orgwhich is why I debate in my head whether nix even need such a notion (since it also complicates the design a bit)02:04:59
@timdeh:matrix.org@timdeh:matrix.orgIn my mind, it might be better to simply cache "hot" flakes like nixpkgs locally and allow flakes to remain immutable. Follows can be seen as an unexpected contract breach, since changing the inputs changes everything about the hash, and I suspect that this may even start to cause bigger headaches when CA becomes a thing.02:09:59
@blaggacao:matrix.orgDavid Arnold (blaggacao)Yeah, with heavy use of follows upstream caches get essentially useless. I think there is only a very nascent push to make the use of release channels more feasible at large (backporting bot). To mitigate the problems you describe, the community at large must also increasingly play by some sort of release heart beat.02:15:55
@tomberek:matrix.orgtomberekthe option to override is powerful and hence dangerous, but there are clear example of wanting it02:16:16
@tomberek:matrix.orgtombereki had thought that a flake without a flake.lock is very similar to a channel semantically 02:17:06
@timdeh:matrix.org@timdeh:matrix.orgyeah, I go back and forth on it. Maybe, in the future, trustix caches will simply disallow them to ensure trust, but we can still keep them 🤷02:17:20
@blaggacao:matrix.orgDavid Arnold (blaggacao)Atomic pinning could also lead to combinatoric closure explosion, if not any sort of convention can sync upstream flakes effectively.02:19:20
@blaggacao:matrix.orgDavid Arnold (blaggacao)... I mean, once flakes get really pervasive.02:19:52
@timdeh:matrix.org@timdeh:matrix.org yeah, the follows thing, as tomberek kinda mentioned, could be seen as the same sort of impurity that channels caused, but in an even sneakier fashion 😅 02:21:36
@tomberek:matrix.orgtomberekis the fact that there is a "follows" somewhere in the chain of flakes somehow visible? is that fact tracked in a ".lock" or something?02:22:41
@timdeh:matrix.org@timdeh:matrix.orgIf done by the developer then yes, it would be tracked in the upstream lock file. As a user, you can generate your own lock file if you have the repo locally. You can also override stuff on demand with the cli02:23:53
@timdeh:matrix.org@timdeh:matrix.org I just don't like that it changed the upstream flake developers intentions from out under them. When flakes get more pervasive, as David Arnold (blaggacao) points out, I could imagine a lot of github issues opened by naive users not realizing that changing the inputs is the underlying cause of whatever problem they experience 02:25:07
@blaggacao:matrix.orgDavid Arnold (blaggacao)
In reply to @tomberek:matrix.org
is the fact that there is a "follows" somewhere in the chain of flakes somehow visible? is that fact tracked in a ".lock" or something?
not explicitly.
02:26:06
@timdeh:matrix.org@timdeh:matrix.orgI mean it's visible in the flake.nix02:26:30
@tomberek:matrix.orgtomberek(okay, just tested it) it's tracked in the flake.lock as well. Well, so the question is: "is the tool useful enough to warrant possible misuse?"02:27:37
@tomberek:matrix.orgtomberekor, "what can we do to mitigate misue?"02:28:06
@blaggacao:matrix.orgDavid Arnold (blaggacao)
In reply to @tomberek:matrix.org
(okay, just tested it) it's tracked in the flake.lock as well. Well, so the question is: "is the tool useful enough to warrant possible misuse?"
you mean by the [ ] path syntax?
02:28:42
@timdeh:matrix.org@timdeh:matrix.orgMaybe some kinda of warning when a user is writing their own flakes, and overrides the inputs of one of their flake dependencies? Something like: warning, changing inputs can potentially cause rebuilds, and or invalidate trusted packages02:31:05
@tomberek:matrix.orgtomberekThe docs have a blurb about "generally not useful". Perhaps add a more direct explanation of the risks?02:37:46
@gytis-ivaskevicius:matrix.org@gytis-ivaskevicius:matrix.org David Arnold (blaggacao): Good luck on your first day at work ;) 03:41:40
@gytis-ivaskevicius:matrix.org@gytis-ivaskevicius:matrix.org(They grow up so fast <3)03:41:48
@timdeh:matrix.org@timdeh:matrix.org😆11:49:46
@vherrmann:shmerver.de@vherrmann:shmerver.de joined the room.19:43:44
@vherrmann:shmerver.de@vherrmann:shmerver.de wink wink 19:45:10
@vherrmann:shmerver.de@vherrmann:shmerver.de What relevance has the inherit inputs statement in the devos template? 19:45:50

Show newer messages


Back to Room ListRoom Version: 6