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

Re: Should sauerbraten-wake6 be part of main?



On Thu, Feb 20, 2014 at 10:41 PM, Markus Koschany wrote:

> What is source in regard to artwork?

For Debian purposes, I would argue that if Debian users have access to
the same artefacts as upstream then DFSG item 2 is satisfied and the
package should be in main/contrib. Unfortunately it is never anywhere
near that simple.

What upstream releases in tarballs or even git is often not everything
they have access to. We have numerous examples of this over the years
(some I can remember below). A large number of projects simply do not
ship their source code as their primary artefact and it is not always
obvious that is the case. As a result I believe it is extremely
important to discuss with upstream their development practices to find
out what is actually their source code and where it is located. I
believe that not doing so is bound to hide problems and cause packages
to violate the DFSG.

What upstream chooses their source code to be is also important, if
they throw away what they were modifying during development then they
and anyone wanting to continue developing the project lose the ability
to modify the work in meaningful ways and it becomes essentially a
dead block of crystal, shiny but unchangeable. To guide upstreams into
choosing the right source, I added a section to the freedesktop guide
for upstream games developers. I believe the guide is also very useful
to people on this list who will be auditing games and other packages
for missing source code. Some examples of lost source code are listed
below.

http://www.freedesktop.org/wiki/Games/Upstream/#source

Examples of missing source, poor choices of source and lost source:

Many JavaScript libraries and web related projects include only
minified/obfuscated copies of external JavaScript libraries. Here are
some examples:

https://udd.debian.org/cgi-bin/bts-usertags.cgi?tag=source-contains-prebuilt-javascript-object&user=debian-qa%40lists.debian.org

The Xfree86 nv driver for NVIDIA hardware was heavily obfuscated at
the request of NVIDIA and was found to be in violation of the DFSG and
moved to non-free.

http://bugs.debian.org/383465

The FSF was causing Debian to violate the GPL on emacs for a few years
because they were missing some source in their tarballs.

https://lists.gnu.org/archive/html/emacs-devel/2011-07/msg01155.html
https://lwn.net/Articles/453970/

The most recent warzone2100 tarball is a GPL violation because they
ship generated lexers/parsers (C code) but not the bison/flex source
for them.

Hedgewars includes raster images rendered from vector images and
multilayer raster images. These are included in the upstream VCS but
not in the tarball.

The Naev project put pre-rendered images in their main VCS repository.
The actual source is in a pair of separate repositories on separate
hosting, one is a hard-to-find git repository associated with the
Vegastrike project. The source is actually multilayer raster images
(XCF), vector images (SVG, XaraLX), 3D models (Blender) and some
shell, make and Python to render these to images. The rendering
happens rarely and isn't possible with entirely free software due to
one of the files being XaraLX format. There was a second XaraLX file
that I converted to SVG but I haven't had the time to fix the other
one yet.

The original developers of warzone2100 released only pre-rendered
video for their intro sequences and mission briefing sequences. As a
result the current developers are unable to render high-resolution
video for them or fix the textures or anything else. Sadly they also
seem to be making the same mistakes in their choices.

chromium-bsu includes a C file with some arrays of 3D co-ordinates
that are used to render 3D extruded text in OpenGL. It would be much
better to render this at runtime since right now the font is
impossible to modify etc.

The source for beneath-a-steel-sky and similar point-and-click
adventures were "lost" a long time ago and are not meaningfully
modifiable so various glitches cannot be fixed.

-- 
bye,
pabs

http://wiki.debian.org/PaulWise


Reply to: