Blob Blame History Raw
%define sourcedir stable/%{version}/distribution/tar/generic/source
%define kisdndock "kisdndock-1.0.1"
%define is_release 1
%define beta %{nil}
%define rel 0.7
%define monolithic 1
%define DATE 20020315
Version: 3.0.3

Name: kdeadmin
Prefix: /usr
%if %{is_release}
Source: ftp://ftp.kde.org/pub/kde/%{sourcedir}/%{name}-%{version}.tar.bz2
%if "%{beta}" != ""
Release: 0.%{beta}.%{rel}
%else
Release: %{rel}
%endif
%else
Source: ftp://ftp.kde.org/pub/kde/%{sourcedir}/%{name}-%{DATE}.tar.bz2
Release: 0.cvs%{DATE}.%{rel}
%endif
Source1: kisdndock-1.0.1.tar.bz2
Source2: kisdndock.pam
Source4: kwuftpd.pam
Source5: kwuftpd.pamd
Source6: kuser.pam
Source7: kuser.pamd
Source8: kpackage.pam
Source9: kpackage.pamd
Source10: kpackagerc
Source20: qmkbootdisk-1.0.1.tar.bz2
Patch1: kdeadmin-2.1-kcron-workaround.patch
Patch2: kdeadmin-2.2-kuserconfig.patch
Patch3: kdeadmin-3.0.0-kernelpath.patch
Summary: Administrative tools for KDE.
Epoch: 7
Group: User Interface/Desktops
BuildRoot: %{_tmppath}/%{name}-buildroot
License: GPL
Prereq: /sbin/ldconfig
Requires: kdelibs usermode
BuildRequires: qt-devel >= 3.0.0 zlib-devel XFree86-devel kdelibs-devel libjpeg-devel libpng-devel rpm-devel bzip2-devel
Source900: gccver.c

%description
The kdeadmin package includes administrative tools for the K Desktop
Environment (KDE), including kpackage, kdat, and kwuftpd.

%package kcron
Group: User Interface/Desktops
Summary: Crontab editor for KDE
Obsoletes: kdeadmin

%description kcron
KCron is a crontab editor for KDE - it helps you make your system run
commands periodically.

%package kdat
Group: User Interface/Desktops
Summary: Tape backup tool for KDE
Obsoletes: kdeadmin

%description kdat
KDat is a KDE application for controlling tape backups.

%package kpackage
Group: User Interface/Desktops
Summary: KDE package manager
Obsoletes: kpackage kdeadmin
Requires: usermode, pam

%description kpackage
KPackage is a graphical frontend for RPM and other package managers.

%package ksysv
Group: User Interface/Desktops
Summary: System V startup editor
Obsoletes: kdeadmin

%description ksysv
KSysV is a graphical frontend for configuring your runlevels (system
startup/shutdown sequence).

%package kuser
Group: User Interface/Desktops
Summary: Frontend for configuring users and user groups
Requires: usermode, pam
Obsoletes: kdeadmin

%description kuser
KUser is a graphical frontend for managing the users and user groups on
your system.

%package kwuftpd
Group: User Interface/Desktops
Summary: Graphical interface for configuring wu-ftpd
Requires: usermode, pam
Obsoletes: kdeadmin

%description kwuftpd
KWuftpd is a graphical frontend for configuring the wu-ftpd ftp server.

%package kcmlinuz
Group: User Interface/Desktops
Summary: Linux kernel configurator for KDE
Obsoletes: kdeadmin

%description kcmlinuz
kcmlinuz is a graphical frontend for creating configuration files for compiling
kernels.

%package lilo
Group: User Interface/Desktops
Summary: Graphical frontend for configuring the LILO bootloader
Requires: lilo 
Obsoletes: kdeadmin

%description lilo
kdeadmin-lilo is a KDE frontend for configuring the LILO bootloader.

%package kisdndock
Group: User Interface/Desktops
Summary: KDE dock application for ISDN
Requires: isdn4k-utils, redhat-config-network

%description kisdndock
kisdndock is a dock application for managing ISDN connections.

%prep
rm -rf $RPM_BUILD_ROOT

%if %{is_release}
%setup -q
%else
%setup -q -n %{name}
%endif
rm -rf secpolicy
%patch1 -p1 -b .kcron
%patch2 -p1 -b .kuserconfig
%patch3 -p1 -b .kernelpath

ln admin/lt* .

# Workaround for legacy auto* tools
[ -x /usr/bin/autoconf-2.5? ] && ln -s /usr/bin/autoconf-2.5? autoconf
[ -x /usr/bin/autoheader-2.5? ] && ln -s /usr/bin/autoheader-2.5? autoheader
[ -x /usr/bin/aclocal-1.5 ] && ln -s /usr/bin/aclocal-1.5 aclocal
[ -x /usr/bin/automake-1.5 ] && ln -s /usr/bin/automake-1.5 automake
export PATH=`pwd`:$PATH
# End workaround

perl -pi -e "s,-lqt ,-lqt-mt ,g;s,-lqt$,-lqt-mt,g" ksysv/Makefile* lilo-config/qt/Makefile.*

make -f Makefile.cvs

%build
export KDEDIR=%{prefix}
export PATH=$KDEDIR/bin:$PATH
unset QTDIR || : ; . /etc/profile.d/qt.sh

CFLAGS="-D_GNU_SOURCE $RPM_OPT_FLAGS -fno-rtti -fno-exceptions -fno-check-new -DNDEBUG -DNO_DEBUG" \
CXXFLAGS="-D_GNU_SOURCE $RPM_OPT_FLAGS -fno-rtti -fno-exceptions -fno-check-new -DNDEBUG -DNO_DEBUG" \
./configure \
	--with-rpm \
	--prefix=%{prefix} \
	--enable-final \
	--with-private-groups
gcc -o gccver %{SOURCE900}
if [ "0`./gccver`" -lt 3001 ]; then
        find . -name Makefile |xargs perl -pi -e "s,^CXXLD\s*=.*,\$& -release gcc`./gccver -v`,g"
fi
make %{?_smp_mflags}

%ifnarch s390 s390x
%if %{kisdndock}
tar jvxf %{SOURCE1}
cd %{kisdndock}
make -f Makefile.cvs
./configure --prefix=%{prefix}
gcc -o gccver %{SOURCE900}
if [ "0`../gccver`" -lt 3001 ]; then
        find . -name Makefile |xargs perl -pi -e "s,^CXXLD\s*=.*,\$& -release gcc`./gccver -v`,g"
fi
make %{?_smp_mflags}
cd ..
%endif
%endif

%install
make install DESTDIR=$RPM_BUILD_ROOT

# don't use, just delete. Our own versions come later.
rm -rf $RPM_BUILD_ROOT/etc/pam.d $RPM_BUILD_ROOT/etc/security

%ifnarch s390 s390x
%if %{kisdndock}
cd %{kisdndock}
make install DESTDIR=$RPM_BUILD_ROOT transform=
cd ..
mkdir -p $RPM_BUILD_ROOT%{prefix}/sbin \
         $RPM_BUILD_ROOT/etc/pam.d \
         $RPM_BUILD_ROOT/etc/security/console.apps
mv $RPM_BUILD_ROOT%{prefix}/bin/kisdndock \
   $RPM_BUILD_ROOT%{prefix}/sbin/
install -m 0644 %{SOURCE2} $RPM_BUILD_ROOT/etc/pam.d/kisdndock
touch $RPM_BUILD_ROOT/etc/security/console.apps/kisdndock
(cd $RPM_BUILD_ROOT%{prefix}/bin && ln -fs consolehelper kisdndock)
%endif
%endif

# fix absolute symbolic links
(
  mkdir -p $RPM_BUILD_ROOT%{_docdir}/HTML/en/common
  cd $RPM_BUILD_ROOT%{_docdir}/HTML/en
  for i in kcron kpackage ksysv kuser kwuftpd ; do
    cd $i && ln -nfs ../common .
    cd ..
  done
)

# Put in some sane defaults
mkdir -p $RPM_BUILD_ROOT%{_datadir}/config
cat >$RPM_BUILD_ROOT%{_datadir}/config/kuserrc <<EOF
[template]
copySkel=true
createHomeDir=true
homeBase=/home
shell=/bin/bash
userPrivateGroup=true
EOF
cat >$RPM_BUILD_ROOT%{_datadir}/config/ksysvrc <<EOF
[Other Settings]
Configured=true
[Path Settings]
RunlevelPath=/etc/rc.d
ScriptPath=/etc/rc.d/init.d
[Runlevels]
Show Runlevels=0,1,2,3,4,5,6
EOF

# Run kpackage, kwuftpd and kuser through consolehelper
mkdir -p $RPM_BUILD_ROOT/etc/security/console.apps $RPM_BUILD_ROOT/etc/pam.d $RPM_BUILD_ROOT/usr/sbin
install -c -m 644 %{SOURCE4} $RPM_BUILD_ROOT/etc/security/console.apps/kwuftpd
install -c -m 644 %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/kwuftpd
install -c -m 644 %{SOURCE6} $RPM_BUILD_ROOT/etc/security/console.apps/kuser
install -c -m 644 %{SOURCE7} $RPM_BUILD_ROOT/etc/pam.d/kuser
install -c -m 644 %{SOURCE8} $RPM_BUILD_ROOT/etc/security/console.apps/kpackage
install -c -m 644 %{SOURCE9} $RPM_BUILD_ROOT/etc/pam.d/kpackage
install -c -m 644 %{SOURCE10} $RPM_BUILD_ROOT/usr/share/config
mv $RPM_BUILD_ROOT/usr/bin/kwuftpd $RPM_BUILD_ROOT/usr/bin/kuser $RPM_BUILD_ROOT/usr/bin/kpackage $RPM_BUILD_ROOT/usr/sbin
ln -s consolehelper $RPM_BUILD_ROOT/usr/bin/kpackage
ln -s consolehelper $RPM_BUILD_ROOT/usr/bin/kuser
ln -s consolehelper $RPM_BUILD_ROOT/usr/bin/kwuftpd

# Move in qmkbootdisk
unset QTDIR || :
. /etc/profile.d/qt.sh
tar xjf %{SOURCE20}
cd qmkbootdisk-1.0.1
perl -pi -e "s,-I,$RPM_OPT_FLAGS -I,g" Makefile
make
mkdir -p $RPM_BUILD_ROOT%{_bindir} $RPM_BUILD_ROOT/etc/X11/applnk/System \
         $RPM_BUILD_ROOT/etc/X11/sysconfig
install -m 755 qmkbootdisk $RPM_BUILD_ROOT%{_bindir}
install -m 644 qmkbootdisk.desktop $RPM_BUILD_ROOT/etc/X11/applnk/System
install -m 644 qmkbootdisk.desktop $RPM_BUILD_ROOT/etc/X11/sysconfig


%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

%clean
rm -rf $RPM_BUILD_ROOT $RPM_BUILD_DIR/file.list.%{name} $RPM_BUILD_DIR/control-panel

%if %monolithic
%files
%else
%files kcron
%endif
%defattr(-,root,root)
%{_bindir}/kcron
%{_datadir}/applnk/System/kcron.desktop
%{_datadir}/icons/*/*/apps/kcron*
%doc %{_docdir}/HTML/en/kcron

%ifnarch s390 s390x
%if ! %monolithic
%files kisdndock
%defattr(-,root,root)
%endif
%config /etc/pam.d/kisdndock
%config /etc/security/console.apps/kisdndock
%{_sbindir}/kisdndock
%{_bindir}/kisdndock
%{_libdir}/libkcm_kisdndock*
%{_datadir}/applnk/Internet/kisdndock.desktop
%{_datadir}/applnk/Settings/Network/kcmkisdndock.desktop
%{_datadir}/icons/hicolor/16x16/apps/kisdndock.png
%{_datadir}/icons/kisdndock.png
%endif

%if ! %monolithic
%files kdat
%defattr(-,root,root)
%endif
%{_bindir}/kdat
%{_datadir}/apps/kdat
%{_datadir}/applnk/Utilities/kdat.desktop
%doc %{_docdir}/HTML/en/kdat

