Murad Library
RESEARCH#md

RESEARCH

Projeto de distro própria para WriterDeck Linux

projeto-distro-writerdeck-linux.md

research·#MD·projeto-distro-writerdeck-linux.md
Date
Reading
15 min read

Projeto de distro própria para WriterDeck Linux

Ideia central

Você quer construir algo no espírito do writerdeckOS, mas com a sua própria identidade: uma distro/appliance focada em escrita, com pouco ou nenhum ruído, porém sem necessariamente ficar presa ao modo “só terminal e nada mais”.

A ideia boa aqui não é criar “mais uma distro Linux genérica”. Isso seria perda de tempo. O projeto tem que ter uma tese clara:

Uma máquina de escrita offline-first, rápida, bonita o suficiente, com backup inteligente, exportação fácil e ferramentas de revisão textual sem distração.

O erro mais comum seria começar pelo kernel, pelo bootloader ou por uma estética hacker. Isso é vaidade técnica. Comece pelo fluxo de escrita.


1. Bases de distro que você pode usar

Opção A — Debian Live

Veredito

A melhor base para uma primeira versão séria.

Por quê

Debian é estável, conhecido, tem pacotes suficientes, documentação sólida e permite criar ISOs personalizadas com live-build.

Ferramenta principal

live-build

Ideal para

  • ISO instalável ou live USB.
  • Laptop velho.
  • WriterDeck de uso pessoal.
  • Sistema estável e de baixa manutenção.
  • Projeto que você quer realmente usar, não só estudar.

Vantagens

  • Estável.
  • Fácil de manter.
  • Grande disponibilidade de pacotes.
  • Boa compatibilidade com hardware.
  • Fácil de empacotar ferramentas de escrita, terminal e GUI leve.
  • Menos dor do que Arch, Yocto ou Buildroot.

Desvantagens

  • Pacotes podem ser mais antigos.
  • Customização profunda exige paciência.
  • Menos “minimalista extremo” que Alpine/Buildroot.

Quando escolher

Escolha Debian Live se você quer um writerdeck funcional de verdade.


Opção B — Arch Linux com Archiso

Veredito

Melhor se você quer controle e pacotes recentes.

Por quê

O Archiso é a ferramenta usada para gerar imagens live do Arch Linux. Ele permite montar uma ISO personalizada com pacotes, arquivos, scripts e configurações próprias.

Ferramenta principal

archiso

Ideal para

  • Usuário avançado.
  • Sistema rolling release.
  • Ambiente mais moderno.
  • Setup customizado com Neovim, Wayland, fontes, scripts e ferramentas novas.

Vantagens

  • Pacotes muito recentes.
  • Customização elegante.
  • Ótimo para quem já usa Arch.
  • Boa documentação.
  • AUR, se você aceitar esse nível de bagunça controlada.

Desvantagens

  • Rolling release pode quebrar.
  • Exige mais manutenção.
  • Não é a melhor escolha para um aparelho que precisa “só funcionar”.
  • Menos indicado para distribuir para pessoas leigas.

Quando escolher

Escolha Archiso se o projeto for mais experimental, pessoal e técnico.


Opção C — Ubuntu Server/Minimal com Autoinstall

Veredito

Boa opção se você quer compatibilidade e instalação automatizada, mas eu não escolheria como primeira base de writerdeck.

Por quê

Ubuntu tem enorme compatibilidade e documentação, e o Autoinstall permite instalações automatizadas via configuração YAML.

Ferramenta principal

Ubuntu Autoinstall / Subiquity

Ideal para

  • Instalação automatizada em máquinas diferentes.
  • Hardware mais novo.
  • Pessoas que querem base Ubuntu sem montar tudo manualmente.

Vantagens

  • Muito suporte de hardware.
  • Grande comunidade.
  • Fácil para usuários comuns.
  • Boa base para GUI leve.

Desvantagens

  • Mais pesado.
  • Menos minimalista.
  • Pode trazer mais serviços e “coisas” do que um writerdeck precisa.
  • Snap pode ser irritante se você quer uma experiência enxuta.

Quando escolher

Escolha Ubuntu se compatibilidade for mais importante que elegância.


Opção D — Alpine Linux

Veredito

Excelente para minimalismo, ruim para conforto em laptop.

Por quê

Alpine é pequeno, rápido e simples. Mas usa musl libc e BusyBox, o que pode causar incompatibilidades com alguns programas.

Ferramentas principais

  • mkimage
  • aports
  • Alpine setup scripts

Ideal para

  • Sistema muito leve.
  • Appliance.
  • Boot rápido.
  • Dispositivos fracos.
  • Projeto mais hacker/embedded.

Vantagens

  • Muito leve.
  • Rápido.
  • Ótimo para imagem pequena.
  • Boa filosofia de appliance.

Desvantagens

  • Menos amigável.
  • Menos compatibilidade com certos pacotes.
  • Pode dar trabalho com Wi-Fi, fontes, impressão, GUI e ferramentas mais pesadas.
  • Não é a melhor base se você quer conforto de escrita.

Quando escolher

Escolha Alpine se você quer um sistema pequeno e técnico, não necessariamente o mais confortável.


Opção E — Buildroot

Veredito

Poderoso, mas provavelmente errado para a primeira versão.

Por quê

Buildroot gera toolchain, root filesystem, kernel e bootloader. É ótimo para sistemas embarcados, mas não tem gerenciador de pacotes tradicional e tudo é definido no build.

Ideal para

  • Hardware fixo.
  • Appliance fechado.
  • Dispositivo dedicado.
  • Boot muito rápido.
  • Projeto embedded real.

Vantagens

  • Extremamente customizável.
  • Sistema pequeno.
  • Boot rápido.
  • Controle profundo.

Desvantagens

  • Sem gerenciador de pacotes tradicional.
  • Toda mudança vira rebuild.
  • Péssimo para experimentar rapidamente.
  • Exige muito mais trabalho.
  • Overkill para laptop comum.

Quando escolher

Só escolha Buildroot quando você já souber exatamente o hardware e o conjunto fechado de apps.


Opção F — Yocto Project

Veredito

Profissional, poderoso e provavelmente exagerado.

Por quê

Yocto é usado para criar distribuições Linux customizadas para hardware específico. Ele é muito forte para produto industrial/embedded, mas complexo.

Ideal para

  • Produto comercial.
  • Hardware customizado.
  • Longo ciclo de manutenção.
  • Imagens reproduzíveis e altamente controladas.

Vantagens

  • Muito profissional.
  • Reprodutível.
  • Altamente customizável.
  • Bom para produto final sério.

Desvantagens

  • Complexo.
  • Demorado.
  • Curva de aprendizado alta.
  • Não é divertido se você só quer escrever.

Quando escolher

Escolha Yocto se isso virar produto mesmo. Para protótipo pessoal, não.


2. Minha recomendação de base

Para a versão 1

Use:

Debian Live + XFCE/Openbox/Sway + Neovim + ferramentas de revisão + scripts próprios

Ou, mais direto:

Debian Live + TTY-first + GUI opcional

Essa é a escolha menos glamourosa e mais inteligente.

Para a versão hacker

Use:

Archiso + Sway + Neovim + scripts em shell/Python

Para a versão appliance extrema

Use:

Alpine ou Buildroot

Mas só depois de validar o conceito.


3. Filosofia do sistema

O sistema deve ter três modos:

1. Modo Escrita

Ambiente principal.

Características:

  • Abre direto no editor.
  • Sem navegador.
  • Sem notificações.
  • Sem apps visíveis.
  • Sem dock chamativo.
  • Tema escuro/claro simples.
  • Autosave.
  • Backup local automático.
  • Spellcheck ativado.
  • Exportação rápida.

2. Modo Revisão

Ambiente para revisar texto.

Características:

  • LanguageTool.
  • Vale.
  • Dicionários pt-BR/en-US.
  • Contagem de palavras.
  • Estatísticas de legibilidade.
  • Busca por repetições.
  • Checagem de Markdown.
  • Comparação entre versões.

3. Modo Administração

Ambiente escondido ou protegido.

Características:

  • Wi-Fi.
  • Atualizações.
  • Sincronização.
  • Instalação de pacotes.
  • Backup externo.
  • Configurações.
  • Terminal completo.
  • Browser opcional, mas não no modo escrita.

4. Features essenciais

Editor principal

Opções:

  • Neovim
  • Vim
  • Nano
  • Emacs terminal
  • WordGrinder
  • Apostrophe, se quiser GUI GTK
  • Ghostwriter, se quiser Markdown GUI
  • Typora-like alternativo, se você aceitar apps gráficos

Minha escolha:

Neovim para escrita principal
Ghostwriter ou Apostrophe como modo GUI opcional

