Commit graph

92 commits

Author SHA1 Message Date
awwpotato
5462829461
doc: update nix-darwin owner (#1301)
Link: https://github.com/nix-community/stylix/pull/1301

Reviewed-by: Daniel Thwaites <danth@danth.me>
2025-05-17 21:24:09 -07:00
Daniel Thwaites
5f6f08daad
treewide: change repository owner to nix-community (#1297) 2025-05-18 03:06:05 +01:00
pancho horrillo
91b23c7bc6
doc: explain how to build & check the docs locally (#1273) 2025-05-18 00:20:44 +01:00
awwpotato
31fff1c533
doc: use callPackage (#1282) 2025-05-16 13:48:09 -07:00
awwpotato
8b015b5fa0
flake: use flake-parts (#1208)
Link: https://github.com/danth/stylix/pull/1208

Reviewed-by: Matt Sturgeon <matt@sturgeon.me.uk>
Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
2025-05-16 11:52:15 -07:00
awwpotato
0e5b1613bd
stylix: rename homeManagerModules to homeModules (#1267)
Link: https://github.com/danth/stylix/pull/1267
Link: https://github.com/nix-community/home-manager/pull/6406

Reviewed-by: eveeifyeve <88671402+Eveeifyeve@users.noreply.github.com>
Reviewed-by: Matt Sturgeon <matt@sturgeon.me.uk>
Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
2025-05-16 16:39:50 +02:00
Matt Sturgeon
94e68af4a4
doc: note modules must check stylix.enable
Added a note to the docs to clarify that a target module must always
check the global `stylix.enable`, in addition to its own `enable` option.
2025-05-15 03:46:35 +01:00
awwpotato
b460904a6f
doc: use hash instead of sha256 in example (#1270)
Hash is preferred in nixpkgs, we should follow that here.

Link: https://github.com/danth/stylix/pull/1270
2025-05-14 19:43:53 -07:00
awwpotato
2fbe00aebe
doc: wrap to width of 80 (#1262)
Link: https://github.com/danth/stylix/pull/1262

Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
2025-05-13 22:55:08 +02:00
awwpotato
1c71f3bde2
treewide: use lib.getExe (#1241) 2025-05-10 12:07:43 +01:00
Matt Sturgeon
78a96c5c5a
doc: fix longestFence usage of lib.max (#1231)
Fixes: 6e55a89494 ("doc: ensure code blocks are safely fenced (#1218)")
Link: https://github.com/danth/stylix/pull/1231

Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
2025-05-05 23:42:19 +00:00
Matt Sturgeon
6e55a89494
doc: ensure code blocks are safely fenced (#1218)
Markdown uses ``` to start and end fenced code blocks. However code
blocks can themselves contain ``` sequences.

To deal with this, markdown allows code block fences to be of arbitrary
length; any sequence of fence-chars that is shorter than the opening
fence will not terminate the code block.

We can scan through the code block text to find the longest sequence of
`-chars to ensure the opening/closing fences are longer than the longest
in the code block.

Link: https://github.com/danth/stylix/pull/1218

Reviewed-by: awwpotato <awwpotato@voidq.com>
Co-authored-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
2025-05-06 00:57:27 +02:00
Matt Sturgeon
003e6770af
nixvim: move standalone-mode docs from configuration → nixvim readme (#1219)
Link: https://github.com/danth/stylix/pull/1219

Reviewed-by: awwpotato <awwpotato@voidq.com>
Reviewed-by: Flameopathic <64027365+Flameopathic@users.noreply.github.com>
2025-05-04 09:54:32 -07:00
awwpotato
b37f305238
doc: display GitHub handles in maintainer sections (#1140) 2025-04-22 13:09:29 -07:00
awwpotato
039e938b29
doc: promote lib.singleton in testbeds (#1148)
Fixes: 6d9867604e ("treewide: reduce indentation level with lib.singleton (#754)")
Link: https://github.com/danth/stylix/pull/1148

Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
2025-04-21 03:02:07 +02:00
Flameopathic
ce45f19e8a
kde: add run wrapper (#1117)
Closes: https://github.com/danth/stylix/issues/313
Link: https://github.com/danth/stylix/pull/1117

Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
Reviewed-by: awwpotato <153149335+awwpotato@users.noreply.github.com>
2025-04-10 09:42:28 +02:00
Flameopathic
82f67a36eb
doc: align module capitalization (#1115)
Closes: https://github.com/danth/stylix/issues/1084
Link: https://github.com/danth/stylix/pull/1115

Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
Reviewed-by: Daniel Thwaites <danth@danth.me>
Reviewed-by: awwpotato <153149335+awwpotato@users.noreply.github.com>
2025-04-10 08:45:51 +02:00
awwpotato
581fa67c81
stylix: guard entire overlay declarations (#1088)
Closes: https://github.com/danth/stylix/issues/865
Link: https://github.com/danth/stylix/pull/1088

Tested-by: https://github.com/PedroHLC
Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
2025-04-04 16:10:55 +02:00
Daniel Thwaites
aee4df6dc1
doc: add link to CommonMark Spec (#1081) 2025-04-02 07:26:00 -07:00
awwpotato
b45eb49894
docs: add trick about lib.mkAfter (#1055) 2025-03-31 20:09:12 +00:00
awwpotato
eb19696b18
stylix: add overlay module (#1048)
Closes: https://github.com/danth/stylix/issues/865
Link: https://github.com/danth/stylix/pull/1048

Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
2025-03-31 17:36:36 +00:00
Daniel Thwaites
20117a58eb
ci: run all builds in a single job (#1069)
This works around GitHub's limit on the number of matrix jobs (fixes
#947), by running all builds in a single job. To maintain some speed, we
use `nix-fast-build`, which uses multiple cores for evaluation, and skips
any builds for which the final derivation is already in a binary cache.

Although this makes the run for an individual pull request slower, the
amount of duplicated work is greatly reduced: previously, we often had
100 machines building the same derivation in parallel. This means that
more runners are available should there be multiple pull requests opened
in a short space of time, so there is less queuing. It's also more
energy efficient.

A potential downside is that the logs are all merged together, so it can
be hard to find what failed when lots of outputs were built.
`nix-fast-build` does report a list of failed attributes at the end of
the log, but this is currently broken:
https://github.com/Mic92/nix-fast-build/pull/98

The script used to launch `nix-fast-build` is also added to the
developer shell for local use. This replaces the old `nix-flake-check`
package (closes #898).

I also saw the opportunity to enable checks on `aarch64-linux` and
`aarch64-darwin` - as these are available as GitHub hosted runners.
2025-03-30 12:26:07 +01:00
NAHO
daef51e920
doc: format and polish Nix code according to our formatter (#1025)
Link: https://github.com/danth/stylix/pull/1025

Reviewed-by: Daniel Thwaites <danth@danth.me>
2025-03-26 13:58:03 +00:00
Daniel Thwaites
a55488c247
doc: reduce overuse of alerts (#1041)
Using too many "info" and "warning" boxes makes them less effective when
they're needed to draw attention to something genuinely important.

This commit adds important boxes to modules which require an external
module to be imported, similar to the box already used on the "Firefox and
derivatives" page.

It changes the warning when a module has no maintainers to a regular
paragraph.

The note about `stylix.enable` being new is removed, since this has been
around for a while now.
2025-03-23 13:25:15 +00:00
Daniel Thwaites
f537d507c3
doc: add subheading before module metadata (#1042)
This avoids the metadata looking like part of a README subheading.
2025-03-23 13:23:39 +00:00
Daniel Thwaites
64b4369b6b
doc: display module maintainers (#1010)
As promised at
https://github.com/danth/stylix/pull/977#pullrequestreview-2683388232,
this lists the maintainers for each module on its page in the docs.

This includes some fixes to `stylix/meta.nix`: swapped the order of
arguments to `mapAttrs`, and added an `import` to load the meta file
rather than returning its path.
2025-03-20 16:05:36 +00:00
NAHO
421e09fc73
doc: format Nix code in Maintainers section according to our formatter (#1024)
Fixes: e43eb4e2a7 ("stylix: init module maintainers framework (#977)")
2025-03-19 20:29:50 +01:00
NAHO
fa288c0dc6
doc: fix testbed names (#1013) 2025-03-17 18:01:50 +00:00
awwpotato
e43eb4e2a7
stylix: init module maintainers framework (#977)
Initialize module maintainers framework to streamline the future
population of module maintainers [1].

[1]: https://github.com/danth/stylix/issues/275

Link: https://github.com/danth/stylix/pull/977

Reviewed-by: Daniel Thwaites <danth@danth.me>
Co-authored-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
2025-03-14 19:29:51 +01:00
Daniel Thwaites
52b1cc7247
doc: implement custom option list generation (#955)
Implement a custom option list generation with a pkgs.nixosOptionsDoc
variant that evaluates each platform configuration only once.

This resolves [1] ("doc: avoid excessive calls to pkgs.nixosOptionsDoc")
and unblocks [2] ("ci: too many matrix jobs").

With the gained flexibility, option details are now rendered as tables.

[1]: https://github.com/danth/stylix/issues/896
[2]: https://github.com/danth/stylix/issues/947

Closes: https://github.com/danth/stylix/issues/896
Link: https://github.com/danth/stylix/pull/955

Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
2025-03-14 19:04:49 +01:00
bricked
e3233ead63
stylix: init droid (#778)
stylix: init nixOnDroidModules.stylix module to support Nix-on-Droid

Closes: https://github.com/danth/stylix/issues/775
Link: https://github.com/danth/stylix/pull/778

Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
Reviewed-by: Daniel Thwaites <danth@danth.me>
2025-03-11 16:10:23 +01:00
NAHO
4891f1471b
stylix: simplify dummy values (#959)
Fixes: c8e4a0d218 ("treewide: optionalize stylix.image option (#717)")
2025-03-07 21:00:49 +00:00
Matt Sturgeon
eab1ecf41f
docs: document configuring Standalone Nixvim 2025-02-26 02:17:36 +00:00
Flameopathic
c8e4a0d218
treewide: optionalize stylix.image option (#717)
Optionalize the stylix.image option when stylix.base16Scheme is set,
making the following Stylix configurations valid:

    [
      // Now it possible to set 'stylix.image = null', if
      // stylix.base16Scheme is set.
      {
        base16Scheme = /* ... */;
      }

      // This configuration was already possible.
      {
        image = /* ... */;
      }

      // This configuration was already possible.
      {
        base16Scheme = /* ... */;
        image = /* ... */;
      }
    ]

Closes: https://github.com/danth/stylix/issues/200
Closes: https://github.com/danth/stylix/issues/442
Link: https://github.com/danth/stylix/pull/717

Co-authored-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
Tested-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
Reviewed-by: Daniel Thwaites <danth@danth.me>
2025-02-24 15:13:57 +01:00
NAHO
f121a142ab
stylix: parametrize and change testbed field separator (#887)
Parametrize and change the testbed field separator to the colon (':')
character to avoid ambiguity with module names containing hyphens ('-'),
and allow testbed names to contain hyphens.

Fixes: 211a8440e7 ("stylix: support multiple testbeds per module (#858)")
2025-02-23 18:17:59 +00:00
Daniel Thwaites
f403ca101e
doc: split modules into separate pages (#873) 2025-02-23 15:50:41 +00:00
Daniel Thwaites
1398fc4dc8
doc: use permalinks for option declarations 2025-02-23 15:20:12 +00:00
NAHO
f4401071ea
doc: add declaration entry 2025-02-23 15:20:12 +00:00
Daniel Thwaites
4c04e0dece
doc: redirect old reference pages to new location 2025-02-23 15:20:12 +00:00
Daniel Thwaites
2b2f260a69
doc: collapse platforms and modules
Collapsing is only possible for pages, not headings, so I had to
combine platforms and modules into a single section and nest them
under draft pages.

Later, we could migrate some content from the configuration page to
these draft pages to make the flow of the book more natural.
2025-02-23 15:20:12 +00:00
Daniel Thwaites
99096ef3e3
doc: clarify global option
Co-authored-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
2025-02-23 15:20:11 +00:00
Daniel Thwaites
13667122ec
doc: standardize Bash code
Co-authored-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
2025-02-23 15:20:11 +00:00
Daniel Thwaites
472bd50c85
doc: store module documentation as a README within the module
This has two benefits:

1. It will be displayed when browsing the module source code on
   GitHub.
2. It prevents the documentation inadvertently disappearing if the
   module directory is renamed.
2025-02-19 13:45:27 +00:00
Daniel Thwaites
7afc6fb46d
doc: describe how to create module documentation 2025-02-19 13:45:27 +00:00
Daniel Thwaites
aeb550add3
doc: remove site-url setting (#878)
Since the documentation is now hosted at https://stylix.danth.me/ rather
than https://danth.github.io/stylix/, this setting is no longer
necessary.

Reviewed-by: NAHO <90870942+trueNAHO@users.noreply.github.com>
2025-02-18 21:06:11 +01:00
Daniel Thwaites
d6796ff307
doc: fix some alerts not being rendered by substituteInPlace 2025-02-18 14:38:27 +00:00
Daniel Thwaites
de2057a000
doc: disable section numbers
Due to new module pages being added fairly often, the section numbers
won't be stable, so they provide little benefit.
2025-02-18 14:38:27 +00:00
Daniel Thwaites
77e58881df
doc: split modules into individual pages 2025-02-18 14:38:27 +00:00
NAHO
211a8440e7
stylix: support multiple testbeds per module (#858)
Support multiple testbeds per module with
/modules/<MODULE>/testbeds/<TESTBED>.nix, while validating various
invariants.
2025-02-17 12:56:46 +00:00
NAHO
7818098f4d
treewide: remove trailing whitespaces and add trailing newline (#841) 2025-02-08 22:20:10 +01:00