November 2023 Bits#

November 4 - BatteryPi DietPi Setup#

Doing another DietPi install using https://dietpi.com/downloads/images/DietPi_RPi-ARMv8-Bookworm.7z

When adding a user, we will use:

useradd --create-home --user-group --shell /usr/bin/bash --groups sudo,tty,dialout,video lavender

SolarThing setup#

When installing docker using DietPi software, you also need to install docker compose.

Random software to install:

sudo apt install -y net-tools vim iputils-tracepath traceroute curl wget git netcat-openbsd tmux tree man-db file xsel htop gpg-agent rsync pwgen less

solarthing drivers

# More info about tiny-initramfs here: https://github.com/MichaIng/DietPi/issues/3055
sudo apt install dkms raspberrypi-kernel-headers tiny-initramfs
#sudo apt install dkms raspberrypi-kernel-headers initramfs-tools
git clone "https://github.com/kasbert/epsolar-tracer"
cd epsolar-tracer/xr_usb_serial_common-1a
cp -a ../xr_usb_serial_common-1a /usr/src/
dkms add -m xr_usb_serial_common -v 1a
dkms build -m xr_usb_serial_common -v 1a
dkms install -m xr_usb_serial_common -v 1a
echo blacklist cdc-acm > /etc/modprobe.d/blacklist-cdc-acm.conf
#update-initramfs -u
update-tirfs
# Now reboot!!!

For 1-wire temperature sensors we used https://solarthing.readthedocs.io/en/latest/config/file/base-json/request/w1-temperature.html

Other Software Setup#

Sadly, homebrew is not supported on ARM processors, and I don’t want to try to install it unofficially. That means that installing mosh will be slightly a PITA, but oh well.

I do want to get tailspin installed, so I’ll use cargo for that.

curl https://sh.rustup.rs -sSf | sh
# Choose a default install
source "$HOME/.cargo/env"
sudo apt-get install -y build-essential
cargo install tailspin
# Note that this takes a looong time to run

November 5 - Tailspin on nasplex#

I decided to install homebrew locally, like so:

git clone https://github.com/Homebrew/brew homebrew
eval "$(homebrew/bin/brew shellenv)"
brew update --force --quiet
chmod -R go-w "$(brew --prefix)/share/zsh"

sudo apt-get install -y build-essential
brew install tailspin

Now I have a brew install that is completely local to my user. Tailspin seems to be a bit outdated (2.0.0 released today), but I’m sure it will update soon enough.

November 26 - New NVIDIA Drivers Broke Brightness Control#

As shown here: https://unix.stackexchange.com/q/761922/591317 and https://github.com/NVIDIA/open-gpu-kernel-modules/issues/573 and https://github.com/pop-os/nvidia-graphics-drivers/issues/195 Pop!_OS has shipped a buggy NVIDIA driver so now I must either upgrade or downgrade so that I can have brightness control on my laptop’s built-in monitor.

Trying and removing Graphics Drivers PPA#

This PPA here: https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa has some graphics drivers available. Usually its the same version as what Pop!_OS’s repositories have, but for the time being this is worth checking out, as I have already autoremoved the old NVIDIA drivers that were working perfectly.

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
apt list -a nvidia-driver-545
# Above command gives me the same 545.29.02 version
# No point in keeping the PPA around:
sudo add-apt-repository -r ppa:graphics-drivers/ppa
sudo apt update

Gnome Software Additional Drivers#

sudo apt install gnome-software

Now launch “Software”, click on the 3 bars in the top right. Go to “Additional Drivers”. Supposedly I’m supposed to be able to downgrade drivers here, but that doesn’t seem to be the case. Maybe it’s because I already autoremoved them? Who knows.

Enable Hybrid Graphics in BIOS#

https://github.com/pop-os/nvidia-graphics-drivers/issues/195 recommends to enable Hybrid graphics in BIOS. Let’s try that as a workaround…

Sure enough. That worked. In my BIOS it’s called “Dynamic Graphics”. However, I had enabled “Discrete Graphics” a while back because it fixed the issue of my computer sometimes freezing before even being able to log in. Well, I guess this is a good compromise for now. Soon enough 545.29.06 will be available to me and I can switch these settings back…

Update (2023-12-06)#

About a week ago they released 545.29.06, and that fixed the brightness problem I was having. However, now my DisplayPort over USB C dock is acting up. If I leave my third monitor plugged in, after my computer wakes from sleep or even sometimes when my screen turns off then back on, my computer will be normal for a few seconds, and then completely freeze. This is not ideal.

I’m writing this to document that I believe before 545.29.02 was installed I had either the 535 or 525 drivers installed. I looked at my apt history and I found this command:

apt-get install -y system76-acpi-dkms system76-dkms system76-io-dkms amd-ppt-bin nvidia-driver-525

I believe that installed nvidia-driver-535:amd64 (535.113.01-1pop0~1695753528~22.04~0561f9e, automatic) - the 535.113.01 version. At some point I might uninstall my current drivers and stick with that driver. (I confirmed that this is the case as I actually have the output of nvidia-smi in my new-laptop page. That driver does have the downside that if my screen isn’t constantly changing, it will glitch out, but I would rather have that than lack decent monitor support.

For future me: https://www.nvidia.com/content/DriverDownloads/confirmation.php?url=/XFree86/Linux-x86_64/535.113.01/NVIDIA-Linux-x86_64-535.113.01.run&lang=us&type=geforcem