{ description = "Theming framework for NixOS, Home Manager, nix-darwin, and Nix-on-Droid"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; flake-parts = { url = "github:hercules-ci/flake-parts"; inputs.nixpkgs-lib.follows = "nixpkgs"; }; systems.url = "github:nix-systems/default"; # keep-sorted start block=yes newline_separated=yes base16-fish = { # Lock the base16-fish input to a custom patch [2] ("Make autosuggestion # and comment base03"), since it is currently impossible to apply patches # to flake inputs [1] ("Support flake references to patches"). # # Once this single-patch approach no longer scales, the repository should # be properly forked, if [2] has still not been merged. # # [1]: https://github.com/NixOS/nix/issues/3920 # [2]: https://github.com/tomyun/base16-fish/pull/12 url = "github:tomyun/base16-fish/23ae20a0093dca0d7b39d76ba2401af0ccf9c561"; flake = false; }; base16-helix = { url = "github:tinted-theming/base16-helix"; flake = false; }; base16-vim = { # TODO: Unlock this input once [1] ("Seemingly bad parsing of whitespace # in abbreviated lists (affecting stylix's handling of base16-vim)") is # resolved, preventing us from fetching commit [2] ("fix(theme): Remove # illegal style attributes"). # # [1]: https://github.com/SenchoPens/fromYaml/issues/1 # [2]: https://github.com/tinted-theming/tinted-vim/commit/0508601eff146db2537eff23e93dd0c543914896 url = "github:tinted-theming/base16-vim/577fe8125d74ff456cf942c733a85d769afe58b7"; flake = false; }; base16.url = "github:SenchoPens/base16.nix"; firefox-gnome-theme = { url = "github:rafaelmardojai/firefox-gnome-theme"; flake = false; }; gnome-shell = { # TODO: Unlocking the input requires updating the patch: # https://github.com/nix-community/stylix/pull/224#discussion_r1460339607. url = "gitlab:GNOME/gnome-shell/gnome-49?host=gitlab.gnome.org"; flake = false; }; nur = { url = "github:nix-community/NUR"; inputs = { nixpkgs.follows = "nixpkgs"; flake-parts.follows = "flake-parts"; }; }; tinted-foot = { # Lock the tinted-foot input to prevent upstream breaking changes. # # Considering that Stylix eventually re-implements this input's # functionality [1], it might be easiest to lock this input to avoid # wasted maintenance effort. # # [1]: https://github.com/nix-community/stylix/issues/571 url = "github:tinted-theming/tinted-foot/fd1b924b6c45c3e4465e8a849e67ea82933fcbe4"; flake = false; }; tinted-kitty = { url = "github:tinted-theming/tinted-kitty"; flake = false; }; tinted-schemes = { url = "github:tinted-theming/schemes"; flake = false; }; tinted-tmux = { url = "github:tinted-theming/tinted-tmux"; flake = false; }; tinted-zed = { url = "github:tinted-theming/base16-zed"; flake = false; }; # keep-sorted end }; outputs = { flake-parts, systems, ... }@inputs: flake-parts.lib.mkFlake { inherit inputs; } { imports = [ ./flake ]; systems = import systems; }; }