* Posts by DrXym

5327 publicly visible posts • joined 18 Jul 2007

Intel's 13th-gen CPUs are hot, hungry, loaded with cores

DrXym

Countries need to start taxing TDP or some other metric

Get these tech companies to refocus their efforts on power efficiency and chips that are good enough for normal use instead of what crypto miners might want. Some of the recent examples of TDP from Intel, AMD and Nvidia are just absurd and sickening where energy demand is not matching to supply.

New 40 series GPUs from Nvidia draw so much power through the wires of the PSU they actually pose a fire hazard unless you have an upgraded ATX 3 power supply.

Darth Vader voice actor James Earl Jones allows AI to take over the role

DrXym

Re: I predict lots of new laws to protect media cartels IP from this "Legal minefield".

Disney being Disney, I'm surprised they don't just hire a sound-a-like. Voices aren't copyrighted the way someone's image is and voices of recognizable people (e.g. Elvis, Frank Sinatra, Vincent Price, Orson Welles etc.) have been imitated countless times.

They probably have a heap of voice actors on the books capable of imparting more nuance and character into Darth Vader than some computer.

Rust is eating into our systems, and it's a good thing

DrXym

Re: I'm getting rusty

In terms of complexity Rust sits somewhere between C and C++.

It has some new concepts and will kick your ass until you learn how borrowing works, but it alleviates a LOT of bullshit that C++ causes by its design and the overcomplexity caused by classes, inheritance, overloading, rule of 3, rule of 5 etc. etc.

DrXym

Re: Something C++ can do that Rust can't

First off, don't move to Rust unless you have a good reason to. If something works, it works.

However if you do need to switch then yes it can be done piece wise. Tools like bindgen & cbindgen generate the C headers or Rust files to call from C to Rust or Rust to C super easy. It's actually pretty straightforward although since C is not safe and Rust is safe, you need to think of your interface and what data you share..

For C++ you would call Rust like a C lib through exposed functions and wrap it with some RAII class. Similar to how you might wrap a C library. Calling C++ from Rust would require you expose a C function (i.e. not mangled) in your C++ as an entry point that caught exceptions etc, which would be similar complexity to trying to call C++ from C - not something people usually do.

A match made in heaven: systemd comes to Windows Subsystem for Linux

DrXym

Re: a match made in heaven indeed

It doesn't have binary config. Unit files are ini style text files. Config files are ini style text files. They're very easy to create and modify using a text editor.

DrXym

Re: a match made in heaven indeed

journalctl uses binary for the same reasons that databases are binary - for indexing, data integrity / tamper checks, fast searches, triggers etc.

If you absolutely want text logging set ForwardToSyslog=true in the journald.conf and you can have it.

DrXym

Re: Better idea.

What's not to like is people who use WSL do so for a reason - having Linux support in Windows is fantastically useful for developers.

Snorting about how they should be running BSD or some random Linux dist is completely missing the point.

DrXym

The link says you have to edit wsl.conf to enable it, otherwise it behaves like it does now.

DrXym

WSL is a little odd in that you normally just start it by typing "bash". Within seconds of first invocation you have a bash prompt and away you go. It didn't "boot up" in the normal sense, WSL just mounted the filesystem, and emulates a kernel and pid 1 to the bash so it runs fast. It runs even faster if you type bash a second time from another terminal because it's already started the instance.

The problem comes with actual services / daemons in the background and then you discover they're not running because as I said it went straight to bash. There is no systemd because it wasn't used to kick off bash and none of the init style scripts ran either. You can still do something like "/etc/init.d/xrdp start" manually if you want but it's not done until you tell it to do so.

It seems like Microsoft have just tinkered a bit with the startup. There is a wsl.conf that tweaks the behaviour of the WSL instance and now you can tell it to kick off systemd first. Aside from making services work it also enables snaps too which were dependent on systemd.

Microsoft debuts Windows 11 2022 Update – now with features added monthly

DrXym

Fix the start menu

Most of the rest of Windows 11 is fine. But that start menu is stupid and annoying. I turned off recommendations so why is it still showing me the recommendations section even though it is blank? Why can't it use that area to show more pinned apps? Come to that, why is pinning and arranging apps so retrograde?

In Rust We Trust: Microsoft Azure CTO shuns C and C++

DrXym

Re: Hold your horses!

Count up half the CVEs in the Linux kernel and they are *exactly* that sort of thing. Since kernel programmers aren't exactly green around the gills others projects probably have it even worse.

And yeah C++ has templates to mitigate some issues but it doesn't solve them. I've seen code where a smart pointer has yielded its raw pointer and for another piece of code to wrap the raw pointer in its own smart pointer, causing 2 reference counts. I've seen enormous quantities of badly written multi threaded code where data isn't guarded properly by threads.

The C++ compiler doesn't give a shit about any of this whereas the Rust compiler would kick your ass. The net result is safer code from developers who spend less time working on stupid race conditions or other rare bugs and more on fixing application logic issues.

DrXym

Re: Replacement versus successor

Rust has very good interoperability with C and C++ and tools for generating bindings too. If you want to see a mad example of this, check out the Redox OS - they wrote a C-lib in Rust with C bindings so literally you compile and run C against a runtime which is Rust but exposes stuff like strcpy(), malloc() etc

DrXym

Re: Replacement versus successor

I don't think you'd ever want to port code that works unless you have a very sound reason to do so. That's whether we're talking Rust or some other language. A sound reason might be the old code is broken, hard to maintain, non-performant or new requirements are so substantial that you'd have to rewrite anyway. At which point you may as well consider it at least.

As for C and C++ I don't believe there is any way you can fix those languages. There is no superset which can be backwards compatible because the issues are baked into the language. Throwing new keywords or semantics at the issue doesn't fix the existing code.

DrXym

Re: Hold your horses!

In answer to your question, no Rust won't help you against application logic issues and never claimed it did.

However it will stop your code from suffering the mass of bugs that plague C & C++ and are directly caused by the language syntax - null pointers, double frees, buffer overruns, data races etc.

Most people regard that as a good thing.

Alert: 15-year-old Python tarfile flaw lurks in 'over 350,000' code projects

DrXym

Zip slip

That's the slang name for this class of vulnerability. Probably affects any software that accepts archived files - zips, rars, tars, 7z etc. and then extracts them somewhere without checking if files can escape out of the target directory via either a ../../ style trick or a soft link. Soft links are potentially a more insidious issue to deal with correctly.

Graphical desktop system X Window just turned 38

DrXym

Re: What I like about X

I suggest you break out wireshark and see what modern apps are doing when they run remotely over X. Clue - they're not invoking X drawing primitives. Instead they're just pushing huge pixmaps around over the wire. It's even more inefficient than RDP which will push differential changes.

Of course maybe your entire world is running some 30 year old X code, in which case why do you care what a modern desktop chooses to do to get rid of X?

DrXym

Re: What I like about X

Wayland exists as a specification, a library and an implementation in various backends and compositors. Most modern dists are using it whether the desktop is KDE or GNOME based.

DrXym

Re: What I like about X

You're free to fork a dist that does just that. I doubt many people will care to use it.

DrXym

Re: What I like about X

Because X is arcane and filled with obsolete code and patched up with hack extensions to allow it to provide a passable desktop experience. Read the link I provided at the top, it explains it quite clearly.

XWayland is just the X running over Wayland for software that wants. i.e. you can run X11 apps if you want but the entirely desktop isn't crippled from also running it.

DrXym

Re: What I like about X

Relent?

Wayland has always treated networking as an orthogonal problem. The compositor can offer RDP or VNC or whatever as a remote solution and the major compositors already do. Or you could carry on using X.

e.g. the Weston compositor offers RDP and there is a real world example of it doing exactly what you want of launching apps.

