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

Bug#829046: Difficulties in packaging pagure



在 2017年5月19日星期五 CST 下午3:06:30,Pirate Praveen 写道:
> On 2017, മേയ് 18 9:35:50 PM IST, Boyuan Yang <073plan@gmail.com> wrote:
> >I have several understandings on it:
> >
> >Option 1
> >------------
> >
> >* Will not use any bundled javascript libraries, no matter minified or
> >not
> >* Will depend on corresponding libjs-* packages and make symlinks to
> >provide
> >removed javascript libraries
> >* If that package does not exist, package them first
> 
> This is the ideal option.
> 
> >Option 2
> >------------
> >
> >* Only minified javascripts are not acceptable
> >* Will use tools like yui-compressor to generate minified js files
> >without using
> >libjs-* packages
> >* Write d/copyright for unminified js files
> 
> If the minified javascript comes with its corresponding non minified form,
> its okay. Or you could provide the source in debian/missing-sources (not
> 100% sure if the directory name is correct or not, but there is an option
> to provide source). But it is best to minify them during build to really
> make sure the min corresponds to the source file since we have the
> minification tools already packaged. node-uglify is better as
> yui-compressor will pull in a jdk as dependency.
> >Option 3
> >-------------
> >
> >* An mixture of 1 & 2
> >* Use libjs-* if that lib has been packaged in Debian
> >* If not packaged, use non-minified version and run processor to
> >generate
> >minified js files
> 
> It should be enough for most cases. But if there are some libs that uses
> browserify/webpack or babel, we have a problem (I have to keep diaspora out
> of main because handlebars.js needs these). We will have to generate those
> files in debian. I have been working on this and we are in a pretty good
> position now. grunt and gulp are available, browserify and webpack is close
> to finish. Though babel is a bit complicated as it has circular dependency
> on rollup.
> >I am not very familiar with Debian's JavaScript policies. Which of my
> >understandings is correct?
> 
> I hope its clear now.

Thanks a lot. If all three options are acceptable then we are already in a 
good position: check out the master branch on Alioth repo [1] and we already 
have a working build script now, (with option 3 above). I call it a "+ds1" 
version since actually no file in the repo is of non-DFSG. Luckily, upstream 
provides all non-minified javascripts files together with minified ones.

I checked debian/copyright for the first round and completed it. Remaining 
problems:

* emojione v1 as bundled in pagure is free/libre library (MIT/CC-BY-SA-4.0) 
but later versions (e.g., v3) restricted its use (non-commercial or pay for 
license). That might be a trouble if we are to package it separately.
* Embedded fonts-hack-web and fonts-hack-ttf not stripped off (yet). Perhaps 
it's fine if we use upstream bundled fonts?
* libjs-codemirror in the Debian repository is outdated. We might need a newer 
version to make sure pagure works correctly.
* Several other js libraries not in Debian, as stated by Shengjing Zhu before.

For other problems and a TODO list, see git commit a83dd06ccc and debian/TODO 
file.

[1] https://anonscm.debian.org/git/collab-maint/pagure.git/log/

--
Boyuan Yang

Attachment: signature.asc
Description: This is a digitally signed message part.


Reply to: