Magellan Linux

Diff of /trunk/mage/usr/lib/mage/mage4.sh

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

revision 226 by niro, Fri Sep 9 16:35:46 2005 UTC revision 230 by niro, Fri Sep 9 17:49:43 2005 UTC
# Line 1  Line 1 
1  #!/bin/sh  #!/bin/sh
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.1 2005-09-09 16:35:41 niro Exp $  # $Header: /home/cvsd/magellan-cvs/magellan-src/mage/usr/lib/mage/mage4.sh,v 1.2 2005-09-09 17:49:43 niro Exp $
4    
5  # default die function  # default die function
6  die()  die()
# Line 80  print_usage(){ Line 80  print_usage(){
80   echo "     srcinstall     - installs a package from source"   echo "     srcinstall     - installs a package from source"
81   echo "     uninstall      - removes a package"   echo "     uninstall      - removes a package"
82   echo "     update         - updates mage-tree"   echo "     update         - updates mage-tree"
83     echo "     uppretend      - pretend dependencies for a system upgrade"
84     echo "     upgrade        - runs a complete system upgrade"
85     echo "     srcuppretend   - pretend dependencies for a system upgrade from source"
86     echo "     srcupgrade     - runs a complete system upgrade from source"
87   echo "     search         - searches mage-tree for a package"   echo "     search         - searches mage-tree for a package"
88   echo "     clean          - removes *all* downloaded packages"   echo "     clean          - removes *all* downloaded packages"
89  # echo "     unpack         - unpacks a package"   echo "     unpack         - unpacks *all* needed package for 'foo'"
90   echo "     download       - downloads a package"   echo "     download       - downloads *all* needed packages for 'foo'"
91   echo "     version        - prints version info"   echo "     version        - prints version info"
92   echo   echo
93   echo "Other options:"   echo "Other options:"
# Line 114  METHOD="$1" Line 118  METHOD="$1"
118  # initial unversionized packagename, gets overridden later  # initial unversionized packagename, gets overridden later
119  MAGENAME="$2"  MAGENAME="$2"
120    
121  [[ -z ${METHOD} ]] || [[ -z ${MAGENAME} ]] && print_usage && exit 1  if [[ ${METHOD} != upgrade ]] && \
122     [[ ${METHOD} != srcupgrade ]] && \
123     [[ ${METHOD} != uppretend ]] && \
124     [[ ${METHOD} != srcuppretend ]]
125    then
126     [[ -z ${METHOD} ]] || [[ -z ${MAGENAME} ]] && print_usage && exit 1
127    fi
128    
129    
130  case ${METHOD} in  case ${METHOD} in
# Line 142  case ${METHOD} in Line 152  case ${METHOD} in
152   --pver ${PVER} \   --pver ${PVER} \
153   --pbuild ${PBUILD})"   --pbuild ${PBUILD})"
154   fetch_packages ${ALLDEPS} || die "fetching packages"   fetch_packages ${ALLDEPS} || die "fetching packages"
155     md5sum_packages ${ALLDEPS} || die "md5 sum packages"
156   ;;   ;;
157    
158   srcdownload)   srcdownload)
# Line 286  case ${METHOD} in Line 297  case ${METHOD} in
297   uninstall_packages ${ALLDEPS}   uninstall_packages ${ALLDEPS}
298   ;;   ;;
299    
300     uppretend|srcuppretend)
301     ${MLIBDIR}/depwalker.sh \
302     --method ${METHOD} \
303     --pcat ${METHOD} \
304     --pname ${METHOD} \
305     --pver ${METHOD} \
306     --pbuild ${METHOD}
307     ;;
308    
309     upgrade|srcupgrade)
310     # get all dependencies of *all* installed packages
311     # fake pcat,pname,pver,pbuild ...
312     ALLDEPS="$(${MLIBDIR}/depwalker.sh \
313     --method ${METHOD} \
314     --pcat ${METHOD} \
315     --pname ${METHOD} \
316     --pver ${METHOD} \
317     --pbuild ${METHOD})"
318    
319     echo "DEBUG: ${ALLDEPS}"
320     ;;
321   search)   search)
322   ${MLIBDIR}/pkgsearch.sh ${MAGENAME}   ${MLIBDIR}/pkgsearch.sh ${MAGENAME}
323   ;;   ;;
324    
325  # unpack)   unpack)
326  # build_unpackpkg   # first of all get the right pkg which going to be installed
327  # ;;   PCAT="$(pname2pcat ${MAGENAME})"
328    
329     # package does not exists
330     [ -z "${PCAT}" ] && die "Package '${MAGENAME}' does not exist."
331    
332     # source the highest magefile of this pkg
333     source $(get_highest_magefile ${PCAT} ${MAGENAME})
334    
335     # convert PKGNAME to PNAME/PVER/PBUILD
336     # we're working *only* with these three vars from here on
337     PNAME="$(pkgname2pname ${PKGNAME})"
338     PVER="$(pkgname2pver ${PKGNAME})"
339     PBUILD="$(pkgname2pbuild ${PKGNAME})"
340    
341     # get all dependencies of this package
342     ALLDEPS="$(${MLIBDIR}/depwalker.sh \
343     --method install \
344     --pcat ${PCAT} \
345     --pname ${PNAME} \
346     --pver ${PVER} \
347     --pbuild ${PBUILD})"
348     fetch_packages ${ALLDEPS} || die "fetching packages"
349     md5sum_packages ${ALLDEPS} || die "md5 sum packages"
350     unpack_packages ${ALLDEPS} || die "unpacking packages"
351     ;;
352    
353   update)   update)
354   syncmage   syncmage

Legend:
Removed from v.226  
changed lines
  Added in v.230