Jump to content

Linux Challenge actually helps Linux with a lasting impact: Debian and Pop_OS updating 'apt' package manager to make it more fail-safe for users

grg994
18 minutes ago, Kisai said:

MacOS has the best direct way of installing software because the programs as distributed are equivilent to just downloading a zip file.

 

So on MacOS it goes

1. Click on the thing you want to download from the website

it downloads

2. double-click it, or click it from the download list

it opens a window with the "click and drag to install"

the "target" in those packages are always the "user" applications, never the OS. It's basically impossible to screw up

3. look in the MacOS applications folder and there it is. 

 

Now if you open up a command line and go to the applications folder, you will find out that that application is in fact a directory itself, and EVERYTHING for the program is inside it. None of this "user directory"/"/usr/home/bin" hell that cli packages deal with.

 

Basically it's not "installed", it's a "pre-installed package" and all you're doing is opening the envelope when you install it. This is also why you can delete programs cleanly from MacOS, because everything is packaged this way. Don't want it, drag the icon to the trash, and everything is gone. No need to hunt down the user settings left behind.

 

 

That said... This method is not how the App store, MacPorts or Homebrew work. The equivalent of Apt/Yum on MacOS is Homebrew.

 

 

Actually if you extract those packages you pretty much see the logic behind it, as it is an Unix-Based operating systems, pkg files is pretty much something that it brings up from BSD's

In Linux the closest things are .appimages, followed by .snaps and .flatpaks

It is just not widely used

Link to comment
Share on other sites

Link to post
Share on other sites

9 minutes ago, Chunchunmaru_ said:

Actually if you extract those packages you pretty much see the logic behind it, as it is an Unix-Based operating systems, pkg files is pretty much something that it brings up from BSD's

In Linux the closest things are .appimages, followed by .snaps and .flatpaks

It is just not widely used

linux's dependencies, really are their main problem, 9 of 10 times i have had an issue is due to some dependency not being there anymore.

PS: cute avatar (^ just an excuse to say this)

Link to comment
Share on other sites

Link to post
Share on other sites

1 hour ago, LAwLz said:

No it wasn't.

If we're going with the fridge analogy this is what happened.

 

1) Linus buys a new fridge. (installs Linux).

2) The door on the fridge is stuck because is got damaged in shipping. (The Pop!_Shop won't let him install Steam because it is incorrectly packaged).

3) Linus goes on Google and searches for "how to get fridge door unstuck". (He searches for how to force install Steam).

4) Linus gets the advice of using a crowbar to bend the door open. (the advice to force install it through the terminal).

5) Linus drives to buy a crowbar, and the person in the cashier specifically tells him he has to sign a ~100 word long contract to buy the crowbar, and the contract states "This tool can break stuff. DO NOT USE THIS ON A DOOR UNLESS YOU KNOW EXACTLY WHAT YOU ARE DOING". (The warning that appears in the terminal).

6) Linus signs without reading it (doesn't read the warning and types in the conformation passphrase).

7) Linus drives home and uses the crowbar on the fridge, the door falls off.

8 ) A bunch of people say fridges are terrible for not having permanently attached doors and that crowbars are dangerous.

9) Now the manufacturer of the crowbar have come out and said they will make sure crowbars are more difficult to use in order to prevent people from ripping door handles off their fridges.

1) People with root cellars are saying that this is evidence that fridges are complicated, and nobody should own a crowbar.

Cool story, now go back and read the post I quoted instead of trying to shoehorn in a totally different narrative.

Main Rig:-

Ryzen 7 3800X | Asus ROG Strix X570-F Gaming | 16GB Team Group Dark Pro 3600Mhz | Corsair MP600 1TB PCIe Gen 4 | Sapphire 5700 XT Pulse | Corsair H115i Platinum | WD Black 1TB | WD Green 4TB | EVGA SuperNOVA G3 650W | Asus TUF GT501 | Samsung C27HG70 1440p 144hz HDR FreeSync 2 | Ubuntu 20.04.2 LTS |

 

Server:-

Intel NUC running Server 2019 + Synology DSM218+ with 2 x 4TB Toshiba NAS Ready HDDs (RAID0)

Link to comment
Share on other sites

Link to post
Share on other sites

If its this easy to fuck your entire system just by one mistake, no wonder normal deadly people like myself dont want or is almost afraid of linux.

Useful threads: PSU Tier List | Motherboard Tier List | Graphics Card Cooling Tier List ❤️

Baby: MPG X570 GAMING PLUS | AMD Ryzen 9 5900x /w PBO | Corsair H150i Pro RGB | ASRock RX 7900 XTX Phantom Gaming OC (3020Mhz & 2650Memory) | Corsair Vengeance RGB PRO 32GB DDR4 (4x8GB) 3600 MHz | Corsair RM1000x |  WD_BLACK SN850 | WD_BLACK SN750 | Samsung EVO 850 | Kingston A400 |  PNY CS900 | Lian Li O11 Dynamic White | Display(s): Samsung Oddesy G7, ASUS TUF GAMING VG27AQZ 27" & MSI G274F

 

I also drive a volvo as one does being norwegian haha, a volvo v70 d3 from 2016.

Reliability was a key thing and its my second car, working pretty well for its 6 years age xD

Link to comment
Share on other sites

Link to post
Share on other sites

8 minutes ago, MultiGamerClub said:

If its this easy to fuck your entire system just by one mistake, no wonder normal deadly people like myself dont want or is almost afraid of linux.

That's the thing though, the system was fucked yes but unlike with Windows, it could have been recovered with 2 simple commands...

 

sudo apt purge steam

sudo apt install pop-desktop

then a sudo systemctl enable --now gdm would have brought it back to where it was before the nuke exploded.

 

VERY rarely is it required to reinstall a full Linux OS, if you need to do that then you did something incredibly bad. Like you either corrupted the entire FS, rm -R /* your root partition or destroyed your package manager and AFAIK every package manager (aside from stow which is something very different) has built in protection to prevent the user from removing it, even pacman on Arch & emerge on Gentoo won't uninstall themselves unless the user overrides the ignore flag in the conf files.

Main Rig:-

Ryzen 7 3800X | Asus ROG Strix X570-F Gaming | 16GB Team Group Dark Pro 3600Mhz | Corsair MP600 1TB PCIe Gen 4 | Sapphire 5700 XT Pulse | Corsair H115i Platinum | WD Black 1TB | WD Green 4TB | EVGA SuperNOVA G3 650W | Asus TUF GT501 | Samsung C27HG70 1440p 144hz HDR FreeSync 2 | Ubuntu 20.04.2 LTS |

 

Server:-

Intel NUC running Server 2019 + Synology DSM218+ with 2 x 4TB Toshiba NAS Ready HDDs (RAID0)

Link to comment
Share on other sites

Link to post
Share on other sites

3 hours ago, Master Disaster said:

Like i said earlier, "Yes, do as I say!" is only a red flag if you're familiar with apt,

Yeah, like in IRL that sentence means a lot of good...... 🤦‍♂️ Im not a native english speaker but even i can tell based on the wording that i might want to change my mind.

Link to comment
Share on other sites

Link to post
Share on other sites

One thing that is quite important to consider, when Linus first tried to install Steam using the GUI it failed and didn't allow to be installed, because it would break something. Had he tried other alternative methods to install Steam, like getting it using Flatpak, he would likely not had other issues.

 

Naturally the broken package should not have passed, PopOS f'd up by letting a broken package be installed, but maybe direct users to Flatpak or ask for users to search for a .appimage if the main package manager fails? Like if the error message in the package manager had said "Installation failed, this may be a temporary issue or be caused by external or manually compiled software. Please try again later or use the Flatpak/Appimage, instructions can be found at the Help Menu at the Package Manager." (italic is current error, bold is the addition I made) it would likely have solved the issue for Linus and he would possibly not even looked elsewhere. That with the changes in apt mentioned in the OP would in my opinion be already enough for a pretty much fail safe system from a normal user perspective.

Link to comment
Share on other sites

Link to post
Share on other sites

4 hours ago, Chunchunmaru_ said:

In Linux the closest things are .appimages, followed by .snaps and .flatpaks

AppImages are magical. Just tried the LibreOffice one and it just works. Beautiful.

 

Link to comment
Share on other sites

Link to post
Share on other sites

21 hours ago, cj09beira said:

linux's dependencies, really are their main problem, 9 of 10 times i have had an issue is due to some dependency not being there anymore.

PS: cute avatar (^ just an excuse to say this)

Actually this also happens on macos too, but there is not a package manager with dependency management like on Linux, so most of the programs are pretty much all bundled with the required libraries (the downside is that programs are bigger)

Linux shares the libraries with all the programs on the computer, if you notice when you download things from apt you just download the executable that is then placed on the /usr/bin folder (assuming you already have another program that uses the same libraries, otherwise they are installed)


 

 

16 hours ago, Forbidden Wafer said:

AppImages are magical. Just tried the LibreOffice one and it just works. Beautiful.

 


Yeah it's cool, and there also is a launcher for desktop integration, which basically makes it very similar to MacOS

https://github.com/TheAssassin/AppImageLauncher

Link to comment
Share on other sites

Link to post
Share on other sites

Think people are trying to fix an issue that should not exist in the first place. 
As a Windows pleb, I fail see why uninstalling steam would also uninstall the desktop or break the OS. This needs to be the issue looked into and fixed.
Assume it might be something with shared libraries but, most software uses some kind of shared, linked library and when uninstalling they don't uninstall those dependencies.
Feels akin to uninstalling a game and it takes DirectX, .Net libraries and other important system libraries (system32.dll) with - and this is what I fail to understand, why?

 

Link to comment
Share on other sites

Link to post
Share on other sites

The OS letting you uninstall your DE instead of checking to see if conflicting packages might be out of date is straight hostile to users. I think the change is a good one, but a better one is to make sure the user is aware of why the issue exists. And dumping 150+ packages to the screen that conflict is not "making them aware."

 

A message like "Hey. We noticed you have a lot of system level packages that are conflicting with this request. Have you tried an update or are you sure this is a valid install file? Continuing may remove critical system features like your desktop" instead of listing 30+ conflicts and asking "would you like to nuke your system? Type: 'Yes, do as I say.'"

 

I'm all for the linux community having distros for power users, but an os like Pop_OS! isn't that. 

Link to comment
Share on other sites

Link to post
Share on other sites

On 11/19/2021 at 9:06 PM, Eaglerino said:

the fact Linux types believe it's acceptable for the option to delete your desktop exists at the end of an everyday app install is exactly why you're staying in 1-3%

judging from my past experiences with open-source devs, I guarantee this got brought up earlier. it took a video from a big channel and relentless mocking to get it changed. hilarious

People are absolutely downplaying how bad this was. But it's worth noting that, while this fix is to apt, the actual issue was PopOS specifically. This error shouldn't even show up unless you're doing something far more significant than installing Steam. I think it makes a lot more sense to make it harder to accidentally do, since those who'd want to do it wouldn't have an issue handling it that way.

Link to comment
Share on other sites

Link to post
Share on other sites

Give me 5 minutes, I'll bust any Windows install with my Linux knowledge and question why Windows can't be more Linux-like and Windows is really broken. And Windows is clearly for games, whereas Linux is for everything else 😉

 

Link to comment
Share on other sites

Link to post
Share on other sites

5 hours ago, ouroesa said:

As a Windows pleb, I fail see why uninstalling steam would also uninstall the desktop or break the OS. This needs to be the issue looked into and fixed.

Watch the full video, he was trying to install it. The problem was with the steam package requiring things that would conflict with some packages (namely the GUI here), it is already fixed BTW. But the main problem as usual is the fact that Linus ignored the warnings, and as expected paid the price for it.

Link to comment
Share on other sites

Link to post
Share on other sites

3 hours ago, willies leg said:

Give me 5 minutes, I'll bust any Windows install with my Linux knowledge and question why Windows can't be more Linux-like and Windows is really broken. And Windows is clearly for games, whereas Linux is for everything else 😉

Try force shutdown your pc while window update is running halfway.

Although the screen say "do not turn off your computer" but fuck it, Linus probably don't care and it unacceptable for user to be able to force shutdown because it might brick the system and that is a poor design choice for billion dollar operating system with thousands of engineers get paid handsomely working on it.   /s

| Intel i7-3770@4.2Ghz | Asus Z77-V | Zotac 980 Ti Amp! Omega | DDR3 1800mhz 4GB x4 | 300GB Intel DC S3500 SSD | 512GB Plextor M5 Pro | 2x 1TB WD Blue HDD |
 | Enermax NAXN82+ 650W 80Plus Bronze | Fiio E07K | Grado SR80i | Cooler Master XB HAF EVO | Logitech G27 | Logitech G600 | CM Storm Quickfire TK | DualShock 4 |

Link to comment
Share on other sites

Link to post
Share on other sites

21 hours ago, Paul Thexton said:

Apple’s advise to developers in this scenario is to provide uninstall apps/scripts, but honestly I’d much prefer it if Apple allowed apps to register knowledge of persisted data out of the app bundle to the system so that a universal uninstaller could exist allowing users to *know* that that buggy software with the problematic kernel/system extension is now *completely* gone. 

https://www.appzapper.com/

 

It has neat sound effects and everything.

🖥️ Motherboard: MSI A320M PRO-VH PLUS  ** Processor: AMD Ryzen 2600 3.4 GHz ** Video Card: Nvidia GeForce 1070 TI 8GB Zotac 1070ti 🖥️
🖥️ Memory: 32GB DDR4 2400  ** Power Supply: 650 Watts Power Supply Thermaltake +80 Bronze Thermaltake PSU 🖥️

🍎 2012 iMac i7 27";  2007 MBP 2.2 GHZ; Power Mac G5 Dual 2GHZ; B&W G3; Quadra 650; Mac SE 🍎

🍎 iPad Air2; iPhone SE 2020; iPhone 5s; AppleTV 4k 🍎

Link to comment
Share on other sites

Link to post
Share on other sites

22 hours ago, Paul Thexton said:

so that a universal uninstaller could exist allowing users to *know* that that buggy software with the problematic kernel/system extension is now *completely* gone. 

I'm with you that this should be an OS feature. But for now, you can do this with AppCleaner.

Link to comment
Share on other sites

Link to post
Share on other sites

16 hours ago, Chunchunmaru_ said:

Actually this also happens on macos too, but there is not a package manager with dependency management like on Linux, so most of the programs are pretty much all bundled with the required libraries (the downside is that programs are bigger)

I'd have to say that I'll take "bundled with the necessary libraries" over "trying to use all the bleeding edge versions" which is what Linux tries to do on nearly every distribution.

 

That said, Most MacOS software isn't braindead, and doing the "Drag to Applications folder" isn't an actual install, it just hides the fact that it's a folder with everything to the OS.

 

Software downloaded from the store, or some legacy software (eg Adobe's nasty installers) doesn't behave in this manner, and operates more like it's on Windows, with things being installed all over the place, for some reason. In general, if you had to run an actual "installer", that installer probably involved drivers/extensions.

 

Windows moved in the other direction, with making it harder to install and write to the application folders themselves and thus forcing applications to write their "per-user" data to the %appdata% and system-specific files to places that the user can't find or delete from.

 

Like, I get the reason for the "per user" stuff, because a computer might be used by more than one user, or you might want to move the user profile between multiple pc's. But for all practical reasons, that software is not going to be available on every computer you move the user directory to, and hence you've seen software start being installed into the USER directory, like Microsoft Teams, because it also bypasses the need for administrative privileges to install into the applications folder.

 

This  really is one of those "I hate computers sometimes" arguments. We keep seeing the same solved problems being solved again and again.

 

Link to comment
Share on other sites

Link to post
Share on other sites

17 minutes ago, Kisai said:

This  really is one of those "I hate computers sometimes" arguments. We keep seeing the same solved problems being solved again and again.

Yeah. This mess was supposed to be fixed by browser apps, in reality all that did was introduce it’s own set of problems and idiosyncrasies. 

Link to comment
Share on other sites

Link to post
Share on other sites

16 minutes ago, Kisai said:

I'd have to say that I'll take "bundled with the necessary libraries" over "trying to use all the bleeding edge versions" which is what Linux tries to do on nearly every distribution.

 

That said, Most MacOS software isn't braindead, and doing the "Drag to Applications folder" isn't an actual install, it just hides the fact that it's a folder with everything to the OS.

 

Software downloaded from the store, or some legacy software (eg Adobe's nasty installers) doesn't behave in this manner, and operates more like it's on Windows, with things being installed all over the place, for some reason. In general, if you had to run an actual "installer", that installer probably involved drivers/extensions.

 

Windows moved in the other direction, with making it harder to install and write to the application folders themselves and thus forcing applications to write their "per-user" data to the %appdata% and system-specific files to places that the user can't find or delete from.

 

Like, I get the reason for the "per user" stuff, because a computer might be used by more than one user, or you might want to move the user profile between multiple pc's. But for all practical reasons, that software is not going to be available on every computer you move the user directory to, and hence you've seen software start being installed into the USER directory, like Microsoft Teams, because it also bypasses the need for administrative privileges to install into the applications folder.

 

This  really is one of those "I hate computers sometimes" arguments. We keep seeing the same solved problems being solved again and again.

 

The problem is that there is no one stop solution that works everywhere.

 

Mac and Linux both support full ACL with file, user and group permissions, Windows doesn't.

 

Also FTR, Linux also has plenty on per user options, in fact many many more than Windows does. On Linux you can make each user have a different shell, different terminal, different start up apps, different environment variables and a different set of apps available to them very quickly and easily. Each user can have .xxxxxrc files for pretty much everything you need in their home folders.

Main Rig:-

Ryzen 7 3800X | Asus ROG Strix X570-F Gaming | 16GB Team Group Dark Pro 3600Mhz | Corsair MP600 1TB PCIe Gen 4 | Sapphire 5700 XT Pulse | Corsair H115i Platinum | WD Black 1TB | WD Green 4TB | EVGA SuperNOVA G3 650W | Asus TUF GT501 | Samsung C27HG70 1440p 144hz HDR FreeSync 2 | Ubuntu 20.04.2 LTS |

 

Server:-

Intel NUC running Server 2019 + Synology DSM218+ with 2 x 4TB Toshiba NAS Ready HDDs (RAID0)

Link to comment
Share on other sites

Link to post
Share on other sites

4 minutes ago, Master Disaster said:

Mac and Linux both support full ACL with file, user and group permissions, Windows doesn't.

Linux/Mac POSIX file permissions are subjectively easier to configure ACLs for sure, but Windows absolutely can support user/group permissions on files / directories.  Do you have something specific in mind that you can do with Linux/Mac file permissions that you can't on Windows which I've never run in to?

Link to comment
Share on other sites

Link to post
Share on other sites

1 hour ago, Paul Thexton said:

Linux/Mac POSIX file permissions are subjectively easier to configure ACLs for sure, but Windows absolutely can support user/group permissions on files / directories.  Do you have something specific in mind that you can do with Linux/Mac file permissions that you can't on Windows which I've never run in to?

I guess I used the wrong word, instead of supports I should have said used in a meaningful way. Yeah Windows has groups but outside of a domain controller they are never used outside of Windows system accounts to prevent the user from messing with core system files.

 

Perfect example, on my webserver I just set the www root folder to be owned by www-data:www-data and permissions to 633 and I know that only my webserver can access those files. While this is technically possible on Windows, in practice its never really done this way. EVERYTHING runs as system, administrator or user.

Main Rig:-

Ryzen 7 3800X | Asus ROG Strix X570-F Gaming | 16GB Team Group Dark Pro 3600Mhz | Corsair MP600 1TB PCIe Gen 4 | Sapphire 5700 XT Pulse | Corsair H115i Platinum | WD Black 1TB | WD Green 4TB | EVGA SuperNOVA G3 650W | Asus TUF GT501 | Samsung C27HG70 1440p 144hz HDR FreeSync 2 | Ubuntu 20.04.2 LTS |

 

Server:-

Intel NUC running Server 2019 + Synology DSM218+ with 2 x 4TB Toshiba NAS Ready HDDs (RAID0)

Link to comment
Share on other sites

Link to post
Share on other sites

57 minutes ago, Master Disaster said:

I guess I used the wrong word, instead of supports I should have said used in a meaningful way. Yeah Windows has groups but outside of a domain controller they are never used outside of Windows system accounts to prevent the user from messing with core system files.

 

Perfect example, on my webserver I just set the www root folder to be owned by www-data:www-data and permissions to 633 and I know that only my webserver can access those files. While this is technically possible on Windows, in practice its never really done this way. EVERYTHING runs as system, administrator or user.

Yeah cool, just wanted to make sure I wasn't fundamentally missing something 😂  Windows is capable of much stricter RBAC than is available to configure through the standard pointy clicky user interfaces.  Shame really.

 

Out of interest, do you rely purely on posix permissions for your webserver or do you also use SELinux? I know back when I was actually doing sysadminny stuff most people I knew would simply disable SELinux because they didn't understand it and didn't want to learn, I'm curious whether people still do that or if they've started to see the benefits.

Link to comment
Share on other sites

Link to post
Share on other sites

28 minutes ago, Paul Thexton said:

Yeah cool, just wanted to make sure I wasn't fundamentally missing something 😂  Windows is capable of much stricter RBAC than is available to configure through the standard pointy clicky user interfaces.  Shame really.

 

Out of interest, do you rely purely on posix permissions for your webserver or do you also use SELinux? I know back when I was actually doing sysadminny stuff most people I knew would simply disable SELinux because they didn't understand it and didn't want to learn, I'm curious whether people still do that or if they've started to see the benefits.

I use apparmor on it, mostly because its running Ubuntu 20.04 LTS Server and AA comes shipped and enabled. I have played around with SELinux a fair bit but honestly, it seems OTT for a simple homelab webhost and yeah, it is very complex to configure.

Main Rig:-

Ryzen 7 3800X | Asus ROG Strix X570-F Gaming | 16GB Team Group Dark Pro 3600Mhz | Corsair MP600 1TB PCIe Gen 4 | Sapphire 5700 XT Pulse | Corsair H115i Platinum | WD Black 1TB | WD Green 4TB | EVGA SuperNOVA G3 650W | Asus TUF GT501 | Samsung C27HG70 1440p 144hz HDR FreeSync 2 | Ubuntu 20.04.2 LTS |

 

Server:-

Intel NUC running Server 2019 + Synology DSM218+ with 2 x 4TB Toshiba NAS Ready HDDs (RAID0)

Link to comment
Share on other sites

Link to post
Share on other sites

20 minutes ago, Master Disaster said:

I use apparmor on it, mostly because its running Ubuntu 20.04 LTS Server and AA comes shipped and enabled. I have played around with SELinux a fair bit but honestly, it seems OTT for a simple homelab webhost and yeah, it is very complex to configure.

Yeah IIRC AppArmor actually uses the same MAC kernel hooks as SELinux but I've never actually had reason to play with it in earnest.

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×