Error: Could not update local repository. On initial Ubuntu install

Please follow the below template, it will help us to help you!

Expected Behaviour:

Trying to do initial install on new Ubuntu 19.10 setup. Followed instructions and got nearly done and Terminal threw the error and the install failed.

Actual Behaviour:

Got most of the way thru the new install, then encountered error:
Clone https://github.com/pi-hole/AdminLTE.git into /var/www/html/admin…
Error: Could not update local repository. Contact support.
Tried this in Ubuntu 18.xxx and got this error, updated Ubuntu to ver. 19.10, tried install again, got same error. Dug thru your forum and found a reference to a problem where the customer indicated he tried the install again and it worked. So I tried the install a third time and got the same error.

If I run “pihole -d” it just tells me the command is not found, which I assume is because pi-hole didn’t get installed. So I have no debug token to paste, but I pasted the output from the Terminal session where I tried to run the install. Any help would be appreciated because I need a solution to my bandwidth problem. We live in the boonies and can only get internet thru HughesNet, so I’m on a metered connection and always run out of bandwidth 1/3 of the way thru the month and then spend the rest of the month crawling around at 1.2Mbps speed.

Debug Token:

joe@joe-Satellite-L15W-B:~/bash-4.4$ wget -O basic-install.sh https://install.pi-hole.net
–2020-03-25 15:02:13-- https://install.pi-hole.net/
Resolving install.pi-hole.net (install.pi-hole.net)… 78.46.180.80
Connecting to install.pi-hole.net (install.pi-hole.net)|78.46.180.80|:443… connected.
HTTP request sent, awaiting response… 302 Found
Location: https://raw.githubusercontent.com/pi-hole/pi-hole/master/automated%20install/basic-install.sh [following]
–2020-03-25 15:02:16-- https://raw.githubusercontent.com/pi-hole/pi-hole/master/automated%20install/basic-install.sh
Resolving raw.githubusercontent.com (raw.githubusercontent.com)… 151.101.52.133
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|151.101.52.133|:443… connected.
HTTP request sent, awaiting response… 200 OK
Length: 114106 (111K) [text/plain]
Saving to: ‘basic-install.sh’

basic-install.sh 100%[===================>] 111.43K 56.6KB/s in 2.0s

2020-03-25 15:02:25 (56.6 KB/s) - ‘basic-install.sh’ saved [114106/114106]

joe@joe-Satellite-L15W-B:~/bash-4.4$ sudo bash basic-install.sh

[✓] Root user check

    .;;,.
    .ccccc:,.
     :cccclll:.      ..,,
      :ccccclll.   ;ooodc
       'ccll:;ll .oooodc
         .;cll.;;looo:.
             .. ','.
            .',,,,,,'.
          .',,,,,,,,,,.
        .',,,,,,,,,,,,....
      ....''',,,,,,,'.......
    .........  ....  .........
    ..........      ..........
    ..........      ..........
    .........  ....  .........
      ........,,,,,,,'......
        ....',,,,,,,,,,,,.
           .',,,,,,,,,'.
            .',,,,,,'.
              ..'''.

[✓] Disk space check
[✓] Update local cache of available packages

[✓] Checking apt-get for upgraded packages… 2 updates available
[i] It is recommended to update your OS after installing the Pi-hole!

[i] Installer Dependency checks…
[✓] Checking for apt-utils
[✓] Checking for dialog
[✓] Checking for debconf
[✓] Checking for dhcpcd5
[✓] Checking for git
[✓] Checking for iproute2
[✓] Checking for whiptail

[i] Using interface: wlp2s0
[i] Using [✓] Set IP address to 192.168.42.16
You may need to restart after the install is complete
[i] Found IPv6 GUA address, using it for blocking IPv6 ads
[i] IPv4 address: 192.168.42.16/24
[i] IPv6 address: 2001:5b0:4fc4:5d8:d957:1008:b2aa:4ce3
[i] Web Interface On
[i] Web Server On
[i] Logging On.
[✗] Check for existing repository in /etc/.pihole
[✓] Clone https://github.com/pi-hole/pi-hole.git into /etc/.pihole

[✗] Check for existing repository in /var/www/html/admin
[i] Clone https://github.com/pi-hole/AdminLTE.git into /var/www/html/admin…
Error: Could not update local repository. Contact support.

Ubuntu 19 is not a supported OS. It would be best to continue troubleshooting on 18.

The following operating systems are officially supported:

Distribution Release Architecture
Raspbian Stretch / Buster ARM
Ubuntu 16.x / 18.x ARM / x86_64
Debian 9 / 10 ARM / x86_64 / i386
Fedora 28 / 29 ARM / x86_64
CentOS 7 x86_64

https://docs.pi-hole.net/main/prerequesites/

This happened to me on my first install today. The issue was that the install process was interrupted partway through on the first iteration (I was connected through SSH, session dropped - whoops). Although the installer had not finished, it had apparently already updated /etc/resolv.conf to have 127.0.0.1 (loopback address, the local system) set as the DNS server. When I tried to re-run the installer, I got this error message because the system did not know how to reach github.com. I resolved the issue by removing the line that had been added to /etc/resolv.conf.

