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
next prev parent 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
* 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.
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.