Hi Maxim, Thanks for the input. I think that I communicated the idea that I'm proposing poorly, although I'm not sure if what I'm proposing would actually work. I sent a new version of the patchset with the change that I'm proposing implemented, which should hopefully clarify what I mean. Of course, it's very possible that what I'm suggesting here is unacceptable for some reason that I haven't noticed.
Let me know if this doesn't adequately clarify things! Best, Morgan On Tuesday, February 11th, 2025 at 14:09, Maxim Cournoyer <maxim.courno...@gmail.com> wrote: > > > Hi, > > Morgan Arnold morgan.arn...@proton.me writes: > > > Hi Andreas, > > > > Thanks for the clarification. If this is the case, and texlive is > > unlikely to be used as a native input, it seems reasonable to me that > > setting `allowSubstitutes = 0` if `(not (and substitutable? (every > > substitutable-derivation? inputs)))` would entirely eliminate the > > possibility of ZFS-based copyviols, as any derivation depending on it > > could not be substituted, and so neither Guix nor anyone using Guix > > could commit a copyviol. A user who wishes to use ZFS will then > > download the source code, compile the kernel module, and include it in > > their initrd, and this initrd will not accidentally be distributed. To > > the best of my non-lawyer understanding, this would not constitute any > > kind of copyviol. > > > I'm not sure exactly where in the daemon code this would be implemented? > Would you have a pseudo-code draft of where it'd be done? Few of us are > knowledgeable about the daemon code base. > > > This seems to me to implement a maximally conservative (in terms of > > avoiding possible copyviols) approach to incorporating ZFS into > > Guix. If this makes sense, I would be happy to include that change to > > `derivation` in this patch set. > > > The idea is logical to me, but the implementation, if it touches how a > derivation is computed/changes its result, IIUC, would invalidate all > past derivations ever computed by Nix/Guix, which would be highly > undesirable/disruptive. > > -- > Thanks, > Maxim