The test case below relies on /etc/groups and similar info that is
not available in chroot builds, so skip it.
--- scheme48-1.9/scheme/posix/check.scm 2013-05-11 21:55:36.000000000 +0200
+++ scheme48-1.9/scheme/posix/check.scm 2013-05-11 21:55:40.000000000 +0200
@@ -229,29 +229,7 @@
; This assumes that we are not running as root and that / is owned by root.
-(define-test-case users&groups posix-core-tests
- (let ((my-info (get-file-info directory-name))
- (root-info (get-file-info "/")))
- (let ((my-user (user-id->user-info (file-info-owner my-info)))
- (root-user (user-id->user-info (file-info-owner root-info)))
- (my-group (group-id->group-info (file-info-group my-info)))
- (root-group (group-id->group-info (file-info-group root-info))))
- (let ((my-other-user (name->user-info (user-info-name my-user)))
- (my-other-group (name->group-info (group-info-name my-group))))
- (check-that (file-info-owner my-info)
- (is user-id=? (user-info-id my-user)))
- (check-that (file-info-owner root-info)
- (opposite (is user-id=? (user-info-id my-user))))
- (check-that (file-info-group my-info)
- (is group-id=? (group-info-id my-group)))
- ;; doesn't work reliably
- ;; (specifically, if the user is member of wheel)
- ;; (check (not (group-id=? (file-info-group root-info)
- ;; (group-info-id my-group))))
- (check-that (os-string->string (user-info-name root-user))
- (member-of '("root"
- "bin" ; AIX
- )))))))
+
(define-test-case environment posix-core-tests
(let ((env (reverse (environment-alist))))
|
Age | Commit message (Expand) | Author |
2023-01-30 | linux-container: 'container-excursion' forks to join the PID namespace....Fixes <https://issues.guix.gnu.org/61156>.
* gnu/build/linux-container.scm (container-excursion): Add extra call to
'primitive-fork' and invoke THUNK in the child process.
* tests/containers.scm ("container-excursion"): Remove extra
'primitive-fork' call, now unnecessary.
("container-excursion*, /proc"): New test.
| Ludovic Courtès |
2023-01-30 | container: Correctly report exit status....* gnu/build/linux-container.scm (container-excursion): Return the raw
status value.
* tests/containers.scm ("container-excursion, same namespaces"): Add
'status:exit-val' call.
* guix/scripts/container/exec.scm (guix-container-exec): Correctly
handle the different cases.
| Ludovic Courtès |
2022-09-24 | linux-container: Mark socket pair as SOCK_CLOEXEC....* gnu/build/linux-container.scm (run-container): Pass SOCK_CLOEXEC to
'socketpair'.
| Ludovic Courtès |
2022-09-20 | linux-container: 'container-excursion*' marks its FDs as FD_CLOEXEC....Fixes <https://issues.guix.gnu.org/57827>.
Reported by Mathieu Othacehe <othacehe@gnu.org>.
Fixes a regression introduced with the Shepherd 0.9.2 upgrade in
1ba0e38267c9ff8bb476285091be6e297bbf136e, whereby IN and OUT would no
longer be closed when 'fork+exec-command/container' would call
'exec-command*' as part of the THUNK passed to 'container-excursion*'.
This is because the Shepherd 0.9.2 assumes file descriptors are properly
marked as O_CLOEXEC and, consequently, 'exec-command' no longer run the
close(2) loop prior to 'exec'.
* gnu/build/linux-container.scm (container-excursion*): Add calls to
'fcntl'.
| Ludovic Courtès |