DragonFly, Cygwin, and PuTTY

To add to my ongoing slow fiddle with DragonFly: I’ve noted how to install in Hyper-V, and how to use Cygwin to connect to run X.  Here’s another step: if you are using PuTTY/Pageant, as I am, and want to connect, Cygwin/X needs to be told to listen on TCP.  Find your /usr/bin/startxwin file in Cygwin and change serverargs to:

serverargs=”-listen tcp”

And then in PuTTY, under Connection -> Session -> X11, check “Enable X11 forwarding”, set X display location to “:0.0”, and locate your .Xauthority file.  It will be in your user’s Cygwin home directory.  (tips found here)

plink can be used to create shortcuts – open an xterm directly into your DragonFly VM from your Windows desktop, for instance, with a shortcut that runs ‘plink <sessionname> xterm’.

If you are running a slightly newer version of Windows and aren’t trying to accommodate a ‘legacy’ PuTTY install, using Windows Subsystem for Linux may work better; I have not yet tried.

DragonFly on Hyper-V, locally

For the future edification of others: I mentioned I installed DragonFly under Hyper-V on a Windows 10 laptop.  I wanted to be able to open a terminal on DragonFly while in my Windows environment.  I have that now; here’s what I did:

  • Installed DragonFly in Hyper-V (see my prior install notes)
  • Installed xorg on DragonFly.  (pkg install xorg)
  • Installed Cygwin/X on Windows 10 – specifically, the xauth, xorg, xterm, xclock, cygutils-x11, and openssh packages.
  • In DragonFly, set these items in /etc/ssh/sshd_config :
    • X11Forwarding Yes
    • X11DisplayOffset 0
    • XAuthLocation /usr/local/bin/xauth
  • Run XWin Server on Windows 10.
  • Run CygWin64 Terminal on Windows 10
    • export DISPLAY=:0.0
    • ssh -Y (address of DragonFly host)
    • Once logged in, type ‘xterm’.

At this point, a terminal window should pop up on your Windows machine, showing your DragonFly username@hostname as the prompt.  You are set!

Next steps – getting this working with PuTTY, Pageant, and Plink.

Hyper-V and DragonFly

I tried Hyper-V, and of course, I had to install a virtual DragonFly system.  Sascha Wildner very helpfully pointed out that DragonFly on Hyper-V requires a legacy network adapter and a gen-1 image type; both changes you can make during initial setup.  I’m noting it here for the benefit of future people walking down the same path.

Note: pick ‘legacy BIOS’ during the actual DragonFly install, too.

Ravenports, and picking out packages

A little while back I linked to an excellent deep dive into Ravenports, and added my own bit of statistical guessing at popular packages.  John Marino wants to know what packages people find most useful/most required.  If you have opinions, and I’m sure you do, post something on the Ravenports Google Groups page.

If you are saying to yourself “Gee, what packages did I install and what came in as a dependency?”, here’s an easy way to find out:

pkg query -a '%n %a' | grep 0 | cut -d ' ' -f 1 | less

This lists all “vital” packages, which usually means ones installed with intent, rather than automatically.  This might be a useful thing to post for Ravenports…

Upgrade results, bonus for dragonflybsd.org

Remember the upgrade for dragonflybsd.org machines?  It completed, and it’s interesting to see that SSDs have become so easily available that “spinning rust” hard disk drives are only still useful for bulk storage, and even then probably not for much longer.

Another neat side effect: disk usage on developer system leaf.dragonflybsd.org  was cut in half, thanks to HAMMER2 dedup/compression.  It’s a ‘free’ half-terabyte.

Half billion tries for a HAMMER2 bug

I’m pulling a quote off of IRC to show some of the testing on HAMMER2, specifically as the background for this commit:

14:22 <@dillon_> ^^^ hammer2 bug, could reproduce it around once a day doing a continuous rm -rf on hardlinked snapshots. reproduced about once every 500 million directory entries or so

I am somewhat tickled by the notion that you might have a problem after deleting half a billion directory entries.