From 8185891e28635bdb83fdf4ba4391030912dae596 Mon Sep 17 00:00:00 2001 From: Nicolás Reynolds Date: Tue, 18 Feb 2014 01:56:34 +0000 Subject: Tue Feb 18 01:56:27 UTC 2014 --- ...nitializes_lastNotified_before_it_is_used.patch | 10 +++ pcr/timekpr/PKGBUILD | 79 ++++++++++++++++++++++ pcr/timekpr/timekpr.install | 24 +++++++ pcr/timekpr/timekpr.service | 9 +++ pcr/timekpr/timekprd.sh | 36 ++++++++++ 5 files changed, 158 insertions(+) create mode 100644 pcr/timekpr/Initializes_lastNotified_before_it_is_used.patch create mode 100644 pcr/timekpr/PKGBUILD create mode 100644 pcr/timekpr/timekpr.install create mode 100644 pcr/timekpr/timekpr.service create mode 100755 pcr/timekpr/timekprd.sh (limited to 'pcr/timekpr') diff --git a/pcr/timekpr/Initializes_lastNotified_before_it_is_used.patch b/pcr/timekpr/Initializes_lastNotified_before_it_is_used.patch new file mode 100644 index 000000000..870a2670a --- /dev/null +++ b/pcr/timekpr/Initializes_lastNotified_before_it_is_used.patch @@ -0,0 +1,10 @@ +--- a/timekpr-client.py 2011-04-15 13:17:59.000000000 +0200 ++++ b/timekpr-client.py 2011-04-15 13:19:06.000000000 +0200 +@@ -40,6 +40,7 @@ + self.conffile = self.VAR['TIMEKPRDIR'] + '/' + self.username + self.limits, self.bfrom, self.bto = readusersettings(self.username, self.conffile) + self.timer = None ++ self.lastNotified = datetime.datetime.fromtimestamp(0); + self.checkLimits() + #Add a gobject loop to check limits: + self.timer = gobject.timeout_add(self.checkInterval * 1000, self.checkLimits) diff --git a/pcr/timekpr/PKGBUILD b/pcr/timekpr/PKGBUILD new file mode 100644 index 000000000..4d2af3bfd --- /dev/null +++ b/pcr/timekpr/PKGBUILD @@ -0,0 +1,79 @@ +# Contributor: SanskritFritz (gmail) + +pkgname=timekpr +pkgver=0.3.2 +pkgrel=9 +pkgdesc="Control the computer usage of your user accounts. You can limit their daily usage based on a timed access duration and configure periods of day when they can log in." +arch=('i686' 'x86_64') +url=https://launchpad.net/timekpr +license=('GPL') +depends=('python2') +source=(http://launchpad.net/$pkgname/trunk/$pkgver/+download/${pkgname}_${pkgver}~ppa1~ubuntu2.tar.gz + timekprd.sh + timekpr.service + Initializes_lastNotified_before_it_is_used.patch) +backup=('etc/timekpr.conf') +install='timekpr.install' +md5sums=('0626ee6b6b6d218dfdd6e79331f789a2' + 'ab37e469034200c19b46a31d586bfe3e' + '9e88ee02b5b8cb6b5e0730e3847c4217' + '23848ef2578571d7dc4871fbd15f41ed') + + +build() { + cd ${srcdir}/stable/gui/client + # https://bugs.launchpad.net/timekpr/+bug/761647 + patch -p1 < ${srcdir}/Initializes_lastNotified_before_it_is_used.patch +} + +package() { + install -dm755 $pkgdir/etc/{rc.d,timekpr,logrotate.d,xdg/autostart} + install -dm755 $pkgdir/usr/{bin,share/{doc/timekpr,timekpr,python-support/timekpr,pixmaps,applications,man/man8}} + install -dm755 $pkgdir/usr/share/locale/{da,de,fr,hu,nb,sv,fi}/LC_MESSAGES + install -dm755 $pkgdir/var/lib/timekpr + + cd $srcdir/stable + install -m644 etc/timekpr.conf $pkgdir/etc/ + install -m644 etc/logrotate.d/timekpr $pkgdir/etc/logrotate.d/ + sed -i "s/python/python2/" timekpr + install -m755 timekpr $pkgdir/usr/bin/ + sed -i "s/python/python2/" timekpr-gui + install -m755 timekpr-gui $pkgdir/usr/bin/ + sed -i "s/python/python2/" timekpr-client + install -m755 timekpr-client $pkgdir/usr/bin/ + install -m755 timekprpam.py $pkgdir/usr/share/python-support/timekpr/ + install -m755 timekpr.py $pkgdir/usr/share/python-support/timekpr/ + install -m755 timekpr-gui.py $pkgdir/usr/share/python-support/timekpr/ + install -m755 gui/client/timekpr-client.py $pkgdir/usr/share/python-support/timekpr/ + install -m755 timekprpam.py $pkgdir/usr/share/python-support/timekpr/ + install -m755 timekprcommon.py $pkgdir/usr/share/python-support/timekpr/ + install -m644 gui/padlock-green.png $pkgdir/usr/share/timekpr/ + install -m644 gui/padlock-red.png $pkgdir/usr/share/timekpr/ + install -m644 gui/timekpr.glade $pkgdir/usr/share/timekpr/ + install -m644 gui/timekpr100x100.png $pkgdir/usr/share/timekpr/ + install -m644 gui/timekpr32x32.png $pkgdir/usr/share/timekpr/ + install -m644 gui/timekpr.xpm $pkgdir/usr/share/pixmaps/ + install -m644 debian/timekpr.desktop $pkgdir/usr/share/applications/ + install -m644 debian/timekpr-client.desktop $pkgdir/etc/xdg/autostart + install -m644 locale/da/LC_MESSAGES/timekpr.mo $pkgdir/usr/share/locale/da/LC_MESSAGES/ + install -m644 locale/de/LC_MESSAGES/timekpr.mo $pkgdir/usr/share/locale/de/LC_MESSAGES/ + install -m644 locale/fr/LC_MESSAGES/timekpr.mo $pkgdir/usr/share/locale/fr/LC_MESSAGES/ + install -m644 locale/hu/LC_MESSAGES/timekpr.mo $pkgdir/usr/share/locale/hu/LC_MESSAGES/ + install -m644 locale/nb/LC_MESSAGES/timekpr.mo $pkgdir/usr/share/locale/nb/LC_MESSAGES/ + install -m644 locale/sv/LC_MESSAGES/timekpr.mo $pkgdir/usr/share/locale/sv/LC_MESSAGES/ + install -m644 locale/fi/LC_MESSAGES/timekpr.mo $pkgdir/usr/share/locale/fi/LC_MESSAGES/ + install -m644 TODO.txt $pkgdir/usr/share/doc/timekpr + install -m644 README.txt $pkgdir/usr/share/doc/timekpr + install -m644 COPYRIGHT.txt $pkgdir/usr/share/doc/timekpr + install -m644 CONTRIBUTORS.txt $pkgdir/usr/share/doc/timekpr + install -m644 debian/changelog $pkgdir/usr/share/doc/timekpr + install -m644 doc/timekpr.8 $pkgdir/usr/share/man/man8 + + install -m755 debian/timekpr.postrm $pkgdir/usr/bin/ + install -m755 debian/timekpr.postinst $pkgdir/usr/bin/ + + cd $srcdir + install -m755 timekprd.sh $pkgdir/etc/rc.d/timekprd + + install -Dm0644 "${srcdir}/timekpr.service" "${pkgdir}/usr/lib/systemd/system/timekpr.service" +} diff --git a/pcr/timekpr/timekpr.install b/pcr/timekpr/timekpr.install new file mode 100644 index 000000000..b01769c48 --- /dev/null +++ b/pcr/timekpr/timekpr.install @@ -0,0 +1,24 @@ + +post_install() { + /usr/bin/timekpr.postinst + + echo "Your su command (gksu|gksudo|kdesu|kdesudo etc) for starting timekpr-gui as root: " + read su_command; + sed -i "s/gksu/${su_command}/" "/usr/share/applications/timekpr.desktop" + + echo + echo "Start the timekpr daemon with '/etc/rc.d/timekprd start'" + echo "For permanent use put 'timekprd' into your DAEMONS array." +} + +post_upgrade() { + post_install +} + +pre_remove() { + /usr/bin/timekpr.postrm purge +} + +post_remove() { + echo "Remove the timekprd entry from your DAEMONS array." +} diff --git a/pcr/timekpr/timekpr.service b/pcr/timekpr/timekpr.service new file mode 100644 index 000000000..b3ea6e211 --- /dev/null +++ b/pcr/timekpr/timekpr.service @@ -0,0 +1,9 @@ +[Unit] +Description=Keep control of computer usage +After=syslog.target systemd-user-sessions.service + +[Service] +ExecStart=/usr/bin/timekpr + +[Install] +WantedBy=multi-user.target diff --git a/pcr/timekpr/timekprd.sh b/pcr/timekpr/timekprd.sh new file mode 100755 index 000000000..19e4a3af4 --- /dev/null +++ b/pcr/timekpr/timekprd.sh @@ -0,0 +1,36 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions + +PID=`pidof -x -o %PPID /etc/rc.d/timekprd` +case "$1" in + start) + stat_busy "Starting timekpr" + [ -z "$PID" ] && /usr/bin/timekpr & + if [ $? -gt 0 ]; then + stat_fail + else + add_daemon timekprd + stat_done + fi + ;; + stop) + stat_busy "Stopping timekpr" + [ ! -z "$PID" ] && killall --user root timekpr &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + else + rm_daemon timekprd + stat_done + fi + ;; + restart) + $0 stop + sleep 3 + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 -- cgit v1.2.3-54-g00ecf