Ian Jackson <ijack...@chiark.greenend.org.uk> writes: > One thing we and our users need to be able to do is to modify the code > we distribute and still continue to take other changes from upstream. > So any format that is unnecessarily hard to merge (see below for more > discussion of this) is not suitable.
I think it's important to realize here that we've now drifted away from the original topic (whether something is free software by our definition) and into a question of bugginess, maintainability, and suitability for the Debian archive for non-DFSG reasons. You have a reasonable point about being concerned about upstream practices that make it very difficult for us to maintain Debian-specific patches, or for our users to modify the software without having to irrevocably fork it. But that's tricky territory with a lot of tradeoffs, and it's not directly related to DFSG freeness. If it were, we would have to consider non-free the previous free releases of upstream software whose subsequent releases are now non-free, since obviously one cannot merge new upstream changes there at all. We don't do that for good reasons. > Another way to look at this is that if what we have is actually the > ouput of some automated process done by upstream from secret (or > unpalatably licensed) input files, anyone who modifies our source > package will be committing the cardinal programming sin of editing an > output file. I don't think this line is as clear as it sounds. I know of several software packages where the source code was originally output from some other tool, but even upstream now tweaks the output instead of re-running the tool; either the tool is impractical, or in many cases has actually been lost. > Also I think the question of fairness is important: someone who forks > the work based on the source code in Debian should not inherently be in > a worse a position than the original author, as regards ability to > modify and update the work. I agree with this as a general ethical principle that I personally would follow, but this is not an explicit requirement of the DFSG, and I don't think we should write it into the DFSG implicitly. As I mentioned in my previous message, there are a lot of ways to create such a disadvantage, and we don't enforce many of them. To take a specific example, the upstream of GNAT, the Ada compiler, makes use of a very comprehensive and exhaustive validation test suite when making changes to the compiler. People who do not have access to that test suite are in an inherently worse position with respect to their ability to modify and update the compiler, but that test suite is not free software; it contains, among other things, large numbers of test cases that upstream developed from code provided by companies with support contracts which was only provided under an NDA or non-free licenses. I don't believe that makes GNAT non-free under the DFSG. > Now obviously there are all sorts of advantages to original authors: > they are most familiar with the code; they may have private tools which > help with editing the source; they have the benefit of the inertia of > downstreams; etc. Exactly. > But I think we should draw the line at software whose original authors > prevent us from using the most convenient form for our modifications. > That is not Free Software and it should not be in Debian. I don't think there's anything magical about that particular line, which is the extent of what I'm arguing. I do agree that this might frequently make the software non-free, but I don't think it's something about which one can write a hard and fast rule without having to think about it a little bit. I think a better line is whether the source tarball includes all the pieces required for someone with appropriate skills to make modifications to the software with reasonable ease. The advantage of that, as opposed to trying to weigh whether upstream has additional advantages, is that it's a judgement call that can be made solely based on the contents of the source tarball without reference to anything external. Although yes, we may need to make some special exceptions for software where *no one* can make modifications with reasonable ease because the tools required to do so have all been lost, which I suppose does come closer to your point. But I think that's a relatively rare case, to the point where it can probably be considered as one-by-one exceptions. >> For example, suppose I include an image in a piece of software that I >> generated by taking a digital photograph of something in RAW, >> manipulating it in Photoshop, and then exporting it as a JPEG. What's >> the source? In the GPL sense, one can make an argument that the >> original RAW image is the preferred form for modification, since if I >> had it available I'd probably use it rather than the JPEG to make >> further changes. > No, the source is not the RAW image. It is the Photoshop file, which > contains the additional layers information and metadata. If you had the > choice you would use that to edit the file again. And yes, that means > that many images which have been manipulated in Photoshop can't be in > Debian because they can't be built from source using software in Debian > main. (Unless, I guess, GIMP can read the file and produce the JPEG. I > have no idea about that.) > If you throw the Photoshop file away for some reason, then the JPEG > itself is the best starting point for further changes. That's because > going back to the RAW would lose all your manipulations which you > wouldn't want to do again. This puts us in a situation of having our definition of source depend on what data upstream has available to them but doesn't distribute (and possibly doesn't even tell us about). I'm not sure that one can really call this the clearer, bright-line position. :) That strikes me as even harder to determine in many cases than the judgement call I think we should be making. It also strikes me as somewhat bizarre that the DFSG status of a work should depend on whether or not some file that isn't part of the source tarball exists somewhere in the universe, and that if all copies of it are destroyed something that was non-free suddenly becomes free. Admittedly, I have a few pieces of documentation like that as well, but it still seems like a very strange place for this line of argument to lead. -- Russ Allbery (r...@debian.org) <http://www.eyrie.org/~eagle/> -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/87y5vyv3pl....@windlord.stanford.edu