Microsoft's WSLg launches Wayland and X11 apps direcly on a Windows desktop. How does it work? It's a containerized Weston & XWayland dist that runs as a local display server. If I type "nethack-x11" from Ubuntu bash it finds this server, which in turn launches mstsc in Windows and my app just pops up on the desktop. It's virtually seamless.

If Microsoft can do it I assume others can too, using RDP remotely too if they wish. This is orthogonal to Wayland however.

DrXym

Re: What I like about X

1) It's not hard to find such discussions. Most of X is untouched by modern libraries like QT, GTK3/4. They basically use X for receiving input, cut & paste, and shoving pixmaps around for compositing & rendering. Everything else is obsolete. Hence the reason they have Wayland backends.

2) Or just use Wayland since the purpose of it was to be a stripped down API that facilitates what modern libraries need and does away with the rest. Maybe they should have just called it X12.

3) Client and server already agree to use X11 or Wayland. Compositors like Kwin fire up XWayland during startup so if your environment sets DISPLAY and your legacy X application just runs. The likes of QT or GTK have ways to set which backend to use when apps launch.

DrXym

Re: What I like about X

Obsolete in the opinion of the people who wrote and maintained X. Hence the reason that X is moribund and going nowhere because nobody is working on it and all the desktop dists are moving to Wayland. But fret not, since if you want X, you can just run XWayland. X is no longer the critical path but it's there.

Did you get that? X is still there, it just doesn't hamstring the entire desktop's performance for the handful of apps that still need it.

As for embedded, your reasoning is all over the shop. It is likely that the embedded board used Wayland since it resulted in better performance for the device - less context switching, closer to metal rendering. The whole purpose of Wayland existing. Not to mention the better input handling on devices with multi-touch displays and the like. And if you were desperately worried about rendering you wouldn't be using X or Wayland, you'd be using the direct rendering manager through QT embedded or similar. In fact I can't think of any sane reason to use X in an embedded device unless you had some old application that absolutely needed to run on it.

DrXym

Re: What I like about X

The complete drop-in replacement for X is called XWayland. It is X that runs on Wayland. You don't even have to recompile your code.

DrXym

Re: What I like about X

Exactly. Most modern code has little to no direct X dependencies because they'll use an intermediate library like GTK or QT. There might be some problem corner cases as there always are but most have already been fixed by now. This is past history.

DrXym

Re: What I like about X

Erm, what is this stupidity? The vast majority of code is already Wayland friendly because GTK and QT have Wayland backends and will automatically use it or X at startup depending on your environment. And for code that isn't Wayland friendly, use XWayland.

This should not be hard to understand especially since it has already happened.

DrXym

Re: What I like about X

I'm not sure what you think Wayland makes your client do that it doesn't already do in X. Virtually every single modern application is rendering into a pixmap whether you're using X or Wayland. That is because the likes of GTK and QT are not using the 1980s drawing primitives in X, but instead use their own hardware accelerated rendering libraries like Cairo / QT Render. These render into a pixmap and the pixmap is what is presented to the compositor to draw on the screen.

When applications run locally therefore they're doing pretty much the same from a memory standpoint albeit with less context switching in Wayland. When X apps are running remotely they're also shoving pixmaps around. Wayland leaves it to the window manager to implement RDP or VNC instead of doing it as part of its own protocol.

About the only difference in Wayland is that the windows decorations (frame, buttons etc.) are rendered client side. In X, the client renders the contents of the window and the window manager renders the frame around it. From that point of view it's probably using even more memory since you have 2 surfaces - frame and frame content instead of a single surface containing both.

DrXym

Re: What I like about X

I suggest you read the link I provided to understand what Wayland is. It has nothing to do with your graphics card. It is a protocol that facilitates communication between clients and window managers. e.g. it allows an application to tell the desktop that it wants to create a surface, and that it wants to render its surface, or listen for events etc.

But how the client draws into the client or how the window manager composites are their own business. Most will render with OpenGL ES and will expect a driver capable of doing this. That goes too for however XWayland work which is going to assume a functioning driver.

