Package Managers: Flatpak

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
okay so for today's um overview what we're going to be looking at is uh the package manager called Flat pack uh flat pack is an interesting um technology in the sense that it allows uh people or developers to package their applications but they package it in such a way that it isn't a distro specific uh package so previously uh in looking at package managers we were comparing apt or apt to dnf apt typically works with um Debian Ubuntu and all the derivatives DNS typically works with a red hat Fedora Centos and all their derivatives the difference really comes down to the file structure so if we were using well we can maybe even just check real quick search for install Google Chrome and if we look at downloading Google Chrome they'll have this dot dep which is for Debbie Ubuntu or RPM which is for Fedor or open suse um what flat pack allows that you do is that you can install the flat packs and you don't really have to worry about uh packaging the application for these different derivatives uh dot deb.rpm those are the most common those are not the only kinds of Linux distributions there's things like Arch managero um uh open suse all of these different types of Linux distros and honestly for a lot of software Developers a lot of people it becomes very difficult to package and structure all your applications for that so what we're going to look at today is flat pack flat pack is quickly becoming one of the de facto ways for packaging applications as they pertain to the desktop so anything which is a desktop class application oftentimes you'll be able to find the flat back derivative for it and I actually run quite a few flat packs not not a ton but I run a few which lets me get connected and get working with the applications that I want um on the Linux system so important to cover an important Dimension uh flat pack the other nice thing about it is it is sandbox so rather than going to run something which is apt so if we were to do in the terminal here if we do a flat pack list they get a list of all the flat packs that we have and make this bigger you run it so we have all these different things we have 080 this is a game we have slack which is exactly what it sounds like it's slack for communication we have visual code Studio code audacity we have things like uh the signal desktop so for Signal instant messages we also have a whole list of all these different things that we don't really understand like free desktop platform vesa Intel open 264. all of these things are run times that the apps that I use require in order to display themselves so because flat part flap packs are sandboxed they need to run off their own sort of like flat pack node or flat pack aware runtimes so they need to download these additional runtimes in order to function so this can cause like some overhead but the advantage there is that one a lot of this overhead is common it's stuff that's you download it once and then most of their flat packs can generally use two the additional environment here that we have is isolated it's separate from the rest of the machine so the flat pack app to an extent is sandboxed uh when it runs on your device so in a sense it's a bit more secure a little bit like IOS and Android in the sense that the applications that run in both those platforms are also sandbox they're usually kind of self-contained and only the permissions given are the permissions allowed to the application when they run um and the same sort of holds true for uh flatbacks in a future video we'll look at snaps which have a same uh sort of concept the implementation is a little bit different um but for flat packs and for snaps uh they both sort of work in a sandbox way so they're in a sense a bit more like uh the kinds of applications that you would find on mobile device computing so what I want to do is just quickly go through a couple of commands to help people get up and running with flat pack so first of all we're going to open a separate window make this bigger okay so this is our Fedora box this is fedora's server so we'll be a bit Limited in terms of what we can do but we can start getting started so what we can do is first we type the command flat pack found so we need to install flat pack so we're going to do is going to do dnf install flat pack so now this is running um if we were on because this box is running for door server so it needs to like download a bunch of stuff but you can see that to it just install flat pack and get everything running uh on for door it also has a bunch of dependencies so we'll install all this stuff and this is what would be taken you need to get running so I'm just going to install it I'm not guaranteed it's gonna work um you can see that everything coming down is a RPM again this is the redhead Red Hat package management so this is the um the red hat style applications so we need all of this in order to get flat Hub our flat pack running but once flat pack is up and running then like the flat pack that you're running on a Debian distro a Ubuntu distro is going to be effectively kind of similar to say what you'd be running on a fedora distro or a red hat distro Etc so it allows developers to have one sort of like way of packaging their software and then it can run pretty much everywhere okay so it's complete it's already run um then we can run a flat pack at this point we run flat back search and we're going to look for uh let's look for Slack see now this has an air because there's no repo so if we go back to the flat pack page she says get set up there's a quick setup we're going to go to the setup first door and you need to install the repository file so you can manually add the repo by doing this command so we just copy the command go back over Ctrl shift V let's get rid of that space I'm going to do this I need some authentication which is fine okay now let's see if we can get flat pack search to work again it's looking okay and then we get the actual search so there's a couple of checks uh uh a lot of that won't happen if you're doing its install a fedora workstation so that would be Fedora with the UI um but you can see that right off the bat and once we have flat packs sort of set up and we've gone through the steps to uh give it a repository or like a location for to find and search for the various software it actually does work very similar to say what we're used to doing with dnf I can do dnf search h-top for example and it will go out and it will search and look for this H top so I can search for packages in command line Wise It's very similar except the types of packages that I would look for with flat pack typically are for desktop so it's typically for a [Music] graphical user interface or GUI kind of application but it would have things like slack or ripcord or whatever um on these Pack website if we go back we can go to Flat Hub itself and we can search for all sorts of apps so we can look for Signal we could look for WhatsApp we could look for a zero ad which is a pretty cool game and you can download um many many different types of files I did a quick Google search of this just before and it says there's more than 2 000 apps in the flat flat pack repository so a ton of things that people using um Linux on the desktop would find interesting let's go through I'm going to go back to my main system which is this pop OS device I'm just going to go through a couple of the commands so um flat pack uh slack you already did so this would go out and find slack if I wanted to do flat pack install so I could do flat pack install now the one thing which is a little bit tricky sometimes with flat pack is you need to do flat back install but you need to tell it like which repository you're looking for so what we're looking for is the repository on flat hub which is what we set up on the Fedora system it's already been set up on my pav OS so we're going for have install rocket chat and when you do the install you don't just give it the name you have to give it the application ID so we can go ahead and copy this I'm just going to right click copy then over here we're going to do right click paste and then if we do this it'll try to install rocket chat now I'm not running rocket chat but I can try to look for it so it says okay now install rocket chat this is what's going to be installed I have all of the environments set up already for Rocket chat to work so um it looks like we're pretty much good to go if I wanted to install it right now it would take about 98.9 megabytes so close to 100 megabytes I'm going to click no um the other thing that you can do is we can go and we do lists again we can also do things and uh update and we can update either the full stack so we just do flat back update and then this would like go through and try to update everything that needs updating the other thing that we could do is you can do flat pack update and then we can pick like what we want to update so org.signal.signal copy paste says we're already up to date so nothing to do and honestly these are pretty much like most of the main commands if you do flat pack that says help you get a full list of all the stuff that you'd want um in addition to install update there's also the uninstall so if we wanted to uninstall something but you could just type a flat pack uninstall org dot signal dot signal and then it would prompt us like do you want to uninstall this for me right at the moment no but that would be the command to do it and then this would allow you to get a lot of the basic functionality for how most users would interact with flat pack now there is a ton of other tooling so if you wanted to like build applications and use flat pack that would be using all these build application commands over here um I'm personally not versing that not being developer but being able to use flat pack from the command line gives you a lot of flexibility and also make sure that you can have a lot of the applications that you want to run be able to run so like looking over here I have a ton more applications because I'm installing things with flat pack than I would otherwise the other thing that I want to mention is a lot of [Music] app stores it's for example pop OS but not just populist also I think Fedora um maybe Endeavor OS some of like Manjaro they have many types of applications that are actually being managed by platforms and they'll show it here in the GUI so if you install some of these applications you'll actually see like oh this is actually the flat pack managed application like for example this 0 80 it shows up this is the repo that we chose for zero ad rather than the dot debt we're actually using the flat pack version okay so even if you're using the graphical installer which can be useful I don't always recognize I think graphical uh application installers tend to slow down sometimes but it could be available but just be mindful like when you're searching for an application that you know exactly which one you're installing because that could sometimes cause a little bit of difference in terms of performance in terms of the download size but also in terms of security so flat packs because they're sandbox by some account if you're doing anything which you think is a little bit um uh you don't want this particular application necessarily having access to the rest of your file system maybe go flat pack if you think it's something that you want to run all the time and it's a minimal size app you trust the application yeah then you can maybe go ahead and just do the app Dev install but I just wanted to run through this and get a really quick overview from a user's perspective of how flat packs and flat Hub sort of work together so I hope this was helpful I'll add more information in the blog and as always thank you very much
Info
Channel: Open Source Tech Training
Views: 113
Rating: undefined out of 5
Keywords:
Id: fpJyue7qwIQ
Channel Id: undefined
Length: 16min 25sec (985 seconds)
Published: Sun May 07 2023
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.