• 9 Posts
  • 76 Comments
Joined 2 years ago
cake
Cake day: February 1st, 2023

help-circle

  • GNOME tries to set a high standard of polishedness, look-and-feel, and simplicity of design. This is not wrong and makes GNOME good looking and easy to use for a less savvy user. But this has some drawbacks.

    For a more savvy user that knows what he wants to do, the simplistic interface gets in the way and wastes time. In contrast KDE Will hold your hand less, and get less in your way. Though, when you drop these requirements GNOME becomes very pleasant to use, especially on laptops, which is why I use it on my laptop.

    Another drawback is that GNOME developers will not ship something that doesn’t fig their standards of usability. This adds to the polishing, but it means you will miss out on features, for reasons like “the options in the settings would be confusing for the users” until they are satisfied. E.G.: fractional scaling and vrr. On the other hand, KDE Will ship things that are less polished, but at least you have it.

    Also some applications will work suboptimally on GNOME with Wayland, because of client side decorations.


  • Hi, I’m hijacking this thread to answer your other questions. Xpadneo is the correct answer, it will work with any desktop environment (xorg or Wayland) and all reasonable distros. It’s also the driver used by the steam deck, so go with that. But I suggest you read the troubleshooting section for two things: fixing input latency (if you experience it) and secure boot (more on that later).

    I use both KDE and GNOME (on different computers, for different reasons), but in general I suggest you use KDE.

    Now I will explain secure boot:

    You can use third party drivers with secure boot on any distro that supports secure boot. Here’s how it works. Secure boot means that the bios checks that the kernel and requires that the kernel checks that all kernel drivers are signed with a key that it recognizes.

    Now, either using a second bootloader (like redhat’s shim) signed by Microsoft, or either directly getting Microsoft’s signature, you get secure boot support on distros like Fedora or Ubuntu. So your kernel and all your included drivers are signed by Fedora with a key they got from Microsoft.

    Other drivers (like Nvidia’s and this) aren’t signed, so secure boot will not accept those. But, secure but supports MOKs (machine owner keys), which are keys for signing drivers that you manage yourself and you installed on your bios, and secure boot will accept drivers signed with those.

    Now, external drivers can be installed using two systems: akmod (used mostly by Fedora and redhat derivatives) and dkms (used by anyone else). These two are not in conflict and will work on the same system at the same time, it’s just preference. The Nvidia drivers you installed used akmod, xpadneo uses dkms.

    Both these systems support setting up a key for signing, you should then register that key on your bios. When you installed your Nvidia drivers a little interface made by Fedora for those drivers helped you to set up your key for akmods, and now you can use any akmod driver with secure boot. You could always do it manually and you can do it on any distro, Fedora just adds the graphical interface.

    To use xpadneo you need to do basically the same thing but for dkms, and you need to do it manually, it’s very easy, the troubleshooting section should direct you here for instructions, you will recognize some of the steps of registering the key.

    If you feel a little adventurous, you can find which key akmod uses, and set dkms to use the same, so you don’t need to register another one.

    Also, I strongly discourage this, but you can technically remove Microsoft’s key and sign everything with your own key if you really hate Microsoft. Please please please don’t do it, you will screw up and break your system badly, and it’s also a lot of work. Places like datacenters and such do this. Because they want total control on what goes on those machines. Also they don’t sign stuff on the machine themselves, but they sign on a more secure one and then deploy the signed stuff.



  • A quantum computer doesn’t just calculate every possibility simultaneously, it’s much more limited. It “calculates more things at once” in some cases.

    Generally speaking, some things that are hard for a regular computer are easy quantum computers. So if an encryption algorithm is based on the difficulty of those things (e.g. RSA is based on the difficulty of factoring a semiprime number), and the thing is easy for a quantum computer (e.g. factoring a semiprime), then you could defeat the algorithm with a quantum computer.

    How do you protect yourself? You base the algorithm on something that is difficult for both a regular and quantum computer, that’s what post-quantum algorithms do.

    But quantum computers have one last ace up their sleeve. There is a sure-fire algorithm (Grover’s algorithm) to speed up any situation where you need to find an unknown value of a known length (in this case the secret key). To keep it simple, if to find the key a traditional computer would need N steps (because there are N possible keys), a quantum computer would need just √N, which is much less. Now, this sounds massive, and it is, but if you consider that with M bits there are 2^M keys, then if you just need to check √(2^M) keys, it’s like using keys of M/2 bits, so to defend against this you just need to make the key twice as long.

    Lastly, as a footnote: quantum computers can be faster than regular computers, but strictly speaking, regular computers are more powerful, that is to say they can do more things. We say that traditional computers are turing-complete, which means that they can compute anything that is computable, that is not the case for quantum computers, which means that some things (even easy things) that a computer can do, cannot be done on a quantum computer. For example, there is no way to implement regular expressions in quantum computers, it’s impossible. I know regex look difficult, but in computation theory they are among the easiest things a computer can do.

    Edit: one quick addition to the paragraph about Grover’s algorithm. If a quantum computer really just tried all the solutions at once it would be much faster than that. It would be (may my professor forgive me for saying this) “like if it guessed the bits of the key one at a time and were right on the first try”, so if you had your M bits key, you would need just M steps instead of the 2^(M/2) steps of Grover’s algorithm (this is like the difference speed difference between “checking if a word is palindrome” and “calculating who will win a game of chess when using a perfect strategy”). A computer that works like that… doesn’t (and probably will never) exist. But in literature they are called non-deterministic Turing machines. They would be powerful like a regular computer (not more) but unreasonably faster.





  • I would say:

    • Fedora if you like a point release, which means that every 6 months you do a big update of core stuff like the desktop environment, and on Fedora everything else is always generally up to date.
    • OpenSUSE Thumbleweed if you like a rolling release, which means that you don’t do big updates, everything is kept to the last version that the software repository has, this is how arch works except in Thumbleweed the repositories are updated slower than in arch and less likely to break.

    But you could also go for any more up to date debian-based distro, like Pop_OS or even Ubuntu, they might be easier for a newbie user. Fedora and OpenSUSE will be more up to date though.

    If you do use Ubuntu, don’t stick to just LTS versions, use the last version available (which right now happens to be an LTS version). The “extra support” it offers is not something desktop users care about, it’s outweighted by the benefits of more updated software.





  • Unfortunately it requires vulkan (it says 1.3, but because vulkan is based on extensions so it probably doesn’t require the full 1.3). So if you have the Intel GMA 950 that’s in the motherboard for your Pentium 4 HT is not supported. But I’m confident that an AMD HD 6000 from 2010 with the Mesa driver “terakan” is enough to run it. And theoretically one could implement vulkan even for an HD 2000 from 2007, but it’s an unreasonable effort.

    If they made an opengl backend, you would be golden, as the Mesa driver i915 implements opengl 2.1 for the GMA 950, and it’s definitely enough to run an editor

    P.s.: and I sure did not spend the last 30 minutes looking up vulkan hardware




  • TL;DR depends on your gpu.

    Some monitors below HDMI 2.1 support the early version of freesync made by AMD, while others support a fragment of what became 2.1’s VRR. The former is supported only by AMD, while the latter by both AMD and Nvidia (Pascal and upper with latest drivers). If you have the former, the monitor is probably not compatible with DP’s official adaptive sync, so Nvidia won’t work even on DP.

    But… Even if you have AMD, due to a bug in the driver, if you have a Polaris GPU it might not detect the vrr capability over HDMI (but will over DP). I know for sure that RDNA 2.5 cards support it, in theory it should work even for all Vega and Navi GPUs, but I haven’t tested it.



  • Well in the worst case you can always enter a tty or ssh and try to fix from there. But you can be sure the system will be recoverable.

    I took a simplistic approach on some of the things I talked about, but you can use it as a pointer for a deeper dive. Also I realized now that I wrote the comment in really bad English, apologies.

    I really do believe the future of the Linux desktop will be exciting, and that’s also thanks to Wayland.



  • So, I’m going for a long explanation just in case, just skip the parts you already know.

    tl;dr: Wayland is more modern and potentially better, but development on the linux desktop is slow so some parts are not ready yet. You should use it for future-proofing, unless there is some X11 feature that you really really need. But you probably won’t notice much on the surface. Check your drivers/desktop environment versions if you have flickers on nvidia, you need the very latest versions because of a recently resolved issue.

    Backstory:
    Xorg is a program, X11 is the protocol used by said program. Xorg is old, insecure, inefficient, it is based on an idea of how graphics work that is outdated and doesn’t reflect modern hardware. But most of all, its code is a mess, and it is impossible to update it to fix those issue. Thus, the Wayland protocol was born as clean-slate replacement, meant to solve some issue (make it more secure), clean up the software (Xorg is unmaintainable), and make it reflect the way modern graphics work (less intermediary, no network transparency, no per-vendor implementation), but as a consequence, it breaks compatibility with old software.
    Also the developer of xorg were so traumatized by x11 that when making Wayland they went to much in the opposite direction and were reluctant to implement some features, most of which have now been added as protocol extensions or separate software, but some are considered against the protocol design principles and will never be implemented. One of the differences is that there’s no standalone display server, but you have a window manager+compositor+display manager, so Desktop environments need to make their own or support the one made for other environments, that’s why only a few of the long-standing DE support wayland, for now.

    What makes Wayland good (plus drawbacks):
    Less intermediaries mean theoretically more efficiency, thus speed. Of course, that is only true if the compositor is mature enough, after all X11 software is very mature.
    In ye olden times every vendor provided a closed source implementation of the x11 protocol, and that’s how drivers worked. That is objectively a bad idea, so during the years glamor was developed, to run Xorg directly on OpenGL instead of on an ad hoc driver (put a pin on this for later). In Wayland you don’t need ad hoc drivers, they just need to provide Egl (not to be confused with EglStreams) and a library called GBM, that are used for managing frame buffers.
    Xorg used to manage a huge part of the devices (even printers…), and due to antiquate design, it was unable to handle trackpads correctly (e.g. no proper kinetic scrolling), Wayland does less, and relies on other more modern input management libraries, this theoretically allows input devices to work better, but only if the related new libraries and protocols are ready. E.g. he trackpad part is ready, the drawing tablet part is not.
    It is more secure, for example it doesn’t allow programs to just read the screen. It is absolutely possible to do screen recording, but you need modern software, and some applications (e.g. discord) are really reluctant to update their libraries (discord is using electron from 2018), so they don’t get recording. A problem is that it doesn’t allow applications to move windows, some protocols are being worked on, but right now, software that relies on moving or placing windows will not work.

    Applications (plus possible work around for freetube):
    Most applications using modern libraries and toolkit don’t need to care about Wayland support, the toolkit will do the job. They might be undertested on Wayland tho, and small projects might not have the resources to test and take care of both protocols, so they will choose X11 because it’s still the most used.
    Most older applications also don’t need to care, because Xwayland works just fine (put another pin on this), but sometimes they are a bit broken. And if they are specifically tools for xorg (e.g. xscreensaver) they will of course not work.
    Some times electron apps still have issues, because chrome has not had proper Wayland support for a long time. More over, Google does make a version of chrome with improved Wayland compatibility, but they ship it with chromeos. You might fix some issue by adding --disable-gpu which disables electron’s gpu support.
    Expect proprietary applications to not fully support native Wayland, because their vendor often don’t care.
    Java applications don’t support native Wayland because AWT is fundamentally incompatible with Wayland. JetBrains is working on a replacement.

    Nvidia, Xwayland, and Glamor (this probably concerns you):
    Recall the pins from before.
    Nvidia provides it’s own proprietary implementation of X11, like in ye olden days. When they decided to support Wayland they decided that they wanted to use Egl+EglStreams instead of Egl+Gbm, but only gnome implemented partial support for eglstreams (so it was basically unusable), they refused to support Gbm for many years, untill about three years ago for and suddenly you mostly could use wayland on Nvidia but some things were broken, and especially Xwayland was broken and flickery. Many things were fixed but not xwayland.
    Nvidia refused implement the Implicit Sync (from now IS) semantic, which was (until a couple months ago) required by linux’s standards. That is to say that their drivers did not respect linux’s standard and were incorrect. IS is not a good semantic for modern graphic, but that was the standard and there was no alternative.\ No one noticed for a long time because Nvidia provided it’s own implementation of X11, but xwayland uses glamor which glitches when IS is not implemented causing flickers. Actually this affects everything, but for some reason xwayland is more affected.
    During the past two-to-three years Wayland developers worked along side nvidia to come up with a new Explicit Sync (from now ES) semantic. ES is marginally better for IS, but most of all, Nvidia is fine working with it, so now the flickering should be fixed as well.
    Why does your xwayland windows flicker? Applications can support ES and get 0.001% better performance even if they shouldn’t need to (because of how it was designed), but what you need is support from your desktop environment, and from your drivers. You need the latest version of Xwayland, and Gnome 46.1+ or KDE 6.1+, plus nvidia drivers 555+. If you have those versions of the software, everything should work, if not expect flickers and wait for updates.


  • To me Logitech mice are usually so much better than others that I wouldn’t even look at other brands unless I was looking for an ultra specific feature. The cons are the pricing and I think modern Logitech mice use less durable switches than a few years ago.

    They would need special vendor software nog available on Linux, but solaar is pretty good and for my logi keyboard it even offers features that Logitech’s software doesn’t (swap function and fn keys, map fn+right/left as Home and End).

    Specifically, to me they are better because I still enjoy the build quality and because I need a feature that only pricey Logitech mice (and my out-of-production cheaper mouse) have. Which is connecting with both Bluetooth and an HID compatible dongle, and switch between devices with a button. Some other mice have the switching functionality, but they only have Bluetooth, and I also need the dongle.

    The wheel that goes brrrr is also cool, but I don’t have that.

    Beware of rubber coated mice, the rubber will eventually come off. You can try to super glue it back on. You might need to get a new device, but mine is out of production, and the cheapest mouse with the feature I need now costs like 60€ which I’m not going to spend.