mirror of
https://github.com/pi-hole/pi-hole.git
synced 2024-11-27 16:43:16 +00:00
Do not touch list files as this creates them. This causes issues down the line in the Heisenberg compensator
Signed-off-by: DL6ER <dl6er@dl6er.de>
This commit is contained in:
parent
553c0f7f07
commit
d9288b896e
1 changed files with 15 additions and 3 deletions
18
gravity.sh
18
gravity.sh
|
@ -358,7 +358,7 @@ gravity_DownloadBlocklists() {
|
||||||
unset sources
|
unset sources
|
||||||
fi
|
fi
|
||||||
|
|
||||||
local url domain str target compression adlist_type
|
local url domain str target compression adlist_type directory
|
||||||
echo ""
|
echo ""
|
||||||
|
|
||||||
# Prepare new gravity database
|
# Prepare new gravity database
|
||||||
|
@ -423,8 +423,18 @@ gravity_DownloadBlocklists() {
|
||||||
saveLocation="${piholeDir}/list.${id}.${domain}.${domainsExtension}"
|
saveLocation="${piholeDir}/list.${id}.${domain}.${domainsExtension}"
|
||||||
activeDomains[$i]="${saveLocation}"
|
activeDomains[$i]="${saveLocation}"
|
||||||
|
|
||||||
# Check if we can write to the save location file
|
# Check if we can write to the save location file without actually creating
|
||||||
if ! touch "${saveLocation}" 2>/dev/null; then
|
# it (in case it doesn't exist)
|
||||||
|
# First, check if the directory is writable
|
||||||
|
directory="$(dirname -- "${saveLocation}")"
|
||||||
|
if [ ! -w "${directory}" ]; then
|
||||||
|
echo -e " ${CROSS} Unable to write to ${directory}"
|
||||||
|
echo " Please run pihole -g as root"
|
||||||
|
echo ""
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
# Then, check if the file is writable (if it exists)
|
||||||
|
if [ -e "${saveLocation}" ] && [ ! -w "${saveLocation}" ]; then
|
||||||
echo -e " ${CROSS} Unable to write to ${saveLocation}"
|
echo -e " ${CROSS} Unable to write to ${saveLocation}"
|
||||||
echo " Please run pihole -g as root"
|
echo " Please run pihole -g as root"
|
||||||
echo ""
|
echo ""
|
||||||
|
@ -464,6 +474,7 @@ compareLists() {
|
||||||
if ! sha1sum --check --status --strict "${target}.sha1"; then
|
if ! sha1sum --check --status --strict "${target}.sha1"; then
|
||||||
# The list changed upstream, we need to update the checksum
|
# The list changed upstream, we need to update the checksum
|
||||||
sha1sum "${target}" >"${target}.sha1"
|
sha1sum "${target}" >"${target}.sha1"
|
||||||
|
fix_owner_permissions "${target}.sha1"
|
||||||
echo " ${INFO} List has been updated"
|
echo " ${INFO} List has been updated"
|
||||||
database_adlist_status "${adlistID}" "1"
|
database_adlist_status "${adlistID}" "1"
|
||||||
else
|
else
|
||||||
|
@ -473,6 +484,7 @@ compareLists() {
|
||||||
else
|
else
|
||||||
# No checksum available, create one for comparing on the next run
|
# No checksum available, create one for comparing on the next run
|
||||||
sha1sum "${target}" >"${target}.sha1"
|
sha1sum "${target}" >"${target}.sha1"
|
||||||
|
fix_owner_permissions "${target}.sha1"
|
||||||
# We assume here it was changed upstream
|
# We assume here it was changed upstream
|
||||||
database_adlist_status "${adlistID}" "1"
|
database_adlist_status "${adlistID}" "1"
|
||||||
fi
|
fi
|
||||||
|
|
Loading…
Reference in a new issue