LINUX.ORG.RU

Gentoo Установка/обновление КриптоПРО CSP v.2

 ,


1

1

Всем Привет! Не получается установить / обновить до крайней версии (13455) КриптоПРО CSP, в Gentoo. Предыстория такова, что текущую версию (12900) устанавливал из репозитория «mva». Однако, крайняя версия никак не желает устанавливаться. И при этом как из того же репника «mva». Так и на основе другого *.ebuild . Исходные данные следующие:

emerge –-info
Portage 3.0.67 (python 3.13.3-final-0, default/linux/amd64/23.0/desktop, gcc-14, glibc-2.40-r8, 6.12.21-gentoo-dist x86_64)
System uname: Linux-6.12.21-gentoo-dist-x86_64-Intel-R-_Core-TM-i7-2600K_CPU@_3.40GHz-with-glibc2.40 KiB Mem: 32313044 total, 8992512 free KiB Swap: 49151996 total, 49151484 free Timestamp of repository gentoo: Fri, 02 May 2025 22:30:00 +0000 Head commit of repository gentoo: 1cf79d34945e903b956b8597419ae0375da5584c Head commit of repository mva: dd6ffe13be656b2bdb889493218115215358770e

sh bash 5.2_p37 ld GNU ld (Gentoo 2.44 p1) 2.44.0 app-misc/pax-utils: 1.3.8::gentoo app-shells/bash: 5.2_p37::gentoo dev-build/autoconf: 2.13-r8::gentoo, 2.72-r1::gentoo dev-build/automake: 1.17-r1::gentoo dev-build/cmake: 3.31.5::gentoo dev-build/libtool: 2.5.4::gentoo dev-build/make: 4.4.1-r100::gentoo dev-build/meson: 1.7.0::gentoo dev-lang/perl: 5.40.2::gentoo dev-lang/python: 3.12.10::gentoo, 3.13.3::gentoo dev-lang/rust-bin: 1.85.1::gentoo llvm-core/clang: 19.1.7::gentoo llvm-core/lld: 19.1.7::gentoo llvm-core/llvm: 19.1.7::gentoo sys-apps/baselayout: 2.17::gentoo sys-apps/openrc: 0.56::gentoo sys-apps/sandbox: 2.39::gentoo sys-devel/binutils: 2.44::gentoo sys-devel/binutils-config: 5.5.2::gentoo sys-devel/gcc: 14.2.1_p20241221::gentoo sys-devel/gcc-config: 2.12.1::gentoo sys-kernel/linux-headers: 6.12::gentoo (virtual/os-headers) sys-libs/glibc: 2.40-r8::gentoo Repositories:

gentoo location: /var/db/repos/gentoo sync-type: rsync sync-uri: rsync://rsync.gentoo.org/gentoo-portage priority: -1000 volatile: False sync-rsync-verify-max-age: 3 sync-rsync-verify-metamanifest: yes sync-rsync-verify-jobs: 1 sync-rsync-extra-opts:

localrepo location: /var/db/repos/localrepo masters: gentoo volatile: False

mva location: /var/db/repos/mva sync-type: git sync-uri: https://github.com/msva/mva-overlay.git masters: gentoo volatile: False

Binary Repositories:

gentoobinhost priority: 1 sync-uri: https://distfiles.gentoo.org/releases/amd64/binpackages/23.0/x86-64

ACCEPT_KEYWORDS=«amd64» ACCEPT_LICENSE=«*» CBUILD=«x86_64-pc-linux-gnu» CFLAGS=«-O2 -pipe» CHOST=«x86_64-pc-linux-gnu» CONFIG_PROTECT=«/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt» CONFIG_PROTECT_MASK=«/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/sandbox.d» CXXFLAGS=«-O2 -pipe» DISTDIR=«/var/cache/distfiles» ENV_UNSET=«CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME» FCFLAGS=«-O2 -pipe» FEATURES=«assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg-live config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync merge-wait multilib-strict network-sandbox news parallel-fetch pid-sandbox pkgdir-index-trusted preserve-libs protect-owned qa-unresolved-soname-deps sandbox strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr» FFLAGS=«-O2 -pipe» GENTOO_MIRRORS=«http://gentoo-mirror.alexxy.name/ \    http://mirror.mephi.ru/gentoo-distfiles/ \    http://mirror.yandex.ru/gentoo-distfiles/» LANG=«C.UTF8» LDFLAGS=«-Wl,-O1 -Wl,–as-needed -Wl,-z,pack-relative-relocs» LEX=«flex» MAKEOPTS=«-j6» PKGDIR=«/var/cache/binpkgs» PORTAGE_CONFIGROOT=«/» PORTAGE_RSYNC_OPTS=«–recursive –links –safe-links –perms –times –omit-dir-times –compress –force –whole-file –delete –stats –human-readable –timeout=180 –exclude=/distfiles –exclude=/local –exclude=/packages –exclude=/.git» PORTAGE_TMPDIR=«/var/tmp» SHELL=«/bin/bash» USE=«X a52 aac acl acpi alsa amd64 bluetooth branding bzip2 cairo cdda cdr cet crypt cups dbus dri dts dvd dvdr elogind encode exif flac gdbm gif gpm gtk gui iconv icu jpeg lcms libnotify libtirpc lock mad mng mp3 mp4 mpeg multilib ncurses nls ogg opengl openmp openrc pam pango pcre pdf png policykit ppds qml qt5 qt6 readline sdl seccomp session sound spell ssl startup-notification svg test-rust thunar tiff truetype udev udisks unicode upower usb vorbis vulkan wayland wxwidgets x264 xattr xcb xft xml xv xvid zlib» ABI_X86=«32 64» ADA_TARGET=«gcc_14» APACHE2_MODULES=«authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_anon authn_dbm authn_file authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir env expires ext_filter file_cache filter headers include info log_config logio mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias» CALLIGRA_FEATURES=«karbon sheets words» COLLECTD_PLUGINS=«df interface irq load memory rrdtool swap syslog» CPU_FLAGS_X86=«aes avx mmx mmxext pclmul popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3» ELIBC=«glibc» GPSD_PROTOCOLS=«ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax navcom oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox» GUILE_SINGLE_TARGET=«3-0» GUILE_TARGETS=«3-0» INPUT_DEVICES=«libinput synaptics» KERNEL=«linux» LCD_DEVICES=«bayrad cfontz glk hd44780 lb216 lcdm001 mtxorb text» LUA_SINGLE_TARGET=«lua5-1» LUA_TARGETS=«lua5-1» OFFICE_IMPLEMENTATION=«libreoffice» PHP_TARGETS=«php8-2» POSTGRES_TARGETS=«postgres17» PYTHON_SINGLE_TARGET=«python3_13» PYTHON_TARGETS=«python3_13» RUBY_TARGETS=«ruby32» VIDEO_CARDS=«amdgpu fbdev intel nouveau radeon radeonsi vesa dummy» XTABLES_ADDONS=«quota2 psd pknock lscan length2 ipv4options ipp2p iface geoip fuzzy condition tarpit sysrq proto logmark ipmark dhcpmac delude chaos account» Unset: ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EMERGE_DEFAULT_OPTS, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LD, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PYTHONPATH, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS

Необходимые мероприятия с *.ebuild проведены:

#cat /var/db/repos/localrepo/app-crypt/cprocsp/Manifest | grep -i tgz
DIST linux-amd64.tgz 32290599 BLAKE2B 51b3daa26d549965e9da0c1bbf350034410a3861fc2b21b687b07d2fcdb8c146a4910b5f26fe83c76033a66e9ef09ea1b54295630e77c4fd299ffc1673c8e52f SHA512 480b477d11045fa1cb7155f45d7eda4b645759aedace00b2d45f3557f79d6dcb99eeb769a0adcc74608ebaf565988abf58937fcdfca0e8e4b639c03e2342d473
#sha512sum /var/cache/distfiles/linux-amd64.tgz
480b477d11045fa1cb7155f45d7eda4b645759aedace00b2d45f3557f79d6dcb99eeb769a0adcc74608ebaf565988abf58937fcdfca0e8e4b639c03e2342d473 /var/cache/distfiles/linux-amd64.tgz

Соответственно, исходник(архив), скачан с русурса разработчика(КриптоПРО) и находится там где и ему положено.

#ls -la /var/cache/distfiles/linux-amd64.tgz
-rw-r–r– 1 sgz sgz 32290599 May 3 05:30 /var/cache/distfiles/linux-amd64.tgz

Непосредственно .ebuild, успешно создан.

ebuild /var/db/repos/localrepo/app-crypt/cprocsp/cprocsp-5.0.13455.ebuild digest
>>> Creating Manifest for /var/db/repos/localrepo/app-crypt/cprocsp

Сам же .ebuild создержит в себе, следующее:

# cat /var/db/repos/localrepo/app-crypt/cprocsp/cprocsp-5.0.13455.ebuild

# Copyright 1999-2020 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

EAPI=7
inherit rpm

DESCRIPTION="Cryptopro package"
HOMEPAGE="http://www.cryptopro.ru"
SRC_URI="amd64? ( linux-amd64.tgz )"

LICENSE="Cryptopro"
SLOT="0"
KEYWORDS="~amd64"
IUSE="+kc1 +gui_gtk +readers +cptools stunnel +pkcs11 +import_ca +plugin +certprop +ifd-rutokens"

REQUIRED_USE="gui_gtk? ( kc1 )
    readers? ( kc1 )
    cptools? ( kc1 )
    pkcs11? ( kc1 )
    import_ca? ( kc1 )
    plugin? ( gui_gtk )
"

DEPEND=" sys-apps/pcsc-tools
    sys-apps/pcsc-lite
    sys-apps/lsb-release
    app-crypt/ccid
    app-arch/rpm2targz"

RDEPEND="${DEPEND}"

RESTRICT="mirror strip"

