implement installation of fake packages

This commit is contained in:
parazyd 2017-03-27 13:57:59 +02:00
parent 5d8332af77
commit fea3aa058a
No known key found for this signature in database
GPG Key ID: F0CB28FCF78637DE
1 changed files with 39 additions and 0 deletions

View File

@ -252,6 +252,8 @@ EOF
chroot-script() {
fn chroot-script "$@"
req=(strapdir)
ckreq || return 1
case "x$1" in
x-d)
@ -275,6 +277,43 @@ chroot-script() {
sudo rm -f $strapdir/$script
}
install_fake_package() {
fn install_fake_package "$@"
req=(strapdir pkgname pkgver section)
local pkgname="$1"
local pkgver="$2"
local section="$3"
ckreq || return 1
local _tmp="$strapdir/tmp"
sudo mkdir -p "$_tmp/$pkgname"
cat <<EOF | sudo tee ${_tmp}/${pkgname}/${pkgname}_${pkgver}.control >/dev/null
Section: ${section}
Priority: optional
Homepage: https://devuan.org/
Standards-Version: 3.9.6
Package: ${pkgname}
Version: ${pkgver}
Maintainer: Devuan developers <onelove@devuan.org>
Architecture: all
Description: (Fake) ${pkgname}
Dummy package used to meet some dependencies without installing the
real ${pkgname} package.
EOF
cat <<EOF | sudo tee ${strapdir}/install-fake-package >/dev/null
#!/bin/sh
cd /tmp/${pkgname}
equivs-build ${pkgname}_${pkgver}.control \
&& dpkg -i ${pkgname}_${pkgver}_all.deb || exit 1
cd /tmp
rm -rf ${pkgname}
EOF
chroot-script install-fake-package || zerr
}
blend_preinst() {
fn blend_preinst
func "not overriden"