aboutsummaryrefslogtreecommitdiff
path: root/src/org/euandre/papo.scm
blob: 162e1766491cc8402bcd566e50f4ee288e4e1044 (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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
(define-module (org euandre papo)
  #:use-module ((org euandre packages) #:prefix pkg:)
  #:use-module ((org euandre queue) #:prefix q:)
  #:use-module (guix packages)
  #:use-module (guix records)
  #:export (<papod-configuration>
             papod-configuration
        make-papod-configuration
             papod-configuration?
             papod-configuration-name
             papod-configuration-package
             papod-configuration-user
             papod-configuration-group
             papod-configuration-log-file
             papod-configuration-data-directory
             papod-configuration-run-directory
             papod-configuration-run-in-container?
             papod-configuration-container-name
             papod-configuration-extra-mappings
             papod-configuration-options
             papod-configuration-listen-socket
             papod-configuration-upstream-socket))



(define-public papo.im
  (package
    (inherit
      (pkg:pkg
       "papo.im"
       "ce25cb37a8170d9b8337f48c27b906e4580cc2cd"
       "0nhblligf94ai0v5y34z6bzwla5p4224lzr79prl84piyhsbng8s"))
    (native-inputs
      (pkg:format-inputs
       (list
        pkg:mkwb)))))

(define-public status.papo.im
  (package
    (inherit
      (pkg:pkg
       "status.papo.im"
       "ef161641420b2786e176cce4e5ace4934c7122c7"
       "1nhbx83bckdmffw1c2gi8da8rd66ccmvlmfrinwfwz78lnlz8a9j"))
    (native-inputs
      (pkg:format-inputs
       (list
        pkg:mkwb)))))

(define-public chat.papo.im
  (package
    (inherit
      (pkg:pkg
       "chat.papo.im"
       "5826fb5037983bdbe04b8d3b364167e8516ab7db"
       "0k7a78d8qx8ld8i0iqzm5f5d66n06w1x6709pmpbw9a921a4qvqz"))
    (native-inputs
      (pkg:normalize-inputs '(node)))))

(define-public papod
  (pkg:gopkg
   "papod"
   (pkg:format-inputs
    (list
     pkg:guuid
     pkg:gobang
     pkg:golite q:sqlitex
     pkg:scrypt q:scryptkdf
     pkg:q
     pkg:cracha
     pkg:eut))
   "da12c61343f988a6f19f65bf7be331298bc1cca8"
   "16svn6sb3wkg5yw4gxhl1mmx5jz769008y8pkaqzk92ya1xpi1i0"))



(define-record-type* <papod-configuration>
  papod-configuration
  make-papod-configuration
  papod-configuration?
  (name              papod-configuration-name
                     (default "papod"))
  (package           papod-configuration-package
                     (default papod))
  (user              papod-configuration-user
                     (default "papod"))
  (group             papod-configuration-group
                     (default "papod"))
  (log-file          papod-configuration-log-file
                     (default "/var/log/papod/papod.log"))
  (data-directory    papod-configuration-data-directory
                     (default "/var/lib/papod"))
  (run-directory     papod-configuration-run-directory
                     (default "/var/run/papod"))
  (run-in-container? papod-configuration-run-in-container?
                     (default #t))
  (container-name    papod-configuration-container-name
                     (default "papod-container"))
  (extra-mappings    papod-configuration-extra-mappings
                     (default '()))
  (options           papod-configuration-options
                     (default '()))
  (listen-socket     papod-configuration-listen-socket
                     (default "/var/run/papod/papod.socket"))
  (upstream-socket   papod-configuration-upstream-socket
                     (default #f)))



(define-public papod-service-type
  (pkg:service-type-for 'papod
                        <papod-configuration>
                        (papod-configuration)
                        '()))



(list
        papo.im
 status.papo.im
   chat.papo.im
 papod)