Correção ortográfica

Pacotes:

hunspell
hunspell-pt-br
hunspell-en-us
aspell
aspell-pt-br
aspell-en

Features:

  • Correção pt-BR.
  • Correção en-US.
  • Alternância rápida de idioma.
  • Dicionário pessoal.
  • Ignorar termos técnicos.
  • Revisão final via script.

Gramática e estilo

Ferramentas:

  • LanguageTool
  • Vale

Features:

  • Revisão gramatical offline.
  • Regras customizadas de estilo.
  • Detecção de frases longas.
  • Alerta de repetição.
  • Alerta de voz passiva, se fizer sentido.
  • Perfis: literatura, ensaio, artigo, documentação técnica.

Exportação

Ferramenta central:

pandoc

Formatos:

  • Markdown
  • TXT
  • PDF
  • DOCX
  • EPUB
  • HTML

Comandos possíveis:

pandoc texto.md -o texto.pdf
pandoc texto.md -o texto.docx
pandoc texto.md -o texto.epub

Feature diferente:

  • Menu simples chamado exportar
  • O usuário escolhe formato
  • O sistema salva em ~/Textos/exportados

Backup

Features:

  • Backup local por snapshots.
  • Backup para pendrive.
  • Backup para pasta criptografada.
  • Exportação automática ao desligar.
  • Histórico Git opcional.
  • Compressão diária.

Ferramentas:

  • rsync
  • git
  • restic
  • borgbackup
  • rclone, apenas no modo admin
  • age ou gocryptfs para criptografia

Sincronização

No modo escrita, nada de internet.

No modo admin:

  • Syncthing
  • rclone
  • Git remoto
  • Nextcloud
  • USB sync

Minha escolha:

Syncthing no modo admin + backup em pendrive

Segurança

Features:

  • Pasta de textos criptografada.
  • Bloqueio de rede no modo escrita.
  • Firewall simples.
  • Sem navegador no modo escrita.
  • Sem serviços desnecessários.
  • Backup com senha.

Ferramentas:

  • LUKS
  • age
  • gocryptfs
  • ufw/nftables
  • systemd service para bloquear rede

5. GUI básica: sim, vale a pena

Um writerdeck não precisa ser 100% terminal. Isso é fetiche técnico. Uma GUI simples pode tornar o sistema melhor.

GUI mínima recomendada

Opções:

  • Openbox
  • XFCE
  • Sway
  • Labwc
  • Fluxbox
  • Cage/Kiosk com app único

Minha recomendação

Para compatibilidade:

Debian + XFCE minimal

Para estética e modernidade:

Debian/Arch + Sway

Para appliance travado:

Cage + app único

O que a GUI pode ter

  • Tela inicial com botões grandes:
    • Escrever
    • Revisar
    • Exportar
    • Biblioteca
    • Backup
    • Configurações
  • Editor de texto GUI opcional.
  • Visualizador de Markdown.
  • Gerenciador simples de arquivos.
  • Modo escuro/claro.
  • Estatísticas do texto.
  • Painel de foco.
  • Timer Pomodoro opcional.
  • Calendário de sessões.
  • Tela de “sem internet”.

O que a GUI não deve ter

  • Loja de apps.
  • Browser visível no modo escrita.
  • Notificações.
  • Widgets inúteis.
  • Feed.
  • Dock cheio.
  • Integração social.
  • Temas demais.
  • Configurações demais.

6. O diferencial da sua distro

Não tente competir com Linux Mint, Ubuntu, Fedora ou Arch. Você perde.

Diferenciais bons:

1. Offline-first real

A distro deve nascer sem internet no modo principal.

Feature:

write-mode

Esse comando desliga rede, fecha serviços de sync e abre o editor.

2. Modos de operação

Comandos:

write-mode
review-mode
admin-mode
export-mode
backup-mode

Isso é simples, elegante e poderoso.

3. Biblioteca de textos

Estrutura padrão:

~/Textos/
  diario/
  rascunhos/
  ensaios/
  ficcao/
  pesquisa/
  exportados/
  arquivo/

4. Painel de escrita

Um TUI ou GUI simples mostrando:

  • Texto atual.
  • Palavras escritas hoje.
  • Meta diária.
  • Última revisão.
  • Último backup.
  • Estado da rede.
  • Idioma do corretor.

5. Revisão em camadas

Exemplo:

revisar texto.md

