|
@ -0,0 +1,75 @@ |
|
|
|
|
|
#!/bin/sh -e |
|
|
|
|
|
|
|
|
|
|
|
# IntelliJ installer script for TigerOS |
|
|
|
|
|
# author: Josh Bicking <jhb2345@rit.edu> |
|
|
|
|
|
|
|
|
|
|
|
DEPS=java-1.8.0-openjdk |
|
|
|
|
|
PROG="IntelliJ IDEA Community Edition" |
|
|
|
|
|
PROG_SHORT=idea-ce |
|
|
|
|
|
VERSION=idea-IC-171.4073.35 |
|
|
|
|
|
TEMP_FILE=/tmp/ideaIC-2017.1.1.tar.gz |
|
|
|
|
|
FILE=/usr/share/java/$VERSION/bin/idea.sh |
|
|
|
|
|
FILE_DIR=/usr/share/java/$VERSION/ |
|
|
|
|
|
FILE_URL=https://download.jetbrains.com/idea/ideaIC-2017.1.1.tar.gz |
|
|
|
|
|
LINK=/usr/local/bin/idea-ce |
|
|
|
|
|
ICON=/usr/share/java/$VERSION/bin/idea.png |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Check that the current user is root |
|
|
|
|
|
if [ $EUID != 0 ] |
|
|
|
|
|
then |
|
|
|
|
|
echo "Please run this script as root (sudo $@$0)." |
|
|
|
|
|
exit |
|
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
|
|
## Removal |
|
|
|
|
|
# Check if remove flag was passed |
|
|
|
|
|
if [ ! -z "$1" ] && [ "$1" = "-remove" ] |
|
|
|
|
|
then |
|
|
|
|
|
|
|
|
|
|
|
rm $LINK |
|
|
|
|
|
rm /usr/local/share/applications/jetbrains-idea-ce.desktop |
|
|
|
|
|
rm -rf $FILE_DIR |
|
|
|
|
|
|
|
|
|
|
|
# Remove local links if they were created |
|
|
|
|
|
for i in `ls /home/` |
|
|
|
|
|
do |
|
|
|
|
|
rm -f /home/$i/.local/share/applications/jetbrains-idea-ce.desktop |
|
|
|
|
|
done |
|
|
|
|
|
|
|
|
|
|
|
else |
|
|
|
|
|
|
|
|
|
|
|
## Installation |
|
|
|
|
|
# Install dependencies |
|
|
|
|
|
dnf install $DEPS -y |
|
|
|
|
|
|
|
|
|
|
|
# Get the files |
|
|
|
|
|
wget -O $TEMP_FILE $FILE_URL |
|
|
|
|
|
# Extract the files |
|
|
|
|
|
tar -xf $TEMP_FILE -C /usr/share/java/ |
|
|
|
|
|
|
|
|
|
|
|
# Make a link |
|
|
|
|
|
ln -s $FILE $LINK |
|
|
|
|
|
|
|
|
|
|
|
chmod +x $LINK |
|
|
|
|
|
chmod -R 755 $FILE_DIR |
|
|
|
|
|
|
|
|
|
|
|
# Make a desktop file |
|
|
|
|
|
# IDEA's first time setup allows the user to make this file. Naming it as such means the user won't get a duplicate entry. |
|
|
|
|
|
cat > /usr/local/share/applications/jetbrains-idea-ce.desktop <<EOF |
|
|
|
|
|
[Desktop Entry] |
|
|
|
|
|
Version=1.0 |
|
|
|
|
|
Type=Application |
|
|
|
|
|
Name=$PROG |
|
|
|
|
|
Comment=The Drive to Develop |
|
|
|
|
|
Exec=$LINK %f |
|
|
|
|
|
Icon=$ICON |
|
|
|
|
|
Terminal=false |
|
|
|
|
|
Categories=Development;IDE;Java; |
|
|
|
|
|
StartupWMClass=jetbrains-idea-ce |
|
|
|
|
|
EOF |
|
|
|
|
|
|
|
|
|
|
|
# Clean up |
|
|
|
|
|
rm $TEMP_FILE |
|
|
|
|
|
|
|
|
|
|
|
fi |