{"id":10763,"date":"2025-02-18T13:29:15","date_gmt":"2025-02-18T20:29:15","guid":{"rendered":"https:\/\/jasonsblog.ddns.net\/?p=10763"},"modified":"2025-02-18T13:29:15","modified_gmt":"2025-02-18T20:29:15","slug":"pi-hole-v6-0-released","status":"publish","type":"post","link":"https:\/\/jasonsblog.ddns.net\/index.php\/2025\/02\/18\/pi-hole-v6-0-released\/","title":{"rendered":"Pi-Hole v6.0 Released"},"content":{"rendered":"\n<p>This is a major version release, and they&#8217;ve changed a lot (see below). The web pages show some additional information in the left shortcuts, and they&#8217;ve changed to their own web server, so you&#8217;re asked to disable lighttpd if you don&#8217;t use it for anything else. If you&#8217;re not running <a href=\"https:\/\/pi-hole.net\/\">Pi-Hole<\/a> DNS\/<a href=\"https:\/\/docs.pi-hole.net\/guides\/dns\/unbound\/\" target=\"_blank\" rel=\"noreferrer noopener\">Unbound<\/a> servers on your home network, you should investigate it as it is a tremendous project and extends ad blocking to all devices on your home network, not to mention blocking telemetry and malware sites as well (you can really blocking by list or manually). And shout out to ham radio operator DL6ER, Dominik, who is listed below on a lot of the updates. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"539\" src=\"https:\/\/jasonsblog.ddns.net\/wp-content\/uploads\/2025\/02\/image-17-1024x539.png\" alt=\"\" class=\"wp-image-10764\" srcset=\"https:\/\/jasonsblog.ddns.net\/wp-content\/uploads\/2025\/02\/image-17-1024x539.png 1024w, https:\/\/jasonsblog.ddns.net\/wp-content\/uploads\/2025\/02\/image-17-300x158.png 300w, https:\/\/jasonsblog.ddns.net\/wp-content\/uploads\/2025\/02\/image-17-768x404.png 768w, https:\/\/jasonsblog.ddns.net\/wp-content\/uploads\/2025\/02\/image-17.png 1351w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/releases\/tag\/v6.0\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/github.com\/pi-hole\/pi-hole\/releases\/tag\/v6.0<\/a><\/p>\n\n\n<div class=\"wp-block-ub-divider ub_divider ub-divider-orientation-horizontal\" id=\"ub_divider_2326aaa5-9e94-4fd4-9050-b59d9ddd6d31\"><div class=\"ub_divider_wrapper\" style=\"position: relative; margin-bottom: 2px; width: 100%; height: 2px; \" data-divider-alignment=\"center\"><div class=\"ub_divider_line\" style=\"border-top: 2px solid #ccc; margin-top: 2px; \"><\/div><\/div><\/div>\n\n\n<h2 class=\"wp-block-heading\">What&#8217;s Changed<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Remove option to set static IP address if DHCPCD is installed by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5111\">#5111<\/a><\/li>\n\n\n\n<li>Do not remove -all|exact when not surrounded by space in query.sh by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5300\">#5300<\/a><\/li>\n\n\n\n<li>Add code to remove old lighttpd config files left over from v5. by <a href=\"https:\/\/github.com\/PromoFaux\">@PromoFaux<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5314\">#5314<\/a><\/li>\n\n\n\n<li>Switch to new branch name for FTL v6 development by <a href=\"https:\/\/github.com\/PromoFaux\">@PromoFaux<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5319\">#5319<\/a><\/li>\n\n\n\n<li>Set new gravity database version to 16 by <a href=\"https:\/\/github.com\/PromoFaux\">@PromoFaux<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5328\">#5328<\/a><\/li>\n\n\n\n<li>Add \/var\/log\/pihole\/webserver.log to the logrotate scripts by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5329\">#5329<\/a><\/li>\n\n\n\n<li>If ${USER} variable is blank, then populate it with whoami by <a href=\"https:\/\/github.com\/PromoFaux\">@PromoFaux<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5341\">#5341<\/a><\/li>\n\n\n\n<li>Remove webpage.sh by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5357\">#5357<\/a><\/li>\n\n\n\n<li>Remove fake user agent when downloading adlist by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5367\">#5367<\/a><\/li>\n\n\n\n<li>Ignore ABP style entries in debug log dig test by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5382\">#5382<\/a><\/li>\n\n\n\n<li>Ensure pihole-FTL can write to all files in \/etc\/pihole, \/run\/pihole and \/var\/log\/pihole by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5356\">#5356<\/a><\/li>\n\n\n\n<li>Add antigravity support to gravity by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5330\">#5330<\/a><\/li>\n\n\n\n<li>Some verbiage change to outputs (plus a couple of comments) by <a href=\"https:\/\/github.com\/PromoFaux\">@PromoFaux<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5406\">#5406<\/a><\/li>\n\n\n\n<li>Disable checkout function for (official) docker containers by <a href=\"https:\/\/github.com\/PromoFaux\">@PromoFaux<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5416\">#5416<\/a><\/li>\n\n\n\n<li>Allow pihole to access subdirs in \/etc\/pihole by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5427\">#5427<\/a><\/li>\n\n\n\n<li>Remove Chronometer by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5423\">#5423<\/a><\/li>\n\n\n\n<li>Set owner of gravity output files to pihole by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5419\">#5419<\/a><\/li>\n\n\n\n<li>Update query.sh to use FTL&#8217;s API instead of directly interacting with the database by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5361\">#5361<\/a><\/li>\n\n\n\n<li>Add a final message to gravity by <a href=\"https:\/\/github.com\/rdwebdesign\">@rdwebdesign<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5441\">#5441<\/a><\/li>\n\n\n\n<li>Avoid printing getFTLConfigValue return in statusFunc() by <a href=\"https:\/\/github.com\/rdwebdesign\">@rdwebdesign<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5442\">#5442<\/a><\/li>\n\n\n\n<li>Logrotate config file needs to be owned by root by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5444\">#5444<\/a><\/li>\n\n\n\n<li>Remove temp dir created when downloading FTL by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5429\">#5429<\/a><\/li>\n\n\n\n<li><em>BREAKING<\/em> Drop support for ancient ARMv4 and ARMv5 by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5445\">#5445<\/a><\/li>\n\n\n\n<li>Fix gravity swapping by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5455\">#5455<\/a><\/li>\n\n\n\n<li>Fix and simplify binary download by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5451\">#5451<\/a><\/li>\n\n\n\n<li>Use suffixed temp file by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5457\">#5457<\/a><\/li>\n\n\n\n<li>Tweak Pi-hole&#8217;s debug facility for v6 by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5461\">#5461<\/a><\/li>\n\n\n\n<li>Remove idn2 as punycode conversion is handled by FTL by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5468\">#5468<\/a><\/li>\n\n\n\n<li>Start counting at postion 1 by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5470\">#5470<\/a><\/li>\n\n\n\n<li>Check for valid OS via IPv4 and IPv6 by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5305\">#5305<\/a><\/li>\n\n\n\n<li>When setting a blank password, use <code>webserver.api.password<\/code> instead of <code>webserver.api.pwhash<\/code> by <a href=\"https:\/\/github.com\/PromoFaux\">@PromoFaux<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5465\">#5465<\/a><\/li>\n\n\n\n<li>Tweak help text of pihole setpassword by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5476\">#5476<\/a><\/li>\n\n\n\n<li>pihole -d: Include pihole.toml only once by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5478\">#5478<\/a><\/li>\n\n\n\n<li>Move custom.list to \/hosts\/custom.list by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5488\">#5488<\/a><\/li>\n\n\n\n<li>Improve v6 debug log and remove leftovers by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5481\">#5481<\/a><\/li>\n\n\n\n<li>Support special webserver.port ports ending in &#8220;s&#8221; (secure) and &#8220;r&#8221; (redirect) by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5499\">#5499<\/a><\/li>\n\n\n\n<li>Use files.gravity_tmp as temporary directory for the intermediate lists by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5504\">#5504<\/a><\/li>\n\n\n\n<li>Treat FTL return data as strings by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5509\">#5509<\/a><\/li>\n\n\n\n<li>Bash completion by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5516\">#5516<\/a><\/li>\n\n\n\n<li>Remove obsolete sudo file by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5514\">#5514<\/a><\/li>\n\n\n\n<li>Simplify pihole -v by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5517\">#5517<\/a><\/li>\n\n\n\n<li>Add &#8220;-ni&#8221; to all sqlite3 invocations by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5518\">#5518<\/a><\/li>\n\n\n\n<li>pihole -d: Fix gateway ping if it is a LL address by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5527\">#5527<\/a><\/li>\n\n\n\n<li>Fix failing tests in development-v6 branch by <a href=\"https:\/\/github.com\/PromoFaux\">@PromoFaux<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5542\">#5542<\/a><\/li>\n\n\n\n<li>Do not store remote version in versions file if on custom branch by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5549\">#5549<\/a><\/li>\n\n\n\n<li>Use 204 return code for deleted sessions by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5541\">#5541<\/a><\/li>\n\n\n\n<li>Drop Fedora 36 and add Fedora 39 to the test suite by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5482\">#5482<\/a><\/li>\n\n\n\n<li>Test ftl.pi-hole.net availability by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5563\">#5563<\/a><\/li>\n\n\n\n<li>Make IDs of anti-\/gravity lists available in vw_(anti)gravity by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5526\">#5526<\/a><\/li>\n\n\n\n<li>Remove local.list and openVPN traces by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5480\">#5480<\/a><\/li>\n\n\n\n<li>Fix gravity by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5573\">#5573<\/a><\/li>\n\n\n\n<li>Allow adlist duplicates by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5572\">#5572<\/a><\/li>\n\n\n\n<li>Highlight &#8220;### CHANGED&#8221; strings in the debug log of pihole.toml by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5601\">#5601<\/a><\/li>\n\n\n\n<li>Verify remote FTL checksum by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5603\">#5603<\/a><\/li>\n\n\n\n<li>Fix edge-case where an adlist domain is blocked by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5571\">#5571<\/a><\/li>\n\n\n\n<li>Improve changed binary message during update process by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5621\">#5621<\/a><\/li>\n\n\n\n<li>Only use local files (file:\/\/) when they have explicit permissions a+r by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5622\">#5622<\/a><\/li>\n\n\n\n<li>Add Ubuntu 24.04 and Fedora 40, remove Fedora 38 by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5657\">#5657<\/a><\/li>\n\n\n\n<li>Also check for IPv6 address for configured DNS servers by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5560\">#5560<\/a><\/li>\n\n\n\n<li>Migrate dnsmasq config files by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5479\">#5479<\/a><\/li>\n\n\n\n<li>Fix version check for release Docker images by <a href=\"https:\/\/github.com\/jacklul\">@jacklul<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5667\">#5667<\/a><\/li>\n\n\n\n<li>Add CAP_SYS_TIME to FTL&#8217;s ambient capabilities by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5676\">#5676<\/a><\/li>\n\n\n\n<li>Remove CentOS8 from test suite by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5682\">#5682<\/a><\/li>\n\n\n\n<li>Add pytest-clarity to test environment to improve error log output by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5692\">#5692<\/a><\/li>\n\n\n\n<li>Add protocol validation when downloading blocklist from URL by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5698\">#5698<\/a><\/li>\n\n\n\n<li>Fix minor spelling mistake by <a href=\"https:\/\/github.com\/eltociear\">@eltociear<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5704\">#5704<\/a><\/li>\n\n\n\n<li>Finish core v6 implementation by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5689\">#5689<\/a><\/li>\n\n\n\n<li>Remove obsolet getFTLPIDFile() by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5710\">#5710<\/a><\/li>\n\n\n\n<li>Remove obsolet files and log file symlink code by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5711\">#5711<\/a><\/li>\n\n\n\n<li>Merge <code>development<\/code> > <code>development-v6<\/code> by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5725\">#5725<\/a><\/li>\n\n\n\n<li>[fix] [v6] typo in bash-completion allow-regex option by <a href=\"https:\/\/github.com\/allendema\">@allendema<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5729\">#5729<\/a><\/li>\n\n\n\n<li>Fix setting query logging and privacy level by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5724\">#5724<\/a><\/li>\n\n\n\n<li>Add missing creation of table antigravity in migration script 16 to 17 by <a href=\"https:\/\/github.com\/PromoFaux\">@PromoFaux<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5737\">#5737<\/a><\/li>\n\n\n\n<li>Add pihole api [endpoint] callback suitable for local API requests by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5736\">#5736<\/a><\/li>\n\n\n\n<li>Make the help text of &#8220;pihole checkout [what] [branch]&#8221; more colorful by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5734\">#5734<\/a><\/li>\n\n\n\n<li>Update existing logrotate files to inlcude webserver.log by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5738\">#5738<\/a><\/li>\n\n\n\n<li>Disable SELINUX on CentOS 9 test dockerfile by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5743\">#5743<\/a><\/li>\n\n\n\n<li>Fix pihole status on not-ready states by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5747\">#5747<\/a><\/li>\n\n\n\n<li>Disable SELINUX on CentOS 9 test dockerfile v5 by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5744\">#5744<\/a><\/li>\n\n\n\n<li>Resolve merge conflicts (again) by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5745\">#5745<\/a><\/li>\n\n\n\n<li>Remove obsolet Debian 10 by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5707\">#5707<\/a><\/li>\n\n\n\n<li>Wait after restarting FTL before trying to check version by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5613\">#5613<\/a><\/li>\n\n\n\n<li>Tweak\/gravity dns by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5752\">#5752<\/a><\/li>\n\n\n\n<li>Fix risk of popd without a pushd by <a href=\"https:\/\/github.com\/SkyLined\">@SkyLined<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5701\">#5701<\/a><\/li>\n\n\n\n<li>Account for renaming of <code>devel<\/code> branch on <code>web<\/code> repo by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5753\">#5753<\/a><\/li>\n\n\n\n<li>Fix wrong message being displayed while waiting for the DNS by <a href=\"https:\/\/github.com\/jacklul\">@jacklul<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5757\">#5757<\/a><\/li>\n\n\n\n<li>Add \/etc\/pihole\/dnsmasq.conf to debug log (stripped-down version) by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5740\">#5740<\/a><\/li>\n\n\n\n<li>Return early during v6 migration if migration dir exists by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5766\">#5766<\/a><\/li>\n\n\n\n<li>Revert &#8220;Return early during v6 migration if migration dir exists&#8221; by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5768\">#5768<\/a><\/li>\n\n\n\n<li>Add fallback option for OS check without hard-coded nameserver by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5751\">#5751<\/a><\/li>\n\n\n\n<li>Remove lines containing Adguard JavaScript rules from adlists by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5754\">#5754<\/a><\/li>\n\n\n\n<li>Add database optimization and gravity timing by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5773\">#5773<\/a><\/li>\n\n\n\n<li>Grouped common dependencies of distros by <a href=\"https:\/\/github.com\/WouterServaes\">@WouterServaes<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5762\">#5762<\/a><\/li>\n\n\n\n<li>Fix removing old man page by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5789\">#5789<\/a><\/li>\n\n\n\n<li>Show version information after a web update by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5788\">#5788<\/a><\/li>\n\n\n\n<li>Remove the restartdns functionality and promote the reloaddns functions by <a href=\"https:\/\/github.com\/PromoFaux\">@PromoFaux<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5780\">#5780<\/a><\/li>\n\n\n\n<li>Remove <code>restartdns<\/code>: Redux by <a href=\"https:\/\/github.com\/PromoFaux\">@PromoFaux<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5791\">#5791<\/a><\/li>\n\n\n\n<li>Add color by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5798\">#5798<\/a><\/li>\n\n\n\n<li>Use pihole.toml to decide if installer runs on an update by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5790\">#5790<\/a><\/li>\n\n\n\n<li>Fix gavity version 19 by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5801\">#5801<\/a><\/li>\n\n\n\n<li>Do not print FTL update check details on pihole -up by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5800\">#5800<\/a><\/li>\n\n\n\n<li>Exit 1 on failure by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5803\">#5803<\/a><\/li>\n\n\n\n<li>Improved error message for invalid protocol in adlist download by <a href=\"https:\/\/github.com\/Seva41\">@Seva41<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5806\">#5806<\/a><\/li>\n\n\n\n<li>Fix errors on fresh installations while setting privacy levels and query logging due to absence of pihole.toml by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5799\">#5799<\/a><\/li>\n\n\n\n<li>Add Fedora 41 and remove Fedora 39 from tests by <a href=\"https:\/\/github.com\/rdwebdesign\">@rdwebdesign<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5813\">#5813<\/a><\/li>\n\n\n\n<li>Remove remaining traces of audit log by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5817\">#5817<\/a><\/li>\n\n\n\n<li>Fix possible gravity permissions issue by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5819\">#5819<\/a><\/li>\n\n\n\n<li>Fix empty adlists by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5821\">#5821<\/a><\/li>\n\n\n\n<li>Remove Ubuntu 23 tests, it is EOL by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5822\">#5822<\/a><\/li>\n\n\n\n<li>Fix ARP flush command by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5823\">#5823<\/a><\/li>\n\n\n\n<li>move the sourcing of utils.sh outside of installPihole by <a href=\"https:\/\/github.com\/PromoFaux\">@PromoFaux<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5825\">#5825<\/a><\/li>\n\n\n\n<li>Remove no-longer-needed utils by <a href=\"https:\/\/github.com\/PromoFaux\">@PromoFaux<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5826\">#5826<\/a><\/li>\n\n\n\n<li>Install dependencies by creating a meta package on-the-fly by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5785\">#5785<\/a><\/li>\n\n\n\n<li>Fix rare case when apt and rpm package managers are found by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5827\">#5827<\/a><\/li>\n\n\n\n<li>Improve v6 user output by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5829\">#5829<\/a><\/li>\n\n\n\n<li>Improve dependency package output by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5828\">#5828<\/a><\/li>\n\n\n\n<li>Fix v5 -> v6 update by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5832\">#5832<\/a><\/li>\n\n\n\n<li>Speedup api response handling by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5833\">#5833<\/a><\/li>\n\n\n\n<li>Exit early when neither service nor systemctl commands are available by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5834\">#5834<\/a><\/li>\n\n\n\n<li>Disable lighttpd if found by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5835\">#5835<\/a><\/li>\n\n\n\n<li>Remove now unused function test_dpkg_lock() by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5848\">#5848<\/a><\/li>\n\n\n\n<li>Improve lighttpd disabling by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5849\">#5849<\/a><\/li>\n\n\n\n<li>Explicitly migrate from v5 to v6 by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5830\">#5830<\/a><\/li>\n\n\n\n<li>Remove unused code from debug log and skip some tests inside containers by <a href=\"https:\/\/github.com\/rdwebdesign\">@rdwebdesign<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5854\">#5854<\/a><\/li>\n\n\n\n<li>Gravity database resilience by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5818\">#5818<\/a><\/li>\n\n\n\n<li>Use a different method to identify if a gravity restore succeeded by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5868\">#5868<\/a><\/li>\n\n\n\n<li>Fix counting of domains in the gravity summary by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5881\">#5881<\/a><\/li>\n\n\n\n<li>Gravity: Use ETags by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5867\">#5867<\/a><\/li>\n\n\n\n<li>Move gravity list cache into dedicated directory by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5869\">#5869<\/a><\/li>\n\n\n\n<li>Show only enabled domains\/regex in the final gravity message by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5884\">#5884<\/a><\/li>\n\n\n\n<li>Remove outdated dns-servers.conf by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5883\">#5883<\/a><\/li>\n\n\n\n<li>Add call to os_check in the update script by <a href=\"https:\/\/github.com\/PromoFaux\">@PromoFaux<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5845\">#5845<\/a><\/li>\n\n\n\n<li>Decide if the content was changed <em>before<\/em> passing over to FTL by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5872\">#5872<\/a><\/li>\n\n\n\n<li>installer: use a drop-in to disable systemd-resolved stub listener by <a href=\"https:\/\/github.com\/enr0n\">@enr0n<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5885\">#5885<\/a><\/li>\n\n\n\n<li>Amend warning on gravity tree build failure by <a href=\"https:\/\/github.com\/DL6ER\">@DL6ER<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5888\">#5888<\/a><\/li>\n\n\n\n<li>Fix database integrity check in debug log by <a href=\"https:\/\/github.com\/yubiuser\">@yubiuser<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5889\">#5889<\/a><\/li>\n\n\n\n<li>Pi-hole core v6.0.0 by <a href=\"https:\/\/github.com\/PromoFaux\">@PromoFaux<\/a> in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5842\">#5842<\/a><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">New Contributors<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/github.com\/jacklul\">@jacklul<\/a> made their first contribution in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5667\">#5667<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/github.com\/eltociear\">@eltociear<\/a> made their first contribution in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5704\">#5704<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/github.com\/allendema\">@allendema<\/a> made their first contribution in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5729\">#5729<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/github.com\/SkyLined\">@SkyLined<\/a> made their first contribution in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5701\">#5701<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/github.com\/WouterServaes\">@WouterServaes<\/a> made their first contribution in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5762\">#5762<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/github.com\/Seva41\">@Seva41<\/a> made their first contribution in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5806\">#5806<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/github.com\/enr0n\">@enr0n<\/a> made their first contribution in <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/pull\/5885\">#5885<\/a><\/li>\n<\/ul>\n\n\n\n<p><strong>Full Changelog<\/strong>: <a href=\"https:\/\/github.com\/pi-hole\/pi-hole\/compare\/v5.18.4...v6.0\">v5.18.4&#8230;v6.0<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>This is a major version release, and they&#8217;ve changed a lot (see below). The web pages show some additional information in the left shortcuts, and they&#8217;ve changed to their own web server, so you&#8217;re asked to disable lighttpd if you don&#8217;t use it for anything else. If you&#8217;re not running Pi-Hole DNS\/Unbound servers on your [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[],"class_list":["post-10763","post","type-post","status-publish","format-standard","hentry","category-tech"],"blocksy_meta":[],"featured_image_src":null,"author_info":{"display_name":"Jason","author_link":"https:\/\/jasonsblog.ddns.net\/index.php\/author\/jturning\/"},"_links":{"self":[{"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/posts\/10763","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/comments?post=10763"}],"version-history":[{"count":1,"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/posts\/10763\/revisions"}],"predecessor-version":[{"id":10765,"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/posts\/10763\/revisions\/10765"}],"wp:attachment":[{"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/media?parent=10763"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/categories?post=10763"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/tags?post=10763"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}