Ir para o conteúdo
Promovaweb

Plugin Time Machine no Omarchy

Em destaque

O que o Plugin Time Machine faz no seu Omarchy

  1. Agende cópias noturnas da pasta pessoal com o restic
  2. Acompanhe a última cópia pelo ícone da barra
  3. Guarde várias datas em vez de só a mais recente
  4. Restaure arquivos e pastas para ~/Restored
  5. Envie a senha do backup para o 1Password
Time Machinejankeesvw.time-machine
Tipo
Widget da barra
Categoria
Sistema
Origem
Comunidade · jankeesvw/omarchy-time-machine
Mantenedor
Jankees
Licença
MIT
Versão
1.1.0
Compatibilidade
Omarchy 4 com shell Quickshell e o restic instalado no sistema, porque é ele que copia os arquivos. O destino aceita caminho local, SFTP, servidor REST, S3 e qualquer backend que o rclone alcance. Referência do portal: Omarchy 4.5.0-rc1.
Tags
#barra#sistema#segurança
Painel do Time Machine aberto sobre o desktop, com os destinos configurados, o horário da última cópia e o botão de restaurar arquivos.
Repositório jankeesvw/omarchy-time-machine (MIT)

Instalar e manter

  1. Instale o plugin

    O Omarchy clona o repositório do plugin e valida os arquivos no seu computador. Só depois ele instala e ativa o plugin.

    Instalar
    omarchy plugin add https://github.com/jankeesvw/omarchy-time-machine.git --enable
  2. Atualize quando sair uma versão nova

    Rode este comando para trazer as mudanças publicadas no repositório do plugin.

    Atualizar
    omarchy plugin update jankeesvw.time-machine
  3. Remova quando não precisar mais

    O comando retira o plugin do seu Omarchy. Use o mesmo identificador mostrado no cartão de detalhes.

    Remover
    omarchy plugin remove jankeesvw.time-machine

O Time Machine transforma a sua pasta pessoal em uma rotina de backup com o restic. Ele copia o home toda noite para o destino escolhido, guarda todas as cópias em vez de apenas a mais recente e deixa na barra do Omarchy uma resposta única: quando os seus arquivos foram copiados pela última vez.

Na maior parte dos dias essa resposta é entediante, algo como “hoje, 03:00”. Quando a cópia falha, o ícone fica vermelho até você olhar. Um widget que fala o tempo todo vira ruído, então o plugin fica quieto enquanto nada quebra.

Antes de instalar

O plugin precisa do restic instalado no sistema. É ele que faz a cópia de verdade e o plugin cuida do agendamento, do painel e do histórico. O README indica o pacote do Arch:

Terminal
sudo pacman -S restic

Você também precisa de um destino: um disco externo, um NAS por SSH ou um bucket na nuvem. O restic grava em qualquer lugar acessível por caminho local, SFTP, servidor REST, S3, MinIO, Wasabi, Backblaze B2, Azure Blob, Google Cloud Storage, Alibaba OSS, OpenStack Swift ou outro backend que o rclone alcance.

Instale e aponte o destino

Terminal
omarchy plugin add https://github.com/jankeesvw/omarchy-time-machine.git --enable
omarchy bar move jankeesvw.time-machine --section right

Clique no ícone da barra e escolha Create Configuration. O plugin grava um arquivo inicial e abre no seu editor, já com um exemplo pronto:

{
"source": "~",
"destinations": [
{
"name": "backup-drive",
"display_name": "Backup drive",
"repository": "/run/media/CHANGE-ME/backup/restic",
"schedule": "*-*-* 03:00:00"
}
]
}

Troque repository pelo caminho do seu destino. source define o que entra na cópia e schedule segue o formato de timer do systemd: *-*-* 03:00:00 significa toda madrugada às três. Sem schedule, aquele destino só roda quando você aperta o botão no painel.

Para usar mais de um destino, acrescente outros objetos na lista. Cada um ganha horário próprio, histórico próprio e uma linha no painel.

Escolha a senha e ligue o agendamento

A cópia é cifrada e não há como desligar isso. O preço é uma senha, guardada nesta máquina para você não digitá-la a cada noite:

Terminal
omarchy-time-machine key set --dest backup-drive
omarchy-time-machine init --dest backup-drive
omarchy-time-machine install

O comando vive dentro do plugin, em ~/.config/omarchy/plugins/jankeesvw.time-machine/bin/, e não entra no seu PATH. Para uso frequente, crie um alias no ~/.bashrc.

A senha fica no seu home, que é justamente o que entra na cópia. Leve a senha para um gerenciador de senhas ou para um papel guardado fora do computador:

Terminal
omarchy-time-machine key show --dest backup-drive

Para o 1Password existe um atalho, que grava a chave no cofre com uma nota dizendo qual destino ela abre:

Terminal
omarchy-time-machine key save-1password --dest backup-drive

Volte no tempo e recupere arquivos

Abra o painel e escolha Restore Files. Escolha um dia e navegue pelas pastas como faria no gerenciador de arquivos: as setas movem, Enter abre a pasta e digitar filtra a lista. Ao trocar de dia, você continua na mesma pasta, o que torna simples comparar segunda e domingo.

Tudo o que você restaura vai para ~/Restored/, não por cima dos arquivos atuais. Você move para o lugar definitivo depois de conferir o que substitui. Ao terminar, uma notificação abre o gerenciador com o arquivo já selecionado.

Ajuste destinos e horários

Só name e repository são obrigatórios. O resto tem padrão:

Chave Padrão Para que serve
source o seu home o que entra na cópia. Aceita lista, como ["~", "/etc"]
exclude_file excludes.txt ao lado da configuração o que fica de fora, como caches e imagens de máquina virtual
retention 7 diárias, 4 semanais, 12 mensais, 3 anuais até onde o histórico volta
pre_command nenhum comando que prepara o destino antes da cópia
on_failure_command nenhum comando disparado quando a cópia falha

pre_command resolve o caso do disco que precisa ser montado ou do NAS que dorme. Qualquer coisa que você colocar ali roda antes de cada cópia, então mantenha o comando rápido e seguro de repetir.

Depois de mudar um horário, rode omarchy-time-machine install outra vez. Para trocar o relógio de 24 horas por AM e PM, ajuste a entrada do widget em ~/.config/omarchy/shell.json com "timeFormat": "h:mm AP".

Remova o plugin

Terminal
omarchy plugin remove jankeesvw.time-machine

O comando retira o widget e deixa o agendamento, as configurações e a senha no lugar, porque tirar o widget não deve tirar o seu acesso às cópias. Para apagar o resto:

Terminal
systemctl --user disable --now 'omarchy-time-machine@*.timer'
rm -f ~/.config/systemd/user/omarchy-time-machine*
rm -rf ~/.config/omarchy-time-machine ~/.local/state/omarchy-time-machine

O primeiro diretório guarda a senha das cópias, e apagar sem uma cópia dela em outro lugar torna os backups ilegíveis para qualquer um. As cópias em si ficam onde estão e seguem abrindo para qualquer máquina com a senha.