wok-tiny annotate lan-config/receipt @ rev 55
Add jslinux
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Thu May 19 15:40:03 2011 +0200 (2011-05-19) |
parents | 9f3b17cfbfe1 |
children | a6d2ddc65590 |
rev | line source |
---|---|
pascal@8 | 1 # SliTaz package receipt. |
pascal@8 | 2 |
pascal@8 | 3 PACKAGE="lan-config" |
pascal@8 | 4 VERSION="1.0" |
pascal@9 | 5 CATEGORY="configuration" |
pascal@8 | 6 SHORT_DESC="Tiny SliTaz lan ip configuration (2nd ethernet card)" |
pascal@8 | 7 MAINTAINER="pascal.bellard@slitaz.org" |
pascal@55 | 8 WEB_SITE="http://tiny.slitaz.org/" |
pascal@8 | 9 CONFIG_FILES="/etc/network.conf" |
pascal@8 | 10 |
pascal@8 | 11 # Rules to configure and make the package. |
pascal@8 | 12 compile_rules() |
pascal@8 | 13 { |
pascal@8 | 14 while read pkg file ; do |
pascal@8 | 15 if [ ! -s $pkg*/fs$file ]; then |
pascal@8 | 16 tazpkg get $pkg |
pascal@8 | 17 tazpkg extract $pkg*.tazpkg |
pascal@8 | 18 fi |
pascal@8 | 19 mkdir -p fs$(dirname $file) |
pascal@8 | 20 mv $pkg*/fs$file fs$(dirname $file) || return 1 |
pascal@8 | 21 done << EOT |
pascal@8 | 22 slitaz-boot-scripts /etc/init.d/network.sh |
pascal@8 | 23 slitaz-boot-scripts /etc/network.conf |
pascal@8 | 24 EOT |
pascal@8 | 25 sed -i -e 's#^dhcp(.*#&\ |
pascal@8 | 26 if [ "$LAN_DHCP" = "yes" ] ; then\ |
pascal@8 | 27 echo "Starting udhcpc client on: $LAN_INTERFACE..."\ |
pascal@8 | 28 /sbin/udhcpc -b -T 1 -A 12 -i $LAN_INTERFACE -p /var/run/udhcpc.$LAN_INTERFACE.pid\ |
pascal@8 | 29 fi#' -e 's#^static_ip(.*#&\ |
pascal@8 | 30 if [ "$LAN_STATIC" = "yes" ] ; then\ |
pascal@8 | 31 echo "Configuring static IP on $LAN_INTERFACE: $LAN_IP..."\ |
pascal@8 | 32 /sbin/ifconfig $LAN_INTERFACE $LAN_IP netmask $LAN_NETMASK up\ |
pascal@8 | 33 fi#' fs/etc/init.d/network.sh |
pascal@10 | 34 cat >> fs/etc/network.conf <<EOT |
pascal@10 | 35 |
pascal@10 | 36 # Set lan interface. |
pascal@10 | 37 LAN_INTERFACE="eth1" |
pascal@10 | 38 |
pascal@10 | 39 # Dynamic IP address. |
pascal@10 | 40 # Enable/disable DHCP lan client at boot time. |
pascal@10 | 41 LAN_DHCP="no" |
pascal@10 | 42 |
pascal@10 | 43 # Static IP address. |
pascal@10 | 44 # Enable/disable static lan IP at boot time. |
pascal@10 | 45 LAN_STATIC="yes" |
pascal@10 | 46 |
pascal@10 | 47 # Set lan IP address and netmask for a static IP. |
pascal@10 | 48 LAN_IP="192.168.1.1" |
pascal@10 | 49 LAN_NETMASK="255.255.255.0" |
pascal@10 | 50 |
pascal@10 | 51 EOT |
pascal@8 | 52 } |
pascal@8 | 53 |
pascal@8 | 54 # Rules to gen a SliTaz package suitable for Tazpkg. |
pascal@8 | 55 genpkg_rules() |
pascal@8 | 56 { |
pascal@8 | 57 cp -a fs/. $fs |
pascal@8 | 58 } |
pascal@8 | 59 |
pascal@8 | 60 config_form() |
pascal@8 | 61 { |
pascal@8 | 62 [ -n "$INTERFACE" ] || INTERFACE=eth1 |
pascal@8 | 63 [ -n "$IP" ] || IP=192.168.0.6 |
pascal@8 | 64 [ -n "$NETMASK" ] || NETMASK=255.255.255.0 |
pascal@8 | 65 cat <<EOT |
pascal@8 | 66 <table> |
pascal@8 | 67 <tr> |
pascal@8 | 68 <td>LAN Interface</td> |
pascal@8 | 69 <td><input type="text" name="INTERFACE" value="$INTERFACE" /></td> |
pascal@8 | 70 </tr> |
pascal@8 | 71 <tr> |
pascal@8 | 72 <td>LAN Network configuration</td> |
pascal@8 | 73 <td><select name="MODE"> |
pascal@8 | 74 <option value="STATIC">STATIC</option> |
pascal@8 | 75 <option value="DHCP"$([ "$MODE" == "DHCP" ] && echo ' selected="selected"')>DHCP</option> |
pascal@8 | 76 </select></td> |
pascal@8 | 77 </tr> |
pascal@8 | 78 <tr> |
pascal@8 | 79 <td>LAN Internet address</td> |
pascal@8 | 80 <td><input type="text" name="IP" value="$IP" /></td> |
pascal@8 | 81 </tr> |
pascal@8 | 82 <tr> |
pascal@8 | 83 <td>LAN Netmask</td> |
pascal@8 | 84 <td><input type="text" name="NETMASK" value="$NETMASK" /></td> |
pascal@8 | 85 </tr> |
pascal@8 | 86 </table> |
pascal@10 | 87 <input type="checkbox" name="ROUTING" value="ON" checked="checked" /> |
pascal@10 | 88 Enable LAN routing<br> |
pascal@8 | 89 EOT |
pascal@8 | 90 } |
pascal@8 | 91 |
pascal@8 | 92 post_install() |
pascal@8 | 93 { |
pascal@8 | 94 DHCP="no" |
pascal@8 | 95 STATIC="yes" |
pascal@8 | 96 case "$MODE" in |
pascal@8 | 97 "") return 1;; |
pascal@8 | 98 DHCP) DHCP="yes" |
pascal@8 | 99 STATIC="no" |
pascal@8 | 100 esac |
pascal@8 | 101 sed -i -e "s/^LAN_INTERFACE=.*/LAN_INTERFACE=\"$INTERFACE\"/" \ |
pascal@8 | 102 -e "s/^LAN_NETMASK=.*/LAN_NETMASK=\"$NETMASK\"/" \ |
pascal@8 | 103 -e "s/^LAN_STATIC=.*/LAN_STATIC=\"$STATIC\"/" \ |
pascal@8 | 104 -e "s/^LAN_DHCP=.*/LAN_DHCP=\"$DHCP\"/" \ |
pascal@8 | 105 -e "s/^LAN_IP=.*/LAN_IP=\"$IP\"/" $1/etc/network.conf |
pascal@10 | 106 [ "$ROUTING" == "ON" ] && cat >> $1/etc/init.d/local.sh <<EOT |
pascal@10 | 107 # Enable IP routing between interfaces |
pascal@10 | 108 echo 1 > /proc/sys/net/ipv4/ip_forward |
pascal@10 | 109 |
pascal@10 | 110 EOT |
pascal@8 | 111 } |