uuid: - value: 753da3d5-1cc0-40df-8afa-101986188a96 langcode: - value: en type: - target_id: daily_email target_type: node_type target_uuid: 8bde1f2f-eef9-4f2d-ae9c-96921f8193d7 revision_timestamp: - value: '2025-05-11T08:59:58+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: 'nix is like nvm, but for everything' created: - value: '2025-04-15T00:00:00+00:00' changed: - value: '2025-05-11T08:59:58+00:00' promote: - value: false sticky: - value: false default_langcode: - value: true revision_translation_affected: - value: true path: - alias: /daily/2025/04/15/nix-nvm langcode: en body: - value: |

I was recently explaining and demonstrating Nix and direnv to a colleague and showing how, when I moved into a directory, new packages or different versions of packages became available.

If I left the directory, I was reverted back to my global packages and versions.

In this demonstration, I was showing how I can have different versions of PHP and node for a particular project - replacing a lot of what I'd previously used tools like Vagrant and Docker for.

I came up with a comparison between Nix and nvm - the node version manager - a tool that allows you to install multiple versions of nodejs and switch between them.

Using Nix and direnv is more seamless, but it works for everything.

I'm able to switch versions of PHP, MySQL, MariaDB, PostgreSQL or anything else I need with Nix.

Not just node, and without needing containers.

format: full_html processed: |

I was recently explaining and demonstrating Nix and direnv to a colleague and showing how, when I moved into a directory, new packages or different versions of packages became available.

If I left the directory, I was reverted back to my global packages and versions.

In this demonstration, I was showing how I can have different versions of PHP and node for a particular project - replacing a lot of what I'd previously used tools like Vagrant and Docker for.

I came up with a comparison between Nix and nvm - the node version manager - a tool that allows you to install multiple versions of nodejs and switch between them.

Using Nix and direnv is more seamless, but it works for everything.

I'm able to switch versions of PHP, MySQL, MariaDB, PostgreSQL or anything else I need with Nix.

Not just node, and without needing containers.

summary: null field_daily_email_cta: { }