Workshop 03 - Productivity and System Tools
An operating system is only as useful as the software written for it. Fortunately, open source developers are incredibly productive and in this workshop we will highlight some of the unique and useful FOSS (Free and Open Source Software) available for Linux.
We will identify FOSS options for Microsoft Office, Photoshop and other Adobe products, and make sure that documents and files created on your Xubuntu system will be readable on Windows and Apple computers.
FOSS Alternatives to common software
It's time to make a list of the software you want to use on your new computer so we can find FOSS alternatives where possible. Here are a few options to get you started. Non-FOSS software is marked.
|Software||MS Windows/Apple OSX||Linux|
|Voicechat||Skype (non-FOSS)||Skype (non-FOSS)|
|Video playback||Windows Media Player/Quicktime (non-FOSS)||VLC|
|Web browser||Internet Explorer/Safari (non-FOSS)||Firefox, Chrome (non-FOSS)|
|Vector graphics||Adobe Illustrator (non-FOSS)||Inkscape|
Installing Software in Xubuntu
We will cover the various ways you can install software, update and upgrade your existing software. For Xubuntu, most software is made available as packages (just another word for program) in the Ubuntu repository. These are the main methods of installing packages:
- 1. Ubuntu Software Centre
- 2. From downloaded packages (.deb files)
- 3. From an install script
- 4. From the Command Line using a package manager
- 5. Compiling from source code
Methods one and two can be completed using a GUI. Methods three, four and five require some use of the terminal. Once you've taken this broad introduction to how to install software then we'll install the rest of your software however you like.
Installing using the Ubuntu Software Centre
The Ubuntu Software Centre is a GUI for installing software in Ubuntu and related flavours. It's accessed from the whisker menu, in Xubuntu 18.04 it is just listed as 'Software';
Here you can find and install FOSS and other software.
Let's do a search for VLC, our video player.
Then select and click install.
And authorise it with your admin password.
Once the install is done, you can find it in the whisker menu, under 'Multimedia'.
If you like you can add it to your favourites in the menu with a right click on your mouse or keyboard.
Once you launch VLC you will be asked if you want to allow VLC to search for media information.
And you are done!
Installing software from .deb files
Ubuntu Software Centre simplifies the finding of software, but what if the software you want is not available in the Software Centre? Well, if you can find the right kind of package, called a .deb file, then you can download and install it.
Make sure you trust the source of the .deb file you are installing. There is not as much malicious software made for linux systems, but it does exist. You can be assured of the reliability of the sources in the official Ubuntu repos. A reliable source is usually well-known, popular, and well-maintained. If in doubt, search the user forums.
As an example we've uploaded an installer for a popular, well known media player called clementine here to show you how this works.
To make sure you get the right .deb, go directly to the clementine.org downloads section.
It's important to choose the right architecture for your system - this is usually shown either as
amd64 (which is 64bit) or
x86 (which is 32bit) in the .deb file. We use the 64bit
Once the download is done, it will open in Ubuntu Software Centre and you can install it the same way you installed VLC.
Package Management System
Xubuntu, like almost all Linux systems, uses a package management system to find, install, update and upgrade software packages. A package management system (PMS) works like this;
Package Management in Xubuntu
Xubuntu uses the debian package system, which used
dpkg to install and
apt-get to search and download from repos. The most common way to use this system is with the terminal. We'll go into more detail about the terminal later but to start just follow the instructions below.
Open up a terminal emulator either from the whisker menu, or by pressing ctrl+alt_t. Now type:
This displays the help for apt-get, a simple command line tool for package management. It gives a simple explanation of what apt-get does.
Because our system is newly installed, we would normally run an a update and upgrade to make sure we've got the latest list of packages in our sources. But we've already done this using the Software Updater in our system settings. Try it anyway and see what happens. First step is update.
$ sudo apt-get update
You will be prompted to enter your password. You won't see the letters being entered (this is for security), but if you press enter at the end of typing, your password will enter as usual. If you make a mistake you will be asked to enter it again.
Apt-get will search through its list of software available and give use some output. Next we try an upgrade.
$ sudo apt-get upgrade
Apt-get will now upgrade all the packages found in its update. There probably won't be any as we upgraded at the end of workshop 03.
More about the Terminal
The terminal is a text only or Command Line Interface (CLI). Combined with a shell, which is a program that interprets your commands, it is the most powerful and direct way of using a computer.
All OSs have something similar. In Windows there is powershell, in OSX there is also a terminal. Some SDLW participants may remember MS-DOS, or using home computers like a Spectrum, Commodore 64 or Atari ST.
The terminal is the most efficient way of controlling your computer. It requires the user (you!) to be accurate when entering commands, so you'll have to check and double check your entries into the terminal.
When using the terminal there are a few symbols you'll see over and over again. The first thing you'll see is a command prompt. It will display a lot of information in one line:
This line tells me:
- Who I am
- What computer I'm on
- Where I am in that computer and
- What type of user I am
So in this case:
- User = sdlw
- Computer name = sdlw-server
- My location is your home directory (~ is a shortcut for your home directory)
- And I'm logged in as a standard user ($)
File & Directory Commands
Next we'll take a look at moving around in your computer using terminal commands. First we need to think about how your computer files are organised.
In Linux the / (forward slash) symbol is used to show which directory you are in. A directory is just another name for a folder.
A single forward slash / is the
root directory this is the directory which holds all the other directories inside it.
Remember, the tilde (~) symbol stands for your home directory. If you are user, then the tilde (~) stands for
user is your username.
The pwd command will allow you to know in which directory you're located (pwd stands for “print working directory”).
sdlw@sdlw-server:~$ pwd /home/sdlw
ls or list command will show you the files in your current directory. Used with certain options, you can see sizes of files, when files were made, and permissions of files.
ls -al It will show you the files that are in the current directory, with more information about the file type and permissions.
cd command will allow you to change directories. When you open a terminal you will be in your home directory. To move around the file system you will use cd. For example:
- To navigate into the root directory, use
- To navigate to your home directory, use
- To navigate up one directory level, use
- To navigate to the previous directory (or back), use
To change more than one directory at a time, we can describe the path we need to take, separating the directory names with
cd /var/www to go directly to the
/www subdirectory of
/var/. Remember using the file manager in the last workshop? The path is also visible in the address bar of the desktop window. See if you can use cd and ~ to get to your desktop.
Super User Do!
Many commands will need to have
sudo at the start. In technical terms, this 'elevates privileges to the root-user administrative level temporarily'.
Which means that you are telling the computer 'I am the boss - do exactly as I say!' This is necessary when working with directories or files not owned by your user account.
For example, try running
apt-get install without sudo:
$ apt-get install vlc
You'll get an error like this, asking 'are you root?'
Try again with:
$ sudo apt-get install vlc
And you get a request for a password - and off apt-get goes..
In other words, sudo give you the power to force your OS to treat you with unquestioning obedience. Use it wisely…
Installing software from an install script
Now you will use your newfound terminal powers to install software from a script. A script is a text document called
.sh with all the commands entered line by line, with a special first line
#!/bin/bash that tells your computer 'I'm a script!'
Below is a link to the backup software we'll be using, it contains an install script and a few packages we need to make the install work.
Once you've downloaded it, you'll need to uncompress it using an archiving utility.
Xubuntu will automatically launch Archive Manager to do this.
Just extract the files to your download directory.
Now you need to navigate to your newly created directory in your Downloads folder in the terminal. Remember to replace
with your own username.
$ cd /home/sdlw/Downloads/Systemback_Install_Pack_v1.6.202/
ls -al to list the files in the directory. Notice the file
install.sh is green? This means it is executable.
If your version of
install.ch is not executable, you can use the
chmod command to make it so.
$ chmod 774 ./install.sh
Now you can run the script by telling the shell to execute the script.
$ sudo ./install.sh
Check if systemback is installed by going to the whisker menu and start typing 'sys…
Compiling from Source
Compiling from source is usually the method to try if all else fails. 1)
Step 1: Prep your system for building packages
By default, Ubuntu does not come with the tools required. You need to install the package build - essential for making the package - and checkinstall for putting it into your package manager. These can be found in the repositories and installed with command-line apt-get:
sudo apt-get install build-essential checkinstall
You should then find a directory where you'll be building these packages. We recommend using /usr/local/src, but really you can put it anywhere you want. In this case we will just use your Downloads folder.
Step 2: Getting the software you want
Most of the software you'll generally want comes from released tarballs. These are just compressed archives with extensions like .tar.gz or .tar.bz2 — they are just like .zip files on Windows or .sit on MacOS X.
We've got an example program to compile here, called 'dcfldd'. This program is what we originally used to make the USB installers for Xubuntu we used in workshop 02. We chose this because it's simple and quick to compile.
Click to download, then open with Archive Manager, and show the files when done. You will be in your downloads directory, look for the folder called
dcfldd-1.3.4-1 and open it.
Now hold ctrl, then press press your right mouse button. This will bring up a menu where you can select 'open terminal here'. We need to press Control due to the directory being full of files.
Now you need to use your terminal skills again. Begin with:
This is a script that checks to make sure you've got everything installed you need to compile. Now type:
Now the real work begins, and your computer will build (compile) the program from source. This might take a while. When it is done, you can turn it into proper install by running:
$ sudo make install
Once this is done you can open a terminal and check whether your compile and install works by typing:
$ man dcfldd
This will bring up the manual (man) for dcfldd, proving it is installed and exists as a command.
Going further with the Command Line
That's all for the command line for now, but if you're interested in learning more about it check out the linux Command Line by William Shotts, which you can download from here.
Installing The Rest
It's time to install the rest of the software you want to use. Lets take a look at the software we've got left to install.
|Software||MS Windows/Apple OSX||Xubuntu|
|Video playback||Windows Media Player/Quicktime||
|Web browser||Internet Explorer/Safari||Firefox, Chrome (non-FOSS)|
It's up to you find where and how to install the remaining software. If you've had enough of the command line, jump back into the Ubuntu Software Centre. Your facilitators will come around and help.
A cross-platform Workflow
If you have tried to use the same portable hard drive between multiple operating systems, you will probably have come across incompatible formats and file types. In this section we will look at making your Xubuntu system capable of reading and writing to most common disk formats and customise LibreOffice for compatibility with Microsoft Office and Excel.
Accessing Disks from Windows and OSX
By default your Xubuntu system can read and write to three common file systems used on Windows; FAT, FAT32 and NFTS.
If you stick to the FAT or FAT32 you will have no troubles transferring most files between Windows, Xubuntu and OSX, as all three operation systems can read and write to this disk format by default.
However FAT can only use disks up to 4GB in size, making it really only suitable for USB drives.
FAT32 is better, it has a disk limit of 1000GB, buts it has a file size limit of 4GB making it unsuitable for large media files.
NTFS is suitable to use between Windows and Xubuntu. It allows very large file sizes and disk limits. The problem with NTFS is that OSX can't write to the format without extra software.
The solution for transferring large files between all three OSs is to use the Exfat format. Both Windows and OSX will read and write to this. To install onto your system it's as simple as:
sudo apt-get install exfat-fuse exfat-utils
Accessing OSX disk formats - HFS and HFS+
The most common OSX formats are HFS and HFS+. What if your friend has a Mac and wants to share some files off a HFS or HFS+ disk?
Just reading from these formats is easy. Make sure you install hfsprogs and you are ready to go.
sudo apt-get install hfsprogs
Writing to HFS+
If you want to write to a HFS volume (what OSX calls a disk), then you are OK, but to write to HFS+ volumes you will need to use your command line skills.
We will use fdisk - a command line tool for managing disks to discover more about disks.
Disks in Linux appear as directories inside the
/dev directory. For example, the first hard disk in your computer will likely be
First up you'll need to discover the volume letter and partition number of your hfs+ drive using;
sudo fdisk -l
Now you can force the HFS+ volume to be mounted using the
mount command. Before we do this, let's create a directory to mount it in.
sudo mkdir /media/macvolume
mount and just replace sdx# with your drive details.
sudo mount -t hfsplus -o force,rw /dev/sdx# /media/macvolume
Formatting External (or internal) Disks
One of few missing tools in Xubuntu is a disk utility. Disk utilities are used to format drives or removable media. Let's format a USB stick compatible with Windows or OSX. We'll grab Gnome-Disk-Utility to do the job.
sudo apt-get install gnome-disk-utility
Once it installs, you can access it as 'Disks' from the whisker menu.
On open, Disks will show your internal hard drive, and your DVD drive.
Plug in your USB stick and it will appear in Disks.
To wipe the disk - select format and give it a name.
We will use FAT32 format, which is compatible across all operating systems.
You will be asked to confirm whether you want to wipe the drive, confirm and your drive will be formatted.
LibreOffice is a free and open source office productivity suite. It can be used as a replacement for Microsoft Office, but it uses the Open Document Format. For compatibility with Microsoft Word and Excel, let's change the default format for LibreOffice Writer and Calc.
Open LibreOffice from the the whisker menu.
Go to options.
In the document type select 'Text Document'
And change the type to 'Microsoft Word/2007/2010/2013 XML'
Customising your Web Browser
Xubuntu installs Firefox by default. If you would like to use Google Chrome, you can download it here. Once you are up and running the browser of your choice, we will install an extension or addon that will increase what you can do with your browser.
Ad-blockers do exactly what you would expect - remove advertising from websites. uBlock is particularly good and is less resource intensive, meaning it won't slow your browser.
To see what µBlock does here is a page without it installed. Notice the advertising to the sides of the text and the video ad about to play in the video window.
Now the same page with an µBlock installed.
Notice the video has jumped straight to the monkey, and the advertising on the sides of the page is gone?
You can check on what µBlock is blocking by clicking on menu bar icon, and if you want to disable µBlock for a site, just click the 'Power' button.
Making a Backup
A backup is a copy of your files and other data that you can recover or restore if disaster strikes. To be really safe, your back-up needs to be outside of your computer, and you need to check that the backup works! You can use an external disk drive, USB stick or another computer on a network or the internet. We will demonstrate using a USB stick, with three different ways of backing up.
Copy Your home directory
Remember Xubuntu (and all Linuxes) store all of your personal files in your home directory. If you want to back-up all your personal files, you can simply copy your entire home directory to a USB. Let's do this with the file manager to start with.
Then select your backup USB from the 'Places' menu,
And paste your files in.
This may take a while….
Once your back-up is complete, its a good idea to at least check (or verify) your files have been copied. Just open up the files on your backup disk make sure you copied what you wanted.
Back-up with Archiving
What happens if your files are too big to fit on your back-up media? In my case, my home directory has too many files to fit on my USB, so I'll just grab a few folders and make an archive. An archive is a file format that makes files smaller using compression - in this case we will use zip.
I'm going to archive my pictures folder, but first I will check the size by right clicking the folder and selecting 'Properties'
It's about 400MB. Next I make an archive to compress (make smaller) the folder. Right click and select 'create archive'.
You can check the files size of the archive - it should be smaller that the original, depending on the type of files you have archived.
Once again, you should check your backup to make sure it has worked.
Back Ups using Cronopete
An easy way to keep your data safe is to use a back-up program. There are a number of command line utilities that can be used, such and rsync or duplicity. We will install a GUI based utility that ties together these tools in an interface that is modelled on Apple's Time Machine app. You will need a USB stick or drive you can wipe and reformat to use cronopete.
Cronopete is not available in the main Ubuntu repositories, but you can can use this build.
With cronopete installed its time to set our backup settings. Use the whisker menu find cronopete. just start typing 'cronpete' and select 'backup settings'
First up we need to prepare a backup disk - cronopete will erase as format the disk. Plug in your USB disk, and select 'change disk'
Select your USB stick (make sure its the one you want!) and click OK.
You will be asked to confirm format of this drive. Remember this will erase the entire contents!
Once the format is complete, its time to choose what you want to back up - click on 'options'
And add a folder to backup.
I'm going to add the 'Documents' folder in my home directory.
It should appear in cronopete like this. I can also set the backup interval here. This is how often cronopete will backup.
Backup with cronopete
Now it's time to turn cronopete on and make sure it is in the menu bar.
Now you can open the menu bar
and select 'backup now'
The first backup will be started straight away, and you will see the information here.
Oops! I've lost some files...
Now that we've done a backup, its time to test the restoring. To do this I'm going to delete some files from my documents back-up and then see if I can use cronopete to get them back. Here is the contents of my documents folder I've already backed up.
Now I'm going to 'accidentally' delete all these files and make a new one called 'oops'
And do another backup using the menu bar.
Oops! I've just lost all those files! Lets try to get them back with cronopete.
Restoring with cronopete
To open the restore GUI use the cronopete menu bar.
and select 'Restore'.
You will see a window like this. The backups appear as windows going back in time. The front window is the latest backup.
Lets try to find our lost files by clicking on the back arrow. Here are the files I want.
Now select them all and click restore.
The files will be copied back into my Documents directory - we can tell they are backups as all the files have '.restored' in the file name.
And we are done!