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

Re: Proposal: Fixing non-free content issues via installer packages

Eddy Petrişor a écrit :

>>> Maybe we should implement some abstract retriever which
>>> would take the files from the local file system, a CD or a
>>> site ... you name it. The user would choose where from to
>>> get the file

'quake2-data' seems to be doing just that.

In that case we should look in that direction, right?

Quake2 have an important limitation. As it was already said, during the install process it deals with a lot of thing that may fail:
 -no enough space
 -invalid MD5
 -network issues
If problems append all the a dist-upgrade process could be freezed.

I prefere the solution from Jon Dowloand based on a make-jpkg like tool. Let's call it 'make-nonfreepkg'. A the end of the install process, a debconf box warns the user about the need to run:

make-nonfreepkg thegame-data

The package build process should be describe in a file stored in
/usr/share/make-nonfreepkg/packages/thegame-data installed by the main package.

Since the begin of this thread i changed my mine i prefere to have depends on real Debian tools instead trying to recreate them ( http://thread.gmane.org/gmane.linux.debian.devel.games/307/focus=308 )

I suggest to use:
/var/cache/thegame-data/download for the download area. To be able to continue a stopped download we could use a .part extension.
/var/cache/thegame-data/build the build-area.
/var/cache/thegame-data/packages the already build packages

IMO, make-nonfreepkg must at last have three informations
 -a list of mirrors (with a special case for sourceforge mirrors)
-a shell script to prepare the build area from the tarball (like we do in our svn) -a short and clear text to explain WHY we do that. Users have to fully understand why we do that. I'm not sure that it was the case of all the make-jpkg users.

suggestion for make-nonfreepkg package creation process:
1) present to the user a list of mirrors in a select
We can provide an autoselect entry based on netselect and another one for local download. We have to honore HTTP_PROXY, http_proxy, ...
2)download process (wget -c to continue a stopped download)
3)here we can show a license box or at last a warning about non-free data.
4)make-nonfreepkg calls the shell to prepare the build-area
5)make-nonfreepkg make package
6)make-nonfreepkg ask the user if he want to install the package
7)make-nonfreepkg ask the user if he want to keep the package



Reply to: