all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Omar Bassam <omar.bassam88@gmail.com>
To: Suhail Singh <suhailsingh247@gmail.com>
Cc: 72925@debbugs.gnu.org, Omar Bassam <omar.bassam88@gmail.com>
Subject: [bug#72925] [PATCH v10] gnu: Add jpm.
Date: Sun, 06 Oct 2024 22:48:47 +0300	[thread overview]
Message-ID: <87bjzxgggw.fsf@omar-Latitude-5540.mail-host-address-is-not-set> (raw)
In-Reply-To: <87msjh5j5f.fsf@gmail.com> (Suhail Singh's message of "Sun, 06 Oct 2024 11:46:20 -0400")

Hi Suhail,

Sorry, I have more questions.

> Omar Bassam <omar.bassam88@gmail.com> writes:
>
>>> +  #:use-module (gnu packages certs)
>>
>> If we don't need nss-verts, do we still need this line?
>
> Good catch.  We don't need this.  Please remove in v11 when you send it.
>
>>> +    (propagated-inputs (list janet
>>> +                             ;; Lazily resolve the gcc-toolchain to avoid a
>>> +                             ;; circular dependency.
>>> +                             (module-ref (resolve-interface '(gnu packages
>>> +                                                              commencement))
>>> +                                         'gcc-toolchain)))
>>
>> Since we no longer need gcc-toolchain and we are just using gcc
>> directly, should we remove this module-ref expression and just add gcc
>> as a propagated input?
>
> What we need is _some_ mechanism to ensure that when jpm invokes gcc (or
> g++), the compiler is able to locate the appropriate header files.
>
> This should be doable without propagating any other inputs.  For example
> by ensuring that jpm sets appropriate environment variables (such as
> $CPATH , $C_INCLUDE_PATH , $CPLUS_INCLUDE_PATH etc.) or flags when
> invoking the compiler.  If so, that would be the preferred approach.  We
> only want to propagate those inputs that are strictly necessary.
>
> I do know that when I had tried to remove gcc-toolchain (without doing
> anything else) I encountered some errors during "jpm install -l sh" (in
> a pure shell).  However, I did not spend any effort in simplifying this,
> and I agree that we should try to.
>
> I look forward to seeing what you come up with in v11 :)
>

I gave tried replacing gcc-toolchain with gcc and both the "jpm install"
commands and the "jpm build" commands worked fine for me without any
issues. I didn't need to set up any C related environemnt variables.
What kind of error where you getting? 

>>> +    ;; NOTE: Below ensures that the user provides the CA certificates they
>>> +    ;; desire (as opposed to bundling `nss-certs' in propagated-inputs, which
>>> +    ;; isn't recommended) and when they do, that they are respected.
>>
>> Why isn't bundling nss-certs recommended?
>
> Doing so would deprive the user of the choice of which CAs to trust.
> I.e., if we were to bundle nss-certs we are taking an opinionated stance
> that the user agrees with Mozilla project's stance on these matters.
>

But how will the user know that they will need to install nss-certs in
the shell or that they need to setup these SSL environemnt variables?
I agree of giving the user the freedom to enable or disable this but I
truly believe we need to provide sane defaults.

>>> +    ;; FIXME: It's unclear why `search-paths', instead of
>>> +    ;; `native-search-paths', doesn't work.
>>
>> What are the difference between search-paths and
>> native-search-paths.
>
> These are documented in the info manual.  However, it's not clear to me
> _why_ native-search-paths is the right thing to use in this situation.
> I posted a message on guix-devel regarding this:
> <https://yhetil.org/guix-devel/87zfnipg4b.fsf@gmail.com/>.
>

OK, please let me know when you get to the bottom of this.

> The FIXME was simply an attempt to get the attention of others more
> knowledgable than me.  Use your discretion regd. whether to keep it or
> not.
>
>> And were you able to run the "jpm install" command without
>> nss-certs. Because, for me I was unable to do so.  When I added back
>> the nss-certs in propagated-inputs, it worked fine.
>
> That is expected behaviour.
>
> The way to test it, when in a pure container, would be by explicitly
> ensuring that certificates of trusted CAs are included in the profile.
> On way to do so would by adding nss-certs alongside jpm when invoking
> the shell.
>
> Relying on the package to provide nss-certs isn't desirable.  We simply
> want to ensure that when the certs are provided that the package _is
> able to use_ them.  This is what the native-search-paths line
> accomplishes.

I still don't understand why is it an expected behaviour if jpm by
default is expected to download packages mainly from github?


BRs,
Omar





  reply	other threads:[~2024-10-06 19:51 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-01  8:31 [bug#72925] Adding JPM package for Janet Omar Bassam
2024-09-04  8:22 ` [bug#72925] [PATCH] adding jpm package Omar Bassam
2024-09-05 14:50 ` Omar Bassam
2024-09-18 13:18   ` [bug#72925] Adding JPM package for Janet Suhail Singh
2024-09-18 15:34     ` Omar Bassam
2024-09-18 16:16       ` Suhail Singh
2024-09-30  8:12 ` [bug#72925] [PATCH v3] adding jpm package Omar Bassam
2024-10-01  0:06   ` Suhail Singh
2024-10-02 15:09     ` Omar Bassam
2024-10-02 18:21       ` Suhail Singh
2024-10-02 19:04         ` jgart via Guix-patches via
2024-10-02 20:20           ` Language-specific guides for using "guix shell" (was: [bug#72925] [PATCH v3] adding jpm package) Suhail Singh
2024-10-02 20:32             ` Omar Bassam
2024-10-02 20:47               ` jgart
2024-10-03  3:43               ` Language-specific guides for using "guix shell" indieterminacy
2024-10-03  7:06                 ` Omar Bassam
2024-10-02 19:12         ` [bug#72925] [PATCH v3] adding jpm package Omar Bassam
2024-10-02 20:14           ` Suhail Singh
2024-10-02 20:27             ` Omar Bassam
2024-10-02 20:33               ` jgart via Guix-patches via
2024-10-02 21:39               ` Suhail Singh
2024-10-02 21:52                 ` Omar Bassam
2024-10-02 22:07                   ` Suhail Singh
2024-10-03  1:40                     ` Suhail Singh
2024-10-03  7:14                       ` Omar Bassam
2024-10-03 13:40                         ` [bug#72925] Adding JPM package for Janet Suhail Singh
2024-10-03 19:45                           ` Omar Bassam
2024-10-03 22:04                             ` Omar Bassam
2024-10-04 16:00                               ` Omar Bassam
2024-10-05  3:11                                 ` Suhail Singh
2024-10-02 20:27             ` [bug#72925] [PATCH v3] adding jpm package jgart via Guix-patches via
2024-10-02 14:36 ` [bug#72925] [PATCH v5] gnu: add " Omar Bassam
2024-10-02 14:50 ` [bug#72925] [PATCH v6] " Omar Bassam
2024-10-02 14:51 ` [bug#72925] [PATCH v7] " Omar Bassam
2024-10-04 15:17   ` Omar Bassam
2024-10-04 15:57 ` [bug#72925] [PATCH v8] " Omar Bassam
2024-10-05  3:28   ` Suhail Singh
2024-10-05 17:25     ` [bug#72925] Adding JPM package for Janet Suhail Singh
2024-10-05  3:15 ` [bug#72925] [PATCH v9] gnu: Add jpm Suhail Singh
2024-10-05 17:21 ` [bug#72925] [PATCH v10] " Suhail Singh
2024-10-06 13:21   ` Omar Bassam
2024-10-06 15:46     ` Suhail Singh
2024-10-06 19:48       ` Omar Bassam [this message]
2024-10-06 21:44         ` Suhail Singh
2024-10-07 18:24           ` Omar Bassam
2024-10-07 18:51             ` Suhail Singh
2024-10-07 19:17               ` Omar Bassam
2024-10-07 20:15                 ` Suhail Singh
2024-10-07 21:13                   ` Omar Bassam
2024-10-08  0:11                     ` Suhail Singh
2024-10-08  3:49                       ` Suhail Singh
2024-10-08  8:25                       ` Omar Bassam
2024-10-08 13:39                         ` Suhail Singh
2024-10-08 16:33                           ` Omar Bassam
2024-10-08 22:01                             ` Suhail Singh
2024-10-09 11:58                               ` Omar Bassam
2024-10-09 13:12                                 ` Suhail Singh
2024-10-09 16:49                                   ` Omar Bassam
2024-10-09 17:15                                     ` Suhail Singh
2024-10-11 16:23                                       ` Omar Bassam
2024-10-11 16:45                                         ` Suhail Singh
2024-10-07 21:08 ` [bug#72925] [PATCH v11] gnu: Add jpm package Omar Bassam
2024-10-08  4:13 ` [bug#72925] [PATCH v12 0/2] " Suhail Singh
2024-10-08  4:14   ` [bug#72925] [PATCH v12 1/2] " Suhail Singh
2024-10-12 17:18     ` [bug#72925] Adding JPM package for Janet Ludovic Courtès
2024-10-12 20:17       ` Suhail Singh
2024-10-08  4:16   ` [bug#72925] [PATCH v12 2/2] gnu: Improve user-experience for jpm Suhail Singh
2024-10-12 17:22     ` [bug#72925] Adding JPM package for Janet Ludovic Courtès
2024-10-12 20:22       ` Suhail Singh
2024-10-12 21:14       ` Suhail Singh
2024-10-14 17:23 ` [bug#72925] [PATCH v13 0/2] Add jpm Suhail Singh
2024-10-14 17:25   ` [bug#72925] [PATCH v13 1/2] gnu: Add jpm package Suhail Singh
2024-10-14 17:26   ` [bug#72925] [PATCH v13 2/2] gnu: Improve user-experience for jpm Suhail Singh

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=87bjzxgggw.fsf@omar-Latitude-5540.mail-host-address-is-not-set \
    --to=omar.bassam88@gmail.com \
    --cc=72925@debbugs.gnu.org \
    --cc=suhailsingh247@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.