summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorAndrew Cady <d@jerkface.net>2023-06-25 21:59:49 -0400
committeru <u@billy>2023-11-17 08:46:41 -0500
commita4a4f588d4c0aeb5e1d580196f02c54e75197683 (patch)
treeb05e55aed06844ea229de8e0769ac8ef12026375 /Makefile
parent22c2dbf7a19f9e3013016c915bb798d1f60d76a2 (diff)
Store large files in subvolumes
These files should never be mixed into the same directories as source code, since source code should be backed up by filesystem snapshot, and these should not. This change includes file renames in this repository and in two of its submodules.
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile37
1 files changed, 16 insertions, 21 deletions
diff --git a/Makefile b/Makefile
index f7b88c7..c1dfb8a 100644
--- a/Makefile
+++ b/Makefile
@@ -91,7 +91,7 @@ SUDO_MAKE = sudo MAKEFLAGS="$$MAKEFLAGS" $(MAKE)
91 91
92.PHONY: install-configuration install-bootserver install-boot-server start-bootserver 92.PHONY: install-configuration install-bootserver install-boot-server start-bootserver
93install-boot-server: install-bootserver 93install-boot-server: install-bootserver
94install-bootserver: | rootfs/samizdat.btrfs 94install-bootserver: | $(rootfs)
95 exit 1; sudo initrd.sh 95 exit 1; sudo initrd.sh
96 $(SUDO_MAKE) instdir=/ real-install-bootserver start-bootserver 96 $(SUDO_MAKE) instdir=/ real-install-bootserver start-bootserver
97 97
@@ -138,30 +138,24 @@ update-submodules:
138install-submodules: cmd=install 138install-submodules: cmd=install
139install-submodules: update-submodules $(INSTALL_SUBMODULES) 139install-submodules: update-submodules $(INSTALL_SUBMODULES)
140 140
141GOLD = 141rootfs = rootfs/_filesystem/samizdat.seed.btrfs
142ifdef GOLD
143rootfs = samizdat-gold.seed.btrfs
144patchfs =
145else
146rootfs = samizdat.seed.btrfs
147patchfs = $(patsubst %.seed.btrfs,%.patch.btrfs,$(rootfs)) 142patchfs = $(patsubst %.seed.btrfs,%.patch.btrfs,$(rootfs))
148endif 143rootfs_verity = $(addsuffix .verity,$(rootfs) $(patchfs))
149rootfs_verity = $(addprefix rootfs/,$(addsuffix .verity,$(rootfs) $(patchfs)))
150 144
151.PHONY: rootfs rootfs-deps 145.PHONY: rootfs rootfs-deps
152rootfs-deps: 146rootfs-deps:
153 [ -e install-submodules-stamp ] || make install-submodules-stamp 147 [ -e install-submodules-stamp ] || make install-submodules-stamp
154 [ -e install-stamp ] || $(SUDO_MAKE) install-stamp 148 [ -e install-stamp ] || $(SUDO_MAKE) install-stamp
155 149
156btrfs_images = $(addprefix rootfs/, $(rootfs) $(patchfs)) 150btrfs_images = $(rootfs) $(patchfs)
157rootfs-clean: 151rootfs-clean:
158 make -C rootfs clean all 152 make -C rootfs clean all
159 153
160rootfs: rootfs-deps $(btrfs_images) $(rootfs_verity) 154rootfs: rootfs-deps $(btrfs_images) $(rootfs_verity)
161 sudo mkdir -p /srv/nbd 155 sudo mkdir -p /srv/nbd
162 sudo ln -sf "$$PWD"/rootfs/$(rootfs) /srv/nbd/samizdat.btrfs 156 sudo ln -sf "$$PWD"/$(rootfs) /srv/nbd/samizdat.btrfs
163ifneq (,$(patchfs)) 157ifneq (,$(patchfs))
164 sudo ln -sf "$$PWD"/rootfs/$(patchfs) /srv/nbd/samizdat.patch.btrfs 158 sudo ln -sf "$$PWD"/$(patchfs) /srv/nbd/samizdat.patch.btrfs
165endif 159endif
166 160
167FORCE: 161FORCE:
@@ -170,12 +164,12 @@ $(btrfs_images): FORCE
170 164
171boot: rootfs 165boot: rootfs
172 sudo ./src/mkinitramfs-samizdat 166 sudo ./src/mkinitramfs-samizdat
173 sudo ROOTFS=rootfs/$(rootfs) ./src/parted-usb.sh 167 sudo ROOTFS=$(rootfs) ./src/parted-usb.sh
174 168
175fastboot: rootfs 169fastboot: rootfs
176 sudo qemu.sh 170 sudo qemu.sh
177 171
178samizdat.netinst.iso: | rootfs/samizdat.btrfs 172samizdat.netinst.iso: | $(rootfs)
179 exit 1; sudo initrd.sh 173 exit 1; sudo initrd.sh
180 sudo xorriso-usb.sh $(reuse_child) --bootloader --out $@ 174 sudo xorriso-usb.sh $(reuse_child) --bootloader --out $@
181 175
@@ -207,7 +201,7 @@ verity_root_hash = $(shell sed -ne 's/^Root hash:[ \t]*//p' $<)
207 201
208root_hash = $(shell sed -ne 's/^Root hash: *//p' < $<.log) 202root_hash = $(shell sed -ne 's/^Root hash: *//p' < $<.log)
209 203
210veritymount: rootfs/samizdat.seed.btrfs.verity.log 204veritymount: $(rootfs).verity.log
211 @sudo veritysetup remove samizverity >/dev/null 2>&1 || true 205 @sudo veritysetup remove samizverity >/dev/null 2>&1 || true
212 sudo veritysetup create samizverity $(basename $(basename $<)) \ 206 sudo veritysetup create samizverity $(basename $(basename $<)) \
213 $(basename $<) \ 207 $(basename $<) \
@@ -227,8 +221,7 @@ apt = $(shell which apt || which apt-get)
227apt-get-update-stamp: 221apt-get-update-stamp:
228 @if $(stale); then set -x; sudo $(apt) update && touch $@; fi 222 @if $(stale); then set -x; sudo $(apt) update && touch $@; fi
229 223
230rootfs/seed.iso: $(addprefix rootfs/samizdat.seed.btrf, s \ 224rootfs/seed.iso: $(rootfs) $(if $(VERITY),$(addprefix $(rootfs),.verity .verity.log))
231 $(if $(VERITY), s.verity s.verity.log))
232 rm -f $@~tmp 225 rm -f $@~tmp
233 touch $@~tmp 226 touch $@~tmp
234 fallocate -n -l 10G $@~tmp 227 fallocate -n -l 10G $@~tmp
@@ -287,9 +280,11 @@ upgrade-key: upgrade key
287 280
288.PHONY: usb key emu testinitrdkey testinitrd total-destroy persist 281.PHONY: usb key emu testinitrdkey testinitrd total-destroy persist
289 282
290persist: | partitions/persist.img 283PERSIST_FILE = partitions/_liveboot/persist.img
291partitions/persist.img: 284
292 make -C partitions $(notdir $@) 285persist: | $(PERSIST_FILE)
286$(PERSIST_FILE):
287 $(MAKE) -C partitions $(patsubst partitions/%,%,$@)
293 288
294usb emu efi: initrd rootfs 289usb emu efi: initrd rootfs
295key keymu emu-key: initrd 290key keymu emu-key: initrd
@@ -297,7 +292,7 @@ cleanmu: rootfs-clean total-destroy emu
297mu: up cleanmu 292mu: up cleanmu
298 293
299usb emu key keymu emu-key total-destroy efi: 294usb emu key keymu emu-key total-destroy efi:
300 make -C partitions clean $@ 295 $(MAKE) -C partitions clean $@
301 296
302testinitrdkey: keymu 297testinitrdkey: keymu
303testinitrd: emu 298testinitrd: emu