mirror of
https://salsa.debian.org/raspi-team/image-specs
synced 2026-05-30 06:38:09 +02:00
Makefile: Automatically use fakemachine if not uid 0
fakemachine launches a virtual machine reusing the host system's /usr, and runs commands as root on that virtual machine. It's used by debos, but can also be used to wrap arbitrary commands, in particular vmdb2; it's enough to run the parts of vmdb2 that need to mount filesystems and run apt. This won't work if fakemachine isn't available (in particular on non-x86), but that seems better than just failing altogether. Signed-off-by: Simon McVittie <smcv@debian.org>
This commit is contained in:
committed by
Diederik de Haas
parent
5aadb0116a
commit
821aff4e19
8
Makefile
8
Makefile
@@ -12,6 +12,12 @@ xzimages: $(addsuffix .img.xz,$(platforms))
|
||||
images: $(addsuffix .img,$(platforms))
|
||||
yaml: $(addsuffix .yaml,$(platforms))
|
||||
|
||||
ifeq ($(shell id -u),0)
|
||||
as_root =
|
||||
else
|
||||
as_root = fakemachine -v $(CURDIR) -- env --chdir $(CURDIR)
|
||||
endif
|
||||
|
||||
target_platforms:
|
||||
@echo $(platforms)
|
||||
|
||||
@@ -122,7 +128,7 @@ raspi_4_bullseye.yaml: raspi_base_bullseye.yaml
|
||||
|
||||
%.img: %.yaml
|
||||
touch $(@:.img=.log)
|
||||
time nice vmdb2 --verbose --rootfs-tarball=$(subst .img,.tar.gz,$@) --output=$@ $(subst .img,.yaml,$@) --log $(subst .img,.log,$@)
|
||||
time nice $(as_root) vmdb2 --verbose --rootfs-tarball=$(subst .img,.tar.gz,$@) --output=$@ $(subst .img,.yaml,$@) --log $(subst .img,.log,$@)
|
||||
chmod 0644 $@ $(@,.img=.log)
|
||||
|
||||
_ck_root:
|
||||
|
||||
Reference in New Issue
Block a user