TracNav menu

Keywords/Tags

To help find things, please assign descriptive Tags to pages that you create or edit..

  • Use Capitalised words without spaces, for the tags
  • Reuse preexisting tags if they are appropriate

Welcome to env

The env provides utility bash functions for many tasks related to getting, configuring, installing, running, logging and validating software from the Dayabay collaboration and its many prerequisites. Much of the functionality in general and nature and could be useful to anyone.

Get/update your env with the below, this will create/update the folder $HOME/env

cd $HOME ; svn checkout http://dayabay.phys.ntu.edu.tw/repos/env/trunk/ env 
cd $HOME/env ; svn update 

Hook up your bash shell with the env by adding the below to your .bash_profile :

export ENV_HOME=$HOME/env      
env-(){  . $ENV_HOME/env.bash  && env-env $* ; }
env-    

The env- causes the definition of many bash functions.

Create a top level directory named after your usename

cd ~/env
svn mkdir <username>
  ##  place some root macros or other sources  in your directory and svn add them
cd ~/env
svn ci <username>

Hierarchical Organization of functions

Functions ending in - such as "swig-" and "python-" are precursor functions that on running lead to the definition of several other functions within these namespaces and the running of the corresponding *-env function. In this way the functions are insured of a particular environment while minimizing namespace pollution.

Dependencies between sets of functions are setup by using the precursors where they are needed, using a kitchensink approach is deprecated as it is then unclear of what depends on what making errors harder to trace and making modifications more difficult.

The Top level "precursors" are defined in env.bash and "sub-precursors" should be defined in .bash named after the top level folder like swig/swig.bash or python/python.bash etc...

After running the precursors you can use tab completion in the shell to see the functions that have been defined

      swig-<tab>

Thus a sequence of commands like

     swig-
     swigbuild-
     swigbuild-usage
     swigbuild-again

gets you from an environment with only top level precursor functions to one with the specific functions you need and no more.

Repository/Wiki Usage Notes

The repository and wiki are designed for source files of small size. Any derived files such as .o .exe or even .root or .pdf that are not very small and useful to many people are liable to deletion without warning.

Keeping the repository source only allows for rapid searching and makes it more useful for everyone.

All commits should be accompanied by a short informative message.

Please tag any wiki pages you create with your username capitalized eg Thho

G4dyb Analysis Quickstart

The Quickstart has moved to G4dybBuild

BEWARE Gotchas

  • currently this "space" is comprised of multiple paired SVN + Trac repositories. This general one is for tools, documention and environment setup called env. Some Inter-Trac links will transport you between them (primarily for source/changeset browsing ). Use the list of repositories /tracs if you get lost!
  • when transferring between Trac instances your credentials (username/password) are not currently propagated, so you will have to login several times initially

Usage Tips

Use the Search box

The search box at top right has more functionality that you might expect, as it supports a quick jumps feature where any of the defined quick link prefixes defined in InterMapTxt work. For example :

text to enter action (mostly jumping somewhere)
root:TH1 roots documentation for class TH1
tag:SVN provide a listing of all pages tagged with SVN
wiki:SVN wiki page with title SVN or start creating one if not existing
r42 changeset 42
docDB:101 docDB document 101
offline:1001 offline mail archive, message 1001
offline_:1001 offline mail archive, thread view near message 1001
simulation:1001 simulation mail archive, message 1001
simulation_:1001 simulation mail archive, thread view near message 1001
/trunk/dyw repository browser on a directory or file
dybsvn:/ code browser for the IHEP mirror repository
dybsvn:r1001 revision 1001 in the mirror repository
db_:SVN db_:Gaudi BNL wiki pages in categories SVN, Gaudi

How to include a related pages section

Include tag selected lists of items (tickets/wiki-pages) on wiki pages, eg

  • DybGaudi OR Gaudi
  • DybGaudi AND Python (the AND is implied in the wikitext)
  • SVN but NOT Deprecated

using wikitext :

[[ListTagged(DybGaudi or Gaudi)]]   
[[ListTagged(DybGaudi Python)]] 
[[ListTagged(SVN -Deprecated)]]

More complicated expressions are possible using brackets. Documented at http://trac-hacks.org/wiki/TagsPlugin

Browsers usually escape spaces in text entered in their URL fields, so can enter:

http://dayabay.phys.ntu.edu.tw/tracs/env/tags?q=Debug or Xcode

Clearing Cookies to resolve Session Issues

If you get session irregularities that are not resolved by /logout /login A thing to try is to delete the trac cookies and login again. Trac manages its sessions/authentication using 3 cookies :

  • trac_auth
  • trac_form_token
  • trac_session

Find the cookies with Firefox or Safari

  • Firefox > Preferences[Privacy] > remove individual cookies
  • Safari > Prefernces[Security] > Show Cookies

Search for dayabay.phys

  • select and remove them