wip
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Example script
|
||||
|
||||
set -eo pipefail
|
||||
|
||||
install() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Installing example"
|
||||
echo "==============================================="
|
||||
echo
|
||||
sleep 3
|
||||
echo
|
||||
echo "Finish! example v1.2.3"
|
||||
echo
|
||||
}
|
||||
|
||||
upgrade() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Upgrading example"
|
||||
echo "==============================================="
|
||||
echo
|
||||
sleep 3
|
||||
echo
|
||||
echo "Finish! example v1.2.3"
|
||||
echo
|
||||
}
|
||||
|
||||
remove() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Removing example"
|
||||
echo "==============================================="
|
||||
echo
|
||||
sleep 3
|
||||
echo
|
||||
echo "Finish!"
|
||||
echo
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
u|upgrade|update) upgrade ;;
|
||||
r|remove|d|delete|p|purge) remove ;;
|
||||
*) install ;;
|
||||
esac
|
||||
+42
-7
@@ -1,11 +1,46 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Install apache2 (latest)
|
||||
source "$( dirname $(readlink -e -- "${BASH_SOURCE}"))/../helpers.sh" || exit 255
|
||||
##makedesc: Manage apache2 (apt)
|
||||
|
||||
title
|
||||
install() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Installing apache2"
|
||||
echo "==============================================="
|
||||
echo
|
||||
sudo apt install -y apache2
|
||||
sudo systemctl restart apache2
|
||||
echo
|
||||
echo "Finish! $(apache2 -v)"
|
||||
echo
|
||||
}
|
||||
|
||||
apt_install apache2
|
||||
sudo systemctl restart apache2
|
||||
upgrade() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Upgrading apache2"
|
||||
echo "==============================================="
|
||||
echo
|
||||
sudo apt upgrade -y apache2 apache2-data apache2-utils
|
||||
sudo systemctl restart apache2
|
||||
echo
|
||||
echo "Finish! $(apache2 -v)"
|
||||
echo
|
||||
}
|
||||
|
||||
success "apache2 installed!"
|
||||
apache2 -v
|
||||
remove() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Removing apache2"
|
||||
echo "==============================================="
|
||||
echo
|
||||
sudo apt purge -y apache2*
|
||||
echo
|
||||
echo "Finish!"
|
||||
echo
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
u|upgrade|update) upgrade ;;
|
||||
r|remove|d|delete|p|purge) remove ;;
|
||||
*) install ;;
|
||||
esac
|
||||
|
||||
+3
-3
@@ -1,5 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Install software from apt
|
||||
##makedesc: Install basic software from apt
|
||||
|
||||
sudo apt update && \
|
||||
sudo apt upgrade -y --autoremove && \
|
||||
@@ -34,17 +34,17 @@ sudo apt update && \
|
||||
p7zip-full \
|
||||
easyeffects \
|
||||
software-properties-common \
|
||||
terminator \
|
||||
ubuntu-restricted-extras \
|
||||
unzip \
|
||||
vlc \
|
||||
ffmpeg \
|
||||
xclip \
|
||||
inotify-tools \
|
||||
notify-osd \
|
||||
fonts-open-sans \
|
||||
libnotify-bin \
|
||||
tree \
|
||||
earlyoom
|
||||
# terminator
|
||||
# xclip
|
||||
# sqlitebrowser
|
||||
# etckeeper
|
||||
|
||||
+47
-8
@@ -1,13 +1,52 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Install Canon Pixma MG2500 + ppa
|
||||
source "$( dirname $(readlink -e -- "${BASH_SOURCE}"))/../helpers.sh" || exit 255
|
||||
##makedesc: Canon Pixma MG2500 + ppa
|
||||
|
||||
title
|
||||
install() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Installing Canon Pixma MG2500 + ppa"
|
||||
echo "==============================================="
|
||||
echo
|
||||
sudo add-apt-repository -y ppa:thierry-f/fork-michael-gruz
|
||||
sudo apt install -y cnijfilter-mg2500series scangearmp-mg2500series
|
||||
echo
|
||||
echo "Finish!"
|
||||
echo "Drivers for Canon Pixma MG2500 installed!"
|
||||
echo "Now you must reboot PC and connect your printer."
|
||||
echo
|
||||
}
|
||||
|
||||
apt_ppa_add ppa:thierry-f/fork-michael-gruz
|
||||
upgrade() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Upgrading Canon Pixma MG2500 + ppa"
|
||||
echo "==============================================="
|
||||
echo
|
||||
sudo apt upgrade -y cnijfilter-mg2500series scangearmp-mg2500series
|
||||
echo
|
||||
echo "Finish! Canon Pixma MG2500 + ppa"
|
||||
echo
|
||||
}
|
||||
|
||||
apt_install cnijfilter-mg2500series
|
||||
apt_install scangearmp-mg2500series
|
||||
remove() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Removing Canon Pixma MG2500 + ppa"
|
||||
echo "==============================================="
|
||||
echo
|
||||
# sudo apt purge -y cnijfilter-mg2500series scangearmp-mg2500series
|
||||
sudp dpkg -r cnijfilter-mg2500series
|
||||
sudp dpkg -r cnijfilter-common
|
||||
sudp dpkg -r scangearmp-mg2500series
|
||||
sudp dpkg -r scangearmp-common
|
||||
sudo add-apt-repository -ry ppa:thierry-f/fork-michael-gruz
|
||||
echo
|
||||
echo "Finish!"
|
||||
echo
|
||||
}
|
||||
|
||||
success "Drivers for Canon Pixma MG2500 installed!"
|
||||
info "Now you must reboot PC and connect your printer."
|
||||
case "$1" in
|
||||
u|upgrade|update) upgrade ;;
|
||||
r|remove|d|delete|p|purge) remove ;;
|
||||
*) install ;;
|
||||
esac
|
||||
|
||||
+48
-9
@@ -1,17 +1,56 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Install google chrome (latest)
|
||||
source "$( dirname $(readlink -e -- "${BASH_SOURCE}"))/../helpers.sh" || exit 255
|
||||
##makedesc: Google Chrome (latest)
|
||||
|
||||
set -eo pipefail
|
||||
|
||||
# https://t.me/axenov_blog/251
|
||||
|
||||
title
|
||||
dest="$HOME/install/deb"
|
||||
deb="$dest/google-chrome.deb"
|
||||
url="https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb"
|
||||
|
||||
mkdir -p "$HOME/install/deb"
|
||||
install() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Installing Google Chrome"
|
||||
echo "==============================================="
|
||||
echo
|
||||
mkdir -p "$dest"
|
||||
wget "$url" -O "$deb"
|
||||
sudo dpkg -i "$deb"
|
||||
echo
|
||||
echo "Finish! $(google-chrome --version)"
|
||||
echo
|
||||
}
|
||||
|
||||
download "https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb" \
|
||||
"$HOME/install/deb/google-chrome.deb"
|
||||
upgrade() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Upgrading Google Chrome"
|
||||
echo "==============================================="
|
||||
echo
|
||||
mkdir -p "$dest"
|
||||
wget "$url" -O "$deb"
|
||||
sudo dpkg -i "$deb"
|
||||
echo
|
||||
echo "Finish! $(google-chrome --version)"
|
||||
echo
|
||||
}
|
||||
|
||||
dpkg_install "$HOME/install/deb/google-chrome.deb"
|
||||
remove() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Removing Google Chrome"
|
||||
echo "==============================================="
|
||||
echo
|
||||
sudo dpkg -r google-chrome
|
||||
echo
|
||||
echo "Finish!"
|
||||
echo
|
||||
}
|
||||
|
||||
success "Google Chrome installed!"
|
||||
google-chrome --version
|
||||
case "$1" in
|
||||
u|upgrade|update) upgrade ;;
|
||||
r|remove|d|delete|p|purge) remove ;;
|
||||
*) install ;;
|
||||
esac
|
||||
|
||||
+53
-3
@@ -1,6 +1,56 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: ClamAV (WIP)
|
||||
##makedesc: ClamAV
|
||||
|
||||
sudo apt install clamav -y && \
|
||||
echo "DatabaseMirror packages.microsoft.com/clamav" | sudo tee -a /etc/clamav/freshclam.conf && \
|
||||
set -eo pipefail
|
||||
|
||||
install() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Installing clamav"
|
||||
echo "==============================================="
|
||||
echo
|
||||
|
||||
sudo apt install -y clamav
|
||||
echo "DatabaseMirror packages.microsoft.com/clamav" \
|
||||
| sudo tee -a /etc/clamav/freshclam.conf
|
||||
sudo freshclam
|
||||
|
||||
echo
|
||||
echo "Finish!"
|
||||
echo
|
||||
}
|
||||
|
||||
upgrade() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Upgrading clamav"
|
||||
echo "==============================================="
|
||||
echo
|
||||
|
||||
sudo apt upgrade -y clamav
|
||||
sudo freshclam
|
||||
|
||||
echo
|
||||
echo "Finish!"
|
||||
echo
|
||||
}
|
||||
|
||||
remove() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Removing clamav"
|
||||
echo "==============================================="
|
||||
echo
|
||||
|
||||
sudo apt purge -y clamav*
|
||||
|
||||
echo
|
||||
echo "Finish!"
|
||||
echo
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
u|upgrade|update) upgrade ;;
|
||||
r|remove|d|delete|p|purge) remove ;;
|
||||
*) install ;;
|
||||
esac
|
||||
|
||||
+68
-29
@@ -1,39 +1,78 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Install docker (latest) + ppa
|
||||
source "$( dirname $(readlink -e -- "${BASH_SOURCE}"))/../helpers.sh" || exit 255
|
||||
##makedesc: Docker + ppa
|
||||
|
||||
# https://docs.docker.com/engine/install/ubuntu/
|
||||
# https://docs.docker.com/engine/install/linux-postinstall/#manage-docker-as-a-non-root-user
|
||||
|
||||
title
|
||||
set -eo pipefail
|
||||
|
||||
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do
|
||||
apt_remove $pkg
|
||||
done
|
||||
doRemove() {
|
||||
sudo apt purge -y docker* podman-docker containerd runc
|
||||
}
|
||||
|
||||
require ca-certificates lsb-release
|
||||
source /etc/os-release
|
||||
install_() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Installing Docker"
|
||||
echo "==============================================="
|
||||
echo
|
||||
doRemove
|
||||
sudo apt install -y ca-certificates lsb-release
|
||||
source /etc/os-release
|
||||
codename="$VERSION_CODENAME"
|
||||
key="/etc/apt/keyrings/docker.asc"
|
||||
arch=$(dpkg --print-architecture)
|
||||
sudo install -m 0755 -d /etc/apt/keyrings
|
||||
curl -fsSL "https://download.docker.com/linux/ubuntu/gpg" -o "$key"
|
||||
sudo chmod a+r $key
|
||||
echo "deb [arch=$arch signed-by=$key] https://download.docker.com/linux/ubuntu $codename stable" \
|
||||
| sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||||
sudo apt update
|
||||
sudo apt install -y \
|
||||
docker-ce \
|
||||
docker-ce-cli \
|
||||
containerd.io \
|
||||
docker-buildx-plugin \
|
||||
docker-compose-plugin
|
||||
sudo usermod -aG docker "$(whoami)"
|
||||
newgrp docker
|
||||
echo
|
||||
echo "Finish! $(docker --version)"
|
||||
echo "Probably, you need to relogin to apply 'docker' group permanently."
|
||||
echo
|
||||
}
|
||||
|
||||
key="/etc/apt/keyrings/docker.asc"
|
||||
upgrade() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Upgrading Docker"
|
||||
echo "==============================================="
|
||||
echo
|
||||
sudo apt upgrade -y \
|
||||
docker-ce \
|
||||
docker-ce-cli \
|
||||
containerd.io \
|
||||
docker-buildx-plugin \
|
||||
docker-compose-plugin
|
||||
echo
|
||||
echo "Finish!"
|
||||
echo
|
||||
}
|
||||
|
||||
sudo install -m 0755 -d /etc/apt/keyrings
|
||||
sudo cdownload https://download.docker.com/linux/ubuntu/gpg $key
|
||||
sudo chmod a+r $key
|
||||
remove() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Removing Docker"
|
||||
echo "==============================================="
|
||||
echo
|
||||
doRemove
|
||||
echo
|
||||
echo "Finish!"
|
||||
echo
|
||||
}
|
||||
|
||||
echo "deb [arch=$(dpkg_arch) signed-by=$key] https://download.docker.com/linux/ubuntu $VERSION_CODENAME stable" \
|
||||
| sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||||
|
||||
apt_update
|
||||
apt_install \
|
||||
docker-ce \
|
||||
docker-ce-cli \
|
||||
containerd.io \
|
||||
docker-buildx-plugin \
|
||||
docker-compose-plugin
|
||||
|
||||
sudo usermod -aG docker $(whoami)
|
||||
newgrp docker
|
||||
|
||||
success "Docker installed!"
|
||||
docker --version
|
||||
info "Probably, you need to relogin to apply 'docker' group permanently."
|
||||
case "$1" in
|
||||
u|upgrade|update) upgrade ;;
|
||||
r|remove|d|delete|p|purge) remove ;;
|
||||
*) install ;;
|
||||
esac
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Install JetBrains Mono fonts
|
||||
source "$( dirname $(readlink -e -- "${BASH_SOURCE}"))/../helpers.sh" || exit 255
|
||||
|
||||
# https://www.jetbrains.com/lp/mono/#how-to-install
|
||||
|
||||
title
|
||||
|
||||
require unzip
|
||||
|
||||
mkdir -p "$HOME/install/jbmono" "$HOME/.local/share/fonts/"
|
||||
download "https://download.jetbrains.com/fonts/JetBrainsMono-2.304.zip" "$HOME/install/jbmono.zip" && \
|
||||
unzip -oj "$HOME/install/jbmono.zip" "fonts/ttf/*.ttf" -d "$HOME/.local/share/fonts/" && \
|
||||
fc-cache -vf "$HOME/.local/share/fonts/"
|
||||
|
||||
[ $? = 0 ] && {
|
||||
echo
|
||||
success "JetBrains Mono fonts installed!"
|
||||
echo
|
||||
}
|
||||
Executable
+66
@@ -0,0 +1,66 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Install nerd-fonts
|
||||
|
||||
set -eo pipefail
|
||||
|
||||
#TODO nokia-sans
|
||||
|
||||
downloadPath="$HOME/install/nerd-fonts"
|
||||
installPath="$HOME/.local/share/fonts/"
|
||||
url="https://github.com/ryanoasis/nerd-fonts/releases/latest/download"
|
||||
|
||||
fonts=(
|
||||
FiraCode
|
||||
FiraMono
|
||||
JetBrainsMono
|
||||
Meslo
|
||||
Noto
|
||||
RobotoMono
|
||||
Ubuntu
|
||||
UbuntuMono
|
||||
UbuntuSans
|
||||
)
|
||||
|
||||
install() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Installing nerd-fonts"
|
||||
echo "==============================================="
|
||||
echo
|
||||
|
||||
[[ -d "$downloadPath" ]] || mkdir -p "$downloadPath"
|
||||
|
||||
for fontname in "${fonts[@]}"; do
|
||||
fontdir="$installPath/Nerd-$fontname"
|
||||
wget "$url/$fontname.tar.xz" -O "$downloadPath/$fontname.tar.xz"
|
||||
[[ -d "$installPath/$fontname" ]] || mkdir -p "$fontdir"
|
||||
tar -xJf "$downloadPath/$fontname.tar.xz" -C "$fontdir"
|
||||
done
|
||||
|
||||
fc-cache -vf "$installPath"
|
||||
|
||||
echo
|
||||
echo "Finish!"
|
||||
echo
|
||||
}
|
||||
|
||||
remove() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Removing nerd-fonts"
|
||||
echo "==============================================="
|
||||
echo
|
||||
|
||||
find "$installPath" -type d -name "Nerd-*" -exec rm -rf {} +
|
||||
fc-cache -vf "$installPath"
|
||||
|
||||
echo
|
||||
echo "Finish!"
|
||||
echo
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
r|remove|d|delete|p|purge) remove ;;
|
||||
*) install ;;
|
||||
esac
|
||||
|
||||
+64
-17
@@ -1,33 +1,80 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Install nvim + lazyvim
|
||||
source "$( dirname $(readlink -e -- "${BASH_SOURCE}"))/../helpers.sh" || exit 255
|
||||
set -eo pipefail
|
||||
|
||||
# https://www.lazyvim.org/installation
|
||||
# https://www.devas.life/effective-neovim-setup-for-web-development-towards-2024/
|
||||
|
||||
title
|
||||
# TODO https://github.com/rockerBOO/awesome-neovim
|
||||
# TODO https://docs.astronvim.com
|
||||
|
||||
require git
|
||||
url="https://github.com/neovim/neovim/releases/latest/download/nvim-linux-x86_64.tar.gz"
|
||||
downloadPath="$HOME/install"
|
||||
downloadTarGz="$downloadPath/nvim.tar.gz"
|
||||
installPath="/opt/nvim"
|
||||
cfgPath="$HOME/.config/nvim"
|
||||
nvimDataPaths=(
|
||||
"$cfgPath"
|
||||
"$HOME"/.local/share/nvim
|
||||
"$HOME"/.local/state/nvim
|
||||
"$HOME"/.cache/nvim
|
||||
)
|
||||
|
||||
nvimUrl="https://github.com/neovim/neovim/releases/latest/download/nvim-linux-x86_64.tar.gz"
|
||||
installPath="$HOME/install"
|
||||
installTar="$installPath/nvim.tar.gz"
|
||||
backup() {
|
||||
echo "Backup configuration files..."
|
||||
t=$(date +'%s')
|
||||
for path in "${nvimDataPaths[@]}"; do
|
||||
[[ -d "$path" ]] && cp -v "$path" "$path-$t.bak"
|
||||
done
|
||||
echo "Done"
|
||||
}
|
||||
|
||||
[ -d "$HOME/.config/nvim" ] && mv "$HOME"/.config/nvim{,.bak}
|
||||
[ -d "$HOME/.local/share/nvim" ] && mv "$HOME"/.local/share/nvim{,.bak}
|
||||
[ -d "$HOME/.local/state/nvim" ] && mv "$HOME"/.local/state/nvim{,.bak}
|
||||
[ -d "$HOME/.cache/nvim" ] && mv "$HOME"/.cache/nvim{,.bak}
|
||||
install() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Installing neovim"
|
||||
echo "==============================================="
|
||||
echo
|
||||
|
||||
download "$nvimUrl" "$installTar"
|
||||
unpack_targz "$installTar" "$installPath"
|
||||
backup
|
||||
wget "$url" -O "$downloadTarGz"
|
||||
tar -xzf "$downloadTarGz" -C "$downloadPath"
|
||||
|
||||
sudo rm -vrf /opt/nvim
|
||||
sudo mv -v "$installPath/nvim-linux-x86_64" /opt/nvim
|
||||
sudo rm -rf "$installPath"
|
||||
sudo mv "$downloadPath/nvim-linux-x86_64" "$installPath"
|
||||
|
||||
git.clone_quick https://github.com/LazyVim/starter "$HOME/.config/nvim"
|
||||
rm -rf "$HOME/.config/nvim/.git"
|
||||
git clone --depth=1 --single-branch https://github.com/LazyVim/starter "$cfgPath"
|
||||
rm -rf "$cfgPath/.git"
|
||||
|
||||
sudo update-desktop-database && \
|
||||
sudo update-desktop-database
|
||||
xdg-desktop-menu forceupdate
|
||||
|
||||
echo
|
||||
echo "Finish!"
|
||||
nvim -v
|
||||
echo
|
||||
}
|
||||
|
||||
remove() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Removing nerd-fonts"
|
||||
echo "==============================================="
|
||||
echo
|
||||
|
||||
find "$downloadPath" -type d -name "Nerd-*" -exec rm -rf {} +
|
||||
fc-cache -vf "$downloadPath"
|
||||
|
||||
echo
|
||||
echo "Finish!"
|
||||
echo
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
b|backup) backup ;;
|
||||
r|remove|d|delete|p|purge) remove ;;
|
||||
*) install ;;
|
||||
esac
|
||||
|
||||
|
||||
# export PATH="$PATH:/opt/nvim-linux-x86_64/bin"
|
||||
|
||||
@@ -1,10 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Uninstall apache2
|
||||
source "$( dirname $(readlink -e -- "${BASH_SOURCE}"))/../helpers.sh" || exit 255
|
||||
|
||||
title
|
||||
|
||||
apt_remove apache2
|
||||
|
||||
success "apache2 removed!"
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Uninstall Canon Pixma MG2500 + ppa
|
||||
source "$( dirname $(readlink -e -- "${BASH_SOURCE}"))/../helpers.sh" || exit 255
|
||||
|
||||
title
|
||||
|
||||
apt_ppa_remove ppa:thierry-f/fork-michael-gruz
|
||||
|
||||
dpkg_remove cnijfilter-mg2500series
|
||||
dpkg_remove cnijfilter-common
|
||||
dpkg_remove scangearmp-mg2500series
|
||||
dpkg_remove scangearmp-common
|
||||
|
||||
success "Drivers for Canon Pixma MG2500 removed!"
|
||||
|
||||
Reference in New Issue
Block a user