ICONPREFIX = acronis_agent_linux_
BINNAME = acroniscyberprotectconnectagent
FULLNAME = Acronis Cyber Protect Connect Agent
NAME = acroniscyberprotectconnectagent
SERVICENAME = acroniscyberprotectconnectagent
PAMSERVICE = acpcagent
CUSTOMSETTINGS = .acpcasettings.tmp

icon = mkdir -p /usr/share/icons/hicolor/$(1)x$(1)/apps && cp icons/$(ICONPREFIX)$(1).png /usr/share/icons/hicolor/$(1)x$(1)/apps/$(BINNAME).png
rmicon = rm -f /usr/share/icons/hicolor/$(1)x$(1)/apps/$(BINNAME).png

all:
	@echo "Execute 'sudo make install' to install $(FULLNAME)"
	@echo "Execute 'sudo make uninstall' to remove $(FULLNAME)"

install:
	mkdir -p /opt
	cp -R bin/$(NAME) /opt/
	ln -s /opt/$(NAME)/$(BINNAME).AppDir/AppRun /opt/$(NAME)/$(NAME)
	mkdir -p /usr/bin
	ln -s /opt/$(NAME)/$(NAME) /usr/bin/$(BINNAME)

	$(call icon,16)
	$(call icon,22)
	$(call icon,24)
	$(call icon,32)
	$(call icon,48)
	$(call icon,256)
	$(call icon,512)

	mkdir -p /usr/share/applications
	cp desktop/$(BINNAME).desktop /usr/share/applications/

	mkdir -p /etc/xdg/autostart
	cp autostart/$(BINNAME).desktop /etc/xdg/autostart/

	mkdir -p /etc/systemd/system
	cp systemd/$(SERVICENAME).service /etc/systemd/system/

	mkdir -p /etc/pam.d
	cp pam/$(PAMSERVICE) /etc/pam.d/

ifeq ("$(shell test -s bin/$(NAME)/$(CUSTOMSETTINGS) && echo -n yes)", "yes")
	cp bin/$(NAME)/$(CUSTOMSETTINGS) /tmp/$(CUSTOMSETTINGS).gz
	cat /dev/null > bin/$(NAME)/$(CUSTOMSETTINGS)
	gzip -d /tmp/$(CUSTOMSETTINGS).gz
	chown root:root /tmp/$(CUSTOMSETTINGS)
	chmod 600 /tmp/$(CUSTOMSETTINGS)
endif

	systemctl enable --now $(SERVICENAME).service
	systemctl start $(SERVICENAME).service
	gtk-update-icon-cache -f /usr/share/icons/hicolor/

uninstall:
	systemctl stop $(SERVICENAME).service
	rm -rf /opt/$(NAME)
	rm -f /usr/bin/$(BINNAME)

	$(call rmicon,16)
	$(call rmicon,22)
	$(call rmicon,24)
	$(call rmicon,32)
	$(call rmicon,48)
	$(call rmicon,256)
	$(call rmicon,512)

	rm -f /usr/share/applications/$(BINNAME).desktop

	rm -f /etc/xdg/autostart/$(BINNAME).desktop

	rm -f /etc/systemd/system/$(SERVICENAME).service

	rm -f /etc/pam.d/$(PAMSERVICE)
