We want to allow builds in chroots that lack /bin/sh. Thus, system(3)
and popen(3) need to be tweaked to use the right shell. For the bootstrap
glibc, we just use whatever `sh' can be found in $PATH. The final glibc
instead uses the hard-coded absolute file name of `bash'.
--- a/sysdeps/posix/system.c
+++ b/sysdeps/posix/system.c
@@ -134,7 +134,7 @@ do_system (const char *line)
INIT_LOCK ();
/* Exec the shell. */
- (void) __execve (SHELL_PATH, (char *const *) new_argv, __environ);
+ (void) __execvpe (SHELL_NAME, (char *const *) new_argv, __environ);
_exit (127);
}
else if (pid < (pid_t) 0)
--- b/libio/iopopen.c 2012-06-30 21:12:34.000000000 +0200
+++ b/libio/iopopen.c 2012-12-19 12:52:29.000000000 +0100
@@ -226,7 +226,7 @@ _IO_new_proc_open (fp, command, mode)
_IO_close (fd);
}
- _IO_execl ("/bin/sh", "sh", "-c", command, (char *) 0);
+ execlp ("sh", "sh", "-c", command, (char *) 0);
_IO__exit (127);
}
_IO_close (child_end);
guix/about/'>aboutsummaryrefslogtreecommitdiff
|
Age | Commit message (Expand) | Author |
2020-07-25 | utils: Move <location> and '&error-location' to (guix diagnostics)....* guix/utils.scm (<location>, source-properties->location)
(location->source-properties, &error-location): Move to...
* guix/diagnostics.scm: ... here.
* gnu.scm: Adjust imports accordingly.
* gnu/machine.scm: Likewise.
* gnu/system.scm: Likewise.
* gnu/tests.scm: Likewise.
* guix/inferior.scm: Likewise.
* tests/channels.scm: Likewise.
* tests/packages.scm: Likewise.
| Ludovic Courtès |
2020-02-09 | Update e-mail address for Jakob L. Kreuze....As requested here:
<https://lists.gnu.org/archive/html/guix-devel/2020-02/msg00128.html>.
* .mailmap: Add an entry for Jakob.
* gnu/machine.scm, gnu/machine/digital-ocean.scm, gnu/machine/ssh.scm,
gnu/packages/admin.scm, gnu/packages/i2p.scm, gnu/packages/music.scm,
gnu/packages/web.scm, gnu/tests/reconfigure.scm, guix/scripts/deploy.scm,
guix/scripts/system/reconfigure.scm: Update their e-mail address.
| Tobias Geerinckx-Rice |
2019-12-08 | machine: Remove unnecessary record self-referencing bindings....'this-machine' and 'this-machine-ssh-configuration' were useless given
that there are no thunked fields.
* gnu/machine.scm (<machine>)[this-machine]: Remove.
* gnu/machine/ssh.scm (<machine-ssh-configuration>)
[this-machine-ssh-configuration]: Remove.
| Ludovic Courtès |
2019-12-07 | machine: Add provenance tracking to each machine operating system....* gnu/machine.scm (<machine>): Rename accessor to
'%machine-operating-system'.
(machine-operating-system): New procedure.
* doc/guix.texi (Service Reference): Mention it.
| Ludovic Courtès |
2019-08-15 | machine: Implement 'roll-back-machine'....* gnu/machine.scm (roll-back-machine, &deploy-error, deploy-error?)
(deploy-error-should-roll-back)
(deploy-error-captured-args): New variable.
* gnu/machine/ssh.scm (roll-back-managed-host): New variable.
* guix/scripts/deploy.scm (guix-deploy): Roll-back systems when a
deployment fails.
| Jakob L. Kreuze |
2019-08-06 | machine: Rename 'system' field....* gnu/machine.scm (machine-system): Delete variable.
(machine-operating-system): New variable.
All callers changed.
* doc/guix.texi (Invoking guix deploy): Use the
'machine-operating-system' accessor rather than 'machine-system'.
| Jakob L. Kreuze |
2019-07-06 | gnu: Add machine type for deployment specifications....* gnu/machine.scm: New file.
* gnu/machine/ssh.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
| Jakob L. Kreuze |