Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
config:env [2018/02/28 16:48] – [bash/sh] Mention /etc/profile and sudo -E digital manconfig:env [2023/02/12 14:26] (current) – [Debian-based Linux] Provide a better example: put env vars in .profile, not .bashrc digital man
Line 13: Line 13:
 ===== SBBSEXEC ===== ===== SBBSEXEC =====
  
-The ''SBBSEXEC'' environment variable //may// be set to the path of your Synchronet ''[[dir:exec]]'' directory. This may be needed for some development situations.+The ''SBBSEXEC'' environment variable //may// be set to the path of your Synchronet ''[[dir:exec]]'' directory. This may be needed for some development situations (e.g. where your Synchornet ''exec'' directory is not ''../exec'' relative to your Synchronet ''[[dir:ctrl]]'' directory). Most sysops will not need to set this environment variable.
  
 ===== SBBSNODE ===== ===== SBBSNODE =====
Line 36: Line 36:
 (replace ''c:\sbbs\ctrl'' with the full path to your ''[[dir:ctrl]]'' directory) (replace ''c:\sbbs\ctrl'' with the full path to your ''[[dir:ctrl]]'' directory)
  
 +==== Debian-based Linux ====
 +(Yes, this includes Ubuntu Linux)
 +
 +See https://wiki.debian.org/EnvironmentVariables
 +
 +Example ''~/.profile'' addition that both sets the ''SBBSCTRL'' variable and adds the Synchronet ''[[dir:exec]]'' directory to the search path:
 +<code sh>
 +export SBBSCTRL=/sbbs/ctrl
 +export PATH=$PATH:/sbbs/exec
 +</code>
 ==== bash/sh ==== ==== bash/sh ====
  
Line 43: Line 53:
  
     SBBSCTRL=/sbbs/ctrl && export SBBSCTRL     SBBSCTRL=/sbbs/ctrl && export SBBSCTRL
-(replace ''/sbbs/ctrl'' with the full path to your ''[[dir:ctrl]]'' directory)+(replace ''/sbbs/ctrl'' with the full path to your Synchronet ''[[dir:ctrl]]'' directory)
  
 === /etc/profile === === /etc/profile ===
-In Debian and Debian-based Linux distributions (e.g. Ubuntu), you can also set environment variables in your ''/etc/profile'' file, like so:+In Debian and Debian-based Linux distributions (e.g. Ubuntu), you can also set environment variables in your ''/etc/profile'' file (and/or ''~/.profile''), like so:
  
   export SBBSCTRL=/sbbs/ctrl   export SBBSCTRL=/sbbs/ctrl
 +  
 +=== env ===
 +You may also use the ''env'' utility to set an environment variable for a specific program invocation:
 +
 +  env SBBSCTRL=/sbbs/ctrl /sbbs/exec/sbbs
 +  
 +Note: You can use the same syntax **without** the ''env'' part. The environment variable(s) specified will only be set for the life of the process being invoked.
  
 === sudo === === sudo ===
-When using the ''sudo'' command to execute a Synchronet program with elevated (e.g. root) privileges, you may need to pass the ''-E'' option to preserve the environment variables set the parent shell:+When using the ''sudo'' command to execute a Synchronet program with elevated (e.g. root) privileges, you may need to pass the ''-E'' option to preserve the environment variables set in the parent shell:
  
   sudo -E sbbs   sudo -E sbbs
 +  
 +=== Testing ===
 +
 +You can use either of the following command-lines to test if a particular environment variable is set correctly (the environment variable's current value should be printed in response to either):
 +
 +  * ''echo $SBBSCTRL''
 +  * ''printenv SBBSCTRL''
 +
 +
    
 ==== csh/tcsh ==== ==== csh/tcsh ====
Line 78: Line 104:
 | ''SBBSNNUM''  | Current node number                           | ''1'' | | ''SBBSNNUM''  | Current node number                           | ''1'' |
 | ''PCBNODE''   | Current node number (only for DOS programs)   | ''1'' | | ''PCBNODE''   | Current node number (only for DOS programs)   | ''1'' |
 +| ''PCBDRIVE''  | Current node drive letter                     | ''C:'' |
 +| ''PCBDIR''    | Current node path (sans drive letter)         | ''\SBBS\NODE1\'' |
 | ''DAY''       | Current day of the month (01-31             | ''01'' | | ''DAY''       | Current day of the month (01-31             | ''01'' |
 | ''WEEKDAY''   | Current day of the week abbreviation          | ''Mon''| | ''WEEKDAY''   | Current day of the week abbreviation          | ''Mon''|
Line 87: Line 115:
  
  
 +===== See Also =====
 +  * [[:config:|Configuration]]
 +
 +
 +{{tag>configuration operating_system}}
config/env.1519865291.txt · Last modified: 2018/02/28 16:48 by digital man
Back to top
CC Attribution 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0