#!/usr/bin/env bash
# Created by Tobias Powalowski <tpowa@archlinux.org>

build ()
{
    add_checked_modules -f 'nfp' -f 'liquidio' -f 'mellanox' -f 'wireless' '/drivers/net/'
    apps="dnsdomainname netstat arp ipmaddr iptunnel mii-tool nameif plipconfig rarp \
	  slattach traceroute arping clockdiff rarpd rdisc tftpd tracepath route \
	  dig host nslookup telnet ssh arpd genl ifstat lnstat nstat rtacct rtmon ss tc dhclient ifplugd ifplugstatus \
	  ip ping ethtool elinks"
    for i in $apps; do
        add_binary "$i"
    done
    appfiles="/usr/bin/ifcfg /usr/bin/routef /usr/bin/routel /usr/bin/rtpr /usr/bin/dhcpcd /usr/bin/ifenslave /usr/bin/brctl"
    for i in $appfiles; do
        add_file "$i"
    done
    symlinks="/usr/bin/ctstat /usr/bin/rtstat"
    for i in $symlinks; do
        add_binary "$(which $(basename $(readlink "$i")))"
        add_symlink "$i" "$(which $(basename $(readlink "$i")))"
    done
    for i in $(find /usr/lib/dhcpcd -type f); do
        add_file "$i"
    done
    # start dhcpcd on startup
    add_symlink "/etc/systemd/system/multi-user.target.wants/dhcpcd.service" "/usr/lib/systemd/system/dhcpcd.service"
    add_file "/usr/share/archboot/net/etc/system/dhcpcd@.service.d/no-wait.conf" "/etc/system/dhcpcd@.service.d/no-wait.conf"
    add_file "/etc/dhcpcd.conf"
    add_dir "/var/lib/dhcpcd"
    add_full_dir "/usr/lib/tc"
    add_full_dir "/usr/share/tc"
    add_full_dir "/etc/iproute2"
    # add openssl helper libraries
    add_full_dir "/usr/lib/engines"

    # add dnssec-anchors
    add_file "/etc/trusted-key.key"
    # add dhclient support
    add_file "/usr/bin/dhclient-script"
    add_dir "/var/lib/dhclient"
    add_dir "/var/state/dhcp"
    # add ifplugd support
    add_full_dir "/etc/ifplugd"
    # fixing licenses
    add_file "/usr/share/licenses/db/LICENSE"
    add_file "/usr/share/licenses/dhcpcd/LICENSE"
    add_file "/usr/share/licenses/dhclient/LICENSE"
    add_file "/usr/share/licenses/bind/LICENSE"
    add_file "/usr/share/licenses/krb5/LICENSE"
    add_file "/usr/share/licenses/openssh/LICENCE"
    add_file "/usr/share/licenses/openssl/LICENSE"
    add_file "/usr/share/licenses/sqlite/license.txt"
    add_file "/usr/share/licenses/dnssec-anchors/LICENSE"
}

help ()
{
cat<<HELPEOF
  This hook includes the network on an archboot image.
HELPEOF
}
