Re: Please sponsor my game bug=923180
Hello Markus,
I have been able to remove the majority of the warnings that appear.
Unfortunately I can not seem to get lintian to show me the same errors
locally. I have to upload to mentors.debian.net to see the warnings.
I thought that this might be due to a version difference with lintian
in Ubuntu 16.04 so I installed debian 9.8.0 on a virtual machine
in the hopes that that might makes things a little easier but the results
were the same.
I also have an issue with the deb helper version. When I change to a version
higher than 10, debuild creates fatal errors.
dpkg-checkbuilddeps: error: Unmet build dependencies: debhelper (>= 11)
Is it o.k. to leave it as 10 for now?
Thanks,
Pedro
--------------------------------------------
On Sun, 3/3/19, Pedro Pena <qbancoffee@yahoo.com> wrote:
Subject: Re: Please sponsor my game bug=923180
To: "Pedro Pena" <qbancoffee@yahoo.com>, "Markus Koschany" <apo@debian.org>
Cc: debian-devel-games@lists.debian.org
Date: Sunday, March 3, 2019, 11:22 PM
Hello Markus,
This has been a great learning
experience!
I've applied most of the changes you
asked and uploaded them.
I think it's a bit closer to being
debian friendly.
When building on Ubuntu 16.04 I only
get 2 Warnings but there are many
more on the package page after
uploading the changes file.
Thank you,
Pedro
--------------------------------------------
On Thu, 2/28/19, Markus Koschany <apo@debian.org>
wrote:
Subject: Re: Please sponsor my game
bug=923180
To: "Pedro Pena" <qbancoffee@yahoo.com>
Cc: debian-devel-games@lists.debian.org
Date: Thursday, February 28, 2019,
4:54 PM
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
Reply to: