direnv-stdlib man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

DIRENV-STDLIB(1)		 User Manuals		      DIRENV-STDLIB(1)

NAME
       direnv_stdlib - the ".envrc" stdlib

SYNOPSIS
       direnv stdlib

DESCRIPTION
       Outputs	a  bash	 script	 called the stdlib. The following commands are
       included in that script and loaded in the context of an ".envrc". Addi‐
       tionnaly to that, it also loads the file in "~/.direnvrc" if it exists.

STDLIB
	      · has  command: Returns 0 if the command is available. Returns 1
		otherwise. It can be a binary in the PATH or a shell function.

       Example:

	      if has curl; then
		echo "Yes we do"
	      fi

	      · expand_path rel_path [relative_to]: Outputs the absolute  path
		of rel_path relative to relative_to or the current directory.

       Example:

	      cd /usr/local/games
	      expand_path ../foo
	      # output: /usr/local/foo

	      · dotenv	[dotenv_path]:	Loads  a  ".env" file into the current
		environment

	      · user_rel_path abs_path: Transforms an absolute	path  abs_path
		into a user-relative path if possible.

       Example:

	      echo $HOME
	      # output: /home/user
	      user_rel_path /home/user/my/project
	      # output: ~/my/project
	      user_rel_path /usr/local/lib
	      # output: /usr/local/lib

	      · find_up	 filename:  Outputs the path of filename when searched
		from the current directory up to /. Returns 1 if the file  has
		not been found.

       Example:

	      cd /usr/local/my
	      mkdir -p project/foo
	      touch bar
	      cd project/foo
	      find_up bar
	      # output: /usr/local/my/bar

	      · source_env  fileordir_path:  Loads  another ".envrc" either by
		specifying its path or filename.

	      · source_up [filename]: Loads another ".envrc" if found with the
		find_up command.

	      · direnv_load [command-generating-dump-output] Applies the envi‐
		ronment generated by running argv as a command. This is useful
		for  adopting  the environment of a child process - cause that
		process to run "direnv dump" and then wrap  the	 results  with
		direnv_load.

       Example:

	      direnv_load opam-env exec -- direnv dump

	      · PATH_add path: Prepends the expanded path to the PATH environ‐
		ment variable. It prevents a  common  mistake  where  PATH  is
		replaced by only the new path.

       Example:

	      pwd
	      # output: /home/user/my/project
	      PATH_add bin
	      echo $PATH
	      # output: /home/user/my/project/bin:/usr/bin:/bin

	      · path_add  varname  path:  Works like PATH_add except that it's
		for an arbitrary varname.

	      · load_prefix prefix_path: Expands some  common  path  variables
		for  the  given	 prefix_path  prefix.  This  is	 useful if you
		installed  something  in  the  prefix_path  using  ./configure
		--prefix=$prefix_path  &&  make	 install and want to use it in
		the project.

       Variables set:

	      CPATH
	      LD_LIBRARY_PATH
	      LIBRARY_PATH
	      MANPATH
	      PATH
	      PKG_CONFIG_PATH

       Example:

	      ./configure --prefix=$HOME/rubies/ruby-1.9.3
	      make && make install
	      # Then in the .envrc
	      load_prefix ~/rubies/ruby-1.9.3

	      · layout type: A	semantic  dispatch  used  to  describe	common
		project layouts.

	      · layout go: Sets the GOPATH environment variable to the current
		directory.

	      · layout node: Adds "$PWD/node_modules/.bin" to the  PATH	 envi‐
		ronment variable.

	      · layout	perl:  Setup  environment variables required by perl's
		local::lib	 See	   ⟨http://search.cpan.org/dist/local-
		lib/lib/local/lib.pm⟩ for more details

	      · layout	python	[python_exe]:  Creates	and loads a virtualenv
		environment  under  $PWD/.direnv/python-$python_version.  This
		forces	 the  installation  of	any  egg  into	the  project's
		sub-folder.

	      It's possible to specify the python executable if	 you  want  to
	      use different versions of python (eg: layout python python3).

	      Note    that    previously    virtualenv	 was   located	 under
	      $PWD/.direnv/virtualenv and will be  re-used  by	direnv	if  it
	      exists.

	      · layout python3: A shortcut for layout python python3

	      · layout	 ruby:	 Sets  the  GEMHOME  environment  variable  to
		`$PWD/.direnv/ruby/RUBYVERSION. This forces  the  installation
		of  any	 gems  into the project's sub-folder.  If you're using
		bundler it will create wrapper programs that  can  be  invoked
		directly instead of using thebundle exec` prefix.

	      · use   program_name  [version]:	A  semantic  command  dispatch
		intended for loading external dependencies into	 the  environ‐
		ment.

       Example:

	      use_ruby() {
		echo "Ruby $1"
	      }
	      use ruby 1.9.3
	      # output: Ruby 1.9.3

	      · use  rbenv:  Loads rbenv which add the ruby wrappers available
		on the PATH.

	      · rvm ...: Should work just like in the shell if	you  have  rvm
		installed.

COPYRIGHT
       Copyright  (C) 2014 zimbatm ⟨http://zimbatm.com⟩ and contributors under
       the MIT licence.

SEE ALSO
       direnv(1)

direnv				  APRIL 2014		      DIRENV-STDLIB(1)
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net