mirror of
				git://git.code.sf.net/p/zsh/code
				synced 2025-10-31 18:10:56 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			47 lines
		
	
	
	
		
			2.5 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
	
		
			2.5 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| COMMENT(!MOD!zsh/newuser
 | |
| Arrange for files for new users to be installed.
 | |
| !MOD!)
 | |
| The tt(zsh/newuser) module is loaded at boot if it is
 | |
| available, the tt(RCS) option is set, and the tt(PRIVILEGED) option is not
 | |
| set (all three are true by default).  This takes
 | |
| place immediately after commands in the global tt(zshenv) file (typically
 | |
| tt(zshenv())), if any, have been executed.  If the module is not
 | |
| available it is silently ignored by the shell; the module may safely be
 | |
| removed from tt($MODULE_PATH) by the administrator if it is not required.
 | |
| 
 | |
| On loading, the module tests if any of the start-up files tt(.zshenv),
 | |
| tt(.zprofile), tt(.zshrc) or tt(.zlogin) exist in the directory given by
 | |
| the environment variable tt(ZDOTDIR), or the user's home directory if that
 | |
| is not set.  The test is not performed and the module halts processing if
 | |
| the shell was in an emulation mode (i.e. had been invoked as some other
 | |
| shell than zsh).
 | |
| 
 | |
| If none of the start-up files were found, the module then looks for the
 | |
| file tt(newuser) first in a sitewide directory, usually the parent
 | |
| directory of the tt(site-functions) directory, and if that is not found the
 | |
| module searches in a version-specific directory, usually the parent of the
 | |
| tt(functions) directory containing version-specific functions.  (These
 | |
| directories can be configured when zsh is built using the
 | |
| tt(--enable-site-scriptdir=)var(dir) and tt(--enable-scriptdir=)var(dir)
 | |
| flags to tt(configure), respectively; the defaults are
 | |
| var(prefix)tt(/share/zsh) and var(prefix)tt(/share/zsh/$ZSH_VERSION) where
 | |
| the default var(prefix) is tt(/usr/local).)
 | |
| 
 | |
| If the file tt(newuser) is found, it is then sourced in the same manner as
 | |
| a start-up file.  The file is expected to contain code to install start-up
 | |
| files for the user, however any valid shell code will be executed.
 | |
| 
 | |
| The tt(zsh/newuser) module is then unconditionally unloaded.
 | |
| 
 | |
| Note that it is possible to achieve exactly the same effect as the
 | |
| tt(zsh/newuser) module by adding code to tt(zshenv()).  The module
 | |
| exists simply to allow the shell to make arrangements for new users without
 | |
| the need for intervention by package maintainers and system administrators.
 | |
| 
 | |
| The script supplied with the module invokes the shell function
 | |
| tt(zsh-newuser-install).  This may be invoked directly by the user
 | |
| even if the tt(zsh/newuser) module is disabled.  Note, however, that
 | |
| if the module is not installed the function will not be installed either.
 | |
| The function is documented in
 | |
| ifnzman(noderef(User Configuration Functions))\
 | |
| ifzman(the section User Configuration Functions in zmanref(zshcontrib)).
 |