Hi ZmnSCPxj, Sorry for the delay in getting back to you. guix-patches--- via writes: > In addition to updating, I made as well, separate `bitcoin-core-0.20` > and `bitcoin-core-0.21` packages. Due to RPC changes, it is possible > that other programs compatible with older `bitcoin-core` version is > not compatible with newer version. Thus, an `operating-system` > declaration, may need to pin a specific major version. I think it's OK to keep older versions if that's important, but it would be good to specifically note why specific older versions are useful to keep. I'm saying that because it's useful to know when an older version can be removed. So, for 0.20 are there incompatibilities that you're aware of? The second thing is, I wouldn't immediately jump to the (make-... pattern, and I would instead use package inheritance. See the ruby packages for example [1]. 1: https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/ruby.scm#n95 Package inheritance makes it simpler to make changes to individual versions, and avoids the complexity of introducing a procedure. Does that all make sense? Thanks, Chris