Flatpak manager

Publicado por Xerxes (última atualização em 23/03/2026)

[ Hits: 1.678 ]

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.6 (24/03/2026)
# -----------------------------------------------------------------------------

# Cores e Formatação
GREEN='\033[1;32m'
BLUE='\033[1;34m'
RED='\033[1;31m'
YELLOW='\033[1;33m'
CYAN='\033[1;36m'
BOLD='\033[1m'
NC='\033[0m'

if ! command -v flatpak &> /dev/null; then
    echo -e "${RED}[Erro] Flatpak nao encontrado no sistema.${NC}"
    exit 1
fi

show_menu() {
    clear
    echo -e "${BLUE}+-----------------------------------------------------+${NC}"
    echo -e "${BLUE}|${NC}               ${BOLD}FLATPAK MASTER MANAGER${NC}                ${BLUE}|${NC}"
    echo -e "${BLUE}+-----------------------------------------------------+${NC}"
    echo -e "${BLUE}|${NC} ${GREEN}1)${NC} Atualizar Tudo (Apps + Runtimes)                 ${BLUE}|${NC}"
    echo -e "${BLUE}|${NC} ${GREEN}2)${NC} Limpeza Leve (Runtimes orfaos)                   ${BLUE}|${NC}"
    echo -e "${BLUE}|${NC} ${GREEN}3)${NC} Limpeza Profunda (Cache + Reparo)                ${BLUE}|${NC}"
    echo -e "${BLUE}|${NC} ${GREEN}4)${NC} Reparar Instalacao (Sistema e Usuario)           ${BLUE}|${NC}"
    echo -e "${BLUE}|${NC} ${GREEN}5)${NC} Listar Apps (Ordenados por Tamanho)              ${BLUE}|${NC}"
    echo -e "${BLUE}|${NC} ${GREEN}6)${NC} Ver Historico de Operacoes                       ${BLUE}|${NC}"
    echo -e "${BLUE}|${NC} ${GREEN}7)${NC} Resetar Permissoes de um App                     ${BLUE}|${NC}"
    echo -e "${BLUE}|${NC} ${GREEN}8)${NC} Remover App e Dados (Busca por Nome)             ${BLUE}|${NC}"
    echo -e "${BLUE}|${NC} ${GREEN}0)${NC} Sair                                             ${BLUE}|${NC}"
    echo -e "${BLUE}+-----------------------------------------------------+${NC}"
    echo -e "${YELLOW}[Dica] A opcao 4 resolve erros de execucao.${NC}\n"
}

wait_user() {
    echo -e "\n${CYAN}Pressione ENTER para voltar ao menu...${NC}"
    read -r
}

while true; do
    show_menu
    read -p "Escolha uma opcao: " option

    case $option in
        1)
            echo -e "\n${BLUE}[>] Buscando atualizacoes...${NC}"
            flatpak update
            wait_user
            ;;
        2)
            echo -e "\n${BLUE}[>] Removendo runtimes nao usados...${NC}"
            flatpak uninstall --unused
            wait_user
            ;;
        3)
            echo -e "\n${BLUE}[>] Executando limpeza profunda...${NC}"
            flatpak uninstall --unused -y
            sudo rm -rf /var/tmp/flatpak-cache-* 2>/dev/null || true
            sudo flatpak repair
            echo -e "${GREEN}[OK] Limpeza concluida!${NC}"
            wait_user
            ;;
        4)
            echo -e "\n${BLUE}[>] Reparando base de dados...${NC}"
            sudo flatpak repair
            flatpak repair --user
            wait_user
            ;;
        5)
            echo -e "\n${BLUE}[>] Apps Instalados (Ordenados por Tamanho):${NC}"
            echo -e "${CYAN}"
            flatpak list --app --columns=name,application,size | sort -k3 -h
            echo -e "${NC}"
            wait_user
            ;;
        6)
            flatpak history | head -n 20
            wait_user
            ;;
        7)
            echo -e "\n${YELLOW}[>] Modo: Resetar Permissoes${NC}"
            read -p "Digite o termo de busca (ex: telegram): " search_term
            if [ -n "$search_term" ]; then
                app_id=$(flatpak list --app --columns=application,name | grep -i "$search_term" | awk '{print $1}' | head -n 1)
                if [ -n "$app_id" ]; then
                    flatpak permission-reset "$app_id"
                    echo -e "${GREEN}[OK] Permissoes resetadas para $app_id${NC}"
                else
                    echo -e "${RED}[Erro] App nao encontrado.${NC}"
                fi
            fi
            wait_user
            ;;
        8)
            echo -e "\n${RED}[>] Modo: Remocao de Aplicativo${NC}"
            read -p "Digite o nome ou ID (ex: virt): " search_term
            
            if [ -z "$search_term" ]; then
                echo -e "${YELLOW}Cancelado: nada foi digitado.${NC}"
            else
                # Busca robusta: pega o ID exato que contem o termo
                app_id=$(flatpak list --app --columns=application | grep -i "$search_term" | head -n 1)
                
                if [ -n "$app_id" ]; then
                    echo -e "${CYAN}Alvo encontrado: $app_id${NC}"
                    read -p "Deseja apagar o app e TODOS os dados dele? (s/n): " confirm
                    if [[ "$confirm" == "s" || "$confirm" == "S" ]]; then
                        flatpak uninstall --delete-data "$app_id"
                        echo -e "${GREEN}[OK] $app_id foi removido completamente.${NC}"
                    else
                        echo -e "${YELLOW}Acao cancelada pelo usuario.${NC}"
                    fi
                else
                    echo -e "${RED}[Erro] Nenhum app instalado corresponde a '$search_term'.${NC}"
                fi
            fi
            wait_user
            ;;
        0)
            exit 0
            ;;
        *)
            echo -e "${RED}[Erro] Opcao invalida.${NC}"
            sleep 1
            ;;
    esac
done

Scripts recomendados

ZPenBoot - Gravando imagem ISO em um pendrive

Script Para o Desligamento do Sistema

Script para montar compartilhamento de uma estação Windows

Manipular serviços no Runit (Void Linux)

Automatizando a geração de relatórios do SARG


  

Comentários
[1] Comentário enviado por fernandosuporte em 17/02/2026 - 17:45h

Tomei a liberdade de realizar a internalização do script, bem como outras atualizações.

...

9) Sobre
10) Listar todas as permissões atuais de um programa
11) Ver detalhes de um programa específico
12) Configurar permissões do Flatpak para um programa
13) Pesquisar um programa

Para testar a opção 12 tem o org.gnome.gThumb e o net.epson.epsonscan2 (Sway+Void).

https://www.youtube.com/watch?v=ZI2yu4ncT0s

https://gitlab.com/slackvoid/flatpak-manager


[2] Comentário enviado por xerxeslins em 17/02/2026 - 17:53h


[1] Comentário enviado por fernandosuporte em 17/02/2026 - 17:45h


Tomei a liberdade de realizar a internalização do script, bem como outras atualizações.

https://www.youtube.com/watch?v=ZI2yu4ncT0s


Maravilha.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts