Magellan Linux

Diff of /branches/R11-unstable/include/mtools.sminc

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

trunk/core/include/mtools.sminc revision 2032 by niro, Fri Jun 12 11:01:39 2009 UTC trunk/include/mtools.sminc revision 12653 by niro, Tue Jun 26 15:38:25 2012 UTC
# Line 5  Line 5 
5  # this will provide the service management functions  # this will provide the service management functions
6  INHERITS="${INHERITS} mtools"  INHERITS="${INHERITS} mtools"
7    
8    # get the pname right with splitpackages
9    mpname()
10    {
11     local pname="${PNAME}"
12     [[ ! -z ${SPLIT_PACKAGE_BASE} ]] && pname="${SPLIT_PACKAGE_BASE}"
13    
14     echo "${pname}"
15    }
16    
17  # installs initscripts  # installs initscripts
18  # minstallrc /path/to/rc-script {destfilename}  # minstallrc /path/to/rc-script {destfilename}
19  minstallrc()  minstallrc()
# Line 17  minstallrc() Line 26  minstallrc()
26   # if no fullpath given use file from sourcedir   # if no fullpath given use file from sourcedir
27   if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]   if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
28   then   then
29   file="${SOURCEDIR}/${PNAME}/$1"   file="${SOURCEDIR}/$(mpname)/$1"
30   else   else
31   file="$1"   file="$1"
32   fi   fi
# Line 48  minstallenv() Line 57  minstallenv()
57   # if no fullpath given use file from sourcedir   # if no fullpath given use file from sourcedir
58   if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]   if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
59   then   then
60   file="${SOURCEDIR}/${PNAME}/$1"   file="${SOURCEDIR}/$(mpname)/$1"
61   else   else
62   file="$1"   file="$1"
63   fi   fi
# Line 79  minstallconf() Line 88  minstallconf()
88   # if no fullpath given use file from sourcedir   # if no fullpath given use file from sourcedir
89   if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]   if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
90   then   then
91   file="${SOURCEDIR}/${PNAME}/$1"   file="${SOURCEDIR}/$(mpname)/$1"
92   else   else
93   file="$1"   file="$1"
94   fi   fi
# Line 111  minstalletc() Line 120  minstalletc()
120   # if no fullpath given use file from sourcedir   # if no fullpath given use file from sourcedir
121   if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]   if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
122   then   then
123   file="${SOURCEDIR}/${PNAME}/$1"   file="${SOURCEDIR}/$(mpname)/$1"
124   else   else
125   file="$1"   file="$1"
126   fi   fi
# Line 147  minstalludevrule() Line 156  minstalludevrule()
156   # if no fullpath given use file from sourcedir   # if no fullpath given use file from sourcedir
157   if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]   if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
158   then   then
159   file="${SOURCEDIR}/${PNAME}/$1"   file="${SOURCEDIR}/$(mpname)/$1"
160   else   else
161   file="$1"   file="$1"
162   fi   fi
# Line 160  minstalludevrule() Line 169  minstalludevrule()
169   fi   fi
170    
171   # needed directory   # needed directory
172   install -d ${BINDIR}/etc/udev/rules.d || die   install -d ${BINDIR}/lib/udev/rules.d || die
173    
174   # install our udev rule   # install our udev rule
175   install -v -m 0644 -o root -g root ${file} ${BINDIR}/etc/udev/rules.d/${udevrule} || die   install -v -m 0644 -o root -g root ${file} ${BINDIR}/lib/udev/rules.d/${udevrule} || die
176  }  }
177    
178  minstalludevhelper()  minstalludevhelper()
# Line 176  minstalludevhelper() Line 185  minstalludevhelper()
185   # if no fullpath given use file from sourcedir   # if no fullpath given use file from sourcedir
186   if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]   if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
187   then   then
188   file="${SOURCEDIR}/${PNAME}/$1"   file="${SOURCEDIR}/$(mpname)/$1"
189   else   else
190   file="$1"   file="$1"
191   fi   fi
# Line 195  minstalludevhelper() Line 204  minstalludevhelper()
204   install -v -m 0755 -o root -g root ${file} ${BINDIR}/lib/udev/${udevhelper} || die   install -v -m 0755 -o root -g root ${file} ${BINDIR}/lib/udev/${udevhelper} || die
205  }  }
206    
207    minstallhalinformation()
208    {
209     local halrule
210     local file
211    
212     [[ -z "$1" ]] && die "No hal rule given"
213    
214     # if no fullpath given use file from sourcedir
215     if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
216     then
217     file="${SOURCEDIR}/$(mpname)/$1"
218     else
219     file="$1"
220     fi
221    
222     if [[ -n "$2" ]]
223     then
224     halrule="$2"
225     else
226     halrule="$(basename ${file})"
227     fi
228    
229     # needed directory
230     install -d ${BINDIR}/usr/share/hal/fdi/information/20thirdparty || die
231    
232     # install our udev rule
233     install -v -m 0644 -o root -g root ${file} ${BINDIR}/usr/share/hal/fdi/information/20thirdparty/${halrule} || die
234    }
235    
236    minstallhalpolicy()
237    {
238     local halrule
239     local file
240    
241     [[ -z "$1" ]] && die "No hal rule given"
242    
243     # if no fullpath given use file from sourcedir
244     if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
245     then
246     file="${SOURCEDIR}/$(mpname)/$1"
247     else
248     file="$1"
249     fi
250    
251     if [[ -n "$2" ]]
252     then
253     halrule="$2"
254     else
255     halrule="$(basename ${file})"
256     fi
257    
258     # needed directory
259     install -d ${BINDIR}/usr/share/hal/fdi/policy/20thirdparty || die
260    
261     # install our udev rule
262     install -v -m 0644 -o root -g root ${file} ${BINDIR}/usr/share/hal/fdi/policy/20thirdparty/${halrule} || die
263    }
264    
265    minstallhalpreprobe()
266    {
267     local halrule
268     local file
269    
270     [[ -z "$1" ]] && die "No hal rule given"
271    
272     # if no fullpath given use file from sourcedir
273     if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
274     then
275     file="${SOURCEDIR}/$(mpname)/$1"
276     else
277     file="$1"
278     fi
279    
280     if [[ -n "$2" ]]
281     then
282     halrule="$2"
283     else
284     halrule="$(basename ${file})"
285     fi
286    
287     # needed directory
288     install -d ${BINDIR}/usr/share/hal/fdi/preprobe/10osvendor || die
289    
290     # install our udev rule
291     install -v -m 0644 -o root -g root ${file} ${BINDIR}/usr/share/hal/fdi/preprobe/10osvendor/${halrule} || die
292    }
293    
294  # install man files to appropiate dirs  # install man files to appropiate dirs
295  # minstallman /path/to/manfile.foo  # minstallman /path/to/manfile.foo
296  minstallman()  minstallman()
# Line 278  minstallpixmap() Line 374  minstallpixmap()
374   # if no fullpath given use file from sourcedir   # if no fullpath given use file from sourcedir
375   if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]   if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
376   then   then
377   file="${SOURCEDIR}/${PNAME}/$1"   file="${SOURCEDIR}/$(mpname)/$1"
378   else   else
379   file="$1"   file="$1"
380   fi   fi
# Line 316  minstallpam() Line 412  minstallpam()
412   # if no fullpath given use file from sourcedir   # if no fullpath given use file from sourcedir
413   if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]   if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
414   then   then
415   file="${SOURCEDIR}/${PNAME}/$1"   file="${SOURCEDIR}/$(mpname)/$1"
416   else   else
417   file="$1"   file="$1"
418   fi   fi
# Line 351  minstallcron() Line 447  minstallcron()
447   # if no fullpath given use file from sourcedir   # if no fullpath given use file from sourcedir
448   if [[ -z $(dirname $2) ]] || [[ $(dirname $2) = . ]]   if [[ -z $(dirname $2) ]] || [[ $(dirname $2) = . ]]
449   then   then
450   file="${SOURCEDIR}/${PNAME}/$2"   file="${SOURCEDIR}/$(mpname)/$2"
451   else   else
452   file="$2"   file="$2"
453   fi   fi
# Line 372  minstallcron() Line 468  minstallcron()
468    
469    
470  # installs logrotate configuration files  # installs logrotate configuration files
471  # minstallpam /path/to/logrotatefile {destfilename}  # minstalllog /path/to/logrotatefile {destfilename}
472  minstalllog()  minstalllog()
473  {  {
474   local logfile   local logfile
# Line 383  minstalllog() Line 479  minstalllog()
479   # if no fullpath given use file from sourcedir   # if no fullpath given use file from sourcedir
480   if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]   if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
481   then   then
482   file="${SOURCEDIR}/${PNAME}/$1"   file="${SOURCEDIR}/$(mpname)/$1"
483   else   else
484   file="$1"   file="$1"
485   fi   fi
# Line 430  minstallfile() Line 526  minstallfile()
526    
527   if [[ $1 = -s ]]   if [[ $1 = -s ]]
528   then   then
529   file="${SOURCEDIR}/${PNAME}/$2"   file="${SOURCEDIR}/$(mpname)/$2"
530   dest="$3"   dest="$3"
531   if [[ -z $3 ]]   if [[ -z $3 ]]
532   then   then
# Line 462  minstallexec() Line 558  minstallexec()
558    
559   if [[ $1 = -s ]]   if [[ $1 = -s ]]
560   then   then
561   file="${SOURCEDIR}/${PNAME}/$2"   file="${SOURCEDIR}/$(mpname)/$2"
562   dest="$3"   dest="$3"
563   if [[ -z $3 ]]   if [[ -z $3 ]]
564   then   then
# Line 489  minstalllib() Line 585  minstalllib()
585  {  {
586   local file   local file
587   local dest   local dest
588     local verbose="-v"
589    
590     # check for busybox as it doesn'tz support 'ln -v'
591     [[ $(readlink $(which ln)) = */busybox ]] && verbose=""
592    
593   [[ -z $1 ]] && die "No file given"   [[ -z $1 ]] && die "No file given"
594    
595   if [[ $1 = -s ]]   if [[ $1 = -s ]]
596   then   then
597   file="${SOURCEDIR}/${PNAME}/$2"   file="${SOURCEDIR}/$(mpname)/$2"
598   dest="$3"   dest="$3"
599   if [[ -z $3 ]]   if [[ -z $3 ]]
600   then   then
# Line 518  minstalllib() Line 618  minstalllib()
618   # 1. - library.so.1.0.0 -> library.so.1.0   # 1. - library.so.1.0.0 -> library.so.1.0
619   if [ "${file%.*}" != *.so ]   if [ "${file%.*}" != *.so ]
620   then   then
621   ln -v -snf $(basename ${file}) ${BINDIR}/${dest}/$(basename ${file%.*})   ln ${verbose} -snf $(basename ${file}) ${BINDIR}/${dest}/$(basename ${file%.*})
622   fi   fi
623   # 2. - library.so.1.0.0 -> library.so.1   # 2. - library.so.1.0.0 -> library.so.1
624   if [ "${file%.*.*}" != *.so ]   if [ "${file%.*.*}" != *.so ]
625   then   then
626   ln -v -snf $(basename ${file}) ${BINDIR}/${dest}/$(basename ${file%.*.*})   ln ${verbose} -snf $(basename ${file}) ${BINDIR}/${dest}/$(basename ${file%.*.*})
627     fi
628    }
629    
630    mcopy()
631    {
632     local source="$1"
633     local dest="$2"
634     local opts
635    
636     # recursive
637     if [[ $1 = -r ]] || [[ $1 = -R ]]
638     then
639     opts="-R"
640     source="$2"
641     dest="$3"
642     fi
643    
644     # recursive
645     if [[ $1 = -rf ]] || [[ $1 = -fr ]] || [[ $1 = -Rf ]] || [[ $1 = -fR ]]
646     then
647     opts="-R -f"
648     source="$2"
649     dest="$3"
650   fi   fi
651    
652     if [[ $1 = -a ]]
653     then
654     opts="-a"
655     source="$2"
656     dest="$3"
657     fi
658    
659     [[ -z ${source} ]] && die "No source given."
660     [[ -z ${dest} ]] && die "No dest given."
661    
662     cp -v ${opts} ${source} ${BINDIR}/${dest} || die
663  }  }
664    
665  # mark directoris undeletable  mdelete()
666    {
667     local dest="$1"
668     local opts
669    
670     # recursive
671     if [[ $1 = -r ]] || [[ $1 = -R ]]
672     then
673     opts="-r"
674     dest="$2"
675     fi
676    
677     # recursive
678     if [[ $1 = -rf ]] || [[ $1 = -fr ]] || [[ $1 = -Rf ]] || [[ $1 = -fR ]]
679     then
680     opts="-r -f"
681     dest="$2"
682     fi
683    
684     [[ -z ${dest} ]] && die "No dest given."
685     [[ -e ${BINDIR}/${dest} ]] && die "${BINDIR}/${dest} does not exist."
686    
687     rm -v ${opts} ${BINDIR}/${dest} || die
688    }
689    
690    mmove()
691    {
692     local source="$1"
693     local dest="$2"
694     local opts
695    
696     # force
697     if [[ $1 = -f ]]
698     then
699     opts="-f"
700     source="$2"
701     dest="$3"
702     fi
703    
704     [[ -z ${source} ]] && die "No source given."
705     [[ -z ${dest} ]] && die "No dest given."
706    
707     mv -v ${opts} ${source} ${BINDIR}/${dest} || die
708    }
709    
710    # mark directories undeletable
711  mkeepdir()  mkeepdir()
712  {  {
713   local keepdir   local keepdir
# Line 562  mchown() Line 742  mchown()
742   # recursive   # recursive
743   if [[ $1 = -r ]] || [[ $1 = -R ]]   if [[ $1 = -r ]] || [[ $1 = -R ]]
744   then   then
745   local recursive="--recursive"   local recursive="-R"
746   local owner="$2"   local owner="$2"
747   local path="$3"   local path="$3"
748   fi   fi
# Line 582  mchmod() Line 762  mchmod()
762   # recursive   # recursive
763   if [[ $1 = -r ]] || [[ $1 = -R ]]   if [[ $1 = -r ]] || [[ $1 = -R ]]
764   then   then
765   local recursive="--recursive"   local recursive="-R"
766   local posix="$2"   local posix="$2"
767   local path="$3"   local path="$3"
768   fi   fi
# Line 597  mlink() Line 777  mlink()
777  {  {
778   local symlink="$1"   local symlink="$1"
779   local pathto="$2"   local pathto="$2"
780     local verbose="-v"
781    
782     # check for busybox as it doesn'tz support 'ln -v'
783     [[ $(readlink $(which ln)) = */busybox ]] && verbose=""
784    
785   [[ -z ${symlink} ]] && die "No symlink given."   [[ -z ${symlink} ]] && die "No symlink given."
786   [[ -z ${pathto} ]] && die "No path given."   [[ -z ${pathto} ]] && die "No path given."
787    
788   ln -v -snf ${symlink} ${BINDIR}/${pathto} || die   ln ${verbose} -snf ${symlink} ${BINDIR}/${pathto} || die
789    }
790    
791    # installs systemd units
792    # minstallunit /path/to/unit-file {destfilename}
793    minstallunit()
794    {
795     local unit
796     local file
797     local prefix
798    
799     [[ -z "$1" ]] && die "No unit given"
800    
801     # get the right prefix for newer systemd
802     [[ -x /bin/systemctl ]] && prefix=""
803     [[ -x /usr/bin/systemctl ]] && prefix="/usr"
804    
805     # if no fullpath given use file from sourcedir
806     if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
807     then
808     file="${SOURCEDIR}/$(mpname)/$1"
809     else
810     file="$1"
811     fi
812    
813     if [[ -n "$2" ]]
814     then
815     unit="$2"
816     else
817     unit="$(basename ${file})"
818     fi
819    
820     # needed directory
821     install -d ${BINDIR}${prefix}/lib/systemd/system || die
822    
823     # install our initscript
824     install -v -m 0644 -o root -g root ${file} ${BINDIR}${prefix}/lib/systemd/system/${unit} || die
825    }
826    
827    # installs systemd tmp configs to /etc/tmpfiles.d
828    # minstalltmp /path/to/tmpdfile {destfilename}
829    minstalltmp()
830    {
831     local tmpdfile
832     local file
833    
834     [[ -z "$1" ]] && die "No tmpd file given"
835    
836     # if no fullpath given use file from sourcedir
837     if [[ -z $(dirname $1) ]] || [[ $(dirname $1) = . ]]
838     then
839     file="${SOURCEDIR}/$(mpname)/$1"
840     else
841     file="$1"
842     fi
843    
844     if [[ -n "$2" ]]
845     then
846     tmpdfile="$2"
847     else
848     tmpdfile="$(basename ${file})"
849     fi
850    
851     # needed directory
852     install -d ${BINDIR}/etc/tmpfiles.d || die
853    
854     # install our tmpdfile
855     install -v -m 0644 -o root -g root ${file} ${BINDIR}/etc/tmpfiles.d/${tmpdfile} || die
856    }
857    
858    mclearconfig()
859    {
860     local confdir
861     local prefix="${BINDIR}"
862     [[ -z ${MCONFIG} ]] && die "No \$MCONFIG given!"
863    
864     # no bindir prefix if requested
865     case $1 in
866     -b|--no-bindir) prefix="";;
867     esac
868    
869     confdir="$(dirname ${MCONFIG})"
870     if [[ ! -d ${prefix}/${confdir} ]]
871     then
872     install -d ${prefix}/${confdir} || die
873     fi
874     : > ${prefix}/${MCONFIG}
875    }
876    
877    maddconfig()
878    {
879     local argv="$1"
880     local confdir
881     local prefix="${BINDIR}"
882    
883     [[ -z ${MCONFIG} ]] && die "No \$MCONFIG given!"
884    
885     # no bindir prefix if requested
886     case $1 in
887     -b|--no-bindir) prefix=""; argv="$2" ;;
888     esac
889    
890     [[ -z ${argv} ]] && die "No  argument given!"
891    
892     confdir="$(dirname ${MCONFIG})"
893     if [[ ! -d ${prefix}/${confdir} ]]
894     then
895     install -d ${prefix}/${confdir} || die
896     fi
897     echo "${argv}" >> ${prefix}/${MCONFIG} || die
898  }  }

Legend:
Removed from v.2032  
changed lines
  Added in v.12653