cathode/justfile

58 lines
2.0 KiB
Makefile

set export
alias d := debug
dev:
-cargo tauri dev
debug:
RUST_LOG=debug yarn tauri dev
log RUST_LOG:
yarn tauri dev
build:
yarn tauri build
cd src-tauri && cargo generate-rpm
install:
@cargo tauri build -b none
@echo Copying binary to /usr/bin/cathode...
@sudo cp src-tauri/target/release/cathode /usr/bin/cathode
@echo Installing desktop file...
@sudo cp src-tauri/cathode-tube.desktop /usr/share/applications/cathode-tube.desktop
@sudo cp src-tauri/application-cathode.xml /usr/share/mime/packages/application-cathode.xml
@echo Installing icons...
@sudo cp src-tauri/icons/128x128.png /usr/share/icons/hicolor/128x128/apps/cathode-tube.png
@sudo cp src-tauri/icons/32x32.png /usr/share/icons/hicolor/32x32/apps/cathode-tube.png
@sudo cp src-tauri/icons/128x128@2x.png /usr/share/icons/hicolor/256x256/apps/cathode-tube.png
@sudo update-desktop-database
uninstall:
@echo Removing cathode...
@sudo rm -f /usr/bin/cathode
@sudo rm -f /usr/share/applications/cathode-tube.desktop
@sudo rm -f /usr/share/mime/packages/application-cathode.xml
@sudo rm -f /usr/share/icons/hicolor/128x128/apps/cathode-tube.png
@sudo rm -f /usr/share/icons/hicolor/32x32/apps/cathode-tube.png
@sudo rm -f /usr/share/icons/hicolor/256x256/apps/cathode-tube.png
@sudo update-desktop-database
release tag:
#!/usr/bin/env bash
set -euxo pipefail
just update-version {{tag}}
git cliff -o CHANGELOG.md --tag {{tag}}
git commit -am "chore(release): prepare for {{tag}}" -S
git tag -s -a "{{tag}}" -m "$(git cliff -u --strip all --tag {{tag}})"
echo "Ready to push release (git push && git push --tag {{tag}})"
update-version tag:
#!/usr/bin/env bash
set -euxo pipefail
v="{{trim_start_match(tag, "v")}}"
sed -i 's/version = "*.*.*" # managed by release.sh/version = "'"$v"'" # managed by release.sh/g' -i src-tauri/Cargo.toml
sed -i 's/"version": "*.*.*"/"version": "'"$v"'"/g' package.json
sed -i 's/"version": "*.*.*"/"version": "'"$v"'"/g' src-tauri/tauri.conf.json
echo "Updated versions to {{tag}}"