envchainSpec top-level property

FigSpec envchainSpec
final

Completion spec for envchain CLI

Implementation

final FigSpec envchainSpec = FigSpec(
    name: 'envchain',
    description:
        'Set environment variables with macOS keychain or D-Bus secret service',
    args: [
      Arg(name: 'NAMESPACE', generators: namespaces),
      Arg(name: 'CMD')
    ],
    subcommands: [
      Subcommand(
          name: ['-s', '--set'],
          description:
              'Add keychain item of environment variable +ENV+ for namespace +NAMESPACE+',
          icon: 'fig://icon?type=option',
          args: [
            Arg(name: 'NAMESPACE', generators: namespaces),
            Arg(name: 'ENV', isVariadic: true)
          ],
          options: [
            Option(
                name: ['-n', '--noecho'],
                description: 'Do not echo user input'),
            Option(
                name: ['-p', '--require-passphrase'],
                description: 'Always ask for keychain passphrase',
                exclusiveOn: ['--no-require-passphrase']),
            Option(
                name: ['-P', '--no-require-passphrase'],
                description: 'Do not ask for keychain passphrase',
                exclusiveOn: ['--require-passphrase'])
          ]),
      Subcommand(
          name: ['-l', '--list'],
          description: 'List namespaces that have been created',
          icon: 'fig://icon?type=option')
    ]);