Files
dotfiles/themes/catppuccin.nix
2024-03-21 21:44:01 +05:30

75 lines
1.6 KiB
Nix

{pkgs, ...}: let
mkCatppuccin = {
owner ? "catppuccin",
version ? "0.0.1",
item,
rev ? "main",
sha256 ? pkgs.lib.fakeSha256,
override ? null,
}:
pkgs.stdenv.mkDerivation {
inherit version override;
pname = item;
src = pkgs.fetchFromGitHub {
inherit owner rev sha256;
repo = item;
};
buildPhase = ''
echo "Building Cattppucin for ${item}..."
mkdir -p $out
cp -r ./* $out/
'';
};
flavors = ["latte" "frappe" "macchiato" "mocha"];
mapFlavor = flavorMap:
(flavor: {
name = flavor;
value = flavorMap flavor;
})
flavors;
in {
bat = mkCatppuccin {
item = "bat";
sha256 = "sha256-yHt3oIjUnljARaihalcWSNldtaJfVDfmfiecYfbzGs0";
};
hyprland = mkCatppuccin {
item = "hyprland";
sha256 = "sha256-9BhZq9J1LmHfAPBqOr64chiAEzS+YV6zqe9ma95V3no";
};
starship = mkCatppuccin {
item = "starship";
sha256 = "sha256-nsRuxQFKbQkyEI4TXgvAjcroVdG+heKX5Pauq/4Ota0";
};
fish = mkCatppuccin {
item = "fish";
sha256 = "sha256-Dc/zdxfzAUM5NX8PxzfljRbYvO9f9syuLO8yBr+R3qg";
};
ironbar = mkCatppuccin {
item = "waybar";
rev = "v1.0";
sha256 = "sha256-vfwfBE3iqIN1cGoItSssR7h0z6tuJAhNarkziGFlNBw";
};
newsboat = mkCatppuccin {
item = "newsboat";
rev = "main";
sha256 = "sha256-czvR3bVZ0NfBmuu0JixalS7B1vf1uEGSTSUVVTclKxI";
};
gtk = pkgs.catppuccin-gtk.override {
variant = "mocha";
size = "standard";
accents = ["mauve"];
tweaks = ["normal"];
};
papirus-folders = pkgs.catppuccin-papirus-folders.override {
accent = "mauve";
flavor = "mocha";
};
}