Notes on Nix

After writing about making notes in text files, I came across a video by Nick Janetakis (previous Beyond Blocks podcast guest), showing a simple Bash application he'd written to manage his own plain text notes.

I thought I'd try it, but it wasn't available in the nixpkgs store so I wasn't able to install it.

Some of the Vim and Neovim plugins I use also aren't available and I've added those to my configuration myself and wanted to do the same for this.

Here's the Nix derivation I wrote:

{ pkgs, ... }:

pkgs.stdenv.mkDerivation rec {
pname = "notes";
version = "0.3.0";

src = pkgs.fetchFromGitHub {
owner = "nickjj";
repo = "notes";
rev = "v${version}";
sha256 = "gyrsTWPT8w4DsRim3jlbjvpXwX/y+7SwLaM+3LVOJdU=";
};

buildInputs = with pkgs; [ bash ];

installPhase = ''
mkdir -p $out/bin
cp $src/notes $out/bin/notes
chmod +x $out/bin/notes
'';
}

I defined the GitHub repository name and owner, the version number and the required installation steps, and was able to add it to my configuration for use in NixOS and Home Manager.

Now, I can type notes and easily capture whatever I wanted to document in the appropriate text file..

FYI, there is an existing notes program in nixpkgs, but I overwrote it with Nick's, which is another great thing about using Nix!