unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
From: Vagrant Cascadian <vagrant@debian.org>
To: zimoun <zimon.toutoune@gmail.com>, jgart <jgart@dismail.de>,
	Guix Help <help-guix@gnu.org>
Subject: Re: build all dependents?
Date: Tue, 22 Nov 2022 11:52:15 -0800	[thread overview]
Message-ID: <87ilj69380.fsf@contorta> (raw)
In-Reply-To: <86v8n7c8y9.fsf@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 2159 bytes --]

On 2022-11-22, zimoun wrote:
> On Mon, 21 Nov 2022 at 19:06, jgart <jgart@dismail.de> wrote:
>
>> is there a command to build all dependents of a package?
>
> [...]
>
>> $ guix refresh python-identify -l
>> Building the following 14 packages would ensure 28 dependent packages
>> are rebuilt: python-multivelo@0.1.2 repo2docker@2021.08.0
>> python-matplotlib-documentation@3.5.2
>> python-numpy-documentation@1.21.6 jami-docs@0.0.0-0.b00574b mdpo@0.3.6
>> python-flask-combo-jsonapi@1.1.0 onionshare@2.5 python-jupytext@1.14.1
>> python-minikanren@1.0.1 python-miio@0.5.11 python-interrogate@1.5.0
>> pre-commit@2.20.0 babi@1.5.3 
>
>    $ guix build $(guix refresh python-identify -l | cut -f2 -d':')

This sometimes requires some manual fiddling, in my experience, e.g.:

  $ guix refresh --list-dependent guile-ssh
  Building the following 9 packages would ensure 10 dependent packages
  are rebuilt: cuirass@1.0.0-11.922cc66 emacs-guix@0.5.2-3.a694fdb
  guile-imanifest@0.0.0-0.ccd5a21 gwl@0.3.0 guix-jupyter@0.2.1
  guix-build-coordinator@0-24.6fb5eaf guix-data-service@0.0.1-27.df2a0a7
  hpcguix-web@0.0.1-5.9de6356 guix-daemon@1.3.0rc2-1.566982b
  $ guix build guix-daemon@1.3.0rc2-1.566982b
  guix build: error: guix-daemon: package not found for version 1.3.0rc2-1.566982b

As the "guix-daemon" package is sometimes called "guix" instead. Not
sure how many other cases like this there are.

Given that it may in some cases require manually fiddling of package
names, "guix refresh --build-dependent PACKAGE" would be nice.

I vaguely recall discussing on irc not long ago the desire for "guix
refresh --list-dependent --machine-readable" (e.g. drop the "Building
the following X packages would ensure 10 dependent packages are
rebuilt:") or something similar. Would save having to pipe to cut, awk,
sed, perl, etc. ...

I could also see, at least for completeness, "guix refresh
--list-all-dependent" e.g. not hide the recursive dependencies,
but show the whole list of packages to be rebuilt...

I thought there was a bug about these sorts of things, but I haven't
found it...

live well,
  vagrant

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]

  reply	other threads:[~2022-11-22 19:52 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-22  1:06 build all dependents? jgart
2022-11-22 15:20 ` zimoun
2022-11-22 19:52   ` Vagrant Cascadian [this message]
2022-11-22 19:55     ` Tobias Geerinckx-Rice
2022-11-23  9:47       ` zimoun
2022-11-22 20:06 ` Felix Lechner via
2022-11-22 20:29   ` jgart
2022-11-22 20:31     ` jgart

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

  List information: https://guix.gnu.org/

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

  git send-email \
    --in-reply-to=87ilj69380.fsf@contorta \
    --to=vagrant@debian.org \
    --cc=help-guix@gnu.org \
    --cc=jgart@dismail.de \
    --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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).