- Cygwin Installation
- Downloading the Installation Binaries
- Installing Packages
- Conclusion
Installing Packages
Table 2 outlines package groups and packages you might want to install. Overall, consider dedicating a gigabyte of space to Cygwin and for expansion. As little as 500MB provides a lot of functionality.
Table 2 Choosing Specific Package Options And Why
Package Group and Specific Packages |
Rationale |
Admin
|
The cron allows you to run commands at set days and times with finesse not found in NT’s at command. The syslog-ng is a neat logging tool. If you want to learn Linux, security, and good logging subsystems. |
Archive
|
If you look carefully, tar is a Cygwin default. Be sure to include it because it is a UNIX fundamental for many archives. The same is said for sharutils and zip/unzip. |
Audio None |
Audio support for all the possible PC hardware can be dicey. You may want to try these packages later. |
Base All |
Do not uncheck a single one of these as all are needed for a good installation. |
Database None |
I suggest avoiding databases until you have more experience with Linux. |
Development None |
Don’t uncheck any. When you start writing shell scripts, you’ll be happy you didn’t. Neat utilities get installed here. |
Doc[umentation]
|
If you want a Graphical User Interface (GUI), you need X Windows, along with the documentation. You’ll find many good scripts available in PERL. I believe it’s worth loading. Pinfo is a nice way to look up and read help, and xpdf is a PDF reader you’ll enjoy. |
Editors
Vim |
Vi is one editor you’ll find on practically all UNIX systems (note it’s not pronounced "six"). It is a fundamental tool you must learn. This editor is a bit difficult to learn, so we’ll allow you nano for any immediate edits. The gvim is the graphical Vim (Vi Improved). It’s a great way to learn native Vi commands because the menu system is peppered with Vi commands. In fact, an Internet search shows a Windows version of gvim. Many love emacs. You might. Some consider it the garage door of UNIX editors—all overhead—because of its size and complexity. |
Games |
User choice. |
Gnome Install |
Select Install to install a great window manager. This will make your GUI more like a windows environment that Spartan window managers like twm. |
Graphics None |
Some great graphics programs are found here, but they are large and maybe a distraction from learning Linux. Do not uncheck any selections. |
Interpreters |
PERL is a language you may find fun. Do not uncheck any defaults. |
KDE Install |
KDE is an impressive window manager, environment, suite of tools, etc. Give it a try if you have lots of disk space. |
Libs [System Libraries] |
Do NOT uncheck any defaults. There are so many tools here that you really should check out an online book at Safari that can explain these great tools adequately. |
|
If you want a clean mail client, Pine has a lot to offer. Remember: Pine is not Elm. Check the initial letter. PINE = Pine Is Not Elm is the kind of recursive joking UNIX geeks love. Does it get any better? |
Math |
Unless you have a special need for these tools, leave them alone. |
Mingw |
Not necessary for a first-timer. |
Net
|
This is an important set of tools. Inetutils helps you get the clients you need. You need openssh clients increasingly, and while you don’t need openssl for client use, you’ll want to try openssh as a server. Ping is an important network diagnostic tool that lets you check connectivity. |
PERL All or none |
I enjoy PERL; you may as well. |
Publishing |
Not needed for the first-timer. |
Python All or none |
Some say Python is the new PERL. |
Shells |
Do not uncheck anything here. Stay with bash as a shell until you learn more. |
System
|
Do NOT uncheck anything here! These are important tools. Man is a series of MANual pages. Typing man ls will give you help. Despite one coworker’s accusations, man pages are for women, too. |
Text
|
For now, don’t uncheck any that is preselected. Ensure you have less and maybe more. These commands are vital for paging through long screens of information. |
Utils
|
Do NOT uncheck preselected values. These can be vital. Clamav is an antivirus scanner you might want to try. The time command is great for scripts. Why no rpm commands? Cygwin uses the cygwin tool itself for updates. Each of these file is a Windows *.exe file—not a native Linux file. RPMs won’t do you a lot of good on this platform. |
Web |
These are good utilities. Beginners will enjoy curl or lynx once they get a stable system. |
X11 Windowmaker X-start-menu-icons Cygwin-x-doc xeyes Xorg-x11-base |
You’ll probably want more than a command-line environment. Once you select a key thing or two in Gnome or KDE, a lot of selections in this group are chosen for you. Gnome, KDE, or Windowmaker are window managers. Each can come with dedicated suites of tools to give you a diverse, and at times, confusing experience. Go to Safari and get a few books on Linux to understand window management in Linux. Oh, download xeyes for a test. |
So now, after all the loading, what are you left with? You should have some new programs in the Windows Programs menu. You may have an icon on your desktop. Let’s actually see what the wait has brought us.
I open my Cygwin and then Bash Shell menu entries, and it springs to life before me, as in Listing 1.
Listing 1 The Power of the bash Command Line
traenkster@Shocker ~ $ ll total 165 drwxrwxrwx+ 2 traenkster None 0 Dec 27 20:53 . drwxrwxrwx+ 3 traenkster None 0 Dec 24 10:36 .. -rw------- 1 traenkster None 6315 Feb 5 20:01 .bash_history -rwxr-xr-x 1 traenkster None 1150 Dec 24 10:35 .bash_profile -rwxr-xr-x 1 traenkster None 367 Dec 24 10:46 .bashrc -rwxr-xr-x 1 traenkster None 1336 Dec 24 10:35 .inputrc -rw-r--r-- 1 traenkster None 145 Dec 26 12:45 mycmd -rw-r--r-- 1 traenkster None 7238 Dec 24 17:14 rsync.txt -rw-r--r-- 1 traenkster None 110800 Dec 24 17:39 rsynman.txt -rw-r--r-- 1 traenkster None 19155 Dec 27 20:53 test -rw-r--r-- 1 traenkster None 3737 Dec 25 12:11 ttcp.txt
It’s all here, folks. Shell scripting, files hidden with a leading period—you-name-it. This is a true Linux subsystem that’s appearing in the same window as the normal Windows cmd. This means you can change colors and scrolling lines and all that good stuff by editing the Properties item, found by clicking the Cygwin icon in the upper-left corner. Let’s make life easier for you. Execute updatedb and let this application do its work. It will build a searchable database of all cygwin files. Once this ends, we’ll have the full location listed for us if we type locate followed by the search string. You try it. Type locate bash, and you should see a long line of entries. Type locate bash | grep bin and you should find bash is in /bin/bash and in /usr/bin/bash.
Oh yes, this is great stuff. But it doesn’t end there. Did you download Gnome, WindowMaker, or KDE? Let’s start a graphical session.
Starting your X Windows session is as easy as typing startx& at the command prompt. Linux is case-sensitive, so type the command in lowercase only. Why end a command with an ampersand &? The ampersand instructs the shell to execute the startx command as a separate process and then return. Without the ampersand, your command prompt stays busy until the X Windows session ends. But in our case, we are greeted with a true xterm prompt, and we have our command-line prompt available as well.
Other than the colors being different and the new top bar, the graphic xterm doesn’t look much different than the other bash command prompt. Now type xeyes&, and you should have a pair of eyes that follow your cursor, as illustrated in Figure 3.
Figure 3 Character mode command prompt, xterm graphical command prompt, and two eyes watching it all.