Hope this helps

Check that the nameserver is still reset to a non-loopback IP, then run the verbose installer using the command below and post the entire output:

curl -sSL https://install.pi-hole.net | sudo bash -x

First, for context you should know that I’m a DOS/Windows guy since DOS 1.1 and Windows 2.X, so I’m one of those irritating users who knows nothing of substance about Ubuntu/LINUX. So I do everything by rote or with cut and paste. But we li

I attempted to reinstall Pi-Hole as per your verbose command and got an error saying:

joe@joe-Satellite-L15W-B:~/bash-4.4$ curl -ssl https://install.pi-hole.net | b^C
joe@joe-Satellite-L15W-B:~/bash-4.4$ curl -ssl https://install.pi-hole.net | sudo bash -x

  • Found
    bash: line 1: Found: command not found
    joe@joe-Satellite-L15W-B:~/bash-4.4$

So I went back and followed the instructions I’d previously dug up to reinstall bash. I ran it and it finished with what seemed like no errors and the output looked the same as the last time I ran it and it worked. Then I tried to rerun the Pi-Hole install once again and got the same message again. So I’ve pasted the entire Terminal session below for your perusal. Needless to say in my ignorance, I have virtually no understanding what most of the output means, but hopefully, you do.

joe@joe-Satellite-L15W-B:~$ curl -ssl https://install.pi-hole.net | bash -x

  • Found
    bash: line 1: Found: command not found
joe@joe-Satellite-L15W-B:~$ tar xf bash-4.4.tar.gz
joe@joe-Satellite-L15W-B:~$ cd bash-4.4
joe@joe-Satellite-L15W-B:~/bash-4.4$ ./configure
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu

Beginning configuration for bash-4.4-release for x86_64-unknown-linux-gnu

checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for strerror in -lcposix... no
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking whether gcc needs -traditional... no
checking for a BSD-compatible install... /usr/bin/install -c
checking for ar... ar
checking for ranlib... ranlib
checking for bison... no
checking for byacc... no
checking whether make sets $(MAKE)... yes
configure: WARNING: bison not available; needed to process parse.y
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking whether byte ordering is bigendian... no
checking for preprocessor stringizing operator... yes
checking for long double with more range or precision than double... yes
checking for function prototypes... yes
checking whether char is unsigned... no
checking for working volatile... yes
checking for C/C++ restrict keyword... __restrict
checking whether NLS is requested... yes
checking for msgfmt... /usr/bin/msgfmt
checking for gmsgfmt... /usr/bin/msgfmt
checking for xgettext... /usr/bin/xgettext
checking for msgmerge... /usr/bin/msgmerge
checking for off_t... yes
checking for size_t... yes
checking for working alloca.h... yes
checking for alloca... yes
checking for stdlib.h... (cached) yes
checking for unistd.h... (cached) yes
checking for sys/param.h... yes
checking for sys/time.h... yes
checking for getpagesize... yes
checking for working mmap... yes
checking whether we are using the GNU C Library 2.1 or newer... yes
checking whether integer division by zero raises SIGFPE... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unsigned long long... yes
checking for inttypes.h... yes
checking whether the inttypes.h PRIxNN macros are broken... no
checking for ld used by GCC... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for shared library run path origin... done
checking argz.h usability... yes
checking argz.h presence... yes
checking for argz.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking nl_types.h usability... yes
checking nl_types.h presence... yes
checking for nl_types.h... yes
checking malloc.h usability... yes
checking malloc.h presence... yes
checking for malloc.h... yes
checking stddef.h usability... yes
checking stddef.h presence... yes
checking for stddef.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for unistd.h... (cached) yes
checking for sys/param.h... (cached) yes
checking for feof_unlocked... yes
checking for fgets_unlocked... yes
checking for getc_unlocked... yes
checking for getcwd... yes
checking for getegid... yes
checking for geteuid... yes
checking for getgid... yes
checking for getuid... yes
checking for mempcpy... yes
checking for munmap... yes
checking for putenv... yes
checking for setenv... yes
checking for setlocale... yes
checking for localeconv... yes
checking for stpcpy... yes
checking for strcasecmp... yes
checking for strdup... yes
checking for strtoul... yes
checking for tsearch... yes
checking for __argz_count... yes
checking for __argz_stringify... yes
checking for __argz_next... yes
checking for __fsetlocking... yes
checking for iconv... yes
checking for iconv declaration... 
         extern size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
