 So, the topic which I will want to talk about here is building customized Linux based operating system using Malik's script. And I am recognized by Tarun Kumar. I'm a final year undergraduate student with electrical engineering as my core. And I did GSOC in 2017, 2018. I was a mentor in GCI 17, 18, code heat 17 and 18. You can find me with meets2tarun.github.io on Facebook, LinkedIn, GitHub, with the same handle meets2tarun. So Malik's, which I used for building the OS. So if we subset it, so Malik stands for beautiful and Alex loving it. So it's like an operating system which is beautiful and everyone loves it. So the basic qualities of Malik's, it's based on LXQT as the desktop environment. It's based on Ubuntu architecture. The basic philosophy behind this, it's very lightweight as compared to others. And the thing that makes different from other Linux distribution is that you are able to customize it. Talking customizing of Malik's is through customizing and altering the codes. And you get a pre-configuration in Malik's. There is a proper documentation with the help of which you are able to make certain changes in the operating system. There is a system lock feature, which will be described in the upcoming slides. So let's talk about Malik's generator. So I explained what is Malik's, Malik's is just an operating system. And we can make changes into it with the help of changing and altering the code. And there is a web app known as Malik's generator. So Malik's generator is just a web app and it is made for all the users out there. They are not able to make changes in the code to make, to customize their own OS. So we created Malik's generator with the help of which one just needs to go through this particular form and make changes to this particular form and whatever changes he or she made it will get implemented in that particular Linux OS. So you don't need to customize the code, don't need to changes the code. And at the end of the day, you are able to create your own customized Linux OS. So let me go through the form quickly. First you need to have your email address on which you have to put your email address and there you get an ISO link at the end of the build. You have to name your distribution. So as you create your own distribution, you want it to name something special for yourself. There is a browser homepage, there is a browser search engine. So if you selected some browser to get installed in it, so you want that particular link to be the homepage of that browser or that particular link from which all the strings will be searched. That will be the browser search engine. And there is a 32 bit as well as 64 bit support. By default, if you didn't check this button, it would be 64 bit. And if you check it, you will get the OS into 34 bit. So we have support for both 32 as well as 64 bits. And there are some queries over here like notification, screensaver, sleep modules. So if you check those ticks, so it would be like you would be able to see those features in that. And there is a third party softwares like Chromium, Firefox. So if a person just want that particular package in it, he will check it and that only package will be installed. There is a logo. So you have to upload an SVG where you will find that particular logo for that OS. There is a wallpaper. So you just need to upload a background image that will be set as a wallpaper over the OS. And there is a desktop file so you can upload here a zip file or a bunch of files that will be present on the desktop. Click on the build button, wait for 10 minutes, and you will get a link on your email with the ISO. Then you can run it in VM, live boot it, and you will see all those features which you created here will be present in the operating system. So basically what happens here, talking about a workshop, talking about a conference, we have to set up the computer which is going to project, the computer which is going to be used in the workshop with those particular settings which is needed for that workshop or conference. So just consider a scenario. There is a workshop and the person is going to have around 100 participants in the workshop. So a particular software like something is going to be needed throughout all the computers. So that single person has to set up all those 100 computers with that particular software and that particular settings in the software. Our Mellix can be a solution for him. So he can go through a single time setup. He can use Mellix to generate that particular ISO with all those desirable customizable settings which he wants all through all those computers. So we have future plans, how to set up all those computers. We can use Ansible. Now this idea is not yet implemented. This is just a perspective to implement in the future Mellix. We can use Ansible and with the help of SSH, we can put it run on all the computers throughout. So going through all the, so this is various snapshots. So Mellix generator was like this just one year before. It's around six months before and currently it's like this. So Mellix generator gives us power to customize the OS. So we use Travis in the background in those 10 minutes Mellix generator triggers that particular Mellix repository and Travis build it and deployed it on GitHub. We use a send grid to send the ISO link. Users can upload wallpapers, set up packages and customize it and the ISO will be mailed to the user. So in the last GSOC, I went through lots of milestone but one of the important milestones is that before that it's just 32 bit but now the system, most of the machines are 64 bit and they required that particular 64 bit OS. So we are able to convert it into 64 bit just this year only. Okay, so the takeaways for Mellix generator is that we are able to generate our own customized Linux distribution in around 10 to 15 minutes. Even with our mobile phone also. We can generate OS for conferences, summits and workshops with all those desirable settings. We can likewise our people, one of my friend just saw my computer and he was just impressed by my workspace. Most of the developers are here, they must want to show their own computers to their friends or they may get impressed by seeing their workspace and they say, wow, how do you do that? What desktop flavor you are using? What is that screensaver? What is that terminal that you are using? So you can make all those changes and you can generate an ISO and distribute it to your friend, save for future. So you set up your own way of working on in a workspace in your computer but somehow you find some bug and you have to have to remove all the things and reset the operating system. So it will be back straight to the original version and you have to again start with the fresh operating system. You have to set up all those things in that. So you can set up your own operating system and then save it in the ISO format and again when you find some bug, something, you don't need to go through the proper operating system, you can install that particular ISO and it will have all those customizable settings. So there is few ideas that I would like my fellow developers to implement. So we can use InSable, we can use Docker image. So now today, Melix is only usable to generate an ISO image. So what we are thinking, we can use virtual machine images, we can use Docker container for web-based interface. So the idea behind is that we can use an link, we can use a link and with the help of which the person just go to the link and find that way to operate that operating system on that particular link and it will have all those features which is made customized by some other user. So suppose that I give you link and there is a workshop and a person is there who just distributed a link and all those people directly go to the link with the help of internet or internet and find a workspace which is suitable for working in that workshop. Okay, so Melix generator and Melix has some Melix add-ons. So one of the important add-ons is Melix system log. So basically in library, there are computers in computer centers. There are computers and people go there, students go there and make dirty everything. They make dirty on the desktop, they alternate the files, they change it, they install their own installation, it's not given there. So they make dirtiness over there. They create folders, they create files and then what the manager of that computer center do, he went to all the computers over there and he cleans it. So Melix system log, it's just with the help of this. You just need to enable that and ask the students to attend that lab and after the students leave that, you just need to restart your computer and at the point, at the instant when you just enable the system log, it will go straight to that particular instance. So all those changes which are made after enabling the system log will be vanished. There is a package called as Mu. So basically we are here and we are working on different Linux distributions. Someone works on Debian, some works on Fedora, someone on different operating system. So if you wanted someone work on YUM, YUM wants to install some packages using YUM, some works, some install using sudo install, app.get install. So if in the case when you are not familiar with U1 too, you are just familiar with Fedora, you want to install some package, for example, YUM install package one and if that particular package one exist, it will automatically translate it to app.get install package one and you are able to install that package. So here are a few links. The first one is where the web app is deployed. You can find it here. The malix where the original ISO is there. This is the link for malix generator, the web app where you will be able to find the web app source code. This is the system lock source code. This is the MewSource code. This is the Gitter channel where malix discussions goes on. So on the very first slide, I went through this conversation. So this is the idea behind that if we are able to customize an operating system and use that in that workshop, I think there would be no problem if we turn off the screen shaver feature, if we turn off the notification feature and install all those requirements which are needed for in that particular workshop. So no one needs to be take care that screen shaver will not get on in the middle. So these are the few peoples who were starting with the development in this project. So you can find me here, Tarun. This is Harsh. This is my co-developer from the past two years, Niko, Yao and Andre. These are the mentors which helped me able to do all these things. Without them, it's not possible. So I would like to thank on behalf of malix teams. It's my honor to represent malix and malix generator on behalf of malix team. Thank you. I hope it makes some sense out of these 20 minutes. So I welcome all the questions from your side. Yes. System Lock is basically just a JS based code. Yeah, there is a little Python there. So what we do, in the windows, if you use windows, there is a system restore point. There is a way to create the system restore point. So when you create that point, it's similar like it's created, in windows there is a drive CDE. So C drive will get restored to that particular point. So we use exactly the same philosophy there. In the system lock, as soon as we turn on that particular system lock feature, we fix to that particular instance. And all the changes made after that enabling of the system lock will not be the permanent changes. That will be temporary changes. And that will switch again to that instance after restarting the system. For the timing, users home directory. Yeah, for the timing. Because, yes? Yeah, that will be maintained. Only the changes made in the home directory will be vanished. Yeah, because it is designed basically for workshops like and laboratory like things. So when a person goes there, I went, I also went in labs. So I see that people's make that in us on desktop and they make changes the file. They may also delete the important files and they may also create their own containers on the desktop. So and the instructor of the lab then goes to each and every computer and then cleans it for the next batch to come again. So that's a solution. You don't need to do that. You just need to restart the system and it will get again to that particular instance. Okay, yes? Yeah, yeah. So why, just for home directory, why not the whole workspace? Yeah, that would be much better, no? The whole workspace which has all those configurations, all those packages, all those desirable settings which you wanted to work for. Just suppose you forget your laptop in your home and you need to do some work. You need to edit some slides. You need to edit some documents on a system which is not a particular of yours. And using some other systems make you feel that, this is not, I'm not able to do that because I'm not able to do that. So you just have your pen drive, your flash drive, you put it in and exactly you get the same desktop screen that you have on your laptop. Yeah, yes. Yeah, so basically what I get you locked here so people doesn't able to use the pen drive. Yes, they're not good. Live boot, that also not possible. Yeah, so the solution to that that I thought is here. We want to build Docker containers for web-based interface. So yeah, so you just get an address. You have to go to that particular address with the Honor browser. You are able to have internet connection on your computer and go to that particular link and there you will find the interface which is similar to your working space computer. It depends on the internet speed. It depends the packages you are accessing. So if the package is heavier, it would take time but for the lightweight packages and just for the convenience of us, for the convenience of us in working that particular space can be a solution to your issue. Did you get my point? Yes. Yeah, so yeah, changing the amount to rather than home. Okay, okay. And that needs to be changed from BIOS. No. Changing. If that exists, then automatically the home directory and the workspace points to the platform. Yeah, so we can set the priority over there. First look on the USB. If there is something to boot, then boot it from there. Otherwise go straight to the hard drive. So, okay, okay, okay. So these changes can be made through. Yeah, this can be a solution. Just for, yeah. Okay, so our working space will be from the hard drive but the home directory, if present in the pan drive, will be copied straight to the, yeah. It's used directly, not copied, yes. It will be used directly. Yeah, this can, yeah. We can use that idea too, yeah. Thanks, I can help others to implement this also. So for, and for the web-based interface, will it be a solution for you, use case? In some cases. Okay, and booting from pan drive, yes. It can be. Okay, and in the case where booting from pan drive is possible, means they haven't locked the system. Yes. So we can use in that case, our own personalized distribution, yeah. Yeah. So in those particular case where the work systems are locked, you are not able to boot from pan drive, you have to be with that particular feature. Okay, I get something to learn here also. Thank you. Any more questions? What is the home with this OS? Hardware like generation one. Yeah, it's 4.9 right now. Yeah, I have that image. So sorry, 4.4, it's working on 4.4, but Saraz asks about the hardware. So it's basic, so I tested it on a machine which has around 512 GB of RAM, and it works on Intel Platinum, Core 2DO, the oldest, yes? 500 megabyte of RAM. And Intel Platinum Core 2DO, I booted, live boot the system doesn't install on it, and the memory, the hard drive is around, yes? Yeah, it's pretty old. Yeah, yeah. So it's completely lightweight. If you get through the link here, get through this particular link of Mellix, so this is the root link, you will find everything here. So you will able to find all those packages which are inside that, and if you find that, okay, this is the package that I don't need it. There are a few packages which are already installed in here, and you can just remove that, and it's very lightweight. Yes? Yeah, comfortably. So our next task is like, all those operating systems today have some personal assistant over there. So, Fosacea wants to implement their own Suzy based desktop. So a desktop which has Suzy as their personal assistant, and it can be used to make user interface more and more personalized, and so it gives suggestions based on the work past experience. So any more questions? Yeah, it's really thankful. I am very thankful to everyone, and this is a great talk, and I am also able to learn lots of things. Thank you.