 Snaps are very polarizing and really you can say that about any package management system that is trying to be universal whether it's flat pack snaps or app images but for whatever reason snaps seem to get a very large amount of flack for any number of reasons and I wanted to go through and talk about a few reasons why snaps are just so hated by a lot of people and see if I can come up with at least a few reasons why people should like them so if you watch the channel for any amount of time you'll know that I just can't stand snaps I try to avoid them as much as possible I'm pretty sure I have some snaps on my computer right now if I open up a terminal I think I have no I don't have any snaps installed right now I actually thought that I did but I don't I have seven flat packs so there you go the thing is I've always just like snaps and there's just some reasons why that is true so I wanted to start off there and because most of the reasons why I hate snaps at least I feel are the reasons why a lot of other people hate snaps as well so the first reason why people seem to hate snaps and one of the reasons why I hate snaps the most is because they're very slow upon a cold boot now basically what that means is when you've never opened up the application before in your current session when you first load that application it takes a significant amount of time and I'm talking multiple tens of seconds to actually load that application and the reason why this it actually happens is because of the way snap packages stuff there's extra steps that it has to go through in order to launch the application specifically things like uncompressing the file and all this stuff because it's just the way it's packaged it's very much more tech technical than that but just that's the reason why when you say launch up Firefox on the latest version of Ubuntu it takes some time for Firefox to load that first time and it's always going to that's just the nature of snaps now once you've had this that application open at least once the startup time is actually just normal it's not any longer than normal at all or at least it's not noticeably slower I should say so this speed difference between a snap package and a non snap package is something that a lot of people notice and it's probably the number one criticism of snap packages and for good reason people don't like waiting I know I don't I would one of the things that bother me the most about audacity is that when you start up audacity it takes at least a good 10 15 seconds for it to load it's doing stuff in the background that enables it to grab control of the audio system and it takes time to do that snaps are kind of the same way they have a reason why they're so slow but frankly I don't care why that is I just want my application to start up when I hit the button you know call it American impatience but it's just the case you know so that's the number one reason another reason why I don't like snaps and I feel a lot of people don't like snaps and this isn't so much of a big reason anymore it used to be a lot worse but sometimes snaps don't follow the theme that you've set for GTK now theming itself is a another controversial topic that depending on whether you're a developer or not your views probably change but for normal people a lot of people like to theme their desktops even if you're not the racing aficionado that I am chances are you've probably sets your GTK theme you're not sticking with whatever the developer has given you and sometimes snaps don't follow the GTK theme that you've set they stay with the default or they break completely like I said it used to be a lot bigger problem than it is now I've actually noticed that flat pack has this problem as well so it's just a kind of a nature of the beast kind of thing but it does happen and it bothers me because it makes that application stand out like a sore thumb against all the other GTK themes that actually do follow the theme now the next one is one that whether or not you care about is probably going to be depending on how in the open source software you are some people just use Linux because they don't want to use Windows some people use Linux because they're really into free and open-source software it doesn't really matter to me which side of that spectrum you're on but for the people who are really into FOS the fact that the back end for snaps isn't open source really drives them crazy and I can understand this personally it probably doesn't matter to me that much but I can understand it and it does bug me a little bit because canonical is this corporation that kind of champions open-source software and Linux and all this stuff and then it has the their proprietary package management system it doesn't really make sense if you listen to people in the development community for Ubuntu and snaps you'll know that they have reasons for keeping the back end for snaps proprietary and not bringing open source and that reason seems to be that they don't want the PPA system to become this thing again so for those of you who don't know the PPA system allows you to basically anyone to host their own repository and then that can be added into a Debian or Ubuntu based system and it's a mess because people create their repositories and they abandon all the software in those repositories some of those software things are either not updated at all or become broken or become security threats it's a mess and we nobody likes PPA's like nobody does and the people behind snaps don't want the snap back end to become another PPA system where anybody can host their own snap store and then abandon it and have those applications become security threats just like the PPA stuff kind of did so the argument behind it is I can understand their point personally I think that there are ways to mitigate that but like I said I can see their point so it if you are the kind of person who doesn't want to use something that's based on proprietary software snaps are probably something that bug you quite a lot and that kind of leads me to the next one is that they're kind of being forced on you if you use Ubuntu you have to use snaps as far as I'm aware and I might be wrong on this I don't use Ubuntu from what I've read you can actually take snaps out of Ubuntu that easily like they've kind of forced so many snaps into Ubuntu you'd have to remove quite a few packages in order for snaps to actually be removed from your system and that means that you're going to just have to put up with snaps unless you want to go through that work and that's not a great thing right it's not if you you have to use Ubuntu but you don't want snaps on it chances are you're gonna just have to stumble your way through removing them and being forced to use something just isn't that great an experience now the argument against this obviously is that if you can use something different and you know you should just do that you know use Linux Mint which doesn't use snaps I think one of the Ubuntu flavors actually doesn't use snaps as well I don't I can't remember which one but that's the solution for that one at least and that one leads into the next one which is they're not as universal as they really want you to think so the idea behind snaps is that they can be like a universal package manager where they can be used no matter what distro you're on and that's true you can use snaps on any Linux distribution it's fairly easy on the vast majority of them so for example if you're on Arch you can do pseudo pac-man dash capital S snap D and you'll have install snap very simple but on some distros where they are protesting against the idea of snaps themselves for example Linux Mint using snaps is actually a lot harder because they put barriers in front of the usage of them so that you actually have to to basically confirm that you want to install snap and that's you know it's a choice obviously and whether you agree or don't agree with that choice it's still something that you kind of have to put up with and there are a lot of distributions that just don't like snaps they prefer flat packs some distros don't include either so that this I don't want to call it a war between package you know formats but it kind of is that because which distro you choose is very much going to determine what package formats you're going to be using and that while that's always kind of in the case because if you use an Ubuntu based distro you use apt if you use Arch you use pac-man and so on and so forth it kind of dilutes the argument for actually using snaps in the first place if they're not as universal as the developers claim they should be so the next one is my personal pet peeve so everybody knows that I consider the home directory sacred and right now my home directory is kind of a mess but I'm working on it but the point is when you install snaps on a distro that doesn't support them out of the box it installs a folder in your home directory and that's just the way it is you can't remove it unless you install snaps I hate this like I it drives me absolutely bonkers out of all these things that I've listed so far this is the one that drives me the the most crazy because I don't want to see a snap folder in my home directory I just don't and it's a pain in the ass it's a stupid thing to care about I understand but the thing is we know that they can fix this because if there's not a snap folder on Ubuntu like Ubuntu has snaps install a lot of the box and there's no snap folder some distros are the same way if they come with snaps pre-installed you don't have a snap folder but if you install it explicitly yourself it's gonna install that snap folder and to pay in the ass and it's ugly and I don't want it to be there it needs to go away but that's probably the most superfluous reason to hate snaps I can help it it's just one of the things that I dislike so the last one for the reasons why I personally dislike snaps is because they're not necessarily secure as you think now you gotta remember I'm not the most well read on security issues and how these things interact with security but from the things that I have read snaps aren't necessarily as secure as we think so one of the promises behind snaps is that they're kind of sandbox that they are pre-packaged containers that protect you from from that application having access to your system in unusual ways but this isn't actually true for for snaps or flatbacks they both have or can have unregulated access to your home directory so for example if you install a music player from the snap store that particular music player will probably have access to your musical directory which is in your home directory it's not as sandboxed as they want you to believe now the thing about sandbox apps is that they do sometimes need that access but and we know that from like the mobile phone sphere where if they want access to stuff chances are on your phone like on Android they're gonna tell you hey this application has access to this stuff would you like it to continue to have access same thing on on the iPhone where if it's gonna access say your microphone or something it says hey would you like to have all this app to have access and that's kind of the promise behind snaps and flat packs but they're not there yet a lot of applications just assume that they have access to your home directory and if snaps said hey no that application would be broken so I know that they're trying to fix this I know that it's a pain in the ass for the developers and stuff like that but it's another one of those things that you kind of have to keep in mind if you use snaps that they may not be as secure as they might supposed to be so I know I've gone through and talked about a whole lot about negative things about why people hate snaps but I wanted to include three or four things that give me hope that snaps could be a good thing in the future so kind of playing off that last one is this sandbox apps can be a good idea if we can get to the point where they're actually sandbox and then the only time they have permission to do things outside of their container is when you explicitly give them permission to do so that's a good thing now I wouldn't want all of my apps to be this way there are some applications where I just want them to work I don't care what permissions they have so for example like a terminal doesn't I'm not gonna I don't need to give that thing permission that's always going to have permission to do the things that it can do and then if it needs root permission you know you can use sudo or do as or whatever you know it has that thing you wouldn't want to have to go through every single time and say hey I have all this thing to have access to the internet or whatever you know you just want to do that but for certain things that you download and try out or whatever it'd be nice to have that granular control of what that particular app has access to on your system your camera your microphone things like that that'd be cool but I think that that is kind of far down the future we're not there yet so one of the things that snaps and flat packs are good at now is that they can be packaged and maintained independent of other dependencies so for example let's just say you have a we'll take our music player for example again you have a music player it has a dependency of some random 32-bit library whatever it's not maintained anymore but it needs it by being able to package both the music player and the dependency together you can ensure that that dependency is always available and you can also ensure that the version number doesn't change so if that music player depends on that particular version of that library it won't break when that library is updated outside of the sandbox so that's a really good thing because the number of times you've updated an application and then had a problem where the dependency that you have installed is an older version than what the application is looking for that happens all the time especially on rolling releases it just if the main package is updated and then the dependency is not updated but it's looking for a specific version number it can be a real mess snaps kind of get around that by packaging the exact dependency that is needed inside the package with the actual application the other one that is really cool is kind of similar is that they can go through and be packaged based on the maintainers wishes so for example things like OBS can be packaged and compiled with certain plugins enabled out of the box so if you install things OBS on arch you're just gonna get vanilla OBS that's just the way it is if you install the snap version however you get a ton of plugins and certain settings that are enabled by default in that snap package that you don't get basically anywhere else you'd have to go through and set all those things together so it allows a maintainer to kind of create a package that is different than the norm because it can include other things specifically dependencies that would probably otherwise have to be installed separately so I think the bottom line is that snaps are controversial for good reason they're not perfect now we don't expect perfection in the Linux community we shouldn't expect it we should strive for it but we shouldn't expect it no but nothing is ever going to be the perfect package management system it's just not as much as I like Pac-Man on arch it's not the perfect package manager it's not there's not a perfect perfect package manager so we can admit and acknowledge that snap has problems and that there are good reasons why people this like snaps and I think for me personally the reason why I hate snaps the most are the first and like the fourth reason is whatever one day I don't like that I don't remember the numbers but the first one was that the snaps are slow to start on a cold boot I don't like that at all if they're faster that eliminate that argument against snaps and they are faster than they used to be but they're still really slow and then that whole home directory thing if they didn't put the snap directory in the home directory if they at least hit it like if they put a period in front of it and made it hidden I still wouldn't be happy about it but it'd be better than having it just there it those are the two reasons out of all the ones I saw talked about that are the biggest deal for me so in the comment section below I would love to hear why you like or just like snaps I'd really like to know make sure you hit the like button and the subscribe button if you like this kind of content you can follow me on Twitter at the Linuxcast you can support me on patreon at patreon.com slash Linuxcast before I go I would like to take a moment to thank my current patrons said a Devon Chris East Coast Web Gentoo's fun to Patrick Oh Primus Marcus Maclin Jackson Poole Steve a cyber guy Linux Mitchell Arson our amateurs carbon dated merit camp dr. Lee J dog to be sees rock eater a crucible thanks everybody for watching I'll see you next time