Magellan Linux

Diff of /branches/mage-next/src/mage4.functions.sh

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

revision 391 by niro, Sun Aug 27 19:17:14 2006 UTC revision 943 by niro, Fri Nov 20 22:39:11 2009 UTC
# Line 1  Line 1 
1  #!/bin/bash  #!/bin/bash
2  # Magellan Linux Installer Functions (mage.functions.sh)  # Magellan Linux Installer Functions (mage.functions.sh)
3  # $Header: /home/cvsd/magellan-cvs/magellan-src/mage/usr/lib/mage/mage4.functions.sh,v 1.22 2006-08-27 19:17:14 niro Exp $  # $Header: /home/cvsd/magellan-cvs/magellan-src/mage/usr/lib/mage/mage4.functions.sh,v 1.38 2008-10-05 10:32:24 niro Exp $
4    
5  mage_setup()  mage_setup()
6  {  {
# Line 198  install_files() Line 198  install_files()
198   is_config_protected "${pathto}"   is_config_protected "${pathto}"
199   retval="$?"   retval="$?"
200    
201   # 0 - not protected        #   # 0 - not protected         #
202   # 1 - error                #   # 1 - error                 #
203   # 2 - protected            #   # 2 - protected             #
204   # 3 - protected but masked #   # 3 - protected but masked  #
205     # 4 - protected but ignored #
206    
207   case ${retval} in   case ${retval} in
208   # file is not protected - (over)write it   # file is not protected - (over)write it
# Line 252  install_files() Line 253  install_files()
253   (( MAGE_PROTECT_COUNTER++ ))   (( MAGE_PROTECT_COUNTER++ ))
254   export MAGE_PROTECT_COUNTER   export MAGE_PROTECT_COUNTER
255   ;;   ;;
256    
257     # file is protected but ignored, delete the update/do nothing
258     4)
259     if [[ ${VERBOSE} = on ]]
260     then
261     echo -en "${COLRED}"
262     echo -n "! ignr "
263     echo -en "${COLDEFAULT}"
264     echo " === FILE: ${MROOT}${pathto}"
265     fi
266     # simply do nothing here
267     ;;
268   esac   esac
269   done < ${BUILDDIR}/${pkgname}/.files   done < ${BUILDDIR}/${pkgname}/.files
270    
# Line 298  install_symlinks() Line 311  install_symlinks()
311    
312   ln -snf "${link}" "${MROOT}${pathto}"   ln -snf "${link}" "${MROOT}${pathto}"
313    
314   # fix mtime and db  # # fix mtime and db
315   fix_descriptor ${pkgname}/.symlinks \  # fix_descriptor ${pkgname}/.symlinks \
316   "${pathto}" \  # "${pathto}" \
317   "${posix}" \  # "${posix}" \
318   "${link}" \  # "${link}" \
319   "$(fix_mtime "${BUILDDIR}/${pkgname}"/.mtime \  # "$(fix_mtime "${BUILDDIR}/${pkgname}"/.mtime \
320   "${MROOT}${pathto}")"  # "${MROOT}${pathto}")"
321    
322   done < ${BUILDDIR}/${pkgname}/.symlinks   done < ${BUILDDIR}/${pkgname}/.symlinks
323    
324   # now copy the fixed file over the old one  # # now copy the fixed file over the old one
325   [ -f ${BUILDDIR}/${pkgname}/.symlinks_fixed ] && \  # [ -f ${BUILDDIR}/${pkgname}/.symlinks_fixed ] && \
326   cp -f ${BUILDDIR}/${pkgname}/.symlinks{_fixed,}  # cp -f ${BUILDDIR}/${pkgname}/.symlinks{_fixed,}
327    
328   # very important: unsetting the '§' fieldseperator   # very important: unsetting the '§' fieldseperator
329   IFS=$'\n'   IFS=$'\n'
# Line 809  remove_files() Line 822  remove_files()
822   is_config_protected "${pathto}"   is_config_protected "${pathto}"
823   retval="$?"   retval="$?"
824    
825   # 0 - not protected        #   # 0 - not protected         #
826   # 1 - error                #   # 1 - error                 #
827   # 2 - protected            #   # 2 - protected             #
828   # 3 - protected but masked #   # 3 - protected but masked  #
829     # 4 - protected but ignored #
830    
831   case ${retval} in   case ${retval} in
832   # file is not protected - delete it   # file is not protected - delete it
# Line 831  remove_files() Line 845  remove_files()
845   echo " === FILE: ${MROOT}${pathto}"   echo " === FILE: ${MROOT}${pathto}"
846   fi   fi
847   ;;   ;;
848    
849     # file is protected but ignored, delete the update/do nothing
850     4)
851     if [[ ${VERBOSE} = on ]]
852     then
853     echo -en "${COLRED}"
854     echo -n "! ignr "
855     echo -en "${COLDEFAULT}"
856     echo " === FILE: ${MROOT}${pathto}"
857     fi
858     # simply do nothing here
859     ;;
860   esac   esac
861   ;;   ;;
862   1)   1)
# Line 1106  fetch_packages() Line 1132  fetch_packages()
1132   local count_current   local count_current
1133   local count_total   local count_total
1134    
1135   [ -z "${MIRRORS}" ] && die "You have no mirrors defined. Please edit your /etc/mage.rc."   [ -z "${MIRRORS}" ] && die "You have no mirrors defined. Please edit your ${MAGERC}."
1136    
1137   # get count of total packages   # get count of total packages
1138   declare -i count_current=0   declare -i count_current=0
# Line 1181  syncmage() Line 1207  syncmage()
1207  {  {
1208   if [ -z "${RSYNC}" ]   if [ -z "${RSYNC}" ]
1209   then   then
1210   die "You have no rsync-mirrors defined. Please edit your /etc/mage.rc."   die "You have no rsync-mirrors defined. Please edit your ${MAGERC}."
1211   fi   fi
1212    
1213   local i   local i
# Line 1203  syncmage() Line 1229  syncmage()
1229   is_newer_mage_version_available   is_newer_mage_version_available
1230  }  }
1231    
1232    syncmage_tarball()
1233    {
1234     local latest_tarball
1235     local temp="$(mktemp -d)"
1236     local mirr mymirr
1237    
1238     # try to get the tarball marked as latest on the server
1239     latest_tarball="mage-latest.tar.bz2"
1240    
1241     for mirr in ${MIRRORS}
1242     do
1243     # path without distribution
1244     mymirr="${mirr%/*}"
1245    
1246     echo -ne "${COLBLUE} --- ${COLDEFAULT}"
1247     echo "fetching latest tarball from ${mymirr} ..."
1248    
1249     wget \
1250     --passive-ftp \
1251     --tries 3 \
1252     --continue \
1253     --progress bar \
1254     --directory-prefix=${temp} \
1255     ${mymirr}/rsync/tarballs/${latest_tarball}
1256     if [[ $? = 0 ]]
1257     then
1258     break
1259     else
1260     continue
1261     fi
1262     done
1263    
1264     if [[ -f ${temp}/${latest_tarball} ]]
1265     then
1266     if [[ -d ${MAGEDIR} ]]
1267     then
1268     echo -ne "${COLBLUE} --- ${COLDEFAULT}"
1269     echo "cleaning old mage-tree ${MAGEDIR}..."
1270     rm -rf ${MAGEDIR}
1271     fi
1272    
1273     echo -ne "${COLBLUE} --- ${COLDEFAULT}"
1274     echo "updating mage-tree from tarball ..."
1275     # unpack in dirname of MAGEDIR, as the tarball has already the mage
1276     tar xjmf ${temp}/${latest_tarball} -C ${MAGEDIR%/*} || die "Unpacking tarball"
1277    
1278     if [[ -d ${temp} ]]
1279     then
1280     echo -ne "${COLBLUE} --- ${COLDEFAULT}"
1281     echo "clenaing temp-files ..."
1282     rm -rf ${temp}
1283     fi
1284     else
1285     die "Could not fetch the latest tarball ... aborting"
1286     fi
1287    }
1288    
1289  cleanpkg()  cleanpkg()
1290  {  {
1291   if [ -d "${PKGDIR}" ]   if [ -d "${PKGDIR}" ]
# Line 1240  choppkgname() Line 1323  choppkgname()
1323   if [ -n "$(echo ${MAGENAME}|fgrep .mage)" ]   if [ -n "$(echo ${MAGENAME}|fgrep .mage)" ]
1324   then   then
1325   #cuts ARCH and PBUILD   #cuts ARCH and PBUILD
1326   #ARCH comes from /etc/mage.rc   #ARCH comes from ${MAGERC}
1327   MAGENAME=$(echo ${MAGENAME} |sed -e "s:-${ARCH}-r*.::g")   MAGENAME=$(echo ${MAGENAME} |sed -e "s:-${ARCH}-r*.::g")
1328    
1329   #cuts version number   #cuts version number
# Line 1315  get_highest_magefile() Line 1398  get_highest_magefile()
1398   local PNAME="$2"   local PNAME="$2"
1399   local magefile   local magefile
1400    
1401   for magefile in $(ls --format=single-column -v ${MAGEDIR}/${PCAT}/${PNAME}/*)   # do not list the content of a directory, only the name (-d)
1402     for magefile in $(ls --format=single-column -v -d ${MAGEDIR}/${PCAT}/${PNAME}/*)
1403   do   do
1404     [[ -z ${magefile} ]] && continue
1405   # we exclude subdirs (for stuff like a md5sum dir)   # we exclude subdirs (for stuff like a md5sum dir)
1406   [ -d ${magefile} ] && continue   [[ -d ${magefile} ]] && continue
1407   if check_stable_package ${magefile}   if check_stable_package ${magefile}
1408   then   then
1409   HIGHEST_MAGEFILE=${magefile}   HIGHEST_MAGEFILE=${magefile}
# Line 1363  get_highest_magefile() Line 1448  get_highest_magefile()
1448  #        1 - error                                #  #        1 - error                                #
1449  #        2 - protected                            #  #        2 - protected                            #
1450  #        3 - protected but masked                 #  #        3 - protected but masked                 #
1451    #        4 - protected but ignored                #
1452  #                                                 #  #                                                 #
1453  ###################################################  ###################################################
1454  is_config_protected()  is_config_protected()
# Line 1371  is_config_protected() Line 1457  is_config_protected()
1457   local TEST   local TEST
1458   local PROTECTED   local PROTECTED
1459   local IFS   local IFS
1460     local i
1461     local x
1462    
1463   EXPFILE="${MROOT}$1"   EXPFILE="${MROOT}$1"
1464    
1465   # file does not exist; it can be written   # file does not exist; it can be written
1466   [ ! -e ${EXPFILE} ] && return 0   [[ ! -e ${EXPFILE} ]] && return 0
1467    
1468   # to be safe; it may be '§'   # to be safe; it may be '§'
1469   IFS=' '   IFS=' '
1470    
1471   # check ob in config protect   # check if config protected
1472   for i in ${CONFIG_PROTECT}   for i in ${CONFIG_PROTECT}
1473   do   do
1474   # ersetzen von $i nur wenn am anfang der variable   # only replace $i in the beginning of the variable
1475   TEST="${EXPFILE/#${MROOT}${i}/Protected}"   TEST="${EXPFILE/#${MROOT}${i}/Protected}"
1476   if [ "${TEST}" != "${EXPFILE}" ]   if [[ ${TEST} != ${EXPFILE} ]]
1477   then   then
1478   # setzen das es protected ist   # file is config proteced
1479   PROTECTED=TRUE   PROTECTED=TRUE
1480    
1481   # check ob nicht doch maskiert   # check if not masked
1482   for x in ${CONFIG_PROTECT_MASK}   for x in ${CONFIG_PROTECT_MASK}
1483   do   do
1484   TEST="${EXPFILE/#${MROOT}${x}/Protect_Masked}"   TEST="${EXPFILE/#${MROOT}${x}/Protect_Masked}"
1485   if [ "${TEST}" != "${EXPFILE}" ]   if [[ ${TEST} != ${EXPFILE} ]]
1486   then   then
1487   PROTECTED=MASKED   PROTECTED=MASKED
1488   fi   fi
1489   done   done
1490    
1491     # check if not ignored
1492     for x in ${CONFIG_PROTECT_IGNORE}
1493     do
1494     TEST="${EXPFILE/#${MROOT}${x}/Protect_Ignored}"
1495     if [[ ${TEST} != ${EXPFILE} ]]
1496     then
1497     PROTECTED=IGNORED
1498     fi
1499     done
1500   fi   fi
1501   done   done
1502    
# Line 1413  is_config_protected() Line 1511  is_config_protected()
1511   #echo "I'm protected, but masked - delete me"   #echo "I'm protected, but masked - delete me"
1512   return 3   return 3
1513   ;;   ;;
1514     IGNORED)
1515     #echo "I'm protected, but ignored - keep me, del update"
1516     return 4
1517     ;;
1518   *)   *)
1519   #echo "delete me"   #echo "delete me"
1520   return 0   return 0
# Line 1430  is_config_protected() Line 1532  is_config_protected()
1532  ###################################################  ###################################################
1533  count_protected_files()  count_protected_files()
1534  {  {
1535   ${MLIBDIR}/writeprotected "$1"   local file="$1"
1536     local dirname="${file%/*}"
1537     local filename="${file##*/}"
1538     local count
1539     local output
1540     local i
1541    
1542     declare -i count=0
1543    
1544     # check if there are already protected files
1545     for oldpretected in $(find ${dirname} -iname "._cfg????_${filename}" |
1546     sed -e "s:\(^.*/\)\(._cfg*_\)\(/.*$\):\1\2\3\%\2\%\3:" |
1547     sort -t'%' -k3 -k2 | cut -f1 -d'%')
1548     do
1549     count=$(echo ${oldpretected} | cut -d_ -f2 | sed -e "s:cfg::")
1550     done
1551     (( count ++ ))
1552    
1553     # fill output up with zeros
1554     for (( i=${#count}; i < 4; i++ )); do output="${output}0"; done
1555     output="${output}${count}"
1556    
1557     echo "${output}"
1558  }  }
1559    
1560  # call with  # call with
# Line 1447  get_uninstall_candidates() Line 1571  get_uninstall_candidates()
1571   local list   local list
1572   local pcatdir   local pcatdir
1573   local protected   local protected
1574     local i
1575    
1576   # very basic getops   # very basic getops
1577   for i in $*   for i in $*
# Line 1708  minclude() Line 1833  minclude()
1833  {  {
1834   local i   local i
1835    
1836   if [ -n "$@" ]   if [[ -n $* ]]
1837   then   then
1838   for i in $@   for i in $*
1839   do   do
1840   [[ ${MAGEDEBUG} = on ]] && \   [[ ${MAGEDEBUG} = on ]] && \
1841   echo "--- Including ${MAGEDIR}/include/${i}.minc"   echo "--- Including ${MAGEDIR}/include/${i}.minc"
# Line 1724  sminclude() Line 1849  sminclude()
1849  {  {
1850   local i   local i
1851    
1852   if [ -n "$@" ]   if [[ -n $* ]]
1853   then   then
1854   for i in $@   for i in $*
1855   do   do
1856   echo "--- Including ${SMAGESCRIPTSDIR}/include/${i}.sminc"   echo "--- Including ${SMAGESCRIPTSDIR}/include/${i}.sminc"
1857   source ${SMAGESCRIPTSDIR}/include/${i}.sminc   source ${SMAGESCRIPTSDIR}/include/${i}.sminc
# Line 2035  get_value_from_magefile() Line 2160  get_value_from_magefile()
2160   local SDEPEND   local SDEPEND
2161   local PROVIDE   local PROVIDE
2162   local PKGTYPE   local PKGTYPE
2163     local MAGE_TARGETS
2164     local SPLIT_PACKAGE_BASE
2165   local preinstall   local preinstall
2166   local postinstall   local postinstall
2167   local preremove   local preremove
# Line 2081  mage_install() Line 2208  mage_install()
2208   local count_current   local count_current
2209   local magefile   local magefile
2210   local src_install   local src_install
2211     local i
2212    
2213   # very basic getops   # very basic getops
2214   for i in $*   for i in $*
# Line 2154  mage_install() Line 2282  mage_install()
2282   echo B:${pbuild}   echo B:${pbuild}
2283   fi   fi
2284    
2285   smage2file=${SMAGESCRIPTSDIR}/${pname}/${pname}-${pver}-${pbuild}.smage2   if [[ -n ${MAGE_TARGETS} ]]
2286     then
2287     # basic svn compat
2288     if [[ -d ${SMAGESCRIPTSDIR}/trunk ]]
2289     then
2290     for i in ${SMAGESCRIPTSDIR}/trunk/*/${pname/${MAGE_TARGETS}/}/${pname/${MAGE_TARGETS}/}-${pver}-${pbuild}.smage2
2291     do
2292     smage2file="${i}"
2293     done
2294     else
2295     smage2file=${SMAGESCRIPTSDIR}/${pname/${MAGE_TARGETS}/}/${pname/${MAGE_TARGETS}/}-${pver}-${pbuild}.smage2
2296     fi
2297    
2298     elif [[ -n ${SPLIT_PACKAGE_BASE} ]]
2299     then
2300     # basic svn compat
2301     if [[ -d ${SMAGESCRIPTSDIR}/trunk ]]
2302     then
2303     for i in ${SMAGESCRIPTSDIR}/trunk/*/${SPLIT_PACKAGE_BASE}/${SPLIT_PACKAGE_BASE}-${pver}-${pbuild}.smage2
2304     do
2305     smage2file="${i}"
2306     done
2307     else
2308     smage2file=${SMAGESCRIPTSDIR}/${SPLIT_PACKAGE_BASE}/${SPLIT_PACKAGE_BASE}-${pver}-${pbuild}.smage2
2309     fi
2310    
2311     else
2312     # basic svn compat
2313     if [[ -d ${SMAGESCRIPTSDIR}/trunk ]]
2314     then
2315     for i in ${SMAGESCRIPTSDIR}/trunk/*/${pname}/${pname}-${pver}-${pbuild}.smage2
2316     do
2317     smage2file="${i}"
2318     done
2319     else
2320     smage2file=${SMAGESCRIPTSDIR}/${pname}/${pname}-${pver}-${pbuild}.smage2
2321     fi
2322     fi
2323    
2324   if [ -f "${smage2file}" ]   if [ -f "${smage2file}" ]
2325   then   then
2326   echo -e " ${COLBLUE}***${COLDEFAULT} building package from source ... "   echo -e " ${COLBLUE}***${COLDEFAULT} building package from source ... "
# Line 2428  mage_uninstall() Line 2594  mage_uninstall()
2594   echo -ne "${COLBLUE} <<< ${COLDEFAULT}"   echo -ne "${COLBLUE} <<< ${COLDEFAULT}"
2595   echo -n "removing: "   echo -n "removing: "
2596   echo -ne "${COLBLUE}${pcat}/${COLDEFAULT}"   echo -ne "${COLBLUE}${pcat}/${COLDEFAULT}"
2597   echo -e "${COLGREEN}${pname}-${pver}-${pbuild}${COLDEFAULT}"   echo -e "${COLRED}${pname}-${pver}-${pbuild}${COLDEFAULT}"
2598    
2599   magefile="${INSTALLDB}/${pcat}/${pname}-${pver}-${pbuild}/${pname}-${pver}-${pbuild}.mage"   magefile="${MROOT}${INSTALLDB}/${pcat}/${pname}-${pver}-${pbuild}/${pname}-${pver}-${pbuild}.mage"
2600   source ${magefile}   source ${magefile}
2601    
2602   ## preremove scripts   ## preremove scripts
# Line 2528  pkgsearch() Line 2694  pkgsearch()
2694   local all_installed   local all_installed
2695   local ipver   local ipver
2696   local ipbuild   local ipbuild
2697     local latest_available
2698     local depsfull
2699     local sdepsfull
2700     local deps
2701     local sdeps
2702     local dep
2703     local sign
2704    
2705   # only names no versions   # only names no versions
2706   result="$(find ${MAGEDIR} -mindepth 2 -maxdepth 2 -type d -name '*'${string}'*'| sed '/profiles/d' | sed '/includes/d')"   result="$(find ${MAGEDIR} -mindepth 2 -maxdepth 2 -type d -name '*'${string}'*'| sed '/profiles/d' | sed '/includes/d')"
# Line 2545  pkgsearch() Line 2718  pkgsearch()
2718   # get highest version available   # get highest version available
2719   magefile=$(get_highest_magefile ${pcat} ${pname})   magefile=$(get_highest_magefile ${pcat} ${pname})
2720    
2721   # now get all needed infos to print a nice output   if [[ ! -z ${magefile} ]]
2722   pver="$(magename2pver ${magefile})"   then
2723   pbuild="$(magename2pbuild ${magefile})"   # now get all needed infos to print a nice output
2724   state="$(get_value_from_magefile STATE ${magefile})"   pver="$(magename2pver ${magefile})"
2725   description="$(get_value_from_magefile DESCRIPTION ${magefile})"   pbuild="$(magename2pbuild ${magefile})"
2726   homepage="$(get_value_from_magefile HOMEPAGE ${magefile})"   state="$(get_value_from_magefile STATE ${magefile})"
2727     description="$(get_value_from_magefile DESCRIPTION ${magefile})"
2728     homepage="$(get_value_from_magefile HOMEPAGE ${magefile})"
2729    
2730     # all installed
2731     for i in $(get_uninstall_candidates --pname ${pname} --pcat ${pcat})
2732     do
2733     ipver="$(magename2pver ${i})"
2734     ipbuild="$(magename2pbuild ${i})"
2735    
2736     if [[ -z ${all_installed} ]]
2737     then
2738     all_installed="${ipver}-${ipbuild}"
2739     else
2740     all_installed="${all_installed} ${ipver}-${ipbuild}"
2741     fi
2742     done
2743     [[ -z ${all_installed} ]] && all_installed="none"
2744    
2745     case ${state} in
2746     stable) state=${COLGREEN}"[s] ";;
2747     testing) state=${COLYELLOW}"[t] ";;
2748     unstable) state=${COLRED}"[u] ";;
2749     old) state=${COLGRAY}"[o] ";;
2750     esac
2751    
2752   # all installed   latest_available="${pver}-${pbuild}"
2753   for i in $(get_uninstall_candidates --pname ${pname} --pcat ${pcat})   else
2754   do   # package is masked
2755   ipver="$(magename2pver ${i})"   state="${COLRED}[m] "
2756   ipbuild="$(magename2pbuild ${i})"   latest_available="${COLRED}masked for this distribution.${COLDEFAULT}"
2757     fi
2758    
2759   if [[ -z ${all_installed} ]]   depsfull="$(get_value_from_magefile DEPEND ${magefile})"
2760   then   sdepsfull="$(get_value_from_magefile SDEPEND ${magefile})"
  all_installed="${ipver}-${ipbuild}"  
  else  
  all_installed="${all_installed} ${ipver}-${ipbuild}"  
  fi  
  done  
  [[ -z ${all_installed} ]] && all_installed="none"  
2761    
2762   case ${state} in   while read sign dep
2763   stable) state=${COLGREEN}"[s] ";;   do
2764   testing) state=${COLYELLOW}"[t] ";;   case ${dep} in
2765   unstable) state=${COLRED}"[u] ";;   "") continue;;
2766   old) state=${COLGRAY}"[o] ";;   esac
2767   esac  
2768     deps="${deps} $(basename ${dep%-*})"
2769     done << EOF
2770    ${depsfull}
2771    EOF
2772    
2773     while read sign dep
2774     do
2775     case ${dep} in
2776     "") continue;;
2777     esac
2778    
2779     sdeps="${sdeps} $(basename ${dep%-*})"
2780     done << EOF
2781    ${sdepsfull}
2782    EOF
2783    
2784   echo -e "${state}${pcat}/${pname}"${COLDEFAULT}   echo -e "${state}${pcat}/${pname}"${COLDEFAULT}
2785   echo "      Latest available:   ${pver}-${pbuild}"   echo -e "      Latest available:   ${latest_available}"
2786   echo "      Installed versions: ${all_installed}"   echo "      Installed versions: ${all_installed}"
2787   echo "      Description: ${description}"   echo "      Description: ${description}"
2788   echo "      Homepage: ${homepage}"   echo "      Homepage: ${homepage}"
2789     echo "      Depends: ${deps}"
2790     echo "      SDepends: ${sdeps}"
2791   echo   echo
2792    
2793   unset pcat   unset pcat
# Line 2592  pkgsearch() Line 2801  pkgsearch()
2801   unset all_installed   unset all_installed
2802   unset ipver   unset ipver
2803   unset ipbuild   unset ipbuild
2804     unset depsfull
2805     unset sdepsfull
2806     unset deps
2807     unset sdeps
2808     unset dep
2809     unset sign
2810   done   done
2811  }  }
2812    
# Line 2634  blacklisted() Line 2849  blacklisted()
2849   [[ ${USE_UNSTABLE} = true ]] && local MAGE_DISTRIBUTION=unstable   [[ ${USE_UNSTABLE} = true ]] && local MAGE_DISTRIBUTION=unstable
2850   [[ ${USE_TESTING} = true ]] && local MAGE_DISTRIBUTION=testing   [[ ${USE_TESTING} = true ]] && local MAGE_DISTRIBUTION=testing
2851    
2852   local EXCLUDED="${MROOT}/etc/mage-profile/package.blacklist-${ARCH}-${MAGE_DISTRIBUTION}"   # support both types for the moment
2853     if [[ -f /etc/mage-profile/package.blacklist-${ARCH}-${MAGE_DISTRIBUTION} ]]
2854     then
2855     local EXCLUDED="/etc/mage-profile/package.blacklist-${ARCH}-${MAGE_DISTRIBUTION}"
2856     else
2857     local EXCLUDED="/etc/mage-profile/package.blacklist-${ARCH}"
2858     fi
2859    
2860   # return 0 if the list not exist; nothin is masked   # return 0 if the list not exist; nothin is masked
2861   [[ ! -f ${EXCLUDED} ]] && return 0   [[ ! -f ${EXCLUDED} ]] && return 0

Legend:
Removed from v.391  
changed lines
  Added in v.943