catppuccin/nix

The soothing pastel theme - now for Nix!

Built on top of NixOS and home-manager, catppuccin/nix allows you to easily use Catppuccin across all of your apps!

What you'll find here

You should first check out our Getting started guide. Once you're done, you can take a look at all of our available options:

Find a problem?

Feel free to open an issue!

Getting started

catppuccin/nix supports both stable Nix and Flakes! Select one of the options below based on what you want to use.

Stable Nix

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

With npins

npins provides a way to easily "pin" and update external dependencies for your configurations.

Assuming you have followed their getting started guide, you can run the following:

npins add --name catppuccin github catppuccin nix

And in your system configuration:

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 of home-manager

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

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

With channels

Nix channels provide a way for you to easily download, update, and use our modules -- though at the cost of reproducibility across machines.

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

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

And in your system configuration:

{
  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 of home-manager

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

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

Flakes

Flakes are the preferred way to to use catppuccin/nix and will be the easiest method for those with them enabled

First, we need to add this project to our inputs so we can use it in our configurations:

{
  inputs = {
    nixpkgs.url = "nixpkgs/nixos-unstable";
    catppuccin.url = "github:catppuccin/nix";
  };
}

After, we can use them in a NixOS configuration like so

{
  nixosConfigurations.pepperjacksComputer = {
    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
          ];
        };
      }
    ];
  };
}

or if you use a standalone installation of home-manager

{
  homeConfigurations.pepperjack = home-manager.lib.homeManagerConfiguration {
    pkgs = nixpkgs.legacyPackages.x86_64-linux;
    modules = [
      ./home.nix
      catppuccin.homeManagerModules.catppuccin
    ];
  };
}

By the end, you should have a flake.nix that looks something like this

{
  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
      ];
    };
  };
}

Module Options

Below is a (searchable) list of all the options in the modules we provide. Enjoy!

If you have any issues with this documentation, don't hesitate to open an issue.

boot.loader.grub.catppuccin.enable

Whether to enable Catppuccin theme for grub.

Type: boolean

Default: false

Example: true

Declared by:

boot.loader.grub.catppuccin.flavor

Catppuccin flavor for grub

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

boot.plymouth.catppuccin.enable

Whether to enable Catppuccin theme for plymouth.

Type: boolean

Default: false

Example: true

Declared by:

boot.plymouth.catppuccin.flavor

Catppuccin flavor for plymouth

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

catppuccin.enable

Whether to enable Catppuccin globally.

Type: boolean

Default: false

Example: true

Declared by:

catppuccin.accent

Global Catppuccin accent

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”

Default: "mauve"

Declared by:

catppuccin.flavor

Global Catppuccin flavor

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

catppuccin.sources

Port sources used across all options

Type: lazy attribute set of raw value

Default: "{ ... }"

Declared by:

console.catppuccin.enable

Whether to enable Catppuccin theme for console.

Type: boolean

Default: false

Example: true

Declared by:

console.catppuccin.flavor

Catppuccin flavor for console

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

i18n.inputMethod.fcitx5.catppuccin.enable

Whether to enable Catppuccin theme for Fcitx5.

Type: boolean

Default: false

Example: true

Declared by:

i18n.inputMethod.fcitx5.catppuccin.accent

Catppuccin accent for Fcitx5

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”

Default: "mauve"

Declared by:

i18n.inputMethod.fcitx5.catppuccin.flavor

Catppuccin flavor for Fcitx5

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

services.displayManager.sddm.catppuccin.enable

Whether to enable Catppuccin theme for sddm.

Type: boolean

Default: false

Example: true

Declared by:

services.displayManager.sddm.catppuccin.assertQt6Sddm

Whether to enable checking if services.displayManager.sddm.package is the Qt 6 version.

This is to ensure the theme is applied properly, but may have false positives in the case of overridden packages for example .

Type: boolean

Default: true

Example: true

Declared by:

services.displayManager.sddm.catppuccin.background

Background image to use for the login screen

Type: path or string

Default: ""

Declared by:

services.displayManager.sddm.catppuccin.flavor

Catppuccin flavor for sddm

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

services.displayManager.sddm.catppuccin.font

Font to use for the login screen

Type: string

Default: "Noto Sans"

Declared by:

services.displayManager.sddm.catppuccin.fontSize

Font size to use for the login screen

Type: string

Default: "9"

Declared by:

services.displayManager.sddm.catppuccin.loginBackground

Add an additional background layer to the login panel

Type: boolean

Default: true

Declared by:

catppuccin.enable

Whether to enable Catppuccin globally.

Type: boolean

Default: false

Example: true

Declared by:

catppuccin.accent

Global Catppuccin accent

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”

Default: "mauve"

Declared by:

catppuccin.flavor

Global Catppuccin flavor

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

catppuccin.pointerCursor.enable

Whether to enable Catppuccin theme for pointer cursors.

Type: boolean

Default: false

Example: true

Declared by:

catppuccin.pointerCursor.accent

Catppuccin accent for cursors

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”, “dark”, “light”

Default: "mauve"

Declared by:

catppuccin.pointerCursor.flavor

Catppuccin flavor for pointer cursors

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

catppuccin.sources

Port sources used across all options

Type: lazy attribute set of raw value

Default: "{ ... }"

Declared by:

gtk.catppuccin.enable

Whether to enable Catppuccin theme for gtk.

Type: boolean

Default: false

Example: true

Declared by:

gtk.catppuccin.accent

Catppuccin accent for gtk

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”

Default: "mauve"

Declared by:

gtk.catppuccin.flavor

Catppuccin flavor for gtk

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

gtk.catppuccin.gnomeShellTheme

Whether to enable Catppuccin gtk theme for GNOME Shell.

Type: boolean

Default: false

Example: true

Declared by:

gtk.catppuccin.icon.enable

Whether to enable Catppuccin theme for GTK modified Papirus icon theme.

Type: boolean

Default: false

Example: true

Declared by:

gtk.catppuccin.icon.accent

Catppuccin accent for GTK modified Papirus icon theme

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”

Default: "mauve"

Declared by:

gtk.catppuccin.icon.flavor

Catppuccin flavor for GTK modified Papirus icon theme

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

gtk.catppuccin.size

Catppuccin size variant for gtk

Type: one of “standard”, “compact”

Default: "standard"

Declared by:

gtk.catppuccin.tweaks

Catppuccin tweaks for gtk

Type: list of (one of “black”, “rimless”, “normal”, “float”)

Default: [ ]

Declared by:

i18n.inputMethod.fcitx5.catppuccin.enable

Whether to enable Catppuccin theme for Fcitx5.

Type: boolean

Default: false

Example: true

Declared by:

i18n.inputMethod.fcitx5.catppuccin.accent

Catppuccin accent for Fcitx5

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”

Default: "mauve"

Declared by:

i18n.inputMethod.fcitx5.catppuccin.apply

Applies the theme by overwriting $XDG_CONFIG_HOME/fcitx5/conf/classicui.conf. If this is disabled, you must manually set the theme (e.g. by using fcitx5-configtool).

Type: boolean

Default: true

Declared by:

i18n.inputMethod.fcitx5.catppuccin.flavor

Catppuccin flavor for Fcitx5

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.aerc.catppuccin.enable

Whether to enable Catppuccin theme for aerc.

Type: boolean

Default: false

Example: true

Declared by:

programs.aerc.catppuccin.flavor

Catppuccin flavor for aerc

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.alacritty.catppuccin.enable

Whether to enable Catppuccin theme for alacritty.

Type: boolean

Default: false

Example: true

Declared by:

programs.alacritty.catppuccin.flavor

Catppuccin flavor for alacritty

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.bat.catppuccin.enable

