Benki β†’ All Posts

β‡  previous page next page β‡’

A program that you feed ANSI control characters and that decodes them into human-readable descriptions for you.

If you just can’t get your Samba server to play nicely with Time Machine (in my case Time Machine would always generate its disk image file without the execute bit set and, it actually being a folder, would then be unable to access it), here’s how you trick them into working together. Create a .sparsebundle and within it a file called com.apple.TimeMachine.MachineID.plist that you fill with the following:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>com.apple.backupd.HostUUID</key>
    <string>00000000-0000-0000-0000-000000000000</string>
    <key>com.apple.backupd.ModelID</key>
    <string>MacBookPro5,5</string>
  </dict>
</plist>

Replace 00000000-0000-0000-0000-000000000000 with the hardware UUID you can read in System Profiler.app and MacBookPro5,5 with your model ID, which you can also get from there.

The pull request has been closed with a remark implying that it’s currently not in focus.

Personally, I think it’s a mistake to release Scala 3 without a built-in effect system. People will continue to rely on things like custom monad stacks and for-comprehensions to emulate one, which leads to horrible looking code that is hard to understand and even harder to edit. Or they go out of their way to create prettier but incomplete solutions that are even less well supported.

In fact, depending on how you look at it, because it lacks a proper effect system Scala is currently a less type-safe language than Java in that Java at least has checked exceptions whereas in Scala anything can throw at any time without it showing up in the types.

Matthias #

Guess what one of the top disk latency inducers is on my (functionally mostly idle) server.

# zfsslower
Tracing ZFS operations slower than 10 ms
TIME     COMM           PID     T BYTES   OFF_KB   LAT(ms) FILENAME
09:14:10 async_49       2675004 S 0       0          18.29 journal.jif

The mysteriously named async_49 represents Mnesia as used by RabbitMQ as part of… Zulip.

Have I mentioned that a Zulip instance hosting 3 users is a waste of resources? Oh, I have, haven’t I?

Matthias #

How do I fix CGit’s display of a repository’s time of last update?

If you copied Git repositories into CGit at one point, you may have done so without keeping their mtimes intact. In this case, CGit will display an incorrect time of last update for the affected repositories, as it does not determine it based on the most recent Git commit but rather the time the default branch was last touched on the local file system.

By default, CGit uses the mtime of refs/heads/master (assuming that master is your default branch) to determine the time of last update, so this is how you can fix the time to be the same as the commit date of the last commit:

touch -c refs/heads/master -t $(date +"%Y%m%d%H%M.%S" --date=@$(git show -s --format=%ct HEAD))

A magical Docker container registry that generates ad-hoc containers based on Nixpkgs.

For example, you can run:

docker pull nixery.dev/shell/git/htop

And it automatically assembles a Docker image that contains Git and htop for you.

Matthias #

You can now subscribe to this web site via a weekly email newsletter. The content is the same as in the public news feed. Be warned: The code is beta quality. The very first issue of the newsletter is also going to contain all posts ever made up to this point.

β‡  previous page next page β‡’