]> git.plutz.net Git - blast/commitdiff
rewrite of approx module master
authorPaul Hänsch <paul@plutz.net>
Tue, 21 Apr 2026 04:20:58 +0000 (06:20 +0200)
committerPaul Hänsch <paul@plutz.net>
Tue, 21 Apr 2026 04:20:58 +0000 (06:20 +0200)
Makefile
modules/approx.mk
targets/raspberrypi.mk

index 7c4d95de9009fe263639ba7014356b80fd7d6074..521ea7c9bf49d7d6e11c6df743e76f522ba1b744 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -32,13 +32,6 @@ endif
 
 KEYRING := keys/debian-archive-${release}-automatic.gpg
 
-ifndef SOURCES
-  define SOURCES := 
-  deb  http://deb.debian.org/debian    ${release}      main
-  deb  https://security.debian.org/debian-security/    ${release}-security     main
-  endef
-endif
-
 ifdef squash
   target ?= squashfs
 endif
@@ -57,6 +50,11 @@ endif
 
 include $(addsuffix .mk, $(addprefix targets/, ${target}))
 
+define SOURCES ?=
+deb    http://deb.debian.org/debian    ${release}      main
+deb    https://security.debian.org/debian-security/    ${release}-security     main
+endef
+
 include modules/default.mk
 ifdef modules
   include $(addsuffix .mk, $(addprefix modules/, $(subst ${comma_},${space_},${modules})))
@@ -118,9 +116,15 @@ ${SYSROOT}/etc/apt/trusted.gpg.d/: ${SYSROOT} _bootstrap
        cp keys/*.gpg "$@"
        chmod 644 "$@"/*.gpg
 
+${SYSROOT}/etc/apt/sources.list: ${SYSROOT} .FORCE
+       printf '%s\n' "$${SOURCES}" >"$@"
+
+${SYSROOT}/etc/resolv.conf: /etc/resolv.conf ${SYSROOT} .FORCE
+       cp -- "$<" "$@"
+
+_install: ${SYSROOT}/etc/apt/sources.list
+_install: ${SYSROOT}/etc/resolv.conf
 _install: ${SYSROOT} _aptkeys _norecommends
-       printf '%s\n' "$${SOURCES}" |sort -u >"$${SYSROOT}/etc/apt/sources.list"
-       -cp /etc/resolv.conf "$${SYSROOT}/etc/"
        -chroot "$${SYSROOT}" sh -c 'apt-mark showmanual |xargs apt-mark auto'
        -chroot "$${SYSROOT}" apt-get update
        chroot "$${SYSROOT}" ln -sf /bin/true /usr/local/sbin/invoke-rc.d
index 0847c0bf6036bb6a4b86c16a81d53dbfa7c1ae78..20ebba6f0be431def1549637035e746d6f83a71e 100644 (file)
@@ -1,40 +1,15 @@
-define approx_original_sources :=
-${SOURCES}
-endef
-export approx_original_sources
+.PHONY: _approx_restore _approx
+_config: _approx_restore
+_install: _approx
 
-ifndef approxhost
-  approxhost := localhost
-endif
+approxhost ?= localhost:9999
+approx ?= http://${approxhost}/debian
 
-approxrepos := main
-approxrepos += $(findstring contrib, ${SOURCES})
-approxrepos += $(findstring non-free-fimware, ${SOURCES})
-#approxrepos += $(findstring non-free, ${SOURCES})
+BOOTSTRAP := ${approx}
 
-ifdef approx
-  BOOTSTRAP := ${approx}
-  define SOURCES =
-  deb ${approx} ${release} ${approxrepos}
-  deb ${approx} ${release}-backports ${approxrepos}
-  endef
-else ifdef raspi
-  BOOTSTRAP := http://localhost/raspbian
-  define SOURCES :=
-  deb http://${approxhost}/raspbian  stretch main non-free firmware rpi
-  deb http://${approxhost}/rpidebian stretch main
-  deb http://${approxhost}/raspbian  buster main non-free firmware rpi
-  deb http://${approxhost}/rpidebian buster main
-  endef
-else
-  BOOTSTRAP := http://localhost/debian
-  define SOURCES :=
-  deb http://${approxhost}/debian ${release} ${approxrepos}
-  endef
-endif
+_approx: ${SYSROOT}/etc/apt/sources.list
+       sed -Ei 's;http://[^/]+/[^      ]+;${approx};' "$<"
 
-.PHONY: _approx_restore_sources
-_config: _approx_restore_sources
-_approx_restore_sources: ${CFGROOT}
-       printf '%s\n' "$${approx_original_sources}" >"$${CFGROOT}/etc/apt/sources.list"
+_approx_restore: _copy
+       printf '%s\n' "$${SOURCES}" >"$${CFGROOT}/etc/apt/sources.list"
        -chroot "$${CFGROOT}" apt-get update
index e582c2593ee80e90846aa6b30b063b6a2e8960fe..1ebd79da24b4c25d2e1a56c7e1d2d2c401e0416d 100644 (file)
@@ -26,7 +26,7 @@ PBOOT = rpi_boot.img.temp
 PROOT = rpi_root.img.temp
 CFGROOT := img_mount
 
-define SOURCES := 
+define SOURCES ?=
 deb    http://deb.debian.org/debian    ${release}      main    non-free-firmware
 deb    https://deb.debian.org/debian-security/ ${release}-security     main
 endef