13 ms·
November 2022 Progress Report
- cbm-vic-20 4y agoThe pace of work that's being done, with a lack of documentation, has been very impressive.
- binkHN 4y agoWow. The effort here is amazing—sad Apple won’t provide for more assistance. If it wasn’t for this project, OpenBSD on Apple silicon (thank you kettenis@!) likely wouldn’t exist.
- rs_rs_rs_rs_rs 4y agoApple already provided way more than anyone expected(making it very easy to dual boot).
- capableweb 4y agoDid people really expect Apple to prevent dual booting? Not only have they never prevented it before, but also they would for sure be getting into hot water legally if they start selling computers where there wasn't the possibility.
- deleted 4y ago[deleted]
- dijit 4y ago> Did people really expect Apple to prevent dual booting? Yes, iPhones and iPad's don't allow it and Microsoft doesn't allow it on it's ARM based OS. (enforced secureboot; detailed slightly here: https://wiki.ubuntu.com/ARM/SurfaceRT#Secure_Boot https://wiki.ubuntu.com/ARM/SurfaceRT#Secure_Boot ) There was no expectation on my side that they would support it.
- capableweb 4y agoOn their computers they have never prevented it before, sorry if the previous comment was unclear about that we were talking about computers/laptops, not mobile devices.
- dijit 4y agoBut they also never went to great lengths to allow it, culminating in a terrible experience with the T2 chip: https://www.trustedreviews.com/news/apple-t2-chip-linux-mac-problems-3616180 https://www.trustedreviews.com/news/apple-t2-chip-linux-mac-... So, again, it was not looking positive.
- capableweb 4y agoThat was never the case, seems the article you linked is based on a misunderstanding. See https://www.omgubuntu.co.uk/2018/11/apple-t2-chip-cant-boot-linux https://www.omgubuntu.co.uk/2018/11/apple-t2-chip-cant-boot-... Even with the T2 chip, it was possible to turn off Secure Boot 100% so you could boot whatever operating system you wanted. Just as a disclaimer, I'm no Apple fanboy, I stopped using their software/OS even before I got rid of my last MacBook, and since 2018 or something haven't been using the hardware neither and only use a Mac for testing various software I develop. So I don't normally defend anything they are doing. But right should be right; they have never previously tried to stop people from running whatever OS they want on their computer hardware so guessing they suddenly would start, feels like a pretty far-out guess.
- dijit 4y agoI tried to do this myself, I was greeted with a fan that was on 100%, a non-functioning keyboard and trackpad and USB ports that were roughly half functional. It's a falsehood to say it was allowed. It was possible but very much not how you seem to imply.
- capableweb 4y ago
- kitsunesoba 4y agoLeading up to and for a short time after the M-series announcement, the resulting "locking down" of the Mac was a commonly voiced suspicion/concern, to the point that to this day, many tech-adjacent online discussion participants who don't follow Apple think that M-series Macs have the same boot restrictions as iOS devices.
- Wowfunhappy 4y agoI have to say, I don't entirely understand Apple's approach here. Apple spent significant engineering effort modifying their iOS bootloader to support third-party OSs—then neglected to tell anyone how to actually make a third-party OS. Whoops! Have fun! And to be clear, this is absolutely preferable to Apple selling fully locked-down Macs. And, I realize that macOS will always be Apple's first priority, and that writing documentation takes effort. But would it really kill Apple to connect Marcan to an engineer, who could allocate 30 minutes a week to answering questions? Is there some sort of legal liability involved? Security concerns? Brand safety? The Asahi team is comprised of people who clearly enjoy reverse-engineering, and if everyone is having fun (and creating an awesome Linux port in the process), perhaps that's all that matters. But I still find Apple's choices confusing.
- capableweb 4y ago> Apple spent significant engineering effort modifying their iOS bootloader to support for third-party OSs—then neglected to tell anyone how to actually make a third-party OS. Whoops! Have fun! This tend to be the usual practice for much of what Apple does, release things with minimal documentation and let others figure out how it works. Maybe it's just a sadist corporation who wants to see how far people are willing to go in order to get stuff working with their own hardware/software? Sometimes it certainly seems that way.
- smoldesu 4y agoIt's mostly frustrating that this is still the rhetoric from Apple now that they are the largest company in modern existence. They have the faculties to release their Unix drivers and even provide world-class Linux support while still profiting heavily from their hardware sales. Yet, they don't. Every time they're given an opportunity to err on the side of freedom or choice, they shrug. This is an ongoing problem that has prevented me from daily-driving MacOS since Catalina. Really a stance I wish Apple would revert, even Microsoft does a better job here than Apple.
- tpush 4y ago
- jjtheblunt 4y ago> sad Apple won't provide for more assistance I am missing why we think they are not doing so continuously, perhaps behind the scenes
- mhh__ 4y agoApple really don't go in for that kind of thing. Spiritually it's your device but their ego
- Wowfunhappy 4y agoI really don't think marcan and co have some secret backchannel with Apple. If nothing else, a lot of their coding sessions are streamed live on Youtube, so you can see them reverse engineering stuff in real time.
- deleted 4y ago[deleted]
- Thaxll 4y agoMy dream, using Apple hardware with Linux will finaly happen some day.
- willio58 4y agoI mean I ran ubuntu on my mac natively back 5 years ago. Ran pretty well!
- kjsthree 4y agoAlso very excited about the progress Asahi is making. I did technically live your dream though in 2003 with YDL on my G3 iBook. It was… ok.
- lynx23 4y agoI was very happy with Debian on my MacBook Air roughly 10 years ago. I am a non-GUI type of guy, so I might have missed quibbles that other people had around that.
- kijiki 4y agoI ran Debian on my Pismo PowerBook from 2000-2008, because it was the only thing that could reliably suspend/resume. Switched to ThinkPads because Linux suspend/resume on x86 had gotten pretty reliable by then.
- wpm 4y agoEven in a alpha state Asahi works pretty well in my limited experience so I’m very optimistic for the future.
- _joel 4y agoRan ubuntu on mac mini's for a big chunk of the previous decade
- Wowfunhappy 4y ago> But what about the display brightness? [...] In order to support the display output properly, we need a driver for Apple’s DCP coprocessor and its firmware. We’ve already talked about DCP in the past, and how cursed the interface is! Since then, Alyssa wrote a Linux kernel DRM KMS driver for DCP and Janne took over maintenance, and he’s been steadily adding features, including brightness control support. > However, it does come with some caveats: the driver [...] may also reduce performance on some setups, since it is really meant to be used together with GPU acceleration (the simpledrm framebuffer driver has some software rendering optimizations that DCP lacks) and clients using the modern atomic-modeset and swap APIs, like Wayland compositors. It also has some limitations when used with legacy clients such as Xorg - in particular, there is no support for true VBlank interrupts, and it is unclear whether the hardware/firmware supports this at all. This breaks XFCE4’s window manager with compositing enabled. For these reasons, we are not enabling DCP by default for all users Is there a reason they can't use the DCP driver to change display brightness without switching over to it entirely? It sounds like DCP and GPU acceleration probably ought to ship together—but IMO, changing display brightness is a must-have, in order to use a laptop comfortably in different ambient environments.
- X-Cubed 4y agoThey mentioned that the display output is currently using a framebuffer provided by the boot loader. I suspect when the DCP is initialized, the screen starts displaying a different framebuffer provided by the DCP, so if it was just used for brightness the screen would go blank.
- Wowfunhappy 4y agoCould you switch it back afterwards though? Having it temporarily blank to switch brightness doesn't seem so awful.
- zamadatix 4y agoEven if you could I don’t think the GPU stuff is far enough behind to really worry about it.
- yewenjie 4y agoHow big is the Asahi Team? I wonder, since there is so much of community interest in the final product, why do we not see a lot more community participation in the development as well?
- Wowfunhappy 4y agoWhat makes you say there isn't community participation? The repo for m1n1, at least, has 42 contributors according to Github[1]. There's plenty more reporting bugs and such, and their IRC channel seems relatively active. 1: https://github.com/AsahiLinux/m1n1 https://github.com/AsahiLinux/m1n1
- goethes_kind 4y agoKind of ridiculous that with so many of the top latent using Linux in 2022, we still have to resort to this to have it as our main OS on our preferred hardware.
- tbrock 4y agoIsn’t it more absurd that no vendors who support Linux make acceptable/comparable hardware?
- goethes_kind 4y agoMy lamentation goes well beyond Apple's business practices and I agree with you wholeheartedly. I am hoping Framework + AMD might get close sometime in the next couple of years.
- Firmwarrior 4y agoMan, I'm surprised to hear that's the case I assumed that Macs were mostly preferred because of their UX and relatively high-quality drivers/OS working well with sleep/wake. But if you put linux on there, you're giving all that up Are there not any linux laptops out there with decent build quality and comparable perf/battery life?
- ZiiS 4y agoThe are not any Windows laptops with comparable perf/battery life either.
- jm4 4y agoAgreed. Aside from the processor, there really isn't anything particularly compelling to me about the hardware. Apple's forte is how they integrate the whole hardware package with good software. The build quality is better than most but not especially great. That's not really saying much when you consider the low quality of so many others out there. The keyboards are terrible and I had serious reliability issues with the last couple Macs I used. The battery life probably comes as much from the OS as it does from the hardware. Support is generally acceptable if you pay for AppleCare, although you can sometimes end up waiting a couple weeks for certain repairs. The Asahi team is doing great work, but I can't help but feel like Linux will always be a second class citizen on Apple hardware. I understand it still appeals to some people. It's not for me, though. I'm using a ThinkPad now. It's ok. It's well supported in Linux and Lenovo still provides good support. I think the plan I paid for includes next day repairs. I like that it actually has a variety of ports unlike some of the others that cheap out. It's more repairable than most laptops out there. I will probably get a Framework next time or maybe System76. If I was into MacOS, I'd get a MacBook without a doubt, but I just don't like the OS very much anymore.
- hendersoon 4y agoWork on Mx GPU drivers is particularly interesting as it could allow for performant MacOS virtualization on commodity PC hardware. Right now if you virtualize MacOS interactive desktop performance is unusably slow unless you pass through a PCIe GPU.
- Wowfunhappy 4y agoI... don't think it will. There's a pretty big difference between writing a driver for a GPU and actually emulating that GPU, much less with reasonable performance. And I do think that's what you'd have to do, because unlike on Intel, macOS on Apple Silicon does not support software rendering.
- my123 4y agoNah, Apple has a very clean Metal paravirtualisation ABI. This allows to decouple the VM from the underlying HW. macOS 12 VMs will run on Mac hardware that doesn't even exist yet, with GPU acceleration.
- jamesfmilne 4y agoOnly supports Metal though, no OpenGL apps (even through their OpenGL implementation is written on top of Metal).
- my123 4y agoWritten on top of Metal with some specific private extensions. I guess that they aren’t willing to long-term support those (yet?). I wonder if they are going to make the Apple OpenGL impl run without those as an alternative too…
- bityard 4y ago> Ah, but when people say “power management”, what they usually mean is “suspend”. See, ancient x86 platforms (where “ancient” means “everything prior to 2015 or so”) don’t have reasonable real idle power management like Apple Silicon Macs do. Well, I've been perfectly happy with the "ancient" power management of my computers. It took a decade or two until suspend/resume actually _worked_ most of the time, and now all of that has been swapped out wholesale by a set of states that are at least an order of magnitude more complicated. Apparently on newer chipsets, there is no such thing as "suspend to RAM" anymore. Instead, they rely on the OS to micro-manage the sleep states of all the various component that make up the system. I can see this being effective in smartphones where one vendor (Apple, Google) owns the whole stack of hardware, firmware, and software plus a large chunk of every third-party application by tightly controlling what code can run. They can actually run functional tests on the whole stack under varying conditions and have access to every part to debug issues. Heck, it probably works great on Apple computers for the same reasons. But on general-purpose computers made up of components from dozens of manufacturers running dog-knows-what software and drivers, I don't think it can ever work well. There is already lots of evidence that these "modern" intermediate sleep states are causing real problems not only for Linux users (poor battery life while running, high battery drain while suspended) but also Windows users whose laptops bake themselves to death inside a backpack because a toolbar widget or something woke the system up at 3 a.m. and it then decided to run Windows Update. When I suspend my laptop, I want to know, with _certainty_, that it will stay suspended until I physically open it. From everything I've been reading, newer laptops offer no such guarantee. The only way to know that your computer won't wake up on its own is by powering it completely down, like we did in the 1990s. Not looking forward to that. I am all for more power-efficient computers but introducing these new sleep states while throwing out the old ones completely really feels like some backwards pageantry.
- bombcar 4y agoPowering them all the way down doesn't even work sometimes; you have to physically open the case and disconnect the battery. It's really annoying.
- fnordpiglet 4y agoThat’s why I do all my computing on a Univac 1100/80. I’ve even hacked a clamshell for it so I can port it around.
- ericol 4y agoOne thing I observe in the latest OS update (Ventura) is that they made HUGE improvements in memory management (MacBook M1, 8 GB). Before, Firefox would bring the laptop to a crawl with ~200 tabs (Yeah, I know). Having PHPStorm open at the same time was a sure machine killer. Just today I found myself casually with close to 350 tabs, while at the same time working in PHPStorm with no issues. In my experience (My previous box was a Thinkpad T430 with 16 GB of RAM running Debian) linux is far from this good handling memory. Also, the state management in MacOS is equal to no one. I have a Lenovo Thinkbook 15 (I7), and having to wait for it to restart when I open the lid is excruciating. I should put a "This is my pos laptop" on it.
- bombcar 4y agoMany things in memory management are stuck in the late 90s, where assumptions are made about disk vs memory vs cache that are no longer true. Memory is still much faster than SSD but it is not as insanely faster as it was compared to spinning rust. And compression is a huge thing now, too.
- Vinnl 4y agoThat might also be related to Firefox improvements: https://hacks.mozilla.org/2022/10/improving-firefox-responsiveness-on-macos/ https://hacks.mozilla.org/2022/10/improving-firefox-responsi...
- ericol 4y agoWas not aware of that, cheers.
- jorvi 4y agoDidn’t Firefox just ship a big RAM improvement update (105)?
- ericol 4y agoI was not aware of that, may be it IS related to that. But then, using a certain set of tools together (Firefox, PHPStorm, DataGrip) that historically have all been memory hungry was not possible before Ventura.
- gigatexal 4y agoThere should be case studies written by what this team of engineers has been able to accomplish. Everyone said why? Don’t do it. It’s not worth it. And yet. Here we are. What amazing work. I can’t wait to get an M series chip powered Mac and limit Linux on it because of these folks.
- zamadatix 4y agoI wonder if if there is a safe value we could clamp audio to now and recompile that the speakers may not be loud but would at least be usable without being unsafe (I know there is an option to just enable them outright and recompile right now).
- tomcam 4y agoThe whole passage on speaker support on laptops blew me away. I knew I was vaguely impressed that you can get such (comparatively) good sound on ultralight laptops, but didn't know what was happening under the hood. Quick sample: > Modern micro-speakers require sophisticated software EQ to sound good, but they also require sophisticated safety models! The most critical safety parameter for micro-speakers is the temperature of the voice coil: you don’t want to melt the thing They destroyed their own tweeter while testing!
- astrange 4y agoTo be fair, you can pretty easily destroy any size speakers by overdriving them. Your amp doesn’t magically know what’s on the other end of it.
- kccqzy 4y agoIt absolutely blew me away too. I mean I kind of respected those engineers for being good software engineers but clearly their skill sets extended beyond that. Quoting from the investigation of how they blew up their tweeter: > Assuming a constant resistance (which isn't true but it'll do for now), with the amp at 15.5 dBV, and input at -2dBFS, that's 13.5 dBV = 4.73 Vrms, current at 3.72Ω is 1.27 A. Almost exactly 6 W I was pumping into each tweeter. > We have τ_Tvc = 3.9 and τ_Tmg = 70, and I think T_sett_vc=104.9 and T_sett_mg=129.5 are the thermal resistances in °C/W. That means that, if I'm mental mathing right, the tweeter voice coil would've reached >600°C after a few seconds, give or take (and longer as the magnet heats up). > Yeah, no wonder I cooked it.
- latchkey 4y agoOne little rabbit hole this sent me on was to look up the lzfse [0] algorithm, which was an offshoot of LZSS that Haruhiko Okumura [1] wrote [2]. You read the code and the structure of it just seems like something he would write. He even has a flickr [3] of beautiful shots of Japan. Sometimes I really love HN. [0] https://en.wikipedia.org/wiki/LZFSE https://en.wikipedia.org/wiki/LZFSE [1] https://en.wikipedia.org/wiki/Haruhiko_Okumura https://en.wikipedia.org/wiki/Haruhiko_Okumura [2] https://github.com/opensource-apple/kext_tools/blob/bc71a85/compression.c https://github.com/opensource-apple/kext_tools/blob/bc71a85/... [3] https://www.flickr.com/photos/h_okumura/ https://www.flickr.com/photos/h_okumura/