diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | Functions/Newuser/.distfiles | 2 | ||||
-rw-r--r-- | Functions/Newuser/zsh-install-newuser | 11 | ||||
-rw-r--r-- | Functions/Newuser/zsh-newuser-install | 23 | ||||
-rw-r--r-- | Scripts/newuser | 6 |
5 files changed, 36 insertions, 14 deletions
diff --git a/ChangeLog b/ChangeLog index 16af26a30..01d32b8e4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2005-07-26 Peter Stephenson <pws@csr.com> + + * 21527: Functions/Newuser/.distfiles, + Functions/Newuser/zsh-install-newuser, + Functions/Newuser/zsh-newuser-install, Scripts/newuser: don't + use function if it failed to load; rename to zsh-newuser-install + in case there are more zsh-newuser-* functions in future. + 2005-07-25 Clint Adams <clint@zsh.org> * 21526: Completion/Unix/Command/_dhclient: handle dhclient V3 as diff --git a/Functions/Newuser/.distfiles b/Functions/Newuser/.distfiles index f192b27e4..9012263a2 100644 --- a/Functions/Newuser/.distfiles +++ b/Functions/Newuser/.distfiles @@ -1,4 +1,4 @@ DISTFILES_SRC=' .distfiles -zsh-install-newuser +zsh-newuser-install ' diff --git a/Functions/Newuser/zsh-install-newuser b/Functions/Newuser/zsh-install-newuser deleted file mode 100644 index 40bba720d..000000000 --- a/Functions/Newuser/zsh-install-newuser +++ /dev/null @@ -1,11 +0,0 @@ -# Function to install startup files for a new user. -# This dummy version simply creates a new .zshrc with a comment. -# FIXME: we don't want to distribute a file that does that, it -# would be preferable to do nothing at all. - -# Sanitize environment. -emulate -L zsh - -echo "# Created by newuser for $ZSH_VERSION" >${ZDOTDIR:-$HOME}/.zshrc - -unfunction zsh-install-newuser diff --git a/Functions/Newuser/zsh-newuser-install b/Functions/Newuser/zsh-newuser-install new file mode 100644 index 000000000..6c54dc509 --- /dev/null +++ b/Functions/Newuser/zsh-newuser-install @@ -0,0 +1,23 @@ +# Function to install startup files for a new user. +# This dummy version simply creates a new .zshrc with a comment. +# FIXME: we don't want to distribute a file that does that, it +# would be preferable to do nothing at all. + +# Sanitize environment. +emulate -L zsh + +local zd=${ZDOTDIR:-$HOME} + +# The zsh/newuser module already tests for the following, so this test only +# triggers if zsh-newuser-install is run by hand. +# +# In future we may want to use this mechanism to update startup files. +if [[ -e $zd/.zshenv || -e $zd/.zprofile || -e $zd/.zshrc || -e $zs/.zlogin ]] +then + print "zsh-newuser-install: startup files exist, aborting" >&2 + return 1 +fi + +echo "# Created by newuser for $ZSH_VERSION" >$zd/.zshrc + +unfunction zsh-newuser-install diff --git a/Scripts/newuser b/Scripts/newuser index 47add8ed1..b5d742103 100644 --- a/Scripts/newuser +++ b/Scripts/newuser @@ -2,5 +2,7 @@ # no startup files. See the documentation for the zsh/newuser # module in zshmodules(1). -autoload -U zsh-install-newuser -zsh-install-newuser +if functions zsh-newuser-install >/dev/null 2>&1 || + autoload -U +X zsh-newuser-install; then + zsh-newuser-install +fi |