aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorstephen <stephen@FreeBSD.org>2012-04-30 11:28:38 +0800
committerstephen <stephen@FreeBSD.org>2012-04-30 11:28:38 +0800
commit3082de52aa0731c1909d13a9ae7bbef9c35a6885 (patch)
tree05d7c23e38ff8949af48834bb42f6480888097e9
parent3d4fdacc437bbe6a0f4b32e4ed4ff7fe0fa040f3 (diff)
downloadfreebsd-ports-gnome-3082de52aa0731c1909d13a9ae7bbef9c35a6885.tar.gz
freebsd-ports-gnome-3082de52aa0731c1909d13a9ae7bbef9c35a6885.tar.zst
freebsd-ports-gnome-3082de52aa0731c1909d13a9ae7bbef9c35a6885.zip
- New port sysutils/autojump
Autojump is a tool that acts as a complement to cd: it makes navigating your filesystem a lot faster. It works by automagically maintaining a database of the directories you use the most from the command line, and allows you to jump back and forth between them, by typing just a few letters of the name of the directory you want to jump to. PR: ports/151467 Submitted by: Neeraj Verma <neeraj.verma.ports@vermatech.com>
-rw-r--r--sysutils/Makefile1
-rw-r--r--sysutils/autojump/Makefile61
-rw-r--r--sysutils/autojump/distinfo2
-rw-r--r--sysutils/autojump/files/patch-install.sh68
-rw-r--r--sysutils/autojump/files/patch-install.zsh65
-rw-r--r--sysutils/autojump/files/pkg-install.in14
-rw-r--r--sysutils/autojump/pkg-deinstall15
-rw-r--r--sysutils/autojump/pkg-descr7
-rw-r--r--sysutils/autojump/pkg-message6
9 files changed, 239 insertions, 0 deletions
diff --git a/sysutils/Makefile b/sysutils/Makefile
index 1db4b4c5ede5..e011d2d6ed24 100644
--- a/sysutils/Makefile
+++ b/sysutils/Makefile
@@ -45,6 +45,7 @@
SUBDIR += atitvout
SUBDIR += atop
SUBDIR += auto-admin
+ SUBDIR += autojump
SUBDIR += automount
SUBDIR += automounter
SUBDIR += autopsy
diff --git a/sysutils/autojump/Makefile b/sysutils/autojump/Makefile
new file mode 100644
index 000000000000..6989ccb7e51a
--- /dev/null
+++ b/sysutils/autojump/Makefile
@@ -0,0 +1,61 @@
+# New ports collection makefile for: autojump
+# Date created: 12 October 2011
+# Whom: Neeraj Verma <neeraj.verma.ports@vermatech.com>
+#
+# $FreeBSD$
+#
+
+PORTNAME= autojump
+PORTVERSION= 13
+CATEGORIES= sysutils
+MASTER_SITES= http://cloud.github.com/downloads/joelthelion/autojump/ \
+ http://www.vermatech.com/distfiles/
+DISTNAME= autojump_v${PORTVERSION}
+EXTRACT_SUFX= .tar.gz
+
+MAINTAINER= neeraj.verma.ports@vermatech.com
+COMMENT= Autojump is a tool that acts as a complement to cd
+
+RUN_DEPENDS= ${LOCALBASE}/bin/bash:${PORTSDIR}/shells/bash
+
+USE_PYTHON_RUN= YES
+
+NO_BUILD= YES
+
+SUB_FILES+= pkg-install
+
+PLIST_FILES= bin/autojump \
+ bin/jumpapplet \
+ share/autojump/autojump.bash \
+ share/autojump/autojump.zsh \
+ share/autojump/icon.png
+MAN1= autojump.1
+
+OPTIONS= ZSH "Install zsh version as well." On
+
+.include <bsd.port.options.mk>
+
+.if defined(WITH_ZSH)
+RUN_DEPENDS+= ${LOCALBASE}/bin/zsh:${PORTSDIR}/shells/zsh
+PLIST_FILES+= share/zsh/site-functions/_j
+.endif
+
+PLIST_DIRS= share/autojump
+
+post-patch:
+ @${REINPLACE_CMD} 's|/usr/bin/python|${PYTHON_CMD}|' ${WRKSRC}/autojump
+ @${REINPLACE_CMD} -e 's|/usr$$|${PREFIX}|' -e 's|/usr/local|${PREFIX}|' -e 's|/bin/bash|${PREFIX}/bin/bash|' ${WRKSRC}/install.sh
+ @${REINPLACE_CMD} -e 's|/usr$$|${PREFIX}|' -e 's|/usr/local|${PREFIX}|' -e 's|/bin/zsh|${PREFIX}/bin/zsh|' ${WRKSRC}/install.zsh
+
+do-install:
+.if defined(WITH_ZSH)
+ @(cd ${INSTALL_WRKSRC} && ${SETENV} PREFIX=${PREFIX} ./install.zsh )
+.else
+ @(cd ${INSTALL_WRKSRC} && ${SETENV} PREFIX=${PREFIX} ./install.sh )
+.endif
+ @${SETENV} PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
+
+post-install:
+ @${CAT} ${PKGMESSAGE}
+
+.include <bsd.port.mk>
diff --git a/sysutils/autojump/distinfo b/sysutils/autojump/distinfo
new file mode 100644
index 000000000000..6f72e3e9c785
--- /dev/null
+++ b/sysutils/autojump/distinfo
@@ -0,0 +1,2 @@
+SHA256 (autojump_v13.tar.gz) = 020ef781b30f8cbe4f183f2ccadac720e3f747e82924aaa4b95da01d76cc2153
+SIZE (autojump_v13.tar.gz) = 22723
diff --git a/sysutils/autojump/files/patch-install.sh b/sysutils/autojump/files/patch-install.sh
new file mode 100644
index 000000000000..edac72766e16
--- /dev/null
+++ b/sysutils/autojump/files/patch-install.sh
@@ -0,0 +1,68 @@
+--- ./install.sh.orig 2010-10-01 10:49:18.000000000 -0400
++++ ./install.sh 2011-12-03 23:04:22.000000000 -0500
+@@ -41,56 +41,12 @@
+ echo "Installing to ${prefix} ..."
+
+ # INSTALL AUTOJUMP
+-sudo mkdir -p ${prefix}/share/autojump/
+-sudo mkdir -p ${prefix}/bin/
+-sudo mkdir -p ${prefix}/share/man/man1/
+-sudo cp icon.png ${prefix}/share/autojump/
+-sudo cp jumpapplet ${prefix}/bin/
+-sudo cp autojump ${prefix}/bin/
+-sudo cp autojump.1 ${prefix}/share/man/man1/
+-
+-if [ -d "/etc/profile.d" ]; then
+- sudo cp autojump.bash /etc/profile.d/
+- sudo cp autojump.sh /etc/profile.d/
+-
+- # Make sure that the code we just copied has been sourced.
+- # check if .bashrc has sourced /etc/profile or /etc/profile.d/autojump.bash
+- if [ `grep -c "^[[:space:]]*source\|\. /etc/profile(\.d/autojump\.bash)[[:space:]]*$" ~/.bashrc` -eq 0 ]; then
+- echo "Your .bashrc doesn't seem to source /etc/profile or /etc/profile.d/autojump.bash"
+- echo "Adding the /etc/profile.d/autojump.bash to your .bashrc"
+- echo "" >> ~/.bashrc
+- echo "# Added by autojump install.sh" >> ~/.bashrc
+- echo "source /etc/profile.d/autojump.bash" >> ~/.bashrc
+- fi
+- echo "Done!"
+- echo
+- echo "You need to source your ~/.bashrc (source ~/.bashrc) before you can start using autojump."
+-else
+- echo "Your distribution does not have a /etc/profile.d directory, the default that we install one of the scripts to. Would you like us to copy it into your ~/.bashrc file to make it work? (If you have done this once before, delete the old version before doing it again.) [y/n]"
+- read ans
+- if [ ${#ans} -gt 0 ]; then
+- if [ $ans = "y" -o $ans = "Y" -o $ans = "yes" -o $ans = "Yes" ]; then
+-
+- # Answered yes. Go ahead and add the autojump code
+- echo "" >> ~/.bashrc
+- echo "#autojump" >> ~/.bashrc
+- cat autojump.bash | grep -v "^#" >> ~/.bashrc
+-
+- # Since OSX uses .bash_profile, we need to make sure that .bashrc is properly sourced.
+- # Makes the assumption that if they have a line: source ~/.bashrc or . ~/.bashrc, that
+- # .bashrc has been properly sourced and you don't need to add it.
+- OS=`uname`
+- if [ $OS == 'Darwin' -a `grep -c "^[[:space:]]*source\|\. ~/\.bashrc[[:space:]]*$" ~/.bash_profile` -eq 0 ]; then
+- echo "You are using OSX and your .bash_profile doesn't seem to be sourcing .bashrc"
+- echo "Adding source ~/.bashrc to your bashrc"
+- echo -e "\n# Get the aliases and functions" >> ~/.bash_profile
+- echo -e "if [ -f ~/.bashrc ]; then\n . ~/.bashrc\nfi" >> ~/.bash_profile
+- fi
+- echo "You need to source your ~/.bashrc (source ~/.bashrc) before you can start using autojump."
+- else
+- echo "Then you need to put autojump.sh, or the code from it, somewhere where it will get read. Good luck!"
+- fi
+- else
+- echo "Then you need to put autojump.sh, or the code from it, somewhere where it will get read. Good luck!"
+- fi
+-fi
++mkdir -p ${prefix}/share/autojump/
++mkdir -p ${prefix}/bin/
++mkdir -p ${prefix}/man/man1/
++cp icon.png ${prefix}/share/autojump/
++cp autojump.bash ${prefix}/share/autojump/
++cp autojump.zsh ${prefix}/share/autojump/
++cp jumpapplet ${prefix}/bin/
++cp autojump ${prefix}/bin/
++cp autojump.1 ${prefix}/man/man1/
diff --git a/sysutils/autojump/files/patch-install.zsh b/sysutils/autojump/files/patch-install.zsh
new file mode 100644
index 000000000000..6d07fd7d7a52
--- /dev/null
+++ b/sysutils/autojump/files/patch-install.zsh
@@ -0,0 +1,65 @@
+--- ./install.zsh.orig 2010-10-01 10:49:18.000000000 -0400
++++ ./install.zsh 2011-12-03 23:25:09.000000000 -0500
+@@ -39,19 +39,21 @@
+
+ echo "Installing main files to ${prefix} ..."
+
+-sudo mkdir -p ${prefix}/share/autojump/
+-sudo mkdir -p ${prefix}/bin/
+-sudo mkdir -p ${prefix}/share/man/man1/
+-sudo cp icon.png ${prefix}/share/autojump/
+-sudo cp jumpapplet ${prefix}/bin/
+-sudo cp autojump ${prefix}/bin/
+-sudo cp autojump.1 ${prefix}/share/man/man1/
++mkdir -p ${prefix}/share/autojump/
++mkdir -p ${prefix}/bin/
++mkdir -p ${prefix}/man/man1/
++cp icon.png ${prefix}/share/autojump/
++cp autojump.bash ${prefix}/share/autojump/
++cp autojump.zsh ${prefix}/share/autojump/
++cp jumpapplet ${prefix}/bin/
++cp autojump ${prefix}/bin/
++cp autojump.1 ${prefix}/man/man1/
+
+ # autocompletion file in the first directory of the FPATH variable
+ fail=true
+ for f in $fpath
+ do
+- sudo cp _j $f && fail=false && break
++ cp _j $f && fail=false && break
+ done
+ if $fail
+ then
+@@ -60,32 +60,3 @@
+ else
+ echo "Installed autocompletion file to $f"
+ fi
+-
+-if [ -d "/etc/profile.d" ]; then
+- sudo cp autojump.zsh /etc/profile.d/
+- sudo cp autojump.sh /etc/profile.d/
+- echo "Remember to add the line"
+- echo " source /etc/profile.d/autojump.zsh"
+- echo "or"
+- echo " source /etc/profile"
+- echo "to your ~/.zshrc if it's not there already"
+- echo
+- echo "You need to source your ~/.zshrc (source ~/.zshrc) before you can start using autojump."
+-else
+- echo "Your distribution does not have a /etc/profile.d directory, the default that we install one of the scripts to. Would you like us to copy it into your ~/.zshrc file to make it work? (If you have done this once before, delete the old version before doing it again.) [y/n]"
+- read ans
+- if [ ${#ans} -gt 0 ]; then
+- if [ $ans = "y" -o $ans = "Y" -o $ans = "yes" -o $ans = "Yes" ]; then
+- echo "" >> ~/.zshrc
+- echo "#autojump" >> ~/.zshrc
+- cat autojump.zsh >> ~/.zshrc
+- echo "Done!"
+- echo
+- echo "You need to source your ~/.zshrc (source ~/.zshrc) before you can start using autojump."
+- else
+- echo "Then you need to put autojump.zsh, or the code from it, somewhere where it will get read. Good luck!"
+- fi
+- else
+- echo "Then you need to put autojump.zsh, or the code from it, somewhere where it will get read. Good luck!"
+- fi
+-fi
diff --git a/sysutils/autojump/files/pkg-install.in b/sysutils/autojump/files/pkg-install.in
new file mode 100644
index 000000000000..0945d3f9bb5e
--- /dev/null
+++ b/sysutils/autojump/files/pkg-install.in
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+case $2 in
+POST-INSTALL)
+ if [ -e /etc/profile ]; then \
+ cp %%PREFIX%%/share/autojump/autojump.bash /etc/profile.autojump
+ echo ". /etc/profile.autojump" >> /etc/profile
+ fi
+ if [ -e /etc/zshrc ]; then \
+ cp %%PREFIX%%/share/autojump/autojump.zsh /etc/zshrc.autojump
+ echo ". /etc/zshrc.autojump" >> /etc/zshrc
+ fi
+ ;;
+esac
diff --git a/sysutils/autojump/pkg-deinstall b/sysutils/autojump/pkg-deinstall
new file mode 100644
index 000000000000..7be2b4c4ef7b
--- /dev/null
+++ b/sysutils/autojump/pkg-deinstall
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+case $2 in
+POST-DEINSTALL)
+ rm -f /etc/profile.autojump
+ rm -f /etc/zshrc.autojump
+ # delete the source (.) line from the /etc/profile and /etc/zshrc
+ if [ -f /etc/profile ] ; then
+ sed -i '' -e '/profile.autojump/d' /etc/profile
+ fi
+ if [ -f /etc/zshrc ] ; then
+ sed -i '' -e '/zshrc.autojump/d' /etc/zshrc
+ fi
+ ;;
+esac
diff --git a/sysutils/autojump/pkg-descr b/sysutils/autojump/pkg-descr
new file mode 100644
index 000000000000..75eb16eab64b
--- /dev/null
+++ b/sysutils/autojump/pkg-descr
@@ -0,0 +1,7 @@
+Autojump is a tool that acts as a complement to cd: it makes navigating your
+filesystem a lot faster. It works by automagically maintaining a database of
+the directories you use the most from the command line, and allows you to jump
+back and forth between them, by typing just a few letters of the name of the
+directory you want to jump to.
+
+WWW: http://github.com/joelthelion/autojump/wiki
diff --git a/sysutils/autojump/pkg-message b/sysutils/autojump/pkg-message
new file mode 100644
index 000000000000..0c5629d0ebf2
--- /dev/null
+++ b/sysutils/autojump/pkg-message
@@ -0,0 +1,6 @@
+**************************************************************
+* AutoJump installed
+**************************************************************
+* Note: Your /etc/profile was changed for this installation.
+* changes will be reverted when you un-install the package.
+**************************************************************