jbadeau/mise-nix
A backend plugin for Mise that allows you to install and manage packages using Nix
{ "createdAt": "2025-07-16T12:38:42Z", "defaultBranch": "main", "description": "A backend plugin for Mise that allows you to install and manage packages using Nix", "fullName": "jbadeau/mise-nix", "homepage": "", "language": "Lua", "name": "mise-nix", "pushedAt": "2026-01-11T19:44:10Z", "stargazersCount": 111, "topics": [ "asdf", "devbox", "devenv", "flake", "flox", "home-manger", "manager", "mise", "nix", "plugin", "tools" ], "updatedAt": "2026-01-19T12:00:31Z", "url": "https://github.com/jbadeau/mise-nix"}mise-nix
Section titled “mise-nix”A Mise plugin that brings the power of the Nix ecosystem to your development workflow.
Features
Section titled “Features”- 🚀 100,000+ packages from nixpkgs
- 🔌 VSCode extensions support
- 🔌 JetBrains plugins support
Prerequisites
Section titled “Prerequisites”Installation
Section titled “Installation”mise plugin install nix https://github.com/jbadeau/mise-nix.gitQuick Start
Section titled “Quick Start”# List available versionsmise ls-remote nix:hello
# Install versionmise install nix:hello@2.12.1Standard Packages (Recommended)
Section titled “Standard Packages (Recommended)”Uses nixhub.io for pre-built, cached packages:
# Latest versionmise install nix:hello
# Specific versionmise install nix:hello@2.12.1
# Version aliasesmise install nix:hello@stableFlake References
Section titled “Flake References”# GitHubmise install "nix:hello@github+nixos/nixpkgs"mise install "nix:hello@nixos/nixpkgs#hello"
# GitLabmise install "nix:mytool@gitlab+group/project"
# Git HTTPS URLsmise install "nix:hello@https+github.com/nixos/nixpkgs.git#hello"
# Git SSH URLsmise install "nix:mytool@ssh+git@github.com/owner/repo.git#default"Local Flakes
Section titled “Local Flakes”export MISE_NIX_ALLOW_LOCAL_FLAKES=truemise install "nix:mytool@./my-project"VSCode Extensions
Section titled “VSCode Extensions”mise install "nix:vscode+install=vscode-extensions.golang.go"Unfree Packages
Section titled “Unfree Packages”Some packages (e.g. Discord) are marked as unfree in nixpkgs. To install them:
# Using MISE_NIX env var (recommended - auto-sets NIXPKGS_ALLOW_UNFREE)export MISE_NIX_ALLOW_UNFREE=truemise install nix:discord
# Or using native Nix env var directlyexport NIXPKGS_ALLOW_UNFREE=1mise install nix:discordInsecure Packages
Section titled “Insecure Packages”Some packages with known vulnerabilities require explicit opt-in:
# Using MISE_NIX env var (recommended - auto-sets NIXPKGS_ALLOW_INSECURE)export MISE_NIX_ALLOW_INSECURE=truemise install nix:some-package
# Or using native Nix env var directlyexport NIXPKGS_ALLOW_INSECURE=1mise install nix:some-packageJetBrains Plugins
Section titled “JetBrains Plugins”Install plugins from the nix-jetbrains-plugins repository:
# Install File Watchers plugin for IntelliJ IDEA Ultimate (Linux)mise install "nix:jetbrains+install=jetbrains-plugins.x86_64-linux.idea-ultimate.2024.3.com.intellij.plugins.watcher"
# Install File Watchers plugin for IntelliJ IDEA Ultimate (macOS)mise install "nix:jetbrains+install=jetbrains-plugins.aarch64-darwin.idea-ultimate.2024.3.com.intellij.plugins.watcher"
# Install GitToolBox for GoLandmise install "nix:jetbrains+install=jetbrains-plugins.x86_64-linux.goland.2024.3.zielu.gittoolbox"
# Install Database Tools for WebStormmise install "nix:jetbrains+install=jetbrains-plugins.x86_64-linux.webstorm.2024.3.com.intellij.database"The plugin will be automatically extracted to the correct JetBrains IDE plugin directory. Restart your IDE to activate the installed plugins.
Notes:
- The system architecture (e.g.,
x86_64-linux,aarch64-darwin) must match your current system - Plugins are built directly from the nix-jetbrains-plugins flake repository without querying nixhub
- You can find plugin IDs at the bottom of JetBrains Marketplace pages
Limitations
Section titled “Limitations”Mise rejects colons (:) in version strings. Use these workaround prefixes:
| Instead of | Use |
|---|---|
github:owner/repo | github+owner/repo |
gitlab:group/project | gitlab+group/project |
git+https://host/repo.git | https+host/repo.git |
git+ssh://git@host/repo.git | ssh+git@host/repo.git |
Configuration
Section titled “Configuration”Environment variables can be used to configure this plugin:
| Variable | Description |
|---|---|
MISE_NIX_ALLOW_UNFREE | Set to true to allow unfree packages (auto-sets NIXPKGS_ALLOW_UNFREE=1) |
MISE_NIX_ALLOW_INSECURE | Set to true to allow insecure packages (auto-sets NIXPKGS_ALLOW_INSECURE=1) |
MISE_NIX_ALLOW_LOCAL_FLAKES | Set to true to enable local flake references |
MISE_NIX_NIXHUB_BASE_URL | Custom nixhub.io URL |
MISE_NIX_NIXPKGS_REPO_URL | Custom nixpkgs repository URL |
Native Nix env vars are also supported:
| Variable | Description |
|---|---|
NIXPKGS_ALLOW_UNFREE | Set to 1 to allow unfree packages (enables --impure) |
NIXPKGS_ALLOW_INSECURE | Set to 1 to allow insecure packages (enables --impure) |
Nix Setup
Section titled “Nix Setup”Add to ~/.config/nix/nix.conf:
experimental-features = nix-command flakessubstituters = https://cache.nixos.org https://nix-community.cachix.orgtrusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= nix-community.cachix.org-1:0VI8sF6Vsp2Jxw8+OFeVfYVdIY7X+GTtY+lR78QAbXs=Development
Section titled “Development”Setup and Tests
Section titled “Setup and Tests”Install Lua via brew (asdf plugin has a bug with LuaRocks 3.13.0):
brew install lua luarocksmise init # Link the pluginmise test # Unit testsmise e2e # Integration tests