Enhancement: better packaging scripts

- build.sh: will build for release
- ./install.sh:
  - default $PREFIX set to /usr/local to avoid installing in /
  - use install over cp
- ./uninstall.sh:
  - remove installed files (leave directory structure though)
  - default $PREFIX set to /usr/local
This commit is contained in:
Floréal Toumikian 2020-08-27 11:38:00 +02:00
parent 1951818e1f
commit 72c28b2518
4 changed files with 36 additions and 6 deletions

2
Cargo.lock generated
View File

@ -1,3 +1,5 @@
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
[[package]]
name = "MacTypes-sys"
version = "2.1.0"

3
build.sh Executable file
View File

@ -0,0 +1,3 @@
#!/usr/bin/env bash
cargo build --release

View File

@ -1,7 +1,19 @@
cargo build --release
sudo cp target/release/mobydick $PREFIX/bin/xyz.gelez.mobydick
sudo cp *.appdata.xml $PREFIX/share/appdata/
sudo cp *.desktop $PREFIX/share/applications/
#!/usr/bin/env sh
if [ -z "$PREFIX" ]; then
PREFIX=/usr/local
fi
if [ ! -f target/release/mobydick ]; then
./build.sh
fi
sudo install -v -d $PREFIX/bin/
sudo install -v target/release/mobydick $PREFIX/bin/xyz.gelez.mobydick
sudo install -v -d $PREFIX/share/appdata
sudo install -v -t $PREFIX/share/appdata *.appdata.xml
sudo install -v -d $PREFIX/share/applications
sudo install -v -t $PREFIX/share/applications *.desktop
for s in "16" "24" "32" "48" "64" "128"; do
sudo cp icons/$s.svg $PREFIX/share/icons/hicolor/${s}x${s}/mobydick.svg
done
sudo install -v -d $PREFIX/share/icons/hicolor/${s}x${s}/
sudo install -v icons/$s.svg $PREFIX/share/icons/hicolor/${s}x${s}/mobydick.svg
done

13
uninstall.sh Executable file
View File

@ -0,0 +1,13 @@
#!/usr/bin/env bash
if [ -z "$PREFIX" ]; then
PREFIX=/usr/local
fi
sudo rm -v $PREFIX/bin/xyz.gelez.mobydick
sudo rm -v $PREFIX/share/appdata/$(ls *.appdata.xml)
sudo rm -v $PREFIX/share/applications/$(ls *.desktop)
for s in "16" "24" "32" "48" "64" "128"; do
sudo rm -v $PREFIX/share/icons/hicolor/${s}x${s}/mobydick.svg
done