Why Universal Linux Apps are GREAT!

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
today's video is proudly sponsored by lenode the note has been doing cloud computing since 2003 which is actually before amazon web services was even a thing on the notes platform you can get your server up and running in minutes and they include all the popular distributions such as debian fedora ubuntu and get this even arch linux and let's be honest what could be better than a linux focus cloud server provider that lets you tell all of your friends i run arch the note has multiple server plans available to make any app scalable and flexible you could use it to host a blog a vpn server a minecraft server and much more in fact lenode is the platform of choice to host the entire web presence of learnlinux tv in addition the note offers 24x7 365 support regardless of plan size so you can get help from a live person when you need it new users can get started right now with one hundred dollars towards your new account and i highly recommend you check them out because lenode is awesome and now let's get started with today's video [Music] hello again everyone and welcome back to learn linux tv in today's video i'm going to talk about universal apps okay now calm down a little bit i realized that this is a technology that people in the linux community just love to hate for some reason but i wanted to make this video to not only give you guys my opinion about universal apps i'll also talk about what they even are in the first place and i'll bust some myths as well in general i'll make the case that universal apps are actually a good thing okay so first of all what exactly is a universal app there's three different types of universal apps for the most part we have app images flat packs and snap packages and even though they're three different technologies they all aim to solve the same goal and the problem is that when it comes to software the linux platform is not really the easiest to target i mean if you think about windows and mac os users for example if you're a developer and you want to target them with your application then you basically compile it for mac os and then compile it for windows and you're done that's it but if you want to target the linux community and release your application to the linux community so that they can install it how do you go about that do you create an rpm package for fedora users a debian package for debian and ubuntu users another rpm for opensuse because again rpm i mean that's really hard to do for a lot of developers especially when they're actually pressed for time and they're you know having a hard time with delays and managers that don't really understand technology letting them know that they need to ship it right now even though it's really not ready we're not going to talk about that but the linux community is actually hard for the developers of various applications to target so the concept of a universal app is one package that can hypothetically be installed on any linux distribution i mean if you think about it if you're on debian you'll have to install something same with ubuntu or you'll use the dnf package manager on centos and fedora but if you want an application to be available for everyone and they can all just install that one package and have all the dependencies for that application in that one package so that they install that one thing and they're good to go you need a universal app for that and that's exactly the goal that universal applications tries to achieve so at this point you understand the goal that a universal app is trying to achieve but what exactly is the problem with using your distro's package manager to install software and i think this is where the divide starts in the linux community so essentially it's muscle memory at this point you've been installing applications via your distro's package manager and it's been working fine so why do these kids get to basically tell you that you need to do something different now when your way isn't broken now that's the common complaint that i see about these universal apps i'll see ubuntu for example posting about snap packages being made available and then people in the comments will say something ridiculous like you spelled apt wrong or you should be using apt or they'll just say app install rather than snap install i think these people are missing the point about what these technologies are trying to achieve and why we need them so i asked the question what's wrong with using your package manager well in a nutshell essentially nothing at first i mean if you wanted to install something like firefox you would just run sudo apt-install firefox and that's fine but the issue here is that non-rolling distributions they don't really give you the latest software now the thing is you don't always need the latest software though because the argument can be made that having stable tried and true packages that don't change that don't rip the carpet right from underneath your feet is a good thing because it's you know reliable and predictable and even on this channel i'll see comments down below where people are basically saying you know my software works fine i don't need the bleeding edge version of my application because what i have is totally fine but i think what people are missing here is that yeah it might be fine for you and it solves your need but your use case and the style of use that you have with your computers is not really the same for everyone everyone has his or her own well use case some people might need bleeding edge and even if they don't want to use bleeding edge they might be forced into it now take libreoffice for example a lot of people will complain that it's not as good as microsoft office that it has compatibility issues with microsoft office formats and that can be true but the real problem is that distributions will lock their users into a very old version of libreoffice and libreoffice in every single release that make compatibility better with microsoft office formats so by not using the latest and greatest you actually are increasing your chances of having issues with compatibility with microsoft office and i feel like that gives libreoffice an unfair negative opinion i mean how many of you out there have had compatibility issues and you're on the latest and greatest version now in my case i wrote an entire book with libreoffice and i had no problem whatsoever sending documents back and forth to my publisher and back you know the other direction and it's been fine i was using the latest and greatest libreoffice and my publisher didn't have any problem at all reading my files and when they would open the files that i created in library office put some comments in there and send it back to me i had no problem opening that either so it was completely flawless now i don't really understand why i didn't have any issues whatsoever with microsoft office compatibility with libreoffice when so many other people complain that they do have problems and the reason for that could be because i'm using a universal app and i'm on the latest and greatest so i could take advantage of having the latest updates for compatibility now of course that's just a theory long story made short i didn't have any issues but i also had available to me the latest and greatest version of libreoffice and if i didn't use the universal app i wouldn't have access to that i would be relying on my distribution to update the entire distribution just to get the latest library office and that makes no sense to me whatsoever now i understand that stable distributions that are not rolling they essentially snapshot their software and that's it the versions of software you get that's what you get you might get security updates but that's all you get but also that means that in that scenario you won't be able to take advantage of the latest and greatest software if you need it and you as the user you should be able to decide do you stick with your distributions version or do you need something more bleeding edge for your use case because there's no other way then you'll install the universal app now that we have universal apps you have that ability to do that and that's great now i think one of the bigger issues here when it comes to application packaging in linux is that we're using the same package database for libraries drivers the linux kernel the core distribution components that are required to make your distribution work at all we're sharing that with user space applications so we apt install the latest kernel update we have to install firefox if we have a you know dependency problem broken dependencies or our package database gets corrupted we can now not only not install kernel updates you know security updates we also can't install applications anymore either everything is completely broken now in my opinion and it's just my opinion i really don't see any benefit whatsoever that packages that are user space apps like firefox libreoffice and so on are in the same repositories in package database as the core apps on the distro that's just asking for trouble now a lot of people will basically say well i've never had a package conflict or broken dependencies or any of those types of things and i'm thinking that's awesome for you but that's the thing about universal apps when someone doesn't have a use case for them or someone hasn't had a problem that the technology tries to solve then they basically you know talk bad about the entire technology i've never had a problem well nobody has ever had a problem until they do have a problem and if you haven't had a problem with you know linux packages then great that's awesome but your inability to experience an issue doesn't mean there's no issue there's a real problem here universal apps exist for a reason they give you a separate application that's outside of the package database of your distribution so that you can at your discretion choose to have a bleeding edge or newer application if you want it if you choose to have it you have that ability and if you don't want that then you just ignore it you just don't install the flat pack of libreoffice for example and stick to your distro's version and you can do that but the technology is definitely needed because not only does it give you more stability but it also allows developers to easily target the linux platform which means we all benefit and that's a key takeaway here universal applications give us access to applications we normally wouldn't have access to and i think universal apps in general open a lot of doors for us i mean just think about it you're working for a company and they want you to install slack well you can install slack there's universal apps available and you can have it slack can give you well slack because the developers can easily target the linux platform spotify visual studio code i mean you name it there's all kinds of applications out there and we have access to those now because the linux platform is easier to target and that's a great thing but jay universal apps take up a lot more hard drive space and i really don't want my expensive hard drive to be full of flat packs when it should be full of well my data and that's a really common complaint that i hear and you know technically it is valid because a universal app includes all of the dependencies an application needs to function you install one thing and you have that app and that means if a library is required by application a and also application b then both of those applications will have that same library inside them so you could argue that it's duplicating things but the thing is even though it's true that universal apps do use more space than you know standard packages i don't really feel like it's a problem at all and i'm not really sure why people are complaining about this i don't really feel like anyone in my audience or even anyone in the linux community for that matter is so starved for hard drive space that they can't spare an extra 20 to 30 megabytes for a flat pack i just looked on microcenter a local computer store i looked on their website just before i filmed this video and you can get a one terabyte yes a one terabyte ssd for a hundred us dollars and i do understand that there's linux users in other countries that might not be able to afford that hard drive for you know 100 us dollars because that could be a lot of money for some people and maybe they have like an 80 gig hard drive from i don't know 10 or 15 years ago or however long it was a go that that particular type of hard drive was more common an 80 gigabyte hard drive just a random example but if it's only requiring maybe up to 100 megabytes but maybe a better average is like 30 megabytes it's going to take a lot of flat packs or any kind of universal app to fill that hard drive even if your hard drive is really old so even though it's true that universal apps do in fact use more hard drive space i really don't feel like it's a problem for anyone at all and no offense to anyone out there but i almost feel like this toxicity around you know universal apps in general is mostly unfounded because we're complaining about things that aren't really a problem here and people that are telling us you know this shouldn't exist because i don't have a use case for it that really negates the value that this technology can you know provide to other people that might benefit from it and toxicity in the linux community is you know a very common thing anyway but we shouldn't you know negate an entire technology that could otherwise be useful and spread fear uncertainty and doubt about these technologies just because we ourselves may not have a use case for them universal apps are all well and good but what about those theming problems and this is true actually there really are some theming issues when it comes to universal apps because a universal app includes all of the dependencies inside the app it's not going to use your distribution settings for themes which means you might install a really cool linux theme like a gnome theme for example and then you open a flat pack and it's totally ignoring that really awesome theme that you've downloaded that is a real problem and it is a problem that needs to be solved that makes universal apps kind of stand out on a linux desktop and some people really don't like that and i totally understand why again you found that really awesome theme and you want to use that theme everywhere but the technology is still kind of new and they're you know formulating this when it comes to the different types of universal apps so a couple of these rough edges are to be expected but these things will get better in time so what exactly are the different types of universal apps that are available so there's three main types of universal apps we have flat packs snap packages and app images each one has their own pros and cons and i'm going to talk about that right now first let's talk about app images i love app images it's a really cool technology and they're the easiest to install of the three types because you don't install them at all there's just no installation you simply download an app image mark it executable double click on it and it runs i mean you don't even need to basically open the command line i mean you could you could w get the app image to download it if you really wanted to use the terminal but essentially you just download it from your web browser and then store it locally on your hard drive double click on it and that's it and that's awesome that's why i love app images so much but the problem with app images is that because you can download them yourself you know there's really nobody curating this at all so if somebody put a backdoor or some kind of malware in there which hasn't happened yet but it could then you could essentially be running something that could be harmful to your system again it hasn't happened yet but i'm just giving you guys the pros and the cons also with app images you are a little bit more likely to have security problems because unless you are checking the app image it's probably not up to date until you go looking for a new version now there is an app image you know it's kind of funny there is an app image that updates app images you just download the app image updater and point it to where your app images are stored and it'll offer to download new versions for you but that requires the developer of the app image to you know build support for that in and not all of them do so app images are very inconsistent app images can be very powerful if you make good on keeping up to date yourself checking for new versions it's very important so that way you don't have anything stale on your system that can let an outside attacker in but aside from that app images are well awesome we also have snap packages as well and that package type of and by itself includes its own myths which i'll get to snap packages were created by canonical and are featured in ubuntu snap packages in general are easy to install you just type snap install and then the package name or snap find if you want to search for a package so very similar to how you can run apt-install package name you can run snap install package name so it's pretty easy to use now i think that snap packages in general get the most criticism when it comes to the three universal app types one reason for that is because it's made by canonical canonical has had its fair share of controversy over the years and some people are a little nervous when it comes to canonical and another thing that people don't really enjoy is the fact that snap packages were essentially installed into their systems and they weren't really opted in or anything like that they just kind of appeared and that has a lot of people rubbed the wrong way and there are some legitimate downsides when it comes to snap packages but in general they're fine i don't really feel like all of the criticism is warranted and i'll get to some of the other criticisms in just a moment but i feel like snap packages are a very solid technology and that allows canonical as a company to engage other companies that write software and see if they can get them to release versions for linux so even though not everyone loves snap packages you can argue that it's actually helped the linux ecosystem but i didn't ask for snap packages and they're here on my system i don't appreciate a snap package being on my system when i didn't choose to install it myself and that's probably the number one complaint about snap packages when people updated to a newer version of ubuntu they found that chromium was offered as a snap package and they didn't get a chance to install the app version instead and it has a lot of people upset now i could totally understand why some of you guys are angered by this but we have to think about it a completely different way now canonical as a company they're releasing a linux distribution for free and if you're using a distribution of linux that is created from a company then reality check you have to expect things like this to happen if you don't want a company to decide things for you then don't use a distribution that's designed by a company for example debian is a community project so you can use that and you have a far less likely chance of something like an unexpected package type being introduced on you because debian again is a community project but ubuntu is made by canonical an actual company a for-profit company they're not a non-profit and that's just the way it goes so if someone you know doesn't like that in my opinion they really shouldn't be using ubuntu in the first place because canonical as a company they own the trademark to ubuntu and they're able to do with it as they please even if it's something that makes their users mad but i get it you guys want full control over your systems and you don't want something sneaking up on you like that i totally understand but also understand too that canonical being the creator of the snap package format it's in their best interest to push that format and it's not in their best interest to have their developers create two packages for everything an apt package and a snap package because their developers are spread thin enough as it is so if we are requiring them for example to package chromium as a debian package along with the snap package that's just duplicated effort and there's really no reason for that but snap packages are just slow and they take forever to start up and that's another myth that people often bring to the table when they are you know negating the value of snap packages and the thing is it's not a myth it's true snap packages do actually take longer to start up and that's bad i admit i don't like that at all i really hate waiting for chromium to launch it could take more than a few seconds maybe even longer than 10 seconds sometimes and sometimes i find myself clicking on it multiple times because i think it didn't register the click when i tried to open the app but then i'll just open a bunch of times because it did register every single one and then a bunch of chromium windows show up on my screen so that's a valid complaint and it is a valid problem now i've read that the ubuntu developers the snap developers they're working on this so while it's a problem today i like to think of everyone in you know the best light that i can give them the benefit of the doubt and assume that they're going to fix this will they fix it i don't know you know i think they will they say that they want to but only time will tell but that is a valid complaint against snap packages so you know have to call it like i see it that's a real complaint it's a real issue and i hope it gets better but why are you talking about snap packages in a positive light when it's a proprietary technology and unfortunately this is another problem with snap packages the only way that you can install a snap package is to get it from canonical's snapstore you can't actually set up your own repository or your own store and then point your snap utility over to that repository and download it from somewhere else that's a real problem and i don't really know why that's the case i understand that it's in canonical's best interest to have one software store for all the distributions to pull from but that's also a downside because people really don't enjoy being shoehorned into one actual store and not be given the choice to choose another repository so that actually is a valid complaint about snap packages and i really hope that they'll you know develop a new version that will allow administrators and users to essentially point it to their own app store because there's a certain subset of people that will absolutely not use snap packages until they do that and i think they should i think there's nothing to lose from making that open and giving you full control over that technology i think that would actually make it better now let's talk about flat packs flat packs are actually very similar to snap packages but it's not produced by canonical and you actually can install other repositories in flat pack in fact when you install flat pack on your system there's no repository at all configured none whatsoever you have to actually install a repository now at the time i'm recording this video the major repository is flathub.org it's a website that you can go to and there you can see all of the various flat packs that are available so you can know what you can install but maybe at a later date somebody will actually build another flat pack store that would be pretty cool right now we only have generally one but that's just because nobody's bothered to set up their own yet you can absolutely set up a repository in flat pack and in my opinion that gives it an edge over snap packages because it's more open and you're in more control over flat pack than snap packages now at the end of the day flat packs solve the same problem in essentially the same way they give you a universal app with everything it needs built right in you just flat pack install whatever it is you want to install after you add flat pack support to your distro because many of them don't include that out of the box and then you have access to whatever app you want to have access to now think about it like this debian itself debian stable doesn't ship the normal firefox they ship the esr version if you want to install firefox the actual firefox you can't and that's an unfortunate side effect of debian stable but if you install flat pack into debian stable then you could just flat pack install and the package name for firefox and you have the latest actual firefox so that can give some of you out there that prefer a bleeding edge distribution access to applications you normally wouldn't have access to so at this point i'll give you guys my closing thoughts to put it simply i think universal apps are the future of linux i know some of you guys sorry you don't really want to hear that and i know that's controversial but it is the future developers really don't want to be bothered with you know producing a bunch of different packages for one application especially when they're spread thin as it is and users you know at least some of them out there they want access to the latest and greatest every now and then to get the latest and greatest application and your system stability increases because installing an application that brings along a library or something like that that conflicts with another one and causes your entire system to just tumble over is far less likely for that to happen if you're using universal apps so i absolutely feel like it's the future but there are some rough edges like i mentioned in this video there's some pros and there's some cons to each for example app images are the easiest to install but they're also not curated and it's up to you to keep them up to date and if you install an insecure app image and you never update it and your system gets hacked well that's on you snap packages are really cool but they open slower than other applications do and you're forced into one app store unfortunately flat packs have virtually none of the downsides of snap packages and i actually prefer flat packs i think they're great now of course all of these package types are going to be larger than debian packages for example but again hard drive sizes are large nowadays like i mentioned earlier even a one terabyte hard drive is pretty cheap so i don't really feel like anyone is starving for hard drive space nowadays and can't afford a few hundred extra megabytes for all the uh flat packs that you want to install i think it's fine i think we need to give this a chance because universal apps could actually change the entire game for linux adoption and i think that's a great thing so let me know what you guys think of my thoughts on universal apps in general in the comments down below let's keep it civil no arguing yelling or anything like that in the spirit of open source let's have an open conversation if you like this video please click that like button and make sure you subscribe if you haven't already done so and i'll see you again very soon thanks for watching [Music] you
Info
Channel: LearnLinuxTV
Views: 13,592
Rating: 4.8770947 out of 5
Keywords: Linux, Tutorial, Review, Howto, Guide, Distribution, Distro, Learn Linux, operating system, os, open-source, open source, gnu/linux, LearnLinuxTV, LearnLinux.tv, flatpak, snap, appimage, app image, universal app, universal packages, chromium browser, linux app, linux apps, open source software, open source projects, linux software, snap packages, linux snap packages, flatpak vs snap, flatpak linux, linux app store, linux apps for developers
Id: -FQmE24Bzzs
Channel Id: undefined
Length: 27min 30sec (1650 seconds)
Published: Tue Sep 21 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.