diff --git a/.gitignore b/.gitignore
index 0a34ea9..582ee4e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,5 @@
+# keep-sorted start
.direnv
.rumdl_cache
result*
+# keep-sorted end
diff --git a/README.md b/README.md
index 3757261..1983262 100644
--- a/README.md
+++ b/README.md
@@ -1,37 +1,44 @@
+

+

-# nix-userstyles
+ # nix-userstyles
-This module generates CSS from the upstream Catppuccin userstyles and remaps
-the Catppuccin Mocha palette to your own Base16-compatible palette.
+ Small flake library for generating Firefox userstyles from the upstream Catppuccin themes, then remapping them to any Base16-compatible palette.
-[](https://github.com/adam01110/fzfish/actions/workflows/ci.yml)
+ [](https://github.com/adam01110/nix-userstyles/actions/workflows/ci.yml)
+ [](https://github.com/adam01110/nix-userstyles)
+
+ [](https://nixos.wiki/wiki/Flakes)
+ [](https://github.com/catppuccin/userstyles)
+ [](https://support.mozilla.org/en-US/kb/contributors-guide-firefox-advanced-customization)
+ [Overview](#overview) - [Usage](#usage) - [Library](#library) - [Development](#development) - [Notes](#notes)
-
+This repository packages the upstream [`catppuccin/userstyles`](https://github.com/catppuccin/userstyles) themes, compiles them with Nix, and swaps the Catppuccin Mocha palette for your own Base16 palette. It also includes bundled support for the Catppuccin Discord theme.
-## What it provides
+## Overview
-- `lib.mkUserStyles`: build the generated upstream CSS as a derivation
-- `lib.withExtraCss`: append your own CSS to an existing stylesheet derivation
-- `lib.mkUserContent`: build Firefox-ready `userContent.css` in one step
-- bundled support for Catppuccin's Discord theme in addition to the main
- `catppuccin/userstyles` repository
+- Exposes three library helpers: `mkUserStyles`, `withExtraCss`, and `mkUserContent`.
+- Builds upstream LESS and SCSS sources into a single stylesheet derivation.
+- Replaces Catppuccin tokens with Base16 and derived Base24-style color slots.
+- Marks generated declarations as `!important` so they win against site styles more reliably.
+- Ships example package outputs for plain styles, Firefox-ready `userContent.css`, and appended custom CSS.
-## How it works
-
-`nix-userstyles` compiles upstream LESS and SCSS sources, then replaces the
-Catppuccin color tokens with values from your palette.
-
-The input palette must provide the standard Base16 keys:
-
-`base00` `base01` `base02` `base03` `base04` `base05` `base06` `base07`
-`base08` `base09` `base0A` `base0B` `base0C` `base0D` `base0E` `base0F`
+## Usage
-Additional Base24-style slots used internally are derived automatically.
+Add the flake as an input and use one of the exported helpers from `nix-userstyles.lib`.
-## Usage
+```nix
+{
+ inputs = {
+ nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
+ nix-userstyles.url = "github:adam01110/nix-userstyles";
+ nix-colors.url = "github:misterio77/nix-colors";
+ };
+}
+```
### Build Firefox `userContent.css`
@@ -43,10 +50,9 @@ Additional Base24-style slots used internally are derived automatically.
}:
let
nix-colors = builtins.getFlake "github:misterio77/nix-colors";
- palette = nix-colors.outputs.colorSchemes.dracula.palette;
+ palette = nix-colors.outputs.colorSchemes.gruvbox-dark-medium.palette;
system = pkgs.stdenv.hostPlatform.system;
-in
-{
+in {
home.file.".mozilla/firefox/default/chrome/userContent.css".source =
nix-userstyles.lib.mkUserContent system {
inherit palette;
@@ -54,16 +60,12 @@ in
"github"
"reddit"
"youtube"
- "discord"
];
};
}
```
-### Add your own CSS
-
-`mkUserContent` accepts an `extraCss` string that is appended after the generated
-userstyles.
+### Append your own CSS
```nix
{
@@ -75,8 +77,7 @@ let
nix-colors = builtins.getFlake "github:misterio77/nix-colors";
palette = nix-colors.outputs.colorSchemes.dracula.palette;
system = pkgs.stdenv.hostPlatform.system;
-in
-{
+in {
home.file.".mozilla/firefox/default/chrome/userContent.css".source =
nix-userstyles.lib.mkUserContent system {
inherit palette;
@@ -102,8 +103,8 @@ in
{
config,
lib,
- pkgs,
nix-userstyles,
+ pkgs,
...
}:
let
@@ -111,44 +112,68 @@ let
palette = filterAttrs (name: _: hasPrefix "base0" name) config.lib.stylix.colors;
system = pkgs.stdenv.hostPlatform.system;
-in
-{
+in {
home.file.".mozilla/firefox/default/chrome/userContent.css".source =
nix-userstyles.lib.mkUserContent system {
inherit palette;
userStyles = [
- "brave-search"
- "bsky"
- "cinny"
- "duckduckgo"
"github"
- "google"
- "hacker-news"
- "lobste.rs"
- "npm"
"reddit"
- "spotify-web"
- "stack-overflow"
- "whatsapp-web"
- "wikipedia"
"youtube"
- "discord"
];
- extraCss = ''
- @-moz-document domain("example.com") {
- body {
- outline: 1px solid red !important;
- }
- }
- '';
};
}
```
+> [!NOTE]
+> The palette must provide the standard Base16 keys: `base00` through `base0F`. Additional slots used internally for Catppuccin's palette mapping are derived automatically.
+
+## Library
+
+| Export | Role |
+| --- | --- |
+| `lib.mkUserStyles` | Build generated upstream CSS as a derivation |
+| `lib.withExtraCss` | Append additional CSS to an existing stylesheet derivation |
+| `lib.mkUserContent` | Build Firefox-ready `userContent.css` in one step |
+
+The repository also exposes a few package outputs on each supported system:
+
+| Output | Role |
+| --- | --- |
+| `packages.default` | Generated stylesheet using the bundled test style list |
+| `packages.user-content` | Firefox-ready `userContent.css` |
+| `packages.with-extra-css` | Generated stylesheet with appended custom CSS |
+| `packages.test` | Same build used by CI checks |
+
+## Development
+
+From the repository root:
+
+```bash
+# Inspect flake outputs
+nix flake show --all-systems
+
+# Run CI-equivalent checks
+nix flake check
+
+# Format the repository
+nix fmt
+
+# Enter the dev shell
+nix develop
+```
+
+Formatting is configured through `treefmt`.
+
+## Notes
+
+- Style names come from the upstream Catppuccin repositories. The bundled test list in `lib/testUserStyles.nix` is a good reference for known working names.
+- `discord` is handled separately from the main `catppuccin/userstyles` tree and is compiled from the upstream SCSS theme.
+- The generated CSS is post-processed so every declaration becomes `!important`.
+
## Credits
- [Original project (`knoopx/nix-userstyles`)](https://github.com/knoopx/nix-userstyles)
- [Catppuccin userstyles](https://github.com/catppuccin/userstyles)
- [Catppuccin Discord theme](https://github.com/catppuccin/discord)
- [nix-colors](https://github.com/misterio77/nix-colors)
-- [tinted-theming/schemes](https://github.com/tinted-theming/schemes)
diff --git a/assets/nix-logo.png b/assets/nix-logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..87a33ecdc605d82a9e4830a01fda81a3fb4618f8
GIT binary patch
literal 95371
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
VNA+UdcRi*l-v$bs_teCv=uP+dk*HO${r#|Ff3J
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