src_unpack () {
    unpack ${A}
    cd ${WORKDIR}
    mv linux-amd64/* ${DISTDIR}
    rm -rf *
    mkdir ${S}
    cd ${S}

    SUFF="${PV}-7"

if use kc1; then
rpm_unpack lsb-cprocsp-kc1-64-${SUFF}.x86_64.rpm
rpm_unpack lsb-cprocsp-base-${SUFF}.noarch.rpm
rpm_unpack lsb-cprocsp-capilite-64-${SUFF}.x86_64.rpm
rpm_unpack lsb-cprocsp-rdr-64-${SUFF}.x86_64.rpm
rpm_unpack cprocsp-curl-64-${SUFF}.x86_64.rpm
fi

if use gui_gtk; then
rpm_unpack cprocsp-rdr-gui-gtk-64-${SUFF}.x86_64.rpm
fi

if use readers; then
rpm_unpack cprocsp-rdr-pcsc-64-${SUFF}.x86_64.rpm
rpm_unpack cprocsp-rdr-emv-64-${SUFF}.x86_64.rpm
#rpm_unpack cprocsp-rdr-inpaspot-64-${SUFF}.x86_64.rpm
rpm_unpack cprocsp-rdr-kst-64-${SUFF}.x86_64.rpm
rpm_unpack cprocsp-rdr-mskey-64-${SUFF}.x86_64.rpm
rpm_unpack cprocsp-rdr-novacard-64-${SUFF}.x86_64.rpm
rpm_unpack cprocsp-rdr-edoc-64-${SUFF}.x86_64.rpm
rpm_unpack cprocsp-rdr-rutoken-64-${SUFF}.x86_64.rpm
rpm_unpack cprocsp-rdr-cloud-64-${SUFF}.x86_64.rpm
rpm_unpack cprocsp-rdr-cpfkc-64-${SUFF}.x86_64.rpm
rpm_unpack cprocsp-rdr-infocrypt-64-${SUFF}.x86_64.rpm
rpm_unpack cprocsp-rdr-rosan-64-${SUFF}.x86_64.rpm
rpm_unpack cprocsp-rdr-cryptoki-64-${SUFF}.x86_64.rpm
rpm_unpack cprocsp-rdr-esmart-64-${SUFF}.x86_64.rpm
rpm_unpack cprocsp-rdr-jacarta-64-${SUFF}.x86_64.rpm
rpm_unpack cprocsp-rdr-relay-64-${SUFF}.x86_64.rpm
fi

if use cptools; then
rpm_unpack cprocsp-cptools-gtk-64-${SUFF}.x86_64.rpm
fi

if use pkcs11; then
rpm_unpack lsb-cprocsp-pkcs11-64-${SUFF}.x86_64.rpm
fi

if use import_ca; then
rpm_unpack lsb-cprocsp-ca-certs-${SUFF}.noarch.rpm
rpm_unpack lsb-cprocsp-import-ca-certs-${SUFF}.noarch.rpm
fi

if use plugin; then
for i in "${DISTDIR}"/cprocsp-pki-*-1.amd64.rpm; do
rpm_unpack "${i}"
done
fi

if use certprop; then
rpm_unpack cprocsp-certprop-64-${SUFF}.x86_64.rpm
fi

if use ifd-rutokens; then
rpm_unpack ifd-rutokens_1.0.4_1.x86_64.rpm
fi

rm ${S}/lib64/ld-lsb-x86-64.so.3
}

src_install() {
    cp -vR ${S}/* ${D}/
    rm -f ${D}/etc/init.d/cprocsp
    cp -f ${FILESDIR}/cprocsp ${D}/etc/init.d/cprocsp
}

pkg_postinst() {
    chmod -R 777 /var/opt/cprocsp
    touch /etc/debian_version
    echo "jessie/sid" > /etc/debian_version
    cp -f ${FILESDIR}/config64.ini /etc/opt/cprocsp/config64.ini
    cp -f ${FILESDIR}/license.ini /etc/opt/cprocsp/license.ini
    mkdir /var/opt/cprocsp && mkdir /var/opt/cprocsp/tmp
    if test -z "";then
	if ! grep -q '/opt/cprocsp/lib/amd64' /etc/ld.so.conf;then
	echo "/opt/cprocsp/lib/amd64" > /etc/ld.so.conf.d/cprocsp-lib-amd64.conf
        fi
        /sbin/ldconfig -f /etc/ld.so.conf
    fi
    /bin/bash ${FILESDIR}/addcerts.sh
    rc-update add cprocsp default
    /etc/init.d/cprocsp start
}

pkg_prerm ()  {
    /etc/init.d/cprocsp stop
    rc-update del cprocsp default
    rm -Rv /etc/init.d/cprocsp
    rm -Rv /etc/debian_version
#    rm -Rv /var/opt/cprocsp
    rm -Rv /etc/opt/cprocsp
}

Однако, в процессе установки, сыпятся ошибки:

# emerge -a =app-crypt/cprocsp-5.0.13455

These are the packages that would be merged, in order:

Calculating dependencies... done!
Dependency resolution took 5.61 s (backtrack: 0/20).

[ebuild     U ~] app-crypt/cprocsp-5.0.13455 [5.0.12900] USE="certprop%* cptools%* gui_gtk%* ifd-rutokens%* import_ca%* kc1%* pkcs11%* plugin%* readers%* -stunnel%" 

Would you like to merge these packages? [Yes/No] 

>>> Verifying ebuild manifests

>>> Emerging (1 of 1) app-crypt/cprocsp-5.0.13455::localrepo
 * linux-amd64.tgz BLAKE2B SHA512 size ;-) ...                                                                                [ ok ]
>>> Unpacking source...
>>> Unpacking linux-amd64.tgz to /var/tmp/portage/app-crypt/cprocsp-5.0.13455/work
mv: cannot move 'linux-amd64/accord_random-1-0.src.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/accord_random-1-0.src.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-apache-modssl-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-apache-modssl-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-certprop-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-certprop-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-compat-altlinux-64-1.0.0-1.noarch.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-compat-altlinux-64-1.0.0-1.noarch.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-compat-suse-1.0.0-1.noarch.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-compat-suse-1.0.0-1.noarch.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-cptools-gtk-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-cptools-gtk-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-curl-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-curl-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-drv-64-5.0.13455-7.src.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-drv-64-5.0.13455-7.src.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-drv-devel-5.0.13455-7.noarch.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-drv-devel-5.0.13455-7.noarch.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-ipsec-devel-5.0.13455-7.noarch.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-ipsec-devel-5.0.13455-7.noarch.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-ipsec-esp-64-5.0.13455-7.src.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-ipsec-esp-64-5.0.13455-7.src.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-ipsec-genpsk-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-ipsec-genpsk-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-ipsec-ike-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-ipsec-ike-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-legacy-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-legacy-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-nginx-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-nginx-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-pam-cryptopro-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-pam-cryptopro-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-pki-cades-64-2.0.15400-1.amd64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-pki-cades-64-2.0.15400-1.amd64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-pki-phpcades-2.0.15400-1.noarch.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-pki-phpcades-2.0.15400-1.noarch.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-pki-plugin-64-2.0.15400-1.amd64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-pki-plugin-64-2.0.15400-1.amd64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-rdr-cloud-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-rdr-cloud-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-rdr-cpfkc-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-rdr-cpfkc-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-rdr-cryptoki-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-rdr-cryptoki-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-rdr-edoc-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-rdr-edoc-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-rdr-emv-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-rdr-emv-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-rdr-esmart-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-rdr-esmart-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-rdr-gui-gtk-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-rdr-gui-gtk-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-rdr-infocrypt-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-rdr-infocrypt-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-rdr-inpaspot-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-rdr-inpaspot-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-rdr-jacarta-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-rdr-jacarta-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-rdr-kst-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-rdr-kst-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-rdr-mskey-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-rdr-mskey-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-rdr-novacard-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-rdr-novacard-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-rdr-pcsc-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-rdr-pcsc-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-rdr-relay-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-rdr-relay-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-rdr-rosan-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-rdr-rosan-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-rdr-rustoken-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-rdr-rustoken-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-rdr-rutoken-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-rdr-rutoken-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-stunnel-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-stunnel-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-stunnel-msspi-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-stunnel-msspi-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/cprocsp-xer2print-5.0.13455-7.noarch.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cprocsp-xer2print-5.0.13455-7.noarch.rpm': Permission denied
mv: cannot move 'linux-amd64/cpverify' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/cpverify': Permission denied
mv: cannot move 'linux-amd64/ifd-rutokens_1.0.4_1.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/ifd-rutokens_1.0.4_1.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/install.desktop' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/install.desktop': Permission denied
mv: cannot move 'linux-amd64/install.sh' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/install.sh': Permission denied
mv: cannot move 'linux-amd64/install_gui.sh' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/install_gui.sh': Permission denied
mv: cannot move 'linux-amd64/integrity.sh' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/integrity.sh': Permission denied
mv: cannot move 'linux-amd64/linux-amd64.ini' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/linux-amd64.ini': Permission denied
mv: cannot move 'linux-amd64/lsb-cprocsp-base-5.0.13455-7.noarch.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-base-5.0.13455-7.noarch.rpm': Permission denied
mv: cannot move 'linux-amd64/lsb-cprocsp-ca-certs-5.0.13455-7.noarch.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-ca-certs-5.0.13455-7.noarch.rpm': Permission denied
mv: cannot move 'linux-amd64/lsb-cprocsp-capilite-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-capilite-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/lsb-cprocsp-devel-5.0.13455-7.noarch.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-devel-5.0.13455-7.noarch.rpm': Permission denied
mv: cannot move 'linux-amd64/lsb-cprocsp-import-ca-certs-5.0.13455-7.noarch.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-import-ca-certs-5.0.13455-7.noarch.rpm': Permission denied
mv: cannot move 'linux-amd64/lsb-cprocsp-kc1-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-kc1-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/lsb-cprocsp-kc2-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-kc2-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/lsb-cprocsp-pkcs11-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-pkcs11-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/lsb-cprocsp-rcrypt-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-rcrypt-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/lsb-cprocsp-rdr-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-rdr-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/lsb-cprocsp-rdr-accord-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-rdr-accord-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/lsb-cprocsp-rdr-accord-ccid-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-rdr-accord-ccid-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/lsb-cprocsp-rdr-ancud-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-rdr-ancud-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/lsb-cprocsp-rdr-crypton-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-rdr-crypton-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/lsb-cprocsp-rdr-maxim-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-rdr-maxim-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/lsb-cprocsp-rdr-sobol-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-rdr-sobol-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/lsb-cprocsp-rdr-vityaz-64-5.0.13455-7.x86_64.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-rdr-vityaz-64-5.0.13455-7.x86_64.rpm': Permission denied
mv: cannot move 'linux-amd64/readme.txt' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/readme.txt': Permission denied
mv: cannot move 'linux-amd64/sobol-1-9.src.rpm' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/sobol-1-9.src.rpm': Permission denied
mv: cannot move 'linux-amd64/uninstall.sh' to '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/uninstall.sh': Permission denied
>>> Unpacking lsb-cprocsp-kc1-64-5.0.13455-7.x86_64.rpm to /var/tmp/portage/app-crypt/cprocsp-5.0.13455/work/cprocsp-5.0.13455
/usr/bin/rpm2tar: line 157: /var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-kc1-64-5.0.13455-7.x86_64.rpm: No such file or directory
rpm2tar: error: unable to locate cpio offset (broken/unknown compression?)
tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors
 * ERROR: app-crypt/cprocsp-5.0.13455::localrepo failed (unpack phase):
 *   failure unpacking /var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-kc1-64-5.0.13455-7.x86_64.rpm
 * 
 * Call stack:
 *               ebuild.sh, line 136:  Called src_unpack
 *             environment, line 365:  Called rpm_unpack 'lsb-cprocsp-kc1-64-5.0.13455-7.x86_64.rpm'
 *             environment, line 330:  Called assert 'failure unpacking /var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-kc1-64-5.0.13455-7.x86_64.rpm'
 *   isolated-functions.sh, line  18:  Called die
 * The specific snippet of code:
 *   		[[ ${x} -eq 0 ]] || die "$@"
 * 
 * If you need support, post the output of `emerge --info '=app-crypt/cprocsp-5.0.13455::localrepo'`,
 * the complete build log and the output of `emerge -pqv '=app-crypt/cprocsp-5.0.13455::localrepo'`.
 * The complete build log is located at '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/temp/environment'.
 * Working directory: '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/work/cprocsp-5.0.13455'
 * S: '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/work/cprocsp-5.0.13455'

>>> Failed to emerge app-crypt/cprocsp-5.0.13455, Log file:

>>>  '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/temp/build.log'

 * Messages for package app-crypt/cprocsp-5.0.13455:

 * ERROR: app-crypt/cprocsp-5.0.13455::localrepo failed (unpack phase):
 *   failure unpacking /var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-kc1-64-5.0.13455-7.x86_64.rpm
 * 
 * Call stack:
 *               ebuild.sh, line 136:  Called src_unpack
 *             environment, line 365:  Called rpm_unpack 'lsb-cprocsp-kc1-64-5.0.13455-7.x86_64.rpm'
 *             environment, line 330:  Called assert 'failure unpacking /var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/lsb-cprocsp-kc1-64-5.0.13455-7.x86_64.rpm'
 *   isolated-functions.sh, line  18:  Called die
 * The specific snippet of code:
 *   		[[ ${x} -eq 0 ]] || die "$@"
 * 
 * If you need support, post the output of `emerge --info '=app-crypt/cprocsp-5.0.13455::localrepo'`,
 * the complete build log and the output of `emerge -pqv '=app-crypt/cprocsp-5.0.13455::localrepo'`.
 * The complete build log is located at '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/temp/environment'.
 * Working directory: '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/work/cprocsp-5.0.13455'
 * S: '/var/tmp/portage/app-crypt/cprocsp-5.0.13455/work/cprocsp-5.0.13455'

Как видно суть которых сводится к строкам:

rpm2tar: error: unable to locate cpio offset (broken/unknown compression?)

Однако, начинается всё, как видно:

mv: cannot move ‘linux-amd64/accord_random-1-0.src.rpm’ to ‘/var/tmp/portage/app-crypt/cprocsp-5.0.13455/distdir/accord_random-1-0.src.rpm’: Permission denied

При том, что все необходимые права, на директорию, выставлены корректно. Есть подозрение, что в самом .ebuild , в блоке:

src_unpack () {
    unpack ${A}
    cd ${WORKDIR}
    mv linux-amd64/* ${DISTDIR}
    rm -rf *
    mkdir ${S}
    cd ${S}

В строке:

mv linux-amd64/* ${DISTDIR}

Разработчик меняет формат(внутреннее содержание) распаковки архива, в зависимости от версии. Однако, проверить лично мне это весьма затруднительно.

P.S. Если необходимы какие-то дополнительные выводы команд, напишите.

Предыдущий мой пост, видимо не удался. За что приношу свои извинения.

Прошу помочь разобраться. Заведомо Благодарю!



Последнее исправление: unDEFER (всего исправлений: 1)
Ответ на: комментарий от serg002

serg002 Я оставил здесь свой пост, для цели помощи и разъяснения. Простите конечно же! Однако, Вы пишете не по существу моего (вопроса). Прошу по существу! И полагаю теги, если они «лишние» можно и пропустить.

usergent
() автор топика
Ответ на: комментарий от anonymous

По указанной Вами ссылке я ходил и читал и ранее… Пока ничего не вычитал, чтобы исправить свой баг. Потому и пришёл сюда. Вдруг найдётся тот, кто пояснит, что не так…Например в .ebuild ?

usergent
() автор топика
Ответ на: комментарий от usergent

Песочницу убери с портажа и будет работать. В функции анпак, скорей всего, нет доступа к директории. А васяны вот так эбилды и пишут

serg002 ★★★★
()
Последнее исправление: serg002 (всего исправлений: 2)
Ответ на: комментарий от serg002

mv linux-amd64/* ${DISTDIR}

Вот эта строка пытается распаковать содержимое в DISTDIR (из /etc/portage/make.conf), это - системная директория, где лежат скачанные архивы исходников.

Кто автор ebuild’а? Отбей его пальцы молотком.

anonymous
()
Ответ на: комментарий от usergent

Не слушай его, он идиот. Отключить песочницу - это самый вредный совет, какой только можно придумать.

eternal_sorrow ★★★★★
()
Последнее исправление: eternal_sorrow (всего исправлений: 1)
Ответ на: комментарий от usergent

Не туда файлы копируешь. На практике в ebuild’ах делают S=${WORKDIR}/<folder> для такого, можно еще в workdir/temp. у distdir хозяин root, поэтому тебе прав не хватает туда переносить. Зайди в /var/tmp/portage/app-crypt/cprocsp-5.0.13455/ и сделай ls -la. Писать ebuild’ы c наскоку не получится, надо хотя бы немного опыта набраться.

arrecck ★★★
()
Ответ на: комментарий от usergent

Убери это:

    cd ${WORKDIR}
    mv linux-amd64/* ${DISTDIR}
    rm -rf *

И затем каждую строчку rpm_unpack передлелай чтобы было:

    rpm_unpack "${WORKDIR}/linux-amd64/file.rpm"

Соотвественно вместо file.rpm подставь имена файлов как в ебилде.

eternal_sorrow ★★★★★
()
Последнее исправление: eternal_sorrow (всего исправлений: 2)
Ответ на: комментарий от arrecck

Ну вот! Нашёлся тот, кто по-существу спрашивает…

# ls -la /var/tmp/portage/app-crypt/cprocsp-5.0.13455/
total 4
drwx------ 1 portage portage 108 May  3 15:20 .
drwxrwxr-x 1 portage portage  34 May  3 15:20 ..
-rw-r--r-- 1 portage portage   0 May  3 15:20 .die_hooks
drwxrws--- 1 root    portage  10 May  3 15:20 .ipc
-rw-r--r-- 1 root    root      0 May  3 15:20 .setuped
drwxr-xr-x 1 root    portage  30 May  3 15:20 distdir
drwxr-xr-x 1 root    root      0 May  3 15:20 empty
lrwxrwxrwx 1 root    root     47 May  3 15:20 files -> /var/db/repos/localrepo/app-crypt/cprocsp/files
drwxr-xr-x 1 portage portage   0 May  3 15:20 homedir
drwxr-xr-x 1 portage portage  86 May  3 15:20 temp
drwx------ 1 portage portage  34 May  3 15:20 work
usergent
() автор топика

Предыстория такова, что текущую версию (12900) устанавливал из репозитория «mva». Однако, крайняя версия никак не желает устанавливаться. И при этом как из того же репника «mva».

Что именно там не работает с новой версией?

MirandaUser2
()
Ответ на: комментарий от LightDiver

Пока что занимаюсь решением вопроса. Сразу в двух направлениях - 2-х вариантах *.ebuild . Как видно из переписки выше… Остальной народ, кроме одного таки нашедшегося! То, с молотком в руках предлагает «решать вопросы». А то ещё, какие-то люди, пишут не по сути, моего обращения. Видимо не знают!! Но, всё таки пишут… Обязательно напишу здесь, как только решу свой вопрос.

usergent
() автор топика
Ответ на: комментарий от eternal_sorrow

Итак, в промежуточном итоге получаю: Скорректированный и установленный *.ebuild

# cat /var/db/repos/localrepo/app-crypt/cprocsp/cprocsp-5.0.13455.ebuild
# Copyright 1999-2020 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

EAPI=7
inherit rpm

DESCRIPTION="Cryptopro package"
HOMEPAGE="http://www.cryptopro.ru"
SRC_URI="amd64? ( linux-amd64.tgz )"

LICENSE="Cryptopro"
SLOT="0"
KEYWORDS="~amd64"
IUSE="+kc1 +gui_gtk +readers +cptools stunnel +pkcs11 +import_ca +plugin +certprop +ifd-rutokens"

REQUIRED_USE="gui_gtk? ( kc1 )
    readers? ( kc1 )
    cptools? ( kc1 )
    pkcs11? ( kc1 )
    import_ca? ( kc1 )
    plugin? ( gui_gtk )
"

DEPEND=" sys-apps/pcsc-tools
    sys-apps/pcsc-lite
    sys-apps/lsb-release
    app-crypt/ccid
    app-arch/rpm2targz"

RDEPEND="${DEPEND}"

RESTRICT="mirror strip"

src_unpack () {
    unpack ${A}
    mkdir ${S}
    cd ${S}

    SUFF="${PV}-7"

if use kc1; then
rpm_unpack "${WORKDIR}/linux-amd64/lsb-cprocsp-kc1-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/lsb-cprocsp-base-${SUFF}.noarch.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/lsb-cprocsp-capilite-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/lsb-cprocsp-rdr-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-curl-64-${SUFF}.x86_64.rpm"
fi

if use gui_gtk; then
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-gui-gtk-64-${SUFF}.x86_64.rpm"
fi

if use readers; then
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-pcsc-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-emv-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-inpaspot-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-kst-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-mskey-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-novacard-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-edoc-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-rutoken-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-cloud-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-cpfkc-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-infocrypt-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-rosan-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-cryptoki-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-esmart-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-jacarta-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-relay-64-${SUFF}.x86_64.rpm"
fi

if use cptools; then
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-cptools-gtk-64-${SUFF}.x86_64.rpm"
fi

if use pkcs11; then
rpm_unpack "${WORKDIR}/linux-amd64/lsb-cprocsp-pkcs11-64-${SUFF}.x86_64.rpm"
fi

if use import_ca; then
rpm_unpack "${WORKDIR}/linux-amd64/lsb-cprocsp-ca-certs-${SUFF}.noarch.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/lsb-cprocsp-import-ca-certs-${SUFF}.noarch.rpm"
fi

if use plugin; then
for i in "${WORKDIR}"/cprocsp-pki-*-1.amd64.rpm; do
rpm_unpack "${i}"
done
fi

if use certprop; then
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-certprop-64-${SUFF}.x86_64.rpm"
fi

if use ifd-rutokens; then
rpm_unpack "${WORKDIR}/linux-amd64/ifd-rutokens_1.0.4_1.x86_64.rpm"
fi

rm ${S}/lib64/ld-lsb-x86-64.so.3
}

src_install() {
    cp -vR ${S}/* ${D}/
    rm -f ${D}/etc/init.d/cprocsp
    cp -f ${FILESDIR}/cprocsp ${D}/etc/init.d/cprocsp
}

pkg_postinst() {
    chmod -R 777 /var/opt/cprocsp
    touch /etc/debian_version
    echo "jessie/sid" > /etc/debian_version
    cp -f ${FILESDIR}/config64.ini /etc/opt/cprocsp/config64.ini
    cp -f ${FILESDIR}/license.ini /etc/opt/cprocsp/license.ini
    mkdir /var/opt/cprocsp && mkdir /var/opt/cprocsp/tmp
    if test -z "";then
	if ! grep -q '/opt/cprocsp/lib/amd64' /etc/ld.so.conf;then
	echo "/opt/cprocsp/lib/amd64" > /etc/ld.so.conf.d/cprocsp-lib-amd64.conf
        fi
        /sbin/ldconfig -f /etc/ld.so.conf
    fi
    /bin/bash ${FILESDIR}/addcerts.sh
    rc-update add cprocsp default
    /etc/init.d/cprocsp start
}

pkg_prerm ()  {
    /etc/init.d/cprocsp stop
    rc-update del cprocsp default
    rm -Rv /etc/init.d/cprocsp
    rm -Rv /etc/debian_version
#    rm -Rv /var/opt/cprocsp
    rm -Rv /etc/opt/cprocsp
}
# ebuild /var/db/repos/localrepo/app-crypt/cprocsp/cprocsp-5.0.13455.ebuild digest
>>> Creating Manifest for /var/db/repos/localrepo/app-crypt/cprocsp

Однако, во время установки, процесс спотыкается в блоке:

if use plugin; then
for i in "${WORKDIR}"/cprocsp-pki-*-1.amd64.rpm; do
rpm_unpack "${i}"
done
fi
https://hastebin.com/share/ayulexudiq.bash

Отчётливо видно, что не распаковываются три пакета:

# ls /var/tmp/portage/app-crypt/cprocsp-5.0.13455/work/linux-amd64/ | grep cprocsp-pki-*
cprocsp-pki-cades-64-2.0.15400-1.amd64.rpm
cprocsp-pki-phpcades-2.0.15400-1.noarch.rpm
cprocsp-pki-plugin-64-2.0.15400-1.amd64.rpm

Видимо необходимо скорректировать строку ?

"${WORKDIR}"/cprocsp-pki-*-1.amd64.rpm

Заменив «*» на переменную ? Вопрос: Как это сделать корректно ?

usergent
() автор топика
Ответ на: комментарий от usergent
if use plugin; then
    local pki_rpms=(
        cprocsp-pki-cades-64-2.0.15400-1.amd64.rpm
        cprocsp-pki-phpcades-2.0.15400-1.noarch.rpm
        cprocsp-pki-plugin-64-2.0.15400-1.amd64.rpm
    )
    for rpm in "${pki_rpms[@]}"; do
        rpm_unpack "${WORKDIR}/linux-amd64/${rpm}" || die "Failed to unpack ${rpm}"
    done
fi

А если так? Мне интереса ради просто.

LightDiver ★★★★★
()
Ответ на: комментарий от usergent
/usr/bin/rpm2tar: line 157: /var/tmp/portage/app-crypt/cprocsp-5.0.13455/work/cprocsp-pki-*-1.amd64.rpm: No such file or directory

Путь /var/tmp/portage/app-crypt/cprocsp-5.0.13455/work/ и /var/tmp/portage/app-crypt/cprocsp-5.0.13455/work/linux-amd64/ немного разный, отличается linux-amd64 в конце.

P.S. не ставь, пожалуйста, пробелы перед знаком вопроса.

Dimez ★★★★★
()
Ответ на: комментарий от LightDiver

Пакет установлен и работает! Подключаемые носители(РУ-Токен Lite, например) СКЗИ КриптоПРО CSP, видит. Загрузка плагина, так же работает и подписывает, корректно.

>>> Completed installing app-crypt/cprocsp-5.0.13455 into /var/tmp/portage/app-crypt/cprocsp-5.0.13455/image

 * Final size of build directory: 132452 KiB (129.3 MiB)
 * Final size of installed tree:   99428 KiB ( 97.0 MiB)

 * QA Notice: udev rules should be installed in /lib/udev/rules.d:
 * 
 *   /etc/udev/rules.d/95-rutokens.rules
 * 
 * QA Notice: files installed to /etc/udev/rules.d found
 * udev rules files supplied by ebuilds must be installed to /lib/udev/rules.d/
 * QA Notice: One or more empty directories installed to /var:
 * 
 *   /var/opt/cprocsp/dsrf/db1
 *   /var/opt/cprocsp/dsrf/db2
 *   /var/opt/cprocsp/keys
 *   /var/opt/cprocsp/lmk
 *   /var/opt/cprocsp/tmp
 *   /var/opt/cprocsp/users/stores
 * 
 * If those directories need to be preserved, please make sure to create
 * or mark them for keeping using 'keepdir'. Portage for >= EAPI 8 ebuilds
 * will strip empty directories from installation image.

>>> Installing (1 of 1) app-crypt/cprocsp-5.0.13455::localrepo
mkdir: cannot create directory ‘/var/opt/cprocsp’: File exists
 * rc-update: service `cprocsp' is not executable
/var/tmp/portage/app-crypt/cprocsp-5.0.13455/temp/environment: line 291: /etc/init.d/cprocsp: Permission denied
 * QA Notice: .desktop files with MimeType= were found installed
 * but desktop mimeinfo cache has not been updated:
 *   /usr/share/applications/cptools.desktop
 * Please make sure to call xdg_desktop_database_update()
 * in pkg_postinst() and pkg_postrm() phases of appropriate pkgs.

>>> Recording app-crypt/cprocsp in "world" favorites file...

>>> Completed (1 of 1) app-crypt/cprocsp-5.0.13455::localrepo

 * GNU info directory index is up-to-date.

Скриншоты

https://ibb.co/jvwtRwVj
https://ibb.co/p63SFdW1

Однако, *.ebuild, видимо всё же необходимо скорректировать. Ибо, ошибки в результате установки всё же имеются. Есть мысли, как окончательно скорректировать *.ebuild ?

usergent
() автор топика
Ответ на: комментарий от usergent

Убери всю pkg_postinst и pkg_prerm. Всё это должно делаться в src_install внутри ${D}. Запуск демонов и добавление их в уровни загрузки в ебилде производиться вообще не должен, только вручную.

eternal_sorrow ★★★★★
()
Ответ на: комментарий от usergent

Суть форума, такого как этот простая. Когда пользователь нагуглит твою проблему, столкнувшись с такой же, он пролистает тему в надежде найти решение. И это решение должно быть в конце и желательно в топике отдельно. Чтобы потом тебя не материли, нагуглившие тему юзеры.

Поэтому всегда подробно прикладывай решение в конце, когда разобрался. Возможно это кому то поможет.

Очень бесит, когда гуглишь свою проблему, начинаешь читать, а там: «Всем спасибо, все работает». Вот лять и что у него работает? Сиди и гадай.

LightDiver ★★★★★
()
Последнее исправление: LightDiver (всего исправлений: 2)
Ответ на: комментарий от LightDiver

Да, я согласен с тобой! Однако, если ты читал мой пост изначально? … Однако, Правила - это Правила.

# cat /var/db/repos/localrepo/app-crypt/cprocsp/cprocsp-5.0.13455.ebuild
# Copyright 1999-2020 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

EAPI=7
inherit rpm

DESCRIPTION="Cryptopro package"
HOMEPAGE="http://www.cryptopro.ru"
SRC_URI="amd64? ( linux-amd64.tgz )"

LICENSE="Cryptopro"
SLOT="0"
KEYWORDS="~amd64"
IUSE="+kc1 +gui_gtk +readers +cptools stunnel +pkcs11 +import_ca +plugin +certprop +ifd-rutokens"

REQUIRED_USE="gui_gtk? ( kc1 )
    readers? ( kc1 )
    cptools? ( kc1 )
    pkcs11? ( kc1 )
    import_ca? ( kc1 )
    plugin? ( gui_gtk )
"

DEPEND=" sys-apps/pcsc-tools
    sys-apps/pcsc-lite
    sys-apps/lsb-release
    app-crypt/ccid
    app-arch/rpm2targz"

RDEPEND="${DEPEND}"

RESTRICT="mirror strip"

src_unpack () {
    unpack ${A}
    mkdir ${S}
    cd ${S}

    SUFF="${PV}-7"

if use kc1; then
rpm_unpack "${WORKDIR}/linux-amd64/lsb-cprocsp-kc1-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/lsb-cprocsp-base-${SUFF}.noarch.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/lsb-cprocsp-capilite-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/lsb-cprocsp-rdr-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-curl-64-${SUFF}.x86_64.rpm"
fi

if use gui_gtk; then
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-gui-gtk-64-${SUFF}.x86_64.rpm"
fi

if use readers; then
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-pcsc-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-emv-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-inpaspot-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-kst-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-mskey-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-novacard-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-edoc-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-rutoken-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-cloud-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-cpfkc-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-infocrypt-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-rosan-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-cryptoki-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-esmart-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-jacarta-64-${SUFF}.x86_64.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-rdr-relay-64-${SUFF}.x86_64.rpm"
fi

if use cptools; then
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-cptools-gtk-64-${SUFF}.x86_64.rpm"
fi

if use pkcs11; then
rpm_unpack "${WORKDIR}/linux-amd64/lsb-cprocsp-pkcs11-64-${SUFF}.x86_64.rpm"
fi

if use import_ca; then
rpm_unpack "${WORKDIR}/linux-amd64/lsb-cprocsp-ca-certs-${SUFF}.noarch.rpm"
rpm_unpack "${WORKDIR}/linux-amd64/lsb-cprocsp-import-ca-certs-${SUFF}.noarch.rpm"
fi

if use plugin; then
    local pki_rpms=(
        cprocsp-pki-cades-64-2.0.15400-1.amd64.rpm
        cprocsp-pki-phpcades-2.0.15400-1.noarch.rpm
        cprocsp-pki-plugin-64-2.0.15400-1.amd64.rpm
    )
    for rpm in "${pki_rpms[@]}"; do
        rpm_unpack "${WORKDIR}/linux-amd64/${rpm}" || die "Failed to unpack ${rpm}"
    done
fi

#if use plugin; then
#for i in "${WORKDIR}"/cprocsp-pki-${PV}-1.amd64.rpm; do
#rpm_unpack "${i}"
#done
#fi

if use certprop; then
rpm_unpack "${WORKDIR}/linux-amd64/cprocsp-certprop-64-${SUFF}.x86_64.rpm"
fi

if use ifd-rutokens; then
rpm_unpack "${WORKDIR}/linux-amd64/ifd-rutokens_1.0.4_1.x86_64.rpm"
fi

rm ${S}/lib64/ld-lsb-x86-64.so.3
}

src_install() {
    cp -vR ${S}/* ${D}/
    rm -f ${D}/etc/init.d/cprocsp
    cp -f ${FILESDIR}/cprocsp ${D}/etc/init.d/cprocsp
}

pkg_postinst() {
    chmod -R 777 /var/opt/cprocsp
    touch /etc/debian_version
    echo "jessie/sid" > /etc/debian_version
    cp -f ${FILESDIR}/config64.ini /etc/opt/cprocsp/config64.ini
    cp -f ${FILESDIR}/license.ini /etc/opt/cprocsp/license.ini
    mkdir /var/opt/cprocsp && mkdir /var/opt/cprocsp/tmp
    if test -z "";then
	if ! grep -q '/opt/cprocsp/lib/amd64' /etc/ld.so.conf;then
	echo "/opt/cprocsp/lib/amd64" > /etc/ld.so.conf.d/cprocsp-lib-amd64.conf
        fi
        /sbin/ldconfig -f /etc/ld.so.conf
    fi
    /bin/bash ${FILESDIR}/addcerts.sh
    rc-update add cprocsp default
    /etc/init.d/cprocsp start
}

pkg_prerm ()  {
    /etc/init.d/cprocsp stop
    rc-update del cprocsp default
    rm -Rv /etc/init.d/cprocsp
    rm -Rv /etc/debian_version
#    rm -Rv /var/opt/cprocsp
    rm -Rv /etc/opt/cprocsp
}

При этом ещё раз обращаю внимание, что выхлоп таков, что необходимо корректировать *.ebuild . И уже есть мнения, что именно. Ты выскажешься на счёт окончательных корректировок?

usergent
() автор топика
Ответ на: комментарий от eternal_sorrow

Лично хочу поблагодарить Вас! Ключевые изменения начались именно с Вашей помощью!! Теперь СКЗИ, как видно установлен и работает. Большое Вам СПАСИБО!

P.S. Если дополнительно что-то подскажите, в части окончательных корректировок *.ebuild ? Так буду Вам Благодарен!

usergent
() автор топика
Ответ на: комментарий от LightDiver

Конкретный ebuild для решения этой проблемы не поможет другому. Потому что это решение привязано к конкретной версии неизвестного проприетарного блоба. Также распространение этого средства (взлома) может оказаться противозаконным.

anonymous
()
Ответ на: комментарий от anonymous

Так в том-то и дело, что никакого взлома во всяком случае с моей стороны - нет и быть не может. Кроме того, если ты в курсе, то есть трёхмесячная(триальная) лицензия, для этого СКЗИ. Её возможно скачать с официального ресурса. Предварительно зарегистрировавшись, конечно же.

usergent
() автор топика
Ответ на: комментарий от usergent

Я не читал лицензию, что разрешено и запрещено. Лично для себя, после легального получения копии, можешь что угодно делать, например писать скрипт распаковки блоба (ebuild). Но перед тем как распространять эти скрипты, надо сперва прочитать лицензию, разрешено ли это.

anonymous
()
Ответ на: комментарий от anonymous

Мне по барабану на проприетарность или открытость продукта. Мне интересно решение проблемы. Пусть даже для этой версии. От этого уже можно отталкиваться.

КриптоПРО CSP не является чем то противозаконным.

Проблемы лицензий - этим пусть занимаются правообладатели. Это не мои проблемы. Лицензии не могут быть выше законов.

LightDiver ★★★★★
()
Последнее исправление: LightDiver (всего исправлений: 1)
Ответ на: комментарий от LightDiver

Я читал и читаю эту самую лицензию. Распространение лицензии, которая и имеет конкретную стоимость - ВОТ что запрещено! А относительно скачанного и установленного программного продукта, непосредственно со страницы разработчика! Это не только для данного ПО. Но, и для всех продуктов подобного рода, то чем пользуются все пользователи.

usergent
() автор топика
Ответ на: комментарий от LightDiver

Какое решение? Как правильно писать ebuild для установки бинарей из rpm? Или конкретно для этого закрытого блоба?

Тебе то по барабану, а вот распространителю за распространение скриптов (для взлома) закрытого блоба может прилететь.

anonymous
()
Ответ на: комментарий от anonymous

Хотя бы как правильно писать ебилды для установки бинарей из рпм. Или конкретно для этого закрытого блоба. Тут два в одном.

Я пока не увидел ничего противозаконного ни в первом, ни во втором. Работа с софтом у нас пока не запрещена.

LightDiver ★★★★★
()
Последнее исправление: LightDiver (всего исправлений: 1)
Ответ на: комментарий от anonymous

Тебе то по барабану, а вот распространителю за распространение скриптов (для взлома) закрытого блоба может прилететь.

Ой, вот не надо дуть куда не надо дуть. Это не взлом, а установка.

Dimez ★★★★★
()
Ответ на: комментарий от LightDiver

Работа с софтом у нас пока не запрещена.

Лично для себя. Распространение производных продуктов только с разрешения. Ты требуешь конкретный скрипт у другого, подстрекаешь на (возможное) правонарушение.

anonymous
()
Ответ на: комментарий от anonymous

Если ты считаешь, что ебилды оскорбляют твою ориентацию, религию, права или еще что то, можешь обратиться в соответствующие службы с жалобой. Мне подобное не очень интересно. Я пока не встречал запретов ебилдов где то. В законах об этом ничего нет.

LightDiver ★★★★★
()
Ответ на: комментарий от Dimez

Это не взлом, а установка.

Изначальный блоб написан для установки на конкретную ОС (дистрибутив) и скорее всего и в лицензии разрешено устанавливать только на эту ОС. Установка на другую ОС - это уже модификация (он же «взлом», он же «производный продукт») для запуска на не разрешенной системе.

anonymous
()
Ответ на: комментарий от anonymous

Скорее всего? То есть ты сам придумал несуществующую проблему и сам с ней героически борешься, что является офтопом, кстати? Гениально. Не делай так больше.

LightDiver ★★★★★
()