O script roda:

  1. Spellcheck.
  2. LanguageTool.
  3. Vale.
  4. Checagem de Markdown.
  5. Relatório final.

6. Exportação bonita

Templates Pandoc:

  • ensaio
  • livro
  • artigo
  • carta
  • manuscrito
  • roteiro
  • documentacao

Comando:

exportar texto.md --tipo livro --formato pdf

7. Sessões de escrita

Comando:

sessao 45

Ele:

  • Desliga internet.
  • Abre editor.
  • Inicia timer.
  • Salva log da sessão.
  • Mostra palavras escritas no final.

8. “Modo máquina de escrever”

Características:

  • Tela cheia.
  • Fonte monoespaçada confortável.
  • Sem barra de tarefas.
  • Sem relógio, ou relógio opcional.
  • Sem alternância fácil para apps.
  • Som de tecla opcional, mas cuidado para não virar brinquedo idiota.

9. Modo pesquisa controlada

Isso seria bem diferente do writerdeckOS puro.

Ideia:

  • Browser só no modo pesquisa.
  • Sessão com tempo limitado.
  • Sites permitidos em whitelist.
  • Sem redes sociais.
  • Salvamento de referências.
  • Exportação para Markdown.

Ferramentas possíveis:

  • Firefox kiosk
  • Nyxt
  • qutebrowser
  • w3m/lynx
  • wallabag
  • Zotero, se aceitar GUI mais pesada

10. Sistema de “fricção intencional”

A internet não precisa ser impossível. Precisa ser chata o suficiente.

Exemplo:

unlock-internet --minutes 20 --reason "pesquisar referências para ensaio"

O sistema registra motivo, ativa rede por 20 minutos e depois bloqueia de novo.


7. Pacotes recomendados

Núcleo

linux-image-amd64
systemd
network-manager
sudo
curl
git
rsync
openssh-client

Escrita terminal

neovim
vim
nano
wordgrinder
tmux
fzf
ripgrep
bat
tree

Ortografia

hunspell
hunspell-pt-br
hunspell-en-us
aspell
aspell-pt-br
aspell-en

Revisão

default-jre
languagetool
vale
markdownlint

Exportação

pandoc
texlive-latex-recommended
texlive-fonts-recommended
texlive-xetex

GUI leve

xfce4
openbox
sway
foot
alacritty
thunar
rofi
zenity
yad

Backup

rsync
borgbackup
restic
rclone
syncthing
age
gocryptfs

Fontes

fonts-firacode
fonts-inter
fonts-noto
fonts-noto-color-emoji
fonts-liberation

8. Estrutura de comandos próprios

Você pode criar comandos simples em /usr/local/bin.

write-mode

#!/usr/bin/env bash
nmcli networking off
systemctl --user stop syncthing 2>/dev/null
cd "$HOME/Textos/rascunhos" || exit 1
nvim

admin-mode

#!/usr/bin/env bash
nmcli networking on
systemctl --user start syncthing 2>/dev/null
echo "Modo admin ativado."

backup-textos

#!/usr/bin/env bash
DEST="/media/$USER/WRITERBACKUP/textos"
mkdir -p "$DEST"
rsync -av --delete "$HOME/Textos/" "$DEST/"
echo "Backup concluído."

exportar-md

#!/usr/bin/env bash
FILE="$1"

if [ -z "$FILE" ]; then
  echo "Uso: exportar-md arquivo.md"
  exit 1
fi

BASE="$(basename "$FILE" .md)"
mkdir -p "$HOME/Textos/exportados"

pandoc "$FILE" -o "$HOME/Textos/exportados/$BASE.pdf"
pandoc "$FILE" -o "$HOME/Textos/exportados/$BASE.docx"

echo "Exportado para PDF e DOCX."

9. Layout de interface possível

Versão terminal

Ao ligar:

╔════════════════════════════════════╗
║            WRITERDECK              ║
╠════════════════════════════════════╣
║  1. Escrever                       ║
║  2. Revisar texto                  ║
║  3. Exportar                       ║
║  4. Biblioteca                     ║
║  5. Backup                         ║
║  6. Modo admin                     ║
╚════════════════════════════════════╝

Ferramentas para isso:

  • Bash
  • Python Textual
  • Dialog
  • Whiptail
  • Gum
  • fzf

Versão GUI simples

Tela inicial:

[ Escrever ] [ Revisar ] [ Exportar ]
[ Biblioteca ] [ Backup ] [ Admin ]

