karabo.daemontools 2.21.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (349) hide show
  1. karabo_daemontools-2.21.4/CMakeLists.txt +19 -0
  2. karabo_daemontools-2.21.4/PKG-INFO +69 -0
  3. karabo_daemontools-2.21.4/README.md +52 -0
  4. karabo_daemontools-2.21.4/dist/karabo_daemontools-2.21.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl +0 -0
  5. karabo_daemontools-2.21.4/pyproject.toml +99 -0
  6. karabo_daemontools-2.21.4/pyproject.toml.template +99 -0
  7. karabo_daemontools-2.21.4/python/src/shims/__init__.py +0 -0
  8. karabo_daemontools-2.21.4/python/src/shims/entrypoints.py +44 -0
  9. karabo_daemontools-2.21.4/src/daemontools/.gitignore +59 -0
  10. karabo_daemontools-2.21.4/src/daemontools/BIN +20 -0
  11. karabo_daemontools-2.21.4/src/daemontools/CHANGES +129 -0
  12. karabo_daemontools-2.21.4/src/daemontools/CHANGES.djb +85 -0
  13. karabo_daemontools-2.21.4/src/daemontools/CMakeLists.txt +129 -0
  14. karabo_daemontools-2.21.4/src/daemontools/EXTRADIST +5 -0
  15. karabo_daemontools-2.21.4/src/daemontools/LICENSE +19 -0
  16. karabo_daemontools-2.21.4/src/daemontools/MAN +21 -0
  17. karabo_daemontools-2.21.4/src/daemontools/README +39 -0
  18. karabo_daemontools-2.21.4/src/daemontools/TODO +4 -0
  19. karabo_daemontools-2.21.4/src/daemontools/VERSION +1 -0
  20. karabo_daemontools-2.21.4/src/daemontools/alloc.c +31 -0
  21. karabo_daemontools-2.21.4/src/daemontools/alloc.h +10 -0
  22. karabo_daemontools-2.21.4/src/daemontools/alloc_re.c +16 -0
  23. karabo_daemontools-2.21.4/src/daemontools/buffer.c +12 -0
  24. karabo_daemontools-2.21.4/src/daemontools/buffer.h +61 -0
  25. karabo_daemontools-2.21.4/src/daemontools/buffer_0.c +13 -0
  26. karabo_daemontools-2.21.4/src/daemontools/buffer_1.c +7 -0
  27. karabo_daemontools-2.21.4/src/daemontools/buffer_2.c +7 -0
  28. karabo_daemontools-2.21.4/src/daemontools/buffer_copy.c +16 -0
  29. karabo_daemontools-2.21.4/src/daemontools/buffer_copyline.c +24 -0
  30. karabo_daemontools-2.21.4/src/daemontools/buffer_get.c +69 -0
  31. karabo_daemontools-2.21.4/src/daemontools/buffer_gets.c +29 -0
  32. karabo_daemontools-2.21.4/src/daemontools/buffer_put.c +89 -0
  33. karabo_daemontools-2.21.4/src/daemontools/buffer_read.c +9 -0
  34. karabo_daemontools-2.21.4/src/daemontools/buffer_write.c +9 -0
  35. karabo_daemontools-2.21.4/src/daemontools/byte.h +17 -0
  36. karabo_daemontools-2.21.4/src/daemontools/byte=l +9 -0
  37. karabo_daemontools-2.21.4/src/daemontools/byte_chr.c +10 -0
  38. karabo_daemontools-2.21.4/src/daemontools/byte_rchr.c +28 -0
  39. karabo_daemontools-2.21.4/src/daemontools/chkshsgr.c +14 -0
  40. karabo_daemontools-2.21.4/src/daemontools/chkshsgr=x +0 -0
  41. karabo_daemontools-2.21.4/src/daemontools/choose.do +4 -0
  42. karabo_daemontools-2.21.4/src/daemontools/choose.sh +18 -0
  43. karabo_daemontools-2.21.4/src/daemontools/clean.do +2 -0
  44. karabo_daemontools-2.21.4/src/daemontools/closeonexec.c +9 -0
  45. karabo_daemontools-2.21.4/src/daemontools/closeonexec.h +8 -0
  46. karabo_daemontools-2.21.4/src/daemontools/compile.do +5 -0
  47. karabo_daemontools-2.21.4/src/daemontools/conanfile.py +33 -0
  48. karabo_daemontools-2.21.4/src/daemontools/conf-bin +3 -0
  49. karabo_daemontools-2.21.4/src/daemontools/conf-cc +3 -0
  50. karabo_daemontools-2.21.4/src/daemontools/conf-ld +3 -0
  51. karabo_daemontools-2.21.4/src/daemontools/conf-man +4 -0
  52. karabo_daemontools-2.21.4/src/daemontools/conf-supervise +5 -0
  53. karabo_daemontools-2.21.4/src/daemontools/conf_supervise.c.do +2 -0
  54. karabo_daemontools-2.21.4/src/daemontools/daemontools-encore.zip +0 -0
  55. karabo_daemontools-2.21.4/src/daemontools/debian/changelog +6 -0
  56. karabo_daemontools-2.21.4/src/daemontools/debian/compat +1 -0
  57. karabo_daemontools-2.21.4/src/daemontools/debian/control +21 -0
  58. karabo_daemontools-2.21.4/src/daemontools/debian/copyright +19 -0
  59. karabo_daemontools-2.21.4/src/daemontools/debian/diff/0001-conf-debian-install-dir.diff +17 -0
  60. karabo_daemontools-2.21.4/src/daemontools/debian/dirs +2 -0
  61. karabo_daemontools-2.21.4/src/daemontools/debian/rules +20 -0
  62. karabo_daemontools-2.21.4/src/daemontools/deepsleep.c +19 -0
  63. karabo_daemontools-2.21.4/src/daemontools/deepsleep.h +6 -0
  64. karabo_daemontools-2.21.4/src/daemontools/default.8.do +2 -0
  65. karabo_daemontools-2.21.4/src/daemontools/default.a.do +8 -0
  66. karabo_daemontools-2.21.4/src/daemontools/default.do +40 -0
  67. karabo_daemontools-2.21.4/src/daemontools/default.o.do +3 -0
  68. karabo_daemontools-2.21.4/src/daemontools/direntry.h.do +2 -0
  69. karabo_daemontools-2.21.4/src/daemontools/direntry.h1 +12 -0
  70. karabo_daemontools-2.21.4/src/daemontools/direntry.h2 +12 -0
  71. karabo_daemontools-2.21.4/src/daemontools/dosubst.do +4 -0
  72. karabo_daemontools-2.21.4/src/daemontools/env.c +17 -0
  73. karabo_daemontools-2.21.4/src/daemontools/env.h +10 -0
  74. karabo_daemontools-2.21.4/src/daemontools/envdir.8 +84 -0
  75. karabo_daemontools-2.21.4/src/daemontools/envdir.c +98 -0
  76. karabo_daemontools-2.21.4/src/daemontools/envdir=x +2 -0
  77. karabo_daemontools-2.21.4/src/daemontools/envini.8 +77 -0
  78. karabo_daemontools-2.21.4/src/daemontools/envini.c +100 -0
  79. karabo_daemontools-2.21.4/src/daemontools/envini=x +2 -0
  80. karabo_daemontools-2.21.4/src/daemontools/envuidgid.8 +48 -0
  81. karabo_daemontools-2.21.4/src/daemontools/envuidgid.c +35 -0
  82. karabo_daemontools-2.21.4/src/daemontools/envuidgid=x +2 -0
  83. karabo_daemontools-2.21.4/src/daemontools/error.c +132 -0
  84. karabo_daemontools-2.21.4/src/daemontools/error.h +30 -0
  85. karabo_daemontools-2.21.4/src/daemontools/error_str.c +267 -0
  86. karabo_daemontools-2.21.4/src/daemontools/fd.h +9 -0
  87. karabo_daemontools-2.21.4/src/daemontools/fd_copy.c +14 -0
  88. karabo_daemontools-2.21.4/src/daemontools/fd_move.c +12 -0
  89. karabo_daemontools-2.21.4/src/daemontools/fghack.8 +36 -0
  90. karabo_daemontools-2.21.4/src/daemontools/fghack.c +52 -0
  91. karabo_daemontools-2.21.4/src/daemontools/fghack=x +2 -0
  92. karabo_daemontools-2.21.4/src/daemontools/fifo.c +12 -0
  93. karabo_daemontools-2.21.4/src/daemontools/fifo.h +8 -0
  94. karabo_daemontools-2.21.4/src/daemontools/find-systype.sh +143 -0
  95. karabo_daemontools-2.21.4/src/daemontools/fmt.h +27 -0
  96. karabo_daemontools-2.21.4/src/daemontools/fmt_uint.c +8 -0
  97. karabo_daemontools-2.21.4/src/daemontools/fmt_uint0.c +12 -0
  98. karabo_daemontools-2.21.4/src/daemontools/fmt_ulong.c +15 -0
  99. karabo_daemontools-2.21.4/src/daemontools/gen_alloc.h +9 -0
  100. karabo_daemontools-2.21.4/src/daemontools/gen_allocdefs.h +36 -0
  101. karabo_daemontools-2.21.4/src/daemontools/getln.c +16 -0
  102. karabo_daemontools-2.21.4/src/daemontools/getln.h +12 -0
  103. karabo_daemontools-2.21.4/src/daemontools/getln2.c +27 -0
  104. karabo_daemontools-2.21.4/src/daemontools/getln=l +2 -0
  105. karabo_daemontools-2.21.4/src/daemontools/hasattribute.h.do +2 -0
  106. karabo_daemontools-2.21.4/src/daemontools/hasattribute.h1 +2 -0
  107. karabo_daemontools-2.21.4/src/daemontools/hasattribute.h2 +2 -0
  108. karabo_daemontools-2.21.4/src/daemontools/hasflock.h.do +2 -0
  109. karabo_daemontools-2.21.4/src/daemontools/hasflock.h1 +3 -0
  110. karabo_daemontools-2.21.4/src/daemontools/hasflock.h2 +4 -0
  111. karabo_daemontools-2.21.4/src/daemontools/hasmemrchr.h.do +2 -0
  112. karabo_daemontools-2.21.4/src/daemontools/hasmemrchr.h1 +3 -0
  113. karabo_daemontools-2.21.4/src/daemontools/hasmemrchr.h2 +5 -0
  114. karabo_daemontools-2.21.4/src/daemontools/hasmkffo.h.do +2 -0
  115. karabo_daemontools-2.21.4/src/daemontools/hasmkffo.h1 +3 -0
  116. karabo_daemontools-2.21.4/src/daemontools/hasmkffo.h2 +4 -0
  117. karabo_daemontools-2.21.4/src/daemontools/hassgact.h.do +2 -0
  118. karabo_daemontools-2.21.4/src/daemontools/hassgact.h1 +3 -0
  119. karabo_daemontools-2.21.4/src/daemontools/hassgact.h2 +4 -0
  120. karabo_daemontools-2.21.4/src/daemontools/hassgprm.h.do +2 -0
  121. karabo_daemontools-2.21.4/src/daemontools/hassgprm.h1 +3 -0
  122. karabo_daemontools-2.21.4/src/daemontools/hassgprm.h2 +4 -0
  123. karabo_daemontools-2.21.4/src/daemontools/hasshsgr.h.do +4 -0
  124. karabo_daemontools-2.21.4/src/daemontools/hasshsgr.h1 +3 -0
  125. karabo_daemontools-2.21.4/src/daemontools/hasshsgr.h2 +4 -0
  126. karabo_daemontools-2.21.4/src/daemontools/haswaitp.h.do +2 -0
  127. karabo_daemontools-2.21.4/src/daemontools/haswaitp.h1 +3 -0
  128. karabo_daemontools-2.21.4/src/daemontools/haswaitp.h2 +4 -0
  129. karabo_daemontools-2.21.4/src/daemontools/install.do +3 -0
  130. karabo_daemontools-2.21.4/src/daemontools/installer.c +164 -0
  131. karabo_daemontools-2.21.4/src/daemontools/installer=x +3 -0
  132. karabo_daemontools-2.21.4/src/daemontools/iopause.c +78 -0
  133. karabo_daemontools-2.21.4/src/daemontools/iopause.h.do +2 -0
  134. karabo_daemontools-2.21.4/src/daemontools/iopause.h1 +21 -0
  135. karabo_daemontools-2.21.4/src/daemontools/iopause.h2 +20 -0
  136. karabo_daemontools-2.21.4/src/daemontools/it.do +1 -0
  137. karabo_daemontools-2.21.4/src/daemontools/load.do +4 -0
  138. karabo_daemontools-2.21.4/src/daemontools/lock.h +10 -0
  139. karabo_daemontools-2.21.4/src/daemontools/lock_ex.c +14 -0
  140. karabo_daemontools-2.21.4/src/daemontools/lock_exnb.c +13 -0
  141. karabo_daemontools-2.21.4/src/daemontools/makedist +13 -0
  142. karabo_daemontools-2.21.4/src/daemontools/makelib.do +4 -0
  143. karabo_daemontools-2.21.4/src/daemontools/makemake +122 -0
  144. karabo_daemontools-2.21.4/src/daemontools/man.do +20 -0
  145. karabo_daemontools-2.21.4/src/daemontools/match.c +36 -0
  146. karabo_daemontools-2.21.4/src/daemontools/match.h +8 -0
  147. karabo_daemontools-2.21.4/src/daemontools/matchtest.c +36 -0
  148. karabo_daemontools-2.21.4/src/daemontools/matchtest=x +3 -0
  149. karabo_daemontools-2.21.4/src/daemontools/multilog.8 +366 -0
  150. karabo_daemontools-2.21.4/src/daemontools/multilog.c +638 -0
  151. karabo_daemontools-2.21.4/src/daemontools/multilog=x +6 -0
  152. karabo_daemontools-2.21.4/src/daemontools/ndelay.h +9 -0
  153. karabo_daemontools-2.21.4/src/daemontools/ndelay_off.c +14 -0
  154. karabo_daemontools-2.21.4/src/daemontools/ndelay_on.c +14 -0
  155. karabo_daemontools-2.21.4/src/daemontools/open.h +12 -0
  156. karabo_daemontools-2.21.4/src/daemontools/open_append.c +8 -0
  157. karabo_daemontools-2.21.4/src/daemontools/open_read.c +8 -0
  158. karabo_daemontools-2.21.4/src/daemontools/open_trunc.c +8 -0
  159. karabo_daemontools-2.21.4/src/daemontools/open_write.c +8 -0
  160. karabo_daemontools-2.21.4/src/daemontools/openreadclose.c +18 -0
  161. karabo_daemontools-2.21.4/src/daemontools/openreadclose.h +10 -0
  162. karabo_daemontools-2.21.4/src/daemontools/pathexec.h +10 -0
  163. karabo_daemontools-2.21.4/src/daemontools/pathexec_env.c +69 -0
  164. karabo_daemontools-2.21.4/src/daemontools/pathexec_run.c +49 -0
  165. karabo_daemontools-2.21.4/src/daemontools/pgrphack.8 +30 -0
  166. karabo_daemontools-2.21.4/src/daemontools/pgrphack.c +13 -0
  167. karabo_daemontools-2.21.4/src/daemontools/pgrphack=x +2 -0
  168. karabo_daemontools-2.21.4/src/daemontools/print-ar.sh +14 -0
  169. karabo_daemontools-2.21.4/src/daemontools/print-cc.sh +5 -0
  170. karabo_daemontools-2.21.4/src/daemontools/print-ld.sh +6 -0
  171. karabo_daemontools-2.21.4/src/daemontools/programs.do +3 -0
  172. karabo_daemontools-2.21.4/src/daemontools/prot.c +28 -0
  173. karabo_daemontools-2.21.4/src/daemontools/prot.h +10 -0
  174. karabo_daemontools-2.21.4/src/daemontools/readclose.c +23 -0
  175. karabo_daemontools-2.21.4/src/daemontools/readclose.h +11 -0
  176. karabo_daemontools-2.21.4/src/daemontools/readproctitle.8 +74 -0
  177. karabo_daemontools-2.21.4/src/daemontools/readproctitle.c +30 -0
  178. karabo_daemontools-2.21.4/src/daemontools/readproctitle=x +2 -0
  179. karabo_daemontools-2.21.4/src/daemontools/rts.do +3 -0
  180. karabo_daemontools-2.21.4/src/daemontools/rts.exp.do +2 -0
  181. karabo_daemontools-2.21.4/src/daemontools/rts.sh.do +2 -0
  182. karabo_daemontools-2.21.4/src/daemontools/rts.tests/00-preamble.sh +52 -0
  183. karabo_daemontools-2.21.4/src/daemontools/rts.tests/envdir.exp +19 -0
  184. karabo_daemontools-2.21.4/src/daemontools/rts.tests/envdir.sh +25 -0
  185. karabo_daemontools-2.21.4/src/daemontools/rts.tests/envini.exp +14 -0
  186. karabo_daemontools-2.21.4/src/daemontools/rts.tests/envini.sh +20 -0
  187. karabo_daemontools-2.21.4/src/daemontools/rts.tests/envuidgid.exp +11 -0
  188. karabo_daemontools-2.21.4/src/daemontools/rts.tests/envuidgid.sh +15 -0
  189. karabo_daemontools-2.21.4/src/daemontools/rts.tests/fghack.exp +9 -0
  190. karabo_daemontools-2.21.4/src/daemontools/rts.tests/fghack.sh +8 -0
  191. karabo_daemontools-2.21.4/src/daemontools/rts.tests/matchtest.exp +80 -0
  192. karabo_daemontools-2.21.4/src/daemontools/rts.tests/matchtest.sh +91 -0
  193. karabo_daemontools-2.21.4/src/daemontools/rts.tests/multilog.exp +42 -0
  194. karabo_daemontools-2.21.4/src/daemontools/rts.tests/multilog.sh +49 -0
  195. karabo_daemontools-2.21.4/src/daemontools/rts.tests/nonexistent.exp +15 -0
  196. karabo_daemontools-2.21.4/src/daemontools/rts.tests/nonexistent.sh +15 -0
  197. karabo_daemontools-2.21.4/src/daemontools/rts.tests/pgrphack.exp +9 -0
  198. karabo_daemontools-2.21.4/src/daemontools/rts.tests/pgrphack.sh +12 -0
  199. karabo_daemontools-2.21.4/src/daemontools/rts.tests/readproctitle.exp +4 -0
  200. karabo_daemontools-2.21.4/src/daemontools/rts.tests/readproctitle.sh +9 -0
  201. karabo_daemontools-2.21.4/src/daemontools/rts.tests/setlock.exp +20 -0
  202. karabo_daemontools-2.21.4/src/daemontools/rts.tests/setlock.sh +22 -0
  203. karabo_daemontools-2.21.4/src/daemontools/rts.tests/softlimit.exp +9 -0
  204. karabo_daemontools-2.21.4/src/daemontools/rts.tests/softlimit.sh +23 -0
  205. karabo_daemontools-2.21.4/src/daemontools/rts.tests/supervise-base.exp +35 -0
  206. karabo_daemontools-2.21.4/src/daemontools/rts.tests/supervise-base.sh +79 -0
  207. karabo_daemontools-2.21.4/src/daemontools/rts.tests/supervise-downtime.exp +5 -0
  208. karabo_daemontools-2.21.4/src/daemontools/rts.tests/supervise-downtime.sh +35 -0
  209. karabo_daemontools-2.21.4/src/daemontools/rts.tests/supervise-lock.exp +14 -0
  210. karabo_daemontools-2.21.4/src/daemontools/rts.tests/supervise-lock.sh +9 -0
  211. karabo_daemontools-2.21.4/src/daemontools/rts.tests/supervise-notify.exp +8 -0
  212. karabo_daemontools-2.21.4/src/daemontools/rts.tests/supervise-notify.sh +29 -0
  213. karabo_daemontools-2.21.4/src/daemontools/rts.tests/supervise-orphanage.exp +15 -0
  214. karabo_daemontools-2.21.4/src/daemontools/rts.tests/supervise-orphanage.sh +73 -0
  215. karabo_daemontools-2.21.4/src/daemontools/rts.tests/supervise-restart.exp +14 -0
  216. karabo_daemontools-2.21.4/src/daemontools/rts.tests/supervise-restart.sh +28 -0
  217. karabo_daemontools-2.21.4/src/daemontools/rts.tests/supervise-start.exp +2 -0
  218. karabo_daemontools-2.21.4/src/daemontools/rts.tests/supervise-start.sh +31 -0
  219. karabo_daemontools-2.21.4/src/daemontools/rts.tests/supervise-stop.exp +8 -0
  220. karabo_daemontools-2.21.4/src/daemontools/rts.tests/supervise-stop.sh +31 -0
  221. karabo_daemontools-2.21.4/src/daemontools/rts.tests/svc.exp +12 -0
  222. karabo_daemontools-2.21.4/src/daemontools/rts.tests/svc.sh +28 -0
  223. karabo_daemontools-2.21.4/src/daemontools/rts.tests/svscan.exp +11 -0
  224. karabo_daemontools-2.21.4/src/daemontools/rts.tests/svscan.sh +47 -0
  225. karabo_daemontools-2.21.4/src/daemontools/rts.tests/tai64n.exp +7 -0
  226. karabo_daemontools-2.21.4/src/daemontools/rts.tests/tai64n.sh +10 -0
  227. karabo_daemontools-2.21.4/src/daemontools/rts.tests/zz-cleanup.sh +2 -0
  228. karabo_daemontools-2.21.4/src/daemontools/scan.h +30 -0
  229. karabo_daemontools-2.21.4/src/daemontools/scan_8long.c +12 -0
  230. karabo_daemontools-2.21.4/src/daemontools/scan_ulong.c +16 -0
  231. karabo_daemontools-2.21.4/src/daemontools/seek.h +17 -0
  232. karabo_daemontools-2.21.4/src/daemontools/seek_set.c +10 -0
  233. karabo_daemontools-2.21.4/src/daemontools/select.h.do +2 -0
  234. karabo_daemontools-2.21.4/src/daemontools/select.h1 +12 -0
  235. karabo_daemontools-2.21.4/src/daemontools/select.h2 +13 -0
  236. karabo_daemontools-2.21.4/src/daemontools/setlock.8 +84 -0
  237. karabo_daemontools-2.21.4/src/daemontools/setlock.c +50 -0
  238. karabo_daemontools-2.21.4/src/daemontools/setlock=x +2 -0
  239. karabo_daemontools-2.21.4/src/daemontools/setuidgid.8 +55 -0
  240. karabo_daemontools-2.21.4/src/daemontools/setuidgid.c +46 -0
  241. karabo_daemontools-2.21.4/src/daemontools/setuidgid=x +2 -0
  242. karabo_daemontools-2.21.4/src/daemontools/setuser.8 +61 -0
  243. karabo_daemontools-2.21.4/src/daemontools/setuser.c +56 -0
  244. karabo_daemontools-2.21.4/src/daemontools/setuser=x +2 -0
  245. karabo_daemontools-2.21.4/src/daemontools/sgetopt.c +53 -0
  246. karabo_daemontools-2.21.4/src/daemontools/sgetopt.h +23 -0
  247. karabo_daemontools-2.21.4/src/daemontools/sig.c +16 -0
  248. karabo_daemontools-2.21.4/src/daemontools/sig.h +29 -0
  249. karabo_daemontools-2.21.4/src/daemontools/sig_block.c +40 -0
  250. karabo_daemontools-2.21.4/src/daemontools/sig_catch.c +18 -0
  251. karabo_daemontools-2.21.4/src/daemontools/sig_pause.c +16 -0
  252. karabo_daemontools-2.21.4/src/daemontools/sleeper.c +48 -0
  253. karabo_daemontools-2.21.4/src/daemontools/sleeper=x +2 -0
  254. karabo_daemontools-2.21.4/src/daemontools/softlimit.8 +167 -0
  255. karabo_daemontools-2.21.4/src/daemontools/softlimit.c +183 -0
  256. karabo_daemontools-2.21.4/src/daemontools/softlimit=x +2 -0
  257. karabo_daemontools-2.21.4/src/daemontools/str.h +15 -0
  258. karabo_daemontools-2.21.4/src/daemontools/str_chr.c +19 -0
  259. karabo_daemontools-2.21.4/src/daemontools/str_start.c +15 -0
  260. karabo_daemontools-2.21.4/src/daemontools/stralloc.h +31 -0
  261. karabo_daemontools-2.21.4/src/daemontools/stralloc_append.c +7 -0
  262. karabo_daemontools-2.21.4/src/daemontools/stralloc_cat.c +9 -0
  263. karabo_daemontools-2.21.4/src/daemontools/stralloc_catb.c +14 -0
  264. karabo_daemontools-2.21.4/src/daemontools/stralloc_cats.c +10 -0
  265. karabo_daemontools-2.21.4/src/daemontools/stralloc_copy.c +6 -0
  266. karabo_daemontools-2.21.4/src/daemontools/stralloc_copyb.c +13 -0
  267. karabo_daemontools-2.21.4/src/daemontools/stralloc_copys.c +10 -0
  268. karabo_daemontools-2.21.4/src/daemontools/stralloc_ready.c +8 -0
  269. karabo_daemontools-2.21.4/src/daemontools/strerr.h +86 -0
  270. karabo_daemontools-2.21.4/src/daemontools/strerr_die.c +33 -0
  271. karabo_daemontools-2.21.4/src/daemontools/strerr_sys.c +14 -0
  272. karabo_daemontools-2.21.4/src/daemontools/subgetopt.c +67 -0
  273. karabo_daemontools-2.21.4/src/daemontools/subgetopt.h +26 -0
  274. karabo_daemontools-2.21.4/src/daemontools/subreaper.c +34 -0
  275. karabo_daemontools-2.21.4/src/daemontools/subreaper.h +8 -0
  276. karabo_daemontools-2.21.4/src/daemontools/supervise.8.in +156 -0
  277. karabo_daemontools-2.21.4/src/daemontools/supervise.c +555 -0
  278. karabo_daemontools-2.21.4/src/daemontools/supervise=x +6 -0
  279. karabo_daemontools-2.21.4/src/daemontools/svc.8.in +150 -0
  280. karabo_daemontools-2.21.4/src/daemontools/svc.c +76 -0
  281. karabo_daemontools-2.21.4/src/daemontools/svc=x +3 -0
  282. karabo_daemontools-2.21.4/src/daemontools/svok.8.in +48 -0
  283. karabo_daemontools-2.21.4/src/daemontools/svok.c +32 -0
  284. karabo_daemontools-2.21.4/src/daemontools/svok=x +3 -0
  285. karabo_daemontools-2.21.4/src/daemontools/svpath.c +40 -0
  286. karabo_daemontools-2.21.4/src/daemontools/svpath.h +9 -0
  287. karabo_daemontools-2.21.4/src/daemontools/svscan.8 +109 -0
  288. karabo_daemontools-2.21.4/src/daemontools/svscan.c +270 -0
  289. karabo_daemontools-2.21.4/src/daemontools/svscan=x +2 -0
  290. karabo_daemontools-2.21.4/src/daemontools/svscanboot.8 +50 -0
  291. karabo_daemontools-2.21.4/src/daemontools/svscanboot.sh +11 -0
  292. karabo_daemontools-2.21.4/src/daemontools/svscanboot=s +0 -0
  293. karabo_daemontools-2.21.4/src/daemontools/svstat.8.in +62 -0
  294. karabo_daemontools-2.21.4/src/daemontools/svstat.c +225 -0
  295. karabo_daemontools-2.21.4/src/daemontools/svstat=x +4 -0
  296. karabo_daemontools-2.21.4/src/daemontools/svstatus.h +14 -0
  297. karabo_daemontools-2.21.4/src/daemontools/svup.8.in +54 -0
  298. karabo_daemontools-2.21.4/src/daemontools/svup.c +92 -0
  299. karabo_daemontools-2.21.4/src/daemontools/svup=x +3 -0
  300. karabo_daemontools-2.21.4/src/daemontools/sysdeps.do +17 -0
  301. karabo_daemontools-2.21.4/src/daemontools/systype.do +2 -0
  302. karabo_daemontools-2.21.4/src/daemontools/tai.h +29 -0
  303. karabo_daemontools-2.21.4/src/daemontools/tai64n.8 +64 -0
  304. karabo_daemontools-2.21.4/src/daemontools/tai64n.c +42 -0
  305. karabo_daemontools-2.21.4/src/daemontools/tai64n=x +4 -0
  306. karabo_daemontools-2.21.4/src/daemontools/tai64nlocal.8 +60 -0
  307. karabo_daemontools-2.21.4/src/daemontools/tai64nlocal.c +70 -0
  308. karabo_daemontools-2.21.4/src/daemontools/tai64nlocal=x +2 -0
  309. karabo_daemontools-2.21.4/src/daemontools/tai_now.c +9 -0
  310. karabo_daemontools-2.21.4/src/daemontools/tai_pack.c +18 -0
  311. karabo_daemontools-2.21.4/src/daemontools/tai_sub.c +8 -0
  312. karabo_daemontools-2.21.4/src/daemontools/tai_unpack.c +18 -0
  313. karabo_daemontools-2.21.4/src/daemontools/taia.h +36 -0
  314. karabo_daemontools-2.21.4/src/daemontools/taia_add.c +20 -0
  315. karabo_daemontools-2.21.4/src/daemontools/taia_approx.c +8 -0
  316. karabo_daemontools-2.21.4/src/daemontools/taia_frac.c +8 -0
  317. karabo_daemontools-2.21.4/src/daemontools/taia_less.c +14 -0
  318. karabo_daemontools-2.21.4/src/daemontools/taia_now.c +15 -0
  319. karabo_daemontools-2.21.4/src/daemontools/taia_pack.c +22 -0
  320. karabo_daemontools-2.21.4/src/daemontools/taia_sub.c +23 -0
  321. karabo_daemontools-2.21.4/src/daemontools/taia_uint.c +12 -0
  322. karabo_daemontools-2.21.4/src/daemontools/targets.do +1 -0
  323. karabo_daemontools-2.21.4/src/daemontools/time=l +13 -0
  324. karabo_daemontools-2.21.4/src/daemontools/timestamp.c +35 -0
  325. karabo_daemontools-2.21.4/src/daemontools/timestamp.h +9 -0
  326. karabo_daemontools-2.21.4/src/daemontools/tryattribute.c +1 -0
  327. karabo_daemontools-2.21.4/src/daemontools/trycpp.c +9 -0
  328. karabo_daemontools-2.21.4/src/daemontools/trydrent.c +10 -0
  329. karabo_daemontools-2.21.4/src/daemontools/tryflock.c +10 -0
  330. karabo_daemontools-2.21.4/src/daemontools/trymemrchr.c +11 -0
  331. karabo_daemontools-2.21.4/src/daemontools/trymkffo.c +9 -0
  332. karabo_daemontools-2.21.4/src/daemontools/trypoll.c +20 -0
  333. karabo_daemontools-2.21.4/src/daemontools/trysgact.c +12 -0
  334. karabo_daemontools-2.21.4/src/daemontools/trysgprm.c +12 -0
  335. karabo_daemontools-2.21.4/src/daemontools/tryshsgr.c +16 -0
  336. karabo_daemontools-2.21.4/src/daemontools/trysysel.c +11 -0
  337. karabo_daemontools-2.21.4/src/daemontools/tryulong64.c +13 -0
  338. karabo_daemontools-2.21.4/src/daemontools/trywaitp.c +9 -0
  339. karabo_daemontools-2.21.4/src/daemontools/uint64.h.do +2 -0
  340. karabo_daemontools-2.21.4/src/daemontools/uint64.h1 +10 -0
  341. karabo_daemontools-2.21.4/src/daemontools/uint64.h2 +10 -0
  342. karabo_daemontools-2.21.4/src/daemontools/unix=l +52 -0
  343. karabo_daemontools-2.21.4/src/daemontools/wait.h +14 -0
  344. karabo_daemontools-2.21.4/src/daemontools/wait_nohang.c +14 -0
  345. karabo_daemontools-2.21.4/src/daemontools/wait_pid.c +41 -0
  346. karabo_daemontools-2.21.4/src/daemontools/warn-auto.sh +2 -0
  347. karabo_daemontools-2.21.4/src/daemontools/warn-shsgr +3 -0
  348. karabo_daemontools-2.21.4/src/daemontools/x86cpuid.c +40 -0
  349. karabo_daemontools-2.21.4/wheel_tests/test_console.py +70 -0
