mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-08-03 16:07:51 +00:00
connman: simplyfing init script, use system config file
Signed-off-by: Stephan Raue <stephan@openelec.tv>
This commit is contained in:
parent
1d004a7fbb
commit
7a010ba2a5
@ -22,33 +22,19 @@
|
|||||||
#
|
#
|
||||||
# runlevels: openelec, installer, textmode
|
# runlevels: openelec, installer, textmode
|
||||||
|
|
||||||
OPENELEC_SETTINGS="$HOME/.xbmc/userdata/addon_data/os.openelec.settings/settings.xml"
|
if [ -f /var/config/settings.conf ]; then
|
||||||
|
. /var/config/settings.conf
|
||||||
if [ -f "$OPENELEC_SETTINGS" ]; then
|
|
||||||
HOSTNAME=`grep NET_HOSTNAME $OPENELEC_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
|
|
||||||
NETWORK=`grep NET_NETWORK $OPENELEC_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
|
|
||||||
IFACE=`grep NET_IFACE $OPENELEC_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
|
|
||||||
IPADDRESS=`grep NET_IPADDRESS $OPENELEC_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
|
|
||||||
PREFIXLEN=`grep NET_PREFIXLEN $OPENELEC_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
|
|
||||||
GATEWAY=`grep NET_GATEWAY $OPENELEC_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
|
|
||||||
DNS1=`grep NET_DNS1 $OPENELEC_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
|
|
||||||
DNS2=`grep NET_DNS2 $OPENELEC_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
|
|
||||||
DNS3=`grep NET_DNS3 $OPENELEC_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
|
|
||||||
HIDDEN=`grep NET_HIDDEN $OPENELEC_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
|
|
||||||
SSID=`grep NET_SSID $OPENELEC_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
|
|
||||||
SECURITY=`grep NET_SECURITY $OPENELEC_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
|
|
||||||
PASSPHRASE=`grep NET_PASSPHRASE $OPENELEC_SETTINGS | awk '{print $3 }' | sed -e "s,value=,," -e "s,\",,g"`
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
[ -z "$HOSTNAME" ] && HOSTNAME="openelec"
|
[ -z "$NET_HOSTNAME" ] && NET_HOSTNAME="openelec"
|
||||||
|
|
||||||
# setup hostname
|
# setup hostname
|
||||||
progress "Setup hostname"
|
progress "Setup hostname"
|
||||||
echo "$HOSTNAME" > /proc/sys/kernel/hostname
|
echo "$NET_HOSTNAME" > /proc/sys/kernel/hostname
|
||||||
|
|
||||||
# create /etc/hosts file, useful for gethostbyname(localhost)
|
# create /etc/hosts file, useful for gethostbyname(localhost)
|
||||||
progress "creating /etc/hosts"
|
progress "creating /etc/hosts"
|
||||||
echo -e "127.0.0.1\tlocalhost $HOSTNAME" > /etc/hosts
|
echo -e "127.0.0.1\tlocalhost $NET_HOSTNAME" > /etc/hosts
|
||||||
|
|
||||||
# add user defined hosts.conf entry's
|
# add user defined hosts.conf entry's
|
||||||
[ -f $HOME/.config/hosts.conf ] && cat $HOME/.config/hosts.conf >> /etc/hosts
|
[ -f $HOME/.config/hosts.conf ] && cat $HOME/.config/hosts.conf >> /etc/hosts
|
||||||
@ -65,58 +51,58 @@ fi
|
|||||||
# NETWORK: ( LAN / WLAN )
|
# NETWORK: ( LAN / WLAN )
|
||||||
|
|
||||||
for i in 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19; do
|
for i in 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19; do
|
||||||
if [ ! -f /sys/class/net/$IFACE/address ]; then
|
if [ ! -f /sys/class/net/$NET_IFACE/address ]; then
|
||||||
logger -t Connman "### [$i] cannot find /sys/class/net/$IFACE/address ###"
|
logger -t Connman "### [$i] cannot find /sys/class/net/$NET_IFACE/address ###"
|
||||||
else
|
else
|
||||||
logger -t Connman "### [$i] found /sys/class/net/$IFACE/address, continue ###"
|
logger -t Connman "### [$i] found /sys/class/net/$NET_IFACE/address, continue ###"
|
||||||
IFACE=`cat /sys/class/net/$IFACE/address | sed 's/://g'`
|
NET_IFACE=`cat /sys/class/net/$NET_IFACE/address | sed 's/://g'`
|
||||||
break
|
break
|
||||||
fi
|
fi
|
||||||
usleep 500000
|
usleep 500000
|
||||||
done
|
done
|
||||||
|
|
||||||
if [ "$NETWORK" = "WLAN" -a -n "$SSID" ]; then
|
if [ "$NET_NETWORK" = "WLAN" -a -n "$NET_SSID" ]; then
|
||||||
SSID_HEX=`echo -n "$SSID" | od -tx1 | cut -c8-| tr -d ' \n'`
|
NET_SSID_HEX=`echo -n "$NET_SSID" | od -tx1 | cut -c8-| tr -d ' \n'`
|
||||||
|
|
||||||
# SECURITY: ( NONE / WEP / PSK )
|
# NET_SECURITY: ( NONE / WEP / PSK )
|
||||||
if [ "$SECURITY" = "WEP" -a -n "$PASSPHRASE" ]; then
|
if [ "$NET_SECURITY" = "WEP" -a -n "$NET_PASSPHRASE" ]; then
|
||||||
MODE="managed_wep"
|
MODE="managed_wep"
|
||||||
elif [ "$SECURITY" = "PSK" -a -n "$PASSPHRASE" ]; then
|
elif [ "$NET_SECURITY" = "PSK" -a -n "$NET_PASSPHRASE" ]; then
|
||||||
MODE="managed_psk"
|
MODE="managed_psk"
|
||||||
else
|
else
|
||||||
MODE="managed_none"
|
MODE="managed_none"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$HIDDEN" = "true" ]; then
|
if [ "$NET_HIDDEN" = "true" ]; then
|
||||||
echo "[wifi_${IFACE}_hidden_${MODE}]" > $CONNMAN_PROFILE
|
echo "[wifi_${NET_IFACE}_hidden_${MODE}]" > $CONNMAN_PROFILE
|
||||||
else
|
else
|
||||||
echo "[wifi_${IFACE}_${SSID_HEX}_${MODE}]" > $CONNMAN_PROFILE
|
echo "[wifi_${NET_IFACE}_${NET_SSID_HEX}_${MODE}]" > $CONNMAN_PROFILE
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Name=$SSID" >> $CONNMAN_PROFILE
|
echo "Name=$NET_SSID" >> $CONNMAN_PROFILE
|
||||||
echo "SSID=$SSID_HEX" >> $CONNMAN_PROFILE
|
echo "SSID=$NET_SSID_HEX" >> $CONNMAN_PROFILE
|
||||||
[ -n "$PASSPHRASE" ] && echo "Passphrase=$PASSPHRASE" >> $CONNMAN_PROFILE
|
[ -n "$NET_PASSPHRASE" ] && echo "Passphrase=$NET_PASSPHRASE" >> $CONNMAN_PROFILE
|
||||||
echo "Favorite=true" >> $CONNMAN_PROFILE
|
echo "Favorite=true" >> $CONNMAN_PROFILE
|
||||||
echo "AutoConnect=true" >> $CONNMAN_PROFILE
|
echo "AutoConnect=true" >> $CONNMAN_PROFILE
|
||||||
|
|
||||||
else
|
else
|
||||||
MODE="cable"
|
MODE="cable"
|
||||||
echo "[ethernet_${IFACE}_${MODE}]" > $CONNMAN_PROFILE
|
echo "[ethernet_${NET_IFACE}_${MODE}]" > $CONNMAN_PROFILE
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# IP settings
|
# IP settings
|
||||||
if [ -z "$IPADDRESS" ]; then
|
if [ -z "$NET_IPADDRESS" ]; then
|
||||||
echo "IPv4.method=dhcp" >> $CONNMAN_PROFILE
|
echo "IPv4.method=dhcp" >> $CONNMAN_PROFILE
|
||||||
else
|
else
|
||||||
echo "IPv4.method=manual" >> $CONNMAN_PROFILE
|
echo "IPv4.method=manual" >> $CONNMAN_PROFILE
|
||||||
echo "IPv4.local_address=$IPADDRESS" >> $CONNMAN_PROFILE
|
echo "IPv4.local_address=$NET_IPADDRESS" >> $CONNMAN_PROFILE
|
||||||
[ -n "$PREFIXLEN" ] && echo "IPv4.netmask_prefixlen=$PREFIXLEN" >> $CONNMAN_PROFILE
|
[ -n "$NET_PREFIXLEN" ] && echo "IPv4.netmask_prefixlen=$NET_PREFIXLEN" >> $CONNMAN_PROFILE
|
||||||
[ -n "$GATEWAY" ] && echo "IPv4.gateway=$GATEWAY" >> $CONNMAN_PROFILE
|
[ -n "$NET_GATEWAY" ] && echo "IPv4.gateway=$NET_GATEWAY" >> $CONNMAN_PROFILE
|
||||||
|
|
||||||
[ -n "$DNS1" ] && NAMESERVER="$DNS1"
|
[ -n "$NET_DNS1" ] && NET_NAMESERVER="$NET_DNS1"
|
||||||
[ -n "$DNS2" ] && NAMESERVER="$NAMESERVER;$DNS2"
|
[ -n "$NET_DNS2" ] && NET_NAMESERVER="$NET_NAMESERVER;$NET_DNS2"
|
||||||
[ -n "$DNS3" ] && NAMESERVER="$NAMESERVER;$DNS3"
|
[ -n "$NET_DNS3" ] && NET_NAMESERVER="$NET_NAMESERVER;$NET_DNS3"
|
||||||
[ -n "$NAMESERVER" ] && echo "Nameservers=$NAMESERVER;" >> $CONNMAN_PROFILE
|
[ -n "$NET_NAMESERVER" ] && echo "Nameservers=$NET_NAMESERVER;" >> $CONNMAN_PROFILE
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# starting Connection manager
|
# starting Connection manager
|
||||||
|
Loading…
x
Reference in New Issue
Block a user