Skip to content
Discussion options

You must be logged in to vote

I've an idea. How about this?

{ den, lib, ... }: let
  # deps host.hasCapability & host.capabilities
  capabilityOpts =
    { lib, host, ... }:
    {
      options = {
        hasCapability = lib.mkOption {
          type = with lib.types; functionTo bool;
          readOnly = true;
          default = capability:
            builtins.elem capability host.capabilities;
        };
        capabilities = lib.mkOption {
          type = with lib.types; listOf str;
          default = [];
        };
      };
    };
in {
  den.schema.host.imports = [ capabilityOpts ];

  den.hosts.x86_64-linux = {
    igloo.capabilites = [ "graphics" ];
    iceberg = {};
  };

  den.aspects.features.ghostty = {

Replies: 1 comment 6 replies

Comment options

You must be logged in to vote
6 replies
@drupol
Comment options

drupol Aug 2, 2026
Collaborator

@AnonymousRand
Comment options

@fmway
Comment options

fmway Aug 2, 2026
Collaborator

@AnonymousRand
Comment options

@fmway
Comment options

fmway Aug 2, 2026
Collaborator

Answer selected by AnonymousRand
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
3 participants