summaryrefslogtreecommitdiff
path: root/tools/copland/scripts/install-repolist.sh
blob: d59f68818186c6b853637473cef4d84b29d91e37 (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
32
33
34
#!/usr/bin/env bash
set -euo pipefail

root_dir=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd)
source "$root_dir/scripts/fossil-env.sh"
config_file="$root_dir/dist/copland-skin.config"

if [[ $# -ne 1 ]]; then
  printf 'Usage: %s REPOSITORY_DIRECTORY\n' "$0" >&2
  exit 2
fi

repository_dir=$1
control_repository="$repository_dir/00-copland-skin.fossil"

if [[ ! -d "$repository_dir" ]]; then
  printf 'Repository directory does not exist: %s\n' "$repository_dir" >&2
  exit 1
fi
if [[ ! -f "$config_file" ]]; then
  printf 'Built skin not found. Run make build first.\n' >&2
  exit 1
fi

if [[ ! -f "$control_repository" ]]; then
  "$FOSSIL" init "$control_repository" >/dev/null
fi

"$FOSSIL" configuration import "$config_file" -R "$control_repository"
"$FOSSIL" settings repolist-skin 2 --exact -R "$control_repository"
"$FOSSIL" sql -R "$control_repository" \
  "REPLACE INTO config(name,value,mtime) VALUES('project-name','Copland',unixepoch());"

printf 'Configured hidden repository-list skin: %s\n' "$control_repository"