Thursday 31 August 2023

News 23

Researchers craft a fully edible battery

energy demand and #CO2 emissions could have fallen by over 30% between 2010-2022 if vehicles had stayed the same size

It is possible to genetically engineer Streptococcus mutans, the dominant human mouth bacteria, to produce ethanol instead of cavity-causing lactic acid.


Estrogenic petrochemicals in the air

Nearly 50% of environmentalists abandoned Twitter ... implications for public communication

Nutrient decline “is going to leave our bodies with fewer of the components they need to mount defences against chronic diseases—it’s going to undercut the value of food as preventive medicine,” says David R. Montgomery

Florida man arrested after trying to cross Atlantic in hamster wheel vessel

socialism: surplus -> thing

an abstract language acquisition device

"What we need is a hub in Wairoa. Rail from Napier to Wairoa and lower amount of trucks on the rd." - M

The share of global output coming from economies classed as ‘mostly unfree’ (economies with a high degree of state ownership and control) is set to rise from 12 percent to 43 percent

someone worries about a leaked manuscript

a tiny bat flies past (13mm)

https://youtu.be/PCgqZ7xoCGE?t=702 airtight drawers pneumate

volcanic activity and its associated effects have been implicated in several mass extinction events throughout Earth's history ... collapse of the food chain. (do mushrooms grow in the dark from energy stored in the wood?)

"The voters are only offered the choice of selecting from among the candidates anointed by the campaign financiers." what about campaigning in some free hyperspace? separating that process from the wider social media marketplace might improve the mind & world.

48 tons of meteors hit the atmosphere every day

Many of the greatest scientists in the world spend nearly half their working time applying for funding

crystal frequency is multiplied to arrive at a microcontroller's clock speed. As crystal frequency gets higher, dimensions get smaller (especially thickness). Above roughly 50 MHz, AT-cut crystals become fragile, and manufacturers use third-overtone cuts for higher frequencies...some even use 5th-harmonic.
These "overtone" crystals are susceptible to rogue resonances...

Xtal stands for crystal

It will fall in place in the wake of the big dynamic we are creating - Herzog

4/5 animals on this planet are worms - Dr Oded Rechavi

There is energy that we don't have instrumentation to define yet, and there's a field [that changes] - Chris Voss

-46.01891015346305, 168.788996452345 rolling hay riverside
-46.062310837007225, 168.8281302709978 Gore area park camp

the Secure World Foundation only does Space Sustainability, mostly concerns space junk

over 95% of farm raised salmon are deaf

real task: ask everyone

the place the power is coming from is always female

holy public lounge systems

Cyber crime costs $6,000 billion a year, or six million million. Same as (a theoretical) economic loss from lead exposure lowering IQ, which also (a theoretical) caused 1/3rd of the cardiovascular deaths (more than smoking or cholesterol), which is 1/3rd of deaths.
https://medicalxpress.com/news/2023-09-poisoning-death-iq-loss-thought.html https://medicalxpress.com/news/2023-09-poisoning-death-iq-loss-thought.html 

scientists created the "DishBrain" – a semi-biological computer chip with some 800,000 human and mouse brain cells lab-grown into its electrodes which learnt to play pong in 5 minutes.

Scan the World (ongoing)
Methane leaks alone from Turkmenistan's two main fossil fuel fields caused more global heating in 2022 than the entire carbon emissions of the UK, satellite data has revealed.
We owe it to the planet to detect and police everything we can, ie forest-nibblers.

“All nations sold out by liars and cowards. Liars who want time for the future negatives to develop stall you with more lying offers while hot crab people mass war to extermination with the film in Rome. These reports reek of nova, sold out job, shit birth and death. Your planet has been invaded. You are dogs on all tape. The entire planet is being developed into terminal identity and complete surrender.” William S. Burroughs - Nova Express

Thursday 17 August 2023

unlock ssh key on login

I am on Debian 12, lightdm, Wayland, KDE Plasma


This goes in ~/.profile and unlocks this ssh key on login.

# keep an ssh agent running
export SSH_ASKPASS=ssh-askpass
if [ "$DISPLAY" == ':0' ]; then
if [ -z "$SSH_AUTH_SOCK" ]; then
eval `ssh-agent -s`
fi
ssh-add $HOME/.ssh/stylehouse
fi

At least I think so. Perhaps it's not being done... You can manually:
$ source .profile
It also sets $PATH to include ~/bin

wayland

Pointless Tour of Rude Noises from X-Expecting Programs




Skim the following:

You:

$ snap install code


$ code
mkdir: cannot create directory ‘’: No such file or directory


$ journalctl --since "5 minutes ago" -f
Aug 17 17:33:42 sa systemd[952]: Started snap.code.code.0c02d898-98e3-41fb-be73-0652e6546ffd.scope.
Aug 17 17:33:43 sa systemd-coredump[533237]: [🡕] Process 533216 (code) of user 1000 dumped core.
                                             
                                             Module libdatrie.so.1 without build-id.
                                             Module libgraphite2.so.3 without build-id.
                                             Module libwayland-client.so.0 without build-id.
                                             Module libwayland-egl.so.1 without build-id.
                                             Module libwayland-cursor.so.0 without build-id.
                                             Module libXcursor.so.1 without build-id.
                                             Module libXinerama.so.1 without build-id.
                                             Module libXdmcp.so.6 without build-id.
                                             Module libXau.so.6 without build-id.
                                             Module libwayland-server.so.0 without build-id.
                                             Module libXrender.so.1 without build-id.
                                             Module libxcb-render.so.0 without build-id.
                                             Module libxcb-shm.so.0 without build-id.
                                             Module libpng16.so.16 without build-id.
                                             Module libpixman-1.so.0 without build-id.
                                             Module libthai.so.0 without build-id.
                                             Module libfreetype.so.6 without build-id.
                                             Module libfontconfig.so.1 without build-id.
                                             Module libharfbuzz.so.0 without build-id.
                                             Module libpangoft2-1.0.so.0 without build-id.
                                             Module libfribidi.so.0 without build-id.
                                             Module libepoxy.so.0 without build-id.
                                             Module libgdk_pixbuf-2.0.so.0 without build-id.
                                             Module libcairo-gobject.so.2 without build-id.
                                             Module libXi.so.6 without build-id.
                                             Module libpangocairo-1.0.so.0 without build-id.
                                             Module libgdk-3.so.0 without build-id.
                                             Module libplds4.so without build-id.
                                             Module libplc4.so without build-id.
                                             Module libatspi.so.0 without build-id.
                                             Module libasound.so.2 without build-id.
                                             Module libxkbcommon.so.0 without build-id.
                                             Module libxcb.so.1 without build-id.
                                             Module libgbm.so.1 without build-id.
                                             Module libXrandr.so.2 without build-id.
                                             Module libXfixes.so.3 without build-id.
                                             Module libXext.so.6 without build-id.
                                             Module libXdamage.so.1 without build-id.
                                             Module libXcomposite.so.1 without build-id.
                                             Module libX11.so.6 without build-id.
                                             Module libcairo.so.2 without build-id.
                                             Module libpango-1.0.so.0 without build-id.
                                             Module libgtk-3.so.0 without build-id.
                                             Module libdrm.so.2 without build-id.
                                             Module libatk-bridge-2.0.so.0 without build-id.
                                             Module libatk-1.0.so.0 without build-id.
                                             Module libnspr4.so without build-id.
                                             Module libsmime3.so without build-id.
                                             Module libnssutil3.so without build-id.
                                             Module libnss3.so without build-id.
                                             Module libffmpeg.so without build-id.
                                             Stack trace of thread 533216:
                                             #0  0x00007feda278c00b raise (libc.so.6 + 0x4300b)
                                             #1  0x00007feda276b859 abort (libc.so.6 + 0x22859)
                                             #2  0x00007feda27d5fcc n/a (libc.so.6 + 0x8cfcc)
                                             #3  0x00007feda27d62e0 __libc_fatal (libc.so.6 + 0x8d2e0)
                                             #4  0x00007feda3dd4ae5 sem_post@@GLIBC_2.2.5 (libpthread.so.0 + 0x12ae5)
                                             #5  0x000055a143ef3a97 uv_sem_post (code + 0x1f8fa97)
                                             #6  0x000055a14404e187 n/a (code + 0x20ea187)
                                             #7  0x000055a1440857ee n/a (code + 0x21217ee)
                                             #8  0x000055a143fc7546 n/a (code + 0x2063546)
                                             #9  0x000055a143fc763e n/a (code + 0x206363e)
                                             #10 0x000055a145f7878b n/a (code + 0x401478b)
                                             #11 0x000055a145f788ae n/a (code + 0x40148ae)
                                             #12 0x000055a145f7cc61 n/a (code + 0x4018c61)
                                             #13 0x000055a145f7c6b8 n/a (code + 0x40186b8)
                                             #14 0x000055a145f783de n/a (code + 0x40143de)
                                             #15 0x000055a14419f4b4 n/a (code + 0x223b4b4)
                                             #16 0x000055a1441a08d1 n/a (code + 0x223c8d1)
                                             #17 0x000055a1441a0682 n/a (code + 0x223c682)
                                             #18 0x000055a14419d882 n/a (code + 0x2239882)
                                             #19 0x000055a14419dfb5 n/a (code + 0x2239fb5)
                                             #20 0x000055a143ef923d n/a (code + 0x1f9523d)
                                             #21 0x00007feda276d083 __libc_start_main (libc.so.6 + 0x24083)
                                             #22 0x000055a143b8e02a _start (code + 0x1c2a02a)
                                             
                                             Stack trace of thread 533220:
                                             #0  0x00007feda286846e epoll_wait (libc.so.6 + 0x11f46e)
                                             #1  0x000055a146f9ef44 n/a (code + 0x503af44)
                                             #2  0x000055a146f9cc6f n/a (code + 0x5038c6f)
                                             #3  0x000055a146e6f13b n/a (code + 0x4f0b13b)
                                             #4  0x000055a146e1dfdc n/a (code + 0x4eb9fdc)
                                             #5  0x000055a146de1588 n/a (code + 0x4e7d588)
                                             #6  0x000055a146e3cdb8 n/a (code + 0x4ed8db8)
                                             #7  0x000055a146e27a2d n/a (code + 0x4ec3a2d)
                                             #8  0x000055a146e3cf51 n/a (code + 0x4ed8f51)
                                             #9  0x000055a146e5fc24 n/a (code + 0x4efbc24)
                                             #10 0x00007feda3dca609 start_thread (libpthread.so.0 + 0x8609)
                                             #11 0x00007feda2868133 __clone (libc.so.6 + 0x11f133)
                                             
                                             Stack trace of thread 533217:
                                             #0  0x00007feda285b99f __poll (libc.so.6 + 0x11299f)
                                             #1  0x000055a14656ecf4 n/a (code + 0x460acf4)
                                             #2  0x000055a146e5fc24 n/a (code + 0x4efbc24)
                                             #3  0x00007feda3dca609 start_thread (libpthread.so.0 + 0x8609)
                                             #4  0x00007feda2868133 __clone (libc.so.6 + 0x11f133)
                                             
                                             Stack trace of thread 533223:
                                             #0  0x00007feda3dd17d1 pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf7d1)
                                             #1  0x000055a146e5b752 n/a (code + 0x4ef7752)
                                             #2  0x000055a146e5c198 n/a (code + 0x4ef8198)
                                             #3  0x000055a146e35c48 n/a (code + 0x4ed1c48)
                                             #4  0x000055a146e36762 n/a (code + 0x4ed2762)
                                             #5  0x000055a146e363cd n/a (code + 0x4ed23cd)
                                             #6  0x000055a146e362e1 n/a (code + 0x4ed22e1)
                                             #7  0x000055a146e5fc24 n/a (code + 0x4efbc24)
                                             #8  0x00007feda3dca609 start_thread (libpthread.so.0 + 0x8609)
                                             #9  0x00007feda2868133 __clone (libc.so.6 + 0x11f133)
                                             
                                             Stack trace of thread 533221:
                                             #0  0x00007feda3dd17d1 pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf7d1)
                                             #1  0x000055a146e5b752 n/a (code + 0x4ef7752)
                                             #2  0x000055a146e5c198 n/a (code + 0x4ef8198)
                                             #3  0x000055a146e35c48 n/a (code + 0x4ed1c48)
                                             #4  0x000055a146e36762 n/a (code + 0x4ed2762)
                                             #5  0x000055a146e363cd n/a (code + 0x4ed23cd)
                                             #6  0x000055a146e362e1 n/a (code + 0x4ed22e1)
                                             #7  0x000055a146e5fc24 n/a (code + 0x4efbc24)
                                             #8  0x00007feda3dca609 start_thread (libpthread.so.0 + 0x8609)
                                             #9  0x00007feda2868133 __clone (libc.so.6 + 0x11f133)
                                             
                                             Stack trace of thread 533222:
                                             #0  0x00007feda3dd17d1 pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf7d1)
                                             #1  0x000055a146e5b752 n/a (code + 0x4ef7752)
                                             #2  0x000055a146e5c198 n/a (code + 0x4ef8198)
                                             #3  0x000055a146e35c48 n/a (code + 0x4ed1c48)
                                             #4  0x000055a146e36557 n/a (code + 0x4ed2557)
                                             #5  0x000055a146e363cd n/a (code + 0x4ed23cd)
                                             #6  0x000055a146e362e1 n/a (code + 0x4ed22e1)
                                             #7  0x000055a146e5fc24 n/a (code + 0x4efbc24)
                                             #8  0x00007feda3dca609 start_thread (libpthread.so.0 + 0x8609)
                                             #9  0x00007feda2868133 __clone (libc.so.6 + 0x11f133)
                                             
                                             Stack trace of thread 533225:
                                             #0  0x00007feda3dd1376 pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf376)
                                             #1  0x000055a146e5b611 n/a (code + 0x4ef7611)
                                             #2  0x000055a146e5bdaa n/a (code + 0x4ef7daa)
                                             #3  0x000055a146dbf4bb n/a (code + 0x4e5b4bb)
                                             #4  0x000055a146e1dfdc n/a (code + 0x4eb9fdc)
                                             #5  0x000055a146de1588 n/a (code + 0x4e7d588)
                                             #6  0x000055a146e3cdb8 n/a (code + 0x4ed8db8)
                                             #7  0x000055a146e3cf51 n/a (code + 0x4ed8f51)
                                             #8  0x000055a146e5fc24 n/a (code + 0x4efbc24)
                                             #9  0x00007feda3dca609 start_thread (libpthread.so.0 + 0x8609)
                                             #10 0x00007feda2868133 __clone (libc.so.6 + 0x11f133)
                                             
                                             Stack trace of thread 533226:
                                             #0  0x00007feda286846e epoll_wait (libc.so.6 + 0x11f46e)
                                             #1  0x000055a143ef688b n/a (code + 0x1f9288b)
                                             #2  0x000055a143ee8320 uv_run (code + 0x1f84320)
                                             #3  0x000055a14aa58d42 n/a (code + 0x8af4d42)
                                             #4  0x00007feda3dca609 start_thread (libpthread.so.0 + 0x8609)
                                             #5  0x00007feda2868133 __clone (libc.so.6 + 0x11f133)
                                             
                                             Stack trace of thread 533230:
                                             #0  0x00007feda3dd4454 do_futex_wait.constprop.0 (libpthread.so.0 + 0x12454)
                                             #1  0x00007feda3dd4548 __new_sem_wait_slow.constprop.0 (libpthread.so.0 + 0x12548)
                                             #2  0x000055a143ef3b00 uv_sem_wait (code + 0x1f8fb00)
                                             #3  0x000055a14aacd5fd n/a (code + 0x8b695fd)
                                             #4  0x00007feda3dca609 start_thread (libpthread.so.0 + 0x8609)
                                             #5  0x00007feda2868133 __clone (libc.so.6 + 0x11f133)
                                             
                                             Stack trace of thread 533227:
                                             #0  0x00007feda3dd1376 pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf376)
                                             #1  0x000055a143ef3cc9 uv_cond_wait (code + 0x1f8fcc9)
                                             #2  0x000055a14aa56afe n/a (code + 0x8af2afe)
                                             #3  0x00007feda3dca609 start_thread (libpthread.so.0 + 0x8609)
                                             #4  0x00007feda2868133 __clone (libc.so.6 + 0x11f133)
                                             
                                             Stack trace of thread 533228:
                                             #0  0x00007feda3dd1376 pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf376)
                                             #1  0x000055a143ef3cc9 uv_cond_wait (code + 0x1f8fcc9)
                                             #2  0x000055a14aa56afe n/a (code + 0x8af2afe)
                                             #3  0x00007feda3dca609 start_thread (libpthread.so.0 + 0x8609)
                                             #4  0x00007feda2868133 __clone (libc.so.6 + 0x11f133)
                                             
                                             Stack trace of thread 533229:
                                             #0  0x00007feda3dd1376 pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0 + 0xf376)
                                             #1  0x000055a143ef3cc9 uv_cond_wait (code + 0x1f8fcc9)
                                             #2  0x000055a14aa56afe n/a (code + 0x8af2afe)
                                             #3  0x00007feda3dca609 start_thread (libpthread.so.0 + 0x8609)
                                             #4  0x00007feda2868133 __clone (libc.so.6 + 0x11f133)
                                             ELF object binary architecture: AMD x86-64
Aug 17 17:33:44 sa systemd[952]: Started drkonqi-coredump-launcher@14-533238-0.service - Launch DrKonqi for a systemd-coredump crash (PID 533238/UID 0).
Aug 17 17:33:44 sa drkonqi-coredump-launcher[533249]: Unable to find file for pid 533216 expected at "kcrash-metadata/533216.ini"
Aug 17 17:33:44 sa drkonqi-coredump-launcher[533249]: QFile::remove: Empty or null file name
Aug 17 17:33:44 sa drkonqi-coredump-launcher[533249]: Nothing handled the dump :O

With more options:

$ code --verbose mkdir: cannot create directory ‘’: No such file or directory [0817/174056.461744:ERROR:file_io_posix.cc(152)] open /home/s/.config/Code/Crashpad/pending/dd871f1c-38f7-47f3-9721-16d79d7800cc.lock: File exists (17) [0817/174056.461856:ERROR:file_io_posix.cc(152)] open /home/s/.config/Code/Crashpad/pending/1d86cd02-98d5-490c-bd2b-c74dd948b334.lock: File exists (17) [0817/174056.461868:ERROR:file_io_posix.cc(152)] open /home/s/.config/Code/Crashpad/pending/50f649f3-5ed5-4742-b676-09be3e8b595b.lock: File exists (17) [533830:0817/174056.463886:ERROR:ozone_platform_x11.cc(239)] Missing X server or $DISPLAY [533830:0817/174056.463927:ERROR:env.cc(255)] The platform failed to initialize. Exiting. The futex facility returned an unexpected error code. [0817/174056.483303:ERROR:process_memory_range.cc(75)] read out of range [0817/174056.483331:ERROR:process_memory_range.cc(75)] read out of range [0817/174056.483339:ERROR:process_memory_range.cc(75)] read out of range [0817/174056.483349:ERROR:process_memory_range.cc(75)] read out of range

