aboutsummaryrefslogtreecommitdiff
path: root/src/org/euandre/papo.scm
blob: 18d2f9d779079990c35506f2da40fe9b76df2574 (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
(define-module (org euandre papo)
  #:use-module ((org euandre packages) #:prefix pkg:)
  #:use-module ((org euandre queue) #:prefix q:)
  #:use-module (guix gexp)
  #:use-module (guix packages)
  #:use-module (guix records)
  #:use-module (guix utils)
  #: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-options
             papod-configuration-listen-socket
             papod-configuration-upstream-socket))



(define-public papo.im
  (let ((pkg (pkg:pkg
              "papo.im"
              "fa07fa576e07b4cc6b7c9123bd3a6c91e6afc609"
              "084w89v15nmr45nv9av8pz7iq99aw3ggaxr0gzqfjbskb3wvvkml")))
    (package
      (inherit pkg)
      (native-inputs
        (append
         (pkg:format-inputs (list pkg:mkwb pkg:mktorrent-latest))
         (pkg:normalize-inputs '(gnupg jq rsync po4a gettext ghostscript moreutils))))
      (arguments
        (substitute-keyword-arguments (package-arguments pkg)
          ((#:phases phases)
           #~(modify-phases #$phases
               (add-before 'build 'sethome-ghostscript
               (lambda _
                 (setenv "HOME" (getcwd)))))))))))

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

(define-public papod
  (pkg:gopkg
   "papod"
   (pkg:format-inputs
    (list
     pkg:uuid
     pkg:gobang
     pkg:pds
     pkg:stm
     pkg:golite q:sqlitex
     pkg:scrypt q:scryptkdf
     pkg:fiinha
     pkg:cracha
     pkg:eut))
   "cc2cf1e3c3894f39fbc4e98a6764f39bb0ef1c2d"
   "0kghqc9ivwa24b8ydpgnnknakn62d5ghrxdy7ggc11jqd9bnky00"))



(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"))
  (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
 chat.papo.im
 papod)