unofficial mirror of bug-guix@gnu.org 
 help / color / mirror / code / Atom feed
From: zimoun <zimon.toutoune@gmail.com>
To: bbb ee <blasforr@gmail.com>
Cc: 59278@debbugs.gnu.org
Subject: bug#59278: how gcc-toolchain can depends a package who doesn't exists?
Date: Wed, 16 Nov 2022 09:53:26 +0100	[thread overview]
Message-ID: <87h6yz46wp.fsf@gmail.com> (raw)
In-Reply-To: <CALNLCmVQqW-L_3dd1Nz0AmYFs=b+pnCTfsz+pTNgbYPzGZgL9w@mail.gmail.com>

Hi,

On Tue, 15 Nov 2022 at 22:42, bbb ee <blasforr@gmail.com> wrote:

> It is just a little confusing for newcomers to guix. If we really want to
> improve something, I think that could be to give a more rigorous
> specification of the guix command:

I agree that the manual does not speak about the concept of
’hidden-package’, if I read correctly.  A note would be welcome, IMHO.

However, the commit you are referring is from 2020:

        c81457a5883ea43950eb2ecdcbb58a5b144bcd11
        Author:     Ludovic Courtès <ludo@gnu.org>
        AuthorDate: Fri May 8 16:34:58 2020 +0200
        Commit:     Ludovic Courtès <ludo@gnu.org>
        CommitDate: Fri May 8 16:34:58 2020 +0200

        gnu: gcc-toolchain: Add 10.1.0.

        * gnu/packages/commencement.scm (gcc-toolchain-10): New variable.

        1 file changed, 3 insertions(+)
        gnu/packages/commencement.scm | 3 +++

and many things have been improved since. ;-)


For instance, using 00ff6f7 (from ~Oct 2022), it reads,

--8<---------------cut here---------------start------------->8---
$ guix search gcc | recsel -p name,version | head -30
name: gcc
version: 12.2.0

name: gcc
version: 11.3.0

name: gcc
version: 10.3.0

name: gcc
version: 9.5.0

name: gcc
version: 8.5.0

name: gcc
version: 7.5.0

name: gcc
version: 2.95.3

name: gcc-toolchain
version: 12.2.0

name: gcc-toolchain
version: 11.3.0

name: gcc-toolchain
version: 10.3.0
--8<---------------cut here---------------end--------------->8---

Wait, contrary to what I said, the packages are not hidden when they
should be!  For example, gcc@4m @5 and @6 are not displayed but @7 is.

--8<---------------cut here---------------start------------->8---
$ guix show gcc@6
guix show: error: gcc@6: package not found

$ guix show gcc@7
name: gcc
version: 7.5.0
outputs:
+ lib: shared libraries
+ debug: debug information
+ out: everything else
systems: x86_64-linux i686-linux
dependencies: gmp@6.2.1 isl@0.23 libelf@0.8.13 libstdc++-headers@10.3.0 mpc@1.2.1 mpfr@4.1.0 perl@5.34.0 texinfo@6.7 zlib@1.2.11
location: gnu/packages/gcc.scm:601:2
homepage: https://gcc.gnu.org/
license: GPL 3+
synopsis: GNU Compiler Collection  
description: GCC is the GNU Compiler Collection.  It provides compiler front-ends for several languages, including C, C++, Objective-C, Fortran, Ada, and
+ Go.  It also includes runtime support libraries for these languages.
--8<---------------cut here---------------end--------------->8---

It is because the ’properties’ field of gcc@7 is rewritten,

--8<---------------cut here---------------start------------->8---
(define-public gcc-7
  (package
    (inherit gcc-6)
    (version "7.5.0")
[...]
    (properties
     `((compiler-cpu-architectures
        ("aarch64" ,@%gcc-7.5-aarch64-micro-architectures)
        ("armhf" ,@%gcc-7.5-armhf-micro-architectures)
        ("x86_64" ,@%gcc-7.5-x86_64-micro-architectures))))))
--8<---------------cut here---------------end--------------->8---

and thus, it looses ’hidden’, as shown here:

--8<---------------cut here---------------start------------->8---
$ guix repl
GNU Guile 3.0.8
Copyright (C) 1995-2021 Free Software Foundation, Inc.

Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.

Enter `,help' for help.
scheme@(guix-user)> ,use(gnu packages gcc)
scheme@(guix-user)> (package-properties gcc-6)
$1 = ((hidden? . #t) (gcc-libc . #f))
scheme@(guix-user)> (package-properties gcc-7)
$2 = ((compiler-cpu-architectures ("aarch64" "armv8-a" "armv8.1-a" "armv8.2-a" "armv8.3-a") ("armhf" "armv7" "armv7-a" "armv7-m" "armv7-r" "armv7e-m" "armv7ve" "armv8-a" "armv8-a+crc" "armv8.1-a" "armv8.1-a+crc" "armv8-m.base" "armv8-m.main" "armv8-m.main+dsp" "iwmmxt" "iwmmxt2") ("x86_64" "core2" "nehalem" "westmere" "sandybridge" "ivybridge" "haswell" "broadwell" "skylake" "bonnell" "silvermont" "knl" "skylake-avx512" "k8" "k8-sse3" "barcelona" "bdver1" "bdver2" "bdver3" "bdver4" "znver1" "btver1" "btver2" "geode")))
scheme@(guix-user)>
--8<---------------cut here---------------end--------------->8---


Thanks, there is indeed a bug. ;-)


Back to the initial report, what could be improved is the display of the
field ’dependencies’; distinguishing regular packages to hidden ones.
And maybe instead of a plain error “package not found”, the command
“guix show” could error which “non installable package” or something
like that.


Cheers,
simon




  reply	other threads:[~2022-11-16  9:34 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-14 23:53 bug#59278: how gcc-toolchain can depends a package who doesn't exists? bbb ee
2022-11-15  6:26 ` Julien Lepiller
2022-11-15 10:29   ` bbb ee
2022-11-15  8:42 ` zimoun
2022-11-15 21:42   ` bbb ee
2022-11-16  8:53     ` zimoun [this message]
2022-11-15 22:04   ` bbb ee
2022-11-15 10:30 ` bug#59278: bbb ee
2023-05-15 17:55 ` bug#59278: gcc@7 and higher are not hidden packages 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

  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=87h6yz46wp.fsf@gmail.com \
    --to=zimon.toutoune@gmail.com \
    --cc=59278@debbugs.gnu.org \
    --cc=blasforr@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 public inbox

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

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).