2 # I, Ian Kelling, follow the GNU license recommendations at
3 # https://www.gnu.org/licenses/license-recommendations.en.html. They
4 # recommend that small programs, < 300 lines, be licensed under the
5 # Apache License 2.0. This file contains or is part of one or more small
6 # programs. If a small program grows beyond 300 lines, I plan to switch
9 # Copyright 2024 Ian Kelling
11 # Licensed under the Apache License, Version 2.0 (the "License");
12 # you may not use this file except in compliance with the License.
13 # You may obtain a copy of the License at
15 # http://www.apache.org/licenses/LICENSE-2.0
17 # Unless required by applicable law or agreed to in writing, software
18 # distributed under the License is distributed on an "AS IS" BASIS,
19 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20 # See the License for the specific language governing permissions and
21 # limitations under the License.
24 if [ -z "$BASH_VERSION" ]; then echo "error: shell is not bash" >&2; exit 1; fi
25 source /a
/bin
/bash-bear-trap
/bash-bear
27 source /a
/bin
/bash_unpublished
/source-state
28 if [[ $HOSTNAME != "$MAIL_HOST" ]]; then
32 # i had a phone which deleted all my contacts in radicale, but kept them
33 # locally. then the phone died months later, and i had no backup of
34 # recent contacts. This checks that those files didnt get deleted or
35 # zerod out, by picking an amount that we dont expect to go below
36 # anytime soon as of 2022.
38 count
=$
(find /o
/radicale
/collections
-type f |
grep -cv cache
)
40 if (( count
< 220 )); then
41 echo "unexpected file count=$count < 220"
44 size
=$
(du
-s /o
/radicale |
awk '{print $1}')
46 if (( size
< 2000 )); then
47 echo "unexpected kb size=$size < 2000"