• 1 Post
  • 15 Comments
Joined 1 year ago
cake
Cake day: June 18th, 2023

help-circle
  • There’s a very nice (albeit somewhat outdated) talk here.

    In a nutshell, both X11 and Wayland are protocols that define how software should communicate to (hopefully) display stuff on your screen.
    Protocols as in there’s a bunch of documentation somewhere that says which function a program must call to create a window, without specifying how either program or function should be implemented.
    This is great because it allows for independently written software to be magically compatible.

    X11 is the older protocol, and was working fine good enough for many years, but has issues handling a bunch of modern in-deman technologies - issues which can’t be fixed without changing the protocol in a way that would make it incompatible with existing software (which is the entire point).
    Plus its most used implementation - Xorg, consists of a huge and complex codebase that fewer and fewer people are willing to deal with.

    Wayland is the newer protocol, that mostly does the exact same thing, but better, in a way that allows for newer tech, and completely breaks compatibility in order to do so.

    The trouble with the whole situation was that in order to replace X with Wayland basically the entire Linux graphics stack had to be rewritten - and it was, with raging debates and flame wars and Nvidia being lame.
    They also wrote a compatibility layer called Xwayland that lets you keep using older X-only apps which somehow manages to outperform Xorg.

    Now we’re at the point where major distributions are not only switching to Wayland by default, but also dropping support for Xorg completely, and announcing that they’ll no longer maintain it, which is why posts about it keep popping up.





  • There’s a bug open for Firefox and you can change VSCode’s behavior by putting this in your keybindings.json:

    {
        "key": "shift+insert",
        "command": "editor.action.selectionClipboardPaste",
        "when": "textInputFocus && !editorReadonly"
    }
    

    Not sure why either of them are messing with a “standard” shortcut…
    If you want a more system-wide solution there are utilities that let you sync the PRIMARY (on selection) and CLIPBOARD (Ctrl+c) buffers mentioned in the Arch Wiki entry.



    • “Screensaver” isn’t a feature of X - it’s functionality provided by XScreenSaver which uses X mechanisms to detect user inactivity, lock the screen and display an animation.
      Equivalent mechanisms exist in Wayland, but XScreenSaver doesn’t have logic to interact with them. This can be solved by either teaching XScreenSaver how to talk to these new mechanisms (difficult as it was developed for X from the ground up) or implementing something new.
    • Network transparency already exists (and has for some time) in the form of waypipe.
    • xset isn’t a feature of X - it’s a utility to control it. Since Wayland compositors aren’t X, it makes sense for them to be controlled differently.

  • Right so just installed xscreensaver - automatic blanking and locking is indeed broken BUT it does display all the pretty animations just fine! (at least on Sway)
    Don’t really have time to mess around with it but maybe try figuring out which mechanism is used for screen locking in your environment (in Sway’s case it’s swayidle) and get it to start xscreensaver right before calling the real locker program?
    BTW you can get xscreensaver-settings to come up by unsetting the WAYLAND_DISPLAY variable:

    env --unset=WAYLAND_DISPLAY xscreensaver-settings
    

    Philosophical BS: I don’t think it’s correct to say that Wayland doesn’t support screen savers, but rather that it doesn’t support XScreenSaver, or, more accurately, the mechanisms it uses for screen locking and idle-detection.
    As others have pointed out, equivalent functionality has already been implemented and is used by various screen lockers. What appears to be missing is something to take this functionality, and display an animation instead of just locking the screen.
    I noticed that all of XScreenSaver’s animations are actually separate binaries in /usr/lib/screensaver/ so we basically need a locker that speaks Wayland’s locking protocol, but also takes and runs those binaries in full screen mode.
    Or maybe XScreenSaver’s dev can be convinced to add support once the protocols are stable?



  • Which edition are you trying to install? Are you using an up-to-date ISO?
    I’ve only ever used the business edition, and it’s never given me any trouble.

    1. Head over to the tools section in the megathread at [email protected]
    2. Grab a clean business editon ISO from one of the listed sources.
    3. Create an installation flash drive using rufus.
    4. Make sure all the legacy CSM crap is disabled in BIOS.
    5. Boot off the flash drive and run the installer.
    6. When you get prompted to sign in with a Microsoft account click “Domain join instead” (or something similar).
    7. Create a normal account but leave the password field blank (to avoid having to enter security questions).
    8. After you finish the setup and get into Windows, hit Ctrl+Alt+Delete and set a password.
    9. (optional) Go into settings and either enter your legally obtained key to activate Windows (it should automagically recombobulate itself into a matching editon) or read through the aforementioned tools section for an alternative 🏴‍☠️
    10. ???
    11. PROFIT You’ve installed Windows.

  • I got two Brother laser AIOs (MFC1910W) for my folks and myself.
    All I had to do on Arch was install brother-mfc-1910w for printing, brscan4 for scanning and oh-brother for (occasionally) upgrading the firmware, all over WiFi.
    I think more user-friendly distros come with these packages preinstalled, so it should just be a matter of opening the printer manager and waiting for it to show up.
    Don’t think they make the specific model anymore, but any Brother laser AIO should do.


  • Maybe rebuilding the ramdisk failed during the original upgrade?
    One of the post-install stages after upgrading the kernel is rebuilding the initramfs - a tiny environment for bootstrapping the main OS.
    If you trigger it manually with mkinitcpio --allpresets you’ll notice it has fancy colorful output, with clearly visible warnings/errors.
    However when invoked as part of an upgrade this coloring is removed, making errors difficult to spot.
    I had this stage randomly fail a few times, resulting in an unbootable system like you described - solution was to just trigger a manual rebuild or reinstall the kernel with pacman -U.
    It’s possible that this is what actually fixed things when you downgraded the kernel.