| Home |
Research & Strategy Consulting |
Interop Technology Center |
Learning Center |
SUA Articles |
SUA Community Forums |
Tool Warehouse |
About Interop Systems |
Package Install Instructionsfor Interix, SFU & SUA (Subsystem for Unix-based Applications)
"Interix" is the name of the system when you run the command 'uname
-a'. If you install SUA (Subsystem for Unix-based Applications) or
SFU (Services for Unix) then Interix is still the system. There are
different versions of Interix: Interix 3.5 is with SFU 3.5, Interix
5.2 is with SUA on Windows Server 2003/R2 and Interix 6.0 is with
SUA on Vista and Server 2008. Very soon Interix 6.1 will be released with
Windows 7 (Ultimate and Enterprise Editions) and Server 2008 R2.
Starting with Interix 3.5 all "/Tools" applications and libraries
are being packaged and we keep updating the versions too. A
package is used by the installer to correctly place all the
binary and data files. It also records version numbers, file
locations and check sums for verification, uninstalls and does
version updates. By using the installer all other packages that a
particular application depends on will be installed at the same
time. The installer is based on the BSD package system. We have
made several changes and updates to it over the years, but it has
essentially the same "flavor" as installers with BSD or Sun. You MUST have Interix (SUA or SFU) already installed before starting these instructions!
The first thing to do to is "bootstrap" the installer to your
system.
Most people have a 32-bit system or are running a 32-bit version of Windows on 64-bit hardware. The safest choice is to choose a 32-bit system if you are unsure.
The installer can be run by the Administrator or by a member of the
Administrators group.
% chmod +x pkg-current-bootstrap35.exe
% ./pkg-current-bootstrap35.exe
OR
% chmod +x pkg-current-bootstrap60.exe
% ./pkg-current-bootstrap60.exe
(If you are using csh/tcsh remember to 'rehash' after this). Now all of the installer components are installed. This includes the utilities pkg_update, pkg_info, pkg_delete, pkg_add, pkg_create and pkg_sign. You can learn more about each of these utilities by reading their man pages. Post Bootstrap StatusYou now have the minimum tools to successfully install packages. The tools installed include the installer programs plus several updates to other tools to enhance functionality. When an installation happens (even the bootstrap) we never destroy any files -- they are saved to be restored later if you decide to uninstall everything. You can view everything currently installed by running, from an Interix shell, the command "pkg_info".
You are now ready to install individual packages that you choose. Doing an Installation
To install a package use the pkg_update utility. For
example, if you wish to install bash you will enter the
following command:
pkg_update -L bash
This command will automatically download and install the most current bash package. If the package needs to have another package installed with it, that package will be downloaded and installed too. Pkg_update also takes care of which machine architecture you are using and what is the most current version of the software. What's Installed, Removing an InstallationTo view all of the current packages installed use the pkg_info command.
To remove a package use the pkg_delete command. You do not
need to know the version to delete a package. You can delete it easily as:
% pkg_delete -M bash
(The '-M' reduces your typing). Refer to the man pages for more information. If you would like to remove all of the installed packages except for the core programs needed to run the installer you can issue the command:
% pkg_delete -A
Be VERY CAREFUL with this command. You CANNOT UNDO this command. Read the pkg_delete man page for more information on this option and even more dangerous options. If you have installed one of the Bundles or a lot of packages and you want to uninstall absolutely everything including the the installer software then issue the command:
% pkg_delete -AA {yes, two A's}
There is no recover from this other than installing from the beginning. Available PackagesYou can find a list of all of the available packages on the Tool Warehouse web page: http://www.suacommunity.com/tool_warehouse.aspx. This list continues to have new packages added and current packages updated with newer versions. When an updated release of a package is available we announce it through the SUA Community Warehouse Updates Forum. To install an updated package you give the same command as when you installed it originally (more information on this further down the page). The installer will remove the older version for you before installing the newer version. Any changes in package dependencies will be handled at the same time. If you have already installed the most current version of a package the installer notices this and will leave things alone. Package LicensingThe licensing terms for each package can be easily viewed from the /Tools Warehouse web page before you decide to download by selecting the src directory. It is important for you to understand that there are many different licenses used. Our preference is to use Full Open License software such as BSD and MIT. We do have many packages that are GPL or LGPL that may place restrictions on what you may do with a package's utilities and/or libraries. There are other licenses with unusual but not onerous conditions such as the Beer-Ware License (you agree to buy the author a beer if you ever meet him). We do release copies of the source code for most of the packages here. Installation RecommendationsWe recommend that you always install a package with the command
pkg_update -L {name}
because this will provide to you the most trouble-free installation
since so many packages are dependent on other packages. This also
ensures you of getting the most current release of a package and
avoiding an unnecessary download. Regularly checking for updates is
very important for bug and security fixes. Several times people
have reported that they are having a problem with a package that
they downloaded 30 to 40 days ago. During that time the problem has
been fixed.
pkg_update -La
These installations and updates are done over the Internet and packages are not stored on your system -- this helps keep more free disk space on your local system. You can download packages and save them to a local disk. Remember that this option can consume a significant amount of disk space as you download more packages. If you do download packages it is best to keep them all in one location. The tricky part with downloading packages to save them locally is that you need to download all of the depended-upon packages as well.
If you are the administrator of several machines that have packages
installed on them from the /Tools Warehouse and you want to have
some control over which packages are installed then we recommend
that you maintain a common local repository of downloaded packages.
Then adjust local configurations so that package installations and
updates are done from this repository. We recommend you read the
pkg_update manual page for the '-C' option on cacheing packages.
See below for more information on this. Doing an InstallThere are two ways to do an installation now (other than Software Bundles). You can make your choice based on what type of installation you are going to do. For the multiple versions of Interix and multiple hardware platforms we strongly recommend you stick with pkg_update for single or multiple packages. Administrators will want to keep users using pkg_update. pkg_update Install
When you want to install a group of packages, you want to check that
all currently installed packages are up-to-date. To do an automated
check for new packages then pkg_update is the tool for you to
use. You may always refer to the pkg_update manual page for
more information. New Interix users usually want to install a group of packages to match their profile. Currently three profiles exist: user, developer and administrator. Other profiles may be added in the future based on /Tools member feedback (i.e. you!). By using a profile, a large number of packages can be selected and installed at one time. You can do the installations easily as:
You may add the "-i" option to the above commands if you want to verify (allow or deny) each package as it is selected to be installed. Without the "-i" option the installations will proceed with little user input needed. At regular intervals you may want to check if any new packages have been made available since the last time you checked. This can be done with the "-n" option to pkg_update. We recommend that you do use the "-n" option with the "-i" option to control new additions to your system: pkg_update -L -ni You may also check that all of your currently installed packages are up-to-date using the "-a" option. This will usually take longer than the "-n" option to perform, but is an easy way to validate that everything is up-to-date: pkg_update -L -a pkg_add InstallThe pkg_add utility is the "older" tool that we suggest you avoid using directly. You can use it when you have a specific package you want to install (such as an older archived version for comparison). You may always refer to the pkg_add manual page for more information. We always recommend that you install a package as:
pkg_update -L {name}
where "{name}" is the package name. No need for a version number. The current version number will be discovered. This means you get the most recent/current version without having to worry about a numbering scheme. The installer will handle the version numbers. The canonical version number for a package is internal to the package with any version number in the filename being taken as a hint. If the last sentence makes you confused, puzzled, worried, etc. this is why we encourage you to use the pkg_update command. To see what packages are available visit the /Tools Warehouse web page or visit the /Tools ftp site. Large AdministrationAdministrators of several machines usually want to control what software can be installed or updated. Administrators usually like to test and validate software (for a multitude of reasons that we won't cover here) before making this software available to their users. We understand the needs for this requirement and want to help. This control can be done setting these conditions:
A good reading of the pkg_update and pkg_add manual
pages will help you set these conditions. You may be interested in a customized software bundle for your site. Currently there are 4 software bundles available for download. Each bundle is a self-extracting, self-installing file that adds the pkg installer and many packages. The process is keen enough to not clobber systems that already have packages installed -- it all gets integrated together. If you would like a special bundle made for your site please let know -- we were asked to do this almost immediately after making the bundles available. You can view the public bundles at the SUA Community home page. Problems, Bugs, Your SuggestionsIf you encounter a problem installing a package please check that you are installing the most recent version of the package. The installer itself receives regular updates too. So keeping the installer up-to-date will help too. If you still have the problem please let us know either in one of the Forums or by e-mail: tools@interopsystems.com. The sooner the problem is fixed the less chance that another person will have to face the same problem. The installer can update itself. We recommend that when a new version is announced you update to that version. You can safely update the installer by doing:
pkg_update -L pkg
If you already have the current version the installer will notice and leave things as they are.
If you have a suggestion for a package please let know. The list of
packages has been developed by the requests of Interix users. We
can't promise that it will get done immediately but it will be added
to the "TO DO" list. Frequently Asked QuestionsBe sure to review our large FAQ's Page as well.
I'm behind a firewall / I use an FTP Proxy © Copyright 2006-2009. |