587 comments

[ 3.0 ms ] story [ 327 ms ] thread
Can we have twitter banned from being posted here? On all UI clicks, a nagging window comes up. You can click it away, but it *reverts your click*, so any kind of navigation becomes really cumbersome.
Here's a workaround: once the nag window comes up, refresh the page, and then you get to look at what you clicked on.
or twitter urls being replaced with some twitter2readable converter
I hate twitter, but just foone alone makes the effort worth it for me.
HN, for whatever unbelievable reason - supports paywalled articles you can’t even read without subscriptions.

I hardly think they’ll stop approving Twitter threads here. At least they’re readable without hacks or workarounds.

The rest of the thread is an interesting look at how an attempt to protect their devices actually revealed several hidden ones.
Ah, mice...

"Need local admin and have physical access? ..."

https://twitter.com/j0nh4t/status/1429049506021138437

It is pretty trivial to get local admin on any desktop or workstation with physical access, though typically doing so requires at least one reboot. User accounts are basically worthless, from a security standpoint, in that scenario.
It's not trivial, and even so that's not a reason to discredit this particular vulnerability just because others also exist.

What is the point of downplaying local privilege escalation vulnerabilities just because it's a hard scenario to defend against?

> It's not trivial

In my experience, it is in fact pretty trivial.

I'm not saying it shouldn't be fixed, I'm saying it isn't nrealy as big a deal as people are making it out to be. The infosec community likes to latch on to any little vulnerability it can and act like the sky is falling even if, when taken in context, said vulnerability is only a problem in narrow use cases or requires the target to pretty much already be completely exploited.

> The infosec community likes to latch on to any little vulnerability it can and act like the sky is falling

That's because while a given potential exploit might not be a huge deal, a collection of exploits become greater than the sum of their parts, so if you're security-minded, then you want as few of those parts as possible.

Sure, but you always have tradeoffs for implementation time, interface friction, etc. You need to scope things properly so people know how to prioritize them and, in my experience, infosec people are really bad at that. They're so ready to hype up whatever they found that they don't really care how it relates to the real world.
> In my experience, it is in fact pretty trivial.

If you are talking about scenarios where full disk encryption is not enabled, then that is irrelevant. You may as well say that privilege escalation is trivial because some users don't put passwords on their account. The user obviously needs to take care of the basic expectancies first before worrying about vulnerabilities.

> If you are talking about scenarios where full disk encryption is not enabled, then that is irrelevant.

That's fair, I was making that assumption because it is true in literally every case I've come across. But consider that if you have local access to a logged in account you've already got access to unencrypted files for that user anyway. You don't even need admin.

Sure, but consider how this will impact corporate or educational environments (which in my experience DO usually use full disk encryption). I believe full disk encryption is also on by default for most new OEM machines.
When I see the words "trivial" or "orthogonal" in a comment on HN, I become suspicious of the content.
It's made quite a bit more difficult with FDE dependent on TPM and Secure Boot (like Bitlocker). Can't mount the drive from another machine or the same machine with another OS running to modify the password file, can't run a bootkit like KonBoot to disable password checks.
> It's made quite a bit more difficult with FDE...

FDE is orthogonal to user accounts, but yes it would prevent the trivial local access methods of taking over the admin account.

Not that, you know, anything the user cares about requires an admin account to get at anyway, as ransomware has consistently proven.

What a ridiculous argument. User files are important, but locking down admin access has solved a whole host of virus/security issues that were present in, say, windows xp.

at the end of the day, users are responsible for the software they run on their machine. but viruses/worms that run amok are largely over thanks to restraining userland permissions.

Every time I’ve achieved domain admin on a pentest, it’s been predicated with local privesc.

Your opinion is dangerous, professional negligence.

Refuse to buy products like this, please. We don't need our USB mice turning into printer-level headaches.
I'd love to but there mostly seem to be two separate markets now. You can have cheap junk with minimal features or you can have "gamer" hardware with an extra 0 on the price, components that might be much better but sometimes aren't, the kind of driver hell we're talking about, and lots of coloured lights.

I miss the days when Logitech made great, comfortable mice for normal desktop use, with a small number of useful extra controls and a minimal driver and UI to choose what they did. I miss the days when you could buy a comfortable typist's keyboard for a sensible amount of money.

I literally don't know a single brand that reliably makes good keyboards and mice for normal use any more. Every single one (and I've tried most of the big names) produces junk. Even in the £100+ range that is supposed to be high-end hardware, I have probably returned more than half of the products I've bought in the past few years because they had obvious serious defects out of the box or developed them within a few months of normal use.

I have a Ducky One keyboard, very simple, mechanical keys, well built, no RGB, no additional drivers, and doesn’t seem like it will quit working any time soon.
I too have a Ducky, RGB (though with no computer software, purely keyboard controlled). Spilled coffee over it 2 times, cleaned it, still works. Can recommend!
FYI: Unicomp still makes Model M keyboards (with USB! and Windows keys! if you want them); and Elecom trackballs are wonderful

I'm hard on that stuff; i killed multiple original 90's manufactured Model M's and wore out a stack of MS trackballs over those 2 decades. One of the fancy logitech "G" blinky lights keyboards lasted less than 3mo under my hands. Kensington cheap trackballs quit moving right in days and stop working in months.

> i killed multiple original 90's manufactured Model M's

...how? I'm fairly sure I could bludgeon a man to death with my model M and run it over with a truck and it would still work.

severe hand psoriasis, and heavy use. Can't really abide gloves or keyboard condoms either.
I know many people aren't happy with Corsair but I bought the rather ridiculously expensive K95 keyboard years ago (it's different now), and haven't had any issue with it apart from killing some of the media buttons when I spilt coffee all over it recently. I don't think it's anywhere near getting replaced.

Other than that I have one of the cheaper models of Das Keyboard for work and have been nothing but happy with it. Also upgraded it with some o-rings so people around me don't want to kill me.

I use both without installing any junk.

I know many people aren't happy with Corsair

You're talking to one of them. Disappointing failures of both mouse and keyboard resulting in returning hundreds of pounds worth of supposedly high-end products within months of purchase. At least one of the problems I had was also getting reported by others by the time I sent that product back, so it also looks like a design flaw and not just bad luck. I think you also need to install their resource-hungry, crash-prone software to make use of most of the special features too, though that's hardly relevant if keys are falling off and buttons aren't registering presses anyway.

I wouldn't even consider buying more peripherals from Corsair for a while. The quality isn't there and they don't work properly in a you-had-one-job kind of way. Worst of a bad bunch in my experience.

> I miss the days when Logitech made great, comfortable mice for normal desktop use

I've been using a $25 Logitech M535 (Bluetooth) for years now with my Mac. Works perfectly, no drivers needed. Not too big, not too small, not too heavy, not too light.

Curious what you don't like about it?

It's a personal taste thing I think. I've never been a fan of small mice myself.

For me, something like the Logitech Performance MX was the peak in terms of mouse comfort, allowing a natural palm grip. It had a couple of useful extra buttons by the thumb, and a few other controls I never used that weren't intrusive. I swore by those things for years and had them on every PC I used regularly.

More recent Logitech models have added a second wheel by the thumb for horizontal scrolling, which I do like. Sadly they also come with a long list of regressions. They try to be too clever with the main scroll wheel. They've added other controls that are easy to trigger unintentionally. Most importantly, the sensors really seem to struggle with some common surface types, something that was never an issue for me with the earlier models.

Somehow the shape for the later models has never quite matched the Performance MX generation either. For me they are mostly either too small for a comfortable palm grip or using some strange spiral effect that makes the middle part too high for comfort in prolonged use. I wonder if the spiral ones are meant to fit the claw grip popular with serious gamers. And the models like the MX Master that were supposed to be an improved Performance MX style somehow never quite fit either, though I struggle to put my finger on why that was.

I still use Logitech mice for most things, because they seem to be the best of a bad bunch for me at the moment. But I'd throw them all out in an instant if I could have the one I actually liked back again.

Agreed. This might be the right time to make recommendations as well though, I think a big part of people not buying nicer stuff (things that aren't spying on you) is simply that they don't know about it. Or that its too high-friction. Which again leads to they don't know about a solution that will actually work for them.
(comment deleted)
Before jumping in and complaining about the Twitter format, jump to the bottom of the twitter thread where someone has almost certainly unrolled it. And remember Foone hates being linked on hacker news and didn't ask to be here.
How do I get to the bottom? It seems to have doom scrolling.
well, obviously, you use the scroll wheel .. on your . ... ...
Nitpick: You probably meant to write "endless scroll" or "infinite scroll". "Doom scrolling" is a verb for obsessively browsing bad news.
You can't have the behavior without the mechanism. To me "doom scrolling" is infinite scrolling plus algorithmically-sorted feed, way worse than infinitely-scrolling a chronological feed where people will stop and go do something else as soon as they see anything for a second time.
But that is NOT what it means to everybody else, so you will confuse people if you use it "your" way.
Why does the author's desire for community discussion factor in -- is that internet etiquette now?
No, of course not, that would be incredibly stupid. If you don't want to get published then don't publish.
I think that the important bit is that if you've got vitriol to spill about the twitter format that you keep it sealed. I'm guessing you don't care, which is right and good, but some people get upset (and presumably inform the authors) about twitter style posts.
I assumed it was just being used as additional evidence that you shouldn't tie any frustration with this post/its format to original original author.
Think of it like those "Please respect our neighbours" signs that bars post outside their establishment.
It looks like you need to be logged in now to do that, which is a relatively recent change.
Please don't post off-topic comments that mirror the off-topic comments you're complaining about. It does about the same amount of damage to the thread.

(I've marked this subthread offtopic now.)

The 3rd party mouse situation on Macs is totally out of control.

I recently bought a Logitech G Pro X Superlight to use as my daily driver on an M1 Mac. The mouse, it’s amazing. But Logitech’s software is a fucking car crash. A casual perusal of Reddit and customer forums will confirm. Runs as root, Sensor DPI won’t stay set, on-board mode flat out doesn’t work, requires manually setting permissions on a config file in order to save settings (!), etc.

After struggling with it for several days - including trying to set it up in on-board mode on a Windows PC before bringing it across - to no avail, I finally came across Steermouse (http://www.plentycom.jp/en/steermouse/index.html). Was then able to fine tune cursor and scroll wheel speed and acceleration, middle and back / forward button customisations, etc. Nuked Logitech’s crap from orbit and never looked back.

I’ve had similar experiences over the years with multiple Logitech mice on multiple Intel Macs - mostly using Logitech Options instead of GHub. You just can never get it quite right.

So, PSA: if you’re on a Mac (AS or Intel), own a Logitech mouse and fucking hate your life, try your luck with Logitech’s software. Otherwise, get Steermouse.

EDIT: Forgot to mention: if all you want is button customisation and you don’t want to pay for Steermouse, Karabiner-Elements is free and will have you covered. You may already be using it anyway to, eg, remap your Caps key. It can’t do cursor or scroll wheel adjustments, though.

Huh, interesting. I have an older Logitech G700s mouse, so it uses the older Logitech software. I never had any issue with it on a Mac. I only used it occasionally to adjust the onboard settings, and then forget about it for years on end.

I now have a G703 (so new G Hub software) and while I haven't tried that on the Mac, I can configure the onboard settings from Windows or from Linux [0] with no issues whatsoever (aside from setting a button to show the battery level, which, for some reason, doesn't work).

---

[0] The Logitech software doesn't work on Linux, but Piper/ratbag work just fine.

https://github.com/libratbag/piper

> The Logitech software doesn't work on Linux

This is funny, considering it's an Electron app. They just didn't take the time to port, apparently.

I see this quite often and wonder what the reason is. Even for what seem like "basic" apps, as in not needing much interaction with the OS (say a note-taking app, as opposed to a video-conferencing app that presumable does more involved things, like GPU acceleration).
It still requires you to build on each environments once to make the native dependencies work properly. Although I don't think it takes too much efforts to do that. But besides that, signing binaries on mac is complex and requires you to pay $100 to apple. For someone that don't use mac at first place, they probably don't even bother do it.
Is this build somewhat complex and / or not guaranteed to run well?

I have absolutely no experience with Electron development, and actually believed that the cross-platform thing was free (or almost). Again, at least for apps that don't need special functions that could be platform dependent.

Technically it is free, until some native dependencies involve. Because you still need to setup build chains on each platform to make them compile. For example, vc on Windows, gcc on Linux, xcode on mac.

Besides that, unlike java, nodejs don't bundle a lot of stdlibs by itself.(It don't even have a lib for manipulate images!) So you end up being required to use custom native modules for some specific tasks.(If no js alternative available)

The nodejs way is build yourself, so you will have the right one. But since it is a bundled electron program, it doesn't work and you need to prebuild it.

Electron app are crashing every day when i'm doing something CPU intensive on my linux (i tend to have VSCode + Discord open, and pods in the background). 8 double-threaded core and 32G and this framework take one full CPU per app and crash when a deployment decide to take a fraction of the CPU computing power.

I now open Discord exclusively with firefox.

Mine never crash on Gentoo. I have 32 GB of RAM though.

I always have Discord, Element, VSCode (two windows), and two separate Chrome profiles running at the same time and I haven't seen it crash in weeks.

Have you considered the flathub Discord repo? I have been using it for over a year with no hiccups.
To be fair it seems the low-level parts, like interfacing with the mice via USB, would be harder to port to Linux and are unrelated to electron.
Just as a counterpoint, I have G703, which I daily use on macOS and Windows, and hadn't had any issues with it or the G Hub.

However, I'd prefer native, non-Electron app, that doesn't take 350 MB of space, just to configure my mouse (G Hub).

Wait what, G Hub is a Electron app?! Well, that explains why the software felt odd/off compares to Logitech Gaming Software.

I have G600, the software works in my MBA M1 but it couldn't pick up my mice. Because G600 is connected through the mini dock station dongle.

Those days every software rewrite is Electron. It's a plague.
453 MB on my install. It's such a useless app that I used it once, configured everything, and then verified that the same mouse worked fine with libratbag on linux -- it does (I have it on a KVM box between two different machines). Next time I'll just configure it on linux. Their hardware is good -- but the software is awful.
Is this an ad for paid-for mac software? Sure looks like it...
Macs are just missing a lot of extremely basic mouse features. In typical Apple fashion, using it "the right way" is dead easy, but anything different is impossible without third party tools.
Not everything has malicious content , stop pushing this narrative
Kinda normal to have to pay for software to get basic functionality working on Mac, though. Like BetterTouchTools.
I know. I have a Logitech mouse too. Nothing wrong with the hardware. The software sort of works on my own MBP, even though it regularly crashes or forgets its functionality, but refuses to run on the work MBP, which runs the same OS and is otherwise nearly identical. No messages.
I have an M720, which requires Logi Options for smooth scrolling on macOS (also M1). It's monstrously large and has a weird UI, but besides that and it wanting full access to my key strokes ... it's okay. Stays out of the way, I haven't thought about it much at all.

That said I do have some weird issues with my mac and haven't rules it out as a cause.

The mouse situation generally in the mac ecosystem is hot garbage. You need a third party tool to disable cursor acceleration and scroll wheel acceleration (both of which are major quality-of-life features). You also can't map pressing the scroll wheel to a click-and-drag scroll.
Is there a reason why? Does OSX lock down the driver subsystem or something?

Personally I don’t have a fancy mouse (just a cheap wired Microsoft one) because it’s hard to find good ambidextrous mice. So it probably just uses standard mouse drivers.

I think the reason is that consumers of expersive & customizable mice are gamers who almost exclusively use windows.

Razer used to have a mac version of their app but they just decided to not make their new app and support any new devices several years ago.

Ah—yeah that makes sense. I would like to foray into better hardware territory at some point. There certainly could be a lot of value for all applications with quick mouse-triggered macros and whatnot.

I typically swap my mouse hand to prevent repeating stress injuries so there’d have to be better ambidextrous support!

I have a Logitech G305, which I love. I configured the buttons inside of a VM, threw away the VM, and I never intend to touch the software again. (Unless I get a new mouse.)
Horrible software is why my Razer is in a box of unused wires. I am now sporting a Redragon that they have not even bothered to change the USB PID/VID, so it reports as a Pixart mouse (devkit?).
I used Logitech mouse on a Mac few years ago. I used Windows PC to configure it and it remembered all stuff inside. I did not install anything on Mac, it just worked. It's a pity to hear that they broke it.

I used Asus mouse. It was truly underwhelming, even on Windows. It did not remember its settings, instead some "driver" software applied those settings on Windows startup, which caused mouse device to disappear for a few seconds every time I booted my computer with annoying plug-out, plug-in sounds.

Looks like this software does not comply with EU regulations about refunds.

> The registration information is not refundable because it is a short string and easy to copy. We cannot accept any refund requests for it. Please try this software before purchasing a license. You do not have to pay unless you are completely satisfied with this software.

1) There is a trial period which allows to evaluate the software for its fitness. The software is time-limited instead of function-limited, which means that it'll be in the consumer's fault if they bought the software and found out that it didn't work (except for very limited problems, for example relating to said registration step).

