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

build ()
{
    add_checked_modules '/drivers/net/'
    apps="findssl.sh scp sftp ssh-add ssh-agent ssh-copy-id ssh-keygen ssh-keyscan sshd \
	  telnetd rsync exportfs nfsstat rpc.idmapd rpc.mountd rpc.nfsd rpc.statd rpcdebug showmount \
	  sm-notify start-statd rpcbind rpcinfo gss_clnt_send_err gss_destroy_creds rpc.gssd rpc.svcgssd mountpoint"
    for i in $apps; do
        add_binary "$i"
    done
    symlinks="/usr/bin/screen /usr/bin/slogin"
    for i in $symlinks; do
        add_binary "$(which $(basename $(readlink "$i")))"
        add_symlink "$i" "$(which $(basename $(readlink "$i")))"
    done
    add_file "/etc/screenrc"
    add_file "/etc/ssh/ssh_config"
    add_file "/etc/ssh/sshd_config"
    add_file "/etc/ssh/moduli"
    add_file "/etc/rsyncd.conf"
    add_file "/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_dir  "/var/empty"
    add_file "/etc/conf.d/nfs-common.conf"
    add_file "/etc/conf.d/nfs-server.conf"
    add_file "/etc/gssapi_mech.conf"
    add_file "/etc/idmapd.conf"
    add_file "/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"
    # start sshd on startup
    add_symlink "/etc/systemd/system/multi-user.target.wants/sshd.service" "/usr/lib/systemd/system/sshd.service"
    # fix licenses
    add_file "/usr/share/licenses/rpcbind/COPYING"
    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
}
