Author: cperciva
Date: Wed Dec 30 06:28:47 2009
New Revision: 201251
URL: http://svn.freebsd.org/changeset/base/201251

Log:
  Add undocumented 'portsnap alfred' command, which runs (fetch|cron)
  based on whether fd 0 is a terminal, and then runs (extract|update)
  based on whether ${PORTSDIR} exists.
  
  Requested by: alfred
  MFC after:    1 month

Modified:
  head/usr.sbin/portsnap/portsnap/portsnap.sh

Modified: head/usr.sbin/portsnap/portsnap/portsnap.sh
==============================================================================
--- head/usr.sbin/portsnap/portsnap/portsnap.sh Wed Dec 30 06:28:30 2009        
(r201250)
+++ head/usr.sbin/portsnap/portsnap/portsnap.sh Wed Dec 30 06:28:47 2009        
(r201251)
@@ -140,7 +140,7 @@ parse_cmdline() {
                        if [ ! -z "${SERVERNAME}" ]; then usage; fi
                        shift; SERVERNAME="$1"
                        ;;
-               cron | extract | fetch | update)
+               cron | extract | fetch | update | alfred)
                        COMMANDS="${COMMANDS} $1"
                        ;;
                *)
@@ -1040,6 +1040,22 @@ cmd_update() {
        update_run || exit 1
 }
 
+# Alfred command.  Run 'fetch' or 'cron' depending on
+# whether stdin is a terminal; then run 'update' or
+# 'extract' depending on whether ${PORTSDIR} exists.
+cmd_alfred() {
+       if [ -t 0 ]; then
+               cmd_fetch
+       else
+               cmd_cron
+       fi
+       if [ -d ${PORTSDIR} ]; then
+               cmd_update
+       else
+               cmd_extract
+       fi
+}
+
 #### Entry point
 
 # Make sure we find utilities from the base system
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to