Bug 1167443 - i18n subpackage owns directories it shouldn't
Summary: i18n subpackage owns directories it shouldn't
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: procps-ng
Version: 21
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Jaromír Cápík
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-11-24 19:25 UTC by Mario Blättermann
Modified: 2016-02-01 02:00 UTC (History)
3 users (show)

Fixed In Version: procps-ng-3.3.10-5.fc21
Clone Of:
Environment:
Last Closed: 2015-01-03 19:02:14 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Mario Blättermann 2014-11-24 19:25:28 UTC
Description of problem:
The subpackage procps-ng-i18n owns directories which are already owned by other packages.

Version-Release number of selected component (if applicable):
3.3.10-4.fc21

$ rpm -ql procps-ng-i18n
/usr/share/locale/de
/usr/share/locale/de/LC_MESSAGES
/usr/share/locale/de/LC_MESSAGES/procps-ng.mo
/usr/share/locale/fr
/usr/share/locale/fr/LC_MESSAGES
/usr/share/locale/fr/LC_MESSAGES/procps-ng.mo
/usr/share/locale/pl
/usr/share/locale/pl/LC_MESSAGES
/usr/share/locale/pl/LC_MESSAGES/procps-ng.mo
/usr/share/locale/uk
/usr/share/locale/uk/LC_MESSAGES
/usr/share/locale/uk/LC_MESSAGES/procps-ng.mo
/usr/share/locale/vi
/usr/share/locale/vi/LC_MESSAGES
/usr/share/locale/vi/LC_MESSAGES/procps-ng.mo

The package should own the *.mo files only, no directories at all (already owned by the "filesystem" package).

Have a look in the current packaging guidelines:
http://fedoraproject.org/wiki/Packaging:Guidelines#Handling_Locale_Files

You need to use the %find_lang macro to fix this. Instead of list all the mo files, you call this macro and all is fine. It also works for Gnome docs, Qt translations (*.qm) and man pages.


BTW, I found some more issues:

BuildRequires: gettext-devel

Not needed for just creating compiled files from *.po files. Use "gettext", that's all.

rm -f %{buildroot}%{_mandir}/{de,fr,uk}/man1/kill.1

What's the reason to kill the "kill" man pages? Well, I see a conflict with man-pages-fr which also contains kill.1, but this has to be solved there and in any case not by dropping translations for other languages. Upstream maintained man page translations should always take precedence over downstream ones.

Comment 1 Jaromír Cápík 2014-11-25 15:15:14 UTC
Hi Mario.

The gettext package is insufficient. The gettext-devel is required so that the autopoint can be executed, otherwise the following error is thrown:

---
Can't exec "autopoint": No such file or directory at /usr/share/autoconf/Autom4te/FileUtils.pm line 345.
autoreconf: failed to run autopoint: No such file or directory
autoreconf: autopoint is needed because this package uses Gettext
---

The kill.1 removal is also required as the kill command is provided by util-linux, not by the procps-ng package. This needs to be fixed upstream in the future releases.

The missing %find_lang macro is my mistake. I know the macro well, but completely forgot to use it due to the overwork I was facing a month ago.

Will fix it soon.

Thanks,
Jaromir.

Comment 2 Mario Blättermann 2014-11-25 18:55:06 UTC
(In reply to Jaromír Cápík from comment #1)
> The kill.1 removal is also required as the kill command is provided by
> util-linux, not by the procps-ng package. This needs to be fixed upstream in
> the future releases.
> 
What does this mean? Will kill.1 be removed from the util-linux package or from procps-ng?

Having a look at some other distributions, I see the following packages which contain the kill binary and its man page:

Archlinux - util-linux
Debian - procps
Mageia - util-linux
Openmandriva - util-linux
Opensuse - util-linux
Slackware - util-linux
Ubuntu - procps

Obviously only Debian and derivatives use kill from procps. Well, that's a quite large audience, but all the other distro developers will have good reasons to choose the util-linux one... Besides that, we have killall from psmisc and skill in procps-ng anyway, not to forget the bash builtin. Does procps really need its own kill command? Both procps and util-linux are part of a typical minimum environment, so we don't have to think about the presence or not-presence of one of them.

Comment 3 Fedora Update System 2014-11-25 19:42:48 UTC
procps-ng-3.3.10-5.fc21 has been submitted as an update for Fedora 21.
https://admin.fedoraproject.org/updates/procps-ng-3.3.10-5.fc21

Comment 4 lnie 2014-11-26 07:45:40 UTC
Tested with procps-ng-3.3.10-5.fc21,locales directory ownership is fixed

Comment 5 Jaromír Cápík 2014-11-26 13:25:20 UTC
(In reply to Mario Blättermann from comment #2)
> (In reply to Jaromír Cápík from comment #1)
> > The kill.1 removal is also required as the kill command is provided by
> > util-linux, not by the procps-ng package. This needs to be fixed upstream in
> > the future releases.
> > 
> What does this mean? Will kill.1 be removed from the util-linux package or
> from procps-ng?

Both upstreams maintain a different (and maybe not 100% compatible) source of the kill command and it will very probably stay like that as some of the linux distributions use the kill from util-linux and other take it from procps-ng. The procps-ng sources contain a configuration switch called "--disable-kill", but as the installation of translated manpages is not supported yet, they need to be installed with the find... command and then the redundant ones removed afterwards.

 
> Having a look at some other distributions, I see the following packages
> which contain the kill binary and its man page:
> 
> Archlinux - util-linux
> Debian - procps
> Mageia - util-linux
> Openmandriva - util-linux
> Opensuse - util-linux
> Slackware - util-linux
> Ubuntu - procps
> 
> Obviously only Debian and derivatives use kill from procps.

You listed only few distros, but hundreds of linux distros exist and we don't want to break stuff so that we keep kill untouched. The command doesn't need much maintenance and that's why we tolerate the small redundancy here.

Comment 6 Mario Blättermann 2014-11-26 16:21:05 UTC
(In reply to Jaromír Cápík from comment #5) 
> You listed only few distros, but hundreds of linux distros exist and we
> don't want to break stuff so that we keep kill untouched. The command
> doesn't need much maintenance and that's why we tolerate the small
> redundancy here.

As far as I understand, Fedora will keep providing the kill command in util-linux. Then I will extract its man page translation from the current po file in procps-ng and ship it with the man-pages-de package (which I co-maintain anyway).

Having a look at the latest build, I have no further objections regarding the actual topic of this ticket. I close it now.

Comment 7 Jaromír Cápík 2014-11-28 14:56:59 UTC
Putting back to MODIFIED as the ticket is going to be closed by Bodhi once the update hits stable.

Comment 8 Fedora Update System 2015-01-03 19:02:14 UTC
procps-ng-3.3.10-5.fc21 has been pushed to the Fedora 21 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.