© Richard Petersen 2018
Richard PetersenBeginning Fedora Desktophttps://doi.org/10.1007/978-1-4842-3882-0_5

5. Office Applications, Email, Editors, and Databases

Richard Petersen1 
(1)
Alameda, California, USA
 
Several office suites are now available for Fedora (see Table 5-1). These include professional-level word processors, presentation managers, drawing tools, and spreadsheets. The freely available versions are described in this chapter.
Table 5-1

Linux Office Suites

Website

Description

https://www.libreoffice.org

LibreOffice open source office suite

https://www.calligra.org

Calligra suite, for KDE

https://www.openoffice.org

Apache OpenOffice

https://www.codeweavers.com

CrossOver Office (Microsoft Office support)

https://www.scribus.net

Scribus desktop publishing tool

Linux provides many text editors that range from simple text editors to those with complex features such as spell checking, buffers, or complex searches. All generate character text files and can be used to edit Linux text files.

Fedora also provides a wide range of electronic mail applications, including desktop email applications featuring calendars and address books. Evolution and Thunderbird are the primary applications, both of which support GNOME Contacts. Newsreaders are also supported.

Fedora also supports several ebook readers, such as Calibre and FBReader, which run natively on Linux.

Fedora includes MySQL and PostgreSQL open source databases in its distribution, which can support smaller databases. Several database management systems are also available for Linux.

Office Applications

LibreOffice is currently the primary office suite supported by Fedora. Calligra is an office suite designed for use with KDE. CodeWeavers CrossOver Office provides reliable support for running Microsoft Office Windows applications directly on Linux, integrating them with KDE and GNOME. You can also download the Apache OpenOffice suite (originally, Oracle/StarOffice). For desktop publishing, especially PDF generation, you can use Scribus, a cross-platform tool available from the Fedora repository.

LibreOffice

LibreOffice is a fully integrated suite of office applications developed as an open source project and freely distributed to all. It is the primary office suite for Fedora, accessible from the Applications overview. LibreOffice is the open source and freely available office suite derived originally from OpenOffice. LibreOffice is supported by the Document Foundation, which was established after Oracle’s acquisition of Sun, the main developer for OpenOffice. LibreOffice is now the primary open source office software for Linux. LibreOffice has replaced OpenOffice as the default office software for most Linux distributions.

LibreOffice includes word processing, spreadsheet, presentation, and drawing applications (see Table 5-2). Versions of LibreOffice exist for Linux, Windows, and MacOS. You can obtain information such as online manuals and FAQs, as well as current versions, from the LibreOffice website at https://www.libreoffice.org .
Table 5-2

LibreOffice.​org Applications

Application

Description

Calc

LibreOffice spreadsheet

Draw

LibreOffice drawing application

Writer

LibreOffice word processor

Math

LibreOffice mathematical formula composer

Impress

LibreOffice presentation manager

Base

Database frontend for accessing and managing a variety of different databases

LibreOffice is an integrated suite of applications. You can open the writer, spreadsheet, or presentation application directly from the Applications overview. The word processing, spreadsheet, and presentations applications are also accessible from the Launcher: Writer, Calc, and Impress. You can also open existing office documents (Open button) and manage document templates. Buttons at the bottom of the dialog let you download new features and templates and access the LibreOffice website.

The LibreOffice Writer word processor supports standard word processing features, such as cut-and-paste, spell checking, and text formatting, as well as paragraph styles (see Figure 5-1). Context menus let you format text easily. Wizards (Letter, Web Page, Fax, and Agenda) let you generate different kinds of documents quickly. You can embed objects within documents, such as using Draw to create figures that you can then drag and drop to the Writer document. LibreOffice Writer is compatible with earlier versions of Microsoft Word. It will read and convert Word 2003 and earlier documents to a LibreOffice Writer document, preserving most features, including contents, tables, and indexes. Writer documents also can be saved as Word documents.
../images/326960_3_En_5_Chapter/326960_3_En_5_Fig1_HTML.jpg
Figure 5-1

LibreOffice: Writer word processor

LibreOffice provides access to many database files. File types supported include ODBC (Open Database Connectivity), JDBC (Java), MySQL, PostgreSQL, and MDB (Microsoft Access) database files. You can also create your own simple databases. Check the LibreOffice Features ➤ Base page at https://www.libreoffice.org/discover/base for detailed information on drivers and supported databases.

LibreOffice Calc is a professional-level spreadsheet. With LibreOffice Math (LibreOffice Formula), you can create formulas that you can embed in a text document. With the presentation manager (LibreOffice Impress), you can create images for presentations, such as circles, rectangles, and connecting elements like arrows, as well as vector-based illustrations. Impress supports advanced features, such as morphing objects, grouping objects, and defining gradients. Draw is a sophisticated drawing tool that includes 3D modeling tools (LibreOffice Drawing). You can create simple or complex images, including animation text aligned on curves. LibreOffice also includes a printer setup tool with which you can select printers, fonts, paper sizes, and page formats.

Also for use on GNOME is Scribus, the open source desktop publishing tool (see Figure 5-2) at www.scribus.net . Scribus provides professional-level page layout capabilities for all Linux distribution, with color management and PDF generation.

Note

The former Oracle OpenOffice suite is now Apache OpenOffice. It is a fully integrated and Microsoft Office–compatible suite of office applications developed and supported originally by Sun Microsystems under the name StarOffice. It is now developed and supported by Apache; see www.openoffice.org . You can download and install directly from the website. It is not yet available on the Fedora repositories.

../images/326960_3_En_5_Chapter/326960_3_En_5_Fig2_HTML.jpg
Figure 5-2

Scribus desktop publisher

Calligra

Calligra is an integrated office suite for the K Desktop Environment (KDE), consisting of several office applications, including a word processor, a spreadsheet, and graphics applications (calligra package). Calligra is the new version of KOffice, integrating many of the older applications provided by KOffice. Calligra allows components from any one application to be used in another, allowing you to embed a spreadsheet from Calligra Sheets or diagrams from Karbon in a Calligra Words document. It also uses the open document format (ODF) for its files, providing cross-application standardization. There is also a Windows version available. You can obtain more information about Calligra from https://www.calligra.org .

Currently, Calligra includes Calligra Sheets, Calligra Flow, Calligra Words, Karbon, Krita, Plan, Calligra Stage, Braindump, and Kexi (accessible from Office and Graphics; see Table 5-3). The contact application, Kontact, has been spun off as a separate project. Kontact is an integrated contact application including Kmail, Korganizer, Kaddressbook, and Knotes. Calligra Sheets is a spreadsheet; Calligra Stage is a presentation application; Karbon is a vector graphics program; and Calligra Words is a publisher-like word processor. Krita is a paint and image editor. Kexi provides database integration with Calligra applications, currently supporting PostgreSQL and MySQL.
Table 5-3

Calligra Applications

Application

Description

