Pular para o conteúdo

Instalando fontes via script no Nautilus Scripts no Gnome do Debian 13

Dica publicada em Linux / Configuração
Sidnei Serra Zoiudo
Hits: 497 Categoria: Linux Subcategoria: Configuração
  • Indicar
  • Impressora
  • Denunciar

Instalando fontes via script no Nautilus Scripts no Gnome do Debian 13

Nessa dica mostro um script simples para a instalação manual de fontes baixadas "por fora".

Um site legal para baixar fontes é esse aqui:
Veja se a pasta existe no seu sistema com Gnome via Nautilus Scripts:

cd ~/.local/share/nautilus/scripts

Se der "pasta não encontrada", vamos criar a pasta e seguir com a criação do recurso:

mkdir -p ~/.local/share/nautilus/scripts

cd ~/.local/share/nautilus/scripts

nano Instalar\ fontes

Cole dentro:

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

CTRL+O pra salvar e CTRL+X pra fechar. Depois:

chmod +x ~/.local/share/nautilus/scripts/Instalar\ fontes

nautilus -q

Para usar: depois de escolher uma ou mais fontes e descompactá-las, entre na pasta com as fontes, seleciona as mesmas, botão direito do mouse/Scripts/Instalar Fontes:

Linux: Instalando fontes via script no Nautilus Scripts no Gnome do Debian 13


Escolha Sistema (para deixar as fontes a serem instaladas manualmente disponíveis a todos os usuários):

Linux: Instalando fontes via script no Nautilus Scripts no Gnome do Debian 13


E aguarde. Aparecerá uma janela de confirmação. Para ver se a fonte foi instalada (exemplo a Segoe das imagens):

fc-list | grep "Segoe"



Linux: Instalando fontes via script no Nautilus Scripts no Gnome do Debian 13


O script vai instalar na pasta /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 Cairo Dock individualmente em ambientes diferentes na mesma maquina

Cairo Dock ainda funcional nos dias de hoje

Solução rápida para o problema do Network Manager conectar mas não navegar

O dock Plank + U-Launcher deixam qualquer desktop mais produtivo

Instalando o Team Viewer no Debian Trixie - problema no Policykit

Solucionando problema de resolução máxima de 640x480 no Ubuntu e similares

Tema GTK+ no Slackware (x86_64 13.1-current)

Resolvendo o erro: "Another window manager is already running on screen: 0"

Ragnarok online no Slackware 10

Configurando a placa rede para pegar o IP automaticamente no Debian

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.