all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Martin Becze <mjbecze@riseup.net>
To: Ivan Petkov <ivanppetkov@gmail.com>
Cc: guix-devel@gnu.org, 38408@debbugs.gnu.org
Subject: Re: [PATCH] WIP patches for the rust importer
Date: Wed, 04 Dec 2019 14:08:01 -0800	[thread overview]
Message-ID: <ac10db4dbb26caedb67b8150ec10f68e@riseup.net> (raw)
In-Reply-To: <A9ACD9FE-C0ED-45E8-9EBB-1F6C27C1392F@gmail.com>

On 2019-12-04 02:40, Ivan Petkov wrote:
> Hi Martin,
> 
>> On Dec 2, 2019, at 3:10 PM, Martin Becze <mjbecze@riseup.net> wrote:
>>
>> When you say source import of the transitive dependencies, do you
>> mean
>> that all the rust libs should just be source only or do you mean the
>> top
>> level package should have to declare all the transitive
>> dependencies?
> 
> All rust libs should be source only imports, but each package
> definition
> should only declare dependencies on the crates it consumes directly
> and
> guix should figure out the rest (in other words, I’d expect there to
> be a 
> one-to-one mapping between a Cargo.toml and a package definition).
> 
> For example, if crate foo depends on crate bar which depends on crate
> baz, I’d expect the definitions to look like:
> 
> (define-public rust-foo
>   (package
>     (name “rust-foo")
>     (source-input `((“bar” ,bar)))))
> 
> (define-public rust-bar
>   (package
>     (name “rust-bar")
>     (source-input `((“baz” ,baz)))))
> 
> (define-public rust-baz
>   (package
>     (name “rust-baz")))
> 
> But while building foo (assuming it is some kind of application), guix
> would ensure that bar and baz are available in the build environment.
> 
> IMO this direction would be the most maintainable in the long term.
> 
> —Ivan

Yes agree and that is what (recusive-import-semver) for produces rust. 

-Martin

      reply	other threads:[~2019-12-04 22:08 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-26 12:04 [PATCH] WIP patches for the rust importer Efraim Flashner
2019-11-27 20:06 ` mjbecze
2019-11-27 20:58   ` Efraim Flashner
2019-11-28  0:36     ` mjbecze
2019-11-28 12:22       ` Efraim Flashner
2019-11-29 12:59         ` Martin Becze
2019-12-01  8:54           ` Efraim Flashner
2019-12-02  2:32             ` Martin Becze
2019-11-29 15:59         ` Martin Becze
2019-12-01  8:59           ` Efraim Flashner
2019-12-02  3:17             ` Martin Becze
2019-12-02  4:01               ` Ivan Petkov
2019-12-02 23:10                 ` Martin Becze
2019-12-04  2:40                   ` Ivan Petkov
2019-12-04  2:40                     ` [bug#38408] " Ivan Petkov
2019-12-04 22:08                     ` Martin Becze [this message]

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=ac10db4dbb26caedb67b8150ec10f68e@riseup.net \
    --to=mjbecze@riseup.net \
    --cc=38408@debbugs.gnu.org \
    --cc=guix-devel@gnu.org \
    --cc=ivanppetkov@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.