49 lines
1.1 KiB
Nix
49 lines
1.1 KiB
Nix
{
|
|
description = "Catppuccin Color Palette";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
systems.url = "github:nix-systems/default";
|
|
|
|
palette.url = "github:catppuccin/palette";
|
|
palette.flake = false;
|
|
};
|
|
|
|
outputs =
|
|
{
|
|
nixpkgs,
|
|
systems,
|
|
palette,
|
|
...
|
|
}:
|
|
let
|
|
forEachSystem = nixpkgs.lib.genAttrs (import systems);
|
|
in
|
|
{
|
|
lib = {
|
|
palette = import ./palette.nix;
|
|
};
|
|
|
|
apps = forEachSystem (
|
|
system:
|
|
let
|
|
pkgs = nixpkgs.legacyPackages.${system};
|
|
rawPalette = builtins.fromJSON (builtins.readFile "${palette}/palette.json");
|
|
paletteNix = nixpkgs.lib.generators.toPretty { } rawPalette;
|
|
in
|
|
{
|
|
generate-palette = {
|
|
type = "app";
|
|
program = toString (
|
|
pkgs.writeShellScript "generate-palette" ''
|
|
echo 'Updating palette.nix ...'
|
|
cat > palette.nix << EOF
|
|
${paletteNix}
|
|
EOF
|
|
''
|
|
);
|
|
};
|
|
}
|
|
);
|
|
};
|
|
}
|