unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
From: Julien Lepiller <julien@lepiller.eu>
To: phodina <phodina@protonmail.com>, help-guix <help-guix@gnu.org>
Cc: "Ludovic Courtès" <ludo@gnu.org>
Subject: Re: Guix supported-systems option
Date: Sat, 14 Jan 2023 21:19:19 +0100	[thread overview]
Message-ID: <006ACFAA-0D67-4B5B-9A2B-001A075EAD39@lepiller.eu> (raw)
In-Reply-To: <wffg-enwREcUDoDKXSs6q3oWefvqC5YEOGSCLXTohuD1oasE9NWTeGgz_95LyXF8Hz5nyymgLF8QnNgfgbfDRPFfFjH7-1rZTMxU5Zt2XHM=@protonmail.com>

I think you have multiple packages with the same name and version, but different supported systems. Am I right?

If that is the case, then guix will select a package based on the specification you give it, so if you give a name, it will select the package with that name and the highest version available. If multiple packages match this criteria, one is selected arbitrarily.

Now, supported-systems does not mean "remove this package on other architectures", but rather "can't build this on other architectures". So it's perfectly possible that guix will arbitrarily select a package for a different architecture.

I can see two solutions: as you mentionned, get source depending on architecture, that way the other architecture packages are not defined. Another possibility is to append say -x86_64 to the package name.

Does it make sense?

Le 14 janvier 2023 20:33:13 GMT+01:00, phodina via <help-guix@gnu.org> a écrit :
>Hello,
>
>I have recently uncovered a "feature" that works little bit than described in the manual,
>
>During definition of a new variable, package, there is an option called supported-systems​ which defaults to %default-systems​.
>
>However, if the package is known to work on certain architecture the right thing is to list the supported architectures, right?
>
>If I select package which is not supported by my current architecture and build it I get notification like this one:
>`warning: package grafana@9.3.2 does not support x86_64-linux`
>
>So suppose I have the same package for different architectures, each has it's own unique tarball.
>
>I've defined one package and inherited from it, changing the source​ for the other and selecting the correct supported-systems​.
>Unfortunately, this approach fails as Guix does not select the right package I want to use on the current system.
>
>So should the approach be to define just one variable for the package and then conditionally select the right tarball/git for the package?
>
>Also is this considered bug or a feature?
>
>FIY I know the right way would be to build Grafana from source in this case which would solve the issue I just wanted to know in general more about the use case of the supported-systems​ option.
>
>----
>Petr

  reply	other threads:[~2023-01-14 20:19 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-14 19:33 Guix supported-systems option phodina via
2023-01-14 20:19 ` Julien Lepiller [this message]
2023-01-14 22:01   ` phodina via
2023-01-14 23:48     ` Julien Lepiller

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=006ACFAA-0D67-4B5B-9A2B-001A075EAD39@lepiller.eu \
    --to=julien@lepiller.eu \
    --cc=help-guix@gnu.org \
    --cc=ludo@gnu.org \
    --cc=phodina@protonmail.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).