| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| | |
for raspi
Hence also fix BOOT_FSTYPE on fstab for mutable images (remount ro -> rw).
|
| | |
|
|\| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
mount-options
- Add env-vars BOOT_FSTYPE and BOOT_FSOPTIONS, supporting customizing the boot filesystem type and options
- FAT_CODEPAGE (if using BOOT_FSTYPE vfat, default) is hardcoded '437'
- Add 'lsof', allowing to check open listening ports (besides netstat)
- On Raspi: Use plymouth splash screen for all configurations, theme 'pix'
- Add systemd resize2fs_once.service to have it start very early
to resize the rootfs partition for RW rootfs
- No kernel argument 'rootwait' for initramfs/grub root=file boot
loop_rootfs (initram):
- kill spawn-off pipe copy process (LOOP_ROOTFS_LOG_PIDS)
- Use BOOT_FSTYPE, BOOT_FSOPTIONS (incl mounting /boot)..
- Use dedicated fsck.BOOT_FSTYPE if possible (and quiet)
- Log fsck and mount attempts, failure and success
-
Stage2 01-sys-tweaks fixes:
- Only disable systemd-remount-fs for ROOTFS_RO
- Only generate /boot/loop_rootfs.id for ROOTFS_RO
- Kernel Modules: Add codepage 437 and 850, drm and vc4 (raspi only)
- Use TARGET_ARCH in all situations
- On RW rootfs, grub-install with ext2 module
-
|
|/
|
|
|
|
|
| |
packages
stage_rescuezfs should be run ontop of stage_rescue,
see scripts/04-build-debian_amd64-ro-rescuezfs.cfg
|
|
|
|
|
| |
- GRUB image rename to declare architecture: data/grub-image01.bin -> data/grub-i386-image01.bin
- scripts/make_dualboot_image.sh: Let user chose denomination, i.e. G for GiB or M for MiB
|
|
|
|
|
|
|
|
|
|
|
| |
Goal reached: stage2 produced for raspi-arm64 + debian-amd64
merged into one 'dual-2GiB-01.img' using 'loop_rootfs'
were bootable on
- raspi4
- qemu amd64
- Intel NUK amd64 i6 w/ EFI (vfat) and other partitions
The 2G test image was created using scripts/make_dualboot_image.sh
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
'make_dualboot_image'
'make_dualboot_image' creates a new raw image file:
- creating one vfat partition covering whole size
- formating partition with vfat
- provision GRUB boot-code (expecting 'grub' folder on vfat partition)
- copy custom files to vfat partition
using image file handling via NBD (updated imagetool.sh).
The custom files are sourced from two sdcard diskimages folder
generated with our pi-gen branch:
- raspi arm64
- debian amd64
Simply copied both content into one merge folder,
passed as last argument 'provisioning-dir' to this script.
+++
Grub file handling takes care of both boot-code image locations,
446 bytes in MBR and the MBR gap from [512 bytes - partition-start[
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
functions from new lib_nbd_img_handling)
imagetool.sh
- new connect* and disconnect
- mount/umount stateless, multiple usage
- lib_nbd_img_handling used as base implementation for qcow2_handling and imagetool.sh
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
loop_rootfs using grub (WIP)
- Generic packages: nn-packages[-RELEASE] (using the optional '-RELEASE' variant)
- System packages: nn-packages-sys-(raspi|debian)[-RELEASE] (using the optional '-RELEASE' variant),
allow to distinguish not only for the RELEASE but the actual underlying distribution.
- On debian amd64, all required usb-storage etc modules are loaded for loop_rootfs/initrd
- loop_rootfs works on Raspi (Proprietary Bootloader) as well as on Debian (Grub Bootloader)
- loop_rootfs uses the first vfat block-device partition for /boot
- /boot will be mounted by loop_rootfs and handed over to new root-mount-point,
this avoids issues of using an undefined /boot partition (but the first)
- rotatelog_init_rootfs: Rotates /boot/init_rootfs.log if having more than 500 lines
- FIX export-image: Copy the rootfs.img to the exported full image,
which allows testing the image directly via qemu .. etc.
|
| |
|
|
|
|
| |
for 2nd parition)
|
|
|
|
| |
for custom tasks
|
|
|
|
| |
Cleaned README.md
|
|
|
|
| |
(expect default man and /usr/share)
|
| |
|
| |
|
|
|
|
| |
'has_journal' for writable image
|
|
|
|
| |
.. etc
|
|
|
|
|
|
| |
initial writable rootfs
Adding/renaming build scripts accordingly
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
install-dependencies and build script for convenience.
Also
- Drop brand 'Zafena', 'ZAFENA' for this generic branch.
- Add EXPORT_IMAGE for stage3b with IMG_SUFFIX="-smalldesk"
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Also move the `/data/sdcard` copy of '/boot' to stage2 and custom stages,
only used in ROOTFS_RO.
|
|
|
|
|
|
| |
the 2nd partition using remainder of QCOW2_SIZE
For rootfs read-only mode, we give a zero extra percentage for user root.
|
|
|
|
| |
package file
|
| |
|
|
|
|
| |
(export-image, make_bootable); Add 'sdcard' folder in DEPLOY_DIR
|
|
|
|
| |
raw-image) and don't set NBD_DEV (bugfix)
|
|
|
|
| |
rootfs size only (on bigger partition)
|
| |
|
|
|
|
| |
(merged from `export-image/04-finalise/01-run.sh`
|
|
|
|
|
|
|
|
| |
make_bootable_image); Use gzip if `DEPLOY_ZIP == 1`
Writing out the rootfs as a raw image,
we simply use the new `connect_raw_blkdev` on the finalized raw image
and dd the partition using the fs's block-size into a file.
|
|
|
|
|
|
|
|
|
|
|
| |
(4GB), 4 rootfs2 (4GB); Keep full sized sdcard image.
qcow2_handling: make_bootable_image()
- Still resize rootfs, but keep the partition table intact for both 4GB rootfs.
This keeps the scard image fully sized, but allows to mount and use all partitions.
- Use `mount_rawimage` (qemu-nbd) for image mount instead of convoluted loop device
|
|
|
|
|
|
|
|
|
|
|
|
| |
rootfs resize @ init (1st boot)
/etc/fstab didn't work to mount the overlayfs (boot freeze due to some dependencies).
Hence we use our own 'overlay_mount.service' Before 'local_fs.target',
which mounts '/data' and its overlays.
We also disable rootfs resize @ init (1st boot),
since the rootfs is immutable from here on.
|
| |
|
|\ |
|
| | |
|
|\| |
|
| | |
|