Desktop System Setup with Debian GNU/Linux 'Testing/Lenny'
Contents
- Office suite - Word processor, spreadsheet, presentation, layout / desktop publishing (DTP), PDF viewer
- Spellcheckers and Dictionaries
- Fonts / Typefaces
- Databases
- Web editing
- Internet applications (web, email, chat, file transfer, downloading, peer2peer)
- Image viewing
- Image editing
- Colour Management
Introduction
This document intends to provide enough information to get an effective desktop system ready to use using a 'Linux' distribution, providing a concise, point-by-point guide to configuring where it's necessary, with links to further reading if you want to know more.
This desktop system will use the Debian GNU/Linux distribution, the Testing variation, with a Linux version 2.6 kernel, using a GNOME desktop environment. It applies most accurately to 32-bit x86 and 64-bit amd64 architectured computers; most of it but not all will apply to all Debian's supported architectures.
We also provide a menu driven command-line program, called Twix, to help you install most of what is covered in this document and configure some of it. Twix can be downloaded for free from thegoldenear.org/toolbox/unices/twix/.
I try to stick closely to stock Debian, which means adding non-free but being very consertaive about installing software from outside Debian, which is to say that some is but not much. This is as much for reasons of simplicity (so you're not chasing round a load of external sites) as it is for system stability (stability in terms of crashing). This is more difficult with browser add-ons because they provide worthwhile functionality but many don't exist in Debian so this restriction is more relaxed for them. Firefox and Thunderbird extensions, compared with other kinds of software from other sources, have the 'advantage' they're checked for and updated automatically on startup.
This document has related documents:
'Desktop System Setup with Debian 3.1 Sarge';
'Desktop System Setup with Debian 4.0 Etch';
'Server Setup with Debian 3.1 'Sarge''
'Server Setup with Debian 4.0 'Etch''.
A good introduction to Debian is the Debian article at Wikipedia.
This document needs your feedback, it is under constant development so if you have any comments or suggestions please email them to inkwire [at] thegoldenear [dot] org and they can be considered.
Notable changes to this document
- TODO: iwlwifi http://packages.debian.org/lenny/firmware-iwlwifi
- WIP: new wireless drivers
- Added pidgin-otr
- TODO: gnash
- TODO: 'Install the generic version (ipw2100-modules-<kernel-version>-<Debian revision>-<architecture>)' should say: 'Install the generic version (ipw2100-modules-<kernel-series>-<architecture-subseries>)'
- improved 'Spellcheckers and Dictionaries'
- Removed 'ipw3945d' because it's no longer required with the drivers in kernel 2.6.24 and not available in Debian 4.1 Lenny
0.10.0 - 20 December 2007
- Added new section: Digital Video Broadcasting (DVB-T / Freeview)
- Added new section 'Partitioning Disks' with gparted
- Tidied up the scanner section and added scanner firmware information
- I bought a machine with an AMD Athlon 64 CPU (only £90UK) to learn about the amd64 (64-bit) architecture support in Debian. Consequently I've been able to add amd64 information for flashplugin-nonfree, sun-java5-jre and Skype
- Replaced gpdf with evince. gpdf is a leftover from Debian Sarge that doesn't exist any more
- Fleshed out GNOME font installation
- Removed the small amount of XFCE-specific information including packages xpdf and xfmedia. I intended this guide to be as descriptive for XFCE as it is for GNOME but having not managed to spend much time with an XFCE desktop environment I haven't garnered that knowledge. I now think the best place for XFCE desktop information would be a separate guide. The packages for the XFCE desktop environment itself remain.
- Added msttcorefonts to wine
- Added unshield
- Removed mdetect as xserver-xorg no longer uses it
- Added links for information on new xorg auto-configuration
0.9.1 - 18 September 2007
- Replaced totem with totem-gstreamer in 'Multi media players, including DVD' section and removed vlc
- Fonts for everyone need to be able to be read by everyone
- Each login service needs to be configured to use libpam-keyring for it to work
- Removed the Clearlooks skin for mplayer, possibly temporarily, because it doesn't apply to mplayer-nogui
0.9.0 - 13 September 2007
- Added Proprietary Software section with Internet Explorer and Skype
- Added first draught of a Colour Management section
- Added network-manager-openvpn and network-manager-vpnc
- Added thoggen
- Added mjpegtools, ogmtools, subtitleripper, libdvdread3 and libdvdcss2 as supporting software to dvdrip
- Added libpam-keyring
- Removed wine-doc as it's merged into wine
- Removed network-manager, network-manager-gnome now conflicts with it
- Moved pitivi and transcode from video editing ToDo section into recommended
0.8.27 - 1 September 2007 - added ufraw; removed gimp-dcraw
0.8.26 - 31 August 2007 - removed thinkpad-base, tpctl, thinkpad-source, configure-thinkpad, ibm-acpi as they're not available and thus also removed the IBM Thinkpad section.
0.8.25 - 30 August 2007 - mistakenly had Testing security updates repository as 'http://secure-testing.debian.net/debian-secure-testing etch/security-updates main contrib' rather than 'http://security.debian.org testing/updates main'
0.8.23 - 29 August 2007
- Added guide to installing TrueType fonts for print
- Added gnome-vfs-obexftp and incorporated details of new GNOME Bluetooth capabilities
0.8.22 - 25 August 2007
- Removed 915resolution - the Intel driver has gained direct mode-setting code, so in future will use that to enable weird resolutions not referenced in the BIOS to work out of the box. The i915resolution package is now obsolete as it modifies BIOS tables that the new driver does not use. - http://bgoglin.livejournal.com/10214.html
- xserver-xorg-video-intel replaces xserver-xorg-video-i810
- Removed xfce4-iconbox and xfce4-showdesktop-plugin as they're not part of XFCE 4.4
0.8.21 - 24 August 2007
- Added aptitude-doc-<locale>
- Added Thunderbird / Icedove Extensions Adblock Plus, Enigmail, Lightning and Mail Redirect
- Added Firefox Add-on Adblock Plus
- Added icedove-traybiff
0.8.19 - 11 August 2007
- gnome-bluetooth is now available in Debian Testing
- Freeloader replaces bittorrent-gui and bittornado-gui
- Reduced Epiphany to just saying I recommend Iceweasel / Firefox instead
- Removed Lynx from Internet Applications section, it's in Minor Software already
- Added Liferea
- Added Remote Access Clients section in Internet Applications section - tsclient, xvnc4viewer, rdesktop, xnest, openssh-client, secpanel
- Gaim changed its name to Pidgin
- Set Iceweasel / Firefox as the preferred GNOME web browser
0.8.14 - 24 June 2007 - Better described X video drivers; added video graphics utilities radeontool, rovclock, 915resolution, i810switch, matroxset, nvidia-xconfig, nvidia-settings, nvtv
0.8.12 - 23 June 2007 - Tidied up NTFS filesystem support info, adding ntfs-3g and better explaining the various mounting capabilities available
0.8.2 - 29 April 2007 - Added regionset
0.8.1 - 25 April 2007 - Reduced 'CD audio - Playing, digital audio extraction (ripping), copying and encoding' section into just 'Copying Audio CDs'; restored serpentine; removed abcde and jack.
0.8.0 - 24 April 2007 - Added an 'Audio / Sound - decoding, encoding, playing' section; just the packages, more will follow.
0.7.0 - 22 April 2007
- Made Bluetooth section much more complete; added packages gnome-bluetooth, btscanner, obexpushd, obexftp and ussp-push.
- exchanged libnjb1 for libnjb0
- removed mozilla-openoffice.org as it's now only available in unstable & experimental
Glossary
<something> - when something is in angle brackets you should replace this with something particular to your system; you do not use the angle brackets.
command - text in monospaced typeface indicates a command you issue at the command-line or
text you type yourself into a text editor.
$ - when a command-line command is preceded by a dollar it means you run this whilst
logged in as a regular user
# - when a command-line command is preceded by a dollar it means you run this whilst
logged in as super user / root
Debian GNU/Linux
Debian is a GNU operating system with a Linux kernel and collection of currently 8,000 software programs. The GNU operating system is a part of the family of Unix operating systems that date back to 1969, it is a version of Unix written from scratch by a large community of disparately located hackers and made available for free. (Debian is based on System V Unix rather than BSD Unix). This community is a social movement, motivated in part by the desire to provide the world with an operating system free of the restrictions the contemporary software industry imposes upon us.
Debian is one of a number of 'distributions' of GNU/Linux. A distribution is the operating system plus a number of software applications; there are many aspects differentiating distributions. We recommend Debian in particular for these reasons:
- it's available for more computer architectures than any other GNU/Linux distribution (Debian 3.1 supports 12, Debian 3.0 supports 11,
Gentoo: 8, Red Hat Enterprise Linux AS: 6 or 7, Ubuntu: 4, Slackware: 2, Fedora Core: 2, SUSE Linux Professional 9.2: 1; LFS may support more but it's not really a distribution we'd consider an option), which means:
- it doesn't discriminate against as many people as other GNU/Linux distributions
- you can run exactly the same distribution whether you're using a PC, Apple Mac or Sun workstation
- if you're offering it to people as a recommended operating system then you're able to offer the same distribution to as many people as possible, rather than different distributions for different people
- it's not a commercial distribution, so its longevity is more assured than with commercial distributions
- its package management is better than other GNU/Linux distributions, meaning it's easier to find, install, configure, remove and fix software
- it's suitable for using for both desktop and server systems
- it's developed more co-operatively than some other GNU/Linux distributions (e.g. Red Hat / Fedora)
- there are more people involved in its development than with many other GNU/Linux distributions (e.g. Red Hat, Mandrake, Slackware)
- the principles of freedom held by its constitution (the 'Debian Social Contract') are more strongly defined and upheld than those of many other GNU/Linux distributions
Debian is available in a number of different flavours, one of which you subscribe your system to:
- stable - the distribution itself is stable; most suitable where stability of the distribution matters more than having the most up-to-date software. 'Stable' is updated to a major new version every couple of years (i.e. version 3.1 'Sarge', version 4.0 'Etch') and between these major updates only fixes for security vulnerabilities and occasional broken software are made available for stable
- testing - when newly released software has been in 'unstable' for a period of time and when no release-critical bugs exist in it it's made available in 'testing'. This distribution is recommended for desktop systems
- unstable - AKA 'sid; newly released software. called 'unstable' because the software in this distribution is constantly changing
- experimental
Further Information
Debian Weekly News: www.debian.org/News/weekly/
Debian Planet: www.debianplanet.org/
Planet Debian (accumulation of Debian developers' blogs): planet.debian.org/, ianmurdock.com/
Subscribe to the debian-testing-changes mailing list (lists.debian.org/debian-testing-changes/) to be kept informed of changes to Debian Testing.
Debian bug tracking system: www.debian.org/Bugs/
Getting Debian
Downloading from the Internet
Download a snapshot of Testing/Lenny from www.debian.org/devel/debian-installer/. There are various options of what to download, the most useful to choose from are
- 'full CD or DVD images' - the full distribution, on various CDs and DVDs.
Recommended options are:
- multi-arch DVD disc 1 - GNOME installer for 32-bit and 64-bit PC and Apple Mac computers
- GNOME CD disc 1
- 'Netinst minimal bootable CD image' - a 180MB subset of the full set. This is enough to get a (very) basic system installed with the small set of packages included.
- 'Businesscard minimal bootable CD image' - a 40MB subset of the full set. This is enough to get the base system installed, you can then download just those packages you want over the Internet
Choose which architecture you want, the following are the most popular
- i386 - for 32-bit PC-compatible computers (if you don't know then this is probably what you have)
- AMD64 - 64-bit PC. The The Debian GNU/Linux AMD64 HOW-TO may be useful.
- powerpc - for Apple Power Macs
By Post
Debian Stable is available to order on CD/DVD from various vendors, a list of them is available at www.debian.org/CD/vendors/.
A Demonstration
If you want to check-out Debian before installing it, it's possible to download a so-called 'live' version that you boot your computer with, it runs the operating system straight from CD or
USB flash media without touching your existing operating system, allowing you to see exactly what it would look like were it installed on your computer, but is gone when you turn the computer off.
You can get a live Debian image from live.debian.net/.
Hardware support
Debian GNU/Linux device driver check page: kmuto.jp/debian/hcl/
- paste in the results of lspci -n and it will tell you what GNU/Linux drivers exist for the specified hardware.
Linux Hardware Compatibility HOWTO at en.tldp.org/HOWTO/Hardware-HOWTO.html
Hardware4Linux - a web site to lookup and report hardware compatibility and incompatibility with Linux distributions.
The recommended hardware you'll want to run this system on is roughly as follows:
| Scale | CPU | CPU speed | RAM / memory | Desktop environment |
|---|---|---|---|---|
| Low end | Intel Pentium II equivalent | 300MHz | 128MB | XFCE |
| Mid | AMD Duron equivalent | 700MHz | 128MB - 500MB | GNOME |
| High end | anything more | anything more | anything more | GNOME |
Installation
Note that any decision you make during installation that you would rather have made differerently,
can be changed once installation is finished, usually using either dpkg-reconfigure <package-name>.
or tasksel
Your particular system may require some boot options to work around specific known problems, you can see a list of these by pressing some of the Function keys on the keyboard.
To start the installer, either just press [Enter] to start the installer in text mode, or
type installgui and press [Enter] to start the installer in graphical mode.
If you're able to update your Debian system using the Internet, rather than from CD/DVD media, do so, but it's not essential. The best way to ensure this happens is to remove the disc after the initial stage of installation when the disc is ejected. Also, be sure to add a 'source' to download from during installation. If you're using CD/DVD media to install packages from then try to have at least CD discs 1 and 2 (DVD disc 1) and choose to add them all to the sources list when prompted.
Partitioning scheme - You have the following options:
- All files in one partition - will create a root partition (/) and a swap partition
- Separate /home partition - will create a root partition, a /home partition and a swap partition
- Separate /home, /usr, /var, and /tmp partitions - will create partitions for /, /home, /usr, /var, /tmp, and swap
Choose the 'Separate /home partition' scheme.
When choosing the keyboard layout, the default is 'us', there isn't a drop-down list of available options for different languages, for example you would choose 'gb' for UK English.
When you're presented with the option to install one or more predefined collections of software, the 'desktop environment' option will install a fairly useful system (its a massive improvement on what Debian 3.1 installed) but it can be improved upon, which is what this documents all about. You can either choose that option and return to this document for additional software advice, or do it all manually.
The installer's 'desktop environment' option installs the following:
twm, gimp-print, xresprobe, eject, foomatic-filters-ppds, openoffice.org, xserver-xorg-video-all,
openoffice.org-help-en-us, foomatic-db-hpijs, cupsys-driver-gutenprint, cupsys-client, avahi-daemon,
foomatic-db-gutenprint, openoffice.org-thesaurus-en-us, discover1, myspell-en-us, xdg-utils,
hotkey-setup, foomatic-gui, xorg, cupsys-bsd, iceweasel, xserver-xorg-input-all, hplip, desktop-base,
alsa-base, libnss-mdns, xterm, cupsys, alsa-utils, anacron, printconf, hpijs, menu, gimp,
openoffice.org-gcj, foomatic-db-engine.
The installer's 'laptop' option installs the following:
wireless-tools, acpi-support, hibernate, cpufrequtils, acpi, wpasupplicant, pcmciautils, acpid, apmd,
hotkey-setup, anacron, uswsusp, bluetooth
A minimal mail system is installed by default. Through answering the various questions asked of you, configure this mail system with your SMTP server address and other information so that your system has the ability to send email, which is useful for various software to be able to use.
If connected to the Internet do an upgrade after installation, using either Synaptic from within GNOME to
update then install all available updates; or from the command-line aptitude update then
aptitude dist-upgrade.
Further Information
Debian GNU/Linux Installation Guide - Development version: d-i.alioth.debian.org/manual/
Debian GNU/Linux Installation Guide, Debian 4.0 Etch version: www.debian.org/releases/stable/installmanual.
This is also installable as the installation-guide-<architecture> package, for example installation-guide-i386 or installation-guide-amd64.
Basic commands
To use this document you'll need to be able to use these basic commands:
For typing at the command-line from within GNOME you can use the 'Terminal command line', depicted by a monitor with a blank screen but for the 'command-line prompt' on the 'panel'.
To install programs before you have the desktop environment and Synaptic Package Manager installed (which give you a more user friendly environment), login as root
and use aptitude update and [Enter] then when thats done use aptitude install <package name> <package name>
<package name>.
To add a user to a group, from GNOME:
Common functions that relate to specific group membership are available in
Desktop → Administration → Users & Groups → Users → pick user
→ Properties → User privileges.
More specifically groups administration is available from
Desktop → Administration → Users & Groups → Groups → pick group
→ Properties → Group Members → pick user → Add.
If you're logged in as the user for whom you're changing their group membership, you need to log out
and log back in again for it to take effect.
Become the super user by issuing the command su at the commnd-line.
The super user is the user called 'root', you'll be asked for the password for the root user which you set during installation.
When typing at the command-line you have a useful feature called 'command-line completion' available to you. As you type program names or direcoty and file paths,
you can press the [Tab] key to automatically complete such lines. If there is more than one option for a particular line you've so far typed in, command-line completion
will stop at the point the various options differ, pressing [Tab] again will show you the various options available.
If you're at the command-line, logged in as root, wanting to edit configuration files, a simple text editor you can use is nano.
Typing nano <path>/<filename> will load a file; Ctrl+W will search within a file for text;
Ctrl+X will quit, where upon you can choose to save or not.
To reconfigure a package in the same way as was done when it was first installed: dpkg-reconfigure <package name>
Each package has Debian-specific documentation for it in /usr/share/doc/<package name>
To create a 'symbolic link' or 'symlink' (known as a 'shortcut' in Windows):
ln -s location-of-file-to-link-to location-of-symbolic-link
To restart X Windows, the graphical windowing system, use Ctrl+Alt+Backspace.
This is useful when applying changes to video settings in the X Windows configuration file.
To cancel a running command-line program use Ctrl+C.
To quit from a command-line program that is displaying text for you on the screen, such as a man page, use 'q'.
Package repositories, Updates & Upgrades
Package repositories
Debian's package management system, known as 'apt', keeps a list of sources, or repositories, it can retrieve packages from when you choose to install
them, in the file /etc/apt/sources.list.
Sources can be of the form
- CD/DVD media
- Internet server
You define which Debian flavour you're subscribed to
- stable, also referenced by its alias, i.e. Sarge, Etch, Lenny, etcetera
- testing
- unstable
- experimental
These different licencing groups are kept track of
- main
- contrib
- non-free - packages that don't comply with the Debian Free Software Guidelines. Packages can be non-free for any number and gravity of reasons, sometimes for reasons you might consider too slight to prevent you from installing what might be a worthwhile package. You can usually read the copyright file in /usr/share/doc/<package name> to read the restrictions for yourself. There is a non-free tracking system at nonfree.alioth.debian.org/.
There are different providors of Internet server sources
- Debian sources (these for the Testing archive)
- for regular packages and very occasional conservative updates to fix broken features in packages,
use something like this but substitute the domain and directory with that of your nearest Debian mirror:
deb http://ftp.uk.debian.org/debian testing main contrib
(You can addnon-freeif you wish) - security updates - for non-intrusive updates to fix security issues in packages
- secure-testing-master.debian.net/ - use:
deb http://security.debian.org testing/updates main
Security updates are only provided for packages in main, not contrib and non-free.
- for regular packages and very occasional conservative updates to fix broken features in packages,
use something like this but substitute the domain and directory with that of your nearest Debian mirror:
- other peoples' sources - software not officially in Debian or backports of updated software
for stable versions of Debian. For example:
- Christian Marillat's Debian multimedia repository - many useful multimedia packages aren't available in the main Debian (or most other distributions') archive because of copyright and licencing issues. However many of them are available from Christian Marillat's Debian multimedia repository which is available for Debian Testing/Lenny with:
- for alpha, amd64, hppa, i386, ia64 and sparc architectures:
deb http://www.debian-multimedia.org testing main - Package: debian-multimedia-keyring - GnuPG archive key of the debian-multimedia repository.
- for alpha, amd64, hppa, i386, ia64 and sparc architectures:
- Debian Unofficial - debian-unofficial.org/
- packages not available within the official Debian repository due to special licence terms or for political reasons:
deb http://ftp.debian-unofficial.org/debian sarge main contrib non-free restricted
(or choose a mirror) - apt-get.org - apt-get.org - "apt-get.org is intended as a place for people to share useful APT (Advanced Package Tool) sources for the Debian operating system."
- Christian Marillat's Debian multimedia repository - many useful multimedia packages aren't available in the main Debian (or most other distributions') archive because of copyright and licencing issues. However many of them are available from Christian Marillat's Debian multimedia repository which is available for Debian Testing/Lenny with:
Debian installs with a default that uses 'main', it doesn't include 'contrib' or 'non-free'.
To add new CDs to your sources list, other than during installation
- using the command-line:
apt-cdrom add. The disc will be automatically mounted, scanned and its details added to your sources list (if you have trouble you may need to useapt-cdrom add -d /media/cdrom) - using GNOME, either:
- Desktop → Administration → Software Properties
- from within Synaptic Package Manager, choose Edit → Add CD-ROM...
To add new Internet servers to your sources list, other than during installation
- using the command-line:
?. - using GNOME: from within Synaptic Package Manager, choose Settings → Repositories
Package management - finding, adding and removing programs
Debian's software programs, or 'packages', are versions of popular software specifically re-packaged for Debian, and in particular for its package management system (called 'apt') which is used to easily add and remove them. You don't need to independently download, compile and configure software manually - Debian maintainers have done the work for you, making sure the software fits into your system cleanly - an example of doing things the 'Debian Way', a phrase that defines ways of doing things specific to Debian that are usually very efficient and elegant.
Package(s)
- synaptic - www.nongnu.org/synaptic/ - installed by default
- aptitude - installed by default
- aptitude-doc-<locale> (i.e. aptitude-doc-en) - English version of the aptitude user's manual in HTML format.
- gnupg - GNU Privacy Guard, required for the package signing abilities of Apt (should be installed by default because it's suggested by apt)
- debian-archive-keyring - required for the package signing abilities of Apt
- debian-multimedia-keyring - GnuPG archive key of the debian-multimedia repository [Requires additional repository: Debian Multimedia].
Configuration
Synaptic
- General → Marking Changes → Clicking on the status icon makes the most likely action
- General → System upgrade: Smart Upgrade
GDebi
When you click from within the web browser on a .deb file choose Open with → other → /usr/bin/gdebi-gtk.
Usage
From the command-line
aptitude, using switches
aptitude update- refresh package listaptitude dist-upgrade- update everything to the current latest versionsaptitude install <package-name>- install a packageaptitude remove <package-name>- uninstall a packageaptitude purge <package-name>- uninstall a package and remove any associated configuration files
aptitude, used interactively
aptitude
From GNOME
Synaptic Package Manager
(Desktop → Administration → Synaptic Package Manager)
- Reload (from the toolbar) - refresh package list
- Status → Installed (upgradable) → Mark All Upgrades → Apply → Apply - update everything to the current latest versions
- Search (from the toolbar) → enter package-name → choose package → Apply → Apply - install a package
- Search (from the toolbar) → enter package-name → right-click on package → Mark for Removal → Apply - uninstall a package
Further information
Changes in Debian packages
- Package changelogs: changelogs.debian.net/. To view the changelog for the latest version of a particular source package, go to http://changelogs.debian.net/<package name>.
- Packages entering or leaving testing today: bjorn.haxx.se/debian/accepted.html
- Why is package X not in testing yet?: bjorn.haxx.se/debian/
- New packages _probably_ entering Debian: ftp-master.debian.org/new.html
- Incoming packages into Debian Testing: incoming.debian.org/
- debian-devel-changes mailing list - notices about uploaded packages for the unstable distribution: lists.debian.org/debian-devel-changes/
Package configuration - Debconf
Debconf is used as much as possible to configure packages for you (but not exclusively), asking
questions and editing configuration files respectively.
You are asked how to configure debconf upon installation of debconf itself, during Debian's
installtion. You can permanently reconfigure debconf at any time using
# dpkg-reconfigure debconf.
Either way you are asked the following:
"Packages that use debconf for configuration share a common look and feel. You can select the type of user interface they use.
- The dialog frontend is a full-screen, character based interface, while the readline frontend uses a more traditional plain text interface, and both the GNOME and KDE frontends are modern X interfaces, fitting the respective desktops (but may be used in any X environment). The editor frontend lets you configure things using your favorite text editor. The noninteractive frontend never asks you any questions.
What interface should be used for configuring packages?" - "Debconf prioritizes the questions it asks you. Pick the lowest priority of question you want to see:
- 'critical' only prompts you if the system might break. Pick it if you are a newbie, or in a hurry.
- 'high' is for rather important questions
- 'medium' is for normal questions
- 'low' is for control freaks who want to see everything"
To change these per-package installation use # dpkg-reconfigure -p<priority level> <package-name>.
Desktop Environment: GNOME
Packages(s)
Choosing to install a 'desktop environment' in the Debian installer (or 'Tasksel', as the particular program that is running at that point is known), installs a GNOME, KDE or XFCE desktop environment depending on which installer you use. This document describes individual packages to install for a GNOME desktop environment for a vaguely modern computer. For an older computer you're advised to use XFCE instead of GNOME.
Install these for a basic desktop environment without major applications:
- gdm - GNOME Display Manager - handles logging in
- gnome - this installs a lot of extra applications (i.e. gnome-office, which includes abiword-gnome, dia-gnome, gimp, gnumeric, inkscape or sodipodi, planner and gnucash. If you need to save disk space you could instead install gnome-desktop-environment. Depending on the environment the system is to be used in you may want to remove gnome-games.
- menu - generates programs menu for all menu-aware applications
- x-window-system-core
- update-manager - manages apt updates - gives a simplified interface to updating packages; can download updates in the background without installing them. These are configured either from within GNOME using Desktop → Administration → Software Properties, or Synaptic's Repositories section.
- update-notifier - system tray notification of available updates.
- baobab - analyses disk usage
Configuration
Per-user configuration
- Desktop → Preferences →
- Keyboard → Layouts →
- Selected layouts - replace U.S. English with whichever is appropriate, if different (i.e. United Kingdom, which is called 'gb' during installation)
- Keyboard model: European keyboards are probably 'Generic 105-key (intl) PC' and US keyboards 'Generic 104-key PC'
- Screensaver - Display Modes → Mode - Blank Screen Only
- Keyboard → Layouts →
Further Information
FootNotes: www.gnomedesktop.org/
The GNOME Journal: www.gnomejournal.org
Jordi Mallach's blog: oskuro.net/blog/freesoftware
Ben Maurer's blog: codeblogs.ximian.com/blogs/benm/
Various channels on irc://irc.gnome.org/
Planet GNOME, an aggregate blog of GNOME developers: planet.gnome.org/
GNOME changelog
- platform - http://ftp.gnome.org/pub/gnome/platform/MAJOR_VERSION_NUMBER/EXACT_VERSION_NUMBER/NEWS i.e. ftp.gnome.org/pub/gnome/platform/2.12/2.12.3/NEWS
- desktop - http://ftp.gnome.org/pub/gnome/desktop/MAJOR_VERSION_NUMBER/EXACT_VERSION_NUMBER/NEWS i.e. ftp.gnome.org/pub/gnome/desktop/2.12/2.12.3/NEWS
- bindings - http://ftp.gnome.org/pub/gnome/bindings/MAJOR_VERSION_NUMBER/EXACT_VERSION_NUMBER/NEWS i.e. ftp.gnome.org/pub/gnome/bindings/2.12/2.12.3/NEWS
Bug reporting
GNOME's Bug Database: bugzilla.gnome.org/
Desktop Environment: XFCE
This is an alternative to GNOME which will run well on very old computers that are too small and slow for GNOME, such as a 233MHz CPU with 128MB RAM.
Packages(s)
- xfce4 - www.xfce.org
- xfce4-datetime-plugin
- xfce4-minicmd-plugin
- xfce4-mixer
- xfce4-terminal
- xfprint4
- xfce4-appfinder
Configuration
? XFCE's default toolbar comes with shortcuts for some specific applications, such as the Mozilla suite, which you may not have installed as you may use alternative programs, such as IceWeasel / Mozilla Firefox, and so they only serve as an example and are thus worth spending some time changing and adding to with your most used programs.
X Windows: X.org
'X Windows' creates the graphical windows on your screen.
Packages(s)
- x-window-system-core - X.Org - www.x.org - this is the xserver-xorg package plus other useful packages. This also installs the xserver-xorg-video-all package which installs the full suite of free video driver packages such as xserver-xorg-video-ati, xserver-xorg-video-intel, xserver-xorg-video-mga, xserver-xorg-video-nv, xserver-xorg-video-sis
- Utilities for ATI video
- radeontool - control ATI Radeon based laptops' backlight and external output functions. "WARNING: Radeontool code has not been completely audited and may contain bugs that could damage your hardware. Use at your own risk."
- rovclock - controls ATI Radeon frequency rates. Underclocking the Radeon chip saves power and can prevent the fan from running.
- Utilities for Intel video
- i810switch - www16.plala.or.jp/mano-a-mano/i810switch.html - Enables/disables video output to CRT/LCD on i810, i830, i845, i855 video hardware. The i810switch command-line program enables/disables the output to the CRT display and LCD, depending on the i810 graphics controller hardware. Such hardware is found on some laptops. The i810rotate command-line script toggles the output between three states: LCD only, LCD + CRT, and CRT only.
- Utilities for Matrox video
- matroxset - switches output modes, including TV out. Can be used to map heads to outputs, change the output mode to monitor, TV, or digital flat panel, display information about horizontal and vertical blanking, and view or modify a number of card specific controls.
- Utilities for Nvidia video
- nvidia-xconfig - The NVIDIA X Configuration Tool, nvidia-xconfig, manipulates X config files, specifically for use by the NVIDIA Linux graphics driver.
- nvidia-settings - nvidia-settings configures the NVIDIA Linux graphics driver. It communicates with the NVIDIA X driver, querying and updating state as appropriate. Values such as brightness and gamma, XVideo attributes, temperature and OpenGL settings can be queried and configured. [contrib]
- nvtv - controls the TV encoder chips on NVidia cards, giving tv-out with a wide range of resolutions and sizes, including "overscan" modes. It even works with the free nv drivers.
Utilities
Configuration
Video Driver Choice
The Debian Installer, or dpkg-reconfigure xserver-xorg should auto-detect your video graphics adapter and configure X.org with the appropriate driver, such as from those below. You can further configure X.org for your particular adapter with options specific to the driver.
- ATI - provided by package xserver-xorg-video-ati
- 'radeon' - supports PCI and AGP video cards based on the following ATI chips: R100 (Radeon 7200), RV100 (Radeon 7000(VE), M6), RS100 (Radeon IGP320(M)), RV200 (Radeon 7500, M7, FireGL 7800), RS200 (Radeon IGP330(M)/IGP340(M)), RS250 (Radeon Mobility 7000 IGP), R200 (Radeon 8500, 9100, FireGL 8800/8700) RV250 (Radeon 9000PRO/9000, M9), RS300 (Radeon 9100 IGP), RS350 (Radeon 9200 IGP), RS400 (Radeon XPRESS 200/200M IGP), RV280 (Radeon 9200PRO/9200/9200SE, M9+), R300 (Radeon 9700PRO/9700/9500PRO/9500/9600TX, FireGL X1/Z1 (2D only)), R350 (Radeon 9800PRO/9800SE/9800, FireGL X2 (2D only)), R360 (Radeon 9800XT (2d only)), RV350 (Radeon 9600PRO/9600SE/9600, M10/M11, FireGL T2 (2D only)), RV360 (Radeon 9600XT (2d only)), RV370 (Radeon X300, M22 (2d only)), RV380 (Radeon X600, M24 (2d only)), RV410 (Radeon X700, M26 PCIE (2d only)), R420 (Radeon X800 AGP (2d only)), R423/R430 (Radeon X800, M28 PCIE (2d only)), R480/R481 (Radeon X850 PCIE/AGP (2d only))
- 'r128' - supports all ATI Rage 128 based video cards including the Rage Fury AGP 32MB, XPERT 128 AGP 16MB and XPERT 99 AGP 8MB
- Intel - 'intel' - provided by package xserver-xorg-video-intel - supports the following chipsets: i810, i810-DC100, i810e, i815, i830M, 845G, 852GM, 855GM, 865G, 915G, 915GM, 945G, 945GM, 965G, 965Q and 946GZ
- Matrox - 'mga' - provided by package xserver-xorg-video-mga - supports PCI and AGP video cards based on the following Matrox chipsets: MGA2064W, MGA1064SG (Mystique), MGA2164W (Millennium II), G100 (Productiva G100), G200 (Millennium G200 and Mystique G200), G400 (Millennium G400, Millennium G400 MAX, Millennium G450, and Marvel G450 eTV), G550 (Millennium G550 and Millennium G550 Dual DVI)
- Nvidia - 'nv' - provided by package xserver-xorg-video-nv - supports PCI, PCI-Express and AGP video cards based on the following NVIDIA chips: NV3 (RIVA 128); NV4 (RIVA TNT); NV5 (RIVA TNT2); NV10 (GeForce 256, QUADRO); NV11, NV15 (GeForce2, QUADRO2); NV20 (GeForce3, QUADRO DCC); NV1A, NV1F (nForce, nForce2); NV17, NV18, NV25, NV28 (GeForce4, QUADRO4); NV30, NV31, NV34, NV35, NV36, NV37, NV38 (GeForce FX, QUADRO FX); NV40, NV41, NV43, NV44, NV45, C51 (GeForce 6XXX); G70, G71, G72, G73 (GeForce 7XXX).
This driver doesn't offer 3D acceleration.
wiki.debian.org/NvidiaGraphicsDrivers - SiS and XGI - 'sis' - provided by package xserver-xorg-video-sis - supports PCI, AGP and PCIe video cards based on the following chipsets:
SiS5597/5598, SiS530/620, SiS6326/AGP/DVD ('old series'); SiS300/305, SiS540, SiS630/730 ('300 series'); SiS315/E/H/PRO, SiS550/551/552, SiS650/651/661/741, SiS330 (Xabre), SiS760/761, XGI Volari V3/V5/V8, XGI Volari Z7 ('315/330/340 series'). - And others, the full list is at www.x.org/wiki/VideoDrivers
New Auto-Configuration
Debian Wiki - XStrikeForce - HowToRandR12: wiki.debian.org/XStrikeForce/HowToRandR12
Brice Goglin's Blog - Debian/X.org notes - Modesettings/RandR-1.2 improvements with Intel driver 2.0 and others: bgoglin.livejournal.com/10214.html
Brice Goglin's Blog - Debian/X.org notes - Dual-Head config breaks with xserver-xorg-video-intel: bgoglin.livejournal.com/9846.html
Brice Goglin's Blog - Debian/X.org notes - Intel driver 2.0 does not find my nice mode/resolution: bgoglin.livejournal.com/10423.html
Utilities
Restart X: Ctrl+Alt+Backspace
dpkg-reconfigure xserver-xorg
- this is the configuration program run by the debian-installer, but with priority 'high'
rather than the more common 'medium'. If you're going to reconfigure X this way then install the following packages first:
- read-edid - detects VESA Plug'n'Play monitors, and video cards on the i386 architecture, as used by dpkg-reconfigure xserver-xorg, for inclusion in the X configuration file.
xorgconfig - text based question and answer configuration
xorgcfg - graphical configuration
xvidtune - video mode tuner for Xorg. "When given one of the non-toolkit options,
xvidtune provides a command line interface to either switch the video mode.
Without any options (or with only toolkit options) it presents the user with various buttons and sliders
that can be used to interactively adjust existing video modes. It will also print the settings in a format
suitable for inclusion in an xorg.conf file."
Video Resolution
If the video resolution isn't automatically set correctly then after installation you should tune the X configuration to best suit the monitor. Using the original documentation that came with the monitor, or the web, find the horizontal frequency (in kHz), vertical frequency (in Hz), applicable resolutions and possibly 'mode line'. You usually choose the name of the driver that relates to all the manufacturer's monitors.
To decrease the resolution temporarily you can cycle through any configured resolutions with Ctrl+Alt+[+|-] (the keypad + or - keys). The size of the desktop will stay constant (e.g. 1280x1024) but your window into it will be smaller (e.g. 1024x768). You can thus still access all of your desktop by moving the mouse to the edges of the screen, which will scroll the smaller window over the larger desktop.
Configuration file
/etc/X11/xorg.conf
Configuration information specific to each video chipset and other devices is provided in info pages for specific video card drivers, i.e.
info intelinfo mgainfo nvinfo radeoninfo sis
Thorough explanation of mouse configuration: /usr/share/doc/xserver-xorg-input-mouse/README.gz (or, using dwww localhost.localdomain/cgi-bin/dwww?type=file&location=/usr/share/doc/xserver-xorg-input-mouse/README.gz)
Set the correct login screen typeface size
- Run
xdpyinfo - In the 'dimensions' line, there will be something like:
dimensions: 1280x768 pixels (266x161 millimeters)
resolution: 122x121 dots per inch - Using a ruler, measure the size of the visible screen of the monitor. If it matches the millimeters reported by xdpyinfo, then it is set up correctly and you need do no more.
- If it is not, edit the '
Monitor' section of the X configuration file, which should look something like:
Section "Monitor"
Identifier "Generic Monitor"
EndSection - Add a
DisplaySizesetting with the actual size of your viewable area, such as:
DisplaySize 372 277 - Restart X
Set the correct GNOME screen typeface size
You may however find this gives typefaces that are too small.
- Run
xdpyinfo | grep resolution - Note one of the two numbers (you should probably choose the higher of the two if they differ)
- Go to Desktop → Preferences → Font → → Details → Resolution - set it to the number you chose if different from the number already there
Troubleshooting
Log file: /var/log/Xorg.0.log
Further Information
Changelogs for each video card driver are in
/usr/share/doc/xserver-xorg-video-<driver name>/changelog.Debian.gz
X.org Foundation: wiki.x.org/ and x.org/
gravityboy's Journal (Debian developer): www.livejournal.com/users/gravityboy/
Environment Configuration
Remove annoying console beeps
Within the command-line environment
For Bash / GNU Readline: echo 'set bell-style none' >> ~/.inputrc
For all programs, from the system console: setterm -blength 0
Within the X window system
For all programs:xset b off
Within GNOME
Desktop → Preferences → Sound → System Beep →
- Enable system beep - off
- Visual system beep - on
Minor Software
Package(s)
- tree
- less
- wipe - securely erase files
- pwgen - Automatic password generation. pwgen generates random, meaningless but pronounceable passwords. These passwords contain either only lowercase letters, or upper and lower case mixed, or digits thrown in. Uppercase letters and digits are placed in a way that eases remembering their position when memorizing only the word.
- lynx - lynx.browser.org - command-line web browser
- nmap - network port scanner - insecure.org/nmap/
- traceroute - dmitry.butskoy.name/traceroute/ - this version is the Linux version by Dmitry Butskoy, different to the BSD version by Van Jacobson included with previous versions of Debian.
- tcpdump - www.tcpdump.org
Backup
Package(s)
- sbackup - sbackup.sourceforge.net/ - Simple Backup Suite for desktop use. A set of backend backup daemon and Gnome GUI frontends that provide a simple yet powerful backup solution for common desktop users. Backups can be written to local directory or remote servers using Gnome VFS technology. A fine control is possible regarding what folders and files to backup. Files can be excluded even with a set of regular expressions. Regular backups can be scheduled.
Configuration
Note that Simple Backup requires use of sudo.
Usage
Configure and use:
Desktop → Administration → Simple Backup Config
Restore:
Desktop → Administration → Simple Backup Restore
Spellcheckers and Dictionaries
Package(s)
- Aspell for Abiword/Evolution/Gaim
- aspell - version 0.60.4 - Aspell spellchecker
- aspell-doc - version 0.60.4 - Aspell spellchecker documentation
- aspell-<locale> (i.e. aspell-en - version 6.0) - Aspell spellchecker dictionary
- Myspell for OpenOffice/Firefox/Thunderbird
- The actual Myspell spellchecker is built in to the above programs so you don't need to install the spell checker itself for them (OpenOffice actually uses Hunspell but it's backwardly compatible with Myspell)
- myspell-<locale> (i.e. myspell-en-gb - version 2.0.4 RC1) - Myspell spellchecker dictionary. Once installed, the above programs will automatically begin to use them
Fonts / Typefaces
Package(s)
- ttf-bitstream-vera - The Bitstream Vera family of free TrueType fonts. They fully cover Western European languages (ISO-8859-1, ISO-8859-15) and Turkish (ISO-8859-9). They also include a selection of mathematical and other symbols and some limited support for Eastern European languages (parts of ISO-8859-2). Non-latin scripts are not supported. Includes Bitstream Vera Sans, Bitstream Vera Sans Mono, Bitstream Vera Serif.
- ttf-dejavu - dejavu.sourceforge.net/wiki/index.php/Main_Page - The DejaVu fonts are a font family based on the Bitstream Vera Fonts release 1.10. It may be possible to replace Bitstream Vera with this, making some changes in Desktop → Preferences → Font, but I haven't yet fully tested this. Includes DejaVu Sans, DejaVu Sans Mono, DejaVu Sans Condensed (experimental), DejaVu Serif, DejaVu Serif Condensed (experimental)
- ttf-freefont - Freefont Serif, Sans and Mono Truetype fonts. A set of free high-quality TrueType fonts covering the UCS character set. These fonts are similar to the (in)famous Helvetica, Times and Courier fonts.
- ttf-mikachan - handwritten Japanese Truetype font. Don't know where the Japanese comes into it.
- msttcorefonts - installer for Microsoft TrueType core fonts, which it downloads from the Internet. Includes Andale Mono, Arial Black, Arial, Comic Sans MS, Courier New, Georgia, Impact, Times New Roman, Trebuchet, Verdana and Webdings.
Recommended for wine because "we should be able to eliminate a number of font related bugs by shipping with these fonts. Apps like Picasa [1] appear to ask for a specific font name, others even reference the font file directly.". [contrib]
(xfonts-scalable, installed by default, at least includes Bitstream Charter)
Configuration
Fonts for all users are located in /usr/share/fonts/
- truetype/ - TrueType fonts
- type1/ - PostScript fonts, for GhostScript(?)
- X11/ - X fonts
(when should they instead be in /usr/local/share/fonts/truetype?)
Fonts just for particular users (just for print?) are located in ~/.fonts/
list installed fonts (at least, those known of by the fontconfig system):
fc-list
GNOME
GNOME has a location you can copy fonts to to install them: fonts://. This seems to be a compendium of all the system fonts in /usr/share/fonts/truetype/ and below and your personal fonts in ~/.fonts.
Installing Individual TrueType Fonts (TTF) For Print
If a font isn't available in a Debian package you can install individual fonts from other sources.
For a particular user
- As yourself, if it doesn't already exist create
~/.fonts - As yourself, copy/save .ttf font file(s) to
~/.fonts/ - Regenerate the fonts cache:
$ fc-cache -fv ~/.font
For all users
- As root, copy .ttf font file(s) to
/usr/share/fonts/truetype/<my font's directory> - Regenerate the fonts cache:
# fc-cache -fv
(or log out and log in again) - Set permissions on font file(s) such that everyone can read them:
chmod 644 /usr/share/fonts/truetype/<my font's directory>/ -r
GNOME
For a particular user
If you, logged in as an ordinary user, drag and drop or copy and paste fonts to fonts:// it saves them in ~/.fonts and they're subsequently only available to you. You won't see the font appear in the list, though if you try to copy it again GNOME will say it's there and it is actually there. I haven't tried but you may have to logout and login again to see them in the list.
For all users
Presumably you need to be root to put fonts there to be available for the system, rather than for you individually? There's no way to 'become root' through the user interface so you have to run Nautilus from the command-line as root (but will they actually be saved in root's ~/.fonts or in /usr/share/fonts/truetype/?)
Comment
Does any or all of this apply to non-truetype fonts?
If I select to download a font from the web, it defaults to opening in gnome-font-viewer but you can't do anything in gnome-font-viewer other than look at it, which seems kind of pointless, what you want is buttons to 'install' and be asked 'Install for just you' or 'Install for all users', with the latter asking for the root password.
(See Font Sadness by Aaron Bockover, GNOME Bug 495510 - enable gnome-font-viewer to install fonts and GNOME Bug 86598 - Install new fonts through the font dialog.
Further reading
List of other Bitstream Vera derivatives: dejavu.sourceforge.net/wiki/index.php/Bitstream_Vera_derivatives
Unicode Font Guide For Free/Libre Open Source Operating Systems: unifont.org/fontguide/
Issue this command at the command-line to see all available TrueType fonts:
apt-cache search ttf-
TrueType Fonts in Debian mini-HOWTO by Bear Giles: tldp.org/HOWTO/TT-Debian.html#toc1 (from 2000 so might be outdated)
Linux fonts (mostly X11): sabi.co.uk/Notes/linuxFonts.html
http://bugzilla.gnome.org/show_bug.cgi?id=160547
Office suite - Word processor, spreadsheet, presentation, database, layout
Package(s)
- Office suite, either
- OpenOffice.org
(openoffice.debian.net, openoffice.org/)
- openoffice.org - word processor, spreadsheet, presentation, database
- openoffice.org-help-<locale> (i.e. openoffice.org-help-en-gb, openoffice.org-help-en-us) - user help
- openoffice.org-l10n-<locale> (i.e. openoffice.org-l10n-en-gb, openoffice.org-l10n-en-us) - localization of OpenOffice.org in specific languages - by default the openoffice.org package will install the openoffice-l10n-<locale> for your default locale, choose this if you want additional languages. Contains user interface, templates and autotext features. (not all this is available for all possible languages). You can switch user interface language using the locales system.
- openoffice.org-thesaurus-<locale> (i.e. openoffice.org-thesaurus-en-us / openoffice.org-thesaurus-en-gb (they're the same package))
- openoffice.org-gnome - GNOME Integration for OpenOffice.org.
Contains the Gtk plugin for drawing OpenOffice's widgets with Gtk+ and a Gtk/GNOMEish File Picker when running under GNOME,
GNOME VFS support and a GConf backend. It also contains a QuickStarter for the "notification area".
(The widgets, dialogs and quickstarter are provided by the openoffice.org-gtk package, which it depends on;
the ooqstart-gnome package has been replaced by openoffice.org-gtk).
XFCE users will want to install just the openoffice.org-gtk package instead. - openoffice.org-evolution - allows OpenOffice.org to access Evolution 2 address books
- Note that installing locale and language-specific packages may in future be superceded by bug 325218 - 'Completed and rationalized language and language-desktop tasks'.
- See also Spellcheckers and Dictionaries
- If you're using Openoffice Calc for a spreadsheet you might want to remove gnumeric
- GNOME Office; the 'gnome-office' package, part of the 'gnome' package, includes the following and more
- abiword-gnome, abiword-plugins, abiword-plugins-gnome, abiword-doc - word processor
- gnumeric, gnumeric-doc - spreadsheet
- (also includes evolution - groupware client, including email)
- OpenOffice.org
(openoffice.debian.net, openoffice.org/)
- Scribus (1.3 'stable' unstable development version)
- scribus-ng - layout / desktop publisher
- scribus-template - additional templates for Scribus
- scribus-ng-doc - english-language documentation for the internal help browser [Section: non-free]
- evince - www.gnome.org/projects/evince/ - PDF viewer. [Version: 0.4.0]
Configuration
OpenOffice.org
To enable the GNOME file picker, with useful shortcuts to various places, rather than OpenOffice's default which lacks such usefulness: Tools → Options... → OpenOffice.org → General → Open/Save dialogs → Use OpenOffice.org dialogs - off
Further Information
About OpenOffice packages in Debian: openoffice.debian.net
Debian-OpenOffice IRC discussion channel: irc://irc.freenode.net#debian-oo
Database
Apart from using OpenOffice, this information is based on using a MySQL database.
Package(s)
- openoffice.org - see the OpenOffice section
- mysql-client - text based client for accessing a remote MySQL server. This package is mutually exclusive with mysql-server.
- mysql-server - "MySQL is a fast, stable and true multi-user, multi-threaded SQL database server. SQL (Structured Query Language) is the most popular database query language in the world. The main goals of MySQL are speed, robustness and ease of use.". This package is mutually exclusive with mysql-client. See the MySQL section in our Server Setup with Debian Sarge document.
- mysql-admin - "GUI tool for intuitive MySQL administration MySQL Administrator is a powerful visual administration console that enables you to easily administer your MySQL environment and gain significantly better visibility into how your databases are operating. MySQL Administrator integrates database management and maintenance into a single, seamless environment, with a clear interface."
- mysql-query-browser - "Official GUI tool to query MySQL database MySQL Query Browser is a visual database query tool with a syntax highlighing SQL editor."
- mdbtools - JET / MS Access database (MDB) tools
If you're using a remote database and want applications to be able to interface with it
- ODBC database connector - ODBC is the Open Database Connectivity abstraction layer which is understood by a variety of database tools that cannot talk to the databases directly.
- unixodbc - www.unixodbc.org/ - includes ODBC Driver Manager (shared library), isql (utility). [Interface: command-line; Version: 2.2.11] [WOULD BE BETTER IF IT RECOMMENDED unixodbc-bin: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=240035; and it needs a better package descirption than "ODBC tools libraries - Binaries and libraries from the unixODBC package."]
- unixodbc-bin* - OR MERGEANT? - www.unixodbc.org/ - Graphical tools for ODBC management and browsing. Three graphical applications for use with unixODBC, the Open DataBase Connectivity suite: ODBCConfig, a graphical configuration tool for managing database drivers and access to individual databases; DataManager, a simple browser and query tool for ODBC databases; and odbctest, a tool for testing the ODBC API itself. [Interface: graphical (QT); Version: 2.2.11]
WHICH PACKAGE BROUGHT ODBCINST? IT GIVES EVERY INDICATION OF HAVING ARRIVED WITH UNIXODBC BUT DPKG -L RECKONS NOT: odbcinst1debian1 - http://packages.debian.org/etch/odbcinst1debian1
- ODBC database driver - allow ODBC-enabled applications to access various databases
[ALSO COVER iODBC?]
- libmyodbc - MySQL ODBC driver for connecting to MySQL SQL database servers using ODBC. This provides /usr/lib/odbc/libmyodbc.so, an example for /etc/odbcinst.ini at /usr/share/libmyodbc/odbcinst.ini and an example for odbc.ini at /usr/share/doc/libmyodbc/examples/odbc.ini. [Version: 3.51.11] [WHY DOESN'T IT COPY THE EXAMPLE odbcinst.ini TO /etc?]
- tdsodbc* - FreeTDS ODBC driver for connecting to Microsoft SQL and Sybase SQL servers (using their Tabular DataStream protocol).
- odbc-postgresql* - odbc.postgresql.org/ - ODBC driver for PostgreSQL [THIS PACKAGE DESCRIPTION IS BRILLIANT. I SHOULD EMAIL THEM TO CONGRATULATE THEM. Debian should have a package descrption policy, one of the tenets should be that no prior knowledge can be assumed so a synopsis must be given of the context of this package. this might even be able to be automated using the tags]. [Interface: daemon]
Usage
Connecting to a remote database - create a data source
Register data sources so that applications such as OpenOffice know of them.
manually - THO IT SEEMS WORTH NOT CREATING IT BY HAND AS THERE ARE SOME THINGS TO KEEP TRACK OF IN THE FILE THAT AUTOMATED TOOLS DO FOR YOU
ODBC driver definition file location: /etc/odbcinst.ini
ODBC driver definition file syntax for libmyodbc:
[MySQL]
Description = MySQL driver
Driver = /usr/lib/odbc/libmyodbc.so
Setup = /usr/lib/odbc/libodbcmyS.so
CPTimeout =
CPReuse =
ODBC user data source definition file location: ~/.odbc.ini
ODBC system data source definition file location: /etc/odbc.ini
ODBC data source file syntax for MyODBC:
[MySQL-test]
Description = MySQL database test
Driver = MySQL
Server = <server hostname>
Database = <database name>
User = <database username to connect as>
Password = <database password to connect as>
Using the command-line
Driver: odbcinst -i -d -f /usr/share/libmyodbc/odbcinst.ini Data source: System: odbcinst -i -s -l -f template.ini User: odbcinst -i -s -h -f template.ini SHOULD THIS COMMAND EVEN BE USED BY A PERSON? SHOULD THIS FILE EVEN BE CREATED MANUALLY?Using GNOME
DRIVER...To create an ODBC data source just for the particular user you're logged in as, Applications → Debian → Apps → Databases → ODBCConfig → User DSN.
To create an ODBC data source for all users of this system, run ODBCConfig from the command-line whilst root, then choose 'System DSN'.
Choose Add → choose a driver → OK → Enter at least the following:
- DSN - data source name - a name you want to give it
- Server - the IP address or hostname of the server with the database
- Database - the name of the database on the server
mysql-client accessing a remote database
Use the MySQL client to work with MySQL in general: mysql -h <hostname> -u <username> -p
Then enter the password for that particular user when prompted to do so.
Access a particular database: mysql -h <hostname> -u <username> -p <your database name>
Then enter the password for that particular user with that particular database when prompted to do so.
Basic MySQL commands
mysql> SHOW databases; - show all databases you have access to
mysql> CREATE database <database>; - create a new database
mysql> USE <database>; - open a databaase so you can use it
mysql> DROP database <database>; - delete an existing database
mysql> CREATE TABLE <table> (<field> <type>); - create a table, with fields
mysql> SHOW tables; - show existing tables in the current database
mysql> DROP TABLE <table>; - delete a table
mysql> DESCRIBE <table>; - display structure information about an existing table
mysql> ALTER table <table> <alter specification>; - change the structure of an existing table
mysql> INSERT INTO <table> VALUES ('a','b','1999-03-30',NULL); - add data to a table
mysql> SELECT what_to_select [and optionally operate upon that, displaying the results] FROM which_table WHERE conditions_to_satisfy;
- display the contents of fields according to certain criteria
mysql> UPDATE <table> SET <field> = '<value>' WHERE <another field> = '<another value>';
- change the contents of existing fields
mysql> ALTER TABLE <table> DROP <row>; - delete rows
mysql> DELETE from <table> ...; - delete rows
Methods of automatically loading data into a MySQL database
mysql> LOAD DATA LOCAL INFILE '/path/pet.txt' INTO TABLE pet;(useLINES TERMINATED BY '\r\n';if it's coming from a Windows file)mysql < <batch filename>$ mysql -h host -u user -p < <batch filename>mysql> source <batch filename>;mysql> \. <batch filename>
Further Information
MySQL 3.23, 4.0, 4.1 Reference Manual: dev.mysql.com/doc/refman/4.1/en/
MySQL 5.0 Reference Manual: dev.mysql.com/doc/refman/5.0/en/
GNOME-DB: www.gnome-db.org/
Web editing
Package(s)
- For a WYSIWYG web editor your options are probably limited to Iceape Composer (AKA Seamonkey Composer) or OpenOffice Writer if you want packages that are available in Debian. Otherwise there are Debian packages available from the upstream web site for Nvu (www.nvu.com/) and similarly source files for KompoZer (kompozer.net/). In future there'll be Mozilla Composer.
- Bluefish - bluefish.openoffice.nl - an editor for experienced web designers and programmers. It supports many programming and markup languages, but focuses on editing dynamic and interactive websites.
- iceweasel-dom-inspector (AKA firefox-dom-inspector) - tool for inspecting the DOM of web pages in IceWeasel / Firefox. This is of great use to people who are doing web page development or Mozilla chrome development.
- mozilla-venkman - "Javascript debugger for Mozilla and IceWeasel / Firefox. It can be used to debug either Javascript embedded in web pages, or even Mozilla's interface and extensions."
- mozilla-checky - Online validation and analysis services for IceWeasel / Firefox and Mozilla.
The Checky plug-in is a simple Interface for web content and resource
developers to free and commercial online Validator and Checker services.
Checky adds a submenu to IceWeasel / Firefox and Mozilla's context menu that allows you to run whatever page you're on through one of (currently) 24 different online validation and analysis services. Checky-Agent can be activated from the Checky menu or by simply pressing the SHIFT+F12 keys. So, for example, you could run your page against the W3C's markup and CSS validators, the Web Design Group's HTML Validator, and Watchfire's Bobby with a single keystroke and display the results in a new browser window or tab. - w3c-markup-validator - validator and link checker. Gives you the W3C's validators and link checker at localhost/w3c-markup-validator/checklink (or at the address of your chosen server if you install it to a central server
- tidy
- tidy-doc
- weblint-perl - A syntax and minimal style checker for HTML. This is a perl script which picks fluff off html pages
- php4-cli - command-line interpreter for the php4 scripting language. This package provides the /usr/bin/php4 command interpreter, useful for testing PHP scripts from a shell.
- libxml2-utils - XML utilities. This package provides xmllint, a tool for validating and reformatting XML documents, and xmlcatalog, a tool to parse and manipulate XML or SGML catalog files.
Internet applications
Package(s)
- IceWeasel / Mozilla Firefox -
www.mozilla.org/en/products/firefox/
- web browser.
Recommended in place of epiphany-browser
(www.gnome.org/projects/epiphany/)
because Epiphany is so lacking in useful features.
- iceweasel-gnome-support
- iceweasel-l10n-<locale> - localisations for your spoken language (i.e. iceweasel-l10n-en-gb)
- latex-xft-fonts - Xft-compatible versions of some LaTeX fonts, for MathML documents;
- flashplugin-nonfree - Adobe Flash Player plugin installer. [contrib (Adobe Flash Player itself is non-free, see the Adobe Flash Player End User License Agreement for usage terms, or the Adobe Player Licensing page for redistribution terms)] [Architecture: i386 / 32-bit only, Adobe don't yet provide a 64-bit version; 9.0.48.0.2 adds AMD64 support]
- Add-ons
- Adblock Plus - adblockplus.org - block adverts. Not available in a Debian archive so download the XPI file from adblockplus.org/en/installation and use Iceweasel / Firefox's Tools → Add-ons to install per-person.
- Email client. Choose from these:
- Evolution - gnome.org/projects/evolution/ - groupware client (including email)
- evolution
- evolution-exchange - Microsoft Exchange 2000 and 2003 plug-in
- evolution-webcal - A GNOME URL handler for web-published ical calendar files, which integrates with Evolution. It allows you to subscribe to a published calendar simply by clicking on a webcal: URL.
- openoffice.org-evolution - allows OpenOffice.org to access Evolution 2 address books. Note: this depends upon OpenOffice so only install if you also want or already have OpenOffice
- IceDove / Mozilla Thunderbird -
www.mozilla.com/thunderbird/ -
Icedove is an unbranded Thunderbird mail client suitable for free distribution.
See Wikipedia's article about IceWeasel
for background on why Thunderbird in Debian is called IceDove.
- icedove-gnome-support - GNOME integration to Icedove
- icedove-locale-<locale> (i.e. icedove-locale-en-gb) - localised language package of menus and messages for IceDove
- icedove-traybiff - provides notification of new email arrival in Icedove through the GNOME system tray.
- See also Spellcheckers and Dictionaries
- Extensions
- Adblock Plus - adblockplus.org - block adverts. Not available in a Debian archive so download from adblockplus.org/en/installation and use IceDove / Thunderbird's Tools → Extensions to install per-person.
- Enigmail - enigmail.mozdev.org/ -
access the authentication and encryption features provided by GnuPG
- enigmail - version 0.94.2. This will be installed for all users.
- enigmail-locale-<locale> (i.e. enigmail-locale-de) - localised language package of menus and messages for enigmail. Not required for English.
- Lightning - http://www.mozilla.org/projects/calendar/lightning/ - calendar. Not available in a Debian archive so download from www.mozilla.org/projects/calendar/lightning/download.html and use IceDove / Thunderbird's Tools → Extensions to install per-person. Track developments at the Calendar Weblog: weblogs.mozillazine.org/calendar/.
- Mail Redirect - mailredirect.mozdev.org/ - adds ability to redirect (as opposed to forward) emails. Not available in a Debian archive so download from https://addons.mozilla.org/en-US/thunderbird/addon/550 and use IceDove / Thunderbird's Tools → Extensions to install per-person.
- Sylpheed Claws - claws.sylpheed.org. Particularly light weight.
- sylpheed-claws-gtk2
- sylpheed-claws-gtk2-doc
- sylpheed-claws-gtk2-clamav
- sylpheed-claws-gtk2-spamassassin
- Evolution - gnome.org/projects/evolution/ - groupware client (including email)
- liferea - liferea.sourceforge.net - Linux Feed Reader - RSS/RDF/Atom/Echo/PIE feed, CDF channel and OCS directory reader for GNOME
- xchat-gnome - xchat-gnome.navi.cx - IRC (Internet Relay Chat) client. This is a simplified version of X-Chat, more in-keeping with GNOME.
- pidgin - pidgin.im - instant messaging
- Plugins
- pidgin-otr - Off-the-Record (OTR) Messaging plugin. OTR allows you to have private conversations over IM by providing: a) encryption - no one else can read your instant messages; b) authentication - you are assured the correspondent is who you think it is; c) deniability - the messages you send do _not_ have digital signatures that are checkable by a third party. Anyone can forge messages after a conversation to make them look like they came from you. However, _during_ a conversation, your correspondent is assured the messages he sees are authentic and unmodified. d) Perfect forward secrecy - If you lose control of your private keys, no previous conversation is compromised.
- amule - www.amule.org - peer2peer client
- freeloader torrent / Bittorrent downloader
- Remote Access Clients
- gftp-gtk - gFTP (GTK+ version) - gftp.seul.org - GNOME FTP, FTPS, HTTP, HTTPS and SCP (using SSH2) client. Lacking in advanced features such as synchronisation and has some usability issues. Upstream development is very slow. Similar to Filezilla but the version of Filezilla available (3.0.0~beta2) is too immature (i.e. when downloading, doesn't create directories that don't already exist) and uses the wxWidgets toolkit rather than GTK+. (though if you want it you can download and install it manually from filezilla-project.org - use the pre-built version for 'Linux' rather than the 'Source code' version as the version of wxWidgets in Debian Etch is too old to compile FileZilla).
- tsclient - www.gnomepro.com/tsclient/.
GNOME client to remotely access Microsoft Windows NT4 Terminal Server, Windows 2000/2003 Terminal
Services and Windows XP Remote Desktop Sharing (using the rdesktop program to do RDP - Remote
Desktop Protocol);
VNC - Virtual Network Computing (using the vncviewer program);
Citrix ICA (using ?);
X Windows (using the xnest program to do XDMCP - X Display Manager Control Protocol).
The default Debian desktop includes grdesktop, a client that only supports Windows Terminal Services and XP Remote Desktop Sharing. Replace grdesktop with tsclient.- xvnc4viewer - www.realvnc.com - command-line VNC client. Provides xvnc4viewer, xvncviewer and vncviewer. (the similar xvncviewer package is version 3.3.7)
- rdesktop - www.rdesktop.org - command-line RDP client
- xnest - command-line XDMCP client. The package description recommends instead using xserver-xephyr but this doesn't provide the xnest program required by tsclient.
- openssh-client - www.openssh.com - command-line SSH, SCP and SFTP client. Debian installs this by default. Provides these programs: ssh, scp, sftp, ssh-agent, ssh-add, ssh-keygen, ssh-keyscan, ssh-copy-id, ssh-argv0.
- secpanel - secpanel.mymediahost.de - a GNOME interface for managing and running SSH (secure shell) and SCP (secure network copy) connections. It eases key distribution and other related tasks. The shortcut is in Debian → Apps → Net → SecPanel SSH Frontend
Configuration
Iceweasel / Firefox
Set Iceweasel / Firefox as the preferred GNOME web browser: Desktop → Preferences → Preferred Applications - change 'Custom' - 'gnome-www-browser %s' to 'Iceweasel'.
gFTP
Per-user configuration
- FTP → Options... → General
- Overwrite by Default - on
- Do one transfer at a time - off
- Show hidden files - off
User bookmarks location:
~/.gftp/bookmarkspidgin-otr
To enable it, right-click on the Pidgin system tray applet -→ Plug-ins -→ Off-the-Record Messaging -→ and choose to enable it. To configure it for use choose Configure Plug-in -→ Config -→ My private keys -→ Generate.
Usage
pidgin-otr
To enable OTR, initiate a conversation with someone. Choose 'OTR: unverified' in the bottom left of the chat window. Choose to verify the person and then confirm and they'll be added to the list of verified people you can access in the plug-in's preferences.
Further Information
Planet Mozilla: planet.mozilla.org
Penguin.SWF - tracks development status and issues regarding the Linux version of Adobe's Flash Player: blogs.adobe.com/penguin.swf/
Image viewing
Package(s)
- gthumb - gthumb.sourceforge.net - an enhanced image viewer, browser, organiser, small-time editor, with features to connect with digital still cameras. A suitable replacement for GNOME's default Eye Of Gnome (www.gnome.org/projects/eog/) image viewer. Eye Of Gnome is smaller than gthumb but has less features; you may want to remove it but because it is part of the gnome-core package that would also remove GNOME itself.
Image editing
Package(s)
- The GIMP - The GNU Image Manipulation Program - A (raster) image editor, similar to Adobe Photoshop.
- gimp - gimp.org - The GIMP program itself
- gimp-helpbrowser - GIMP's integrated help
- gimp-help-language (i.e. gimp-help-en) - GIMP's integrated help language files
- gtkam-gimp - Gimp plug-in of gtkam. gtkam is a graphical application based on GTK+ for digital still cameras supported by gphoto
- gimp-print - printing support
- gimp-data-extras - optional collection of brushes and patterns additional to the set already included with The GIMP (not "brushes, palettes, and gradients" as package description claims)
The following brushes are included: 50x50cone, 50x50square, 50x50squareBlur, 50x50squareBlur2, bigcircle, bigcircle2, bigcircle3, bigcircle4, bird, bullethole, cloth, flower, flower_large, gecko, grid, grid2, guitar, nova, point, punch, qbert2, qbert3Blur, reach, sphere29, sphere36, sphere47, sphere55, sphere79, star1, star2, star3, star4, star5, swirl, swirl2, text1, text2, text3, text4, tulip, wave
The following patterns are included: 3dweave, abstract_flowers, blackoil, blackwhitefloor, blob1, blob2, bluebar, bluecanyons, bluemars, bluemetal, bluespikes, brownie, bwcubes, canyons2, cashew, chains, chroma, circuit, clouds, clovers, coins, colorblob, colored_rock, colorwhirl, connestoga, contrawhirl, cow, crash1, crazytile, crystals, curvedledge, deepswirl, diffpat, dirt, disco, drymud, dunemaze, dunes, eggcarton, electric-blue-ribbons, etbf, floor_tile, funnyblobs, funnymess2, funnymess, fuzzy-colors, gold, goldcloth, granite2, green_curtains, green_eek, greyweave, greyweave2, grid, gridwhirltile, headache, ice2, icechex, inlay, krinkle, land1, land2, lathe, leaves3, leaves4, leaves6, lumps, meltedcolors, metallica, metalpaths, mhuerock, money, neurons, novaugh, oooh, oooh3, orange_eek, orangebrown, orangecheese, paint-explosion, pastel2, pebbles, pixeled1, pj, psycho1, purple-ribbons, purple, purple_glow, redishstuff, redmess, redrings, rust, sandytext, send1, silver, slice1, spectbar, startile, swirl, swirl2, torrents, tube, unsharpswirl, water3, waves, wax, weird2, whirledstuff, woodblind, worn_metal_chex
- gimp-ufraw - ufraw.sourceforge.net - allows GIMP to open digital camera images in 'raw' format. This can be used instead of the standalone version of UFRaw. See ufraw section for other details.
- gimp-svg - gimp.org - necessary for opening SVG (Scalable Vector Graphics) files in The GIMP
- (other plug-ins might be mentioned in other sections specific to their areas of operation)
- ufraw - ufraw.sourceforge.net
- UFRaw - The Unidentified Flying Raw -
standalone GNOME program to convert and manipulate raw images from digital cameras;
do basic colour management, allowing you to apply colour profiles
(using an incorporated Little CMS);
read most existing raw formats (using an incorporated
dcraw).
For GNOME.
Mostly UFRaw doesn't care what camera the image came from though some camera features effect UFRaw directly, one being white balance presets. UFRaw supports every camera supported by its version of DCRaw. For the supported cameras of the latest ufraw (though not necessarily the version you're using in Debian) see http://ufraw.sourceforge.net/Cameras.html. For more fine grained details of what features are and aren't supported see http://ufraw.sourceforge.net/wiki/Main_Page#Camera_database.
Further Information
Beginning GIMP: From Novice to Professional (a printed book): apress.com/book/bookDisplay.html?bID=10080
Colour Management
Software required for creating a colour managed workflow. This is a first draught of this section so isn't considered complete.
Package(s)
- icc-profiles - ICC color profiles for use with Scribus, Gimp, CinePaint, and other color profile aware software.
- lprof - sourceforge.net/projects/lprof - Graphical Hardware Color Profiler. A colour profiler that creates ICC compliant profiles for devices such as cameras, scanners, and monitors. These profiles provide color consistency across devices. They can be used in color profile-aware software such as GIMP, Scribus, etcetera. For an example of creating a profile that can be used with Scribus see http://www.atlantictechsolutions.com/scribusdocs/lcms/moncal.html. The argyll-bin package is an alternative, command-line, program.
References
Linux Color Management: en.wikipedia.org/wiki/Linux_color_management
Security
Package(s)
- firestarter - www.fs-security.com/ - firewall. Features: easy to use graphical interface; suitable for use on desktops, servers and gateways; enables Internet connection sharing; allows you to define both inbound and outbound access policy; option to whitelist or blacklist traffic; sets up DHCP for a local network; real time firewall events view; view active network connections, including any traffic routed through the firewall; advanced Linux kernel tuning features.
Configuration
- Firestarter
- Preferences → Interface → System tray icon → Minimise to tray on window close - on
Usage
The most secure way to run this is in 'Restrictive by default, whitelist traffic' mode, rather than the default 'Permissive by default, blacklist traffic'. Be aware this can be a major pain to use because typically things won't work and you'll not understand why, having forgotten that you have the firewall on, even with the system tray applet visible. When you exit the system tray applet the firewall remains running at all times unless you explicity choose 'Stop Firewall', it just doesn't have a system tray applet to represent it. This further confuses (I think the system tray applet should instead say 'hide' rather than 'exit' or perhaps we shouldn't have it minimise to system try).
If you have the GUI turned on it'll turn red when it blocks a port and you can go to the Events section, right-click and choose one of either 'Allow Connections to Destination', 'Allow Outbound Service For Everyone', or 'Allow Outbound Service For Source'. I choose 'Allow Outbound Service For Everyone'. The nomenclature reflects the fact the software can also provide Internet connection sharing for other computers.
These are the outbound ports I've found useful to whitelist (as defined in /etc/firestarter/outbound/allow-service):
DNS, 53, everyone, DHCP, 67-68, everyone, FTP, 20-21, everyone, HTTP, 80, everyone, HTTPS, 443, everyone, IMAP, 143, everyone, Ircd, 6667, everyone, Openvpn, 1194, everyone, Samba (SMB), 137-139 445, everyone, SMTP, 25, everyone, Ssmtp, 465, everyone, Microsoft-ds, 445, everyone, IPCop web interface Unknown, 222, everyone, IPCop command-line interface Unknown, 9100, everyone, HP JetDirect printing Whois, 43, everyone,
Firestarter runs as a system service / daemon (controlled using
/etc/init.d/firestarterwith start, stop or restart or you can do so from the GUI) whose configuration is per-machine not per-user.My own questions answered
If you explicitly allow an outgoing port, do you correspondingly need to explicitly allow the incoming port so you can 'hear back' from the thing you've connected with?
in affect/effect(?), if you've requested something from somewhere then it coming back is trusted. By default Firestarter doesn't block absolutely everything: "Traffic from the Internet in response to connection requests from the firewall or client hosts is allowed back in through the firewall." (http://www.fs-security.com/docs/policy.php). It seems we should instead be talking about allowing outgoing connection requests and denying incoming connection requests.
"In most cases, the rules need to be symmetrical -- for instance, allowing request packets to go out to a remote web server only makes sense if the responses from that server are allowed to return. The exception to this rule are the "SYN" packets which are used to initiate a new connection. For instance, even though packets using the http protocol are allowed in so that you can receive data from a remote web site, http packets requesting a new connection might be blocked, to prevent outsiders from connecting to internal web servers." - http://netcfg.sourceforge.net/firewalls.html
'ping: sendmsg: Operation not permitted' How do I enable ping? I haven't enabled ICMP filtering in the preferences so why doesn't ping work?
Is it because: "By default Firestarter allows ICMP traffic, although it throttles it somewhat to prevent excessive flooding or Denial of Service attacks." - http://www.fs-security.com/docs/preferences.php
"? Run this command to fix this:
# iptables -A OUTPUT -p icmp --icmp-type echo-request -m state --state NEW -j ACCEPT
This means append to the IP chain/table OUTPUT rules. If you get a packet that uses the ICMP protocol, and its ICMP type is an echo request (ping), and it's new (this bit may have been a bit redundant, but the principle of knowing the state of the packets you want to send through is important) jump to the ACCEPT chain/table (which immediately pushes the packet through)." Needs to go at the start of your iptables.What is the performance hit of running Firestarter? are there shades of performance grey, such as if you add more rules it affects performance more?
Issues I feel it has
When you see Events you can see whether ports are TCP or UDP. The Policy section doesn't give the option of specifying whether you're defining UDP or TCP. They are actually for both. It's a shame it doesn't communicate this.
The Policy view doesn't show the 'comment'.
Annoyingly you have to apply rules per-interface, so if you wander with a laptop between wireless and wired you'll have to maintain two lists. Note that when you edit policies of an interface that isn't currently up and running it complains when it can't apply it when the interface isn't up ('Failed to apply outbound policy') but don't worry, it's still changing the rule).
Help → Online Users' Manual is broken, it leads to http://www.fs-security.com/docs/ which gives "Internal Server Error" (wrongly opened in Epiphany, when my default browser is set to Firefox). It should be http://www.fs-security.com/docs.php or their web site should be fixed.
Has development of Firestarter ceased? and does it have issues with newer kernels? http://sourceforge.net/mailarchive/forum.php?thread_name=f21rp3%249ph%241%40sea.gmane.org&forum_name=firestarter-user
Troubleshooting
To see the underlying iptables firewalling that Firestarter has configured:
iptables -L -nFurther Information
Newgroup: http://www.fs-security.com/list.php
Multi media players, including DVD
Package(s)
- Choose one or more of the following:
- totem-gstreamer - www.hadess.net/totem.php3 - comes by default with GNOME; using Gstreamer as a back-end (as opposed to totem and totem-xine which use Xine). If Totem won't play a particular DVD movie it can be worth trying vlc.
- MPlayer - www.mplayerhq.hu - movie player that plays most MPEG/VOB, AVI, Ogg/OGM, VIVO, ASF/WMA/WMV, QT/MOV/MP4, RealMedia, Matroska, NUT, NuppelVideo, FLI, YUV4MPEG, FILM, RoQ, PVA files, supported by many native, XAnim, and Win32 DLL codecs. You can watch VideoCD, SVCD, DVD, 3ivx, DivX 3/4/5 and even WMV movies.
- mplayer-nogui - the main Debian archive includes the package 'mplayer' with more disabled options (see debian-multimedia.org/faq.html for which). See the The Debian and mplayer FAQ. [Requires additional repository: Debian Multimedia]
- mplayer-doc - Documentation for MPlayer, in Chinese, English, French, German, Hungarian, Italian and Polish
- w32codecs - Windows binary codecs. Video codecs for popular proprietary formats not natively supported by MPlayer, namely ATI VCR-2 video codec, Cinepak video codec, DivX ;-) video codec, ver. 3.11, DivX ;-) video codec, ver. 4.x, Indeo Video 3.2/4.1/5.0/4.1 quick/5.0 quick codecs, Intel 263 video codec, Microsoft MPEG-4 video codec, beta version 3.0.0.2700, Morgan Multimedia Motion JPEG video codec, QuickTime, RealAudio, RealVideo 8, RealVideo 9, Windows Media Video 9 and more. [Requires additional repository: Debian Multimedia]
- libdvdcss2 - DVD decryption (part of the VideoLAN project). You need this to be able to play encrypted DVDs in any software. [Requires additional repository: Debian Multimedia].
- regionset - view and modify the region code of DVD drives. [Interface: CLI]
- You don't need to mount the DVD, the DVD playing software deals with it directly
- At least with VLC, you need write permissions on the DVD device itself (i.e.
/dev/hdcor whichever it is on your system). The easiest way to do this is to make youself a member of the same group as this drive, thecdromgroup. (you need write permission for users since VLC does some ioctl to talk to the DVD that requires them) - if something is going wrong, use these libdvdcss environment variables DVDCSS_METHOD and DVDCSS_VERBOSE to understand what libdvdcss is trying to do
Search & Indexing
Package(s)
- beagle - beagle-project.org/
- A desktop search utility for indexing and searching your personal data. At the moment, it can index
filesystems, Gaim logs, Evolution mail and data, RSS and other.
The initial indexing will take some time - a Pentium III era computer with 256MB RAM will probably feel a bit more sluggish during the initial indexing once that is done (how long it takes depends on how much indexable data there is) the machine should behave ok. Being a Mono application, it's not exactly light weight, but for example it will way less memory than Firefox. - beagle-backend-evolution - Backend that allows Beagle indexing calendar and contact entries from Evolution.
Configuration
Command-line
beagle-configGNOME
Applications → Accessories → Search & Indexing
Usage
GNOME
Applications → Accessories → Search
Audio / Sound - Encode and Play
Thus far the following formats are covered: Ogg Vorbis, FLAC, MP3, AAC, WMA and RealAudio.
Package(s)
Libraries for playing
- libogg0 - for Ogg Vorbis - www.vorbis.com/.
- libflac7 - for FLAC - flac.sourceforge.net/
- libmad0 - for MP3 / MPEG-1 Layer 3 - www.underbit.com/products/mad/
- ? libxine1 - xinehq.de/ - an alternative for MP3 / MPEG-1 Layer 3 (using libmad0), Ogg Vorbis (using libogg0) and FLAC (using libflac7) [does it do other formats itself?].
- libfaad0 - for AAC (MPEG-4 and MPEG-2 LC, LTP, MAIN; MPEG-4 LD; ER(?) [not SRS / SSR?]) - www.audiocoding.com/ [Requires additional repository: Debian Multimedia]
- libavcodeccvs51 (one part of ffmpeg) - for AAC (using libfaad0), WMA (versions 1 and 2) and RealAudio (versions 1, 2, 3, 6, 8) - ffmpeg.mplayerhq.hu/. The main Debian archive alternatively includes libavcodec0d with no MP3 encoding or AAC support. [Requires additional repository: Debian Multimedia]
Libraries for encoding
- libogg0 - for Ogg Vorbis - www.vorbis.com/
- libflac7 - for FLAC - flac.sourceforge.net/
- liblame0 - for MP3 / MPEG-1 Layer 3 - lame.sourceforge.net/index.php
- libfaac0 - for AAC (MPEG-4 LC, LTP and MAIN, not SRS / SSR; MPEG-2 LC and MAIN, not SRS / SSR) - www.audiocoding.com/. [Requires additional repository: Debian Multimedia]
- libavcodeccvs51 (one part of ffmpeg) - for AAC (using libfaac0), WMA (versions 1 and 2) and Real Audio (version 3) - ffmpeg.mplayerhq.hu/. The main Debian archive alternatively includes libavcodec0d with no MP3 encoding or AAC support. [Requires additional repository: Debian Multimedia]
GStreamer plugins for playing
- gstreamer0.10-plugins-base - for Ogg Vorbis - gstreamer.freedesktop.org/modules/gst-plugins-base.html
- gstreamer0.10-plugins-base-doc - documentation, installed in /usr/share/gtk-doc/html/gst-plugins-base-libs-0.10 and /usr/share/gtk-doc/html/gst-plugins-base-plugins-0.10/
- gstreamer0.10-plugins-good - for FLAC - gstreamer.freedesktop.org/modules/gst-plugins-good.html.
- gstreamer0.10-plugins-good-doc
- gstreamer0.10-plugins-ugly - for MP3 / MPEG-1 Layer 3 - gstreamer.freedesktop.org/modules/gst-plugins-ugly.html. Uses libmad0.
- gstreamer0.10-plugins-ugly-doc
- gstreamer0.10-plugins-really-bad - for AAC - gstreamer.freedesktop.org/modules/gst-plugins-bad.html. Uses libfaad0. The main Debian archive alternatively includes gstreamer0.10-plugins-bad. [Requires additional repository: Debian Multimedia]
- gstreamer0.10-ffmpeg-full - for AAC, WMA (versions 1 and 2) and RealAudio (versions 1, 2, 3, 6, 8) - gstreamer.freedesktop.org/modules/gst-ffmpeg.html. Doesn't rely on an external copy of the ffmpeg libavcodeccvs51 library as it incorporates it. The main Debian archive alternatively includes gstreamer0.10-ffmpeg; the Debian documentation doesn't describe what is disabled but it is likely MP3 encoding and AAC support. [Requires additional repository: Debian Multimedia]
GStreamer plugins for encoding
- gstreamer0.10-plugins-base - for Ogg Vorbis - gstreamer.freedesktop.org/modules/gst-plugins-base.html
- gstreamer0.10-plugins-base-doc
- gstreamer0.10-plugins-good - for FLAC - gstreamer.freedesktop.org/modules/gst-plugins-good.html.
- gstreamer0.10-plugins-good-doc
- gstreamer0.10-lame - for MP3 / MPEG-1 Layer 3. Uses liblame0.
- gstreamer0.10-plugins-really-bad - for AAC. Uses libfaac0. [Requires additional repository: Debian Multimedia]
- gstreamer0.10-ffmpeg-full - for AAC, WMA (versions 1 and 2) and RealAudio (version 3) - gstreamer.freedesktop.org/modules/gst-ffmpeg.html. Doesn't rely on an external copy of the ffmpeg libavcodeccvs51 library as it incorporates it. The main Debian archive alternatively includes gstreamer0.10-ffmpeg; the Debian documentation doesn't describe what is disabled but it is likely MP3 encoding and AAC support. [Requires additional repository: Debian Multimedia]
Command-line programs for converting
- vorbis-tools - for Ogg Vorbis - www.vorbis.com/. You use the oggdec program.
- flac - for FLAC - flac.sourceforge.net/. Uses libflac7
- madplay - for MP3 / MPEG-1 Layer 3 - www.underbit.com/products/mad/. Uses libmad0.
- faad - for AAC - www.audiocoding.com/. uses libfaad0. [Requires additional repository: Debian Multimedia]
- ffmpeg - for AAC, WMA (versions 1 and 2) and RealAudio (versions 1, 2, 3, 6, 8) - ffmpeg.mplayerhq.hu/. Uses libavcodeccvs51. [Requires additional repository: Debian Multimedia]
Command-line programs for encoding
- vorbis-tools - for Ogg Vorbis - www.vorbis.com/. Uses libogg0. You use the oggenc program.
- flac - for FLAC - flac.sourceforge.net/. Uses libflac7.
- lame - for MP3 / MPEG-1 Layer 3 - lame.sourceforge.net/index.php. Uses liblame0.
- faac - for AAC - www.audiocoding.com/. Uses libfaac0. [Requires additional repository: Debian Multimedia]
- ffmpeg - for AAC, WMA (versions 1 and 2) and RealAudio (version 3) - ffmpeg.mplayerhq.hu/. Uses libavcodeccvs51. [Requires additional repository: Debian Multimedia]
Command-line programs for playing
- vorbis-tools - for Ogg Vorbis - www.vorbis.com/. Use the included ogg123 program.
- vorbis-tools - for FLAC - www.vorbis.com/. Use the included ogg123 program.
- ? madplay - for MP3 / MPEG-1 Layer 3 / ? mpg123 / ? mpg123-alsa
- Need to add cumulative packages here... ? mplayer / ? mplayer-nogui / ? xmms2
GNOME programs for converting
To do!
GNOME programs for ripping and encoding
- sound-juicer - burtonini.com/blog/computers/sound-juicer - GStreamer-based - rips from CD Audio, encodes into whichever the installed GStreamer supports
GNOME programs for playing (only)
- totem-gstreamer (GStreamer-based)
- totem-xine (Xine-based)
Stand-alone programs for playing (not for a specific desktop environment)
These players are not based on a specific back-end, instead using a combination of their own abilities and including lots of libraries
- ? VLC [interface: GTK]
- ? mplayer / ? mplayer-nogui with a GUI
- ? xmms2 with a GUI and plugins
GNOME programs for ripping, encoding, playing and managing
- rhythmbox - www.gnome.org/projects/rhythmbox/ - (GStreamer-based)
- banshee - banshee-project.org - (GStreamer-based)
Audio architectures
Package(s)
- alsa-base - ALSA Advanced Linux Sound Architecture. Default with the 2.6 Linux kernel.
- alsa-utils - ALSA utilities
- alsa-oss - ALSA wrapper for OSS applications. Wraps applications written for OSS in a compatibility library, thus allowing them to work with ALSA. Required for Audacity.
- jackd - jackit.sourceforge.net/ - JACK Audio Connection Kit (server daemon (jackd) and example clients). Low-latency sound server. JACK allows the connection of multiple applications to an audio device, as well as allowing them to share audio between themselves.
- jack-tools - various JACK tools: plumbing, play, udp, ctl, scope, clock
- qjackctl - User interface for controlling the JACK sound server
- jackeq -routes and manipulates audio from/to multiple sources
Audio editing
Package(s)
multi-track audio editors for GNOME
- audacity - audacity.sourceforge.net - multi-track audio editor. The Audacity 1.2 series which is part of Debian Sarge is somewhat stuck in the past, having an old GTK 1 interface (Audacity 1.3.0 will use GTK 2) and only working with OSS rather than ALSA; requires the alsa-oss package to play and record with an ALSA-based system
- gnusound - multi-track audio editor, for GNOME. (We haven't tried this yet, but it seems a promising option). "It supports multiple tracks, multichannel output, and 8, 16, or 24/32 bit samples. It can read a number of audio formats, modify them, and saves them as WAV files. GNUsound supports a large number of high-quality audio effects, filters, and converters through the GLADSPA plugin architecture (band pass filter, frequency shifter, reverb, flanger, pitch scaler, pink noise, stereo to mono converter, and many others)."
single-track audio editors for GNOME
- mhwaveedit - "Simple and fast GTK2 sound editor. (We haven't tried this yet, but it seems a promising option). It is intended to be user-friendly and robust. It does not require a fast computer. Supports JACK, ALSA and OSS."
- snd - single-track audio editor, for an even slower smaller computer. (We haven't tried this yet, but it seems a promising option).
- snd - www-ccrma.stanford.edu/software/snd/ - "Snd is a powerful sound file editor that can be customized and extended using the Scheme programming language. This package contains the basic infrastructure for the snd packages and the scheme files. You have to install a GUI package as well to actually use snd."
- snd-gtk - the files for the GTK+ user interface.
- snd-gtk-alsa - the files for the GTK+ user interface with ALSA output support.
- snd-doc
Sound effects
- ladspa-plugin
- www.ladspa.org - virtual package containing the following, which you need to install specifically:
- tap-plugins
- swh-plugins
- ladspa-sdk
- cmt
- caps
- blop
- omins
Compression / Archival
These can be useful for many reasons, for example the anti-virus and spam co-ordinating program Amavis uses many of them if they're installed; as does GNOME's archive manager / file roller.
Package(s)
- arc - archive utility based on the MSDOS ARC program plus a few enhancements
- arj - archiver for .arj files. An open source version of the arj archiver. This version has been created with the intent to preserve maximum compatibility and retain the feature set of original ARJ archiver as provided by ARJ Software, Inc.
- bzip2 - www.bzip.org - bzip2 is a freely available, patent free, high-quality data compressor. It typically compresses files to within 10% to 15% of the best available techniques, whilst being around twice as fast at compression and six times faster at decompression. The archive file format of bzip2 (.bz2) is incompatible with that of its predecessor, bzip (.bz).
- cabextract - www.cabextract.org.uk - unpacks Microsoft cabinet (.cab) files. Microsoft cabinet files are used by Microsoft and others to distribute all kinds of data and software: core Web fonts, videos, operating system updates and video codecs, to give some examples. Microsoft cabinets are also used as the installation format for Windows CE software.
[Author: Stuart Caie] - cpio - GNU cpio is a tool for creating and extracting archives, or copying files from one place to another. It handles a number of cpio formats as well as reading and writing tar files.
- lha - the lzh archiver, popular on MS-DOS (and Windows?). [Section: non-free - open source, has some restrictions and some vaguely worded terms; read the licence]
- lzop - www.lzop.org - lzop is a compressor similar to gzip. Its main advantages over gzip are much higher compression and decompression speed. lzop was designed with the following goals in mind: reliability, speed (both compression and decompression), reasonable drop-in compatibility with gzip, portability
- nomarch - Unpacks .ARC and .ARK MS-DOS archives. This is a de-archiving only replacement for the arc archiver from SEA. It can handle pkarc archives, as well as others. This package is very useful for E-Mail virus scanner scripts for attachement unpacking.
- p7zip-full - p7zip.sourceforge.net - 7-Zip (7-zip.org) is the file archiver that archives with the highest compression. This package will also handle ZIP, Zip64, CAB, RAR, ARJ, GZIP, BZIP2, TAR, CPIO, RPM, ISO and DEB formats. It includes programs 7z (handles all the above formats) and 7za (handles less formats than 7z). If you need to save space (2.5MB) you can instead install the p7zip package with its 7zr / p7zip program, a 'light' version of 7za which only includes support for the 7z format. If you want just the 7Zip library you can install the lzma package.
- pax - Portable Archive Interchange. Pax is an archiving utility that reads and writes tar and cpio formats, both the traditional ones and the extended formats specified in IEEE 1003.1. Three user interfaces are supported: tar, cpio, and pax. The pax interface was designed by IEEE 1003.2 as a compromise in the chronic controversy over which of tar or cpio is best. This is the free OpenBSD's version written by Keith Muller.
- tnef - sourceforge.net/projects/tnef - TNEF is a program for unpacking MIME attachments of type "application/ms-tnef". This is a Microsoft only attachment. Due to the proliferation of Microsoft Outlook and Exchange mail servers, more and more mail is encapsulated into this format (often in the form of a winmail.dat file). The TNEF program allows one to unpack the attachments which were encapsulated into the TNEF attachment. Thus alleviating the need to use Microsoft Outlook to view the attachment.
- unrar - extracts files from .rar archives. If you want to create .rar archives, install package rar. Unrar can handle where as unrar-free cannot. [Section: non-free - freeware, open source, restricts you to not using the source to create a rar archiver; read the licence] (alternatively there is unrar-free (https://gna.org/projects/unrar/) but it cannot handle version 3.0 of the rar format)
- unshield - www.synce.org/index.php/Unshield - extracts Microsoft-format CAB files from InstallShield installers. InstallShield installers comprise a .exe InstallShield installer for Microsoft Windows in which there are InstallShield cabinet files (usually named data1.cab, data1.hdr, data2.cab, data2.hdr, etc) and within them Microsoft cabinet
- Plugins