68 lines
2.2 KiB
Bash
68 lines
2.2 KiB
Bash
#!/bin/bash
|
|
|
|
version=4.2.3.zip
|
|
|
|
install_packages libfontconfig-dev || exit 0
|
|
|
|
"${DIRECTORY}/manage" install-if-not-installed Node.js || error "Failed to install Node.js! This is necessary to compile Boxy SVG."
|
|
|
|
#install asar and electron-packager
|
|
export NVM_DIR="$HOME/.nvm"
|
|
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"
|
|
|
|
wget -O /tmp/boxy-svg.zip "https://firebasestorage.googleapis.com/v0/b/boxy-svg.appspot.com/o/linux%2Fapp-${version}?alt=media" || exit 1
|
|
|
|
rm -rf /tmp/app
|
|
cd /tmp
|
|
unzip -q /tmp/boxy-svg.zip || error "Failed to extract!"
|
|
rm -f /tmp/boxy-svg.zip
|
|
|
|
cd /tmp/app
|
|
npm install || error "Failed to install npm dependencies!"
|
|
npm --prefix ./electron install || error "Failed to install npm dependencies in electron folder!"
|
|
|
|
if [ $arch == 32 ];then
|
|
./node_modules/.bin/electron-builder --armv7l
|
|
elif [ $arch == 64 ];then
|
|
./node_modules/.bin/electron-builder --arm64
|
|
else
|
|
error "Failed to detect OS CPU architecture! Something is very wrong."
|
|
fi
|
|
|
|
#move to permanent folder
|
|
sudo rm -rf /opt/boxy-svg
|
|
sudo mv ./dist/linux-*-unpacked /opt/boxy-svg || error "Failed to move app files to /opt/boxy-svg!"
|
|
|
|
sudo mkdir -p /usr/local/share/icons
|
|
sudo cp ./metadata/com.boxy_svg.BoxySVG.svg /usr/local/share/icons
|
|
sudo cp ./metadata/com.boxy_svg.BoxySVG.png /usr/local/share/icons
|
|
|
|
cd $HOME
|
|
rm -rf /tmp/app
|
|
|
|
#create a terminal command to run Boxy without chrome sandbox for better performance
|
|
cat << "EOF" | sudo tee /usr/local/bin/boxy-svg >/dev/null
|
|
#!/bin/bash
|
|
/opt/boxy-svg/boxy-svg --no-sandbox "$@"
|
|
EOF
|
|
sudo chmod +x /usr/local/bin/boxy-svg
|
|
|
|
if [ -z "$(cat ~/.config/mimeapps.list | grep 'boxy-svg.desktop')" ];then
|
|
echo "Associating the SVG mimetype with Boxy SVG..."
|
|
echo "[Added Associations]
|
|
image/svg+xml;application/illustrator=boxy-svg.desktop;" >> ~/.config/mimeapps.list
|
|
|
|
fi
|
|
|
|
echo "[Desktop Entry]
|
|
Name=Boxy SVG
|
|
Comment=Scalable Vector Graphics (SVG) editor
|
|
Exec=boxy-svg %F
|
|
Icon=com.boxy_svg.BoxySVG
|
|
Type=Application
|
|
Terminal=false
|
|
Categories=Graphics
|
|
StartupWMClass=Boxy SVG
|
|
MimeType=image/svg+xml;image/png;image/jpeg;image/gif;image/webp;application/pdf;application/illustrator;
|
|
Keywords=SVG;Vector;Graphics;Editor;" | sudo tee /usr/share/applications/boxy-svg.desktop >/dev/null
|