[Dropping debian-devel from CC. debian-java is the right place to ask these questions]
On 04.10.2016 06:23, David Myers wrote: [...] > So my initial questions are : > > Is there a preference for which plugin should be used for gradle builds > within the debian project ? We recommend to use gradle-debian-helper[1] for packaging new gradle projects. It depends on gradle and simplifies some packaging steps. > > As I / we would like the package to be available for the largest number > of debian derivatives as possible are there any special considerations I > should be aware of ? If your package works on Debian, it will also work on other Debian derivatives. It's mainly a matter of what distribution releases you are targeting. For instance Ubuntu 16.04 has a different set of Java libraries than Debian Jessie or Debian Sid. Best practice is to package for Debian Sid and then to adjust library versions for older distributions if needed. That's a process generally referred to as backporting. > > Are there any 'Gothas' I should be aware of for converting from an > existing rpm gradle build to a deb gradle build ? > > Any Java specific items I should be aware of > > * preference for a certain Java application server ~ currently set to > use apache tomcat or an embeded application server (not sure which). > * particular JVM (I personally use OpenJava, not sure for the main > project) > * preference for specific Database (currently uses MySQL or an > 'embeded' DB (again not sure which), has an 'extension' for Postgres). > > I'm bound to have more questions as I go along. Debian packaging is quite different from rpm. I suggest to study Debian packages that make use of the Gradle build system like apktool, freeplane or openjfx. In Debian we have a default-jre package that depends on OpenJDK 8 currently. You would just declare a dependency on it. You can also declare alternative dependencies like default-jre | java8-runtime which enables users to choose another Java 8 compatible JVM. We provide many different database libraries like hsqldb, h2, mongodb etc. It's just a matter of declaring the correct build-dependencies. > > Final note: > > I'm not a newbie to linux, but this is going to be my first attempt at > linux packaging, I did have a go at using the JNLP a while back, but > definitely a first for building a deb package. > > If all goes well I / We (the project) may want to be included in the > main repos, so again if there are any things I should be aware of to > more easily make the transition from simple published deb available for > download, to a ppa and then onto 'official deb package' now may be a > good moment ;) There are various online resources which might help you on your way to create an official Debian package. I suggest to read https://mentors.debian.net/intro-maintainers Especially point 3 contains some useful links to general Debian documentation about packaging. I would also embrace Lintian, a package checker which can help you to spot packaging mistakes. Of course your package must only contain free software to be included in main. [1] https://tracker.debian.org/pkg/gradle-debian-helper Regards, Markus
signature.asc
Description: OpenPGP digital signature