all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
blob 868eafbec813499b477e3190c27f0030a52497d0 1562 bytes (raw)
name: gnu/services/home.scm 	 # note: path name is non-authoritative(*)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
 
(define-module (gnu services home)
  #:use-module (gnu services)
  #:use-module (gnu services shepherd)

  #:use-module (guix gexp)
  #:use-module (guix packages)
  #:use-module (guix records)

  #:export (guix-home-service-type))


(define (guix-home-shepherd-service config)
  (map
   (lambda (x)
     (let ((user (car x))
           (he (cdr x)))
       (shepherd-service
        (documentation "Activate Guix Home.")
        ;; Originally requirement was user-homes, but for recently it stopped
        ;; working, seems like it was executed too early and didn't work, so
        ;; we switched to term-tty1.
        (requirement '(term-tty1))
        (provision (list (symbol-append 'guix-home- (string->symbol user))))
        (one-shot? #t)
        (auto-start? #t)
        (start #~(make-forkexec-constructor
                  '(#$(file-append he "/activate"))
                  #:user #$user
                  #:environment-variables
                  (list (string-append "HOME=" (passwd:dir (getpw #$user))))
                  #:group (group:name (getgrgid (passwd:gid (getpw #$user))))))
        (stop #~(make-kill-destructor)))))
     config))

(define (guix-home-gc-roots config)
  (map cdr config))

(define guix-home-service-type
  (service-type
   (name 'guix-home)
   (description "Setups home-environments specified in the value.")
   (extensions (list (service-extension
                      shepherd-root-service-type
                      guix-home-shepherd-service)))
   ;; (compose append)
   ;; (extend append)
   (default-value '())))

debug log:

solving 868eafbec8 ...
found 868eafbec8 in https://yhetil.org/guix/87wms5e6ym.fsf@yoga.mail-host-address-is-not-set/

applying [1/1] https://yhetil.org/guix/87wms5e6ym.fsf@yoga.mail-host-address-is-not-set/
diff --git a/gnu/services/home.scm b/gnu/services/home.scm
new file mode 100644
index 0000000000..868eafbec8

Checking patch gnu/services/home.scm...
Applied patch gnu/services/home.scm cleanly.

index at:
100644 868eafbec813499b477e3190c27f0030a52497d0	gnu/services/home.scm

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.