Whether to enable Catppuccin theme for bat.

Type: boolean

Default: false

Example: true

Declared by:

programs.bat.catppuccin.flavor

Catppuccin flavor for bat

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.bottom.catppuccin.enable

Whether to enable Catppuccin theme for bottom.

Type: boolean

Default: false

Example: true

Declared by:

programs.bottom.catppuccin.flavor

Catppuccin flavor for bottom

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.btop.catppuccin.enable

Whether to enable Catppuccin theme for btop.

Type: boolean

Default: false

Example: true

Declared by:

programs.btop.catppuccin.flavor

Catppuccin flavor for btop

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.cava.catppuccin.enable

Whether to enable Catppuccin theme for cava.

Type: boolean

Default: false

Example: true

Declared by:

programs.cava.catppuccin.flavor

Catppuccin flavor for cava

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.cava.catppuccin.transparent

Whether to enable transparent version of flavor.

Type: boolean

Default: false

Example: true

Declared by:

programs.fish.catppuccin.enable

Whether to enable Catppuccin theme for fish.

Type: boolean

Default: false

Example: true

Declared by:

programs.fish.catppuccin.flavor

Catppuccin flavor for fish

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.foot.catppuccin.enable

Whether to enable Catppuccin theme for foot.

Type: boolean

Default: false

Example: true

Declared by:

programs.foot.catppuccin.flavor

Catppuccin flavor for foot

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.freetube.catppuccin.enable

Whether to enable Catppuccin theme for freetube.

Type: boolean

Default: false

Example: true

Declared by:

programs.freetube.catppuccin.accent

Catppuccin accent for FreeTube

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”

Default: "mauve"

Declared by:

programs.freetube.catppuccin.flavor

Catppuccin flavor for freetube

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.freetube.catppuccin.secondaryAccent

Catppuccin accent for FreeTube

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”

Default: "mauve"

Declared by:

programs.fuzzel.catppuccin.enable

Whether to enable Catppuccin theme for fuzzel.

Type: boolean

Default: false

Example: true

Declared by:

programs.fuzzel.catppuccin.accent

Catppuccin accent for fuzzel

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”

Default: "mauve"

Declared by:

programs.fuzzel.catppuccin.flavor

Catppuccin flavor for fuzzel

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.fzf.catppuccin.enable

Whether to enable Catppuccin theme for fzf.

Type: boolean

Default: false

Example: true

Declared by:

programs.fzf.catppuccin.accent

Catppuccin accent for fzf

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”

Default: "mauve"

Declared by:

programs.fzf.catppuccin.flavor

Catppuccin flavor for fzf

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.gh-dash.catppuccin.enable

Whether to enable Catppuccin theme for gh-dash.

Type: boolean

Default: false

Example: true

Declared by:

programs.gh-dash.catppuccin.accent

Catppuccin accent for gh-dash

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”

Default: "mauve"

Declared by:

programs.gh-dash.catppuccin.flavor

Catppuccin flavor for gh-dash

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.git.delta.catppuccin.enable

Whether to enable Catppuccin theme for delta.

Type: boolean

Default: false

Example: true

Declared by:

programs.git.delta.catppuccin.flavor

Catppuccin flavor for delta

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.gitui.catppuccin.enable

Whether to enable Catppuccin theme for gitui.

Type: boolean

Default: false

Example: true

Declared by:

programs.gitui.catppuccin.flavor

Catppuccin flavor for gitui

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.glamour.catppuccin.enable

Whether to enable Catppuccin theme for glamour.

Type: boolean

Default: false

Example: true

Declared by:

programs.glamour.catppuccin.flavor

Catppuccin flavor for glamour

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.helix.catppuccin.enable

Whether to enable Catppuccin theme for helix.

Type: boolean

Default: false

Example: true

Declared by:

programs.helix.catppuccin.flavor

Catppuccin flavor for helix

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.helix.catppuccin.useItalics

