Last active
October 28, 2024 12:48
-
-
Save GunGunGun/7941819286654cdd077d285585a9d528 to your computer and use it in GitHub Desktop.
Zinstall.sh
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
app_name=zen | |
literal_name_of_installation_directory=".tarball-installations" | |
universal_path_for_installation_directory="$HOME/$literal_name_of_installation_directory" | |
app_installation_directory="$universal_path_for_installation_directory/zen" | |
official_package_location="https://github.com/zen-browser/desktop/releases/latest/download/zen.linux-specific.tar.bz2" | |
tar_location=$(mktemp /tmp/zen.XXXXXX.tar.bz2) | |
open_tar_application_data_location="zen" | |
local_bin_path="$HOME/.local/bin" | |
local_application_path="$HOME/.local/share/applications" | |
app_bin_in_local_bin="$local_bin_path/$app_name" | |
desktop_in_local_applications="$local_application_path/$app_name.desktop" | |
icon_path="$app_installation_directory/browser/chrome/icons/default/default128.png" | |
executable_path=$app_installation_directory/zen | |
echo "Welcome to Zen tarball installer, just chill and wait for the installation to complete!" | |
sleep 1 | |
echo "Checking to see if an older installation exists" | |
if [ -f "$app_bin_in_local_bin" ]; then | |
echo "Old bin file detected, removing..." | |
rm "$app_bin_in_local_bin" | |
fi | |
if [ -d "$app_installation_directory" ]; then | |
echo "Old app files are found, removing..." | |
rm -rf "$app_installation_directory" | |
fi | |
if [ -f "$desktop_in_local_applications" ]; then | |
echo "Old app files are found, removing..." | |
rm "$desktop_in_local_applications" | |
fi | |
sleep 1 | |
echo "Installing the latest package" | |
curl -L -o $tar_location $official_package_location | |
if [ $? -eq 0 ]; then | |
echo OK | |
else | |
echo "Installation failed. Curl not found or not installed" | |
exit | |
fi | |
tar -xvjf $tar_location | |
echo "Installed and untarred successfully" | |
if [ ! -d $universal_path_for_installation_directory ]; then | |
echo "Creating the $universal_path_for_installation_directory directory for installation" | |
mkdir $universal_path_for_installation_directory | |
fi | |
mv $open_tar_application_data_location $app_installation_directory | |
echo "Zen successfully moved to your safe place!" | |
rm $tar_location | |
if [ ! -d $local_bin_path ]; then | |
echo "$local_bin_path not found, creating it for you" | |
mkdir $local_bin_path | |
fi | |
touch $app_bin_in_local_bin | |
chmod u+x $app_bin_in_local_bin | |
echo "#!/bin/bash | |
$executable_path" >> $app_bin_in_local_bin | |
echo "Created executable for your \$PATH if you ever need" | |
if [ ! -d $local_application_path ]; then | |
echo "Creating the $local_application_path directory for desktop file" | |
mkdir $local_application_path | |
fi | |
touch $desktop_in_local_applications | |
echo " | |
[Desktop Entry] | |
Name=Zen | |
Keywords=web;browser;internet | |
Exec=$executable_path %u | |
Icon=$icon_path | |
Terminal=false | |
Type=Application | |
MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https; | |
Categories=Network;WebBrowser; | |
Actions=new-window;new-private-window;profile-manager-window; | |
[Desktop Action new-window] | |
Name=Open a New Window | |
Exec=$executable_path --new-window %u | |
[Desktop Action new-private-window] | |
Name=Open a New Private Window | |
Exec=$executable_path --private-window %u | |
[Desktop Action profile-manager-window] | |
Name=Open the Profile Manager | |
Exec=$executable_path --ProfileManager | |
" >> $desktop_in_local_applications | |
echo "Created desktop entry successfully" | |
sleep 1 | |
echo "Installation is successful" | |
sleep 1 | |
echo "Done, and done, have fun!" | |
sleep 1 | |
exit 0 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment