diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..676f47e --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +and-1.2.2.tar.gz diff --git a/and-1.2.2-makefile.patch b/and-1.2.2-makefile.patch new file mode 100644 index 0000000..d8af644 --- /dev/null +++ b/and-1.2.2-makefile.patch @@ -0,0 +1,196 @@ +--- and-1.2.2/Makefile.org 2005-03-27 21:39:37.000000000 +0200 ++++ and-1.2.2/Makefile 2007-07-25 18:25:00.000000000 +0200 +@@ -143,16 +143,16 @@ endif + # Build the auto-nice daemon. + # + and: and.o and-$(ARCH).o +- $(LD) and.o and-$(ARCH).o -o and $(LIBS) ++ $(LD) $(CFLAGS) -g and.o and-$(ARCH).o -o and $(LIBS) + + + # + # Independent part: configuration management, priority database. + # + and.o: and.c and.h +- $(CC) -DDEFAULT_INTERVAL=60 -DDEFAULT_NICE=0 \ +- -DDEFAULT_CONFIG_FILE=\"$(INSTALL_ETC)/and.conf\" \ +- -DDEFAULT_DATABASE_FILE=\"$(INSTALL_ETC)/and.priorities\" \ ++ $(CC) $(CFLAGS) -g -DDEFAULT_INTERVAL=60 -DDEFAULT_NICE=0 \ ++ -DDEFAULT_CONFIG_FILE=\"$(INSTALL_ETC)/and/and.conf\" \ ++ -DDEFAULT_DATABASE_FILE=\"$(INSTALL_ETC)/and/and.priorities\" \ + -DAND_VERSION=\"$(VERSION)\" -DAND_DATE=\"$(DATE)\" -c and.c + + +@@ -160,7 +160,7 @@ and.o: and.c and.h + # Unix variant specific stuff + # + and-Linux.o: and.h and-Linux.c +- $(CC) -c and-Linux.c ++ $(CC) $(CFLAGS) -g -c and-Linux.c + + and-OpenBSD.o: and.h and-OpenBSD.c + $(CC) -c and-OpenBSD.c +@@ -214,30 +214,19 @@ and.priorities.5: and.priorities.5.man + # + # Install and under $(PREFIX)/bin etc. + # +-install: and $(INITSCRIPT) +- strip and ++install: and ++ + #-mkdir $(PREFIX) + -mkdir -p $(DESTDIR)$(INSTALL_SBIN) +- -mkdir -p $(DESTDIR)$(INSTALL_ETC) ++ -mkdir -p $(DESTDIR)$(INSTALL_ETC)/and/ + -mkdir -p $(DESTDIR)$(INSTALL_INITD) + -mkdir -p $(DESTDIR)$(INSTALL_MAN)/man5 + -mkdir -p $(DESTDIR)$(INSTALL_MAN)/man8 + $(INSTALL) -m 0755 and $(DESTDIR)$(INSTALL_SBIN) +- test -e $(DESTDIR)$(INSTALL_ETC)/and.conf || \ +- $(INSTALL) -m 0644 and.conf $(DESTDIR)$(INSTALL_ETC) +- test -e $(DESTDIR)$(INSTALL_ETC)/and.priorities || \ +- $(INSTALL) -m 0644 and.priorities $(DESTDIR)$(INSTALL_ETC) +-ifneq (${INITSCRIPT},) +-ifneq (${INSTALL_INITD},) +- @echo "Installing SysV script in $(DESTDIR)$(INSTALL_INITD)" +- $(INSTALL) -m 0755 $(INITSCRIPT) $(DESTDIR)$(INSTALL_INITD)/and +-else +- @echo "Installing SysV script in $(DESTDIR)$(INSTALL_SBIN)" +- $(INSTALL) -m 0755 $(INITSCRIPT) $(DESTDIR)$(INSTALL_SBIN) +- @echo "Installing SysV init.d finder in $(DESTDIR)$(INSTALL_SBIN)" +- $(INSTALL) -m 0755 and-find-init.d $(DESTDIR)$(INSTALL_SBIN) +-endif +-endif ++ test -e $(DESTDIR)$(INSTALL_ETC)/and/and.conf || \ ++ $(INSTALL) -m 0644 and.conf $(DESTDIR)$(INSTALL_ETC)/and/ ++ test -e $(DESTDIR)$(INSTALL_ETC)/and/and.priorities || \ ++ $(INSTALL) -m 0644 and.priorities $(DESTDIR)$(INSTALL_ETC)/and/ + $(INSTALL) -m 0644 and.8 $(DESTDIR)$(INSTALL_MAN)/man8 + $(INSTALL) -m 0644 and.conf.5 $(DESTDIR)$(INSTALL_MAN)/man5 + $(INSTALL) -m 0644 and.priorities.5 $(DESTDIR)$(INSTALL_MAN)/man5 +@@ -252,9 +241,6 @@ simpleinstall: and and.init + cp and.conf $(DESTDIR)$(INSTALL_ETC) + test -e $(DESTDIR)$(INSTALL_ETC)/and.priorities || \ + cp and.priorities $(DESTDIR)$(INSTALL_ETC) +-ifneq (${INITSCRIPT},) # on SysV only +- cp $(INITSCRIPT) $(DESTDIR)$(INSTALL_INITD)/and +-endif + cp and.8 $(DESTDIR)$(INSTALL_MAN)/man8 + cp and.conf.5 $(DESTDIR)$(INSTALL_MAN)/man5 + cp and.priorities.5 $(DESTDIR)$(INSTALL_MAN)/man5 +--- and-1.2.2/and.priorities.5.man.org 2004-04-05 21:19:29.000000000 +0200 ++++ and-1.2.2/and.priorities.5.man 2007-07-25 18:25:00.000000000 +0200 +@@ -1,7 +1,7 @@ + .TH AND.PRIORITIES 5 "__DATE__" "Unix" "File Formats" + + .SH "NAME" +-/etc/and.priorities \- priority database for the auto nice daemon. ++/etc/and/and.priorities \- priority database for the auto nice daemon. + + + .SH "VERSION" +@@ -16,12 +16,12 @@ This is the priority database file for + It stores (user, group, command, parent, nicelevels) tuples (hereafter called + entries) to determine the new nice level (or the kill signal, for that + matter) when a job reaches one of the time limits defined in +-.I /etc/and.conf. ++.I /etc/and/and.conf. + (See lv1time, lv2time, and lv3time on the and.conf manual page for + details.) See the + .B affinity + setting in +-.I /etc/and.conf ++.I /etc/and/and.conf + for how ambiguities between the fields (user, group, command, parent) + are dealt with when searching the database to determine the new nice + level for a job. +@@ -187,7 +187,7 @@ grid * grid_master * 0 0 0 + .SH "FILES" + + .TP 0.5i +-.B /etc/and.priorities ++.B /etc/and/and.priorities + The priority database (in plain text). Contains the (user, group, command, + nicelevels) tuples. This is what this manual page is about. + +--- and-1.2.2/and.conf.5.man.org 2005-03-27 21:38:32.000000000 +0200 ++++ and-1.2.2/and.conf.5.man 2007-07-25 18:25:00.000000000 +0200 +@@ -1,7 +1,7 @@ + .TH AND.CONF 5 "__DATE__" "Unix" "File Formats" + + .SH "NAME" +-/etc/and.conf \- general configuration parameters for the ++/etc/and/and.conf \- general configuration parameters for the + auto nice daemon. + + +@@ -52,11 +52,11 @@ the auto nice daemon to enable the chang + .B defaultnice + The default nice level. A number between 0 and 19. Jobs for which no + entry can be found in +-.I /etc/and.priorities ++.I /etc/and/and.priorities + are reniced to this level, regardless of the CPU time they've used + so far. If you prefer to renice unknown jobs gradually, you can do + so by supplying three asterisks as (user, group, command) tuple in +-.I /etc/and.priorities. ++.I /etc/and/and.priorities. + The default nice level is + .I 0 + +--- and-1.2.2/and.8.man.org 2002-01-27 16:59:57.000000000 +0100 ++++ and-1.2.2/and.8.man 2007-07-25 18:25:00.000000000 +0200 +@@ -55,13 +55,13 @@ to kill -9 it after e.g. 20 CPU minutes. + .TP 0.5i + .B \-c /path/to/and.conf + Specifies the configuration file. If this flag is omitted, +-.I /etc/and.conf ++.I /etc/and/and.conf + is used instead. + + .TP 0.5i + .B \-d /path/to/and.priorities + Specifies the priority database file. If this flag is omitted, +-.I /etc/and.priorities ++.I /etc/and/and.priorities + is used instead. + + .TP 0.5i +@@ -112,12 +112,12 @@ database. + .SH "FILES" + + .TP 0.5i +-.B /etc/and.conf ++.B /etc/and/and.conf + General configuration file. Stores default nice level, default interval, + the "time zones" and the database lookup affinity. + + .TP 0.5i +-.B /etc/and.priorities ++.B /etc/and/and.priorities + The priority database (in plain text). Contains the (user, group, command, + nicelevels) tuples. + +--- and-1.2.2/README.org 2005-03-27 21:39:37.000000000 +0200 ++++ and-1.2.2/README 2007-07-25 18:28:31.000000000 +0200 +@@ -83,13 +83,13 @@ Installation: + + Edit the Makefile, which is well documented. (g)make. (g)make install. + (make simpleinstall if you don't have install(1) (which you really +- should). Edit the configuration files, /etc/and.conf and +- /etc/and.priorities. Start /usr/local/sbin/and. You must run it as +- root if you want it to renice or kill any jobs but your own; on all +- platforms but Linux, not even dummy mode will work for mortal users. +- That's due to the way process information is accessible under these +- Unices. (Linux is more generous here, which can be seen as both an +- advantage and a security flaw. I'm not conclusive on this topic.) ++ should). Edit the configuration files, /etc/and/and.conf and ++ /etc/and/and.priorities. Start /usr/sbin/and. You must run it as root ++ if you want it to renice or kill any jobs but your own; on all platforms ++ but Linux, not even dummy mode will work for mortal users. That's due to ++ the way process information is accessible under these Unices. (Linux is ++ more generous here, which can be seen as both an advantage and a security ++ flaw. I'm not conclusive on this topic.) + + Last updated: + diff --git a/and.init b/and.init new file mode 100644 index 0000000..05ee218 --- /dev/null +++ b/and.init @@ -0,0 +1,83 @@ +#!/bin/sh +# +# /etc/rc.d/init.d/and, /sbin/init.d/and, /etc/init.d/and +# +# SysV init.d compliant startup script for auto nice daemon. +# +# 1999, 2000, 2001 Patrick Schemitz +# http://and.sourceforge.net/ +# +# chkconfig: - 90 10 +# description: automatically renice and kill jobs. +# +# processname: and +# config: /etc/and.conf +# + +### BEGIN INIT INFO +# Provides: and +# Required-Start: $syslog +# Required-Stop: +# Default-Stop: 0 6 +# Short-Description: Automatically renice and kill jobs +# Description: Autmatically renice and kill jobs +### END INIT INFO + +prog=and +and_bin=/usr/sbin/and +and_conf=/etc/and/and.conf + +. /etc/rc.d/init.d/functions + +AND_FLAGS="" +test -r /etc/sysconfig/and && . /etc/sysconfig/and + +start() { + echo -n $"Starting auto nice daemon:" + daemon /usr/sbin/and $AND_FLAGS >/dev/null 2>&1 + RETVAL=$? + echo + [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog +} + +stop() { + echo -n $"Shutting down auto nice daemon:" + killproc and -QUIT + RETVAL=$? + echo + [ $RETVAL -eq 0 ] && rm -rf /var/lock/subsys/$prog +} + +restart() { + stop + start +} + +RETVAL=0 + +[ -x $and_bin -a -s $and_conf ] || exit 0 + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart|reload) + stop + start + RETVAL=$? + ;; + condrestart) + [ -e /var/lock/subsys/$prog ] && restart || : + ;; + status) + status $prog + ;; + *) + echo "Usage: $0 {start|stop|restart|condrestart|status}" + exit 1 +esac + +exit $RETVAL \ No newline at end of file diff --git a/and.spec b/and.spec new file mode 100644 index 0000000..da42aa5 --- /dev/null +++ b/and.spec @@ -0,0 +1,104 @@ +Name: and +Version: 1.2.2 +Release: 7%{?dist} +Summary: Auto nice daemon + +License: GPLv2 +Group: System Environment/Daemons + +URL: http://and.sourceforge.net +Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz +Source1: and.init +Source2: and.sysconf +Patch1: and-1.2.2-makefile.patch + +Buildroot: %{_tmppath}/%{name}-%{version}-root-%(%{__id_u} -n) + +Requires(post): /sbin/chkconfig +Requires(postun): /sbin/service +Requires(preun): /sbin/chkconfig +Requires(preun): /sbin/service + +%description +The auto nice daemon renices and even kills jobs according to their CPU time, +owner, and command name. This is especially useful on production machines with +lots of concurrent CPU-intensive jobs and users that tend to forget to +nice their jobs. + +%prep +%setup1 -q +%patch1 -p1 -b .org + +%build +make %{?_smp_mflags} \ + CFLAGS='%{optflags}' \ + PREFIX=%{_prefix} \ + INSTALL_ETC=%{_sysconfdir} \ + INSTALL_SBIN=%{_sbindir} \ + INSTALL_MAN=%{_mandir} + +%install +rm -rf %{buildroot} +mkdir -p %{buildroot}%{_sysconfdir} +mkdir -p %{buildroot}%{_sbindir} +mkdir -p %{buildroot}%{_mandir}/man8 +mkdir -p %{buildroot}%{_mandir}/man5 +make PREFIX=%{buildroot}%{_prefix} \ + INSTALL_ETC=%{buildroot}%{_sysconfdir} \ + INSTALL_SBIN=%{buildroot}%{_sbindir} \ + INSTALL_MAN=%{buildroot}%{_mandir} install + +mkdir -p %{buildroot}%{_initrddir} +install -p -m 0755 %{SOURCE1} %{buildroot}%{_initrddir}/and + +mkdir -p %{buildroot}%{_sysconfdir}/sysconfig +install -p -m 0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/sysconfig/and + +%clean +rm -rf %{buildroot} + +%post +/sbin/chkconfig --add and + +%preun +if [ $1 -eq 0 ]; then + /sbin/service and stop >/dev/null 2>&1 || : + /sbin/chkconfig --del and +fi + +%postun +if [ $1 -ge 1 ]; then + /sbin/service and condrestart >/dev/null +fi + +%files +%defattr(-,root,root) +%doc README LICENSE CHANGELOG +%config(noreplace) %{_sysconfdir}/and/ +%config(noreplace) %{_sysconfdir}/sysconfig/and +%{_sbindir}/* +%attr(0755,root,root) %{_initrddir}/and +%{_mandir}/man5/*.gz +%{_mandir}/man8/*.gz + +%changelog +* Mon Feb 23 2009 Fedora Release Engineering - 1.2.2-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Wed Feb 13 2008 Jochen Schmitt 1.2.2-6 +- Rebuild for gcc-4.3 + +* Wed Jan 23 2008 Jochen Schmitt 1.2.2-5 +- Rebuild + +* Thu Aug 9 2007 Jochen Schmitt 1.2.2-4 +- Changing license tag + +* Mon Jul 30 2007 Jochen Schmitt 1.2.2-3 +- Fix wrong postun requires + +* Thu Jul 26 2007 Jochen Schmitt 1.2.2-2 +- Adding sysconfig file template + +* Tue Jul 24 2007 Jochen Schmitt 1.2.2-1 +- Initial package for Fedora diff --git a/and.sysconf b/and.sysconf new file mode 100644 index 0000000..3daac21 --- /dev/null +++ b/and.sysconf @@ -0,0 +1,4 @@ +# Allow to set the options for and starting +# by the initscript + +AND_FLAGS= \ No newline at end of file diff --git a/dead.package b/dead.package deleted file mode 100644 index 5322507..0000000 --- a/dead.package +++ /dev/null @@ -1,3 +0,0 @@ -2016-09-13: Retired orphaned package, because it was orphaned for -more than six weeks. - diff --git a/sources b/sources new file mode 100644 index 0000000..d61534a --- /dev/null +++ b/sources @@ -0,0 +1 @@ +b939909039a8487eec93ff7eb56a4779 and-1.2.2.tar.gz