unofficial mirror of guix-patches@gnu.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 16:21:05 +0300	[thread overview]
Message-ID: <87o73xgyf2.fsf@omar-Latitude-5540.mail-host-address-is-not-set> (raw)
In-Reply-To: <6e198e7dc1f64bea3a2b1498fb69e597e4d03360.1728148557.git.suhail@bayesians.ca> (Suhail Singh's message of "Sat, 05 Oct 2024 13:21:24 -0400")



Thank you Suhail for helping me out wiht this patch. I have some
questions about v10 patch about some parts that I don't fully understand.


> * gnu/packages/lisp.scm (jpm): New variable.
>
> Change-Id: I730ef2f5c874c5142a580a42af76180e95d93ccd
> Signed-off-by: Suhail <suhail@bayesians.ca>
> ---
>  gnu/packages/lisp.scm | 77 +++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 77 insertions(+)
>
> diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
> index 6c16d8ab71..48cf9dffab 100644
> --- a/gnu/packages/lisp.scm
> +++ b/gnu/packages/lisp.scm
> @@ -29,6 +29,7 @@
>  ;;; Copyright © 2024 Andreas Enge <andreas@enge.fr>
>  ;;; Copyright © 2024 bigbug <bigbookofbug@proton.me>
>  ;;; Copyright © 2024 Ashish SHUKLA <ashish.is@lostca.se>
> +;;; Copyright © 2024 Omar Bassam <omar.bassam88@gmail.com>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -62,6 +63,7 @@ (define-module (gnu packages lisp)
>    #:use-module (guix build-system gnu)
>    #:use-module (guix build-system haskell)
>    #:use-module (guix build-system trivial)
> +  #:use-module ((guix search-paths) #:select ($SSL_CERT_DIR $SSL_CERT_FILE))
>    #:use-module (gnu packages admin)
>    #:use-module (gnu packages algebra)
>    #:use-module (gnu packages autotools)
> @@ -69,6 +71,7 @@ (define-module (gnu packages lisp)
>    #:use-module (gnu packages bash)
>    #:use-module (gnu packages bdw-gc)
>    #:use-module (gnu packages boost)
> +  #:use-module (gnu packages certs)

If we don't need nss-verts, do we still need this line?

>    #:use-module (gnu packages check)
>    #:use-module (gnu packages compression)
>    #:use-module (gnu packages crypto)
> @@ -917,6 +920,80 @@ (define-public janet
>  assembler, PEG) is less than 1MB.")
>      (license license:expat)))
>  
> +(define-public jpm
> +  (package
> +    (name "jpm")
> +    (version "1.1.0")
> +    (source
> +     (origin
> +       (method git-fetch)
> +       (uri (git-reference
> +             (url "https://github.com/janet-lang/jpm")
> +             (commit (string-append "v" version))))
> +       (file-name (git-file-name name version))
> +       (sha256
> +        (base32 "05rdxigmiy7vf93s16a8n2029lq33073jccz1rjl4iisxj6piw4l"))))
> +    (build-system copy-build-system)
> +    (arguments
> +     (list
> +      #:phases #~(modify-phases %standard-phases
> +                   (add-after 'unpack 'fix-paths
> +                     (lambda* (#:key inputs #:allow-other-keys)
> +                       (substitute* "configs/linux_config.janet"
> +                         (("/usr/local")
> +                          #$output)
> +                         (("\"cc\"")
> +                          (string-append "\""
> +                                         #$gcc "/bin/gcc" "\""))
> +                         (("\"c\\+\\+\"")
> +                          (string-append "\""
> +                                         #$gcc "/bin/g++" "\""))
> +                         (("\"git\"")
> +                          (string-append "\""
> +                                         #$git "/bin/git" "\""))
> +                         (("\"curl\"")
> +                          (string-append "\""
> +                                         #$curl "/bin/curl" "\"")))
> +                       (substitute* "jpm/shutil.janet"
> +                         (("cp")
> +                          (string-append #$coreutils "/bin/cp")))
> +                       (setenv "PREFIX"
> +                               #$output)))
> +                   (replace 'install
> +                     (lambda _
> +                       (for-each (lambda (dir)
> +                                   (mkdir-p (string-append #$output "/" dir)))
> +                                 '("lib/janet/jpm" "share/man/man1"))
> +                       (invoke "janet" "bootstrap.janet"
> +                               "configs/linux_config.janet")
> +                       (wrap-program (string-append #$output "/bin/jpm")
> +                         `("JANET_HEADERPATH" ":" =
> +                           (,(string-append #$janet "/include/janet")))
> +                         `("JANET_LIBPATH" ":" =
> +                           (,(string-append #$janet "/lib")))))))))
> +    (inputs (list bash-minimal))
> +    (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?

> +    ;; 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?

> +    ;;
> +    ;; 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.
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.

> +    (native-search-paths
> +     (list $SSL_CERT_DIR $SSL_CERT_FILE))
> +    (home-page "https://janet-lang.org/")
> +    (synopsis "Janet Project Manager for the Janet programming language")
> +    (description
> +     "@code{jpm} is the Janet Project Manager tool.  It is a build
> +tool and its main uses are installing dependencies, compiling C/C++ to native
> +libraries, and other management tasks for Janet projects.")
> +    (license license:expat)))
> +
>  (define-public lisp-repl-core-dumper
>    (package
>      (name "lisp-repl-core-dumper")
>
> base-commit: 73ec844389e91cb0f5a2647070516fc8d19d8730

Sorry I had to send this message twice. This is the first time sending
from gnus in emacs and I didn't know the difference between a "reply"
and a "wide-reply"

BRs,
Omar




  reply	other threads:[~2024-10-06 13:23 UTC|newest]

Thread overview: 69+ 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 19:12         ` 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 [this message]
2024-10-06 15:46     ` Suhail Singh
2024-10-06 19:48       ` Omar Bassam
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-11-05 17:13         ` 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

  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=87o73xgyf2.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 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).