Packaging help needed: Prevent noarch package from requiring 32bit RPMs on a 64bit system

Miro Hrončok miro at hroncok.cz
Wed Oct 31 21:13:19 UTC 2012


So how is this done in official repos? Different architectures are
kept separatelly and I need to provide two repos?

Miro Hrončok

Jabber: miro at hroncok.cz
Telefon: +420777974800


2012/10/31 Paul Howarth <paul at city-fan.org>:
> On Wed, 31 Oct 2012 16:26:46 +0100
> Miro Hrončok <miro at hroncok.cz> wrote:
>
>> Hi,
>> I am trying to package slic3r -> it is a perl noarch package, but it
>> requires a lot of arch specific perl modules.
>>
>> The Requires section form spec file:
>>
>> Requires:       perl(XML::SAX)
>> Requires:       perl(Growl::GNTP)
>> Requires:       perl(Net::DBus)
>> Requires:       perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`";
>> echo $version))
>>
>> https://github.com/hroncok/SPECS/blob/master/slic3r.spec
>>
>> The rest of Requires are automatically added.
>>
>> When I built the package and add it to the repository together with
>> required packages I made, it requires arch mishmash on a 64bit system:
>>
>> Install:
>>  slic3r                         noarch   myrepo
>> Install requires:
>>  perl-Boost-Geometry-Utils      i686     myrepo
>>  perl-Class-Accessor            noarch
>>  perl-Class-Method-Modifiers    noarch
>>  perl-Crypt-CBC                 noarch
>>  perl-Devel-Symdump             noarch
>>  perl-Digest-SHA                x86_64
>>  perl-Digest-SHA1               x86_64
>>  perl-File-HomeDir              noarch
>>  perl-File-Which                noarch
>>  perl-Growl-GNTP                noarch   myrepo
>>  perl-JSON                      noarch
>>  perl-Language-Expr             noarch   myrepo
>>  perl-Math-Clipper              i686     myrepo
>>  perl-Math-ConvexHull           noarch   myrepo
>>  perl-Math-Expression-Evaluator noarch   myrepo
>>  perl-Math-Factor-XS            i686     myrepo
>>  perl-Math-Geometry-Voronoi     i686     myrepo
>>  perl-Math-Libm                 x86_64   myrepo
>>  perl-Math-NumSeq               noarch   myrepo
>>  perl-Math-PlanePath            noarch   myrepo
>>  perl-Math-Prime-XS             i686     myrepo
>>  perl-Math-Symbolic             noarch
>>  perl-Module-Load               noarch
>>  perl-Module-Util               noarch
>>  perl-Moo                       noarch
>>  perl-Net-DBus                  x86_64
>>  perl-Params-Validate           x86_64
>>  perl-Parse-RecDescent          noarch
>>  perl-Pod-Coverage              noarch
>>  perl-Regexp-Grammars           noarch
>>  perl-Role-Tiny                 noarch
>>  perl-SVG                       noarch
>>  perl-Test-Pod                  noarch
>>  perl-Test-Pod-Coverage         noarch
>>  perl-Test-Simple               noarch
>>  perl-UUID-Tiny                 noarch   myrepo
>>  perl-Wx                        x86_64
>>  perl-XML-Twig                  noarch
>>  perl-boolean                   noarch
>>  perl-constant-defer            noarch   myrepo
>>  perl-libintl                   x86_64
>>  perl-parent                    noarch
>>  perl-strictures                noarch
>>
>> Lines with myrepo are made by me, you can see specs here:
>> https://github.com/hroncok/SPECS/
>>
>> As you can see, it installs 64bit required packages from officail
>> repositories, but it installs 32bit packages from mine (64bit packages
>> also exists, that's not the problem).
>>
>> It installs slic3r, but it won't work, as it looks up its't arch
>> specific modules in 64bit directories.
>>
>> If I manually run
>> yum install perl-Boost-Geometry-Utils perl-Math-Clipper
>> perl-Math-Factor-XS perl-Math-Geometry-Voronoi perl-Math-Prime-XS
>> slic3r
>>
>> It works as expected (install 64bit packages).
>>
>> What should I as a packager do, to avoid this situation?
>>
>> Thank you very much.
>
>
> I think this is down to having both i686 and x86_64 perl module
> packages in your own repo; I don't think Fedora multilibs perl modules.
>
> Paul.
> --
> devel mailing list
> devel at lists.fedoraproject.org
> https://admin.fedoraproject.org/mailman/listinfo/devel


More information about the devel mailing list