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

build ()
{
    add_checked_modules '/drivers/net/'
    apps="/usr/bin/findssl.sh /usr/bin/scp /usr/bin/sftp /usr/bin/ssh-add /usr/bin/ssh-agent \
          /usr/bin/ssh-copy-id /usr/bin/ssh-keygen /usr/bin/ssh-keyscan /usr/sbin/sshd /usr/sbin/xinetd \
	  /usr/sbin/telnetd /usr/bin/rsync /usr/sbin/exportfs /usr/sbin/nfsstat /usr/sbin/rpc.idmapd \
	  /usr/sbin/rpc.mountd /usr/sbin/rpc.nfsd /usr/sbin/rpc.statd /usr/sbin/rpcdebug /usr/sbin/showmount \
	  /usr/sbin/sm-notify /usr/sbin/start-statd /usr/bin/slogin /usr/bin/screen /usr/bin/rpcbind \
	  /usr/bin/rpcinfo /usr/sbin/gss_clnt_send_err /usr/sbin/gss_destroy_creds /usr/sbin/rpc.gssd \
	  /usr/sbin/rpc.svcgssd /bin/mountpoint"
    for i in $apps; do
        add_binary "$i"
    done
    add_file "/usr/share/archboot/remote/etc/screenrc" "/etc/screenrc"
    add_file "/usr/share/archboot/remote/etc/xinetd.conf" "/etc/xinetd.conf"
    add_file "/usr/share/archboot/remote/etc/xinetd.d/servers" "/etc/xinetd.d/servers"
    add_file "/usr/share/archboot/remote/etc/xinetd.d/services" "/etc/xinetd.d/services"
    add_file "/usr/share/archboot/remote/etc/xinetd.d/telnet" "/etc/xinetd.d/telnet"
    add_file "/usr/share/archboot/remote/etc/ssh/ssh_config" "/etc/ssh/ssh_config"
    add_file "/usr/share/archboot/remote/etc/ssh/sshd_config" "/etc/ssh/sshd_config"
    add_file "/usr/share/archboot/remote/etc/conf.d/sshd" "/etc/conf.d/sshd"
    add_file "/usr/share/archboot/remote/etc/ssh/moduli" "/etc/ssh/moduli"
    add_file "/usr/share/archboot/remote/etc/pam.d/sshd" "/etc/pam.d/sshd"
    add_file "/usr/share/archboot/remote/etc/pam.d/screen" "/etc/pam.d/screen"
    add_file "/usr/share/archboot/remote/etc/rsyncd.conf" "/etc/rsyncd.conf"
    add_file "/usr/share/archboot/remote/etc/xinetd.d/rsync" "/etc/xinetd.d/rsync"
    add_file "/usr/share/archboot/remote/etc/exports" "/etc/exports"
    for i in $(find /usr/share/terminfo/ ! -type d); do
    	add_file "$i"
    done
    add_file "/usr/lib/ssh/sftp-server"
    add_file "/usr/lib/ssh/ssh-keysign"
    add_file "/usr/lib/ssh/ssh-pkcs11-helper"
    add_file "/etc/rc.d/rpcbind"
    add_file "/etc/rc.d/sshd"
    add_file "/etc/rc.d/functions.d/sshd-close-sessions"
    add_file "/etc/rc.d/xinetd"
    add_file "/etc/rc.d/rsyncd"
    add_dir  "/var/empty"
    add_file "/etc/rc.d/nfs-server"
    add_file "/etc/rc.d/nfs-common"
    add_file "/usr/share/archboot/remote/etc/conf.d/nfs-common.conf" "/etc/conf.d/nfs-common.conf"
    add_file "/usr/share/archboot/remote/etc/conf.d/nfs-server.conf" "/etc/conf.d/nfs-server.conf"
    add_file "/usr/share/archboot/remote/etc/gssapi_mech.conf" "/etc/gssapi_mech.conf"
    add_file "/usr/share/archboot/remote/etc/idmapd.conf" "/etc/idmapd.conf"
    add_file  "/usr/share/archboot/remote/etc/netconfig" "/etc/netconfig"
    add_dir "/var/lib/nfs/sm"
    add_dir "/var/lib/nfs/sm.bak"
    add_dir "/var/lib/nfs/v4recovery"
    add_dir "/var/lib/nfs/rpc_pipefs"
    # fix licenses
    add_file "/usr/share/licenses/rpcbind/COPYING"
    add_file "/usr/share/licenses/xinetd/COPYRIGHT"
    add_file "/usr/share/licenses/libsasl/COPYING"
    add_file "/usr/share/licenses/libldap/LICENSE"
    add_file "/usr/share/licenses/nfsidmap/LICENSE"
    add_file "/usr/share/licenses/libgssglue/COPYING"

    add_runscript
}

help ()
{
cat<<HELPEOF
  This hook includes remote tools on an arch boot image.
HELPEOF
}
