LINUX.ORG.RU

npm2rpm ERROR: the path for dependency already exists

 , ,


0

1

Я использую npm2rpm для сборки npm пакета verdaccio в rpm Мои исходники https://github.com/patsevanton/verdaccio-rpm

spec файл https://github.com/patsevanton/verdaccio-rpm/blob/master/verdaccio-rpm.spec

Создаю нужные директории

mkdir -p ./{RPMS,SRPMS,BUILD,SOURCES,SPECS}

Выкачиваю исходники

spectool --directory SOURCES -g verdaccio-rpm.spec
Getting https://registry.npmjs.org/verdaccio/-/verdaccio-4.4.0.tgz to SOURCES/verdaccio-4.4.0.tgz
SOURCES/verdaccio-4.4.0.tgz already exists, skipping download

запускаю rpmbuild

rpmbuild --clean --define "_topdir `pwd`" -bi verdaccio-rpm.spec
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.n8iiLV
+ umask 022
+ cd /root/verdaccio-rpm/BUILD
+ ls
+ pwd
/root/verdaccio-rpm/BUILD
+ find . -name '*node_modules*'
+ find . -name '*ui-theme*'
+ cd /root/verdaccio-rpm/BUILD
+ rm -rf package
+ /usr/bin/gzip -dc /root/verdaccio-rpm/SOURCES/verdaccio-4.4.0.tgz
+ /usr/bin/tar -xf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd package
+ /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ find . -name '*node_modules*'
+ find . -name '*ui-theme*'
+ exit 0
Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.hF9JZw
+ umask 022
+ cd /root/verdaccio-rpm/BUILD
+ '[' /root/verdaccio-rpm/BUILDROOT/nodejs-verdaccio-4.4.0-1.el7.x86_64 '!=' / ']'
+ rm -rf /root/verdaccio-rpm/BUILDROOT/nodejs-verdaccio-4.4.0-1.el7.x86_64
++ dirname /root/verdaccio-rpm/BUILDROOT/nodejs-verdaccio-4.4.0-1.el7.x86_64
+ mkdir -p /root/verdaccio-rpm/BUILDROOT
+ mkdir /root/verdaccio-rpm/BUILDROOT/nodejs-verdaccio-4.4.0-1.el7.x86_64
+ cd package
+ mkdir -p /root/verdaccio-rpm/BUILDROOT/nodejs-verdaccio-4.4.0-1.el7.x86_64/usr/lib/node_modules/verdaccio
+ cp -pfr bin /root/verdaccio-rpm/BUILDROOT/nodejs-verdaccio-4.4.0-1.el7.x86_64/usr/lib/node_modules/verdaccio
+ cp -pfr build /root/verdaccio-rpm/BUILDROOT/nodejs-verdaccio-4.4.0-1.el7.x86_64/usr/lib/node_modules/verdaccio
+ cp -pfr conf /root/verdaccio-rpm/BUILDROOT/nodejs-verdaccio-4.4.0-1.el7.x86_64/usr/lib/node_modules/verdaccio
+ cp -pfr index.js /root/verdaccio-rpm/BUILDROOT/nodejs-verdaccio-4.4.0-1.el7.x86_64/usr/lib/node_modules/verdaccio
+ cp -pfr package.json /root/verdaccio-rpm/BUILDROOT/nodejs-verdaccio-4.4.0-1.el7.x86_64/usr/lib/node_modules/verdaccio
+ cp -pfr systemd /root/verdaccio-rpm/BUILDROOT/nodejs-verdaccio-4.4.0-1.el7.x86_64/usr/lib/node_modules/verdaccio
+ cp -pfr tsconfig.json /root/verdaccio-rpm/BUILDROOT/nodejs-verdaccio-4.4.0-1.el7.x86_64/usr/lib/node_modules/verdaccio
+ mkdir -p /root/verdaccio-rpm/BUILDROOT/nodejs-verdaccio-4.4.0-1.el7.x86_64/usr/bin
+ chmod 0755 /root/verdaccio-rpm/BUILDROOT/nodejs-verdaccio-4.4.0-1.el7.x86_64/usr/lib/node_modules/verdaccio/bin/verdaccio
+ ln -sf /usr/lib/node_modules/verdaccio/bin/verdaccio /root/verdaccio-rpm/BUILDROOT/nodejs-verdaccio-4.4.0-1.el7.x86_64/usr/bin/verdaccio
+ /usr/lib/rpm/nodejs-symlink-deps /usr/lib/node_modules

ERROR: the path for dependency "@verdaccio/ui-theme" already exists

This could mean that bundled modules are being installed.  Bundled libraries are
forbidden in Fedora. For more information, see:
    <https://fedoraproject.org/wiki/Packaging:No_Bundled_Libraries>
    
It is generally reccomended to remove the entire "node_modules" directory in
%prep when it exists. For more information, see:
    <https://fedoraproject.org/wiki/Packaging:Node.js#Removing_bundled_modules>
    
If you have obtained permission from the Fedora Packaging Committee to bundle
libraries, please use `%nodejs_fixdep -r` in %prep to remove the dependency on
the bundled module. This will prevent an unnecessary dependency on the system
version of the module and eliminate this error.
error: Bad exit status from /var/tmp/rpm-tmp.hF9JZw (%install)


RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.hF9JZw (%install)

Как исправить ошибку ? %nodejs_fixdep -r не помогает Спасибо