Soho vibes for Nix
Find a file
Pol Dellaiera e45a44e26e
feat(modules): add global enable option (#124)
* feat: add `enable` option globally

* chore(modules): use catppuccin.enable in test.nix

---------

Co-authored-by: seth <getchoo@tuta.io>
2024-04-22 13:39:12 -04:00
.github ci: validate source changes in PRs (#113) 2024-04-11 22:48:24 -04:00
_sources feat(home-manager): init mpv module (#95) 2024-04-18 21:55:19 +00:00
assets/previews chore: add project previews (#35) 2023-06-25 20:16:54 -04:00
dev feat(modules): add global enable option (#124) 2024-04-22 13:39:12 -04:00
docs docs: update for f9d03f8 2024-04-18 21:55:50 +00:00
modules feat(modules): add global enable option (#124) 2024-04-22 13:39:12 -04:00
.editorconfig feat: initial commit 2023-03-26 21:15:25 -04:00
.gitignore feat: initial commit 2023-03-26 21:15:25 -04:00
CONTRIBUTING.md docs: cleanup CONTRIBUTING.md 2024-01-11 17:03:38 -05:00
default.nix feat: limit use of IFD, add auto updates & vm testing (#40) 2023-11-02 13:55:47 -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
nvfetcher.toml feat(home-manager): init mpv module (#95) 2024-04-18 21:55:19 +00:00
README.md docs: correct use of modules over imports 2023-12-16 18:45:45 -05:00
test.nix feat(modules): add global enable option (#124) 2024-04-22 13:39:12 -04:00

Logo
Catppuccin for Nix

Previews

🌻 Latte
🪴 Frappé
🌺 Macchiato
🌿 Mocha

Usage

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

For standalone installations

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

  home.username = "user";
  home.homeDirectory = "user";
  programs.home-manager.enable = true;
}
  1. Choose your desired flavour with catppuccin.flavour
{
  catppuccin.flavour = "mocha";
}
  1. Enable for supported programs with catppucin.enable = true;
{
  programs.starship = {
    enable = true;
    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

💝 Thanks to

 

Copyright © 2023-present Catppuccin Org