Re: Packaging a web app that bundles a lot of stuff (OctoPrint)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Jan 5, 2014 at 1:51 PM, Miro Hrončok <mhroncok@xxxxxxxxxx> wrote:
> So the situation here is:
>
> 1) bootstrap and jquery are packaged in Fedora as rubygems while OctoPrint
> is witten in Python. I'm not really into shiping all Ruby (and Rails) only
> to have bootstrap and jquery. Not to mention that the version in those
> rubygems is probably not the same as in OctoPrint.

So for jquery I just filed:
https://fedoraproject.org/wiki/Changes/jQuery

Going to have a look at what we need for Bootstrap soon too.  I'll get
a similarly detailed Change page for that going next.

If you'd like to help, please go ahead and package some of the
buildrequires listed in the Dependencies section of that change
request.  As you might recall from reviewing many of the npm deps,
most nodejs packages are dead simple to create, especially now that
someone wrote a nifty little script [1] that makes this much easier.

I'm happy to maintain such packages going forward so you won't have to
be permanently burdened by them (and soon for nodejs-foo packages that
process will be largely automated).  But if someone can help take on
some of the original packaging work that will save me weeks of work
and give me more time to focus on the more complicated stuff like
getting the actual guidelines-compliant jquery packages that build
themselves properly ready.  (Though I certainly would welcome help
with that stuff too.  :-)

If not, I expect it will be at least February before I can start work
on any actual JS libs in earnest, there are still a few web assets/js
infrastructure things I have to finish up first.  :-/

As for the version issue, ideally you can port octoprint to use the
latest upstream.  With jquery, this is pretty easy in most instances,
see the change page for details.  I'm not a big Bootstrap user so I've
still got to figure out our story there, we may need to have multiple
major version RPMs as with jQuery.  :-(

[1] https://lists.fedoraproject.org/pipermail/nodejs/2013-November/000087.html

> 2) underscore.js is packaged as nodejs package and we have the same problem
> (if the thing in package is the same thing as in OctoPrint at all).

I'll see about modifying that to ship a pure-JS subpackage.

> 3) AVLTree is not in Fedora at all, but the js file in OCtoPRint is
> different form "uspream" - single js. file on gist.github.com

Hmm, will have to look at this.

> 4) Knockout is not in Fedora, but upstream version [5] is one year in front
> of what is bundled in OctoPrint.

Same here.

> Modernizr is not packaged and upstream
> version is ahead as well.

This one will get the full Change treatment as well.  I'm not familiar
with what's changed in modernizr in recent versions but hopefully
we'll be able to just port OctoPrint to the latest version.

> 5) LESS is packaged as nodejs package and pull nodejs with it. Also,
> completely different version than in OctoPrint

Will look at getting this one a pure JS subpackage too.  LESS changes
seem very minor between major releases so porting here should be very
simple (if not just drop-in).

> 6) We do have python-sockjs-tornado in Fedora, witch is a dependency of
> OctoPrint as well, but I see no client packaged. However, the latest
> upstream version is in OctoPrint.

We already have everything sockjs-client needs in the distro, I'll
have a look at packaging it soon.

-T.C.
--
packaging mailing list
packaging@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/packaging





[Index of Archives]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite Forum]     [KDE Users]

  Powered by Linux