2) EU regulations do have a nuance - and in this case, 1) makes determination if said software needs to have a refund policy for the consumer harder. While WinRAR does have a refund policy, it seems the period for refunds is shorter than what is mandated. win.rar GmbH is based in Germany, so how it did bypass these rules? Spoiler: they didn't, the rules allowed them precisely due to the evaluation period.

To be fair, it's garbage on windows too. The best solution I've come up with is a VM to configure the on-board settings and then run without the software normally
Thankfully most of the better mice keep their settings (including macros) in hardware. So you can save all the profiles, settings, macros, button customization, etc, to the mouse, and then take that mouse to any computer and it'll work fine.
Which mice do? Is there a list somewhere? I just got a Steelseries mouse and the programmability only works if the driver is running in the background. I might as well just use Autohotkey. My previous A4Tech mouse was actually programmable.
My last Razer mouse did, as do both my Logitech mice.
Thanks. Can the macros have loops and conditionals? E.g. keep sending left clicks every 0.01 seconds until I press the left mouse key.
I have a Logitech g305 and it definitely doesn't run at the full polling rate without the stupid G Hub software running. It's noticeably smoother once I launch G Hub. Does anyone know if 1000hz polling doesn't work with the standard HID drivers on Windows or something?
My experience was that the dpi and everything else would reset itself after reboots and I'd have to launch the software for everything to work again, even if I set on-board memory on. Super annoying and may be the same thing causing your problem.

I believe the g305 works with the old logitech software, which is much better than ghub. You should give that a try and see if it solves your issues with having to launch ghub just to get your mouse to work properly. Here is a link: https://support.logi.com/hc/en-ca/articles/360025298053

