Hi, thank you all very much for the help, Thank you Andreas for your patch. I wasn't sure quite how to use it at first, but after some looking I found out I could put it into a local channel. So I made a file ~/my-channel/ruby.scm with contents
(define-module (ruby) #:use-module (guix packages) #:use-module (guix licenses) #:use-module (guix download) #:use-module (guix utils) #:use-modules (gnu packages ruby)) <the contents of your patch here> That worked well. guix shell ruby@3.3 # fails as expected guix shell -L ~/guix-scout ruby@3.3 # works ruby --version ruby 3.3.3 (2024-06-12 revision f1c7b6f435) [x86_64-linux] However I wanted to have a more sophisticated guix shell, called from a file. Something like what Remco suggested, but this was just what I could cobble together and it isn't exactly the same. The file guix.scm contains (by the way, why is the use-modules syntax different here?) (use-modules (guix packages) (guix download) (guix utils) (guix build-system ruby) (ruby)) (package (name "my-project") (version "1.0.0") (license #f) (source #f) (build-system ruby-build-system) ; "no build system" was not an option (propagated-inputs (list ruby-3.3)) (synopsis "") (description "") (homepage "")) Now I become confused: guix shell -L ~/my-channel -D -f guix.scm # works, as expected ruby --version ruby 3.1.4p223 (2023-03-30 revision 957bb7cb81) [x86_64-linux] # this is *not* the host ruby: exit ruby --version ruby 2.7.8p225 (2023-03-30 revision 1fd455848) [x86_64-linux] I don't know where it is getting 3.1.4 from! I have not written it anywhere. I do recognise it - I think I have previously installed it at some point. But I don't know where it's being pulled from - some cache? It looks like Remco's approach using manifests should work, but I wonder: does anyone know what's wrong with my guix.scm? Best wishes, Dan On Sun, Jun 16, 2024 at 11:27 AM Andreas Enge <andr...@enge.fr> wrote: > > Hello, > > Am Fri, Jun 14, 2024 at 07:36:07PM +0200 schrieb Andreas Enge: > > (define-public ruby-3.3 > > (package > > (inherit ruby-3.2) > > (version "3.3.3") > > (source > > (origin > > (method url-fetch) > > (uri (string-append "http://cache.ruby-lang.org/pub/ruby/" > > (version-major+minor version) > > "/ruby-" version ".tar.xz")) > > (sha256 > > (base32 > > "07pwf3zkf7idl95agfjbv2lvamcp0spp0znqp9arb71ri19rkh43")))))) > > I have sent this patch, see > > https://issues.guix.gnu.org/71559 > > QA has given the green light, so I have pushed this new version to master. > You should see it after a "guix pull". > > Andreas >