mirror of
https://github.com/kuhyx/scripts.git
synced 2026-07-04 14:43:08 +02:00
206 lines
6.5 KiB
Bash
Executable File
206 lines
6.5 KiB
Bash
Executable File
#!/bin/sh
|
|
set -e
|
|
|
|
# Function to play a sound on error
|
|
play_error_sound() {
|
|
pactl set-sink-volume @DEFAULT_SINK@ +50%
|
|
for i in 1 2 3; do
|
|
paplay /usr/share/sounds/freedesktop/stereo/dialog-error.oga
|
|
done
|
|
pactl set-sink-volume @DEFAULT_SINK@ -50%
|
|
}
|
|
|
|
# Trap errors and call the play_error_sound function
|
|
trap 'play_error_sound' ERR
|
|
|
|
|
|
sudo -v
|
|
|
|
install_from_aur() {
|
|
if [ ! -d "$HOME/aur" ]; then
|
|
mkdir ~/aur
|
|
fi
|
|
cd ~/aur
|
|
local repo_url=$1
|
|
local pkg_name=$2
|
|
|
|
if [ ! -d "$(basename $repo_url .git)" ]; then
|
|
git clone $repo_url
|
|
else
|
|
echo "Repository $(basename $repo_url .git) already cloned"
|
|
fi
|
|
cd $(basename $repo_url .git)
|
|
if ! pacman -Qi $pkg_name > /dev/null 2>&1; then
|
|
yes | makepkg -A -i --nocheck --skipchecksums --skipinteg --skippgpcheck
|
|
else
|
|
echo "$pkg_name is already installed"
|
|
fi
|
|
}
|
|
|
|
# pacman
|
|
pacman_packages=(
|
|
distcc
|
|
git
|
|
bluez-utils
|
|
icmake
|
|
yodl
|
|
texlive-plaingeneric
|
|
code
|
|
docbook-xsl
|
|
glu
|
|
pavucontrol-qt
|
|
mold
|
|
zstd
|
|
lz4
|
|
xz
|
|
pigz
|
|
lbzip2
|
|
doxygen
|
|
graphviz
|
|
tcl
|
|
pngcrush
|
|
gcc-ada
|
|
gcc-d
|
|
ttf-dejavu
|
|
noto-fonts
|
|
ttf-font-awesome
|
|
bc
|
|
acpi
|
|
cargo
|
|
freeglut
|
|
texlive-latexextra
|
|
biber
|
|
texlive-bibtexextra
|
|
texlive-pictures
|
|
texlive-fontsextra
|
|
texlive-formatsextra
|
|
texlive-pstricks
|
|
texlive-games
|
|
texlive-humanities
|
|
texlive-science
|
|
node-gyp
|
|
plantuml
|
|
npm
|
|
ruby-ronn
|
|
go-tools
|
|
asciidoctor
|
|
man-db
|
|
git-lfs
|
|
nodejs
|
|
electron
|
|
yarn
|
|
openssl-1.1
|
|
tk
|
|
jasper
|
|
libdc1394
|
|
cblas
|
|
pegtl
|
|
hdf5
|
|
proj
|
|
gcc-fortran
|
|
python-nose
|
|
python-pyproject-metadata
|
|
meson-python
|
|
lapack
|
|
python-numpy
|
|
openmpi
|
|
boost
|
|
suitesparse
|
|
)
|
|
|
|
for pkg in "${pacman_packages[@]}"; do
|
|
if ! pacman -Qi $pkg > /dev/null 2>&1; then
|
|
# Check if the package exists in the AUR packages list
|
|
if ! echo "${aur_packages[@]}" | grep -q "$pkg"; then
|
|
sudo pacman -S --noconfirm $pkg
|
|
else
|
|
echo "$pkg exists in AUR packages, skipping pacman installation"
|
|
fi
|
|
else
|
|
echo "$pkg is already installed"
|
|
fi
|
|
done
|
|
sudo systemctl enable bluetooth.service
|
|
sudo systemctl start bluetooth.service
|
|
aur_packages=(
|
|
"https://aur.archlinux.org/glew-git.git glew-git"
|
|
"https://aur.archlinux.org/libaec-git.git libaec-git"
|
|
# "https://aur.archlinux.org/hdf5-git.git hdf5-git"
|
|
# "https://aur.archlinux.org/packages/proj-git.git proj-git"
|
|
"https://aur.archlinux.org/pugixml-git.git pugixml-git"
|
|
"https://aur.archlinux.org/gl2ps-git.git gl2ps-git"
|
|
# "https://aur.archlinux.org/lapack-git.git lapack-git"
|
|
"https://aur.archlinux.org/cython-git.git cython-git"
|
|
"https://aur.archlinux.org/patchelf-git.git patchelf-git"
|
|
# "https://aur.archlinux.org/python-numpy-git.git python-numpy-git"
|
|
"https://aur.archlinux.org/numactl-git.git numactl-git"
|
|
# "https://aur.archlinux.org/openmpi-git.git openmpi-git"
|
|
# "https://aur.archlinux.org/boost-git.git boost-git"
|
|
"https://aur.archlinux.org/utf8cpp-git.git utf8cpp-git"
|
|
"https://aur.archlinux.org/eigen-git.git eigen-git"
|
|
"https://aur.archlinux.org/vtk-git.git vtk-git"
|
|
"https://aur.archlinux.org/ant-git.git ant-git"
|
|
"https://aur.archlinux.org/openexr-git.git openexr-git"
|
|
"https://aur.archlinux.org/gstreamer-git.git gstreamer-git"
|
|
"https://aur.archlinux.org/libgphoto2-git.git libgphoto2-git"
|
|
"https://aur.archlinux.org/protobuf-git.git protobuf-git"
|
|
"https://aur.archlinux.org/python2.git python2"
|
|
# "https://aur.archlinux.org/go-tools-git.git go-tools-git"
|
|
# "https://aur.archlinux.org/git-lfs-git.git git-lfs-git"
|
|
# "https://aur.archlinux.org/nodejs-git.git nodejs-git"
|
|
# "https://aur.archlinux.org/jasper-git.git jasper-git"
|
|
# "https://aur.archlinux.org/signal-desktop.git signal-desktop"
|
|
"https://aur.archlinux.org/signal-account-switcher.git signal-account-switcher"
|
|
"https://aur.archlinux.org/libinih-git.git libinih-git"
|
|
# "https://aur.archlinux.org/glibc-git.git glibc-git"
|
|
# "https://aur.archlinux.org/gcc-git.git gcc-git"
|
|
"https://aur.archlinux.org/plzip.git plzip"
|
|
"https://aur.archlinux.org/zsh-git.git zsh"
|
|
"https://aur.archlinux.org/visual-studio-code-bin.git visual-studio-code-bin"
|
|
"https://aur.archlinux.org/asciidoc-git.git asciidoc"
|
|
"https://aur.archlinux.org/xmlto-git.git xmlto"
|
|
"https://aur.archlinux.org/jsoncpp-git.git jsoncpp"
|
|
"https://aur.archlinux.org/libuv-git.git libuv"
|
|
"https://aur.archlinux.org/rhash-git.git rhash"
|
|
"https://aur.archlinux.org/cppdap-git.git cppdap"
|
|
"https://aur.archlinux.org/bluez-git.git bluez-git"
|
|
"https://aur.archlinux.org/lynx-git.git lynx-git"
|
|
"https://aur.archlinux.org/pacman-git.git pacman-git"
|
|
# "https://aur.archlinux.org/mold-git.git mold-git"
|
|
"https://aur.archlinux.org/thorium-browser-bin.git thorium-browser"
|
|
"https://aur.archlinux.org/glu-git.git glu-git"
|
|
"https://aur.archlinux.org/mupdf-git.git mupdf-git"
|
|
"https://aur.archlinux.org/exiv2-git.git exiv2-git"
|
|
"https://aur.archlinux.org/libraw-git.git libraw-git"
|
|
"https://aur.archlinux.org/opencv-git.git opencv-git"
|
|
"https://aur.archlinux.org/nomacs-git.git nomacs-gitgit"
|
|
"https://aur.archlinux.org/ffmpeg-full-git.git ffmpeg-full-git"
|
|
"https://aur.archlinux.org/mpv-full-git.git mpv-full-git"
|
|
"https://aur.archlinux.org/protontricks-git.git protontricks-git"
|
|
"https://aur.archlinux.org/bottles-git.git bottles-git"
|
|
"https://aur.archlinux.org/proton-ge-custom.git proton-ge-custom"
|
|
"https://aur.archlinux.org/protonup-qt.git protonup-qt"
|
|
"https://aur.archlinux.org/protonhax-git.git protonhax-git"
|
|
"https://aur.archlinux.org/wine-git.git wine-git"
|
|
"https://aur.archlinux.org/msvc-wine-git.git msvc-wine-git"
|
|
"https://aur.archlinux.org/jq-git.git jq-git"
|
|
"https://aur.archlinux.org/iw-git.git iw-git"
|
|
"https://aur.archlinux.org/deluge-git.git deluge-git"
|
|
"https://aur.archlinux.org/nvm-git.git nvm-git"
|
|
"https://aur.archlinux.org/unityhub-beta.git unityhub-beta"
|
|
)
|
|
|
|
for pkg in "${aur_packages[@]}"; do
|
|
repo_url=$(echo $pkg | awk '{print $1}')
|
|
pkg_name=$(echo $pkg | awk '{print $2}')
|
|
install_from_aur $repo_url $pkg_name
|
|
done
|
|
|
|
if [ ! -d "$HOME/.oh-my-zsh" ]; then
|
|
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
|
|
else
|
|
echo "Oh My Zsh is already installed"
|
|
fi
|
|
|
|
sudo pacman -R firefox
|