FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > ArchLinux > ArchLinux Development

 
 
LinkBack Thread Tools
 
Old 10-28-2011, 04:23 PM
Pierre Schmitz
 
Default Issues with non-ASCII path names in packages

Hi all,

we found some issues with libarchive and some file names when using the
C locale. For example try
$ bsdtar tf ca-certificates-20111025-1-any.pkg.tar.xz (from
testing)
The result will be "bsdtar: Pathname in pax header can't be converted
to current locale." Fun fact: The package was created using the C
locale. Due to this pacman will refuse to install this package when
using the C locale which is used e.g. by our build tools.

Ignoring the question if we should avoid packaging such file names we
might have a bigger problem here: our C locale does not work well with
unicode names. To solve such issues our friends at Debian introduced a
new C.UTF-8 locale. This might be a better alternative than forcing e.g.
en_US.UTF-8 as default locale which might have other consequences;
different sorting behavior for example. Some information can be found at
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=609306 and
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=522776

What is your opinion about this? Of course the easiest solution would
be to ensure that all packages only contain ASCII file names. I also
wonder if there any real world use cases for using non-utf8 locales.

Greetings,

Pierre


--
Pierre Schmitz, https://users.archlinux.de/~pierre
 
Old 10-28-2011, 11:08 PM
Allan McRae
 
Default Issues with non-ASCII path names in packages

On 29/10/11 02:23, Pierre Schmitz wrote:

Hi all,

we found some issues with libarchive and some file names when using the
C locale. For example try
$ bsdtar tf ca-certificates-20111025-1-any.pkg.tar.xz (from
testing)
The result will be "bsdtar: Pathname in pax header can't be converted
to current locale." Fun fact: The package was created using the C
locale. Due to this pacman will refuse to install this package when
using the C locale which is used e.g. by our build tools.


Has anyone tested whether the package is created correctly using the
previous version of libarchive? The previous ca-certificates package
has non-ASCII filenames in it too and worked fine, so I would suspect
this is an issue with the current libarchive.



Ignoring the question if we should avoid packaging such file names we
might have a bigger problem here: our C locale does not work well with
unicode names. To solve such issues our friends at Debian introduced a
new C.UTF-8 locale. This might be a better alternative than forcing e.g.
en_US.UTF-8 as default locale which might have other consequences;
different sorting behavior for example. Some information can be found at
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=609306 and
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=522776


I usually refuse to add extra locales to glibc beyond that included
upstream. Maintaining extra locales is a massive burden and I do not
want to open the door for requests to add (e.g.) all the locales Debian
does...


Allan
 
Old 10-29-2011, 12:27 AM
Allan McRae
 
Default Issues with non-ASCII path names in packages

On 29/10/11 09:08, Allan McRae wrote:

On 29/10/11 02:23, Pierre Schmitz wrote:

Hi all,

we found some issues with libarchive and some file names when using the
C locale. For example try
$ bsdtar tf ca-certificates-20111025-1-any.pkg.tar.xz (from
testing)
The result will be "bsdtar: Pathname in pax header can't be converted
to current locale." Fun fact: The package was created using the C
locale. Due to this pacman will refuse to install this package when
using the C locale which is used e.g. by our build tools.


Has anyone tested whether the package is created correctly using the
previous version of libarchive? The previous ca-certificates package has
non-ASCII filenames in it too and worked fine, so I would suspect this
is an issue with the current libarchive.


Downgrading libarchive is not enough. So maybe not a libarchive issue.
And rebuilding the ca-certificates package that is in [core] results
in the same issue. So what has changed between the time the package in
[core] was built and now to cause this issue?


Allan
 
Old 10-29-2011, 11:08 AM
Allan McRae
 
Default Issues with non-ASCII path names in packages

On 29/10/11 10:27, Allan McRae wrote:

On 29/10/11 09:08, Allan McRae wrote:

On 29/10/11 02:23, Pierre Schmitz wrote:

Hi all,

we found some issues with libarchive and some file names when using the
C locale. For example try
$ bsdtar tf ca-certificates-20111025-1-any.pkg.tar.xz (from
testing)
The result will be "bsdtar: Pathname in pax header can't be converted
to current locale." Fun fact: The package was created using the C
locale. Due to this pacman will refuse to install this package when
using the C locale which is used e.g. by our build tools.


Has anyone tested whether the package is created correctly using the
previous version of libarchive? The previous ca-certificates package has
non-ASCII filenames in it too and worked fine, so I would suspect this
is an issue with the current libarchive.


Downgrading libarchive is not enough. So maybe not a libarchive issue.
And rebuilding the ca-certificates package that is in [core] results in
the same issue. So what has changed between the time the package in
[core] was built and now to cause this issue?



The answer is initscripts... makepkg resources /etc/profile after
installing deps to get updated PATH etc. Now this changes the locale.
Yay!


Allan
 
Old 10-29-2011, 02:23 PM
Andreas Radke
 
Default Issues with non-ASCII path names in packages

Am Sat, 29 Oct 2011 21:08:45 +1000
schrieb Allan McRae <allan@archlinux.org>:

> The answer is initscripts... makepkg resources /etc/profile after
> installing deps to get updated PATH etc. Now this changes the
> locale. Yay!
>
> Allan
>

Any workaround known?

It holds back the LibreOffice build in staging and probably more.

-Andy
 
Old 10-29-2011, 02:53 PM
Pierre Schmitz
 
Default Issues with non-ASCII path names in packages

Am 29.10.2011 16:23, schrieb Andreas Radke:
> Am Sat, 29 Oct 2011 21:08:45 +1000
> schrieb Allan McRae <allan@archlinux.org>:
>
>> The answer is initscripts... makepkg resources /etc/profile after
>> installing deps to get updated PATH etc. Now this changes the
>> locale. Yay!
>>
>> Allan
>>
>
> Any workaround known?
>
> It holds back the LibreOffice build in staging and probably more.

I am on it. Is it only about the ca-certificates package? I can fix it
right away if needed.

--
Pierre Schmitz, http://pierre-schmitz.com
 
Old 10-29-2011, 03:02 PM
Andrea Scarpino
 
Default Issues with non-ASCII path names in packages

On Saturday 29 October 2011 16:23:14 s Radke wrote:
> Any workaround known?
>
> It holds back the LibreOffice build in staging and probably more.
$ sudo makechrootpkg -c -r /var/tmp/archbuild/$repo-arch/ -I ca-
certificates-20110502+nmu1-1-any.pkg.tar.xz
$ cd svn-packages/$pkg/trunk
$ sudo makechrootpkg -r /var/tmp/archbuild/$repo-arch/

--
Andrea
 

Thread Tools




All times are GMT. The time now is 07:46 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org