Flatpak manager

Publicado por Xerxes (última atualização em 25/01/2026)

[ Hits: 38 ]

Homepage: -

Download flatpak-manager.sh




Simples script para gerenciar flatpaks.

  



Esconder código-fonte

#!/bin/bash
# -----------------------------------------------------------------------------
# Nome: Flatpak Manager
# Descrição: Gerenciador para manutenção, limpeza e updates do Flatpak
# Autor: Xerxes Lins
# V 1.0 (25/1/2026)
# -----------------------------------------------------------------------------

# Cores
GREEN='\033[0;32m'
BLUE='\033[0;34m'
RED='\033[0;31m'
YELLOW='\033[1;33m'
NC='\033[0m'

# Verifica se o flatpak está instalado
if ! command -v flatpak &> /dev/null; then
    echo -e "${RED}Erro: Flatpak não encontrado no sistema.${NC}"
    exit 1
fi

show_menu() {
    clear
    echo -e "${BLUE}=== FLATPAK MASTER MANAGER ===${NC}"
    echo -e "${GREEN}1)${NC} Atualizar TUDO (Apps + Runtimes)"
    echo -e "${GREEN}2)${NC} Limpeza Leve (Remover Runtimes não usados)"
    echo -e "${GREEN}3)${NC} Limpeza Profunda (Cache + Temporários + Repair)"
    echo -e "${GREEN}4)${NC} Reparar Instalação (Corrige erros de corrupção)"
    echo -e "${GREEN}5)${NC} Listar Apps (Ordenados por Tamanho)"
    echo -e "${GREEN}6)${NC} Ver Histórico de Operações"
    echo -e "${GREEN}7)${NC} Resetar Permissões de um App"
    echo -e "${GREEN}8)${NC} Desinstalar App (Apagando dados do usuário)"
    echo -e "${GREEN}0)${NC} Sair"
    echo "----------------------------------------------"
    echo -e "${YELLOW}Dica: A opção 4 resolve a maioria dos bugs estranhos.${NC}"
    echo "----------------------------------------------"
}

wait_user() {
    echo ""
    read -p "Pressione ENTER para voltar ao menu..."
}

while true; do
    show_menu
    read -p "Escolha uma opção: " option

    case $option in
        1)
            echo -e "\n${BLUE}--> Buscando atualizações...${NC}"
            flatpak update
            wait_user
            ;;
        2)
            echo -e "\n${BLUE}--> Removendo runtimes órfãos (--unused)...${NC}"
            # Remove bibliotecas (NVIDIA, KDE, GNOME) antigas que não são mais usadas
            flatpak uninstall --unused
            wait_user
            ;;
        3)
            echo -e "\n${BLUE}--> Executando limpeza profunda...${NC}"
            
            # 1. Limpa runtimes não usados
            flatpak uninstall --unused -y
            
            # 2. Tenta limpar cache do sistema (requer sudo para var/tmp)
            echo "Limpando cache de downloads temporários..."
            sudo rm -rf /var/tmp/flatpak-cache-*
            
            # 3. Executa o repair para podar objetos soltos
            echo "Podando objetos soltos no repositório..."
            sudo flatpak repair
            
            echo -e "${GREEN}Limpeza concluída!${NC}"
            wait_user
            ;;
        4)
            echo -e "\n${BLUE}--> Reparando base de dados do Flatpak...${NC}"
            echo "Isso pode demorar, mas conserta corrupção de arquivos."
            # Repara instalação do sistema
            sudo flatpak repair
            # Repara instalação do usuário (se houver)
            flatpak repair --user
            wait_user
            ;;
        5)
            echo -e "\n${BLUE}--> Apps Instalados (Ordenados por Tamanho):${NC}"
            # Lista formatada mostrando Nome, ID e Tamanho
            flatpak list --app --columns=name,application,size,branch | sort -k3 -h
            wait_user
            ;;
        6)
            echo -e "\n${BLUE}--> Histórico recente do Flatpak:${NC}"
            flatpak history | head -n 20
            wait_user
            ;;
        7)
            echo -e "\n${BLUE}--> Resetar Permissões${NC}"
            echo "Isso faz o app voltar às configurações originais de acesso (reseta o Flatseal)."
            read -p "Digite o ID do App (ex: org.telegram.desktop): " app_id
            if [ -n "$app_id" ]; then
                flatpak permission-reset "$app_id"
                echo "Permissões resetadas para $app_id"
            else
                echo "ID inválido."
            fi
            wait_user
            ;;
        8)
            echo -e "\n${RED}--> Desinstalação Completa${NC}"
            echo "Isso remove o app E a pasta de configurações dele na sua /home."
            read -p "Digite o ID do App para remover (ex: org.gimp.GIMP): " app_id
            if [ -n "$app_id" ]; then
                flatpak uninstall --delete-data "$app_id"
            fi
            wait_user
            ;;
        0)
            echo "Saindo..."
            exit 0
            ;;
        *)
            echo "Opção inválida."
            sleep 1
            ;;
    esac
done

Scripts recomendados

Slocal Manipulação de pacotes Slackware

Instalação dos principais programas para um usuário comum

Script de cópia (destino - origem) otimizado

Conexão e Desconexão ADSL automáticas no Slackware

LIXEIRA COMPLETA!


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário