Files
ayaerc/init.d/hostname.in
2026-02-08 16:30:31 -05:00

46 lines
1.3 KiB
Plaintext

#!@SBINDIR@/openrc-run
# Copyright (c) 2007-2015 The OpenRC Authors.
# See the Authors file at the top-level directory of this distribution and
# https://github.com/OpenRC/openrc/blob/master/AUTHORS
#
# This file is part of OpenRC. It is subject to the license terms in
# the LICENSE file found in the top-level directory of this
# distribution and at https://github.com/OpenRC/openrc/blob/master/LICENSE
# This file may not be copied, modified, propagated, or distributed
# except according to the terms contained in the LICENSE file.
description="Sets the hostname of the machine."
depend()
{
after clock
keyword -docker -lxc -prefix -chroot+unshare
}
start()
{
local h source x
if [ -s @SYSCONFDIR@/hostname ] && [ -r @SYSCONFDIR@/hostname ]; then
read h x <@SYSCONFDIR@/hostname
source="from @SYSCONFDIR@/hostname"
else
# HOSTNAME variable used to be defined in caps in conf.d/hostname.
# It is also a magic variable in bash.
h=${hostname:-${HOSTNAME}} # checkbashisms: false positive (HOSTNAME var)
fi
if [ -z "$h" ]; then
einfo "Using default system hostname"
return 0
fi
ebegin "Setting hostname to $h $source"
case $(uname -s) in
GNU/Linux|Linux)
sysctl -qw kernel.hostname="$h"
;;
*)
hostname "$h"
;;
esac
eend $? "Failed to set the hostname"
}