Identifying or Modifying your File Execution Path

The basic execution path is

~/bin /usr/local/bin /bin /usr/bin /usr/pkg/gnu/bin
/usr/bin/X11 /usr/contrib/bin /usr/contrib/bin/X11
/usr/support/bin /usr/pkg/contrib/bin /usr/pkg/tex/bin
/usr/pkg/transcript/bin /usr/pkg/usenet/bin
/usr/pkg/meta/bin .

This execution path gives you access to basic utilities and the most popular software packages. However, it may not give you access to the packages that you need to run. Beginning Fall 95, we have implemented a new way of setting up your execution path using the script, Soft.

What is soft?

Soft is a system for generating path and other shell variables based on user selected software packages. The soft system generates only those paths and variables that are required, which is important due to the large number of packages available on the ECE system. Specifying all paths would lead to “ridiculously long path” shell error messages. Furthermore, soft facilitates system maintenance by organizing packages according to architecture/operating system.

How do I add a package to my execution path?

To add a package, run the command, setup, followed by an argument that describes the package that you want to add.

How do I know which packages I have added to my path?

The set of software packages selected by the user is kept in a file called .software under his home directory. Generally, a user should not edit .software directly.

How does soft work?

On the start of a new shell, soft consults the appropriate database and generates the paths and shell variables needed for each package in .software. The result is a shell script that is then source’d (read in) by the shell. Because an ECE account may span multiple machine architectures and operating systems, the script generated by soft is architecture/operating system specifc. For example, on a HP workstation running version 9.05 of the HP-UX operating system, the script is called .software-cache.csh.HP-UX_A.09. On a DEC 3000 300/AXP running OSF/1 version 3.2, it is called .software-cache.csh.OSF1_V3. Soft generates a new script only when the .software file or the database has changed since the last time soft has run. If there are no changes, the old script is source’d, saving computer time. You will also notice these file names in your account after running setup.

How do I remove a path that I have added via the setup command?

To remove a path, type unsetup and the argument that describes the path

Paths not supported by soft can be defined in .cshrc by statements of this form:


set path = (<directory list>)

Where <directory list> is a space-separated list of directories. You can include the existing path by using $path as one of the elements in the list, e.g.:


set path = (new_dir $path)

Be aware that if $path is included in the list it will double in size every time .cshrc is processed. Normally, all the paths a user will need are supported by soft, making definitions in .cshrc unnecessary.

Comments are closed.