Other Resources
Turn Idle Devices Into Windows Extended Screens Using Sunshine, Moonlight, and Virtual-Display-Driver
Using Xbox Controller on Archlinux
Steam Game Cracker
Linux Sing-Box and Tailscale Coexistence Issue
Running Pirated Games (Exe), Online-Fix, and Game File Acquisition on Archlinux
Archlinux Clevo Laptop Driver and Control Center Installation
The fan scheduling on Clevo computers is really annoyingly loud. I used to use Windows and relied on Ryzen Master for undervolting to control CPU temperature, which indirectly reduced fan speed. Now that I’ve switched to Linux, it’s unbearable without proper configuration. I spent ages searching on Google and found a bunch of GitHub repositories. After trying several that didn’t work well, I finally discovered that someone in the AUR repository had already packaged useful solutions (I absolutely love pacman and AUR!). https://aur.archlinux.org/packages?K=clevo
Using GO Sync.Once
sync.Once is used to ensure that a function executes only once, regardless of how many goroutines attempt to execute it. It has one method Do(f func()) that takes the function to be executed.
Basic usage example:
package main
import (
"fmt"
"sync"
)
func main() {
var once sync.Once
done := make(chan bool)
// Simulate multiple goroutines calling
for i := 0; i < 10; i++ {
go func(x int) {
// The function passed to once.Do() will only execute once
once.Do(func() {
fmt.Printf("Execute only once: %d\n", x)
})
// This line will be executed by every goroutine
fmt.Printf("goroutine %d completed\n", x)
done <- true
}(i)
}
// Wait for all goroutines to complete
for i := 0; i < 10; i++ {
<-done
}
}Common use cases:
Archlinux RDP Connection Issues
If you are using the RDP protocol from a non-Windows device to remotely control a Windows machine logged in with a Microsoft account, the username you enter when connecting might not be your Microsoft account (email), nor the remaining part after removing the email suffix, and certainly not Administrator. Instead, it could be some other value. You can check this by running echo %USERNAME% on the controlled machine. Although this value is set by yourself, it’s completely nowhere to be found in the system settings. I was really frustrated trying to figure this out for quite a while.