tsupport for custom .deb packages - arm-sdk - os build toolkit for various embedded devices HTML git clone https://git.parazyd.org/arm-sdk DIR Log DIR Files DIR Refs DIR Submodules DIR README DIR LICENSE --- DIR commit 5f4519e488277edef613f2ee1d4b1dd2773f7870 DIR parent 19f090ea923525365bc28c23e6d95ddae372055b HTML Author: parazyd <parazyd@dyne.org> Date: Wed, 20 Apr 2016 14:54:17 +0200 support for custom .deb packages Diffstat: M arm/README.md | 4 ++++ A arm/extra/pkginclude/README.md | 6 ++++++ M arm/profiles/common-devuan | 12 +++++++++++- 3 files changed, 21 insertions(+), 1 deletion(-) --- DIR diff --git a/arm/README.md b/arm/README.md t@@ -6,6 +6,10 @@ **ARM64**: `https://pub.parazyd.cf/mirror/gcc-linaro-aarch64-linux-gnu-4.9.txz` SHA256sums are available by downloading $filename.sha +## Custom packages +In `extra/pkginclude` you can place any .deb packages and they will get pulled +by the script. Remember to use the correct architecture + ## qemu-wrapper For certain devices, you will want to pass arguments to qemu, such as the cpu model. To enable this, you will have to modify and compile qemu-wrapper.c with: DIR diff --git a/arm/extra/pkginclude/README.md b/arm/extra/pkginclude/README.md t@@ -0,0 +1,6 @@ +# pkginclude + +This is a directory where you can place any extra .deb packages that are not +included in the official repositories. + +Remember to use the correct architecture. DIR diff --git a/arm/profiles/common-devuan b/arm/profiles/common-devuan t@@ -127,7 +127,8 @@ EOF write-sources-list() { fn write-sources-list - cat <<EOF | sudo tee ${writebase}/$1etc/apt/sources.list +# cat <<EOF | sudo tee ${writebase}/$1etc/apt/sources.list + cat <<EOF | sudo tee ${writebase}/etc/apt/sources.list deb ${mirror} ${release} ${section} deb-src ${mirror} ${release} ${section} EOF t@@ -137,6 +138,9 @@ EOF write-third-stage() { fn write-third-stage + mkdir ${writebase}/pkginclude + cp $R/arm/extra/pkginclude/*.deb ${writebase}/pkginclude/ + cat <<EOF | sudo tee ${writebase}/third-stage #!/bin/bash dpkg-divert --add --local --divert /usr/sbin/invoke-rc.d.chroot --rename /usr/sbin/invoke-rc.d t@@ -162,6 +166,11 @@ apt-get --yes --force-yes install ${system_packages} apt-get --yes --force-yes install ${extra_packages} apt-get --yes --force-yes dist-upgrade + +for package in `find /pkginclude`; do + dpkg -i $package +done + apt-get --yes --force-yes autoremove echo "Allowing SSH root login" t@@ -172,6 +181,7 @@ rm -fv /usr/sbin/policy-rc.d rm -fv /usr/sbin/invoke-rc.d dpkg-divert --remove --rename /usr/sbin/invoke-rc.d +rm -rfv /pkginclude/ rm -fv /third-stage EOF sudo chmod +x $writebase/third-stage