Whether to enable Italics in Catppuccin theme for Helix.

Type: boolean

Default: false

Example: true

Declared by:

programs.hyprlock.catppuccin.enable

Whether to enable Catppuccin theme for hyprlock.

Type: boolean

Default: false

Example: true

Declared by:

programs.hyprlock.catppuccin.accent

Catppuccin accent for hyprlock

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”

Default: "mauve"

Declared by:

programs.hyprlock.catppuccin.flavor

Catppuccin flavor for hyprlock

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.imv.catppuccin.enable

Whether to enable Catppuccin theme for imv.

Type: boolean

Default: false

Example: true

Declared by:

programs.imv.catppuccin.flavor

Catppuccin flavor for imv

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.k9s.catppuccin.enable

Whether to enable Catppuccin theme for k9s.

Type: boolean

Default: false

Example: true

Declared by:

programs.k9s.catppuccin.flavor

Catppuccin flavor for k9s

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.k9s.catppuccin.transparent

Whether to enable transparent version of flavor.

Type: boolean

Default: false

Example: true

Declared by:

programs.kitty.catppuccin.enable

Whether to enable Catppuccin theme for kitty.

Type: boolean

Default: false

Example: true

Declared by:

programs.kitty.catppuccin.flavor

Catppuccin flavor for kitty

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.lazygit.catppuccin.enable

Whether to enable Catppuccin theme for lazygit.

Type: boolean

Default: false

Example: true

Declared by:

programs.lazygit.catppuccin.accent

Catppuccin accent for lazygit

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”

Default: "mauve"

Declared by:

programs.lazygit.catppuccin.flavor

Catppuccin flavor for lazygit

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.micro.catppuccin.enable

Whether to enable Catppuccin theme for micro.

Type: boolean

Default: false

Example: true

Declared by:

programs.micro.catppuccin.flavor

Catppuccin flavor for micro

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.mpv.catppuccin.enable

Whether to enable Catppuccin theme for mpv.

Type: boolean

Default: false

Example: true

Declared by:

programs.mpv.catppuccin.accent

Catppuccin accent for mpv

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”

Default: "mauve"

Declared by:

programs.mpv.catppuccin.flavor

Catppuccin flavor for mpv

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.neovim.catppuccin.enable

Whether to enable Catppuccin theme for neovim.

Type: boolean

Default: false

Example: true

Declared by:

programs.neovim.catppuccin.flavor

Catppuccin flavor for neovim

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.newsboat.catppuccin.enable

Whether to enable Catppuccin theme for newsboat.

Type: boolean

Default: false

Example: true

Declared by:

programs.newsboat.catppuccin.flavor

Catppuccin flavor for newsboat

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.obs-studio.catppuccin.enable

Whether to enable Catppuccin theme for obs-studio.

Type: boolean

Default: false

Example: true

Declared by:

programs.obs-studio.catppuccin.flavor

Catppuccin flavor for obs-studio

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.rio.catppuccin.enable

Whether to enable Catppuccin theme for rio.

Type: boolean

Default: false

Example: true

Declared by:

programs.rio.catppuccin.flavor

Catppuccin flavor for rio

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.rofi.catppuccin.enable

Whether to enable Catppuccin theme for rofi.

Type: boolean

Default: false

Example: true

Declared by:

programs.rofi.catppuccin.flavor

Catppuccin flavor for rofi

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.skim.catppuccin.enable

Whether to enable Catppuccin theme for skim.

Type: boolean

Default: false

Example: true

Declared by:

programs.skim.catppuccin.flavor

Catppuccin flavor for skim

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.spotify-player.catppuccin.enable

Whether to enable Catppuccin theme for spotify-player.

Type: boolean

Default: false

Example: true

Declared by:

programs.spotify-player.catppuccin.flavor

Catppuccin flavor for spotify-player

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.starship.catppuccin.enable

Whether to enable Catppuccin theme for starship.

Type: boolean

Default: false

Example: true

Declared by:

programs.starship.catppuccin.flavor

Catppuccin flavor for starship

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.swaylock.catppuccin.enable

Whether to enable Catppuccin theme.

Type: boolean

Default:

`catppuccin.enable` if `home.stateVersion` is >= 23.05, false otherwise

Yes this is weird, and there's a funny story about it in the code comments

Example: true

Declared by:

programs.swaylock.catppuccin.flavor

Catppuccin flavor for swaylock

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.tmux.catppuccin.enable

Whether to enable Catppuccin theme for tmux.

Type: boolean

Default: false

Example: true

Declared by:

programs.tmux.catppuccin.extraConfig

Additional configuration for the catppuccin plugin.

Type: strings concatenated with “\n”

Default: ""

Example:

''
  set -g @catppuccin_status_modules_right "application session user host date_time"
''

Declared by:

programs.tmux.catppuccin.flavor

Catppuccin flavor for tmux

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.tofi.catppuccin.enable

Whether to enable Catppuccin theme for tofi.

Type: boolean

Default: false

Example: true

Declared by:

programs.tofi.catppuccin.flavor

Catppuccin flavor for tofi

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.waybar.catppuccin.enable

Whether to enable Catppuccin theme for waybar.

Type: boolean

Default: false

Example: true

Declared by:

programs.waybar.catppuccin.flavor

Catppuccin flavor for waybar

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.waybar.catppuccin.mode

Defines how to include the catppuccin theme css file:

  • prependImport: Prepends the import statement, if programs.waybar.style is a string (with default override priority).
  • createLink: Creates a symbolic link ~/.config/waybar/catppuccin.css, which needs to be included in the waybar stylesheet.

Type: one of “prependImport”, “createLink”

Default: "prependImport"

Declared by:

programs.yazi.catppuccin.enable

Whether to enable Catppuccin theme for yazi.

Type: boolean

Default: false

Example: true

Declared by:

programs.yazi.catppuccin.accent

Catppuccin accent for yazi

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”

Default: "mauve"

Declared by:

programs.yazi.catppuccin.flavor

Catppuccin flavor for yazi

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.zathura.catppuccin.enable

Whether to enable Catppuccin theme for zathura.

Type: boolean

Default: false

Example: true

Declared by:

programs.zathura.catppuccin.flavor

Catppuccin flavor for zathura

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.zellij.catppuccin.enable

Whether to enable Catppuccin theme for zellij.

Type: boolean

Default: false

Example: true

Declared by:

programs.zellij.catppuccin.flavor

Catppuccin flavor for zellij

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

programs.zsh.syntaxHighlighting.catppuccin.enable

Whether to enable Catppuccin theme for Zsh Syntax Highlighting.

Type: boolean

Default: false

Example: true

Declared by:

programs.zsh.syntaxHighlighting.catppuccin.flavor

Catppuccin flavor for Zsh Syntax Highlighting

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

qt.style.catppuccin.enable

Whether to enable Catppuccin theme for Kvantum.

Type: boolean

Default: false

Example: true

Declared by:

qt.style.catppuccin.accent

Catppuccin accent for Kvantum

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”

Default: "mauve"

Declared by:

qt.style.catppuccin.apply

Applies the theme by overwriting $XDG_CONFIG_HOME/Kvantum/kvantum.kvconfig. If this is disabled, you must manually set the theme (e.g. by using kvantummanager).

Type: boolean

Default: true

Declared by:

qt.style.catppuccin.flavor

Catppuccin flavor for Kvantum

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

services.dunst.catppuccin.enable

Whether to enable Catppuccin theme for dunst.

Type: boolean

Default: false

Example: true

Declared by:

services.dunst.catppuccin.flavor

Catppuccin flavor for dunst

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

services.dunst.catppuccin.prefix

Prefix to use for the dunst drop-in file

Type: string

Default: "00"

Declared by:

services.mako.catppuccin.enable

Whether to enable Catppuccin theme for mako.

Type: boolean

Default: false

Example: true

Declared by:

services.mako.catppuccin.accent

Catppuccin accent for mako

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”

Default: "mauve"

Declared by:

services.mako.catppuccin.flavor

Catppuccin flavor for mako

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

services.polybar.catppuccin.enable

Whether to enable Catppuccin theme for polybar.

Type: boolean

Default: false

Example: true

Declared by:

services.polybar.catppuccin.flavor

Catppuccin flavor for polybar

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

wayland.windowManager.hyprland.catppuccin.enable

Whether to enable Catppuccin theme for hyprland.

Type: boolean

Default: false

Example: true

Declared by:

wayland.windowManager.hyprland.catppuccin.accent

Catppuccin accent for hyprland

Type: one of “blue”, “flamingo”, “green”, “lavender”, “maroon”, “mauve”, “peach”, “pink”, “red”, “rosewater”, “sapphire”, “sky”, “teal”, “yellow”

Default: "mauve"

Declared by:

wayland.windowManager.hyprland.catppuccin.flavor

Catppuccin flavor for hyprland

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

wayland.windowManager.sway.catppuccin.enable

Whether to enable Catppuccin theme for sway.

Type: boolean

Default: false

Example: true

Declared by:

wayland.windowManager.sway.catppuccin.flavor

Catppuccin flavor for sway

Type: one of “latte”, “frappe”, “macchiato”, “mocha”

Default: "mocha"

Declared by:

FAQ

  • 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 set catppuccin.enable globally

  • Q: "What versions of NixOS and home-manager are supported?"
    A: We primarily support the unstable 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;
      };
    }
    

Changelog

1.1.0 (2024-11-08)

