ARCH R

Atualizando o ArchR

Como atualizar para uma nova release sem perder seus saves e configurações

Há duas formas de atualizar. O archr-update atualiza o sistema instalado no lugar, com o pacman. Regravar o cartão escreve uma imagem nova inteira e é a opção mais segura quando uma release muda o bootloader ou o layout de partições.

Nos dois casos a sua partição /storage sobrevive: saves, ROMs e configurações não são tocados por uma regravação, só BOOT e ROOT são sobrescritas.


Atualização no lugar

O archr-update é um wrapper em volta do pacman. Ele aponta o /etc/pacman.d/mirrorlist para o repositório de pacotes do ArchR publicado no GitHub Releases e roda o sync e o upgrade de sempre:

archr-update check    # sincroniza os metadados e lista o que está pendente
archr-update update   # pacman -Syu
archr-update info     # versão atual, canal e mirror

O canal vem de updates.branch no /storage/.config/system/configs/system.cfg e pode ser stable, next ou dev. Qualquer outro valor cai para stable. Cada canal corresponde a uma tag de release em github.com/archr-linux/archr-repo: repo-stable, repo-next, repo-dev.

A primeira execução em uma instalação nova baixa uma semente do banco de pacotes local. Uma imagem recém-gravada não carrega banco do pacman, então sem essa semente o pacman não teria com o que comparar e toda verificação diria que não há nada a fazer.

A atualização precisa de rede funcionando; o archr-update confere isso antes e para com uma mensagem se não houver.


Fluxo de regravação

Faça backup do que não dá para recriar facilmente

A /storage sobrevive à regravação, mas uma cópia não custa nada. Via SSH:

# do seu PC
scp -r root@archr.local:/storage/roms/savestates  ~/r36s-backup/savestates/
scp -r root@archr.local:/storage/.config     ~/r36s-backup/config/
scp -r root@archr.local:/storage/roms/screenshots ~/r36s-backup/screenshots/

ROMs são grandes; você não precisa fazer backup delas, a menos que tenha curado metadados em gamelist.xml por sistema.

Desligue de forma limpa

ES → botão de power (segurar) → Power Off. Garante que qualquer escrita pendente chegue ao SD.

Grave a nova imagem

Usando o ArchR Flasher, escolha a nova imagem e o mesmo console e overlay de painel que usou antes. O Flasher limpa o cartão e grava do zero, e é justamente isso que dá a instalação limpa.

Alternativa: dd if=ArchR-R36S.aarch64-DATA-*.img of=/dev/sdX bs=4M conv=fsync status=progress.

Primeiro boot

O primeiro boot da nova imagem redimensiona a partição de storage para usar o cartão inteiro de novo e reinicia. O segundo boot vê que /storage/.config já tem seus dados e pula a recriação, então ROMs, saves e temas customizados continuam como estavam.

Verifique

O ES dá boot. Sua biblioteca de ROMs está lá. Seus save-states carregam. Suas configurações customizadas estão intactas.

Se algo parecer estranho, restaure seletivamente a partir do backup que você fez no passo 1.


O que é resetado por uma regravação

CaminhoSobrevive à regravação?
/ (ROOT, ext4)Não. Substituído
/flash (BOOT, FAT32)Não. Substituído
/storage/roms/Sim. Sobrevive
/storage/roms/savestates/Sim. Sobrevive
/storage/roms/screenshots/Sim. Sobrevive
/storage/.config/Sim. Sobrevive
/storage/.cache/services/*.confSim. Sobrevive (seus serviços habilitados persistem)
Overrides de tema em /storage/.emulationstation/themes/Sim. Sobrevive

Dito de outra forma: tudo que você colocou no SD como usuário sobrevive. Tudo que vem da imagem é substituído.

O único caso de borda: se você customizou algo diretamente em /etc/ ou /usr/ (via SSH, como root), isso some, porque esses caminhos vivem no ROOT. Customizações persistentes pertencem a /storage/.config/ ou /etc/profile.d/ (que o 045-userconfig regenera a partir de /storage/.config/profile.d/ se existir).


Voltando para uma versão anterior

Mesmo fluxo na ordem inversa: regrave uma imagem mais antiga. Dados em /storage criados em um ArchR mais novo podem ter deltas no schema de configuração que o mais antigo não reconhece. Geralmente caem para os defaults sem problemas, mas em casos extremos (settings renomeadas) você pode precisar re-acionar algumas opções.


Update manual (sem o Flasher)

Se você só tem um .img.gz mais antigo:

# descompactar
gunzip ArchR-R36S.aarch64-*.img.gz

# gravar
sudo dd if=ArchR-R36S.aarch64-*.img of=/dev/sdX bs=4M conv=fsync status=progress

# (opcional) verificar checksum
sha256sum -c ArchR-R36S.aarch64-*.img.gz.sha256

O Flasher adicionalmente apaga as assinaturas FAT do BOOT (1 MB no início + 1 MB no fim do disco) antes do dd, o que evita que tabelas de partição antigas confundam o U-Boot. O dd manual não faz isso. Se aparecer tela preta após regravar manualmente, rode:

sudo dd if=/dev/zero of=/dev/sdX bs=1M count=1
sudo dd if=/dev/zero of=/dev/sdX bs=1M count=1 \
        seek=$(( $(blockdev --getsize64 /dev/sdX) / 1024 / 1024 - 1 ))

Depois refaça o dd da imagem.


Qual usar

Use o archr-update no caso comum: versões novas de emuladores, correções, pacotes novos.

Regrave quando as notas da release disserem que o bootloader, o kernel ou o layout de partições mudou, porque isso está fora do que o pacman substitui. Regravar também devolve uma partição ROOT limpa se você andou editando arquivos de sistema na mão.

On this page