Hacker News new | ask | show | jobs
by prirun 824 days ago
My upgrade to Monterey (MacOS 12.x) broke my Canon D530 printer driver. Re-installing the driver didn't help. Now I have to print to a PDF, copy that to an old Snow Leopard 10.6 machine, and print from there. FYI, Snow Leopard is 11 major OS revisions behind Monterey. Printing worked fine in Mohave, 3 major revisions ago.

I also can't write any files to /, even with SIP disabled, and during the Monterey upgrade, Apple deleted all files and directories in / that they didn't recognize, including my system backup. I had to recover that from Backblaze. Can't say I'm a fan of recent MacOS. If you think you are in control of your Apple machine, think again.

6 comments

The root (/) is a disk image/APFS snapshot. Apple didn't delete anything... their update replaced that image that you are booting from, which is supposed to be read-only.

  /dev/disk3s3s1 on / (apfs, sealed, local, read-only, journaled)
  devfs on /dev (devfs, local, nobrowse)
  /dev/disk3s6 on /System/Volumes/VM (apfs, local, noexec, journaled, noatime, nobrowse)
  /dev/disk3s4 on /System/Volumes/Preboot (apfs, local, journaled, nobrowse)
  /dev/disk3s2 on /System/Volumes/Update (apfs, local, journaled, nobrowse)
  /dev/disk1s2 on /System/Volumes/xarts (apfs, local, noexec, journaled, noatime, nobrowse)
  /dev/disk1s1 on /System/Volumes/iSCPreboot (apfs, local, journaled, nobrowse)
  /dev/disk1s3 on /System/Volumes/Hardware (apfs, local, journaled, nobrowse)
  /dev/disk3s1 on /System/Volumes/Data (apfs, local, journaled, nobrowse, protect, root data)
  map auto_home on /System/Volumes/Data/home (autofs, automounted, nobrowse)
Stuff that is located on /System/Volumes/Data is on a non-readonly disk and will not be touched by any updates. You can see folders in /System/Volumes/Data that are also in / and there is some magic overlay that maps certain folders to /System/Volumes/Data automatically. So that files in /usr/local/ are actually stored in /System/Volumes/Data/usr/local.
Thanks very much! I had no idea about this, but doing a find command as root did indeed find my backup. It was at:

/System/Volumes/Data/Users/Shared/Previously Relocated Items/Security/hbbackup

I don't know how people are supposed to know this. Plus it is taking up 50GB of space!

IIRC, it should create an alias on your Desktop called Relocated Items or something similar to them after the upgrade that pointed at it.
Thanks! I never look at my Desktop and so never noticed it. I deleted the original, moved backup today, and there is nothing on my Desktop about Relocated Items. That could be because I removed it, like an Apple smart link thing, or maybe it was never there - dunno.

IMO, if they're going to do something this drastic, they should at least have a one-time large pop-up box after the upgrade explaining that they moved things that were formerly in root, and wait for a user to confirm that they read the notice.

That would be unnecessary for almost every single last macOS user, you are an outlier.

If you go against the grain or the way the OS is built and explicitly disable SIP and do things the OS would normally not allow, you are expected to understand the OS enough to know where things have disappeared to when they disappear.

I don't think Apple should protect the very small minority from themselves.

Sounds like Canon is really bad in supporting driver changes in subsequent OS releases. I recall diagnosing the same issue with a colleagues Mac over 10 years ago. She updated the OS and the printer she bought with the computer 3 OS'es ago stopped working. Turns out something with how Printers were handled changed and Canon refused to release updated drivers for a discontinued machine. I recall that some third party hobbyist had developed a method to make the printer work but it took hours to try and get it working until we just gave up....also her dog accidentally yanked on the printer cord and it went flying off the table. That was also motivation to stop trying. I am more inclined to blame Canon than Apple here.
Why? Windows has been the one updating itself making sure to not break backwards printer support, not the other way around.

You can still use printers from the 90's on modern Windows, meanwhile MacOS seems to break support for recent printers between minor updates.

It's not like they're a cash-strapped start-up, if Microsoft can afford to invest in maintaining backwards compatibility, so can Apple.

Sounds like Apple is just lazy and doesn't care what it breaks treating their desktop OS like their mobile OS where app devs need to keep pace with them, and fans will die on the hill defending them.