So if there is an issue with a driver, e.g. NVidia then the issue is with the driver. And yes you can point the finger at NVidia if things function well with in other drivers whether they are hardware or software based.

DrXym

Re: What I like about X

The issue isn't that X is unstable, it is that it is obsolete. Huge chunks of it aren't used and haven't been used for years - the drawing primitives, fonts, damage model etc. Yet it all has to be maintained or it isn't the same protocol any more. And to do things approaching modern desktop requirements it had to be patched up by extensions which have to jump through hoops to function and had their own limitations and complexity.

That is why everyone including the people who wrote it have abandoned it for Wayland. It doesn't stop X running over Wayland, but X is no longer underpinning the desktop itself. This means you can still run X software but your desktop as a whole benefits from being more responsive & efficient.

There is a good overview of what Wayland is on its home page.

https://wayland.freedesktop.org/architecture.html

Windows 11 22H2 is almost here. Is it ready for the enterprise?

DrXym

I hate the lack of task manager

It's very annoying to right mouse and not see that option. I made the taskbar align left and work more or less the same as 10 so I don't mind the default because I can change it. I think switching from spatially arranged tiles for a flowing list of favourite apps in the start menu was a terrible idea. I can live with it but I still hate it since I have about 30-40 apps all grouped in Windows 10 and it's all lost in 11.

Record players make comeback with Ikea, others pitching tricked-out turntables

DrXym

Re: Not unexpectedly..

Yeah well my digital audio sounds better through my PC speakers than vinyl through a pair of poundland earbuds. I hope you see the point of me ignoring that point.

DrXym

Re: Not unexpectedly..

No it doesn't "sound infinitely better" and it's hard to understand why you think so. Virtually every vinyl LP produced in the last 40 years has been digitally mastered so you're playing digital after it has been converted & compressed as analogue and then when you replay it you get all the pops, crackles, wow and flutters on top. And by "compress" here I mean altered dynamic range.

If you have a collection of vinyl records then enjoy them but don't for a second think they sound better than CD pressed from the same source because they don't. And people buying new players or vinyl are just hipster idiots if they think otherwise.

EU makes USB-C common charging port for most electronic devices

DrXym

Meanwhile in Cupertino...

... I bet they're already thinking of ways to be dicks about this. Maybe getting rid of tethered charging altogether, or DRMing their chargers / cables to enable functionality other than charging that incentivizes people to purchase them to use with Apple phones, or some fugly dongle with USB in it that nobody will want to use.

Majority of Axon's AI ethics board resigns over CEO's taser drones

DrXym

Exploiting a school shooting to pitch that idea is just evil. And now every police department needs to spend tens of thousands on taser drones? Wtf is wrong with America?

Taiwan bans exports of chips faster than 25MHz to Russia, Belarus

DrXym

Russia's secret weapon

I bet Taiwan forgot to ban exports of a turbo switch.

Version 251 of systemd coming soon to a Linux distro near you

DrXym

Re: They call it progress

1) Because if something depends on something else you want the something else to start first. Duh.

2) No it doesn't. This is absurd, especially comparing to what it replaces.

3) They are fixing stuff which has demonstrable limitations or weaknesses.

Honestly I find the systemd hatred just stupid on multiple levels.

DrXym

Re: They call it progress

Shifting goalposts. Systemd is the bootstrap to the rest of the system. It doesn't need to have stable interfaces any more than the kernel does.

DrXym

Re: They call it progress

It does do all that well and it isn't monolithic. There is no conspiracy to why dists use it - it works.

DrXym

Re: They call it progress

None of them quite obviously. Systemd is a replacement of upstart which itself was a replacement for init scripts. It is quite clear what it intends to do and why it succeeds in doing it.

1. starting services in the proper order, and concurrently

2. bringing up or shutting down dependent services properly

3. declarative

4. principle of least privilege

5. security

