On 25/09/2011, at 11:21 PM, Sebastian Gozin wrote: > In the past I have worked on a project where we would use the maven rpm > plugin to create native packages for centos. > Currently I am working on projects which are to be deployed on ubuntu and > haven't had much luck finding a similar plugin for ubuntu/debian packages. > I did find a maven plugin with limited functionality but I like gradle better > so tried my hand at creating a plugin that can create ubuntu/debian packages > with some nice configuration format in the build script. > > I mostly worked on it during my 2 week vacation in the beginning of July and > then week-ends here and there to try it out with a project of mine. > So I can use it to create packages with dependencies, init scripts, etc... I > didn't bother too much with release notes support however. > > In essence the plugin generates some of the files and wraps the calls you > would normally do manually as described on > https://wiki.ubuntu.com/PackagingGuide/HandsOn > > For now the sources are available on my github > (https://github.com/sgo/ubuntu-packager-plugin) with an example of the build > script format and directory structure. > Perhaps I should also add an example project using the plugin. > > Now for my questions: > - I don't have a lot of experience with both gradle plugins and making native > packages so if anyone has some suggestions that would be great. > - I haven't picked a legal license yet as I don't really know what's suitable > for a plugin. Any ideas? > > Also ehm... do you happen to know if a similar effort has already been made? > Is there interest in something like this?
Yes, I think so. This is very useful. You should add your plugin to the Gradle wiki: http://wiki.gradle.org/display/GRADLE/Plugins Personally, I'd like to see better integration with the Gradle application plugin, so that I can apply 'application' and 'ubuntu', and I end up with an rpm that packages and installs my Java application. This integration could take care of adding the appropriate dependency on java, and, eventually, translate my runtime dependencies from Gradle coordinates to rpm coordinates. It would be also good, at some point, to better integrate with the c++ plugin, too, so that I can apply 'cpp-exe' and 'ubuntu' and, in a similar way, I get an rpm that installs my native exe (or library), along with taking care of translating my runtime dependencies too. -- Adam Murdoch Gradle Co-founder http://www.gradle.org VP of Engineering, Gradleware Inc. - Gradle Training, Support, Consulting http://www.gradleware.com
