On Wed, Feb 13, 2019 at 7:29 AM Peter Robinson <pbrobinson(a)gmail.com> wrote:
On Wed, Feb 13, 2019 at 3:24 PM Troy Dawson <tdawson(a)redhat.com> wrote:
>
> I found the systemd scripts from the gateway image. They are very
> well commented so they will be easy to use.
> The only question is have is what user to have these run as?
> Should we add a new user? Or use one of the standard ones?
> Either way, we'll have to make sure we have that user available, using
> the standard fedora rpm techniques for doing that.
I think we should create a new one, the packaging guidelines should
have the details for that
Yep, just read through them.
I'm choosing the Dynamic allocation method [1] because it says the
soft static method should only be used if the UID needs to be shared
between computers, or the UID is needed in the initfs.
I guess the logical username would be "gateway"
mozillaiotgateway just seems too long.
[1] -
https://fedoraproject.org/wiki/Packaging:UsersAndGroups#Dynamic_allocation
> P
>
> > On Mon, Feb 11, 2019 at 6:19 AM Troy Dawson <tdawson(a)redhat.com> wrote:
> > >
> > > I agree.
> > > If you use the gateway rpi images, it automatically starts. I'll look
> > > into how they do that, and if it's systemd based, I'll see about
> > > getting the files.
> > > I'd feel better if the files are coming from the group, so they can be
tracked.
> > >
> > > Troy
> > >
> > > On Sat, Feb 9, 2019 at 10:43 AM Jared K. Smith
<jsmith(a)fedoraproject.org> wrote:
> > > >
> > > > Thanks for doing the hard work of packaging this up... things are
looking pretty good. I'll continue to work on the package review in the Bugzilla
ticket.
> > > >
> > > > One question I had was regarding the gateway software itself -- I
think we probably need some sort of systemd initscript to start and stop the software, and
some sort of instructions for people to get started. Thoughts?
> > > >
> > > > -Jared
> > > >
> > > > On Wed, Feb 6, 2019 at 1:14 PM Troy Dawson <tdawson(a)redhat.com>
wrote:
> > > >>
> > > >> Fedora Review Requests:
> > > >> * mozilla-iot-gateway
> > > >>
https://bugzilla.redhat.com/show_bug.cgi?id=1673125
> > > >> * nodejs-nanomsg
> > > >>
https://bugzilla.redhat.com/show_bug.cgi?id=1673126
> > > >>
> > > >> Jared, if you could grab those two, I'd appreciate it.
> > > >> Since the gateway package has bundling, I'd appreciate someone
who
> > > >> knows about bundling working on it.
> > > >> nodejs-nanomsg is just the standard binary nodejs package. But
it's
> > > >> needed so that mozilla-iot-gateway can remain noarch.
> > > >>
> > > >> Troy
> > > >>
> > > >>
> > > >> On Wed, Feb 6, 2019 at 5:25 AM Peter Robinson
<pbrobinson(a)gmail.com> wrote:
> > > >> >
> > > >> > > Please give a look. Especially the spec files. If they
look good
> > > >> >
> > > >> > I will do in in the next few days.
> > > >> >
> > > >> > > I'll work on getting them into Fedora, hopefully in
time for F30
> > > >> > > freeze.
> > > >> >
> > > >> > I would much sooner if we could aim for much sooner than that
to
> > > >> > enable wider testing by interested parties. It's going to
take time to
> > > >> > do things like license review so the sooner we can get the
spec up for
> > > >> > review it will start to enable these things more formally. I
don't
> > > >> > expect the first version that lands in the repos proper to be
perfect
> > > >> > but it does enable easier testing by a wider audience and
release
> > > >> > early release often etc.
> > > >> >
> > > >> > While obviously there's still work to be done I think
it's in good
> > > >> > enough shape to get the package review submitted and in
motion.
> > > >> >
> > > >> > Peter
> > > >> >
> > > >> > > On Mon, Feb 4, 2019 at 10:24 AM Troy Dawson
<tdawson(a)redhat.com> wrote:
> > > >> > > >
> > > >> > > > I believe I have this working now.
> > > >> > > > I've tried it on a couple of x86_64 machines
and it works great.
> > > >> > > > I'm having some problems installing in on
aarch64 (raspberry pi 3)
> > > >> > > > machines. But I'm pretty sure it will work.
> > > >> > > >
> > > >> > > > Here is the packages, spec files, and supporting
scripts.
> > > >> > > >
https://tdawson.fedorapeople.org/gateway/mozilla-iot-gateway-0.7.0-1.fc29...
> > > >> > > >
https://tdawson.fedorapeople.org/gateway/mozilla-iot-gateway-0.7.0-1.fc29...
> > > >> > > >
https://tdawson.fedorapeople.org/gateway/nodejs-nanomsg-4.0.2-2.fc29.aarc...
> > > >> > > >
https://tdawson.fedorapeople.org/gateway/nodejs-nanomsg-4.0.2-2.fc29.x86_...
> > > >> > > >
https://tdawson.fedorapeople.org/gateway/nodejs-nanomsg-4.0.2-2.fc29.src.rpm
> > > >> > > >
https://tdawson.fedorapeople.org/gateway/mozilla-iot-gateway.spec
> > > >> > > >
https://tdawson.fedorapeople.org/gateway/gateway-tarball.sh
> > > >> > > >
https://tdawson.fedorapeople.org/gateway/gateway-unbundle.list
> > > >> > > >
https://tdawson.fedorapeople.org/gateway/nodejs-nanomsg.spec
> > > >> > > >
> > > >> > > > Troy
> > > >> > > >
> > > >> > > > On Thu, Jan 31, 2019 at 3:06 PM Troy Dawson
<tdawson(a)redhat.com> wrote:
> > > >> > > > >
> > > >> > > > > Two things:
> > > >> > > > > 1 - I'm calling the package
mozilla-iot-gateway
> > > >> > > > > -- The reason for my final decision is that
everything gets saved in
> > > >> > > > > ~/.mozilla-iot Also, I haven't seen
anything in it's documentation
> > > >> > > > > refering to it as things-gateway, other than
that one webpage.
> > > >> > > > >
> > > >> > > > > 2 - As much as I liked removing the modules
for over 400 modules, I
> > > >> > > > > just hit bug after bug after bug. Alot of our
nodejs modules are very
> > > >> > > > > old. versions 0.7 when gateway needs 3.6,
things like that. I'm
> > > >> > > > > going back to my original design of only
unbundling the binary (arch
> > > >> > > > > dependent) modules.
> > > >> > > > >
> > > >> > > > > I should have a workable package tomorrow.
> > > >> > > > >
> > > >> > > > > Troy
> > > >> > > > >
> > > >> > > > > On Thu, Jan 31, 2019 at 6:10 AM Russell Doty
<rdoty(a)redhat.com> wrote:
> > > >> > > > > >
> > > >> > > > > > On Wed, 2019-01-30 at 15:17 -0800, Troy
Dawson wrote:
> > > >> > > > > > > Next release of "gateway"
is up, along with a corresponding updated
> > > >> > > > > > > nodejs-nanomsg for all arches.
> > > >> > > > > > > The source rpm[1] has been trimmed
by 30M and built rpm[2] by
> > > >> > > > > > > 20M. Ya!!
> > > >> > > > > > > The spec file [3] has an updated
license list with all the licenses
> > > >> > > > > > > from the bundled modules. Oddly
enough, I didn't find a single GPL,
> > > >> > > > > > > though there was one LGPL.
> > > >> > > > > > > It also has all the unbundled
packages now as Requires, and all the
> > > >> > > > > > > bundled packages as Provides:
bundled(). Thus making the spec file
> > > >> > > > > > > rather long.
> > > >> > > > > > > I also went through and trimmed out
all the cruft that didn't need to
> > > >> > > > > > > be installed for gateway to run
(.travis.yml, .babelrc, and others)
> > > >> > > > > > > I also added how to run it as a
regular user in the %description
> > > >> > > > > > > area.
> > > >> > > > > > > That's probrubly not the best
place to put that, but I figured it's a
> > > >> > > > > > > place a user can always see.
> > > >> > > > > > > The script[4] to download, setup,
trim and tar up the source with
> > > >> > > > > > > it's
> > > >> > > > > > > dependencies has been updated to use
an external file, that is a list
> > > >> > > > > > > of all the nodejs modules to pull
out of the bundled
> > > >> > > > > > > dependencies. It
> > > >> > > > > > > also now goes as deep as it needs to
in order to pull out all those
> > > >> > > > > > > modules.
> > > >> > > > > > > And there is the list of modules we
are unbundeling.[5]
> > > >> > > > > > > Here is where everything is. [6]
> > > >> > > > > > >
> > > >> > > > > > > These have been tested on aarch64
(rpi3b+) and x86_64.
> > > >> > > > > > >
> > > >> > > > > > > I haven't decided between
things-gateway and mozilla-iot-gateway.
> > > >> > > > > > Have you considered
mozillathings-iot-gateway?
> > > >> > > > > >
> > > >> > > > > > > Both have good reasons to be the
right name. Honestly, I might just
> > > >> > > > > > > flip a coin and let that decide.
> > > >> > > > > > > If anyone has a strong preference
for one or the other, let me know.
> > > >> > > > > > >
> > > >> > > > > > > Troy
> > > >> > > > > > >
> > > >> > > > > > > [1] -
> > > >> > > > > > >
https://tdawson.fedorapeople.org/gateway/gateway-0.7.0-1.1.fc29.src.rpm
> > > >> > > > > > > [2] -
> > > >> > > > > > >
https://tdawson.fedorapeople.org/gateway/gateway-0.7.0-1.1.fc29.noarch.rpm
> > > >> > > > > > > [3] -
https://tdawson.fedorapeople.org/gateway/gateway.spec
> > > >> > > > > > > [4] -
https://tdawson.fedorapeople.org/gateway/gateway-tarball.sh
> > > >> > > > > > > [5] -
https://tdawson.fedorapeople.org/gateway/gateway-unbundle.list
> > > >> > > > > > > [6] -
https://tdawson.fedorapeople.org/gateway/
> > > >> > > > > > > On Wed, Jan 30, 2019 at 1:39 PM
Jared K. Smith <
> > > >> > > > > > > jsmith(a)fedoraproject.org> wrote:
> > > >> > > > > > > > On Tue, Jan 29, 2019 at 5:56 PM
Troy Dawson <tdawson(a)redhat.com>
> > > >> > > > > > > > wrote:
> > > >> > > > > > > > > Here's a fun fact.
> > > >> > > > > > > > > gateway depends on 1000
node_modules (exactly I believe)
> > > >> > > > > > > > > I was able to unbundle 455
of those packages. Ya!!
> > > >> > > > > > > > > Of course, that means that
I have to have 455 lines of
> > > >> > > > > > > > > "Requires:" and
> > > >> > > > > > > > > 545 lines of
"Provides: bundled()" in the spec file
> > > >> > > > > > > > > Ya!!??
> > > >> > > > > > > > > This spec file just went
from a lightweight to a sumo wrestler in
> > > >> > > > > > > > > one day.
> > > >> > > > > > > >
> > > >> > > > > > > > That's the NodeJS way,
unfortunately. I know the NodeJS SIG was
> > > >> > > > > > > > working on a macro to
automagically create the "Provides:
> > > >> > > > > > > > bundled()" lines, but I
really don't know if they ever got it
> > > >> > > > > > > > working.
> > > >> > > > > > > >
> > > >> > > > > > > > -Jared
> > > >> > > > > > >
_______________________________________________
> > > >> > > > > > > IoT mailing list --
iot(a)lists.fedoraproject.org
> > > >> > > > > > > To unsubscribe send an email to
iot-leave(a)lists.fedoraproject.org
> > > >> > > > > > > Fedora Code of Conduct:
https://getfedora.org/code-of-conduct.html
> > > >> > > > > > > List Guidelines:
> > > >> > > > > > >
https://fedoraproject.org/wiki/Mailing_list_guidelines
> > > >> > > > > > > List Archives:
> > > >> > > > > > >
https://lists.fedoraproject.org/archives/list/iot@lists.fedoraproject.org
> > > >> > > > > >
_______________________________________________
> > > >> > > > > > IoT mailing list --
iot(a)lists.fedoraproject.org
> > > >> > > > > > To unsubscribe send an email to
iot-leave(a)lists.fedoraproject.org
> > > >> > > > > > Fedora Code of Conduct:
https://getfedora.org/code-of-conduct.html
> > > >> > > > > > List Guidelines:
https://fedoraproject.org/wiki/Mailing_list_guidelines
> > > >> > > > > > List Archives:
https://lists.fedoraproject.org/archives/list/iot@lists.fedoraproject.org
> > > >> > > _______________________________________________
> > > >> > > IoT mailing list -- iot(a)lists.fedoraproject.org
> > > >> > > To unsubscribe send an email to
iot-leave(a)lists.fedoraproject.org
> > > >> > > Fedora Code of Conduct:
https://getfedora.org/code-of-conduct.html
> > > >> > > List Guidelines:
https://fedoraproject.org/wiki/Mailing_list_guidelines
> > > >> > > List Archives:
https://lists.fedoraproject.org/archives/list/iot@lists.fedoraproject.org
> > > >> > _______________________________________________
> > > >> > IoT mailing list -- iot(a)lists.fedoraproject.org
> > > >> > To unsubscribe send an email to
iot-leave(a)lists.fedoraproject.org
> > > >> > Fedora Code of Conduct:
https://getfedora.org/code-of-conduct.html
> > > >> > List Guidelines:
https://fedoraproject.org/wiki/Mailing_list_guidelines
> > > >> > List Archives:
https://lists.fedoraproject.org/archives/list/iot@lists.fedoraproject.org
> > _______________________________________________
> > IoT mailing list -- iot(a)lists.fedoraproject.org
> > To unsubscribe send an email to iot-leave(a)lists.fedoraproject.org
> > Fedora Code of Conduct:
https://getfedora.org/code-of-conduct.html
> > List Guidelines:
https://fedoraproject.org/wiki/Mailing_list_guidelines
> > List Archives:
https://lists.fedoraproject.org/archives/list/iot@lists.fedoraproject.org
> _______________________________________________
> IoT mailing list -- iot(a)lists.fedoraproject.org
> To unsubscribe send an email to iot-leave(a)lists.fedoraproject.org
> Fedora Code of Conduct:
https://getfedora.org/code-of-conduct.html
> List Guidelines:
https://fedoraproject.org/wiki/Mailing_list_guidelines
> List Archives:
https://lists.fedoraproject.org/archives/list/iot@lists.fedoraproject.org