Wayland! I mean X. The env var $DISPLAY is empty.

I thought xwayland would supply that. It seems to be running, via a kwin_... wrapper

Threads vaguely about this include https://www.reddit.com/r/swaywm/comments/n8dymo/comment/gxlmxem/

In there is recommended the code*.deb over the snap, so I installed that:

The mkdir error goes away, but

journalctl mostly same stack dump, some of the calls are serviced by different libraries, pointers change.

code --verbose same

Then it hits me:

Reboot

Fixes all. Hadn't been done since xwayland was installed - just sleeps. Now:
s@sa:~$ echo $DISPLAY
:0

It all works, even xeyes.

Future

To invert and wallpaper every window. Style takeovers. I tried in X but is 80s: https://github.com/stylehouse/zap-x11shader



Tuesday 15 August 2023

qemu <-> virbr0

One day,

I am setting up my dev environ on a fresh Ubuntu install, to flee a few problems:

  • ice1712 soundcard not accepting streams - programs would hang.
  • other problems? I can't remember, but it was being mysteriously sluggish one fateful night

But the VMs worked and now they don't. Let's fix this:

$ virsh start gox
error: Failed to start domain 'gox'
error: internal error: /usr/lib/qemu/qemu-bridge-helper --use-vnet --br=virbr0 --fd=32: failed to communicate with bridge helper: Transport endpoint is not connected
stderr=failed to parse default acl file `/etc/qemu/bridge.conf'

What's in /var/log/syslog

A hangout for important bits of info.

Tracker?

Aug 14 17:26:41 sa systemd[1971]: Starting Tracker metadata extractor...
Aug 14 17:27:11 sa tracker-extract[1187212]: Could not connect to filesystem miner endpoint: Timeout was reached
Aug 14 17:27:11 sa systemd[1971]: tracker-extract-3.service: Main process exited, code=exited, status=1/FAILURE
Aug 14 17:27:11 sa systemd[1971]: tracker-extract-3.service: Failed with result 'exit-code'.
Aug 14 17:27:11 sa systemd[1971]: Failed to start Tracker metadata extractor.
Aug 14 17:27:11 sa systemd[1971]: tracker-extract-3.service: Scheduled restart job, restart counter is at 2782.
Aug 14 17:27:11 sa systemd[1971]: Stopped Tracker metadata extractor.

This happens twice a minute! Apparently it's GNOME Tracker indexes content from your home directory automatically, so applications can provide instant search results when you need them

On that page is explained how to run it directly and verbosely:

env TRACKER_DEBUG=config,sparql /usr/libexec/tracker-miner-fs-3

Which says: Database version is too new: got version 27, but 26 is needed

So it must be because I kept my /home and /var, and I just went ubuntu 22.04 <- 22.10.

We could track down its Database

strace env TRACKER_DEBUG=config,sparql /usr/libexec/tracker-miner-fs-3

which spills:

newfstatat(AT_FDCWD, "/home/s/.cache/tracker3/files/meta.db", {st_mode=S_IFREG|0644, st_size=3801088, ...}, 0) = 0

which we could probably just delete (removing the offending state) and it would recreate fine.

We could simply dist-upgrade Ubuntu 20.04->.10

That might fix our original problemo too. (It didn't)

What else?

Aug 14 17:26:27 sa libvirtd[1187142]: libvirt version: 8.0.0, package: 1ubuntu7.6 (Rafael Lopez <rafael.lopez@canonical.com> Tue, 20 Jun 2023 11:54:15 +1000)

Aug 14 17:26:27 sa libvirtd[1187142]: hostname: sa

Aug 14 17:26:27 sa libvirtd[1187142]: Failed to open file '/sys/kernel/security/apparmor/profiles': Permission denied

Aug 14 17:26:27 sa libvirtd[1187142]: Failed to read AppArmor profiles list '/sys/kernel/security/apparmor/profiles': Permission denied

Aug 14 17:26:27 sa libvirtd[1187142]: Failed to open file '/sys/kernel/security/apparmor/profiles': Permission denied

Aug 14 17:26:27 sa libvirtd[1187142]: Failed to read AppArmor profiles list '/sys/kernel/security/apparmor/profiles': Permission denied

Aug 14 17:26:27 sa dbus-daemon[1997]: apparmor="DENIED" operation="dbus_method_call"  bus="session" path="/org/freedesktop/DBus" interface="org.freedesktop.DBus" 

member="Hello" mask="send" name="org.freedesktop.DBus" pid=1187142 label="libvirtd" peer_label="unconfined"

Aug 14 17:26:27 sa libvirtd[1187142]: internal error: Unable to get session bus connection: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender="(null)" (inactive) interface="org.freedesktop.DBus" member="Hello" error name="(unset)" requested_reply="0" destination="org.freedesktop.DBus" (bus)

Aug 14 17:26:27 sa libvirtd[1187142]: internal error: /usr/lib/qemu/qemu-bridge-helper --use-vnet --br=virbr0 --fd=32: failed to communicate with bridge helper: Transport endpoint is not connected#012stderr=failed to parse default acl file `/etc/qemu/bridge.conf'

That looks like a problem? Which the chat AIs want to fix some ridiculous way, allowing dbus via apparmour rules that don't parse.

I run out of creativity now.

debian-12.1.0

So I strike out for a new Linux. The "let's get out of here" of technical manoeuvres.
I've used it a bunch, it was always the best, yet somehow its installer (and a bunch of other distros') were freezing every time. A hectic game.
Who could possibly be professional with such things?

Friction 1

In the Installer,

After Partitioning, wherein I elected to reuse LVM: keeping /home, formatting / and /var

Which could be heuristiculated, since they are named bod-home, bod-root etc, and I'm sure it can tell they're ext4 already? You have to tell it each of these facts via the very 80s ncurses menu interface of the installer - or in the graphical installer, which seems to be the ncurses menu interface with some extra wallpapering on top, interesting...

Kaboom:

And in syslog at this time:

NOISES:

Aug 14 14:07:37 kernel: [  291.469969] Adding 10485756k swap on /dev/mapper/bod-swap_1.  Priority:-2 extents:1 across:10485756k SSFS

Aug 14 14:07:37 partman: mke2fs 1.47.0 (5-Feb-2023)

Aug 14 14:07:37 kernel: [  292.213441] EXT4-fs (dm-0): mounted filesystem with ordered data mode. Quota mode: none.

Aug 14 14:07:37 kernel: [  292.225594] EXT4-fs (dm-2): recovery complete

Aug 14 14:07:37 kernel: [  292.226074] EXT4-fs (dm-2): mounted filesystem with ordered data mode. Quota mode: none.

Aug 14 14:07:37 kernel: [  292.247420] EXT4-fs (dm-1): recovery complete

Aug 14 14:07:37 kernel: [  292.248962] EXT4-fs (dm-1): mounted filesystem with ordered data mode. Quota mode: none.

Aug 14 14:07:38 apt-install: Queueing package e2fsprogs for later installation

Aug 14 14:07:38 apt-install: Queueing package lvm2 for later installation

Aug 14 14:07:38 main-menu[2269]: (process:6723): depmod: WARNING: could not open modules.builtin.modinfo at /lib/modules/6.1.0-10-amd64: No such file or directory

Aug 14 14:07:38 main-menu[2269]: (process:6723): mount: mounting none on /sys/firmware/efi/efivars failed: No such file or directory

Aug 14 14:07:38 main-menu[2269]: (process:6723): File descriptor 3 (pipe:[496]) leaked on pvs invocation. Parent PID 16698: /bin/sh

Aug 14 14:07:38 main-menu[2269]: (process:6723): File descriptor 4 (/dev/tty1) leaked on pvs invocation. Parent PID 16698: /bin/sh

Aug 14 14:07:38 main-menu[2269]: (process:6723): File descriptor 5 (/dev/tty1) leaked on pvs invocation. Parent PID 16698: /bin/sh

Aug 14 14:07:38 main-menu[2269]: (process:6723): File descriptor 3 (pipe:[496]) leaked on pvs invocation. Parent PID 16752: /bin/sh

Aug 14 14:07:38 main-menu[2269]: (process:6723): File descriptor 4 (/dev/tty1) leaked on pvs invocation. Parent PID 16752: /bin/sh

Aug 14 14:07:38 main-menu[2269]: (process:6723): File descriptor 5 (/dev/tty1) leaked on pvs invocation. Parent PID 16752: /bin/sh

Aug 14 14:07:38 main-menu[2269]: INFO: Falling back to the package description for brltty-udeb

