blob: 488ab874ebb4b1a2bfd953577b6cafaec6ff3e6e (
plain)
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
35
36
37
38
39
40
|
#!/bin/sh -ef
# Generate checksums
parser_definition() {
setup REST help:usage -- "usage: ${0##*/} [-s] [pkg...]"
msg -- '' 'Options:'
flag sha -s -- "Generate checksums using the depracated sha256 algorithm"
global_options
}
if [ -f ./cpt-lib ]; then . ./cpt-lib; else . cpt-lib; fi
[ "$1" ] || { set -- "${PWD##*/}"; CPT_PATH=${PWD%/*}:$CPT_PATH ;}
create_cache
for pkg; do pkg_lint "$pkg" c; done
for pkg; do pkg_sources "$pkg" c; done
for pkg; do
# Do not generate checksums if the 'sources' file is empty or it doesn't
# exist.
repo_dir=$(pkg_find "$pkg")
[ -s "$repo_dir/sources" ] || {
log "$pkg" "No 'sources' file, skipping checksums"
continue
}
# $sha is defined by the parser.
# shellcheck disable=2154
pkg_checksums "$pkg" "${sha:+sh256}" | {
if [ -w "$repo_dir" ]; then
tee "$repo_dir/checksums"
else
log "$pkg" "Need permissions to generate checksums"
user=$(_stat "$repo_dir") as_root tee "$repo_dir/checksums"
fi
}
log "$pkg" "Generated checksums"
done
|