Instalando fontes via script no Nautilus Scripts no Gnome do Debian 13
Publicado por Sidnei Serra em 26/01/2026
[ Hits: 365 ]
Blog: https://www.youtube.com/@alquimistaTI
#!/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.
Configurando o Conky para iniciar corretamente no sistema
Reescalando a tela hd para fullhd com o xrandr
Usando o ble.sh (Bash Line Editor) no lugar do bash completion
Como cortar as partes de um vídeo com passagens de áudio em branco
Dotando o Thunar das opcoes Copiar para e Mover para no menu de contexto
Configurando o Fedora 13 com Gnome em português (pt-br)
Habilitando scroll em mouse genérico USB no Slackware 10.2
[Ubuntu 11.04] Problema de bluetooth
Forçando montagem automática de dispositivos móveis em Sabayon
Configurando a timezone no Debian 10
Nenhum comentário foi encontrado.
Criando um painel de controle (Dashboard) para seu servidor com o Homepage
O Abismo entre o Código e o Chão: Saltos Tecnológicos e a Exclusão Estrutural no Brasil
Instalar e Configurar a santíssima trindade (PAP) no Void Linux
Acessando página do Synchting fora da máquina local
[Resolvido] Meu monitor suporta 100fps. Por que o máximo é 60fps nos jogos?
Jogando "Magic" gratuitamente no Linux
Novos requisitos de sistema para a versão 26.04 (2)









