[Freeipa-devel] Less.js for RCUE adoption

Petr Viktorin pviktori at redhat.com
Wed Oct 9 14:04:13 UTC 2013


On 10/09/2013 01:36 PM, Petr Vobornik wrote:
> Hi list,
>
> I've started to work on RCUE adoption [1][2][3][4][5].
>
> RCUE uses Less CSS [6] so that means that technology for #3875 ([Web UI]
> Use CSS preprocessor (LESS/SASS/Stylus))[6] is pretty much chosen.
>
> Topic of this mail is to choose Less CSS implementation we will use
> during build.
>
> First some info. The main implementation of Less CSS is written in
> JavaScript as a Node.js module. There are also official builds for
> Rhino. Rhino versions are working up to version 1.3.3, they are broken
> since version 1.4. There is some upstream effort to make it work again.
> Implementations in different languages exist as well, but they may not
> implement every feature.
>
> Fedora has a Node.js package (nodejs-less[8]) and Python implementation
> (python-lesscpy[9]). Debian should contain these two as well. Problems
> might come with other targeted distributions.
>
> I tried to run less-rhino-1.3.3.js[10] in Rhino and python-lesscpy, both
> on RCUE reference implementation. Both tools seems to produce
> functionally equivalent CSS (checked by visual inspection of diff).
>
> For Fedora:
> - if we want to use the latest and greatest we should use Node.js
> package. Since Node.js reputation is not good I expect that this won't
> be the chosen solution.
> - if we want to avoid Node.js we can bundle less-rhino-1.3.3.js[10] or
> we can use python-lesscpy. python-lesscpy works better with Fedora
> packaging philosophy.

+1 for python-lesscpy, for this reason.

> For others:
> - bundle less-rhino if official package is not present

This is really up to the other distros, but I don't see why another 
Python dependency should be a problem.

I'm CCing Timo Aaltonen; we'll need some non-Fedora people to answer 
these questions.

> Therefore:
> - bundling of less-rhino is universal solution
> - python-lesscpy might be better solution for Fedora

I'd say bundling is a universally bad solution :)

> Switching between implementations is easy so it's more political
> decision. I don't have strong option on any. Creating custom patch for
> each platform is a possibility as well.
>
> Last thing: we could also build and push final CSS during development. I
> expect we don't want to that (will be against Fedora packaging policy).

We can include them in tarballs but make sure they're re-built for 
Fedora. I don't think that would be against policy.

> [1] https://uxd-rcue.rhcloud.com/
> [2] https://github.com/rhamilto/rcue
> [3] https://fedorahosted.org/freeipa/ticket/3902
> [4] https://fedorahosted.org/freeipa/ticket/3903
> [5] https://fedorahosted.org/freeipa/ticket/3904
> [6] http://lesscss.org/
> [7] https://fedorahosted.org/freeipa/ticket/3875
> [8] http://koji.fedoraproject.org/koji/packageinfo?packageID=15909
> [9] http://koji.fedoraproject.org/koji/packageinfo?packageID=16857
> [10] https://github.com/less/less.js/blob/master/dist/less-rhino-1.3.3.js


-- 
Petr³




More information about the Freeipa-devel mailing list