Catppuccin for Nix
- Import the NixOS and home-manager modules
With Flakes
{
inputs = {
nixpkgs.url = "nixpkgs/nixos-22.11";
catppuccin.url = "github:catppuccin/nix";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
};
outputs = { nixpkgs, catppuccin, home-manager }: let
system = "x86_64-linux";
pkgs = import nixpkgs {inherit system;};
in {
# for nixos module home-manager installations
nixosConfigurations.host = pkgs.lib.nixosSystem {
inherit system;
modules = [
catppuccin.nixosModules.catppuccin
home-manager.nixosModules.home-manager
{
home-manager.users.user = {
imports = [
./home.nix
catppuccin.homeManagerModules.catppuccin
];
};
}
];
};
# for standalone home-manager installations
homeConfigurations.user = home-manager.lib.homeManagerConfiguration {
inherit pkgs;
modules = [
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 = [
<home-manager/nixos>
<catppuccin/modules/nixos>
];
home-manager.users.user = {
imports = [
<catppuccin/modules/home-manager>
];
};
}
{
imports = [
<catppuccin/modules/home-manager>
];
home.username = "user";
home.homeDirectory = "user";
programs.home-manager.enable = true;
}
- Choose your desired flavour with
catppuccin.flavour
{
catppuccin.flavour = "mocha";
}
- Enable for supported programs with
catppucin.enable = true;
{
programs.starship = {
enable = true;
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
Copyright © 2023-present Catppuccin Org