Hello there, you beautiful people.
And a massive congratulations from me for making it through this section of the course on managing software
with your package manager.
Now, I know it was a tough one with loads of new concepts for you to have to digest, but you got there
anyway.
And in fact we covered so many concepts in this section of the course that I wanted to take the time
to have a quick recap of what we covered and to give you some wholehearted and well deserved praise
for making it this far.
So congratulations and well done.
I don't know of any other course or resource on the internet that covers these concepts in that much
detail.
So you should be very proud of yourself for digesting it and making it all the way through.
Massive congratulations.
So let's have a quick recap of what we covered in this section of the course.
So first, we started off by discussing the new project and free software in general.
And you hear you learn about the history of the new project that was started by Richard Stallman in
1983.
Now the new project started with the aim of operate of creating an operating system based upon giving
users freedom to control how the software was used and how it functioned.
And you learned about the four freedoms that free software gives you, and you learn that a prerequisite
requirement for those freedoms is to have access to the source code of the software.
Now, because this software is openly accessible, such software is called open source software.
Now when we headed over then we headed over to the website and downloaded, modified and compiled our
very own version of the command so that it said Hello there, you beautiful people, whenever it was
run.
And in that process you saw how to configure the new C compiler using the command and you saw how to
compile code and install it on your system.
But this was a rather tedious process.
And so we next introduce to you how to how to use package managers and software repositories.
Now, Ubuntu and many other distributions have thousands and thousands of software packages available
for you to download and try out.
And Ubuntu.
These packages are stored in four repositories that help keep software separated based upon the different
freedoms and levels of reliability they give to the user.
So the main repository is maintained by Canonical, which is the company that makes up unto and therefore
the main repository should be your first port of call.
The universe repository contains free software that is maintained by the community, and then you've
got the restricted repository which contains software for device drivers, and then you've got the multiverse
repository which contains software restricted by legal and copyright issues.
So we then headed over to packages to and browse through the packages that are available to us.
We saw that there are thousands and thousands of packages that can be they can each have different dependencies,
they can have different recommendations, they can have different version numbers and so on.
And you realize that this would be an absolute nightmare to try and organize all manually.
And that's where you learned about the benefit of a Ubuntu package manager that will do all of that
for us.
Now pretty much every Linux distribution has a package manager, but the one on Ubuntu is called APT,
which stands for Advanced Packaging Tool.
So apt for advanced packaging tool.
Now we then started to look at how the package manager works.
We saw that it downloads lists of available packages into the cache on your system and you can search
this cache for packages relevant to a search term using APT cache search and show more information about
a given package using APT cache.
So now the most important thing about having a cache is making sure that it's always up to date and
you learn how to update the cache using sudo apt to get update.
And one amazing thing about the package manager is their ability to make sure that all the software
on your system is completely up to date in one go.
Now to do this you use sudo apt get upgrade, but remember that you should always make sure that the
package lists in your cache are up to date first using sudo apt get update before upgrading packages
to the new version.
Learn numbers using pseudo apt get upgrade.
However, in order to be able to keep a package up to date, it needs to be installed through the package
manager and not compiled from source.
So to do bear that in mind and try to install packages from the software repositories wherever possible,
which is actually the next topic that we came onto installing, you saw that you can install new packages
on your system using sudo apt get install and the packages come pre compiled and ready to go.
You don't even need to reboot your system.
It's all ready to go as soon as you install it.
And we install the X11 apps package which gave us the fun exercise package to play around with.
And we saw so many other applications such as X Man, which is a graphical way of browsing the manual
pages.
But because the package is installed via the package manager a pre compiled, that means we need another
way to take a look at the source code.
Right.
So then we discussed about how the Ubuntu archives are structured and how to configure our sources dot
list file to allow us to actually download source code.
We then downloaded the source code for the X11 apps package and took a look at the code for the exercise
program.
So we saw behind the scenes and this code can be compiled and installed in the same way as the code
we download.
Loaded from the new website.
But remember that code that's compiled and installed manually lose it loses its ability to be kept up
to date with the package managers.
Oh, and by the way, everything that is on the new website is also in the software repositories, so
you can just use the repositories going forward.
And finally, we saw how to uninstall packages using the package manager to remove a package.
The best method is the sudo apt get purge because that removes and removes any configuration files that
came with the package that might just stay behind and clog up your hard drive.
So sudo apt get purge to remove packages and when you install the package it often comes with some dependencies
that might no longer be needed when you uninstall that package.
So to get rid of any dangling dependencies you can use sudo apt get auto remove.
So you also learn that when a package is installed, its dot db file is saved locally on the computer.
And if a lot of these DB files build up, they can really take up a lot of space.
So to remove all of these DB files you simply run sudo apt get clean.
Now you may not want to remove them all, but instead just remove the ones that are no longer accessible
from the repositories.
So to do that run sudo apt get auto clean.
Now with that you now have a solid understanding of what open source and free software is all about,
where it came from, how to search for it, how to install it, how to manage it, and how to uninstall
it on your new Linux computer.
So remember that each of these pieces of software comes with its own man page for you to read and learn
about the packages as well.
So you've got complete freedom.
Now, I've put a cheat sheet in the resources section for this video that lays out each of the commands
and useful files and folders on the system that we've covered in this section, so that you can refer
to that when you're working with packages, if you ever need a bit of a refresher.
But in all honesty, you have come so far in this section of the course and I am so unbelievably proud
of you.
There is a whole massive world of software out there for you to explore, and if you can think of it,
it's probably in the repository, so go and have an explore.
Why not head over to packages dot com and have a search around and see and install some stuff and try
it out.
Now unfortunately all good things must come to an end and the time has come that we need to wrap up
the course, so to say goodbye.
I'll see you in the next video.