README.md 1.94 KB
Newer Older
Marco Clemencic's avatar
Marco Clemencic committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# Bootstrap Scripts for LHCb User Environment

## LHCb User Environment entrypoint

The script [data/LbEnv-flavour.sh](data/LbEnv-flavour.sh) (and its `csh`
counterpart) is a template for a set of scripts that are usually installed at the
root of a local installation of LHCb software.

The script [data/LbEnv-flavour](data/LbEnv-flavour) is a small script that works
on both `bash` and `tcsh`, to detects the shell used and delegate to the
matching script.

## Environment customization logic for CERN site.

The script [data/etc/cern_profile.sh](data/etc/cern_profile.sh) (and its `csh`
counterpart) are used to provide customization of the user environment for CERN.
Marco Clemencic's avatar
Marco Clemencic committed
17
18
19
It is meant to be the main entry point (for HEPIX), and delegate to the files
in `cern_profile.d` for the basic environment, and to `LbEnv-flavour.sh` for
the rest.
Marco Clemencic's avatar
Marco Clemencic committed
20
21
22
23
24

The user can control the behaviour of the script by means of special files
in the home directory:
- `.nogrouplogin`: if present, completely disable customization
- `.nolbenv`: if present, disable LbEnv, but keep site specific variables
25
26
27
28
- `.lbenv_flavour`: it must contain any of _stable_, _testing_, _unstable_
  or _legacy_ to select the version of LbEnv kit to use. If missing or invalid,
  it is equivalent to _stable_. The flavour _legacy_ uses `LbLogin` instead of
  `LbEnv`.
Marco Clemencic's avatar
Marco Clemencic committed
29
30

For backward compatibility we also accept:
Marco Clemencic's avatar
Marco Clemencic committed
31
32
- `.noLHCBLoginscript`: same as `.nogrouplogin` (temporarily disabled until
  the new scripts will be commissioned)
Marco Clemencic's avatar
Marco Clemencic committed
33
34
35
36
37
38
39
40
41
42
43
- `.devLHCBLoginscript`: if present, equivalent to `.lbenv_flavour` containing
  _testing_


## RPM

In this gitlab project we build an RPM with the scripts
- `LbEnv-<flavour>`, `LbEnv-<flavour>.sh`, `LbEnv-<flavour>.csh`
  (for `<flavour>` in _stable_, _testing_ and _unstable_)
- `LbEnv`, `LbEnv.sh`, `LbEnv.csh` (shortcuts for flavour _stable_)
- `cern_profile.sh`, `cern_profile.csh`
Marco Clemencic's avatar
Marco Clemencic committed
44
45
46

The `LbEnv*` scripts are installed directly in `$MYSITEROOT`, while the
`cern_profile.*` once in `$MYSITEROOT/etc`.