Adam Warner
bb1a6243d6
Merge pull request #3669 from pi-hole/release/v5.1.2
...
Release/v5.1.2 to development
4 years ago
Christian König
27399a762a
Check for compression onyl once and print result
...
Signed-off-by: Christian König <ckoenig@posteo.de>
4 years ago
DL6ER
87da9084e6
Use compression (if available) when downloading the ad lists.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
4 years ago
DL6ER
527fc3c5cf
Also pidof -> pgrep in gravity.sh
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
4 years ago
Christian König
73963fecda
Use gravity's adlist_id in filename when saving downloaded adlist locally
...
Signed-off-by: Christian König <ckoenig@posteo.de>
4 years ago
Peter Lowe
dd205c55c1
Updated gravity.sh to allow semicolons
...
Signed-off-by: Peter Lowe <pgl@yoyo.org>
4 years ago
Adam Warner
9e96ff37de
Fix merge conflicts
...
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
4 years ago
DL6ER
288d487fc0
Allow ( and ) in adlist URLs.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
4 years ago
DL6ER
fa57c457f3
Boldify number of unique domains as this is the actually interesting number
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
Dan Schaper
0f20470a38
Merge pull request #3269 from pi-hole/tweak/hosts-comments
...
Add support for comments in HOSTS-like files
5 years ago
DL6ER
982c1b0059
Merge branch 'release/v5.0' into development
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
Adam Warner
7d19ee1b25
validate blocklist URL before adding to the database ( #3237 )
...
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
Co-authored-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
7b15a88dc4
Strip comments from downloaded lists instead of discarding lines with comments altogether
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
XhmikosR
7b8611ced0
Assorted typo fixes. ( #3126 )
...
* Assorted typo fixes.
Signed-off-by: XhmikosR <xhmikosr@gmail.com>
Co-authored-by: Dan Schaper <dan.schaper@pi-hole.net>
5 years ago
DL6ER
3dd05606ca
Call it the received number of domains instead of the imported number as importing does only happen a bit later. Only show the number of invalid domains if there are invalid domains.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
1e8bfd33f5
Improve output
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
8131b5961c
Add comments to the code describing the changes.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
81d4531e10
Implement performant list checking routine.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
050e2963c7
Remove redundant code.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
3c09cd4a3a
Experimental output of matching line from shown warnings.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
839fe32042
Fix issue with missing newline at the end of adlists ( #3144 )
...
* Also display non-fatal warnings during the database importing. Previously, we have only show warnings when there were also errors (errors are always fatal).
Signed-off-by: DL6ER <dl6er@dl6er.de>
* Ensure there is always a newline on the last line.
Signed-off-by: DL6ER <dl6er@dl6er.de>
* Stickler linting
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
* Move sed command into subroutine to avoid code duplication.
Signed-off-by: DL6ER <dl6er@dl6er.de>
* Also unify comments.
Signed-off-by: DL6ER <dl6er@dl6er.de>
* Also unify comments.
Signed-off-by: DL6ER <dl6er@dl6er.de>
Co-authored-by: Dan Schaper <dan@glacialmagma.com>
5 years ago
DL6ER
d14ee26d6a
Merge pull request #3139 from pi-hole/fix/count_before_calling_FTL
...
Fix wrong number of blocking domains shown on the dashboard
5 years ago
DL6ER
52398052e9
Compute number of domains (and store it in the database) BEFORE calling FTL to re-read said value.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
601f9048cd
Merge pull request #3130 from pi-hole/fix/gravity_updated_timestamp
...
Store gravity update timestamp only after database swapping
5 years ago
DL6ER
dc2fce8e1d
Store gravity update timestamp only after database swapping.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
2a5cf221fa
Store number of distinct gravity domains in database after counting.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
10c2dad48a
Improve gravity performance ( #3100 )
...
* Gravity performance improvements.
Signed-off-by: DL6ER <dl6er@dl6er.de>
* Do not move downloaded lists into migration_backup directory.
Signed-off-by: DL6ER <dl6er@dl6er.de>
* Do not (strictly) sort domains. Random-leaf access is faster than always-last-leaf access (on average).
Signed-off-by: DL6ER <dl6er@dl6er.de>
* Append instead of overwrite gravity_new collection list.
Signed-off-by: DL6ER <dl6er@dl6er.de>
* Rename table gravity_new to gravity_temp to clarify that this is only an intermediate table.
Signed-off-by: DL6ER <dl6er@dl6er.de>
* Add timers for each of the calls to compute intense parts. They are to be removed before this finally hits the release/v5.0 branch.
Signed-off-by: DL6ER <dl6er@dl6er.de>
* Fix legacy list files import. It currently doesn't work when the gravity database has already been updated to using the single domainlist table.
Signed-off-by: DL6ER <dl6er@dl6er.de>
* Simplify database_table_from_file(), remove all to this function for gravity lost downloads.
Signed-off-by: DL6ER <dl6er@dl6er.de>
* Update gravity.db.sql to version 10 to have newle created databases already reflect the most recent state.
Signed-off-by: DL6ER <dl6er@dl6er.de>
* Create second gravity database and swap them on success. This has a number of advantages such as instantaneous gravity updates (as seen from FTL) and always available gravity blocking. Furthermore, this saves disk space as the old database is removed on completion.
* Add timing output for the database swapping SQLite3 call.
Signed-off-by: DL6ER <dl6er@dl6er.de>
* Explicitly generate index as a separate process.
Signed-off-by: DL6ER <dl6er@dl6er.de>
* Remove time measurements.
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
8f22203d24
Wait 30 seconds for obtaining a database lock instead of immediately failing if the database is busy.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
948f4a8827
Ensure permissions and ownership of gravity.db are correctly set on each run of pihole -g. This would have prevented https://github.com/pi-hole/AdminLTE/issues/1077
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
2cec9eaf65
Merge pull request #3033 from pi-hole/fix/duplicates_in_adlists
...
Remove duplicates from adlists before importing
5 years ago
DL6ER
779fe670f7
Show full URL during gravity download instead of only domain and file
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
570a7a5c11
Use sort -u instead of uniq as it is guaranteed to be safe when doing inline file operations.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
bd1b004d94
Remove possible duplicates found in lower-quality adlists
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
Adam Warner
d29947ba32
optimise gravity list inserts
...
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
5 years ago
Adam Warner
1f03faddef
shell check recomends
...
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
5 years ago
DL6ER
3231e5c3ba
Address stickler requests.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
0c5185f8ba
Also display how many unique domains we have caught in the event horizon.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
037d52104a
New command "pihole -g -r" recreates gravity.db based on files backed up in /etc/pihole/migration_update. This is useful to restore a working version of the database when the user destroyed the original database. Also, update gravity.db to version 5 because of a fix we needed to implement.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
756c99653e
Merge branch 'development' into new/internal-blocking
5 years ago
Adam Warner
61a40c1b43
merge devel into 4.3.2 And Resolve merge conflicts
...
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
5 years ago
DL6ER
a8af2e1837
Store domains without sorting and unifying them first. This allows us to preserve the relationship of the individual domains to the lists they came from.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
Adam Warner
8bef5dc805
remove n from -ne
...
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
5 years ago
Adam Warner
ad41bcca5a
Remove support for adblock style lists to prevent false positives
...
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
5 years ago
DL6ER
ca8982494b
Store timestamp when the gravity table was last updated successfully. This fixes https://github.com/pi-hole/AdminLTE/issues/989
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
1820c2c598
Merge branch 'development' into new/whitelist-regex-support
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
Andreas
c53be459c6
quick fix for when dig also returns a CNAME
...
Signed-off-by: Andreas <ryrun@online.de>
5 years ago
DL6ER
4371c9ba03
Ensure proper permissions are set for gravity.db after creation.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
Andreas
63230cb72d
quick fix for when dig also returns a CNAME
...
Signed-off-by: ryrun <ryrun@online.de>
5 years ago
DL6ER
5ff9052200
Review comments
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
f5121c64be
We should still add the regex lines (initially) to the regex table as the renaming will happen only after the importing.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
054c7a2c05
Create new table + view regex_whitelist + rename old regex table to regex_blacklist. This updates the gravity.db version to 3.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
be3e198f9a
Address linting errors.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
acc50b709e
Only migrate files once (domain and adlist lists druing initial creation of gravity.db auditlog.list on database upgrade from version 1 to 2.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
0405aaa3da
Review comments and fixing stickler complaints.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
2fb4256f84
Rename table to "auditlist"
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
4f4a12bb40
Upgrade database if necessary and store audit domains therein.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
7a1b6fd205
Merge branch 'development' into new/gravity.db_domain_groups
5 years ago
DL6ER
f91421418a
Rename adlists -> adlist table.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
87c115fc86
Change implementation to use linking tables (domain_groups, adlists_groups). This allows adding domains to multiple lists conveniently.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
d5e8f1a781
Add 10 seconds timeout to the sqlite3 command that writes tables to the gravity database. This prevents gravity from failing when the database file is locked for a short time.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
cbc210b014
Add adlist_groups and mark group_id columns as NOT NULL.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
Chris Crocker-White
69dba022c4
Handle an empty local.list
...
Handle the case of an empty local.list file which would otherwise prevent the system from starting
Change-type: patch
Signed-off-by: Chris Crocker-White <chriscw@balena.io>
5 years ago
Dan Schaper
7de6bbca61
Merge branch 'development' into release/v4.3
5 years ago
Mcat12
8e1bf6e3d4
Merge branch 'development' into new/gravitydb
...
# Conflicts:
# advanced/Scripts/list.sh
# gravity.sh
# pihole
5 years ago
pvogt09
3f90261520
Moves chmod after every creation of ${destination} instead of end of function
...
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
5 years ago
pvogt09
225285cb97
Removes chmod for ${source} and superfluous chmod for ${destination}
...
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
5 years ago
pvogt09
a3d2a1062f
Makes blocklists world readable
...
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
5 years ago
Mcat12
ec06fd0ad4
Fix incorrect adlist query when an adlist is blocked during gravity
...
hosts-file.net was hard-coded as the domain to check instead of the
actual domain.
Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
5 years ago
DL6ER
0cfecd31d3
Invert logic to reduce nesting
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
008e88b84b
Only migrate legacy list files when we create gravity.db in the same gravity run
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
540c57f755
Add comment for automigrated list entries
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
983117d788
Add id (primary key, autoincrement) field to lists tables
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
b372f808dd
Fix lint errors
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
pvogt09
8a92fb24c4
Incorporates changes requested by @Mcat12
...
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
5 years ago
pvogt09
5c575e73c7
Adds world readable attribute to files created by Pi-hole to circumvent #2724
...
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
5 years ago
DL6ER
a932209143
Set default for date_modified to be the current time
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
5 years ago
DL6ER
4946b5907b
Move migrated files to backup directory instead of deleting them. This has the benefit that gravity.db can be recreated at any time by: 1. deleting gravity.db, 2. copying all files from the migration_backup directory back to /etc/pihole, 3. running pihole -g again.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
Mark Drobnak
4596d9a577
Merge branch 'development' into new/gravitydb
6 years ago
DL6ER
8524aecfed
Don't set gravity database permissions
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
3dcb9722d3
Remove global haveSourceUrls variable and just skip downloading and processing adlists if there aren't any to be downloaded
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
bd0215524b
Add vw_adlists view which returns only enabled adlists
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
53e3ff2b24
Only add non-empty lines when moving file content into database tables
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
0efc46260f
Use both old and new strings for detecting whether this is a Pi-hole dnsmasq config file
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
d94bbfca7f
Finish migrating gravity.db to using our new gravity database. This removes the --skip-download, --blacklist-only, --whitelist-only, and --wildcard-only options as it is not necessary to run gravity when modifying them from now on (gravity really only builds the gravity database and the local.list file).
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
465a39427b
Source adlists from gravity database
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
2664ac0efc
Improve error reporting
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
c1277705d8
Copy existing whitelist.txt, blacklist.txt, regex.list, and adlists.list to the database. We remove the files afterwards as the content lives in the database now
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
e57d0fb93c
Remove the empty templates gravity.list, white.list, black.list. The old source files whitelist.txt, blacklist.txt, and regex.list still exist and need to be removed in a follow-up commit
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
ee20164207
Remove detect_pihole_blocking_status() as we can modify the database at any time
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
Dan Schaper
54ae9d83b0
Stickler-lints
...
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
6 years ago
DL6ER
bbc392caeb
More review comments
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
61840edb30
Fill comment field with NULL (default) instead of empty string and use a variable for the timestamp instead of periodically calling date
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
f9250d91a5
Explictly escape the escape.
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
491c828661
Improved code, ensure that gravity.sh passes shellcheck as a whole
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
644ec36e64
Review comments
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
ec5b16ef85
Fix incomplete comment
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
dbbf21071b
Invert logic to use ENABLED instead of DISABLED. We make sure to set "enabled = 1 WHERE enabled IS NULL" in gravity_store_in_database()
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
b2f4385232
Avoid infinity loop if gravity optimization fails
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
1f9a7d0b0c
Only run VACUUM on "pihole -g -o"
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago
DL6ER
d5feffa117
Do not backup the database
...
Signed-off-by: DL6ER <dl6er@dl6er.de>
6 years ago