I don't actually have time today to work on any side projects, but I thought I'd run through the basic setup steps for MonoGame aaaand
./bin/Debug/net6.0/MyGame
bash: ./bin/Debug/net6.0/MyGame: cannot execute: required file not found
... which required file ._. ???
I think this sort of thing means it tried to dynamically link something and failed. I run into this whenever I try to run loose builds of Linux games on #NixOS, but idk what to do about it.
@aeva@duckonaut You can safely ignore them and yeet everything into environment.systemPackages. I've been doing that for years and the high court of NixOS hasn't been able to punish me yet.
@aeva@anselmschueler@duckonaut It may seem so but that is really not the case. You see a way to install packages is just a morphism from packages to system configurations of of which there is in fact an uncountable number!
5️⃣ Here's the 5th installment of my series of posts highlighting key new features of the upcoming v256 release of systemd.
I am pretty sure all of you are well aware of the venerable "sudo" tool that is a key component of most Linux distributions since a long time. At the surface it's a tool that allows an unprivileged user to acquire privileges temporarily, from within their existing login sessions, for just one command, or maybe for a subshell.
@fasterthanlime@zarel It's relatively new, when I got a contabo VPS ~4 years ago the awful web interface was still the only way to do it, and you got the root password in plain text via mail :D
I'm still happily using them but I'm a trash gremlin with basically no standards, and nobody else will give me a VPS with enough RAM for a minecraft server this cheap.
1️⃣ So let's try something new. As we are closing in on tagging systemd v256-rc1, let's see if I manage to post a brief mastodon item about major new features of the upcoming release, every few days until the final release of v256. I figure not everyone reads NEWS files, even if curious. Hence let's start today with the 1st post: the new .v/ directories. You know those .d/ directories that are quite popular in low-level Linux packages these days? While .d/ dirs never have been formalized properly…
In bash, writing ${var?} instead of just ${var} or $var means if var isn't defined then bash will throw an error and not execute your command, instead of expanding it to "" and carrying on.
mv file1 file2 $subdir # oops, I overwrote file2
mv file1 file2 ${subdir?} # error message instead of disaster
My favourite use of this is for example commands in documentation, with placeholders for the user to fill in. Then it's OK if a user accidentally copy-pastes it without filling them in!
Example: if foo | grep -q "bar"; then ... is something you might like to use. The -q makes grep quiet, i.e. it won't print matches. However! It will also make grep exit (successfully) on the first match. That by itself is fine, but it also closes grep's stdin, so if foo checks for errors, it might fail now. And with pipefail, your if is now never taken!
@fasterthanlime And I want back all the time I spent waiting for autotools to figure out whether the C compiler supports identifiers longer than 5 characters and whether stdio.h exists.
@aeva@saethlin@mjk In this case, not the entire behavior is left to the vendor - it's bounded. Real UB can mean anything, including memory corruption, arbitrary code execution, 10.0 CVE etc. In the float case the behavior is still constrained to produce a valid value of the type and no other adverse effects.