at master 792 B view raw
1{ pkgs, lib, ... }: 2{ 3 name = "age-plugin-tpm-decrypt"; 4 meta = with lib.maintainers; { 5 maintainers = [ 6 sgo 7 josh 8 ]; 9 }; 10 11 nodes.machine = 12 { pkgs, ... }: 13 { 14 virtualisation.tpm.enable = true; 15 environment.systemPackages = with pkgs; [ 16 age 17 age-plugin-tpm 18 ]; 19 }; 20 21 testScript = '' 22 machine.start() 23 24 machine.succeed("age-plugin-tpm --generate --output identity.txt") 25 machine.succeed("age-plugin-tpm --convert identity.txt --output recipient.txt") 26 machine.succeed("echo -n 'Hello World' >data.txt") 27 28 machine.succeed("age --encrypt --recipients-file recipient.txt --output data.age data.txt") 29 data = machine.succeed("age --decrypt --identity identity.txt data.age") 30 31 assert data == "Hello World" 32 ''; 33}