Skip Navigation

Posts
0
Comments
88
Joined
2 yr. ago

  • Livepatch is implemented in a hacking way. It dynamically patch kernel code in memory so it should only be used in the machine can't be reboot completely. For a normal machine, use unattended-upgrades instead.

  • GeoIP is the last way. Before that, geoclue will try to locate using found Wi-Fi and Cell towers via beacondb.net (via Mozilla Location Service before it shut down). If beacondb.net return fail or (0, 0), it try GeoIP at last.

  • In most cases, yank in Vim just need somewhere to store contents temporarily, not share it with others.

  • Yes. The original Ethernet use Coaxial Cable with bus topology when it was standardized at 1982. This way was used by its competitors like Token Ring as well. 10BASE5 use thicker coaxial cable so it called thick Ethernet and 10BASE2 called thin Ethernet. (5 and 2 means it can reach 500 meters and 200 meters)

    And then the engineer of AT&T want to reduce cost so they found the phone line. At that time, the phone line use twisted pair line and usually have many unused pairs in the line to a office room. So they think those pair can be reused so there is almost no cost for line. Since the phone line already use star topology so they choose it as well. 1BASE5 was standardized at 1986 (so the twisted pair ethernet have lower bandwidth than coaxial ethernet at beginning) and also called StarLAN (was renamed to StarLAN 1 when StarLAN 10 was invented at 1988). And then at 1990, 10BASE-T which is based on StarLAN 10 was invented. The last is the story we all know today.

  • Kensington Orbit® series are matching your budget. To be honest, Kensington Slimblade Pro is almost 2 times of you budget but it worths.

  • When I see the title, I initially thought you are talking about 10BASE5 and 10BASE2 (old Coaxial Ethernet)... I just know about DOCSIS technology, but I have never used it. In my hometown, most people switched directly from ADSL to FTTH.

  • He may want to say "fastsync" (whose kernel part called winesync). It's the predecessor of NTsync and was renamed to NTsync when merged into linux mainline.

    Before NTsync was merged, those distrobutions provides the kernel packages with winesync patches. Since linux 6.12, NTsync was merged so they droped winesync from kernel package. But NTsync's API is different with fastsync/winesync, so old wine with fastsync support will stop working with new kernel. (While NTsync still isn't merged to wine)

  • And snapshot can benefit backup. Since some software need to be shudown to do backup, minimize the down time is important. The snapshot can make down time is almost stop and restart time, and the software can be online again and we can do backup on snapshot in background.

  • https://esp32-open-mac.be/ is working on reverse engineering ESP32 Wi-Fi hardware to implement a open source ESP32 MAC and PHY driver.

  • AFAIK, Mopria doesn't develop universal printing standards actually. The IPP standard was developed by Printer Working Group of IEEE. Of course, its members are almost same as Mopria. The standard Mopria developed is eSCL, a scanning standard. eSCL has a competitor, WSD, which was developed by Microsoft.

  • In fact, most manufacturers save money and don't shield the cable, forcing half-speed USB 1.1, which is enough for all mice and keyboards - less than 50 kb/s of the available 6 Mb/s is required even for 240Hz polling. High-end mice might have USB 3.0 (9 pins instead of 4 in the plug) but there should be no practical difference between 3.0 and 2.0 speeds.

    When speed is enough, latency became an issue. Although with 8kHz poll rate (USB 2.0 half-speed and full-speed can only get 1kHz poll rate), the latency will be 125µs at least. But for USB 3.0, it gained two ways to improve latency: 1) it can send Bus Interval Adjustment Message to adjust latency to 13.333µs (around 75kHz); 2) it can switch to async mode. Host no longer poll the device, instead, the device notify host via ERDY.

    Of course, I don't know how many devices utilized these features.

  • It may be caused by you didn't connect GND. So debugger and board has different ground level and it looks like RX/TX were pull up because 0V on one side is equal to a higher voltage on another side.

  • HM-SMR works better than normal DM-SMR, but it's rare and limit the filesystem choice: none on Windows and f2fs or btrfs on Linux.

  • Suggest use fsfreeze --freeze to block all access operation to create a stable image without unmount the SD card. (And release it later using fsfreeze --unfreeze.)

    BTW, this feature was created by XFS and was moved to VFS in Linux 2.6.29 so all filesystems supported by Linux gained this feature.

  • FYI, nvidia driver will remove shader cache that bigger than 1024MB. That make the game run without shader cache and has poor performance. Set environment variable __GL_SHADER_DISK_CACHE_SKIP_CLEANUP=1 to prevent this behavior.

    https://github.com/HansKristian-Work/vkd3d-proton/issues/2506

    Tips: Don't forget to search in issues of dxvk and vkd3d-proton when you meet game performance issue.

  • Package managers are complex tools that handle versioning, dependencies, updates, uninstalls and so on.

    No. The original package manager can only handle install, uninstall and update (even no update). Since 1995 CPAN was invented, the package manager start to add feature to handle download and dependency resolve.

    Actually you still can find this kind old school package manager: Slackware, its package manager can only handle install, uninstall and update. It won't do any dependency check or version check. It's package format also very simple: just a tarball, install is extract tarball to specific directory and execute doinst.sh in tarball. Uninstall is invert, remove all files in tarball and execute douninst.sh.

    If you package all files needed by install process into a tarball and place it in your repo, you will get a Slaceware package manager with download feature. (Slackware don't have download feature, all official packages were included in install media and you must download third-party packages by yourself.)

    Package mangers are also distro specific.

    Package manager can be universal. But make it universal with cost: since it can't depend on any distro-specific thing, it must include nearly everything of userspace.
    (NOTE: Your script repo is not universal since prebuilt binary downloaded from script usually depends on some distro-specific things, such as Glibc version. Glibc is backward compatible, but not forward compatible. So you can't use these binary in the environment with lower version glibc than when it was built. So many projects will try to avoid these things, they use static-linked musl or don't use libc at all (e.g. Golang). But it will bring maintenance pressure so most projects don't do it unless there is an infrastructure to do it easily, such as Golang)
    Actually there is some package manager make themselves universal like Gentoo-prefix and Nix.

    Someone suggested brew. How do you install brew according to https://brew.sh/ ?
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    See the problem?

    That's bootstrap problem. You always need a way to get the first package manager. I don't know how Homebrew do. But you can use curl command to download static-linked version package manager to use it without any https://example.com/install.sh for most linux package manager (Except the one written by python. Actually you can do it as well, just download hundreds of files is annoying.).

  • The big round corner is unbelievable ugly... at least in my opinion. If right angle is not popular in modern UI, the small round corner like in URL bar is acceptable to me, but this one is too huge...

    1. Thread and Zigbee use the same physical layer and MAC layer (IEEE 802.15.4), so in most case it can use the same hardware and just with different firmware (if manufacturer want).
      There is even a project to run both Zigbee coordinator and Thread border router on the same chip. It works! Although it causes some issue so Home Assistant no longer recommand this "multiprotocol" way, but this is a strong demonstration of the interchangeability between Zigbee and Thread.
    2. Thread Group members is almost the same companies who found Connectivity Standards Alliance (former Zigbee Alliance). When Connected Home over IP (CHIP) project was renamd to Matter at 2019, they create Thread Group to unify the home connectivity: Only use one network layer named IPv6 and one application layer named Matter. Zigbee can't reach this target since it use its own network layer and application layer. So they invent Thread, which still based on IEEE 802.15.4, but with IPv6 as network layer and can transport Matter on it.
  • Only GIMP can't cover all usages of Photoshop well. For image editing, GIMP is a good replacement; for painting, Krita is better.