[dwm] My Thinkpad T14 running OpenBSD

Someone told me to cross post this here in a private message after I posted it to another sub reddit.

This is my primary work laptop (Thinkpad T14 Gen 1 AMD) running OpenBSD-current with my own fork of dwm (many patches sorry I've forgotten them all been using it for years now). I have been running OpenBSD-current on this machine for two-three years now. I live in emacs and tmux and prefer a simple workflow without a lot of eye candy since I'm now an old graybeard. So no fancy effects other than transparency provided by picom. Since otherwise I would never see my wallpaper. I wrote a script to pull random wallpapers from various boorus based on tags I set so sorry I don't have the source or know the artist for either of the wallpapers. But I have uploaded for anyone that would like them. If someone knows the original artists please let me know as my script auto-renames files and stores them locally in ~/.wallpaper/ with short names.

I am running the default GTK dark theme (whatever that is) but since I only pull it in for emacs and firefox I never see the icons or the theme itself and I don't feel like installing a different fetch script just to list that information here.

+ **Wallpaper 1**: [Random Halloween Themed Wallpaper](https://files.catbox.moe/1d3ml9.jpg)

+ **Wallpaper 2**: [Rabbit Mushroom King](https://files.catbox.moe/lo62hh.jpg)

+ **Font 1**: [mononoki](https://madmalik.github.io/mononoki/)

+ **Font 2**: Font Awesome 6 Free Solid used for icons in status bar.

Other stuff:

My own fork of dwm as mentioned before plus slstatus, dmenu and my own fork of st terminal emulator with graphics/image support which is done through chafa+kitty image protocol. Various things had to be adapted to OpenBSD to get things like images in st working with OpenBSD's pledge/unveil syscalls. Will release it after I clean things up. Don't use a file manager like ranger or anything I just manage files from console/terminal using standard utils. I find it faster. Well that and emacs.

Speaking of emacs: I live in emacs and tmux. Tmux mostly for working on other machines on my LAN or remote machines over the internet (e.g. work/day job, my XDCC/file servers, my websites, my media server). In emacs I mostly write books/articles/papers, general word processing stuff, writing code/misc hacking on other people's code, work related stuff (mostly coding and writing documentation) you get the idea. Also it's my main document viewer. I read everything from pdf files to manga to epub books in it. Using a variety of major and minor modes I either wrote myself or stumbled upon over the years. My init.el has been with me for a long time. epub viewer is [nov.el](https://depp.brause.cc/nov.el/) and I use [manga-reader](https://github.com/zenitsu7772000/manga-reader)

Emacs is my do-all application since I've been using it for over 3 decades now and really like writing lisp code. My init.el is pretty bare bones these days though. I have an odd ball habit of using both emacs style and vi style bindings depending on what I'm doing (vi style mostly for scrolling e.g hjkl). Used EXWM for a long time but found it annoying after awhile so I ended up on dwm after trying out a bunch of other WMs over the years. It just suits my workflow best I guess.

Finally, my custom Firefox config/userchrome.css. Which is pretty basic. It does everything I need. I have more than a few add-ons installed mostly to make browsing the modern web bearable (ublock, noscript) along with stuff like vim-style keybindings for some function although in Firefox I also use a combination of emacs and vi style bindings (again vi-style mostly there for scrolling with hjkl). Have a bunch of custom about:config/user.js settings to disable recent stuff Mozilla added like all the AI junk and the new GUI revamp. Also several to make Firefox run faster on OpenBSD since by default it doesn't detect that my iGPU supports all the hardware acceleration stuff even though it works just fine when they're manually toggled on. Don't feel like listing them all here sorry. Use Sideberry for sidebar tabs which pop-out upon mouse over. Try to keep things neat, basic, tidy and out of the way. Tons of stuff installed like sponsorblock and other stuff to make youtube bearable to use these days although I prefer to use my own front-end for youtube.

Terminal based front-end for yourself that I adapted from some random guy's bash script to run on OpenBSD. It mostly works. Searching works as you can see along with viewing playlists/history even while logged out. It pipes results into yt-dlp which pipes them into mpv which plays anything I throw at it since my CPU/GPU has support for most all modern video codecs.

OpenBSD has great driver support for this machine. Wireless network driver for my Intel chipset supports ac/ax speeds and is easy to configure through ifconfig. Works on all public wifi networks I've tried so far. Really fast on my home network. Picks up plenty of wireless devices I can't see in other OSs when I manually scan for stuff using ifconfig. Never had any trouble joining wifi networks at hospitals and such. Same is true of Ethernet card of course.

My Thinkpad has the touchscreen in it and it works just fine in OpenBSD although I never use it on purpose. Pretty much everything is supported excluding the thumbprint reader which I don't use anyway. Really good battery life. Suspend to RAM works just fine and uses hardly any battery when system is suspended (have left it unplugged for days at a time in the past). GPU drivers are really good. CPU runs just as fast as it does on Windows 11/Linux kernel even with SMT support disabled. The Ryzen 7 8-core CPU in this machine is really nice. Fan hardly ever turns on unless I'm doing something really intensive like building heavy software or encoding video or something. Even then it is mostly silent and the machine barley gets warm. Never been hot to the touch and never seen CPU temps over 50C or so when I've checked.

I had Gentoo, Arch, Guix, FreeBSD and Debian on this machine since I purchased it after nuking the Windows 11 installation that came on it. So far OpenBSD has been the least trouble and it was the easiest out of the bunch to install on it with working FDE and X11 (Xenocara) just worked post install. All I had to do was compile dwm+dmenu+st and change one line in a config file and I was in business. Everything I've needed for my day-to-day work was in their ports tree. Updating the OS has been brain dead easy and I upgrade every few days - weekly depending on what's happening in the mailing lists. Been running -current for over two years now. I wasn't on their stable release for very long. Their -current/testing branch is much more stable than any Linux distro I've used in the past. I can't sing the praises of this OS enough and it's improving all of the time. Been enjoying the fact that a lot of the developers of OpenBSD seem to be using the exact same hardware as I am. It's really polished.

Fell in love with most of the tools in the base system like the mg text editor, doas, pf and many others. Slowly trying to weed out stuff I'm using from ports in favor of adopting more of the base system tools. But I don't think I'll ever be able to kick my lisp+emacs addiction.

Anyway, someone told me you guys might be interested so I'm posting this here. I rarely share pictures of my desktops because I don't like to show off or seek attention. I know this isn't pure eye candy like most posts on here. But you guys are about 26 years too late to see me messing around with eye candy. Wish I still had screenshots of some of the Windows NT and UNIX machine I was "ricing" back in the 80s-90s. Really wish I had screenshots of my old Amigas. But they're probably gone and I don't feel like dragging out very old HDDs on the off chance there might be screenshots on them I've forgotten about.

Take care hope everyone is having a good day. If you haven't considered using OpenBSD on the desktop I highly recommenced giving it a try.

7 comments · 96% upvoted · source · other discussions

comments

LunarCapitol [OP]

For those that aren't aware. OpenBSD recently released version 8.0 on the projects birthday just a couple of days ago. Version 8.0 brings many great improvements but the most important one is now the virtual machine manager can now support multi-core CPUs. Which means now you can run VMs while taking full advantage of your CPU's processing power. That along with tons of other good stuff:

https://undeadly.org/cgi?action=article;sid=20261020021401

https://www.openbsd.org/80.html

We got more exciting news just ahead of the stable 8.0 release. wine is finally back in the ports tree thanks to the hard work of two guys that have been at it for months: https://undeadly.org/cgi?action=article;sid=20261022052106

Note that there is no support for 32-bit Windows applications. But 64-bit Windows applications run just fine in the limited testing I've done with the new port. It's already packaged and on the mirrors no need to build it from source code. If you can, please help out with testing it!

The OpenBSD project is really making good improvements lately and despite what most people say about it ime it's just as fast (sometimes faster) than contemporary UNIX-like OSs and it often has better driver support than the Linux kernel or FreeBSD. One thing is for sure it has the best man pages I've ever seen. The community is also really friendly despite its reputation for being rude. I've never seen anyone be rude to a new user in the official IRC channel or on the mailing lists. The sub-reddit for the project is also very active. There is even an active gaming community around the project and they've got a lot of stuff running.

I could go on all day about the good things in OpenBSD but I'll stop for now. If you haven't yet you should really consider giving it a try on bare metal as a desktop. It's not just for routers, servers and firewalls although it is a great OS for those tasks as well.

romeo_thegreat

Im more of a elitebook guy.same cpu that my elitebook 845 g7 has but i prefer the elitebook more than the thinkpad.(i run sway alpine linux)

LunarCapitol [OP]

Whatever you can get your hands on in this day and age is a good machine. I hope this laptop lasts me many years to come. I'm the kind of guy that keeps computers going for as long as I can. My first desktop builds from back in the 1990s are still working and being put to good use. Sadly, someone tossed out my Amigas while I was out of state for many months because "they were junk". Would cost me a fortune to replace them now. I really miss them.

I snagged this machine for about $250 (shipping included) just a couple of years back. I tried to price out a comparable Thinkpad for someone last week and the same T14 Gen 1s are now all well over $300-$350 and they come with a worse screen, less RAM, less storage and slower CPUs (Ryzen 5 instead of Ryzen 7). I fear the good old days of cheap second hand Thinkpads have come to an end.

Even the older stuff is getting outrageous lately. I was trying to source a good x220 or comparable model so I could do some hacking on Plan9/9front. I wanted a laptop I knew was already well supported by that kernel. They're all through the roof and so are after market parts like batteries, screens, storage devices and RAM.

I've been putting off upgrading my desktop system for over 10 years now because I kept waiting for GPU prices to come down like an idiot. I really need to get something soon though. My desktop is getting really long in the tooth and I need more real CPU cores. At the moment it's taking me 20-28 hours to run filtering+encodes for 15-25 minutes of animated content. I have a huge back log of LDs, Beta/VHS tapes and other video content to get through and digitize. Honestly, I need more than one new desktop. I need a handful of new beefy servers AND a nice desktop to churn that stuff out faster.

Plus I need to buy new NICs for everything on my network to take advantage of 10Gbps fiber I'll be bumping up to sometime next summer whenever the ISP starts to offer it. Also need a new switch and router.

Thankfully, I did manage to buy up a bunch of multi-TB HDDs right before the prices for those went through the roof. But soon I'll need more of those for my media server.

romeo_thegreat

Sorry but my lazy ahh mind aint reading allat🙏🏾🙏🏾

wilalva11

How’s the battery life on it?

LunarCapitol [OP]

I'm getting a good 6-8 hours if I charge it up to 100%. I normally try to only charge up the battery to 80% though and don't let it start charging until it drops to 40%. I can squeeze out more time if I turn down the screen brightness a bit and don't browse the web. Firefox is the main hog on the machine as far as eating battery life if you're browsing heavy websites like youtube or mainstream news websites all day. Script blocking does help a bit in that respect.

The battery life is slightly better on Linux and Windows from what I remember but not by much. 6-8 hours is good enough for me. If it gets really low for some reason I can always suspend the machine at say 5-10% battery and it'll be a-okay for hours until I can get to the mains. Plus since it's usb 3.0 charger I can typically find a way to get juice to it if needed.

I wish it was my older Thinkpad and supported dual batteries though. Or at the very least had the ability to swap the battery without breaking open the case. Trying to take care of the one in it because I really don't want to do that any time soon.

I don't have one handy but I'm sure if you needed to get say 12-16 hours of it on a long flight or road trip you could easily do it with one of those usb power banks people sell these days.

If I'm just using emacs to write my books/code and don't have a browser open obviously battery life span goes way up. But I haven't personally tested it to see how far I can push it yet. I typically run at 50% screen brightness and that's plenty bright for me even outside during the day. I never have to crank it up past about 60-70% brightness and at night I can easily drop it to 10-15% and be comfortable.

I'm using obsdfreqd which seems to help with battery life and keeps the CPU cooler.

https://dataswamp.org/~solene/2022-03-21-openbsd-cool-frequency.html

People say it isn't required anymore but it works for me so I don't see any reason to stop using it for the moment.

wilalva11

Thank you for the quick and detailed answer! I appreciate it!