The g305 does work with the previous software, but my Logitech steering wheel does not :( So I'm stuck with the new and terrible G Hub. Hopefully I can ditch the Logitech ecosystem whenever I get around to upgrading to a Fanatec wheel.
I use the Logitech M510 on my Mac, and love it. Bought it in 2012 or 2013. The form factor of the Mac mouse is just a deal-breaker for me. Its beautiful, but makes my hand hurt.

I never installed drivers for the mouse. Its just a mouse; I shouldn't need them.

I recently bought their updated version of that mouse for our Windows machine, and tested it on my iMac; no drivers required. Maybe there are fancier mice that require special software, but I hardly use the fancier scroll functions of the mouse I have, so I have a hard time believing there'd be other controls that I'd be willing to install new software for.

I agree - it's a simple mouse and it works well on Windows and Mac without any additional drivers. If I needed more, I'd just get an Apple trackpad.
I've been using Linux for 2 decades now, and cannot remember a time a mouse didn't just work. Mostly Logitech, from PS2 to USB to wireless.
I've felt the same way, even on a Mac, but I don't really care about how my mouse "feels" compared to some people. Does the cursor move? Good enough for me.

That said, I'm all in on trackpads 24/7 now and have been for years. Nobody does trackpads better than Apple and using a giant external one while my laptop is docked helps me to remain productive when I need to undock. So much of your productivity is muscle memory and by using a trackpad full time, I'm also flexing those muscles.

I agree that Apple's track pad is the best out there. I find something are just not done well on track pads though. Certain games, certainly. Also things that require long click and drags.
> Certain games, certainly.

An acquaintance mentioned that her daughter damaged the trackpad on her MacBook. She was making do with a regular mouse, but apparently hated it horrendously for Minecraft and desperately wanted to get the trackpad fixed. I can't even wrap my head around the idea of Minecraft on a trackpad.

It depends. I'm always on the lookout for a better mouse for use in CAD on Linux. I've mostly settled on the Logitech Anywhere 2S, because it does "just work", but this is hardly a universal opinion. At least within my workplace.

I've found basically all mice will work if all you want is scroll and left, center, right buttons. But if you want all the extra stuff, like the various wheels and side buttons etc., and especially if you want to customize the response, which CAD people often do, then one often needs the driver.

Out of curiosty, which CAD software do you use on Linux? While I don't use CAD very often, all the software my engineer friends swear by only runs on Windows so any Linux recommendations would be appreciated.
Not OP, but I finally switched away from Fusion 360 to FreeCAD - https://www.freecadweb.org/

I'll be honest, Fusion 360 is still a lot better in a lot of ways (advanced feature set, ease of use, layout and hotkeys, etc), and if I were employed to do CAD full time, I'd still be using it (helps that the company would be buying the license).

FreeCAD is workable, though. And since I'm mostly just making parts to 3d print, it gets the job done nicely.

TinkerCAD is another option (https://www.tinkercad.com/) and it's honestly the easiest CAD tool I've ever used. But it's not really comparable to the real parametric CAD tools.

I'm an EE so most of my work, that requires a lot of mousing, is layout which involves various Cadence/MentorGraphics tools. I think most of the mechanical engineers here use NX. It's industrial grade, very expensive, and not open-source, etc. The mechanical engineers used to use windows too and moved off it a couple of years ago. No idea why.
Yeah, my CAD software, Rhino, is all that ties me to Windows.
Gotcha... that makes sense. I've never required more than two buttons and a scroll wheel, which I guess explains that.
Lately I have returned to using a gamepad with Joy2Key for browsing and productivity in Windows, something I last did in the 2000's. It's not perfect(some mouse events just don't work right through this method so I may have to try other software) but it's reminded me of what gamepads are good at relative to mice, which is - almost everything except whipping around the cursor, which isn't useful in productivity apps anyway. Precision and speed can be had by using multiple sticks and dpad, you can hold it at many angles and aren't chained to the desk, the grips have been ergonomically refined, and there's a decent selection of sticks, buttons and triggers. I wish gamepads had some wheels or dials too, but the options already there are aplenty and I am testing a few out right now.

I currently mix gamepad with a split keyboard(Freestyle 2) and a Kensington trackball as the backup mouse; having the controller in the center of the split makes it smooth to pick up and put down. And if I really needed more dedicated controls - well, why stop at one gamepad? Maybe I should try a flight stick too.

Huh, my wireless mouse does all kinds of weird stuff. The oddest is that sometimes Linux decides that two mice are attached despite there being only one USB dongle plugged in, and the only solution is to turn off the mouse, unplug the wireless receiver dongle, plug it back in, and hope it worked. Otherwise it's either reboot or rmmod/modprobe.

Of course, the mouse is a Razer...

Can confirm. Have been using wireless Logitech MX master 3. There is like 1 in 10 chance that my Linux machine hangs when putting it into sleep and I touch the mouse. Also it is almost guaranteed the machine freezes when i turn the mouse off with the switch on its belly while putting the computer to sleep. It taught me to always save my work at least:)
Interesting - I also have a wireless logitech mouse connected to a ubuntu machine that intermittently crashes when going to sleep. It hadn't occurred to me that the crashes might be linked to the mouse.
I've been using the Logitech G502. While the mouse does work using standard USB drivers all the extra features require an open source program to manipulate.
External mouse - agreed.

Trackpad support though has had many issues over the years in my experience across devices & distros.

I've used Linux over a similar time period. I remember plenty of times when the scrollwheel wasn't mapped to anything, and I needed to stick a value for ZAxisMapping into the X configuration. At this point, it's been a number of years since I needed to do that manually, but it used to be a pretty regular thing for me.
I came here to post the same thing. I've been using Logitech mice for something like 20 years on my Mac and have never once installed a driver. I recently learned the some Wacom tablets drivers request network access. WTF? There's no legit reason for a driver to need network access. There could be a separate program that checks for updates and prompts the user to install them if desired. It shouldn't be part of the driver, though.
(comment deleted)
I wouldn't normally chime in with a "me, too!" but it's worth reiterating that Steermouse is a godsend for mice on Mac. Whether it's sensitivity and acceleration or setting up extra buttons (and chording buttons!) it works splendidly and I don't know what I'd do without it. Using it with a Logitech MX Anywhere 2 myself.
I’ll echo everything he said about Steermouse, except to substitute for Razer’s bananas mouse software, not Logitech’s.
I don’t think Razer even has Mac drivers anymore, they went Windows only with Synapse 3. And with Apple’s recent and repeated breakage of backwards compatibility, I doubt Synapse 2 runs anymore. It would have used used a kernel extension instead of DriverKit.

Just as well, since Synapse is terrible.

You ever been in a car with a driver’s seat that has way too many options, so you can never really get the right position? That’s why I’ve never tried Steermouse. I’m afraid I’ll spend all my time trying to get all the settings right and constantly be frustrated.

But after this thread, maybe I just just try it.

Skip straight to the Cursor tab and set acceleration to .8 and sensitivity to 1775. Tweak from there only if you feel it's necessary.
Do you HAVE to install third party software to make your mouse work on a Mac?

I tend to just ... never install any software like that on my Windows PC.

No, you dont. They work fine (at least my MX Master does) without, however you may loose some features like back and forward. Plus you need the software to customize settings like what button does what.
The HID drivers that come with your operating system work fine, but you’ll be missing out on any manufacturer-specific customization features (nonstandard buttons, remapping, DPI settings, lights, etc).

I also don’t tend to install software like that (including the GUIs for graphics drivers too—just install the driver through Device Manager) and I don’t care about the lost functionality. But if you want your fancy gaming mouse to have most of the special features it was advertised to have, the software is useful.

If you have a mouse with more than left, right, middle buttons and scroll wheel, it needs a 'driver'[0] of some kind so you can configure what the extra buttons do. Otherwise you can ignore the extra buttons and just use it like a normal mouse.

[0] I don't think it's an actual driver, I think it just remaps USB HID events from the built-in driver.

Nah. I'm on a Logitech 720 (bluetooth, wireless, many buttons) and didn't even know there was anything that I could download for it for Mac. It just works.

... but I don't care about customizing button behavior or anything like that, and only have a mouse this fancy because I wanted to 3-device switching on it (so I could easily use it on Windows and iOS, too). Though now that I've got one I'm kinda in love with the free-spinning scroll wheel and would have trouble going back to a normal one (though I hated it at first).

I use an Logitech MX Master 3 mouse on M1 and can't say I had much issues with it. That being said, Logitech has zero support for Linux. A +$100 mouse will turn into a cheap $5 mouse when you connect it to a Linux device, which is very frustrating since I would like to use my mouse across all my machines...
I use solaar[0] on Linux for my MX Master 2S; it's really nice and mostly works out of the box!

[0] https://github.com/pwr-Solaar/Solaar

Solaar is in the default repositories of Ubuntu, and it does everything the Logitech Unifying Software does, but unbloated.
The situation’s not all that much better on Windows, given that I put up with Logitech’s shitty software crashing every time I unplugged a USB device for some months.

Eventually just put the mouse into onboard profile mode, assigned all the buttons to F13-24, then mapped them with AutoHotkey. GHub, goodbye and good riddance.

> The 3rd party mouse situation on Macs is totally out of control.

Agreed. I have a 3Dconnexion CadMouse Pro Wireless, which is the only mouse I could find with [an actual middle mouse button in addition to a clickable scroll wheel]. After upgrading to Big Sur, physically clicking any mouse button doesn't register click events with the operating system. So I can move the cursor but not click it. The recommended workaround is to plug it in with the USB cable and use it that way.

Is it 3Dconnexion's or Apple's fault? No idea, but this is just insane. When was the last time an OS upgrade caused your _mouse_ to stop working!? It's like taking a time warp back to the 90s.

I've got a Roccat Kone Aimo Remastered (ROC-11-820-BK, P/N GM1820-02-A01). It's got a wheel (with tilt), 2 clickable middle buttons, front/back, and a a sort of "shift" key for the mouse (hold it and any button can be mapped to an alternate function). Pretty comfortable (to me), and the driver can save all the settings to hardware in the mouse, so you theoretically don't need to keep the driver installed after you initially set the mouse up.
I manage a ClickOnce application and every now and then a call will get escalated to me because it has suddenly become untrusted by the operating system. The root cause is the software for the MX Master helpfully sets some reg keys to distrust all ClickOnce applications every time it updates. Customers have been complaining it on their customer service forums for years about it.
I tried 3 different mice on macOS and finally just bought a Magic Touchpad. I never understood why Mac folks were obsessed with keyboard shortcuts, but now I know. Mouse on Mac completely sucks and it's embarrassing.

I have a Mac machine and a Linux machine side by side and my efficiency on Linux is like double that of on Mac, even though I use the Mac 90% of the time.

(Mac destroys everything else on 4k scaling, though. Linux is atrocious at that. Windows is just "good enough.")

> I never understood why Mac folks were obsessed with keyboard shortcuts, but now I know.

No. Most Mac users are obsessed with keyboard shortcuts because they're faster and more efficient. This is true whether a mouse experience was super optimized or not. If you're typing moving to a mouse takes a lot more time than using a keyboard shortcut. Similarly being a left-hand shortcut wizard is highly effective when combined with a mouse as well.

Lets not use stupid hyperbole here.

I think 99% of Mac users could plug a mouse in out of the box and use it just fine on a Mac. Those that need the extra support can just as easily install one of the many 3rd party utilities that better handle mice support than the manufacturer.

Exactly, I don't care if the mouse is "tuned", I just care that the cursor moves at a reasonable tracking speed.

That said, I'm full time trackpad, even on desktop, so mouse stuff is rarely an issue for me. I'm only using a mouse in specific scenarios.

I disagree here. I use keyboard shortcuts on both platforms, but I can be fast either way on Linux, while on Mac I just can't get used to the acceleration curves and other odd behaviors that simply don't happen on the other platforms with the same mice.

I tried Microsoft, Logitec, and SteelSeries, which is about as great a variety of mice as can be expected.

I know I tend to be in the minority on HN in my dislike of macOS, but I'm trying here.

Conversely, I really really like the magic keyboard, and having an extra accelerator button is pretty nice (that isn't the stupid MS button).

Have you tried using tools like Steermouse? It has been awhile since I've used it but as I recall it allows controlling a lot more of the mouse behavior than the system does in System Preferences.
I have used a few tools, but most of the ones that worked for me in the past died in the last few major versions of OSX. I don't believe Steermouse was one of them, though.
The fact that mouse acceleration curves are such a common irritant is a bit mystifying to me. I jump between macOS and Windows frequently and occasionally dabble with Linux, and any differences in "cursor feel" disappear within ~30s of usage, after which I can't tell that there's differences in the curve at all unless I'm specifically looking for it.
Ditto, it's something I rarely notice and that never bothers me. I game on Windows, use Linux desktops occasionally, and work on macOS mostly. Former mainly-Linux user, too. Whatever the defaults are for Mac cursors don't bother me a bit. In fact the only system customization I really do with a new Mac is to install Spectacle, and then use its defaults without configuring it further. That's about it. Oh, and set caps lock to an extra ctrl, which you can do through the normal Mac settings panel with a few clicks. Otherwise, I don't even know what I'd want to customize, behavior-wise.
Does Steermouse support per-app button mappings like Logitech Options and Karabiner?
From steermouse front page: "Includes some options, “Double Click”, “Click Lock” and so on. A letter key is available for these clicks. For example, a space key + click allows you to grab-scroll in Photoshop."

Isn't this the default behavior of Photoshop? I've been using space+drag since moses was a baby. How is this a feature of this software?

Logitech/Razer/Corsair, all trash software. Thankfully I was able to work around having to use Razer with some open source software but I'm still stuck with Logitech (Logitech G Hub) for my camera and Corsair (iCue) for my headset. /Every/ /single/ /time/ I join a Zoom/video chat I have to open G Hub to fix the zoom level (set it back to 100%, it's stuck zoomed in ~120%). It's incredibly infuriating to join every meeting zoomed in, have my video freeze for 1-5 seconds when I open the camera settings in G Hub, then have my image pop to the right size (note: I don't have to click anything, just open the camera settings to fix it). Also I have to close (red button in top right of the G Hub window, not full quit) the G Hub window in between meetings (If I leave it up and just back out of the camera settings it won't fix the camera when I click back into the camera). Also sometimes G Hub just doesn't open and it's got 2-4 (lghub, lghub_updater, lghub_agent, lghub Helper) processes that you have to kill in quick succession to really kill the software (or they will restart each other) before you can restart it and try again. It also appears to need an update once a week or so which is fun to find out when you open it to fix the zoom level and have to wait until it finishes updating and relaunching.

Razer was a huge PITA constantly forgetting my config and I couldn't be happier now that I have Karabiner handling everything for my Razer device.

Corsair makes a great wireless headset that plays nice with Mac and has good range (I can walk around almost all of my house and stay connected which is a godsend for Zoom hangouts with friends). Unfortunately, their software, iCue, is trash. It regularly tells me my headset is "Unavailable" when it's working just fine and if I leave my headset off the charger (aka, I don't plug in it) and it goes to sleep then it's a 50-50 chance that it will forget it's config. I couldn't care less about the RGB nonsense on the ear cups but the bright LED on the mic boom (green = on, red = off) is distracting. Thankfully they have a setting to only show the LED when the mic is off (exactly what I want, I want visual confirmation I'm muted). The problem is if it loses it's config that defaults back to always on and I have to do a dance of killing the iCue software and relaunching it until it fixes itself.

> I don't have to click anything, just open the camera settings to fix it

Fyi I frequently have to open zoom camera settings to make my laptop camera (Linux, darter pro) work. The fault may your case be shared with zoom, which is also a dumpster fire.

That's very fair, I feel like I've tried nuking Zoom from orbit to fix this and it didn't help but there is a chance I've missed something. Thanks for sharing your experience, I'd love nothing more than to be wrong and find a way to fix this in Zoom!
Sadly I can't help with a fix. I just open the zoom settings and if that fails try restarting random stuff and if that fails reboot my computer.
iCue is the worst software I've had the pleasure of working with. For months I was trying to debug lag spikes in games I was playing, turning off services, closing every application, using different wireless adapters, even connecting through ethernet was giving me lag spikes. Finally traced it down to iCue doing something in the background where it would pause/block all outbound traffic except for itself for a couple hundred ms every 10 or so seconds. God that was infuriating.
I use a Logitech M720, which can be used on a Mac with zero extra software (although you can't use the fourth/fifth buttons, side scrolling works, response curve doesn't need any fancy tuning, etc.)
So I am a membr of the trackballs subreddit. I run almost exclusively linux so I don't run into this issue, but two of the popular brands for trackballs are Logitech and Elecom. Elecom's software is far worse than Logitechs (also their firmware only vaguely respects the USB HID spec, so none of the extra buttons work with a generic HID driver).

There are dozens of threads asking about how to use logitech and elecom trackballs on Macs and they all end up with "Well, I finally got steermouse and all my problems have gone away"

Funny how the manufacturer does such a bad job there is money to be made in shipping an actually functioning driver...
Elecom doesn't even try with their firmware. They send an identical HID descriptor regardless of what the device actually supports (x +y scrollwheel, 5 other buttons). Here's the linux workaround:

https://code.woboq.org/linux/linux/drivers/hid/hid-elecom.c....

If you use a recent Elecom device and an LTS linux kernel you need to patch your kernel just to get the buttons working right!

Using a Logitech M185 barebones wireless KB + Mouse with no issues on a Mac. Plug and play.

2021 would be the first time I've even heard about headphones needing the vendor's app to work right, or input peripherals needing to install its own drivers like its 1998.

I think i'll stick with my cheap-o gaming mice that all run plug-and-play.

almost 100% of the big-name companies that sell performance mice have this wierd thing where they force you to download and install bloatware just to have your mouse work properly.

Had that problem years ago with my MadCatz R.A.T.. When MadCatz went out of business, my mouse turned into a paperweight.

Currently using an A-JAZZ AJ52 (about $10 on amazon). Been using it for over a year now and it works perfectly for work and gaming. Drivers are plug-and-play, so no bloatware installed along with it. It really is nice.

I feel you man, I don't know how companies can make such good physical products and shit on them before selling with software of malware-esthetics w/prince-of-africa-wants-your-bank-account-info-to-help-with-his-fortune permissions, crashing as main functionality three-ring circus to provide checkbox and slider config.
If you authored a book in which you just trashed a particular subject, I would read it.
(comment deleted)
Is it a Mac thing? I've had issues with Logitech software even on Windows.

Their mice hardware is pretty good, but the software is so bad I never install it and just use whatever works on the mouse by default.

On Mac I use the magic trackpad for wireless because it's the only one I've found that consistently works with the bluetooth connection. I'm not sure who is at fault, but other bluetooth devices just constantly have issues (drop connection, fail to wake, fail to pair, etc.)

For wired I sometimes use one of the Razer "Gaming" mice - I don't like the aesthetic, but there aren't a lot of great options in that category and they work well enough.

Apple mice have never been good - they've always been form instead of good design.

Not dissimilar w/Windows, although maybe not as bad - the 1st thing that came up just now in a search for my device was a Logitech Support page about "If you are having trouble with Mac..."

