diff options
| author | Ludovic Courtès <ludo@gnu.org> | 2024-08-19 16:34:07 +0200 |
|---|---|---|
| committer | Ludovic Courtès <ludo@gnu.org> | 2024-08-19 16:34:07 +0200 |
| commit | 52ac2db924891ed66eb7fb7e6a4bd4af20333a83 (patch) | |
| tree | ce6d51187ca0b61cde9d85cb62036320145444c6 /gnu/services.scm | |
| parent | 4dc1442cc1eaf7265b277901474de2d82a0089e7 (diff) | |
services: privileged-program: No libcap when cross-compiling to the Hurd.
* gnu/services.scm (privileged-program->activation-gexp): Add
‘let-system’ form to define staged ‘libcap’ variable. Use
‘supported-package?’ only when not cross-compiling.
Change-Id: Ifa9bd97b5dc8c3a162d8427533b41d3c30bac18d
Diffstat (limited to 'gnu/services.scm')
| -rw-r--r-- | gnu/services.scm | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/gnu/services.scm b/gnu/services.scm index 610a2df3958..526a38fcd95 100644 --- a/gnu/services.scm +++ b/gnu/services.scm | |||
| @@ -915,9 +915,14 @@ FILES must be a list of name/file-like object pairs." | |||
| 915 | #~(begin | 915 | #~(begin |
| 916 | (use-modules (gnu system privilege)) | 916 | (use-modules (gnu system privilege)) |
| 917 | 917 | ||
| 918 | (activate-privileged-programs (list #$@programs) | 918 | (let ((libcap #$(let-system (system target) |
| 919 | #$(and (supported-package? libcap) | 919 | ;; When cross-compiling, assume libcap is |
| 920 | libcap)))))) | 920 | ;; available on GNU/Linux only. |
| 921 | (and (if target | ||
| 922 | (string-suffix? "linux-gnu" target) | ||
| 923 | (supported-package? libcap system)) | ||
| 924 | libcap)))) | ||
| 925 | (activate-privileged-programs (list #$@programs) libcap)))))) | ||
| 921 | 926 | ||
| 922 | (define privileged-program-service-type | 927 | (define privileged-program-service-type |
| 923 | (service-type (name 'privileged-program) | 928 | (service-type (name 'privileged-program) |
