---
title: Stable Nix
description: Start using Catppuccin with Flakes, NixOS, and home-manager
---

import { Tabs, TabItem } from "@astrojs/starlight/components";

When using stable Nix, we have a couple options for installing `catppuccin/nix`:

## With `npins`

[`npins`](https://github.com/andir/npins) provides a way to easily ["pin"](https://nix.dev/tutorials/first-steps/towards-reproducibility-pinning-nixpkgs) and update external dependencies for your configurations.

Assuming you have followed [their getting started guide](https://github.com/andir/npins#getting-started), you can run the following:

<Tabs syncKey="channel">

<TabItem label="Unstable">

```sh
npins add --name catppuccin github catppuccin nix
```

</TabItem>

<TabItem label="26.05">

```sh
npins add --name catppuccin --branch release-26.05 github catppuccin nix
```

</TabItem>

</Tabs>

And in your system configuration:

```nix
let
  sources = import ./npins;
in
{
  imports = [
    (sources.catppuccin + "/modules/nixos")
  ];

  # if you use home-manager
  home-manager.users.pepperjack = {
    imports = [
      (sources.catppuccin + "/modules/home-manager")
    ];
  };
}
```

or if you use a [standalone installation](https://nix-community.github.io/home-manager/index.html#sec-install-standalone) of `home-manager`

```nix
let
  sources = import ./npins.nix;
in
{
  imports = [
    (sources.catppuccin + "/modules/home-manager")
  ];

  home.username = "pepperjack";
  programs.home-manager.enable = true;
}

```

## With channels

[Nix channels](https://nixos.org/manual/nix/stable/command-ref/nix-channel.html) provide a way for you to easily download, update, and use our modules -- though at the cost of reproducible across machines.

To add `catppuccin/nix` as a channel, you can run the following:

<Tabs syncKey="channel">

<TabItem label="Unstable">

```sh
sudo nix-channel --add https://github.com/catppuccin/nix/archive/main.tar.gz catppuccin
sudo nix-channel --update
```

</TabItem>

<TabItem label="26.05">

```sh
sudo nix-channel --add https://github.com/catppuccin/nix/archive/release-26.05.tar.gz catppuccin
sudo nix-channel --update
```

</TabItem>

</Tabs>

And in your system configuration:

```nix
{
  imports = [
    <catppuccin/modules/nixos>
  ];

  # if you use home-manager
  home-manager.users.pepperjack = {
    imports = [
      <catppuccin/modules/home-manager>
    ];
  };
}
```

or if you use a [standalone installation](https://nix-community.github.io/home-manager/index.html#sec-install-standalone) of `home-manager`

```nix
{
  imports = [
    <catppuccin/modules/home-manager>
  ];

  home.username = "pepperjack";
  programs.home-manager.enable = true;
}

```
