nixos/apple-touchbar: init module (#350219)
This commit is contained in:
parent
457396d445
commit
c42b24b3f4
@ -190,6 +190,8 @@
|
|||||||
|
|
||||||
- [Zapret](https://github.com/bol-van/zapret), a DPI bypass tool. Available as [services.zapret](option.html#opt-services.zapret).
|
- [Zapret](https://github.com/bol-van/zapret), a DPI bypass tool. Available as [services.zapret](option.html#opt-services.zapret).
|
||||||
|
|
||||||
|
- [tiny-dfr](https://github.com/WhatAmISupposedToPutHere/tiny-dfr), a dynamic function row daemon for the Touch Bar found on some Apple laptops. Available as [hardware.apple.touchBar.enable](options.html#opt-hardware.apple.touchBar.enable).
|
||||||
|
|
||||||
## Backward Incompatibilities {#sec-release-24.11-incompatibilities}
|
## Backward Incompatibilities {#sec-release-24.11-incompatibilities}
|
||||||
|
|
||||||
- The `sound` options have been removed or renamed, as they had a lot of unintended side effects. See [below](#sec-release-24.11-migration-sound) for details.
|
- The `sound` options have been removed or renamed, as they had a lot of unintended side effects. See [below](#sec-release-24.11-migration-sound) for details.
|
||||||
|
43
nixos/modules/hardware/apple-touchbar.nix
Normal file
43
nixos/modules/hardware/apple-touchbar.nix
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.hardware.apple.touchBar;
|
||||||
|
format = pkgs.formats.toml { };
|
||||||
|
cfgFile = format.generate "config.toml" cfg.settings;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.hardware.apple.touchBar = {
|
||||||
|
enable = lib.mkEnableOption "support for the Touch Bar on some Apple laptops using tiny-dfr";
|
||||||
|
package = lib.mkPackageOption pkgs "tiny-dfr" { };
|
||||||
|
|
||||||
|
settings = lib.mkOption {
|
||||||
|
type = format.type;
|
||||||
|
default = { };
|
||||||
|
description = ''
|
||||||
|
Configuration for tiny-dfr. See [example configuration][1] for available options.
|
||||||
|
|
||||||
|
[1]: https://github.com/WhatAmISupposedToPutHere/tiny-dfr/blob/master/share/tiny-dfr/config.toml
|
||||||
|
'';
|
||||||
|
example = lib.literalExpression ''
|
||||||
|
{
|
||||||
|
MediaLayerDefault = true;
|
||||||
|
ShowButtonOutlines = false;
|
||||||
|
EnablePixelShift = true;
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
systemd.packages = [ cfg.package ];
|
||||||
|
services.udev.packages = [ cfg.package ];
|
||||||
|
|
||||||
|
environment.etc."tiny-dfr/config.toml".source = cfgFile;
|
||||||
|
systemd.services.tiny-dfr.restartTriggers = [ cfgFile ];
|
||||||
|
};
|
||||||
|
}
|
@ -48,6 +48,7 @@
|
|||||||
./config/zram.nix
|
./config/zram.nix
|
||||||
./hardware/acpilight.nix
|
./hardware/acpilight.nix
|
||||||
./hardware/all-firmware.nix
|
./hardware/all-firmware.nix
|
||||||
|
./hardware/apple-touchbar.nix
|
||||||
./hardware/bladeRF.nix
|
./hardware/bladeRF.nix
|
||||||
./hardware/brillo.nix
|
./hardware/brillo.nix
|
||||||
./hardware/ckb-next.nix
|
./hardware/ckb-next.nix
|
||||||
|
Loading…
Reference in New Issue
Block a user