1 00:00:00,150 --> 00:00:01,350 Hello there, you beautiful people. 2 00:00:01,350 --> 00:00:07,260 And a massive congratulations from me for making it through this section of the course on managing software 3 00:00:07,260 --> 00:00:08,760 with your package manager. 4 00:00:08,760 --> 00:00:13,500 Now, I know it was a tough one with loads of new concepts for you to have to digest, but you got there 5 00:00:13,500 --> 00:00:13,860 anyway. 6 00:00:13,860 --> 00:00:18,180 And in fact we covered so many concepts in this section of the course that I wanted to take the time 7 00:00:18,180 --> 00:00:23,160 to have a quick recap of what we covered and to give you some wholehearted and well deserved praise 8 00:00:23,160 --> 00:00:24,450 for making it this far. 9 00:00:24,450 --> 00:00:26,460 So congratulations and well done. 10 00:00:26,460 --> 00:00:30,510 I don't know of any other course or resource on the internet that covers these concepts in that much 11 00:00:30,510 --> 00:00:31,020 detail. 12 00:00:31,020 --> 00:00:35,310 So you should be very proud of yourself for digesting it and making it all the way through. 13 00:00:35,340 --> 00:00:36,870 Massive congratulations. 14 00:00:36,870 --> 00:00:40,860 So let's have a quick recap of what we covered in this section of the course. 15 00:00:40,860 --> 00:00:45,480 So first, we started off by discussing the new project and free software in general. 16 00:00:45,480 --> 00:00:50,850 And you hear you learn about the history of the new project that was started by Richard Stallman in 17 00:00:50,850 --> 00:00:52,140 1983. 18 00:00:52,140 --> 00:00:57,150 Now the new project started with the aim of operate of creating an operating system based upon giving 19 00:00:57,150 --> 00:01:01,110 users freedom to control how the software was used and how it functioned. 20 00:01:01,110 --> 00:01:05,970 And you learned about the four freedoms that free software gives you, and you learn that a prerequisite 21 00:01:05,970 --> 00:01:10,470 requirement for those freedoms is to have access to the source code of the software. 22 00:01:10,470 --> 00:01:16,290 Now, because this software is openly accessible, such software is called open source software. 23 00:01:16,680 --> 00:01:22,110 Now when we headed over then we headed over to the website and downloaded, modified and compiled our 24 00:01:22,110 --> 00:01:26,670 very own version of the command so that it said Hello there, you beautiful people, whenever it was 25 00:01:26,670 --> 00:01:26,910 run. 26 00:01:26,910 --> 00:01:32,010 And in that process you saw how to configure the new C compiler using the command and you saw how to 27 00:01:32,010 --> 00:01:34,410 compile code and install it on your system. 28 00:01:34,410 --> 00:01:36,270 But this was a rather tedious process. 29 00:01:36,270 --> 00:01:41,850 And so we next introduce to you how to how to use package managers and software repositories. 30 00:01:41,850 --> 00:01:46,560 Now, Ubuntu and many other distributions have thousands and thousands of software packages available 31 00:01:46,560 --> 00:01:47,970 for you to download and try out. 32 00:01:47,970 --> 00:01:48,870 And Ubuntu. 33 00:01:48,900 --> 00:01:53,910 These packages are stored in four repositories that help keep software separated based upon the different 34 00:01:53,910 --> 00:01:56,820 freedoms and levels of reliability they give to the user. 35 00:01:56,820 --> 00:02:02,250 So the main repository is maintained by Canonical, which is the company that makes up unto and therefore 36 00:02:02,250 --> 00:02:04,950 the main repository should be your first port of call. 37 00:02:05,670 --> 00:02:11,910 The universe repository contains free software that is maintained by the community, and then you've 38 00:02:11,910 --> 00:02:18,120 got the restricted repository which contains software for device drivers, and then you've got the multiverse 39 00:02:18,120 --> 00:02:23,910 repository which contains software restricted by legal and copyright issues. 40 00:02:23,910 --> 00:02:29,970 So we then headed over to packages to and browse through the packages that are available to us. 41 00:02:30,210 --> 00:02:36,240 We saw that there are thousands and thousands of packages that can be they can each have different dependencies, 42 00:02:36,240 --> 00:02:40,860 they can have different recommendations, they can have different version numbers and so on. 43 00:02:40,860 --> 00:02:45,930 And you realize that this would be an absolute nightmare to try and organize all manually. 44 00:02:45,930 --> 00:02:50,940 And that's where you learned about the benefit of a Ubuntu package manager that will do all of that 45 00:02:50,940 --> 00:02:51,720 for us. 46 00:02:51,720 --> 00:02:57,450 Now pretty much every Linux distribution has a package manager, but the one on Ubuntu is called APT, 47 00:02:57,450 --> 00:03:00,030 which stands for Advanced Packaging Tool. 48 00:03:00,030 --> 00:03:03,030 So apt for advanced packaging tool. 49 00:03:03,030 --> 00:03:06,150 Now we then started to look at how the package manager works. 50 00:03:06,150 --> 00:03:12,210 We saw that it downloads lists of available packages into the cache on your system and you can search 51 00:03:12,210 --> 00:03:17,820 this cache for packages relevant to a search term using APT cache search and show more information about 52 00:03:17,820 --> 00:03:19,740 a given package using APT cache. 53 00:03:19,740 --> 00:03:24,930 So now the most important thing about having a cache is making sure that it's always up to date and 54 00:03:24,930 --> 00:03:28,680 you learn how to update the cache using sudo apt to get update. 55 00:03:28,680 --> 00:03:33,210 And one amazing thing about the package manager is their ability to make sure that all the software 56 00:03:33,210 --> 00:03:36,630 on your system is completely up to date in one go. 57 00:03:36,690 --> 00:03:42,090 Now to do this you use sudo apt get upgrade, but remember that you should always make sure that the 58 00:03:42,090 --> 00:03:48,690 package lists in your cache are up to date first using sudo apt get update before upgrading packages 59 00:03:48,690 --> 00:03:49,590 to the new version. 60 00:03:49,590 --> 00:03:51,990 Learn numbers using pseudo apt get upgrade. 61 00:03:51,990 --> 00:03:57,000 However, in order to be able to keep a package up to date, it needs to be installed through the package 62 00:03:57,000 --> 00:03:59,070 manager and not compiled from source. 63 00:03:59,070 --> 00:04:04,200 So to do bear that in mind and try to install packages from the software repositories wherever possible, 64 00:04:04,200 --> 00:04:09,150 which is actually the next topic that we came onto installing, you saw that you can install new packages 65 00:04:09,150 --> 00:04:15,990 on your system using sudo apt get install and the packages come pre compiled and ready to go. 66 00:04:15,990 --> 00:04:17,910 You don't even need to reboot your system. 67 00:04:18,180 --> 00:04:20,160 It's all ready to go as soon as you install it. 68 00:04:20,160 --> 00:04:25,260 And we install the X11 apps package which gave us the fun exercise package to play around with. 69 00:04:25,260 --> 00:04:30,600 And we saw so many other applications such as X Man, which is a graphical way of browsing the manual 70 00:04:30,600 --> 00:04:31,230 pages. 71 00:04:31,230 --> 00:04:35,640 But because the package is installed via the package manager a pre compiled, that means we need another 72 00:04:35,640 --> 00:04:38,010 way to take a look at the source code. 73 00:04:38,010 --> 00:04:38,350 Right. 74 00:04:38,400 --> 00:04:43,820 So then we discussed about how the Ubuntu archives are structured and how to configure our sources dot 75 00:04:43,860 --> 00:04:47,250 list file to allow us to actually download source code. 76 00:04:47,910 --> 00:04:53,520 We then downloaded the source code for the X11 apps package and took a look at the code for the exercise 77 00:04:53,520 --> 00:04:54,120 program. 78 00:04:54,120 --> 00:04:59,550 So we saw behind the scenes and this code can be compiled and installed in the same way as the code 79 00:04:59,550 --> 00:04:59,910 we download. 80 00:04:59,970 --> 00:05:01,170 Loaded from the new website. 81 00:05:01,170 --> 00:05:06,780 But remember that code that's compiled and installed manually lose it loses its ability to be kept up 82 00:05:06,780 --> 00:05:08,250 to date with the package managers. 83 00:05:08,340 --> 00:05:13,380 Oh, and by the way, everything that is on the new website is also in the software repositories, so 84 00:05:13,380 --> 00:05:15,830 you can just use the repositories going forward. 85 00:05:15,840 --> 00:05:21,140 And finally, we saw how to uninstall packages using the package manager to remove a package. 86 00:05:21,150 --> 00:05:27,210 The best method is the sudo apt get purge because that removes and removes any configuration files that 87 00:05:27,210 --> 00:05:31,260 came with the package that might just stay behind and clog up your hard drive. 88 00:05:31,260 --> 00:05:36,870 So sudo apt get purge to remove packages and when you install the package it often comes with some dependencies 89 00:05:36,870 --> 00:05:40,080 that might no longer be needed when you uninstall that package. 90 00:05:40,080 --> 00:05:46,590 So to get rid of any dangling dependencies you can use sudo apt get auto remove. 91 00:05:46,590 --> 00:05:51,720 So you also learn that when a package is installed, its dot db file is saved locally on the computer. 92 00:05:51,720 --> 00:05:55,650 And if a lot of these DB files build up, they can really take up a lot of space. 93 00:05:55,650 --> 00:06:00,630 So to remove all of these DB files you simply run sudo apt get clean. 94 00:06:00,630 --> 00:06:05,460 Now you may not want to remove them all, but instead just remove the ones that are no longer accessible 95 00:06:05,460 --> 00:06:06,420 from the repositories. 96 00:06:06,420 --> 00:06:10,110 So to do that run sudo apt get auto clean. 97 00:06:10,560 --> 00:06:16,170 Now with that you now have a solid understanding of what open source and free software is all about, 98 00:06:16,170 --> 00:06:20,730 where it came from, how to search for it, how to install it, how to manage it, and how to uninstall 99 00:06:20,730 --> 00:06:22,650 it on your new Linux computer. 100 00:06:22,650 --> 00:06:27,720 So remember that each of these pieces of software comes with its own man page for you to read and learn 101 00:06:27,720 --> 00:06:29,250 about the packages as well. 102 00:06:29,250 --> 00:06:30,750 So you've got complete freedom. 103 00:06:30,750 --> 00:06:35,250 Now, I've put a cheat sheet in the resources section for this video that lays out each of the commands 104 00:06:35,250 --> 00:06:39,960 and useful files and folders on the system that we've covered in this section, so that you can refer 105 00:06:39,960 --> 00:06:43,170 to that when you're working with packages, if you ever need a bit of a refresher. 106 00:06:43,170 --> 00:06:49,200 But in all honesty, you have come so far in this section of the course and I am so unbelievably proud 107 00:06:49,200 --> 00:06:49,560 of you. 108 00:06:49,560 --> 00:06:54,300 There is a whole massive world of software out there for you to explore, and if you can think of it, 109 00:06:54,300 --> 00:06:57,060 it's probably in the repository, so go and have an explore. 110 00:06:57,060 --> 00:07:02,880 Why not head over to packages dot com and have a search around and see and install some stuff and try 111 00:07:02,880 --> 00:07:03,330 it out. 112 00:07:03,330 --> 00:07:08,220 Now unfortunately all good things must come to an end and the time has come that we need to wrap up 113 00:07:08,220 --> 00:07:10,050 the course, so to say goodbye. 114 00:07:10,080 --> 00:07:11,970 I'll see you in the next video.