I use a M-R0056 MX Ergo trackball, primarily for CAD. It's fantastic hardware, very precise & responsive, controllable, and reliable even after years of being packed into/out of a laptop bag almost daily, etc.

But the drivers? Ugghh. After looking at all the great function mappings and other stuff they could supposedly do, I did a whole bunch of setup, and found that the software was, to be very polite, flaky.

Tried multiple fixes, but in the end, just de-installed and ran the hardware with the default Windows mouse software ever since. The Logitec software is just a complete waste of time.

I haven't been in windows internals since Win32, so I have no idea if it is MS making it impossible to make good drivers, or it's lazy 3rd parties shipping second rate stuff. To me it feels like it's 2nd rate managed as bloatware - just use the biggest and quickest libraries available and ship it, but that is complete conjecture. Either way, it is really disappointing to get such good hardware and not be able to take advantage. If anyone has any insight as to why it's so bad, or what can be done about it...? E.g., is there a similar obscure utility like Steermouse for Windows (looks great, but seems Mac-only)?

> Nuked Logitech’s crap from orbit

+1. It's the only way to be sure.

Not the same ammount of crap but 3DConnexion drivers play in the same league. Huge (150M+) driver, on M1 Mac it is only in beta mode for almost a year, it forgets its 'smart' scroll behaviour - that is dumb like a brick - at every switch off, but without the driver there is no click! I am serious, the driver is mandatory to use the primary button. Without it only the mouse pointer and the scroll wheel works. It is just a mouse, although a real 3 button one, only one out there as far as I know. It does not require firewall exception at least.
I recently got a Xtrfy M42 mouse and it requires no additional downloadable software. Everything you need to change the DPI and RGB are physical buttons. Which was one of the main reason I chose it over other comparable mice.
> But Logitech’s software is a fucking car crash

The old software worked well. I was super disappointed when I got a superlight that it simply didn't work with old software. I'm on windows but describing the new software as a car crash is still extremely accurate.

Anyone know of software similar to steermouse on windows?

I had a Logitech G930 headset and a Logitech G-series keyboard and mouse. Worked great. Then one day it updated (in the background).

Without the software running, the extra programmable buttons on my mouse (which I used a lot) wouldn't work, which is normal.

With the software running, my G930 headset would now reconnect over and over for ten minutes whenever I plugged it in or turned it on, making it almost useless.

It eventually resolved itself, but I don't know when because I didn't use it for a few years. Ugh.

It's pretty sad when libratbag for Linux is better than the official Logitech software for either Windows or Mac.
Highly recommend Steermouse to all Mac users with a Logitech mouse. The Logitech software is horrible. Constantly consumes background resources for no reason. I've only need to use it a few times to turn a mouse's color LEDs off.
In the past when I ran into this issue it was trivial to reverse-engineer the vendor's mouse app and re-play whatever commands it was sending the USB driver/filter. If anyone has a G100s or a Razer DiamondBack 3G, I think I should have the commands saved somewhere and I'd be happy to dig them up.

Since then, I've switched over to a driver-less mouse where everything is controlled via mouse buttons (XTRFY MZ1).

It's a total mess.

What keeps me sane is I bought two G203's, configured them on my PC, saved the settings to the mouse itself, then used them on my work and home Macs. Note this isn't required, but mice often come configured with relatively low DPI or annoying button assignments.

I use a G502 with the inbuilt driver and it works fine.
Guess what? Hot off the press.

"Razer mouse software bug easily grants Windows admin privileges"

https://www.slashgear.com/razer-mouse-software-bug-easily-gr...

Love Razer mice, but never install their software. And, yes, the way their installer starts via Windows Update should be prevented by Windows.
I'd bet good money that there are hundreds if not thousands of other buggy installers lurking on windows update, just waiting for the right hardware id to appear. Yes, this is a bit of a shortcut, but not really any different than booting from a USB drive and changing the admin password. Adding Bitlocker to the mix is where it starts to get interesting.
I can't imagine blaming this one on Razer. It's a fundamental defect in Windows.
I have been using Zowie mice for years. Plug and play NO software to download. Best mice for FPS I have ever used.
I'll second this. I've had a Zowie FK1 since 2015 (when I was serious about playing Dota 2) and it's still going strong.
Startup idea: Subscription mouse.
I want to renew my subscription, but I can't click renew.
Don't worry, the mouse will click it for you, automatically!
It has a dedicated “renew/upgrade” button, conveniently located where the left click button used to be.
The maas (mouse-as-a-service) requires that you install the companion app through which you can activate your mouse and conveniently renew. It does require access to contacts, media and location services though but you can trust them.
Pay per click license or subscription with a base set of clicks per month with a lower per click price. We also sell keyboards with the same golden customer service.

Platinum level sold separately.

One reason, among many, to avoid products marketed towards gamers.
Interestingly enough, the only reasonably high DPI mouse manufacturer I've found that actually has functional config software on Mac is Steelseries.
In principle agree, but I recently switched to a Logitech G Pro X Superlight to use exclusively as a work mouse, and for me the 63g weight trumps everything about “business” mice. Over the years I’ve owned MX Masters, Marathons, Triathlons, Microsoft mice and others. The Superlight - for me personally - is substantially better for work applications than any other mouse I’ve ever used. It’s so comfortable and precise. Kicking myself for not switching earlier.

EDIT: Subject to my comments above about Logitech software on Macs.

It’s a shame they went with an outdated charging port. Probably to have something easy to upgrade on the next version.
IMO there are a lot of quality products in the gaming segment. The main problem is that the segment is bloated by so many "X but with LEDs and a higher price tag". You just have to do a bit more research before any purchase.
Gamer mouse are actually very tough and last a long time, like 5 to 10 years. The software usually is the first to break during the years of usage. Since 2000 I only bought 3 Logitech mouse and once tried Razor but the button double clicked broke in just a few months and never tried them again. All 3 Logitech mouse still works except for the oldest one because the drivers don't work anymore and I can't use the extra buttons, but as a mouse it still works.
Christ, what a nightmare.

I'm lucky I guess in that my mouse preference is actually the Apple mouse. I've tried a bunch of others of the years and keep coming back to it.

I'm definitely aware of the shitshow that is peripheral drivers. It's always been bad, but now it's just awful awful awful. Even if someone introduced a mouse that appealed to me, I'd be hard pressed to bother given my suspicion that the software required would be terrible.

Are you referring to the default Apple corded mouse they ship with iMacs or the Magic Mouse? Magic Mouse is nice, but of course isn’t for everyone. I have it for my dev machines but trying to use it for playing most types of reaction style games is a nightmare. BootCamp driver compatibility is also not really there. I have never been able to get my Magic Mouse to scroll using the touch motion on Windows, for instance.
Apple hasn’t shipped a corded mouse for four years.
For anyone else momentarily confused by this, they stopped selling the last corded mouse four years ago, but haven't bundled a corded mouse with any computer since 2009 AFAIK. Which makes the comment about "corded mouse they ship with iMacs" feel even older.
Interesting, I could have sworn they were bundling the corded mouse with iMacs circa 2015. Are you sure about your comment about bundling?

In any event, yes I did not know they stopped shipping them but that is only a good thing. I think the polite way to describe the quality of those mice is not very good. Several more impolite terms come to mind.

I'm not certain, but I believe they started shipping the flat magic mouse, er, mice with the 2009 iMacs and 2010 Mac Pros. Unless you only got the magic mouse with an upcharge? That could be the case, although I think it was standard.

I traded my own iMac in a few years ago, but got to keep the peripherals. I'm not a huge fan of the, uh, flat ergonomics, but it is an amazing mouse when you need one to throw in a laptop bag, and the sensors are top notch when it comes to actual tracking. If only it came in a more ergonomic shape...

As has been copiously pointed out, I don't think a corded mouse has been an option from Apple for a long, long time.

I mean the Magic Mouse -- the one that makes some people enraged because you can't use it and charge it at the same time. (Turns out: this is literally never a problem.)

Of course, mice (and keyboards, and pens, and notebooks, and and and and and) are intensely personal items, and what works for me is just that: what works for me. I don't really use Windows except in remote desktop sessions, so compatibility with MSFT doesn't matter to me. I don't play games on my computer much anymore, but when I did I used a trackball that, if memory serves, didn't require any drivers.

The latest Bootcamp drivers fix this.
Good luck with it when your mouse downloads all your photo library and send it to government, soon.
When the USB standard took over the galaxy I was baffled. I mean, what could possibly go wrong here? <hysterical-laughter>
In my book A mouse should be 3 buttons, 3 potentiometers, 7 wires, a plug and a plastic box. Worse that can happen is a short connecting all wires together - then nothing bad happens to the computer. Nothing!

The PS/2 DIN was already doing more than I wanted, bi-directional communication is already more than you need to make the device work.

Perhaps there are exotic mice to be had that deserve to communicate over USB, with elaborate drivers and all the trimmings. Internet connectivity, bootloaders, flashing leds etc.

Ofc you would have to have an USB port to use those which can be undesirable You can plug anything into those. Next the user will download software from the internet and install it. Wild concept. lol

I use the Malwarebytes Windows Firewall Control. It's always interesting to see what applications or services are making internet requests. Much of it ends up being Windows services, but still.
What gets me the most is seeing something like piper:

https://news.ycombinator.com/item?id=27871956

Where its (mainly) one person in their spare time that is able to put these official drivers to shame.

Isn't it quite common for open source hardware drivers to have an effective bus factor of one? (as in, yes it's open source but only one dev has the deep familiarity with the topic required for fast updates) Like, weren't practically all Linux webcam drivers implemented by one French guy at some point?
> Isn't it quite common for open source hardware drivers to have an effective bus factor of one? (as in, yes it's open source but only one dev has the deep familiarity with the topic required for fast updates)

It's usually common for one person to be motivated enough to do the work, so they are the ones most knowledgeable yeah. But the code is out there, it doesn't stop anyone else from looking at it/understanding it just as well. From the looks of piper, it looks like several folks understood it enough to add drivers of their own.

> Like, weren't practically all Linux webcam drivers implemented by one French guy at some point?

I really don't know.

Meanwhile I wish they'd still sell the Roccat Savu. I bought it on a sale and it turned out to be the most ergonomic mouse I've used so far. Runs perfectly fine without the official drivers and the few extra buttons have decent default settings.

But I usually avoid "gaming" hardware. Even if it's not overpriced it rarely looks good and has the same quality at best.

Well, I'm sure Logitech was sensible like most HackerNews developers and saved costs by using Electron for their driver. This gives you a nice 300MB+ base package to drive the UI with a lot of unneeded code (most likely asking for the firewall permissions) and then additional actual driver download.

I'm sure that allowed them to iterate quickly, hire developers who know nothing but JS to build their driver package and ship the MVP with low costs!

Isn't that the type of software that keeps being defended here? ^^

...Logitech?
Logitech software might be bloated, but it's downright lean compared to the Roccat mouse I just got for my son.
Both Roccat and Logitech are horrible in this regard. I skipped a thought mostly because I had to deal with Logitech crap the latest.
"like most HackerNews developers"

What are you babbling on about?

Seriously, I would have assumed Rust, Elm, Julia, D, or Zig if that were the case.
The driver is from Roccat, not Logitech.
> Isn't that the type of software that keeps being defended here? ^^

No? I've basically never seen that and I see endless posts like yours.

> Let’s get these out of the way:

> 1. Yes, we’re building on Electron. Yes, we are aware of the performance tradeoffs, but have decided this is the best choice for us. We’re shipping Windows, Mac and Linux clients along with browsers with a four-person team — it’s the only good way right now to do that without features taking six months. We’ve modified the screen sharing pipeline in Chromium to reduce latency as much as possible, because with interactive screen sharing, milliseconds matter.

Literally a massively popular post from this week, and all of their comments within are "Well yes, but theoretically VS Code got it to slightly over a hundred megabytes when idle so naturally Electron's perfect."

https://news.ycombinator.com/item?id=28223515

So you found someone who had a perfectly reasonable explanation for his choice of tools. We started with drivers and now you come with a desktop app example?

Now find not just one (anecdote) but a trend in HN comments that this tool is recommended to be used when it is clearly the wrong tool for the job?

a reasonable explanation would have been "it was the best choice for our end users", not "it was the best choice for us"
A reasonable explanation can, of course, be either of those things.
Can't ship code that doesn't exist.
From my point of view, if the code being shipped performs badly, then it may as well not exist.
ah yes, as we all know, it is literally impossible to write a desktop app without using electron
> So you found someone who had a perfectly reasonable explanation for his choice of tools.

Really depends on your definition of "reasonable". I could invoke Goodwin's law :)

