• 1 Post
  • 24 Comments
Joined 1 year ago
cake
Cake day: August 2nd, 2023

help-circle
  • Yeah I remember those early days. KDE had a 1.0 version out in the late 90s, which was perfectly usable as a standalone desktop environment, while at the same time Gnome was little more than a panel with a foot. Early Gnome was an unholy mess and remained so until the late 2.x versions in the mid 2000s. Like how many window managers and file managers did they go through? I believe they even had Enlightenment as the default window manager for a while, and then there was that weird Ximian desktop phase.




  • I don’t think that’s the case anymore.

    I just checked, the time in the UEFI BIOS is in UTC, yet both Linux and Windows 10 display the local time correctly as an offset to UTC. I didn’t have to do anything special for that.

    Edit:

    So I looked a bit deeper into it, and this is apparently controlled by a registry key called RealTimeIsUniversal in [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]. You can paste the text below in a .reg file and then import it to set the parameter:

    Windows Registry Editor Version 5.00
    
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
    "RealTimeIsUniversal"=dword:00000001
    

    I confirmed that this setting exists on my system, but I have no memory of ever manually setting this parameter. It’s documented in the Arch wiki though, so it’s possible that I did set it and forgot about it.

    In any case, if you do a fresh Windows install and your time differs between Linux and Windows , this is what you should check.






  • You can use the wildcard domain

    Yeah the problem was more that this machine is running on a network where I don’t really control the DNS. That is to say, there’s a shitty ISP router with DHCP and automatic dynamic DNS baked in, but no way to add additional manual entries for vhosts.

    I thought about screwing with the /etc/hosts file to get around it but what I ended up doing instead is installing a pihole docker for DNS (something I had been contemplating anyway), pointing it to the router’s DNS, so every local DNS name still resolves, and then added manual entries for the vhosts.

    Another issue I didn’t really want to deal with was regenerating the TLS certificate for the nginx server to make it valid for every vhost, but I just bit through that bullet.








  • Desktop usage is almost always going to feel laggy in a VM because you don’t have a real GPU inside the VM and it will fallback to some non-accelerated framebuffer mode. There are some GPU virtualization solutions, for example QEMU has virgl that offers 3D acceleration, but in my experience it’s buggy/not ready and doesn’t offer near bare metal performance.

    The only way to get near bare metal graphical performance in a VM is by using PCI pass through of an entire GPU, but that requires an extra GPU, is non-trivial to setup and comes with a lot of caveats.




  • I don’t think “substitute user” is the original meaning, and it’s more like a retroactively applied acronym.

    Looking at various old Unix manpages, it said various things in the past. In the HP-UX documentation it even lists three different variants in the same man page: “switch user”, “set user” and “superuser”.

    “superuser” is probably the original meaning, because that’s what it says in the Unix Manual 1st edition (1971): http://man.cat-v.org/unix-1st/1/su

    NAME	su -- become privileged user
    SYNOPSIS	su password
    DESCRIPTION	su allows one to become the super--user, who has all sortsof marvelous powers. In order for su to do its magic, the user must pass as an argument a password. If the passwordis correct, su will execute the shell with the UID set to that of the super--user. To restore normal UID privileges,type an end--of--file to the super--user shell
    

    I love Unix archeology :)


  • I’m blaming it for making it a pain in the ass to debug dependency problems and for having the confusing, non-intuitive, overly verbose and redundant syntax that probably caused the problem in the first place.

    Like, who the hell can memorize all the subtle differences in behavior between After=, Requires=, Wants=, Requisite=, BindsTo=, PartOf=, UpHolds= and then all their “reverse” equivalents?