Commit 74523cf3 authored by jan.koester's avatar jan.koester
Browse files

tes

parent 87b80829
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -3,6 +3,8 @@ build
build*
.vs
.cache
debian/DEBIAN
debian/blogi-editor*
blogi.kdev4
obj-*-linux-gnu
.debhelper
+52 −1
Original line number Diff line number Diff line
@@ -106,7 +106,58 @@ ifneq ($(IS_NSPAWN),)
	install -D -m 644 debian/blogi-editor.tmpfiles debian/blogi-editor/usr/lib/tmpfiles.d/blogi-editor.conf
	install -D -m 644 debian/blogi-editor.sysusers debian/blogi-editor/usr/lib/sysusers.d/blogi-editor.conf
else
	@echo "Editor build — installing systemd and config files"
	@echo "Editor build — assembling chroot at /opt/blogi-editor (system libs)"
	# editor binary
	mkdir -p debian/blogi-editor/opt/blogi-editor/usr/bin
	cp -a debian/blogi-editor/usr/bin/blogi-editor debian/blogi-editor/opt/blogi-editor/usr/bin/
	# Copy all shared library dependencies into chroot
	mkdir -p debian/blogi-editor/opt/blogi-editor/lib/x86_64-linux-gnu
	mkdir -p debian/blogi-editor/opt/blogi-editor/lib64
	mkdir -p debian/blogi-editor/opt/blogi-editor/usr/lib/x86_64-linux-gnu
	cp -a /lib64/ld-linux-x86-64.so.2 debian/blogi-editor/opt/blogi-editor/lib64/ || true
	for lib in $$(ldd debian/blogi-editor/usr/bin/blogi-editor | grep -o '/[^ ]*'); do \
		dir=$$(dirname "$$lib"); \
		mkdir -p "debian/blogi-editor/opt/blogi-editor$$dir"; \
		cp -aL "$$lib" "debian/blogi-editor/opt/blogi-editor$$dir/" 2>/dev/null || true; \
	done
	# confplus config backend plugins
	mkdir -p debian/blogi-editor/opt/blogi-editor/usr/lib/x86_64-linux-gnu/confplus/backend
	-cp -a /usr/lib/x86_64-linux-gnu/confplus/backend/*.cfg.so debian/blogi-editor/opt/blogi-editor/usr/lib/x86_64-linux-gnu/confplus/backend/
	# dbpp database backend plugins
	mkdir -p debian/blogi-editor/opt/blogi-editor/usr/lib/x86_64-linux-gnu/dbpp
	-cp -a /usr/lib/x86_64-linux-gnu/dbpp/*.so debian/blogi-editor/opt/blogi-editor/usr/lib/x86_64-linux-gnu/dbpp/
	# Also copy backend deps (each .so may have its own deps)
	for lib in $$(find debian/blogi-editor/opt/blogi-editor/usr/lib/x86_64-linux-gnu/confplus debian/blogi-editor/opt/blogi-editor/usr/lib/x86_64-linux-gnu/dbpp -name '*.so' 2>/dev/null); do \
		for dep in $$(ldd "$$lib" 2>/dev/null | grep -o '/[^ ]*'); do \
			dir=$$(dirname "$$dep"); \
			mkdir -p "debian/blogi-editor/opt/blogi-editor$$dir"; \
			cp -anL "$$dep" "debian/blogi-editor/opt/blogi-editor$$dir/" 2>/dev/null || true; \
		done; \
	done
	# editor widget plugins
	mkdir -p debian/blogi-editor/opt/blogi-editor/usr/lib/blogi/plugins/webedit
	-cp -a debian/blogi-editor/usr/lib/blogi/plugins/webedit/*.so debian/blogi-editor/opt/blogi-editor/usr/lib/blogi/plugins/webedit/
	# blogidev library (plugin runtime dependency)
	mkdir -p debian/blogi-editor/opt/blogi-editor/usr/lib/blogi
	-cp -a debian/blogi-editor/usr/lib/blogi/libblogidev.* debian/blogi-editor/opt/blogi-editor/usr/lib/blogi/
	# Static content (HTML, CSS, JS)
	mkdir -p debian/blogi-editor/opt/blogi-editor/usr/share/blogi-editor
	-cp -a debian/blogi-editor/usr/share/blogi-editor/* debian/blogi-editor/opt/blogi-editor/usr/share/blogi-editor/
	# Minimal container filesystem
	mkdir -p debian/blogi-editor/opt/blogi-editor/etc/blogi-editor/ssl
	mkdir -p debian/blogi-editor/opt/blogi-editor/var/lib/blogi-editor
	mkdir -p debian/blogi-editor/opt/blogi-editor/proc
	mkdir -p debian/blogi-editor/opt/blogi-editor/sys
	mkdir -p debian/blogi-editor/opt/blogi-editor/dev
	mkdir -p debian/blogi-editor/opt/blogi-editor/run
	mkdir -p debian/blogi-editor/opt/blogi-editor/tmp
	# Container user database
	echo "root:x:0:0:root:/root:/bin/false" > debian/blogi-editor/opt/blogi-editor/etc/passwd
	echo "blogi-editor:x:998:998:blogi-editor:/var/lib/blogi-editor:/bin/false" >> debian/blogi-editor/opt/blogi-editor/etc/passwd
	echo "root:x:0:" > debian/blogi-editor/opt/blogi-editor/etc/group
	echo "blogi-editor:x:998:" >> debian/blogi-editor/opt/blogi-editor/etc/group
	# nspawn and systemd config
	install -D -m 644 debian/blogi-editor.nspawn debian/blogi-editor/etc/systemd/nspawn/blogi-editor.nspawn
	install -D -m 644 debian/blogi-editor.default-config.yaml debian/blogi-editor/usr/share/blogi-editor/blogi-editor.default-config.yaml
	install -D -m 644 debian/blogi-editor.tmpfiles debian/blogi-editor/usr/lib/tmpfiles.d/blogi-editor.conf
	install -D -m 644 debian/blogi-editor.sysusers debian/blogi-editor/usr/lib/sysusers.d/blogi-editor.conf