summaryrefslogtreecommitdiff
path: root/tools/copland/scripts/preview.sh
blob: c82bec8fbcfdd66f5fce5384b062b9241629af78 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/usr/bin/env bash
set -euo pipefail

root_dir=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)
source_root=$(CDPATH= cd -- "$root_dir/../.." && pwd)
source "$root_dir/scripts/fossil-env.sh"
preview_dir="$source_root/.copland-preview"
nix_repository="$source_root/.repository/nix.fossil"
port=${PORT:-8080}

require_org_fossil
"$root_dir/scripts/create-demo.sh" "$preview_dir"
verify_org_mime "$preview_dir/repositories/alpha.fossil"

if [[ ! -f "$nix_repository" ]]; then
  printf 'Nix documentation repository not found: %s\n' "$nix_repository" >&2
  exit 1
fi
ln -sfn "$nix_repository" "$preview_dir/repositories/nix.fossil"
verify_org_mime "$preview_dir/repositories/nix.fossil"

printf 'Copland preview: http://127.0.0.1:%s/\n' "$port"
printf 'Nix wiki:       http://127.0.0.1:%s/nix/wiki\n' "$port"
printf 'Press Ctrl-C to stop the server.\n'
FOSSIL_REPOLIST_TITLE=Copland exec "$FOSSIL" server \
  --localhost \
  --localauth \
  --port "$port" \
  --repolist \
  --skin copland \
  "$preview_dir/repositories"