74 local expl context state line pkg5_root |
78 local expl context state line pkg5_root |
75 typeset -A opt_args |
79 typeset -A opt_args |
76 local -a subcmds pkg5_actions pkg5_cattr pkg5_sattr |
80 local -a subcmds pkg5_actions pkg5_cattr pkg5_sattr |
77 |
81 |
78 subcmds=( |
82 subcmds=( |
79 install uninstall list image-update refresh version |
83 install uninstall list update refresh version help |
80 info search verify fix contents image-create history |
84 info search verify fix revert contents image-create |
81 {change-,}{variant,facet} |
85 {change-,}{variant,facet} avoid unavoid history |
82 {{un,}set-,}property {{un,}set-,}publisher |
86 {{un,}set-,}property {add,remove}-property-value |
83 purge-history rebuild-index |
87 {{un,}set-,}publisher purge-history rebuild-index |
|
88 update-format |
84 ) |
89 ) |
85 |
90 |
86 pkg5_actions=( |
91 pkg5_actions=( |
87 set depend dir driver file group hardlink legacy license link |
92 set depend dir driver file group hardlink legacy license link |
88 signature unknown user |
93 signature unknown user |
119 ("install") |
124 ("install") |
120 _arguments -A "-*" \ |
125 _arguments -A "-*" \ |
121 '-n[Dry run]' \ |
126 '-n[Dry run]' \ |
122 '-q[Quiet]' \ |
127 '-q[Quiet]' \ |
123 '-v[Verbose]' \ |
128 '-v[Verbose]' \ |
|
129 '-g[Specify additional source of packages]:source:_path_files -/' \ |
|
130 "--accept[Accept all licenses]" \ |
|
131 "--licenses[Display all licenses]" \ |
|
132 "(--require-new-be)--deny-new-be[Fail the operation if a new BE would be required]" \ |
|
133 "(--deny-new-be)--require-new-be[Force a new BE to be created]" \ |
|
134 "--be-name[Specify a BE name]:BE name: " \ |
|
135 "--reject[Specify an FMRI to exclude from the result]:fmri:_pkg5_pkgs" \ |
124 "--no-refresh[Don't refresh catalogs]" \ |
136 "--no-refresh[Don't refresh catalogs]" \ |
125 "--no-index[Don't reindex search database]" \ |
137 "--no-index[Don't reindex search database]" \ |
126 '*:package:_pkg5_pkgs_a' |
138 '*:package:_pkg5_pkgs_a' |
127 ;; |
139 ;; |
128 |
140 |
130 _arguments -A "-*" \ |
142 _arguments -A "-*" \ |
131 '-n[Dry run]' \ |
143 '-n[Dry run]' \ |
132 '-q[Quiet]' \ |
144 '-q[Quiet]' \ |
133 '-r[Recursively uninstall dependencies]' \ |
145 '-r[Recursively uninstall dependencies]' \ |
134 '-v[Verbose]' \ |
146 '-v[Verbose]' \ |
|
147 "(--require-new-be)--deny-new-be[Fail the operation if a new BE would be required]" \ |
|
148 "(--deny-new-be)--require-new-be[Force a new BE to be created]" \ |
|
149 "--be-name[Specify a BE name]:BE name: " \ |
|
150 "--no-index[Don't reindex search database]" \ |
|
151 '*:package:_pkg5_pkgs' |
|
152 ;; |
|
153 |
|
154 ("update") |
|
155 _arguments -A "-*" \ |
|
156 "-f[Don't check for pkg(5) updates]" \ |
|
157 '-n[Dry run]' \ |
|
158 '-q[Quiet]' \ |
|
159 '-v[Verbose]' \ |
|
160 '-g[Specify additional source of packages]:source:_path_files -/' \ |
|
161 "--accept[Accept all licenses]" \ |
|
162 "--licenses[Display all licenses]" \ |
|
163 "(--require-new-be)--deny-new-be[Fail the operation if a new BE would be required]" \ |
|
164 "(--deny-new-be)--require-new-be[Force a new BE to be created]" \ |
|
165 '--be-name[Specify a BE name]:name:' \ |
|
166 "--reject[Specify an FMRI to exclude from the result]:fmri:_pkg5_pkgs" \ |
|
167 "--no-refresh[Don't refresh catalogs]" \ |
135 "--no-index[Don't reindex search database]" \ |
168 "--no-index[Don't reindex search database]" \ |
136 '*:package:_pkg5_pkgs' |
169 '*:package:_pkg5_pkgs' |
137 ;; |
170 ;; |
138 |
171 |
139 ("list") |
172 ("list") |
140 _arguments -A "-*" \ |
173 _arguments -A "-*" \ |
141 '-H[Omit headers]' \ |
174 '-H[Omit headers]' \ |
142 '-a[Show not-installed packages]' \ |
175 '-a[Show not-installed packages]' \ |
143 '-f[Show all versions]' \ |
176 '-f[Show all versions]' \ |
|
177 '-g[Specify additional source of packages]:source:_path_files -/' \ |
144 '-n[Show newest versions]' \ |
178 '-n[Show newest versions]' \ |
145 '-s[Show summaries]' \ |
179 '-s[Show summaries]' \ |
146 '-u[Show upgradable versions]' \ |
180 '-u[Show upgradable versions]' \ |
147 '-v[Show verbose pkg: FMRIs]' \ |
181 '-v[Show verbose pkg: FMRIs]' \ |
148 "--no-refresh[Don't refresh catalogs]" \ |
182 "--no-refresh[Don't refresh catalogs]" \ |
149 '*:package:_pkg5_pkgs_a' |
183 '*:package:_pkg5_pkgs_a' |
150 ;; |
184 ;; |
151 |
185 |
152 ("image-update") |
|
153 _arguments -A "-*" \ |
|
154 "-f[Don't check for pkg(5) updates]" \ |
|
155 '-n[Dry run]' \ |
|
156 '-q[Quiet]' \ |
|
157 '-v[Verbose]' \ |
|
158 '--be-name[Set new boot environment name]:name:' \ |
|
159 "--no-refresh[Don't refresh catalogs]" \ |
|
160 "--no-index[Don't reindex search database]" |
|
161 ;; |
|
162 |
|
163 ("refresh") |
186 ("refresh") |
164 _arguments -A "-*" \ |
187 _arguments -A "-*" \ |
165 "--full[Full refresh]" \ |
188 "--full[Full refresh]" \ |
166 '*:publisher:_pkg5_pubs' |
189 '*:publisher:_pkg5_pubs' |
167 ;; |
190 ;; |
195 '*:package:_pkg5_pkgs' |
218 '*:package:_pkg5_pkgs' |
196 ;; |
219 ;; |
197 |
220 |
198 ("fix") |
221 ("fix") |
199 _arguments -A "-*" \ |
222 _arguments -A "-*" \ |
200 '--accept[Force acceptance of license(s)]' \ |
223 '--accept[Accept all licenses]' \ |
201 '--licenses[Display license text(s)]' \ |
224 '--licenses[Display all licenses]' \ |
202 '*:package:_pkg5_pkgs' |
225 '*:package:_pkg5_pkgs' |
|
226 ;; |
|
227 |
|
228 ("revert") |
|
229 _arguments -A "-*" \ |
|
230 '-n[Dry run]' \ |
|
231 '-v[Verbose]' \ |
|
232 "(--require-new-be)--deny-new-be[Fail the operation if a new BE would be required]" \ |
|
233 "(--deny-new-be)--require-new-be[Force a new BE to be created]" \ |
|
234 '--tagged[Revert all tagged files]:tag:' \ |
|
235 '--be-name[Specify a BE name]:name:' \ |
|
236 "--no-refresh[Don't refresh catalogs]" \ |
|
237 "--no-index[Don't reindex search database]" \ |
|
238 '*:file:_path_files' |
203 ;; |
239 ;; |
204 |
240 |
205 ("contents") |
241 ("contents") |
206 _arguments -A "-*" \ |
242 _arguments -A "-*" \ |
207 '-H[Omit headers]' \ |
243 '-H[Omit headers]' \ |
233 ("change-variant") |
269 ("change-variant") |
234 _arguments -A "-*" \ |
270 _arguments -A "-*" \ |
235 '-n[Dry run]' \ |
271 '-n[Dry run]' \ |
236 '-q[Quiet'] \ |
272 '-q[Quiet'] \ |
237 '-v[Verbose'] \ |
273 '-v[Verbose'] \ |
238 '--be-name[Set new boot environment name]:name:' \ |
274 '-g[Specify additional source of packages]:source:_path_files -/' \ |
|
275 '--accept[Accept all licenses]' \ |
|
276 '--licenses[Display all licenses]' \ |
|
277 "(--require-new-be)--deny-new-be[Fail the operation if a new BE would be required]" \ |
|
278 "(--deny-new-be)--require-new-be[Force a new BE to be created]" \ |
|
279 '--be-name[Specify a BE name]:name:' \ |
239 "*:variant:_values -s , 'variant' $(pkg -R $pkg5_root variant -H | awk '{print $1}')" \ |
280 "*:variant:_values -s , 'variant' $(pkg -R $pkg5_root variant -H | awk '{print $1}')" \ |
240 ;; |
281 ;; |
241 |
282 |
242 ("change-facet") |
283 ("change-facet") |
243 _arguments -A "-*" \ |
284 _arguments -A "-*" \ |
244 '-n[Dry run]' \ |
285 '-n[Dry run]' \ |
245 '-q[Quiet'] \ |
286 '-q[Quiet'] \ |
246 '-v[Verbose'] \ |
287 '-v[Verbose'] \ |
247 '--be-name[Set new boot environment name]:name:' \ |
288 '-g[Specify additional source of packages]:source:_path_files -/' \ |
|
289 '--accept[Accept all licenses]' \ |
|
290 '--licenses[Display all licenses]' \ |
|
291 "(--require-new-be)--deny-new-be[Fail the operation if a new BE would be required]" \ |
|
292 "(--deny-new-be)--require-new-be[Force a new BE to be created]" \ |
|
293 '--be-name[Specify a BE name]:name:' \ |
248 "*:facet:_values -s , 'facet' $(pkg -R $pkg5_root facet -H | awk '{print $1}')" \ |
294 "*:facet:_values -s , 'facet' $(pkg -R $pkg5_root facet -H | awk '{print $1}')" \ |
249 ;; |
295 ;; |
250 |
296 |
251 ("variant") |
297 ("variant") |
252 _arguments -A "-*" \ |
298 _arguments -A "-*" \ |
308 '-n[Display only enabled publishers]' \ |
376 '-n[Display only enabled publishers]' \ |
309 '*:publisher:_pkg5_pubs' |
377 '*:publisher:_pkg5_pubs' |
310 ;; |
378 ;; |
311 |
379 |
312 ("history") |
380 ("history") |
313 _arguments -A "-*" \ |
381 local -a hist_columns |
314 '-H[Omit headers]' \ |
382 hist_columns=( |
315 '-l[Long history]' |
383 "be" "be_uuid" "client" "client_ver" "command" "finish" |
|
384 "id" "new_be" "new_be_uuid" "operation" "outcome" |
|
385 "reason" "snapshot" "start" "time" "user" |
|
386 ) |
|
387 _arguments -A "-*" \ |
|
388 '-H[Omit headers]' \ |
|
389 '-l[Long history]' \ |
|
390 '-n[Last n records]:number:' \ |
|
391 '-o[Column]:number:_values -s , "column" $hist_columns' \ |
|
392 '-t[Time range]' |
316 ;; |
393 ;; |
317 |
394 |
318 (*) |
395 (*) |
319 _message "unknown pkg subcommand: $service" ;; |
396 _message "unknown pkg subcommand: $service" ;; |
320 |
397 |