diff --git a/blog.org b/blog.org index 36f98fc..689bf01 100644 --- a/blog.org +++ b/blog.org @@ -4,9 +4,12 @@ #+HUGO_FRONT_MATTER_FORMAT: yaml #+ORG-HUGO-EXTERNAL-FILE-EXTENSIONS-ALLOWED-FOR-COPYING: nil -* Refile -** Focus intentionally - +* Meta :@Meta: +** TODO Focus intentionally +:PROPERTIES: +:EXPORT_FILE_NAME: focus-intentionally +:EXPORT_HUGO_CUSTOM_FRONT_MATTER: :toc true +:END: I am too easily distracted. Sitting at my desk on an average day, I have movies, TV shows, and YouTube videos, about a million different chat applications, my email client, Steam, and a web browser with yet more chat apps plus social media @@ -43,7 +46,11 @@ motivation must be rather high. *** References - [[https://www.artofmanliness.com/character/behavior/monotasking-podcast/][The Art of Manliness: Become a Focused Monotasker]] - [[https://www.artofmanliness.com/character/habits/podcast-581-the-tiny-habits-that-change-everything/][The Art of Manliness: The Tiny Habits That Change Everything]] -* Meta :@Meta: +** TODO Email can be pleasant, but like all good things, it takes work +:PROPERTIES: +:EXPORT_FILE_NAME: email-can-be-pleasant-but-like-all-good-things-it-takes-work +:EXPORT_HUGO_CUSTOM_FRONT_MATTER: :toc true +:END: * Technology :@Technology: ** DONE (Ab)using mesh networks for easy remote support :Mesh__networking:Open__source:Remote__support: CLOSED: [2021-11-01 Mon 02:51] @@ -581,6 +588,75 @@ Exactly how you do /that/ is */definitely/* beyond the scope of this post :P If you set any of this up, I would be interested to hear how it goes! As stated earlier, my contact information is at the bottom of the site's home page :) +** TODO FreeBSD quirks on the Framework laptop :FreeBSD:Framework: +:PROPERTIES: +:EXPORT_FILE_NAME: freebsd-quirks-on-the-framework-laptop +:EXPORT_HUGO_CUSTOM_FRONT_MATTER: :toc true +:END: +This is primarily intended for people new to FreeBSD. If you're already familiar +with it, [[https://wiki.freebsd.org/Laptops/Framework_Laptop][the wiki page]] will probably tell you everything you need. I had no idea +what I was doing so I had no idea what I was looking for! I had been beating my +head against a wall for about three hours before I decided to join ~#freebsd~ on +[[https://libera.chat/][Libera.Chat]]; the people there were friendly, helpful, and gave me tons of great +advice. I highly recommend popping in if you have any issues! + +*** The Handbook +Open [[https://docs.freebsd.org/en/books/handbook/][the handbook.]] Follow [[https://docs.freebsd.org/en/books/handbook/][the handbook.]] Read [[https://docs.freebsd.org/en/books/handbook/][the whole handbook.]] The developers +spend a /lot/ of time making sure it's the best resource available for learning +FreeBSD. In most cases, it will have an answer for any question related to +FreeBSD. + +That said, the Framework laptop is so new that it's not fully supported by the +current stable release, so for now, we'll need to diverge a bit. This guide is +really only applicable until the release of FreeBSD 13.1 and until ~drm-kmod~ hits +version 5.5+. Once those two criteria are met, following the handbook should be +entirely sufficient! + +*** The Source +In section 2.5.3 of the handbook/installer, make sure you tick the ~src~ box to +download the FreeBSD source code. It'll be necessary for building our graphics +drivers later on. + +*** The Graphics +This is where things are less-than-ideal at the moment. /Usually/, installing +[[https://cgit.freebsd.org/ports/tree/graphics/drm-kmod][graphics/drm-kmod]] would be sufficient, but the version in both FreeBSD's package +repos and in the ports tree is too old. At the time of writing, it's compatible +with Linux kernel 5.4 while the Framework's drivers are in Linux kernel 5.5+. +We'll need to clone the /sources/ for ~graphics/drm-kmod~, check out a more recent +branch, build the drivers, and use those instead. + +I'm not 100% certain whether the first step here is necessary but I don't feel +like reinstalling to check. + +1. Install ~graphics/drm-kmod~ with ~pkg install drm-kmod~ +2. Install ~devel/git~ with ~pkg install git~ +3. Clone ~drm-kmod~'s source with + #+BEGIN_SRC bash +git clone https://github.com/freebsd/drm-kmod + #+END_SRC +4. Check out the ~5.7-stable~ branch with + #+BEGIN_SRC bash +git checkout -b 5.7-stable --track remotes/origin/5.7-stable + #+END_SRC +5. Build the package with ~make~ +6. Uninstall ~drm-kmod~ and all of its dependencies with ~pkg remove drm-kmod~ + followed by ~pkg autoremove~ +7. Install the more up-to-date drivers with ~make install~ +8. Make sure the module works as expected with ~kldload /boot/modules/i915kms.ko~ +9. If you suddenly see grey in your terminal, it works! Go ahead and add it to + your boot config by appending the following line to ~/etc/rc.conf~ + #+BEGIN_SRC text +kld_load="/boot/modules/i915kms.ko" + #+END_SRC +10. Reboot and you should be able to start Xorg as the handbook describes! + +Again all of this information is available on [[https://wiki.freebsd.org/Laptops/Framework_Laptop][the FreeBSD wiki page for the +Framework laptop.]] The ~Graphics~ row in section 2 says /requires DRM-KMOD 5.5 or +higher. Fails to initialize with DRM-KMOD 5.4./ That's in reference to the +package we just built and installed. + +Hope this helps! + ** TODO A perfect email setup (for me) :Email:Workflow: :PROPERTIES: :EXPORT_FILE_NAME: a-perfect-email-setup-for-me