I am working on a review of the package xvst [1]
The binary package contains translations in /usr/share/xvst/languages. Those files need to be handled by %find_lang. The package uses the strange *.language extension for the non-qm files in that directory.
I tried already the following by setting
%find_lang xVST --with-qt
%exclude %{_datadir}/%{name}/languages/*qm
The *.language files are also locale files in common sense, but find_lang isn't able to handle them. This is the last change in the rpm spec file [2]
Have someone a idea how to handle this ?
[1] https://bugzilla.rpmfusion.org/show_bug.cgi?id=3563 [2] https://www.dropbox.com/s/1cu7oc436ygkadx/xvst.spec?dl=0
"MG" == Martin Gansser linux4martin@web.de writes:
MG> The *.language files are also locale files in common sense, but MG> find_lang isn't able to handle them.
I guess you could try passing --all-name and see if it finds anything. I don't think it will help, though. And if it doesn't, then don't use %find_lang. If it doesn't work for your situation, you can always just list the files out normally. %find_lang is simply a really huge convenience in the vast majority of cases.
Yes, the guidelines say you _must_ use %find_lang: https://fedoraproject.org/wiki/Packaging:Guidelines#Why_do_we_need_to_use_.2... but, hey, if it doesn't actually work because the files you're trying to use aren't "locale" files according to %find_lang, then do what you have to do. Certainly add comments to your spec indicating why %find_lang doesn't work, and maybe file a bug against rpm explaining the situation. %find_lang just calls /usr/lib/rpm/find-lang.sh and it should be trivial to add another option to process the files you have (assuming you can actually understand find-lang.sh, which is.... not particularly easy to follow.
You could also run your own script to do it directly (copied and modified from find-lang.sh) if you don't like listing out all of the files directly.
- J<
Hi Jason,
Am 19.03.2015 um 16:34 schrieb Jason L Tibbitts III:
Yes, the guidelines say you _must_ use %find_lang: https://fedoraproject.org/wiki/Packaging:Guidelines#Why_do_we_need_to_use_.2... but, hey, if it doesn't actually work because the files you're trying to use aren't "locale" files according to %find_lang, then do what you have to do. Certainly add comments to your spec indicating why %find_lang doesn't work, and maybe file a bug against rpm explaining the situation. %find_lang just calls /usr/lib/rpm/find-lang.sh and it should be trivial to add another option to process the files you have (assuming you can actually understand find-lang.sh, which is.... not particularly easy to follow.
The %find_lang macro is particularly useful for *.mo files from Gettext, because they get installed in a nested directory structure. In Qt, the files are in a single directory. Normally, we would exclude the dir content from the file list (adding the empty dir with %dir) and let find_lang generate the appropriate file list. Well, it is useful for the mentioned Gettext files and man pages. But in our special case with the *.language files in the same directory, it is actually too difficult to use, and I see no advantage. In my review I had pointed to find_lang because the guidelines "force" us to use it, but if we could get an exception here, it would be great.
Best Regards, Mario
"MB" == Mario Blättermann mario.blaettermann@gmail.com writes:
MB> In my review I had pointed to find_lang because the guidelines MB> "force" us to use it, but if we could get an exception here, it MB> would be great.
There's no process for being granted an exception; that's up to the reviewer and all that we ask is that such things be documented in the spec.
But if it matters, as an FPC member I suggest you just go ahead.
- J<
On Thu, 19 Mar 2015 17:06:54 +0100, Mario Blättermann wrote:
In my review I had pointed to find_lang because the guidelines "force" us to use it,
When it works.
but if we could get an exception here, it would be great.
One compromise being that you can use %find_lang for the files it finds and _append_ your own list of %lang(…) files to the file that %find_lang created.
packaging@lists.fedoraproject.org