mirror of
https://gitlab.archlinux.org/tpowa/archboot.git
synced 2024-09-20 03:50:37 +02:00
replace netcfg routine with netctl
This commit is contained in:
parent
8c81e1224e
commit
0700738663
1 changed files with 22 additions and 30 deletions
|
@ -3136,16 +3136,12 @@ auto_network()
|
|||
if [[ ${S_NET} -eq 0 ]]; then
|
||||
return 1
|
||||
fi
|
||||
# copy netcfg profiles
|
||||
cp /etc/network.d/* ${DESTDIR}/etc/network.d/ 2>/dev/null
|
||||
# add netcfg profiles to /etc/conf.d/netcfg
|
||||
NETWORK_PROFILES=""
|
||||
for i in $(echo /etc/network.d/*); do
|
||||
[[ -f $i ]] && NETWORK_PROFILES="${NETWORK_PROFILES} $(basename $i)"
|
||||
# copy netctl profiles
|
||||
cp /etc/netctl/* ${DESTDIR}/etc/netctl/ 2>/dev/null
|
||||
# enable netctl profiles
|
||||
for i in $(echo /etc/netctl/*); do
|
||||
[[ -f $i ]] && chroot ${DESTDIR} /usr/bin/netctl enable $(basename $i)
|
||||
done
|
||||
sed -i -e "s#NETWORKS=.*#NETWORKS=\(${NETWORK_PROFILES}\)#g" ${DESTDIR}/etc/conf.d/netcfg
|
||||
# launch netcfg on boot
|
||||
chroot ${DESTDIR} /usr/bin/systemctl enable netcfg.service
|
||||
# copy proxy settings
|
||||
if [[ "${PROXY_HTTP}" != "" ]]; then
|
||||
echo "export http_proxy=${PROXY_HTTP}" >> ${DESTDIR}/etc/profile.d/proxy.sh;
|
||||
|
@ -3194,15 +3190,12 @@ donetwork() {
|
|||
# wireless switch
|
||||
CONNECTION=""
|
||||
WLAN_HIDDEN=""
|
||||
WLAN_HEX=""
|
||||
WLAN_ESSID=""
|
||||
WLAN_SECURITY=""
|
||||
WLAN_KEY=""
|
||||
DIALOG --defaultno --yesno "Is your network device wireless?" 5 40
|
||||
if [[ $? -eq 0 ]]; then
|
||||
CONNECTION="wireless"
|
||||
DIALOG --defaultno --yesno "Is your wireless ESSID hexadecimal?" 5 40
|
||||
[[ $? -eq 0 ]] && WLAN_HEX="yes"
|
||||
DIALOG --inputbox "Enter your ESSID" 7 40 "MyNetwork" 2>${ANSWER} || return 1
|
||||
WLAN_ESSID=$(cat ${ANSWER})
|
||||
DIALOG --defaultno --yesno "Is your wireless network hidden?" 5 40
|
||||
|
@ -3218,10 +3211,10 @@ donetwork() {
|
|||
0) WLAN_SECURITY=$(cat ${ANSWER}) ;;
|
||||
esac
|
||||
done
|
||||
DIALOG --inputbox "Enter your KEY" 5 40 "WirelessKey" 2>${ANSWER} || return 1
|
||||
DIALOG --inputbox "for i in $(echo /etc/netctl/*); doEnter your KEY" 5 40 "WirelessKey" 2>${ANSWER} || return 1
|
||||
WLAN_KEY=$(cat ${ANSWER})
|
||||
else
|
||||
WLAN_SECURITY="open"
|
||||
WLAN_SECURITY="none"
|
||||
fi
|
||||
else
|
||||
CONNECTION="ethernet"
|
||||
|
@ -3237,14 +3230,14 @@ donetwork() {
|
|||
S_DHCP=1
|
||||
else
|
||||
IP="static"
|
||||
DIALOG --inputbox "Enter your IP address" 7 40 "192.168.1.23" 2>${ANSWER} || return 1
|
||||
DIALOG --inputbox "Enter your IP address and netmask" 7 40 "192.168.1.23/24" 2>${ANSWER} || return 1
|
||||
IPADDR=$(cat ${ANSWER})
|
||||
DIALOG --inputbox "Enter your gateway" 7 40 "192.168.1.1" 2>${ANSWER} || return 1
|
||||
GW=$(cat ${ANSWER})
|
||||
DIALOG --inputbox "Enter your DNS server IP" 7 40 "192.168.1.1" 2>${ANSWER} || return 1
|
||||
DNS=$(cat ${ANSWER})
|
||||
fi
|
||||
DIALOG --yesno "Are these settings correct?\n\nInterface: ${INTERFACE}\nConnection: ${CONNECTION}\nESSID in hexadecimal: ${WLAN_HEX}\nESSID: ${WLAN_ESSID}\nHidden: ${WLAN_HIDDEN}\nEncryption: ${WLAN_SECURITY}\nKey: ${WLAN_KEY}\ndhcp or static: ${IP}\nUse dhclient: ${DHCLIENT}\nIP address: ${IPADDR}\nGateway: ${GW}\nDNS server: ${DNS}" 0 0
|
||||
DIALOG --yesno "Are these settings correct?\n\nInterface: ${INTERFACE}\nConnection: ${CONNECTION}\nESSID: ${WLAN_ESSID}\nHidden: ${WLAN_HIDDEN}\nEncryption: ${WLAN_SECURITY}\nKey: ${WLAN_KEY}\ndhcp or static: ${IP}\nUse dhclient: ${DHCLIENT}\nIP address: ${IPADDR}\nGateway: ${GW}\nDNS server: ${DNS}" 0 0
|
||||
case $? in
|
||||
1) ;;
|
||||
0) NETPARAMETERS="1" ;;
|
||||
|
@ -3253,30 +3246,29 @@ donetwork() {
|
|||
# profile name
|
||||
NETWORK_PROFILE=""
|
||||
DIALOG --inputbox "Enter your network profile name" 7 40 "${INTERFACE}-${CONNECTION}" 2>${ANSWER} || return 1
|
||||
NETWORK_PROFILE=/etc/network.d/$(cat ${ANSWER})
|
||||
NETWORK_PROFILE=/etc/netctl/$(cat ${ANSWER})
|
||||
# write profile
|
||||
echo "CONNECTION='${CONNECTION}'" >${NETWORK_PROFILE}
|
||||
echo "DESCRIPTION='$NETWORK_PROFILE generated by archboot setup'" >>${NETWORK_PROFILE}
|
||||
echo "INTERFACE='${INTERFACE}'" >>${NETWORK_PROFILE}
|
||||
echo "Connection=${CONNECTION}" >${NETWORK_PROFILE}
|
||||
echo "Description='$NETWORK_PROFILE generated by archboot setup'" >>${NETWORK_PROFILE}
|
||||
echo "Interface=${INTERFACE}" >>${NETWORK_PROFILE}
|
||||
if [[ "${CONNECTION}" = "wireless" ]]; then
|
||||
echo "SECURITY='${WLAN_SECURITY}'" >>${NETWORK_PROFILE}
|
||||
[[ "${WLAN_HEX}" = "yes" ]] && echo "ESSID_TYPE='hex'" >>${NETWORK_PROFILE}
|
||||
echo "Security=${WLAN_SECURITY}" >>${NETWORK_PROFILE}
|
||||
echo "ESSID='${WLAN_ESSID}'" >>${NETWORK_PROFILE}
|
||||
echo "KEY='${WLAN_KEY}'" >>${NETWORK_PROFILE}
|
||||
[[ "${WLAN_HIDDEN}" = "yes" ]] && echo "HIDDEN=yes" >>${NETWORK_PROFILE}
|
||||
echo "Key='${WLAN_KEY}'" >>${NETWORK_PROFILE}
|
||||
[[ "${WLAN_HIDDEN}" = "yes" ]] && echo "Hidden=yes" >>${NETWORK_PROFILE}
|
||||
fi
|
||||
echo "IP='${IP}'" >>${NETWORK_PROFILE}
|
||||
echo "IP=${IP}" >>${NETWORK_PROFILE}
|
||||
if [[ "${IP}" = "dhcp" ]]; then
|
||||
[[ "${DHCLIENT}" = "yes" ]] && echo "DHCLIENT=yes" >>${NETWORK_PROFILE}
|
||||
else
|
||||
echo "ADDR='${IPADDR}'" >>${NETWORK_PROFILE}
|
||||
echo "GATEWAY='${GW}'" >>${NETWORK_PROFILE}
|
||||
echo "Address='${IPADDR}'" >>${NETWORK_PROFILE}
|
||||
echo "Gateway='${GW}'" >>${NETWORK_PROFILE}
|
||||
echo "DNS=('${DNS}')" >>${NETWORK_PROFILE}
|
||||
fi
|
||||
# run netcfg
|
||||
netcfg -r $(basename ${NETWORK_PROFILE}) >${LOG}
|
||||
# run netctl
|
||||
netctl start $(basename ${NETWORK_PROFILE}) >${LOG}
|
||||
if [[ $? -gt 0 ]]; then
|
||||
DIALOG --msgbox "Error occured while running netcfg. (see ${LOG} for output)" 0 0
|
||||
DIALOG --msgbox "Error occured while running netctl. (see ${LOG} for output)" 0 0
|
||||
return 1
|
||||
fi
|
||||
# http/ftp proxy settings
|
||||
|
|
Loading…
Reference in a new issue