These tests require a gpg agent to run, and are difficult to get to work right in Guix's environment. For more details, see: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=713074 https://bugs.launchpad.net/pygpgme/+bug/999949 --- pygpgme-0.3/tests/test_encrypt_decrypt.py 2012-02-28 19:10:28.000000000 -0800 +++ pygpgme-0.3/tests/test_encrypt_decrypt.py 2016-02-05 10:21:58.966685384 -0800 @@ -125,7 +125,7 @@ ctx.decrypt(ciphertext, plaintext) self.assertEqual(plaintext.getvalue(), b'Hello World\n') - def test_encrypt_symmetric(self): + def skip_test_encrypt_symmetric(self): plaintext = BytesIO(b'Hello World\n') ciphertext = BytesIO() def passphrase(uid_hint, passphrase_info, prev_was_bad, fd): --- pygpgme-0.3/tests/test_passphrase.py 2012-02-28 19:04:17.000000000 -0800 +++ pygpgme-0.3/tests/test_passphrase.py 2016-02-05 10:21:47.990630956 -0800 @@ -30,7 +30,7 @@ import_keys = ['passphrase.pub', 'passphrase.sec'] - def test_sign_without_passphrase_cb(self): + def skip_test_sign_without_passphrase_cb(self): ctx = gpgme.Context() key = ctx.get_key('EFB052B4230BBBC51914BCBB54DCBBC8DBFB9EB3') ctx.signers = [key] @@ -51,7 +51,7 @@ self.prev_was_bad = prev_was_bad os.write(fd, b'test\n') - def test_sign_with_passphrase_cb(self): + def skip_test_sign_with_passphrase_cb(self): ctx = gpgme.Context() key = ctx.get_key('EFB052B4230BBBC51914BCBB54DCBBC8DBFB9EB3') ctx.signers = [key] ace.c?id=ec8c1681e875e4934cf149fe492db802a6c51612'>diff
path: root/gnu/packages/aux-files/run-in-namespace.c
AgeCommit message (Expand)Author
2019-03-15pack: "-RR" produces PRoot-enabled relocatable binaries....* gnu/packages/aux-files/run-in-namespace.c (exec_with_proot): New function. (main): When 'clone' fails, call 'rm_rf'. [PROOT_PROGRAM]: When 'clone' fails, call 'exec_with_proot'. * guix/scripts/pack.scm (wrapped-package): Add #:proot?. [proot]: New procedure. [build]: Compile with -DPROOT_PROGRAM when PROOT? is true. * guix/scripts/pack.scm (%options): Set the 'relocatable?' value to 'proot when "-R" is passed several times. (guix-pack): Pass #:proot? to 'wrapped-package'. * tests/guix-pack-relocatable.sh: Use "-RR" on Intel systems that lack user namespace support. * doc/guix.texi (Invoking guix pack): Document -RR. Ludovic Courtès
2018-05-11pack: Relocatable wrapper now properly maps the current UID/GID....* gnu/packages/aux-files/run-in-namespace.c (write_id_map) (disallow_setgroups): New functions. (main): Use 'clone' via 'syscall' instead of 'fork' followed by 'unshare'. Add calls to 'disallow_setgroups' and 'write_id_map' in the parent process. Ludovic Courtès
2018-05-10pack: Add '--relocatable'....* gnu/packages/aux-files/run-in-namespace.c: New file. * Makefile.am (AUX_FILES): Add it. * guix/scripts/pack.scm (<c-compiler>): New record type. (c-compiler, bootstrap-c-compiler, c-compiler-compiler): New procedures. (self-contained-tarball): Use 'relative-file-name' for the SOURCE -> TARGET symlink. (docker-image): Add 'defmod' to please Geiser. (wrapped-package, map-manifest-entries): New procedures. (%options, show-help): Add --relocatable. (guix-pack): Honor it. Ludovic Courtès