-
Notifications
You must be signed in to change notification settings - Fork 0
/
plankerapp
100 lines (91 loc) · 2.95 KB
/
plankerapp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
#!/bin/bash
# Version 1.2.5
# Theme manager for plank!
cwd=$(pwd)
# Installs theme based on file extension
install_theme () {
if [[ $1 == *.tar.xz ]];then
tar -xf $1 -C ~/.local/share/plank/themes
echo "👊️😎️ $1 theme has been installed!"
elif [[ $1 == *.tar.gz ]];then
tar -zxvf $1 -C ~/.local/share/plank/themes
echo "👊️😎️ $1 theme has been installed!"
elif [[ $1 == *.zip ]];then
unzip -qq $1 -d ~/.local/share/plank/themes
echo "👊️😎️ $1 theme has been installed!"
else
echo "$1 Is not a supported file"
fi
}
# List
if [ "$1" == "-l" ];then
cd ~ && cd ".local/share/plank/themes"
echo "------------------"
echo "Themes installed"
echo "------------------"
[ "$(ls -A)" ] || echo "👉️ Go ahead and install some themes first! https://www.gnome-look.org/browse?cat=273&ord=latest"
ls
cd ~ && cd $cwd
fi
#Opens plank themes directory
if [ "$1" == "-p" ];then
xdg-open "../.local/share/plank/themes"
fi
# Theme uninstaller
if [ "$1" == "-r" ];then
if [ -z "$2" ];then
echo "🤒️ Name cannot be empty! Dude!"
else
cd ~ && cd ".local/share/plank/themes"
if [ -d "$2" ];then
rm -rf "$2" && cd ~ && cd $cwd
echo "🗑️ $2 theme has been uninstalled!"
else
cd ~ && cd $cwd
echo "🧐️ $2 theme it is not installed!"
fi
fi
fi
# Theme installer
if [ -z "$1" ];then
echo "👉️ Type the filename of your theme!"
else
if [ $1 != "-r" ] && [ $1 != "-h" ] && [ $1 != "-l" ] && [ $1 != "-p" ] && [ $1 != "--install" ];then
#If exists in current dir...
if [ -f $1 ];then
install_theme "$1"
else
#if exists in Downloads dir...
cd ~/Downloads
if [ -f $1 ];then
install_theme "$1"
else
echo "😕️ $1 theme doesn't exist in planker nor Downloads directories!"
fi
fi
fi
fi
# Help
if [ "$1" == "-h" ];then
echo "-----------"
echo "Help guide"
echo "-----------"
echo "[no arguments] (installs a theme)"
echo "[-r] (uninstalls a theme)"
echo "[-l] (list all themes installed)"
echo "[-p] (opens plank themes directory)"
echo "[-h] (shows this help)"
echo "[--install] (installs app system-wide) ⚠️ Experimental ⚠️ "
fi
# Plank installer *WARNING* This feature is experimental yet!
if [ "$1" == "--install" ];then
if [ ! -d "planker" ];then
mkdir planker
fi
chmod a+x plankerapp
cp plankerapp planker
mv planker ~/
sudo echo "alias planker=\"cd \$HOME\/planker/ && ./plankerapp\"" >> ~/.bash_aliases
echo "👊️😎️ planker in now installed system-wide!"
echo "- Reopen this terminal to make 'planker' command available"
fi