1 00:00:06,679 --> 00:00:09,710 So when you work with Linux, there are different ways to manage software. 2 00:00:10,230 --> 00:00:12,789 And let's talk about these different solutions. 3 00:00:14,009 --> 00:00:20,620 The most fundamental way is to use source packages. These are archives, typically tarballs, which is a name for archives created by 4 00:00:20,620 --> 00:00:27,230 TAR that can be used to distribute source code. And next, if it is source code, you need to compile it. 5 00:00:27,789 --> 00:00:30,989 Fortunately, that's not something that you need to do a lot nowadays. 6 00:00:31,850 --> 00:00:36,159 Another option is where archives are used. So archives can contain program files that 7 00:00:36,159 --> 00:00:40,469 are installed by extracting the archive and copying the files to the right location. 8 00:00:41,390 --> 00:00:45,760 That works, but it's not really convenient because if after the installation you need to 9 00:00:45,760 --> 00:00:50,130 upgrade or remove your application, you might be in for a lot of work. 10 00:00:50,969 --> 00:00:54,409 And that is why on Linux the standard is to work with packages. 11 00:00:55,429 --> 00:01:00,189 Packages are archived with metadata and package installation is tracked in a 12 00:01:00,189 --> 00:01:04,950 local package database, which makes updating and removing packages so much easier. 13 00:01:06,170 --> 00:01:10,805 Software managers sit on top of these packages and they install packages 14 00:01:10,805 --> 00:01:15,439 from repositories, which are online resources that contain large collections of packages. 15 00:01:16,079 --> 00:01:18,579 And they are used for easy management of dependencies. 16 00:01:19,120 --> 00:01:24,459 And the latest addition to the way how software is used on Linux are Flatpak and Snap. 17 00:01:25,379 --> 00:01:30,560 These are recent additions that install applications in an isolated container like environment. 18 00:01:31,180 --> 00:01:34,549 In the next couple of videos you'll learn more about all of these methods.