blob: b0725b76938c0a0cd7091ec3cc0f107631cd8541 (
plain) (
blame)
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
|
(define-module (sigils services xdg)
#:use-module (gnu home services)
#:use-module (gnu packages)
#:use-module (guix gexp)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1))
(define xdg-autostart-files-directory "autostart")
(define (xdg-autostart-files files)
"Put each file in FILES into the autostart directory"
(map (match-lambda
((desktop-file package)
(cons (string-append xdg-autostart-files-directory "/" desktop-file ".desktop")
`(,(file-append (specification->package package)
(string-append "/share/applications/" desktop-file ".desktop"))))))
files))
(define-public home-xdg-autostart-files-service-type
(service-type (name 'home-xdg-autostart)
(extensions
(list (service-extension home-xdg-configuration-files-service-type
xdg-autostart-files)))
(compose concatenate)
(extend append)
(default-value '())
(description "Files that will be put in @file{~/.guix-home/config/autostart} for XDG autostart compliance.")))
|