6. auditing & logging

There is a reason that all the major distributions are using it and will continue to do so.

DrXym

People don't run codebases, they run processes. And so what if it is built from one repository?

Perl Steering Council lays out a backwards compatible future for Perl 7

DrXym

Re: Backwards compatibility

More desirable is they should just implement a decent chrono package where there are no surprises and where if you ask for *any* date you can do stuff like durations, offsets and so forth.

DrXym

Sensibly written

What does that even mean in the context of perl which is renowned for unintelligible lines of code?

Pentester pops open Tesla Model 3 using low-cost Bluetooth module

DrXym

Not a new attack

People have had keyless entry cars stolen through similar attacks for years - they stick the keys on the hall table, thieves boost the key signal & jack the car from the outside the house. Any kind of proximity system is vulnerable to this.

The mitigations to this sort of thing are fairly simple. Don't enable this keyless entry by default and require constant contact between the car and the key. If contact is lost the car should slow to a halt and alert the owner. The app could even track the vehicle, call the police, putting the car into a "distress" mode or whatever.

The sad state of Linux desktop diversity: 21 environments, just 2 designs

DrXym

Re: Why are they all the same? - Working for IBM.

Ironically Lotus Notes is probably the most arcane, impenetrable, unusable heap of shit ever inflicted on users. Even to this day it's hot garbage from a usability perspective.

DrXym

Re: Brilliant and exhaustive work of research

I think GNOME 3 is markedly different from Windows, more close to OS X than Windows although not close to that either. There are extensions that have made it more Windows like but I'm quite comfortable using the vanilla implementation. I think Windows 11 has some design beats which are quite close to GNOME & OS X so there is some influencing going back the other way.

DrXym

Re: Why are they all the same?

I used to do contracting for IBM in the 90s and CUA was already obsolete by then. It influenced early Windows software but by the 90s Windows had things like property dialogs, toolbars, status bars, progress bars etc and there was no mention of that stuff in CUA. Also people expecting cut/copy/paste/undo to work the way it was on Windows & Mac would just get confused by the weird keybindings CUA used at the time.

OS/2 didn't even provide common controls either. So if you wanted a toolbar you had to write it from scratch in your codebase and that obviously meant every application would be different to the next. This was most obvious in OS/2 Warp and the Bonus Pak which was a mess.

DrXym

The curse of overchoice

Overchoice is actually a term for when a consumer is given so many options, often varying in ways which are meaningless or confusing that they end up making no choice at all.

Linux has always had that issue and it is illustrated in the article in all the desktops that exist or existed. I expect most prospective Linux users just want to install the thing and use it for something. They really don't care what desktop is powering their experience providing it is easy to use, discoverable, familiar, doesn't throw any nasty surprises at them and lets them get on and do stuff.

China reveals its top five sources of online fraud

DrXym

Remember news stories about people receiving packets of seeds?

That was the brushing scam. There was some mad panic that this might be some kind of bio attack but it was just vendors sending low value crap to random recipients so it could post fake reviews with their name on it.

Infusion of $3.5bn not enough to revive Terra's 'stablecoin'

DrXym

Re: And People Still Fall For This?

Welcome to the world of digital currency. It's all ponzis & pyramid schemes. Suckers have to buy in for others to exit with profit. Then it collapses and resets. The people profiting are those who can afford to buy in at the reset and kick off the BS & hype again, or the likes of Elon Musk who can shift the market with a tweet one way or the other.

And NFTs are a whole new level of scams. The "rug pull" is the classic one - selling bullshit NFTs and then disappearing with all the money.

DrXym

So to summarise...

... this "stable" coin existed to exactly track the US dollar, and people actually bought this digital scrip instead of actual dollars, because *mumble* reasons? In hindsight that didn't seem like the smartest of ideas. Or in foresight.

San Francisco police use driverless cars for surveillance

DrXym

Well that's kind of stupid

Driverless cars are very obviously going to be griefed and destroyed in no time.