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

Re: Please sponsor my game bug=923180



Hello Pedro,

Am 24.02.19 um 21:50 schrieb Pedro Pena:
> Hello,
> 
> I would like to request a sponsor to test and upload my game.
> 
> I have uploaded a game and submitted an RFS set to ITP. 
> 
> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=923180
> 
> 
> Thank you,
> 
> Pedro

I wanted to give you some feedback for your package infinitetux. There
are some issues that have to be resolved first before we can think about
uploading it.

Let's start with the more important things.

= prebuilt software without source =

You have to remove the infinite-tux-linux_64bit.zip file from your
upstream tarball. You don't need to provide precompiled JDK class files
in Debian because you can just depend on our default-jre package which
will provide all necessary functionality. In any case in Debian we build
everything from source and package different libraries or applications
in different packages and prebuilt software without source can't be
uploaded.

= copyright =

You should document the original license of the game in
debian/copyright. Using copyright format 1.0 was a good choice and the
syntax is correct. However the original license was not GPL-3+ and your
newly created content was also derived from other sources with different
licenses. So ideally it would be like that:

Files: *
Copyright: 2006, Markus Persson
License: public-domain

License: public-domain
 Here goes all the license text

Please mention the full license text from Markus Persson including a
link to the original unmodified sources even if it is public-domain we
need to document it. Our ftp team, who approves or disapproves new
Debian packages, should be able to verify the claim that the game code
was really granted to the public domain.

Then you can add more paragraphs for the actual content:

Files: vim src/main/resources/bgsheet.png
Copyright: 2014, some guy
License: CC-BY-SA-3.0

License: CC-BY-SA-3.0
 Here goes the license text of the CC-BY-SA-3.0 license

If you have created a derived work you can add yourself to Copyright too.

The debian paragraph

Files: debian/*
Copyright: Copyright 2018 qbancoffee <qbancoffee@yahoo.com>
License: GPL-3+

is OK!

= The build system =

At the moment you use two different build systems, Maven and a self-made
Makefile. I suggest to stick with the pom.xml file and create a Maven
project that is completely self-sufficient, meaning third-parties can
simply run Maven and the output will be a jar file which can be run with
OpenJDK 8 or later. I would avoid mixing Debian specific packaging with
everything that is required to compile the game and make your upstream
project distribution-independent. Fedora, Gentoo, SuSe, etc. will thank
you, if they ever wanted to include infinitetux as well.

= debian/rules =

The debian/rules file must provide certain targets to comply with the
Debian Policy. The most simplistic rules file would look like that:

#!/usr/bin/make -f
%:
    dh $@

Since you have two build systems dh would probably try to use your
Makefile because you don't build-depend on maven-debian-helper. I
couldn't verify that yet.

So if you want to use the Maven build system then use

dh $@ --buildsystem=maven

If there is only a pom.xml in the root directory, you can keep the
current form because dh will autodetect the correct build system.

I would completely drop the current Makefile and ship a desktop file
instead, and move all necessary code to debian/rules. Thinking about it
right now, you could just use javahelper to build your package. You
don't even have to use Maven because the code seems to use only core
classes and doesn't depend on external libraries.

Just use

dh $@ --with javahelper

override_dh_auto_build:
  jh_build --no-javadoc --javacopts="-source 1.8 -target 1.8"
infinitetux.jar src


Then modify debian/control and build-depend on

default-jdk and javahelper. At the moment the game would not compile in
a clean chroot environement because you build-depend on openjdk-8-jre
but that's only the Java runtime.

The Depends line should look like that:

Depends: ${misc:Depends}, jarwrapper, default-jre | java8-runtime

Note the | sign. That means users will install the default Java runtime
environment (which is Java 11 at the moment) by default but if they have
openjdk-8-jre installed, the dependency would be satisfied as well and
they didn't have to install the default-jre.

Minor stuff:

Standards-Version is 4.3.0

Section should be games.

Build-dependency on gzip is not necessary because gzip is an essential
package, it is guaranteed to be installed on every Debian system.

debian/compat: debhelper 12 is recommended these days.

The manpage infinitetux.7 should be infinitetux.6 because games are in
section 6.

Ok, that's it for now. If you have any questions, feel free to ask and
we try to make the perfect Debian package together.

Regards,

Markus


Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: