summaryrefslogtreecommitdiff
path: root/content/bsd/thinkpad/freebsd-on-thinkpad-x1-extreme-g2.md
diff options
context:
space:
mode:
Diffstat (limited to 'content/bsd/thinkpad/freebsd-on-thinkpad-x1-extreme-g2.md')
-rw-r--r--content/bsd/thinkpad/freebsd-on-thinkpad-x1-extreme-g2.md103
1 files changed, 69 insertions, 34 deletions
diff --git a/content/bsd/thinkpad/freebsd-on-thinkpad-x1-extreme-g2.md b/content/bsd/thinkpad/freebsd-on-thinkpad-x1-extreme-g2.md
index c037c68..9a96997 100644
--- a/content/bsd/thinkpad/freebsd-on-thinkpad-x1-extreme-g2.md
+++ b/content/bsd/thinkpad/freebsd-on-thinkpad-x1-extreme-g2.md
@@ -1,63 +1,98 @@
----
-title: "FreeBSD on a Thinkpad Extreme G2"
-category: bsd
-abstract: it works, but there are some drawbacks
-date: 2023-02-25T06:06:18+01:00
-year: 2023
-draft: false
-tags:
-- FreeBSD
-- ThinkPad
-- NVIDIA
-- ax200
----
++++
+title = "FreeBSD: Review of Thinkpad Extreme G2"
+author = ["MichaƂ Sapka"]
+date = 2023-02-25T22:30:00+01:00
+categories = ["bsd"]
+draft = false
+weight = 2002
+abstract = "it works, but there are drawbacks"
+[menu]
+ [menu.bsd-thinkpad]
+ weight = 2002
+ identifier = "freebsd-review-of-thinkpad-extreme-g2"
+ name = "Review"
++++
My wife got a new computer, so I can easily break my laptop whenever I want - so it's time for FreeBSD!
-*All this applies to FreeBSD 13.1 at the time of publishing. I'll add links to any additions and errata in the future*
+**All this applies to FreeBSD 13.1 at the time of publishing.
+I'll add links to any additions and errata in the future**
-### Installation
-The installation process is great. It's more involved than something like Fedora, and some concepts were foreign to me. [Handbook's chapter on installation](https://docs.freebsd.org/en/books/handbook/bsdinstall/) guided me through every step, so there were no problems. Within 15 mins of booting from the USB Drive, I had a working hardened system running on an encrypted ZFS drive with wireless networking and essential services configured.
+## Installation {#installation}
-{{<img-center "freebsd-setup-fs.png" "Partitioning" "https://docs.freebsd.org/en/books/handbook/bsdinstall/">}}
+The installation process is great.
+It's more involved than something like Fedora, and some concepts were foreign to me.
+[Handbook's chapter on installation](https://docs.freebsd.org/en/books/handbook/bsdinstall/) guided me through every step, so there were no problems.
+Within 15 mins of booting from the USB Drive,
+I had a working hardened system running on an encrypted ZFS drive with wireless networking and essential services configured.
+
+{{< img-c "freebsd-setup-fs.png" "https://docs.freebsd.org/en/books/handbook/bsdinstall/" >}}
+Partitioning
+{{< /img-c >}}
Many things worked out of the box, but not all of them.
-### Hardware
-Setting X-Org was a breeze. Nvidia drivers are [available and ready to go](https://docs.freebsd.org/en/books/handbook/x11/#x-configuration-nvidia); no additional configuration is necessary. (*[update: I was wrong, but it is fixed now](#updates)*)
+## Hardware {#hardware}
+
+Setting X-Org was a breeze.
+Nvidia drivers are [available and ready to go](https://docs.freebsd.org/en/books/handbook/x11/#x-configuration-nvidia) no additional configuration is necessary.
+(update: I was wrong, but it is fixed now)
-Sound, of all things, work out of the box. Unfortunately, it doesn't auto-switch to headphone output, but there is [a known way to do this](https://freebsdfoundation.org/freebsd-project/resourcesold/audio-on-freebsd/) via device hints.
+Sound, of all things, work out of the box.
+Unfortunately, it doesn't auto-switch to headphone output, but there is [a known way to do this](https://freebsdfoundation.org/freebsd-project/resourcesold/audio-on-freebsd/) via device hints.
-The integrated camera also works after running `webcamd -d ugen0.2 -i 0 -v 0`. Tested via `pwcview.`
+The integrated camera also works after running `webcamd -d ugen0.2 -i 0 -v 0`. Tested via `pwcview`.
-My laptop uses AX200 wireless card, which is [not yet fully supported by the system](https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=244261). It is recognized and works, but only up to WiFi 3 (g). I'd be ok with WiFi 4(n), but the driver is not ready, and WiFi 5 (AC) [is not supported by the OS](https://wiki.freebsd.org/WiFi/80211ac) at all. Funny enough, it [seems to be supported by OpenBD](https://man.openbsd.org/man4/iwx.4). I have yet to learn how different BSDs intertwine and different. FreeBSD is supposed to be more user-friendly, but it seems not to be the case here. Work on [fully supporting](https://wiki.freebsd.org/WiFi/Iwlwifi) the card is already planned, but I have no idea when I can expect results. From what I've learned, the team can't reuse code from Linux due to licensing incompatibilities between [GPL](https://www.gnu.org/licenses/gpl-3.0.html) and [BSD license](https://docs.freebsd.org/en/articles/license-guide/). ([update: there are more problems](#updates))
-{{<img-pull-right "freebsd-beastie.png" "FreeBSD Bestie">}}
+My laptop uses AX200 wireless card, which is [not yet fully supported by the system](https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=244261).
+It is recognized and works, but only up to WiFi 3 (g).
+I'd be ok with WiFi 4(n), but the driver is not ready, and WiFi 5 (AC) [is not supported by the OS](https://wiki.freebsd.org/WiFi/80211ac) at all.
+Funny enough, it [seems to be supported by OpenBD](https://man.openbsd.org/man4/iwx.4).
+I have yet to learn how different BSDs intertwine and different.
+FreeBSD is supposed to be more user-friendly, but it seems not to be the case here.
+Work on [fully supporting](https://wiki.freebsd.org/WiFi/Iwlwifi) the card is already planned, but I have no idea when I can expect results.
+From what I've learned, the team can't reuse code from Linux due to licensing incompatibilities between [GPL](https://www.gnu.org/licenses/gpl-3.0.html) and [BSD license](https://docs.freebsd.org/en/articles/license-guide/) [update: there are more problems].
-This is one of the few instances when I am rethinking my life choices, and I would love to be able to help with C code. Also, Bluetooth on this card is not supported, and there is no work done to address it - but luckily, I am already de-wirelessing my life.
+{{< img-r "freebsd-beastie.png" >}}
+FreeBSD Beastie
+{{< /img-r >}}
-USB devices are detected automatically and mostly work. However, my monitor (Dell P2723QE) has an integrated 1000Base-T ethernet connection, but on FreeBSD, only 100Base-T worked.
+This is one of the few instances when I am rethinking my life choices, and I would love to be able to help with C code.
+Also, Bluetooth on this card is not supported, and there is no work done to address it - but luckily, I am already de-wirelessing my life.
-Another problem is Suspend/Resume. I can easily [suspend](https://wiki.freebsd.org/SuspendResume) the device, but after resuming it, the screen is still black. This seems to be a known problem across different OSes for this laptop and has some [known warkarounds](https://www.thinkwiki.org/wiki/Problem_with_display_remaining_black_after_resume#Solution_for_ThinkPads_with_Intel_Extreme_Graphics_2) for Linux, but I have no idea how to apply them to BSD. (*[update: there is a fix working](#updates)*)
+USB devices are detected automatically and mostly work.
+However, my monitor (Dell P2723QE) has an integrated 1000Base-T ethernet connection, but on FreeBSD, only 100Base-T worked.
-The biggest problem here is battery drain. I have `power` enabled, but `acpinfo` reports about over 1% per minute. I was getting about the same drain on Arch Linux, but Manajaro acted much better.
+Another problem is Suspend/Resume.
+I can easily [suspend](https://wiki.freebsd.org/SuspendResume) the device, but after resuming it, the screen is still black.
+This seems to be a known problem across different OSes for this laptop and has some [known warkarounds](https://www.thinkwiki.org/wiki/Problem_with_display_remaining_black_after_resume#Solution_for_ThinkPads_with_Intel_Extreme_Graphics_2) for Linux, but I have no idea how to apply them to BSD. [update: there is a fix working]
+
+The biggest problem here is battery drain. I have `power` enabled, but `acpinfo` reports about over 1% per minute.
+I was getting about the same drain on Arch Linux, but Manajaro acted much better.
I have not tested the fingerprint reader as I've never used it.
-### Conclusion
-My ThinkPad is far from being a brick under FreeBSD. It is, however, severely hindered. I plan to fix the memory drain and allow for a resume after suspension. This will make it a proper laptop again, as there are always USB dongles when faster WiFi is needed. Dongle town, however, is not what I want in the long term, and I'll need to follow the progress of the driver implementation closely.
+### Conclusion {#conclusion}
+
+My ThinkPad is far from being a brick under FreeBSD.
+It is, however, severely hindered.
+I plan to fix the memory drain and allow for a resume after suspension.
+This will make it a proper laptop again, as there are always USB dongles when faster WiFi is needed.
+Dongle town, however, is not what I want in the long term, and I'll need to follow the progress of the driver implementation closely.
It seems that for a desktop computer everything would work.
-I'm falling in love with the system and its simplicity and logic. So even if I fail at fixing the above, I'll try to stick with it. And even if I get fed up with the state of hardware support, I'll keep FreeBSD as a secondary system.
+I'm falling in love with the system and its simplicity and logic.
+So even if I fail at fixing the above, I'll try to stick with it.
+And even if I get fed up with the state of hardware support, I'll keep FreeBSD as a secondary system.
For personal servers, however, I see no way of abandoning BSD.
-### Updates
-- 2023-02-27: [Fixing resume due to graphic drivers](/2023/fixing-resume-on-thinkpad-x1-extreme-g2-on-freebsd/)
-- 2023-02-04: [Configuring NVIDIA](/2023/freebsd-configuring-nvidia-and-xorg-on-thinkpad-x1-extreme-g2/)
-- 2023-03-15: [Problems with WiFi after resume](/2023/freebsd-on-modern-intel-wifi-cards-and-resume/)
+## Updates {#updates}
+- 2023-02-27: [Fixing resume due to graphic drivers](/2023/fixing-resume-on-thinkpad-x1-extreme-g2-on-freebsd)
+- 2023-02-04: [Configuring NVIDIA](/2023/freebsd-configuring-nvidia-and-xorg-on-thinkpad-x1-extreme-g2).
+- 2023-03-15: [Problems with WiFi after resume](/2023/freebsd-on-modern-intel-wifi-cards-and-resume)