checking for nl_langinfo and CODESET... yes
checking for LC_MESSAGES... yes
checking for bison... no
checking whether NLS is requested... yes
checking whether included gettext is requested... no
checking for GNU gettext in libc... yes
checking whether to use NLS... yes
checking where the gettext function comes from... libc
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking whether time.h and sys/time.h may both be included... yes
checking for inttypes.h... (cached) yes
checking for unistd.h... (cached) yes
checking for stdlib.h... (cached) yes
checking stdarg.h usability... yes
checking stdarg.h presence... yes
checking for stdarg.h... yes
checking varargs.h usability... no
checking varargs.h presence... no
checking for varargs.h... no
checking for limits.h... (cached) yes
checking for string.h... (cached) yes
checking for memory.h... (cached) yes
checking for locale.h... (cached) yes
checking termcap.h usability... no
checking termcap.h presence... no
checking for termcap.h... no
checking termio.h usability... yes
checking termio.h presence... yes
checking for termio.h... yes
checking termios.h usability... yes
checking termios.h presence... yes
checking for termios.h... yes
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking stdbool.h usability... yes
checking stdbool.h presence... yes
checking for stdbool.h... yes
checking for stddef.h... (cached) yes
checking for stdint.h... (cached) yes
checking netdb.h usability... yes
checking netdb.h presence... yes
checking for netdb.h... yes
checking pwd.h usability... yes
checking pwd.h presence... yes
checking for pwd.h... yes
checking grp.h usability... yes
checking grp.h presence... yes
checking for grp.h... yes
checking for strings.h... (cached) yes
checking regex.h usability... yes
checking regex.h presence... yes
checking for regex.h... yes
checking syslog.h usability... yes
checking syslog.h presence... yes
checking for syslog.h... yes
checking ulimit.h usability... yes
checking ulimit.h presence... yes
checking for ulimit.h... yes
checking sys/pte.h usability... no
checking sys/pte.h presence... no
checking for sys/pte.h... no
checking sys/stream.h usability... no
checking sys/stream.h presence... no
checking for sys/stream.h... no
checking sys/select.h usability... yes
checking sys/select.h presence... yes
checking for sys/select.h... yes
checking sys/file.h usability... yes
checking sys/file.h presence... yes
checking for sys/file.h... yes
checking sys/ioctl.h usability... yes
checking sys/ioctl.h presence... yes
checking for sys/ioctl.h... yes
checking for sys/param.h... (cached) yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking for sys/stat.h... (cached) yes
checking for sys/time.h... (cached) yes
checking sys/times.h usability... yes
checking sys/times.h presence... yes
checking for sys/times.h... yes
checking for sys/types.h... (cached) yes
checking sys/wait.h usability... yes
checking sys/wait.h presence... yes
checking for sys/wait.h... yes
checking netinet/in.h usability... yes
checking netinet/in.h presence... yes
checking for netinet/in.h... yes
checking arpa/inet.h usability... yes
checking arpa/inet.h presence... yes
checking for arpa/inet.h... yes
checking for sys/ptem.h... no
checking for sys/resource.h... yes
checking for working alloca.h... (cached) yes
checking for alloca... (cached) yes
checking for uid_t in sys/types.h... yes
checking for unistd.h... (cached) yes
checking for working chown... yes
checking whether getpgrp requires zero arguments... yes
checking for vprintf... yes
checking for _doprnt... no
checking for working strcoll... yes
checking return type of signal handlers... void
checking for __setostype... no
checking for wait3... yes
checking for mkfifo... yes
checking for dup2... yes
checking for eaccess... yes
checking for fcntl... yes
checking for getdtablesize... yes
checking for getgroups... yes
checking for gethostname... yes
checking for getpagesize... (cached) yes
checking for getpeername... yes
checking for getrlimit... yes
checking for getrusage... yes
checking for gettimeofday... yes
checking for kill... yes
checking for killpg... yes
checking for lstat... yes
checking for pselect... yes
checking for readlink... yes
checking for sbrk... yes
checking for select... yes
checking for setdtablesize... no
checking for setitimer... yes
checking for tcgetpgrp... yes
checking for uname... yes
checking for ulimit... yes
checking for waitpid... yes
checking for rename... yes
checking for bcopy... yes
checking for bzero... yes
checking for confstr... yes
checking for faccessat... yes
checking for fnmatch... yes
checking for getaddrinfo... yes
checking for gethostbyname... yes
checking for getservbyname... yes
checking for getservent... yes
checking for inet_aton... yes
checking for imaxdiv... yes
checking for memmove... yes
checking for pathconf... yes
checking for putenv... (cached) yes
checking for raise... yes
checking for random... yes
checking for regcomp... yes
checking for regexec... yes
checking for setenv... (cached) yes
checking for setlinebuf... yes
checking for setlocale... (cached) yes
checking for setvbuf... yes
checking for siginterrupt... yes
checking for strchr... yes
checking for sysconf... yes
checking for syslog... yes
checking for tcgetattr... yes
checking for times... yes
checking for ttyname... yes
checking for tzset... yes
checking for unsetenv... yes
checking for vasprintf... yes
checking for asprintf... yes
checking for isascii... yes
checking for isblank... yes
checking for isgraph... yes
checking for isprint... yes
checking for isspace... yes
checking for isxdigit... yes
checking for getpwent... yes
checking for getpwnam... yes
checking for getpwuid... yes
checking for mkstemp... yes
checking for getcwd... (cached) yes
checking for memset... yes
checking for strcasecmp... (cached) yes
checking for strcasestr... yes
checking for strerror... yes
checking for strftime... yes
checking for strnlen... yes
checking for strpbrk... yes
checking for strstr... yes
checking for strtod... yes
checking for strtol... yes
checking for strtoul... (cached) yes
checking for strtoll... yes
checking for strtoull... yes
checking for strtoimax... yes
checking for strtoumax... yes
checking for dprintf... yes
checking for strchrnul... yes
checking for strdup... (cached) yes
checking libaudit.h usability... no
checking libaudit.h presence... no
checking for libaudit.h... no
checking whether AUDIT_USER_TTY is declared... yes
checking whether confstr is declared... yes
checking whether printf is declared... yes
checking whether sbrk is declared... yes
checking whether setregid is declared... yes
checking whether strcpy is declared... yes
checking whether strsignal is declared... yes
checking whether strtold is declared... yes
checking for broken strtold... no
checking for declaration of strtoimax... yes
checking for declaration of strtol... yes
checking for declaration of strtoll... yes
checking for declaration of strtoul... yes
checking for declaration of strtoull... yes
checking for declaration of strtoumax... yes
checking for alarm... yes
checking for fpurge... no
checking for __fpurge... yes
checking for snprintf... yes
checking for vsnprintf... yes
checking for working mktime... yes
checking for argz.h... (cached) yes
checking errno.h usability... yes
checking errno.h presence... yes
checking for errno.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking for malloc.h... (cached) yes
checking stdio_ext.h usability... yes
checking stdio_ext.h presence... yes
checking for stdio_ext.h... yes
checking for getpagesize... (cached) yes
checking for working mmap... (cached) yes
checking for __argz_count... (cached) yes
checking for __argz_next... (cached) yes
checking for __argz_stringify... (cached) yes
checking for dcgettext... yes
checking for mempcpy... (cached) yes
checking for munmap... (cached) yes
checking for stpcpy... (cached) yes
checking for strcspn... yes
checking wctype.h usability... yes
checking wctype.h presence... yes
checking for wctype.h... yes
checking wchar.h usability... yes
checking wchar.h presence... yes
checking for wchar.h... yes
checking langinfo.h usability... yes
checking langinfo.h presence... yes
checking for langinfo.h... yes
checking mbstr.h usability... no
checking mbstr.h presence... no
checking for mbstr.h... no
checking for mbrlen... yes
checking for mbscasecmp... no
checking for mbscmp... no
checking for mbsnrtowcs... yes
checking for mbsrtowcs... yes
checking for mbschr... no
checking for wcrtomb... yes
checking for wcscoll... yes
checking for wcsdup... yes
checking for wcwidth... yes
checking for wctype... yes
checking for wcswidth... yes
checking whether mbrtowc and mbstate_t are properly declared... yes
checking for iswlower... yes
checking for iswupper... yes
checking for towlower... yes
checking for towupper... yes
checking for iswctype... yes
checking for nl_langinfo and CODESET... yes
checking for wchar_t in wchar.h... yes
checking for wctype_t in wctype.h... yes
checking for wint_t in wctype.h... yes
checking for wcwidth broken with unicode combining characters... no
checking for locale_charset... no
checking for dlopen in -ldl... yes
checking for dlopen... yes
checking for dlclose... yes
checking for dlsym... yes
checking whether sys_siglist is declared... yes
checking type of array argument to getgroups... gid_t
checking for off_t... (cached) yes
checking for mode_t... yes
checking for uid_t in sys/types.h... (cached) yes
checking for pid_t... yes
checking for size_t... (cached) yes
checking for uintptr_t... yes
checking for ssize_t... yes
checking for time_t... yes
checking for long long... long long
checking for unsigned long long... unsigned long long
checking return type of signal handlers... (cached) void
checking for sig_atomic_t in signal.h... yes
checking size of char... 1
checking size of short... 2
checking size of int... 4
checking size of long... 8
checking size of char *... 8
checking size of double... 8
checking size of long long... 8
checking for u_int... yes
checking for u_long... yes
checking for bits16_t... no
checking for u_bits16_t... no
checking for bits32_t... no
checking for u_bits32_t... no
checking for bits64_t... no
checking for ptrdiff_t... yes
checking whether stat file-mode macros are broken... no
checking whether #! works in shell scripts... yes
checking whether the ctype macros accept non-ascii characters... no
checking if dup2 fails to clear the close-on-exec flag... no
checking whether pgrps need synchronization... no
checking for type of signal functions... posix
checking for sys_errlist and sys_nerr... yes
checking for sys_siglist in system C library... yes
checking for _sys_siglist in signal.h or unistd.h... yes
checking for _sys_siglist in system C library... yes
checking whether signal handlers are of type void... yes
checking for clock_t... yes
checking for sigset_t... yes
checking for sig_atomic_t... yes
checking for quad_t... yes
checking for intmax_t... yes
checking for uintmax_t... yes
checking for socklen_t... yes
checking for size and type of struct rlimit fields... rlim_t
checking size of intmax_t... 8
checking for struct termios.c_line... yes
checking for struct termio.c_line... yes
checking for struct dirent.d_ino... yes
checking for struct dirent.d_fileno... yes
checking for struct dirent.d_namlen... no
checking for struct winsize in sys/ioctl.h and termios.h... sys/ioctl.h
checking for struct timeval in sys/time.h and time.h... yes
checking for struct stat.st_blocks... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking for struct tm.tm_zone... yes
checking for struct timezone in sys/time.h and time.h... yes
checking for offset of exit status in return status from wait... 8
checking for struct timespec in <time.h>... yes
checking for struct stat.st_atim.tv_nsec... yes
checking whether struct stat.st_atim is of type struct timespec... yes
checking for the existence of strsignal... yes
checking if opendir() opens non-directories... no
checking whether ulimit can substitute for getdtablesize... yes
checking whether fpurge is declared... no
checking to see if getenv can be redefined... yes
checking if getcwd() will dynamically allocate memory with 0 size... yes
checking for presence of POSIX-style sigsetjmp/siglongjmp... present
checking whether or not strcoll and strcmp differ... no
checking for standard-conformant snprintf... yes
checking for standard-conformant vsnprintf... yes
checking for standard-conformant putenv declaration... yes
checking for standard-conformant unsetenv declaration... yes
checking for printf floating point output in hex notation... yes
checking if signal handlers must be reinstalled when invoked... no
checking for presence of necessary job control definitions... present
checking for presence of named pipes... present
checking whether termios.h defines TIOCGWINSZ... no
checking whether sys/ioctl.h defines TIOCGWINSZ... yes
checking for TIOCSTAT in sys/ioctl.h... no
checking for FIONREAD in sys/ioctl.h... yes
checking whether WCONTINUED flag to waitpid is unavailable or available but broken... no
checking for speed_t in sys/types.h... no
checking whether getpw functions are declared in pwd.h... yes
checking for unusable real-time signals due to large values... no
checking for tgetent... no
checking for tgetent in -ltermcap... no
checking for tgetent in -ltinfo... no
checking for tgetent in -lcurses... no
checking for tgetent in -lncurses... no
checking which library has the termcap functions... using gnutermcap
checking whether /dev/fd is available... standard
checking whether /dev/stdin stdout stderr are available... present
checking for default mail directory... /var/mail
checking shared object configuration for loadable builtins... supported
configure: creating ./config.status
config.status: creating Makefile
config.status: creating builtins/Makefile
config.status: creating lib/readline/Makefile
config.status: creating lib/glob/Makefile
config.status: creating lib/intl/Makefile
config.status: creating lib/malloc/Makefile
config.status: creating lib/sh/Makefile
config.status: creating lib/termcap/Makefile
config.status: creating lib/tilde/Makefile
config.status: creating doc/Makefile
config.status: creating support/Makefile
config.status: creating po/Makefile.in
config.status: creating examples/loadables/Makefile
config.status: creating examples/loadables/Makefile.inc
config.status: creating examples/loadables/perl/Makefile
config.status: creating support/bash.pc
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing default-1 commands
config.status: creating po/POTFILES
config.status: creating po/Makefile
config.status: executing default commands
joe@joe-Satellite-L15W-B:~/bash-4.4$ make
/bin/sh ./support/mkversion.sh -b -S . -s release -d 4.4 -o newversion.h \
	&& mv newversion.h version.h
