Re: Bug#589759: debhelper: dh_auto_install + python-all-dbg changes shebang of scripts

2010-07-20 Thread Joey Hess
When building a package with python-all-dbg, dh_auto_build does this:

   dh_auto_build
python2.5-dbg setup.py build
python-dbg setup.py build
python2.5 setup.py build
python setup.py build

This results in build/scripts-2.6/* having python-dbg in the shebang
line. Because the default distutils behavior for a script is to not
overwrite it if it's already been created in build/. [0]

dh_auto_install runs setup.py install --force, so the last python to run
wins, which ensures that the script installed has an unversioned python
in the shebang. (Bugs #548392 and #547510 explain the whole nasty story
behind needing to do that.)

It *seems* that bug #589759 can be dealt with by also making
dh_auto_build pass --force to setup.py. It certianly fixes it in the case
in this bug[1]. It may cause unnecessary work, or who knows, may break
something else. So I'm CCing debian-python for advice before doing that.


[0| It's also possible for a setup.py to build a script by hand, and
always overwrite it. So while running python first and python-dbg
second would probably fix this bug in most cases, I am uncomfortable
doing that.

[1] Tested in the case of pyrit by adding the following to its debian/rules:

override_dh_auto_build:
dh_auto_build -- --force

-- 
see shy jo


signature.asc
Description: Digital signature


Re: Proposal: Reorganizing Python for Python2 (and fixes for the previous proposal)

2001-01-14 Thread Joey Hess
Disclaimer: I don't know much about python. I just want to make sure
that you're not making the same mistakes that were made when perl was
modified so multiple versions could be installed at one time.

> . Python 1.5 was installed and we decide to install 2.0
>   python 1.5 specific packages are installed in 
> ...python/1.5/site-packages
>   other packages are installed in ...python/site-packages
> 
>   * we make /usr/bin/python point to python 2 thanks to alternatives

This is where I begin getting flashbacks to the whole perl SNAFU. Is it
possible for a python program to use python 2.0 features and not work
with 1.5? Is it possible for a program to use deprecated 1.5 things and
not work with 2.0? Is it possible some later version of python after 2.0
will introduce new features programs could use?

All of these things were true with perl, and all of them tripped us up
horribly. The problem is, if you have two versions of perl (or python)
installed and /usr/bin/perl(python) is managed with alternatives,
dependancies are useless. A package that uses perl 5.6 (ptyhon 2.0)
features should depend on that package. But a user can install an older
version still, and can modifiy the alternatives to make it the default,
and then the program breaks, even though its alternatives are satisfied.

The only way to make a program that uses perl 5.6 (I'll stop putting the
equivilant ptyhon stuff in parens now :-) reliably work is to make it
use #!/usr/bin/perl-5.6. But this is just shooting yourself in the foot
when perl 5.7 comes out and your package works with it fine except it
refuses to use it because the filename is different.

It's a horrific can of worms, which is why perl in debian is no longer
going to do this at all -- it's just not worth it. I encourage you python
folks to think this through before adopting a similar scheme. Good luck!

-- 
see shy jo




Re: Proposal: Reorganizing Python for Python2 (and fixes for the previous proposal)

2001-01-14 Thread Joey Hess
Moshe Zadka wrote:
> s/posible/certain/
> Python 2.1 already contains many features future programs will be
> able to use. (It's not out now, but alpha is supposed to be released
> in a few days)
 
> OTOH, all Python programs in Debian *should* work with 2.0. If they
> do not, then they have a bug -- and it should be fixed. 
> So, as a Perl basher , I think Python will not cause the same
> problems that Perl did.

You mean all python programs will work with 2.0 until 2.1 is out and
programs start using its features. At that point every problem I predicted
is going to bite you.

-- 
see shy jo




Re: Bug#41113: Proposal: Naming Conventions for modules

1999-07-16 Thread Joey Hess
Gregor Hoffleit wrote:
> FYI: Alexander Reelsen filed bug#41113 against debian-policy, which
> is of interest for debian-java, debian-python as well as debian-perl:
> 
> Currently, the Python maintainers have an implicit policy to use a
> naming scheme of python-foo-bar for all Python extension modules.
> 
> If Alex proposal gains support, we may have to change this convention
> to something like libfoo-bar-python (as I don't think the Perl people
> would be glad to change their package names ;-).

I wish they would. Perhaps I'm in the minority, but when I want a perl
module package, I know it's a perl module. I don't necessarily know the
module part of the package name. So I'd like to type:

# dpkg --print-avail libperl-

And get a list of perl modules [1]. But I can't do that. I can with python
modules though, which is very nice.

-- 
see shy jo

[1] I have zsh set up to do such command line completion of dpkg commands.
Quite a time saver.



Re: Bug#41113: Proposal: Naming Conventions for modules

1999-08-01 Thread Joey Hess
Stefan Gybas wrote:
> I would also prefer such a scheme. What about colons in package names?
> I know that they are currently not allowed but is there a technical
> reason not to allow them? According to footnote 14 in the packaging
> manual, colons used to be legal. Was this changed when epochs were
> introduced?

Probably. It would rock if we could use the exact module name as the
package, I agree. :-)

-- 
see shy jo



Re: Status of the python-dev task

2001-07-19 Thread Joey Hess
Jérôme Marant wrote:
>   According to Joey Hess, it seems that the python-dev needs
>   someone to maintain it.

Well, the best maintainer would probably (presumably) be the
maintainer[1] of task-pthon-dev. I'm going to go through and contact the
maintainers of the task packages indiviually and work this stuff out.

> This is a very long list and I'm not sure all of them should
> be put in a single task, for few reasons:
> 
> - there are both python and python2 package.
> - some of them are not used a lot.

I seriously doubt that they all belong in any task. If we had a perl
task, it would be *insane* to make it include lib*-perl. Knowing
little of python, I can only draw an analogy.

Our guidelines include the following:

  Care should be taken when adding new tasks to ensure that the new task
  is suitably generic -- it should be something of value to a large number
  (at least 10%) of our users. It must not perform the same general purpose
  as some other existing task. It must contain packages that are the ones in
  most common use, and software that is of the best perceived quality.

> As long as there is a speration between python and python2,
> I would propose to create a second task called python2-dev
> that would contain all python2 specific packages.
> (I still don't know what was stated about the separation, so
>  does my proposal make sense?)
> 
> Now, some questions:
> - what packages are not worth having?
> - should we split the task in smaller ones?

You have to run new tasks by myself, Anthony Towns and Randolph Chung right
now. The guidelines and working consensus we have is emphatically against
splitting up tasks (see above), and the set of tasks we've settled on was
chosen after a lot of consideration to be at the right level of granularity
(though we're certianly open to interesting new tasks if they meet the
guildlines). If the python/python2 split is a problem, the maintainer of this
task basically has to decide if it will offer python, python2, or both.

Another thing to bear in mind is that the new system makes it reasonably
easy to select a task thus selecting all the packages in it, and then drop
down to per-package selection and remove or change some of the selections,
before anything is installed.

-- 
±see shy jo

[1] Hi David. The only task-pthon package I can find is in potato.




Re: Status of the python-dev task

2001-07-20 Thread Joey Hess
David Coe wrote:
> There are/were a minor bugs against the task-python-* packages in
> unstable, all due to broken dependencies; those are easy to fix, but
> are one of the things that drove us away from the old task-* packages,
> as I understand it.

Yep. It's not the end of the world in the new system if a task lists a
package that no longer exists. It may slightly break the task, but it is
handled gracefully. Tasks can also refer to packages that are only in
non-us and they will continue to work even if the system doesn't have a
source for non-us.

> I had also planned to create a parallel set of task-python2-*
> packages, as a result of brief discussion on debian-python, and
> can still do that if task-python[2]-* packages are still desired.
> 
> task-python-dev, in particular, is probably not very useful; we had
> discussed the pros and cons of having that, on the debian-python list
> when task-* packages were first created, and decided to (iirc) go
> ahead and create it to see if anyone uses it.  My guess is we
> could drop that one and no one would complain.
> 
> Joey, what *should* happen with these task-[python-]* packages?
> Should I bring them up to date for sid?  for woody?  What should
> I read (e.g. where are the following guidelines)?

See tasks/README in tasksel's source.

We do have a few other -dev tasks, and I think it can be sorta useful to
get a task that lets you get started quickly on using a particular
langage. (In particular, the c-dev task should also let you build most
any program you run accross.) At the same time, I do think they're
amoung the shakier of the tasks we have now (expecially fortran-dev!).

I'm not sure what these pthon2-* tasks are intended to do or why
you think more than one task is needed in this area.

-- 
see shy jo




packages tasksel expects to find in woody, that arn't there

2002-02-25 Thread Joey Hess
Tasksel expects to find a bunch of packages in woody that arn't there.
This is not often a big deal; the missing packages will be silently
skipped. That can sorta suck if it is one of the core packages in the
task though.

Of particular note is the missing KDE metapackage, which means
that new woody installs do not get KDE at all, although tasksel claims
to let you pick it as part of the desktop task. Someone needs to begin
maintaining that package, fix its dependancy problems, and get it into
woody posthaste.

No cxterm-gb!
No cxterm-big5!

update-excuses hates it. If anyone cares about cxterm, someone
needs to figure out why it has all these unsatisfiable Depends.

No kde!

Again, very, very bad.

No asiya24-vfont!

Has some RC bugs. Seems to be in the process of being removed,
according to update-excuses, although they are all fixed. Hmm.

No junior-programming!

I wonder there this went. Ben?

No python-base!
No dpkg-python!
No python-distutils!
No python-mxdatetime!
No python-mxstack!
No python-mxtexttools!
No python-mxtools!
No python-pam!
No pythondoc!
No sulfur!

Someone who cares about python needs to look at its task and send us a
corrected version. Preferably a much smaller corrected version, the
current one is ridiculously bloated.

No mueller7-dict!

Has rc bugs, and updates-excuses implies it is in the process of
being removed.

No dialdcost!

Was only in stable, is there a replacement in unstable?

-- 
see shy jo




Re: Bug#178373: debconf: severity critical

2003-01-30 Thread Joey Hess
Bernhard Kuemel wrote:
> apt-get dist-upgrade now won't install even a single package. At first I
> chose severity normal because mailman depends on debconf, but now
> totally unrelated packages don't get installed. Unfortunately it seems
> reportbug won't set the severity of this bug to critical but I was asked
> if this bug is already listed and enter it's number. Should I have filed
> a new bug report?

It should not be severity critical anyway, packages break in unstable
from time to time and there are workarounds to upgrade everything else.
Anyway.

> s:~# apt-get dist-upgrade
> Reading Package Lists... Done
> Building Dependency Tree... Done
> Calculating Upgrade... Done
> The following NEW packages will be installed:
>   libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl
> libmailtools-perl  libmime-base64-perl liburi-perl libwww-perl 
> 87 packages upgraded, 7 newly installed, 0 to remove and 0  not
> upgraded.
> 2 packages not fully installed or removed.
> Need to get 0B/60.6MB of archives. After unpacking 8738kB will be used.
> Do you want to continue? [Y/n] 
> Preconfiguring packages ...
> Setting up debconf (1.2.21) ...
> option -q not recognized
> usage: python compileall.py [-l] [-f] [-d destdir] [-s regexp]

What version of python2.2 do you have installed?
What does it say when you run --

sh -ex /var/lib/dpkg/info/debconf.postinst configure 1.2.21

I was told by some python people that I could use -q after compileall to
shut it up, if that no longer works it is porbably a bug in python or
possibly debhelper, not debconf.

-- 
see shy jo




Re: Bug#178373: debconf: severity critical

2003-01-31 Thread Joey Hess
Josselin Mouette wrote:
> Your python installation is screwed. The compileall.py module in Debian
> does support -q in all versions. It's not possible to be mistaken about
> that, as the error message included in Debian's compileall.py is not
> exactly this one.

Ok so it is a local install of an old or broken version of python in
/usr/local/bin,  or something of the sort. 

I suppose I could make debhelper use an explicit path to a python that
we know is in debian,  but I generally dislike that approach without
very good reasons. I suppose sysadmins should be free to install their
own python, even if they do break their machine in the process. So all I
can do is close this bug report.

-- 
see shy jo




Re: Bug#178373: debconf: severity critical

2003-01-31 Thread Joey Hess
Bernhard Kuemel wrote:
> Thank you very much. I had python 2.1 installed and with 2.2 the
> problem disappeared. Seems python2.2 should be a dependency for
> debconf and mailman.

Why? They only run python2.2 if it can be found in the path. I dont
really understand how you could possibly have seen the problem with
debians python 2.1, which provides a python2.1 binary, or fixed it by
upgrading to 2.2. I suspect you are not accuratly reporting whatever
happened or are confused.

-- 
see shy jo




python task package needs TLC

2003-07-25 Thread Joey Hess
The current set of packages installed by the python task:

 python
 python-doc
 ddd
 python-htmlgen
 idle
 python-dev
 python-examples
 python-extclass
 python-gdbm
 python-gdk-imlib
 python-gendoc
 python-glade
 python-gnome
 python-gtk
 python-ldap
 python-mpz
 python-xml

If someone who knows python would like to maintain this list, mail me.
Right now it's being maintained by me, and I don't use, or know python!
I've just removed a number of packages that no longer exist, including 
python-distutils, pythondoc, and dpkg-python, from the list. Also the task
is intended now to install enough python packages to make developing
python programs pleasant, but not every python module in all of debian.
I have no clue if it meets this goal.

-- 
see shy jo


pgpYlkAUOgIZ5.pgp
Description: PGP signature


Re: [Pkg-zope-developers] Re: Duplicate debconf templates in zope-* packages

2003-11-14 Thread Joey Hess
Andreas Tille wrote:
> On Thu, 13 Nov 2003, Denis Barbier wrote:
> 
> > This was your original point, then Andreas Tille and Federico Di
> > Gregorio replied that this explanation does not apply here because all
> > packages depend on Zope, you agreed and proposed to drop templates,
> > and everyone was happy... but this never happened ;)

I'm not familiar with zope's packaging, but I hope you all realize that
dependencies are not guaranteed to be satisfied at debconf preconfigure
time. That is the reason you sometimes need shared templates.

-- 
see shy jo


signature.asc
Description: Digital signature


Re: Duplicate debconf templates in zope-* packages

2003-11-14 Thread Joey Hess
Luca - De Whiskey's - De Vitis wrote:
> On Fri, Nov 14, 2003 at 01:28:21PM +0100, Andreas Tille wrote:
> [...]
> > Hmmm, are you sure that this paragraph in the manual makes sense
> > I guess if a zope package depends from zope all relevant debconf information
> > is available and copying the same stuff over and over makes no sense at all
> > except from enhancing the probability of errors.
> 
> Sorry, i now realize that i did not in consider policy explanation on what
> Depends field mean.
> 
> Perheps some sort of note in that paragraph of debconf-devel would have been
> useful. I mean something like "Including the shared question, is not required
> if all packages depends on the one which provides the template (see section
> 7.2. of Debian policy)"

That's not at all accurate. Every package that has a config script that
expects to use a template must include a copy of the template in the
package. Dependencies will not be honored at preconfigure time.

-- 
see shy jo


signature.asc
Description: Digital signature


Re: python 2.2 -> python 2.3 transition

2003-08-08 Thread Joey Hess
Josip Rodin wrote:
> Am I the only one who has a disgusting reminiscence of netscape*.* packages
> every time python* is mentioned? :P

Actually I'm more reminded of the perl* packages and the complete mess
that followed. And I keep expecting to see the same set of problems
affect python.

-- 
see shy jo


pgpXISG37Hhdy.pgp
Description: PGP signature


Re: python packaging infrastructure

2006-01-13 Thread Joey Hess
Matthias Klose wrote:
> Josselin Mouette writes:
> > Furthermore, if you want to see this implemented, you'll have to find
> > someone else to write the necessary changes to dh_python. I will not
> > write nor maintain any code that parses the control file in dh_python.
> > This script is already one of the most complex ones in debhelper, and
> 
> Joey, would you accept a reimplementation in python? at least the use
> of dh_python already requires a dependency on python.

No, debhelper has to all be implemented in the same language.

-- 
see shy jo


signature.asc
Description: Digital signature


Re: when and why did python(-minimal) become essential?

2006-01-19 Thread Joey Hess
Colin Watson wrote:
> FWIW the relevant design docs from when this was done in Ubuntu are
> here:
> 
>   https://wiki.ubuntu.com/EssentialPython (requirements)
>   https://wiki.ubuntu.com/PythonInEssential (details)
> 
> The rationale for the set of included modules is in the latter, and was
> basically done by taking each module in perl-base and mapping it to its
> Python equivalent.

FWIW, that's a fairly strange way to do it, since modules are
added/removed from perl-base as needed by the perl-using programs in the
base system. For example, perl-base includes Data::Dumper because debconf
(used to) use it, not because there's any other particular reason to
include that module in base, and I've just asked that Data::Dumper be
removed, so including its equivilant (pickle) in python-base on that
rationalle is decidely strange.

If we followed the same method for python-base, then we would

a) instroduce python-base iff we had some package(s) written in python
   that we wanted in the base system (apt-listchanges comes to mind)
b) include only the modules needed by the package(s).

-- 
see shy jo


signature.asc
Description: Digital signature


Re: when and why did python(-minimal) become essential?

2006-01-20 Thread Joey Hess
Matt Zimmerman wrote:
> On Thu, Jan 19, 2006 at 03:34:58PM -0500, Joey Hess wrote:
> > If we followed the same method for python-base, then we would
> > 
> > a) instroduce python-base iff we had some package(s) written in python
> >that we wanted in the base system (apt-listchanges comes to mind)
> > b) include only the modules needed by the package(s).
> 
> Please don't do this; it implies that python-minimal would be part of base,
> but not full python, and this is something that python upstream explicitly
> objects to.

It implies no such thing.

-- 
see shy jo


signature.asc
Description: Digital signature


Re: when and why did python(-minimal) become essential?

2006-01-20 Thread Joey Hess
Kevin Mark wrote:
> Giving away code (GPL or otherwise) to the world is done for many
> reasons.  Aparently some folks are more concerned about how their work
> is used. As with the attribution in .debs, folks want the users to not
> associate possible (as judged by them) 'bad'/'unofficial'/'off
> project'/'different' work with their projects. But the perl folks don't
> seem to have that objection! x-) (at least none have spoken yet!)

perl is priority standard and so it is part of default Debian installs
unless the user explcitly asks aptitude not to install it.

-- 
see shy jo


signature.asc
Description: Digital signature


Re: Bug#370833: New dh_python proposal

2006-06-09 Thread Joey Hess
Raphael Hertzog wrote:
> Because Matthias and Josselin do not (or can't or don't want to) work
> together. I tried my best to fill the gap. :-/

I appreciate your work, but I am not comfortable supporting two
competing implementations in debhelper.

Sorry.

-- 
see shy jo


signature.asc
Description: Digital signature


Re: Bug#370833: New dh_python proposal

2006-06-13 Thread Joey Hess
I don't particularly mind that you've chosen to NMU debhelper. However,
I can't guarantee that I will preserve the interfaces that you've added
to dh_python in a backwards compatible way when I get around to looking
at it.

(FWIW, I began ignoring this issue when the politics and constant
advocacy and pressure became too annoying to bother with, and I expect
to ignore it for at least another couple of weeks. Unfortunatly that
means that to avoid either trampeling over or blessing your NMU, I won't
be able to release any other debhelper fixes in that timeframe either.)

-- 
see shy jo


signature.asc
Description: Digital signature


Re: dpkg-repack warnings: what effect?

2006-07-24 Thread Joey Hess
Hugo Vanwoerkom wrote:
> dpkg-repack (from sid dpkg 1.13.22) gives warnings when repacking python 
> packages:
> 
> ...
> warning, `./dpkg-repack-5343/DEBIAN/control' contains user-defined field 
> `Python-Version'
> ...
> 
> What effect does this have? Can the .deb be used or not?

It's harmless, though perhaps a pity that the python maintainers decided
on this ugly solution.

> Would it be true to say that only those .debs cannot be used where there 
>  are warnings that the package may be broken? Like:
> 
> ...
> cp: cannot create regular file `./dpkg-repack-15399//etc/pam.d/cupsys': 
> No such file or directory
> dpkg-repack: Error running: cp -pd /etc/pam.d/cupsys 
> ./dpkg-repack-15399//etc/pam.d/cupsys

Don't you have a /etc/pam.d/cupsys? It's in the cupsys package unless
you delete it..

> tar: -: file name read contains nul character
> dpkg-repack: Problems were encountered in processing.
> dpkg-repack: The package may be broken.
> dpkg-deb: building package `cupsys' in `./cupsys_1.2.1-3_i386.deb'.
> ...

> And *all* uses of dpkg-repack have that "file name read contains nul 
> character" now.

That's bug #375749, which is harmless.

-- 
see shy jo


signature.asc
Description: Digital signature


Re: dpkg-repack warnings: what effect?

2006-07-24 Thread Joey Hess
(Thanks for the CC.)

Matthias Klose wrote:
> I haven't yet seen any reasoning why people are seeing that
> information as "cluttering the database" or just as "ugly".

Causing unrelated programs like dpkg-repack to spew warning messages is,
by definition, ugly.

Using X- fields, which are intended for nonstandard extensions, in the
core of Debian is also ugly.

> Same thing
> with a missing attribute "Homepage", which often is hidden in the
> description anyway.

Modify dpkg to properly add new fields if they're going to have common
usage in Debian. Using X- fields is fine for prototyping but not for
final implementations.

-- 
see shy jo, hyprocritically


signature.asc
Description: Digital signature


Re: Future of dh_python

2006-08-16 Thread Joey Hess
Raphael Hertzog wrote:
> As I can understand him, we really should respect his wish. If Matthias 
> agrees,
> I can extract the "dependency" generation code from dh_python and create
> a little perl library that would be included in the python package
> (or python-dev) and that would be used by dh_pysupport and dh_pycentral.
> I can also prepare patches for dh_pysupport/dh_pycentral.

If I were you, I would probably make that a little python program that
they can call. Up to you of course.

> python-support/central will have to depend on the new debhelper to avoid
> generating dependencies twice if dh_python is invoked (as is currently
> the case for most packages).
> 
> The new debhelper will have to be uploaded together with the new
> python-support/central to avoid any problem (If it is uploaded before,
> some packages may not have dependencies at all. If it is uploaded after,
> python-support/central won't be installable.)

Shouldn't be a problem as long as both python-support and python-central
can be modified..

> > Not all packages use the new python policy yet. For example, debconf
> > doesn't. I'm not sure if that's a bug or not. One alternative would be
> > reverting dh_python to the pre-NMU version (plus a small shim to make it
> > a no-op if it detects the new policy), to avoid breaking such packages
> > until they transition.
> 
> Indeed, for me it appears unavoidable (cf my suggestion above).
> And we must also coordinate the upload of the new version of the
> packages.

BTW, the main reason debconf doesn't use either method is because AFAIK
neither is written to be used by an effectively essential package, which
still needs to install if python is broken, not available, or too old. I
may have to end up writing my own postinst code in debconf to deal with
that, since the old method is also not very robust (#225384).

-- 
see shy jo


signature.asc
Description: Digital signature


Re: dpkg-gencontrol: warning: unknown substitution variable ${python:Depends}

2007-03-19 Thread Joey Hess
Ben Finney wrote:
> This is referring to the debian/control Depends field:
> 
> Depends: ${python:Depends}
> 
> Earlier, I had
> 
> Depends: ${python:Depends}, ${shlibs:Depends}, ${misc:Depends}

By removing misc:Depends, you are simply potentially shooting yourself
in the foot. Debhelper could need to add a dependency via misc:Depends
at some point in the future, and the only way you'll find out about it
is if you notice it in the changelog. If you keep misc:Depends in the
control file, debhelper will automatically do the right thing in the
future.

> and 'dpkg-gencontrol' complained about every one of those.

This is a misfeature of dpkg-gencontrol.

-- 
see shy jo


signature.asc
Description: Digital signature


Re: debhelper 7 and python-central

2008-05-17 Thread Joey Hess
Ben Finney wrote:
> Does anyone know debhelper better than me, and can suggest ways to
> improve that package's current 'debian/rules' file to make better use
> of debhelper 7 with 'python-central'?

python-central could include a dh sequence file, then you could use
something like:

dh binary-indep --with python-central

I might need to add a Debian::Debhelper::Dh_Lib::remove_command to the
sequence file interface, if it needs a way to actually remove the
dh_pysupport call, rather than just adding a dh_pycentral call.

-- 
see shy jo


signature.asc
Description: Digital signature


Re: FHS location for Python libraries as locally-compiled bytecode (was: debhelper 7 and python-central)

2008-05-21 Thread Joey Hess
Josselin Mouette wrote:
> At least python-support is not the only package to do that. On my
> system, the following directories are generated upon package
> installation and will not change in other situations:

FWIW, you forgot
  /var/lib/dpkg/info

(And yes, I've argued before that this does not belong in /var given a
strict reading of the FHS..)

-- 
see shy jo


signature.asc
Description: Digital signature


Re: RFS: quodlibet (1.0.ds1-1)

2008-06-03 Thread Joey Hess
Tristan Seligmann wrote:
>* Ship modified upstream tarball, removing insulting source code, and put a
>  note in README.Debian to explain why we're doing this (closes: #477454).

For the record, your README.Debian consists of:

   The upstream tarball for quodlibet in Debian does not match the one 
distributed
   by upstream, as a minor change has been made to it. The only difference 
between
   the two should be this diff:
   
   diff -rN -u old-quodlibet.upstream/player.py new-quodlibet.upstream/player.py
   --- old-quodlibet.upstream/player.py2008-06-03 19:45:12.247191545 +0200
   +++ new-quodlibet.upstream/player.py2008-06-03 19:45:12.311191392 +0200
   @@ -289,7 +289,7 @@
gst.debug_set_default_threshold(gst.LEVEL_ERROR)
if gst.element_make_from_uri(
gst.URI_SRC,
   -"file:///Sebastian/Droge/please/choke/on/a/bucket/of/cocks", ""):
   +"file:///fake/path/for/gst", ""):
global playlist
playlist = PlaylistPlayer(pipeline or "gconfaudiosink", librarian)
return playlist

If the presense of this buried in an internal source file is so
vile/illegal/unlike other profanity in software in Debian that you have to
*repackage* the upstream tarball to hide it from the tender eyes of our users
(with all the problems that entails), why do you then turn around and add it
back in to the most important file that we expect our users to read?

My mind boggles.


PS: What does quodlibet sponsorship have to do with the debian-python mailing
list?

-- 
see shy jo, wondering if perhaps the point is to shield the under-aged
python interpeter from the profanity, or what


signature.asc
Description: Digital signature


Re: RFS: quodlibet (1.0.ds1-1)

2008-06-03 Thread Joey Hess
Tristan Seligmann wrote:
> Well, fair enough; I suppose the README.Debian note should not be quite
> as explicit as I made it. I'm just not very happy with the gratuitous
> (in my view) change to the upstream tarball, so I wanted to be as clear
> about it as I could for anyone else wondering why it didn't match the
> released tarball. If it were up to me, I wouldn't be making this change
> at all, but it seems the alternative is to release lenny without
> quodlibet, which is not very satisfactory either.

There has never been a clear explaination in #477454 as to why the bug
should be considered RC at all, or why, if it is RC, it would require
modification of the upstream tarball to fix.

There have been vague mutterings about the content being illegal in
germany; I've already pointed out in the bug log several other instances
of personal insults included in Debian packages. If the people who think
this is illegal in germany, and that Debian should censor such speech
think this bug is RC, they need to begin a comprensive audit and mass RC
bug filing on all the other packages too. (They might also find certian
such insults on the Debian mailing lists..)

-- 
see shy jo


signature.asc
Description: Digital signature


Re: dh_pycentral and dh_pysupport clash

2008-07-05 Thread Joey Hess
Package: python-central

Ben Finney wrote:
> Ideally, I'd only need those rules to say:
> 
> =
> .PHONY: install
> install: build
> dh --with python_central install
> 
> .PHONY: binary-indep
> binary-indep: build install
> dh --with python_central binary-indep
> =
> 
> This does, in fact, cause the 'pdebuild' to succeed.
> 
> However, if 'python-support' *is* installed, then this causes *both*
> of 'dh_pysupport' and 'dh_pycentral' to run, and the resulting package
> fails 'lintian':

python-central's debhelper sequence file is missing a line to disable
the default python-support.

remove_command("dh_pysupport");

debhelper 7.0.14 is the first version that will work with.

-- 
see shy jo


signature.asc
Description: Digital signature


Re: Bug#520834: dh_auto_{build,install,clean} should support different python versions

2009-04-10 Thread Joey Hess
Julian Andres Klode wrote:
> pyversions -r lists all supported versions if the field in debian/control
> and debian/pyversions are both missing. If debian/pyversions is empty it
> would fail, but debian/pyversions should never be empty.
> 
> At least this is what I saw in my local testing.

You're right.
 
> If they use the standard functionality provided by python distutils,
> python-distutils-extra or python-setuptools it should work.
> 
> As far as I know cdbs also builds for all requested python versions,
> so it should be safe to adapt this way of building.
> 
> I CCed debian-python@lists.debian.org, so we can get some feedback
> from there.

I'm mostly worried about breaking any existing packages that use dh or
dh_auto_*, and somehow contain something that breaks if it's changed to
start building multiple times for multiple python versions. (There are
probably few if any such packages, but I do have to worry about backward
compatability when I change dh_auto_*.)

-- 
see shy jo


signature.asc
Description: Digital signature


Re: [pkg-fso-maint] Bug#547510: zhone refuse to start

2009-09-23 Thread Joey Hess
Joachim Breitner wrote:
> it seems that this is actually a bug in dh: It seems to call setup.py
> twice, once for each version of python, including adjusting the shebang
> line. Then, as the the python version tried last ist 2.4, this modified
> script is shipped with the package.
> 
> I’m not sure what to do differently, thus I’m CC’ing Joey: Is there
> something wrong with the way we package zhone (a python script, not a
> library)?

dh_auto_* looks at pyversions -r to determine which versions of python
the package is targeting, and builds it for each version to support
C python modules.

j...@gnu:~/tmp/zhone-0-git20090610>pyversions -r
pyversions: missing XS-Python-Version in control file, fall back to 
debian/pyversions
pyversions: missing debian/pyversions file, fall back to supported versions
python2.4 python2.5

We discussed possible breakage in #520834 but missed the case that python
script shebang lines would be modified like this. This seems to be done
by python2.4 setup.py, but not by python2.5 setup.py. In the latter case
you get #!/usr/bin/python. (Is this a bug in python2.4?)

So I suppose you could work around it by adding the control field listing one
python version, probably 2.5.

-- 
see shy jo


signature.asc
Description: Digital signature


Re: [pkg-fso-maint] Bug#547510: zhone refuse to start

2009-09-23 Thread Joey Hess
Joachim Breitner wrote:
> hi,
> 
> Am Mittwoch, den 23.09.2009, 21:27 +0200 schrieb Jakub Wilk:
> > >We discussed possible breakage in #520834 but missed the case that python
> > >script shebang lines would be modified like this. This seems to be done
> > >by python2.4 setup.py, but not by python2.5 setup.py. In the latter case
> > >you get #!/usr/bin/python. (Is this a bug in python2.4?)
> > 
> > Weird, dh should already take care of this:
> > 
> > $ grep shebang -C1 
> > /usr/share/perl5/Debian/Debhelper/Buildsystem/python_distutils.pm
> ># We need to to run setup.py with the default python first
> ># as distutils/setuptools modifies the shebang lines of scripts.
> ># This ensures that #!/usr/bin/python is used and not pythonX.Y
> > 
> > And, when I rebuild zhone from source, /usr/bin/zhone indeed ends up 
> > with the proper #!/usr/bin/python shebang.
> 
> I hope you didn’t try the version -5 I just uploaded :-)
> 
> Well, you need to ensure that the default python is run last, since the
> last copy of the script is the one that gets installed. (At least that’s
> my oberservation.)

Bernd, did you get it backwards when writing the above code?

Build order does not actually matter, but installation order does.
At least in this case, the last python version to run the install
overwrites the script from the other version, so default should be last.

-- 
see shy jo


signature.asc
Description: Digital signature


Re: [pkg-fso-maint] Bug#547510: zhone refuse to start

2009-09-23 Thread Joey Hess
Bernd Zeimetz wrote:
> Normally the scripts are not copied a second time, if they exist at the
> destination (have a look at winpdb, for example - if you want to build it in a
> chroot, don't forget to s/python/python-all/ in the build-deps. So usually - 
> and
> in my experience - dh does the right thing as it is now.
> The last time we had such an issue it was due to the setup.py doing weird 
> things
> (like creating the to-be-installed script on the fly). I didn't have the time 
> to
> investigate in zhone, but I'm kinda sure its an issue with its setup.py.

I can reproduce the same problem with winpdb if I comment out
the rules file's inclusion of dpatch. The patching changes the
mtime of winpdb.py, and that *somehow* causes setup.py to behave
differently and in a way that dh_auto_install must accidentially
depend on.

-- 
see shy jo


signature.asc
Description: Digital signature


Re: Bug#548392: debhelper: python_distutils buildsystem and, setuptools entry_points don't use default python

2009-09-26 Thread Joey Hess
Andrew Straw wrote:
> To be sure I understand, you're saying this is a bug with setuptools,
> because it autogenerates the /usr/bin/my_script improperly at install
> time when called by "python2.4 setup.py install"?

No, the problem is, loosely speaking, that python is on crack.

The order in which versions of python are run is only loosely correlated
to which version of the script is installed, and file timestamps are
somehow involved.

j...@gnu:~/tmp/winpdb-1.4.6>dh_auto_build >/dev/null 2>&1
j...@gnu:~/tmp/winpdb-1.4.6>touch build/scripts-2.4/*  
j...@gnu:~/tmp/winpdb-1.4.6>dh_auto_install >/dev/null 2>&1
j...@gnu:~/tmp/winpdb-1.4.6>head -1 debian/winpdb/usr/bin/winpdb
#!/usr/bin/python2.4
j...@gnu:~/tmp/winpdb-1.4.6>touch build/scripts-2.5/*
j...@gnu:~/tmp/winpdb-1.4.6>dh_auto_install >/dev/null 2>&1 
j...@gnu:~/tmp/winpdb-1.4.6>head -1 debian/winpdb/usr/bin/winpdb
#!/usr/bin/python
j...@gnu:~/tmp/winpdb-1.4.6>touch build/scripts-2.4/*
j...@gnu:~/tmp/winpdb-1.4.6>dh_auto_install >/dev/null 2>&1
hej...@gnu:~/tmp/winpdb-1.4.6>head -1 debian/winpdb/usr/bin/winpdb
#!/usr/bin/python2.4

-- 
see shy jo


signature.asc
Description: Digital signature


Re: Bug#548392: debhelper: python_distutils buildsystem and, setuptools entry_points don't use default python

2009-09-26 Thread Joey Hess
Joey Hess wrote:
> Andrew Straw wrote:
> > To be sure I understand, you're saying this is a bug with setuptools,
> > because it autogenerates the /usr/bin/my_script improperly at install
> > time when called by "python2.4 setup.py install"?
> 
> No, the problem is, loosely speaking, that python is on crack.
> 
> The order in which versions of python are run is only loosely correlated
> to which version of the script is installed, and file timestamps are
> somehow involved.

More to the point:

1. With your test script, the last version of python to run wins.
2. Building zhone, the last version of python to run wins.
3. Building winpdb, the *first* version of python to run wins.
4. Unless winpdb is modified not to use dpatch. Then the last
   version of python to run wins.
5. *Or* unless the build machine is slow[1], or we just get unlucky[2].
   Then, when building winpdb, the last version of python to run wins.

In 4 and 5, as well as my examples with touch, we see that
the install run order matters less than timestamps from the build
run. I hypothesisze that setuptools is doing something like this
to decide which script to install:

- Is one of the build/scripts newer than the others? Install it.
- Do all the build/scripts have the same timestamp? Install the first
  one, artitrarily.
- Something to do with the timestamp of the original source file, too?

-- 
see shy jo

[1] Simulated by making debhelper sleep for 5 seconds after each
call to setup.py.
[2] Ie, I assume there is a race condition here; if the clock ticks
at the right point during the build, the result will change.
(Also probably filesystem dependent.)


signature.asc
Description: Digital signature