Pull request: 5431 Privileged install
Merge in DNS/adguard-home from 5431-sudo-install to master
Updates #5431.
Squashed commit of the following:
commit 4dc9d8d9e2a7f588b1367dcb42ea2df71ccdcbb7
Merge: 29b3d8e2 be43ce17
Author: Eugene Burkov <E.Burkov@AdGuard.COM>
Date: Thu Feb 16 17:46:33 2023 +0300
Merge branch 'master' into 5431-sudo-install
commit 29b3d8e27b5eddfb6e512c210d70041993079caf
Author: Eugene Burkov <E.Burkov@AdGuard.COM>
Date: Thu Feb 16 17:31:43 2023 +0300
scripts: fix code
commit 4354e2089396df3a2e63bcad499dc60975048a77
Author: Eugene Burkov <E.Burkov@AdGuard.COM>
Date: Thu Feb 16 17:11:48 2023 +0300
scripts: imp code
commit 4953b76abaddfb1870c3391f6da2c8a899dd596e
Author: Eugene Burkov <E.Burkov@AdGuard.COM>
Date: Thu Feb 16 16:50:16 2023 +0300
scripts: add sudo to freebsd service install
This commit is contained in:
parent
be43ce1760
commit
6f6ced33c1
|
@ -23,6 +23,12 @@ See also the [v0.107.25 GitHub milestone][ms-v0.107.25].
|
||||||
NOTE: Add new changes BELOW THIS COMMENT.
|
NOTE: Add new changes BELOW THIS COMMENT.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- Failing service installation via script on FreeBSD ([#5431]).
|
||||||
|
|
||||||
|
[#5431]: https://github.com/AdguardTeam/AdGuardHome/issues/5431
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
NOTE: Add new changes ABOVE THIS COMMENT.
|
NOTE: Add new changes ABOVE THIS COMMENT.
|
||||||
-->
|
-->
|
||||||
|
|
|
@ -33,6 +33,19 @@ usage() {
|
||||||
exit 2
|
exit 2
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Function maybe_sudo runs passed command with root privileges if use_sudo isn't
|
||||||
|
# equal to 0.
|
||||||
|
#
|
||||||
|
# TODO(e.burkov): Use everywhere the sudo_cmd isn't quoted.
|
||||||
|
maybe_sudo() {
|
||||||
|
if [ "$use_sudo" -eq 0 ]
|
||||||
|
then
|
||||||
|
"$@"
|
||||||
|
else
|
||||||
|
"$sudo_cmd" "$@"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
# Function is_command checks if the command exists on the machine.
|
# Function is_command checks if the command exists on the machine.
|
||||||
is_command() {
|
is_command() {
|
||||||
command -v "$1" >/dev/null 2>&1
|
command -v "$1" >/dev/null 2>&1
|
||||||
|
@ -554,7 +567,14 @@ handle_existing() {
|
||||||
|
|
||||||
# Function install_service tries to install AGH as service.
|
# Function install_service tries to install AGH as service.
|
||||||
install_service() {
|
install_service() {
|
||||||
if ( cd "$agh_dir" && ./AdGuardHome -s install )
|
# Installing the service as root is required at least on FreeBSD.
|
||||||
|
use_sudo='0'
|
||||||
|
if [ "$os" = 'freebsd' ]
|
||||||
|
then
|
||||||
|
use_sudo='1'
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ( cd "$agh_dir" && maybe_sudo ./AdGuardHome -s install )
|
||||||
then
|
then
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
Loading…
Reference in New Issue