mfenniak

joined 1 year ago
[โ€“] mfenniak@beehaw.org 4 points 2 weeks ago

I'm not sure it makes much sense that gitea is a bit too heavy, but forgejo (a fork of gitea) runs perfectly. But forgejo appears to have more developments momentum as a project and so you probably landed on the right choice anyway. ๐Ÿ™‚

[โ€“] mfenniak@beehaw.org 4 points 2 months ago (1 children)

Uh, Austrian, not Australian.

[โ€“] mfenniak@beehaw.org 72 points 10 months ago* (last edited 10 months ago) (4 children)

Home Assistant invested quite a bit into the technology to create a FOSS voice assistant over the past year. It still needs quite a bit of work, but the foundation is there; it supports wake words ("Hey ..."), speech-to-text to hear your command, interpretation and command processing, and text-to-speech to return results.

The downsides are that it's still quite technical to set up primarily due to the lack of commercially available hardware, and the command library is fairly small at this point.

With some of this foundational work out of the way, I expect Home Assistant to move forward quickly to improve, and other projects can work off the same pieces if they desire to as well.

Here's their year-end post about it: https://www.home-assistant.io/blog/2023/12/13/year-of-the-voice-chapter-5/

[โ€“] mfenniak@beehaw.org 3 points 1 year ago (2 children)

Ultimately this is the fault of the poor democratic system implemented in the US. A truly progressive option can't be formed because it would split the support of the Democratic Party, leaving the Republicans to take everything in the first-past-the-post voting system. In the absence of electoral reform, or a progressive takeover within the Democrats, or maybe a gigantic scandal that shakes up ether party creating new opportunities... the best option for a progressive voters seems to be to support these idiots rather than letting those idiots in. And the best option for the Democrats as a party that wants power is to cater to the middle and be inoffensive, driving this entire thing into a loop where little of value gets done.

[โ€“] mfenniak@beehaw.org 5 points 1 year ago

Hm... I think if they fucked up and were negligent, this is a reasonable slap on the wrist judgement. If they fucked up, and then were knowledgeable in a malicious cover-up of their fuck up, this seems like a light punishment. The evidence seems to weigh towards the second, but the punishment gives them the benefit of the doubt on that.

[โ€“] mfenniak@beehaw.org 2 points 1 year ago (2 children)

One of the concerns I have with the Prime Directive is that it is intended to avoid a "slippery slope" problem, and so it is a very black-and-white rule. Starfleet can't protect a developing civilization from a catastrophic planet-ending disaster... and the core reason is that "interference" can be a bad thing, so we won't ever do it.

There are clearly situations where interference in another civilization would be immoral. There are also clearly situations where it would be moral. We can't possibly figure out those situations and enshrine them into law? We do better today! Homicide is illegal, but there are exceptions like self-defense, and there are mitigating circumstances like causing an accidental death.

The Prime Directive should be much more complex.

Might not make for great TV, though.

 

I came across these published supplements recently as they one was listed as a winner of the 2023 LGBTQ Tabletop Game Award. They have a series of adventures, as well as pregen characters, and some additional subclasses, monsters, backgrounds, and items.

I'm sure this won't be everyone's jam, but I've been reviewing this content and I'm really intrigued with the settings and culture that it would bring to the right campaign and players. Thought it would be worth a share!

[โ€“] mfenniak@beehaw.org 1 points 1 year ago

Yeah... yeah, we could. Maybe we should. A couple hesitations -- (a) it makes merges and branches-of-branches difficult, and, (b) on a big PR you'd lose the ability to bisect into it. (b) is probably not a blocker because you'd have to have universally good commit hygiene to get the ability to do a rare thing -- cost vs. value doesn't align well. But (a) is a bit more of a headache.

6
submitted 1 year ago* (last edited 1 year ago) by mfenniak@beehaw.org to c/linux@lemmy.ml
 

