#!/usr/bin/make -f
#export DH_VERBOSE = 1

# Cargo from PATH when the `cargo` package is installed (see Build-Depends).
# Override: `dpkg-buildpackage` → pass through environment, e.g. `CARGO=/path/to/cargo dpkg-buildpackage`.
CARGO ?= cargo

%:
	dh $@

# debhelper does not detect Rust/Cargo; build the workspace Tauri binary explicitly.
override_dh_auto_build:
	# Build frontend assets
	cd web && npm ci && npm run build
	# Build Rust binaries
	$(CARGO) build --release --locked 
	$(CARGO) build --release --locked -p kylinbot-desktop

override_dh_auto_install:
	install -d debian/kylin-bot/opt/system/share/kylinbot/web/dist
	cp -a web/dist/. debian/kylin-bot/opt/system/share/kylinbot/web/dist/
	install -D -m 0755 target/release/kylinbot-desktop \
		debian/kylin-bot/opt/system/bin/kylinbot-desktop
	install -D -m 0755 target/release/kylinbot \
		debian/kylin-bot/opt/system/bin/kylinbot
	install -D -m 0644 debian/kylin-bot.desktop \
		debian/kylin-bot/opt/system/resource/applications/kylinbot-desktop.desktop
	install -D -m 0644 apps/tauri/icons/256x256.png \
		debian/kylin-bot/opt/system/resource/icons/hicolor/256x256x/apps/kylinbot-desktop.png
	install -D -m 0644 apps/tauri/icons/128x128.png \
		debian/kylin-bot/opt/system/resource/icons/hicolor/128x128/apps/kylinbot-desktop.png
	install -D -m 0644 apps/tauri/icons/64x64.png \
		debian/kylin-bot/opt/system/resource/icons/hicolor/64x64/apps/kylinbot-desktop.png
	install -D -m 0644 apps/tauri/icons/32x32.png \
		debian/kylin-bot/opt/system/resource/icons/hicolor/32x32/apps/kylinbot-desktop.png

# GUI / Tauri integration tests are not suitable for default package builds.
override_dh_auto_test:
	:

override_dh_auto_clean:
	dh_auto_clean
	-$(CARGO) clean

override_dh_shlibdeps:
	dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info
