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

Re: Looking for a sponsor for a new game 'curseofwar'



Trying from another account this time, hope it arrives.  I don't have my key on
this computer though, so it's not signed.

On Sun, Jul 21, 2013 at 11:15:10AM +0200, Markus Koschany wrote:
> Bas was referring to our git and svn repositories. You can later prepare
> your package there or work collaboratively with others. It is not the
> same as publishing your work without review, on the contrary, it gives
> others the opportunity to get your package in shape or to make comments
> on your package. You can always send your review requests to this list
> or you can decide to continue to use debian-mentors.

Yes; more specifically, you prepare your package in the team's repository, then
ask for a sponsor like you did now.

> > By what you make signature.asc? I think I should sign messages too.
> 
> That's GPG/MIME. Every modern e-mail client should be capable of
> supporting this feature.

To use it, you need to create a key pair.  If you search the internet for
"gnupg", you should find lots of documentation.

> > 2013/7/21 Bas Wijnen <wijnen@debian.org <mailto:wijnen@debian.org>>
> [Regarding /usr/games or /usr/bin]
> 
> >     We have discussed this before in the team; there wasn't really a
> >     conclusion, but I think most people agreed that using /usr/games wasn't
> >     really useful.  If /usr/games is dropped in the new FHS, I think we
> >     should follow it.
> 
> FHS 3.0 is still a draft. I also believe that Debian will follow the new
> standard in the future. But for now only section 11.11 of Debian's
> policy is important.

Policy says:
> As described in the FHS, binaries of games should be installed in the
> directory /usr/games.

which is not true.  The FHS says says /usr/games is optional.  If it is going
to be removed entirely in a future version, it makes sense to file a bug
against policy.  Using /usr/bin is allowed by the FHS already.

Then again, for now I agree that we should follow policy (and not anticipate
the change) and use /usr/games.

> > But I don't understand how can I do that by curseofwar.install file.

The build system first runs "debian/rules build" and then "debian/rules
install".  The "target" for dh_install is the file that should be installed, at
the location where it is built.

A normal way of handling installs (and the standard way if more than one binary
package is generated) is to pass DESTDIR=debian/tmp to the install make
command.  That way, the installed files are in a location where they will not
end up in the package.  You can then use debian/package.install to select which
files should really be installed into the package.

Note that this also means that you need to specify all files that must be
installed, not only the ones that are installed in a non-standard location.

So if you installed things to debian/tmp/, you can use in your
debian/package.install:
debian/tmp/usr/bin/curseofwar	/usr/games/

> There a multiple ways to handle this. Install files are part of
> dh_install, that means you can manually install a file to a different
> location like
> 
> curseofwar usr/games
> 
> would install the binary to usr/games.

Note that this only works if the executable is in the top sourcedir after
building.

> However dh_auto_install automatically uses your makefile's install
> target and installs the binary to /usr/bin too. Of course you could
> remove this second binary in debian/rules but that would be inconvenient.

Right; the normal way to handle this is to override the standard install target
and make it install to debian/tmp.

> The easiest way to change your BINDIR variable without touching the
> build system is to use an override for dh_auto_install in debian/rules
> like that:
> 
> override_dh_auto_install:
> 	make BINDIR=/usr/games

Right.  Except that you're not actually calling the install target. ;-)

So that last line should read:
	make BINDIR=/usr/games install
or if you want to use the other approach:
	make DESTDIR=debian/tmp

In fact, I think you need DESTDIR in any case, otherwise it will try to install
to /usr/local (if it's properly doing things).  So it would be:

	make DESTDIR=debian/curseofwar BINDIR=/usr/games install

Thanks,
Bas


Reply to: