From 56e9898d755d66de631d4522af264c1044f7f37d Mon Sep 17 00:00:00 2001 From: Mikhail Klementev Date: Fri, 26 May 2023 15:44:06 +0000 Subject: [PATCH] fix: make sure apt-get will not download the repo version --- distro/debian/debian.go | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/distro/debian/debian.go b/distro/debian/debian.go index 6132705..0e77b98 100644 --- a/distro/debian/debian.go +++ b/distro/debian/debian.go @@ -268,6 +268,7 @@ func (d Debian) runs() (commands []string) { pkglist := []string{ "wget", "build-essential", "libelf-dev", "git", "kmod", "linux-base", "libssl-dev", + "firmware-linux-free", } gccs := "'^(gcc-[0-9].[0-9]|gcc-[0-9]|gcc-[1-9][0-9])$'" @@ -460,13 +461,21 @@ func (d Debian) Install(pkgname string, headers bool) (err error) { // prepare local repository cmdf("mkdir debs && mv *.deb debs/") cmdf("dpkg-scanpackages debs /dev/null | gzip > debs/Packages.gz") - cmdf(`echo "deb file:$(pwd) debs/" >> /etc/apt/sources.list.d/local.list`) + cmdf(`echo "deb [trusted=yes] file:$(pwd) debs/" >> /etc/apt/sources.list.d/local.list`) cmdf("apt-get update -o Dir::Etc::sourcelist='sources.list.d/local.list' -o Dir::Etc::sourceparts='-' -o APT::Get::List-Cleanup='0'") + // make sure apt-get will not download the repo version + cmdf("echo 'Package: *' >> /etc/apt/preferences.d/pin") + cmdf(`echo 'Pin: origin "snapshot.debian.org"' >> /etc/apt/preferences.d/pin`) + cmdf("echo 'Pin-Priority: 100' >> /etc/apt/preferences.d/pin") + // cut package names and install cmdf("ls debs | grep deb | cut -d '_' -f 1 | " + "xargs apt-get -y --force-yes install") + // for debug + cmdf("ls debs | grep deb | cut -d '_' -f 1 | xargs apt-cache policy") + c, err := container.New(d.Distro()) if err != nil { return