Howto: install Pi-hole 6.x on Dockstar/Debian 12.x June 16, 2025 12:50PM |
Registered: 5 years ago Posts: 12 |
sudo apt install git wget ca-certificates build-essential libgmp-dev m4 cmake libidn2-dev libunistring-dev libreadline-dev xxd
wget https://ftp.gnu.org/gnu/nettle/nettle-3.9.1.tar.gz tar -xzf nettle-3.9.1.tar.gz cd nettle-3.9.1 ./configure --libdir=/usr/local/lib --enable-static --disable-shared --disable-openssl --disable-mini-gmp -disable-gcov --disable-documentation make -j $(nproc) sudo make install# build libmbedtls
wget https://github.com/Mbed-TLS/mbedtls/archive/refs/tags/v3.5.0.tar.gz -O mbedtls-3.5.0.tar.gz tar -xzf mbedtls-3.5.0.tar.gz cd mbedtls-3.5.0 sed -i '/#define MBEDTLS_THREADING_C/s*^//**g' include/mbedtls/mbedtls_config.h sed -i '/#define MBEDTLS_THREADING_PTHREAD/s*^//**g' include/mbedtls/mbedtls_config.h make -j $(nproc) sudo make install# build FTL
git clone https://github.com/pi-hole/FTL.git cd FTLIf you run build.sh at this point , you are likely to find that it uses increasing amounts of swap, starts thrashing and eventually dies with a segmentation fault after an hour and a half :
[ 38%] Building C object src/database/CMakeFiles/sqlite3.dir/sqlite3.c.o {standard input}: Assembler messages: {standard input}: Internal error (Segmentation fault). Please report this bug. gmake[2]: *** [src/database/CMakeFiles/sqlite3.dir/build.make:90: src/database/CMakeFiles/sqlite3.dir/sqlite3.c.o] Error 1 gmake[1]: *** [CMakeFiles/Makefile2:685: src/database/CMakeFiles/sqlite3.dir/all] Error 2 gmake: *** [Makefile:136: all] Error 2After several hours of trial, error and investigation on how to reduce memory usage during compilation using gcc's -Ox flags, I noticed that the gcc optimisations are controlled by $CMAKE_BUILD_TYPE , and this was set by default to "RelWithDebInfo", i.e with bloaty Debug info
... #set(CMAKE_BUILD_TYPE "RelWithDebInfo" CACHE STRING "" FORCE) #set(CMAKE_BUILD_TYPE "MinSizeRel" CACHE STRING "" FORCE) set(CMAKE_BUILD_TYPE "Release" CACHE STRING "" FORCE)(I also tried using MinSizeRel, but compilation failed & exited as soon as there were any compiler Warnings at all ..
./build.sh installIt now built FTL in about an hour :)
wget -O basic-install.sh https://install.pi-hole.net
# added the following 4 lines for dockstar robin 13jun2025 elif [[ "${rev}" -eq 5 ]]; then # If ARMv5 is found (e.g., dockstar ) printf "%b %b Detected ARMv5 architecture\\n" "${OVER}" "${TICK}" l_binary="pihole-FTL-armv5snotdead" else # Otherwise, Pi-hole does not support this architecture printf "%b %b This processor architecture is not supported by Pi-hole (%s)\\n" "${OVER}" "${CROSS}" "${cpu_arch}" l_binary="".. second mod: comment out 7 lines performing checksum check :
# commented this checksum check when building local FTL robin 13jun2025 #if [[ ! "${remoteSha1}" =~ ^[a-f0-9]{40}$ ]]; then # printf " %b Remote checksum not available, trying to redownload...\\n" "${CROSS}" # return 0 #elif [[ "${remoteSha1}" != "${localSha1}" ]]; then # printf " %b Remote binary is different, downloading...\\n" "${CROSS}" # return 0 #fi
$ bash basic-install.sh
Re: Howto: install Pi-hole 6.x on Dockstar/Debian 12.x June 16, 2025 04:25PM |
Admin Registered: 14 years ago Posts: 19,713 |
Quote
Home Automation & Tools
X10
CALDav Calendar Server using Radicale
Pogoplug Network Stack with PiHole: pics, and description
Pi-hole on Pogoplug Mobile
Pi-hole on Pogoplug Pro V3 (OXNAS)
Pi-hole 5.0 ad-blocker on Seagate Dockstar
Pi-hole 6.x ad-blocker on Seagate Dockstar/Debian 12.x