Instalando fontes via script no Nautilus Scripts no Gnome do Debian 13
Publicado por Sidnei Serra em 26/01/2026
[ Hits: 38 ]
Blog: https://www.youtube.com/channel/UCRgokKtNlttdmg2RJEa2VYw
#!/bin/bash
TITLE="Instalador de Fontes"
# Verifica se há seleção
if [ -z "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS" ]; then
zenity --error --title="$TITLE" --text="Nenhuma fonte selecionada."
exit 1
fi
# Escolha do destino
DEST_CHOICE=$(zenity --list --radiolist --title="$TITLE" \
--column="Seleção" --column="Destino" \
TRUE "Usuário (~/.local/share/fonts)" \
FALSE "Sistema (/usr/local/share/fonts)")
[ $? -ne 0 ] && exit 1
if [[ "$DEST_CHOICE" == *"Usuário"* ]]; then
BASE_DIR="$HOME/.local/share/fonts"
USE_SUDO=false
else
BASE_DIR="/usr/local/share/fonts"
USE_SUDO=true
fi
# Função com tratamento de espaços
instalar_fontes() {
TARGET_DIR="$1"
# Lê a lista linha por linha, preservando espaços
while IFS= read -r FILE_PATH; do
[ -z "$FILE_PATH" ] && continue
# Só processa se for arquivo de fonte
if [[ "$FILE_PATH" =~ \.(ttf|otf|woff|woff2)$ ]]; then
FILENAME=$(basename "$FILE_PATH")
FIRST_LETTER=$(echo "${FILENAME:0:1}" | tr '[:upper:]' '[:lower:]')
FINAL_DEST="$TARGET_DIR/$FIRST_LETTER"
mkdir -p "$FINAL_DEST"
cp "$FILE_PATH" "$FINAL_DEST/"
fi
done
fc-cache -f
}
export -f instalar_fontes
if [ "$USE_SUDO" = true ]; then
# O segredo: passar a lista via printf para o pkexec bash
echo "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS" | pkexec bash -c "$(declare -f instalar_fontes); instalar_fontes '$BASE_DIR'"
else
echo "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS" | instalar_fontes "$BASE_DIR"
fi
zenity --info --title="$TITLE" --text="Concluído! Fontes organizadas com sucesso."
/usr/local/share/fonts com subpastas criadas com a primeira letra do conjunto de fontes que estiveram sendo instaladas. No caso do nosso exemplo (Segoe), as fontes serão instaladas na subpasta "s". Tudo para ficar mais arrumado.
Dando - teoricamente - um gás no Gnome-Shell do Arch Linux
Autologin: praticidade ou não?
Redimensionando, espelhando, convertendo e rotacionando imagens com script
Instalando o Team Viewer no Debian Trixie - problema no Policykit
O widget do Plasma 6 Área de Notificação
Debian Squeeze - Scripts na Inicialização
Instalando NO-IP no Debian 6.0
7 comandos para conexão Wi-Fi em modo console
Liberando acessos ao ldconfig com SELinux enforced
Vínculos simbólicos - Mantendo suas configurações salvas em nuvem
Nenhum comentário foi encontrado.
Gentoo binário em 2026: UEFI, LUKS, Btrfs e Systemd
Trabalhando Nativamente com Logs no Linux
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Instalando fontes via script no Nautilus Scripts no Gnome do Debian 13
Substituindo o NetworkManager pelo iwd (e iwgtk)
GLPI Não atualiza Inventario (0)
Instalar Linux em notebook Sony Vaio VPCEG13EB (1)









