Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v3 1/1] jsen: new package
Date: Thu, 25 Feb 2016 17:20:28 +0100	[thread overview]
Message-ID: <20160225172028.5482c36e@free-electrons.com> (raw)
In-Reply-To: <1456408864.29027.48.camel@embedded.rocks>

J?rg,

Thanks for your feedback!

On Thu, 25 Feb 2016 15:01:04 +0100, J?rg Krause wrote:

> Because npm supports version ranges. Have a look at the example from
> the npm's docs [1]:
> 
> { "dependencies" :
> ? { "foo" : "1.0.0 - 2.9999.9999"
> ? , "bar" : ">=1.0.2 <2.1.2"
> ? , "baz" : ">1.0.2 <=2.3.4"
> ? , "boo" : "2.0.1"
> ? , "qux" : "<1.0.0 || >=2.3.1 <2.4.5 || >=2.5.2 <3.0.0"
> ? , "asd" : "http://asdf.com/asdf.tar.gz"
> ? , "til" : "~1.2"
> ? , "elf" : "~1.2.3"
> ? , "two" : "2.x"
> ? , "thr" : "3.3.x"
> ? , "lat" : "latest"
> ? , "dyl" : "file:../dyl"
> ? }
> }
> 
> Lets take for example the dependency "boo". A package "A" may depend on
> version "2.0.1" whereas another package "B" may depend on version
> "2.3.x".

Gaah, this is horrible.

> In this case npm installs boo at 2.0.1 in the subdirectory "node_modules"
> of package "A" and boo at 2.3.4 (assume 2.3.4 is the most recent version
> for 2.3.x) in the subdirectory "node_modules" of package "B":
> 
> {prefix}/lib/node_modules?????A
> ???? ????node_modules
> ?? ? ? ? ??? boo at 2.0.1
> ???? B
> ? ? ???? node_modules
> ? ? ? ? ???? boo at 2.3.4
> 
> As Buildroot does not support different versions for most of the
> packages I think we should only use npm to install Node.js packages.

Well, we can support this by having separate packages, but if they
really break "boo" at every release and we need to package ten
different versions of it, then it's a mess indeed.

> 
> > ?- What solution you propose to properly integrate this with the
> > ???download and legal infrastructure of Buildroot. Right now, having
> > ???"npm install" directly download and install stuff means that the
> > ???download and legal-info infrastructure of Buildroot is completely
> > ???worked-around. Due to this, "make source" will not download all
> > the
> > ???source, "make legal-info" will not list all the licenses, caching
> > in
> > ???BR2_DL_DIR doesn't work, BR2_PRIMARY_SITE doesn't work, etc.
> 
> I am not sure for now howto integrate this into the Buildroot
> infrastructure properly. I have never thought about this, but it will
> need some work to be done, I guess.

If you don't have Buildroot packages, it will be nearly impossible I
believe.

> I have never had a look at?scancpan and I am not familiar with Perl
> packages, but looking at some META.json files, I guess it could be done
> similiar.

We have a similar script being worked on for Python, if you're familiar
with Python. See for example http://patchwork.ozlabs.org/patch/501204/.

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

  reply	other threads:[~2016-02-25 16:20 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-23 13:24 [Buildroot] [PATCH v3 1/1] jsen: new package Atul Singh
2016-02-23 20:44 ` Arnout Vandecappelle
2016-02-23 21:04   ` Thomas Petazzoni
2016-02-25 10:32     ` Jörg Krause
2016-02-25 12:51       ` Thomas Petazzoni
2016-02-25 14:01         ` Jörg Krause
2016-02-25 16:20           ` Thomas Petazzoni [this message]
2016-03-28 14:01             ` Jörg Krause
2016-03-28 14:07               ` Thomas Petazzoni
2016-04-25 15:45                 ` Matthew Weber

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=20160225172028.5482c36e@free-electrons.com \
    --to=thomas.petazzoni@free-electrons.com \
    --cc=buildroot@busybox.net \
    /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