Am Sonntag, den 03.07.2005, 09:21 -0500 schrieb Tom 'spot' Callaway:
On Sun, 2005-07-03 at 16:11 +0200, Thorsten Leemhuis wrote:
- These macro definitions are now found in the top of the spec file:
%{!?kver: %define kver %(uname -r)} %define ksrc %{_usrsrc}/kernels/%{kver}-%{_target_cpu} %define moddir /lib/modules/%{kver}/kernel/misc %define mainpkgname ndiswrapper %define mainpkgversion 1.2 %define mainpgkrelease 1 Yes, in other packages I would not like these "mainpkg*" definitions on the top, but in this type of package I think they are helpful.
I think you're mostly right. mainpkgversion and mainpkgrelease are redundant, however. Just use Version and Release for that.
/me thinks about that -- can't remember what my idea here was in the beginning.
Removed.
- The main kernel-module package is now named
"kernel-module-%{mainpkgname}-base" (if someones knows something better then "base" tell me).
Perhaps instead of -base, it could be -source. I'm ambivalent on that, really.
Yeah, source might be better. Changed.
[...]
- Avoid some problems when kernel-module and kernel are deleted in one
rpm transaction (anyone knows a better way to fix? "Requires(postun): kernel-%{_target_cpu} = %{kver}" does not work): -- Only depmod when System.map is still there %postun -n kernel-module-%{mainpkgname} [ -e "/boot/System.map-%{kver}" ] && \ /sbin/depmod -e -F /boot/System.map-%{kver} %{kver}> /dev/null || : -- In %files: %dir /lib/modules/%{kver}/ so that dir is removed during remove.
The kernel package already owns that dir, I don't see why this is here. rpm removal ordering should take the module out first, then the kernel. Is that not the case?
No:
[thl@notebook ~]$ ls /lib/modules/ 2.6.12-1.1387_FC4 [thl@notebook ~]$ sudo rpm -ivh /home/rpmbuild/rpmbuild/RPMS/i686/kernel-module-ndiswrapper-1.2-1.2.6.11_1.1369_FC4.i686.rpm /mnt/server/all/usr/www/fedora/linux/core/4/i386/os/Fedora/RPMS/kernel-2.6.11-1.1369_FC4.i686.rpm --oldpackage Preparing... ########################################### [100%] 1:kernel ########################################### [ 50%] 2:kernel-module-ndiswrapp########################################### [100%] [thl@notebook ~]$ sudo rpm -e kernel-2.6.11-1.1369_FC4 kernel-module-ndiswrapper-1.2-1.2.6.11_1.1369_FC4.i686 [thl@notebook ~]$ ls /lib/modules/ 2.6.11-1.1369_FC4 2.6.12-1.1387_FC4 [thl@notebook ~]$ ls /lib/modules/2.6.11-1.1369_FC4/ [thl@notebook ~]$ rpm -qpl /mnt/server/all/usr/www/fedora/linux/core/4/i386/os/Fedora/RPMS/kernel-2.6.11-1.1369_FC4.i686.rpm | grep '/lib/modules/2.6.11-1.1369_FC4$' /lib/modules/2.6.11-1.1369_FC4 [thl@notebook ~]$ sudo rpm -ivh /home/rpmbuild/rpmbuild/RPMS/i686/kernel-module-ndiswrapper-1.2-1.2.6.11_1.1369_FC4.i686.rpm /mnt/server/all/usr/www/fedora/linux/core/4/i386/os/Fedora/RPMS/kernel-2.6.11-1.1369_FC4.i686.rpm --oldpackage Preparing... ########################################### [100%] 1:kernel ########################################### [ 50%] 2:kernel-module-ndiswrapp########################################### [100%] [thl@notebook ~]$ sudo rpm -e kernel-module-ndiswrapper-1.2-1.2.6.11_1.1369_FC4.i686 [thl@notebook ~]$ sudo rpm -e kernel-2.6.11-1.1369_FC4 [thl@notebook ~]$ ls /lib/modules/ 2.6.12-1.1387_FC4 [thl@notebook ~]$
Don't ask me why. Anyone any idea what's wrong here? Probably a stupid error of mine I don't see.
All in all, very good work. I think your proposal is shaping up to work well. Thanks for the time.
np -- what would be of more interest: skvidal, could something like http://www.leemhuis.info/files/fedorarpms/MISC.fdr/kernel-module-example/ker... work together with yum or a slightly modified version of yum? Or is there anything obvious wrong here that would confuse yum?