Braindump

Whiteboards for notes, images, and charts

Calligra Flow

Flowchart applications

Calligra Stage

Presentation application

Calligra Words

Word processor (desktop publisher)

Calligra Sheets

Spreadsheet

Karbon

Vector graphics program

Kexi

Database integration

Plan

Project management and planning

Krita

Paint and image-manipulation program

Kontact (separate project)

Contact application including mail, address book, and organizer

Calligra Sheets is the spreadsheet application, and it incorporates the basic operations found in most spreadsheets, with formulas similar to those used in MS Excel. You can also embed charts, pictures, or formulas using Krita and Karbon. With Calligra Stage, you can create presentations consisting of text and graphics modeled using different fonts, orientations, and attributes, such as colors. Karbon is a vector-based graphics program, much like Adobe Illustrator and LibreOffice Draw. It supports the standard graphic operations, such as rotating, scaling, and aligning objects. Calligra Words can best be described as a desktop publisher, with many of the features found in publishing applications. Although it is a fully functional word processor, Calligra Words sets up text in frames that are placed on the page like objects. Frames, like objects in a drawing program, can be moved, resized, and reoriented. You can organize frames into a frame set, having text flow from one to the other.

GNOME Office Applications

There are several GNOME applications that are used for Office tasks, including AbiWord, Gnumeric, Evince, and Evolution. These applications are located on the Fedora repository. A current listing of the common GNOME applications for Office related tasks is shown in Table 5-4. All applications implement the support for embedding components, ensuring drag-and-drop capability throughout the GNOME interface.
Table 5-4

Office Applications for GNOME

Application

Description

AbiWord

Cross-platform word processor

Gnumeric

Spreadsheet

Evince

Document viewer

Evolution

Integrated email, calendar, and personal organizer

Dia

Diagram and flowchart editor

GnuCash

Personal finance manager

Glom

Database frontend for PostgreSQL database

glabels

Label designer

Inkscape

Vector graphics and presentation creation

AbiWord is an open source word processor that aims to be a complete cross-platform solution, running on Mac, UNIX, and Windows, as well as Linux. It is part of a set of desktop productivity applications being developed by the AbiSource project ( www.abisource.com ).

Gnumeric is a professional-level GNOME spreadsheet meant to replace commercial spreadsheets. Gnumeric supports standard desktop spreadsheet features, including auto filling and cell formatting, and an extensive number of formats. Gnumeric also supports plugins, making it possible to extend and customize its capabilities easily.

Dia is a drawing program designed to create diagrams, such as database, circuit object, flowchart, and network diagrams. You can create elements along with lines and arcs with different types of endpoints, such as arrows or diamonds. Data can be saved in XML format, making it transportable to other applications.

GnuCash ( www.gnucash.org ) is a personal finance application for managing accounts, stocks, and expenses.

Running Microsoft Office on Linux: Wine and CrossOver

One of the concerns that new Linux users have relates to the kind of access they will have to their Microsoft Office files, particularly Word files. The major Linux Office suites, including Calligra, LibreOffice, and Oracle OpenOffice, all read and manage Microsoft Office files.

Wine (Windows Compatibility Layer) allows you to run many Windows applications directly, using a supporting virtual windows API. See the Wine website for a list of supported applications; see also www.winehq.org , the AppDB tab. Well-written applications may run directly from Wine, like the Newsbin newsreader. Each user can install a version of Wine with its own simulated C partition on which Windows applications are installed. The simulated drive is installed as drive_c in the .wine directory. The .wine directory is a hidden directory. It is not normally displayed with the ls command or the GNOME file manager (View ➤ Show Hidden Files). You can also use any of your Linux directories for your Windows application data files instead of the simulated C drive. These are referenced by Windows applications as the z: drive.

It is possible to install Microsoft Office on Fedora using Wine. Although there may be difficulties with the latest Microsoft Office versions, earlier versions, such as 2002, should work fine for the most part (see www.winehq.org , AppDB tab, search on Word). Applications are rated platinum, gold, silver, bronze, and garbage. Although effective, Wine support is not as stable as CrossOver.

CrossOver Office is a commercial product that lets you install and run most Microsoft Office applications (it has a silver rating). CrossOver Office was developed by CodeWeavers, which also supports Windows web browser plugins as well as several popular Windows applications, such as Adobe Photoshop. CrossOver features both standard and professional versions, providing reliable application support. You can find out more about CrossOver Office at www.codeweavers.com .

CrossOver can be installed either for private multiuser mode or managed multiuser mode. In private multiuser mode, each user installs Windows software, such as full versions of Office. In managed multiuser mode, the Windows software is installed once, and all the users share it. Once the software is installed, you will see a Windows Applications menu on the main menu, from which you can start your installed Windows software. The applications will run within a Linux window, but they will appear just as if they were running in Windows.

With VMware, you can run Windows under Linux, allowing you to run Windows applications, including Microsoft Office, on your Linux system. For more information, check the VMware website at https://www.vmware.com .

Another option, for users with high-powered computers that support virtualization, is to install the Windows OS on a virtual machine, using the Boxes virtual machine manager. You could then install and run Windows on the virtual machine and install Microsoft Office on it.

GNOME Documents

You can use the GNOME Documents application to access and search for local and cloud-based documents. Documents can be text (word processing), spreadsheets, presentations, or PDF files. Currently, both Google docs and Microsoft SkyDrive documents are supported. You have to enable access from the Online Accounts dialog on GNOME Settings.

GNOME Documents is accessible from the Applications overview. The Documents dialog shows tabs for both Documents and Collections. Documents lists your local and cloud-based documents (see Figure 5-3). The Documents GNOME applications menu lets you view the documents in a grid (icons) or as a list. Collections are categories you can set up to organize your documents. There are buttons at the right of the title bar for searching, sorting, and editing. Click the Search button to open a search box with a menu that lets you search for source (local or cloud), type, and search target (title or author).
../images/326960_3_En_5_Chapter/326960_3_En_5_Fig3_HTML.jpg
Figure 5-3

GNOME Documents, with search

Click the checkmark button at the top right to open a taskbar, which lets you open the document or print it (see Figure 5-4). In the list view, click the check box to the left of the document you want to perform the task on. In the grid view, a check box is displayed at the lower right of each icon. When you click a check box, the taskbar is displayed with buttons to open the document in the appropriate application, print the document , and delete it. The Properties button displays information about the document. The Collections button lets you place the document in a collection. When you’re finished, click the Done button.
../images/326960_3_En_5_Chapter/326960_3_En_5_Fig4_HTML.jpg
Figure 5-4

GNOME Documents tasks

Document Viewers and Scanning (PostScript, PDF, and DVI)

Although technically considered graphics applications, PostScript, PDF, DVI, and viewers are more commonly used with Office applications (see Table 5-5). Evince and Okular can display both PostScript (.ps) and PDF (.pdf) files. Evince is the default document viewer for GNOME. It is started automatically whenever you double-click a PDF file on the GNOME desktop. Okular is the default document viewer for KDE, with its overview icon as Okular.
Table 5-5