A driver and a screen sharing/video calling application have vastly different constraints, and what makes sense for one doesn't make sense for the other...
I can just as well point at that thread and go "Isn't that the type of software HN keeps criticizing for being Electron?". Somehow people see discussions about A vs B and go "HN is totally always for A", despite the only reason you even see A so much is that it's hotly discussed every single time, with plenty people arguing B. And of course that shitty generalization is now top of the thread, instead of something discussing any substance specific to the submission.
The perception is that the pro-Electron group is made up of all the people writing the software being discussed and therefore getting most of the benefits of their choice, while the anti-Electron group is made up of all the people criticizing it for having to put up with all the drawbacks for the end-user (and setting aside the fact that the software may not exist at all if not for those pro-Electron benefits).

However, since lots of software is still being written in Electron and... essentially none of the criticisms and drawbacks of doing so have been addressed, the anti-Electron group feels like they're being ignored. Because they are. So when they make posts about feeling ignored or complaining about having to repeat the same criticisms over and over without any improvement, that's because that's what's happening.

The anti-Electron people are not saying that nobody agrees with them. They're complaining that their arguments are clearly falling on deaf ears.

>essentially none of the criticisms and drawbacks of doing so have been addressed, the anti-Electron group feels like they're being ignored

I was told there is a "Hit a programer, they will know why did they got it" group and they basically waiting for the employes at the HQs, following them to the parking lots / train stations and beating the living sht out of them, just because their profession is programer.

Maybe if this gets mainstream we will see change in the future.

You also see non-devs saying Electron is fine, and if the complaints were considered is not something you can really tell. Few people deciding against Electron are going to loudly broadcast that "we were thinking about Electron", and if you consider it and decide it's worth it for you despite downsides, well, you are the "bad guy"(TM) anyways.
I suspect there is hope from the electron developers that somehow the platform will start getting less resource intensive.

App developers want their user to have a good experience (I'm guessing). But it isn't great with electron. But its fund one team or fund 3 ui teams (Windows, Mac, Linux) and hope testing gets them all in sync.

Unfortunately there isn't a great cross-platform solution (qt?) that makes everyone happy (or at least not furious).

Can you find pro-Electron comments? Sure, but if you browse any post about Electron you’ll see a lot of “Electron is a disrespect to your users!” comments, whose top reply is “Yes, and also…(more complaints)”, whose top reply is “Electron is the worst in a long line of…”

This kind of “reply-to-agree-and-pile-on” chain happens on HN a lot, but there are certain topics that really set it off, and Electron is definitely one. The commenters are commenting, the readers are upvoting, and what we end up with is an atmosphere where one side of the conversation is clearly getting more engagement.

(comment deleted)
They literally put "why we use electron" as their first point clearly in defense of the expected onslaught of HNers who were going to attack them for it.

> and all of their comments within

A majority of the following posts (with regards to Electron) are negative...

> ust promise yourself you'll eventually quit Electron. Electron is nothing more than a deal you make with the devil,

> Don’t just tinker... make it a grand North Star goal to lose Electron, and make performance your moat.

> It being Electron especially explains why it's so much more resource intensive than the other solutions.

> I hope you'll reconsider as your team grows.

> For me personally, memory usage has been a big concern with the growing number of Electron apps

> Indeed - a key competitor, Tuple, does not use Electron, and as a result I won’t even be taking a second look at Pop.

It's interesting that people on HN seem to be in such an obvious echo chamber but also see themselves as outsiders.

These two things are not mutually exclusive.
There are thousands and thousands of people on HackerNews and only a tiny fraction of people comment on any given post. Further, the group that does comment on a particular post isn’t a random sample.

Under such conditions, expecting a consistent, well thought out, position from post to post is unrealistic. And not really even all that surprising.

I don't get your point. To reiterate, I'm challenging the idea that on HN you're likely to find stronger support for electron vs against.
GP is challenging the idea that "HN" is a single cohort with a consistent monolithic viewpoint on anything.
I see. I explicitly specified that I was referring to comments I see.
I think it’s fair to say that when people say something like “HN says” or “HN thinks”, they are asserting that a large majority of the comments take a particular side of an issue. Sure, there are many readers who don’t comment, but if they think very differently from the commenters, then they should speak up, because otherwise they don’t really count as part of the conversation.
I have to agree with a sibling commenter, you've weakened your case by jumping from a driver to a desktop application. If we follow what I think your implicit reasoning here is, then we need to just throw Electron in the dumpster because there can be no good time to use it/no sufficient defense.
> No? I've basically never seen that and I see endless posts like yours.

HN is definitely swarming both proponents and opponents for Electron. While I can understand the appeal of Electron, I'm no way in favor of it.

I think it's because the audience here has both creators and consumers.
I'm both - I fucking love electron.

Do I like the 300mb download? No

Do I like the development language? No

Do I like the apps built with it? Depends entirely on the app.

Do I FUCKING LOVE BEYOND BELIEF that it means linux support is native and present at first release? You bet your ass I do.

Ultimately, I don't think that's great for Linux on the desktop. Nobody wants to use a platform where everything is giant battery, memory, and CPU hog.
No one cares one whit about the battery/memory/CPU requirements of software they can't run in the first place.

And at least in my experience, spinning up a VM to run windows only software is a bigger battery/memory/cpu hit than running electron.

---

I would love it if Electron was better on those fronts (not to mention a few others) but it's good enough for most of my current use cases.

Yes, it is good enough, this is exactly why we still live in the 60's (see linux), this is why we still use windows, this is why there is no seamless GUI on nixes, this is why we still use terminals and users, this is why intelligent, and great operating systems got messacred, this is why there are only mediocre people in the IT, and this is why we can't have nice things.

But thanks for continuing the loop.

I think your entitlement is leaking. You might want to have it checked.
Are you mad because you are also a mediocre programer? You can change that through learning.
(comment deleted)
Stop being passive-aggressive and explain what you wanted to say, maybe you will notice you are wrong.
And if they do, there's already ChromeOS. Why use an inferior slapped-together distro for that?
> electron

> linux support is native

Whoever told you that Electron means native Linux is lying to you. It's as native to Linux as a web app is native to Windows or Mac; that is: it's just run in a glorified browser.

native is probably an exxageration.

But it means (in theory) the same experience on all plattforms.

And in my opinion, a working linux electron app beats a buggy wine ported version by far.

Because this is usually the choice. The linux market is way too small and unwilling to spend much money, than to justify a common software developer to spend the effort of porting.

>unwilling to spend much money

Citation needed.

I think for years humble indie bundle kept statistics and linux supporters were always chipping in well above average.

I know, but would doubt, that they are represantive of the common linux user.
> Because this is usually the choice.

Interesting. I don't seem to be lacking software to do everything I want to do in Linux without having to use Wine.

Also, I've spent more money buying Linux software than any other platform.

> But it means (in theory) the same experience on all plattforms.

That's quite the opposite of native since each platform has a host of unique features and capabilities. Guaranteeing the same experience on all platforms is guaranteeing that you're not using the platforms natively.

Same experience on all platforms. Sure. Nowhere does that imply "a good experience on any one of those platforms"...I am reminded of early (1.4) Java, just an order of magnitude worse.
>The linux market is way too small Maybe just amybe having 6*10^23 distributions wasn't that great idea.
A tab on a browser the user is already running would cost less memory and CPU.

It's also with chrome super easy to open a page without the normal browser UI that looks like an app add a .desktop file and presto it's an app it would actually be superior in many respects.

> It's also with chrome super easy to open a page without the normal browser UI that looks like an app

Yeah that's what Electron is.

> add a .desktop file and presto it's an app

So Chrome has turned the .url into a .desktop and ruined what .desktop means. Neat.

> it would actually be superior in many respects

Few, not many. And those respects are garbage because it's a still a web app masquerading as something it's not.

Electron is like its own possibly out of data copy of chromium packaged with other resources.

This means that it shares little with the installed browser and will consume 300MB-1GB of ram itself.

I do not suggest a web app is an adequate replacement for a native application but rather that a website may be a superior alternative to electron as it uses fewer resources while providing a similar UI for some applications.

It's native as in supported directly by the company making the software.

It's not some random 3rd party that's trying to implement a buggy client or wrapper. At risk of being shut down at any moment, and probably violating the company's terms of use. (which is a whole different conversation around the sad reality of interoperable software today)

---

It's native in the sense that I, as a developer employed by a company using it, can easily drop in a linux release without having to have a long drawn out cost/benefits analysis trying to convince PMs that we should do it, because it's not months or years of additional work - it's some manifest file tweaks to get icons in, and possibly some additional signing scripts to be run during the final packaging.

---

It's not native in the sense that it directly uses OS specific APIs, but who gives a flying fuck? Seriously.

I spend 95% of my time in a browser or a text editor already - "Browser with better system access" is just fine to me.

It turns out RAM and disk space are really, REALLY, REALLY fucking cheap. as in - I can get 32gbs of ram for less than the cost of a windows license. So I'll take my linux support, thank you very much. (shocker - I also like mobile web apps, and strongly favor mobile moving that direction as well - For exactly the same reasons).

> It's native as in supported directly by the company making the software.

Except for the times when that isn't true. Elsewhere in this thread people are complaining about how the Logitech software is Electron based but doesn't work on Linux.

> It turns out RAM and disk space are really, REALLY, REALLY fucking cheap.

RAM and disk may be cheap and plentiful, but battery power and bandwidth are not. It's why web apps don't make much sense for mobile today.

Web apps are the default access mechanism for basically everything I do on my phone. And by that, I mean - I open chrome/firefox and navigate to the site I'd like to use.

I have less than 5 installed apps that I use on my phone directly, and those are almost all exclusively apps that need direct hardware access - Camera - Phone - Maps

I also happen to use a few apps to work around sites that are genuinely awful to their mobile users (reddit, for example, is a black whole of dark ux patterns if you open it in a browser without faking your user agent - So I run bacon reader which [ironically] is just another webview running on the device anyways)

Just because web apps are fitting to your current workflows and apps you use, it won't fit everybody else.

I'm just the opposite of you. Just using web to reach HN, and Google, nothing else. Everything I use is native, and I'm happy with all the native apps I have.

Hardware is cheap, network is reliable notion is just an illusion. No resource is cheap and nothing is reliable. I'm in a remote location with 4G network access and, while it's not slow, it's unreliable and choppy as hell (with full bar / excellent reception). Even well-baked and battle tested algorithms and applications (e.g. Zoom, Skype and other similar covid-19 critical, realtime software) choke, shudder and fail with smallest network congestion.

Also, while RAM is relatively cheap, processing power is not. Just because you have fast flash and plentiful RAM on the device, it doesn't mean all is yours. You can't just assume to use all of that.

If that software is running on a resource contained system, It'd be probably confined in a cgroup, and it'd be killed or crashed with OOM exceptions constantly because of this assumption.

At the end of the day, Electron is useful for some stuff, however it's not native in any means. If it was literally native, Evernote for Linux would've been released by now. Tiddly Desktop wouldn't have some silly fullscreen bugs. Spotify Linux wouldn't be a volunteer project inside Spotify. A simple application wouldn't consume as much memory as a full blown IDE with gazillion plugins enabled and written in Java. Visual Studio Code wouldn't need plugin subsets or "Hey, group the plugins you use by language, otherwise memory usage becomes unwieldy" warning. I can go on and on and on.

We have alternatives. We have Qt, GTK, Python compiled with Cython (if you need binary code), heck even Lazarus and WX widgets, and Java. It's unbelievable that JVM is lighter than Electron with all bells, whistles and Hotspot and whatnot. Some of these technologies can adapt themselves to the hardware resource limits of the system they're running on, transparently, with negligible performance impact most of the time.

So, you can tell that Electron is a better RAD tool than Java, but it's nowhere the only feasible tool to enable native cross-platform applications. Electron is lazy. It's the perfect manifestation of MVP meets mock-ups with enough features baked in to allow rapid-fire releases.

I agree that 640K is not enough for everybody, but no resource is as abundant as hydrogen in the universe.

I have zero troubles shipping Windows and Linux user end GUI made in Lazarus. Single tiny exe. Does not gobble up RAM either.
C++ with Qt also seems like a good choice, although it is not free for most types of commercial use.
After reading their license I would not touch it with the wooden pole. Too bad as it seem to be a good tool. I made couple of demo projects to get familiar but did not proceed any further as I did not want to end up paying one of the most exorbitant license fees for a general development tool.
Lazarus is pretty good, I've used it a few times myself to make quick one-off static executables with GUIs. I don't use it for anything serious though because, well, Pascal just isn't a language I want to spend a lot of time working in.

I wish there was something like Lazarus, but somehow more language agnostic.

Maybe try electron with WASM? :D

(Full disclosure - I don't really recommend this, it's not ready yet, imo)

If you think electron is anything at all like Lazarus, you must never have used Lazarus.
I mean, it's an event based form builder. Same as almost all of these tools (going WAAAAY back, 20+ years at least).

I have not used Lazarus for any serious project, so if there's something particularly novel that you enjoy about it, I'd love to learn!

>"I mean, it's an event based form builder. Same as almost all of these tools (going WAAAAY back, 20+ years at least)."

And nothing "better" and more practical came out ever since paradigm wise. Just insane bloat of trying to marry Browser to a native application

I think the reality is that it's insane bloat trying to give browsers access to native libs. If I could just download and install apps in the browser that weren't sandboxed (don't @ me about PWA's they're not even close) then I think we might actually achieve Java's dream.
>"I think we might actually achieve Java's dream"

Keep waiting for a miracle. Meanwhile native applications solve problem with ease. Sure some applications are totally make sense as browser based but you can't just color everything the same. This dream will never materialize for way too many reasons, including political ones.

> And nothing "better" and more practical came out ever since paradigm wise.

I think this is a pretty poor take on the problem. If that were really the case we'd all be using winforms 3.1 (or whatever the original version number was...).

Here's the "Better" that a browser does

- It's got standards and open documentation describing most behavior

- It's got incredibly robust networking code.

- It's got an insanely flexible markup language for describing both what form elements are present, but also how they're visually displayed. (Show me how to do animations in Lazarus... last I looked it was all manual) NOTE: Not only is it insanely flexible, it also is well documented and described by standards.

- It avoided the trap of being GUI first at development time, encouraging an eco-system of tools that generate and modify the text based definition of the GUI you're going to present to users

- It has good separation of concerns. My form elements can be styled completely differently by just swapping out a style sheet.

- It has good (although often underused) A11y support. For most disabilities that you can think of.

- It has first class debugging tools available, supporting a wide variety of environments.

----

That's what the browser brings. Is it heavy? Sure. Is it bloat? Not really.... depends a lot on your use case.

From that list the only valid points I see are -

a) animations. yes you have to do it manually in Lazarus. or you can spend few days and write a component which would animate any published property of any component on a form. Will take a few days to write it in a flexible way and not to be ashamed to submit in public repo. I suspect such component maybe written by someone already but since I did not need it I did not research the area.

b) Debugger is a sore point. It is adequate but falls way of behind what you have in browser or in Delphi (commercial IDE Lazarus is trying to imitate). But they're not standing still and it is getting better.

