Monthly Archive:: December 2024
Rare, hard to come by, but now available on the Internet Archive: the complete book set for the Windows CE Developer’s Kit from 1999. It contains all the separate books in their full glory, so if you ever wanted to write either a Windows CE application or driver for Windows CE 2.0, here’s all the information you’ll ever need. The Microsoft Windows CE Developer’s Kit provides all the information you need to write applications for devices based on the Microsofte Windowso CE operating system. ↫ Windows CE Developer’s Kit The Microsoft Windows CE Programmer’s Guide details the architecture of the operating system, how to write applications, how to implement synchronisation with a PC, and much more that pertains to developing applications. The Microsoft Windows CE User Interface Services Guide can be seen as an important addition to the Programmer’s Guide, as it details everything related to creating a GUI and how to handle various input methods. Going a few steps deeper, and we arrive at the Microsoft Windows CE Communications Guide, which, as the name implies, tells you all you need to know about infrared connections, telephony, networking and internet connections, and related matter. Finally, we arrive at the Microsoft Windows CE Device Driver Kit, which, as the name implies, is for those of us interested in writing device drivers for Windows CE, something that will surely be of great importance in the future, since Windows CE is sure to dominate our mobile life. To get started, you do need to have Microsoft Visual C++ version 6.0 and the Microsoft Windows CE Toolkit for Visual C++ version 6.0 up and running, since all code samples in the Programmer’s Guide are developed with it, but I’m sure you already have this taken care of – why would you be developing for any other platforms, am I right?
LineageOS, the Debian of the custom Android ROM world, released version 22 – or, 22.1 to be more exact – today. On the verge of the new year, they managed to complete the rebase to Android 15, released in September, making this one of their fastest rebases ever. We’ve been hard at work since Android 15’s release in September, adapting our unique features to this new version of Android. Android 15 introduced several complex changes under the hood, but due to our previous efforts adapting to Google’s UI-centric adjustments in Android 12 through 14, we were able to rebase onto Android 15’s code-base faster than anticipated. Additionally, this is far-and-away the easiest bringup cycle from a device perspective we have seen in years. This means that many more devices are ready on day one that we’d typically expect to have up this early in the cycle! ↫ Nolen Johnson LineageOS is also changing its versioning scheme to better match that of Google’s new quarterly Android releases, and that’s why this new release is 22.1: it’s based on Android 15 QPR1. In other words, the 22 aligns with the major Android version number, and the .1 with the QPR it’s based on. LineageOS 22.1 brings all the same new features as Android 15 and QPR1, as well as two brand new applications: Twelve, a replacement for LineageOS’ aging music player application, and Camelot, a new PDF reader. The list of supported devices is pretty good for a new LineageOS release, and adds the Pixel 9 series of devices right off the bat. LineageOS 22.1 ships with the November Android security patches, and also comes with a few low-level changes, like completely new extract utilities written in Python, which massively improve extracting performance, virtIO support, and much more.
We’ve talked about Chimera Linux before – it’s a unique Linux distribution that combines a BSD userland with the LLVM/Clang toolchain, and musl. Its init system is dinit, and it uses apk-tools from Alpine as its package manager. None of this has anything to do with being anti-anything; the choice of BSD’s tools and userland is mostly technical in nature. Chimera Linux is available for x86-64, AArch64, RISC-V, and POWER (both little and big endian). I am unreasonably excited for Chimera Linux, for a variety of reasons – first, I love the above set of choices they made, and second, Chimera Linux’ founder and lead developer, q66, is a well-known and respected name in this space. She not only founded Chimera Linux, but also used to maintain the POWER/PowerPC ports of Void Linux, which is the port of Void Linux I used on my POWER9 hardware. She apparently also contributed quite a bit to Enlightenment, and is currently employed by Igalia, through which she can work on Chimera. With the description out of the way, here’s the news: Chimera Linux has officially entered beta. Today we have updated apk-tools to an rc tag. With this, the project is now entering beta phase, after around a year and a half. In general, this does not actually mean much, as the project is rolling release and updates will simply keep coming. It is more of an acknowledgement of current status, though new images will be released in the coming days. ↫ Chimera Linux’s website Despite my excitement, I haven’t yet tried Chimera Linux myself, as I figured its pre-beta stage wasn’t meant for an idiot like me who can’t contribute anything meaningful, and I’d rather not clutter the airwaves. Now that it’s entered beta, I feel like the time is getting riper and riper for me to dive in, and perhaps write about it here. Since the goal of Chimera Linux is to be a general-purpose distribution, I think I’m right in the proper demographic of users. It helps that I’m about to set up my dual-processor POWER9 machine again, and I think I’ll be going with Chimera Linux. As a final note, you may have noticed I consistently refer to it as “Chimera Linux”. This is very much on purpose, as there’s also something called ChimeraOS, a more standard Linux distribution aimed at gaming. To avoid confusion, I figured I’d keep the naming clear and consistent.
Here are my notes on running NetBSD 10.1 on my first personal laptop that I still keep, a 1998 i586 Toshiba Satellite Pro with 81Mb of RAM and a 1Gb IBM 2.5″ IDE HD. In summary, the latest NetBSD runs well on this old hardware using an IDE to CF adapter and several changes to the i386 GENERIC kernel. ↫ Joel P. I don’t think the BSD world – and NetBSD in particular – gets enough recognition for supporting both weird architectures and old hardware as well as it does. This here is a 26 year old laptop running the latest version of NetBSD, working X11 server and all, while other operating systems drop support for devices only a few years old. So many devices could be saved from toxic landfills if only more people looked beyond Windows and macOS.
IncludeOS is an includable, minimal unikernel operating system for C++ services running in the cloud and on real HW. Starting a program with #include <os> will literally include a tiny operating system into your service during link-time. ↫ IncludeOS GitHub page IncludeOS isn’t exactly the only one of its kind, but I’ve always been slightly mystified by what, exactly, unikernels are for. The gist is, as far as I understand it, that if you build an application using a unikernel, it will find out at compile time exactly what it needs from the operating system to run, and then everything it needs from the operating system to run will be linked inside the resulting application. This can then be booted directly by a hypervisor. The advantages are clear: you don’t have to deal with an entire operating system just to run that one application or service you need to provide, and footprint is kept to a minimum because only the exact dependencies the application needs from the operating system are linked to it during compilation. The downsides are obvious too – you’re not running an operating system so it’s far less flexible, and if issues are found in the unikernel you’re going to have to recompile the application and the operating system bits inside of it just to fix it (at least, I think that’s the case – don’t quote me on it). IncludeOS is under heavy development, so take that under advisement if you intend to use it for something serious. The last full release dates back to 2019, but it’s still under development as indicated by the GitHub activity. I hope it’ll push out a new release soon.
While we’re out here raising funds to make me daily-drive HP-UX 11i v1 – we’re at 59% of the goal, so I’m starting to prepare for the pain – it seems you can actually run older versions, HP-UX 10.20 and 11.00 to be specific, in a virtual machine using QEMU. QEMU is an open source computer emulation and virtualization software, first released in 2003 by Fabrice Bellard. It supports many different computer systems and includes support for many RISC architectures besides x86. PA-RISC emulation has been included in QEMU since 2018. QEMU emulates a complete computer in software without the need for specific virtualization hardware. With QEMU, a full HP Visualize B160L and C3700 workstation can be emulated to run PA-RISC operating systems like HP-UX Unix and compatible applications. ↫ Paul Weissman at OpenPA The emulation is complete enough that it can run X11 and CDE, and you can choose between emulating 32bit PA-RISC of 64bit PA-RISC. Devices and peripherals support is a bit of a mixed bag, with things like USB being only partially supported, and audio not working at all since an audio chip commonly found in PA-RISC workstations isn’t supported either. A number of SCSCI and networking devices found on HP’s workstations aren’t supported either, and a few chipsets don’t work either. As far as operating system support goes, you can run HP-UX 10.20, HP-UX 11.00, Linux, and NetBSD. Newer (11i v1 and later) and older (9.07 and 9.05) versions of HP-UX don’t work, and neither does NeXTSTEP 3.3. Some of these issues probably stem from missing QEMU drivers, others from a lack of testing; PA-RISC is, after all, not one of the most popular of the dead UNIX architectures, with things like SPARC and MIPS usually taking most of the spotlight. Absolutely nothing beats running operating systems on the bare metal they’re designed for, but with PA-RISC hardware becoming ever harder to obtain, it makes sense for emulation efforts to pick up speed so more people can explore HP-UX. I’m weirdly into HP-UX, despite its reputation as a difficult platform to work with, so I personally really want actual hardware, but for most of you, getting HP-UX 11i to work properly on QEMU is most likely the only way you will ever experience this commercial UNIX.
In late June 2024 I got asked to take over the work started by Jerry Wu creating a systemd-sysupdate plugin for Software. The goal was to allow Software to update sysupdate targets, such as base system images or system extension images, all while respecting the user’s preferences such as whether to download updates on metered connections. To do so, the plugin communicates with the systemd-sysupdated daemon via its org.freedesktop.sysupdate1 D-Bus interface. I didn’t know many of the things required to complete this project and it’s been a lot to chew in one bite for me, hence how long it took to complete. ↫ Adrien Plazas This new plugin was one of the final pieces of moving GNOME OS – which we talked about before – from OSTree to sysupdate, which in turn is part of GNOME OS’ effort to have a fully trusted boot sequence. While I’m not sure GNOME OS is something that will find a lot of uptake among the kind of people that read OSNews, I think it’s a hugely important effort to create a no-nonsense, easy-to-use Linux system for normal people to embrace. The Steam Deck employs similar implementations, and it’s easy to see why.
I’ve never been to a LAN party, not even back in the ’90s and early 2000s when they were quite the common occurance. Both my family and various friends did have multiple computers in the house, so I do have fond memories of hooking up computers through null modem cables to play Rise of the Triad, later superseded by direct Ethernet connections to play newer games. LAN parties have left lasting impressions on those that regularly attended them, but since most took place before the era of ever-present digital camera and smartphones, photos of such events are rarer than they should be. Luckily, Australian software engineer Issung did a lot of digging and eventually struck gold: a massive collection of photos and a few videos from LAN parties that took place from 1996 and 2010 in Australia. After trying a few other timestamps and a few more web searches I sadly couldn’t find anything. As a last ditch effort I made a few posts on various forums, including the long dormant Dark-Media Steam group, then I forgot about it all, until 2 months ago! Someone reached out and was able to get me into a small private Facebook group, once in I could see I had gotten more than I bargained for! I was just looking for Dark-Media photos, but found another regular LAN I had forgotten about, and photos from even more LANs from the late 90s. I was able to scrape all the photos and now upload them to archive.org where they can hopefully live forever. ↫ Issung I love browsing through these, as they bring back so many memories of the computers and dubious fashion choices of my teenage years – I used to combine different colours zip-off pants, and even had mohawks, spikes, and god knows what else before I started losing all my hair in my very early 20s. Anyway, the biggest change is the arrival of flat displays signalling the end of the widespread use of CRTs, and the slow dissappearence of beige in favour of black. Such a joy to see the trends change in these photos. If anyone else is sitting on treasure troves like these, be sure to share them with the world before it’s too late.
AI Shell is an interactive shell that provides a chat interface with language models. The shell provides agents that connect to different AI models and other assistance providers. Users can interact with the agents in a conversational manner. ↫ Microsoft Learn Basically, what Microsoft means with this is a split-view terminal where one of the two views is a prompt where you can ask questions to an “AI”, like OpenAI or whatever. The “AI” features are not actually integrated into your shell, which instead lives in the other view and acts like a completely normal, standard shell. Instead of opening up an “AI” chatbot in a browser window or whatever, you now have it in a split view in your terminal – that’s really all there’s to it here. I’m going to blow your mind here and say that in theory, this could be an actually useful addition to terminals and shells, as a properly vetted and configured “AI” that has been trained on properly obtained source material could indeed be a great help in determining the right terminal commands and options. Tons of people already blindly copy and paste terminal commands from websites even though they really shouldn’t anyway, so it’s not like this introduces anything new here in terms of dangers. Hell, tutorial writers still add -y to dnf or apt-get commands, so it can really only go up from here.
I didn’t have the time to post this one before Christmas, but it’s so funny and sad at the same time I don’t want to keep this from you. It turns out that in the days leading up to Christmas this year, users of ASUS computers – or with ASUS motherboards, I guess – were greeted with a black bar covering about a third of their screen, decorated with a Christmas wreath. I am making this post for the sake of people like me who will have a black box show up at the bottom of their screen with a Christmas wreath labeled “christmas.exe” in task manager and think it’s Windows 10/11 malware. It is not. It is from the ASUS Armoury Crate program and can be safely closed and ignored. It looks super sketchy and will hopefully save you some time diagnosing the problem. ↫ Slow-Macaroon9630 on reddit So yes, if you’re using an ASUS computer and have their shovelware installed, you may have been greeted by a giant black banner caused by an executable called “christmas.exe”, which sounds exactly like something shitty malware would do. The banner would disappear after a while, and the executable would vanish from the list of running processes as well. It turns out there’s a similar seasonal greeting called “HappyNewYear.exe”, so if you haven’t done anything to address the first black bar, you might be getting a second one soon. The fact that shitty OEM shovelware does this kind of garbage on Windows is nothing new – class is not something you can accuse Windows of having – but I was surprised to find out just how deeply embedded this ASUS shovelware program called Armoury Crate really is. It doesn’t just come preinstalled on ASUS computers – no, this garbage program actually has roots in your motherboard’s firmware. If you merely uninstall Amoury Crate from Windows, it will automatically reinstall itself because your motherboard’s firmware tells it to. I’m not joking. To prevent Armory Crate from reinstalling itself, you have to reboot your PC into its UEFI, go to the Advanced Mode, go to Tool > ASUS Armoury Crate, and disable the option Download & Install ARMOURY CRATE app. I had no idea Windows hardware makers had sunk to this kind of low, but I’m also not surprised. If Microsoft shoves endless amounts of ads and shovelware on people’s computers, why can’t OEMs?
COBOL, your mother’s and grandmother’s programming language, is still in relatively wide use today, and with the initial batches of COBOL programmers retiring and, well, going away, there’s a market out there for younger people to learn COBOL and gain some serious job security in stable, but perhaps boring market segments. One of the things you would not associate with COBOL, however, is gaming – but it turns out it can be used for that, too. CobolCraft is a Minecraft server written in, you guessed it, COBOL. It was developed using GnuCOBOL, and only works on Linux – Windows and macOS are not supported, but it can be run using Electron for developers, otherwise known as Docker. It’s only compatible with the latest release of Minecraft at the time of CobolCraft’s development, version 1.21.4, and a few more complex blocks with states are not yet supported because of how difficult it is to program those using COBOL. CobolCraft’s creator, Fabian Meyer, explains why he started this project: Well, there are quite a lot of rumors and stigma surrounding COBOL. This intrigued me to find out more about this language, which is best done with some sort of project, in my opinion. You heard right – I had no prior COBOL experience going into this. Writing a Minecraft server was perhaps not the best idea for a first COBOL project, since COBOL is intended for business applications, not low-level data manipulation (bits and bytes) which the Minecraft protocol needs lots of. However, quitting before having a working prototype was not on the table! A lot of this functionality had to be implemented completely from scratch, but with some clever programming, data encoding and decoding is not just fully working, but also quite performant. ↫ Fabian Meyer I don’t know much about programming, but I do grasp that this is a pretty crazy thing to do, and quite the achievement to get working this well, too. Do note that this isn’t a complete implementation of the Minecraft server, with certain more complex blocks not working, and things like a lighting engine not being made yet either. This doesn’t detract from the achievement, but it does mean you won’t be playing regular Minecraft with this for a while yet – if ever, if this remains a fun hobby project for its creator.
It’s a Christmas miracle! The Moxie, that support robot thing for kids we talked about two weeks ago, seems to be getting a new lease on life. The start-up that makes the Moxie has announced it’s going to not only release a version of the server software for self-hosting, but will also publish all of the source code as open source. We understand how unsettling and disappointing it has been to face the possibility of losing the daily comfort and support Moxie provides. Since the onset of these recent challenges, many of you have voiced heartfelt concerns and offered suggestions, and we have taken that feedback seriously. While our cloud services may become unavailable, a group of former technical team members from Embodied is working on a potential solution to allow Moxie to operate locally—without the need for ongoing cloud connectivity. This initiative involves developing a local server application (“OpenMoxie”) that you can run on your own computer. Once available, this community-driven option will enable you (or technically inclined individuals) to maintain Moxie’s basic functionality, develop new features, and modify her capabilities to better suit your needs—without reliance on Embodied’s cloud servers. ↫ Paolo Pirjanian Having products like this be dependent on internet connectivity is not great, but as long as Silicon Valley is the way it is, that’s not going to change. You can tell from their efforts that the people at Embodied do genuinely care about their product and the people that use it, because they have zero – absolutely zero – financial incentive or legal obligation to do any of this. They could’ve just walked away like their original communication said they were going to, but instead they listened to their customers and changed their minds. Regardless of my thoughts on requiring internet connectivity for something like this, they at least did the right thing today – and I commend them for that.
The people running the majority of internet services have used a combination of monopolies and a cartel-like commitment to growth-at-all-costs thinking to make war with the user, turning the customer into something between a lab rat and an unpaid intern, with the goal to juice as much value from the interaction as possible. To be clear, tech has always had an avaricious streak, and it would be naive to suggest otherwise, but this moment feels different. I’m stunned by the extremes tech companies are going to extract value from customers, but also by the insidious way they’ve gradually degraded their products. ↫ Ed Zitron This is the reality we’re all living in, and it’s obvious from any casual computer use, or talking to anyone who uses computers, just how absolutely dreadful using the mainstream platforms and services has become. Google Search has become useless, DuckDuckGo is being overrun with “AI”-generated slop, Windows is the operating system equivalent of this, Apple doesn’t even know how to make a settings application anymore, iOS is yelling at you about all the Apple subscriptions you don’t have yet, Android is adding “AI” to its damn file manager, and the web is unusable without aggressive ad blocking. And all of this is not only eating up our computers’ resources, it’s also actively accelerating the destruction of our planet, just so lazy people can generate terrible images where people have six fingers. I’m becoming more and more extreme in my complete and utter dismissal of the major tech companies, and I’m putting more and more effort into taking back control over the digital aspects of my life wherever possible. Not using Windows or macOS has improved the user experience of my PCs and laptops by incredible amounts, and moving from Google’s Android to GrapheneOS has made my smartphone feel more like it’s actually mine than ever before. Using technology products and services made by people who actually care and have morals and values that don’t revolve around unending greed is having a hugely positive impact on my life, and I’m at the point now where I’d rather not have a smartphone or computer than be forced to use trashware like Windows, macOS, or iOS. The backlash against shitty technology companies and their abusive practices is definitely growing, and while it hasn’t exploded into the mainstream just yet, I think we’re only a few more shitty iOS updates and useless Android “AI” features away from a more general uprising against the major technology platforms. There’s a reason laws like the DMA are so overwhelmingy popular, and I feel like this is only the beginning.
The working principle of APPEND is not complicated. It primarily serves as a bridge between old DOS applications which have no or poor support for directories, and users who really, really want to organize files and programs in multiple directories and possibly across multiple drive letters. Of course the actual APPEND implementation is anything but straightforward. ↫ Michal Necasek Another gem of an article by Michal Necasek, detailing a command I’ve known about almost all my life but never once knew what it was supposed to be for. The gist is that APPEND allows for files to be opened not only in the current working directory, but also up to two levels deeper. This gives you a rudimentary way of working with directories, even when using programs or commands that have no clue what directories even are. since DOS 1.x doesn’t support directories, but DOS 2.x does, having a tool like this to create a bridge between the pre and post-directory worlds can be quite useful. I’ve basically learned more about DOS from Necasek’s work in the past few years than I learned about DOS when I was actively using it in the early ’90s.
With more and more Linux distributions – as well as the kernel itself – dropping support for more exotic, often dead architectures, it’s a blessing T2 Linux exists. This unique, source-based Linux distribution focuses on making it as easy as possible to build a Linux installation tailored to your needs, and supports an absolutely insane amount of architectures and platforms. In fact, calling T2 a “distribution” does it a bit of a disservice, since it’s much more than that. You may have noticed the banner at the top of OSNews, and if we somehow – unlikely! -manage to reach that goal before the two remaining new-in-box HP c8000 PA-RISC workstations on eBay are sold, my plan is indeed to run HP-UX as my only operating system for a week, because I like inflicting pain on myself. However, I also intend to use that machine to see just how far T2 Linux on PA-RISC can take me, and if it can make a machine like the c8000, which is plenty powerful with its two dual-core 1.0Ghz PA-RISC processors, properly useful in 2024. T2 Linux 24.12 has just been released, and it brings with it the latest versions of the Linux kernel, gcc, LLVM/Clang, and so on. With T2 Linux, which describes itself as a System Development Environment, it’s very easy to spin up a heavily customised Linux installation fit for your purpose, targeting anything from absolutely resource-starved embedded systems to big hunks of, I don’t know, SPARC or POWER metal. If you’ve got hardware with a processor in it, you can most likely build T2 for it. The project also provides a large number of pre-built ISOs for a whole slew of supported architectures, sometimes further divided into glibc or musl, so you can quickly get started even without having to build something yourself. It’s an utterly unique project that deserves more attention than it’s getting, especially since it seems to be one of the last Linux “distributions” that takes supporting weird platforms out-of-the-box seriously. Think of it as the NetBSD of the Linux world, and I know for a fact that there’s a very particular type of person to whom that really appeals.
Remember x86S, Intel’s initiative to create a 64bit-only x86 instruction set, with the goal of removing some of the bloat that the venerable architecture accumulated over the decades? Well, this initiative is now dead, and more or less replaced with the x86 Ecosystem Advisory Group, a collection of companies with a stake in keeping x86 going. Most notably, this includes Intel and AMD, but also other tech giants like Google. In the first sign of changes to come after the formation of a new industry group, Intel has confirmed to Tom’s Hardware that it is no longer working on the x86S specification. The decision comes after Intel announced the formation of the x86 Ecosystem Advisory Group, which brings together Intel, AMD, Google, and numerous other industry stalwarts to define the future of the x86 instruction set. Intel originally announced its intentions to de-bloat the x86 instruction set by developing a simplified 64-bit mode-only x86S version, publishing a draft specification in May 2023, and then updating it to a 1.2 revision in June of this year. Now, the company says it has officially ended that initiative. ↫ Paul Alcorn This seems like an acknowledgement of the reality that Intel is no longer in the position it once was when it comes to steering the direction of x86. It’s AMD that’s doing most of the heavy-lifting for the architecture at the moment, and it’s been doing that for a while now, with little sign that’s going to change. I doubt Intel had enough clout left to push something as relatively drastic as x86S, and now has to rely on building consensus with other companies invested in x86. It may seem like a small thing, and I doubt many larger tech outlets will care, but this story is definitely the biggest sign yet that Intel is in a lot more trouble than people already seem to think based on Intel’s products and market performance. What we have here is a full admission by Intel that they no longer control the direction of x86, and have to rely on the rest of the industry to help them. That’s absolutely wild.
NetBSD 10.1 has been released. As the version number indicates, this isn’t supposed to be a major, groundbreaking release, but it still contains a ton of changes, fixes, and improvements. It’s got the usual set of new and improved drivers, kernel improvements – like the ability to hotplug spares and components in a RAID – and improvements for various specific architectures, and much more. If you’re using NetBSD you already know how to upgrade, and if you’re not yet using NetBSD, here’s the download page for the various supported architectures. There are a lot of them.
What’s the European Commission to do when one of the largest corporations in the world has not only been breaking its laws continually, but also absolutely refuses to comply, uses poison pills in its malicious compliance, badmouths you in the press through both official – and unofficial – employees? Well, you start telling that corporation exactly what it needs to do to comply, down to the most minute implementation details, and in the process take away any form of wiggle room. Steven Troughton-Smith, an absolute wizard when it comes to the inner workings of Apple’s various platforms and allround awesome person, dove into the European Commission’s proposed next steps when it comes to dealing with Apple’s refusal to comply with EU law – the Digital Markets Act, in particular – and it’s crystal-clear that the EC is taking absolutely no prisoners. They’re not only telling Apple exactly what kind of interoperability measures it must take, down to the API level, but they’re also explicitly prohibiting Apple from playing games through complex contracts and nebulous terms to try and make interoperability a massive burden. As an example of just how detailed the EC is getting with Apple, here’s what the company needs to do to make AirDrop interoperable: Apple shall provide a protocol specification that gives third parties all information required to integrate, access, and control the AirDrop protocol within an application or service (including as part of the operating system) running on a third-party connected physical device in order to allow these applications and services to send files to, and receive files from, an iOS device. ↫ European Commission In addition, Apple must make any new features or changes to AirDrop available to third parties at the same time as it releases them: For future functionalities of or updates to the AirDrop feature, Apple shall make them available to third parties no later than at the time they are made available to any Apple connected physical device. ↫ European Commission These specific quotes only cover AirDrop, but similar demands are made about things like AirPlay, the easy pairing process currently reserved for Apple’s own accessories, and so on. I highly suggest reading the source document, or at the very least the excellent summary thread by Steven, to get an even better idea of what the EC is demanding here. The changes must be made in the next major version of iOS, or at the very latest before the end of 2025. The EC really goes into excruciating detail about how Apple is supposed to implement these interoperability features, and leaves very little to no wiggle room for Apple shenanigans. The EC is also clearly fed up with Apple’s malicious compliance and other tactics to violate the spirit of the DMA: Apple shall not impose any restrictions on the type or use case of the software application and connected physical device that can access or makeuse of the features listed in this Document. Apple shall not undermine effective interoperability with the 11 features set out in this Document by behaviour of a technical nature. In particular, Apple shall actively take all the necessary actions to allow effective interoperability with these features. Apple shall not impose any contractual or commercial restrictions that would be opaque, unfair, unreasonable, or discriminatory towards third parties or otherwise defeat the purpose of enabling effective interoperability. In particular, Apple shall not restrict business users, directly or indirectly, to make use of any interoperability solution in their existing apps via an automatic update. ↫ European Commission What I find most interesting about all of this is that it could have been so easily avoided by Apple. Had Apple approached the EU and the DMA with the same kind of respect, grace, and love Apple and Tim Cook clearly reserve for totalitarian dictatorships like China, Apple could’ve enabled interoperability in such a way that it would still align with most of Apple’s interests. They would’ve avoided the endless stream of negative press this fruitless “fight” with the EU is generating, and it would’ve barely impacted Apple’s bottom line. Put it on one of those Apple microsites that capture your scrolling, boast about how amazing Apple is and how much they love interoperability, and it most likely would’ve been a massive PR win. Instead, under the mistaken impression that this is a business negotiation, Apple tried to cry, whine, throw tamper tantrums, and just generally act like horrible spoiled brats just because someone far, far more powerful than they are told them “no” for once. Now they’ve effectively been placed under guardianship, and have to do exactly as the European Commission tells them to, down to the API level, without any freedom to make their own choices. The good thing is that the EC’s journey to make iOS a better and more capable operating system continues. We all benefit. Well, us EU citizens, anyway.
We’re grateful for our weekly sponsor, OpenSource Science B.V., an educational institution focused on Open Source software. OS-SCi is training the next generation FOSS engineers, by using Open Source technologies and philosophy in a project learning environment. One final reminder: OS-SCi is offering OSNews readers a free / gratis online masterclass by Prof. Ir. Erik Mols on how the proprietary ecosystem is killing itself. This is a live event, on January 9, 2025 at 17:00 PM CET. Sign up here.
The Redox team has received a grant from NLnet to develop Redox OS Unix-style Signals, moving the bulk of signal management to userspace, and making signals more consistent with the POSIX concepts of signaling for processes and threads. It also includes Process Lifecycle and Process Management aspects. As a part of that project, we are developing tests to verify that the new functionality is in reasonable compliance with the POSIX.1-2024 standard. This report describes the state of POSIX conformance testing, specifically in the context of Signals. ↫ Ron Williams This is the kind of dry, but important matter a select few of you will fawn over. Consider it my Christmas present for you. There’s also a shorter update on the dynamic linker in Redox, which also goes into some considerable detail about how it works, and what progress has been made.