My Triple-Boot Laptop
There are several reasons to use two Linux distributions on your laptop. My main reasons for installing Arch were: 1) I wanted to try more Linux distributions to get an idea of which would be best for me; 2) Arch is a particularly, fast, lightweight, leading-edge distribution with an excellent package manager; and 3) it is very different from Ubuntu and less newbie-friendly, providing a great opportunity for learning and customization, and it's a potential intermediate step to Gentoo or other source-based distributions.
The Arch experiment proved to be quite useful for all of these reasons, yet it's easier to use than I expected. I had psyched myself up for a tough install, but it was only marginally more demanding than Ubuntu. After selecting which packages to install from the CD (it recommends installing only the base set of packages during the install process), the installer allows you to edit certain key configuration files. The main one, which encompasses almost all of the major configuration, is rc.conf. This file contains your time preferences, network configuration and selection of kernel modules and dæmons to load at startup. The most important thing is to get your Internet connection up and running by adding the kernel module for your Ethernet card to the list and entering your network information.
Once you've installed the base system, you can install any other applications as you need them. It will not boot automatically to a display manager, such as the GNOME Display Manager (GDM), so you should be pretty comfortable using a console. The package manager pacman is very easy to use. To install a package simply execute the following:
# pacman -S package
Then, to update your system:
# pacman -Syu
Pacman resolves package dependencies automatically and asks for confirmation to install the list of packages. You also can install groups, such as gnome, kde and xfce4.
In addition to the supported packages, Arch also has the Arch User-community Repository (AUR), which contains user-contributed templates allowing you to install additional applications easily from source using the makepkg utility. To install them, simply download the PKGBUILD file from the AUR Web site, and run the following in the directory to which you downloaded it:
# makepkg -si
The -si options are optional and instruct makepkg to install any dependencies that are in the supported Arch repositories and to install the package itself after compiling it. There also are pacman front ends that add support for AUR, allowing you to install AUR packages and keep them up to date easily. For example, yaourt lets you upgrade all packages by executing:
# yaourt -Syu -aur
I need a certain amount of software for scientific and graphical purposes, and there's a large amount of open-source and proprietary software out there, some of which my institution had licenses for. One of my goals in using Linux was to use as much free, open-source software as possible. I was already familiar with some excellent scientific software that was installed on my group's servers, such as Paul Wessel and Walter Smith's Generic Mapping Tools (GMT) and the graphing application Grace, but not the day-to-day software that I needed for my laptop.
The most basic need for people typically is office software. The natural choice for users of Microsoft's Office suites is OpenOffice.org, which essentially performs the same functions. It is able to open and save documents in Office formats or print directly to PDF. I use OpenOffice.org's Impress to prepare conference presentations and lectures, Write for writing papers and Spreadsheet for spreadsheets. However, there are a couple of caveats. First, some types of images are strongly aliased when displayed in slideshow mode in Impress; however, this is easily solved by converting the presentation to PDF. Second, equations created in Word cannot be edited in Write, and vice versa.
The main specialized proprietary applications that I use are the MathWorks' MATLAB (an excellent programming environment that can be installed in Linux) and CorelDRAW (graphical software). The simplest open-source alternative is GNU's Octave, which is in most ways a clone of MATLAB. It is quite easy to use Octave as a drop-in MATLAB replacement, as it uses the same language as MATLAB. With some exceptions, most computational scripts written for MATLAB will run correctly in Octave. The one major exception is graphics. Although MATLAB has an integrated graphical user interface (GUI) and graphics handler, Octave interfaces with several different GUIs and plotting applications. Gnuplot is the default plotter, but it isn't ideal for producing publication-quality graphics. I use the Koctave GUI with Octplot or Grace for plotting (Figure 3); both are pretty good, although only Grace allows you to make changes to a graph once it has been created. MATLAB's main advantage is that it is significantly faster and easier to use. On the other hand, you can install Octave on as many machines as you like, so it may be convenient to use both if you have a MATLAB license.
Unfortunately, I didn't find any Linux software that could replace CorelDRAW. However, the GNU Image Manipulation Program (GIMP) is a great tool for image processing. It's very user-friendly and performs many of the functions of Adobe Photoshop or Corel PHOTO-PAINT. Many excellent open-source applications exist for playing music and video that are as good as or better than their proprietary equivalents. If you're using KDE, Amarok does an excellent job of organizing your music and radio stations. If you prefer GNOME (as I do), you'll likely go with Banshee or Exaile. I also use GNOME's Totem for playing DVDs and MPlayer for most other video formats.
If you want to use your laptop to make phone calls when you're on the go, open source is the way to go. Ubuntu comes with the Ekiga softphone built in, and several other open-source and proprietary softphones are available—most free of charge. In addition, the most common VoIP (Voice over IP) protocol, SIP, is open source, allowing you to make free calls to anyone using that protocol. By contrast, Skype users can call only other Skype users for free.
- Brent Laster's Professional Git (Wrox)
- Smoothwall Express
- Returning Values from Bash Functions
- Own Your DNS Data
- Machine Learning Everywhere
- Bash Shell Script: Building a Better March Madness Bracket
- Tech Tip: Really Simple HTTP Server with Python
- Understanding OpenStack's Success
- Simple Server Hardening
- From vs. to + for Microsoft and Linux