c) A11y - Highly unfamiliar with the subject so you are most likely correct here.

>"Pascal just isn't a language I want to spend a lot of time working in."

I do not dwell on "liking/disliking" languages. I use what I use (few languages) for pure practical reasons. To me the goal is to design and deliver end product. Language to me is like a screwdriver. It just has to be good enough to do the job without bending backwards. For making native multiplatform GUI applications Lazarus/Freepascal combo totally ticks the box.

That's fair and also generally how I look at things, but it does mean having to become familiar with yet-another-language that has its own quirks and models and whatnot and, in FPC's case, a complete lack of inline variable declaration.
What is package management like with Lazarus? Are there third-party/community-contributed packages?
> Do I FUCKING LOVE BEYOND BELIEF that it means linux support is native and present at first release?

Not me.

From my point of view, if the Linux version is Electron-based, then there is no Linux version.

I'm not really sure what point you're trying to make here.

If the linux version is Electron-based, ALL versions will be electron based. That's the whole point.

If you'd rather not use electron based software, more power to ya - that's your choice. But lets admit that's a luxury that some of us don't have - I'm a hell of a lot happier spinning up slack as an electron app rather than having to run it in a vm, I promise you that much.

I won't knock you for that opinion but I can use VS Code, Spotify, Bitwarden, Discord, Teams, Notion, GH Desktop where not 10 years ago I would have been stuck with either the crippled web versions, running them in a Windows VM, or booting into my Windows partition.

It's fine to hate the tech and wish that someone would come along and make something better but the tools that everyone big and small is using to build apps is cross-platform by default and that's a huge huge huge win for users.

... does it mean I won't run your software? You bet your ass it does.
I mean... great?

If the determining factor for whether my product was useful to you is what rendering engine it uses, you were not and will not ever be the target user anyways.

I don't make "social" apps, I'm not in the business of collecting users for the hell of it. Either I provide business value or I don't, and Electron has very little to do with the business value my customers get (although it certainly does accelerate new feature releases, and most of my customers like that).

no please dont turn this into a "why i like/dislike electron" thread

edit: ah, too late

Isn't this the problem Java was trying to solve? Why did that go out of fashion?
It did go out of fashion and I'm not sure why that is. I do have some ideas and opinions...

AFAIK, JetBrains builds all of their excellent IDEs with Java + Swing. Old school for sure, but it works great. If I were building something new today, I would definitely consider Java on both the client and server sides.

Java applets were one of the first and most visible ways that this was attempted. The user experience of applets was atrocious. Starting up the applet runtime browser plugin at the time would cause the whole system to stutter and stall for several seconds. I'm not sure if it was the single core architecture of the time, but I recall that the entire system would lock up while this was happening. I think that this single fact caused a lot of damage to the reputation of java in the general public.
>Do I FUCKING LOVE BEYOND BELIEF that it means linux support is native and present at first release? You bet your ass I do.

Ironically, this thread is exactly about a Logitech app that doesn't have this.

The people I see complaining about Electron sound like they never did commercial frontend, and usually bring up stuff like Visual Basic making me think they haven't done frontend in 20 years or done anything non-trivial with GUI (if you actually used VB to build serious apps you'd know where the codebehind and using threads to avoid blocking the UI leads you).

Just a very loud minority. I don't particularly like Electron but compared to the alternatives it's the best choice for a lot of apps (as demonstrated by the success of many apps using it, despite "performance is the most important feature" crowd).

So because even senior programers can't do parallel-programming and handle threads then just simply use a webbrowser everywhere? Why don't you and the other programers sitting back into the school-bench and learn it? You know, it would make you more valuable at your company. But yeah, i understand, programers actually hate and not capable to learn something new, this is why linux exists.
I see both, all the time (where relevant). I understand the hate, so I tend to forget it. Justifying the horrible user experience for cost or "without electron the app wouldn't exits" is something I don't agree with and as such it sticks out more. You might be in the other camp and just have different perception.
Brutal lol
Logitech is absolutely as bad, or worse than Roccat here. I have no legitimate way to get mac drivers for my mice, because they aren't on Logitech’s website anymore. And thanks to mac bs, they don't work out of the box.
You should stop buying non-standard compilant hardware then.
Just to address your Electron mini-rant:

I've been trying to build a desktop application for the entire pandemic. In my professional work I work on infrastructure products (think software engineering, not DevOps or SRE). My skills are not really outfit for frontend development or desktop development. Shocking stuff, my ineptitude, I know (/sarcasm)

I ended up learning some JS and I wrote a desktop app with the help of a package called Wails for Go. It's electron-like in many ways, but lets me code up a "backend" in go while JS is resigned to doing things it's good at, like UI. Eventually, though, I struck the gold mine. I actually made a native desktop app in Go with an immediate mode package. It looked like shit, but it worked. I then went on to design a command line variant as well.

My chief takeaway after doing all of them: even my native code resembled the patterns found in JavaScript based UI developments. This basically implies "ELM is everywhere" to some degree, even in Frontends that don't explicitly say it. QT's QML is JavaScript that's pre-compiled for desktop. Sciter is the same way. You can gripe about electrons size, computational, and memory efficiency, but the opposite (native programming for UI) requires an order of magnitude of very niche programming that will only be useful for this purpose, of which any cool thing (like syntax highlighting) that you might want to do will need to be done for the first time. Just a quick reminder, again, I'm not really a fan of or regular user of JavaScript or TypeScript.

What I'm saying is, there are tradeoffs to be made. I don't blame a bunch of startups investing in a JavaScript desktop app when you can absolutely produce a stable cash cow with minimal skillset change and leave a handful of teams building independent threads and daemons that JavaScript can pass work off to that it can't do.

> My chief takeaway after doing all of them: even my native code resembled the patterns found in JavaScript based UI developments.

> (native programming for UI) requires an order of magnitude of very niche programming that will only be useful for this purpose

that seems contradictory

The broader patterns are repeatable, somewhat, in that you can see them broad as day. The way these different languages handle state and communication is totally different though, so, simultaneously incredibly niche as well.
>My skills are not really outfit for frontend development or desktop development.

Then you should simply not do that. This is the reason why we have so many unusable and ugly program with wild UI. Make you a favor: next time pay for a proper developer, you don't have to do everything yourself.

> Well, I'm sure Logitech was sensible like most HackerNews developers and saved costs by using Electron

