unofficial mirror of help-guix@gnu.org 
 help / color / mirror / Atom feed
* Howto reference a custom package from a manifest
@ 2023-05-18  6:51 Timothy Washington
  2023-05-19 16:15 ` Simon Tournier
  0 siblings, 1 reply; 2+ messages in thread
From: Timothy Washington @ 2023-05-18  6:51 UTC (permalink / raw)
  To: help-guix

I successfully installed a custom rust package (see "*Howto supply
cargo-build-system dependency to guix package definition*
<https://lists.gnu.org/archive/html/help-guix/2023-05/msg00009.html>").

It is located in
/gnu/store/10sivvy746n5jdnsgny5afxpwa5yzy5f-rust-rustscan-2.1.1/bin/rustscan

It's definition is
(define-public rust-rustscan-2
  (package
    (name "rust-rustscan")
    (version "2.1.1")
    ...))

But I'm getting a failure when trying to reference it in a local profile,
using specifications->manifest

A. How do I get more detail on the error, in order to troubleshoot. --debug
isn't yielding anything

B. How do I make rust-rustscan (my custom build of a rust package),
available in a global profile.


# guix/packages/manifest.scm
(specifications->manifest '("rust-rustscan-2"))  ;; Also fails...
(specifications->manifest '("rust-rustscan"))

# bash
$ guix package -m guix/packages/manifest.scm
guix package: error: rust-rustscan-2: unknown package
guix package: error: failed to load 'guix/packages/manifest.scm':
gnu/packages.scm:551:4: In procedure specification->package+output:

$ guix package -m guix/packages/manifest.scm --debug=5
guix package: error: rust-rustscan: unknown package
guix package: error: failed to load 'guix/packages/manifest.scm':
gnu/packages.scm:551:4: In procedure specification->package+output:
Throw to key `quit' with args `(1)'.

Tim

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Howto reference a custom package from a manifest
  2023-05-18  6:51 Howto reference a custom package from a manifest Timothy Washington
@ 2023-05-19 16:15 ` Simon Tournier
  0 siblings, 0 replies; 2+ messages in thread
From: Simon Tournier @ 2023-05-19 16:15 UTC (permalink / raw)
  To: Timothy Washington, help-guix

Hi,

On jeu., 18 mai 2023 at 02:51, Timothy Washington <twashing@gmail.com> wrote:

> It's definition is
> (define-public rust-rustscan-2
>   (package
>     (name "rust-rustscan")
>     (version "2.1.1")
>     ...))
>
> But I'm getting a failure when trying to reference it in a local profile,
> using specifications->manifest
>
> A. How do I get more detail on the error, in order to troubleshoot. --debug
> isn't yielding anything
>
> B. How do I make rust-rustscan (my custom build of a rust package),
> available in a global profile.

Well, from my understanding, the failure is because Guix is not able to
find the module where your custom package is defined.  And you have
various options, I think.

 1. Via the option --load-path
 2. Via a channel
    a) Using “guix pull”
    b) Using “guix time-machine”


1. Let say your custom package is defined in a Guile module located to
path/to/your/custom/package.scm, then,

    guix package -L path/to/your/custom/package.scm \
         -m guix/packages/manifest.scm

should do the job.

Give a look at: https://guix.gnu.org/manual/devel/en/guix.html#Package-Modules


2. If this path/to/your/custom is turned into a Git repository, i.e., a
channel, then you can add to some channels.scm file and then run:

    guix pull -C channels.scm

but I suggest instead to run,

    guix time-machine -C channels.scm \
         -- package -m guix/packages/manifest.scm

Last, you can put this channels.scm under ~/.config/guix and then “guix
pull” will load automatically.

Give a look at: https://guix.gnu.org/manual/devel/en/guix.html#Channels


Hope that helps,
simon




^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-05-19 16:34 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-05-18  6:51 Howto reference a custom package from a manifest Timothy Washington
2023-05-19 16:15 ` Simon Tournier

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