Vincent Bernat, le Fri 28 Aug 2015 07:42:42 +0200, a écrit : > > Yes, that is a danger. I think putting those things in contrib should be a > > good solution if rebuilding is such a big problem. Because if it is, the > > code > > really really doesn't belong in main. > > What will happen is that maintainers will fallback to the second less > horrible solution and cripple the package (by using an older version of > the JS lib for example) to allow it to stay in main.
Why would they want to stay in main? We could provide an older version of the JS lib in main, and a newer shiny version of the JS lib in non-free. > And here will come the angry users and the bad PR. We already have angry users and bad PR due to DFSG (e.g. firmware blobs, flash, etc.). But that's what Debian is. > The build process can be a bit more complex. [...] > I won't put a package of mine in contrib because of such a technicality: > all the code is free software and is provided with the appropriate > source. A tiny part of it is difficult to rebuild from scratch. We still need to package build processes, otherwise we can't call that free software: the Desert Island test fails if you don't have the build process. I had the same issue with loadlin: it could only be built on MS-DOS with the proprietary tasm, and thus got #356055. I thus extended the free yasm to recognized the tasm syntax, and patched loadlin a bit to remove some extensions which were hard to implement in yasm but easy to replace in loadlin. Then it could stay in main. I had the same problem with the pico speech synthesis. The code is completely free, except that the voices data can not be rebuilt from source except by using a dedicated compiler, which we happen to not have the source of. It's not so much a big deal, since we can still run the existing prebuilt compiler to patch the voices, but we can't fix any bugs in the compiler or extend it. And thus the speech synthesizer has to be in non-free until somebody takes the time to reverse-engineer the compiler. Samuel