Safe Install
The Xic and WRspice packages now implement Safe
Install. During an update, the Safe Install feature
retains the older release in its entirety as it was, allowing the user
to revert to that release if necessary. The user can delete the
files to save disk space when through with the release. The Safe
Install feature is intended to reduce user anxiety about
installing a new release, facilitating keeping up to date, which will
benefir the user in the long run.
The Safe Install feature is implemented in the pre- and
post-install scripts carried within the package files, which are
executed during package installation.
Here's the safe install logic, for example for Xic. The
present release is installed under xic.current, and the
previous release is saved under xic-version (where
version is the release number, e.g. 4.2.15), both under
/usr/local/xictools (by default). The xic.current
directory is symbolically linked as xic in the same
directory.
In addition, the executable programs in
xictools/xic/bin are symbolically linked into
xictools/bin, which is the common "bin" for all
XicTools executables. Only this directory needs to be in the
user's search path. Recall thatt the xictools/xic is a
symbolic link to xic.current, so that the current programs
are linked into the search path.
If there is a problem with the new release, or the user wants to run
an older release for whatever reason, the maintainer can delete the
xictools/xic symbolic link (from xic.current) and
create a new symbolic link to one of the saved installations.
For example, in Linux or MacOS, as root:
cd /usr/local/xictools
rm xic
ln -s xic-4.2.16 xic
In Windows, if running MSYS2 or Cygwin, the same commands as above
can be given. Otherwise, from a Command Window
cd c:\usr\local\xictools
rd xic
mklink /j xic xic-4.2.16
Yes, you use "rd" to remove a "junction" link in Windows.
To revert, in Linux or MacOS, as root
cd /usr/local/xictools
rm xic
ln -s xic.current
or in native Windows
cd c:\usr\local\xictools
rd xic
mklink /j xic xic.current
Installation Scripts
The Safe Install feature is no longer managed with the
wr_install script, so it is not essential to use this for
package installation, however it is recommended for convenience, and
it takes care of some important clean-up to do before the first 4.3
install, it you have any earlier XicTools installations.
The wr_install script, and a new companion wr_uninstall,
are found in the same directories as the package files on the distribution
site. Even if you have these, you should always grab fresh copies while
downloading new releases in case they have changed.
These scripts can be used in Windows, too, if you have MSYS2 or Cygwin
installed.
It is probably important that all old XicTools program packages
be removed from your machine before installing the 4.3 programs. If
you use wr_install, this will be done automatically, and in
addition the Xic and WRspice programs found can be saved
in Safe Install format. Other safe-installs won't be touched.
One can check the script text for usage instructions. The commands
are summarized below. In all cases, giving the "-t" option
will cause the command to not actually change anything, but to print
the sub-commands that would otherwise be run. So, you can see what
the command will do before actually running it.
Below, [ ... ] means "optional", the square brackets should
not actually appear.
- wr_install [-t] <distrib_file> ...
-
The arguments are program names, or partial names that are unique,
that match adms, fastcap, fasthenry, mozy, mrouter, vl, wrspice,
xic. The arguments can also be the names of package files.
Don't change the names of these files! The corresponding
package files from the current directory will be unpacked and the
programs installed.
- wr_uninstall [-t] progname ...
-
The arguments are program names, or partial names that are unique,
that match adms, fastcap, fasthenry, mozy, mrouter, vl, wrspice,
xic. If a corresponding package is installed, it will
be uninstalled.
|