GPG cannot call the pinentry program for some reason.
Use any gpg command which requires pin entry, it will fail. Surprisingly, it seems to fail with every version of gpg which I've tried to install.
Versions tested:
Output of gpg --import ~/secret-key
gpg: key A562BD9EBA31E5D5: public key "glorynonce" imported
gpg: key A562BD9EBA31E5D5/A562BD9EBA31E5D5: error sending to agent: No pinentry
gpg: error building skey array: No pinentry
gpg: error reading 'secret-key': No pinentry
gpg: import from 'secret-key' failed: No pinentry
gpg: Total number processed: 0
gpg: imported: 1
gpg: secret keys read: 1
Output of strace gpg --import ~/secret-key
execve("/home/ray/.nix-profile/bin/gpg", ["gpg", "--import", "secret-key"], 0x7fff39026c60 /* 63 vars */) = 0
brk(NULL) = 0x1aa8000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa511ede000
access("/etc/ld-nix.so.preload", R_OK) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/tls/x86_64/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/tls/x86_64/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/tls/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/tls/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/tls/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/tls/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/tls/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/tls", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/x86_64/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/x86_64/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib", {st_mode=S_IFDIR|0555, st_size=120, ...}) = 0
openat(AT_FDCWD, "/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/tls/x86_64/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/tls/x86_64/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/tls/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/tls/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/tls/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/tls/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/tls/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/tls", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/x86_64/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/x86_64/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib", {st_mode=S_IFDIR|0555, st_size=116, ...}) = 0
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/tls/x86_64/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/tls/x86_64/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/tls/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/tls/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/tls/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/tls/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/tls/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/tls", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/x86_64/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/x86_64/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib", {st_mode=S_IFDIR|0555, st_size=138, ...}) = 0
openat(AT_FDCWD, "/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/tls/x86_64/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/tls/x86_64/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/tls/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/tls/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/tls/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/tls/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/tls/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/tls", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/x86_64/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/x86_64/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib", {st_mode=S_IFDIR|0555, st_size=112, ...}) = 0
openat(AT_FDCWD, "/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib/tls/x86_64/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib/tls/x86_64/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib/tls/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib/tls/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib/tls/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib/tls/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib/tls/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib/tls", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib/x86_64/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib/x86_64/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib", {st_mode=S_IFDIR|0555, st_size=186, ...}) = 0
openat(AT_FDCWD, "/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/tls/x86_64/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/tls/x86_64/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/tls/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/tls/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/tls/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/tls/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/tls/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/tls", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/x86_64/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/x86_64/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/x86_64/libz.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/x86_64", 0x7ffc9060fbf0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/libz.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0203\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0555, st_size=128920, ...}) = 0
mmap(NULL, 122896, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa511ebf000
mprotect(0x7fa511ec2000, 106496, PROT_NONE) = 0
mmap(0x7fa511ec2000, 77824, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7fa511ec2000
mmap(0x7fa511ed5000, 24576, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x16000) = 0x7fa511ed5000
mmap(0x7fa511edc000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1c000) = 0x7fa511edc000
close(3) = 0
openat(AT_FDCWD, "/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/libbz2.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/libbz2.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/libbz2.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/libbz2.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib/libbz2.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/libbz2.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/xvjxwc2hqddhk6g33m96dv66z7ch2mad-bzip2-1.0.6.0.1/lib/tls/x86_64/x86_64/libbz2.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/xvjxwc2hqddhk6g33m96dv66z7ch2mad-bzip2-1.0.6.0.1/lib/tls/x86_64/x86_64", 0x7ffc9060fbc0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/xvjxwc2hqddhk6g33m96dv66z7ch2mad-bzip2-1.0.6.0.1/lib/tls/x86_64/libbz2.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/xvjxwc2hqddhk6g33m96dv66z7ch2mad-bzip2-1.0.6.0.1/lib/tls/x86_64", 0x7ffc9060fbc0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/xvjxwc2hqddhk6g33m96dv66z7ch2mad-bzip2-1.0.6.0.1/lib/tls/x86_64/libbz2.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/xvjxwc2hqddhk6g33m96dv66z7ch2mad-bzip2-1.0.6.0.1/lib/tls/x86_64", 0x7ffc9060fbc0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/xvjxwc2hqddhk6g33m96dv66z7ch2mad-bzip2-1.0.6.0.1/lib/tls/libbz2.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/xvjxwc2hqddhk6g33m96dv66z7ch2mad-bzip2-1.0.6.0.1/lib/tls", 0x7ffc9060fbc0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/xvjxwc2hqddhk6g33m96dv66z7ch2mad-bzip2-1.0.6.0.1/lib/x86_64/x86_64/libbz2.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/xvjxwc2hqddhk6g33m96dv66z7ch2mad-bzip2-1.0.6.0.1/lib/x86_64/x86_64", 0x7ffc9060fbc0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/xvjxwc2hqddhk6g33m96dv66z7ch2mad-bzip2-1.0.6.0.1/lib/x86_64/libbz2.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/xvjxwc2hqddhk6g33m96dv66z7ch2mad-bzip2-1.0.6.0.1/lib/x86_64", 0x7ffc9060fbc0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/xvjxwc2hqddhk6g33m96dv66z7ch2mad-bzip2-1.0.6.0.1/lib/x86_64/libbz2.so.1", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/xvjxwc2hqddhk6g33m96dv66z7ch2mad-bzip2-1.0.6.0.1/lib/x86_64", 0x7ffc9060fbc0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/xvjxwc2hqddhk6g33m96dv66z7ch2mad-bzip2-1.0.6.0.1/lib/libbz2.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\"\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0555, st_size=78824, ...}) = 0
mmap(NULL, 76840, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa511eac000
mmap(0x7fa511eae000, 53248, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7fa511eae000
mmap(0x7fa511ebb000, 8192, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf000) = 0x7fa511ebb000
mmap(0x7fa511ebd000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x10000) = 0x7fa511ebd000
close(3) = 0
openat(AT_FDCWD, "/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/libsqlite3.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240\374\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0555, st_size=1256472, ...}) = 0
mmap(NULL, 1158360, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa511d91000
mmap(0x7fa511da0000, 868352, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf000) = 0x7fa511da0000
mmap(0x7fa511e74000, 200704, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe3000) = 0x7fa511e74000
mmap(0x7fa511ea5000, 28672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x113000) = 0x7fa511ea5000
close(3) = 0
openat(AT_FDCWD, "/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/libgcrypt.so.20", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/libgcrypt.so.20", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\200\325\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0555, st_size=1258912, ...}) = 0
mmap(NULL, 1175496, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa511c72000
mmap(0x7fa511c7f000, 843776, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xd000) = 0x7fa511c7f000
mmap(0x7fa511d4d000, 249856, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xdb000) = 0x7fa511d4d000
mmap(0x7fa511d8a000, 28672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x117000) = 0x7fa511d8a000
close(3) = 0
openat(AT_FDCWD, "/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/libgpg-error.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/libgpg-error.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/libgpg-error.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\200V\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0555, st_size=163816, ...}) = 0
mmap(NULL, 143968, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa511c4e000
mprotect(0x7fa511c53000, 118784, PROT_NONE) = 0
mmap(0x7fa511c53000, 77824, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x5000) = 0x7fa511c53000
mmap(0x7fa511c66000, 36864, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x18000) = 0x7fa511c66000
mmap(0x7fa511c70000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x21000) = 0x7fa511c70000
close(3) = 0
openat(AT_FDCWD, "/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/libreadline.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/libreadline.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/libreadline.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/libreadline.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib/libreadline.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220w\1\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0555, st_size=344672, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa511c4c000
mmap(NULL, 305368, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa511c01000
mprotect(0x7fa511c17000, 176128, PROT_NONE) = 0
mmap(0x7fa511c17000, 139264, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x16000) = 0x7fa511c17000
mmap(0x7fa511c39000, 32768, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x38000) = 0x7fa511c39000
mmap(0x7fa511c42000, 36864, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x40000) = 0x7fa511c42000
mmap(0x7fa511c4b000, 2264, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fa511c4b000
close(3) = 0
openat(AT_FDCWD, "/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/libassuan.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/libassuan.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/libassuan.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/libassuan.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`F\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0555, st_size=98328, ...}) = 0
mmap(NULL, 86368, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa511beb000
mmap(0x7fa511bef000, 45056, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7fa511bef000
mmap(0x7fa511bfa000, 20480, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf000) = 0x7fa511bfa000
mmap(0x7fa511bff000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x13000) = 0x7fa511bff000
close(3) = 0
openat(AT_FDCWD, "/nix/store/4yyqs15ixmr0bf88kilzhih61dbhvzp6-sqlite-3.30.0/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/bm9bn1ij7nvn6d699rajwzx93nsrkvld-libgcrypt-1.8.5/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/6f86skf8l2wyima77d71mlbisan9rvlx-libassuan-2.5.3/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fgq1whsznfc5jxc341grysv2h0qvxbhg-readline-6.3p08/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/xvjxwc2hqddhk6g33m96dv66z7ch2mad-bzip2-1.0.6.0.1/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/lib/tls/x86_64/x86_64/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/lib/tls/x86_64/x86_64", 0x7ffc9060faa0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/lib/tls/x86_64/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/lib/tls/x86_64", 0x7ffc9060faa0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/lib/tls/x86_64/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/lib/tls/x86_64", 0x7ffc9060faa0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/lib/tls/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/lib/tls", 0x7ffc9060faa0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/lib/x86_64/x86_64/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/lib/x86_64/x86_64", 0x7ffc9060faa0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/lib/x86_64/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/lib/x86_64", 0x7ffc9060faa0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/lib/x86_64/libc.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/lib/x86_64", 0x7ffc9060faa0) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260,\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0555, st_size=2015288, ...}) = 0
mmap(NULL, 1792416, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa511a35000
mmap(0x7fa511a57000, 1298432, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x22000) = 0x7fa511a57000
mmap(0x7fa511b94000, 315392, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15f000) = 0x7fa511b94000
mmap(0x7fa511be1000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1ab000) = 0x7fa511be1000
mmap(0x7fa511be7000, 14752, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fa511be7000
close(3) = 0
openat(AT_FDCWD, "/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/libm.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/lib/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`\302\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0555, st_size=1768144, ...}) = 0
mmap(NULL, 1658904, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa51189f000
mmap(0x7fa5118ab000, 733184, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xc000) = 0x7fa5118ab000
mmap(0x7fa51195e000, 872448, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xbf000) = 0x7fa51195e000
mmap(0x7fa511a33000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x193000) = 0x7fa511a33000
close(3) = 0
openat(AT_FDCWD, "/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/libdl.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/lib/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \21\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0555, st_size=18520, ...}) = 0
mmap(NULL, 16528, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa51189a000
mmap(0x7fa51189b000, 4096, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1000) = 0x7fa51189b000
mmap(0x7fa51189c000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7fa51189c000
mmap(0x7fa51189d000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7fa51189d000
close(3) = 0
openat(AT_FDCWD, "/nix/store/m1qb538b5ic2j822zyjyj5h3i04lyca0-zlib-1.2.11/lib/libpthread.so.0", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/lib/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\300k\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0555, st_size=146424, ...}) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa511898000
mmap(NULL, 131664, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa511877000
mmap(0x7fa51187d000, 61440, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7fa51187d000
mmap(0x7fa51188c000, 24576, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15000) = 0x7fa51188c000
mmap(0x7fa511892000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1a000) = 0x7fa511892000
mmap(0x7fa511894000, 12880, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fa511894000
close(3) = 0
openat(AT_FDCWD, "/nix/store/iaf6ky905iflcnf0m17rpsh0d24j6vqw-ncurses-6.1-20190112/lib/tls/x86_64/x86_64/libncursesw.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/iaf6ky905iflcnf0m17rpsh0d24j6vqw-ncurses-6.1-20190112/lib/tls/x86_64/x86_64", 0x7ffc9060f770) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/iaf6ky905iflcnf0m17rpsh0d24j6vqw-ncurses-6.1-20190112/lib/tls/x86_64/libncursesw.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/iaf6ky905iflcnf0m17rpsh0d24j6vqw-ncurses-6.1-20190112/lib/tls/x86_64", 0x7ffc9060f770) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/iaf6ky905iflcnf0m17rpsh0d24j6vqw-ncurses-6.1-20190112/lib/tls/x86_64/libncursesw.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/iaf6ky905iflcnf0m17rpsh0d24j6vqw-ncurses-6.1-20190112/lib/tls/x86_64", 0x7ffc9060f770) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/iaf6ky905iflcnf0m17rpsh0d24j6vqw-ncurses-6.1-20190112/lib/tls/libncursesw.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/iaf6ky905iflcnf0m17rpsh0d24j6vqw-ncurses-6.1-20190112/lib/tls", 0x7ffc9060f770) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/iaf6ky905iflcnf0m17rpsh0d24j6vqw-ncurses-6.1-20190112/lib/x86_64/x86_64/libncursesw.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/iaf6ky905iflcnf0m17rpsh0d24j6vqw-ncurses-6.1-20190112/lib/x86_64/x86_64", 0x7ffc9060f770) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/iaf6ky905iflcnf0m17rpsh0d24j6vqw-ncurses-6.1-20190112/lib/x86_64/libncursesw.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/iaf6ky905iflcnf0m17rpsh0d24j6vqw-ncurses-6.1-20190112/lib/x86_64", 0x7ffc9060f770) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/iaf6ky905iflcnf0m17rpsh0d24j6vqw-ncurses-6.1-20190112/lib/x86_64/libncursesw.so.6", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
stat("/nix/store/iaf6ky905iflcnf0m17rpsh0d24j6vqw-ncurses-6.1-20190112/lib/x86_64", 0x7ffc9060f770) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/iaf6ky905iflcnf0m17rpsh0d24j6vqw-ncurses-6.1-20190112/lib/libncursesw.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340\234\1\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0555, st_size=504408, ...}) = 0
mmap(NULL, 466168, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa511805000
mmap(0x7fa51181d000, 249856, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x18000) = 0x7fa51181d000
mmap(0x7fa51185a000, 94208, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x55000) = 0x7fa51185a000
mmap(0x7fa511871000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6b000) = 0x7fa511871000
close(3) = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa511803000
arch_prctl(ARCH_SET_FS, 0x7fa511803c00) = 0
mprotect(0x7fa511be1000, 16384, PROT_READ) = 0
mprotect(0x7fa511871000, 20480, PROT_READ) = 0
mprotect(0x7fa511892000, 4096, PROT_READ) = 0
mprotect(0x7fa51189d000, 4096, PROT_READ) = 0
mprotect(0x7fa511a33000, 4096, PROT_READ) = 0
mprotect(0x7fa511c70000, 4096, PROT_READ) = 0
mprotect(0x7fa511bff000, 4096, PROT_READ) = 0
mprotect(0x7fa511c42000, 12288, PROT_READ) = 0
mprotect(0x7fa511d8a000, 8192, PROT_READ) = 0
mprotect(0x7fa511edc000, 4096, PROT_READ) = 0
mprotect(0x7fa511ea5000, 16384, PROT_READ) = 0
mprotect(0x7fa511ebd000, 4096, PROT_READ) = 0
mprotect(0x4f5000, 8192, PROT_READ) = 0
mprotect(0x7fa511f06000, 4096, PROT_READ) = 0
set_tid_address(0x7fa511803ed0) = 7199
set_robust_list(0x7fa511803ee0, 24) = 0
rt_sigaction(SIGRTMIN, {sa_handler=0x7fa51187d640, sa_mask=[], sa_flags=SA_RESTORER|SA_SIGINFO, sa_restorer=0x7fa511889860}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {sa_handler=0x7fa51187d6d0, sa_mask=[], sa_flags=SA_RESTORER|SA_RESTART|SA_SIGINFO, sa_restorer=0x7fa511889860}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
prlimit64(0, RLIMIT_STACK, NULL, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
brk(NULL) = 0x1aa8000
brk(0x1ac9000) = 0x1ac9000
fcntl(0, F_GETFD) = 0
fcntl(1, F_GETFD) = 0
fcntl(2, F_GETFD) = 0
openat(AT_FDCWD, "/run/current-system/sw/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=128690032, ...}) = 0
mmap(NULL, 128690032, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fa509d48000
close(3) = 0
access("/etc/gcrypt/fips_enabled", F_OK) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/proc/sys/crypto/fips_enabled", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/gcrypt/hwf.deny", O_RDONLY) = -1 ENOENT (No such file or directory)
prlimit64(0, RLIMIT_CORE, NULL, {rlim_cur=RLIM64_INFINITY, rlim_max=RLIM64_INFINITY}) = 0
prlimit64(0, RLIMIT_CORE, {rlim_cur=0, rlim_max=RLIM64_INFINITY}, NULL) = 0
rt_sigaction(SIGINT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGINT, {sa_handler=0x4b2b90, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7fa511a6ac50}, NULL, 8) = 0
rt_sigaction(SIGHUP, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGHUP, {sa_handler=0x4b2b90, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7fa511a6ac50}, NULL, 8) = 0
rt_sigaction(SIGTERM, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGTERM, {sa_handler=0x4b2b90, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7fa511a6ac50}, NULL, 8) = 0
rt_sigaction(SIGQUIT, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGQUIT, {sa_handler=0x4b2b90, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7fa511a6ac50}, NULL, 8) = 0
rt_sigaction(SIGSEGV, NULL, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
rt_sigaction(SIGSEGV, {sa_handler=0x4b2b90, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7fa511a6ac50}, NULL, 8) = 0
rt_sigaction(SIGUSR1, {sa_handler=0x4b2af0, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7fa511a6ac50}, NULL, 8) = 0
rt_sigaction(SIGPIPE, {sa_handler=SIG_IGN, sa_mask=[], sa_flags=SA_RESTORER, sa_restorer=0x7fa511a6ac50}, NULL, 8) = 0
mmap(NULL, 32768, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa509d40000
getuid() = 1000
mlock(0x7fa509d40000, 32768) = 0
geteuid() = 1000
access("/home/ray/.gnupg/gpg.conf-2.2.17", R_OK) = -1 ENOENT (No such file or directory)
access("/home/ray/.gnupg/gpg.conf-2.2", R_OK) = -1 ENOENT (No such file or directory)
access("/home/ray/.gnupg/gpg.conf-2", R_OK) = -1 ENOENT (No such file or directory)
access("/home/ray/.gnupg/gpg.conf", R_OK) = -1 ENOENT (No such file or directory)
access("/home/ray/.gnupg/options", R_OK) = -1 ENOENT (No such file or directory)
stat("/home/ray/.gnupg", {st_mode=S_IFDIR|0700, st_size=102, ...}) = 0
stat("/home/ray", {st_mode=S_IFDIR|0700, st_size=812, ...}) = 0
getuid() = 1000
openat(AT_FDCWD, "/home/ray/.gnupg/gpg.conf", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/home/ray/.gnupg/random_seed", F_OK) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/home/ray/.gnupg/pubring.gpg", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/home/ray/.gnupg/pubring.kbx", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=3897, ...}) = 0
read(3, "\0\0\0 \1\1\0\2KBXf\0\0\0\0]\275\250\210]\275\250\210\0\0\0\0\0\0\0\0"..., 4096) = 3897
close(3) = 0
access("/home/ray/.gnupg/pubring.kbx", F_OK) = 0
access("/home/ray/.gnupg/pubring.kbx", R_OK) = 0
access("/home/ray/.gnupg/secring.gpg", F_OK) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "secret-key", O_RDONLY) = 3
read(3, "\225\3\306\4[\244@\353\1\10\0\340mZT\34:\32{\231\17\252n\2305\t\v\35\350\n\\\203"..., 8192) = 2612
read(3, "", 8192) = 0
openat(AT_FDCWD, "/etc/localtime", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=2836, ...}) = 0
fstat(4, {st_mode=S_IFREG|0444, st_size=2836, ...}) = 0
read(4, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\5\0\0\0\5\0\0\0\0"..., 4096) = 2836
lseek(4, -1802, SEEK_CUR) = 1034
read(4, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\5\0\0\0\5\0\0\0\0"..., 4096) = 1802
close(4) = 0
openat(AT_FDCWD, "/nix/store/qn76sklvyalzw9ilnxz6sh0020gl2qn6-glibc-2.27/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = 4
fstat(4, {st_mode=S_IFREG|0444, st_size=2997, ...}) = 0
read(4, "# Locale name alias data base.\n#"..., 4096) = 2997
read(4, "", 4096) = 0
close(4) = 0
openat(AT_FDCWD, "/nix/store/crscs7zndgn64kin4s4mknsf6ya46mp2-gnupg-2.2.17/share/locale/en_US.UTF-8/LC_MESSAGES/gnupg2.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/crscs7zndgn64kin4s4mknsf6ya46mp2-gnupg-2.2.17/share/locale/en_US.utf8/LC_MESSAGES/gnupg2.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/crscs7zndgn64kin4s4mknsf6ya46mp2-gnupg-2.2.17/share/locale/en_US/LC_MESSAGES/gnupg2.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/crscs7zndgn64kin4s4mknsf6ya46mp2-gnupg-2.2.17/share/locale/en.UTF-8/LC_MESSAGES/gnupg2.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/crscs7zndgn64kin4s4mknsf6ya46mp2-gnupg-2.2.17/share/locale/en.utf8/LC_MESSAGES/gnupg2.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/crscs7zndgn64kin4s4mknsf6ya46mp2-gnupg-2.2.17/share/locale/en/LC_MESSAGES/gnupg2.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/home/ray/.gnupg/pubring.kbx", W_OK) = 0
getpid() = 7199
uname({sysname="Linux", nodename="hope", ...}) = 0
getpid() = 7199
openat(AT_FDCWD, "/home/ray/.gnupg/.#lk0x0000000001aba720.hope.7199", O_WRONLY|O_CREAT|O_EXCL, 0644) = 4
write(4, " 7199\n", 11) = 11
write(4, "hope", 4) = 4
write(4, "\n", 1) = 1
close(4) = 0
stat("/home/ray/.gnupg/.#lk0x0000000001aba720.hope.7199", {st_mode=S_IFREG|0644, st_size=16, ...}) = 0
link("/home/ray/.gnupg/.#lk0x0000000001aba720.hope.7199", "/home/ray/.gnupg/.#lk0x0000000001aba720.hope.7199x") = 0
stat("/home/ray/.gnupg/.#lk0x0000000001aba720.hope.7199", {st_mode=S_IFREG|0644, st_size=16, ...}) = 0
unlink("/home/ray/.gnupg/.#lk0x0000000001aba720.hope.7199x") = 0
link("/home/ray/.gnupg/.#lk0x0000000001aba720.hope.7199", "/home/ray/.gnupg/pubring.kbx.lock") = 0
stat("/home/ray/.gnupg/.#lk0x0000000001aba720.hope.7199", {st_mode=S_IFREG|0644, st_size=16, ...}) = 0
openat(AT_FDCWD, "/home/ray/.gnupg/pubring.kbx", O_RDONLY) = 4
lseek(4, 0, SEEK_CUR) = 0
fstat(4, {st_mode=S_IFREG|0644, st_size=3897, ...}) = 0
read(4, "\0\0\0 \1\1\0\2KBXf\0\0\0\0]\275\250\210]\275\250\210\0\0\0\0\0\0\0\0"..., 4096) = 3897
lseek(4, 0, SEEK_CUR) = 3897
lseek(4, 0, SEEK_CUR) = 3897
access("/home/ray/.gnupg/pubring.kbx", W_OK) = 0
openat(AT_FDCWD, "/home/ray/.gnupg/pubring.kbx.lock", O_RDONLY) = 5
read(5, " 7199\nhope\n", 16) = 16
close(5) = 0
getpid() = 7199
unlink("/home/ray/.gnupg/pubring.kbx.lock") = 0
close(4) = 0
openat(AT_FDCWD, "/home/ray/.gnupg/pubring.kbx", O_RDONLY) = 4
lseek(4, 0, SEEK_CUR) = 0
fstat(4, {st_mode=S_IFREG|0644, st_size=3897, ...}) = 0
read(4, "\0\0\0 \1\1\0\2KBXf\0\0\0\0]\275\250\210]\275\250\210\0\0\0\0\0\0\0\0"..., 4096) = 3897
lseek(4, 0, SEEK_CUR) = 3897
lseek(4, 0, SEEK_CUR) = 3897
lseek(4, 0, SEEK_CUR) = 3897
write(2, "gpg: key A562BD9EBA31E5D5: \"glor"..., 38gpg: key A562BD9EBA31E5D5: "glorynonce) = 38
write(2, "\" not changed\n", 14" not changed
) = 14
openat(AT_FDCWD, "/home/ray/.gnupg/pubring.kbx", O_RDONLY) = 5
lseek(5, 0, SEEK_CUR) = 0
fstat(5, {st_mode=S_IFREG|0644, st_size=3897, ...}) = 0
read(5, "\0\0\0 \1\1\0\2KBXf\0\0\0\0]\275\250\210]\275\250\210\0\0\0\0\0\0\0\0"..., 4096) = 3897
lseek(5, 0, SEEK_CUR) = 3897
lseek(5, 0, SEEK_CUR) = 3897
lseek(5, 0, SEEK_CUR) = 3897
close(5) = 0
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/share/locale/en_US.UTF-8/LC_MESSAGES/libgpg-error.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/share/locale/en_US.utf8/LC_MESSAGES/libgpg-error.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/share/locale/en_US/LC_MESSAGES/libgpg-error.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/share/locale/en.UTF-8/LC_MESSAGES/libgpg-error.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/share/locale/en.utf8/LC_MESSAGES/libgpg-error.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/nix/store/fysk0m4xjhgxp7vlqajlhl71pyml9i45-libgpg-error-1.36/share/locale/en/LC_MESSAGES/libgpg-error.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
getuid() = 1000
stat("/run/user/1000", {st_mode=S_IFDIR|0700, st_size=160, ...}) = 0
getuid() = 1000
stat("/run/user/1000/gnupg", {st_mode=S_IFDIR|0700, st_size=120, ...}) = 0
getuid() = 1000
stat("/run/user/1000/gnupg/S.gpg-agent", {st_mode=S_IFSOCK|0700, st_size=0, ...}) = 0
socket(AF_UNIX, SOCK_STREAM, 0) = 5
stat("/run/user/1000/gnupg/S.gpg-agent", {st_mode=S_IFSOCK|0700, st_size=0, ...}) = 0
connect(5, {sa_family=AF_UNIX, sun_path="/run/user/1000/gnupg/S.gpg-agent"}, 34) = 0
read(5, "OK Pleased to meet you, process "..., 1002) = 37
write(5, "RESET", 5) = 5
write(5, "\n", 1) = 1
read(5, "OK\n", 1002) = 3
ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
fstat(0, {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0x2), ...}) = 0
readlink("/proc/self/fd/0", "/dev/pts/2", 4095) = 10
stat("/dev/pts/2", {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0x2), ...}) = 0
ioctl(0, TCGETS, {B38400 opost isig icanon echo ...}) = 0
fstat(0, {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0x2), ...}) = 0
readlink("/proc/self/fd/0", "/dev/pts/2", 4095) = 10
stat("/dev/pts/2", {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0x2), ...}) = 0
write(5, "OPTION ttyname=/dev/pts/2", 25) = 25
write(5, "\n", 1) = 1
read(5, "OK\n", 1002) = 3
write(5, "OPTION ttytype=rxvt-unicode-256c"..., 36) = 36
write(5, "\n", 1) = 1
read(5, "OK\n", 1002) = 3
write(5, "OPTION display=:0", 17) = 17
write(5, "\n", 1) = 1
read(5, "OK\n", 1002) = 3
write(5, "OPTION xauthority=/home/ray/.Xau"..., 39) = 39
write(5, "\n", 1) = 1
read(5, "OK\n", 1002) = 3
write(5, "OPTION putenv=XMODIFIERS=@im=ibu"..., 33) = 33
write(5, "\n", 1) = 1
read(5, "OK\n", 1002) = 3
write(5, "OPTION putenv=GTK_IM_MODULE=ibus", 32) = 32
write(5, "\n", 1) = 1
read(5, "OK\n", 1002) = 3
write(5, "OPTION putenv=DBUS_SESSION_BUS_A"..., 111) = 111
write(5, "\n", 1) = 1
read(5, "OK\n", 1002) = 3
write(5, "OPTION putenv=QT_IM_MODULE=ibus", 31) = 31
write(5, "\n", 1) = 1
read(5, "OK\n", 1002) = 3
write(5, "OPTION lc-ctype=en_US.UTF-8", 27) = 27
write(5, "\n", 1) = 1
read(5, "OK\n", 1002) = 3
write(5, "OPTION lc-messages=en_US.UTF-8", 30) = 30
write(5, "\n", 1) = 1
read(5, "OK\n", 1002) = 3
write(5, "GETINFO version", 15) = 15
write(5, "\n", 1) = 1
read(5, "D 2.2.17\nOK\n", 1002) = 12
write(5, "OPTION allow-pinentry-notify", 28) = 28
write(5, "\n", 1) = 1
read(5, "OK\n", 1002) = 3
write(5, "OPTION agent-awareness=2.1.0", 28) = 28
write(5, "\n", 1) = 1
read(5, "OK\n", 1002) = 3
write(5, "KEYWRAP_KEY --import", 20) = 20
write(5, "\n", 1) = 1
read(5, "D \314J\303\272f\5v\260%25\254\334\276\2479\334\315\nOK\n", 1002) = 24
write(5, "SETKEYDESC Please+enter+the+pass"..., 157) = 157
write(5, "\n", 1) = 1
read(5, "OK\n", 1002) = 3
write(5, "IMPORT_KEY", 10) = 10
write(5, "\n", 1) = 1
read(5, "INQUIRE KEYDATA\n", 1002) = 16
write(5, "D \377.\272c@\235/\238\321\211r\27\241\300\327>\314{\245\4\301-ce4@3\233\357"..., 1000) = 1000
write(5, "D '\220\236M%0A-_\30\316\273\223\301\370\371\22\203d\235\4\252\324\7\25\300\fL\313\362"..., 132) = 132
write(5, "END", 3) = 3
write(5, "\n", 1) = 1
read(5, "ERR 67108949 No pinentry <GPG Ag"..., 1002) = 37
write(2, "gpg: key A562BD9EBA31E5D5/A562BD"..., 79gpg: key A562BD9EBA31E5D5/A562BD9EBA31E5D5: error sending to agent: No pinentry) = 79
write(2, "\n", 1
) = 1
write(2, "gpg: error building skey array: "..., 43gpg: error building skey array: No pinentry) = 43
write(2, "\n", 1
) = 1
write(2, "gpg: error reading 'secret-key':"..., 44gpg: error reading 'secret-key': No pinentry) = 44
write(2, "\n", 1
) = 1
close(3) = 0
write(2, "gpg: import from 'secret-key' fa"..., 49gpg: import from 'secret-key' failed: No pinentry) = 49
write(2, "\n", 1
) = 1
write(2, "gpg: Total number processed: 0", 30gpg: Total number processed: 0) = 30
write(2, "\n", 1
) = 1
write(2, "gpg: unchanged: 1", 30gpg: unchanged: 1) = 30
write(2, "\n", 1
) = 1
write(2, "gpg: secret keys read: 1", 30gpg: secret keys read: 1) = 30
write(2, "\n", 1
) = 1
close(4) = 0
munmap(0x7fa509d40000, 32768) = 0
unlink("/home/ray/.gnupg/.#lk0x0000000001aba720.hope.7199") = 0
exit_group(2) = ?
+++ exited with 2 +++
Please run nix run nixpkgs.nix-info -c nix-info -m and paste the result.
- system: `"x86_64-linux"`
- host os: `Linux 5.3.8, NixOS, 20.03pre199897.471869c9185 (Markhor)`
- multi-user?: `yes`
- sandbox: `yes`
- version: `nix-env (Nix) 2.3.1`
- nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`
You now need to set programs.gnupg.agent.enable = true since https://github.com/NixOS/nixpkgs/pull/71095
It doesn't help that gnupg tries to automatically start a completely useless version of gpg-agent which doesn't have any pinentry.
Thanks, I had tried setting this option but I needed to reboot
or, more likely, I needed to restart gpg-agent
I am getting the error on GNOME even with programs.gnupg.agent.enable = true:
$ nixos-option -I nixos-config=/etc/nixos/configuration.nix programs.gnupg.agent.enable
Value:
true
$ nixos-option -I nixos-config=/etc/nixos/configuration.nix programs.gnupg.agent.pinentryFlavor
Value:
"gnome3"
$ gpg --clearsign README.md
gpg: signing failed: No pinentry
gpg: README.md: clear-sign failed: No pinentry
I rebooted my computer after rebuilding the system but the systemd service is not started. Instead the gpg command starts gpg-agent --homedir /home/jtojnar/.config/gnupg --use-standard-socket --daemon. Even when I manually run systemctl --user start gpg-agent.service, the program will still spawn the command without --pinentry-program flag:
$ ps aux | grep gpg-agent
jtojnar 2558 0.0 0.0 277340 3000 ? SLs 21:13 0:00 /nix/store/crscs7zndgn64kin4s4mknsf6ya46mp2-gnupg-2.2.17/bin/gpg-agent --supervised --pinentry-program /nix/store/dalpfpjgzhg689c8hyfq8a57w56hma8w-pinentry-1.1.0-gnome3/bin/pinentry
I also had to apply the following patch for correct pinentry to be passed as an argument:
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -5589,7 +5589,7 @@ in
pinentry-emacs = (stdenv.lib.getOutput "emacs" pinentry);
pinentry-gtk2 = (stdenv.lib.getOutput "gtk2" pinentry);
pinentry-qt = (stdenv.lib.getOutput "qt" pinentry);
- pinentry-gnome = (stdenv.lib.getOutput "gnome" pinentry);
+ pinentry-gnome = (stdenv.lib.getOutput "gnome3" pinentry);
pinentry_mac = callPackage ../tools/security/pinentry/mac.nix {
inherit (darwin.apple_sdk.frameworks) Cocoa;
cc @flokli
programs.gnupg.agent.enable = true configures a per-user systemd.socket, which should spawn a pinentry.
To fix systems where this isn't configured properly, we could think about hardcoding gpg to the pinentry ncurses flavor, so we provide at least some usable pinentry - it currently seems to try to execute one from ${gpg.out}, which is stupid:
execve("/nix/store/rv2ihwxj7siybjv6558n8wqf853w01az-gnupg-2.2.17/bin/pinentry", ["pinentry"], 0x7ffff0004360 /* 53 vars */) = -1 ENOENT (No such file or directory)
--
- pinentry-gnome = (stdenv.lib.getOutput "gnome" pinentry);
+ pinentry-gnome = (stdenv.lib.getOutput "gnome3" pinentry);
is definitely a bug - the output is called gnome3 - no idea why stdenv.lib.getOutput doesn't fail eval.
@jtojnar mind filing a PR?
programs.gnupg.agent.enable = trueconfigures a per-user systemd.socket, which should spawn a pinentry.
Any idea why would the incorrect program being spawned? I see in strace the socket being touched
stat("/run/user/1000/gnupg/d.jqwquw8s9twbbk9ds3oi4ice/S.gpg-agent", {st_mode=S_IFSOCK|0700, st_size=0, ...}) = 0
socket(AF_UNIX, SOCK_STREAM, 0) = 3
stat("/run/user/1000/gnupg/d.jqwquw8s9twbbk9ds3oi4ice/S.gpg-agent", {st_mode=S_IFSOCK|0700, st_size=0, ...}) = 0
connect(3, {sa_family=AF_UNIX, sun_path="/run/user/1000/gnupg/d.jqwquw8s9twbbk9ds3oi4ice/S.gpg-agent"}, 61) = 0
read(3, "OK Pleased to meet you, process "..., 1002) = 38
execve("/nix/store/rv2ihwxj7siybjv6558n8wqf853w01az-gnupg-2.2.17/bin/pinentry", ["pinentry"], 0x7ffff0004360 /* 53 vars */) = -1 ENOENT (No such file or directory)
Where are you getting this from. I do not see anything like that even though I use strace -f.
no idea why
stdenv.lib.getOutputdoesn't fail eval.
We have
pkg.${output} or pkg.out or pkg
in there. I would say that silent fallback is not desirable.
@jtojnar mind filing a PR?
Sure, once I make gpg working again so I can sign the commit.
This was from another nixos vm test PR (based on staging), where I ran gpg in --batch mode, without the nixos gpg module being enabled.
I agree on silent fallback not being desirable.
I see in strace the socket being touched
Apparently, the socket is a different from the systemd one, which should be /run/user/1000/gnupg/S.gpg-agent.
After a closer inspection of the strace output, connection to /run/user/1000/gnupg/d.jqwquw8s9twbbk9ds3oi4ice/S.gpg-agent is first tried, and when that fails, an agent is spawned, which then creates the wrong socket.
connect(3, {sa_family=AF_UNIX, sun_path="/run/user/1000/gnupg/d.jqwquw8s9twbbk9ds3oi4ice/S.gpg-agent"}, 61) = -1 ENOENT (No such file or directory)
…
[pid 27105] execve("/nix/store/crscs7zndgn64kin4s4mknsf6ya46mp2-gnupg-2.2.17/bin/gpg-agent", ["gpg-agent", "--homedir", "/home/jtojnar/.config/gnupg", "--use-standard-socket", "--daemon"], 0x7ffea3771f48 /* 89 vars */) = 0
…
It appears that when GNUPGHOME environment variable is set (for example when I want to use ~/.local/share/gnupg instead of it polluting my home directory) the socket path also changes, so the one registered by systemd will not be used.
https://github.com/gpg/gnupg/blob/c6702d77d936b3e9d91b34d8fdee9599ab94ee1b/common/homedir.c#L663-L666
What is worse, not even GPG_AGENT_INFO=/run/user/$(id -u)/gnupg/S.gpg-agent:0:1 seems to have any effect. Edit: GPG_AGENT_INFO seems to have been removed in GNUPG 2.2.
What was the fix? After updating to
20.03pre199897.471869c9185 (Markhor)
I get this error in Thunderbird with Enigmail:
Your GnuPG installation is configured to use the console for pinentry. However, when using Enigmail you need a graphical version of pinentry.
This is a system setup or configuration error that prevents Enigmail from working properly and cannot be fixed automatically.
We strongly recommend that you consult our support web site at https://enigmail.net/faq.
I tried this patch:
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -5589,7 +5589,7 @@ in
pinentry-emacs = (stdenv.lib.getOutput "emacs" pinentry);
pinentry-gtk2 = (stdenv.lib.getOutput "gtk2" pinentry);
pinentry-qt = (stdenv.lib.getOutput "qt" pinentry);
- pinentry-gnome = (stdenv.lib.getOutput "gnome" pinentry);
+ pinentry-gnome = (stdenv.lib.getOutput "gnome3" pinentry);
pinentry_mac = callPackage ../tools/security/pinentry/mac.nix {
inherit (darwin.apple_sdk.frameworks) Cocoa;
And then gpgconf --kill gpg-agent. No observable differences.
The GNOME fix is in https://github.com/NixOS/nixpkgs/commit/1c74b29b05a55f1a66afb595fd5796cb52879aa3
@andrewrk There is an entry in 20.03 release notes:
GnuPG is now built without support for a graphical passphrase entry by default. Please enable the
gpg-agentuser service via the NixOS optionprograms.gnupg.agent.enable. Note that upstream recommends usinggpg-agentand will spawn agpg-agenton the first invocation of GnuPG anyway.
You will also need to make sure you are not setting GNUPGHOME environment variable, or override the socket path in the gnupg-agent.socket accordingly.
Actually, @flokli, this will not work on non-NixOS distros. What do you think about adding dummy ${gnupg}/bin/pinentry that would try to run pinentry from path, falling back to /run/current-system/sw/bin/pinentry and /usr/bin/pinentry?
I already thought about providing pinentry-curses in ${gnupg}/bin/pinentry just in case programs.gnupg.agent.enable isn't set, but having a wrapper as described above might be better :-)
@jtojnar can you file a PR adding the wrapper as described above?
It appears that when GNUPGHOME environment variable is set (for example when I want to use ~/.local/share/gnupg instead of it polluting my home directory) the socket path also changes, so the one registered by systemd will not be used.
Yes! It took me an unreasonable amount of time to figure out what the problem was. All this time I never actually used the user service because the first gpg call would:
I'm still not sure which change in nixpkgs made this instance of gpg-agent not find the pinentry program.
Anyway, It's not a big deal for me because I'm already using rewritefs in my home but it's quite annoying otherwise. Do you think this should be reported upstream?
@rnhmjoj I am pretty sure I started writing to a gnupg-dev when this issue was opened about how they expect us to set GNUPG_HOME if we want to make gpg “XDG compliant” (which will only barely work because gnupg home directory conflates data and config), making us choose between clean home directory and socket activation. Unfortunately, I never got time to finish it and now I cannot even find the draft. I still have some relevant browser tabs open if someone is interested:
'basedir' in gnupg-devel - MARC
https://marc.info/?l=gnupg-devel&w=2&r=1&s=basedir&q=b
'Re: Should I mark/announce GNOME as incompatible with gpg2 for now?' - MARC
https://marc.info/?l=gnupg-devel&m=140960457124694&w=2
'Re: start gpg-agent with systemd' - MARC
https://marc.info/?l=gnupg-devel&m=135058727717961&w=2
'Re: Bug#882736: [pkg-gnupg-maint] Bug#882736: gpg-agent: does not always use same socketdir' - MARC
https://marc.info/?l=gnupg-devel&m=151181177731068
Bug#882736: [pkg-gnupg-maint] Bug#882736: gpg-agent: does not always use same socketdir
https://lists.gnupg.org/pipermail/gnupg-devel/2017-November/033276.html
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=882736
⚓ T1456 Support XDG basedir specification
https://dev.gnupg.org/T1456
⚓ T1018 Conform to XDG Base Directory Specification
https://dev.gnupg.org/T1018#74740
I still don't know how to deal with this breaking change. I have user sesions that can either be initiated via local login (graphical session) or via SSH from remote. Depending on the setting of the pinentry program only one of them will get a proper pinentry prompt.
In a graphical setting a graphical pinentry should be used, in a terminal the ncurses interface.
Before this change (whatever it was, I lost track of the exact PR & commit) users would be prompted via either the graphical interface or ncurses. Just depending on the environment. (e.g. no DISPLAY set would most likely fall back to ncurses). None of the current variants support that use case anymore.
Also the entire non-interactive (aka no systemd user session) use-case isn't really looking great anymore.
I believe this change was done to change things to the better but so far I fail to see the big picture. It is a bit of closure size reduction and breaking decade old use-cases.
@andir You are right, I had to stop using the graphical pinentry because the agent would open a window on the X server when in a remote shell. ncurses works mostly fine but there is always that ssh-agent issue.
This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/yubikey-smartcard-challenge-mode-usable-on-remote-ssh/8936/16