---
title: Getting Started
description: Bootstrap the Ubuntu server and keep it in sync.
---

How I stand up the [Ubuntu Server](https://ubuntu.com/server) machine. Personal setup; not a turnkey install for other people. `dot init` still assumes Omarchy and pacman in places, so expect gaps until the [open items](/server/overview/#still-open) are done.

## Bootstrap

```bash
# Public source of truth; stow packages live under this checkout
git clone --branch distro/ubuntu-server git@github.com:timmo001/dotfiles.git ~/.config/dotfiles

# Private overlay clone during init needs an authenticated gh
gh auth status || gh auth login

cd ~/.config/dotfiles

# Allow this repo's mise.toml, then install the pinned toolchain
mise trust
mise install

# Build the checked-out binary before it is on PATH
mise run dot:build

# First-use setup (pulls private overlay when gh auth works)
~/.config/dotfiles/scripts/.local/bin/dot init
```

## Ongoing

```bash
# Health checks for the local setup
dot doctor

# Pull, stow, and rebuild
dot update
```

Command detail is in `dot --help` and the [command reference](/dot/commands/).
