You've already forked joplin
mirror of
https://github.com/laurent22/joplin.git
synced 2025-11-26 22:41:17 +02:00
Update Joplin_install_and_update.sh (#1952)
- Add argument: Mutes messages by console. - Remove unset. - Variables in capital letters.
This commit is contained in:
committed by
Laurent Cozic
parent
60e9abdd61
commit
c6842a8591
@@ -1,14 +1,5 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
set -e
|
set -e
|
||||||
# Title
|
|
||||||
echo " _ _ _ "
|
|
||||||
echo " | | ___ _ __ | (_)_ __ "
|
|
||||||
echo " _ | |/ _ \| '_ \| | | '_ \ "
|
|
||||||
echo "| |_| | (_) | |_) | | | | | |"
|
|
||||||
echo " \___/ \___/| .__/|_|_|_| |_|"
|
|
||||||
echo " |_|"
|
|
||||||
echo ""
|
|
||||||
echo "Linux Installer and Updater"
|
|
||||||
|
|
||||||
#-----------------------------------------------------
|
#-----------------------------------------------------
|
||||||
# Variables
|
# Variables
|
||||||
@@ -16,8 +7,20 @@ echo "Linux Installer and Updater"
|
|||||||
COLOR_RED=`tput setaf 1`
|
COLOR_RED=`tput setaf 1`
|
||||||
COLOR_GREEN=`tput setaf 2`
|
COLOR_GREEN=`tput setaf 2`
|
||||||
COLOR_RESET=`tput sgr0`
|
COLOR_RESET=`tput sgr0`
|
||||||
|
SILENT=false
|
||||||
|
|
||||||
# Check and warn if running as root.
|
print() {
|
||||||
|
if [[ "$SILENT" == false ]] ; then
|
||||||
|
echo $1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
#-----------------------------------------------------
|
||||||
|
# ARGUMENTS
|
||||||
|
#-----------------------------------------------------
|
||||||
|
|
||||||
|
# --allow-root
|
||||||
|
## Check and warn if running as root.
|
||||||
if [[ $EUID = 0 ]] ; then
|
if [[ $EUID = 0 ]] ; then
|
||||||
if [[ $* != *--allow-root* ]] ; then
|
if [[ $* != *--allow-root* ]] ; then
|
||||||
echo "${COLOR_RED}It is not recommended (nor necessary) to run this script as root. To do so anyway, please use '--allow-root'${COLOR_RESET}"
|
echo "${COLOR_RED}It is not recommended (nor necessary) to run this script as root. To do so anyway, please use '--allow-root'${COLOR_RESET}"
|
||||||
@@ -25,17 +28,37 @@ if [[ $EUID = 0 ]] ; then
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# --silent
|
||||||
|
## Mutes messages by console
|
||||||
|
if [[ $* == *--silent* ]] ; then
|
||||||
|
SILENT=true
|
||||||
|
fi
|
||||||
|
|
||||||
|
#-----------------------------------------------------
|
||||||
|
# START
|
||||||
|
#-----------------------------------------------------
|
||||||
|
|
||||||
|
# Title
|
||||||
|
print " _ _ _ "
|
||||||
|
print " | | ___ _ __ | (_)_ __ "
|
||||||
|
print " _ | |/ _ \| '_ \| | | '_ \ "
|
||||||
|
print "| |_| | (_) | |_) | | | | | |"
|
||||||
|
print " \___/ \___/| .__/|_|_|_| |_|"
|
||||||
|
print " |_|"
|
||||||
|
print ""
|
||||||
|
print "Linux Installer and Updater"
|
||||||
|
|
||||||
#-----------------------------------------------------
|
#-----------------------------------------------------
|
||||||
# Download Joplin
|
# Download Joplin
|
||||||
#-----------------------------------------------------
|
#-----------------------------------------------------
|
||||||
|
|
||||||
# Get the latest version to download
|
# Get the latest version to download
|
||||||
version=$(wget -qO - "https://api.github.com/repos/laurent22/joplin/releases/latest" | grep -Po '"tag_name": "v\K.*?(?=")')
|
RELEASE_VERSION=$(wget -qO - "https://api.github.com/repos/laurent22/joplin/releases/latest" | grep -Po '"tag_name": "v\K.*?(?=")')
|
||||||
|
|
||||||
# Check if it's in the latest version
|
# Check if it's in the latest version
|
||||||
if [[ ! -e ~/.joplin/VERSION ]] || [[ $(< ~/.joplin/VERSION) != "$version" ]]; then
|
if [[ ! -e ~/.joplin/VERSION ]] || [[ $(< ~/.joplin/VERSION) != "$RELEASE_VERSION" ]]; then
|
||||||
|
|
||||||
echo 'Downloading Joplin...'
|
print 'Downloading Joplin...'
|
||||||
# Delete previous version (in future versions joplin.desktop shouldn't exist)
|
# Delete previous version (in future versions joplin.desktop shouldn't exist)
|
||||||
rm -f ~/.joplin/*.AppImage ~/.local/share/applications/joplin.desktop ~/.joplin/VERSION
|
rm -f ~/.joplin/*.AppImage ~/.local/share/applications/joplin.desktop ~/.joplin/VERSION
|
||||||
|
|
||||||
@@ -43,35 +66,35 @@ if [[ ! -e ~/.joplin/VERSION ]] || [[ $(< ~/.joplin/VERSION) != "$version" ]]; t
|
|||||||
mkdir -p ~/.joplin/
|
mkdir -p ~/.joplin/
|
||||||
|
|
||||||
# Download the latest version
|
# Download the latest version
|
||||||
wget -nv --show-progress -O ~/.joplin/Joplin.AppImage https://github.com/laurent22/joplin/releases/download/v$version/Joplin-$version-x86_64.AppImage
|
wget -nv --show-progress -O ~/.joplin/Joplin.AppImage https://github.com/laurent22/joplin/releases/download/v$RELEASE_VERSION/Joplin-$RELEASE_VERSION-x86_64.AppImage
|
||||||
|
|
||||||
# Gives execution privileges
|
# Gives execution privileges
|
||||||
chmod +x ~/.joplin/Joplin.AppImage
|
chmod +x ~/.joplin/Joplin.AppImage
|
||||||
|
|
||||||
echo "${COLOR_GREEN}OK${COLOR_RESET}"
|
print "${COLOR_GREEN}OK${COLOR_RESET}"
|
||||||
|
|
||||||
#-----------------------------------------------------
|
#-----------------------------------------------------
|
||||||
# Icon
|
# Icon
|
||||||
#-----------------------------------------------------
|
#-----------------------------------------------------
|
||||||
|
|
||||||
# Download icon
|
# Download icon
|
||||||
echo 'Downloading icon...'
|
print 'Downloading icon...'
|
||||||
mkdir -p ~/.local/share/icons/hicolor/512x512/apps
|
mkdir -p ~/.local/share/icons/hicolor/512x512/apps
|
||||||
wget -nv -O ~/.local/share/icons/hicolor/512x512/apps/joplin.png https://joplinapp.org/images/Icon512.png
|
wget -nv -O ~/.local/share/icons/hicolor/512x512/apps/joplin.png https://joplinapp.org/images/Icon512.png
|
||||||
echo "${COLOR_GREEN}OK${COLOR_RESET}"
|
print "${COLOR_GREEN}OK${COLOR_RESET}"
|
||||||
|
|
||||||
# Detect desktop environment
|
# Detect desktop environment
|
||||||
if [ "$XDG_CURRENT_DESKTOP" = "" ]
|
if [ "$XDG_CURRENT_DESKTOP" = "" ]
|
||||||
then
|
then
|
||||||
desktop=$(echo "$XDG_DATA_DIRS" | sed 's/.*\(xfce\|kde\|gnome\).*/\1/')
|
DESKTOP=$(echo "$XDG_DATA_DIRS" | sed 's/.*\(xfce\|kde\|gnome\).*/\1/')
|
||||||
else
|
else
|
||||||
desktop=$XDG_CURRENT_DESKTOP
|
DESKTOP=$XDG_CURRENT_DESKTOP
|
||||||
fi
|
fi
|
||||||
desktop=${desktop,,} # convert to lower case
|
DESKTOP=${desktop,,} # convert to lower case
|
||||||
|
|
||||||
# Create icon for Gnome
|
# Create icon for Gnome
|
||||||
echo 'Create Desktop icon.'
|
echo 'Create Desktop icon.'
|
||||||
if [[ $desktop =~ .*gnome.*|.*kde.*|.*xfce.*|.*mate.*|.*lxqt.*|.*unity.*|.*x-cinnamon.*|.*deepin.* ]]
|
if [[ $DESKTOP =~ .*gnome.*|.*kde.*|.*xfce.*|.*mate.*|.*lxqt.*|.*unity.*|.*x-cinnamon.*|.*deepin.* ]]
|
||||||
then
|
then
|
||||||
: "${TMPDIR:=/tmp}"
|
: "${TMPDIR:=/tmp}"
|
||||||
# This command extracts to squashfs-root by default and can't be changed...
|
# This command extracts to squashfs-root by default and can't be changed...
|
||||||
@@ -85,21 +108,22 @@ if [[ ! -e ~/.joplin/VERSION ]] || [[ $(< ~/.joplin/VERSION) != "$version" ]]; t
|
|||||||
# On some systems this directory doesn't exist by default
|
# On some systems this directory doesn't exist by default
|
||||||
mkdir -p ~/.local/share/applications
|
mkdir -p ~/.local/share/applications
|
||||||
echo -e "[Desktop Entry]\nEncoding=UTF-8\nName=Joplin\nComment=Joplin for Desktop\nExec=/home/$USER/.joplin/Joplin.AppImage\nIcon=joplin\nStartupWMClass=Joplin\nType=Application\nCategories=Application;\n$APPIMAGE_VERSION" >> ~/.local/share/applications/appimagekit-joplin.desktop
|
echo -e "[Desktop Entry]\nEncoding=UTF-8\nName=Joplin\nComment=Joplin for Desktop\nExec=/home/$USER/.joplin/Joplin.AppImage\nIcon=joplin\nStartupWMClass=Joplin\nType=Application\nCategories=Application;\n$APPIMAGE_VERSION" >> ~/.local/share/applications/appimagekit-joplin.desktop
|
||||||
echo "${COLOR_GREEN}OK${COLOR_RESET}"
|
print "${COLOR_GREEN}OK${COLOR_RESET}"
|
||||||
else
|
else
|
||||||
echo "${COLOR_RED}NOT DONE${COLOR_RESET}"
|
print "${COLOR_RED}NOT DONE${COLOR_RESET}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#-----------------------------------------------------
|
#-----------------------------------------------------
|
||||||
# Finish
|
# Finish
|
||||||
#-----------------------------------------------------
|
#-----------------------------------------------------
|
||||||
|
|
||||||
# Informs the user that it has been installed and cleans variables
|
# Informs the user that it has been installed and cleans variables
|
||||||
echo "${COLOR_GREEN}Joplin version${COLOR_RESET}" $version "${COLOR_GREEN}installed.${COLOR_RESET}"
|
print "${COLOR_GREEN}Joplin version${COLOR_RESET}" $RELEASE_VERSION "${COLOR_GREEN}installed.${COLOR_RESET}"
|
||||||
|
|
||||||
# Add version
|
# Add version
|
||||||
echo $version > ~/.joplin/VERSION
|
echo $RELEASE_VERSION > ~/.joplin/VERSION
|
||||||
else
|
else
|
||||||
echo "${COLOR_GREEN}You already have the latest version${COLOR_RESET}" $version "${COLOR_GREEN}installed.${COLOR_RESET}"
|
print "${COLOR_GREEN}You already have the latest version${COLOR_RESET}" $version "${COLOR_GREEN}installed.${COLOR_RESET}"
|
||||||
fi
|
fi
|
||||||
echo 'Bye!'
|
|
||||||
unset version
|
# Goodbye
|
||||||
|
print 'Bye!'
|
||||||
|
|||||||
Reference in New Issue
Block a user