wok-current rev 3679
Fix: ocsinventory-agent. Add Tazpkg.pm. Fix filesystem reports.
author | Eric Joseph-Alexandre <erjo@slitaz.org> |
---|---|
date | Sun Jul 12 23:18:03 2009 +0200 (2009-07-12) |
parents | 91491c1bd7b6 |
children | 894c779750dc |
files | ocsinventory-agent/receipt ocsinventory-agent/stuff/Drives.pm.u ocsinventory-agent/stuff/Tazpkg.pm ocsinventory-agent/stuff/manifest.u |
line diff
1.1 --- a/ocsinventory-agent/receipt Sat Jul 11 17:13:21 2009 +0200 1.2 +++ b/ocsinventory-agent/receipt Sun Jul 12 23:18:03 2009 +0200 1.3 @@ -8,7 +8,7 @@ 1.4 SOURCE="OCSNG_UNIX_AGENT" 1.5 TARBALL="$SOURCE-$VERSION.tar.gz" 1.6 DEPENDS="perl perl-lwp-useragent perl-uri-url dmidecode" 1.7 -SUGGESTED="nmap perl-ssleay" 1.8 +SUGGESTED="nmap perl-net-ssleay" 1.9 BUILD_DEPENDS="perl" 1.10 WEB_SITE="http://www.ocsinventory-ng.org/" 1.11 WGET_URL="http://downloads.sourceforge.net/sourceforge/ocsinventory/$TARBALL" 1.12 @@ -16,19 +16,24 @@ 1.13 # Rules to configure and make the package. 1.14 compile_rules() 1.15 { 1.16 - 1.17 src=$WOK/$PACKAGE/Ocsinventory-Agent-1.0.1 1.18 1.19 cp stuff/Slitaz.pm $src/lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB 1.20 + cp stuff/Tazpkg.pm $src/lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging 1.21 + 1.22 cd $src 1.23 1.24 # don't run postinstall script 1.25 rm -f run-postinst 1.26 - patch -p1 -i ../stuff/manifest.u || exit 1.27 + for p in ../stuff/*.u 1.28 + do 1.29 + [ -f done.$(basename $p) ] && continue 1.30 + patch -p1 -i $p || exit 1.31 + touch done.$(basename $p) 1.32 + done 1.33 perl Makefile.PL 1.34 rm -f run-postinst 1.35 - make && \ 1.36 - make DESTDIR=$PWD/_pkg install 1.37 + make && make DESTDIR=$PWD/_pkg install 1.38 } 1.39 1.40 # Rules to gen a SliTaz package suitable for Tazpkg. 1.41 @@ -45,11 +50,17 @@ 1.42 } 1.43 1.44 post_install(){ 1.45 - echo "postinstall commands" 1.46 + echo "Processing post-install commands..." 1.47 cat > $1/etc/ocsinventory-agent/ocsinventory-agent.cfg <<EOT 1.48 basevardir=/var/lib/ocsinventory-agent 1.49 server=http://$(hostname)/ocsinventory 1.50 EOT 1.51 + # We need fix missing status for dpkg 1.52 + # So we can Ocs agent can run Tazpkg.pm 1.53 + if [ ! -d $1/var/lib/dpkg ]; then 1.54 + install -o root -g root -m 0755 -d $1/var/lib/dpkg 1.55 + touch $1/var/lib/dpkg/status 1.56 + fi 1.57 } 1.58 1.59 clean_wok()
2.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 2.2 +++ b/ocsinventory-agent/stuff/Drives.pm.u Sun Jul 12 23:18:03 2009 +0200 2.3 @@ -0,0 +1,47 @@ 2.4 +--- Ocsinventory-Agent-1.0.1.ori/lib/Ocsinventory/Agent/Backend/OS/Linux/Drives.pm Fri Mar 6 19:02:57 2009 2.5 ++++ Ocsinventory-Agent-1.0.1/lib/Ocsinventory/Agent/Backend/OS/Linux/Drives.pm Sun Jul 12 22:29:32 2009 2.6 +@@ -1,9 +1,11 @@ 2.7 + package Ocsinventory::Agent::Backend::OS::Linux::Drives; 2.8 ++# Modified bye Erjo <erjo@slitaz.org> 2.9 ++# Busybox df applet as no -T -P options. 2.10 + 2.11 + use strict; 2.12 + sub check { 2.13 + return unless can_run ("df"); 2.14 +- my $df = `df -TP`; 2.15 ++ my $df = `df -k`; 2.16 + return 1 if $df =~ /\w+/; 2.17 + 0 2.18 + } 2.19 +@@ -19,14 +21,14 @@ 2.20 + my $volumn; 2.21 + 2.22 + 2.23 +- foreach(`df -TP`) { # TODO retrive error 2.24 +- if(/^(\S+)\s+(\S+)\s+(\S+)\s+(?:\S+)\s+(\S+)\s+(?:\S+)\s+(\S+)\n/){ 2.25 ++ foreach(`df -k`) { # TODO retrive error 2.26 ++ if(/^(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\n/){ 2.27 + $free = sprintf("%i",($4/1024)); 2.28 +- $filesystem = $2; 2.29 +- $total = sprintf("%i",($3/1024)); 2.30 +- $type = $1; 2.31 +- $volumn = $5; 2.32 +- 2.33 ++ $filesystem = $1; 2.34 ++ $total = sprintf("%i",($2/1024)); 2.35 ++ $type = `grep ^$1 /etc/mtab | cut -d " " -f 3`;; 2.36 ++ $volumn = $6; 2.37 ++ 2.38 + # no virtual FS 2.39 + next if ($type =~ /^(tmpfs|usbfs|proc|devpts|devshm|udev)$/); 2.40 + next if ($filesystem =~ /^(tmpfs)$/); 2.41 +@@ -36,8 +38,7 @@ 2.42 + FILESYSTEM => $filesystem, 2.43 + TOTAL => $total, 2.44 + TYPE => $type, 2.45 +- VOLUMN => 2.46 +- $volumn 2.47 ++ VOLUMN => $volumn 2.48 + }) 2.49 + } 2.50 + }
3.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 3.2 +++ b/ocsinventory-agent/stuff/Tazpkg.pm Sun Jul 12 23:18:03 2009 +0200 3.3 @@ -0,0 +1,24 @@ 3.4 +package Ocsinventory::Agent::Backend::OS::Generic::Packaging::Tazpkg; 3.5 + 3.6 +use strict; 3.7 +use warnings; 3.8 + 3.9 +sub check { can_run("tazpkg") } 3.10 + 3.11 +sub run { 3.12 + my $params = shift; 3.13 + my $inventory = $params->{inventory}; 3.14 + 3.15 +# use dpkg-query -W -f='${Package}|||${Version}\n' 3.16 + foreach (`tazpkg list `){ 3.17 + if (/^(\S+)\s+([0-9]+.*)\s+(.*)/) { 3.18 + $inventory->addSoftwares({ 3.19 + 'NAME' => $1, 3.20 + 'VERSION' => $2, 3.21 + }); 3.22 + } 3.23 + } 3.24 + 3.25 +} 3.26 + 3.27 +1;
4.1 --- a/ocsinventory-agent/stuff/manifest.u Sat Jul 11 17:13:21 2009 +0200 4.2 +++ b/ocsinventory-agent/stuff/manifest.u Sun Jul 12 23:18:03 2009 +0200 4.3 @@ -1,10 +1,10 @@ 4.4 --- Ocsinventory-Agent-1.0.1.ori/MANIFEST Sun Mar 22 20:19:28 2009 4.5 -+++ Ocsinventory-Agent-1.0.1/MANIFEST Thu Jul 9 16:27:30 2009 4.6 -@@ -82,6 +82,7 @@ 4.7 - lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/LSB.pm 4.8 - lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB.pm 4.9 - lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Debian.pm 4.10 -+lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Slitaz.pm 4.11 - lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Fedora.pm 4.12 - lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Gentoo.pm 4.13 - lib/Ocsinventory/Agent/Backend/OS/Linux/Distro/NonLSB/Knoppix.pm 4.14 ++++ Ocsinventory-Agent-1.0.1/MANIFEST Sun Jul 12 22:31:59 2009 4.15 +@@ -71,6 +71,7 @@ 4.16 + lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging.pm 4.17 + lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging/BSDpkg.pm 4.18 + lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging/Deb.pm 4.19 ++lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging/Tazpkg.pm 4.20 + lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging/Gentoo.pm 4.21 + lib/Ocsinventory/Agent/Backend/OS/Generic/Packaging/RPM.pm 4.22 + lib/Ocsinventory/Agent/Backend/OS/Generic/Screen.pm