.POSIX: .SUFFIXES: .SUFFIXES: .in .in: sed \ -e "s|@HOSTNAME@|`hostname`|g" \ < $< > $@ if [ -x $< ]; then chmod +x $@; fi all: EuAndreh.key guix nix debian paku.lock: src/bin/paku touch $@ test-config-files = \ tests/internet/etc/postfix/main.cf \ tests/internet/etc/dkimproxyout.conf \ tests/internet/etc/dovecot/dovecot.conf \ derived-assets = \ $(test-config-files) \ guix: src/org/euandre/packages.scm result-packages result-services src/org/euandre/packages.scm: paku.lock perl src/bin/paku guix > src/org/euandre/packages.scm result-packages: guix build -r $@ -v3 -Lsrc/ -K \ -f src/org/euandre/packages.scm \ -f src/org/euandre/queue.scm local-files = \ /etc/postfix/master.cf \ /etc/postfix/main.cf \ internet-files = \ $(local-files) \ /etc/sasl2/smtpd.conf \ /etc/dkimproxyout.conf \ /etc/dovecot/dovecot.conf \ result-local: result-packages guix system -v3 -Lsrc/ -K -r $@ build tests/local/system.scm for f in $(local-files); do \ diff -U5 --color=always result-local$$f tests/local$$f; \ done result-internet: result-packages $(MAKE) $(test-config-files) guix system -v3 -Lsrc/ -K -r $@ build tests/internet/system.scm for f in $(internet-files); do \ diff -U5 --color=always result-internet$$f tests/internet$$f; \ done result-services: result-local result-internet nix: default.nix result default.nix: paku.lock perl src/bin/paku nix > $@ result: nix-build build.nix debian.mk: paku.lock perl src/bin/paku debian > $@ debian: debian.mk $(MAKE) -f debian.mk public/debian: debian mkdir -p $(@D) rsync -avzP --delete `$(MAKE) -s -f debian.mk public-dir`/ $@/ public/paku.html: paku.lock src/bin/paku mkdir -p $(@D) perl src/bin/paku html > $@ public: public/debian public/paku.html upload: public rsync -avzP --delete public/ euandre.org:/srv/www/s/package-repository/ HTTP-REMOTE = 'https://euandre.org/s/package-repository' check-ubuntu: sh tests/vm-check.sh -x -t deb -H ubuntu-x86_64-headless -r $(HTTP-REMOTE) check: check-ubuntu clean: rm -rf \ $(derived-assets) result* .paku/ public/ debian.mk EuAndreh.key: paku.lock gpg --armour --export eu@euandre.org > $@