Show newer

default settings close -> , opening lid and pressing button to gives an prompt, unlocking gives (but everything is running fine).

to get back into the session: switch to a VT with Ctrl-Alt-F1, log in, then run

> sleep 10 && DISPLAY=:0.0 xrandr --auto

and quickly switch back to X with Ctrl-Alt-F7. Then display should be restored.

Worth adjusting the other options too (not just memory) or it takes a really long time to unlock (30seconds). Wondering whether encryption is even useful at all for my use case...

Show thread

Running my hybrid iso to live-usb creation script on my netbook (1GB RAM) creates a USB key that can boot and decrypt the overlay partition just fine.

Running the same script on powerful desktop to create an image file to dd to USB and the netbook can't decrypt the overlay due to not enough memory.

Explanation and potential fixes found here:

WIth QEMU 6.1 I have a different experience to QEMU 5: the sound bridge between QEMU and host works much better in 6.1, but I get xruns inside the VM.

The OS in the VM works fine on real hardware (testing with a netbook with Atom processor and 1GB RAM) with only occasional xruns....

Show thread

6.1 from to

apt source -t unstable qemu
cd qemu-6.1+dfsg
sudo apt build-dep -t bullseye qemu
sudo apt install python3-sphinx-rtd-theme libfuse3-dev
debuild -i -us -uc -b

IMPORTANT: small patch needed in `debian/rules` to ignore an error that occurs with PipeWire/JACK stuff:

- dh_shlibdeps -a
+ dh_shlibdeps -a -- --ignore-missing-info

Otherwise it'll fail near the end of the build. Rebuilding starts again from scratch so you'll have to wait all over.

Wait ~15mins (using a 16-thread desktop processor).

Install the resulting QEMU debs with `sudo dpkg -i`: eg

apt search qemu |
grep ^qemu.*installed |
sed "s|/.*|_6.1+dfsg-5_*.deb|" |
xargs echo sudo dpkg -i
then copy-and-paste the output into the shell.

I had to `sudo apt remove libvirt0` to avoid dependency issues before installing the fresh QEMU debs.

Hope it fixes my sound issues...

Show thread

$ apt-get source qemu
Reading package lists... Done
E: Unable to find a source package for qemu

Problem was actually that there were multiple deb-src lines in /etc/apt/sources.list and it didn't know which to choose.

Solution: add `-t unstable` to the command to choose the latest version.

I'm really struggling to get out of in any reasonable quality - anyone got any tips?

I replaced oss-compat (/dev/dsp via ALSA) with osspd and osspd-pulseaudio (/dev/dsp via PulseAudio) and as I'm running Pipewire I can route OSS apps in qjackctl graph window like the other sound APIs. Works with more applications than padsp (from pulseaudio-utils).

$ sudo apt install osspd
$ sudo nano /etc/udev/rules.d/80-osspd.rules
KERNEL=="dsp", GROUP="audio"
KERNEL=="mixer", GROUP="audio"
KERNEL=="adsp", GROUP="audio"
$ sudo service osspd restart
$ cat ~/.xsession-errors >/dev/dsp

woe, can't search issue trackers for projects hosted on without an account:

> You must sign in to search for specific terms.

don't think I'm going to bother, and try my luck with ddg site search...

I may be giving a workshop on livecoding audio in C early next year, but setting everything up on ~10 different Linuxes would take all the time. It doesn't work on Windows (probably no technical reason why something similar couldn't be constructed) nor macOS (likewise) but as I don't use them I'm not motivated to do the work.

So I'm thinking of making a live USB distro using debian-live live-build etc, but now I'm worried that modern "secure boot" nonsense on PCs will prevent booting from USB and we'll be stuck anyway. Remembering the immense waste of time spent trying and failing to get Puredyne to boot on stock Apple hardware more than a decade ago....

Anyway, this guide for adding persistence to the live USB (so you can save your work and configuration changes between reboots in an (optionally encrypted) overlay partition) is super nice:

Had some issues with scripting fdisk, some timing race condition prevents the kernel rereading the partition table - unplugging and replugging the USB device fixes it.

more udev rules that might be necessary to get it to work properly (seems the AC rule doesn't work reliably alone):

SUBSYSTEM=="power_supply", ENV{POWER_SUPPLY_NAME}=="BAT0", ENV{POWER_SUPPLY_STATUS}=="Discharging", RUN+="/usr/local/bin/ 0"
SUBSYSTEM=="power_supply", ENV{POWER_SUPPLY_NAME}=="BAT0", ENV{POWER_SUPPLY_STATUS}!="Discharging", RUN+="/usr/local/bin/ 1"

Show thread

how to when is and running on

useful for media art installations where you don't want the laptop battery to be destroyed by excessive power consumption if there is a long power cut

$ cat /usr/local/bin/
XUSER="$(who | grep -F "(:0)" | cut -d\ -f 1)"
if [ "x${XUSER}" = "x${PSUUSER}" ]
if [ "x${ACTIVE}" = "x0" ]
# power off if power is not restored
echo "$(date --iso=s) power lost" >> /var/log/psu-hotplug.log
touch /var/run/psu-hotplug.shutdown
sleep 30
if [ -f /var/run/psu-hotplug.shutdown ]
echo "$(date --iso=s) shutting down" >> /var/log/psu-hotplug.log
shutdown now -h
echo "$(date --iso=s) not shutting down" >> /var/log/psu-hotplug.log
echo "$(date --iso=s) power restored" >> /var/log/psu-hotplug.log
rm -f /var/run/psu-hotplug.shutdown
$ cat /etc/udev/rules.d/50-psu-hotplug.rules
SUBSYSTEM=="power_supply", ENV{POWER_SUPPLY_ONLINE}!="0", RUN+="/usr/local/bin/ 1"
SUBSYSTEM=="power_supply", ENV{POWER_SUPPLY_NAME}=="AC", ENV{POWER_SUPPLY_ONLINE}!="0", RUN+="/usr/local/bin/ 1"

doesn't seem to work if you login manually in lightdm, but if you wait for autologin timeout it seems to function. strange..

Show thread

how to in (and possibly other )

$ cat blank.xbm
blank_width 1
blank_height 1
blank_x_hot 0
blank_y_hot 0
static unsigned char blank_bits[] = {
$ xsetroot -cursor blank.xbm blank.xbm

useful for media art installation. my previous hack was warping the mouse cursor to bottom right corner of the screen and hoping the single pixel visible was either transparent or matching the background; and that was obviously not robust to mouse movements afterwards...

Unfortunately after upgrade, sending "create" message to gemwin object crashes with segmentation fault in libstdc++. Hoping upgrade to Bullseye will fix this...

Show thread

After upgrade of old laptop to Debian Buster from Stretch, boot would spend a minute printing

> blkid: -t needs NAME=value pair

Followed by

> Gave up waiting for suspend/resume device

Solution turned out to be

swapoff /dev/sda2
mkswap -L espresso-swap /dev/sda2
swapon -a
update-initramfs -u -k all

Which now prints the UUID for the swap partition (previously the UUID was blank).

small issue: I have some "speech dispatcher" things that show up in qjackctl graph that autoconnect to my output device, when they are connected it blocks/pauses other programs (e.g. firefox) connected to the output device. disconnecting the speech dispatcher allows sound to be heard. possibly a resampling thing, maybe speech is at 22kHz and firefox is at 44 or 48kHz? using debian bullseye

Found a solvent that worked nicely for removing the sticky remains of label glue residue.

Have 12 floppy disks all installed with my software and clean and ready for new labels.

Getting labels seems to be harder than expected, the required size is about 70mm square with rounded corners. Most custom print jobs are minimum 200 stickers and I don't need anywhere near that many, so I'm thinking of getting plain white labels (also minimum pack size 200...) designed for inkjet/laser printing at home, and doing potato prints with acrylic paint, with finer details by hand.

Show thread

This is more like what I had imagined - just needed some settings adjusted, and an extra thing for preferring to continue in the same direction.

Show thread

an experiment with agent simulation (each leaves a trail when it goes from A to B, and prefers using existing trails even if the route is a bit longer)

didn't quite turn out as I had expected / hoped (was going for "emergent city plan")

Show older

Welcome to, an instance for discussions around cultural freedom, experimental, new media art, net and computational culture, and things like that.