%if ! %monolithic
%files kpackage
%defattr(-,root,root)
%endif
%config %{_datadir}/config/kpackagerc
%{_bindir}/kpackage
%{_sbindir}/kpackage
%{_datadir}/apps/kpackage
%{_datadir}/applnk/System/kpackage.desktop
%{_datadir}/icons/*/*/apps/kpackage*
%{_datadir}/mimelnk/application/x-debian-package.desktop
%config(noreplace) /etc/pam.d/kpackage
%config(noreplace) /etc/security/console.apps/kpackage
%doc %{_docdir}/HTML/en/kpackage

%if ! %monolithic
%files ksysv
%defattr(-,root,root)
%endif
%config %{_datadir}/config/ksysvrc
%{_bindir}/ksysv
%{_datadir}/apps/ksysv
%{_datadir}/applnk/System/ksysv.desktop
%{_datadir}/icons/*/*/apps/ksysv*
%{_datadir}/mimelnk/application/x-ksysv.desktop
%{_datadir}/mimelnk/text/x-ksysv-log.desktop
%{_datadir}/icons/*/*/actions/toggle_log.png
%doc %{_docdir}/HTML/en/ksysv

%if ! %monolithic
%files kuser
%defattr(-,root,root)
%endif
%config %{_datadir}/config/kuserrc
%{_bindir}/kuser
%{_sbindir}/kuser
%{_datadir}/apps/kuser
%{_datadir}/applnk/System/kuser.desktop
%{_datadir}/icons/*/*/apps/kuser*
%config(noreplace) /etc/pam.d/kuser
%config(noreplace) /etc/security/console.apps/kuser
%doc %{_docdir}/HTML/en/kuser

%if ! %monolithic
%files kwuftpd
%defattr(-,root,root)
%endif
%{_bindir}/kwuftpd
%{_sbindir}/kwuftpd
%{_datadir}/applnk/System/kwuftpd.desktop
%config(noreplace) /etc/pam.d/kwuftpd
%config(noreplace) /etc/security/console.apps/kwuftpd
%doc %{_docdir}/HTML/en/kwuftpd

%if ! %monolithic
%files kcmlinuz
%defattr(-,root,root)
%endif
%{_datadir}/apps/kcmlinuz
%{_datadir}/applnk/Settings/System/linuz.desktop
%{_libdir}/kde3/kcm_linuz*

%ifarch %{ix86}
%if "%monolithic" != "1"
%files lilo
%defattr(-,root,root)
%endif
%{_datadir}/applnk/Settings/System/lilo.desktop
%{_libdir}/kde3/kcm_lilo*
%endif