Ferramentas:

  • Python + GTK
  • Python + Qt
  • YAD
  • Zenity
  • Tauri
  • Electron, mas eu evitaria
  • WebView local

Minha escolha:

Python + GTK ou YAD/Zenity para protótipo

10. Roadmap realista

Versão 0.1 — Script em cima do Debian

Objetivo: validar fluxo.

Fazer:

  • Instalar Debian minimal.
  • Instalar Neovim, Pandoc, Hunspell, Aspell.
  • Criar pasta ~/Textos.
  • Criar scripts write-mode, backup-textos, exportar-md.
  • Bloquear rede no modo escrita.

Não faça ISO ainda.

Versão 0.2 — Ambiente visual básico

Fazer:

  • Adicionar XFCE ou Openbox.
  • Criar tela inicial simples.
  • Adicionar Ghostwriter/Apostrophe.
  • Criar tema visual.
  • Configurar autologin.

Versão 0.3 — ISO personalizada

Fazer:

  • Criar Debian Live com live-build.
  • Incluir pacotes.
  • Incluir scripts.
  • Incluir usuário padrão.
  • Testar em VM.
  • Testar em laptop real.

Versão 0.4 — Revisão textual

Fazer:

  • Integrar LanguageTool.
  • Integrar Vale.
  • Criar comando revisar.
  • Gerar relatório de revisão.

Versão 0.5 — Produto usável

Fazer:

  • Backup robusto.
  • Criptografia.
  • Exportação por menu.
  • Documentação.
  • Instalador simples.
  • Atualização controlada.

11. O que pode ter de diferente

Ideias fortes

  • Modo escrita sem internet por padrão.
  • “Permissão temporária” para internet.
  • Exportação bonita com Pandoc.
  • Revisão offline em português e inglês.
  • Histórico de sessões de escrita.
  • Metas de palavras.
  • Backup obrigatório antes de desligar.
  • Biblioteca organizada automaticamente.
  • Interface que parece máquina dedicada, não desktop Linux genérico.
  • Perfis de escrita:
    • diário
    • romance
    • ensaio
    • artigo
    • roteiro
    • documentação técnica
  • Tema visual próprio.
  • Boot direto no texto mais recente.
  • “Abrir projeto atual”.
  • Sistema de snapshots antes de cada revisão.
  • Botão físico ou atalho para backup/exportação.
  • Modo “pesquisa controlada” com whitelist.

Ideias ruins

  • Criar package manager próprio.
  • Criar editor próprio logo no início.
  • Criar distro do zero.
  • Começar por Yocto sem necessidade.
  • Colocar IA local antes do fluxo básico funcionar.
  • Encher de apps.
  • Fazer um desktop Linux comum com papel de parede bonito.
  • Depender de cloud para salvar texto.
  • Não ter backup.
  • Não ter exportação DOCX/PDF.
  • Tentar agradar todo mundo.

12. Arquitetura recomendada

Nome conceitual

Murad WriterDeck Linux

Ou algo menos pessoal:

Scriptorium OS

Stack recomendada

Base: Debian Stable
Imagem: Debian Live / live-build
Interface: TTY-first + XFCE/Openbox opcional
Editor: Neovim
Editor GUI opcional: Ghostwriter ou Apostrophe
Correção: Hunspell + Aspell
Gramática: LanguageTool
Estilo: Vale
Exportação: Pandoc
Backup: rsync + Borg/Restic
Sync: Syncthing somente no modo admin
Criptografia: LUKS ou gocryptfs

Fluxo de boot

Liga máquina
↓
Autologin
↓
Menu WriterDeck
↓
Escolhe Escrever / Revisar / Exportar / Admin
↓
Sistema aplica modo correspondente

13. Decisão final

Se você quer realmente construir isso, a melhor sequência é:

  1. Criar um script pack para Debian.
  2. Usar por uma semana.
  3. Corrigir o fluxo.
  4. Só depois criar ISO.
  5. Só depois pensar em nome, logo, site e “distro”.

A parte brutalmente honesta:

Se você começar criando a distro, você provavelmente vai gastar energia no lugar errado.
Se começar criando o fluxo de escrita, em poucos dias você já terá algo útil.

A distro deve ser consequência do fluxo, não o contrário.


14. Fontes e referências

Related documents

Projeto de distro própria para WriterDeck Linux · Murad Library