1 00:00:01,590 --> 00:00:04,500 Hello, everyone, and welcome to this lesson. 2 00:00:05,130 --> 00:00:12,810 In this lesson, we are going to understand a very important concept about network repositories and 3 00:00:12,810 --> 00:00:13,890 Kali Linux. 4 00:00:14,010 --> 00:00:15,780 Now what are repositories? 5 00:00:15,990 --> 00:00:24,840 So it's basically a place from where you can fetch, download and install all the tools or softwares 6 00:00:24,840 --> 00:00:27,360 that you want in your Linux machine. 7 00:00:28,260 --> 00:00:37,080 Kali by default has its own repo that you can update and fetch tools or any programs that you want. 8 00:00:37,590 --> 00:00:45,750 But sometimes there are some tools or other programs which are not in the official repository. 9 00:00:47,100 --> 00:00:53,970 So to do that, you have to manually add new repositories in your operating system. 10 00:00:55,080 --> 00:01:03,210 Once you add this new repo path, it allows you to fetch, download, and install those new tools or 11 00:01:03,210 --> 00:01:04,020 programs. 12 00:01:04,830 --> 00:01:07,890 So in this lesson, we are going to walk through that. 13 00:01:07,890 --> 00:01:11,340 What are sources start list repositories? 14 00:01:12,030 --> 00:01:18,660 How you can come across an error when you want to install a specific software which is not in the official 15 00:01:18,660 --> 00:01:19,260 repo. 16 00:01:19,830 --> 00:01:27,600 How to fix it by adding a new path in the source start list and update the repository of our Kali Linux 17 00:01:27,600 --> 00:01:31,950 machine and then successfully install that software that you want. 18 00:01:33,570 --> 00:01:39,360 So the first thing that we are going to see is we are going to read these sources start list file which 19 00:01:39,360 --> 00:01:41,870 is inside Etsy apt. 20 00:01:42,630 --> 00:01:50,400 When you go over here by default in the Linux default installation, this is the official repo that 21 00:01:50,400 --> 00:01:58,860 you will see now when you navigate to the next directory which is sources dot list dot D, you can see 22 00:01:58,860 --> 00:02:06,600 over here there are three list files which are been added explicitly which allows you to install Google 23 00:02:06,600 --> 00:02:10,710 Chrome, protonvpn, sublime text dot list, etc.. 24 00:02:11,130 --> 00:02:14,340 Now let us try to read one of the list file. 25 00:02:14,700 --> 00:02:18,780 So let's say we are reading Google Chrome dot list here. 26 00:02:18,810 --> 00:02:23,550 You can see this file is automatically configured which is written in comment. 27 00:02:23,760 --> 00:02:28,710 You may comment out this entry, but any of the modifications may be lost. 28 00:02:28,740 --> 00:02:33,480 Here you can see the architecture is AMD 64. 29 00:02:34,140 --> 00:02:38,760 The version of the program that is going to be downloaded is for Debian. 30 00:02:38,760 --> 00:02:46,800 It is going to be downloaded from this specific URL, which is DL, which stands for download or Google.com 31 00:02:46,800 --> 00:02:50,700 Linux Chrome for Debian, the stable main version. 32 00:02:51,810 --> 00:02:53,520 I hope you guys understood this. 33 00:02:53,700 --> 00:02:56,490 Now let us see the next one. 34 00:02:56,490 --> 00:03:00,120 This one is for Protonvpn stable dot list. 35 00:03:00,840 --> 00:03:05,250 It says that this is a Debian download. 36 00:03:05,250 --> 00:03:13,740 This is a specific URL which has been signed by a keyring, which is a valid certificate which allows 37 00:03:13,740 --> 00:03:17,790 to download files officially from the server. 38 00:03:18,900 --> 00:03:20,250 Let us see the next one. 39 00:03:22,910 --> 00:03:24,440 Let's see what's next. 40 00:03:24,650 --> 00:03:32,270 So let's say I want to install this program, which is signal now signal like any other application 41 00:03:32,270 --> 00:03:34,130 like Telegram or WhatsApp. 42 00:03:34,310 --> 00:03:36,470 It allows you to do communication. 43 00:03:36,860 --> 00:03:45,170 This specific software is not in the official repository, which means you cannot install it directly 44 00:03:45,170 --> 00:03:49,520 by typing the command app to get install signal. 45 00:03:50,060 --> 00:03:57,530 So once we go on this website here we see the Linux Debian based install instructions which we are going 46 00:03:57,530 --> 00:04:07,280 to follow in which we primarily are going to give the repository path to our Linux machine and then 47 00:04:07,280 --> 00:04:11,030 we are going to fetch the tool and install it successfully. 48 00:04:11,660 --> 00:04:13,790 So here you can see there are three steps. 49 00:04:13,790 --> 00:04:21,380 Step one, to install our official public software signing key, which will validate that the request 50 00:04:21,380 --> 00:04:25,130 that is going is valid and you will be able to download the software. 51 00:04:25,160 --> 00:04:31,790 Next is adding the repository to your list of repositories and finally the command to install this tool. 52 00:04:32,150 --> 00:04:38,060 Let's see what happens if we directly run the command without giving the path to the repo. 53 00:04:38,060 --> 00:04:44,870 In our source short list you can see our machine will give an error like this which says unable to locate 54 00:04:44,870 --> 00:04:53,390 package, this is because it is unable to identify the signal desktop package into the official default 55 00:04:53,390 --> 00:04:56,210 repository which it is trying to fetch from. 56 00:04:59,060 --> 00:04:59,570 Okay. 57 00:04:59,570 --> 00:05:02,120 So we are going to follow the steps one by one. 58 00:05:02,510 --> 00:05:08,120 The first step is to give the official signing key in our system. 59 00:05:08,150 --> 00:05:15,110 The next step is going to download the repository to our sources start list. 60 00:05:15,110 --> 00:05:17,840 So I'm going to copy paste the command over here. 61 00:05:18,230 --> 00:05:26,810 Here you can see this is exactly the same thing that we saw in Chrome and Protonvpn, which says the 62 00:05:26,810 --> 00:05:35,750 architecture is aimed 64 for Debian assigning key and from there the program or the tool needs to be 63 00:05:35,750 --> 00:05:36,800 downloaded from. 64 00:05:37,970 --> 00:05:40,820 Let us verify this by going in the same directory. 65 00:05:40,820 --> 00:05:44,150 And you can see over here signal dot list. 66 00:05:44,180 --> 00:05:50,480 One more list has been created successfully and when we try to read this list it is exactly as same 67 00:05:50,480 --> 00:05:53,270 as for Google Chrome and Protonvpn. 68 00:05:53,870 --> 00:05:54,490 Great. 69 00:05:54,500 --> 00:05:59,750 So now we have successfully added the list in our Kali Linux. 70 00:05:59,990 --> 00:06:04,010 Now we need to update our repositories. 71 00:06:04,010 --> 00:06:11,780 So for that we have to run the command, which is sudo apt update when we run this command. 72 00:06:11,810 --> 00:06:21,000 It allows our Linux machine to update the repo path and fetch the tools from new given source to start 73 00:06:21,020 --> 00:06:21,530 list. 74 00:06:22,380 --> 00:06:29,580 As you can see get one request says that it has successfully updated its repo path to fetch programs 75 00:06:29,580 --> 00:06:32,700 from update signal dot org. 76 00:06:33,000 --> 00:06:35,400 Next we saw google.com. 77 00:06:35,430 --> 00:06:38,760 The third one is update start signal dot org. 78 00:06:38,850 --> 00:06:46,860 Again, these are all the custom path that we have added that we want to fetch the programs from the 79 00:06:46,860 --> 00:06:48,240 next hit. 80 00:06:48,270 --> 00:06:55,770 As you can see over here are basically the default rip apart from where it is trying to fetch, if there 81 00:06:55,770 --> 00:07:01,200 has been new programs that has been added or any new packages that have been updated. 82 00:07:01,800 --> 00:07:09,480 It will take few seconds to update its official repository and we just have to wait in for here. 83 00:07:10,110 --> 00:07:17,460 Once this step is completed successfully, we would now be able to run the command, which is to install 84 00:07:17,460 --> 00:07:19,080 the signal package. 85 00:07:19,410 --> 00:07:25,740 As we saw before, when we ran that specific command, it gave us an error. 86 00:07:26,010 --> 00:07:28,440 But let us see this time what will happen? 87 00:07:28,500 --> 00:07:32,790 Will it again give an error or will it allow us to install? 88 00:07:33,480 --> 00:07:35,490 So it's almost complete. 89 00:07:37,110 --> 00:07:45,270 So we are going to base the command this time and hit enter and you can see it is successfully installing 90 00:07:45,270 --> 00:07:46,920 the package that we want. 91 00:07:47,040 --> 00:07:54,840 Here we can see previously we got the error while installing the signal text drop package. 92 00:07:55,230 --> 00:08:04,110 We successfully ran the first command to add the list file in our system and the key ring as well. 93 00:08:04,140 --> 00:08:11,070 After that we did an APT update and then we were successfully able to install the package in our system. 94 00:08:11,550 --> 00:08:13,350 I hope you guys understood this. 95 00:08:13,590 --> 00:08:14,370 Thank you.