gcc  -DPROGRAM='"bash"' -DCONF_HOSTTYPE='"x86_64"' -DCONF_OSTYPE='"linux-gnu"' -DCONF_MACHTYPE='"x86_64-unknown-linux-gnu"' -DCONF_VENDOR='"unknown"' -DLOCALEDIR='"/usr/local/share/locale"' -DPACKAGE='"bash"' -DSHELL -DHAVE_CONFIG_H   -I.  -I. -I./include -I./lib   -g -O2 -Wno-parentheses -Wno-format-security  -DBUILDTOOL -c -o buildversion.o ./version.c
gcc  -DPROGRAM='"bash"' -DCONF_HOSTTYPE='"x86_64"' -DCONF_OSTYPE='"linux-gnu"' -DCONF_MACHTYPE='"x86_64-unknown-linux-gnu"' -DCONF_VENDOR='"unknown"' -DLOCALEDIR='"/usr/local/share/locale"' -DPACKAGE='"bash"' -DSHELL -DHAVE_CONFIG_H   -I.  -I. -I./include -I./lib   -g -O2 -Wno-parentheses -Wno-format-security  -L./lib/termcap  -rdynamic  -g -O2 -Wno-parentheses -Wno-format-security -rdynamic -g -O2 -Wno-parentheses -Wno-format-security  -o bashversion ./support/bashversion.c buildversion.o 

	  ***********************************************************
	  *                                                         *
	  * GNU bash, version 4.4.0(3)-release (x86_64-unknown-linux-gnu)
	  *                                                         *
	  ***********************************************************

