Lazy Reading for 2019/01/20

One advantage of having a link ‘backlog’ is that I can pick and choose a bit, to present grouped items.

Cleanly adding sysctl entries on DragonFly

If you’d like to set a particular sysctl(8), you enter it into /etc/sysctl.conf. A common mistake is to copy the command line and put “sysctl foo=bar” in sysctl.conf instead of “foo=bar”. This used to cause a warning, but it still bit people, as it would cause a long stream of error messages during boot – with no clear reason, as the kernel tried to understand the command. Now, that typo is handled automatically.

Power notes, booting notes

Two links I yoinked from conversation in EFNet #dragonflybsd: there’s a “powersave” power management page on dragonflybsd.org that for some reason wasn’t linked in the main documentation page. I fixed that, and you may want to look at it and change your mwait settings, or look at the corepower(4) module. (From ivadasz’s comments; thanks!)

There’s also an older page on DragonFly and grub2 that may be interesting to anyone looking to boot. (From aly’s comments; thanks!)

File deprecation and DragonFly upgrades

On your next DragonFly upgrade, watch the end of your ‘make upgrade’ output. You may have some deprecated files, especially if your system has been upgraded through several releases.

= You have 11 now deprecated files.
= Once you are sure that none of your third party (ports or local)
= software are still using them, rerun with REMOVE_DEPRECATED set.

The now-deprecated files will be listed just before this warning. They aren’t removed automatically in case there’s installed software still linking to them. If you are running only dports software, and are up to date with all of it, you are probably fine to remove these files:

make -DREMOVE_DEPRECATED upgrade

If you have software you compiled yourself some time ago, it may have linked to these old files. One way to search for that would be to use find to find all executable files that are in particular directories, and then use ldd to see what shared libraries are used by each executable:

find /usr/local/bin /usr/local/sbin -type f -perm +a+x -print -exec ldd {} \; 

… and then grep for the names of the deprecated files. You’ll get a bunch of “not a dynamic executable” errors when you do this because it’s a rough example I did for this post, but you can always pipe the stdout of the command to a file and review later. If you do turn up any executables linked to the deprecated files – recompile!

(If you have a better find string or strategy, please comment.)

Lazy Reading for 2018/12/23

Merry almost Christmas!  I hope you like reading, because I’m linking to some large collections of text.

Lazy Reading for 2018/12/02

It’s a classic Lazy Reading this week – some deep dives, some history, some stuff that will take a while to explore.  Enjoy!

In Other BSDs for 2018/11/17

Still lots of BSD stuff happening.

Fetching DragonFly src over https

If you happen to be using DragonFly from a network location that only allows http/https as outbound traffic, you won’t be able to update /usr/src using defaults.  /usr/Makefile pulls DragonFly source using a git:// URL.

The fix is to use the read-only Github mirror.  You can set origin manually or just change GITHOST in /usr/Makefile (or GITURL_SRC if you are on DragonFly-master) to “https://github.com/DragonFlyBSD/DragonFlyBSD”.

(Guess what I did today?  Updated to note it’s different on -master.  Thanks tuxillo for reminding me of this whole thing.)