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: 498 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.

Redimensionando, espelhando, convertendo e rotacionando imagens com script

O widget do Plasma 6 Área de Notificação

Cairo Dock ainda funcional nos dias de hoje

Reescalando a tela hd para fullhd com o xrandr

Autologin: praticidade ou não?

Janelas sem borda no Fluxbox

Configurar rede no CentOS 6

Baixando as fotos e vídeos da aiptek pocket dv 3300 no Slackware 10

Relação confiança SSH entre servidores GNU/Linux

Samba + Clamav no Slackware 10.1

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.