Catppuccin for Nix
You will probably want to see our Getting started guide, but as a TLDR:
- Import the NixOS and home-manager modules
With Flakes
{
inputs = {
nixpkgs.url = "nixpkgs/nixos-unstable";
catppuccin.url = "github:catppuccin/nix";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { nixpkgs, catppuccin, home-manager }: {
# for nixos module home-manager installations
nixosConfigurations.pepperjacksComputer = pkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
catppuccin.nixosModules.catppuccin
# if you use home-manager
home-manager.nixosModules.home-manager
{
# if you use home-manager
home-manager.users.pepperjack = {
imports = [
./home.nix
catppuccin.homeManagerModules.catppuccin
];
};
}
];
};
# for standalone home-manager installations
homeConfigurations.pepperjack = home-manager.lib.homeManagerConfiguration {
pkgs = nixpkgs.legacyPackages.x86_64-linux;
modules = [
./home.nix
catppuccin.homeManagerModules.catppuccin
];
};
};
}
With Nix Channels
sudo nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager
sudo nix-channel --add https://github.com/catppuccin/nix/archive/main.tar.gz catppuccin
sudo nix-channel --update
For NixOS module installations:
{
imports = [
<catppuccin/modules/nixos>
# if you use home-manager
<home-manager/nixos>
];
# if you use home-manager
home-manager.users.pepperjack = {
imports = [
<catppuccin/modules/home-manager>
];
};
}
{
imports = [
<catppuccin/modules/home-manager>
];
home.username = "pepperjack";
programs.home-manager.enable = true;
}
- Choose your desired flavor with
catppuccin.flavor
{
catppuccin.flavor = "mocha";
}
- Enable for supported programs with
catppucin.enable = true;
{
programs.starship = {
enable = true;
catppuccin.enable = true;
};
}
- Enable for all available programs you're using!
{
catppuccin.enable = true;
}
-
Q: "How do I know what programs are supported?"
A: You can find programs supported through home-manager here, and NixOS modules here -
Q: "How do I set
catppuccin.enable
for everything I use?"
A: You can setcatppuccin.enable
globally -
Q: "What versions of NixOS and home-manager are supported?"
A: We primarily support theunstable
branch, but try our best to support the current stable release. You can check if your stable release is currently supported at status.nixos.org -
Q: "How do I fix the error: ... during evaluation because the option 'allow-import-from-derivation' is disabled"
A: Some ports need to read and/or manipulate remote resources, resulting in Nix performing IFD.Disable modules that use IFD
{ programs = { cava.catppuccin.enable = false; gh-dash.catppuccin.enable = false; imv.catppuccin.enable = false; swaylock.catppuccin.enable = false; }; services = { mako.catppuccin.enable = false; }; }
Copyright © 2023-present Catppuccin Org