Upgrade Flake Inputs

VerifiedSafe

Updates flake.lock to the latest commits for all flake inputs without changing the NixOS release channel. It runs nix flake update, then optionally builds and verifies before applying. Use this to get newer package versions while staying on the same NixOS version.

Sby Skills Guide Bot
DevelopmentBeginner
6/2/2026
Claude Code
#nixos#flake#update-dependencies#nix-flake-update

Recommended for

Automated summary

This skill updates the flake.lock file of a NixOS project to pull in the latest commits from all flake inputs, keeping you on the same release channel.

Strengths

  • Safe operation with rollback capability
  • Verification step before applying
  • Updates all inputs with a single command

Limitations

  • Does not change the NixOS major version
  • May require manual fixes if build errors occur
When to use it

Use this skill when you want to refresh your NixOS configuration dependencies without upgrading the release channel.

When not to use it

Do not use this for NixOS major version upgrades (use 'upgrade-nixos') or if you prefer to update a single input selectively.

Security analysis

Safe
Quality score92/100

The skill runs standard NixOS package update commands via just recipes, with no destructive or exfiltrating actions. No external code execution or security bypass.

No concerns found

How this analysis is made

Examples

Update all flake inputs
Update flake.lock to get the latest packages from all inputs, then check the build and apply if successful.
Safe dry-run update
Run nix flake update to refresh flake.lock, then git diff to see changes, but do not apply.

name: upgrade-flake description: | This skill updates flake.lock to get latest packages within current NixOS release. Triggers: "update flake", "upgrade flake", "nix flake update", "bump flake.lock", "update flake inputs", "refresh inputs", "update dependencies". Runs nix flake update, checks build, optionally applies. Not for NixOS release upgrades (use upgrade-nixos for major version changes).

Upgrade Flake Inputs

Update flake.lock to pull in the latest commits from all flake inputs. This gets you newer package versions without changing NixOS release channels.

What this does

  • Updates all inputs to their latest commits (nixpkgs, home-manager, etc.)
  • Does NOT change release channels (stays on same NixOS version)
  • Safe operation - can always rollback

Process

  1. Update the lock file

    just update
    

    This runs nix flake update and updates flake.lock.

  2. Build and verify (safe dry-run)

    just check
    

    Builds all configurations without applying. If this fails, fix errors before proceeding.

  3. Apply the update (when ready)

    just switch
    
  4. Verify services are running

    systemctl status docker tailscaled
    

Rollback if needed

When you're done echo out the instructions to:

# Revert to previous system generation
sudo nixos-rebuild switch --rollback

# Revert flake.lock to previous state
git checkout flake.lock

Tips

  • show the user what ch git diff flake.lock to see what changed before applying
  • Old boot entries remain available for rollback until garbage collected

$ARGUMENTS

From the file to a first result

The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.

View the source and supporting files

This download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.

1. Download the file

Download SKILL.md

From the root of a test project, save the file as .skill-downloads/upgrade-flake-inputs-mm5t89fq/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.

Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.

mkdir -p '.skill-downloads/upgrade-flake-inputs-mm5t89fq' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/upgrade-flake-inputs-mm5t89fq/download' --output '.skill-downloads/upgrade-flake-inputs-mm5t89fq/SKILL.md.part' && mv '.skill-downloads/upgrade-flake-inputs-mm5t89fq/SKILL.md.part' '.skill-downloads/upgrade-flake-inputs-mm5t89fq/SKILL.md'

2. Check prerequisites

Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.

No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.

The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.

3. Load the skill

After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.

Claude Code
test -f '.skill-downloads/upgrade-flake-inputs-mm5t89fq/SKILL.md' && test -s '.skill-downloads/upgrade-flake-inputs-mm5t89fq/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/upgrade-flake' && cp -R '.skill-downloads/upgrade-flake-inputs-mm5t89fq' '.claude/skills/upgrade-flake'

OpenSkills

OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.

Official OpenSkills installation
openskills install './.skill-downloads/upgrade-flake-inputs-mm5t89fq'

openskills read 'upgrade-flake-inputs-mm5t89fq'

Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.

For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.

openskills sync

Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.

4. Try a first task

Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:

Read .skill-downloads/upgrade-flake-inputs-mm5t89fq/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.

Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.

Related skills