InPanel 1.2.1__py3-none-any.whl

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 (198) hide show
  1. inpanel/__init__.py +29 -0
  2. inpanel/acme.py +289 -0
  3. inpanel/aliyuncs.py +269 -0
  4. inpanel/app.py +514 -0
  5. inpanel/apt.py +223 -0
  6. inpanel/base.py +200 -0
  7. inpanel/config.py +139 -0
  8. inpanel/data/config.ini +29 -0
  9. inpanel/data/history +5 -0
  10. inpanel/data/runlogs.ini +12 -0
  11. inpanel/data/update_info.ini +4 -0
  12. inpanel/dnf.py +225 -0
  13. inpanel/lib/__init__.py +9 -0
  14. inpanel/lib/async_process.py +98 -0
  15. inpanel/lib/filelock.py +82 -0
  16. inpanel/lib/magic.py +233 -0
  17. inpanel/lib/pxssh.py +310 -0
  18. inpanel/lib/pyDes.py +867 -0
  19. inpanel/mod/__init__.py +0 -0
  20. inpanel/mod/apt.py +316 -0
  21. inpanel/mod/certificate.py +268 -0
  22. inpanel/mod/config.py +372 -0
  23. inpanel/mod/cron.py +315 -0
  24. inpanel/mod/disk.py +322 -0
  25. inpanel/mod/dnf.py +239 -0
  26. inpanel/mod/file.py +722 -0
  27. inpanel/mod/firewall.py +199 -0
  28. inpanel/mod/firewall_base.py +137 -0
  29. inpanel/mod/firewall_firewalld.py +170 -0
  30. inpanel/mod/firewall_iptables.py +176 -0
  31. inpanel/mod/firewall_macos.py +213 -0
  32. inpanel/mod/firewall_ufw.py +128 -0
  33. inpanel/mod/ftp.py +231 -0
  34. inpanel/mod/httpd.py +1205 -0
  35. inpanel/mod/lighttpd.py +26 -0
  36. inpanel/mod/login.py +98 -0
  37. inpanel/mod/mysql.py +577 -0
  38. inpanel/mod/named.py +26 -0
  39. inpanel/mod/nginx.py +2327 -0
  40. inpanel/mod/package.py +33 -0
  41. inpanel/mod/package_apt.py +62 -0
  42. inpanel/mod/package_base.py +77 -0
  43. inpanel/mod/package_dnf.py +62 -0
  44. inpanel/mod/package_map.py +366 -0
  45. inpanel/mod/package_yum.py +64 -0
  46. inpanel/mod/php.py +289 -0
  47. inpanel/mod/process.py +291 -0
  48. inpanel/mod/proftpd.py +26 -0
  49. inpanel/mod/pureftpd.py +26 -0
  50. inpanel/mod/query.py +108 -0
  51. inpanel/mod/server.py +1319 -0
  52. inpanel/mod/service.py +262 -0
  53. inpanel/mod/setting.py +228 -0
  54. inpanel/mod/shell.py +78 -0
  55. inpanel/mod/ssh.py +280 -0
  56. inpanel/mod/system.py +220 -0
  57. inpanel/mod/task.py +1337 -0
  58. inpanel/mod/ufw.py +14 -0
  59. inpanel/mod/user.py +306 -0
  60. inpanel/mod/vsftpd.py +67 -0
  61. inpanel/mod/yum.py +243 -0
  62. inpanel/plugins/__init__.py +10 -0
  63. inpanel/plugins/__pycache__/__init__.cpython-313.pyc +0 -0
  64. inpanel/plugins/acme/static/index.html +10 -0
  65. inpanel/plugins/acme/static/index.js +13 -0
  66. inpanel/plugins/shadowsocks-libev/__pycache__/info.cpython-313.pyc +0 -0
  67. inpanel/plugins/shadowsocks-libev/info.py +73 -0
  68. inpanel/plugins/shadowsocks-libev/static/index.html +70 -0
  69. inpanel/plugins/shadowsocks-libev/static/index.js +18 -0
  70. inpanel/public/css/global.css +138 -0
  71. inpanel/public/favicon.ico +0 -0
  72. inpanel/public/images/alipay.jpg +0 -0
  73. inpanel/public/images/loading.gif +0 -0
  74. inpanel/public/images/weixin.jpg +0 -0
  75. inpanel/public/index.html +94 -0
  76. inpanel/public/js/controllers/controllers.js +566 -0
  77. inpanel/public/js/controllers/database.js +590 -0
  78. inpanel/public/js/controllers/ecs.js +624 -0
  79. inpanel/public/js/controllers/file.js +940 -0
  80. inpanel/public/js/controllers/plugins.js +105 -0
  81. inpanel/public/js/controllers/service.js +1460 -0
  82. inpanel/public/js/controllers/site.js +1241 -0
  83. inpanel/public/js/controllers/utils.js +2319 -0
  84. inpanel/public/js/core.js +221 -0
  85. inpanel/public/js/directives.js +784 -0
  86. inpanel/public/js/filters.js +395 -0
  87. inpanel/public/js/services.js +257 -0
  88. inpanel/public/lib/angular/1.0.2/angular-resource.min.js +10 -0
  89. inpanel/public/lib/angular/1.0.2/angular.min.js +158 -0
  90. inpanel/public/lib/bootstrap/css/bootstrap-theme.css +587 -0
  91. inpanel/public/lib/bootstrap/css/bootstrap-theme.css.map +1 -0
  92. inpanel/public/lib/bootstrap/css/bootstrap-theme.min.css +6 -0
  93. inpanel/public/lib/bootstrap/css/bootstrap-theme.min.css.map +1 -0
  94. inpanel/public/lib/bootstrap/css/bootstrap.css +6757 -0
  95. inpanel/public/lib/bootstrap/css/bootstrap.css.map +1 -0
  96. inpanel/public/lib/bootstrap/css/bootstrap.min.css +6 -0
  97. inpanel/public/lib/bootstrap/css/bootstrap.min.css.map +1 -0
  98. inpanel/public/lib/bootstrap/fonts/glyphicons-halflings-regular.eot +0 -0
  99. inpanel/public/lib/bootstrap/fonts/glyphicons-halflings-regular.svg +288 -0
  100. inpanel/public/lib/bootstrap/fonts/glyphicons-halflings-regular.ttf +0 -0
  101. inpanel/public/lib/bootstrap/fonts/glyphicons-halflings-regular.woff +0 -0
  102. inpanel/public/lib/bootstrap/fonts/glyphicons-halflings-regular.woff2 +0 -0
  103. inpanel/public/lib/bootstrap/img/glyphicons-halflings-white.png +0 -0
  104. inpanel/public/lib/bootstrap/img/glyphicons-halflings.png +0 -0
  105. inpanel/public/lib/bootstrap/js/bootstrap.js +2377 -0
  106. inpanel/public/lib/bootstrap/js/bootstrap.min.js +7 -0
  107. inpanel/public/lib/bootstrap/js/npm.js +13 -0
  108. inpanel/public/lib/codemirror/codemirror-compressed.js +1 -0
  109. inpanel/public/lib/codemirror/codemirror.css +173 -0
  110. inpanel/public/lib/jquery/jquery-1.12.4.min.js +5 -0
  111. inpanel/public/lib/md5/md5.js +379 -0
  112. inpanel/public/lib/md5/md5.min.js +1 -0
  113. inpanel/public/partials/database/index.html +172 -0
  114. inpanel/public/partials/database/mysql/dbedit.html +462 -0
  115. inpanel/public/partials/database/mysql/dbnew.html +348 -0
  116. inpanel/public/partials/database/mysql/useredit.html +310 -0
  117. inpanel/public/partials/database/mysql/usernew.html +97 -0
  118. inpanel/public/partials/directives/message.html +20 -0
  119. inpanel/public/partials/directives/navbar.html +25 -0
  120. inpanel/public/partials/directives/selector.html +57 -0
  121. inpanel/public/partials/directives/srvbase.html +72 -0
  122. inpanel/public/partials/directives/srvext.html +34 -0
  123. inpanel/public/partials/directives/srvfile.html +23 -0
  124. inpanel/public/partials/directives/srvinstall.html +34 -0
  125. inpanel/public/partials/directives/srvlog.html +23 -0
  126. inpanel/public/partials/directives/srvminiop.html +28 -0
  127. inpanel/public/partials/directives/srvuninstall.html +38 -0
  128. inpanel/public/partials/directives/srvupdate.html +30 -0
  129. inpanel/public/partials/ecs/account.html +156 -0
  130. inpanel/public/partials/ecs/ecs.html +198 -0
  131. inpanel/public/partials/ecs/index.html +40 -0
  132. inpanel/public/partials/ecs/setings.html +459 -0
  133. inpanel/public/partials/file/file.html +501 -0
  134. inpanel/public/partials/file/trash.html +95 -0
  135. inpanel/public/partials/ftp.html +36 -0
  136. inpanel/public/partials/log.html +83 -0
  137. inpanel/public/partials/login.html +79 -0
  138. inpanel/public/partials/logout.html +22 -0
  139. inpanel/public/partials/main.html +534 -0
  140. inpanel/public/partials/plugins/index.html +55 -0
  141. inpanel/public/partials/plugins/plugins.html +13 -0
  142. inpanel/public/partials/secure.html +13 -0
  143. inpanel/public/partials/service/apache.html +147 -0
  144. inpanel/public/partials/service/cron.html +71 -0
  145. inpanel/public/partials/service/index.html +293 -0
  146. inpanel/public/partials/service/iptables.html +40 -0
  147. inpanel/public/partials/service/lighttpd.html +63 -0
  148. inpanel/public/partials/service/mariadb.html +113 -0
  149. inpanel/public/partials/service/memcache.html +36 -0
  150. inpanel/public/partials/service/minio.html +44 -0
  151. inpanel/public/partials/service/mongodb.html +44 -0
  152. inpanel/public/partials/service/mysql.html +113 -0
  153. inpanel/public/partials/service/named.html +61 -0
  154. inpanel/public/partials/service/nginx.html +296 -0
  155. inpanel/public/partials/service/ntp.html +40 -0
  156. inpanel/public/partials/service/php.html +250 -0
  157. inpanel/public/partials/service/proftpd.html +59 -0
  158. inpanel/public/partials/service/pureftpd.html +59 -0
  159. inpanel/public/partials/service/redis.html +40 -0
  160. inpanel/public/partials/service/samba.html +58 -0
  161. inpanel/public/partials/service/sendmail.html +40 -0
  162. inpanel/public/partials/service/ssh.html +186 -0
  163. inpanel/public/partials/service/tomcat.html +65 -0
  164. inpanel/public/partials/service/vsftpd.html +195 -0
  165. inpanel/public/partials/setting.html +299 -0
  166. inpanel/public/partials/site/apache/site.html +277 -0
  167. inpanel/public/partials/site/index.html +344 -0
  168. inpanel/public/partials/site/nginx/site.html +558 -0
  169. inpanel/public/partials/sorry.html +19 -0
  170. inpanel/public/partials/storage/autofm.html +103 -0
  171. inpanel/public/partials/storage/backup.html +42 -0
  172. inpanel/public/partials/storage/index.html +360 -0
  173. inpanel/public/partials/storage/migrate.html +93 -0
  174. inpanel/public/partials/storage/movedata.html +98 -0
  175. inpanel/public/partials/storage/remote.html +77 -0
  176. inpanel/public/partials/utils/cron.html +486 -0
  177. inpanel/public/partials/utils/firewall.html +266 -0
  178. inpanel/public/partials/utils/index.html +193 -0
  179. inpanel/public/partials/utils/network.html +118 -0
  180. inpanel/public/partials/utils/process.html +239 -0
  181. inpanel/public/partials/utils/repository.html +373 -0
  182. inpanel/public/partials/utils/shell.html +28 -0
  183. inpanel/public/partials/utils/ssl.html +319 -0
  184. inpanel/public/partials/utils/time.html +109 -0
  185. inpanel/public/partials/utils/user.html +359 -0
  186. inpanel/public/robots.txt +2 -0
  187. inpanel/remote.py +109 -0
  188. inpanel/templates/file/preview.html +34 -0
  189. inpanel/templates/index.html +93 -0
  190. inpanel/utils.py +282 -0
  191. inpanel/web.py +1811 -0
  192. inpanel/yum.py +756 -0
  193. inpanel-1.2.1.dist-info/METADATA +399 -0
  194. inpanel-1.2.1.dist-info/RECORD +198 -0
  195. inpanel-1.2.1.dist-info/WHEEL +5 -0
  196. inpanel-1.2.1.dist-info/entry_points.txt +2 -0
  197. inpanel-1.2.1.dist-info/licenses/LICENSE +30 -0
  198. inpanel-1.2.1.dist-info/top_level.txt +1 -0
inpanel/yum.py ADDED
@@ -0,0 +1,756 @@
1
+ # -*- coding: utf-8 -*-
2
+ #
3
+ # Copyright (c) 2017-2026 Jackson Dou
4
+ # All rights reserved.
5
+ #
6
+ # InPanel is distributed under the terms of The New BSD License.
7
+ # The full license can be found in 'LICENSE'.
8
+
9
+ '''Module for YUM(Yellow dog Updater, Modified) Management'''
10
+
11
+ # repository list that YUM support
12
+ yum_repolist = ('base', 'updates', 'epel', 'CentALT', 'ius', 'atomic', '10gen', 'mariadb')
13
+
14
+ yum_reporpms = {
15
+ 'base': {
16
+ 5: {
17
+ 'x86_64': [
18
+ # 'http://mirror.centos.org/centos/5/os/x86_64/CentOS/centos-release-notes-5.8-0.x86_64.rpm',
19
+ # 'http://mirror.centos.org/centos/5/os/x86_64/CentOS/centos-release-5-8.el5.centos.x86_64.rpm',
20
+ 'http://mirror.neu.edu.cn/centos/5/os/x86_64/CentOS/centos-release-notes-5.11-0.x86_64.rpm',
21
+ 'http://mirror.neu.edu.cn/centos/5/os/x86_64/CentOS/centos-release-5-11.el5.centos.x86_64.rpm'
22
+ ],
23
+ 'i386': [
24
+ # 'http://mirror.centos.org/centos/5/os/i386/CentOS/centos-release-notes-5.8-0.i386.rpm',
25
+ # 'http://mirror.centos.org/centos/5/os/i386/CentOS/centos-release-5-8.el5.centos.i386.rpm',
26
+ 'http://mirror.neu.edu.cn/centos/5/os/i386/CentOS/centos-release-notes-5.11-0.i386.rpm',
27
+ 'http://mirror.neu.edu.cn/centos/5/os/i386/CentOS/centos-release-5-11.el5.centos.i386.rpm'
28
+ ],
29
+ 'i686': [
30
+ # 'http://mirror.centos.org/centos/5/os/i386/CentOS/centos-release-notes-5.8-0.i386.rpm',
31
+ # 'http://mirror.centos.org/centos/5/os/i386/CentOS/centos-release-5-8.el5.centos.i386.rpm',
32
+ 'http://mirror.neu.edu.cn/centos/5/os/i386/CentOS/centos-release-notes-5.11-0.i386.rpm',
33
+ 'http://mirror.neu.edu.cn/centos/5/os/i386/CentOS/centos-release-5-11.el5.centos.i386.rpm'
34
+ ],
35
+ },
36
+ 6: {
37
+ 'x86_64': [
38
+ # 'http://mirror.centos.org/centos/6/os/x86_64/Packages/centos-release-6-9.el6.12.3.x86_64.rpm.rpm',
39
+ # 'http://mirror.centos.org/centos/6/os/x86_64/Packages/centos-release-6-10.el6.centos.12.3.x86_64.rpm',
40
+ 'https://mirrors.aliyun.com/centos/6/os/x86_64/Packages/centos-release-6-10.el6.centos.12.3.x86_64.rpm'
41
+ ],
42
+ 'i386': [
43
+ # 'http://mirror.centos.org/centos/6/os/i386/Packages/centos-release-6-9.el6.12.3.i686.rpm',
44
+ # 'http://mirror.centos.org/centos/6/os/i386/Packages/centos-release-6-10.el6.centos.12.3.i686.rpm',
45
+ 'https://mirrors.aliyun.com/centos/6/os/i386/Packages/centos-release-6-10.el6.centos.12.3.i686.rpm'
46
+ ],
47
+ 'i686': [
48
+ # 'http://mirror.centos.org/centos/6/os/i386/Packages/centos-release-6-9.el6.12.3.i686.rpm',
49
+ # 'http://mirror.centos.org/centos/6/os/i386/Packages/centos-release-6-10.el6.centos.12.3.i686.rpm',
50
+ 'https://mirrors.aliyun.com/centos/6/os/i386/Packages/centos-release-6-10.el6.centos.12.3.i686.rpm'
51
+ ]
52
+ },
53
+ 7: {
54
+ 'x86_64': [
55
+ 'http://mirror.centos.org/centos/7/os/x86_64/Packages/centos-release-7-9.2009.0.el7.centos.x86_64.rpm',
56
+ 'http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/centos-release-7-9.2009.0.el7.centos.x86_64.rpm'
57
+ ]
58
+ },
59
+ 8: {
60
+ 'x86_64': [
61
+ 'http://mirror.centos.org/centos/7/os/x86_64/Packages/centos-release-7-9.2009.0.el7.centos.x86_64.rpm',
62
+ 'http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/centos-release-7-9.2009.0.el7.centos.x86_64.rpm'
63
+ ]
64
+ }
65
+ },
66
+ 'updates': {
67
+ 7: {
68
+ 'x86_64': [
69
+ 'http://mirror.centos.org/centos/7/updates/x86_64/Packages/centos-release-7-9.2009.1.el7.centos.x86_64.rpm'
70
+ ]
71
+ }
72
+ },
73
+ 'epel': {
74
+ 5: {
75
+ 'x86_64': ['http://centos.ustc.edu.cn/epel/6/x86_64/Packages/e/epel-release-6-8.noarch.rpm'],
76
+ 'i386': ['http://centos.ustc.edu.cn/epel/6/i386/Packages/e/epel-release-6-8.noarch.rpm'],
77
+ 'i686': ['http://centos.ustc.edu.cn/epel/6/i386/Packages/e/epel-release-6-8.noarch.rpm']
78
+ },
79
+ 6: {
80
+ 'x86_64': ['https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm'],
81
+ 'i386': ['https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm'],
82
+ 'i686': ['https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm']
83
+ },
84
+ 7: {
85
+ 'x86_64': ['https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm']
86
+ },
87
+ 8: {
88
+ 'x86_64': ['https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm']
89
+ },
90
+ },
91
+ 'CentALT': {
92
+ 5: {
93
+ 'x86_64': [
94
+ 'http://mirror.neu.edu.cn/CentALT/5/x86_64/centalt-release-5-3.noarch.rpm'
95
+ ],
96
+ 'i386': [
97
+ 'http://mirror.neu.edu.cn/CentALT/5/i386/centalt-release-5-3.noarch.rpm'
98
+ ],
99
+ 'i686': [
100
+ 'http://mirror.neu.edu.cn/CentALT/5/i386/centalt-release-5-3.noarch.rpm'
101
+ ],
102
+ },
103
+ 6: {
104
+ 'x86_64': [
105
+ 'http://mirror.neu.edu.cn/CentALT/6/x86_64/centalt-release-6-1.noarch.rpm',
106
+ 'http://mirror.centos.org/centos/6/os/x86_64/Packages/centos-release-6-10.el6.centos.12.3.x86_64.rpm'
107
+ ],
108
+ 'i386': [
109
+ 'http://mirror.neu.edu.cn/CentALT/6/i386/centalt-release-6-1.noarch.rpm',
110
+ 'http://mirror.centos.org/centos/6/os/i386/Packages/centos-release-6-10.el6.centos.12.3.i686.rpm'
111
+ ],
112
+ 'i686': [
113
+ 'http://mirror.neu.edu.cn/CentALT/6/i386/centalt-release-6-1.noarch.rpm',
114
+ 'http://mirror.centos.org/centos/6/os/i386/Packages/centos-release-6-10.el6.centos.12.3.i686.rpm'
115
+ ]
116
+ }
117
+ },
118
+ 'ius': {
119
+ 5: {
120
+ 'x86_64': ['https://dl.iuscommunity.org/pub/ius/archive/CentOS/5/x86_64/ius-release-1.0-15.ius.centos5.noarch.rpm'],
121
+ 'i386': ['https://dl.iuscommunity.org/pub/ius/archive/CentOS/5/i386/ius-release-1.0-15.ius.centos5.noarch.rpm'],
122
+ 'i686': ['https://dl.iuscommunity.org/pub/ius/archive/CentOS/5/i386/ius-release-1.0-15.ius.centos5.noarch.rpm']
123
+ },
124
+ 6: {
125
+ 'x86_64': ['https://dl.iuscommunity.org/pub/ius/stable/CentOS/6/x86_64/ius-release-1.0-15.ius.centos6.noarch.rpm'],
126
+ 'i386': ['https://dl.iuscommunity.org/pub/ius/stable/CentOS/6/i386/ius-release-1.0-15.ius.el6.noarch.rpm'],
127
+ 'i686': ['https://dl.iuscommunity.org/pub/ius/stable/CentOS/6/i386/ius-release-1.0-15.ius.el6.noarch.rpm']
128
+ },
129
+ 7: {
130
+ 'x86_64': ['https://repo.ius.io/ius-release-el7.rpm']
131
+ }
132
+ }
133
+ }
134
+
135
+ # REF: http://www.atomicorp.com/channels/atomic
136
+ # REF: https://ius.io/GettingStarted/#install-via-automation
137
+ yum_repoinstallcmds = {
138
+ 'atomic': 'wget -q -O - http://www.atomicorp.com/installers/atomic | sed \'/check_input "Do you agree to these terms?/d\' | sh',
139
+ 'ius': 'wget -q -O - https://setup.ius.io | sh'
140
+ }
141
+
142
+ yum_repostr = {
143
+ '10gen': {
144
+ 'x86_64': '[10gen]\n\
145
+ name=10gen Repository\n\
146
+ baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/\n\
147
+ gpgcheck=0\n\
148
+ enabled=1',
149
+ 'i686': '[10gen]\n\
150
+ name=10gen Repository\n\
151
+ baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/i686/\n\
152
+ gpgcheck=0\n\
153
+ enabled=1',
154
+ },
155
+ 'mariadb': {
156
+ 'x86_64': '# MariaDB 10.3 CentOS repository list - created 2018-11-06 02:58 UTC\n\
157
+ # http://downloads.mariadb.org/mariadb/repositories\n\
158
+ [mariadb]\n\
159
+ name=MariaDB\n\
160
+ baseurl=http://yum.mariadb.org/10.3/centos6-amd64\n\
161
+ gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB\n\
162
+ gpgcheck=1',
163
+ 'i686': '# MariaDB 10.3 CentOS repository list - created 2018-11-06 02:58 UTC\n\
164
+ # http://downloads.mariadb.org/mariadb/repositories\n\
165
+ [mariadb]\n\
166
+ name=MariaDB\n\
167
+ baseurl=http://yum.mariadb.org/10.3/centos6-x86\n\
168
+ gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB\n\
169
+ gpgcheck=1',
170
+ },
171
+ }
172
+
173
+ # Alias of package we use when get versions of it
174
+ yum_pkg_alias = {
175
+ 'nginx': ['nginx', 'nginx-stable'],
176
+ 'tomcat': ['tomcat', 'tomcat6'],
177
+ 'apache': ['httpd', 'httpd24u'],
178
+ 'lighttpd': ['lighttpd'],
179
+ 'vsftpd': ['vsftpd'],
180
+ 'mysql': ['mysql-server', 'mysql55-server', 'mysql56u-server', 'mysql57u-server'],
181
+ 'mariadb': ['MariaDB-server'],
182
+ 'redis': ['redis'],
183
+ 'memcache': ['memcached'],
184
+ 'mongodb': ['mongodb-server', 'mongo-10gen-server', 'mongo18-10gen-server', 'mongo20-10gen-server'],
185
+ 'php': ['php-fpm', 'php53u-fpm', 'php54-fpm', 'php56u-fpm', 'php70u-fpm', 'php71u-fpm'],
186
+ 'sendmail': ['sendmail'],
187
+ 'ssh': ['openssh-server', 'openssh-clients', 'openssh-ldap', 'openssh-askpass'],
188
+ 'iptables': ['iptables'],
189
+ 'cron': ['cronie', 'vixie-cron'],
190
+ 'ntp': ['ntp'],
191
+ 'ntpdate': ['ntpdate'],
192
+ 'bind': ['bind'],
193
+ 'docker': ['docker'],
194
+ 'pureftpd': ['pure-ftpd'],
195
+ 'proftpd': ['proftpd'],
196
+ 'GeoIP': ['GeoIP'],
197
+ 'mono': ['mono'],
198
+ 'ntfs-3g': ['ntfs-3g'],
199
+ 'ntfsprogs': ['ntfsprogs'],
200
+ 'davfs2': ['davfs2'],
201
+ 'nfs': ['nfs'],
202
+ 'cifs': ['cifs'],
203
+ 'samba': ['samba', 'samba4']
204
+ }
205
+
206
+ # Relative available packages.
207
+ # Dictionary flag:
208
+ # default: should this pkg be installed by default
209
+ # base: is other pkg base on this pkg
210
+ # isext: is extend pkg
211
+ # conflicts: what pkg this pkg would conflict with
212
+ # depends: the depends packages
213
+ yum_pkg_relatives = {
214
+ 'nginx': {
215
+ 'nginx': {'default': True, 'base': True},
216
+ 'nginx-mod-http-geoip': {'default': False, 'isext': True},
217
+ 'nginx-mod-http-image-filter': {'default': False, 'isext': True},
218
+ 'nginx-mod-http-perl': {'default': False, 'isext': True},
219
+ 'nginx-mod-http-xslt-filter': {'default': False, 'isext': True},
220
+ 'nginx-mod-mail': {'default': False, 'isext': True},
221
+ 'nginx-mod-stream': {'default': False, 'isext': True},
222
+ 'nginx-module-geoip': {'default': False, 'isext': True},
223
+ 'nginx-module-image-filter': {'default': False, 'isext': True},
224
+ 'nginx-module-modsecurity': {'default': False, 'isext': True},
225
+ 'nginx-module-njs': {'default': False, 'isext': True},
226
+ 'nginx-module-perl': {'default': False, 'isext': True},
227
+ 'nginx-module-xslt': {'default': False, 'isext': True},
228
+ 'php56u-fpm-nginx': {'default': False, 'isext': True},
229
+ 'php70u-fpm-nginx': {'default': False, 'isext': True},
230
+ 'php71u-fpm-nginx': {'default': False, 'isext': True}
231
+ },
232
+ 'nginx-stable': {
233
+ 'nginx-stable': {'default': True, 'base': True}
234
+ },
235
+ 'httpd': {
236
+ 'httpd': {'default': True, 'base': True},
237
+ 'httpd-devel': {'default': False, 'isext': True},
238
+ 'httpd-itk': {'default': False, 'isext': True},
239
+ 'httpd-tools': {'default': False, 'isext': True}
240
+ },
241
+ 'httpd24u': {
242
+ 'httpd24u': {'default': True, 'base': True},
243
+ 'httpd24u-devel': {'default': False, 'isext': True},
244
+ 'httpd24u-debuginfo': {'default': False, 'isext': True},
245
+ 'httpd24u-mod_ldap': {'default': False, 'isext': True},
246
+ 'httpd24u-mod_proxy_html': {'default': False, 'isext': True},
247
+ 'httpd24u-mod_security2': {'default': False, 'isext': True},
248
+ 'httpd24u-mod_security2-mlogc': {'default': False, 'isext': True},
249
+ 'httpd24u-mod_session': {'default': False, 'isext': True},
250
+ 'httpd24u-mod_ssl': {'default': False, 'isext': True},
251
+ 'httpd24u-mod_xsendfile': {'default': False, 'isext': True},
252
+ 'httpd24u-tools': {'default': False, 'isext': True}
253
+ },
254
+ 'lighttpd': {
255
+ 'lighttpd': {'default': True, 'base': True},
256
+ 'lighttpd-fastcgi': {'default': False, 'isext': True},
257
+ 'lighttpd-mod_authn_gssapi': {'default': False, 'isext': True},
258
+ 'lighttpd-mod_authn_mysql': {'default': False, 'isext': True},
259
+ 'lighttpd-mod_geoip': {'default': False, 'isext': True},
260
+ 'lighttpd-mod_mysql_vhost': {'default': False, 'isext': True}
261
+ },
262
+ 'tomcat': {
263
+ 'tomcat': {'default': True, 'base': True},
264
+ 'tomcat-admin-webapps': {'default': True, 'base': True},
265
+ 'tomcat-docs-webapp': {'default': False, 'isext': True},
266
+ 'tomcat-el': {'default': False, 'isext': True},
267
+ 'tomcat-javadoc': {'default': False, 'isext': True},
268
+ 'tomcat-jsp': {'default': False, 'isext': True},
269
+ 'tomcat-jsvc': {'default': False, 'isext': True},
270
+ 'tomcat-lib': {'default': False, 'isext': True},
271
+ 'tomcat-servlet': {'default': False, 'isext': True},
272
+ 'tomcat-webapps': {'default': True, 'base': True},
273
+ 'tomcatjss': {'default': False, 'isext': True}
274
+ },
275
+ 'tomcat6': {
276
+ 'tomcat6': {'default': True, 'base': True},
277
+ 'tomcat6-admin-webapps': {'default': True, 'base': True},
278
+ 'tomcat6-docs-webapp': {'default': False, 'isext': True},
279
+ 'tomcat6-el': {'default': False, 'isext': True},
280
+ 'tomcat6-javadoc': {'default': False, 'isext': True},
281
+ 'tomcat6-jsp': {'default': False, 'isext': True},
282
+ 'tomcat6-lib': {'default': False, 'isext': True},
283
+ 'tomcat6-servlet': {'default': False, 'isext': True},
284
+ 'tomcat6-webapps': {'default': True, 'base': True},
285
+ 'tomcatjss': {'default': False, 'isext': True}
286
+ },
287
+ 'vsftpd': {
288
+ 'vsftpd': {'default': True, 'base': True}
289
+ },
290
+ 'pure-ftpd': {
291
+ 'pure-ftpd': {'default': True, 'base': True},
292
+ 'pure-ftpd-selinux': {'default': False, 'isext': True},
293
+ 'postgresql-libs': {'default': True, 'depends': True},
294
+ 'usermode': {'default': True, 'depends': True}
295
+ },
296
+ 'proftpd': {
297
+ 'proftpd': {'default': True, 'base': True},
298
+ 'proftpd-ldap': {'default': False, 'isext': True},
299
+ 'proftpd-mysql': {'default': False, 'isext': True},
300
+ 'proftpd-postgresql': {'default': False, 'isext': True},
301
+ 'proftpd-utils': {'default': False, 'isext': True}
302
+ },
303
+ 'GeoIP': {
304
+ 'GeoIP': {'default': True, 'base': True},
305
+ 'GeoIP-GeoLite-data': {'default': True, 'isext': True},
306
+ 'GeoIP-GeoLite-data-extra': {'default': False, 'isext': True},
307
+ 'GeoIP-devel': {'default': False, 'isext': True}
308
+ },
309
+ 'mysql-server': {
310
+ 'mysql-server': {'default': True, 'base': True},
311
+ 'mysql': {'default': True, 'base': True}
312
+ },
313
+ 'mysql55-server': {
314
+ 'mysql55-server': {'default': True, 'base': True},
315
+ 'mysql55': {'default': True, 'base': True}
316
+ },
317
+ 'mysql56u-server': {
318
+ 'mysql56u-server': {'default': True, 'base': True},
319
+ 'mysql56u': {'default': True, 'base': True}
320
+ },
321
+ 'mysql57u-server': {
322
+ 'mysql57u-server': {'default': True, 'base': True},
323
+ 'mysql57u': {'default': True, 'base': True}
324
+ },
325
+ 'MariaDB-server': {
326
+ 'MariaDB-server': {'default': True, 'base': True},
327
+ 'MariaDB-client': {'default': True, 'base': True},
328
+ 'MariaDB-common': {'default': True, 'base': True},
329
+ 'MariaDB-compat': {'default': True, 'base': True},
330
+ 'MariaDB-connect-engine': {'default': True, 'base': True},
331
+ 'MariaDB-devel': {'default': True, 'base': True},
332
+ 'MariaDB-gssapi-server': {'default': True, 'base': True},
333
+ 'MariaDB-oqgraph-engine': {'default': True, 'base': True},
334
+ 'MariaDB-shared': {'default': True, 'base': True}
335
+ },
336
+ 'redis': {
337
+ 'redis': {'default': True, 'base': True}
338
+ },
339
+ 'memcached': {
340
+ 'memcached': {'default': True, 'base': True}
341
+ },
342
+ 'mongodb-server': {
343
+ 'mongodb-server': {'default': True, 'base': True},
344
+ 'mongodb': {'default': True, 'base': True},
345
+ 'libmongodb': {'default': True, 'base': True}
346
+ },
347
+ 'mongo-10gen-server': {
348
+ 'mongo-10gen-server': {'default': True, 'base': True},
349
+ 'mongo-10gen': {'default': True, 'base': True}
350
+ },
351
+ 'mongo18-10gen-server': {
352
+ 'mongo18-10gen-server': {'default': True, 'base': True},
353
+ 'mongo18-10gen': {'default': True, 'base': True}
354
+ },
355
+ 'mongo20-10gen-server': {
356
+ 'mongo20-10gen-server': {'default': True, 'base': True},
357
+ 'mongo20-10gen': {'default': True, 'base': True}
358
+ },
359
+ 'php-fpm': {
360
+ 'php': {'default': True, 'base': True, 'conflicts': ('php53u', 'php54', 'php56u', 'php70u', 'php71u', )},
361
+ 'php-bcmath': {'default': True, 'isext': True},
362
+ 'php-cli': {'default': True},
363
+ 'php-common': {'default': True, 'base': True},
364
+ 'php-dba': {'default': False, 'isext': True},
365
+ 'php-devel': {'default': False, 'isext': True},
366
+ 'php-eaccelerator': {'default': False, 'isext': True},
367
+ 'php-fpm': {'default': True},
368
+ 'php-gd': {'default': True, 'isext': True},
369
+ 'php-imap': {'default': False, 'isext': True},
370
+ 'php-interbase': {'default': False, 'isext': True},
371
+ 'php-intl': {'default': False, 'isext': True},
372
+ 'php-ioncube': {'default': False, 'isext': True},
373
+ 'php-ldap': {'default': False, 'isext': True},
374
+ 'php-magickwand': {'default': False, 'isext': True},
375
+ 'php-mbstring': {'default': True, 'isext': True},
376
+ 'php-mcrypt': {'default': True, 'isext': True},
377
+ 'php-mssql': {'default': False, 'isext': True},
378
+ 'php-mysql': {'default': True, 'isext': True, 'conflicts': ('php-mysqlnd', )},
379
+ 'php-mysqlnd': {'default': False, 'isext': True, 'conflicts': ('php-mysql', )},
380
+ 'php-odbc': {'default': False, 'isext': True},
381
+ 'php-pdo': {'default': True, 'isext': True},
382
+ 'php-pear': {'default': False},
383
+ 'php-pecl-amqp': {'default': False, 'isext': True},
384
+ 'php-pecl-apc': {'default': False, 'isext': True},
385
+ 'php-pecl-geoip': {'default': False, 'isext': True},
386
+ 'php-pecl-gmagick': {'default': False, 'isext': True},
387
+ 'php-pecl-imagick': {'default': False, 'isext': True},
388
+ 'php-pecl-lzf': {'default': False, 'isext': True},
389
+ 'php-pecl-mailparse': {'default': False, 'isext': True},
390
+ 'php-pecl-memcache': {'default': False, 'isext': True},
391
+ 'php-pecl-memcached': {'default': False, 'isext': True},
392
+ 'php-pecl-mongo': {'default': False, 'isext': True},
393
+ 'php-pecl-ncurses': {'default': False, 'isext': True},
394
+ 'php-pecl-oauth': {'default': False, 'isext': True},
395
+ 'php-pecl-radius': {'default': False, 'isext': True},
396
+ 'php-pecl-rrd': {'default': False, 'isext': True},
397
+ 'php-pecl-sphinx': {'default': False, 'isext': True},
398
+ 'php-pecl-ssh2': {'default': False, 'isext': True},
399
+ 'php-pecl-xdebug': {'default': False, 'isext': True},
400
+ 'php-pecl-xhprof': {'default': False, 'isext': True},
401
+ 'php-pgsql': {'default': False, 'isext': True},
402
+ 'php-process': {'default': False, 'isext': True},
403
+ 'php-pspell': {'default': False, 'isext': True},
404
+ 'php-recode': {'default': False, 'isext': True},
405
+ 'php-snmp': {'default': False, 'isext': True},
406
+ 'php-soap': {'default': True, 'isext': True},
407
+ 'php-suhosin': {'default': False, 'isext': True},
408
+ 'php-xml': {'default': True, 'isext': True},
409
+ 'php-xmlrpc': {'default': False, 'isext': True},
410
+ 'php-zipstream': {'default': False, 'isext': True},
411
+ 'php-zmq': {'default': False, 'isext': True},
412
+ 'php-zts': {'default': False, 'isext': True},
413
+ 'php-zend-guard-loader': {'default': False, 'isext': True},
414
+ },
415
+ 'php53u-fpm': {
416
+ 'php53u': {'default': True, 'base': True, 'conflicts': ('php', 'php54')},
417
+ 'php53u-bcmath': {'default': True, 'isext': True},
418
+ 'php53u-cli': {'default': True},
419
+ 'php53u-common': {'default': True, 'base': True},
420
+ 'php53u-dba': {'default': False, 'isext': True},
421
+ 'php53u-devel': {'default': False, 'isext': True},
422
+ 'php53u-eaccelerator': {'default': False, 'isext': True},
423
+ 'php53u-fpm': {'default': True},
424
+ 'php53u-gd': {'default': True, 'isext': True},
425
+ 'php53u-imap': {'default': False, 'isext': True},
426
+ 'php53u-interbase': {'default': False, 'isext': True},
427
+ 'php53u-intl': {'default': False, 'isext': True},
428
+ 'php53u-ioncube-loader': {'default': False, 'isext': True},
429
+ 'php53u-ldap': {'default': False, 'isext': True},
430
+ 'php53u-mbstring': {'default': True, 'isext': True},
431
+ 'php53u-mcrypt': {'default': True, 'isext': True},
432
+ 'php53u-mssql': {'default': False, 'isext': True},
433
+ 'php53u-mysql': {'default': True, 'isext': True},
434
+ 'php53u-odbc': {'default': False, 'isext': True},
435
+ 'php53u-pdo': {'default': True, 'isext': True},
436
+ 'php53u-pear': {'default': False},
437
+ 'php53u-pecl-apc': {'default': False, 'isext': True},
438
+ 'php53u-pecl-geoip': {'default': False, 'isext': True},
439
+ 'php53u-pecl-imagick': {'default': False, 'isext': True},
440
+ 'php53u-pecl-memcache': {'default': False, 'isext': True},
441
+ 'php53u-pecl-memcached': {'default': False, 'isext': True},
442
+ 'php53u-pecl-xdebug': {'default': False, 'isext': True},
443
+ 'php53u-pgsql': {'default': False, 'isext': True},
444
+ 'php53u-process': {'default': False, 'isext': True},
445
+ 'php53u-pspell': {'default': False, 'isext': True},
446
+ 'php53u-recode': {'default': False, 'isext': True},
447
+ 'php53u-simplepie': {'default': False, 'isext': True},
448
+ 'php53u-snmp': {'default': False, 'isext': True},
449
+ 'php53u-soap': {'default': True, 'isext': True},
450
+ 'php53u-suhosin': {'default': False, 'isext': True},
451
+ 'php53u-xcache': {'default': False, 'isext': True},
452
+ 'php53u-xml': {'default': True, 'isext': True},
453
+ 'php53u-xmlrpc': {'default': False, 'isext': True},
454
+ 'php53u-zts': {'default': False, 'isext': True},
455
+ 'php-zend-guard-loader': {'default': False, 'isext': True},
456
+ },
457
+ 'php54-fpm': {
458
+ 'php54': {'default': True, 'base': True, 'conflicts': ('php', 'php53u')},
459
+ 'php54-bcmath': {'default': True, 'isext': True},
460
+ 'php54-cli': {'default': True},
461
+ 'php54-common': {'default': True, 'base': True},
462
+ 'php54-dba': {'default': False, 'isext': True},
463
+ 'php54-devel': {'default': False, 'isext': True},
464
+ 'php54-fpm': {'default': True},
465
+ 'php54-gd': {'default': True, 'isext': True},
466
+ 'php54-imap': {'default': False, 'isext': True},
467
+ 'php54-interbase': {'default': False, 'isext': True},
468
+ 'php54-intl': {'default': False, 'isext': True},
469
+ 'php54-ldap': {'default': False, 'isext': True},
470
+ 'php54-ioncube-loader': {'default': False, 'isext': True},
471
+ 'php54-mbstring': {'default': True, 'isext': True},
472
+ 'php54-mcrypt': {'default': True, 'isext': True},
473
+ 'php54-mssql': {'default': False, 'isext': True},
474
+ 'php54-mysql': {'default': True, 'isext': True, 'conflicts': ('php54-mysqlnd')},
475
+ 'php54-mysqlnd': {'default': False, 'isext': True, 'conflicts': ('php54-mysql')},
476
+ 'php54-odbc': {'default': False, 'isext': True},
477
+ 'php54-pdo': {'default': True, 'isext': True},
478
+ 'php54-pear': {'default': False},
479
+ 'php54-pecl-apc': {'default': False, 'isext': True},
480
+ 'php54-pecl-geoip': {'default': False, 'isext': True},
481
+ 'php54-pecl-imagick': {'default': False, 'isext': True},
482
+ 'php54-pecl-memcache': {'default': False, 'isext': True},
483
+ 'php54-pecl-mysqlnd-ms': {'default': False, 'isext': True},
484
+ 'php54-pecl-xdebug': {'default': False, 'isext': True},
485
+ 'php54-pgsql': {'default': False, 'isext': True},
486
+ 'php54-pgsql84': {'default': False, 'isext': True},
487
+ 'php54-process': {'default': False, 'isext': True},
488
+ 'php54-pspell': {'default': False, 'isext': True},
489
+ 'php54-recode': {'default': False, 'isext': True},
490
+ 'php54-simplepie': {'default': False, 'isext': True},
491
+ 'php54-snmp': {'default': False, 'isext': True},
492
+ 'php54-soap': {'default': True, 'isext': True},
493
+ 'php54-suhosin': {'default': False, 'isext': True},
494
+ 'php54-xcache': {'default': False, 'isext': True},
495
+ 'php54-xml': {'default': True, 'isext': True},
496
+ 'php54-xmlrpc': {'default': False, 'isext': True},
497
+ 'php54-zts': {'default': False, 'isext': True},
498
+ 'php-zend-guard-loader': {'default': False, 'isext': True},
499
+ },
500
+ 'php56u-fpm': {
501
+ 'php56u': {'default': True, 'base': True, 'conflicts': ('php', 'php70u', 'php71u')},
502
+ 'php56u-bcmath': {'default': True, 'isext': True},
503
+ 'php56u-cli': {'default': True},
504
+ 'php56u-common': {'default': True, 'base': True},
505
+ 'php56u-dba': {'default': False, 'isext': True},
506
+ 'php56u-devel': {'default': False, 'isext': True},
507
+ 'php56u-eaccelerator': {'default': False, 'isext': True},
508
+ 'php56u-fpm': {'default': True},
509
+ 'php56u-gd': {'default': True, 'isext': True},
510
+ 'php56u-imap': {'default': False, 'isext': True},
511
+ 'php56u-interbase': {'default': False, 'isext': True},
512
+ 'php56u-intl': {'default': False, 'isext': True},
513
+ 'php56u-ioncube-loader': {'default': False, 'isext': True},
514
+ 'php56u-ldap': {'default': False, 'isext': True},
515
+ 'php56u-mbstring': {'default': True, 'isext': True},
516
+ 'php56u-mcrypt': {'default': True, 'isext': True},
517
+ 'php56u-mssql': {'default': False, 'isext': True},
518
+ 'php56u-mysql': {'default': True, 'isext': True},
519
+ 'php56u-odbc': {'default': False, 'isext': True},
520
+ 'php56u-pdo': {'default': True, 'isext': True},
521
+ 'php56u-pear': {'default': False},
522
+ 'php56u-pecl-apc': {'default': False, 'isext': True},
523
+ 'php56u-pecl-geoip': {'default': False, 'isext': True},
524
+ 'php56u-pecl-imagick': {'default': False, 'isext': True},
525
+ 'php56u-pecl-memcache': {'default': False, 'isext': True},
526
+ 'php56u-pecl-memcached': {'default': False, 'isext': True},
527
+ 'php56u-pecl-xdebug': {'default': False, 'isext': True},
528
+ 'php56u-pgsql': {'default': False, 'isext': True},
529
+ 'php56u-process': {'default': False, 'isext': True},
530
+ 'php56u-pspell': {'default': False, 'isext': True},
531
+ 'php56u-recode': {'default': False, 'isext': True},
532
+ 'php56u-snmp': {'default': False, 'isext': True},
533
+ 'php56u-soap': {'default': True, 'isext': True},
534
+ 'php56u-suhosin': {'default': False, 'isext': True},
535
+ 'php56u-xcache': {'default': False, 'isext': True},
536
+ 'php56u-xml': {'default': True, 'isext': True},
537
+ 'php56u-xmlrpc': {'default': False, 'isext': True}
538
+ },
539
+ 'php70u-fpm': {
540
+ 'php70u': {'default': True, 'base': True, 'conflicts': ('php', 'php56u', 'php71u')},
541
+ 'php70u-bcmath': {'default': True, 'isext': True},
542
+ 'php70u-cli': {'default': True},
543
+ 'php70u-common': {'default': True, 'base': True},
544
+ 'php70u-dba': {'default': False, 'isext': True},
545
+ 'php70u-devel': {'default': False, 'isext': True},
546
+ 'php70u-fpm': {'default': True},
547
+ 'php70u-gd': {'default': True, 'isext': True},
548
+ 'php70u-imap': {'default': False, 'isext': True},
549
+ 'php70u-interbase': {'default': False, 'isext': True},
550
+ 'php70u-intl': {'default': False, 'isext': True},
551
+ 'php70u-ldap': {'default': False, 'isext': True},
552
+ 'php70u-ioncube-loader': {'default': False, 'isext': True},
553
+ 'php70u-mbstring': {'default': True, 'isext': True, },
554
+ 'php70u-mcrypt': {'default': True, 'isext': True},
555
+ 'php70u-mssql': {'default': False, 'isext': True},
556
+ 'php70u-mysql': {'default': True, 'isext': True, 'conflicts': ('php70u-mysqlnd')},
557
+ 'php70u-mysqlnd': {'default': False, 'isext': True, 'conflicts': ('php70u-mysql')},
558
+ 'php70u-odbc': {'default': False, 'isext': True},
559
+ 'php70u-pdo': {'default': True, 'isext': True},
560
+ 'php70u-pear': {'default': False},
561
+ 'php70u-pecl-apc': {'default': False, 'isext': True},
562
+ 'php70u-pecl-geoip': {'default': False, 'isext': True},
563
+ 'php70u-pecl-imagick': {'default': False, 'isext': True},
564
+ 'php70u-pecl-memcache': {'default': False, 'isext': True},
565
+ 'php70u-pecl-mysqlnd-ms': {'default': False, 'isext': True},
566
+ 'php70u-pecl-xdebug': {'default': False, 'isext': True},
567
+ 'php70u-pgsql': {'default': False, 'isext': True},
568
+ 'php70u-process': {'default': False, 'isext': True},
569
+ 'php70u-pspell': {'default': False, 'isext': True},
570
+ 'php70u-recode': {'default': False, 'isext': True},
571
+ 'php70u-snmp': {'default': False, 'isext': True},
572
+ 'php70u-soap': {'default': True, 'isext': True},
573
+ 'php70u-suhosin': {'default': False, 'isext': True},
574
+ 'php70u-xcache': {'default': False, 'isext': True},
575
+ 'php70u-xml': {'default': True, 'isext': True},
576
+ 'php70u-xmlrpc': {'default': False, 'isext': True}
577
+ },
578
+ 'php71u-fpm': {
579
+ 'php71u': {'default': True, 'base': True, 'conflicts': ('php', 'php56u', 'php70u')},
580
+ 'php71u-bcmath': {'default': True, 'isext': True},
581
+ 'php71u-cli': {'default': True},
582
+ 'php71u-common': {'default': True, 'base': True},
583
+ 'php71u-dba': {'default': False, 'isext': True},
584
+ 'php71u-devel': {'default': False, 'isext': True},
585
+ 'php71u-fpm': {'default': True},
586
+ 'php71u-gd': {'default': True, 'isext': True},
587
+ 'php71u-imap': {'default': False, 'isext': True},
588
+ 'php71u-interbase': {'default': False, 'isext': True},
589
+ 'php71u-intl': {'default': False, 'isext': True},
590
+ 'php71u-ldap': {'default': False, 'isext': True},
591
+ 'php71u-json': {'default': False, 'isext': True},
592
+ 'php71u-ioncube-loader': {'default': False, 'isext': True},
593
+ 'php71u-mbstring': {'default': True, 'isext': True, },
594
+ 'php71u-mcrypt': {'default': True, 'isext': True},
595
+ 'php71u-mssql': {'default': False, 'isext': True},
596
+ 'php71u-mysql': {'default': True, 'isext': True, 'conflicts': ('php71u-mysqlnd')},
597
+ 'php71u-mysqlnd': {'default': False, 'isext': True, 'conflicts': ('php71u-mysql')},
598
+ 'php71u-odbc': {'default': False, 'isext': True},
599
+ 'php71u-pdo': {'default': True, 'isext': True},
600
+ 'php71u-pear': {'default': False},
601
+ 'php71u-pecl-apcu': {'default': False, 'isext': True},
602
+ 'php71u-pecl-geoip': {'default': False, 'isext': True},
603
+ 'php71u-pecl-igbinary': {'default': False, 'isext': True},
604
+ 'php71u-pecl-imagick': {'default': False, 'isext': True},
605
+ 'php71u-pecl-mongodb': {'default': False, 'isext': True},
606
+ 'php71u-pecl-redis': {'default': False, 'isext': True},
607
+ 'php71u-pecl-xdebug': {'default': False, 'isext': True},
608
+ 'php71u-pgsql': {'default': False, 'isext': True},
609
+ 'php71u-process': {'default': False, 'isext': True},
610
+ 'php71u-pspell': {'default': False, 'isext': True},
611
+ 'php71u-recode': {'default': False, 'isext': True},
612
+ 'php71u-snmp': {'default': False, 'isext': True},
613
+ 'php71u-soap': {'default': True, 'isext': True},
614
+ 'php71u-tidy': {'default': False, 'isext': True},
615
+ # 'php71u-xcache' : {'default': False, 'isext': True},
616
+ 'php71u-xml': {'default': True, 'isext': True},
617
+ 'php71u-xmlrpc': {'default': False, 'isext': True}
618
+ },
619
+ 'sendmail': {
620
+ 'sendmail': {'default': True, 'base': True}
621
+ },
622
+ 'openssh-server': {
623
+ 'openssh-server': {'default': True, 'base': True},
624
+ 'openssh-clients': {'default': False, 'isext': True},
625
+ 'openssh-ldap': {'default': False, 'isext': True},
626
+ 'openssh-askpass': {'default': False, 'isext': True},
627
+ },
628
+ 'iptables': {
629
+ 'iptables': {'default': True, 'base': True},
630
+ 'iptables-ipv6': {'default': False, 'isext': True},
631
+ 'iptables-devel': {'default': False, 'isext': True}
632
+ },
633
+ 'cronie': {
634
+ 'cronie': {'default': True, 'base': True}
635
+ },
636
+ 'vixie-cron': {
637
+ 'vixie-cron': {'default': True, 'base': True}
638
+ },
639
+ 'ntp': {
640
+ 'ntp': {'default': True, 'base': True},
641
+ 'ntp-doc': {'default': False, 'isext': True},
642
+ 'ntp-perl': {'default': False, 'isext': True},
643
+ },
644
+ 'ntpdate': {
645
+ 'ntpdate': {'default': True, 'base': True},
646
+ },
647
+ 'zip': {
648
+ 'zip': {'default': True, 'base': True},
649
+ 'unzip': {'default': True, 'base': True}
650
+ },
651
+ 'bind': {
652
+ 'bind': {'default': True, 'base': True},
653
+ 'bind-chroot': {'default': True, 'isext': True},
654
+ 'bind-devel': {'default': False, 'isext': True},
655
+ 'bind-dyndb-ldap': {'default': False, 'isext': True},
656
+ 'bind-libs': {'default': False, 'isext': True},
657
+ 'bind-sdb': {'default': False, 'isext': True},
658
+ 'bind-to-tinydns': {'default': False, 'isext': True}
659
+ },
660
+ 'docker': { # epel
661
+ 'docker': {'default': True, 'base': True},
662
+ 'docker-io': {'default': True, 'base': True},
663
+ 'docker-io-fish-completion': {'default': False, 'isext': True},
664
+ 'docker-io-logrotate': {'default': False, 'isext': True},
665
+ 'docker-io-vim': {'default': False, 'isext': True},
666
+ 'docker-io-zsh-completion': {'default': False, 'isext': True}
667
+ },
668
+ 'mono': { # epel
669
+ 'mono-core': {'default': True, 'base': True},
670
+ 'mono-data': {'default': True, 'base': True},
671
+ 'mono-data-oracle': {'default': False, 'isext': True},
672
+ 'mono-data-sqlite': {'default': False, 'isext': True},
673
+ 'mono-devel': {'default': False, 'isext': True},
674
+ 'mono-extras': {'default': False, 'isext': True},
675
+ 'mono-locale-extras': {'default': False, 'isext': True},
676
+ 'mono-mvc': {'default': False, 'isext': True},
677
+ 'mono-mvc-devel': {'default': False, 'isext': True},
678
+ 'mono-reactive': {'default': False, 'isext': True},
679
+ 'mono-reactive-devel': {'default': False, 'isext': True},
680
+ 'mono-reactive-winforms': {'default': False, 'isext': True},
681
+ 'mono-wcf': {'default': False, 'isext': True},
682
+ 'mono-web': {'default': False, 'isext': True},
683
+ 'mono-web-devel': {'default': False, 'isext': True},
684
+ 'mono-winforms': {'default': False, 'isext': True},
685
+ 'mono-winfx': {'default': False, 'isext': True}
686
+ },
687
+ 'ntfs-3g': { # epel
688
+ 'ntfs-3g': {'default': True, 'base': True},
689
+ 'ntfs-3g-devel': {'default': False, 'isext': True}
690
+ },
691
+ 'ntfsprogs': { # epel
692
+ 'ntfsprogs': {'default': True, 'base': True},
693
+ 'ntfsprogs-devel': {'default': False, 'isext': True},
694
+ 'ntfsprogs-gnomevfs': {'default': False, 'isext': True}
695
+ },
696
+ 'davfs2': {
697
+ 'davfs2': {'default': True, 'base': True}
698
+ },
699
+ 'nfs': {
700
+ 'nfs': {'default': True, 'base': True},
701
+ 'nfs-utils': {'default': True, 'base': True},
702
+ 'nfs-utils-lib': {'default': False, 'isext': True},
703
+ 'nfs-utils-lib-devel': {'default': True, 'isext': True},
704
+ },
705
+ 'cifs': {
706
+ 'cifs-utils': {'default': True, 'base': True},
707
+ },
708
+ 'samba': {
709
+ 'samba': {'default': True, 'base': True},
710
+ 'samba-client': {'default': True, 'isext': True},
711
+ 'samba-common': {'default': True, 'base': True},
712
+ 'samba-doc': {'default': False, 'isext': True},
713
+ 'samba-glusterfs': {'default': False, 'isext': True},
714
+ 'samba-swat': {'default': False, 'isext': True},
715
+ 'samba-winbind': {'default': False, 'isext': True},
716
+ 'samba-winbind-clients': {'default': False, 'isext': True},
717
+ 'samba-winbind-krb5-locator': {'default': False, 'isext': True},
718
+ },
719
+ 'samba4': {
720
+ 'samba4': {'default': True, 'base': True},
721
+ 'samba4-client': {'default': True, 'isext': True},
722
+ 'samba4-common': {'default': True, 'base': True},
723
+ 'samba4-devel': {'default': False, 'isext': True},
724
+ 'samba4-libs': {'default': False, 'isext': True},
725
+ 'samba4-python': {'default': False, 'isext': True},
726
+ 'samba4-doc': {'default': False, 'isext': True},
727
+ 'samba4-glusterfs': {'default': False, 'isext': True},
728
+ 'samba4-swat': {'default': False, 'isext': True},
729
+ 'samba4-winbind': {'default': False, 'isext': True},
730
+ 'samba4-winbind-clients': {'default': False, 'isext': True},
731
+ 'samba4-winbind-krb5-locator': {'default': False, 'isext': True},
732
+ }
733
+ }
734
+
735
+ # no architecture packages
736
+ yum_pkg_noarchitecture = [
737
+ 'tomcat',
738
+ 'php56u-fpm-nginx',
739
+ 'php70u-fpm-nginx',
740
+ 'php71u-fpm-nginx'
741
+ ]
742
+
743
+ # for rpm in yum_reporpms['ius'][6]['x86_64']:
744
+ # print(rpm)
745
+
746
+
747
+ # print('abc' not in [v for k,vv in yum_pkg_alias for v in vv])
748
+ # print('tomcat' not in yum_pkg_alias)
749
+ # for (k,vv) in yum_pkg_alias:
750
+ # print(k,vv)
751
+
752
+
753
+ # if 'updates' not in yum_repolist + ['installed', '*']:
754
+ # print({'code': -1, 'msg': u'未知的软件源 updates !'})
755
+
756
+ # print('pure-ftpd' in yum_pkg_alias)