public inbox for openembedded-core@lists.openembedded.org
 help / color / mirror / Atom feed
From: Gyorgy Sarvari <skandigraun@gmail.com>
To: t.f.g.geelen@gmail.com, openembedded-core@lists.openembedded.org
Subject: Re: [OE-core] How to have multiple rust cargo vendors
Date: Thu, 2 Oct 2025 22:17:25 +0200	[thread overview]
Message-ID: <daacfe77-1864-4edc-a5ad-bd5c52b7c9a1@gmail.com> (raw)
In-Reply-To: <CAJo0Az632gtPBnWcszxzodqHTnagfqCDW5_d33WnbL_m_Hoezw@mail.gmail.com>

You can add those in the SRC_URI, as regular git repos, with +=. Make
sure to set the "name" parameter to the crate name, and set the
"destsuffix" to ensure the sources won't mix. After do_configure step
one of the cargo/rust classes will go through the SRC_URI content, and
add these git-crates to the cargo config as local patches.

On 10/2/25 21:40, Tom Geelen via lists.openembedded.org wrote:
> I'm trying to create a recipe for uv (https://docs.astral.sh/uv/) to
> be added to meta-python.
> Problem I currently cannot seem to resolve is that I need multiple
> cargo vendor support.
>
> I have created the draft recipe and added the inc file with the crates
> using the update-crates command.
> However it missed several crates as they are not from crates.io but
> via git (see below).
>
> How would I add this to the recipe below?
>
> SUMMARY = "An extremely fast Python package and project manager,
> written in Rust."
> HOMEPAGE = "https://pypi.org/project/uv/"
> LICENSE = "Apache-2.0 & BSD-2-Clause & MIT"
> LIC_FILES_CHKSUM = "file://LICENSE-APACHE;md5=86d3f3a95c324c9479bd8986968f4327 \
>                     file://LICENSE-MIT;md5=45674e482567aa99fe883d3270b11184"
> RECIPE_MAINTAINER = "Tom Geelen <t.f.g.geelen@gmail.com>"
>
> SRC_URI[sha256sum] =
> "e6e1289c411d43e0ca245f46e76457f3807de646d90b656591b6cf46348bed5c"
>
> inherit pypi python_maturin cargo-update-recipe-crates
>
> require ${BPN}-crates.inc
>
> SRCREV = "d8efd77673c9a90792da9da31b6c0da7ea8a324b"
>
> PYPI_PACKAGE = "uv"
>
>
> [[package]]
> name = "version-ranges"
> version = "0.1.1"
> source = "git+https://github.com/astral-sh/pubgrub?rev=d8efd77673c9a90792da9da31b6c0da7ea8a324b#d8efd77673c9a90792da9da31b6c0da7ea8a324b"
> dependencies = [
>  "smallvec",
> ]
>
> Regards,
>
> Tom
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#224379): https://lists.openembedded.org/g/openembedded-core/message/224379
> Mute This Topic: https://lists.openembedded.org/mt/115558933/6084445
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [skandigraun@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>



  reply	other threads:[~2025-10-02 20:17 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-02 19:40 How to have multiple rust cargo vendors Tom Geelen
2025-10-02 20:17 ` Gyorgy Sarvari [this message]
     [not found] ` <186AC5F2410FD5FD.16131@lists.openembedded.org>
2025-10-02 20:33   ` [OE-core] " Gyorgy Sarvari
2025-10-02 20:39     ` Tom Geelen
2025-10-03 12:39       ` Gyorgy Sarvari
2025-10-03 19:38         ` Tom Geelen
2025-10-03 21:40           ` Gyorgy Sarvari

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=daacfe77-1864-4edc-a5ad-bd5c52b7c9a1@gmail.com \
    --to=skandigraun@gmail.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=t.f.g.geelen@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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox