News for hackers. Stuff that matters.
Re:macOS Kernel Extensions are officially deprecated by CountSessine on Thursday February 06, 2020 @12:21AM (#22253610)
Interesting.

The company I worked for and our competitor VMWare both had to create small kexts to enable on-the-fly capture of USB devices. We both accessed USB devices from user-space, but we needed to put small kexts in the kernel to prevent class drivers from being automatically attached to general USB devices. There was really no race-free user-space way of doing this and Apple ignored our messages on their dev forums when we asked for assistance.

I wonder if they’ve added an interface for this? Or maybe promiscuous USB device control just isn’t going to be possible now?

Re:macOS Kernel Extensions are officially deprecated by SyneRyder on Thursday February 06, 2020 @05:31AM (#22254961)
If I'm correctly guessing that you might have worked on Parallels, thank you for one of the best programs I've ever used. So many nice delightful touches, like their autodetection of USB devices and asking if I want to use them with the VM or the native system. Without Parallels I could never have used a Mac as my main machine.

I've since moved back to Windows, but I hope Parallels might make a Windows version. The Windows competitors aren't as good as their Mac versions, and painfully slow compared to Parallels running on my ancient MBP 2012.

Re:macOS Kernel Extensions are officially deprecated by prashnts on Thursday February 06, 2020 @06:29AM (#22255216)
Parallels’ way of handling USB is just perfect. I was trying to install RockBox firmware to my iPod Classic and the easiest solution was to use Windows XP in parallels. That’s when I realised how well it’s implemented! It first asked me if I wanted to attach usb with Windows VM or MacOS, and later I could even make it default. Very good UX.

Edit: Windows XP, because I still remember its Product Key. Ha. I probably reinstalled XP in my PC as a kid about a hundred times.

Re:macOS Kernel Extensions are officially deprecated by o_x on Thursday February 06, 2020 @09:37AM (#22256235)
Does it start with FCKGW...? ;)
Re:macOS Kernel Extensions are officially deprecated by prashnts on Thursday February 06, 2020 @09:45AM (#22256305)
I think that's one of the several "free" product keys available online. Mine starts with Q3GQT and ends with XPKBW. :D
Re:macOS Kernel Extensions are officially deprecated by jamil7 on Thursday February 06, 2020 @05:43AM (#22255020)
> on my ancient MBP 2012

I still do all my work on one, fast as the day I bought it.

Re:macOS Kernel Extensions are officially deprecated by pcdoodle on Thursday February 06, 2020 @10:29AM (#22256678)
2011 with a disabled AMD GPU as a daily driver here. CPU passmark at 6000 so why not with a SSD.
Re:macOS Kernel Extensions are officially deprecated by vaxman on Thursday February 06, 2020 @08:45AM (#22255869)
Why can't someone slap the XNU api onto Linux and create a runtime system that permits Apple's UX frameworks/libraries to be used by Linux developers (who will create more performant apps that do incredible things while maintaining the look-and-feel of the Macs that we once loved)? As long as we're booting Linux on machines bought at their local mall outlet or online store, I don't see the legal problem. Maybe a new generation of managers at Apple would even cooperate with such a Linux distribution (something like A/UX of yesteryear)?
Re:macOS Kernel Extensions are officially deprecated by pmjordan on Thursday February 06, 2020 @09:05AM (#22255983)
Why can't someone slap the XNU api onto Linux

Probably because importing Mach messaging and VM APIs into the Linux kernel, and recreating IOKit and similar from scratch is a pretty major undertaking; the APSL isn't GPL-compatible, so using the existing XNU code and trying to make it fit into the Linux kernel isn't something that could ever be upstreamed. Aside from the fact that Linux's device model doesn't exactly map to IOKit well.

Then there are invariably plenty of assumptions that userland makes: launchd is probably assumed to have PID 1; all sorts of stuff like that.

Plus of course, there's the question of whether this would be inline with the EULA of Apple's userland…

There's always GNUStep if you want to write Cocoa apps in Objective-C on Linux. Somehow I have a feeling the APIs aren't what's been holding back Linux on the desktop.

Re:macOS Kernel Extensions are officially deprecated by shakna on Thursday February 06, 2020 @11:25PM (#22263206)
Darling is a translation layer that does something similar [0]. Development has gone up and down over the years. One of the main pain points is the way Apple adopts, and then discards, a new GUI API every few years.

[0] https://www.darlinghq.org/

Re:macOS Kernel Extensions are officially deprecated by zZorgz on Thursday February 06, 2020 @01:21AM (#22253849)
As a side note, the forums aren't the best place for that; the post could just be unseen by the people that matter. The appropriate channels are through Feedback Assistant and/or a technical support report (https://developer.apple.com/support/technical/) which has bit more visibility.
Re:macOS Kernel Extensions are officially deprecated by dehrmann on Thursday February 06, 2020 @02:34AM (#22254208)
For things vaguely like this, the places I've worked had contacts within the company helping us to varying degrees. Apply was not one of these companies, and unless there's money or contracts are being signed, getting that contact is a challenge.
Re:macOS Kernel Extensions are officially deprecated by zZorgz on Thursday February 06, 2020 @03:04AM (#22254338)
Sure, but for clarification the channels I noted are if you are any registered developer and don't have close contact.
Re:macOS Kernel Extensions are officially deprecated by ksec on Thursday February 06, 2020 @06:13AM (#22255146)
Or Else the best place these days seems to be Twitter and getting other developers support.
Re:macOS Kernel Extensions are officially deprecated by jchb on Thursday February 06, 2020 @07:42AM (#22255567)
Second this, you get two free Technical Support Incident requests per year as a registered developer, and you can purchase additional ones. We regularly file such requests and have always got timely and helpful responses.
Re:macOS Kernel Extensions are officially deprecated by wila on Thursday February 06, 2020 @07:47AM (#22255588)
VMware Fusion has a Tech Preview out since last week where the USB passthrough support is no longer done via a kernel extension.

See here: https://communities.vmware.com/servlet/JiveServlet/download/...

Re:macOS Kernel Extensions are officially deprecated by CountSessine on Thursday February 06, 2020 @04:42PM (#22260679)
Ah - good to know and glad to hear it for the sake of my former colleagues; Apple had already redesigned the USB kernel interfaces to make this more difficult and I wasn’t sure how they were going to keep doing this at all.
Re:macOS Kernel Extensions are officially deprecated by mrpippy on Thursday February 06, 2020 @10:38AM (#22256772)
Yes, they've added an interface for this. The latest tech preview of VMware Fusion is using this interface rather than their own kext: https://blogs.vmware.com/teamfusion/2020/01/fusion-tp20h1-in...
Re:macOS Kernel Extensions are officially deprecated by comex on Thursday February 06, 2020 @02:06AM (#22254062)
USBDriverKit can do this.
Re:macOS Kernel Extensions are officially deprecated by leo60228 on Thursday February 06, 2020 @08:38AM (#22255830)
Isn't this feature what's blocking Bluetooth Passthrough on macOS Dolphin?
Re:macOS Kernel Extensions are officially deprecated by JdeBP on Thursday February 06, 2020 @05:53AM (#22255071)
In FreeBSD and NetBSD there's a USB_IFACE_DRIVER_DETACH ioctl(). But things are very different on XNU. (-:
[dead]
Re:macOS Kernel Extensions are officially deprecated by Gorbzel on Thursday February 06, 2020 @09:37AM (#22256236)
The developers of Little Snitch have explicitly said they favor this move:

>Using the Network Extension framework instead of an NKE very likely allows us to build a version of Little Snitch which requires no Kernel Extension at all. That is a good thing.

Of course, you reposting the same inaccurate rant multiple times throughout these comments (including reposting as the top comment grew) signals you're aiming to perpetuate your anti-Apple fervor, but here's to dissipating said FUD for those of us who use/love Little Snitch.

Re:macOS Kernel Extensions are officially deprecated by webmobdev on Thursday February 06, 2020 @01:22PM (#22258625)
> The developers of Little Snitch have explicitly said they favor this move ...

Sure. They also said that if Apple doesn't provide them the required API's, they will continue using a kernel extension:

> But what happens if Apple will not or cannot provide the required features? NKEs will be deprecated, but not Kernel Extensions in general. We can still implement a Kernel Extension to augment the functionality of the NE framework. The basic filtering can be done via the NE framework and additional functions would be provided by our own Kernel Extension.

Source: https://blog.obdev.at/little-snitch-and-possible-deprecation...

The unsaid part is ofcourse - "as along as Apple allows them to do so."

With the way Apple is tightening down the Mac systems, through both hardware (Apple T2 security chip) and the software (changes to macOS making it more like ios), there is absolutely NO GUARANTEE that Apple will allow unapproved Kernel Extensions to run on the future versions of macOS.

Re:macOS Kernel Extensions are officially deprecated by madeofpalk on Thursday February 06, 2020 @09:38AM (#22256245)
This is not a conspiracy I can believe it. I just think that Apple doesn't want third party code running within the kernel, with such high privileges, creating either vulnerabilities and/or instability, and they're creating user land alternatives.

I presume Apple looks at Dropbox creating a kernel extension and isn't too impressed, so they give them a safer and more secure method to achieve the same thing.

Re:macOS Kernel Extensions are officially deprecated by webmobdev on Thursday February 06, 2020 @01:49PM (#22258956)
I would like to very much believe you as I turned to Apple because I didn't like both Microsoft's and Canonical user spying practices and unfortunately have to use use some non-linux commercial software applications.

However, recent moves by Apple over the past years make me very doubtful. Apple is going about this just as Google did in the beginning - loudly and convincingly promising "privacy" while slowly intruding more and more and collecting more data on its users.

Re:macOS Kernel Extensions are officially deprecated by IfOnlyYouKnew on Thursday February 06, 2020 @09:59AM (#22256407)
I have run both MacOS as well as iOS behind outbound firewalls, and there just isn't any data going to Apple that I cannot easily disable in settings, except maybe checks for updates (haven't tried).

Your conspiracy is also missing any motivation Apple might have for gathering private data. They don't run an ad network

> it does nothing to stop your data from "leaking" to the internet in the first place

That's just blatantly false. Apple has always had restrictions on third-party software. Recently, they have tightened the screws considerably. I'm not entirely sure about outgoing net connections. But just gathering data that is valuable enough to exfiltrate is near impossible, considering apps can only access what's specified in their manifest and explicitly allowed by the user.

Re:macOS Kernel Extensions are officially deprecated by webmobdev on Thursday February 06, 2020 @02:27PM (#22259381)
> That's just blatantly false ... But just gathering data that is valuable enough to exfiltrate is near impossible, considering apps can only access what's specified in their manifest and explicitly allowed by the user.

I think we are talking about different things.

First, I was specifically talking about ios / iPadOS. Neither platform has any outbound firewall that can stop apps from access the internet (unless you count the very basic one that allows you to restrict net access to apps when you use "mobile data").

So if you are on Wifi on your iPhone/iPad/iPod, any app you are using has free access to the internet. This has the potential to "leak" user data.

E.g.: I like to use the Adobe Acrobat app to read any PDFs. But when you use the app, you have no idea if Adobe is collecting meta data information on the PDF's you have, or even uploading them. Same with Microsoft products. Or even Google's.

If I could disable internet access to these apps, 90% of which don't need them in the first place, I could use them with a bit more peace of mind. That's what I meant by when I said allowing unrestricted internet access to any apps, can "leak" our personal data to the internet, on ios / iPadOS platform.

Re:macOS Kernel Extensions are officially deprecated by webmobdev on Thursday February 06, 2020 @02:11PM (#22259218)
> Your conspiracy is also missing any motivation Apple might have for gathering private data. They don't run an ad network

It's called "surveillance capitalism". Please look it up on Google.

You don't need an "ad network" to monetise user data. (Oh, and Apple does have an ad network, though it is in "hiatus" now - it was "shut down" right when the marketing about Apple's media campaign on increased user privacy picked up, while at the same time they started rolling out forced ios updates that had features to collect even more of your user data (all "anonymously" ofcourse - and there have been enough recent article debunking how anonymous data can still be de-anonymised).

Let's not forget that as a public multi-national company, that is bound to the American philosophy of capitalism, Apple is duty-bound to make more money for it's shareholders in any way possible. (I've even heard that shareholders can otherwise sue them to in American courts). So everyone of us would be a FOOL to believe that Apple will not monetise our personal data, one way or the other, now or in the future.

Re:macOS Kernel Extensions are officially deprecated by ubermonkey on Thursday February 06, 2020 @10:32AM (#22256719)
>I suspect this an attempt by Apple to make it more like iPadOS and deny us advanced users even more control over our OS.

I doubt this.

> Apple deliberately doesn't implement because it wants access to your user-data and to spy on you.

<citation needed> Apple doesn't monetize data, so why would they want this?

Re:macOS Kernel Extensions are officially deprecated by webmobdev on Thursday February 06, 2020 @02:30PM (#22259423)
> Apple doesn't monetize data, so why would they want this?

Look up "surveillance capitalism". And Apple absolutely monetises user data - just not in the way you think it does (i.e. through an ad network). It uses the data to profile you to learn more about you to better "exploit" you and make more profit from you.

Re:macOS Kernel Extensions are officially deprecated by ubermonkey on Thursday February 06, 2020 @03:31PM (#22259977)
When most people say "monetize data" they mean advertising and marketing.

Monitoring the usage of their own products to improve offerings, and never sharing that data, is not what people mean when they say "monetize." You're deliberately trying to muddy the term because you dislike Apple.

Re:macOS Kernel Extensions are officially deprecated by webmobdev on Thursday February 06, 2020 @07:37PM (#22262039)
Yeah, and Apple using your personal data to market their own services and products to you comes under the ambit of what we are discussing, if you want to be really pedantic about it.

And stop acting with a cult like mentality that any criticism of Apple is an attack on Apple.

Re:macOS Kernel Extensions are officially deprecated by marriedWpt on Thursday February 06, 2020 @09:17AM (#22256079)
I never understood the reason an advanced user would buy an Apple product.

Is it compiling iOS apps for other people?

Given the high price and lack of qualities, I don't imagine many advanced users would buy anything from Apple.

Re:macOS Kernel Extensions are officially deprecated by KarlKemp on Thursday February 06, 2020 @09:47AM (#22256329)
Have you seen the number of MacBooks at MIT, or Google's or any other tech company's campus? The difference between your notion and reality should really motivate you to question your assumptions.

The two most glaring errors are, first, that "advanced users" wouldn't care about ease-of-use. And, second, that "advanced users" would care about price as much as you do.

Apple is great hardware, an OS that works and that doesn't constantly bother you with notification (the most glaring problem with Windows, when I last used it a decade ago), and a native Unix underneath.

Re:macOS Kernel Extensions are officially deprecated by Frondo on Saturday February 08, 2020 @11:39AM (#22276609)
Also, if you buy a Mac that's a few years old, you still get a great computer at a low, low price. I picked up an 11" air for under $400 off eBay and have used it to build a startup that supported me and my support person. Ran dev tools fine, ran browsers fine, and even though it was years old the battery life was fine.

You don't need the new hotness to get good and useful work done.

Re:macOS Kernel Extensions are officially deprecated by marriedWpt on Thursday February 06, 2020 @10:32AM (#22256727)
This has everything to do with marketing, not hardware or OS or usability.

Just because someone is talented in CS, doesn't mean they can defend themselves from Marketing.

I imagine advanced users want full control over settings and programs. I recently needed to turn off signatures to get a compiler to work.

There doesn't seem to be a rational reason outside iOS compiling.

Re:macOS Kernel Extensions are officially deprecated by CountSessine on Thursday February 06, 2020 @10:43AM (#22256821)
I wanted full control over settings and programs when I was 14. Decades later now, I want an environment that works and gets out of my way and gives me access to the tools I want to program with.
Re:macOS Kernel Extensions are officially deprecated by webmobdev on Thursday February 06, 2020 @02:34PM (#22259455)
> I wanted full control over settings and programs when I was 14. Decades later now, I want an environment that works and gets out of my way and gives me access to the tools I want to program with.

Nice deflection. Who says you can't have both?

Re:macOS Kernel Extensions are officially deprecated by CountSessine on Thursday February 06, 2020 @04:37PM (#22260617)
Sorry - I though he was being a bit juvenile and felt like being similarly dismissive was appropriate.

I regularly switch between MacOS, Windows, and desktop Linux both for work and for home; I love fiddling around with settings and configurations to get things to work, but only sometimes and only when it’s on my terms. The rest of the time I just want it to work, out of the box or off the install disk.

I’m always going to love tinkering with Arch from time to time, but then I get my work done on Fedora or similar.

Re:macOS Kernel Extensions are officially deprecated by webmobdev on Thursday February 06, 2020 @07:30PM (#22261985)
Ok, I get what you meant. And I won't deny sometimes I too get frustrated when I can't find the driver for some hardware on Linux or have to download some source code and compile it.

But I will still never accept Apple's approach of total control and deciding for its user. Each of us have different needs and expectations from our computer. And there is no way, even with all the spying that Apple does, that it can provide a "perfect environment" for each of it users. It just isn't true and not possible. So restricting customisation, in the name of security but in reality to limit and control the user from making any changes without "contributing" to Apple's profit, is just bad for us consumers.