From 97e80a86dc3734e18dc23a23bdbd866ffa7d07b4 Mon Sep 17 00:00:00 2001 From: Simon Parri Date: Sat, 17 May 2025 12:40:06 -0500 Subject: modules/overlays: Make overlay .nix files be plain overlay functions Also restructure modules/overlays/default.nix to account for this; move all overlay options into default.nix and load the overlay functions conditionally from there. --- modules/overlays/default.nix | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'modules/overlays/default.nix') diff --git a/modules/overlays/default.nix b/modules/overlays/default.nix index 60253ca..745673a 100644 --- a/modules/overlays/default.nix +++ b/modules/overlays/default.nix @@ -1,8 +1,17 @@ -{ ... }: +{ lib, config, ... }: +let cfg = config.this.overlays; + overlay = ov: + lib.optional cfg."${ov}".enable + (import ./${ov}.nix); +in { - imports = [ - ./emacs.nix - ./g45_h264.nix - ]; + options = { + this.overlays.emacs.enable = lib.mkEnableOption "custom-built Emacs overlay"; + this.overlays.g45_h264.enable = lib.mkEnableOption "intel-vaapi-driver with h264 support on gm45"; + }; + + config.nixpkgs.overlays = + (overlay "emacs") ++ + (overlay "g45_h264"); } -- cgit v1.2.3