Magellan Linux

Diff of /branches/mage-next/usr/lib/mage/mage4.sh

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

trunk/mage/usr/lib/mage/mage4.sh revision 2210 by niro, Mon Oct 14 13:13:46 2013 UTC branches/mage-next/usr/lib/mage/mage4.sh revision 2525 by niro, Wed Jan 29 10:42:21 2014 UTC
# Line 1  Line 1 
1  #!/bin/bash  #!/bin/bash
2  # Magellan Linux Installer (mage.sh)  # Magellan Linux Installer (mage.sh)
3  # $Header: /home/cvsd/magellan-cvs/magellan-src/mage/usr/lib/mage/mage4.sh,v 1.17 2008-06-16 09:29:57 niro Exp $  # $Id$
4    
5  # default die function  # default die function
6  die()  die()
7  {  {
8   echo -e ${COLRED}"Exited ${BASH_SOURCE} at line no ${BASH_LINENO}."${COLDEFAULT}   xtitleclean
9     mqueryfeature "debug" && echo -e ${COLRED}"Exited ${BASH_SOURCE} at line no ${BASH_LINENO}."${COLDEFAULT}
10   echo -e ${COLRED}"$@"${COLDEFAULT}   echo -e ${COLRED}"$@"${COLDEFAULT}
11   exit 1   exit 1
12  }  }
# Line 31  export LC_ALL=C Line 32  export LC_ALL=C
32  # sanity checks  # sanity checks
33  [ ! -e ${VIRTUALDB_FILE} ] && touch ${VIRTUALDB_FILE}  [ ! -e ${VIRTUALDB_FILE} ] && touch ${VIRTUALDB_FILE}
34    
35  if [ ! -e ${VIRTUALDB_DEFAULTS} ] && [[ $1 != update ]] && [[ $1 != update-tarball ]]  if [ ! -e ${VIRTUALDB_DEFAULTS} ] &&
36     [[ $1 != update ]] &&
37     [[ $1 != update-rsync ]] &&
38     [[ $1 != update-tarball ]]
39  then  then
40   echo   echo
41   echo "Please choose an profile from the mage tree."   echo "Please choose an profile from the mage tree."
# Line 59  print_usage() Line 63  print_usage()
63   echo "    install         - installs a package"   echo "    install         - installs a package"
64   echo "    srcinstall      - installs a package from source"   echo "    srcinstall      - installs a package from source"
65   echo "    uninstall       - removes a package"   echo "    uninstall       - removes a package"
66   echo "    update          - updates the mage-tree via rsync"   echo "    update          - updates the mage-tree via default sync method"
67     echo "    update-rsync    - updates the mage-tree via rsync"
68   echo "    update-tarball  - updates the mage-tree via a tarball"   echo "    update-tarball  - updates the mage-tree via a tarball"
69   echo "    uppretend       - pretend dependencies for a system upgrade"   echo "    uppretend       - pretend dependencies for a system upgrade"
70   echo "    upgrade         - runs a complete system upgrade"   echo "    upgrade         - runs a complete system upgrade"
71   echo "    srcuppretend    - pretend dependencies for a system upgrade from source"   echo "    srcuppretend    - pretend dependencies for a system upgrade from source"
72   echo "    srcupgrade      - runs a complete system upgrade from source"   echo "    srcupgrade      - runs a complete system upgrade from source"
73   echo "    pretend-build-prerequisites"   echo "    pretend-build-prerequisites - prints build prerequisites"
74   echo "    install-build-prerequisites"   echo "    install-build-prerequisites - install build prerequisites"
75     echo "    run-preinstall  - runs preinstall part of an installed package"
76     echo "    run-postinstall - runs postinstall part of an installed package"
77   echo "    search          - searches mage-tree for a package"   echo "    search          - searches mage-tree for a package"
78   echo "    clean           - removes *all* downloaded packages"   echo "    clean           - removes *all* downloaded packages"
79   echo "    unpack          - unpacks *all* needed package for 'foo'"   echo "    unpack          - unpacks *all* needed package for 'foo'"
# Line 105  if [[ ${METHOD} != upgrade ]] && Line 112  if [[ ${METHOD} != upgrade ]] &&
112   [[ ${METHOD} != uppretend ]] &&   [[ ${METHOD} != uppretend ]] &&
113   [[ ${METHOD} != srcuppretend ]] &&   [[ ${METHOD} != srcuppretend ]] &&
114   [[ ${METHOD} != update ]] &&   [[ ${METHOD} != update ]] &&
115     [[ ${METHOD} != update-rsync ]] &&
116   [[ ${METHOD} != update-tarball ]] &&   [[ ${METHOD} != update-tarball ]] &&
117   [[ ${METHOD} != clean ]] &&   [[ ${METHOD} != clean ]] &&
118   [[ ${METHOD} != version ]] &&   [[ ${METHOD} != version ]] &&
# Line 128  mage_setup || die "error in mage_setup() Line 136  mage_setup || die "error in mage_setup()
136  # load supported mage features  # load supported mage features
137  load_mage_features  load_mage_features
138    
139    # query debug mode
140    if mqueryfeature "debug"
141    then
142     depwalker_debug="--debug"
143    else
144     depwalker_debug=""
145    fi
146    
147  case ${METHOD} in  case ${METHOD} in
148   download)   download)
149     have_root_privileges || die "You must be root to run this operation."
150    
151   # first of all get the right pkg which going to be installed   # first of all get the right pkg which going to be installed
152   PCAT="$(pname2pcat ${MAGENAME})"   PCAT="$(pname2pcat ${MAGENAME})"
153    
# Line 154  case ${METHOD} in Line 172  case ${METHOD} in
172   --pcat ${PCAT} \   --pcat ${PCAT} \
173   --pname ${PNAME} \   --pname ${PNAME} \
174   --pver ${PVER} \   --pver ${PVER} \
175   --pbuild ${PBUILD})"   --pbuild ${PBUILD} \
176     ${depwalker_debug})"
177   fetch_packages ${ALLDEPS} || die "fetching packages"   fetch_packages ${ALLDEPS} || die "fetching packages"
178   md5sum_packages ${ALLDEPS} || die "md5 sum packages"   md5sum_packages ${ALLDEPS} || die "md5 sum packages"
179   ;;   ;;
180    
181   srcdownload)   srcdownload)
182     have_root_privileges || die "You must be root to run this operation."
183    
184   # first of all get the right pkg which going to be installed   # first of all get the right pkg which going to be installed
185   PCAT="$(pname2pcat ${MAGENAME})"   PCAT="$(pname2pcat ${MAGENAME})"
186    
# Line 184  case ${METHOD} in Line 205  case ${METHOD} in
205   --pcat ${PCAT} \   --pcat ${PCAT} \
206   --pname ${PNAME} \   --pname ${PNAME} \
207   --pver ${PVER} \   --pver ${PVER} \
208   --pbuild ${PBUILD})"   --pbuild ${PBUILD} \
209     ${depwalker_debug})"
210   fetch_packages ${ALLDEPS} || die "fetching packages"   fetch_packages ${ALLDEPS} || die "fetching packages"
211   ;;   ;;
212    
# Line 221  case ${METHOD} in Line 243  case ${METHOD} in
243   --pcat ${PCAT} \   --pcat ${PCAT} \
244   --pname ${PNAME} \   --pname ${PNAME} \
245   --pver ${PVER} \   --pver ${PVER} \
246   --pbuild ${PBUILD}   --pbuild ${PBUILD} \
247     ${depwalker_debug}
248   ;;   ;;
249    
250   install|install-build-prerequisites)   install|install-build-prerequisites)
# Line 259  case ${METHOD} in Line 282  case ${METHOD} in
282   --pcat ${PCAT} \   --pcat ${PCAT} \
283   --pname ${PNAME} \   --pname ${PNAME} \
284   --pver ${PVER} \   --pver ${PVER} \
285   --pbuild ${PBUILD})"   --pbuild ${PBUILD} \
286     ${depwalker_debug})"
287    
288   # first fetch all packages   # first fetch all packages
289   fetch_packages ${ALLDEPS} || die "fetching packages"   fetch_packages ${ALLDEPS} || die "fetching packages"
# Line 302  case ${METHOD} in Line 326  case ${METHOD} in
326   --pcat ${PCAT} \   --pcat ${PCAT} \
327   --pname ${PNAME} \   --pname ${PNAME} \
328   --pver ${PVER} \   --pver ${PVER} \
329   --pbuild ${PBUILD})"   --pbuild ${PBUILD} \
330     ${depwalker_debug})"
331    
332   install_packages --src-install ${ALLDEPS} || die "src-installing packages"   install_packages --src-install ${ALLDEPS} || die "src-installing packages"
333   ;;   ;;
# Line 318  case ${METHOD} in Line 343  case ${METHOD} in
343   uninstall_packages ${ALLDEPS}   uninstall_packages ${ALLDEPS}
344   ;;   ;;
345    
346     run-preinstall|run-postinstall)
347     have_root_privileges || die "You must be root to run this operation."
348    
349     ALLDEPS="$(get_uninstall_candidates --pname ${MAGENAME})"
350     if [ -z "${ALLDEPS}" ]
351     then
352     die "No package installed named '${MAGENAME}'."
353     fi
354     rerun_pkgfunctions --method "${METHOD//run-}" ${ALLDEPS}
355     ;;
356    
357   uppretend|srcuppretend)   uppretend|srcuppretend)
358   ${MLIBDIR}/depwalker.sh \   ${MLIBDIR}/depwalker.sh \
359   --method ${METHOD} \   --method ${METHOD} \
360   --pcat ${METHOD} \   --pcat ${METHOD} \
361   --pname ${METHOD} \   --pname ${METHOD} \
362   --pver ${METHOD} \   --pver ${METHOD} \
363   --pbuild ${METHOD}   --pbuild ${METHOD} \
364     ${depwalker_debug}
365   ;;   ;;
366    
367   upgrade)   upgrade)
# Line 337  case ${METHOD} in Line 374  case ${METHOD} in
374   --pcat ${METHOD} \   --pcat ${METHOD} \
375   --pname ${METHOD} \   --pname ${METHOD} \
376   --pver ${METHOD} \   --pver ${METHOD} \
377   --pbuild ${METHOD})"   --pbuild ${METHOD} \
378     ${depwalker_debug})"
379    
380   # first fetch all packages   # first fetch all packages
381   fetch_packages ${ALLDEPS} || die "fetching packages"   fetch_packages ${ALLDEPS} || die "fetching packages"
# Line 355  case ${METHOD} in Line 393  case ${METHOD} in
393   --pcat ${METHOD} \   --pcat ${METHOD} \
394   --pname ${METHOD} \   --pname ${METHOD} \
395   --pver ${METHOD} \   --pver ${METHOD} \
396   --pbuild ${METHOD})"   --pbuild ${METHOD} \
397     ${depwalker_debug})"
398    
399   install_packages --src-install ${ALLDEPS} || die "src-installing packages"   install_packages --src-install ${ALLDEPS} || die "src-installing packages"
400   ;;   ;;
# Line 391  case ${METHOD} in Line 430  case ${METHOD} in
430   --pcat ${PCAT} \   --pcat ${PCAT} \
431   --pname ${PNAME} \   --pname ${PNAME} \
432   --pver ${PVER} \   --pver ${PVER} \
433   --pbuild ${PBUILD})"   --pbuild ${PBUILD} \
434     ${depwalker_debug})"
435    
436   fetch_packages ${ALLDEPS} || die "fetching packages"   fetch_packages ${ALLDEPS} || die "fetching packages"
437   md5sum_packages ${ALLDEPS} || die "md5 sum packages"   md5sum_packages ${ALLDEPS} || die "md5 sum packages"
438   unpack_packages ${ALLDEPS} || die "unpacking packages"   unpack_packages ${ALLDEPS} || die "unpacking packages"
# Line 399  case ${METHOD} in Line 440  case ${METHOD} in
440    
441   update)   update)
442   have_root_privileges || die "You must be root to run this operation."   have_root_privileges || die "You must be root to run this operation."
443     # default to tarball
444     [[ -z ${MAGE_UPDATE_METHOD} ]] && MAGE_UPDATE_METHOD="tarball"
445     case ${MAGE_UPDATE_METHOD} in
446     rsync) syncmage ;;
447     tarball) syncmage_tarball ;;
448     *) die "Unknown MAGE_UPDATE_METHOD defined." ;;
449     esac
450     ;;
451    
452     update-rsync)
453     have_root_privileges || die "You must be root to run this operation."
454   syncmage   syncmage
455   ;;   ;;
456    

Legend:
Removed from v.2210  
changed lines
  Added in v.2525