You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

4.3 KiB

+++ title = 'OpenBSD notes' date = '2023-11-14T09:31:48+0100' #lastmod = ''

#showDate = false showReadingTime = false showWordCount = false showPagination = false #showAuthor = false showBreadcrumbs = true

feed_exclude = true

site_exclude = true

draft = true

+++

These are my notes that I want to summarize about the OpenBSD operating system.

Get some filesystem information

$ dumpfs /dev/rsd1a
magic	19540119 (FFS2)	time	Thu Nov 16 21:14:34 2023
[...] (snip; lots of output...)

Python

ModuleNotFoundError

I recently tried to look at CHIRP, a tool to program (amateur) radios. But at its start I only got an error:

$ chirp
09:29:10: Debug: Adding duplicate image handler for 'Windows bitmap file'
09:29:10: Debug: Adding duplicate animation handler for '1' type
09:29:10: Debug: Adding duplicate animation handler for '2' type
09:29:10: Debug: Adding duplicate image handler for 'Windows bitmap file'
09:29:10: Debug: Adding duplicate animation handler for '1' type
09:29:10: Debug: Adding duplicate animation handler for '2' type
09:29:10: Debug: Adding duplicate image handler for 'Windows bitmap file'
09:29:10: Debug: Adding duplicate animation handler for '1' type
09:29:10: Debug: Adding duplicate animation handler for '2' type
Traceback (most recent call last):
  File "/usr/local/bin/chirp", line 8, in <module>
    sys.exit(chirpmain())
  File "/usr/local/lib/python3.10/site-packages/chirp/wxui/__init__.py", line 36, in chirpmain
    from chirp.wxui import main
  File "/usr/local/lib/python3.10/site-packages/chirp/wxui/main.py", line 49, in <module>
    from chirp.wxui import printing
  File "/usr/local/lib/python3.10/site-packages/chirp/wxui/printing.py", line 18, in <module>
    import yattag
ModuleNotFoundError: No module named 'yattag'

Most of these kind of errors look like this and it's quite clear: we need to install a package called yattag -- more precisely it is a python module.

I do install python modules this way:

$ python3 -m pip install --user --upgrade yattag
Collecting yattag
  Downloading yattag-1.15.2.tar.gz (28 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
  Preparing metadata (pyproject.toml) ... done
Building wheels for collected packages: yattag
  Building wheel for yattag (pyproject.toml) ... done
  Created wheel for yattag: filename=yattag-1.15.2-py3-none-any.whl size=15667 sha256=115df1349df26ea2ad2c0fdbf25c808a79242711fe2d7d44c97a0868a5454dd1
  Stored in directory: /home/dominic/.cache/pip/wheels/3f/6e/e5/d526243c27041915f63eacc0804babeb86b6973b0bc1991f06
Successfully built yattag
Installing collected packages: yattag
Successfully installed yattag-1.15.2

Git

Cloudlog

Cloudlog is a webapplication written in PHP that allows ham radio amateurs to log contacts online. I host my own instance on my server and I finally looked into why I never got satellites shown in SAT Timers.

I use php-fpm and it is running as the user www. It is kind of jailed and it cannot read /etc/ssl/cert.pem -- so the https connections cannot be verified and it failes at downloading the satellites infos from other websites.

I solved this by copying /etc/ssl to /var/www/etc/ssl via rsync, keeping file permissions intact. I may setup a cronjob for this maybe.

$ doas cp -r /etc/ssl etc/ssl
$ doas rcctl restart php80_fpm

Apache (Server)

As I host my own Cloudlog instance on my server I run into problems sometimes. The SAT and Hams.at tools never worked for me and I looked into this today. I got some weird SSL related errors and I thought first it was a misconfiguration in my php.ini file but it finally turned out, that ServerRoot in my Apache configuration pointed to /var/www and Cloudlog wasn't able to read the main CA file from /etc/ssl/cert.pem. I copied /etc/ssl to /var/www/etc/ssl and it works just fine -- now I need a solution to update these certs when the OS updates the files in /etc/ssl because a symlink did not work for this.

tl;dr;

$ doas rsync -avhzrp /etc/ssl/ etc/ssl
sending incremental file list
created directory etc/ssl
./
cert.pem
ikeca.cnf
openssl.cnf
x509v3.cnf
private/

sent 155.82K bytes  received 133 bytes  311.90K bytes/sec
total size is 344.08K  speedup is 2.21
$ doas rcctl restart php80_fpm
php80_fpm(ok)
php80_fpm(ok)