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

Re: Bug#792018: RFS: commandbox/2.0.0 ITP -- CFML REPL, CLI, Package Manager, and Embedded Server



Thanks for the reply Emmanuel,

A source package makes sense in theory, but how do I create it? Does it contain the uncompiled Java and CFML source for the project?  If the source package must contain everything necessary to build my project, what restrictions are their on the build tools?  Will I have to rewrite to something other than Ant?  The current build is rather large and includes generation of API docs, and updating our artifacts repo.

The additional libraries might be a trick.  CommandBox basically wraps Lucee Server, which is a JVM scripting language that runs on a J2EE server and even allows users to spin up ad-hoc web servers in any folder on their drive, so there's a lot of moving parts that have to come together to get it running.  Some of the libs are common things like Apache libraries and we pull them from Maven during the builds.  Other libraries are custom projects like Runwar.  

What is also tricky for us is the executable jar that we build is nice and generic and will run on Windows, Mac, and Linux flavors without changes.  The exe, deb, and rpm wrappers are just some sugar to make installation easier.  Breaking all the dependencies apart makes a great deal of sense for Debian, but I'm not sure how I'd handle Windows without creating completely separate builds since there's no package management there. 

They must be packaged first and used by the build system

Does this mean I'd have to go through this entire process for every 3rd party lib and get them as separate packages on the Debian repo?  Can I solicit sponsorship for packages I don't have any control over?  How do you handle different versions of jars?  For instance, my project may need version 2.1 even though 2.3 is the latest, etc.  Does that also mean I'd have to create a source package and figure out how to compile each of the 3rd party libraries?  

This sounds like quite a fun process but I may need to consider whether the time involved will be worth it compared to the inconvenience of having my own deb repo.



Thanks!

~Brad

ColdBox Platform Evangelist
Ortus Solutions, Corp 

E-mail: brad@coldbox.org
ColdBox Platform: http://www.coldbox.org 
Blog: http://www.codersrevolution.com


On Thu, Jul 16, 2015 at 3:45 AM, Emmanuel Bourg <ebourg@apache.org> wrote:
Le 16/07/2015 08:14, Brad Wood a écrit :

> Please provide feedback.

Hi Brad,

I got a look at your package and there are some issues to address:

- the official packages must be built from a source package [1], this
means you can't directly  submit a binary .deb package generated by your
build system (Ant and the ant-deb tasks in your case).

- CommandBox relies on libraries that aren't in Debian yet
(tagfusion-cfx, flex-messaging, fusiondebug-api-server, icepdf, jffmpeg,
lucee, undertow). They must be packaged first and used by the build
system (the source package can't contain third party jar files).

There are other details to consider but these are the most important
points. Let us know if you need some clarifications on the Debian
policies, we'll be happy to guide you through the steps required to get
your application packaged.

Emmanuel Bourg

[1] https://wiki.debian.org/SourcePackage


Reply to: