Soho vibes for Nix
Find a file
2024-06-29 10:12:06 -04:00
.github ci: add backport action (#253) 2024-06-29 10:12:06 -04:00
.sources chore(modules): update ports (#250) 2024-06-28 11:50:49 -04:00
assets/previews chore: add project previews (#35) 2023-06-25 20:16:54 -04:00
dev chore(modules): add tests for home-manager on darwin (#251) 2024-06-29 10:09:49 -04:00
docs chore: remove unused argument in mk-site.nix (#245) 2024-06-26 23:00:43 -04:00
modules chore(modules): add tests for home-manager on darwin (#251) 2024-06-29 10:09:49 -04:00
tests chore(modules): add tests for home-manager on darwin (#251) 2024-06-29 10:09:49 -04:00
.editorconfig feat!: move docs to website (#170) 2024-05-21 16:57:51 -04:00
.gitignore feat!: move docs to website (#170) 2024-05-21 16:57:51 -04:00
CONTRIBUTING.md chore(modules): add tests for home-manager on darwin (#251) 2024-06-29 10:09:49 -04:00
flake.nix feat: add subflake for development & testing (#64) 2023-12-16 23:38:36 +00:00
LICENSE feat: initial commit 2023-03-26 21:15:25 -04:00
README.md feat(modules)!: flavour -> flavor (#190) 2024-05-21 20:23:55 -04:00
renovate.json chore: Configure Renovate (#199) 2024-05-28 23:11:17 +01:00

Logo
Catppuccin for Nix

Previews

🌻 Latte
🪴 Frappé
🌺 Macchiato
🌿 Mocha

Usage

You will probably want to see our Getting started guide, but as a TLDR:

  1. 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>
    ];
  };
}

For standalone installations

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

  home.username = "pepperjack";
  programs.home-manager.enable = true;
}
  1. Choose your desired flavor with catppuccin.flavor
{
  catppuccin.flavor = "mocha";
}
  1. Enable for supported programs with catppucin.enable = true;
{
  programs.starship = {
    enable = true;
    catppuccin.enable = true;
  };
}
  1. Enable for all available programs you're using!
{
  catppuccin.enable = true;
}

🙋 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

💝 Thanks to

 

Copyright © 2023-present Catppuccin Org