## TL;DR

It must be the year of OpenBSD on desktop!

- Wayland is getting in shape
- KDE Plasma is getting committed
- Softdeps temporarily disabled
- Malloc leak detection
- vmd received virtio GPU and uses a multi process model
- Battery charging control

🐡🐡🐡

## Recent -current changes

- [CFT] Major pfsync(4) Rewrite on the Horizon (undeadly)
- malloc leak detection available in -current (undeadly)
- Keystroke timing obfuscation added to ssh(1) (undeadly)
- (Even more) Aggressive randomisation of stack location (undeadly)
- Add a set of sysctls to control the charging of laptop batteries(cvs commit)
- Wayland on OpenBSD (undeadly)
- Mandatory enforcement of indirect branch targets (undeadly)
- cron(8) now supports random ranges with steps (undeadly)
- Soft updates (softdep) disabled for future VFS work (undeadly)
- shutdown/reboot now require membership of group _shutdown (undeadly)
- viogpu(4), a VirtIO GPU driver, added to -current (undeadly)
- vmd(8) moves to a multi-process model (undeadly)

## Interesting new packages

- novelwriter: markdown-like text editor for planning and writing novels
- kiwix-tools: command-line Kiwix tools
- candycrisis: open source clone of Puyo Puyo series
- cgif: GIF encoder written in C
- shiori: simple bookmarks manager
- riff: diff tool highlighting which parts of lines have changed
- galera: synchronous multi-master replication engine
- brogue: roguelike game by Brian Walker with X11 support
- lsblk: list block devices
- smarc: static web mail archive generator
- xournalpp: handwriting notetaking with PDF annotation support
- xclickroot: click on root window and run a command
- highlight-pointer: highlight mouse pointer using a dot
- prusaslicer: G-code generator for 3D printers
- htmlq: like jq, but for HTML
- plass: manage passwords

🐡🐡🐡

## Shell tips

Know your processes! The `ps` command can actually provide a lot of information about processes running on your system. Per the man page, in the `state` column, letters are used to indicate some important information about the processes.

- `c` indicates that the process is running in a chroot
- `p` tells the process has called pledge() (but not which promises were used)
- `U` shows the process has called unveil() and can't unveil() new paths/files anymore
- `u` shows the process has called unveil() but it's not locked. It's most likely an issue with how unveil() has been added in the program!
- `X` will remind you that you are currently tracing/debugging the process, in case you forgot

Of course, there are many other states, I encourage you to read `ps(1)` man page to know about all the features it provides.

🐡🐡🐡

## Going further

- Publish your photographies on the fediverse: Self-hosting Pixelfed on OpenBSD
- Synchronize calendars and address books over the network: Set up your own CalDAV and CardDAV servers on OpenBSD
- Local K3S cloud with vmm: K3s clusterDuck over Alpine over OpenBSD
- Cloud deployment: Terraform + Proxmox + OpenBSD = <3
- VPN guide based on WireGuard: Make your own VPN - Wireguard, ipv6 and ad-blocking included
- Some vmm storage tips: OpenBSD vmm and qcow2 derived disks
- Good old sysadmin network tool: Monitor your remote host network quality using smokeping on OpenBSD
- Finally a multiboot guide! Multiboot Microsoft Windows, OpenBSD and Slackware Linux
- For Qubes OS users: Install OpenBSD in Qubes OS
- Templates for cloud deployment: Creating an OpenBSD template over QEMU/Proxmox
- Trying to implement a Qubes OS like OpenBSD: OpenKuBSD progress report
- Simple tutorial for VM users: Install OpenBSD as a VM
- A guide to pledge system call: How to add pledge to a program in OpenBSD
- Ever wanted to run a command every day? Using anacron to run periodic tasks
- Deploying a PHP program: How to install Kanboard on OpenBSD
- Nice SearXNG guide: Self-Hosted SearXNG instance on OpenBSD
- Faster pkg_add -u for everyone! Backport OpenBSD 7.3 pkg_add enhancement
- For developers: Dynamic Tracing on OpenBSD 7.3
- For those who never run userdel and groupdel after removing packages: Detect left over users and groups on OpenBSD
- Boot OpenBSD on libreboot: Libreboot Full Disk encryption on OpenBSD
- Another calendar and addressbook syncing guide: Self-Hosted Calendar and Addressbook services on OpenBSD
- top, vmstat, systat, ps related: Some explanations about OpenBSD memory usage
- No need for bluetooth to stream to your phone: Stream your OpenBSD desktop audio to other devices
- Parsing logs isn't always easy: Ban scanners IPs from OpenSMTP logs

🐡🐡🐡

## Artworks of the moment

A giant puffer fish fixing old machines. A girl kneels nearby. The narrator says «There, I found it».

Artwork made by Tomáš. More of his stuff at analog nowhere.

🐡🐡🐡

## Note from the editorial team

### Note from Solene

I finally catched up all the backlog I gathered over almost six months. I need to make adjustments to the website framework to make it easier to work with for newer issues, I'd like to publish like before, an issue every two months. I'm still super happy of the webzine style and format, it looks old-school and fits the community in some sense. Thanks everyone contributing to OpenBSD and its community!

The webzine is two years old, what a journey! I'm really proud to see it available in 9 different languages (all the issues aren't translated but still). I may change the layout a little but otherwise, it's good to continue like this.

🐡🐡🐡

## Authors

Solène Rapenne. Many thanks to everyone involved and supportive of the idea, especially Tomáš for making all his OpenBSD related art!