all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: david larsson <david.larsson@selfhosted.xyz>
To: Phil <phil@beadling.co.uk>
Cc: zimoun <zimon.toutoune@gmail.com>, guix-devel@gnu.org
Subject: Re: Pinning package inputs using inferiors?
Date: Sat, 22 Oct 2022 14:33:49 +0200	[thread overview]
Message-ID: <acdd596b61941e536c26ada5e97b07bc@selfhosted.xyz> (raw)
In-Reply-To: <87czakdgw5.fsf@beadling.co.uk>

On 2022-10-21 23:08, Phil wrote:
[..]
> 
> In the meantime I was wondering if anyone else had a similar use-case
> for Guix and if they had tried something similar or different to handle
> many versions in an automated way in the same channel commit?

To handle many versions in an automated way, I once wrote this: 
https://gitlab.com/methuselah-0/guix-cigmon/-/tree/master

It's a schedulable script that will check for updates in certain git 
repos (specified branches if you want), and create inherited package 
versions for the new commits which it can commit and push to a guix 
channel repository. Probably doesn't solve your problem completely, but 
might be useful.

Example contents of a new file python-nbdev-org-babel-rev.scm with 
versions of python-nbdev-org-babel, automatically added to a guix 
channel:

(define-module (python-nbdev-org-babel-revs) #:use-module 
(python-extras) #:use-module (guix packages) #:use-module (guix 
git-download))
(define-public python-nbdev-org-babel-4f195e9 (package (inherit 
python-nbdev-org-babel)(properties '(("generated-by" . "cigmon")))(name 
"python-nbdev-org-babel-4f195e9")(source (origin (method git-fetch) (uri 
(git-reference (commit "4f195e915eefe5cd4deec3c6aea27e4b61233f33")(url 
"https://github.com/methuselah-0/nbdev-org-babel.git")))(sha256 (base32 
"0ayfxnw1s9rzs1qpqqyqwhf21xk6g8psffsqzfvvl0w5k1j88dqn"))))))
(define-public python-nbdev-org-babel-66079a5 (package (inherit 
python-nbdev-org-babel)(properties '(("generated-by" . "cigmon")))(name 
"python-nbdev-org-babel-66079a5")(source (origin (method git-fetch) (uri 
(git-reference (commit "66079a59aa9ee5e4479bdce597aac0f42f7fb565")(url 
"https://github.com/methuselah-0/nbdev-org-babel.git")))(sha256 (base32 
"0krdpc6zbdljriw6s80g08fywy0d1nq8wi3q07v3qs0b6rfz68n4"))))))
(define-public python-nbdev-org-babel-master (package (inherit 
python-nbdev-org-babel-66079a5)(name "python-nbdev-org-babel-master")))


This way you can pin some packages to have an input like 
mypackage-<1234567>

Would that be useful?

Best regards,
David


  reply	other threads:[~2022-10-22 13:01 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-10-20 21:37 Pinning package inputs using inferiors? Phil
2022-10-21  9:36 ` zimoun
2022-10-21 21:08   ` Phil
2022-10-22 12:33     ` david larsson [this message]
2022-10-22 19:04     ` Efraim Flashner
2022-10-23  5:58     ` Felix Lechner via Development of GNU Guix and the GNU System distribution.
2022-10-24  8:06       ` zimoun

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=acdd596b61941e536c26ada5e97b07bc@selfhosted.xyz \
    --to=david.larsson@selfhosted.xyz \
    --cc=guix-devel@gnu.org \
    --cc=phil@beadling.co.uk \
    --cc=zimon.toutoune@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.