Merge branch 'microsoft/surface/specialisation/common-files' of github.com:mexisme/nixos-hardware into microsoft/surface/specialisation/common-files

This commit is contained in:
mexisme 2023-01-11 11:07:56 +13:00
commit 1dc7781973
2 changed files with 5 additions and 17 deletions

View file

@ -2,11 +2,11 @@
## Overview ## Overview
When I (@mexisme) created the microsoft/surface profile, there weren't that many differences between When the microsoft/surface profile was created, there weren't that many differences between
the various models of Surface. the various models of Surface.
I had just acquired a Surface Go 1, and it was mostly safe to enable all the options for all the e.g. I had just acquired a Surface Go 1, and it was mostly safe to enable all the options for all the
models, and they would fail gracefully enough that we could mostly ignore warnings or errors. models, and they would fail gracefully enough that you could mostly ignore warnings or errors.
Now, however --- as-of 2023-01-10 --- we have a much wider variety of chipsets, incl. models with Now, however --- as-of 2023-01-10 --- we have a much wider variety of chipsets, incl. models with
some of the newer AMD CPUs, and this is breaking small things in annoying ways for more people. some of the newer AMD CPUs, and this is breaking small things in annoying ways for more people.
@ -31,9 +31,6 @@ microsoft/surface profile to make it easier for people to specialise for their h
Any code or modules that are specialised for a Surface model now have their own directory under this Any code or modules that are specialised for a Surface model now have their own directory under this
top-level. top-level.
E.g. I am moving the Surface Go specialisations into `surface-go/`, and there may be further
specialisations like `surface-go-3/`.
### "Common" modules ### "Common" modules
All the "common" modules that were once in the top-level of the microsoft/surface profile have moved All the "common" modules that were once in the top-level of the microsoft/surface profile have moved
@ -41,16 +38,7 @@ under the `common/` directory.
Tools / services that are shared among several models are now extracted to their own module under Tools / services that are shared among several models are now extracted to their own module under
`common/` and imported by `common/default.nix`. `common/` and imported by `common/default.nix`.
These new "common" modules now have an `enable` option, which is `false` by default. Most "common" modules now have an `enable` option, which is `false` by default.
### "Deprecated Behaviour" module
The original `./default.nix` module has been replaced by a new `deprecated/` module, which replicates the
original behaviour.
The new `./default.nix` will load the new `deprecated/` module, but will also pop-up a warning asking users
to update how they use the microsoft/surface profile from now on.
This warning will probably change to a fail assertion at some point in the future.
## Adding a new Model Specialisation ## Adding a new Model Specialisation

View file

@ -4,7 +4,7 @@
assertions = [ assertions = [
{ {
assertion = false; assertion = false;
message = "Importing microsoft/surface/ (default.nix) directly is deprecated! See microsoft/surface/OLD-BEHAVIOUR-DEPRECATED.md for more details."; message = "Importing microsoft/surface/ (default.nix) directly is deprecated! See https://github.com/NixOS/nixos-hardware/blob/master/microsoft/surface/OLD-BEHAVIOUR-DEPRECATED.md for more details.";
} }
]; ];
} }