Hypatia/scripts/0clamav.sh
Tad 1c29038125
Directly load the pre-processed bloom filters
No more conversion, much quicker loading, much smaller downloads

Signed-off-by: Tad <tad@spotco.us>
2023-12-21 23:30:41 -05:00

48 lines
1.4 KiB
Bash

#!/bin/sh
#License: GPL-3.0
#Description: Hypatia conversion script for ClamAV databases (GPL-2.0)
#sudo -i freshclam
origDir="$PWD"
mkdir /tmp/mss
mkdir /tmp/mss/optimized
mkdir /tmp/mss/processed
cd /tmp/mss
cp /var/lib/clamav/main.c*d .
cp /var/lib/clamav/daily.c*d .
sigtool -u main.c*d
sigtool -u daily.c*d
#MD5
grep "Andr\\." main.hdb >> Android.hdb
grep "Andr\\." daily.hdb >> Android.hdb
#grep "Java\\." main.hdb >> Android.hdb
#grep "Java\\." daily.hdb >> Android.hdb
grep "Unix\\." main.hdb >> Android.hdb
grep "Unix\\." daily.hdb >> Android.hdb
grep "Multios\\." main.hdb >> Android.hdb
grep "Multios\\." daily.hdb >> Android.hdb
#SHA
grep "Andr\\." main.hsb >> Android.hsb
grep "Andr\\." daily.hsb >> Android.hsb
#grep "Java\\." main.hsb >> Android.hsb
#grep "Java\\." daily.hsb >> Android.hsb
grep "Unix\\." main.hsb >> Android.hsb
grep "Unix\\." daily.hsb >> Android.hsb
grep "Multios\\." main.hsb >> Android.hsb
grep "Multios\\." daily.hsb >> Android.hsb
databases=("Android.hdb" "Android.hsb" "main.hdb" "main.hsb" "daily.hdb" "daily.hsb");
for db in "${databases[@]}"
do
#remove unnecessary bits to reduce file size and app memory usage
python "$origDir"/optimize.py "$db" >> optimized/"$db";
#sort to increase compression efficiency
sort -k3 -t ":" --parallel=$(nproc) --output processed/"$db" optimized/"$db";
done;
gzip -k /tmp/mss/*.hdb
gzip -k /tmp/mss/*.hsb
gzip -k /tmp/mss/processed/*.hdb
gzip -k /tmp/mss/processed/*.hsb