Commit graph

1439 commits

Author SHA1 Message Date
yubiuser
1c286c7bc4
Select proper PHP version on RPM based OS after INSTALLER_DEPS have been installed (#4325)
* Select proper PHP version on RPM based OS after INSTALLER_DEPS have been installed

* Remove check for unsupported RPM distros as it is checked in os_check already

* Add select_rpm_php function to tox tests

Signed-off-by: Christian König <ckoenig@posteo.de>
2021-09-12 13:40:37 -07:00
Adam Warner
e393048488
Merge pull request #4229 from MichaIng/patch-3
Hardcode whiptail dimensions to 20 rows and 70 chars width
2021-09-11 21:37:14 +01:00
Adam Warner
89e187947e
Merge pull request #4282 from pi-hole/new/RFC6761
Install RFC6761 config file
2021-09-11 20:44:46 +01:00
Christian König
839a70cc37 Add sudo to apt-get recommendation
Signed-off-by: Christian König <ckoenig@posteo.de>
2021-08-27 19:16:15 +02:00
DL6ER
ff64d8cf4d
Use variable in user output, too
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-08-16 09:57:12 +02:00
MichaIng
e1dca46423 Hardcode whiptail dimensions to 20 rows and 70 chars width
With the suggested way to call the installer via "curl -sSL https://install.pi-hole.net | bash", STDIN is no terminal, but overridden by the curl output, hence in most cases, the minimum dimensions were applied, even on larger screens. All whiptail calls are hence assured to work fine with those dimensions, aside of one case, making the calculations obsolete.

This commit hardcodes the whiptail dimensions to the prior minimum and removes the calculations. This also helps with testing, as it does not matter anymore how the script is called, and developers have a clearly defined space to make dialogs look nice, including line breaks, menu and list heights.

The only case which does not fit the 70 character width, the second menu entry of the "pihole -r" dialog, has been shortened accordingly. This was not an issue before, as "pihole -r" does not override the scripts STDIN and hence did allow larger dimensions based on the now removed calculations.

See the following discussions for reference:
- https://github.com/pi-hole/pi-hole/issues/3323
- https://github.com/pi-hole/pi-hole/pull/4197#issuecomment-876702380

Signed-off-by: MichaIng <micha@dietpi.com>
2021-08-15 18:04:11 +02:00
DL6ER
ea5a3bf0b2
Install RFC6761 config file
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-08-15 11:21:24 +02:00
Adam Warner
bdab701470
Remove dhcpcd5 dependency, however still help the user set the static IP if dhcpd5 is already installed (i.e on raspbian)
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2021-08-05 19:02:37 +01:00
Adam Warner
1ecb9165ee
Remove weird global counter
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2021-08-05 19:02:37 +01:00
Adam Warner
2ff3b95117
put FTL Install back to where it was
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2021-08-05 19:02:37 +01:00
Adam Warner
3ad5097b12
Change initial install script order:
1. Ensure we have a compatible package manager
  2. Install required packages for os_check to run (we need dnsutils and grep for this
  3. Try to install FTL
  4. FTL installed? Install installer dependencies and continue as normal - no other dependencies are installed until user has gone through all whiptails

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2021-08-05 19:02:37 +01:00
Adam Warner
d68a2ffaf3
Install only minimal requiered package before performing os_check
Co-authored-by: Christian König <ckoenig@posteo.de>
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2021-08-05 19:02:36 +01:00
Adam Warner
913dcead7f
move chmod/chown of macvendor.db to pihole-FTL.service
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2021-08-05 19:02:36 +01:00
Adam Warner
1358209a9a
rename distro_check to package_manager_detect, as it is more in keeping with what the function actually does
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2021-08-05 19:02:36 +01:00
DL6ER
d0eb0d5037
Remove extra failure display when installation of logrotate file is skipped because the file already exists
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-07-28 21:18:02 +02:00
Dan Schaper
b1ea60484e
Guard for logrotate func non-zero return
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2021-07-26 13:22:26 -07:00
Daniel
fdca19e66d Support and test Debian Bullsye (11)
Signed-off-by: Daniel <daniel@developerdan.com>
2021-07-07 19:09:54 +00:00
Adam Warner
c120f8a8d8
Revert "Include lighttpd-mod-deflate since it is no longer provided by default in Bullsye" 2021-07-02 22:09:41 +01:00
Daniel
2b49988013
Include lighttpd-mod-deflate in the PIHOLE_WEB_DEPS list since it is no longer provided by default in Debian Bullseye
Signed-off-by: Daniel <daniel@developerdan.com>
2021-07-01 02:20:22 +00:00
Dan Schaper
4f660966d0
Shellchecker
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2021-06-20 11:19:19 -07:00
Dan Schaper
7df22cd8e0
Check for logroate script existing first.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2021-06-20 11:18:33 -07:00
MichaIng
f3ceebbe06
Re-remove wget from dependencies
The dependency has been removed here: https://github.com/pi-hole/pi-hole/pull/3185
But accidentally re-added here: 982c1b0059 (diff-595630a29a855f6d667a84ca0662042e826bf3ec56322ef61d4a6ef149147d23)

wget is still not used in any Pi-hole script, hence it can be removed safely from dependencies.

Signed-off-by: MichaIng <micha@dietpi.com>
2021-04-30 20:48:12 +02:00
MichaIng
2ba350984f Enable PHP8 support for Debian/Ubuntu
Since PHP8.0, the JSON extension is a core PHP extension and hence the php8.0-json package does not exist and is not required:
- https://www.php.net/manual/json.installation.php
- https://packages.debian.org/php8.0-json

Solves: https://discourse.pi-hole.net/t/php-8-packages-not-found/46286

Signed-off-by: MichaIng <micha@dietpi.com>
2021-04-18 15:33:05 +02:00
DL6ER
74948ae5c1
The correct port separator is '#' not ':' in dnsmasq style. This should not have been changed in #4083 in the first place.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2021-04-14 22:53:12 +02:00
bcambl
d5f13018a7 Merge branch 'release/v5.3' into fedora_33_support
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2021-04-12 20:06:11 -06:00
jbzdarkid
8090071eff Update regex to disallow leading zeros
Also updated a comment to point to a non-experimental RFC.

Signed-off-by: jbzdarkid <jbzdarkid@gmail.com>
2021-03-21 16:27:08 -07:00
Joseph Blackman
89c80947df Improve regexes for ipv4 matching
Signed-off-by: jbzdarkid <jbzdarkid@gmail.com>
2021-03-21 16:24:35 -07:00
jbzdarkid
20b6f9cceb Improve comments in basic-install.sh
Signed-off-by: jbzdarkid <jbzdarkid@gmail.com>
2021-03-17 18:37:18 -07:00
bcambl
c6810a0124 touch sysconfig network script when absent
sysconfig network scripts are missing on pure NetworkManager installs.
This commit touches a placeholder to allow the network configuration to
be generated and loaded via NetworkManager.

Signed-off-by: bcambl <blayne@blaynecampbell.com>
2021-01-19 23:06:39 -06:00
Dan Schaper
3f8fedfb16
Revert "Further failsafe check for available APT packages" 2021-01-17 11:10:24 -08:00
Dan Schaper
523f650157
Use the 'Location:' header only.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2021-01-12 13:42:51 -08:00
DL6ER
c5ed8f8bed
Merge pull request #3537 from MichaIng/patch-2
Further failsafe check for available APT packages
2021-01-07 11:56:52 +01:00
bcambl
a5422dbdf6 fix release check for centos stream
fixes #3947 #3953

Signed-off-by: bcambl <blayne@blaynecampbell.com>
2020-12-30 19:45:51 -06:00
Christian König
0d710fc9e3 Change wording in whiptail for adlist selection
Signed-off-by: Christian König <ckoenig@posteo.de>
2020-12-24 21:19:14 +01:00
Adam Warner
eb86a5e3b0
Merge pull request #3937 from yubiuser/remove_malwaredomains
Remove deprecated malwaredomains list
2020-12-24 15:24:48 +00:00
Dan Schaper
60fa93ab47
Add fallback for arch detection on i386/x86_64
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2020-12-23 14:59:28 -08:00
Christian König
b4102547ac Remove deprecated malwaredomains list
Signed-off-by: Christian König <ckoenig@posteo.de>
2020-12-21 13:11:59 +01:00
MichaIng
eb5661b553 Further failsafe check for available APT packages
- "apt-cache show package" succeeds as well if package is listed as (optional) dependency or conflict by another package, hence is not a 100% reliable measure.
- There is no command which explicitly checks which package/name can be selected by apt-get for install. An install simulation/dry-run is possible as it was before Pi-hole v5.1, or the whole package cache can be scraped, which is still the less time consuming solution.
- Allow to succeed if another package "provides" it, like "php7.3-apcu" provided by "php-apcu" or "awk" provided by "mawk" and "gawk", in which case the non-virtual package is selected automatically by apt-get.

For reference: 066b89fa41

Signed-off-by: MichaIng <micha@dietpi.com>
2020-12-18 23:20:24 +01:00
Adam Warner
e47eb30a6e
Update automated install/basic-install.sh
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-12-02 20:49:07 +00:00
Adam Warner
641951b3a0
add some meaningful outputSigned-off-by: Adam Warner <me@adamwarner.co.uk> 2020-12-02 20:40:51 +00:00
Adam Warner
61f13a334d
Don't delete an existing directory and clone our repo in its place. TODO: Something more robust
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-12-02 20:19:59 +00:00
Christian König
0ecb8bf5e9 Add lsof to dependencies for non Debian OS
Signed-off-by: Christian König <ckoenig@posteo.de>
2020-11-29 21:05:40 +01:00
Adam Warner
a8e97257d7
Ensure entries of PIHOLE_DNS_10 and above are not deleted when removing PIHOLE_DNS_1 and PIHOLE_DNS_2
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-11-29 15:08:46 +00:00
Christian König
065e5cb1fe Add DNSSEC to OpenDNS description
Signed-off-by: Christian König <ckoenig@posteo.de>
2020-11-24 21:02:53 +01:00
Adam Warner
541b53229c
Include secondary upstream DNS for Quad9+Filter+ECS
Co-authored-by: Daniel Tulleman <github@be-lumino.us>
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-11-18 22:06:03 +00:00
Grégory Sanchez
e26472756f Merge branch 'development' into fix/unattended_install 2020-11-16 23:33:07 +01:00
Grégory Sanchez
6826d9f316 fix(basic-install): unattended install should finish without interaction
Fixes: https://github.com/pi-hole/pi-hole/issues/3617

Signed-off-by: Grégory Sanchez <gregory.sanchez@icloud.com>
2020-11-16 23:15:02 +01:00
Adam Warner
bd6ca0ad62
Merge pull request #3825 from yubiuser/tweak/cross
Change icon from cross to [i] for root user check
2020-11-15 20:42:05 +00:00
Viet Hung Nguyen
ae4e41eaaa Re-run the script as root instead of piping to bash
Signed-off-by: Viet Hung Nguyen <hvn@familug.org>
2020-10-30 23:53:31 +07:00
Christian König
0ae020ef82 Change icon from cross to [i]# for root user check
Signed-off-by: Christian König <ckoenig@posteo.de>
2020-10-29 20:37:08 +01:00
DL6ER
83f2e2d85a
Merge pull request #3801 from pi-hole/new/armv4_armv5_armv8
Add native ARMv4T, ARMv5TE and ARMv8-A support
2020-10-18 19:53:56 +02:00
DL6ER
01c9bbd3ca
Improve processor detection to use the new dedicated ARMv4T, ARMv5TE and ARMv8-A binaries we provide for FTL.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2020-10-14 20:31:22 +02:00
Adam Warner
59b0a6af6f
Remove references to privacy level 4 (no longer functional)
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-10-13 23:53:23 +01:00
MichaIng
615b19c3d6
web server question enhancements (#3225)
+ Do not ask to install the web server, if the web interface has been deselected before.
+ Add additional info, that PHP modules need to be installed manually, when web server is deselected and the web server user needs to be member of the "pihole" group.
+ Consequently use webroot variable instead of /var/www/html

Signed-off-by: MichaIng <micha@dietpi.com>
2020-10-09 16:12:21 +02:00
Christian König
e9796d5671 Remove traces of previous default adlists
Signed-off-by: Christian König <ckoenig@posteo.de>
2020-09-28 06:15:46 +02:00
Adam Warner
d6c4f0696f
Merge pull request #3698 from yubiuser/remove/FreeSpaceCheck
Remove check for free disk space and associated variables
2020-09-21 08:47:41 +01:00
DirkJanIT
b88510d89a
Add CACHE_SIZE to setupVars (#3170)
* Update 01-pihole.conf

Signed-off-by: DoubleOhmSeven <57564379+DoubleOhmSeven@users.noreply.github.com>

* Update basic-install.sh

Signed-off-by: DoubleOhmSeven <57564379+DoubleOhmSeven@users.noreply.github.com>

Co-authored-by: DoubleOhmSeven <57564379+DoubleOhmSeven@users.noreply.github.com>
2020-09-17 23:13:40 +02:00
Blayne Campbell
4d98e156b6
Merge pull request #3607 from cgzones/selinux
basic-install: document how to continue after SELinux check
2020-09-16 23:54:05 -06:00
Adam Warner
e02cf6fac5
further tweaks, plus a spelling mistake correction
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-08-23 14:50:04 +01:00
Adam Warner
8e219cb799
Make output more meaningful in case of dig failure.
Include dig return code and response in debug run

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-08-23 10:48:15 +01:00
Christian König
65786ba5d6 Remove check for free disk space and associated variables
Signed-off-by: Christian König <ckoenig@posteo.de>
2020-08-18 20:16:35 +02:00
Adam Warner
42f55f5202
Merge pull request #3688 from pi-hole/tweak/os-check
Tweaks to os_check() Redux
2020-08-17 17:31:58 +01:00
Adam Warner
725f02f442
Merge pull request #3673 from yubiuser/fix/double_check_adlist_not_selected
Revert "fix #3336 by creating adlist file even if no list was selecte…
2020-08-17 17:30:31 +01:00
Dan Schaper
ebdb68a47a
display_warning fixes
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2020-08-15 10:54:31 -07:00
Dan Schaper
623ce1fe18
Tabs and debug.sh
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2020-08-14 14:37:58 -07:00
Dan Schaper
57e65dd5c0
Use fewer subshells and descriptive variables.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2020-08-14 11:42:54 -07:00
Adam Warner
bb1a6243d6
Merge pull request #3669 from pi-hole/release/v5.1.2
Release/v5.1.2 to development
2020-08-14 16:28:53 +01:00
Christian König
5c72ff75d9 Revert "fix #3336 by creating adlist file even if no list was selected by user"
This reverts commit 3c6ea2612d.

Signed-off-by: Christian König <ckoenig@posteo.de>
2020-08-10 23:52:53 +02:00
DL6ER
b5983a3fc1
Do not require first element to be a hex value at any costs. It may also be a : in the valid address ::1
Signed-off-by: DL6ER <dl6er@dl6er.de>
2020-08-04 22:11:32 +02:00
DL6ER
319b8eef75
Merge pull request #3527 from MichaIng/patch-1
Add default locations to PATH to assure that all basic commands are available
2020-07-31 18:14:45 +02:00
Adam Warner
48820d181c
Merge pull request #3620 from yubiuser/tweak/dig_supportedOS
Report and exit if dig supportedOS returns nothing
2020-07-30 17:00:01 +01:00
Christian Göttsche
51daeaa6ab basic-install: document how to continue after SELinux check
Signed-off-by: Christian Göttsche <cgzones@googlemail.com>
2020-07-30 14:50:42 +02:00
Christian König
6fc7dc28a2 Count elements of array instead
Signed-off-by: Christian König <ckoenig@posteo.de>
2020-07-28 10:25:57 +02:00
Christian König
b207ceeab2 Report and exit if dig supportedOS returns nothing
Signed-off-by: Christian König <ckoenig@posteo.de>
2020-07-28 09:51:31 +02:00
Christian König
8380112129 Resolve conflicts
Signed-off-by: Christian König <ckoenig@posteo.de>
2020-07-28 09:40:45 +02:00
Adam Warner
0ff32c3629
Use ns1.pi-hole.net to resolve versions.pi-hole.net so that we do not see DNS cookie issues
Co-Authored-by: Dan Schaper <dan.schaper@pi-hole.net>
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-07-27 17:44:22 +01:00
Dan Schaper
0a81d687e8
Update automated install/basic-install.sh 2020-07-26 12:31:11 -07:00
Christian König
dfcdfd4b0a Remove empty line
Signed-off-by: Christian König <ckoenig@posteo.de>
2020-07-26 12:27:55 +02:00
Christian König
ec9f490fcc Remove separate install function, move to installConfigs(), use pihole syntax
Signed-off-by: Christian König <ckoenig@posteo.de>
2020-07-24 20:32:32 +02:00
Christian König
331502e14c Add variable that got lost
Signed-off-by: Christian König <ckoenig@posteo.de>
2020-07-23 20:52:21 +02:00
Christian König
18c24d985f Create custom.list during install/update if it doesn't exist
Signed-off-by: Christian König <ckoenig@posteo.de>
2020-07-23 20:43:12 +02:00
Adam Warner
ddb36c013d
it helps if the echo goes variable set goes in the right place
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-07-22 22:39:03 +01:00
Adam Warner
98dc51869e
accidentally missed \\n
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-07-22 22:30:51 +01:00
Adam Warner
510b646736
change up the verbiage with something that works (tested)
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-07-22 22:29:38 +01:00
Adam Warner
ea22774d16
Wrap entire function in the check for the ENVVAR
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-07-21 18:47:13 +01:00
MichaIng
25b873cf7b Add default locations to PATH to assure that all basic commands are available
Signed-off-by: MichaIng <micha@dietpi.com>
2020-07-18 17:30:27 +02:00
Adam Warner
643d2c0f3e
add missing port number validation section to valid_ip6
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-07-16 21:31:45 +01:00
Adam Warner
533e5dddd0
clarify examples in case of unsupported OS
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-07-16 18:33:53 +01:00
Adam Warner
acfb092e4b
fix minor bug in 5.1
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-07-15 23:38:08 +01:00
Adam Warner
3205606fc3
Also validate IPV6 in the setdns function
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-06-23 20:38:18 +01:00
DL6ER
2c3aa9ab00
Merge pull request #3491 from pi-hole/fix_ip_address_section
Fix fresh install on dev branch not working
2020-06-21 21:58:36 +02:00
DL6ER
bf392d7a60
Merge pull request #3489 from pi-hole/ip_validation
Improve IP validation function
2020-06-21 21:56:30 +02:00
Adam Warner
bbfbf67fcf
further simplify the function, per @dl6er's suggestion
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-06-15 22:52:24 +01:00
Adam Warner
fe30ce10d3
simpler regex suggested by @MichaIng
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-06-15 21:21:40 +01:00
Adam Warner
7ea6d7b92b
remove ; so IFS changes don't stick
Co-authored-by: Dan Schaper <dan.schaper@pi-hole.net>
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-06-14 00:17:51 +01:00
Adam Warner
1ebf0785b6
move dnsutils/bind-utils to installed deps and only check OS is supported after installing installer deps
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-06-13 21:33:03 +01:00
Adam Warner
95f4c632f7
expand valid_ip to allow for custom ports
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-06-13 20:30:03 +01:00
Dan Schaper
4b59287683
Merge pull request #3441 from pi-hole/new/os_check
Display warning if unsupported OS is detected
2020-06-05 13:39:39 -07:00
Adam Warner
9844a3288f
Same change as 03a8cff
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-06-05 21:06:25 +01:00
jesterchen
7248d1a504 Ensure that adlistFile is created before chmodding
If an user installs Pi-hole without selecting any adlists, the installer emits a warning and exits. By touching the file this is prevented.

Signed-off-by: jesterchen <github@jesterweb.de>
2020-06-01 12:06:02 +02:00
XhmikosR
7579ab178a Update links
* use https when possible
* replace coverage with a link to the docs page in README.md
* remove obsolete affiliate link in README.md

Signed-off-by: XhmikosR <xhmikosr@gmail.com>
2020-05-30 21:50:16 +03:00
Adam Warner
4f7bb7b811
Remove deprecated Disconnect lists from "defaults"
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-05-26 21:23:44 +01:00
DL6ER
b60ec8a48f
Merge pull request #3248 from MichaIng/patch-8
Start pihole-FTL after network
2020-05-25 21:27:27 +02:00
Adam Warner
acf2879057
Address sticklr complaints
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-05-25 17:49:19 +01:00
Adam Warner
af1129fc28
Add a check at the top of the script to determine if the script is being run on a supported OS
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-05-25 17:40:20 +01:00
Adam Warner
414ab53d9a
Use toggle instead of select to remove any hint of a doubt that the option already selected by default can be deselected
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-05-18 22:29:36 +01:00
MichaIng
5c17e41cf1 Start pihole-FTL after network
"$network" on a systemd-driven OS leads to "After=network-online.target" in the generated systemd unit.
This target is no guarantee that all network interfaces have been fully configured, as it depends on the related network services types, but at least it reduces the risk that those have not fully finished their job when pihole-FTL starts. If this is the case, certain issues can occur:
- https://github.com/pi-hole/pi-hole/issues/2924
- https://discourse.pi-hole.net/t/have-to-pihole-restartdns-after-reboot/28772

Runtime files are now consistently created in "/run" instead of "/var/run". The second is a symlink to the first for backwards compatibility but on none-ancient distro versions one should use "/run", systemd even prints a warnings if service files use "/var/run". The service file used "/run" and "/var/run" both, in cases for the same files/directories before, which does not directly cause issues currently, due to the symlink, but is inconsistent at best.

Signed-off-by: MichaIng <micha@dietpi.com>
2020-05-16 13:38:18 +02:00
pvogt09
3c6ea2612d fix #3336 by creating adlist file even if no list was selected by user
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2020-05-15 17:52:57 +02:00
MichaIng
7d79cf5cce
Only check SELinux states if "getenforce" command exists
- Currently, if the SELinux config file exists, installed SELinux is assumed.
- But removing e.g. an APT package via "apt-get remove" leaves config files in place, or they could be present for other reasons.
- If the getenforce command is not present but the config file is, currently the installer exists without error message when calling getenforce due to "set -e".
- With this change, the presence of getenforce command is checked first. If it is not present, selinux-utils is not installed, which is a core part of SELinux, pulled in by selinux-basics as well. So it can be assumed that no SELinux is active if this command is missing.

Signed-off-by: MichaIng <micha@dietpi.com>
2020-05-12 23:45:56 +02:00
Adam Warner
9e96ff37de
Fix merge conflicts
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-05-12 22:16:43 +01:00
Adam Warner
987ae3810d
binary, here, should be l_binary
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-05-11 22:03:33 +01:00
DL6ER
fdaf815f42
Merge pull request #3203 from MichaIng/patch-1
Failsafe checks for available APT package
2020-05-05 10:27:08 +02:00
DL6ER
988b1ff02f
Merge pull request #3204 from MichaIng/patch-3
Revert using hardcoded php-intl meta package
2020-05-05 10:24:56 +02:00
Dan Schaper
df13b9c32a
Merge pull request #3283 from pi-hole/tweak/remove_firewall_config
Remove configureFirewall function, the call to it, and related tests
2020-05-02 10:06:31 -07:00
DL6ER
f4965d8493
Merge pull request #3135 from pvogt09/development
Move permission change behind git reset
2020-04-28 19:44:58 +02:00
DL6ER
c0cf8dba87
Merge pull request #3226 from MichaIng/patch-6
Do not add pihole user to web server group
2020-04-28 19:39:55 +02:00
DL6ER
a9136d752a
Merge pull request #3246 from pvogt09/fix/user_exists
fixes #3217 by checking for existing pihole group
2020-04-28 19:38:12 +02:00
MichaIng
d7bac21149 Dot not add pihole user to web server group
This is and was never required and the pihole user does in fact not get any additional permissions through that group.

Signed-off-by: MichaIng <micha@dietpi.com>
2020-04-26 15:45:29 +02:00
MichaIng
dc6c53b6a3 Revert using hardcoded php-intl meta package
Using the meta package causes several issues:
- Install on Debian prior to Jessie and Ubuntu prior to Xenial is broken, since those do not serve the meta packages but php5-* packages instead.
- If $phpVer != "php", then multiple conflicting PHP versions can be installed.
- If "${phpVer}-intl" does not pull the correct package, then inherently "${phpVer}-xml" etc are wrong, too. This is theoretically possible, e.g. if PHP7.4 was installed while the webserver uses a concurrently installed PHP7.3 instance. Then the "php" shell command output can differ from what the webserver uses. This theoretical issue would need a different approach to derive $phpVer, not based on the shell command output but by asking the webserver somehow in the first place. But using $phpVer for some modules and hardcoded meta for the others can only lead to inconsistencies and issues.

Signed-off-by: MichaIng <micha@dietpi.com>
2020-04-26 15:44:13 +02:00
MichaIng
86d4c9b1e0 Failsafe checks for available APT package
When checking for available packages in APT repository, running a dry-run install can fail for other reasons, even if the package is available. Currently, in such case, wrong fallback packages are selected: https://github.com/pi-hole/pi-hole/issues/2888
"apt-cache show <pkg>" is a quicker method to check for available packages. This is now done as well to check if the fallbacks are available. If none is found, the installer exits with meaningful error message and exit code.

In rare cases, the APT list files can be missing when the installer is started. E.g. this could be on a fresh system, APT lists could have been moved to RAM or removed as a cleanup step. "apt-cache" calls will then fail, same as dry-run installs were. To assure that current package lists are checked, update the package cache directly after the Ubuntu universe repo has been added, only in the Debian/Ubuntu block. This renders the variable handling in RH/Fedora block obsolete.

Signed-off-by: MichaIng <micha@dietpi.com>
2020-04-26 15:42:43 +02:00
pvogt09
462457fe7f
Merge branch 'development' into development 2020-04-24 12:09:49 +02:00
Adam Warner
94a4f844a8
Remove deprecated list
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-04-20 21:31:20 +01:00
Adam Warner
d18a8b1b8a
Merge pull request #3205 from MichaIng/patch-5
Reduce apt-get install verbosity
2020-04-19 15:28:48 +01:00
Adam Warner
a37dba2c81
remove configureFirewall function, the call to it, and related tests
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-04-19 14:52:01 +01:00
Adam Warner
e6dcccc7bd Revert "- Added 2 new DNS entries for the new Cloudflare DNS for families, which comes in 2 flavors (#3276)"
This reverts commit 7e1a8c1ceb.
2020-04-18 20:05:54 +01:00
Mohammed Swillam
7e1a8c1ceb
- Added 2 new DNS entries for the new Cloudflare DNS for families, which comes in 2 flavors (#3276)
1- 1.1.1.2 (No Malware)
2- 1.1.1.3 (No Malware or Adult Content)

This would allow parents to have more control over the safety of their family's network.

Signed-off-by: Mohammed-Swillam <moh.sayed@hotmail.com>
2020-04-18 11:49:01 +01:00
DL6ER
982c1b0059
Merge branch 'release/v5.0' into development
Signed-off-by: DL6ER <dl6er@dl6er.de>
2020-04-08 12:02:53 +02:00
pvogt09
40ac3e7eb7 remove pihole group during uninstall
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2020-04-04 19:22:37 +02:00
pvogt09
a993b8b34d fixes #3217 by checking for existing pihole group
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2020-04-03 13:18:32 +02:00
Antoine Tenart
16f664cdb4 basic_install: remove remaining references to hosts-file.net
Commit dc35709a1b ("Remove hosts-file.net from default lists") left a
few references to hosts-file.net. Removes them.

Signed-off-by: Antoine Tenart <antoine.tenart@ack.tf>
2020-04-02 21:23:55 +02:00
Adam Warner
dc35709a1b
Remove hosts-file.net from default lists 2020-03-31 17:39:21 +01:00
Adam Warner
4994da5170
Update automated install/basic-install.sh 2020-03-12 18:48:40 +00:00
Adam Warner
175d32c5f6
Set nameservers to be that which have been chosen by the user in the whiptail
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-03-11 18:55:43 +00:00
Adam Warner
1481cc583f
Don't set nameserver in dhcpcd.conf
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-03-11 18:48:40 +00:00
Adam Warner
dbc54b3063
remove resolvconf dep
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-03-11 18:47:59 +00:00
MichaIng
bb936f4fdb
Reduce apt-get install verbosity
The new version of the installer moved from debconf-apt-progress to raw apt-get output on installs to solve issues with interactive config file choices. This lead to a largely increases amount of output lines of the installer. To reduce the apt-get output to a minimum, while sustaining interactive input in case of config files, the "-qq" option can be used, which inherits "--yes": 
- https://manpages.debian.org/buster/apt/apt-get.8.en.html#OPTIONS
- https://manpages.ubuntu.com/manpages/bionic/man8/apt-get.8.html#options

Signed-off-by: MichaIng <micha@dietpi.com>
2020-03-11 11:01:28 +01:00
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>
2020-03-08 16:53:14 -07:00
msamendinger
d16b472592 Remove wget from PIHOLE_DEPS
All external calls have been moved to curl, wget no longer needed as
dependency

Signed-off-by: msamendinger <git@samendinger.de>
2020-03-01 22:06:37 +01:00
Adam Warner
6104d81622
Safeguard against colour output in grep commandadd -i to grep to make search for "Location" case-insensitive
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-02-24 20:36:45 +00:00
Adam Warner
7be019ff52
No need to determine the latest tag, we can just go direct
Co-authored-by: Dan Schaper <dan.schaper@pi-hole.net>
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-02-17 21:29:25 +00:00
DL6ER
75633f0950
Install php-intl and trust the system to install the right extension. We've seen reports that just installing php5-intl or php7-intl isn't sufficient and that we need the meta package as well.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2020-02-16 21:24:32 +01:00
Adam Warner
1072078e26
Change to use API instead of the Location Header
(some trailing whitespace removed)

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2020-02-16 11:47:42 +00:00
pvogt09
b0f1333657 Move permission change behind git reset (like in update_repo()) and remove whitespace at end of line
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2020-02-14 20:43:36 +01:00
Adam Warner
0a70bbd255
Merge pull request #3120 from canihavesomecoffee/patch-1
Update Cameleon blacklist url to use https
2020-02-08 17:25:49 +00:00
Willem
c91d9cc0b6 Update Cameleon blacklist url to use https
Switches from http to https for the Cameleon (sysctl.org) blacklist.

Signed-off-by: canihavesomecoffee <canihavesomecoffee@users.noreply.github.com>
2020-02-08 17:06:03 +01:00
DL6ER
cfa909a93d
Add package php-intl for AdminLTE#1130.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2020-01-12 14:09:14 +01:00
Adam Warner
e0fde41d87
Merge pull request #3066 from pi-hole/centos8_support
Update installer to support CentOS 8
2020-01-05 14:39:24 +00:00
bcambl
ec8f4050d0 Update installer to support CentOS 8
PHP dependency php-json is now required for both the latest Fedora and CentOS.
Package php-json will now be a default web dependency and removed from PIHOLE_WEB_DEPS when installing on CentOS7.

Signed-off-by: bcambl <blayne@blaynecampbell.com>
2020-01-02 06:52:23 -06:00
bcambl
60c51886e0 remove unused debian deps (apt-utils debconf)
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2020-01-01 13:24:02 -06:00
bcambl
cbb1461010 add stdout horizontal rule to install_dependent_packages()
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2020-01-01 13:23:31 -06:00
bcambl
07cc5b501c replace debconf-apt-progress with apt-get in install_dependent_packages()
Removes the need for conditional debconf-apt-progress dependency checking

Signed-off-by: bcambl <blayne@blaynecampbell.com>
2020-01-01 13:11:41 -06:00
bcambl
ebb1a730c1 remove unused fedora/centos dependency: dialog
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2020-01-01 13:11:41 -06:00
MichaIng
9dff55b212 Installer | Remove "dialog" from Debian/Ubuntu installer deps
+ The installer uses `whiptail`, thus `dialog` is not required.

Signed-off-by: MichaIng <micha@dietpi.com>
2020-01-01 13:11:41 -06:00
Adam Warner
d1bce7e685
Merge pull request #2995 from pi-hole/tweak/NoFurtherThanLatestTag
Don't allow repo to go further than latest tag on master
2019-12-09 20:41:29 +00:00
Adam Warner
7c2bbf840a
Merge pull request #2993 from MichaIng/patch-3
Minor installer output enhancements
2019-12-04 18:53:58 +00:00
MichaIng
85673b8273
Print name of chosen upstream DNS as well
Signed-off-by: MichaIng <micha@dietpi.com>
2019-12-04 18:59:25 +01:00
Adam Warner
583ea4d17a
Merge branch 'development' into development 2019-11-27 21:17:05 +00:00
Adam Warner
edcdf9f619
Merge pull request #3003 from pi-hole/fix/tbd
FTL always determined.
2019-11-27 09:46:17 +00:00
Adam Warner
12817c09bb
(Squashed commits)
Always ensure we have the correct machine arch by storing to/reading from a file rather than depending on global variable that for some reason is not always populated...

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

no need for global variable

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

Use a file in the temporary FTL download directory

Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>

Local binary variable named to l_binary. Disambiguate from global binary.

Allow 'binary' to be shadowed for testing.

Use ./ftlbinary in all operations.

Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>

Revert shadow ability on binary variable.

Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>

Remove unused tests, binary variable can not be overridden.

Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>

This should work here, too

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

binary name is passed through from pihole checkout

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

Add comments

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

OK, let's try it this way again

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

we might be getting somewhere.. squash after this I think!

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

This is a test to see if it fixes the aarch64 test (we are definitely squashing these commits

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

fix the rest of the tests

Signed-off-by: Adam Warner <me@adamwarner.co.uk>

Remove trailing whitespace in the files we've touched here

Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2019-11-15 19:49:09 +00:00
Adam Warner
4840bdb031
add a double space to the beginning of some outputs
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2019-11-14 19:06:23 +00:00
Adam Warner
a85e7a2a43
Merge pull request #2999 from pi-hole:fix/api_utf8_encoding
Add php-xml package as new dependency
2019-11-13 19:03:53 +00:00
DL6ER
61d233f069
Merge pull request #2964 from bcambl/selinux_enforcing
Exit installation when SELinux in unsupported state
2019-11-12 21:48:15 +01:00
DL6ER
d457d40e0b
Add php-xml package as new dependency.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-11-12 20:49:46 +01:00
Adam Warner
6571a63ffa
Add --tags to descibe command
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2019-11-11 20:36:51 +00:00
Adam Warner
a7e81c8ea0
remove extra space
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2019-11-11 20:12:31 +00:00
Adam Warner
73d9abae3e
And finally, we please stickler
Signed-off-by: Adam Warner <adamw@rner.email>
2019-11-08 20:58:42 +00:00
Adam Warner
c8b9e42649
Please Codefactor.
Signed-off-by: Adam Warner <adamw@rner.email>
2019-11-08 19:18:35 +00:00
Adam Warner
62c00ae1d8
pushd/popd instead of juggling with a variable
Signed-off-by: Adam Warner <adamw@rner.email>
2019-11-08 19:11:55 +00:00
MichaIng
ea67c828cd
Minor installer output enhancements
+ Print restart hint after setting IPv4 address on a separate line with [i] prefix to not break text alignment
+ Print final upstream DNS choice as a single printf call and by this fix missing info and linebreak on "Custom" choices.
+ Minor if/then/else code alignment

Signed-off-by: MichaIng <micha@dietpi.com>
2019-11-07 13:59:44 +01:00
Adam Hill
3fbb0ac8dd
Adding docker+arm detection & FTL download
Signed-off-by: Adam Hill <adam@diginc.us>
2019-10-29 22:26:46 -05:00
Adam Warner
71903eb27f
Add in checks to reset cloned repo to the lastest available release
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2019-10-28 22:35:01 +00:00
bcambl
612d408034 replace echo with printf in install_dependent_packages()
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2019-10-14 20:16:40 -06:00
bcambl
a86f578139 replace echo with printf in checkSelinux()
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2019-10-14 20:06:23 -06:00
bcambl
81ca78e7f4 exit installer if SELinux is enforcing
The Pi-hole project does not ship a custom SELinux policy as the required policy would lower the overall system security.
Users who require SELinux to be enforcing are encouraged to create an custom policy on a case-by-case basis.

Signed-off-by: bcambl <blayne@blaynecampbell.com>
2019-10-14 12:25:24 -06:00
bcambl
fc0899b2ad fix fedora dependency check/install stdout
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2019-10-13 14:35:38 -06:00
DL6ER
149fb0c216
Do not install a blank regex file.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-09-29 18:03:37 +02:00
Adam Warner
61a40c1b43
merge devel into 4.3.2 And Resolve merge conflicts
Signed-off-by: Adam Warner <me@adamwarner.co.uk>
2019-09-22 01:16:44 +01:00
DL6ER
f582344b9a
"No default index.lighttpd.html file found... not backing up" is not an error.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-09-17 21:59:48 +02:00
Dan Schaper
4cfe463dfa
Add back dropped binary call.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2019-08-24 04:57:23 -07:00
Dan Schaper
03c65dd0e9
Convert hardcoded /usr/local/bin to variable
Update pihole script with full path to 'pihole'

Variable for webpage.sh 'pihole' call.

Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2019-08-24 04:49:14 -07:00
DL6ER
1820c2c598
Merge branch 'development' into new/whitelist-regex-support
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-08-22 14:19:51 +02:00
Mcat12
febdbceab1
Fix error when getting latest FTL tag
The headers containing the latest FTL tag were not properly input to the
command (`<` vs `<<<`). This caused Bash to try and open the file named
after the header string, which does not exist.

Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2019-08-21 10:03:54 -04:00
David Haguenauer
34727c00c6
Drop indirection from install_dependent_packages
Previously, install_dependent_packages would receive an array variable
name as its single parameter, and would use variable indirection to
access it; this change simplifies that function so that it instead
receives the expanded array.

Signed-off-by: David Haguenauer <ml@kurokatta.org>
2019-08-21 04:41:45 -07:00
Mcat12
b107ae2ab9
Use the filtered IPv6 OpenDNS servers
The ones we were using previously were not filtered. See
https://support.opendns.com/hc/en-us/articles/227986667-Does-OpenDNS-Support-IPv6-

Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2019-08-21 04:39:10 -07:00
Mcat12
da398c3d9c
Print an error message if the FTL release metadata download fails
Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2019-08-21 04:38:51 -07:00
Mcat12
4e0ad52001
Fix ShellCheck issue by refactoring a bit
Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2019-08-21 04:38:24 -07:00
Mcat12
c9829dd3e4
Fix pihole -up showing FTL update when network is down
Fixes #1877

Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2019-08-21 04:38:04 -07:00
B. Olausson
ab1ea5a366
This change fixes issue #145 "stty: standard input: Inappropriate ioctl for device ".It checks if a real terminal exist, if not it sets the screen size to a fixed value. This helps to avoid nasty and unnecessary logs when running "pihole -up" via e.g. cron.
Signed-off-by: B. Olausson <contactme@olausson.de>
2019-08-20 14:48:03 -07:00
bcambl
10de7f649b
add chkconfig to INSTALLER_DEPS (CentOS/Fedora)
chkconfig is a dependency of spawn-fcgi which is a dependency of lighttpd which is installed via PIHOLE_WEB_DEPS in phase 2
adding chkconfig to INSTALLER_DEPS to ensure /etc/init.d is present during the installation prompts (phase 1)

Signed-off-by: bcambl <blayne@blaynecampbell.com>
2019-08-20 11:42:09 -07:00
Mcat12
71d5b42726
Remove the ZeusTracker blocklist from the defaults
It is no longer served. Fixes #2843.

Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2019-08-20 11:05:06 -07:00
DL6ER
4371c9ba03
Ensure proper permissions are set for gravity.db after creation.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-08-05 21:20:07 +02:00
B. Olausson
ecd6817aaf
This change fixes issue #145 "stty: standard input: Inappropriate ioctl for device ".It checks if a real terminal exist, if not it sets the screen size to a fixed value. This helps to avoid nasty and unnecessary logs when running "pihole -up" via e.g. cron.
Signed-off-by: B. Olausson <contactme@olausson.de>
2019-07-29 19:48:56 +01:00
Mark Drobnak
3420439f31
Merge pull request #2820 from pi-hole/fix/ftl-update-no-network
Fix pihole -up showing FTL update when network is down
2019-07-20 14:55:48 -04:00
Mcat12
38ff343134
Print an error message if the FTL release metadata download fails
Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2019-07-19 17:35:21 -07:00
Mcat12
c3ec2e68ad
Remove the ZeusTracker blocklist from the defaults
It is no longer served. Fixes #2843.

Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2019-07-12 20:03:36 -07:00
Mcat12
c156af020c
Use suggested array creation to fix linter error
Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2019-07-10 19:52:17 -07:00
Mark Drobnak
fa8751f9ad
Fix error when checking if IP address is valid
During install in `valid_ip`, we split up the IP address into octets to verify it is valid (each is <= 255).

This validation was broken in #2743 when a variable usage was quoted where it should have stayed unquoted:
```
./automated install/basic-install.sh: line 942: [[: 192.241.211.120: syntax error: invalid arithmetic operator (error token is ".241.211.120")
```

Due to this error, `127.0.0.1` would be used instead of the requested IP address. Also, this prevented the user from entering a custom DNS server as it would be marked as an invalid IP address.

Signed-off-by: Mark Drobnak <mark.drobnak@gmail.com>
2019-07-10 19:42:51 -07:00
bcambl
ec850dc820 add chkconfig to INSTALLER_DEPS (CentOS/Fedora)
chkconfig is a dependency of spawn-fcgi which is a dependency of lighttpd which is installed via PIHOLE_WEB_DEPS in phase 2
adding chkconfig to INSTALLER_DEPS to ensure /etc/init.d is present during the installation prompts (phase 1)

Signed-off-by: bcambl <blayne@blaynecampbell.com>
2019-07-06 10:58:19 -06:00
Mcat12
37e7cd5211
Fix ShellCheck issue by refactoring a bit
Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2019-06-28 21:19:07 -07:00
Mcat12
91a2d052a7
Fix pihole -up showing FTL update when network is down
Fixes #1877

Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2019-06-28 20:49:56 -07:00
Mcat12
c8987e20c2
Use the filtered IPv6 OpenDNS servers
The ones we were using previously were not filtered. See
https://support.opendns.com/hc/en-us/articles/227986667-Does-OpenDNS-Support-IPv6-

Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2019-06-12 19:13:29 -07:00
Dan Schaper
7de6bbca61
Merge branch 'development' into release/v4.3 2019-05-18 13:18:14 -07:00
David Haguenauer
be3a21ae07 Put quotes at ends of strings
Signed-off-by: David Haguenauer <ml@kurokatta.org>
2019-05-14 15:20:28 -04:00
David Haguenauer
69081a9175 Drop indirection from install_dependent_packages
Previously, install_dependent_packages would receive an array variable
name as its single parameter, and would use variable indirection to
access it; this change simplifies that function so that it instead
receives the expanded array.

Signed-off-by: David Haguenauer <ml@kurokatta.org>
2019-05-14 15:20:28 -04:00
David Haguenauer
ab2f8a0c09 Quote variables in basic-install.sh
This greatly reduces the number of warnings emitted by ShellCheck, and
in turn should make it more likely that errors are caught in the
future.

Signed-off-by: David Haguenauer <ml@kurokatta.org>
2019-05-14 15:20:28 -04:00
Mcat12
8e1bf6e3d4
Merge branch 'development' into new/gravitydb
# Conflicts:
#	advanced/Scripts/list.sh
#	gravity.sh
#	pihole
2019-05-12 15:20:52 -07:00
pvogt09
efbd42f7b5 Moves creation of pihole user before FTL installation
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2019-05-12 11:27:25 +02:00
pvogt09
e076db5a4e Changes ownership of macvendor.db to pihole
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2019-05-10 11:19:28 +02:00
pvogt09
2e6198077d chmod 644 adlists.list
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2019-05-09 12:23:44 +02:00
DL6ER
95150a5d85
Clone twenty instead of only one commit when installing Pi-hole. This ensures that we clone at least one tagged commit in case we need to push changes to master.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-05-07 19:42:11 +02:00
pvogt09
4d23b3267f Adds X to chmod for git operations
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2019-05-07 10:46:16 +02:00
pvogt09
e19adccd9c Moves chmod for /var/www/html into INSTALL_WEB_SERVER block
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2019-05-05 22:34:13 +02:00
pvogt09
a25f331e83 Adds chmod 644 for /var/www and /var/www/html
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2019-05-05 09:20:49 +02:00
pvogt09
69c06ba6fe Sets permissions for dnsmaq.conf
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2019-05-05 00:32:10 +02:00
pvogt09
2c3a27e9c7 Replaces cp chmod with install and add read permission to repository files after checkout and pull
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2019-05-03 12:27:56 +02:00
pvogt09
8a92fb24c4 Incorporates changes requested by @Mcat12
Signed-off-by: pvogt09 <50047961+pvogt09@users.noreply.github.com>
2019-05-01 11:20:26 +02:00
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>
2019-04-30 22:41:12 +02:00
Mcat12
466fd79c66
Fix getting IP address in the presence of similar subnets
Change was suggested by @computergeek125 in #2387

Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2019-04-27 12:39:45 -07:00
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>
2019-04-26 16:16:30 +02:00
DL6ER
ee4dabeca6
Merge branch 'development' into new/gravitydb
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-04-24 19:12:19 +02:00
DL6ER
c13ebd3a9d
Replace Pi-hole ID string with another line we intend to keep
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-04-24 18:55:25 +02:00
Jan Piskvor Martinec
037737d653 Show $UPDATE_PKG_CACHE content in error message.
Fixes the typo in update_package_cache(), where the error message
 contained the color code twice, instead of the $UPDATE_PKG_CACHE text.

Signed-off-by: Jan Piskvor Martinec <github@piskvor.org>
2019-04-23 16:02:25 +02:00
Mcat12
78c0c58946
Add a link to the documentation on FTL privacy levels during install
Closes #2695

Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2019-04-07 12:00:43 -07:00
DL6ER
9867b7fccf
Don't fail when trying to detect OS architecture on RPM-based systems
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-02-22 18:41:01 +01:00
Andreas Schneider
860ec1a7c4 basic_install: Use install for sudoers
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2019-02-10 08:45:03 +01:00
Andreas Schneider
2f189cd076 basic_install: There is no pihole group, remove it
Only a user has been created beforehand. Only some distributions create
a group with the same name based on their configuration. We cannot
assume this is always the default.

Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2019-02-08 08:06:12 +01:00
Andreas Schneider
2f0e6a6dda basic_install: Make sure the PI_HOLE_CONFIG_DIR exists
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2019-02-08 08:06:12 +01:00
Andreas Schneider
f187b42a98 basic_install: Define webroot globally as a variable
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2019-02-08 08:06:02 +01:00
Andreas Schneider
838e1b19ec basic_install: Set permissons for PI_HOLE_DASHBOARD_DIR
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2019-02-06 10:41:37 +01:00
Andreas Schneider
d5bbb2b640 basic_install: Use a varibale for the pihole dashboard dir
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2019-02-06 10:40:47 +01:00
Andreas Schneider
dc91d4b1f9 basic_install: If a static interface is already set up we are done
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
2019-02-06 07:50:21 +01:00
Mcat12
680d6e2d31
Merge branch 'release/v4.2' into development
# Conflicts:
#	automated install/basic-install.sh
2019-02-03 11:14:09 -08:00
Adam Warner
ae654730c4
Update automated install/basic-install.sh
Co-Authored-By: DL6ER <DL6ER@users.noreply.github.com>
2019-02-02 08:00:58 +01:00
DL6ER
ec79e86bee
We should really use stop_service as it also includes some nice output
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-02-01 18:06:57 +01:00
DL6ER
e8dabc71af
Don't try to start pihole-FTL after it has been installed. This will be done a few moments later when gravity is invoked.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-02-01 17:54:21 +01:00
DL6ER
9c0de0f731
Try to stop pihole-FTL before and (re)start pihole-FTL after the install command
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-02-01 17:39:12 +01:00
DL6ER
4948862dce
Fail hard if FTL binary could not be installed
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-01-31 20:10:52 +01:00
Mark Drobnak
1e284f69ea
Merge pull request #2587 from pi-hole/new/network-table
Download macvendor database
2019-01-28 20:27:13 -05:00
DL6ER
516ed83638
Add "|| true" to the curl command as a failed download is no show-stopper for the overall install process.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-01-28 20:48:30 +01:00
DL6ER
cc657c0c26
Rename subroutine start_service() to restart_service() because this is what it does
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-01-24 09:37:03 +01:00
DL6ER
d90d7b6927
Call FTL download/installation early on in the installation process.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-01-24 09:36:27 +01:00
DL6ER
de6dc90575
Don't diable pihole-FTL before calling install. root should be able to overwrite the binary in any case. The binary has already been downloaded and hash-verified here so we don't expect any errors in this binary.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-01-24 09:32:33 +01:00
DL6ER
3cdd6204c5
Move dnsmasq disabling and config file rewriting into a dedicated subroutine
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-01-24 09:31:02 +01:00
DL6ER
d996e9c9ee
Fix inconsistent handling of binary variable. get_binary_variable() stores the result into a global variable we pass later on as argument to FTLinstall() and define a local variable with the same name. This is fixed by only using the globa variable in all places not. This is still not a very elegant solution but it is also not subject of the current PR.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-01-24 09:28:09 +01:00
Mark Drobnak
ebba32e1c4
Remove Norton DNS
Signed-off-by: Mark Drobnak <mark.drobnak@gmail.com>
2019-01-19 20:45:19 -05:00
Mark Drobnak
7d2507527a
Merge pull request #2593 from TheLastProject/feature/standardized-dns-list
Standardize DNS list and write to file for AdminLTE
2019-01-13 11:10:45 -08:00
Sylvia van Os
97decb3a73 Standardize DNS list and write to file for AdminLTE
Signed-off-by: Sylvia van Os <sylvia@hackerchick.me>
2019-01-13 19:38:04 +01:00
DL6ER
f360959efc
Download macvendor database from ftl.pi-hole.net when downloading a new FTL binary. Users who want to update the database more frequently than on each FTL release can use the python script from the FTL repository to generate the database themselves. The macvendor database is an optional component so a failing download is no reason to interrupt the installer.
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-01-09 19:26:19 +01:00
bcambl
3035fbf468 remove unused dependency (bc)
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2019-01-04 17:17:42 -06:00
DL6ER
c5da1bb952
Add libcap as Fedora dependency
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-01-03 10:39:46 +01:00
DL6ER
486c41a69a
Add Debain dependency libcap2 needed for FTL's capability check on startup
Signed-off-by: DL6ER <dl6er@dl6er.de>
2019-01-03 10:39:10 +01:00
Florian Freund
0ef4901e48 Add a blank after printf to avoid 'Command not found' error
> curl -L https://install.pi-hole.net | bash /dev/stdin --i_do_not_follow_recommendations
...
/dev/stdin: Zeile 2449: printf  %b Skipping free disk space verification\n: Command not found.

Signed-off-by: Florian Freund <mail@floek.net>
2018-12-25 09:02:12 +01:00
bcambl
eca975a370 add sqlite3 dependency for fedora
`sqlite3` is provided by the `sqlite` package on CentOS & Fedora

Signed-off-by: bcambl <blayne@blaynecampbell.com>
(cherry picked from commit 724afc000f)
2018-12-19 10:20:47 -08:00
bcambl
724afc000f add sqlite3 dependency for fedora
`sqlite3` is provided by the `sqlite` package on CentOS & Fedora

Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-12-17 21:03:54 -06:00
Mark Drobnak
d24e0a6060
Merge pull request #2540 from pi-hole/release/v4.1
Update development with final v4.1 changes
2018-12-09 22:24:42 -05:00
bcambl
14ebb2fb93 remove 'System' from NetworkManager connection name
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-12-01 12:08:48 -06:00
Clayton Dobbs
3261c2e273
Added check for universe repo on ubuntu bionic with user prompts.
Signed-off-by: Clayton Dobbs <clayton.dobbs@gmail.com>
2018-11-20 21:39:01 -07:00
bcambl
c3804877ed linting: Double quote to prevent globbing and word splitting.
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-11-11 14:48:16 -06:00
bcambl
c0bc93c7c4 break dhcpcd and ifcfg network configurations into separate functions
- move some logic from setStaticIPv4 to setDHCPCD
- breakout ifcfg configuration into separate function which takes a config path as an argument
- setStaticIPv4 now checks for configs and calls the appropriate function accordingly
- add logic to check ifcfg file by _connection name_ if file is not found by _interface name_

Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-11-09 15:20:51 -06:00
DL6ER
e1c3c53058
Merge branch 'release/v4.1' into fix/adlists.list_not_created 2018-11-08 20:29:07 +01:00
Dan Schaper
057fbfc2b9
Change field from digit to string for printf
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2018-11-08 11:10:09 -08:00
DL6ER
33156071cd
Fix literal "choice" being passed to appendToListsFile()
Signed-off-by: DL6ER <dl6er@dl6er.de>
2018-11-08 19:43:35 +01:00
Dan Schaper
e8c2e26358
Override shellcheck with explanations.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2018-11-03 13:39:43 -07:00
Dan Schaper
61c67849d7
Support multiple distributions and release versions in find_IPv4_information().
Add basic sanity check to function, remove unused variable.

Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2018-11-03 13:20:40 -07:00
Mark Drobnak
2cdbb34763
Merge pull request #2488 from pi-hole/feature/command_function
Moved `command -v` calls to function in installer.
2018-11-02 22:16:44 -04:00
Mark Drobnak
1789a2db29
Merge pull request #2384 from pi-hole/feature/install-privacy-level
Set FTL Privacy Level During Install
2018-11-01 15:16:11 -04:00
Dan Schaper
c270b83341
Use printf instead of echo
Co-Authored-By: Mcat12 <mark.drobnak@gmail.com>
2018-11-01 15:14:26 -04:00
Dan Schaper
02f0788033
Moved command -v calls to function.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2018-11-01 12:00:08 -07:00
Dan Schaper
9d2d45b473
Query php directly for major and minor version id strings.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2018-11-01 05:59:14 -07:00
Dan Schaper
0c892e6b3a
Addressed Stickler ShellCheck lints
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2018-10-31 14:35:55 -07:00
Dan Schaper
a0fc38d6a2
All terminal echo commands changed to printf.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2018-10-31 11:14:05 -07:00
bcambl
e7e03e36de fix pihole user creation function
- fix stdout newlines
 - catch failed user creation

Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-10-12 11:05:44 -06:00
Adam Warner
cc2f375b13
fix for #2450
Signed-off-by: Adam Warner <adamw@rner.email>
2018-10-07 11:51:36 +01:00
Mark Drobnak
a89615365e
Merge pull request #2410 from stuartskelton/norton_dns_EOL_2018_11_15
Remove Norton Connect Safe as its EOL 2018-11-15
2018-09-10 17:52:09 -04:00
Stuart Skelton
3c36c22ca8 Remove Norton Connect Safe as its EOL 2018-11-15
Signed-off-by: Stuart Skelton <stuarts@broadbean.com>
2018-09-10 22:37:45 +01:00
Mark Drobnak
6f276ae4bb
Merge pull request #2299 from nullr0ute/net-tools
Use ip route rather than old net-tools route in  chronometer.sh
2018-09-09 15:11:19 -04:00
Mark Drobnak
3cea1bd423
Fix lighttpd v1.4.50 crashing on startup
It has a bug/regression causing it to fail if external.conf does not exist,
so touch external.conf when installing lighttpd config

Signed-off-by: Mark Drobnak <mark.drobnak@gmail.com>
2018-09-07 12:09:37 -04:00
bcambl
c58e3acc78 add unsupported RPM distro warnings
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-08-31 10:04:52 -06:00
bcambl
6f8e8e98bb update centos version check test
Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-08-29 22:16:11 -06:00
bcambl
24b4aabae9 allow installer to continue with additional rpm based distros
- FedBerry (Fedora based ARM image)
- Scientific Linux (CentOS based)
- Add prompt to continue installing on unsupported RPM based distros

Signed-off-by: bcambl <blayne@blaynecampbell.com>
2018-08-29 20:49:06 -06:00
DL6ER
1813c25117
If config file was backed up: Print info message
Signed-off-by: DL6ER <dl6er@dl6er.de>
2018-08-21 13:07:23 +02:00
Mcat12
5d0d7336ff
Echo with newline when setting privacy level
Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2018-08-20 20:21:03 -04:00
Mcat12
6a26a05dbf
Fix privacy level whiptail option format
Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2018-08-20 19:40:43 -04:00
Mcat12
4aafa8cf47
Set the FTL privacy level during install
Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2018-08-20 19:20:29 -04:00
DL6ER
28c6b1393f
Backup existing /etc/dnsmasq.conf if present and ensure that /etc/dnsmasq.conf contains only "conf-dir=/etc/dnsmasq.d"
Signed-off-by: DL6ER <dl6er@dl6er.de>
2018-08-20 22:52:22 +02:00
Realtebo
0d1b3cee4f Enable FTL service before starting it
Signed-off-by: Realtebo <mirkotebaldi@yahoo.it>
2018-08-16 17:52:47 +02:00
Mirko Tebaldi
476fecbcf5 Fixed typos as suggestes
Signed-off-by: Realtebo <mirkotebaldi@yahoo.it>
2018-08-14 15:04:42 +02:00
Mirko Tebaldi
327b58fa03
Merge pull request #1 from pi-hole/development
Merge with current main development branch
2018-08-14 14:55:18 +02:00
DL6ER
d3eea9404d
Merge pull request #2331 from pi-hole/tweak/improve_FTL_download_errormsg
Improve error message when downloading FTL failed
2018-08-14 13:20:47 +02:00
Realtbo
d9195970b7 Create adlist file while running unattended setup
Signed-off-by: Realtebo <mirkotebaldi@yahoo.it>
2018-08-12 23:21:01 +02:00
Mark Drobnak
ef8aaba014
Merge pull request #2320 from TronPaul/fix/no-tty
set noninteractive during unattended install
2018-08-08 19:28:12 -04:00
DL6ER
f5c3dc5d9d
Improve download error message that is shown when downloading or verifying the binary failed
Signed-off-by: DL6ER <dl6er@dl6er.de>
2018-08-07 16:51:58 +02:00
Mcat12
e01eea8ba8
Remove PowerPC from FTL binaries
It is no longer built, and may cause 404 errors if it attempts to
download the binary.

Signed-off-by: Mcat12 <newtoncat12@yahoo.com>
2018-08-06 21:15:16 -04:00
Dan Schaper
5b628a4c77
Merge branch 'development' into release/v4.0 2018-08-05 21:16:19 -07:00
Mark McGuire
0081a7ca92 set noninteractive during unattended install
Signed-off-by: Mark McGuire <mark.b.mcg@gmail.com>
2018-08-05 10:12:43 -05:00
Dan Schaper
993beab3b7
Changed wording.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2018-07-31 11:14:26 -07:00
Dan Schaper
06875f2cc9
Merge branch 'release/v4.0' into fix/parse_pihole-FTL.conf 2018-07-30 14:32:29 -07:00
Dan Schaper
448fc7231c
Installed to /etc/pihole as PI_HOLE_CONFIG_DIR variable.
Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2018-07-30 14:26:07 -07:00
Dan Schaper
d0d030bafc
Moved file creation to proper function. Included bash variables for file
location. Set to pihole:pihole ownership with 644 permissions.

Signed-off-by: Dan Schaper <dan.schaper@pi-hole.net>
2018-07-30 14:02:18 -07:00
Dan Schaper
833131e15f
Merge pull request #2315 from pi-hole/fix/regex-file-ownership
Allow PHP to edit the regex file if web is installed
2018-07-30 06:36:20 -07:00