Windows definitely does break backwards-compatibility of printer drivers. My parents had to use a Windows XP VM to print on their Canon printer for a long time before giving in and buying a new printer.
It seems like Apple just prefers that companies release software that they will actually maintain, instead of relying on Apple/Microsoft to bend over backwards to maintain backwards compatibility from now until the end of time.
>It seems like Apple just prefers that companies release software that they will actually maintain

Maybe companies prefer their way, instead of what Apple imposes on them. After all, not all companies are tech companies, who can afford large teams of expensive devs to keep updating their SW. For non-tech companies, the less dev work they have to invest in SW, the better, as that frees up resources for their main business activity.

I for one if I'm the customer and the one spending the money I definitely want to be in charge, not be at the mercy of the manufacturer of product I spend money on to dictate how I should run my business, that I should invest more effort in keeping up with them.

Move fast and break things at the pace of their vendor, is not what most users and companies expect from their products and services.

They shouldn't advertise Mac support then. Canon specifically put a Mac logo on their boxes and uses that in their advertisements.
These printer companies could also open source their drivers after a number of years. The amount of landfill printers due to driver support is kinda sad. Just tossed my old cannon that had a perfectly good scanner due to driver support and the “need” for ink for the scanner to work. Booo!
Canon doesn't develop MacOS. They advertise support for the version of MAcOS that existed when they launched the printer. If MacOS decides to break compatibility over time, it's not their fault. If they're not selling the printer today, they can't also provide up to date support for the OS of today. It's up to the OS developer to ensure a stable API for printers.
Hang on, let's pump our brakes and take a quick peek at the calendar. The comment thread we're in was talking about the Canon D530 which was released in 2012, which supposedly broke in MacOS Monterey released in 2021. It's a stretch to call 9 years "moving fast and breaking things".
Hold on there buckaroo. Having a 9 year old printer at home is no big deal as consumers don't usually upgrade their printers if they still work and compatible ink cartridges are still available. My parents are still running a 20+ year old Canon, because it's easy to refill cheaply.

And things don't exist in a vacuum but in comparison to others. To wit, does that Canon printer from 2012 work in present day versions of Windows and Linux? If yes, then why is MacOS the odd one out here?

So what's stopping Apple from providing the same level of reliable printer support as Microsoft and Linux? It sure as hell aint lack of money.

What has changed since 2012 in the document printing space that would make that perfectly good machine obsolete? Machines don’t grow on trees, they are created at terrible environmental cost.
tbf MS is not the "normal" in the aspect. They are pretty much the backwwrds-compatibility kings.
But nobody is expecting 30 years of backwards compatibility. Just keeping old printer drivers working. It's not like printers are devices we need all too much anymore. It's perfectly reasonable to assume that users will have discontinued printers at home.

Kinda similar to Rosetta 1 and 32 bit binaries on x86. I get their motivation but killing Rosetta 1 basically meant that all old games that came out in the PPC era couldn't be played anymore and killing of 32 bit binaries made the Apple logo in Steam useless. It's not like people expect that this works like how early win32 application still work on Windows. They could totally make the user jump through a bunch of hoops to get support for their old applications. But they didn't.

And at a significant cost at that.

Windows has become a hodgepodge of code bases from a variety of time periods and philosophies, some of which leans on some ancient stuff that can’t be touched.

Hell, they had to skip Windows 9, just to prevent breaking 95/98 software from braking.

The average SW engineer here in HN wouldn’t know how fast they’d get to a keyboard to complain if they were to find a codebase like that at their job.

That’s not to say it’s necessarily bad, even if it can be cumbersome, it’s just to highlight the cost of maintaining that compatibility and a difference in philosophy.

How on earth is it Canon's fault when Apple releases a breaking change?
Well for starters Canon installers do strict version checks. And they often stop updating their drivers, especially for older printers. I got very good about editing the installer files to either add newer versions of macOS or to just remove the version checks. The drivers always worked after I did so. Thats just one of the continual issues with them and their software that caused me to finally ditch them. HP drivers may be bloated, but they work!
Regardless of Canon, there is no reason to change drivers between macOSX OS releases. Aren't all releases using cups?
Can confirm - Canon is horrible at updating their drivers; one of the reasons I no longer own, use or recommend any of their printers. Which is a shame since I really liked their laser printers :/
> Turns out something with how Printers were handled changed

What about backwards compatibility?

Doesn’t Snow Leopard have printer sharing? i.e. you can skip the generate PDF and copy steps, assuming both machines are on your LAN
Snow Leopard has printer sharing. Even better, it has CUPS if you want to get your hands dirty. :)
If the printer it's shared over a wifi network, you can just use netcat:

        nc your_printer_ip 9100 < /path/to/your/pdf/file
Doesn't that require your printer to support Postscript? Not many printers for mere mortals support such advanced technology.
It was magical when apple released the LaserWriter printer in 1985 that took postscript files. No need for custom drivers. You would think these days all printers would be driverless.
> Doesn't that require your printer to support Postscript? Not many printers for mere mortals support such advanced technology.

Most networked printers support Postscript, it's not a special feature like it used to be.

Sure, cheap USB inkjets usually don't, but with how cheap entry level networked lasers have been for the last decade or two there's no good reason to buy one of those things. They may be cheaper up front but within a few years the ink alone will make the difference.

PDF support is reasonably widespread these days.
If there's cups running on the remote machine there's a chance it will take care of conversion.
This does not always work for me. Sometimes it makes my printer print out dozens of pages of garbled commands. It varies between sources and tries, so I don't know.
Assuming your printer supports pdf files…

Maybe .ps would be better, but even that isn't universally accepted.

I just saw an update come through on my Ubuntu 22.04 machine for CUPS. I know that Apple is the steward/owner of CUPS now, so I wonder if it's a related update.
Apple hasn't been paying for CUPS for a number of years now.
Apple is not employing Michael R Sweet anymore, that doesn't mean MacOS is not using cups.
I said "paying", not "using".
I don’t think that Apple uses CUPS anymore.
I believe it's still used. Whenever I print anything (Sonoma 14.4) I have to allow connections for 'cupsd'.
Speaking in terms of having “control” over your machine is alarmist and thought-terminating. Your computer didn’t do what you expected it to. Hell, you’re very justified to go beyond that and say that it behaved in a way that it shouldn’t. Removing files from / without notification or backup is bad. Not being able to have files in / is a completely superficial and meaningless indication of “control”. Again, your machine isn’t behaving in a way that you’re expecting it to, or even that you’re used to. macOS is an operating system. Its job is to…be an operating system. It’s going to handle some things for you. That’s why it’s there.
>> Your computer didn’t do what you expected it to. Hell, you’re very justified to go beyond that and say that it behaved in a way that it shouldn’t.

It did exactly what it was programmed to do. It was not a malfunction, it was intentional:

https://www.youtube.com/watch?v=Ag1AKIl_2GM&t=57s

Install little snitch and put it into alert mode and watch as you are overwhelmed with the tens of dozens of outbound connections going out to Apple or iCloud (despite not being signed into iServices) from dozens of system processes.

Why does my MacBook which isn’t enrolled in an mdm ping Apple for mdm config and policies? Why is accountsd phoning home when I’m not signed into an Apple account? Why does the Mac generate absurd amounts of app analytics which you can view in the console app yet can’t delete despite the fact that you turned off all analytics when setting up the machine? Why regardless of if I have WiFi logging enabled or disabled is it still spitting out WiFi velocity reports.

The OS used to be damn near perfect and it’s gone down hill since the first version to introduce iCloud signin. Every new feature they add is something I’ll never be interested in using. Disabling services you don’t want running so they stop phoning home or consuming resources is almost impossible anymore, requiring a dance of booting into recovery mode, disabling every single system protection mechanism, and then booting completely vulnerable into normal mode to then pray that the launchagent gods actually let you turn off mediaanalysisd or if nothing else that sudo has permission (sudo!!) to delete the plist file, and often you get permission denied errors or the process comes back after a reboot. It’s a shit show. The frustrating part is sip and all those things that prevent us from tuning our machines don’t even stop rootkits or the numerous zero days in the wild since it came out

WTF is this nonsense? The OS updated deleted files that it had no business deleting. It's my computer. If I want to put files in the Apple approved locations or if I want to put files in / or even if I wanted to put files in C:\, it's none of Apple's damn business. If placing files in / is a security threat, then I'd suggest your not doing security right.
SIP is Apple's documented way of reserving certain paths to be under OS control. You can disable it to modify reserved paths, but they make no guarantees about such modifications continuing to work across OS updates. If you want files the OS won't touch, keep them out of OS-reserved paths. If you want full control of all files on your machine, a managed OS like MacOS is not for you.