# BULLSEYE_FREE, BULLSEYE_NONFREE
# BOOKWORM_FREE, BOOKWORM_NONFREE
# TESTING_FREE, TESTING_NONFREE,
-# XENIAL_FREE, BIONIC, FOCAL, FLIDAS, ETIONA, NABIA, ARAMO, ECNE.
+# XENIAL_FREE, BIONIC, FOCAL, FLIDAS, ETIONA, NABIA, ARAMO, ECNE, ECNE_MISSING (some noble packages).
#
# It's all a little redundant in some cases, but it keeps things
# simpler.
mount -o bind $src $dst
fi
-chmod 700 /mnt/root
+chmod 700 $target/mnt/root
$FAI/distro-install-common/end
EOF
- if [[ ! $FAI_WRAPPER || $SSH_CLIENT ]]; then
- # for running from fai or remote connections, don't kill the internet
- ethusb_arg=-c
- fi
- if [[ $(timeout 1 dig +short @10.2.0.1 -x 10.2.0.2 2>&1 ||:) == kd.b8.nz. ]] \
- && ip n show 10.2.0.1 | grep . &>/dev/null; then
- # we are at_home
- $FAI/distro-install-common/ethusb-static $ethusb_arg
- else
- $FAI/distro-install-common/ethusb-static off $ethusb_arg
- fi
-
-
else
cat > $target/etc/network/interfaces <<-EOF
# generated by FAI
$ROOTCMD dpkg-divert --no-rename --local --add $f
done
-## using dev version for bug fix temporarily. when done, set this to false,
-## and we can stop copying it in fai-redep.
-static_ver=true
+# from packages listed in .github/workflows/devel.yml
+# The dumb makefile makes us build docs even if they were already built.
+if ! type -p sphinx-build &>/dev/null; then
+ $ROOTCMD apt-get -y install python3-sphinx-rtd-theme
+fi
+
+
+## If we need to use a dev version temporarily, this to true
+## and copy it over in fai-redep. See comment there.
+static_ver=false
if $static_ver; then
# The version with the bug fix is really some git version, but this is
# what it outputs for --version.
ver=6.10
bp_dirname=btrfs-progs
- if grep -F 'VERSION_CODENAME="aramo"' /etc/os-release; then
- bp_dirname=btrfs-progs-t11
- fi
else
- # from packages listed in .github/workflows/devel.yml
- # The dumb makefile makes us build docs even if they were already built.
- if ! type -p sphinx-build &>/dev/null; then
- $ROOTCMD apt-get -y install python3-sphinx-rtd-theme
- fi
- python3-sphinx-rtd-theme
bp_dirname=btrfs-progs-release
# latest released version.
pre=https://mirrors.edge.kernel.org/pub/linux/kernel/people/kdave/btrfs-progs
last_built_ver=$($bp_dir/btrfs --version 2>/dev/null | head -n1 | awk '{print $2}')
+# todo: this doesn't account for multiple distros versions that require
+# their own builds.
if [[ $ver != "$cur_ver" ]]; then
- # Assume we've build the static_ver version.
+ # Assumes we've pre-built the static_ver version if we are using that.
if $static_ver || [[ $ver == "$last_built_ver" ]]; then
if ! $ROOTCMD dpkg -s -- build-essential 2>&1 | grep -Fx "Status: install ok installed" &>/dev/null; then
$ROOTCMD apt-get -y install build-essential
$ROOTCMD bash -xe <<EOF
cd /tmp/bprogs
make install
-mv /usr/bin/{fsck,mkfs}.btfs /usr/sbin/
+mv /usr/bin/{fsck,mkfs}.btrfs /usr/sbin/
EOF
fi
else
# using repos that are pinned negative, and pulling in uninstallable
# packages.
#
- # todo: this isn't considering the chroot.
+ # todo: this isn't considering the chroot, assumes we've built it
+ # outside the chroot and won't get into this case.
if [[ -e /b/distro-functions/src/package-manager-abstractions ]]; then
. /b/distro-functions/src/package-manager-abstractions
- p build-dep btrfs-progs/$(debian-codename) -y
+ debian_codename=$(debian-codename)
+ p build-dep btrfs-progs/$debian_codename -y
else
$ROOTCMD apt-get -y build-dep btrfs-progs
fi
2. On another machine nc INSTALL_MACHINE 1234 <live-kexec
Obviously beware that anyone on your network could send commands to the install machine.
-This has been tested on trisquel 7 & 8 & ubuntu 16.04 & 18.10. With
+This has been tested on trisquel 7,8,11 & ubuntu 16.04 & 18.10. With
18.10 and trisquel 8 on an x200, kexec was unreliable, resulting in
freezes and kernel panics. On t11, linux 5.15.0-40-generic, after kexec,
-black screen, ping worked but nothing else. Debian 11 live image worked.
+black screen, ping worked but nothing else. More recently, t11 live cd
+worked fine. Debian 11 live image worked. Note: t12 and debian bookworm
+no longer have the package pxe-kexec packaged.
If the screen just sits in a weird color inverted, corrupted looking state,
it's probably nothing wrong with the computer, but a problem