[Freeipa-devel] Changing RCUE to PatternFly
Petr Vobornik
pvoborni at redhat.com
Thu Apr 3 14:36:59 UTC 2014
Hi all,
this is a notice about what I'm going to do so you can raise objections
before I spend any time on it.
== Intro ==
First some facts:
1. RCUE was based on Bootstrap 2 (BS2), it used BS2 css file and
provided it's own less files with overrides
2. the RCUE adoption started with this version at the end of last year
3. during the winter RCUE was renamed to PatternFly and rebased on
Bootstrap 3. It doesn't use BS 3 CSS file anymore but it uses its LESS
files to make just one output CSS.
4. PatternFly+Bootstrap 3 LESS files can be compiled only by NodeJS less
compiler atm. Support in python-lesscpy is being implemented by
OpenStack guys.
I planned to upgrade from RCUE to PatternFly when python-lesscpy was
ready but now it seems that it will happen no sooner than in F21.
As the adoption goes forward I need more stuff from PatternFly (styles
for tables, alerts, tabs,...). Using RCUE and cherry picking from BS3
and PatternFly is messy and creates more work. So I decided to upgrade now.
The issue with css file provided by PatternFly project is that, that it
contains font definitions which force us to bundle font files.
== What I'm going to do ==
- I'll prepare simple less file which will use(combine) all Bootstrap 3,
PatternFly and FontAwesome LESS files without the ones which force us to
bundle fonts (we already have replacements for those).
- it will be compiled by developer using nodejs-lessc
- minified output CSS will be added to our git - it should change rarely
- I'll document how I did it/write script so others can reproduce it
later when needed
No third-party LESS files will be in our git except variables.less from
each project so we will be able to use the constants in our style
definitions (simplifies upgrades).
Our own LESS files don't use any new Less markup features so we are
still able to compile it with current version of python-lesscpy.
--
Petr Vobornik
More information about the Freeipa-devel
mailing list