I use Xubuntu rather than the regular Ubuntu distribution as I like the XFCE system better than most of the others associated with the various distros. I thought I might compile a list of programs that I use on a regular basis, along with the similar Windows application as a point of reference. Note, most programs can be installed by running
sudo apt-get install program-name
After typing several characters of the program name, you can hit the TAB key a couple of times to get auto complete or a list of installables that begin with the characters you’ve entered so far…
- xubuntu-restricted-addons: easy installation for a number of codecs and useful items that are not installed by default for legal (or other) reasons
- xubuntu-restricted-extras: easy installation of several items such as cabextract (extract Windows CAB files), Microsoft Core Fonts (useful for many reasons), etc
- build-essential: if you plan on building any programs from source, it’s a good idea to install this package as it contains a number of essential utilities
- exfat-utils: if you use any of the newer external drives that include exfat file systems (seem to be taking the place of FAT32), this will install both the utilities and the filesystem driver itself and ease your life
- gparted: this is a partition manager that can handle gpt, mbr, etc., and is a GUI-based interface to parted and many (many) file system utilities
- kicad: this is an electronics development system that includes schematic, board layout, simulation, etc. Probably not needed by many users, but for people like myself, it’s very useful
- librecad: similar to other CAD drawing programs
- hfsutils-tcltk: for those with Mac HFS formatted drives, etc., this GUI and utilities package can provide some useful functionality
- hfsprogs: provides additional HFS functionality [NOTE: for both of these, you might have to turn off journaling via a Mac prior to working with these drives under Linux, depending on what you want to do]
- dia: a diagram program that is similar to Microsoft Visio (but not compatible)
- gramps: family tree management, very detailed so can be challenging for users that are used to the more user-friendly Windows programs
- wine: this is a Windows compatibility system (not an emulator) that allows running some Windows programs perfectly, and many others less than perfectly. I recommend downloading and installing from the homepage, http://winehq.org, rather than from the distro as the distros are often behind on updates. Check out the instructions for the Ubuntu distro, it will walk you through adding a ppa repository and other optional/required steps
- winetricks: this is a package that works with wine to simplify installation of various libraries, runtimes, and general applications
- VirtualBox: Oracle now owns this program, but it is still essentially free; it provides the ability to run many different operating systems via emulation and has good speed and performance. For high-end data centers, other systems are better but VirtualBox is geared towards testing and development installations (in my opinion, not their official statement). I recommend downloading from the homepage, http://virtualbox.org, as the distros tend to lag behind on this one as well.
- joe: a very nice text editor that works well from the command line; vim is great for those that are used to its syntax but I was more familiar with editors similar to joe
- minicom: great terminal program for serial communications, similar to Telix and other DOS-based programs
- openssh-server: if you want to be able to connect to your computer via a remote shell session, as well as using sftp to transfer files. Many users probably don’t need this, but it’s helpful
- remmina: remote desktop access if you need to manage Windows machines through RDP sessions
A few quick notes:
- For serial port access, you should add yourself to the dialout, tty, and uucp groups; I’ve had mixed success depending on the program but adding to all three seems to enable access to the serial ports/serial port converters (/dev/ttySx and /dev/ttyUSBx)
- For VirtualBox, you need to add yourself to the vboxusers group; otherwise, you can’t give control of USB and other devices to VirtualBox
- Note that if you install VirtualBox from a package rather than through the distro, you’ll need to do vboxsetup after some system updates to rebuild the drivers; look for updates that affect the linux version itself