Aug 14 14:07:38 depthcharge-tools-installer: Not installing to non-ChromeOS board.

Aug 14 14:07:38 main-menu[2269]: INFO: Falling back to the package description for brltty-udeb

Aug 14 14:07:38 main-menu[2269]: INFO: Menu item 'bootstrap-base' selected

MAINLY:

Aug 14 14:07:38 debootstrap: /usr/sbin/debootstrap --components=main --debian-installer --resolve-deps --no-check-gpg bookworm /target file:///cdrom/

Aug 14 14:07:43 debootstrap: dpkg: warning: parsing file '/var/lib/dpkg/status' near line 5 package 'dpkg':

Aug 14 14:07:43 debootstrap:  missing 'Description' field

Aug 14 14:07:43 debootstrap: dpkg: warning: parsing file '/var/lib/dpkg/status' near line 5 package 'dpkg':

Aug 14 14:07:43 debootstrap:  missing 'Architecture' field

Aug 14 14:07:43 debootstrap: dpkg: unrecoverable fatal error, aborting:

Aug 14 14:07:43 debootstrap:  unknown system user 'geoclue' in statoverride file; the system user got removed

Aug 14 14:07:43 debootstrap: before the override, which is most probably a packaging bug, to recover you

Aug 14 14:07:43 debootstrap: can remove the override manually with dpkg-statoverride

Aug 14 14:08:11 init: starting pid 539, tty '/dev/tty2': '-/bin/sh'

That last line is me consoling in to copy these logs off to usb drives.

So much scary noise! Eventually fatal. Hmm.

Apparently geoclue can go missing:

https://unix.stackexchange.com/questions/160486/error-message-unknown-user-geoclue-in-statoverride-file

Friction 2

After lolling about in Kali Linux for a time, finding helpful people in #debian, including myself who realised unplugging all the other drives in the system during installation might keep entropy at bay.

However! One must boot into the installer in BIOS boot mode, not UEFI boot mode, or something apparently goes wrong because of that later.

As far as I know UEFI is a new bootloader thingamajig for showing you your motherboard manufacturer's logo after Linux has started, as well as before.

Success!

We are now in KDE Plasma, that being the only way to run wayland:

$ echo $XDG_SESSION_TYPE wayland