Features

  • home-manager/fcitx5: add accent support (#343) (0b7bf04)
  • home-manager/fzf: add accent support (#331) (45745fe)
  • home-manager/mako: add accent color support (#323) (966af28)
  • home-manager/mpv: add support for uosc (#291) (8bdb55c)
  • home-manager: add support for aerc (#338) (96cf8b4)
  • home-manager: add support for freetube (#327) (6effc32)
  • home-manager: add support for fuzzel (#75) (7e23de3)
  • home-manager: add support for hyprlock (#330) (faea883)
  • home-manager: add support for obs-studio (#324) (76dd2b2)
  • home-manager: add support for spotify-player (#296) (ff4128f)
  • home-manager: update yazi for accent support (#360) (250c986)
  • nixos: add support for fcitx5 (#221) (309c49f)

Bug Fixes

  • home-manager/dunst: avoid IFD (#302) (9fdb8aa)
  • home-manager/foot: avoid IFD (#300) (38df8bf)
  • home-manager/gtk: support all tweaks (#274) (5520567)
  • home-manager/hyprland: allow merging sources option (#309) (b1e6a8c)
  • home-manager/hyprland: import accents from file (#347) (65f2a8a)
  • home-manager/hyprland: inherit cursor size, unset hyprcursor env vars (#299) (512306a)
  • home-manager/k9s: support darwin without XDG (#311) (0047cf5)
  • home-manager/kitty: use new themeFile option on 24.11 (#337) (f91de98)
  • home-manager/kvantum: don't uppercase accents and flavors in override (#358) (641cfc3)
  • home-manager/lazygit: avoid IFD (#304) (66f4ea1)
  • home-manager/lazygit: support darwin without XDG (#313) (8886a68)
  • home-manager/mpv: avoid IFD (#303) (f1ccaad)
  • home-manager/tofi: avoid IFD (#301) (afe2c4c)
  • home-manager/zathura: avoid IFD (#298) (41d51d7)

1.0.2 (2024-07-02)

Bug Fixes

  • home-manager/cursors: exclude from catppuccin.enable (#263) (9eb0610)

Reverts

  • gtk: don't replace normal tweak with default (#271) (7bfda77)

1.0.1 (2024-06-30)

Bug Fixes

  • home-manager/gtk: replace normal tweak with default (#261) (92e2d7a)

1.0.0 (2024-06-29)

⚠ BREAKING CHANGES

  • home-manager: add support for global cursors (#195)
  • modules: bump minimum supported release to 24.05 (#203)
  • modules: flavour -> flavor (#190)
  • move docs to website (#170)
  • modules: use flavor and accent defaults from org (#145)
  • modules: auto import modules & improve passing of arguments (#60)
  • switch to NixOS/HM modules

Features

  • add autogenerated docs (#39) (a60d227)
  • add flake-compat support (359e24d)
  • add flavour option to nixos module (13e5ba5)
  • add subflake for development & testing (#64) (07e54f5)
  • gtk: add cursor theming support (#61) (f3aaec1)
  • hm: micro init (#47) (71f4a7d)
  • home-manager: add apply option for fcitx5 (#144) (7bf0166)
  • home-manager: add extraConfig option for tmux (#137) (2429fdc)
  • home-manager: add gnomeShellTheme option for gtk (#161) (5e0f749)
  • home-manager: add gtk icon theme (#165) (27e71a3)
  • home-manager: add starship theme (fa2b78a)
  • home-manager: add support for alacritty (#22) (c5eeae7)
  • home-manager: add support for btop (#20) (25edfe9)
  • home-manager: add support for cava (#121) (04fc060)
  • home-manager: add support for cava themes with transparent background (#191) (ba40680)
  • home-manager: add support for dunst (#104) (9e71751)
  • home-manager: add support for fish (#46) (5713b47)
  • home-manager: add support for foot (#120) (5e09f8a)
  • home-manager: add support for gh-dash (#143) (78a000d)
  • home-manager: add support for global cursors (#195) (6e77fdd)
  • home-manager: add support for kitty (#19) (bdc4336)
  • home-manager: add support for kvantum (#175) (f32e5ab)
  • home-manager: add support for neovim (#27) (20a4a5d)
  • home-manager: add support for newsboat (#217) (85558d1)
  • home-manager: add support for rofi (#108) (56f3c60)
  • home-manager: add support for skim (#132) (bcec389)
  • home-manager: add support for sway (#26) (12733d6)
  • home-manager: add support for tmux (#21) (8f93009)
  • home-manager: add support for tofi (#131) (0260166)
  • home-manager: add support for waybar (#133) (2788bec)
  • home-manager: add support for zellij (#139) (a5d452a)
  • home-manager: add support for zsh-syntax-highlighting (#146) (ef2f0d9)
  • home-manager: add transparent option for k9s (#138) (ade2e73)
  • home-manager: allow dark and light accents for gtk cursors (#116) (4f5d429)
  • home-manager: init delta module (#82) (a3e55e6)
  • home-manager: init fcitx5 module (#128) (b35a034)
  • home-manager: init fzf module (#93) (b08e480)
  • home-manager: init gitui module (#98) (19256c4)
  • home-manager: init hyprland module (#56) (88376af)
  • home-manager: init imv module (#94) (92034aa)
  • home-manager: init k9s module (#110) (ef464d6)
  • home-manager: init mako module (#49) (4840eda)
  • home-manager: init mpv module (#95) (f9d03f8)
  • home-manager: init rio module (#100) (453cca1)
  • home-manager: init swaylock module (#92) (6ab5126)
  • home-manager: init yazi module (#101) (9307549)
  • home-manager: init zathura module (#53) (4ba874e)
  • home-manager: set hyprcursor (#218) (e55fb42)
  • home-manager: source hyprland theme and add accent colors (#80) (cab752b)
  • initial commit (fad8bd6)
  • limit use of IFD, add auto updates & vm testing (#40) (a30f0ff)
  • modules/home-manager: add glamour (#44) (a97085d)
  • modules: add catppuccin.sources option (#129) (28e6d8a)
  • modules: add declarations (#198) (296adaf)
  • modules: add global enable option (#124) (e45a44e)
  • modules: add support for bottom (99216b8)
  • modules: add support for helix (#8) (298605b)
  • modules: add support for lazygit (547ba19)
  • modules: add support for polybar (38fa66c)
  • modules: add util library (#25) (be6320c)
  • modules: bump minimum supported release to 24.05 (#203) (dc9553e)
  • modules: flavour -> flavor (#190) (fea5242)
  • modules: support nixos & home-manager's stable branches (#182) (aef5672)
  • move docs to website (#170) (1f11b0a)
  • nixos: add global accent option (#164) (8d3e50a), closes #134
  • nixos: add support for grub (8b7aa60)
  • nixos: add support for plymouth (#166) (9ffc6b8)
  • nixos: add support for sddm (#168) (d8a6d8a)
  • nixos: init console module (#69) (18419d5)
  • switch to NixOS/HM modules (78b67b4)

Bug Fixes

  • don’t enable bat (8c3f98e)
  • home-manager/bat: use attrset for theme specification (#43) (4ade204)
  • home-manager/sway: avoid IFD (#45) (7513e5e)
  • home-manager: add file for yazi syntax highlighting (#119) (e69bd64)
  • home-manager: adopt new naming scheme for gtk theme (#34) (af61ea4)
  • home-manager: allow overriding styles for the rofi theme (#123) (7566389)
  • home-manager: apply lazygit theme (#76) (d4c0e28)
  • home-manager: assert qt.platformTheme.name for kvantum (#244) (e02aca9)
  • home-manager: assert qt.style.name for kvantum theme (#242) (1adbfeb)
  • home-manager: capitalize "Light" and "Dark" (4302239)
  • home-manager: capitalize gtkTheme (#159) (360c974)
  • home-manager: correctly set btop's theme (#48) (3a12806)
  • home-manager: don't let swaylock cause infinite recursion (#243) (de0dec4)
  • home-manager: don't set home.activation.batCache (66ae727)
  • home-manager: dont declare xdg.configFile when btop isn't enabled (#37) (9616836)
  • home-manager: gtk cursors are now lowercase (#212) (6336fb8)
  • home-manager: link GTK 4.0 files (#114) (4b98726)
  • home-manager: make dark/light lowecase for style names in gtk (#147) (1fbdfda)
  • home-manager: match refactors in bat source (#91) (03b95ca)
  • home-manager: only enable pointerCursor by default on linux (#248) (63e0859)
  • home-manager: properly enable gtk in vm test (29bd8a3)
  • home-manager: remove xdg.enable assertions (#181) (1f19ce7)
  • home-manager: use correct gtk theme name (#239) (2fb16f2)
  • home-manager: use correct name for gtk cursor (#106) (852f9c7)
  • home-manager: use local flavour option for delta (#150) (e0fa29f)
  • import bat.nix (f79d1ec)
  • modules: pass version to mkOptionDoc correctly (#153) (f46dffa)
  • modules: shorten defaultText for catppuccin.sources (#185) (8179a45)
  • modules: vendor our own revision of nixpkgs (c88242c)
  • nixos: sddm package not being installed (#194) (144b70d)
  • nixos: use the qt 6 version of sddm (#230) (b6c8545)
  • set correct path for modules (f3adc02)

Miscellaneous Chores

  • modules: use flavor and accent defaults from org (#145) (3d3db41)

Code Refactoring

  • modules: auto import modules & improve passing of arguments (#60) (714c415)

Contributing

catppuccin/nix is an open source, MIT licensed project. Contributions - including bug reports, feature requests, and improvements - can be made on our GitHub repository.

If you are interested in hacking away at our modules, make sure to read our Contributing guidelines