I'm not here to defend Electron, but most of the things Foone is complaining about would be terrible regardless of what base they use for the UI, and I'm not really sure what Electron has to do with this (or if it's even in use in this case).

The really egregious thing here is asking for a Firewall exemption and not including the base driver in the box. A slow driver with a giant list of dependencies is bad, but it's bad for its own reasons. Electron didn't force the devs not to include mouse drivers in the physical box, Electron apps will easily fit on a driver CD.

See also some of the other complaints popping up in the comment section here:

> I recently bought a Logitech G Pro X Superlight to use as my daily driver on an M1 Mac. [...] Runs as root, [...] requires manually setting permissions on a config file in order to save settings[0]

> Windows Update will download and execute RazerInstaller as SYSTEM[1]

> All of Razer's products are like that. I've been boycotting them since their keyboard wanted me to sign in to use my function keys.[2]

Again, not here to argue that Electron is good, but I don't see how any of the above is Electron's fault -- and I think even if you were happy with Electron, all of the above would still be egregious and unacceptable.

Is the idea that if Razer wasn't using Electron, they wouldn't force you to create an online account and to stay continuously logged in for your function keys to work? I don't think I believe that.

----

[0]: https://news.ycombinator.com/item?id=28274711

[1]: https://news.ycombinator.com/item?id=28274594

[2]: https://news.ycombinator.com/item?id=28275254

I think HP home inkjet printers were the first to do this, over 10 years ago. Somehow any way of finding and installing a driver on windows would pull in a 500MB suite of always-running junk before the actual driver. No electron back then. (I'm still a bit of an electron hater though :)
> The really egregious thing here is asking for a Firewall exemption and not including the base driver in the box.

A million times this. The electron thing is a sideshow. The real problem is asking for too much in the way of security exceptions.

Electron comes with a lot of security exceptions and an insanely large security issue surface. You're essentially running an old unpatched version of Chrome for every Electron app you're using.
> Electron comes with a lot of security exceptions

I promise you that the reason Razer is asking for network access isn't because they forgot to turn it off.

They could be writing this driver in Rust and they would still be asking for these exceptions. Nobody accidentally builds a driver whose sole purpose is to download and install another driver from a remote source.

> with a lot of unneeded code

I've read this as "uuencoded" first :-) Imagined sort of like trojans obfuscate their code with Base64 but using a more weird encoding this time :-)

> and then additional actual driver download.

I bet you can just steal the driver form the temp dir or from the actual system after it installs and save for future usage.

Did you see Logitech's previous native apps? Did you think they were better?

Because they really weren't. Hardware companies fail at software is a much longer living phenomenon than Electron.

(I could believe Logitech's current apps are an Electron like technology, but timeframe wise they predate it also, so maybe more like nw.js or similar, this article talks about roccat, which is a different company)

You don't need to install anything from Logitech to use most of their products.
> ...by using Electron for their driver.

Except they didn't use Electron for the driver. They used it for the management UI.

> I'm sure that allowed them to iterate quickly, hire developers who know nothing but JS to build their driver package and ship the MVP with low costs!

Pffft. Imagine thinking that people who choose Electron only know JS. Clearly that's incorrect as many companies choose Electron despite employing a multitude of native programmers. I'm one of them.

Personally, I know C, C++, C#, Go, JavaScript, Python, TypeScript, SQL, Swift and Visual Basic...and I'll choose Electron to build GUIs every time. I also use React Native to build mobile apps. Pure native kits all suck compared to Electron or React Native and on top of their pure suckage you'll have to deal with the idiosyncrasies of each platform you deploy to.

I don't just build them either. I run multiple instances of about 4-5 different Electron apps all day long without issue on an i7-4770, a CPU that was released in 2013, inside of an old refurbished machine from like 2014 or 2015. And that's under XFCE most of the day...but when do I go use my Mac or Windows machines I get the same exact experience from those apps thanks to Electron.

But oh no! 300mb!! Unneeded code on my precious hard drive!

Maybe stop whining and get a bigger hard drive if you can't handle 300mb. And I doubt you've actually looked into many of the native desktop apps that you're running to investigate how much of the code is actually necessary. Let's hear some of the great native apps that you run.

What kind of work do you? I really want to hear about the 100% efficient native-only apps.

People like you are ruining the desktop computing experience. just stop
CATIA.

>But oh no! 300mb!! Unneeded code on my precious hard drive!

If somebody from the "Hit a programer, they will know why did they got it" group lurking here, please consider the comment of wayneftw as a call for a dance.

Electron is like 80MB, uncompressed. That isn't really the issue here anyway.
I think far more people here prefer native apps than Electron. I know I do.
I doubt the driver is actually written in JS (I don't think that's possible on Windows, Linux, or MacOS). As a client to help configure the driver setup and manage its updates in a consistent way across platforms... is it really that bad?
I use Logitech’s software on three macs, and my honest evaluation is that it gets the job done, but just barely.

Key cons: - Yes, it asks for a firewall rule, which I simply deny with no negative consequences. Still, it’s concerning that it even tries.

- In order to save or backup your settings, you must create a Logitech account, and those settings will be saved on their servers. I would really just like a config file I can sync myself.

- The frequency with which the software needs updates is baffling. On one hand it’s nice to get such support years after the purchase. On the other.. what the hell needs updating on a mouse?

- The software UI sucks. And there’s no excuse for that given it’s just JS.

- Somehow, after reboot Logitech’s drivers are one of the last things to load. So you have to wait over a minute, and sometimes much longer, for you mouse to be able to handle your inputs correctly, which is really frustrating.

Key Pros:

- The software does work. You don’t actually open the config UI very often, so it’s not like you’re constantly running an electron app in the background.

- Let’s face it, the hardware is good enough to overcome the bad software.

> The frequency with which the software needs updates is baffling. On one hand it’s nice to get such support years after the purchase. On the other.. what the hell needs updating on a mouse?

I'm pretty sure it requests an update anytime any Logitech product gets an update, even one you don't own or have installed. A recent G-Hub update where the release notes only mention mice I don't own broke the battery detection on my wireless headset. Now it always says I'm at 2% battery. (Why did I even update?)

That's really good point I hadn't considered. I'll bet you're right.
This reminds me of Windows 10 itself. A fresh install of windows 10 has all its builtin apps including the calculator (for currency I am guessing) allowed through the firewall by default. In the security world, the default should be off and only upon request should an app allowed to talk over the network. Not to mention the fact that apps like Facebook messenger are installed by default in Windows. Microsoft can sell me their operating system in a minute if they just stop all the stupid telemetry, remove the bloat and by default turn all privacy and security options to on and not off. It's not a bad operating system for most people, it's just a privacy nightmare that Microsoft seems to be fine with somehow. Because no matter what your privacy 'policy' is, the best policy is to not collect any data at all.
> In the security world, the default should be off and only upon request should an app allowed to talk over the network.

I'd argue that reasonable defaults are better. Asking permission for everything, including features most to all people would find necessary, just creates decision fatigue and results in people clicking "allow" on every popup.

I think the only reasonable default is to not talk unless I've given permission for it to do so.

But I recognize that I'm in the minority. So much so that I can't trust software to behave itself, so I've had to use my firewall to disable all outbound traffic by default, so I can add exceptions as needed.

It's amazing how rarely such exceptions are actually needed.

I'm with you. Paranoid defaults should be the default defaults

Although I'd still like to be able to opt-in to reasonable defaults if I trust that my OS's non-default default decisions are indeed reasonable.

I agree and I think mobile got that part of sandboxing wrong. I think a better solution is to sandbox by default, give the application no way of being able to tell if it has permissions or not, and making the user manually go in and grant it permissions as they find they actually need them. This would incentivise application developers to try and use as few permissions as they could possibly get away with.

However, it would also require a really good, understandable interface for granting permissions to applications. Files are relatively straight forward, as the file open/save dialog can be handled by the OS and anything the user does with it can be considered explicit permission. For other resources something similar might work, or might need a completely different abstraction.

> I think a better solution is to ... give the application no way of being able to tell if it has permissions or not...

As an Android developer, I strongly disagree with this. Even if I never prompted for permissions, giving me the ability to determine what permissions I have allows me to make certain the application behaves properly with the permissions it does have.

Unfortunately it also allows you to pester the user to change them and, as we've learned, we can't trust applications not to act like they need permissions when they really don't.

Ok, how about a compromise: We'll let the application be able to tell by default, but the user can can choose to lie to it.

While it's taken Android some time, on newer APIs the system will simply prevent an app from requesting permissions if a user has denied it more than once. From https://developer.android.com/training/permissions/requestin...:

"At the same time, your app should respect the user's decision to deny a permission. Starting in Android 11 (API level 30), if the user taps Deny for a specific permission more than once during your app's lifetime of installation on a device, the user doesn't see the system permissions dialog if your app requests that permission again."

Maybe something in the middle. One time, during initial setup, the OS should have a single question with all of the reasonable defaults displayed (and uncheckable). Tell people why these are reasonable, give them an opportunity to opt-out, make it easy to move forward quickly.
"Decision fatigue" is an apt phrase. Reminds me of Joel Spolsky's old essay on classic Windows help asking what kind of help db install I wanted ("compact", etc.) -- to which no normal user ever had an answer.

Don't ask people questions that they are going to answer one way 95% or more of the time, or for which they haven't the context to answer. Just make it easy to change later if you need to.

reasonable defaults are way better, or you'd end up with something like SELinux where nothing works out of the box
> Microsoft can sell me their operating system in a minute if they just stop all the stupid telemetry, remove the bloat and by default turn all privacy and security options to on and not off

I don't think Microsoft is in the business of selling desktop OSs anymore, despite the fact that they still charge money for them. All of their behavior suggests complete disdain for the desktop and users of the desktop. I think Windows is only still being developed because it is a delivery platform for ads and telemetry. For the moment I'll still take it over the alternatives, but I'm confident Microsoft will eventually push me over the edge.

The question as always is what you could replace it with. We have an unfortunate situation where Microsoft had a near-monopoly on the desktop for so long that credible alternatives are lacking for many users. Even if they like some particular flavour of Apple or *nix as an OS, the applications they need might not be available on that platform. I wonder what the forever-defenders of Windows think they will do if Microsoft continues along the course set by Nadella and the current senior team and the situation with intrusions and lack of control over your own equipment continues to deteriorate.
Honestly I'm probably just going to stop using computers so much if that happens. Linux Desktop has consistently proven that it has no interest in doing anything in a sane or consistent manner, and Apple is just as bad as Microsoft in terms of fucking shit up for no reason, only in different ways.

If we're very very lucky, something like Haiku will gain a hypervisor, WINE port, and graphical acceleration, then take off in popularity and become the last refuge of the desktop. I'm pretty skeptical it'll go down like that though.

> Honestly I'm probably just going to stop using computers so much if that happens.

The state of mobile software (including the OS) has become so awful that I've already decided to stop using a smartphone entirely.

> Linux Desktop has consistently proven that it has no interest in doing anything in a sane or consistent manner

Could you explain that a bit more?

Yes, but I won't because I find that posts like yours are only interested in performative argumentation for the sake of convincing some nebulous group of "future readers" that Linux Desktop is worth considering.

I'll save you the trouble: Dear readers, Linux Desktop is fine if you like the way it works. I encourage using tools you like. If you haven't tried it, it might work for you.

I don't like the way works, I've expounded upon the details many times, and I'm not interested in further performative argumentation on the subject.

This weekend I was traveling with my kubuntu machine and despite searching for at least 20 minutes, I was unable to find the controlpanel/settings page/widget/app that will allow me to connect a WiFi network, so I gave up and switched to gnome.
Who do you imagine this "Linux Desktop" is, that you attribute lack of interest to?

Various groups make desktop environments that may be used on Linux, as diverse as KDE, Gnome, Chrome, and Android. It could possibly make sense to complain about one or other of them, or even several. As it is your complaint is entirely nonsensical, a category error like saying red is too hot.

> Who do you imagine this "Linux Desktop" is

The community of people who make and distribute Linux distributions and software intended for the Desktop use case, when taken as a whole.

> Various groups make desktop environments that may be used on Linux, as diverse as KDE, Gnome, Chrome, and Android.

Calling Android or ChromeOS a Linux Desktop is incredibly disingenuous.

> It could possibly make sense to complain about one or other of them, or even several.

Every distribution has the same problems because they are all built with more or less the same hodgepodges of desperately developed software.

> Every distribution has the same problems because they are all built with more or less the same hodgepodges of desperately developed software.

In other words, slightly better than trying to change system settings in Windows 10?

Well no. The new settings panels in Windows 10 certainly do suck ass and contribute to the general UI fragmentation, but the systems that are the foundation of the Windows operating system are not disparately developed hodgepodges. The same cannot be said for Linux Desktop, although with SystemD taking over everything that might not remain true indefinitely.
With ARM, the lack of control might deteriorate even further. While the underlying architecture might not have much to do with it, the accelerators in these SOCs just give more options for Microsoft to collect data and lock down devices even further.
I have the opposite experience. MS has enabled our company to save tens of thousands of dollars because of their unwillingness to compromise on backwards compat. Literally we take CD's burned a decade(s) ago and the software installs and functions just fine. In our field, software tends to cost five digits and upwards so its a big F* deal. I can't imagine any other vendor coming even close. I don't particularly care for their other products, but Windows has earned a ton of respect from me.
Yeah, that's one of the reasons I still choose Windows over the other desktop OSs. PowerShell is also great. The problem is that they take this great base and plaster a slow, dysfunctional, half-thought-out, user-hostile interface on top of it stuffed with telemetry, ads, and dark patterns designed to push you to their cloud services.
Like the battered wife staying because "I can still stand it."
(comment deleted)
I'm curious if you think statements like this really help paint the Linux Desktop community in a good light. Because honestly as much as I don't like a lot of things about how Linux Desktop works the community is also a significant factor in driving me away.
True

Filing bug reports is a exercise in getting abused.

I installed a clean install on a Raspberry PI, installed emcas (which I have used for about thirty years), and found a utility did not work (I will conceal the guilty - it is a common story)

I filed a bug report, and was abused because I was using a emacs distribution that was three years old - how could I possibly think that any problems I saw be anything but my fault , and didn't I have better things to do than waste their time with my idiot ramblings.

What sort of silly child acts like that? What a crock!

Some parts of the Free Software community are much better. (Rust, for example, nothing but respect for my idiot ramblings). But some parts are still full of the "bigger dick" egomaniacs....

Who "acts like that"? Maybe somebody unpaid and abused over a bug maybe already fixed, years ago.

What "silly child" abuses unpaid maintainers? Oh, right, you.

If you just want somebody whose job is to listen to you complain, there are companies that will sell you a contract for that.

Sorry your life sucks so much that you have to be an ass on the internet to strangers to feel better about yourself. I hope things get better for you one day.
(comment deleted)
> Who "acts like that"?

Large enough portions of the FOSS community that plenty of us can relate.

> What "silly child" abuses unpaid maintainers? Oh, right, you.

Filing a bug report is not abuse, it's literally why there are bug trackers. Take a good long look at what you're doing here and ask why it might be that people hate dealing with people like you.

>Filing a bug report is not abuse, it's literally why there are bug trackers. Take a good long look at what you're doing here and ask why it might be that people hate dealing with people like you.

Doing a quick search to see if the bug you are reporting has been reported before is a requirement on pretty much every single one of them though

Still not an excuse for being a dick to the person reporting it.

This is one of my pet peeves with the FOSS community: they want to be taken seriously as an alternative to proprietary software, but they are completely unwilling to act like professionals in any way, and then the complain that people are sticking with proprietary alternatives.

>they want to be taken seriously as an alternative to proprietary software

They are.

>but they are completely unwilling to act like professionals in any way, and then the complain that people are sticking with proprietary alternatives.

Yet, chances are you are using an open source web browser to access an open source web server through a lot of piping that is modern networking, with open source parts inside and out.

> Yet, chances are you are using an open source web browser

You mean this browser run by and for a gigantic multinational advertising corporation who's de-facto monopoly on the browser market is a subject of frequent griping?

You seem to be who wants to be taken seriously, but peeve as you might, you offer no plausible reason why anyone should. No one has any slight reason to care whether you take them seriously. I strongly doubt anyone on God's green Earth does care.
The Linux community is incredibly diverse, some are nice and helpful, some are assholes, some just want to be left alone to do their work.

Generalizing the whole community from reading some forum posts is pretty unfair.

Kinda. I mean, yeah I shouldn't judge every Linux Desktop user by assholes, but it doesn't take very many asshole Linux Desktop evangelists to make somebody not want to deal with the Linux Desktop community because of the likelihood of running into an evangelical asshole.

It's like how women gamers talk about having to deal with misogynist assholes online. Sure, there aren't that many misogynists really, percentage wise, but there's plenty enough to make running in to one a near certainty.

I think it's odd that you think you can make comments like these repeatedly as if you're brand new and as if you don't appear everytime Linux is discussed anywhere on this site to rehash your same opinions over and over again.

It's like running into you is a near certainty.

(comment deleted)
Dude, I was complaining about Windows in this thread, offhandedly mention I didn't like MacOS or Linux either, and some fucking childish evangelist crawls out of the woodwork to liken me to a domestic abuse victim.
I don't mind if you feel like you have been driven away. Your feelings are your business. Complaining about your feelings is pointless and rude.

It is nobody's responsibility to make you happy. Imagining otherwise is just a formula for remaining unhappy. Blaming others for it will not improve anybody's life, including your own.

My advice is, adopt responsibility. You might be able to improve somebody else's life along with your own.

You don't think likening someone's choice of non-ideal OS over your preferred one to domestic abuse might just be a little bit, I don't know, childish?

I mean, why do you care enough about what OS I choose to even bother insulting me anyway?

You were the one complaining, just as if any of us should care. You are a nuisance. I encourage you to go complain somewhere else, far, far away.
(comment deleted)
I was complaining about Windows, but apparently my offhand comment that I also didn't like Linux set you off and the rest of this thread resulted.
It's pretty clear here who was "set off".
(comment deleted)
Enterprise desktop is still a cash cow.
I've never seen Facebook Messenger installed in Windows by default, having installed Windows 10 thousands of times. This sounds like it is included manufacturer bloatware.
Same here; I've installed emost variations of Win 10 (and all server editions, etc.) and seen lots of bloatware but never Facebook. Though I'm in the UK if that matters.
Not to mention Candy Crush
That was a icon that initiated an install of the App from the App Store.
Kind of, however it was/is a bit more persistent than that, when you removed the icon trace (from menu and possbily add/remove), it would still re-instate itself on the next major windows update. It was kind of like the tellytubbies windows xp theme coming back every couple of weeks
I know it is sad, but I used to chuckle to myself every time it happened and say "time for tubby bye byes!" as I changed it to something else. I was younger then.
Apparently they had a telemetry setting they added a while back which they called "security" which they renamed a year or so ago to "Diagnostic Data Off" to better encompass what it is:

The "Diagnostic Data Off" — formerly Security — should be exactly that, as Microsoft has long defined the option as "only the diagnostic data info that is required to keep Windows devices ... protected with the latest security updates." The company admits to some collecting — OS, device ID, device class — but the option waives all user content and data that might finger the user, including company name.[1]

I think that option is only available in the Enterprise edition though, so if you want to pay them for it, it might be a bit pricey compared to other options, at ~$84/year (if you can even buy it for a single account, I have no idea).

1: https://www.computerworld.com/article/3532008/microsoft-elim...

Perhaps Microsoft want to know what numbers you are using, for marketing purposes /s.
I wish USB devices just came with read only storage that had the drivers
I wish most USB devices wouldn't need drivers at all, and just use standard interfaces. It's a mouse, we've been making them for half a century, why could it possibly need a custom protocol?
I've never installed the drivers for my mice. They all point and quite often click.
That is a good point, but that would limit things to the standards. Sure, things that are standard should use standard interfaces, and I bet this mouse works perfectly fine with the standard interface, but adds some extra functionality beyond that.

Granted, it's absurd it needs internet access, I'm just saying that regardless of how well they are written, it would be nice if some drivers were available from the device itself.

What functionality can a mouse have that couldn't have been standardized 20 years ago? I haven't encountered a mouse that had more than some sort of pointing device, scrollwheels, buttons and possibly some LEDs.
I think someone mentioned this particular model needed the driver for customizing the LEDs.

Off the top of my head, non standard features could be

haptic feedback, vibrations, or purosely slowing the mouse down for interacting witha game

palm print reader

electric shock if the wrong person uses it

locking mechanism for a secret compartment

temperature sensor to let you know you might be sick

fan to kick in to cool your hand off if its too hot

persistence of vision display using the laser on the bottom

That's all I got right now, but the point is if someone wants to do something weird they should be able to.

I can't find it online because of all the current mouse freezing issues but I recall that the very old macs (late 80s) would freeze on mouse down until you let go of the button.
For anyone interested in open hardware mice, I have to recommend Ploopy: https://ploopy.co/

Plug-and-play, flash your own firmware if you like. Current models ship with QMK (open firmware), although I believe my older trackball didn't, I'd have to flash it.

I have both a left-handed trackball (rare!) and a right-handed mouse from them, I like to alternate.

Two obvious complaints:

- They're really expensive

- They're 3D-printed, which means manufacturing isn't polished. My trackball had a sticky mousewheel, which I ultimately had to buy a replacement for and swap out. My mouse has some rough edges I haven't filed down yet, and the 3D-printed texture may not be for everyone.

The good news is that it's easy to make replacement parts and repairs yourself!

Still, I wish they would make mass-produced versions with more conventional and precise manufacturing techniques, just with the option to 3D-print your own parts if you feel like it / need to. Maybe that would bring the price down while also improving build quality.

I can't connect to your link
Wordpress DB is down. Did we kill it?
I first clicked the link only 2-4 minutes after it was posted and it was down so I doubt
Welp, LAMP stack doesn't scale. Time to hire some microservices teams and set up a k8s cluster.
>Welp, LAMP stack doesn't scale

Tell that wikipedia ;)

Can't reach their website here.
You can't have "really expensive" and "crap quality" without going out of business.

It's a pity they don't sell the electronic bits (preloaded with the firmware). I can probably fashion quite a nice trackball enclosure from a block of wood; probably much nicer than 3D printed cheap-feeling plastic.

It's all open hardware, so you can run off your own if your so inclined and design wood enclosures.

The draw of these is that they are fully (properly) programmable and can run QMK.

I get the appeal of that for keyboards, but what's the appeal of it for a mouse? Is it only for g*mers?
I don't game much anymore, but using a gaming mouse in my day-to-day workflow is huge. Besides the normal browser history-back/fwd, I have buttons for scrolling through tabs, closing/reopening tabs, alt-tabbing between windows, changing volume, etc. I don't make much use of macros or anything, but if I worked in CAD or Photoshop I'm sure I would. I think any kind of workflow that's hotkey or shortcut heavy could benefit.
Hardware drag scrolling, combos and snippets, more configuration then you can swing a stick at, layers and all of that. Half of the reason I use QMK boards is due to on-host configuration being so so terrible. At least if I bring my own hardware I _know_ it's going to work how I expect when I plug it in. That's a huge sell if you are jumping between computers all the time and have hardware that fits in your purse.

Also, the form factor and things like the Ploopy Nano are super cool. And because it's open source if you don't like the hardware/software you can easily change it. We use interface devices all day, everyday. Not having an ergonomic interface will catch up with you.

I never use the side buttons for forward/back, it would be useful to me to reassign them to something like next tab or page down.
I use a "gaming" mouse (Logitech G502) for day-to-day work. In additional to the usual left/right/middle click and up/down/left/right scroll, I have forward/back, copy/paste, next/previous tab, close/reopen tab, jump-to-first-tab, refresh, zoom reset, and microphone mute. It's useful enough that I find I really miss it when using a less-capable mouse.
How do you tolerate side movements when clicking side buttons and accidental side clicks when “rebasing” a mouse? How do you grip?

Every mouse I tried (suggested by reviews) does oops clicks sometimes, so I always turn off side buttons and live with the fact that they are just there discomforting my thumb.

With the G502 your thumb rests below the side buttons on a small rest - to click you move your thumb up a little and then squeeze. The force required to click is still small enough that very light pressure from the other side of your hand is enough not to move the mouse.
I don't know other people, but I personally have never in the 10+ years I used "gaming" mice accidentally mispressed a button because I wanted to move the thing. Maybe logitech makes weird mice where this doesn't happen?
Here's how I grip: https://i.imgur.com/QQcMrSR.jpeg

I don't touch the side buttons when gripping or rebasing the mouse. That's not a G502 but every mouse I've tried so far (except for the G600) has been grippable without touching any buttons.

Why did you censor "gamers"?
It's a meme, referencing the "gamers are the most oppressed minority" idea. The idea that "gamer" is a slur with a "hard R".

It's almost always used ironically, but there are probably a few edgy GamerGate types who take it to heart.

Tesla is still in business.

I'd be very curious to hear more about how you would go about making a wood enclosure, because I thought the same thing, but I do not have any woodworking skills. I have gotten used to the 3D-printed texture but I wouldn't mind having a nice wooden enclosure instead.

I have been very impressed by Keyboardio's use of wood, for example: https://shop.keyboard.io/ I got an Atreus with a wooden palmrest for my partner, who loves it and uses it daily. I just haven't found an open hardware mouse with similar build quality yet.

> I'd be very curious to hear more about how you would go about making a wood enclosure, because I thought the same thing

Mill two halves, then screw them together with the electronics inside?

File/Sand/Plane down a block for the top, hollow out the interior and close off the hollow with a thin balsa sheet?

The way I made propellers - with a craft knife, cut the wafer thin sheets sold by model airplane stores with successive concentric overlapping ovals for each 1mm height of the enclosure. Glue them all together and sand it down smooth.

Why do nerds always give instructions as questions haha
> Why do nerds always give instructions as questions haha

Why don't you look it up and tell us?

:-)

Closest I got was: not being introduced to (or not inspired by) xkcd's ten thousand https://xkcd.com/1053/

Ever since I read that one I've loved being able to introduce people to things rather than doing the question mark "you should know this" sort of reply

It was a wild search tangent admittedly

Assuming this question is in good faith:

I think* it has to do with not wanting to say something as 100% truth without knowing it's 100% true. Which can be interpreted as weakness/insecurity among more business/marketing minded folks.

*see my own usage of "I think"

It was in good faith but I can see how it comes across as snarky, that's bad wording on my part

I can see how that fits, nice one

> It was in good faith but I can see how it comes across as snarky, that's bad wording on my part

I didn't take it as snarky[1], so I wouldn't worry about that if I were you.

[1] I even replied in kind, with a question :-)