%{_bindir}/qmkbootdisk
%config(noreplace) /etc/X11/applnk/System/*

%changelog
* Wed Aug 14 2002 Bernhard Rosenkraenzer <bero@redhat.com> 3.0.3-1
- 3.0.3

* Tue Apr 16 2002 Bernhard Rosenkraenzer <bero@redhat.com> 3.0.0-4
- Rebuild

* Thu Apr 11 2002 Bernhard Rosenkraenzer <bero@redhat.com> 3.0.0-3
- Link everything against the correct qt

* Thu Mar 28 2002 Than Ngo <than@redhat.com> 3.0.0-2
- add missing shared libs
- exlude some stuff on s390/s390x

* Wed Mar 27 2002 Than Ngo <than@redhat.com> 3.0.0-1
- final

* Tue Mar  5 2002 Bernhard Rosenkraenzer <bero@redhat.com> 3.0.0-0.cvs20020305.1
- Make splits a buildtime option (off by default) by request.

* Mon Feb 18 2002 Bernhard Rosenkraenzer <bero@redhat.com> 3.0.0-0.cvs20020118.1
- Remove kapabilities, qmkbootdisk and kontrol-panel, they're separate packages
  these days

* Thu Jan 17 2002 Bernhard Rosenkraenzer <bero@redhat.com> 3.0.0-0.cvs20020117.1
- Update
- Build with current kdelibs
- Run kpackage through consolehelper

* Sat Dec 15 2001 Bernhard Rosenkraenzer <bero@redhat.com> 3.0.0-0.cvs20011215.1
- Update
- Split package

* Thu Aug  9 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.2-2
- Get rid of the "Sources were not configured" warning at the first
  start of kuser
- The first normal user ID is 500, not 1001
- Run kwuftpd and kuser through consolehelper
- kontrol-panel 4.1.0; takes its desktop files from /etc/X11/sysconfig and
  /etc/X11/serverconfig and removes desktop files that aren't needed
  anymore
- Don't require mkbootdisk on ia64

* Mon Aug  6 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.2-1
- 2.2 final

* Tue Jul 24 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.2-0.cvs20010724.1
- Add build dependency on fam-devel (#49081)
- Get rid of ia64 workaround

* Sun Jul 22 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.2-0.cvs20010722.1
- Update
- Work around ia64 breakages

* Wed Jun 27 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.2-0.cvs20010627.1
- Update
- Add build dependencies (#45153)
- Don't own /usr/lib/kde2, kdelibs already does

* Tue May 22 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.2-0.alpha2.1
- 2.2alpha2

* Fri Apr 20 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.2-0.alpha1.1
- 2.2alpha1

* Fri Mar 23 2001 Preston Brown <pbrown@redhat.com> 2.1.1-3
- secpolicy removed for now...broken and useless.

* Wed Mar 21 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.1.1-2
- Fix an endless loop when switching kernels in lilo-config

* Tue Mar 20 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.1.1-1
- 2.1.1
- clean up specfile

* Mon Mar 19 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.1-8
- Don't crash when deleting a cronjob (#31999)

* Mon Mar 19 2001 Bernhard Rosenkraenzer <bero@redhat.com> 2.1-7
- Fix ksysv defaults (#32000)

* Fri Mar 16 2001 Bernhard Rosenkraenzer <bero@redhat.com>
- Fix kuser defaults (#31847)

* Wed Feb 28 2001 Bernhard Rosenkraenzer <bero@redhat.com>
- Fix typo in kontrol-panel.desktop (#30001)
- Don't own standard directories
- Add Polnish translation to .desktop files from CVS

* Sun Feb 25 2001 Bernhard Rosenkraenzer <bero@redhat.com>
- Add icons for lilo and wu-ftpd configuration in kontrol-panel
  (Bug #29347)

* Wed Feb 21 2001 Bernhard Rosenkraenzer <bero@redhat.com>
- Update to 2.1-respin

* Mon Feb 19 2001 Than Ngo <than@redhat.com>
- fixed dangling symlinks
- fixed kontrol-panel references lprngtool (bug #25477)
- update to 2.1

* Mon Feb  5 2001 Bernhard Rosenkraenzer <bero@redhat.com>
- Rebuild with lilo installed in the buildroot, we want
  lilo-config

* Mon Jan 22 2001 Bernhard Rosenkraenzer <bero@redhat.com>
- Update

* Mon Jan  1 2001 Bernhard Rosenkraenzer <bero@redhat.com>
- Update
- Don't exclude ia64

* Sat Oct 28 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- Update to KDE_2_0_BRANCH, now that the ".0 release" bugs are fixed

* Mon Oct 16 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- 2.0 final

* Tue Oct  3 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- 2.0

* Mon Oct  2 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- new CVS

* Thu Aug 24 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- rebuild with new Qt

* Wed Aug 23 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- 1.93
- fix up rpmv4 support

* Wed Jul 26 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- Handle rpmv4 packages in kpackage (patch from Jeff Johnson <jbj@redhat.com>
  and myself)

* Fri Jul 21 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- new snapshot
- some fixes to spec file

* Tue Jul 18 2000 Than Ngo <than@redhat.de>
- rebuilt against glibc-2.1.92-14, gcc-2.96-40

* Sun Jul 16 2000 Than Ngo <than@redhat.de>
- use gcc 2.96
- new snapshot
- FHS fixes

* Sun Jul  2 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- use kernelcc
- new snapshot

* Tue Jun 20 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- clean up specfile
- new snapshot
- ExcludeArch ia64 for now - kdelibs doesn't compile there
- kill ksysctrl for now - compiler breakages.

* Sat Mar 18 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- new snapshot
- move it to /usr, where it belongs

* Fri Jan  7 2000 Bernhard Rosenkraenzer <bero@redhat.com>
- work around install-strip breakage

* Fri Oct 22 1999 Bernhard Rosenkraenzer <bero@redhat.de>
- 2.0 snapshot