Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Restore From Backup

The following describes how to completely restore my Chromebook (Miller) from backup, and documents all its configuration.

Hostname

Set hostname: Settings > About > Device Name: miller

Access Backup

  1. Install Pika Backup.
  2. Access backups: Files > Network > Server address: ssh://caleb@192.168.1.79
  3. Setup Backup > Use Existing Repository > Location on Disk > caleb@192.168.1.79 > Ctrl+L > sftp://caleb@192.168.1.79/mnt/husky/archives/backups/backup-miller-caleb/ > Select
  4. Enter password, follow instructions.
  5. Archives > [Most recent date] > Browse saved files

From how on, the directory shown under "Browse saved files" will be indicated by the placeholder $backup.

Snikket

  1. Copy $backup/.var/app/im.dino.Dino/ to ~/.var/app/.
  2. Install Dino.
  3. Launch Dino and pin Dino to dash.

Firefox

  1. $ rm -rf ~/.mozilla/
  2. Move $backup/.mozilla/ to home directory.
  3. Launch Firefox.

GPG and SSH.

  1. Move $backup/.gnupg/ to home directory.
  2. Move $backup/.bashrc to home directory.
  3. $ echo UPDATESTARTUPTTY | gpg-connect-agent

Password Manager

  1. Move $backup/.password_store/ to home directory.
  2. $ sudo dnf install pass

GNU Emacs

  1. $ sudo dnf install emacs
  2. Move $backup/.emacs.d/ to home directory.

Email

  1. Move $backup/.var/app/org.gnome.Evolution/ to ~/.var/app/.
  2. Install Evolution (from Flathub).
  3. Settings > Online Accounts > Email Server
  4. Email: csh@bluehome.net
  5. Enter password from $ pass show Email/bluehome.net
  6. Sign In
  7. Launch Evolution and pin to dash.
  8. Menu > Edit > Accounts > csh@bluehome.net > Edit
  9. Add New Signature: Plain Text
  10. Defaults > Archive Folder: Archives > OK

Radio

  1. Move Shortwave's folder to ~/.var/app/.
  2. Install Shortwave from Flathub.
  3. Launch Shortwave and pin to dash.

Gemini Browser

  1. Move Lagrange's folder to ~/.var/app/.
  2. Install Lagrange from Flathub.

IRC

  1. Move Halloy's folder to ~/.var/app/.
  2. Install Halloy from Flathub.

Or build from source.

$ sudo dnf install openssl-devel alsa-lib-devel
$ git checkout 2025.06

Make some changes in irc/Cargo.toml:

arti-client = { version = "0.26", default-features = true, features = ["onion-service-client", "rustls", "compression", "tokio", "static-sqlite"] }

Then:

$ cargo build --release --all-features

Put the following .desktop file in ~/.local/share/applications/:

[Desktop Entry]
Name=Halloy
Comment=IRC client written in Rust
Type=Application
Keywords=IRC;IM;Chat;
Categories=Network;IRCClient;
Exec=/home/caleb/.local/src/halloy/target/release/halloy %U
Icon=org.squidowl.halloy
StartupWMClass=org.squidowl.halloy
MimeType=x-scheme-handler/irc;x-scheme-handler/ircs;x-scheme-handler/halloy;
Terminal=false

Don't forget to clone and build Halloy in ~/.local/src/.

YouTube

  1. Move tubefeeder folder to ~/.var/app/.
  2. Install Pipeline from Flathub.

Desktop

  • Displays > Night Light > On
  • Power > Power Saving > Automatic Suspend > When Plugged In > Off
  • Power > General > Show Battery Percentage > On
  • System > Date & Time > Time Format > 24-hour
  • System > Date & Time > Clock & Calendar > Week Day > On
  • Keyboard > Add Input Source > Russian, Hebrew
  • Settings > Users > Change Avatar > Select A File... > CH.png

Other Apps

  • Picture Of The Day

Scripts

  • Move $backup/.local/bin/ to home directory.

Fonts

  • Move $backup/.local/share/fonts/ to home directory.

Rust

$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
$ cargo install mdbook just bat

Hosts

Fix /etc/hosts so that calebh.top can be accessed from within the home network. The home network is subject to NAT hairpinning.

$ sudo emacs -nw /etc/hosts

Add to /etc/hosts file:

# Loopback entries; do not change.                                              
# For historical reasons, localhost precedes localhost.localdomain:             
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
# See hosts(5) for proper format and other examples:                            
# 192.168.1.10 foo.example.org foo                                              
# 192.168.1.13 bar.example.org bar                                              
192.168.1.79 calebh.top