uuid: - value: fe080d63-d163-4e3f-9efc-4ec3c8f9c03c langcode: - value: en type: - target_id: daily_email target_type: node_type target_uuid: 8bde1f2f-eef9-4f2d-ae9c-96921f8193d7 revision_timestamp: - value: '2025-05-11T09:00:03+00:00' revision_uid: - target_type: user target_uuid: b8966985-d4b2-42a7-a319-2e94ccfbb849 revision_log: { } status: - value: true uid: - target_type: user target_uuid: b8966985-d4b2-42a7-a319-2e94ccfbb849 title: - value: 'Notes on Nix' created: - value: '2024-12-15T00:00:00+00:00' changed: - value: '2025-05-11T09:00:03+00:00' promote: - value: false sticky: - value: false default_langcode: - value: true revision_translation_affected: - value: true path: - alias: /daily/2024/12/15/notes-on-nix langcode: en body: - value: |

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!

format: full_html processed: |

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!

summary: null field_daily_email_cta: { }