#!/usr/bin/make -f

export NIRI_BUILD_COMMIT = $(shell echo "release")
export CFLAGS += -ffat-lto-objects

%:
	dh $@

override_dh_auto_configure:
	find vendor/ -name .cargo-checksum.json | xargs sed -i 's/"files":{[^}]*}/"files":{}/'

override_dh_auto_build:
	cargo build --frozen --release --features default
	
	for shell in bash fish zsh; do \
		./target/release/niri completions $$shell > $$shell-completions; \
	done

override_dh_auto_install:
	install -Dm755 target/release/niri debian/niri/usr/bin/niri
	install -Dm755 resources/niri-session debian/niri/usr/bin/niri-session
	install -Dm644 resources/niri.service debian/niri/usr/lib/systemd/user/niri.service
	install -Dm644 resources/niri-shutdown.target debian/niri/usr/lib/systemd/user/niri-shutdown.target
	install -Dm644 resources/niri.desktop debian/niri/usr/share/wayland-sessions/niri.desktop
	install -Dm644 resources/niri-portals.conf debian/niri/usr/share/xdg-desktop-portal/niri-portals.conf
	install -Dm644 resources/default-config.kdl debian/niri/usr/share/doc/niri/default-config.kdl
	install -Dm644 README.md debian/niri/usr/share/doc/niri/README.md
	install -Dm644 bash-completions debian/niri/usr/share/bash-completion/completions/niri
	install -Dm644 fish-completions debian/niri/usr/share/fish/vendor_completions.d/niri.fish
	install -Dm644 zsh-completions debian/niri/usr/share/zsh/site-functions/_niri

override_dh_auto_test:
	export XDG_RUNTIME_DIR=$$(mktemp -d); \
	export RAYON_NUM_THREADS=1; \
	cargo test --all --exclude niri-visual-tests --frozen || echo "Tests failed, but continuing..."