rm -f variables.o
gcc  -DPROGRAM='"bash"' -DCONF_HOSTTYPE='"x86_64"' -DCONF_OSTYPE='"linux-gnu"' -DCONF_MACHTYPE='"x86_64-unknown-linux-gnu"' -DCONF_VENDOR='"unknown"' -DLOCALEDIR='"/usr/local/share/locale"' -DPACKAGE='"bash"' -DSHELL -DHAVE_CONFIG_H   -I.  -I. -I./include -I./lib   -g -O2 -Wno-parentheses -Wno-format-security -c variables.c
rm -f version.o
gcc  -DPROGRAM='"bash"' -DCONF_HOSTTYPE='"x86_64"' -DCONF_OSTYPE='"linux-gnu"' -DCONF_MACHTYPE='"x86_64-unknown-linux-gnu"' -DCONF_VENDOR='"unknown"' -DLOCALEDIR='"/usr/local/share/locale"' -DPACKAGE='"bash"' -DSHELL -DHAVE_CONFIG_H   -I.  -I. -I./include -I./lib   -g -O2 -Wno-parentheses -Wno-format-security -c version.c
make[1]: Entering directory '/home/joe/bash-4.4/builtins'
make[1]: Nothing to be done for 'targets'.
make[1]: Leaving directory '/home/joe/bash-4.4/builtins'
making lib/glob/libglob.a in ./lib/glob
make[1]: Entering directory '/home/joe/bash-4.4/lib/glob'
( cd /home/joe/bash-4.4 && make -w pathnames.h )
make[2]: Entering directory '/home/joe/bash-4.4'
make[2]: Leaving directory '/home/joe/bash-4.4'
make[1]: Leaving directory '/home/joe/bash-4.4/lib/glob'
making lib/sh/libsh.a in ./lib/sh
make[1]: Entering directory '/home/joe/bash-4.4/lib/sh'
( cd /home/joe/bash-4.4 && make -w pathnames.h )
make[2]: Entering directory '/home/joe/bash-4.4'
make[2]: Leaving directory '/home/joe/bash-4.4'
make[1]: Leaving directory '/home/joe/bash-4.4/lib/sh'
making lib/readline/libreadline.a in ./lib/readline
make[1]: Entering directory '/home/joe/bash-4.4/lib/readline'
make[1]: 'libreadline.a' is up to date.
make[1]: Leaving directory '/home/joe/bash-4.4/lib/readline'
making lib/readline/libhistory.a in ./lib/readline
make[1]: Entering directory '/home/joe/bash-4.4/lib/readline'
make[1]: 'libhistory.a' is up to date.
make[1]: Leaving directory '/home/joe/bash-4.4/lib/readline'
making lib/termcap/libtermcap.a in ./lib/termcap
make[1]: Entering directory '/home/joe/bash-4.4/lib/termcap'
make[1]: 'libtermcap.a' is up to date.
make[1]: Leaving directory '/home/joe/bash-4.4/lib/termcap'
making lib/tilde/libtilde.a in ./lib/tilde
make[1]: Entering directory '/home/joe/bash-4.4/lib/tilde'
make[1]: 'libtilde.a' is up to date.
make[1]: Leaving directory '/home/joe/bash-4.4/lib/tilde'
make[1]: Entering directory '/home/joe/bash-4.4/lib/malloc'
rm -f libmalloc.a
ar cr libmalloc.a malloc.o  trace.o stats.o table.o watch.o
test -n "ranlib" && ranlib libmalloc.a
make[1]: Leaving directory '/home/joe/bash-4.4/lib/malloc'
rm -f bash
gcc -L./builtins -L./lib/readline -L./lib/readline -L./lib/glob -L./lib/tilde -L./lib/malloc -L./lib/sh -L./lib/termcap  -rdynamic  -g -O2 -Wno-parentheses -Wno-format-security -o bash shell.o eval.o y.tab.o general.o make_cmd.o print_cmd.o  dispose_cmd.o execute_cmd.o variables.o copy_cmd.o error.o expr.o flags.o jobs.o subst.o hashcmd.o hashlib.o mailcheck.o trap.o input.o unwind_prot.o pathexp.o sig.o test.o version.o alias.o array.o arrayfunc.o assoc.o braces.o bracecomp.o bashhist.o bashline.o  list.o stringlib.o locale.o findcmd.o redir.o pcomplete.o pcomplib.o syntax.o xmalloc.o  -lbuiltins -lglob -lsh -lreadline -lhistory ./lib/termcap/libtermcap.a -ltilde -lmalloc    -ldl 
/usr/bin/ld: ./lib/sh/libsh.a(tmpfile.o): in function `sh_mktmpname':
/home/joe/bash-4.4/lib/sh/tmpfile.c:152: warning: the use of `mktemp' is dangerous, better use `mkstemp' or `mkdtemp'
ls -l bash
-rwxr-xr-x 1 joe joe 4782368 Mar 31 17:03 bash
size bash
   text	   data	    bss	    dec	    hex	filename
1098460	  46972	  40256	1185688	 121798	bash

joe@joe-Satellite-L15W-B:~/bash-4.4$ sudo make install
[sudo] password for joe:

  ***********************************************************
  *                                                         *
  * GNU bash, version 4.4.0(3)-release (x86_64-unknown-linux-gnu)
  *                                                         *
  ***********************************************************

make[1]: Entering directory ‘/home/joe/bash-4.4/builtins’
make[1]: Nothing to be done for ‘targets’.
make[1]: Leaving directory ‘/home/joe/bash-4.4/builtins’
making lib/glob/libglob.a in ./lib/glob
make[1]: Entering directory ‘/home/joe/bash-4.4/lib/glob’
( cd /home/joe/bash-4.4 && make -w pathnames.h )
make[2]: Entering directory ‘/home/joe/bash-4.4’
make[2]: Leaving directory ‘/home/joe/bash-4.4’
make[1]: Leaving directory ‘/home/joe/bash-4.4/lib/glob’
making lib/sh/libsh.a in ./lib/sh
make[1]: Entering directory ‘/home/joe/bash-4.4/lib/sh’
( cd /home/joe/bash-4.4 && make -w pathnames.h )
make[2]: Entering directory ‘/home/joe/bash-4.4’
make[2]: Leaving directory ‘/home/joe/bash-4.4’
make[1]: Leaving directory ‘/home/joe/bash-4.4/lib/sh’
making lib/readline/libreadline.a in ./lib/readline
make[1]: Entering directory ‘/home/joe/bash-4.4/lib/readline’
make[1]: ‘libreadline.a’ is up to date.
make[1]: Leaving directory ‘/home/joe/bash-4.4/lib/readline’
making lib/readline/libhistory.a in ./lib/readline
make[1]: Entering directory ‘/home/joe/bash-4.4/lib/readline’
make[1]: ‘libhistory.a’ is up to date.
make[1]: Leaving directory ‘/home/joe/bash-4.4/lib/readline’
making lib/termcap/libtermcap.a in ./lib/termcap
make[1]: Entering directory ‘/home/joe/bash-4.4/lib/termcap’
make[1]: ‘libtermcap.a’ is up to date.
make[1]: Leaving directory ‘/home/joe/bash-4.4/lib/termcap’
making lib/tilde/libtilde.a in ./lib/tilde
make[1]: Entering directory ‘/home/joe/bash-4.4/lib/tilde’
make[1]: ‘libtilde.a’ is up to date.
make[1]: Leaving directory ‘/home/joe/bash-4.4/lib/tilde’
( cd ./po/ ; make DESTDIR= installdirs )
make[1]: Entering directory ‘/home/joe/bash-4.4/po’
/bin/sh /home/joe/bash-4.4/./support/mkinstalldirs /usr/local/share
if test “bash” = “gettext-tools”; then
/bin/sh /home/joe/bash-4.4/./support/mkinstalldirs /usr/local/share/gettext/po;
else
: ;
fi
make[1]: Leaving directory ‘/home/joe/bash-4.4/po’
/usr/bin/install -c -m 0755 bash /usr/local/bin/bash
/usr/bin/install -c -m 0555 bashbug /usr/local/bin/bashbug
/usr/bin/install -c -m 644 ./CHANGES ./COMPAT ./NEWS ./POSIX ./RBASH ./README /usr/local/share/doc/bash
( cd ./doc ; make
man1dir=/usr/local/share/man/man1 man1ext=.1
man3dir=/usr/local/share/man/man3 man3ext=.3
infodir=/usr/local/share/info htmldir=/usr/local/share/doc/bash DESTDIR= install )
make[1]: Entering directory ‘/home/joe/bash-4.4/doc’
/bin/sh …/support/mkinstalldirs /usr/local/share/man/man1
/bin/sh …/support/mkinstalldirs /usr/local/share/info
/bin/sh …/support/mkinstalldirs /usr/local/share/doc/bash
if test -n “/usr/local/share/doc/bash” ; then
/bin/sh …/support/mkinstalldirs /usr/local/share/doc/bash ;
fi
/usr/bin/install -c -m 644 ./bash.1 /usr/local/share/man/man1/bash.1
/usr/bin/install -c -m 644 ./bashbug.1 /usr/local/share/man/man1/bashbug.1
/usr/bin/install -c -m 644 ./FAQ ./INTRO /usr/local/share/doc/bash
if test -f bash.info; then d=.; else d=.; fi;
/usr/bin/install -c -m 644 $d/bash.info /usr/local/share/info/bash.info
if /bin/sh -c ‘install-info --version’ >/dev/null 2>&1; then
install-info --dir-file=/usr/local/share/info/dir /usr/local/share/info/bash.info;
else true; fi
if test -n “/usr/local/share/doc/bash” ; then
/usr/bin/install -c -m 644 ./bash.html /usr/local/share/doc/bash ;
/usr/bin/install -c -m 644 ./bashref.html /usr/local/share/doc/bash ;
fi
make[1]: Leaving directory ‘/home/joe/bash-4.4/doc’
( cd ./builtins ; make DESTDIR= install )
make[1]: Entering directory ‘/home/joe/bash-4.4/builtins’
make[1]: Nothing to be done for ‘install’.
make[1]: Leaving directory ‘/home/joe/bash-4.4/builtins’
( cd ./po/ ; make DESTDIR= install )
make[1]: Entering directory ‘/home/joe/bash-4.4/po’
/bin/sh /home/joe/bash-4.4/./support/mkinstalldirs /usr/local/share
installing en@quot.gmo as /usr/local/share/locale/en@quot/LC_MESSAGES/bash.mo
installing en@boldquot.gmo as /usr/local/share/locale/en@boldquot/LC_MESSAGES/bash.mo
installing af.gmo as /usr/local/share/locale/af/LC_MESSAGES/bash.mo
installing bg.gmo as /usr/local/share/locale/bg/LC_MESSAGES/bash.mo
installing ca.gmo as /usr/local/share/locale/ca/LC_MESSAGES/bash.mo
installing cs.gmo as /usr/local/share/locale/cs/LC_MESSAGES/bash.mo
installing da.gmo as /usr/local/share/locale/da/LC_MESSAGES/bash.mo
installing de.gmo as /usr/local/share/locale/de/LC_MESSAGES/bash.mo
installing el.gmo as /usr/local/share/locale/el/LC_MESSAGES/bash.mo
installing eo.gmo as /usr/local/share/locale/eo/LC_MESSAGES/bash.mo
installing es.gmo as /usr/local/share/locale/es/LC_MESSAGES/bash.mo
installing et.gmo as /usr/local/share/locale/et/LC_MESSAGES/bash.mo
installing fi.gmo as /usr/local/share/locale/fi/LC_MESSAGES/bash.mo
installing fr.gmo as /usr/local/share/locale/fr/LC_MESSAGES/bash.mo
installing ga.gmo as /usr/local/share/locale/ga/LC_MESSAGES/bash.mo
installing gl.gmo as /usr/local/share/locale/gl/LC_MESSAGES/bash.mo
installing hr.gmo as /usr/local/share/locale/hr/LC_MESSAGES/bash.mo
installing hu.gmo as /usr/local/share/locale/hu/LC_MESSAGES/bash.mo
installing id.gmo as /usr/local/share/locale/id/LC_MESSAGES/bash.mo
installing it.gmo as /usr/local/share/locale/it/LC_MESSAGES/bash.mo
installing ja.gmo as /usr/local/share/locale/ja/LC_MESSAGES/bash.mo
installing lt.gmo as /usr/local/share/locale/lt/LC_MESSAGES/bash.mo
installing nb.gmo as /usr/local/share/locale/nb/LC_MESSAGES/bash.mo
installing nl.gmo as /usr/local/share/locale/nl/LC_MESSAGES/bash.mo
installing pl.gmo as /usr/local/share/locale/pl/LC_MESSAGES/bash.mo
installing pt_BR.gmo as /usr/local/share/locale/pt_BR/LC_MESSAGES/bash.mo
installing ro.gmo as /usr/local/share/locale/ro/LC_MESSAGES/bash.mo
installing ru.gmo as /usr/local/share/locale/ru/LC_MESSAGES/bash.mo
installing sk.gmo as /usr/local/share/locale/sk/LC_MESSAGES/bash.mo
installing sl.gmo as /usr/local/share/locale/sl/LC_MESSAGES/bash.mo
installing sr.gmo as /usr/local/share/locale/sr/LC_MESSAGES/bash.mo
installing sv.gmo as /usr/local/share/locale/sv/LC_MESSAGES/bash.mo
installing tr.gmo as /usr/local/share/locale/tr/LC_MESSAGES/bash.mo
installing uk.gmo as /usr/local/share/locale/uk/LC_MESSAGES/bash.mo
installing vi.gmo as /usr/local/share/locale/vi/LC_MESSAGES/bash.mo
installing zh_CN.gmo as /usr/local/share/locale/zh_CN/LC_MESSAGES/bash.mo
installing zh_TW.gmo as /usr/local/share/locale/zh_TW/LC_MESSAGES/bash.mo
if test “bash” = “gettext-tools”; then
/bin/sh /home/joe/bash-4.4/./support/mkinstalldirs /usr/local/share/gettext/po;
for file in Makefile.in.in remove-potcdate.sin quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot Makevars.template; do
/usr/bin/install -c -m 644 ./$file
/usr/local/share/gettext/po/$file;
done;
for file in Makevars; do
rm -f /usr/local/share/gettext/po/$file;
done;
else
: ;
fi
make[1]: Leaving directory ‘/home/joe/bash-4.4/po’
( cd /home/joe/bash-4.4/examples/loadables && make DESTDIR= install )
make[1]: Entering directory ‘/home/joe/bash-4.4/examples/loadables’
make[2]: Entering directory ‘/home/joe/bash-4.4’
/usr/bin/install -c -m 644 ./support/bash.pc /usr/local/lib/pkgconfig/bash.pc
make[2]: Leaving directory ‘/home/joe/bash-4.4’
installing example loadable builtins in /usr/local/lib/bash
print
truefalse
sleep
finfo
logname
basename
dirname
tty
pathchk
tee
head
mkdir
rmdir
printenv
id
whoami
uname
sync
push
ln
unlink
realpath
strftime
mypid
setpgid
make[1]: Leaving directory ‘/home/joe/bash-4.4/examples/loadables’

joe@joe-Satellite-L15W-B:~/bash-4.4$ curl -ssl https://install.pi-hole.net | b^C
joe@joe-Satellite-L15W-B:~/bash-4.4$ curl -ssl https://install.pi-hole.net | sudo bash -x
+ Found
bash: line 1: Found: command not found
joe@joe-Satellite-L15W-B:~/bash-4.4$ ^C
joe@joe-Satellite-L15W-B:~/bash-4.4$ ^C
joe@joe-Satellite-L15W-B:~/bash-4.4$

Ubuntu already comes with bash, so you should not need to install it. The fact that it is not working properly indicates an OS level problem.

Your best option may be a clean reinstall of both the OS and Pi-hole.