{ 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 '' ); }; } ); }; }