|
|

06-27-2008, 01:31 PM
|
|
|
Another multiarch decision
Aurelien Jarno <aurelien@aurel32.net> writes:
> On Thu, Jun 26, 2008 at 01:32:47AM +0200, Goswin von Brederlow wrote:
>> Hi,
>>
>> I cleaned up some more of the old multiarch patches and hit another
>> spot where a decision must be made:
>>
>> ----------------------------------------------------------------------
>> Unpacking libhello/i386 (from .../libhello/libhello_1.0_i386.deb) ...
>> dpkg: error processing /home/mrvn/src/libhello/libhello_1.0_i386.deb (--install):
>> trying to overwrite `/usr/share/doc/libhello/changelog.gz', which is also in package libhello/amd64
>> ----------------------------------------------------------------------
>>
>> Every package must have a changelog and copyright and many also have a
>> Readme and NEWS file. Those and any other files in doc will collide
>> for multiarch.
>>
>> Dpkg could rename the files for the non native architecture by
>> prefixing them with the architecture, e.g.
>> /usr/share/doc/libhello/i386_changelog.gz
>> or
>> /usr/share/doc/libhello/i386/changelog.gz
>
> I don't really like this idea, this will most probably confuse the user,
> while also probably duplicating data.
They get used to it. They already have to learn the apt and dpkg
syntax of libfoo/i386 and will see that syntax in the dpkg output when
installing packages. I have faith in the ability of our users to learn.
An if the duplicating the doc files is amounting to anything then a
-common package would be called for. This would be truely just for
packages where a -common package is miniscule and therefore just
bloat.
On my server 903 out of 1298 packages have a /usr/share/doc below
100k, 639 below 50k, 402 below 30k. All including filesystem overhead
for 4k blocks.
> At some point it has been decided to provide a -common package for every
> package converted to multiarch, containing changelog, README, NEWS, and
> probably more thinks like man pages, info pages, etc.
>
> Then multiarch package could simply add a link from
> /usr/share/doc/package to /usr/share/doc/package-common, and we should
> change dpkg to allow a symlink to be overrided by another if both point
> to the same location.
>
> What do you think?
The only problem here is one of reference counting. dpkg would have to
know when the last package with the symlink is removed. Dpkg already
handles that for directories. If nothing else then packages could just
create the symlink in presinst if missing and contain an empty
directory.
So technically that is a minor problem. But as said before that would
create a lot of miniscule packages.
MfG
Goswin
--
To UNSUBSCRIBE, email to debian-dpkg-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
|
|

07-01-2008, 04:23 PM
|
|
|
Another multiarch decision
On Fri, Jun 27, 2008 at 03:31:51PM +0200, Goswin von Brederlow wrote:
> Aurelien Jarno <aurelien@aurel32.net> writes:
>
> > On Thu, Jun 26, 2008 at 01:32:47AM +0200, Goswin von Brederlow wrote:
> >> Hi,
> >>
> >> I cleaned up some more of the old multiarch patches and hit another
> >> spot where a decision must be made:
> >>
> >> ----------------------------------------------------------------------
> >> Unpacking libhello/i386 (from .../libhello/libhello_1.0_i386.deb) ...
> >> dpkg: error processing /home/mrvn/src/libhello/libhello_1.0_i386.deb (--install):
> >> trying to overwrite `/usr/share/doc/libhello/changelog.gz', which is also in package libhello/amd64
> >> ----------------------------------------------------------------------
> >>
> >> Every package must have a changelog and copyright and many also have a
> >> Readme and NEWS file. Those and any other files in doc will collide
> >> for multiarch.
> >>
> >> Dpkg could rename the files for the non native architecture by
> >> prefixing them with the architecture, e.g.
> >> /usr/share/doc/libhello/i386_changelog.gz
> >> or
> >> /usr/share/doc/libhello/i386/changelog.gz
> >
> > I don't really like this idea, this will most probably confuse the user,
> > while also probably duplicating data.
>
> They get used to it. They already have to learn the apt and dpkg
> syntax of libfoo/i386 and will see that syntax in the dpkg output when
> installing packages. I have faith in the ability of our users to learn.
I don't really agree with that. Looking at the bug reports, a lot of
them are not used to /usr/share/doc/ so changing that a bit more won't
help.
Also I just hope that most of them won't have to learn for the syntax of
libfoo/i386, that is to say apt will be able to automatically install
the packages of another architecture if a package is only available
let's say on i386 (e.g. java web plugin).
> An if the duplicating the doc files is amounting to anything then a
> -common package would be called for. This would be truely just for
> packages where a -common package is miniscule and therefore just
> bloat.
It won't be that miniscule, a lot of packages already have data which
can go into a -common package, like manpages for example, but that
currently are in an arch package.
> On my server 903 out of 1298 packages have a /usr/share/doc below
> 100k, 639 below 50k, 402 below 30k. All including filesystem overhead
> for 4k blocks.
>
> > At some point it has been decided to provide a -common package for every
> > package converted to multiarch, containing changelog, README, NEWS, and
> > probably more thinks like man pages, info pages, etc.
> >
> > Then multiarch package could simply add a link from
> > /usr/share/doc/package to /usr/share/doc/package-common, and we should
> > change dpkg to allow a symlink to be overrided by another if both point
> > to the same location.
> >
> > What do you think?
>
> The only problem here is one of reference counting. dpkg would have to
> know when the last package with the symlink is removed. Dpkg already
> handles that for directories. If nothing else then packages could just
> create the symlink in presinst if missing and contain an empty
> directory.
>
> So technically that is a minor problem. But as said before that would
> create a lot of miniscule packages.
>
> MfG
> Goswin
>
--
.'`. Aurelien Jarno | GPG: 1024D/F1BCDB73
: :' : Debian developer | Electrical Engineer
`. `' aurel32@debian.org | aurelien@aurel32.net
`- people.debian.org/~aurel32 | www.aurel32.net
--
To UNSUBSCRIBE, email to debian-dpkg-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
|
|

07-01-2008, 04:54 PM
|
|
|
Another multiarch decision
Aurelien Jarno <aurelien@aurel32.net> writes:
> On Fri, Jun 27, 2008 at 03:31:51PM +0200, Goswin von Brederlow wrote:
>> Aurelien Jarno <aurelien@aurel32.net> writes:
>>
>> > On Thu, Jun 26, 2008 at 01:32:47AM +0200, Goswin von Brederlow wrote:
>> >> Hi,
>> >>
>> >> I cleaned up some more of the old multiarch patches and hit another
>> >> spot where a decision must be made:
>> >>
>> >> ----------------------------------------------------------------------
>> >> Unpacking libhello/i386 (from .../libhello/libhello_1.0_i386.deb) ...
>> >> dpkg: error processing /home/mrvn/src/libhello/libhello_1.0_i386.deb (--install):
>> >> trying to overwrite `/usr/share/doc/libhello/changelog.gz', which is also in package libhello/amd64
>> >> ----------------------------------------------------------------------
>> >>
>> >> Every package must have a changelog and copyright and many also have a
>> >> Readme and NEWS file. Those and any other files in doc will collide
>> >> for multiarch.
>> >>
>> >> Dpkg could rename the files for the non native architecture by
>> >> prefixing them with the architecture, e.g.
>> >> /usr/share/doc/libhello/i386_changelog.gz
>> >> or
>> >> /usr/share/doc/libhello/i386/changelog.gz
>> >
>> > I don't really like this idea, this will most probably confuse the user,
>> > while also probably duplicating data.
>>
>> They get used to it. They already have to learn the apt and dpkg
>> syntax of libfoo/i386 and will see that syntax in the dpkg output when
>> installing packages. I have faith in the ability of our users to learn.
>
> I don't really agree with that. Looking at the bug reports, a lot of
> them are not used to /usr/share/doc/ so changing that a bit more won't
> help.
>
> Also I just hope that most of them won't have to learn for the syntax of
> libfoo/i386, that is to say apt will be able to automatically install
> the packages of another architecture if a package is only available
> let's say on i386 (e.g. java web plugin).
That is left for frontends to decide. I would guess so.
>> An if the duplicating the doc files is amounting to anything then a
>> -common package would be called for. This would be truely just for
>> packages where a -common package is miniscule and therefore just
>> bloat.
>
> It won't be that miniscule, a lot of packages already have data which
> can go into a -common package, like manpages for example, but that
> currently are in an arch package.
45M /usr/share/man
Miniscule.
And I don't expect many 'Multi-Arch: abi' packages to have
manpages. Libraries generally don't.
MfG
Goswin
--
To UNSUBSCRIBE, email to debian-dpkg-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
|
|

07-02-2008, 12:32 AM
|
|
|
Another multiarch decision
Goswin von Brederlow <goswin-v-b@web.de> writes:
> And I don't expect many 'Multi-Arch: abi' packages to have
> manpages. Libraries generally don't.
Yeah, library man pages should be in the -dev or a separate -doc package
anyway, and already normally can't be in the package containing the actual
shared library without violating Policy 8.2.
--
Russ Allbery (rra@debian.org) <http://www.eyrie.org/~eagle/>
--
To UNSUBSCRIBE, email to debian-dpkg-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
|
|
|
All times are GMT. The time now is 01:24 AM.
VBulletin, Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright ©2007 - 2008, www.linux-archive.org
|