# Autogenerated at 10.07.2026 15:03 using ./gen-makefile
.DEFAULT_GOAL := help

#===============================================
#	Scripts listed in ./install
#===============================================

##anytype: Manage anytype (deb)
anytype:
	@./install/anytype install

##apache2: Manage apache2 (apt)
apache2:
	@./install/apache2 install

##apt: Install basic software from apt
apt:
	@./install/apt install

##brew: Install software from brew
brew:
	@./install/brew install

##canon-mg2500: Canon Pixma MG2500 + ppa
canon-mg2500:
	@./install/canon-mg2500 install

##chrome: Google Chrome (latest)
chrome:
	@./install/chrome install

##clamav: ClamAV
clamav:
	@./install/clamav install

##composer: Install composer (latest)
composer:
	@./install/composer install

##docker: Docker + ppa
docker:
	@./install/docker install

##droidcam: Install droidcam v1.9.0
droidcam:
	@./install/droidcam install

##droidcam-obs: Install droidcam-obs plugin v1.5.1
droidcam-obs:
	@./install/droidcam-obs install

##_example: Example script
_example:
	@./install/_example install

##flameshot: Install flameshot (latest)
flameshot:
	@./install/flameshot install

##git: Install git (latest)
git:
	@./install/git install

##golang: Install golang
golang:
	@./install/golang install

##grub-customizer: Install grub-customizer (latest + ppa)
grub-customizer:
	@./install/grub-customizer install

##kde-appmenu: Install KDE Window AppMenu Applet
kde-appmenu:
	@./install/kde-appmenu install

##kde-backports: Install KDE Backports
kde-backports:
	@./install/kde-backports install

##kde-file-templates: Install file templates (KDE)
kde-file-templates:
	@./install/kde-file-templates install

##kde-portal: Install KDE portal
kde-portal:
	@./install/kde-portal install

##keyd: Install keyd
keyd:
	@./install/keyd install

##libreoffice: Install libreoffice
libreoffice:
	@./install/libreoffice install

##lite-xl: Install lite-xl v2.1.7
lite-xl:
	@./install/lite-xl install

##llmfit: Install llmfit
llmfit:
	@./install/llmfit install

##mariadb: Install mariadb (latest) and php-mysql + phpMyAdmin (if php is installed)
mariadb:
	@./install/mariadb install

##nerd-fonts: Install nerd-fonts
nerd-fonts:
	@./install/nerd-fonts install

##nodejs: Install nodejs + npm via nvm
nodejs:
	@./install/nodejs install

##ntfy: Install ntfy (latest) + ppa
ntfy:
	@./install/ntfy install

##nvim: Install nvim + lazyvim
nvim:
	@./install/nvim install

##obs-studio: Install obs-studio (latest snap)
obs-studio:
	@./install/obs-studio install

##ollama: Install ollama
ollama:
	@./install/ollama install

##omz-clean: Install omz (latest)
omz-clean:
	@./install/omz-clean install

##omz-fancy: Install omz fancy (powerline10k + MesloLGS font)
omz-fancy:
	@./install/omz-fancy install

##openvpn: Install openvpn v2.6.3 (src)
openvpn:
	@./install/openvpn install

##papirus: Install papirus-icon-theme (latest)
papirus:
	@./install/papirus install

##pgsql: Install postgresql (latest) and php-pgsql (if php is installed)
pgsql:
	@./install/pgsql install

##php: Install php v8.4
php:
	@./install/php install

##phpcs: Install phpcs + php-cs-fixer
phpcs:
	@./install/phpcs install

##phpmd: Install phpmd
phpmd:
	@./install/phpmd install

##php-psalm: Install psalm
php-psalm:
	@./install/php-psalm install

##php-spx: Install php-spx
php-spx:
	@./install/php-spx install

##phpstan: Install phpstan
phpstan:
	@./install/phpstan install

##phpunit: Install phpunit
phpunit:
	@./install/phpunit install

##postman: Install postman (latest)
postman:
	@./install/postman install

##qt5: Install qt5
qt5:
	@./install/qt5 install

##rustdesk: Install rustdesk client v1.4.2 (deb)
rustdesk:
	@./install/rustdesk install

##snap: Install bunch of software from snap
snap:
	@./install/snap install

##sublimemerge: Install Sublime Merge
sublimemerge:
	@./install/sublimemerge install

##sublimetext: Install Sublime Text
sublimetext:
	@./install/sublimetext install

##suld: Samsung Unified Linux Driver repo
suld:
	@./install/suld install

##syncthing: Install syncthing (latest) + ppa
syncthing:
	@./install/syncthing install

##telebit: Install telebit (latest)
telebit:
	@./install/telebit install

##telegram: Install telegram (latest)
telegram:
	@./install/telegram install

##tilt: Install tilt (k8s dev env)
tilt:
	@./install/tilt install

##ulauncher: Install ulauncher (latest) + ppa
ulauncher:
	@./install/ulauncher install

##vivaldi: Install Vivaldi + ppa
vivaldi:
	@./install/vivaldi install

##vscode: VSCode deb-package
vscode:
	@./install/vscode install

##wine: Install wine (latest) + ppa
wine:
	@./install/wine install

##youtube-dl: Install youtube-dl (src)
youtube-dl:
	@./install/youtube-dl install

##ytdlcue: Install ytdlcue
ytdlcue:
	@./install/ytdlcue install

##zint: Install zint (latest)
zint:
	@./install/zint install

##zsh: Install vanilla zsh
zsh:
	@./install/zsh install

#===============================================
#	Scripts listed in ./packs
#===============================================

##lamp: [PACK] Apache + php + mariadb
lamp: apache phpstack mariadb

##obs: [PACK] Install OBS Studio + droidcam-obs
obs: obs-studio droidcam-obs

##omz: [PACK] zsh + omz + powerline10k + MesloLGS font
omz: zsh omz-clean omz-fancy
	chsh -s /usr/bin/zsh
	@exec zsh

##phptools: [PACK] Install only php tooling (composer, phpunit, psalm, phpcs, php-cs-fixer, phpmd)
phptools: composer php-psalm phpcs phpmd phpstan phpunit

##phpstack: [PACK] Install full php stack with tooling
phpstack: php phptools

#===============================================
#	Upgrade targets (use install script with 'upgrade' arg)
#===============================================

##^apache2: Manage apache2 (apt)
^apache2:
	@./install/apache2 upgrade

##^apt: Install basic software from apt
^apt:
	@./install/apt upgrade

##^canon-mg2500: Canon Pixma MG2500 + ppa
^canon-mg2500:
	@./install/canon-mg2500 upgrade

##^chrome: Google Chrome (latest)
^chrome:
	@./install/chrome upgrade

##^clamav: ClamAV
^clamav:
	@./install/clamav upgrade

##^composer: Install composer (latest)
^composer:
	@./install/composer upgrade

##^docker: Docker + ppa
^docker:
	@./install/docker upgrade

##^golang: Install golang
^golang:
	@./install/golang upgrade

##^keyd: Install keyd
^keyd:
	@./install/keyd upgrade

##^llmfit: Install llmfit
^llmfit:
	@./install/llmfit upgrade

##^omz-clean: Install omz (latest)
^omz-clean:
	@./install/omz-clean upgrade

#===============================================
#	Remove targets (use install script with 'remove' arg)
#===============================================

##/anytype: Manage anytype (deb)
/anytype:
	@./install/anytype remove

##/apache2: Manage apache2 (apt)
/apache2:
	@./install/apache2 remove

##/canon-mg2500: Canon Pixma MG2500 + ppa
/canon-mg2500:
	@./install/canon-mg2500 remove

##/chrome: Google Chrome (latest)
/chrome:
	@./install/chrome remove

##/clamav: ClamAV
/clamav:
	@./install/clamav remove

##/composer: Install composer (latest)
/composer:
	@./install/composer remove

##/docker: Docker + ppa
/docker:
	@./install/docker remove

##/golang: Install golang
/golang:
	@./install/golang remove

##/grub-customizer: Install grub-customizer (latest + ppa)
/grub-customizer:
	@./install/grub-customizer remove

##/keyd: Install keyd
/keyd:
	@./install/keyd remove

##/lite-xl: Install lite-xl v2.1.7
/lite-xl:
	@./install/lite-xl remove

##/llmfit: Install llmfit
/llmfit:
	@./install/llmfit remove

##/nerd-fonts: Install nerd-fonts
/nerd-fonts:
	@./install/nerd-fonts remove

##/nodejs: Install nodejs + npm via nvm
/nodejs:
	@./install/nodejs remove

##/nvim: Install nvim + lazyvim
/nvim:
	@./install/nvim remove

##/ollama: Install ollama
/ollama:
	@./install/ollama remove

##/omz-clean: Install omz (latest)
/omz-clean:
	@./install/omz-clean remove

##/rustdesk: Install rustdesk client v1.4.2 (deb)
/rustdesk:
	@./install/rustdesk remove

##/sublimemerge: Install Sublime Merge
/sublimemerge:
	@./install/sublimemerge remove

##/sublimetext: Install Sublime Text
/sublimetext:
	@./install/sublimetext remove

##/vivaldi: Install Vivaldi + ppa
/vivaldi:
	@./install/vivaldi remove

##/wine: Install wine (latest) + ppa
/wine:
	@./install/wine remove

#===============================================
#	Service goals
#===============================================

self:
	@./gen-makefile
help: Makefile
	@echo "Ubuntu software installator"
	@echo
	@echo "Usage:"
	@echo "\tmake  help\t - show this help"
	@echo "\tmake  self\t - regenerate Makefile (alias of ./gen-makefile)"
	@echo "\tmake  GOAL\t - install software"
	@echo "\tmake ^GOAL\t - upgrade software"
	@echo "\tmake /GOAL\t - uninstall software"
	@echo "\nYou can combine GOALs, here are some examples:"
	@echo "\tmake /docker docker"
	@echo "\tmake php /docker ^omz"
	@echo "\nAvailable GOALs:"
	@sed -n 's/^##//p' $< | column -ts ':' | sed -e "s/^/\t/"
+%:
	@make 
