diff options
author | m1kc (Max Musatov) | 2015-06-02 13:21:42 +0300 |
---|---|---|
committer | m1kc (Max Musatov) | 2015-07-06 16:39:42 +0300 |
commit | ff242422f9e1e44336a566c1be345b6573a61cbb (patch) | |
tree | fdb5e8c0dd8c74f32add1038068142f9b946772f | |
download | aur-ff242422f9e1e44336a566c1be345b6573a61cbb.tar.gz |
First commit. Also, I hope it's the last.
-rw-r--r-- | .SRCINFO | 20 | ||||
-rw-r--r-- | .gitignore | 9 | ||||
-rw-r--r-- | PKGBUILD | 64 | ||||
-rw-r--r-- | README.md | 3 | ||||
-rw-r--r-- | netatop-dkms.conf | 6 | ||||
-rw-r--r-- | netatop-dkms.install | 46 |
6 files changed, 148 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..93478ef4ac6a --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,20 @@ +pkgbase = netatop-dkms + pkgdesc = Atop network kernel module, enables network statistics in atop + pkgver = 0.5 + pkgrel = 1 + url = http://www.atoptool.nl/ + install = netatop-dkms.install + arch = x86_64 + arch = i386 + groups = modules + license = GPL + makedepends = linux-headers + depends = atop + conflicts = netatop + source = http://atoptool.nl/download/netatop-0.5.tar.gz + source = netatop-dkms.conf + sha256sums = cfac73cc346f949f1d31a63cf3c06b94e67fdaef9b14c7af4e7fd115a03f856a + sha256sums = 56e9094e396fcdabadde4db8a9f21945484e4db93359dc22f2fb76436b1b2ea9 + +pkgname = netatop-dkms + diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000000..a5ae4ace6c67 --- /dev/null +++ b/.gitignore @@ -0,0 +1,9 @@ +src/ +pkg/ +*.xz +*.gz + +# inspiration folders +broadcom-wl-dkms +netatop +virtualbox diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..ab470fd9a955 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,64 @@ +# Maintainer: m1kc <m1kc@yandex.ru> +# Contributor: Spider.007 <archPackage@spider007.net> +pkgname=netatop-dkms +_pkgname=netatop +pkgver=0.5 +pkgrel=1 +pkgdesc="Atop network kernel module, enables network statistics in atop" +url="http://www.atoptool.nl/" +groups=modules +license=('GPL') +install='netatop-dkms.install' +depends=('atop') +conflicts=('netatop') +makedepends=('linux-headers') +source=("http://atoptool.nl/download/netatop-${pkgver}.tar.gz" + "netatop-dkms.conf") +sha256sums=('cfac73cc346f949f1d31a63cf3c06b94e67fdaef9b14c7af4e7fd115a03f856a' + '56e9094e396fcdabadde4db8a9f21945484e4db93359dc22f2fb76436b1b2ea9') +arch=('x86_64' 'i386') + +build() { + cd $srcdir/$_pkgname-$pkgver + # build daemon, make sure that module can be built + make all + # remove these objects again, they'll be rebuilt by DKMS + find -name '*.o' -exec rm -v '{}' ';' + find -name '*.ko' -exec rm -v '{}' ';' +} + +package() { + cd $srcdir/$_pkgname-$pkgver + +# if [[ `uname -r` =~ ^([0-9]\.[0-9]+)\.[0-9]+-[0-9]+(-.*)$ ]] +# then +# install -Dm 0744 module/netatop.ko $pkgdir/usr/lib/modules/extramodules-${BASH_REMATCH[1]}${BASH_REMATCH[2]}/netatop.ko +# else +# echo "Could not parse version `uname -r`; please report" >&2 +# exit 1 +# fi + + # fix references + cd $srcdir/$_pkgname-$pkgver/module + sed -i 's|../netatop.h|netatop.h|g' netatop.c + sed -i 's|../netatopversion.h|netatopversion.h|g' netatop.c + # copy module sources + cd $srcdir/$_pkgname-$pkgver/module + mkdir -p ${pkgdir}/usr/src/${_pkgname}-${pkgver} + cp -RL * ${pkgdir}/usr/src/${_pkgname}-${pkgver} + # copy headers + cd $srcdir/$_pkgname-$pkgver + cp -L *.h ${pkgdir}/usr/src/${_pkgname}-${pkgver} + # copy dkms.conf + install -D -m 644 "${srcdir}/netatop-dkms.conf" "${pkgdir}/usr/src/${_pkgname}-${pkgver}/dkms.conf" + + # package remaining stuff + cd $srcdir/$_pkgname-$pkgver + install -D daemon/netatopd $pkgdir/usr/bin/netatopd + install -D man/netatop.4 $pkgdir/usr/share/man/man4/netatop.4 + install -D man/netatopd.8 $pkgdir/usr/share/man/man8/netatopd.8 + + # auto-load + mkdir -p $pkgdir/etc/modules-load.d + echo "netatop" > $pkgdir/etc/modules-load.d/netatop.conf +} diff --git a/README.md b/README.md new file mode 100644 index 000000000000..b5ec86eb57eb --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# netatop-dkms + +AUR package for the netatop kernel module with DKMS support. diff --git a/netatop-dkms.conf b/netatop-dkms.conf new file mode 100644 index 000000000000..79ee0d295765 --- /dev/null +++ b/netatop-dkms.conf @@ -0,0 +1,6 @@ +PACKAGE_NAME="netatop" +PACKAGE_VERSION="0.5" +BUILT_MODULE_NAME[0]="netatop" +DEST_MODULE_LOCATION[0]="/kernel/misc" +AUTOINSTALL="yes" + diff --git a/netatop-dkms.install b/netatop-dkms.install new file mode 100644 index 000000000000..e88bb1b0d3e9 --- /dev/null +++ b/netatop-dkms.install @@ -0,0 +1,46 @@ +#!/bin/bash + +post_install() { + dkms_install $1 +} + +pre_upgrade() { + dkms_remove $2 +} + +pre_remove() { + dkms_remove $1 +} + +post_upgrade() { + dkms_install $1 +} + +dkms_remove() { + local line=`dkms status -m netatop` + # in cases where the passed ${1%%-*} fails, use this as a fallback for detecting + # which version is installed: + # version=`dkms status netatop | tr -d ' \n' | awk -F ',' '{print $2}'` + if echo "$line" | grep -E 'added|built|installed'; then + dkms remove -m netatop -v ${1%%-*} --all + else + echo "No current dkms module found, skipping dkms remove" + fi +} + +dkms_install() { + echo ">>> DKMS: Module install" + + dkms install -m netatop -v ${1%%-*} + + echo '' + echo '' + +cat << EOF +It's recommended to execute the following commands to load the module: + + rmmod netatop + modprobe netatop + /usr/bin/depmod -a +EOF +} |