PostScript, PDF, and DVI Viewers

Viewer

Description

Evince

Document viewer for PostScript, DVI, and PDF files

Okular

KDE tool for displaying PDF, DVI, and PostScript files (replaces KPDF, Kghostview, and Kdvi)

Xpdf

X Window System tool for displaying PDF files only

Acrobat Reader for Linux

Adobe PDF viewer and ebook reader ( https://get.adobe.com/flashplayer/otherversions )

Scribus

Desktop publisher for generating PDF documents

Simple Scan

GNOME Scanner interface for scanners (Graphics ➤ Simple Scan)

Yagf and cuneiform

OCR text conversion supporting multiple languages (install with dnf)

Okular, Evince, and Xpdf are PDF viewers. They include many of the standard Adobe Reader features, such as zoom, two-page display, and full-screen mode. Alternatively, you can use Acrobat Reader from Adobe to display PDF files. You can install it with Packages once you have enabled the Adobe repository ( https://get.adobe.com/flashplayer/otherversions/ as Linux and (Yum)). The package name is flash-plugin.

All these viewers can also print documents . To generate PDF documents, you can use LibreOffice Writer or the Scribus desktop publisher ( https://www.scribus.net ), and to edit PDF documents, you can use pdfedit.

Linux also features a professional-level typesetting tool, called TeX, commonly used to compose complex mathematical formulas. TeX generates a DVI document that can be displayed by DVI viewers, several of which are available for Linux. DVI files generated by the TeX document application can be viewed by Evince, Okular, and LibreOffice.

To scan documents directly, you can use Simple Scan, which you can save as JPEG, PNG, or PDF files. For OCR tasks, you can use cuneiform. Yagf provides a desktop frontend for cuneiform, allowing you to scan and convert text. You can choose from several languages.

Ebook Readers: FBReader and Calibre

On Fedora, you can use the Linux versions of Calibre and FBReader for ebooks (see Table 5-6). FBReader is an open source reader that can read non-DRM ebooks, including Mobipocket, HTML, EPUB, text, and RTF (install the fbreader-gtk package). The toolbar holds operations that move you through the text and configure your reader, adding books and setting interface preferences (see Figure 5-5). To see your selection of books, click the Library Tree icon on the left. You can organize text by author or tag. On the Options window, the Library tab lets you choose where your books are stored.
Table 5-6

Ebook Readers

Reader

Description

Calibre

Ebook reader and library, also converts various inputs to EPUB ebooks

Ebook reader (Ebook reader)

FBReader ebook reader, search under E-book reader (install with dnf)

Kindle Cloud Reader

Amazon Kindle ebook reader

../images/326960_3_En_5_Chapter/326960_3_En_5_Fig5_HTML.jpg
Figure 5-5

FBReader ebook reader

Calibre reads PDF, EPUB, Lit (Microsoft), and Mobipocket ebooks (see Figure 5-6). Calibre functions as a library for accessing and managing your ebooks. Calibre can convert many document files and ebooks to the EPUB format, the new open source standard used by Apple (iPad) and Amazon (Kindle). It can take as conversion input text, HTML, RTF, and ODT (LibreOffice), as well as ebooks.

Note

For older PDAs, you can use the pilot tools to access your handheld device, transferring information between it and your system. You can use the J-Pilot, KPilot, and GnomePilot applications to access your PDA from your desktop. The pilot-link package holds tools you can use to access your PDA. Check www.pilot-link.org for detailed documentation and useful links.

../images/326960_3_En_5_Chapter/326960_3_En_5_Fig6_HTML.jpg
Figure 5-6

Calibre ebook reader and converter

GNOME Notes

The GNOME Notes (Bijiben) application lets you create and organize simple notes on your desktop. The Notes window lists your new and recent notes, showing the note title and the first few lines of text (see Figure 5-7). In the header bar, the search button opens a search box that lets you search for notes. The list button lets you switch between icon and list views. The check button lets you delete or organize your notes. A check box is displayed at the lower-right corner of the note icons. Clicking on that check box opens a taskbar at the bottom with buttons to delete the note, add it to a collection (notebooks), or email it. There is also a color button that you can use the background color.
../images/326960_3_En_5_Chapter/326960_3_En_5_Fig7_HTML.jpg
Figure 5-7

GNOME Notes

To create a new note, click the New button on the title bar to open a new text. The first line is the title of your note. Press the Enter key to move to the next line (see Figure 5-8). A color button lets you change the background color. The task menu (menu button) provides undo/redo functions, deletion, and email options. You can also add the note to a notebook. You can use notebooks to organize your notes. The share button lets you share the note with other users.
../images/326960_3_En_5_Chapter/326960_3_En_5_Fig8_HTML.jpg
Figure 5-8

GNOME Documents tasks

Clocks

Two helpful tools are the clocks and weather applications. Clocks has four tabs: World, Alarm, Stopwatch, and Timer. The World tab displays the current time at any city and at your current location (see Figure 5-9). Click the New button to open a dialog in which you can add a city. To remove a city, click the check button to display a check box in the lower-right corner of each time icon. Check the ones you want to delete, and then click the Delete button. The Alarm tab works as an alarm clock. The Stopwatch tab operates a stopwatch, letting you mark laps. The timer counts down in time. You set the start amount.
../images/326960_3_En_5_Chapter/326960_3_En_5_Fig9_HTML.jpg
Figure 5-9

GNOME Clocks, World tab

Weather

The weather tool lets you display the weather at any city. Click the Places button to open a dialog in which you can enter the name of a city. A partial entry is matched, giving you a listing of possible cities. Choose the one you want. A full image of the weather for that city is displayed, with the temperature and forecast for the next 24 hours, and a sidebar with the forecast for the next several days (see Figure 5-10). To see recently viewed cities, click the Places button to open a dialog where you can choose a city from the Recently Viewed list (see Figure 5-11).
../images/326960_3_En_5_Chapter/326960_3_En_5_Fig10_HTML.jpg
Figure 5-10

GNOME Weather

../images/326960_3_En_5_Chapter/326960_3_En_5_Fig11_HTML.jpg
Figure 5-11

GNOME Weather: City with forecast

Editors

The Fedora desktops (GNOME and KDE) support powerful text editors with full mouse support, scroll bars, and menus. These include basic text editors, such as Gedit and Kate, as well as word processors, such as LibreOffice Word, AbiWord, and KWord. Fedora also provides the cursor-based editors Nano, Vim, Emacs, and Leafpad. Nano is a cursor-based editor with an easy-to-use interface supporting menus and mouse selection (if it’s run from a terminal window). Vim is an enhanced version of the vi text editor used on UNIX. These editors use simple, cursor-based operations to give you a full-screen format. Table 5-7 lists several desktop editors for Linux. Vim and Emacs have powerful editing features that have been refined over the years. Emacs, in particular, is extensible to a full-development environment for programming new applications. Later versions of Emacs and Vim—such as GNU Emacs, XEmacs, and Gvim—provide support for mouse, menu, and window operations.
Table 5-7

Desktop Editors

Application

Description

Desktop

 

KEdit

Text editor

Kate

Text and program editor

Words

Desktop publisher, part of Calligra

Gedit

Text editor

GNU Emacs

Emacs editor with X Window System support

XEmacs

X Window System version of Emacs editor

gvim

Vim version with X Window System support

AbiWord

Word processor (install with dnf)

OpenWriter

LibreOffice word processor that can edit text files

Command-Line Interface

 

Vim

Vim version of vi

Emacs

Emacs command-line editor

Nano

Screen-based command-line interface editor (install with dnf)

Leafpad

Screen-based command-line interface editor with mouse support when run from a terminal window on desktop (install with dnf)

Text editors are often used in system administration tasks to change or add entries in Linux configuration files found in the /etc directory or in the user’s initialization or application configuration files located in a user’s home directory (dot files). You can use any text editor to work on source code files for any of the programming languages or shell program scripts.

GNOME Text Editor: Gedit

The Gedit editor is the basic text editor for the GNOME desktop. It provides full mouse support, implementing standard desktop operations, such as cut-and-paste to move text, and click-and-drag to select and move/copy text. It supports standard text-editing operations such as Find and Replace. You can use Gedit to create and modify your text files, including configuration files. Gedit also provides more advanced features, such as Print Preview and configurable levels of undo/redo operations, and it can read data from pipes. It features a plugin menu that provides added functionality, and it includes plugins for spell checking, encryption, email, and text-based web page display.

KDE Editor: Kate (KWrite)

The KDE editor Kate provides full mouse support, implementing standard desktop operations, such as cut-and-paste to move text, and click-and-drag to select and move/copy text. The editor is accessible from the Applications ➤ Utilities menu on the KDE desktop, and as KWrite on GNOME. Kate is an advanced editor, with such features as spell checking, font selection, and highlighting. Most commands can be selected by using menus. A toolbar of icons for common operations is displayed across the top of the Kate window. A sidebar displays panels for a file selector and a file list. With the file selector, you can navigate through the file system, selecting files to access. Kate also supports multiple views of a document, letting you display segments in their own windows, vertically or horizontally. You can also open several documents at the same time, moving among them with the file list. Kate is designed to be a program editor for editing software programming/development-related source code files. Kate can format the syntax for different programming languages, such as C, Perl, Java, and XML.

Leafpad

Leafpad is a very simple text editor that provides basic mouse support, letting you edit a file easily (install the leafpad package). It uses an interface similar to Windows Notepad, displaying a menu bar with the File, Edit, Search, and Options menu items. Features are limited to basic operations such as open, save, print, cut, copy, paste, find, and replace.

Nano

Several simple keyboard-based editors are available for Fedora that work on the command-line interface, such as nano and joe. The Nano editor is a simple screen-based editor that lets you visually edit your file, using arrow and page keys to move around the file (install the nano package). You use control keys to perform actions. Ctrl+x will exit and prompt you to save the file; Ctrl+o will save it. You start Nano with the nano command.
nano myreport
To edit a configuration file, you need administrative access, so you first have to use administrative access with the sudo command. Figure 5-12 shows the Nano editor being used to edit the GRUB configuration file, /etc/default/grub.
sudo nano /etc/default/grub
../images/326960_3_En_5_Chapter/326960_3_En_5_Fig12_HTML.jpg
Figure 5-12

Editing with Nano

Emacs Editor

The Emacs editor is tailored for program development, enabling you to format source code according to the programming language you use. The versions usually included with Linux distributions are GNU Emacs and XEmacs. GNU Emacs is desktop-capable, with features such as menus, scroll bars, and mouse-based editing operations. You can find more information about Emacs at www.emacs.org and about XEmacs at its website at www.xemacs.org .

The Emacs editor operates much like a standard word processor. The keys on your keyboard represent input characters. Commands are implemented with special keys, such as the control (Ctrl) and alternate (Alt) keys. There is no special input mode, as in vi. You type in your text, and if you have to execute an editing command, such as moving the cursor or saving text, you use a Ctrl key. Such an organization makes the Emacs editor easy to use. You invoke the Emacs editor with the command emacs. You can enter the name of the file you want to edit, and if the file does not exist, it is created. In the following example, the user prepares to edit the file mydata with Emacs:
emacs mydata

The GNU Emacs editor supports basic desktop-editing operations such as selection of text with click-and-drag mouse operations, cut/copy/paste, and a scroll bar for moving through text. The Mode line and Echo areas are displayed at the bottom of the window, where you can enter keyboard commands.

Note

XEmacs is the complete Emacs editor with a graphical user interface and Internet applications, including a web browser, a mail utility, and a newsreader. XEmacs is available on the Fedora repository.

The Vi Editor: Vim and Gvim

The Vim editor included with most Linux distributions is an enhanced version of the vi editor. It includes all the commands and features of the vi editor. Vi, which stands for “visual,” remains one of the most widely used editors in Linux. There are two versions of Vim available, vim-minimal, which is installed by default and provides vi editing capabilities, and vim-enhanced, which provides more advanced features such as Perl and Python interpreters, useful if you use vi to create Perl or Python scripts.

Keyboard-based editors like Vim and Emacs use a keyboard for two different operations: to specify editing commands and to receive character input. Used for editing commands, certain keys perform deletions, some execute changes, and others perform cursor movement. Used for character input, keys represent characters that can be entered into the file being edited. Usually, these two different functions are divided among different keys on the keyboard. Alphabetic keys are reserved for character input, while function keys and control keys specify editing commands, such as deleting text or moving the cursor. Such editors can rely on the existence of an extended keyboard that includes function and control keys.

Editors in UNIX, however, were designed to assume a minimal keyboard with alphanumeric characters and some control characters, as well as the Esc and Enter keys. Instead of dividing the command and input functions among different keys, the vi editor has three separate modes of operation for the keyboard: the command and input modes and a line-editing mode. In command mode, all the keys on the keyboard become editing commands; in the input mode, the keys on the keyboard become input characters. Some of the editing commands, such as a and i, enter the input mode. On typing i, you leave the command mode and enter the input mode. Each key now represents a character to be input to the text. Pressing Esc automatically returns you to the command mode, and the keys once again become editor commands. As you edit text, you are constantly moving from the command mode to the input mode and back again. With Vim, you can use the Ctrl+o command to jump quickly to the command mode and enter a command, and then automatically return to the input mode. Table 5-8 lists a basic set of vi commands to get you started.
Table 5-8

Editor Commands

Command

Description

h

Moves the cursor left one character.

l

Moves the cursor right one character.

k

Moves the cursor up one line.

j

Moves the cursor down one line.

Ctrl+f

Moves forward by a screen of text; the next screen of text is displayed.

Ctrl+b

Moves backward by a screen of text; the previous screen of text is displayed.

Input

(All input commands place the user in input; the user leaves input with Esc.)

a

Enters input after the cursor.

i

Enters input before the cursor.

o

Enters input below the line the cursor is on; inserts a new empty line below the one the cursor is currently on .

Text Selection (Vim)

 

v

Visual mode; move the cursor to expand selected text by character. Once selected, press a key to execute an action: c change, d delete, y copy, : line-editing command, J join lines, U uppercase, u lowercase.

V

Visual mode; move cursor to expand selected text by line.

Delete

 

x

Deletes the character the cursor is on.

dd

Deletes the line the cursor is on.

Change

Except for the replace command, r, all change commands place the user into input after deleting text.

cw

Deletes the word the cursor is on and places the user into the input mode.

r

Replaces the character the cursor is on. After pressing r, the user enters the replacement character. The change is made without entering input; the user remains in the vi command mode.

R

First places into input mode, and then overwrites character by character. Appears as an overwrite mode on the screen but actually is in input mode.

Move

Moves text by first deleting it, moving the cursor to desired place of insertion, and then pressing the p command. (When text is deleted, it is automatically held in a special buffer.)

p

Inserts deleted or copied text after the character or line the cursor is on.

P

Inserts deleted or copied text before the character or line the cursor is on .

dw p

Deletes a word, and then moves it to the place you indicate with the cursor (press p to insert the word after the word the cursor is on).

yy or Y p

Copies the line the cursor is on.

Search

The two search commands open a line at the bottom of the screen and enable the user to enter a pattern to be searched for; press Enter after typing in the pattern.

/ pattern

Searches forward in the text for a pattern.

? pattern

Searches backward in the text for a pattern.

n

Repeats the previous search, whether it was forward or backward.

Line-Editing Commands

Effect

w

Saves the file .

q

Quits the editor; q! quits without saving.

Although you can create, save, close, and quit files with the vi editor, the commands for each are not very similar. Saving and quitting a file involves the use of special line-editing commands, whereas closing a file is a vi editing command. Creation of a file is usually specified on the same shell command line that invokes the vi editor. To edit a file, type vi or vim and the name of a file on the shell command line. If a file by that name does not exist, the system creates it. In effect, entering the name of a file that does not yet exist instructs the vi editor to create that file. The following command invokes the vi editor, working on the file booklist. If booklist does not yet exist, the vi editor creates it.
$ vim booklist

After executing the vim command , you enter vi’s command mode. Each key becomes a vi editing command, and the screen becomes a window onto the text file. Text is displayed screen by screen. The first screen of text is displayed, and the cursor is positioned in the upper-left corner. With a newly created file, there is no text to display. When you first enter the vi editor, you are in the command mode. To enter text, you must enter the input mode. In the command mode, a is the editor command for appending text. Pressing this key places you in the input mode. Now the keyboard operates like a typewriter, and you can input text to the file. If you press Enter, you merely start a new line of text. With Vim, you can use the arrow keys to move from one part of the entered text to another and work on different parts of the text. After entering text, you can leave the input mode and return to the command mode by pressing Esc. Once you’ve finished with the editing session, you exit vi by typing two capital Zs, ZZ. Hold down the Shift key and press Z twice. This sequence first saves the file and then exits the vi editor, returning you to the Linux shell. To save a file while editing, you use the line-editing command w, which writes a file to the disk. w is equivalent to the Save command found in other word processors. You first type a colon to access the line-editing mode and then type w and press Enter, :w.

You can use the :q command to quit an editing session. Unlike the ZZ command, the :q command does not perform a save operation before it quits. In this respect, it has one major constraint. If any modifications have been made to your file since the last save operation, the :q command will fail, and you will not leave the editor. However, you can override this restriction by placing a ! qualifier after the :q command. The command :q! will quit the vi editor without saving any modifications made to the file during that session (the combination :wq is the same as ZZ).

To obtain online help, enter the :help command. This is a line-editing command. Type a colon, enter the word help on the line that opens at the bottom of the screen, and then press Enter. You can add the name of a specific command after the word help. Pressing the F1 key also brings up online help.

As an alternative to using Vim in a command-line interface, you can use gvim, which provides X Window System–based menus for basic file, editing, and window operations.

The package vim is called the vim-X11 package , which includes several links to Gvim, such as evim, gview, and gex (open Ex editor line). To use Gvim, you can enter the gvim command at a terminal prompt. The standard vi interface is shown, but with several menu buttons displayed across the top, along with a toolbar with buttons for common commands like search and file saves. All the standard vi commands work as described previously; however, you can use your mouse to select items on these menus. You can open and close a file, or open several files, using split windows or different windows. The editing menu enables you to cut, copy, and paste text as well as undo or redo operations.

In the editing mode, you can select text with your mouse with a click-and-drag operation or use the Editing menu to cut or copy and then paste the selected text. Text entry, however, is still performed using the a, i, or o commands to enter the input mode. Searches and replacements are supported through a dialog window. There are also buttons on the toolbar for finding next and previous instances. You can also split the view into different windows to display parts of the same file or different files. Use the :split command to open a window, and use :hide to close the current one. Use Ctrl+w with the up and down arrow keys to move between them. On Gvim, you use entries in the Windows menu to manage windows. Configuration preferences can be placed in the user’s .vimrc file.

Mail (Email) and News

Electronic mail utilities perform the same basic tasks of receiving and sending messages. Some mail clients operate on a desktop, such as KDE or GNOME. Others are designed to use a screen-based interface and can be run only from the command line (the terminal window). For web-based Internet mail services, such as Gmail and Yahoo, you can use a web browser instead of a mail client to access mail accounts provided by those services. Table 5-9 lists several popular Linux mail clients. Mail is sent to and from destinations using mail transport agents, such as Sendmail, Exim, and Smail.
Table 5-9

Linux Mail Clients

Mail Client

Description

Kontact (KMail, KAddressBook, KOrganizer)

Includes the K Desktop mail client, KMail; integrated mail, address book, and scheduler

Contacts

GNOME contact database synced with Online Accounts (currently supports only Google contacts)

Documents

GNOME documents for locating local and cloud-based documents; synced with Online Accounts (Google Docs and Microsoft SkyDrive)

Evolution

Email client

Thunderbird

Mozilla group standalone mail client and newsreader

Sylpheed

Gtk mail and news client (install with dnf)

Claws Mail

Extended version of the Sylpheed email client (install with dnf)

GNU Emacs and XEmacs

Emacs mail clients

Mutt

Screen-based mail client (install with dnf)

Mail

Original UNIX-based command-line mail client

Squirrel Mail

Web-based mail client (install with dnf)

Evolution

Evolution is the primary mail client for the GNOME desktop. Although it’s designed for GNOME, it works equally well on other desktops. Evolution provides a mail client, calendar, and address book. The mailer supports several protocols (SMTP, POP, and IMAP), multiple mail accounts, and encryption. It also supports Pretty Good Privacy (PGP) and GNU Privacy Guard (GPG) encryption. Messages are indexed for easy searching. Junk mail filtering is provided. See the Evolution website ( https://wiki.gnome.org/Apps/Evolution ) for a complete description of its features.

You can access Evolution from the Applications overview. The Evolution mailer provides a simple desktop interface, with a toolbar for commonly used commands and a sidebar for shortcuts. A set of buttons on the lower left allows you to access other operations, such as the calendar and contacts. The mail screen is divided into two panes, one for listing the mail headers and the other for displaying the currently selected message (see Figure 5-13). You can click any header title to sort your headers by that category. Evolution also supports the use of virtual folders created by the user to hold mail that meets specified criteria. Incoming mail can be automatically distributed to a particular virtual folder.
../images/326960_3_En_5_Chapter/326960_3_En_5_Fig13_HTML.jpg
Figure 5-13

Evolution email client

To configure Evolution, select Preferences from the Edit menu (Edit ➤ Preferences). On the Evolution Preferences window, a sidebar shows icons for mail accounts, contacts, mail preferences, composer preference, network preferences, calendar and tasks, and certificates. The main accounts entry displays a list of current accounts. An Add button lets you add new accounts, and the Edit button allows you to change current accounts.

Numerous plugins are available to extend Evolution’s capabilities. Most are installed and enabled for you automatically, including the SpamAssassin plugin for handling junk mail. To manage your plugins, select the Plugins entry in the Edit menu (Edit ➤ Plugin) to open the Plugin Manager. The plugins are listed in a left scroll window, and the configuration tabs for a selected plugin are on the right.

Evolution also supports contact operations such as calendars, contact lists, and memos. On the left-side pane, the bottom section displays buttons for these different functions: Mail, Contacts, Calendars, Tasks, and Memos. To see and manage your contacts, click the Contacts button on the left sidebar. The Calendar displays a browsable calendar on the left pane to move easily to a specific date. The right pane shows a daily calendar page by the hour, with sections for tasks and memos. You can set up several calendars, which you can access at the top of the right pane. A personal calendar is set up for you already. To add a new calendar, select Calendar from the New menu. This opens a New Calendar dialog, from which you can choose the type and name.

Thunderbird

Thunderbird is a full-featured standalone email client provided by the Mozilla project ( www.mozilla.org ). It is designed to be easy to use, highly customizable, and heavily secure. It features advanced intelligent spam filtering, as well as security features such as encryption, digital signatures, and S/MIME. To protect against viruses, email attachments can be examined without being run. Thunderbird supports both the Internet Message Access Protocol (IMAP) and the Post Office Protocol (POP). It also functions as a newsreader and features a built-in RSS reader. Thunderbird also supports the use of the Lightweight Directory Access Protocol (LDAP) for address books. Thunderbird is an extensible application, allowing customized modules to be added to enhance its capabilities. You can download extensions such as dictionary search and contact sidebars from the website.

Thunderbird provides integration with popular online mail services like Gmail, saved searches, and customized tags for selected messages. You can access Thunderbird from the Applications overview.

The Thunderbird interface uses a standard three-pane format, with a side pane for listing mail accounts and their mailboxes (see Figure 5-14). The top pane is the message list pane, and the bottom pane shows a selected message’s text. Commands can be run using the toolbar, the tool menu (button at the right of the toolbar), or keyboard shortcuts. You can even change the appearance using different themes. Thunderbird also provides a Tasks tab and Calendar tab for scheduling events and noting dates. Upcoming tasks are listed on the main window on a sidebar on the right.
../images/326960_3_En_5_Chapter/326960_3_En_5_Fig14_HTML.jpg
Figure 5-14

Thunderbird email client

To edit an email account, select the Preferences ➤ Account Settings from the menu opened by the menu button at the right of the toolbar. In the Account Settings window, you will see an entry for your mail account, with tabs for Server Settings, Copies & Folders, Composition & Addressing, Offline & Disk Space, Return Receipt, and Security. The Server Settings tab has entries for your server name, port, username, and connection and task configurations, such as when to check for messages. The Security tab shows a Manage Certificates button, which opens the Certificate Manager, from which you can select security certificates to use to digitally sign or encrypt messages.

Thunderbird provides an address book in which you can enter complete contact information, including email addresses, street addresses, phone numbers, and notes. Select the Address Book button on the toolbar to open the Address Book window.

GNOME Contacts

If you have enabled contacts for Online Accounts, you can use the GNOME Contacts application to manage and access those contacts (see Figure 5-16). Contacts are downloaded from the enabled online accounts. Currently, only Google is supported. You can then access and edit those contacts with the Contacts application, which is accessible from the Applications overview. First be sure to switch on Contacts in System Setting’s Online Accounts (see Figure 5-15).
../images/326960_3_En_5_Chapter/326960_3_En_5_Fig15_HTML.jpg
Figure 5-15

Online Accounts contacts switch

Contacts displays a sidebar listing your contacts. A search box lets you search for contacts. To add a contact manually, click the plus button (+) above the search box (see Figure 5-16). The selected contact shows the name, icon used, and the email address. The email entry is a mail button, which you can click to open your mailer to compose a message to be sent to that address.
../images/326960_3_En_5_Chapter/326960_3_En_5_Fig16_HTML.jpg
Figure 5-16

GNOME Contacts

To edit the contact information, click the edit button (pencil icon) at the top-right corner. You then can edit entries or provide additional information, such as the address, phone, links, website, birthday, and notes (see Figure 5-17). For each entry, you can classify whether it is work, home, or other. To remove a contact, click the Remove Contact button at the lower right. You can also remove the contact by clicking on its entry in the sidebar to display a check box , which, when clicked, displays a Remove button at the bottom of the sidebar.
../images/326960_3_En_5_Chapter/326960_3_En_5_Fig17_HTML.jpg
Figure 5-17

GNOME Contacts edit

The KDE Mail Client: KMail

The KDE mail client, KMail, provides a full-featured desktop interface for composing, sending, and receiving email messages. KMail is part of the KDE Personal Information Management suite (KDE-PIM), which also includes an address book (KAddressBook), an organizer and scheduler (KOrganizer), and a note writer (KNotes). All these components are directly integrated on the desktop into Kontact. You can start up KMail directly or as part of the Kontact applications (Mail). KMail, along with Kontact, KOrganizer, and KAddressBook, is accessible from the KDE Desktop Office and Internet menus. On GNOME, you can access it from Applications overview. You can access Kontact in the Office filter. KMail is installed as part of the KDE desktop, but you can install it separately.

To quickly set up a new email account, you can use the Account Wizard (Tools ➤ Account Wizard). A series of dialogs will prompt you to enter the account type, the account name and address, a login name and password, and the incoming and outgoing servers. For more detailed configuration, select the Configure Kmail entry in the Settings menu (Settings ➤ Configure Kmail).

Emacs Mail

The GNU version of Emacs includes a mail client, in addition to other components, such as a newsreader and editor. GNU Emacs is included on Fedora distributions. Check the Emacs website at www.gnu.org/software/emacs for more information. When you start GNU Emacs, menu buttons are displayed across the top of the screen. If you are running Emacs in an X Window System environment, you have full desktop capabilities and can select menus using your mouse. To access the Emacs mail client, select from the mail entries in the Tools menu. To compose and send messages, just select the Send Mail item in the Tools menu.

Command-Line Mail Clients

Several mail clients use a simple command-line interface. They are simple and easy to use but include an extensive set of features and options. Two of the more widely used mail clients of this type are Mail and Mutt. Mail is the mailx mail client that was developed for the UNIX system. It is considered a default mail client that can be found on all UNIX and Linux systems. Mutt is a cursor-based client that runs from the command line.

Mutt

Mutt has a cursor-based interface with an extensive set of features. You can find more information about Mutt from the Mutt website at www.mutt.org . Here, you can download recent versions of Mutt and access online manuals and help resources. The Mutt manual is located in the /usr/doc directory under Mutt. To use Mutt, enter the mutt command in a terminal window or on the command line.

Mail

The Mail utility was originally created for BSD UNIX and is called, simply, mail. Later versions of UNIX System V adopted the BSD mail utility and renamed it mailx . Now, it is simply referred to as Mail. Mail functions as a default mail client on most UNIX and Linux systems. It is installed on Fedora with the mailx package.

To send a message with Mail, type mail on the command line, in addition to the address of the person to whom you are sending the message. Press Enter, and you are prompted for a subject. Enter the subject of the message and press Enter again. At this point, you are placed in input mode. Anything you type is considered the contents of the message. Pressing Enter adds a new line to the text. When you finish typing your message, press Ctrl+d on a line of its own to end the message. You will then be prompted to enter a user to whom to send a carbon copy (cc) of the message. If you do not want to send a carbon copy, just press Enter. You will then see EOT (end of transmission) displayed after you press Ctrl+d.

You can send a message to several users at the same time by listing those users’ addresses as arguments on the command line following the mail command. In the following example, the user sends the same message to chris and aleina:
$ mail chris aleina
To receive mail, you first enter the mail command and press Enter. This invokes a Mail shell with its own prompt and mail commands. A list of message headers is displayed. Header information is arranged into fields, beginning with the status of the message and the message number. The status of a message is indicated by a single uppercase letter, usually N for “new” or U for “unread.” A message number, used for easy reference to your messages, follows the status field. The next field is the address of the sender, followed by the date and time the message was received, and then the number of lines and characters in the message. The last field contains the subject the sender gave to the message. After the headers, the Mail shell displays its prompt, an ampersand (&). At the Mail prompt, you enter commands that operate on the messages. An example of a Mail header and prompt follows:
$ mail
Mail version 8.2 01/15/2001. Type ? for help.
"/var/spool/mail/larisa": 3 messages 1 new 2 unread
1 [email protected]. Thu Jun 7 14:17 22/554 "trip"
>U 2 [email protected] Thu Jun 7 14:18 22/525 "party"
U 3 [email protected]. Thu Jun 7 14:18 22/528 "newsletter"
& q

Mail references messages either through a message list or through the current message marker (>). The greater-than sign (>) is placed before the current message. The current message is referenced by default when no message number is included with a Mail command. You can also reference messages using a message list consisting of several message numbers.

Use the R and r commands to reply to a message you have received. The R command entered with a message number generates a header for sending a message and then places you into input mode to type the message. The q command quits Mail. When you quit, messages you have already read are placed in a file called mbox in your home directory. Instead of saving messages in the mbox file, you can use the s command to save a message explicitly to a file of your choice. Mail has its own initialization file, called .mailrc, which is executed each time Mail is invoked, for sending or receiving messages. Within it, you can define Mail options and create Mail aliases.

Accessing Mail on Remote Mail Servers

Most new mail clients are equipped to access mail accounts on remote servers. Mail clients, such as Evolution, KMail, Sylpheed, and Thunderbird, enable you to set up a mailbox for such an account and access a mail server to check for and download received mail. You must specify what protocol a mail server uses. This is usually either the Post Office Protocol (POP) or the IMAP protocol (IMAP). Using a mail server address, you can access your account with your username and password.

For email clients, such as Mail and Mutt, that do not provide mail server access, you can use Fetchmail to have mail from those accounts sent directly to the inbox of your Linux account. All your mail, whether from other users on your Linux system or from remote mail accounts, will appear in your local inbox. Fetchmail checks for mail on remote mail servers and downloads it to your local inbox, where it appears as newly received mail. Enter fetchmail on the command line with the mail server address and any needed options. The mail protocol is indicated with the -p option and the mail server type, usually POP3. If your email username is different from your Linux login name, you use the -u option and the email name. Once you execute the fetchmail command, you are prompted for a password. The syntax for the fetchmail command for a POP3 mail server follows:
fetchmail -p POP3 -u username mail-server
You will see messages telling you if you have mail and how many messages are being downloaded. You can then use a mail client to read the messages from your inbox. You can run Fetchmail in daemon mode to have it check automatically for mail. You must include an option specifying the interval in seconds, for checking mail.
fetchmail -d 1200

To have Fetchmail run automatically, you can set the START DAEMON option to yes in the /etc/default/fetchmail file.

You can specify options, such as the server type, username, and password, in a .fetchmailrc file in your home directory. You can also include entries for other mail servers and accounts. Once Fetchmail is configured, you can enter fetchmail with no arguments; it will read entries from your .fetchmailrc file. You can also make entries directly in the .fetchmailrc file. An entry in the .fetchmailrc file for a particular mail account consists of several fields and their values poll, protocol, username, and password. The poll field refers to the mail server name. You can also specify your password, instead of having to enter it each time Fetchmail accesses the mail server.

Mailing Lists

Users on mailing lists automatically receive messages and articles sent to the lists. Mailing lists work much like a mail alias, broadcasting messages to all users on the list. Mailing lists were designed to serve specialized groups of people. Numerous mailing lists, as well as other subjects, are available for Linux. By convention, to subscribe to a list, you send a request to the mailing list address with a –request term added to its username. For example, to subscribe to [email protected], you send a request to [email protected].

You can use the Mailman program to manage your mailing lists automatically. Mailman is the GNU mailing list manager that is included with Fedora. You can find out more about Mailman at www.list.org .

Usenet News

Usenet is an open mail system on which users post messages that include news, discussions, and opinions. It operates like a mailbox to which any user on your Linux system can read or send messages. Users’ messages are incorporated into Usenet files, which are distributed to any system signed up to receive them. Each system that receives Usenet files is referred to as a site . Certain sites perform organizational and distribution operations for Usenet, receiving messages from other sites and organizing them into Usenet files, which are then broadcast to many other sites. Such sites are called backbone sites, and they operate like publishers, receiving articles and organizing them into different groups.

To access Usenet news, you require access to a news server. A news server receives the daily Usenet newsfeeds and makes them accessible to other systems. Your network may have a system that operates as a news server. If you are using an Internet service provider (ISP), a news server is probably maintained by your ISP for your use. To read Usenet articles, you use a newsreader , a client program that connects to a news server and accesses the articles. On the Internet and in TCP/IP networks, news servers communicate with newsreaders using the Network News Transfer Protocol (NNTP) and are often referred to as NNTP news servers. You can also create your own news server on your Linux system to run a local Usenet news service or to download and maintain the full set of Usenet articles. Several Linux programs, called news transport agents, can be used to create such a server.

You read Usenet articles with a newsreader, such as KNode, Pan, Thunderbird, or tin, which enables you to select a specific newsgroup and then read the articles in it. A newsreader operates like a user interface, letting you browse through and select available articles for reading, saving, or printing. Most newsreaders employ a retrieval feature called threads , which pulls together articles on the same discussion or topic. Several popular newsreaders are listed in Table 5-10.
Table 5-10

Linux Newsreaders

Newsreader

Description

Pan

GNOME desktop newsreader (install with dnf)

KNode

KDE desktop newsreader

Thunderbird

Mail client with newsreader capabilities (X-based)

Sylpheed

GNOME Windows-like newsreader (install with dnf)

slrn

Newsreader (cursor-based) (install with dnf)

Emacs

Emacs editor, mail client, and newsreader (cursor-based) (install with dnf)

tin

Newsreader (command-line interface) (install with dnf)

kwooty

Binary only NZB-based news grabber (install with dnf)

Most newsreaders can read Usenet news provided on remote news servers that use the NNTP. Desktop newsreaders, such as KNode and Pan, have you specify the Internet address for the remote news server in their own configuration settings. Shell-based newsreaders such as tin obtain the news server’s Internet address from the NNTPSERVER shell variable, configured in the .profile file.
NNTPSERVER=news.domain.com
export NNTPSERVER

There are few binary-based newsreaders for Linux that can convert text messages to binary equivalents like those found in alt.binaries newsgroups. There are some news grabbers , which are applications designed only to download binaries. The binaries are normally encoded with RAR compression, which can be decoded by Fedora. Binaries normally consist of several rar archive files, some of which may be incomplete. To repair them, you can use par2. Install the par2cmdline package. A binary should have its own set of par2 files also listed on the new server that you can download and use to repair any incomplete rar files. The principle works much the same as RAID arrays using parity information to reconstruct damaged data.

The slrn newsreader is cursor-based. Commands are displayed across the top of the screen and can be executed using the listed keys. Different types of screens exist for the newsgroup list, article list, and article content, each with its own set of commands. An initial screen lists your subscribed newsgroups with commands for posting, listing, and subscribing to your newsgroups. When you start slrn for the first time, you may have to create a .jnewsrc file in your home directory. Use the following command: slrn -f .jnewsrc -create. Also, you must set the NNTPSERVER variable and make sure it is exported. The slrn newsreader features a utility called slrn-pull that you can use to download articles in specified newsgroups automatically.
Table 5-11

Database Management Systems for Linux

System

Site

LibreOffice Base

LibreOffice.​org database: https://www.libreoffice.org

PostgreSQL

The PostgreSQL database: www.postgresql.org (install with dnf)

MariaDB

Advanced and fully open source version of MySQL (Fedora default) (install with dnf)

Derby

Apache JAVA-based database (install with dnf)

MongoDB

Document-based database (install with dnf)

Hadoop

Apache distributed database for very large data sets

SQLite

Simple SQL database (install with dnf)

Database Management Systems

Several database systems are provided for Fedora, including LibreOffice Base, MariaDB, Derby, and PostgreSQL. MariaDB is derived from MySQL but is fully open sourced. It is the default MySQL type database for Fedora. MariaDB is supported and developed by the original MySQL developers. The original MySQL is owned by Oracle and features commercial versions. You can still install the older noncommercial version of MySQL, if you wish. In addition, commercial SQL database software is also compatible with Fedora. Table 5-11 lists database management systems currently available for Linux.

Derby is a Java-based database developed by Apache. SQLite is a simple and fast database server requiring no configuration and implementing the database on a single-disk file. For small embedded databases, you can use Berkeley DB (db4).

In addition, Fedora also supports document-based non-SQL databases such as MongoDB and Hadoop. MongoDB is a document-based database that can be quickly searched. Hadoop is an Apache project for accessing very large data sets distributed across a network.

SQL Databases (RDBMS)

SQL databases are relational database management systems (RDBMSs) designed for extensive database management tasks. Many of the major SQL databases now have Linux versions, including Oracle, Informix, Sybase, and IBM. These are commercial and professional database management systems. Linux has proved itself capable of supporting complex and demanding database management tasks. In addition, many free SQL databases are available for Linux that offer much the same functionality. Most commercial databases also provide free personal versions.

LibreOffice.​org Base

LibreOffice provides a basic database application, called LibreOffice Base, which can access many database files. You can set up and operate a simple database as well as access and manage files from other database applications. When you start up LibreOffice Base, you will be prompted either to start a new database or connect to an existing one. File types supported include ODBC (Open Database Connectivity), JDBC (Java), Adabas D, MySQL, PostgreSQL, and MDB (Microsoft Access) database files (install the unixodbc package). You can also create your own simple databases. Check the LibreOffice Base page at https://www.libreoffice.org/discover/base/ for detailed information on drivers and supported databases.

MariaDB

MariaDB, included with Fedora, is a true multiuser, multithreaded SQL database server. MySQL is an open source product available free of charge under the GPL license. It is the default MySQL type database for Fedora. MariaDB is supported and developed by the original MySQL developers. MariaDB is designed to be fully compatible with MySQL. The original MySQL is owned by Oracle and features commercial versions. You can obtain current information on MariaDB from its website at https://mariadb.org . You can use the MySQL documentation for MariaDB that is available at https://dev.mysql.com/doc/ .

PostgreSQL

PostgreSQL is based on the POSTURES database management system, although it uses SQL as its query language. PostgreSQL is a next-generation research prototype developed at the University of California, Berkeley. Linux versions of PostgreSQL are included in most distributions, including Red Hat, Fedora, Debian, and Ubuntu. You can find more information about it from the PostgreSQL website at www.postgresql.org . PostgreSQL is an open source project developed under the GPL license.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.191.132.193