Recently my kernel started to panic every time I awoke my monitors from sleep. This seemed to be a regression; it worked one day, then I received a kernel upgrade from upstream, and the next time I was operating my machine it would crash when I came back to it.

After being annoyed for a bit, I realized this was a great time to learn how to bisect the git kernel, find the problem, and either report it upstream, or, patch it out of my kernel! I thought this would be useful to someone else in the future, so here we are.

Step #1: Clone the Kernel; I grabbed Linus' tree from https://github.com/torvalds/linux with git clone git@github.com:torvalds/linux.git

Step #2: Start a bisect.

If you're not familiar with a bisect, it's a process by which you tell git, "this commit was fine", and "this commit was broken", and it will help you test the commits in-between to find the one that introduced the problem.

You start this by running git bisect start, and then you provide a tag or commit ID for the good and the bad kernel with git bisect good ... and git bisect bad ....

I knew my issue didn't occur on the 5.15 kernel series, but did start with my NixOS upgrade to 6.1. But I didn't know precisely where, so I aimed a little broader... I figured an extra test or two would be better than missing the problem. ๐Ÿ˜ฌ

git bisect start
git bisect good v5.15
git bisect bad master 

Step #3: Replace your kernel with that version

In an ideal world, I would have been able to test this in a VM. But it was a graphics problem with my video card and connected monitors, so I went straight for testing this on my desktop to ensure it was easy to reproduce and accurate.

Testing a mid-release kernel with NixOS is pretty easy! All you have to do is override your kernel package, and NixOS will handle building it for you... here's an example from my bisect:

boot.kernelPackages = pkgs.linuxPackagesFor (pkgs.linux_6_2.override { # (#4) make sure this matches the major version of the kernel as well
  argsOverride = rec {
    src = pkgs.fetchFromGitHub {
      owner = "torvalds";
      repo = "linux";
      # (#1) -> put the bisect revision here
      rev = "7484a5bc153e81a1740c06ce037fd55b7638335c";
      # (#2) -> clear the sha; run a build, get the sha, populate the sha
      sha256 = "sha256-nr7CbJO6kQiJHJIh7vypDjmUJ5LA9v9VDz6ayzBh7nI=";
    };
    dontStrip = true;
    # (#3) `head Makefile` from the kernel and put the right version numbers here
    version = "6.2.0";
    modDirVersion = "6.2.0-rc2";
    # (#4) `nixos-rebuild boot`, reboot, test.
  };
});

Getting this defined requires a couple intermediate steps... Step #3.1 -- put the version that git bisect asked me to test in (#1) Step #3.2 -- clear out sha256 Step #3.3 -- run a nixos-rebuild boot Step #3.4 -- grab the sha256 and put it into the sha256 field (#2) Step #3.5 -- make sure the major version matches at (#3) and (#4)

Then run nixos-rebuild boot.

Step #4: Test!

Reboot into the new kernel, and test whatever is broken. For me I was able to set up a simple test protocol: xset dpms force off to blank my screens, wait 30 seconds, and then wake them. If my kernel panicked then it was a fail.

Step #5: Repeat the bisect

Go into the linux source tree and run git bisect good or git bisect bad depending on whether the test succeeded. Return to step #3.

Step #6: Revert it!

For my case, I eventually found a single commit that introduced the problem, and I was able to revert it from my local kernel. This involves leaving a kernel patch in my NixOS config like this:

  boot.kernelPatches = [
    { patch = ./revert-bb2ff6c27b.patch; name = "revert-bb2ff6c27b"; }
  ];

This probably isn't the greatest long-term solution, but it gets my desktop stable and I'm happy with that for now.

Profit!

[โ€“] mfenniak@beehaw.org 1 points 1 year ago

I loved Everspace 2. I think if you enjoyed the gameplay of the first one, it's a good bet you'll enjoy it.

[โ€“] mfenniak@beehaw.org 1 points 1 year ago

I think that the niche communities of reddit work well because of the huge number of people there to find enough niche participants. Lemmy isn't at that point yet.