punktdateien/bin/install-software

48 lines
1.5 KiB
Bash
Executable file

#!/bin/bash
if [ ! -f "/sbin/sudo" ]; then
echo ":: Error: \"/sbin/sudo\" not found, please install sudo."
exit 1
fi
echo ":: Detecting distribution"
if [ -f "/etc/os-release" ]; then
source /etc/os-release
fi
case "$ID" in
"arch")
echo ":: Detected ${PRETTY_NAME}, installing packages automatically"
if [ ! -f "/sbin/paru" ]; then
echo ":: Error: \"/sbin/paru\" not found, please install paru."
exit 1
fi
if [ "${1}" == "--noconfirm" ]; then
export "PARU_FLAGS=--noconfirm"
else
export "PARU_FLAGS="
fi
paru --removemake --batchinstall --sudoloop --mflags "--ignorearch" -Syu --needed bash ncurses nano rustup bat moar fireplace fortune-mod cowsay ytfzf yt-dlp-git tar zstd bzip zip unrar unzip 7-zip binutils ${PARU_FLAGS}
rustup default nightly
rustup update
cargo install eza
curl -s "https://get.sdkman.io" | bash
export SDKMAN_DIR="$HOME/.sdkman"
[[ -s "$HOME/.sdkman/bin/sdkman-init.sh" ]] && source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk selfupdate
sdk update
java_versions=( '22.0.1' '21.0.3' '17.0.11' '8.0.412' )
for version in "${java_versions[@]}"; do
sdk install java "${version}-tem"
done
sdk default java 21.0.3-tem
;;
"archarm")
echo ":: Arch Linux ARM is not yet supported"
echo " (but will soon be). Just wait a little!"
;;
*)
echo ":: No supported distribution found."
echo " Please create an issue and (if you want)"
echo " look into the source code and install"
echo " the packages and programs yourself."
;;
esac