Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH] npm.bbclass: Add npm class to match fetcher
@ 2016-02-25 15:06 brendan.le.foll
  2016-02-28  0:53 ` Trevor Woerner
  0 siblings, 1 reply; 7+ messages in thread
From: brendan.le.foll @ 2016-02-25 15:06 UTC (permalink / raw)
  To: openembedded-core

From: Brendan Le Foll <brendan.le.foll@intel.com>

npm class supports the npm fetcher, helping doing the basic compile/install
stages of an npm package

Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
---
 meta/classes/npm.bbclass | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)
 create mode 100644 meta/classes/npm.bbclass

diff --git a/meta/classes/npm.bbclass b/meta/classes/npm.bbclass
new file mode 100644
index 0000000..be76056
--- /dev/null
+++ b/meta/classes/npm.bbclass
@@ -0,0 +1,25 @@
+DEPENDS_prepend = "nodejs-native "
+S = "${WORKDIR}/npmpkg"
+
+npm_do_compile() {
+	# changing the home directory to the working directory, the .npmrc will
+	# be created in this directory
+	export HOME=${WORKDIR}
+	npm config set dev false
+	npm set cache ${WORKDIR}/npm_cache
+	# clear cache before every build
+	npm cache clear
+	# Install pkg into ${S} without going to the registry
+	npm --arch=${TARGET_ARCH} --production --no-registry install
+}
+
+npm_do_install() {
+	mkdir -p ${D}${libdir}/node_modules/${PN}/
+	cp -a ${S}/* ${D}${libdir}/node_modules/${PN}/ --no-preserve=ownership
+}
+
+FILES_${PN} += " \
+    ${libdir}/node_modules/${PN} \
+"
+
+EXPORT_FUNCTIONS do_compile do_install
-- 
2.7.1



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

* Re: [PATCH] npm.bbclass: Add npm class to match fetcher
  2016-02-25 15:06 [PATCH] npm.bbclass: Add npm class to match fetcher brendan.le.foll
@ 2016-02-28  0:53 ` Trevor Woerner
  2016-02-28  8:32   ` Richard Purdie
  0 siblings, 1 reply; 7+ messages in thread
From: Trevor Woerner @ 2016-02-28  0:53 UTC (permalink / raw)
  To: brendan.le.foll, Patches and discussions about the oe-core layer

On 02/25/16 10:06, brendan.le.foll@intel.com wrote:
> npm class supports the npm fetcher, helping doing the basic compile/install
> stages of an npm package

Any chance you might have an npm recipe example? Maybe something like 
express?


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

* Re: [PATCH] npm.bbclass: Add npm class to match fetcher
  2016-02-28  0:53 ` Trevor Woerner
@ 2016-02-28  8:32   ` Richard Purdie
  2016-02-28 17:09     ` Trevor Woerner
  0 siblings, 1 reply; 7+ messages in thread
From: Richard Purdie @ 2016-02-28  8:32 UTC (permalink / raw)
  To: Trevor Woerner, brendan.le.foll,
	Patches and discussions about the oe-core layer

On Sat, 2016-02-27 at 19:53 -0500, Trevor Woerner wrote:
> On 02/25/16 10:06, brendan.le.foll@intel.com wrote:
> > npm class supports the npm fetcher, helping doing the basic
> > compile/install
> > stages of an npm package
> 
> Any chance you might have an npm recipe example? Maybe something like
> express?

Not express but there are some in:

https://github.com/arfoll/meta-brendan-nodepkgs/tree/master/recipes-node

Cheers,

Richard


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

* Re: [PATCH] npm.bbclass: Add npm class to match fetcher
  2016-02-28  8:32   ` Richard Purdie
@ 2016-02-28 17:09     ` Trevor Woerner
  2016-02-28 17:36       ` Trevor Woerner
  0 siblings, 1 reply; 7+ messages in thread
From: Trevor Woerner @ 2016-02-28 17:09 UTC (permalink / raw)
  To: Richard Purdie, brendan.le.foll,
	Patches and discussions about the oe-core layer

On 02/28/16 03:32, Richard Purdie wrote:
> On Sat, 2016-02-27 at 19:53 -0500, Trevor Woerner wrote:
>> On 02/25/16 10:06, brendan.le.foll@intel.com wrote:
>>> npm class supports the npm fetcher, helping doing the basic
>>> compile/install
>>> stages of an npm package
>> Any chance you might have an npm recipe example? Maybe something like
>> express?
> Not express but there are some in:
>
> https://github.com/arfoll/meta-brendan-nodepkgs/tree/master/recipes-node

Thanks!

I guess I don't have enough "plumbing" quite yet. I have all the master 
branches of everything I need and I cherry picked Brendan's npm.bbclass 
but I still get:

$ bitbake forever

ERROR: ExpansionError during parsing 
/z/layerindex-master/layers/meta-brendan-nodepkgs/recipes-node/once/once_1.3.3.bb: 
Failure expanding variable do_fetch[file-checksums], expression was 
${@bb.fetch.get_checksum_file_list(d)} ${@get_lic_checksum_file_list(d)} 
which triggered exception NoMethodError: Could not find a fetcher which 
supports the URL: 'npm://registry.npmjs.org;name=once;version=1.3.3'

I'm not sure if this error is complaining about a fetcher issue (which I 
can't figure out because bitbake does have the commits with support for 
npm://) or a license/checksum error.


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

* Re: [PATCH] npm.bbclass: Add npm class to match fetcher
  2016-02-28 17:09     ` Trevor Woerner
@ 2016-02-28 17:36       ` Trevor Woerner
  2016-02-28 23:13         ` Richard Purdie
  0 siblings, 1 reply; 7+ messages in thread
From: Trevor Woerner @ 2016-02-28 17:36 UTC (permalink / raw)
  To: Richard Purdie, brendan.le.foll,
	Patches and discussions about the oe-core layer

On 02/28/16 12:09, Trevor Woerner wrote:
> On 02/28/16 03:32, Richard Purdie wrote:
>> On Sat, 2016-02-27 at 19:53 -0500, Trevor Woerner wrote:
>>> On 02/25/16 10:06, brendan.le.foll@intel.com wrote:
>>>> npm class supports the npm fetcher, helping doing the basic
>>>> compile/install
>>>> stages of an npm package
>>> Any chance you might have an npm recipe example? Maybe something like
>>> express?
>> Not express but there are some in:
>>
>> https://github.com/arfoll/meta-brendan-nodepkgs/tree/master/recipes-node
>
> Thanks!
>
> I guess I don't have enough "plumbing" quite yet. I have all the 
> master branches of everything I need and I cherry picked Brendan's 
> npm.bbclass but I still get:

Ah sorry. I needed bitbake's master-next.


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

* Re: [PATCH] npm.bbclass: Add npm class to match fetcher
  2016-02-28 17:36       ` Trevor Woerner
@ 2016-02-28 23:13         ` Richard Purdie
  2016-02-29  3:23           ` Trevor Woerner
  0 siblings, 1 reply; 7+ messages in thread
From: Richard Purdie @ 2016-02-28 23:13 UTC (permalink / raw)
  To: Trevor Woerner, brendan.le.foll,
	Patches and discussions about the oe-core layer

On Sun, 2016-02-28 at 12:36 -0500, Trevor Woerner wrote:
> On 02/28/16 12:09, Trevor Woerner wrote:
> > On 02/28/16 03:32, Richard Purdie wrote:
> > > On Sat, 2016-02-27 at 19:53 -0500, Trevor Woerner wrote:
> > > > On 02/25/16 10:06, brendan.le.foll@intel.com wrote:
> > > > > npm class supports the npm fetcher, helping doing the basic
> > > > > compile/install
> > > > > stages of an npm package
> > > > Any chance you might have an npm recipe example? Maybe
> > > > something like
> > > > express?
> > > Not express but there are some in:
> > > 
> > > https://github.com/arfoll/meta-brendan-nodepkgs/tree/master/recip
> > > es-node
> > 
> > Thanks!
> > 
> > I guess I don't have enough "plumbing" quite yet. I have all the 
> > master branches of everything I need and I cherry picked Brendan's 
> > npm.bbclass but I still get:
> 
> Ah sorry. I needed bitbake's master-next.

There was a patch missing, bitbake master should be good now.

Cheers,

Richard


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

* Re: [PATCH] npm.bbclass: Add npm class to match fetcher
  2016-02-28 23:13         ` Richard Purdie
@ 2016-02-29  3:23           ` Trevor Woerner
  0 siblings, 0 replies; 7+ messages in thread
From: Trevor Woerner @ 2016-02-29  3:23 UTC (permalink / raw)
  To: Richard Purdie, brendan.le.foll,
	Patches and discussions about the oe-core layer

On 02/28/16 18:13, Richard Purdie wrote:
> On Sun, 2016-02-28 at 12:36 -0500, Trevor Woerner wrote:
>> Thanks!
>>
>> I guess I don't have enough "plumbing" quite yet. I have all the
>> master branches of everything I need and I cherry picked Brendan's
>> npm.bbclass but I still get:
>> Ah sorry. I needed bitbake's master-next.
> There was a patch missing, bitbake master should be good now.

Verified, thanks :-)


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

end of thread, other threads:[~2016-02-29  3:23 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-25 15:06 [PATCH] npm.bbclass: Add npm class to match fetcher brendan.le.foll
2016-02-28  0:53 ` Trevor Woerner
2016-02-28  8:32   ` Richard Purdie
2016-02-28 17:09     ` Trevor Woerner
2016-02-28 17:36       ` Trevor Woerner
2016-02-28 23:13         ` Richard Purdie
2016-02-29  3:23           ` Trevor Woerner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox