Annotation of /trunk/mage/usr/lib/mage/mage3.sh
Parent Directory | Revision Log
Revision 33 -
(hide annotations)
(download)
(as text)
Thu Jan 6 02:57:12 2005 UTC (19 years, 5 months ago) by niro
File MIME type: application/x-sh
File size: 14100 byte(s)
Thu Jan 6 02:57:12 2005 UTC (19 years, 5 months ago) by niro
File MIME type: application/x-sh
File size: 14100 byte(s)
fixed version tags
1 | niro | 24 | #!/bin/sh |
2 | # Magellan Linux Installer (mage.sh) | ||
3 | niro | 33 | # version: 0.3.6-r9 |
4 | niro | 24 | |
5 | ##configuration -> mage.rc | ||
6 | #PKGDIR="/usr/src/packages" | ||
7 | PKGSUFFIX="mpk" | ||
8 | #BUILDDIR="/usr/src" | ||
9 | #INSTALLDB="/var/ALXInstDB" | ||
10 | #MAGEDIR="/usr/src/mage-0.2" | ||
11 | MAGENAME="$2" | ||
12 | #PKGNAME="`basename $2 .mage`" | ||
13 | MLIBDIR=/usr/lib/mage | ||
14 | niro | 33 | MAGEVERSION=0.3.6-r9 |
15 | niro | 24 | |
16 | ## nur für tests -> normalerweise in /etc/rc.d/init.d/functions | ||
17 | COLRED="\033[1;6m\033[31m" | ||
18 | COLGREEN="\033[1;6m\033[32m" | ||
19 | COLBLUE="\033[1;6m\033[34m" | ||
20 | COLDEFAULT="\033[0m" | ||
21 | |||
22 | |||
23 | ##functions | ||
24 | if [ -f /etc/mage.rc ] | ||
25 | then | ||
26 | source /etc/mage.rc | ||
27 | else | ||
28 | echo "Your /etc/mage.rc is missing. Aborting." | ||
29 | exit 1 | ||
30 | fi | ||
31 | |||
32 | #virtualdb locations | ||
33 | VIRTUALDB_DEFAULTS=/etc/mage-profile/virtuals.defaults | ||
34 | VIRTUALDB_FILE=${INSTALLDB}/virtuals | ||
35 | |||
36 | #fix small problems | ||
37 | [ ! -e ${VIRTUALDB_FILE} ] && touch ${VIRTUALDB_FILE} | ||
38 | |||
39 | if [ ! -e ${VIRTUALDB_DEFAULTS} -a "$1" != "update" ] | ||
40 | then | ||
41 | echo | ||
42 | echo "Please choose an profile from the mage tree." | ||
43 | echo "ln -snf ${MAGEDIR}/profiles/profilename /etc/mage-profile" | ||
44 | exit 1 | ||
45 | fi | ||
46 | |||
47 | |||
48 | #loads functions | ||
49 | source ${MLIBDIR}/mage3.functions.sh | ||
50 | |||
51 | #############DIALOGE############## | ||
52 | showversion() { | ||
53 | echo -en "Magellan Package Manager v${MAGEVERSION} " | ||
54 | echo -e "-- Niels Rogalla (niro@magellan-linux.de)" | ||
55 | } | ||
56 | |||
57 | print_usage(){ | ||
58 | showversion | ||
59 | echo -e "\nUsage: (basename $0) [option] pkgname ..." | ||
60 | echo "Options:" | ||
61 | echo -e "\tpretend - pretends dependencies of a package" | ||
62 | echo -e "\tsrcpretend - pretends dependencies of a package (build from source)" | ||
63 | echo -e "\tinstall - installs a package" | ||
64 | echo -e "\tsrcinstall - installs a package from source" | ||
65 | echo -e "\tuninstall - removes a package" | ||
66 | echo -e "\tupdate - updates mage-tree" | ||
67 | echo -e "\tsearch - searches mage-tree for a package" | ||
68 | echo -e "\tclean - removes *all* downloaded packages" | ||
69 | echo -e "\tunpack - unpacks a package" | ||
70 | echo -e "\tdownload - downloads a package" | ||
71 | echo -e "\tkeepfiles - prevents files from uninstalling" | ||
72 | echo -e "\tinject - inject a package to fake dependencies" | ||
73 | echo -e "\treminjected - removes *all* fake packages" | ||
74 | echo -e "\tversion - prints version info" | ||
75 | echo | ||
76 | echo -e "Other:" | ||
77 | echo -e "NOINSTALL=yes $(basename $0) srcinstall PACKAGE" | ||
78 | echo -e "Builds a Package with its dependencies, but won't install anything." | ||
79 | echo | ||
80 | echo -e "BOOTSTRAP=yes $(basename $0) srcinstall PACKAGE" | ||
81 | echo -e "Force an bootstrap build for a Package." | ||
82 | echo -e "Works only for packages wich take use of that (like glibc and binutils)," | ||
83 | echo -e "by any other this feature will simple be ignored." | ||
84 | echo | ||
85 | echo -e "USE_UNSTABLE=true $(basename $0) [src]install PACKAGE" | ||
86 | echo -e "Overrides stable packages; you can install packages that are marked unstable." | ||
87 | echo | ||
88 | } | ||
89 | |||
90 | run_etc_update() { | ||
91 | if [ ${PROTECT_COUNT} -eq 0 ] | ||
92 | then | ||
93 | return 0 | ||
94 | fi | ||
95 | |||
96 | echo | ||
97 | echo "Important:" | ||
98 | echo "${PROTECT_COUNT} protected file(s) were installed." | ||
99 | echo | ||
100 | echo "Please run 'etc-update' to update your configuration files." | ||
101 | echo | ||
102 | } | ||
103 | |||
104 | mage_install_virtual(){ | ||
105 | echo -e "\nInstallation of Package: ${COLGREEN}$PKGNAME${COLDEFAULT}\n" | ||
106 | |||
107 | export -f preinstall 2> /dev/null | ||
108 | if [ "$?" == "0" ] | ||
109 | then | ||
110 | echo -e "\nRunning Preinstall ... \n" | ||
111 | preinstall | ||
112 | unset preinstall | ||
113 | fi | ||
114 | |||
115 | #creates fake db entry | ||
116 | install_database_entry ${PKGNAME} ${PKGTYPE} | ||
117 | |||
118 | export -f postinstall 2> /dev/null | ||
119 | if [ "$?" == "0" ] | ||
120 | then | ||
121 | echo -e "\nRunning Postinstall ... \n" | ||
122 | postinstall | ||
123 | unset postinstall | ||
124 | fi | ||
125 | |||
126 | #check for virtuals and PROVIDE | ||
127 | # if so install it to virtualdb | ||
128 | register_virtual_pkg | ||
129 | |||
130 | ${MLIBDIR}/env-rebuild.sh | ||
131 | echo -e "\nPackage '${PKGNAME/-${ARCH}/}' sucessfully installed.\n" | ||
132 | |||
133 | #unsets virtual state of packages | ||
134 | unset PKGTYPE | ||
135 | return 0 | ||
136 | } | ||
137 | |||
138 | |||
139 | register_virtual_pkg(){ | ||
140 | #first check if this pkg is an virtual_pkg | ||
141 | #echo "DEB: PKGNAME=${PKGNAME}" | ||
142 | |||
143 | if [ -e ${BUILDDIR}/virtuals/virtuals.${PKGNAME/-${ARCH}/} ] | ||
144 | then | ||
145 | #add it | ||
146 | source ${BUILDDIR}/virtuals/virtuals.${PKGNAME/-${ARCH}/} | ||
147 | virtuals_add ${DB_VIRTUAL_NAME} ${DB_PKG_NAME} | ||
148 | |||
149 | #than clean up | ||
150 | unset DB_VIRTUAL_NAME DB_PKG_NAME | ||
151 | rm ${BUILDDIR}/virtuals/virtuals.${PKGNAME/-${ARCH}/} | ||
152 | fi | ||
153 | |||
154 | if [ -n "${PROVIDE}" ] | ||
155 | then | ||
156 | local my_pgk | ||
157 | #cut arch | ||
158 | my_pkg=${PKGNAME/-${ARCH}/} | ||
159 | #cut version & build | ||
160 | my_pkg=${my_pkg%-*-*} | ||
161 | |||
162 | virtuals_add ${PROVIDE} ${CATEGORIE}/${my_pkg} | ||
163 | |||
164 | unset PROVIDE | ||
165 | fi | ||
166 | } | ||
167 | |||
168 | unregister_virtual_pkg(){ | ||
169 | if [ -n "${PROVIDE}" ] | ||
170 | then | ||
171 | local my_pgk | ||
172 | niro | 30 | local my_cat |
173 | local directory | ||
174 | local x | ||
175 | |||
176 | niro | 24 | #cut arch |
177 | my_pkg=${PKGNAME/-${ARCH}/} | ||
178 | niro | 30 | |
179 | niro | 24 | #cut version & build |
180 | my_pkg=${my_pkg%-*-*} | ||
181 | niro | 30 | my_cat=$(dirname ${my_pkg}) |
182 | |||
183 | #check if this was the last one or if any other exists | ||
184 | for directory in ${INSTALLDB}/${my_cat}/* | ||
185 | do | ||
186 | # continue if not a directory, | ||
187 | # or the same PNAME-PVER-PBUILD | ||
188 | if [ ! -d "${directory}" ] | ||
189 | then | ||
190 | continue | ||
191 | fi | ||
192 | |||
193 | #check if $directory is the same as $my_pkg | ||
194 | x=$(basename ${directory}) | ||
195 | if [[ ${my_cat}/${x%-*-*} = ${my_pkg} ]] | ||
196 | then | ||
197 | # break here | ||
198 | echo "==== another version of ${my_pkg} exists, not deleting ${VIRTUAL_NAME} ..." | ||
199 | return 0 | ||
200 | fi | ||
201 | done | ||
202 | |||
203 | niro | 24 | #virtuals_del ${PROVIDE} ${CATEGORIE}/${my_pkg} |
204 | |||
205 | #my_pkg has already the categorie -> ex my_pkg=x11-base/xfree | ||
206 | virtuals_del ${PROVIDE} ${my_pkg} | ||
207 | |||
208 | unset PROVIDE | ||
209 | fi | ||
210 | } | ||
211 | |||
212 | mage_install_sources() { | ||
213 | |||
214 | #creates fake db entry | ||
215 | install_database_entry ${PKGNAME} ${PKGTYPE} | ||
216 | |||
217 | #check for virtuals and PROVIDE | ||
218 | # if so install it to virtualdb | ||
219 | register_virtual_pkg | ||
220 | |||
221 | echo | ||
222 | echo -e "This Package is a Source Package." | ||
223 | echo | ||
224 | echo -e "Only 'srcinstall' works with this type of packages" | ||
225 | echo -en "If you have done a srcinstall before, " | ||
226 | echo -e "you will find the files in /usr/src." | ||
227 | echo | ||
228 | |||
229 | #nice timer (4 seconds) | ||
230 | # local x | ||
231 | # declare -i x=4 | ||
232 | # echo -en "Continues in 4s ..." | ||
233 | # while [ ${x} -gt 0 ] | ||
234 | # do | ||
235 | # i=${x}+1 | ||
236 | # echo -en "\b\b\b\b\b\b${x}s ..." | ||
237 | # #beeper | ||
238 | # echo -en "\a" | ||
239 | # sleep 1 | ||
240 | # done | ||
241 | # echo | ||
242 | |||
243 | sleep 1 | ||
244 | xtitleclean | ||
245 | } | ||
246 | |||
247 | mage_install() { | ||
248 | local MAGEFILE | ||
249 | local PKGTARBALL | ||
250 | |||
251 | MAGEFILE=$1 | ||
252 | |||
253 | source ${MAGEFILE} | ||
254 | |||
255 | #abbruch wenn schon installiert | ||
256 | if [ -e ${INSTALLDB}/${PKGNAME/-${ARCH}/} ] | ||
257 | then | ||
258 | echo -en "\n${COLRED}Package '${PKGNAME/-${ARCH}/}'" \ | ||
259 | echo -e "already installed. Installation Aborted.${COLDEFAULT}\n" | ||
260 | exit 3 | ||
261 | fi | ||
262 | |||
263 | xtitle "[ Installing ${PKGNAME/-${ARCH}/} ]" | ||
264 | |||
265 | if [ "${PKGTYPE}" == "virtual" ] | ||
266 | then | ||
267 | mage_install_virtual | ||
268 | return 0 | ||
269 | fi | ||
270 | |||
271 | if [ "${PKGTYPE}" == "sources" ] | ||
272 | then | ||
273 | mage_install_sources | ||
274 | return 0 | ||
275 | fi | ||
276 | |||
277 | if [ ! -e ${PKGDIR}/${PKGNAME}.${PKGSUFFIX} ] | ||
278 | then | ||
279 | echo -en "\nPrefetching needed Packages for " | ||
280 | echo -e "${COLGREEN}${PKGNAME/-${ARCH}/}${COLDEFAULT}...\n" | ||
281 | getpackages | ||
282 | fi | ||
283 | |||
284 | echo -e "\nInstallation of Package: ${COLGREEN}${PKGNAME/-${ARCH}/}${COLDEFAULT}\n" | ||
285 | #( build_unpackpkg ) | echo -e "Unpacking Package ...\n" | ||
286 | |||
287 | echo -en "Unpacking Package ..." | ||
288 | build_unpackpkg | ||
289 | echo "done" | ||
290 | |||
291 | ##preinstall scripte | ||
292 | export -f preinstall 2> /dev/null | ||
293 | if [ "$?" == "0" ] | ||
294 | then | ||
295 | echo -e "\nRunning Preinstall ... \n" | ||
296 | preinstall | ||
297 | unset preinstall | ||
298 | fi | ||
299 | |||
300 | #install of package | ||
301 | if [ "$VERBOSE" == "off" ] | ||
302 | then | ||
303 | #spinner disabled | ||
304 | #touch /var/tmp/proz | ||
305 | #build_doinstall|spin_processbar | ||
306 | |||
307 | echo -en "Processing ... " | ||
308 | build_doinstall ${PKGNAME} | ||
309 | echo "done" | ||
310 | fi | ||
311 | |||
312 | if [ "$VERBOSE" == "on" ] | ||
313 | then | ||
314 | #build_doinstall | ||
315 | build_doinstall ${PKGNAME} | ||
316 | fi | ||
317 | |||
318 | #postinstall scripte | ||
319 | export -f postinstall 2> /dev/null | ||
320 | if [ "$?" == "0" ] | ||
321 | then | ||
322 | echo -e "\nRunning Postinstall ... \n" | ||
323 | postinstall | ||
324 | unset postinstall | ||
325 | fi | ||
326 | |||
327 | #install database entry | ||
328 | install_database_entry ${PKGNAME} | ||
329 | |||
330 | #cleanup | ||
331 | if [ -d ${BUILDDIR}/${PKGNAME} ] | ||
332 | then | ||
333 | rm -rf ${BUILDDIR}/${PKGNAME} | ||
334 | fi | ||
335 | |||
336 | |||
337 | #check for virtuals and PROVIDE | ||
338 | # if so install it to virtualdb | ||
339 | register_virtual_pkg | ||
340 | |||
341 | |||
342 | #update mtimes of packages and db_entries | ||
343 | update_mtime | ||
344 | |||
345 | #rebuilds toplevel info node | ||
346 | echo -en "\n>>>> Rebuilding top-level info node ... " | ||
347 | ${MLIBDIR}/mkinfodir /usr/share/info > /usr/share/info/dir \ | ||
348 | && echo "done" || echo "false" | ||
349 | |||
350 | #rebuilds the enviroment with the content of /etc/env.d | ||
351 | ${MLIBDIR}/env-rebuild.sh | ||
352 | |||
353 | xtitleclean | ||
354 | |||
355 | echo -e "\nPackage '${PKGNAME/-${ARCH}/}' sucessfully installed.\n" | ||
356 | } | ||
357 | |||
358 | mage_uninstall() { | ||
359 | # #installdbhome #packagedir #magefile | ||
360 | #source ${INSTALLDB}/$(basename ${MAGENAME} .mage)/$(basename ${MAGENAME}) | ||
361 | #source ${INSTALLDB}/${CATEGORIE}/$(basename ${MAGENAME} .mage)/$(basename ${MAGENAME}) | ||
362 | |||
363 | local UNINST_MAGEFILE CAT_PKGNAME | ||
364 | |||
365 | CAT_PKGNAME=$1 | ||
366 | |||
367 | #trim pkgname from CAT_PKGNAME to get magefile name | ||
368 | UNINST_MAGEFILE="$(echo ${CAT_PKGNAME}| cut -d / -f2).mage" | ||
369 | |||
370 | #then source it | ||
371 | source ${INSTALLDB}/${CAT_PKGNAME}/${UNINST_MAGEFILE} | ||
372 | |||
373 | #fix for mage-0.3.6-r5 | ||
374 | #PKGNAME=${PKGNAME/-${ARCH}/} | ||
375 | PKGNAME=${CAT_PKGNAME} | ||
376 | |||
377 | #if [ ! -e ${INSTALLDB}/${PKGNAME/-${ARCH}/} ] | ||
378 | if [ ! -e ${INSTALLDB}/${CAT_PKGNAME} ] | ||
379 | then | ||
380 | echo -e "\nPackage '${PKGNAME}' is not installed. Uninstallation Aborted.\n" | ||
381 | exit 3 | ||
382 | fi | ||
383 | |||
384 | echo -e "\nUninstall of Package:\t${COLRED}${PKGNAME}${COLDEFAULT}\n" | ||
385 | |||
386 | if [ -z "${MAGE_UNINSTALL_TIMEOUT}" ] | ||
387 | then | ||
388 | MAGE_UNINSTALL_TIMEOUT=5 | ||
389 | fi | ||
390 | |||
391 | for ((i=0; i < MAGE_UNINSTALL_TIMEOUT; i++)) | ||
392 | do | ||
393 | timeout=$(expr ${MAGE_UNINSTALL_TIMEOUT} - ${i}) | ||
394 | echo -e "Starting in ${COLRED} ${timeout}" \ | ||
395 | "${COLDEFAULT} seconds ... ( [CTRL+C] to abort )" | ||
396 | sleep 1 | ||
397 | #moves the cursor up | ||
398 | echo -en \\033[A | ||
399 | done | ||
400 | |||
401 | #moves the cursor up | ||
402 | echo -en \\033[A | ||
403 | #min. 30 spaces needed for clearing up the rest of the line | ||
404 | echo -e "\nUninstall ${COLRED}started${COLDEFAULT} ..." \ | ||
405 | " \n" | ||
406 | sleep 1 | ||
407 | |||
408 | |||
409 | ##preremove scripte | ||
410 | export -f preremove 2> /dev/null | ||
411 | if [ "$?" == "0" ] | ||
412 | then | ||
413 | echo -e "\nRunning Preremove ... \n" | ||
414 | preremove | ||
415 | unset preremove | ||
416 | fi | ||
417 | |||
418 | #runs uninstall | ||
419 | build_douninstall ${PKGNAME} | ||
420 | |||
421 | #postremove scripte | ||
422 | export -f postremove 2> /dev/null | ||
423 | if [ "$?" == "0" ] | ||
424 | then | ||
425 | echo -e "\nRunning Postremove ... \n" | ||
426 | postremove | ||
427 | unset postremove | ||
428 | fi | ||
429 | |||
430 | #remove database entry | ||
431 | remove_database_entry ${PKGNAME} | ||
432 | |||
433 | #check for PROVIDE | ||
434 | # if so uninstall it from virtualdb | ||
435 | unregister_virtual_pkg | ||
436 | |||
437 | #rebuilds toplevel info node | ||
438 | echo -en "\n>>>> Rebuilding top-level info node ... " | ||
439 | ${MLIBDIR}/mkinfodir /usr/share/info > /usr/share/info/dir \ | ||
440 | && echo "done" || echo "false" | ||
441 | |||
442 | #rebuilds the enviroment with the content of /etc/env.d | ||
443 | ${MLIBDIR}/env-rebuild.sh | ||
444 | |||
445 | echo -e "\nPackage '${PKGNAME}' sucessfully removed.\n" | ||
446 | } | ||
447 | |||
448 | |||
449 | case "$1" in | ||
450 | download) | ||
451 | choppkgname | ||
452 | getcategorie | ||
453 | get_highest_magefile | ||
454 | source ${MAGEFILE} | ||
455 | getpackages | ||
456 | ;; | ||
457 | |||
458 | pretend) | ||
459 | choppkgname | ||
460 | getcategorie | ||
461 | get_highest_magefile | ||
462 | ${MLIBDIR}/depwanderer.sh pretend ${MAGEFILE} | ||
463 | #abort already installed | ||
464 | if [ "$?" == "3" ] | ||
465 | then | ||
466 | echo -en "Package " | ||
467 | echo -en "${COLRED}$(basename ${MAGEFILE} .mage)${COLDEFAULT}" | ||
468 | echo -e " already installed." | ||
469 | fi | ||
470 | ;; | ||
471 | |||
472 | srcpretend) | ||
473 | choppkgname | ||
474 | getcategorie | ||
475 | get_highest_magefile | ||
476 | ${MLIBDIR}/depwanderer.sh srcpretend ${MAGEFILE} | ||
477 | #abort already installed | ||
478 | if [ "$?" == "3" ] | ||
479 | then | ||
480 | echo -en "Package " | ||
481 | echo -en "${COLRED}$(basename ${MAGEFILE} .mage)${COLDEFAULT}" | ||
482 | echo -e " already installed." | ||
483 | fi | ||
484 | ;; | ||
485 | |||
486 | install) | ||
487 | #counter for protected files | ||
488 | declare -i PROTECT_COUNT=0 | ||
489 | choppkgname | ||
490 | getcategorie | ||
491 | get_highest_magefile | ||
492 | ALLDEPS="$(/usr/lib/mage/depwanderer.sh install ${MAGEFILE})" | ||
493 | #abort already installed | ||
494 | if [ "$?" == "3" ] | ||
495 | then | ||
496 | echo -en "Package " | ||
497 | echo -en "${COLRED}$(basename ${MAGEFILE} .mage)${COLDEFAULT}" | ||
498 | echo -e " already installed." | ||
499 | echo -e "Installation aborted." | ||
500 | exit 0 | ||
501 | fi | ||
502 | for i in ${ALLDEPS} | ||
503 | do | ||
504 | #first unset all vars to be safe | ||
505 | unset PKGNAME | ||
506 | unset STATE | ||
507 | unset DESCRIPTION | ||
508 | unset HOMEPAGE | ||
509 | unset DEPEND | ||
510 | unset SDEPEND | ||
511 | unset PROVIDE | ||
512 | unset PKGTYPE | ||
513 | unset preinstall | ||
514 | unset postinstall | ||
515 | |||
516 | #than install | ||
517 | MY_CAT_FIX="$(dirname ${i})" | ||
518 | CATEGORIE="$(basename ${MY_CAT_FIX%/*})" | ||
519 | mage_install ${i} | ||
520 | done | ||
521 | run_etc_update | ||
522 | ;; | ||
523 | |||
524 | srcinstall) | ||
525 | #counter for protected files | ||
526 | declare -i PROTECT_COUNT=0 | ||
527 | choppkgname | ||
528 | getcategorie | ||
529 | get_highest_magefile | ||
530 | ALLDEPS="$(/usr/lib/mage/depwanderer.sh srcinstall ${MAGEFILE})" | ||
531 | #abort already installed | ||
532 | if [ "$?" == "3" ] | ||
533 | then | ||
534 | echo -en "Package " | ||
535 | echo -en "${COLRED}$(basename ${MAGEFILE} .mage)${COLDEFAULT}" | ||
536 | echo -e " already installed." | ||
537 | echo -e "Installation aborted." | ||
538 | exit 0 | ||
539 | fi | ||
540 | for i in ${ALLDEPS} | ||
541 | do | ||
542 | #first unset all vars to be safe | ||
543 | unset PKGNAME | ||
544 | unset STATE | ||
545 | unset DESCRIPTION | ||
546 | unset HOMEPAGE | ||
547 | unset DEPEND | ||
548 | unset SDEPEND | ||
549 | unset PROVIDE | ||
550 | unset PKGTYPE | ||
551 | unset preinstall | ||
552 | unset postinstall | ||
553 | |||
554 | #than srcinstall | ||
555 | MY_CAT_FIX="$(dirname ${i})" | ||
556 | CATEGORIE="$(basename ${MY_CAT_FIX%/*})" | ||
557 | #builds the package from source | ||
558 | ${MLIBDIR}/sourceinstall.sh ${i} || exit 1 | ||
559 | done | ||
560 | run_etc_update | ||
561 | ;; | ||
562 | |||
563 | uninstall) | ||
564 | RESULT=$(get_magefile_to_uninstall ${MAGENAME}) | ||
565 | #get_magefile_to_uninstall ${MAGENAME} | ||
566 | #echo $? | ||
567 | #read | ||
568 | case $? in | ||
569 | 0) | ||
570 | #MAGENAME=${RESULT} | ||
571 | #mage_uninstall | ||
572 | mage_uninstall ${RESULT} | ||
573 | ;; | ||
574 | 1) | ||
575 | echo "No package found named '${RESULT}'." | ||
576 | exit 1 | ||
577 | ;; | ||
578 | 2) | ||
579 | echo -e ${COLRED}"Warning: More than one package found ..."${COLDEFAULT} | ||
580 | echo | ||
581 | echo "Please select the package you want to uninstall:" | ||
582 | echo | ||
583 | declare -i i=0 | ||
584 | declare -i USERSEL=0 | ||
585 | for x in ${RESULT} | ||
586 | do | ||
587 | echo -e "\t${COLBLUE}[${i}] ${COLGREEN}$(basename ${x})${COLDEFAULT}" | ||
588 | SELECTION[${i}]=${x} | ||
589 | i=${i}+1 | ||
590 | done | ||
591 | echo | ||
592 | echo -n "Choose a number: " | ||
593 | read USERSEL | ||
594 | |||
595 | if [ ${USERSEL} -ge 0 -a ${USERSEL} -le ${i} ] | ||
596 | then | ||
597 | #the correct magefile | ||
598 | #MAGENAME="${SELECTION[${USERSEL}]}/$(basename ${SELECTION[${USERSEL}]}).mage" | ||
599 | MAGENAME="${SELECTION[${USERSEL}]}" | ||
600 | mage_uninstall ${MAGENAME} | ||
601 | else | ||
602 | echo "Wrong input. Uninstall abortet ..." | ||
603 | exit 1 | ||
604 | fi | ||
605 | #echo | ||
606 | #echo "Uninstallation Aborted." | ||
607 | #exit 1 | ||
608 | ;; | ||
609 | esac | ||
610 | ;; | ||
611 | |||
612 | search) | ||
613 | ${MLIBDIR}/pkgsearch.sh ${MAGENAME} | ||
614 | ;; | ||
615 | |||
616 | unpack) | ||
617 | build_unpackpkg | ||
618 | ;; | ||
619 | |||
620 | update) | ||
621 | syncmage | ||
622 | ;; | ||
623 | clean) | ||
624 | cleanpkg | ||
625 | ;; | ||
626 | keepfiles) | ||
627 | keepfiles "$2" "$3" | ||
628 | ;; | ||
629 | inject) | ||
630 | injectpkg "$2" | ||
631 | ;; | ||
632 | reminjected) | ||
633 | reminjected | ||
634 | ;; | ||
635 | version) | ||
636 | showversion | ||
637 | ;; | ||
638 | *) | ||
639 | print_usage | ||
640 | ;; | ||
641 | esac |
Properties
Name | Value |
---|---|
svn:executable | * |