James Richardson
Why I'm Migrating to Guix

Most of you know that I've been using Debian rather happily for a very long time, since hamm was stable, possibly before. I like Debian for many reasons, the social contract, its commitment to free software, although it seems to favor open source over free.1 and things are done in public. They also make it fairly trivial to use non-free software, which may be a good thing or a bad thing.

Back in the late 90's or early 2000's, I inherited the responsibilities of managing the subscriber email system for the phone company I was working for. I started looking to rip out sendmail for something better. Not that such is really relevant, other than qmail was a thing back then, which led me to the discovery of daemontools. I happily used daemontools until I discovered its replacement, runit, which I still use today. Until Jessie it was quite easy to not use the default SysV init system and use runit, even as PID 1. With Jessie it became harder, I didn't need the hassle so I started looking for other distributions.

Distributions using the Linux kernel and not using systemd are, well, scarce. Distributions using the Linux kernel, with systemd as the default init, but with the choice of using something else are even scarcer2. One of the advantages of free software is choice. If I don't like something, I can change it. Systemd has largely taken that choice away from GNU/Linux users. I think by design.

I'm not quite sure when I discovered Guix. I had seen Nix earlier. It seemed a strange way to build an operating system. If NixOS is strange, and GuixSD shares many of the ideas, why is the former strange and the latter not? I never stated the GuixSD isn't strange, it does indeed have very different ideas and semantics of how a GNU/Linux distribution should be put together. I happen to like it. GuixSD is committed to free software and is very hackable, as it composes packages as guile modules, even system services are composed as guile modules. This means that GuixSD doesn't use systemd, but not for systemd hater reasons.

