Charles Maggs‎ > ‎Vocation‎ > ‎Links‎ > ‎

Linux resources (current)

OPERATING SYSTEMS
  • Fedora Linux is the primary operating system I use on my system at work.  I run additional operating systems within VirtualBox sessions for working with and testing legacy software:
    • Fedora 12-14 for current development
    • Fedora Core 3 and Red Hat Linux 7.3 for some (old) legacy code
  • Ubuntu Linux is my personal preference for Linux, for a number of reasons:
    • The user interface seems to be the most complete and 'user friendly' of the versions of Linux I have tried
    • You have the choice of staying current with the latest releases, or remaining stable for longer periods of time by staying with LTS (Long Term Support) releases.L
SOFTWARE DEVELOPMENT TOOLS
  • Eclipse is an open source IDE for the Linux platform; the base install supports Java development, but a CDT (C/C++ Development Toolkit) add on can be installed to enable the IDE to be used for developing C and C++ applications.
  • Meld is a GUI 'diff' tool for comparing and merging two versions of a file.  (Can be installed using 'yum install meld'.)
  • Cervisia (installable through 'add software', search for 'cervisia') is a GUI front end to CVS, a version control system for software development.
    • Cervisia requires the installation of the KDE Help Center (khelpcenter) in order to use the Cervisia handbook (under 'Help').  To do so, you can run (from the command line) 'yum install kdebase'.
  • While not strictly a development tool, the document "GNU Coding Standards" describes recommended practices for developing software.  Included in the document is a description of how to create a 'configure' script using 'autoconf' and 'automake' to build the software.
SOFTWARE DOCUMENTATION TOOLS
  • Aspell is a command line spell checking tool that can be used to check spelling in LaTeX files.  The following two commands need to be executed to install a usable version of aspell:
    • yum install aspell
    • yum install aspell-en
  • Doxygen is an open source tool that allows you to insert comments directly into source code that can then be used to generate HTML pages, LaTeX documents, PDF documents, and even Microsoft help files (.CHM):
    • yum install doxygen
  • LaTeX is a document generation application utilized by Doxygen to generate LaTeX and PDF documents.  'tex' is the equivalent, compatible tool for Linux.  To install tex (if it is not already installed by default):
    • yum install texlive texlive-latex texlive-dvips
SERIAL PORT TOOLS:  Yes, there are still products that make use of RS232 serial interfaces.  As a result, I had a need for an application that provides similar functionality to (Microsoft Windows) HyperTerminal.  I found several, all of which I could install from the Fedora 12 command prompt using the command 'yum install <app-name>':
  • cutecom is a GUI serial terminal application.
  • GTKTerm is a GUI serial terminal application.
  • minicom is a command line serial terminal application.
  • PuTTY has turned out to be the nicest tool for setting up a serial port terminal session in a Linux GUI environment.  It can be installed from the command line:
    • yum install putty
  • screen is a (pretty "clunky") command line tool.
SECURITY RELATED SOFTWARE
  • IPsec
    • Openswan works with the 2.0, 2.2, 2.4 and 2.6 versions of the Linux kernel with support for x86, ARM and MIPS processors; it was forked from the now-defunct FreeS/WAN project
    • StrongSwan works with both the 2.4 (KLIPS IPsec) and 2.6 (NETKEY IPsec) versions of the Linux kernel
    • IPsec-Tools is a port of the IPsec utilities for Linux 2.6 that were part of the now-defunct KAME project
OTHER SOFTWARE
  • alacarte is an app that provides the ability to modify the application menus:
    • yum install alacarte
  • antiwordxp.rb is a Ruby script that can be used to search for text in Microsoft Word .DOC and .DOCX files from the command line.  The following is the process for installing the script:
    • Install Ruby:  yum install ruby
    • Install Ruby gems addon:  yum install rubygems
    • Install Ruby zip filesystem module:  gem install rubyzip
    • Download the Ruby script
    • Flag it as executable and move it into your path
  • cups-pdf can provide a Linux system with the ability to print any document to a PDF file.  I did find a few different sites that suggested how to install, but the following is what worked for me:
    • Run the following command (as root) to install the package:
      yum install cups-pdf
    • Edit /etc/cups/cups-pdf.conf:
      • To specify a different output location other than the desktop, change "Out ${DESKTOP}" to "Out <your_directory_name>".
      • To make sure that output filenames are are unique, change "Label 0" to "Label 1".
      • To force using command line parameters for naming the file, change "TitlePref 0" to "TitlePref 1".
      • Restart the cups service:  /etc/init.d/cups restart
  • Wine (Wine Is Not an Emulator) is an open source application that allows (some) Windows programs to run on a Linux system.  There are some tweaks that I've learned while using it:
    • Wine sets up symbolic links for standard Windows devices in ~/.wine/dosdevices.  My experience was that it did not add a symbolic link for my USB serial port, so I manually added one (ln -s /dev/ttyUSB0 com1).