move to systemd-networkd from netctl

This commit is contained in:
Tobias Powalowski 2022-12-07 11:55:28 +01:00
parent a51c8186fa
commit 97da62b7ce

View file

@ -95,7 +95,7 @@ donetwork() {
# profile name
NETWORK_PROFILE=""
DIALOG --inputbox "Enter your network profile name:" 7 40 "${INTERFACE}-${CONNECTION}" 2>"${ANSWER}" || return 1
NETWORK_PROFILE=/etc/netctl/$(cat "${ANSWER}")
NETWORK_PROFILE=/etc/systemd/network/$(cat "${ANSWER}").network
# dhcp switch
IP=""
DIALOG --yesno "Do you want to use DHCP?" 5 40
@ -130,10 +130,19 @@ donetwork() {
0) NETPARAMETERS="1" ;;
esac
done
# write profile
echo "Connection=${CONNECTION}" >"${NETWORK_PROFILE}"
echo "Description='$NETWORK_PROFILE generated by archboot setup'" >>"${NETWORK_PROFILE}"
echo "Interface=${INTERFACE}" >>"${NETWORK_PROFILE}"
# write wired profile
echo "#$NETWORK_PROFILE generated by archboot setup" > "${NETWORK_PROFILE}"
echo "[Match]" >> "${NETWORK_PROFILE}"
echo "Name=${INTERFACE}" >> "${NETWORK_PROFILE}"
echo "" >> "${NETWORK_PROFILE}"
echo "[Network]" >> "${NETWORK_PROFILE}"
[[ "${IP}" == "dhcp" ]] && echo "DHCP=yes" >> "${NETWORK_PROFILE}"
if [[ "${IP}" = "static" ]]; then
#shellcheck disable=SC2129
echo "Address='${IPADDR}'" >>"${NETWORK_PROFILE}"
echo "Gateway='${GW}'" >>"${NETWORK_PROFILE}"
echo "DNS=('${DNS}')" >>"${NETWORK_PROFILE}"
fi
if [[ "${CONNECTION}" = "wireless" ]]; then
#shellcheck disable=SC2129
echo "Security=${WLAN_SECURITY}" >>"${NETWORK_PROFILE}"
@ -141,18 +150,12 @@ donetwork() {
echo "Key='${WLAN_KEY}'" >>"${NETWORK_PROFILE}"
[[ "${WLAN_HIDDEN}" = "yes" ]] && echo "Hidden=yes" >>"${NETWORK_PROFILE}"
fi
echo "IP=${IP}" >>"${NETWORK_PROFILE}"
if [[ "${IP}" = "static" ]]; then
#shellcheck disable=SC2129
echo "Address='${IPADDR}'" >>"${NETWORK_PROFILE}"
echo "Gateway='${GW}'" >>"${NETWORK_PROFILE}"
echo "DNS=('${DNS}')" >>"${NETWORK_PROFILE}"
fi
systemctl restart systemd-networkd.service
# bring down interface first
systemctl stop dhcpcd@"${INTERFACE}".service
ip link set dev "${INTERFACE}" down
#systemctl stop dhcpcd@"${INTERFACE}".service
#ip link set dev "${INTERFACE}" down
# run netctl
netctl restart "$(basename "${NETWORK_PROFILE}")" >"${LOG}"
#netctl restart "$(basename "${NETWORK_PROFILE}")" >"${LOG}"
# add sleep here dhcp can need some time to get link
DIALOG --infobox "Waiting 30 seconds for network link to come up ..." 3 60
NETWORK_COUNT="0"