The others are in progress eg XFCE. Gnome apparently disables wayland on nvidia, though during my time with my "fresh Ubuntu install" (was that Gnome? or MATE?) just then I found I had to use wayland to avoid:
an eating-all-the-cpu freeze
thanks real-time process irq/37-nvidia (or something)
(the mouse lags for a while but nothing can be done) 
after 1m-15hr 
(apparently set off by the GPU changing frequencies of its memory|processor at the same time?
It was basically this, but a huge messy bug, with loads of smart people unable to really get into their science (or something) 
Praise Shiva!

Bob Jones

He is a long time property developer/investor. Founded NZ's third most popular political party in the early 1980s which got no representation, but split the vote enough under FPP that it resulted in the then-micro-managing-National-government being booted out and replaced by a Labour Party which turned out to be harbouring several radical right wingers in its upper ranks who then radically transformed much of NZ's economy by also arranged to cheaply sell off much of NZ's public infrastructure, like railways, to their strip mining friends, and was probably very beneficial for Bob. Some time after the 1984 election he punched a reporter.

He also wrote a book in the late 1970s which, 10 years later after the stockmarket crash, allegedly had lots to do with many baby boomers choosing to buy up all of NZ's residential property, invest in nothing else, and ultimately create NZ's housing crisis.

To the VMs!

Here we set up a block device backed by a file created by $ cp /dev/sda /somewhere

$ sudo losetup -P /dev/loop22 /media/s/be3654b3-8643-4a6e-9477-68327cc11ff5/sa-kinetic.disk

Notice it contains LVM physical volumes, activate it, mount, copy.

$ sudo pvscan [sudo] password for s:    PV /dev/sda5       VG bod             lvm2 [<111.31 GiB / 3.97 GiB free]  PV /dev/loop22p5   VG bodkinetic      lvm2 [<111.31 GiB / 3.97 GiB free]  Total: 2 [<222.62 GiB] / in use: 2 [<222.62 GiB] / in no VG: 0 [0   ]

$ sudo vgchange bodkinetic -a y 4 logical volume(s) in volume group "bodkinetic" now active

$ sudo mount /dev/mapper/bodkinetic-var spool/ $ sudo cp virt/g-clone.qcow2 /var/virt/

I blew away /var for tidiness, so the one VM that lives there returns. The others are on slower|larger drives.

Side note, cloned LVM systems need to change their UUIDs, which I have glossed over here. You may need to use a VM to separate it (the .disk image) from its real self, so it can become active without a UUID clash, to then change its UUID:

You only have to change the pv uuid, not the lvs, so these dupes are fine:

s@sa:~/src/letz$ sudo lvs -v
[sudo] password for s:  
 LV     VG         #Seg Attr       LSize   Maj Min KMaj KMin Pool Origin Data%  Meta%  Move Cpy%Sync Log Convert LV UUID                                LProfile
 home   bod           2 -wi-ao---- <45.52g  -1  -1  254    2                                                     eII0gx-zsq3-0GRs-lp8U-0x9S-vmkf-aUZqfG          
 ...
 home   bodkinetic    2 -wi-a----- <45.52g  -1  -1  254    8                                                     eII0gx-zsq3-0GRs-lp8U-0x9S-vmkf-aUZqfG          
 ...     

Anyway,

error persists:

$ virsh net-start default
Error starting network 'default': error creating bridge interface virbr0: Operation not permitted

I appear to have no virbr0 interface yet...

https://wiki.debian.org/QEMU#Networking




Look at all these commands you oughtta run! This is asking for trouble. Once you break your networking, how will you google for help?

While pitching camp for a multi-day linux network research and troubleshooting festival:

root session bridge activation trick

A simple solution I stumble upon: activate the bridge from sudo virt-manager, since root tends to avoid Operation not permitted!

Then I can go back to user-mode virt-manager or virsh start gox and it gets on with virbr0 fine!

Curiously, this can still happen, but is apparently redundant.

$ virsh net-start default
Error starting network 'default': error creating bridge interface virbr0: Operation not permitted

Network Nirvanna

Why not Usermode Networking, the fabled easiness? I can't remember - perhaps my wireless card was the matter - obviously it wouldn't have been a clear and coherent time for me.

The way to get there is:

Don't configure anything but your VMs.

You must, on a brand new Linux install, observe this ceremony:

Have this error:

$ virsh start gox
error: Failed to start domain 'gox'
error: internal error: /usr/lib/qemu/qemu-bridge-helper --use-vnet --br=virbr0 --fd=32: failed to communicate with bridge helper: Transport endpoint is not connected
stderr=failed to parse default acl file `/etc/qemu/bridge.conf'

 Do something root-needy to activate virbr0:

$ sudo virsh net-start default

 (my experience of this was in virt-manager doing similar acts which should be doing this under the hood, please let me know if it really works)

Before QEMU/KVM User sessions can do bridge networking. Perhaps they need the same device name (virbr0) as a root session that has activated, etc.

Of course there's one other thing too: (90% certainty)

/etc/qemu/bridge.conf should contain: allow virbr0

And one more thing: (98% certainty)

$ sudo chmod u+s /usr/lib/qemu/qemu-bridge-helper

In other lives, and in desperation leading up to finding the root session bridge activation trick, these were needed.

Three situations have this one error, so there must be some missing detection of the reason for a bridge to fail setup there (leading up to being a Transport endpoint), 

And here's some networking action in the VM, note that upnp doesn't work:

s@g:~$ upnpc -l
upnpc : miniupnpc library test client, version 2.2.1.
(c) 2005-2020 Thomas Bernard.
Go to http://miniupnp.free.fr/ or https://miniupnp.tuxfamily.org/
for more information.
No IGD UPnP Device found on the network !
s@g:~$ ping 1.1.1.1
PING 1.1.1.1 (1.1.1.1) 56(84) bytes of data.
64 bytes from 1.1.1.1: icmp_seq=1 ttl=59 time=17.5 ms
64 bytes from 1.1.1.1: icmp_seq=2 ttl=59 time=13.9 ms
^C

Now we can run flocks of programs all over the place:

# nico
ssh n
sudo mount -t 9p -o trans=virtio allmusic allmusic/
# input: share, is a qemu filesystem%%type="mount"/source,target,readonly
# note the readonly
cd ~
sshfs n:Downloads/ Mail
# output: to sort
ssh -X n
cd Downloads/
# it sometimes drops files where it cd?
nicotine
# a python window
upnpc -r 2234 TCP
ssh -L 0.0.0.0:2234:n:2234 n
# let peer in

for example, using my bunch-of-programs supervisor, Zap

HAPPY BIRTHDAY DEBIAN! 30 YEARS!

What's in /var/log/syslog now

Nothing anymore: apparently I should invoke "journalctl", which will output the logs in the identical text-based format the syslog files in /var/log used to be.

PulseEffects

Install this, get into it and enable "Auto Gain" with target=-21dB.
This will make movie dialogue the same as the loud bits!
It'll do any music that's playing too.
I "Reverb" and "Excite", "Pitch" even.

Peter Maiden

Lovely.