Fontes de programas
Este script é o que faz grande mágica acontecer!
Ele adiciona ao sistema outras fontes de instalação de programas, que são:
am - instalador de programas AppImage e binários diretos do GitHub
pacstall - instalador de pacotes deb de terceiros além de programas compilados direto do código fonte
Outro complemento muito importante instalado através deste script é o topgrade, um atualizador do sistema que checa tudo que é possível no sistema e atualiza de uma vez só, como por exemplo apt, am, pacstall, Flatpak, Python, npm, Ruby, etc…
A lista de atualizações suportadas pelo togprade é realmente bem extensa.
Além de tudo isso, ainda é disponibilizado um script search-app que você pode usar pra pesquisar programas no apt, am e pacstall de uma só vez.
Basta digitar search-app NOME_DO_APP que ele exibe os resultados após a pesquisa nas 3 fontes.

#!/bin/bash
set -e
source <(curl -sSL https://estudio-debian.pages.dev/functions.lib)
## AM
sudo bash -c "$(curl -sSL https://github.com/ivan-hc/AM/raw/main/INSTALL)"
am translate pt_BR
## Backports
if [[ "$(grep '^ID=' /etc/os-release | cut -d '=' -f2)" == ubuntu ]]; then
printf Ubuntu...
elif [[ "$(grep '^ID=' /etc/os-release | cut -d '=' -f2)" == debian ]]; then
printf Debian...
printf 'APT::Default-Release "trixie-backports";' | sudo tee /etc/apt/apt.conf.d/99backports >/dev/null
fi
## extrepo
INSTNAME='extrepo'
install_deb
sudo sed -i 's/# -/-/g' /etc/extrepo/config.yaml
sudo extrepo update
## Pacstall
yes | sudo bash -c "$(curl -sSL https://pacstall.dev/q/install)"
## sqv
if [[ "$(grep '^ID=' /etc/os-release | cut -d '=' -f2)" == ubuntu ]]; then
printf Ubuntu...
elif [[ "$(grep '^ID=' /etc/os-release | cut -d '=' -f2)" == debian ]]; then
printf Debian...
sudo mkdir -p /etc/crypto-policies/back-ends
sudo tee /etc/crypto-policies/back-ends/sequoia.config >/dev/null <<EOF
[hash_algorithms]
sha1 = "always"
[packets]
signature.v3 = "always"
EOF
fi
## Topgrade
script() {
TARGET="$(curl -sSL https://api.github.com/repos/topgrade-rs/topgrade/releases | grep browser_download_url | grep deb | head -n1 | cut -d '"' -f4)"
download
}
tmprun script
mkdir -p "$HOME"/.local/share/{applications,icons}
wget -q --show-progress -O "$HOME"/.local/share/icons/aptdaemon-update-cache.png https://cdn-icons-png.flaticon.com/512/7686/7686946.png
tee "$HOME"/.local/share/applications/topgrade.desktop >/dev/null <<EOF
[Desktop Entry]
Type=Application
Name=Topgrade
Exec=bash -c "topgrade; printf 'Pressione qualquer tecla para fechar...'; read -n1"
Icon=aptdaemon-update-cache
Terminal=true
Categories=System;Utility;
StartupNotify=true
EOF
mkdir -p "$HOME"/.local/bin
tee "$HOME"/.local/bin/search-app >/dev/null <<'EOF'
#!/bin/bash
YELLOW="\033[1;33m"
GREEN="\033[0;32m"
NC="\033[0m" # Reset
if [ -z "$1" ]; then
printf "%bUso: %s nome_do_programa%b\n" "$YELLOW" "$0" "$NC"
exit 1
fi
prog="$1"
printf "🔍 Procurando por: %b%s%b\n" "$GREEN" "$prog" "$NC"
printf "\n📦 %bAPT%b:\n" "$YELLOW" "$NC"
apt-cache pkgnames | grep -i "^$prog" | while read -r pkg; do
version=$(apt-cache show "$pkg" 2>/dev/null | grep -m1 '^Version:' | awk '{print $2}')
printf "%b%s%b - versão: %s\n" "$GREEN" "$pkg" "$NC" "$version"
done || printf "%bNenhum resultado.%b\n" "$GREEN" "$NC"
printf "\n📦 %bAM%b:\n" "$YELLOW" "$NC"
am_result=$(am -q "$prog" 2>/dev/null | grep -i "$prog")
[[ -n "$am_result" ]] && printf "%b\n" "$am_result" || printf "%bNenhum resultado.%b\n" "$GREEN" "$NC"
printf "\n📦 %bPacstall%b:\n" "$YELLOW" "$NC"
pac_result=$(pacstall -S "$prog" 2>/dev/null | grep -i "$prog")
[[ -n "$pac_result" ]] && printf "%b\n" "$pac_result" || printf "%bNenhum resultado.%b\n" "$GREEN" "$NC"
EOF
chmod +x "$HOME"/.local/bin/search-app