Saltar para o conteúdo
Fontes de programas

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.

search-app

#!/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