@@ -0,0 +1,19 @@
1
+ # This file is part of Karabo.
2
+ #
3
+ # http://www.karabo.eu
4
+ #
5
+ # Copyright (C) European XFEL GmbH Schenefeld. All rights reserved.
6
+ #
7
+ # Karabo is free software: you can redistribute it and/or modify it under
8
+ # the terms of the MPL-2 Mozilla Public License.
9
+ #
10
+ # You should have received a copy of the MPL-2 Public License along with
11
+ # Karabo. If not, see <https://www.mozilla.org/en-US/MPL/2.0/>.
12
+ #
13
+ # Karabo is distributed in the hope that it will be useful, but WITHOUT ANY
14
+ # WARRANTY; without even the implied warranty of MERCHANTABILITY or
15
+ # FITNESS FOR A PARTICULAR PURPOSE.
16
+
17
+ cmake_minimum_required(VERSION 3.15)
18
+ project(karabo-deamontools)
19
+ add_subdirectory(src/daemontools)
@@ -0,0 +1,69 @@
1
+ Metadata-Version: 2.4
2
+ Name: karabo.daemontools
3
+ Version: 2.21.4
4
+ Summary: Daemontools for Karabo
5
+ Keywords: Karabo,UNIX,services,control system
6
+ Author-Email: European XFEL GmbH <opensource@xfel.eu>
7
+ Maintainer-Email: "M. Teichmann" <martin.teichmann@xfel.eu>, "S. Hauf" <steffen.hauf@xfel.eu>, "D. Goeries" <dennis.goeries@xfel.eu>
8
+ License-Expression: MIT
9
+ Classifier: Development Status :: 5 - Production/Stable
10
+ Classifier: Intended Audience :: Developers
11
+ Classifier: Intended Audience :: Science/Research
12
+ Project-URL: Homepage, https://github.com/European-XFEL/Karabo
13
+ Project-URL: Bug Reports, https://github.com/European-XFEL/Karabo/issues
14
+ Project-URL: Source, https://github.com/European-XFEL/Karabo
15
+ Requires-Python: ==3.12.*
16
+ Description-Content-Type: text/markdown
17
+
18
+ # Karabo SCADA Framework - Daemontools
19
+ ![Karabo Badge](https://img.shields.io/badge/Karabo-Daemontools-blue?style=social&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAIRlWElmTU0AKgAAAAgABQESAAMAAAABAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAABAAAAWgAAAAAAAABIAAAAAQAAAEgAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAAABigAwAEAAAAAQAAABgAAAAAEQ8YrgAAAAlwSFlzAAALEwAACxMBAJqcGAAAAVlpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDYuMC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KGV7hBwAAB4lJREFUSA1tVQlwU9cVPX%2FXZmuxZcuSjWyMwQaDsUvLWmo7bEOHLSnETckQBgITWpO2CSmTlqnatEyazNCWpmEZYEpCS7DLpA3FbVPWTAIJ2GZfHNsgL1iWZGuz9S19Sf%2F1fWfSYdpeaeZ96f13l3PPuY%2FZsuWA0CfdZlFWhsDR22pb28EUHrOT2yt2jcrJpWlVcqWUaFEqMcDprTXQm10RNtF%2FNdfQ%2BeLiN0bvPXZk%2FLHW4%2BH1NhvH%2FPeG9vvNG4PGHXd99p3Xji%2FfZn3j93ZrHkZVFhkIAKMDUkGVVSJsJg00%2B585v73i%2BT0vS6PDCYur56mV1YE6hqE7X5gWwFD5zafdtvKaCpImlUl5pJIjqFCM5pLcRMi41%2FV6anIR9W0ATz8cVDDQjsehen1Qfte3WdfElaIkPqSOESZgMFt6ddlZDxgl0clmZXfwjUdOt930DRUakTFF%2FX6M%2BANIyTLUTAZ9LEfez%2FmRUC%2BnhVyavMAQEOpbSbHwj4H9LAHd5VA0Q4LtiFA4IEoOnSA4THbH10IZgqlmmlUKnFU0ZJv0AqvqbHZic5dkFDlOg4wwylic%2B2Uwxey8F4FFL8GpE5EhBB1yAoiNAkYd5hZO5MrLdCqnN6YFSa%2BC40k6EmIu3HnI1q36Bs%2FHlNSVzjPnViS7vCn3E3Ml5%2FQqTjLbkFGSFAuCRckxxKNhhINBDA08wmg4jEpnAXKnToTRagMr6UEYhiWEsDq9Af23buLRgSO00GIms2JhiOd5od9sz8GN0wcYX0cvlr5qRv6kMqR1OgR6e8BxPLLyXLC4iuGunAllNEobTVvHsEiMxDD84C6sBQWw5ORgqNeLwJV2JGFSMd%2FNyWk1wDM879VlmSiyZaS8qhj%2F3H0YmDwFVfWVkD%2B9gs7rXrjnTYO1uAiumhqIhixEB%2FrRc%2FlT9LV7oUS8KJhZDZ%2FMAZ8HqZ8RTDQaSFDgkQIJsYIk9PCShBxE2Ps3OvHK7k349Y4VCN%2FroM79KJnsQs%2Blh7j%2Bp99AHh4Gy%2FNIRKPoPncMlmwB2TnFiJuy8NOty%2FDR1bew81db8SB%2BFVUuO1SWC%2FOEZfoLCp34BEXc6k215OUXnmVyzCY8tWoZdh9sxv6feFA%2Bax7utxKKzBey4UQBkjQXVjaDjuEUDr2yGasXzKTEiOE7y79OHnhfRbfNDYHjo2yByA2yBkMK65exP%2FvBc0SJjyIwOIgiuwVb1i4FapYg2toPkRaf0ZSlGQ2UR1Lo8N7Fih%2BuQVWxAx237%2BDa9Tuwm41YvmgB00ZFIzGIsjkWw7BKyDCsFhj0OlWWxzAYGEZz8wcoddjw7i82w4cgyqAgnc6M%2B%2BdYFn3K55Qo89CweB7I2Ag4UURl1XRkOAnJRBIOWiUYEmW%2FXzszSsXhAysgGhtRbTkWHD58AuXlZcjONmHJnBn49s5G3EE7skQeVAYQqTPAhKcbFqK6rAjuCS44CvIRDkUotQE5HmcHKa15UYyyFFciZFKPcOEmzXxIpWFRUuwET1mgqiosJj1qZ5QCdd9DfukkpKk%2BDDYb8jZvhSNLD53AYcAXxIWLn%2BHGjbuIyQly9szHTFlkCGlWiLJazVQovRp13953nPTSl1etXIre3gGEwxGwHAdWGxB5FjACLZuWQHUFSa8fz1Y7393thd8fRGGhA5%2B03sTfmvaj1JkHJZ2JjQeQVaZ3%2BdxKtPzlIHP67CUUuSdgWsUkdHY%2BBE%2FxNpuzKb3HQOh80pyDqHSuEiRSaToZeOTbbVi5vA7Fk0px7OSHNKQFyaRCURAj4wF4ke%2BP0D%2FMFJ9dLx4ll9pvw1lUiK%2FOqkJfIIQP%2FnERViFDhaMpmLKJBnFLPPZ7jqG55TyKSidCpYrfd%2BQ9nP%2FzvrTZOBWixQomkx6j8qNMXLvJSjuyUVb0fNh7LX300DlIFpYR9Abm5789ivfe8qBQpmp35cFI8U%2FEIuj61zlEHj3Ah6daESWjePfURfX4xfuZKdVzhOr1a%2BDIsb6zcIp5v9Z0eDwetrt4weZ4PL4r1NNTqFHurC%2BQxuG%2FU%2FBjQulXytHddg3T161BWX09Yo96cea1A8iblAcmMAp%2FuVuZv2Sh6HS5wMgjQ26XY9ubDU80a7413jEehqHswUFP68CxLlPWS4qiND43o9ouz6rBpUPvJLrbung6rHmGNlzDX1utJXYEuryqmOVQVjQ8qTMaKaOSoyfqqmq%2Bu2FRxTCwliOkibC0azRLoLGlRfLMcsrHNtS%2FJqrxqnhgcA8RhPi0b63W2adP4JP4OJGKyxqF6JdB%2BGGnwjmd6vzGdTo9q%2FrsJPHMH7Y3NGjOG%2Fe2SPQy1VRJxiHSAmhW6znPw%2B3lL2zcSG8UYP3bf52SFsQdY7K8yd%2FZhajPl6mor1Pl4SDpuXVLnDJ7NnKzjX%2BcnZ%2F%2F0vOr5vixtonzTAPn8axTtPP0jqCp%2FB9b29QkBu%2Fa1QueuvHhs%2BXk5ZpYOPpjJZV%2BkvISybE4DKoSKMrN3bbn2cUnx13s3St5QqEU7acG97hpAb58%2Ft%2BVbm450EqV9R89YcOJj%2BY37DvV%2BsLB90%2B1tHfatUNNTU3cXgrvl8609bFn7t8fxThrSai%2FQAAAAABJRU5ErkJggg%3D%3D)
20
+ ![PyPI - Version](https://img.shields.io/pypi/v/karabo-daemontools)
21
+ ![PyPI - Python Version](https://img.shields.io/pypi/pyversions/karabo-daemontools)
22
+ ![PyPI - License](https://img.shields.io/pypi/l/karabo-daemontools)
23
+ ![PyPI - Wheel](https://img.shields.io/pypi/wheel/karabo-daemontools)
24
+ ![GitHub language count](https://img.shields.io/github/languages/count/tecki/daemontools-encore)
25
+ ![GitHub top language](https://img.shields.io/github/languages/top/tecki/daemontools-encore)
26
+ ![GitHub contributors](https://img.shields.io/github/contributors/tecki/daemontools-encore)
27
+
28
+ A collection of tools for managing UNIX services
29
+
30
+ This package is a wrapper around https://github.com/tecki/daemontools-encore/, itself
31
+ a fork of https://github.com/bruceg/daemontools-encore. The wrapper facilites distribution
32
+ of `daemontools` as a pip wheel, and installs the commands as Python console scripts.
33
+
34
+ In the Karabo-context, `daemontools` provide the foundation for `karabo.services`.
35
+
36
+ A source distribution is provided, but may lead to compilation failures on systems not
37
+ supported through the binary wheel packages as well. If compilation fails, please
38
+ install `daemontools` directly.
39
+
40
+ There is no need for this wrapper for `daemontools` to work with Karabo.
41
+
42
+ Please check https://pypi.org/project/Karabo/ for an overview of Karabo's components
43
+ and ways to install the full system.
44
+
45
+ # Supported Operating Systems
46
+
47
+ The OS are tested are:
48
+
49
+ > Almalinux 8/9
50
+ > Ubuntu 20.04/22.04 LTS
51
+ > RedHat 9
52
+
53
+ # Installation
54
+
55
+ To install run
56
+
57
+ ```bash
58
+ pip install karabo.daemontools
59
+ ```
60
+
61
+ or use the `full` or `daemontools` options when installing the `karabo` package:
62
+
63
+ ```bash
64
+ pip install karabo[full]
65
+ pip install karabo[daemontools]
66
+ ```
67
+
68
+ For direct usage of `daemontools`, please refer to the `daemontools`
69
+ documentation at http://untroubled.org/daemontools-encore/.
@@ -0,0 +1,52 @@
1
+ # Karabo SCADA Framework - Daemontools
2
+ ![Karabo Badge](https://img.shields.io/badge/Karabo-Daemontools-blue?style=social&logo=data%3Aimage%2Fpng%3Bbase64%2CiVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAIRlWElmTU0AKgAAAAgABQESAAMAAAABAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAABAAAAWgAAAAAAAABIAAAAAQAAAEgAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAAABigAwAEAAAAAQAAABgAAAAAEQ8YrgAAAAlwSFlzAAALEwAACxMBAJqcGAAAAVlpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDYuMC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KGV7hBwAAB4lJREFUSA1tVQlwU9cVPX%2FXZmuxZcuSjWyMwQaDsUvLWmo7bEOHLSnETckQBgITWpO2CSmTlqnatEyazNCWpmEZYEpCS7DLpA3FbVPWTAIJ2GZfHNsgL1iWZGuz9S19Sf%2F1fWfSYdpeaeZ96f13l3PPuY%2FZsuWA0CfdZlFWhsDR22pb28EUHrOT2yt2jcrJpWlVcqWUaFEqMcDprTXQm10RNtF%2FNdfQ%2BeLiN0bvPXZk%2FLHW4%2BH1NhvH%2FPeG9vvNG4PGHXd99p3Xji%2FfZn3j93ZrHkZVFhkIAKMDUkGVVSJsJg00%2B585v73i%2BT0vS6PDCYur56mV1YE6hqE7X5gWwFD5zafdtvKaCpImlUl5pJIjqFCM5pLcRMi41%2FV6anIR9W0ATz8cVDDQjsehen1Qfte3WdfElaIkPqSOESZgMFt6ddlZDxgl0clmZXfwjUdOt930DRUakTFF%2FX6M%2BANIyTLUTAZ9LEfez%2FmRUC%2BnhVyavMAQEOpbSbHwj4H9LAHd5VA0Q4LtiFA4IEoOnSA4THbH10IZgqlmmlUKnFU0ZJv0AqvqbHZic5dkFDlOg4wwylic%2B2Uwxey8F4FFL8GpE5EhBB1yAoiNAkYd5hZO5MrLdCqnN6YFSa%2BC40k6EmIu3HnI1q36Bs%2FHlNSVzjPnViS7vCn3E3Ml5%2FQqTjLbkFGSFAuCRckxxKNhhINBDA08wmg4jEpnAXKnToTRagMr6UEYhiWEsDq9Af23buLRgSO00GIms2JhiOd5od9sz8GN0wcYX0cvlr5qRv6kMqR1OgR6e8BxPLLyXLC4iuGunAllNEobTVvHsEiMxDD84C6sBQWw5ORgqNeLwJV2JGFSMd%2FNyWk1wDM879VlmSiyZaS8qhj%2F3H0YmDwFVfWVkD%2B9gs7rXrjnTYO1uAiumhqIhixEB%2FrRc%2FlT9LV7oUS8KJhZDZ%2FMAZ8HqZ8RTDQaSFDgkQIJsYIk9PCShBxE2Ps3OvHK7k349Y4VCN%2FroM79KJnsQs%2Blh7j%2Bp99AHh4Gy%2FNIRKPoPncMlmwB2TnFiJuy8NOty%2FDR1bew81db8SB%2BFVUuO1SWC%2FOEZfoLCp34BEXc6k215OUXnmVyzCY8tWoZdh9sxv6feFA%2Bax7utxKKzBey4UQBkjQXVjaDjuEUDr2yGasXzKTEiOE7y79OHnhfRbfNDYHjo2yByA2yBkMK65exP%2FvBc0SJjyIwOIgiuwVb1i4FapYg2toPkRaf0ZSlGQ2UR1Lo8N7Fih%2BuQVWxAx237%2BDa9Tuwm41YvmgB00ZFIzGIsjkWw7BKyDCsFhj0OlWWxzAYGEZz8wcoddjw7i82w4cgyqAgnc6M%2B%2BdYFn3K55Qo89CweB7I2Ag4UURl1XRkOAnJRBIOWiUYEmW%2FXzszSsXhAysgGhtRbTkWHD58AuXlZcjONmHJnBn49s5G3EE7skQeVAYQqTPAhKcbFqK6rAjuCS44CvIRDkUotQE5HmcHKa15UYyyFFciZFKPcOEmzXxIpWFRUuwET1mgqiosJj1qZ5QCdd9DfukkpKk%2BDDYb8jZvhSNLD53AYcAXxIWLn%2BHGjbuIyQly9szHTFlkCGlWiLJazVQovRp13953nPTSl1etXIre3gGEwxGwHAdWGxB5FjACLZuWQHUFSa8fz1Y7393thd8fRGGhA5%2B03sTfmvaj1JkHJZ2JjQeQVaZ3%2BdxKtPzlIHP67CUUuSdgWsUkdHY%2BBE%2FxNpuzKb3HQOh80pyDqHSuEiRSaToZeOTbbVi5vA7Fk0px7OSHNKQFyaRCURAj4wF4ke%2BP0D%2FMFJ9dLx4ll9pvw1lUiK%2FOqkJfIIQP%2FnERViFDhaMpmLKJBnFLPPZ7jqG55TyKSidCpYrfd%2BQ9nP%2FzvrTZOBWixQomkx6j8qNMXLvJSjuyUVb0fNh7LX300DlIFpYR9Abm5789ivfe8qBQpmp35cFI8U%2FEIuj61zlEHj3Ah6daESWjePfURfX4xfuZKdVzhOr1a%2BDIsb6zcIp5v9Z0eDwetrt4weZ4PL4r1NNTqFHurC%2BQxuG%2FU%2FBjQulXytHddg3T161BWX09Yo96cea1A8iblAcmMAp%2FuVuZv2Sh6HS5wMgjQ26XY9ubDU80a7413jEehqHswUFP68CxLlPWS4qiND43o9ouz6rBpUPvJLrbung6rHmGNlzDX1utJXYEuryqmOVQVjQ8qTMaKaOSoyfqqmq%2Bu2FRxTCwliOkibC0azRLoLGlRfLMcsrHNtS%2FJqrxqnhgcA8RhPi0b63W2adP4JP4OJGKyxqF6JdB%2BGGnwjmd6vzGdTo9q%2FrsJPHMH7Y3NGjOG%2Fe2SPQy1VRJxiHSAmhW6znPw%2B3lL2zcSG8UYP3bf52SFsQdY7K8yd%2FZhajPl6mor1Pl4SDpuXVLnDJ7NnKzjX%2BcnZ%2F%2F0vOr5vixtonzTAPn8axTtPP0jqCp%2FB9b29QkBu%2Fa1QueuvHhs%2BXk5ZpYOPpjJZV%2BkvISybE4DKoSKMrN3bbn2cUnx13s3St5QqEU7acG97hpAb58%2Ft%2BVbm450EqV9R89YcOJj%2BY37DvV%2BsLB90%2B1tHfatUNNTU3cXgrvl8609bFn7t8fxThrSai%2FQAAAAABJRU5ErkJggg%3D%3D)
3
+ ![PyPI - Version](https://img.shields.io/pypi/v/karabo-daemontools)
4
+ ![PyPI - Python Version](https://img.shields.io/pypi/pyversions/karabo-daemontools)
5
+ ![PyPI - License](https://img.shields.io/pypi/l/karabo-daemontools)
6
+ ![PyPI - Wheel](https://img.shields.io/pypi/wheel/karabo-daemontools)
7
+ ![GitHub language count](https://img.shields.io/github/languages/count/tecki/daemontools-encore)
8
+ ![GitHub top language](https://img.shields.io/github/languages/top/tecki/daemontools-encore)
9
+ ![GitHub contributors](https://img.shields.io/github/contributors/tecki/daemontools-encore)
10
+
11
+ A collection of tools for managing UNIX services
12
+
13
+ This package is a wrapper around https://github.com/tecki/daemontools-encore/, itself
14
+ a fork of https://github.com/bruceg/daemontools-encore. The wrapper facilites distribution
15
+ of `daemontools` as a pip wheel, and installs the commands as Python console scripts.
16
+
17
+ In the Karabo-context, `daemontools` provide the foundation for `karabo.services`.
18
+
19
+ A source distribution is provided, but may lead to compilation failures on systems not
20
+ supported through the binary wheel packages as well. If compilation fails, please
21
+ install `daemontools` directly.
22
+
23
+ There is no need for this wrapper for `daemontools` to work with Karabo.
24
+
25
+ Please check https://pypi.org/project/Karabo/ for an overview of Karabo's components
26
+ and ways to install the full system.
27
+
28
+ # Supported Operating Systems
29
+
30
+ The OS are tested are:
31
+
32
+ > Almalinux 8/9
33
+ > Ubuntu 20.04/22.04 LTS
34
+ > RedHat 9
35
+
36
+ # Installation
37
+
38
+ To install run
39
+
40
+ ```bash
41
+ pip install karabo.daemontools
42
+ ```
43
+
44
+ or use the `full` or `daemontools` options when installing the `karabo` package:
45
+
46
+ ```bash
47
+ pip install karabo[full]
48
+ pip install karabo[daemontools]
49
+ ```
50
+
51
+ For direct usage of `daemontools`, please refer to the `daemontools`
52
+ documentation at http://untroubled.org/daemontools-encore/.
@@ -0,0 +1,99 @@
1
+ [build-system]
2
+ requires = ["scikit-build-core"]
3
+ build-backend = "scikit_build_core.build"
4
+
5
+ [project]
6
+ version = "2.21.4"
7
+ name = "karabo.daemontools"
8
+ description = "Daemontools for Karabo"
9
+ readme = "README.md"
10
+ requires-python = "==3.12.*"
11
+ license = "MIT"
12
+ keywords = ["Karabo", "UNIX", "services", "control system"]
13
+ authors = [{ name = "European XFEL GmbH", email = "opensource@xfel.eu" }]
14
+ maintainers = [
15
+ { name = "M. Teichmann", email = "martin.teichmann@xfel.eu" },
16
+ { name = "S. Hauf", email = "steffen.hauf@xfel.eu" },
17
+ { name = "D. Goeries", email = "dennis.goeries@xfel.eu" },
18
+ ]
19
+
20
+ # Classifiers help users find your project by categorizing it.
21
+ #
22
+ # For a list of valid classifiers, see https://pypi.org/classifiers/
23
+ classifiers = [
24
+ # How mature is this project? Common values are
25
+ # 3 - Alpha
26
+ # 4 - Beta
27
+ # 5 - Production/Stable
28
+ "Development Status :: 5 - Production/Stable",
29
+
30
+ # Indicate who your project is intended for
31
+ "Intended Audience :: Developers",
32
+ "Intended Audience :: Science/Research",
33
+ ]
34
+
35
+
36
+ # List URLs that are relevant to your project
37
+ #
38
+ # This field corresponds to the "Project-URL" and "Home-Page" metadata fields:
39
+ # https://packaging.python.org/specifications/core-metadata/#project-url-multiple-use
40
+ # https://packaging.python.org/specifications/core-metadata/#home-page-optional
41
+ #
42
+ # Examples listed include a pattern for specifying where the package tracks
43
+ # issues, where the source is hosted, where to say thanks to the package
44
+ # maintainers, and where to support the project financially. The key is
45
+ # what's used to render the link text on PyPI.
46
+ [project.urls]
47
+ "Homepage" = "https://github.com/European-XFEL/Karabo"
48
+ "Bug Reports" = "https://github.com/European-XFEL/Karabo/issues"
49
+ #"Funding" = "https://donate.pypi.org"
50
+ # "Say Thanks!" = "mailto://opensource@xfel.eu"
51
+ "Source" = "https://github.com/European-XFEL/Karabo"
52
+
53
+ # The following would provide a command line executable called `sample`
54
+ # which executes the function `main` from this package when invoked.
55
+ # [project.scripts]
56
+
57
+ [tool.scikit-build]
58
+ cmake.build-type = "Release"
59
+ build.verbose = true
60
+ logging.level = "INFO"
61
+
62
+ # avoid default
63
+ search.site-packages = false
64
+ wheel.install-dir = "karabo_daemontools"
65
+
66
+ [tool.scikit-build.wheel.packages]
67
+ "karabo_daemontools/shims" = "python/src/shims"
68
+
69
+ [project.scripts]
70
+ envdir = 'karabo_daemontools.shims.entrypoints:envdir'
71
+ envini = 'karabo_daemontools.shims.entrypoints:envini'
72
+ envuidgid = 'karabo_daemontools.shims.entrypoints:envuidgid'
73
+ fghack = 'karabo_daemontools.shims.entrypoints:fghack'
74
+ multilog = 'karabo_daemontools.shims.entrypoints:multilog'
75
+ pgrphack = 'karabo_daemontools.shims.entrypoints:pgrphack'
76
+ readproctitle = 'karabo_daemontools.shims.entrypoints:readproctitle'
77
+ setlock = 'karabo_daemontools.shims.entrypoints:setlock'
78
+ setuidgid = 'karabo_daemontools.shims.entrypoints:setuidgid'
79
+ setuser = 'karabo_daemontools.shims.entrypoints:setuser'
80
+ softlimit = 'karabo_daemontools.shims.entrypoints:softlimit'
81
+ supervise = 'karabo_daemontools.shims.entrypoints:supervise'
82
+ svc = 'karabo_daemontools.shims.entrypoints:svc'
83
+ svok = 'karabo_daemontools.shims.entrypoints:svok'
84
+ svscan = 'karabo_daemontools.shims.entrypoints:svscan'
85
+ svstat = 'karabo_daemontools.shims.entrypoints:svstat'
86
+ svup = 'karabo_daemontools.shims.entrypoints:svup'
87
+ tai64n = 'karabo_daemontools.shims.entrypoints:tai64n'
88
+ tai64nlocal = 'karabo_daemontools.shims.entrypoints:tai64nlocal'
89
+
90
+
91
+ [tool.cibuildwheel]
92
+ # change this if docker is available (and podman not)
93
+ container-engine = "podman"
94
+ archs = ["x86_64"]
95
+ # use this for rpi's when KVM is available
96
+ # archs = ["x86_64", "aarch64", "armv7l"]
97
+ skip = "*-musllinux*" # won't compile
98
+ test-requires = ["pytest"]
99
+ test-command = "pytest {project}/wheel_tests"
@@ -0,0 +1,99 @@
1
+ [build-system]
2
+ requires = ["scikit-build-core"]
3
+ build-backend = "scikit_build_core.build"
4
+
5
+ [project]
6
+ version = "{{ version }}"
7
+ name = "karabo.daemontools"
8
+ description = "Daemontools for Karabo"
9
+ readme = "README.md"
10
+ requires-python = "==3.12.*"
11
+ license = "MIT"
12
+ keywords = ["Karabo", "UNIX", "services", "control system"]
13
+ authors = [{ name = "European XFEL GmbH", email = "opensource@xfel.eu" }]
14
+ maintainers = [
15
+ { name = "M. Teichmann", email = "martin.teichmann@xfel.eu" },
16
+ { name = "S. Hauf", email = "steffen.hauf@xfel.eu" },
17
+ { name = "D. Goeries", email = "dennis.goeries@xfel.eu" },
18
+ ]
19
+
20
+ # Classifiers help users find your project by categorizing it.
21
+ #
22
+ # For a list of valid classifiers, see https://pypi.org/classifiers/
23
+ classifiers = [
24
+ # How mature is this project? Common values are
25
+ # 3 - Alpha
26
+ # 4 - Beta
27
+ # 5 - Production/Stable
28
+ "Development Status :: 5 - Production/Stable",
29
+
30
+ # Indicate who your project is intended for
31
+ "Intended Audience :: Developers",
32
+ "Intended Audience :: Science/Research",
33
+ ]
34
+
35
+
36
+ # List URLs that are relevant to your project
37
+ #
38
+ # This field corresponds to the "Project-URL" and "Home-Page" metadata fields:
39
+ # https://packaging.python.org/specifications/core-metadata/#project-url-multiple-use
40
+ # https://packaging.python.org/specifications/core-metadata/#home-page-optional
41
+ #
42
+ # Examples listed include a pattern for specifying where the package tracks
43
+ # issues, where the source is hosted, where to say thanks to the package
44
+ # maintainers, and where to support the project financially. The key is
45
+ # what's used to render the link text on PyPI.
46
+ [project.urls]
47
+ "Homepage" = "https://github.com/European-XFEL/Karabo"
48
+ "Bug Reports" = "https://github.com/European-XFEL/Karabo/issues"
49
+ #"Funding" = "https://donate.pypi.org"
50
+ # "Say Thanks!" = "mailto://opensource@xfel.eu"
51
+ "Source" = "https://github.com/European-XFEL/Karabo"
52
+
53
+ # The following would provide a command line executable called `sample`
54
+ # which executes the function `main` from this package when invoked.
55
+ # [project.scripts]
56
+
57
+ [tool.scikit-build]
58
+ cmake.build-type = "Release"
59
+ build.verbose = true
60
+ logging.level = "INFO"
61
+
62
+ # avoid default
63
+ search.site-packages = false
64
+ wheel.install-dir = "karabo_daemontools"
65
+
66
+ [tool.scikit-build.wheel.packages]
67
+ "karabo_daemontools/shims" = "python/src/shims"
68
+
69
+ [project.scripts]
70
+ envdir = 'karabo_daemontools.shims.entrypoints:envdir'
71
+ envini = 'karabo_daemontools.shims.entrypoints:envini'
72
+ envuidgid = 'karabo_daemontools.shims.entrypoints:envuidgid'
73
+ fghack = 'karabo_daemontools.shims.entrypoints:fghack'
74
+ multilog = 'karabo_daemontools.shims.entrypoints:multilog'
75
+ pgrphack = 'karabo_daemontools.shims.entrypoints:pgrphack'
76
+ readproctitle = 'karabo_daemontools.shims.entrypoints:readproctitle'
77
+ setlock = 'karabo_daemontools.shims.entrypoints:setlock'
78
+ setuidgid = 'karabo_daemontools.shims.entrypoints:setuidgid'
79
+ setuser = 'karabo_daemontools.shims.entrypoints:setuser'
80
+ softlimit = 'karabo_daemontools.shims.entrypoints:softlimit'
81
+ supervise = 'karabo_daemontools.shims.entrypoints:supervise'
82
+ svc = 'karabo_daemontools.shims.entrypoints:svc'
83
+ svok = 'karabo_daemontools.shims.entrypoints:svok'
84
+ svscan = 'karabo_daemontools.shims.entrypoints:svscan'
85
+ svstat = 'karabo_daemontools.shims.entrypoints:svstat'
86
+ svup = 'karabo_daemontools.shims.entrypoints:svup'
87
+ tai64n = 'karabo_daemontools.shims.entrypoints:tai64n'
88
+ tai64nlocal = 'karabo_daemontools.shims.entrypoints:tai64nlocal'
89
+
90
+
91
+ [tool.cibuildwheel]
92
+ # change this if docker is available (and podman not)
93
+ container-engine = "podman"
94
+ archs = ["x86_64"]
95
+ # use this for rpi's when KVM is available
96
+ # archs = ["x86_64", "aarch64", "armv7l"]
97
+ skip = "*-musllinux*" # won't compile
98
+ test-requires = ["pytest"]
99
+ test-command = "pytest {project}/wheel_tests"
File without changes
@@ -0,0 +1,44 @@
1
+ import os
2
+ import subprocess
3
+ import sys
4
+
5
+ import karabo_daemontools
6
+
7
+ PACKAGE_PATH = os.path.abspath(karabo_daemontools.__path__[0])
8
+
9
+
10
+ def get_path(cmd : str) -> str:
11
+ return f"{PACKAGE_PATH}/bin/{cmd}"
12
+
13
+
14
+ TO_SHIM = [
15
+ "envdir",
16
+ "envini",
17
+ "envuidgid",
18
+ "fghack",
19
+ "multilog",
20
+ "pgrphack",
21
+ "readproctitle",
22
+ "setlock",
23
+ "setuidgid",
24
+ "setuser",
25
+ "softlimit",
26
+ "supervise",
27
+ "svc",
28
+ "svok",
29
+ "svscan",
30
+ "svstat",
31
+ "svup",
32
+ "tai64n",
33
+ "tai64nlocal",
34
+ ]
35
+
36
+ def create_runner(cmd : str):
37
+ def runner():
38
+ # we cannot use subprocess.xyz here. We need to replace the python process with
39
+ # the underlying daemontools command for it to run correctly!
40
+ os.execvp(get_path(cmd), sys.argv)
41
+ return runner
42
+
43
+ for cmd in TO_SHIM:
44
+ globals()[cmd] = create_runner(cmd)
@@ -0,0 +1,59 @@
1
+ *.a
2
+ *.o
3
+ SOURCES
4
+ TARGETS
5
+ Makefile
6
+ chkshsgr
7
+ choose
8
+ compile
9
+ conf_supervise.c
10
+ direntry.h
11
+ dosubst
12
+ envdir
13
+ envini
14
+ envuidgid
15
+ fghack
16
+ hasattribute.h
17
+ hasflock.h
18
+ hasmemrchr.h
19
+ hasmkffo.h
20
+ hassgact.h
21
+ hassgprm.h
22
+ hasshsgr.h
23
+ haswaitp.h
24
+ installer
25
+ iopause.h
26
+ load
27
+ makelib
28
+ matchtest
29
+ multilog
30
+ pgrphack
31
+ readproctitle
32
+ rts
33
+ rts.exp
34
+ rts.sh
35
+ rts-tmp
36
+ select.h
37
+ setlock
38
+ setuidgid
39
+ setuser
40
+ sleeper
41
+ softlimit
42
+ supervise
43
+ supervise.8
44
+ svc
45
+ svc.8
46
+ svok
47
+ svok.8
48
+ svscan
49
+ svscanboot
50
+ svstat
51
+ svstat.8
52
+ svup
53
+ svup.8
54
+ sysdeps
55
+ systype
56
+ tags
57
+ tai64n
58
+ tai64nlocal
59
+ uint64.h
@@ -0,0 +1,20 @@
1
+ c:::755:/:envdir:
2
+ c:::755:/:envini:
3
+ c:::755:/:envuidgid:
4
+ c:::755:/:fghack:
5
+ c:::755:/:multilog:
6
+ c:::755:/:pgrphack:
7
+ c:::755:/:readproctitle:
8
+ c:::755:/:setlock:
9
+ c:::755:/:setuidgid:
10
+ c:::755:/:setuser:
11
+ c:::755:/:softlimit:
12
+ c:::755:/:supervise:
13
+ c:::755:/:svc:
14
+ c:::755:/:svok:
15
+ c:::755:/:svscan:
16
+ c:::755:/:svscanboot:
17
+ c:::755:/:svstat:
18
+ c:::755:/:svup:
19
+ c:::755:/:tai64n:
20
+ c:::755:/:tai64nlocal:
@@ -0,0 +1,129 @@
1
+ Changes in daemontools-encore-1.11
2
+ ==================================
3
+
4
+ Enhanced svscan to stop its services when it is stopped.
5
+ (Thanks to Rick Myers)
6
+
7
+ Added new program setuser to setuid, setenv, plus chdir before exec.
8
+
9
+ Added new program envini to read environment variables from an INI file.
10
+
11
+ Added support for adding a prefix in envdir.
12
+
13
+ Added "once" flag output to svstat.
14
+
15
+ Fixed supervise to run "start" on down services and "svc -o".
16
+
17
+ Fixed sleeper to do a single atomic write.
18
+
19
+ Added support for resetting limits in softlimit.
20
+
21
+ Fixed initial supervise "down" status.
22
+
23
+ Fix supervise removing "status" before locking the service.
24
+
25
+ Fix initialization of uptime on down service with log.
26
+
27
+ Changes in daemontools-encore-1.10
28
+ ==================================
29
+
30
+ Added support for fnmatch patterns in multilog.
31
+
32
+ Increased the multilog file size limit to 2GB.
33
+ (Thanks to SATOH Fumiyasu)
34
+
35
+ Fixed missing separator between system error texts.
36
+
37
+ Major speed ups in multilog, tai64n, and tai64nlocal.
38
+
39
+ Added support for signal propagation and disabling setsid behavior in
40
+ supervise. (Thanks to Alan Grow)
41
+
42
+ Changes in daemontools-encore-1.06
43
+ ==================================
44
+
45
+ Added options to svstat to control checking the log script service.
46
+
47
+ Added -l option to svc to explicitly control the main service.
48
+
49
+ Fixed race issuing svc commands to log and then main service.
50
+
51
+ Changed the "safely written" option for multilog to "w".
52
+
53
+ Fixed daemontools leaking the status file descriptor to its children.
54
+
55
+ Fixed svc sending commands to both the log and main service.
56
+
57
+ Changes in daemontools-encore-1.05
58
+ ==================================
59
+
60
+ Added options to svup to control checking the log script service.
61
+
62
+ Eliminated some compiler warnings.
63
+
64
+ Changes in daemontools-encore-1.04
65
+ ==================================
66
+
67
+ Fixed bug in svscan preventing it from starting services with a "log"
68
+ script instead of directory.
69
+
70
+ Changes in daemontools-encore-1.03
71
+ ==================================
72
+
73
+ Added -s option to setuidgid to set the supplemental GIDs.
74
+ (Thanks to SATOH Fumiyasu)
75
+
76
+ Changes in daemontools-encore-1.02
77
+ ==================================
78
+
79
+ If a supervise is managing both a main and log service, issuing
80
+ "svc -dx" on the service will cause the log to stop after the main
81
+ service exits.
82
+
83
+ Changes between daemontools-0.76 and daemontools-encore
84
+ =======================================================
85
+
86
+ Added support to supervise/svc for sending SIGQUIT/USR1/USR2/WINCH.
87
+ (original patch by Wayne Marshall, based on patch by Scott Gifford)
88
+
89
+ Modified supervise to automatically put the forked service into its own
90
+ process group to facilitate sending signals to the group.
91
+
92
+ Added support to supervise/svc for sending signals to the group.
93
+
94
+ Added support to softlimit for reading limits from environment variables.
95
+
96
+ Modified supervise to run "start" once before executing "run" to allow
97
+ for single-shot initialization, and to run "stop" after "run" exits for
98
+ the last time. The presence of "run" is also optional.
99
+
100
+ Modified supervise to stop trying to restart the service if it exits 100.
101
+ (semantics borrowed from qmail control files)
102
+
103
+ Added support to multilog for "accustamp" time stamps.
104
+ (derived from patch by Matthias Andree)
105
+
106
+ Added support to supervise for storing the status files in an alternate
107
+ directory specified by $SUPERVISEDIR.
108
+
109
+ Modified multilog to support specifying an alternate "safely written"
110
+ filename extension (useful for compressed logs).
111
+
112
+ Added extended state information to the supervise/status file and svstat.
113
+
114
+ Added support to supervise for a "notify" script, executed whenever a
115
+ subprocess is started or exits. If present, it is passed the script
116
+ name, "start" or "exit", the PID, and the exit code.
117
+
118
+ Added support for piping to "log" within supervise. This requires "log"
119
+ to be an executable file (instead of a directory as for svscan).
120
+
121
+ Modified supervise to overwrite status instead of creating a new file.
122
+ This allows the "supervise" subdirectory to be non-writeable.
123
+
124
+ Added a "svup" tool to determine if a service is running.
125
+
126
+ Modified svscan to optionally redirect all output through a service.
127
+ (adapted from http://www.gluelogic.com/code/daemontools/daemontools-0.76-gps-logging-0.01.patch)
128
+ Note that this feature works differently from the GlueLogic
129
+ modification. See the svscan(8) man page for details.