I am now actively working to migrate all of my boxen and VPSes to GuixSD. The biggest blocks for me right now are lack of lvm support (I really don't want to give up lvm support for my file server), lack of a decent ikiwiki package, although I have it mostly working, with the modules I use, and lack of git-annex.

More about my work on guix is here.


  1. At one time a believe free and open were the same. I now understand differences. ↩

  2. One may even say nonexistent. I've not looked at every distro on distrowatch and probably none that aren't, so that's just a guess. ;) ↩

James Richardson
Removed Everything From Cloud Hosting

Github recently changed their ToS. At my read it seems to be rather anti-GPL, or really anti-copyleft. As I'm not a lawyer, I'm not going to do an analysis here, but see https://www.mirbsd.org/permalinks/wlog-10_e20170301-tg.htm and FSF Response.

I removed all my repos from github, gitlab (which I don't really think was bad) and bitbucket (which may have been worse). I did such the wrong way. I actually delete my account. What I should have done reinitialize the git index and have left just a readme file pointing to the new location. I had to recreate my account to I can contribute to projects there, as the projects I'm interested insist on using github's pull request model.

I now self host repos and use mr to sync with repo.or.cz for backup purposes.

I have started a code wiki where I talk about projects where I have interest or involvement.

Posted
License: cc by-nd 4.0
James Richardson
I Hate Writing Résumés

I hate writing résumés. I hate the entire application process. There has got to be a better way.

I know there is LinkedIn, but I don't like their new ToS. I still have an account, but will delete it soon, probably.

I also don't want to actively hunt for other work. I already have a job. The work isn't bad. I would prefer to be able to use more free/libre tools. I like the people on my team, and many others in the company. I don't particularly like senior management at the moment, but that will probably change at some point. Hunting for work is a drag; I have better things to do.

I also don't want to stay ignorant of what the market looks like. I found the job I have now the usual way with résumés, recruiters, and LinkedIn. I found the job before that the same way, and the job before that (maybe that one was before LinkedIn), and before that, etc. Albert Einstein defined insanity as doing something over and over again expecting different results. Perhaps I'll try something different.

Maybe I'll try to build my personal brand. I can become known as an expert in things I'm interested, rather than things my employer is interested. Typically they are coincident. I shall build a thing called a résumé into this wiki and see what happens. The trick will be to structure the data in such a way that the same source can be used to feed the wiki and an actual résumé that recruiters will want.

James Richardson
I'm bothered by phrases in many Terms of Services (ToS)

Several months ago, Github updated their ToS, which read to me more like a license grant rather than a ToS. I'm not sure GPL'ed code is compatible with the new ToS, apparently others do not share my opinion, which is fine. I'm not going to rehash the arguments here as they are not hard to find and I'm not a lawyer. I did take the action of deleting my Github account. I also deleted my Gitlab and Bitbucket accounts, as I was getting little to no value add from these, and now I have 2 less ToS to monitor.

I logged into LinedIn, they also have a new ToS. I didn't see nothing in it particular bad, per se. I don't like some of the phrases saying they can use my data as they see fit. I'm considering deleting my account there. I still occasionally receive an email via LinkedIn. My current employer seems to be offshoring jobs, so I may need LinkedIn at some point in the near future. I'm trying to build my own personal brand with this wiki and becoming more active in the Free Software and Open Source communities. Don't know how successful I shall be, as this is rather foreign to me.

James Richardson
Perl and AIX

I have been working with AIX since I started my present job back in February, 2011. I wasn't really familiar with AIX at the time. I've learned a bit since then, mostly that it is an odd system. Seems IBM, looked at BSD and System V, took the best parts out, and merged what was left and called it AIX, but I digress.

As there are not really any HLL languages available for AIX, I wrote a lot of stuff in perl. I'm not a particularly big fan of perl, but it does seem to be a necessary evil for sysadm work. I'd much rather write Python or most any lisp. ;) The really annoying thing about perl on aix is it is a horribly ancient version, 5.8 to be exact. I wrote a program that takes source tarballs with a gnu build system or similar and transforms such into an installp package.

Apparently, at some point, I upgraded a couple of core libraries, such as File::Copy. I needed to use the cp variant so that files could be copied including permission bits, much like the the cp command found on most POSIXish systems.

I did not take proper notes. When the box migrated to AIX 7.1, perl was upgraded to a merely ancient version of perl, 5.10. The upgraded core libraries were no longer upgrade, my program had hard to find bugs deep in its innards. I found this entire thing rather frustrating, especially as most of it was actually self inflicted.

I think I shall sort out better ways to do document what I have done, perhaps looking at readme driven development and/or test-driven development. I'm also looking at Guix to sort out even better ways to manage things.

James Richardson
Debian releases Stretch

Debian released Debian 9 (Stretch) . I've been running Debian as my primary distribution since Hamm, which was a really long time ago. I think the first distribution I used was Yggdrasil, which is no longer. I may have first used Slackware but I disremember.

When Jessie was released, I decided to look for alternatives as I do not like systemd. Is that enough to make me abandon Debian after all these years? In and of itself, no, of course not, there are plenty of other packages within Debian that I do not use. The issue I have is that I have no choice. Not that I'm a big fan of SysVInit either. I've been using Daemontools and then runit as my init system since I discovered them1. Starting with Jessie, it became harder to use a different init system, even with Sid using a non default init system is becoming tedious. I have better things to do with my time, so I chose to leave Debian. I have to choose to either learn systemd2 or use a distribution that hasn't drank the systemd kool-aid. I choose to do the latter.

As I have chosen not to drink the systemd kool-aid, I am now faced with choosing either a distribution that doesn't require systemd or use a kernel other than Linux. I looked briefly at the *BSD's, but found them to be too much anti-GPL for my tastes. I then looked at GNU Hurd, but found it lacking too much to use as my primary OS. I then discovered Nix and NixOS, which i think, in general, are moving in the right direction. Soon after I discovered Guix and GuixSD. Guix seemed to be the right fit for me. I am on a journey to migrate all of my boxen to GuixSD and run Guix on top of everything else I can.

I had wanted to move to GuixSD before Stretch was released. That didn't happen. My primary laptop has been running GuixSD for a while. The spousal unit's laptop has been running GuixSD for a few weeks.


  1. Probably late 1990's when looking to move from sendmail at the ISP I was working at. ↩

  2. I have to learn systemd anyway for $WORK. ↩

James Richardson
SouthEast LinuxFest 2017

I attended SouthEast LinuxFest June 9-11, 2017. I've been attending every years for the past 4 years or so. This one, as usual, had a very good participant turnout. Some of the bigger vendors such as RedHat and Rackspace were not present. Otherwise, I thought it was good event and I learned many things and met some interesting people. Even picked up few more signatures on my gpg key.

This year I did a crazy thing for an introvert. I presented a ?talk on functional package management with Guix. This was the first time I ever gave a talk in public. Overall, the experience was fun and educational. I ended up talking too fast and finished early, but that actually seemed a good thing as there were many interesting questions.

I hope to give a talk next year.

New contact info

I finally got around to updating my contact info. I now have a new email address which I publish. Hopefully, I have a good spam solution.

I no longer use xmpp/jabber. Guess I got tired of talking to myself. If you use such and wish to contact me via that channel, let me know, I may set the server back up.

My preferred method of contact is encrypted email.