Last thing I want to hold a crappy 3d print textured mouse under my hands for 10 hours. I will take my chances with Logitech and stick to mx master. $130 for a mouse? Are you serious.
I'm making one with an outer shell of TPU after having this issue. It's just a bit soft and it feels like the 'textured grip' parts on my old Logitech, but sized for my considerable meat hooks.
Wow, those mice look truly horrible to use, and cost $200 to boot.
They have parts like PMW3360 in a mouse clearly intended for office use, judging by its shape; no wonder it's expensive. This is a sensor designed for extremely fast movements in games (faster than punches in most martial arts). It's not the latest and hottest model, but you won't be able to tell the difference from a cheap sensor during normal use.
Amazing that it's not only 200 and not high quality, but it's called "ploopy"
I wish they made alternative PCBs for existing mice. So you’d get the nice finish of molded parts, with an open firmware.
a) Cheap

b) Well made

c) Open source/hardware

Choose any two.

I think it's time for Chinese manufacturers to step up to the task. I've recently bought a (filament) 3D printer, and reading up on the domain, it was interesting to see how it developed:

The open source community figured out how to write software that can turn CAD drawings into CNC instructions and wrote firmware that could drive the printers. Meanwhile, multiple Chinese manufacturers built hardware, competing with each other to build better stuff and increasingly cheaper prices. The end result is that you can buy really decent 3D printers at around $250 with open firmware.

Yes, this is why I don't buy Razer equipment anymore. No, I do not want to sign up for a Razer account so I can control my DPI settings!

Not only that, it automatically installed the software somehow when I plugged it in, which I didn't want.

I have this same mouse. It works perfectly fine as an HID-compliant mouse on Linux, including the forward/back buttons. You only need all that crap if you want to control the rainbow RGB lighting. And if you really that, there's a reverse-engineered driver here: http://roccat.sourceforge.net/
There's also libratbag, which contains RGB/DPI/extra-button/etc control for a variety of mice from many many vendors
If you want a graphical frontend for libratbag there's piper.
You might want to add, that Roccat supported the reverse engineering effort in this case by providing hardware and approving the use of certain sound files:

> The reversed hardware is kindly provided by Roccat.

> The sound files and the Roccat logo are property of Roccat and are used with their approval.

A few years back, I owned a Roccat mouse myself and was delighted to find a decent Linux driver for it.

If you only cared about the basic functions, you could have got a much cheaper mouse.
Since when RGB Rainbow became Enhanced Function and dpi/buttons/accel/grip/etc became basic?
Well, since every mouse has dpi/buttons/axxel/grip/etc and not all mouses have RGB Rainbow.
When you buy the mouse with the RGB lighting over the one that doesn't include it