Hi, Today I finally got round to properly fix the versioning mess in master and the upstream branches (vanilla and linux-next). This mail is meant to document how it's supposed to work. You can skip to the table at the end of the mail for a summary. In upstream ~~~~~~~~~~~ Upstream git tags look like "v3.0-rc1", "v3.0-rc2", the final tag is going to be "v3.0" and the subsequent stable releases will be tagged as "v3.0.1", "v3.0.2" and so on. The tarballs are named after these tags, so we have linux-3.0-rc2.tar.bz2 that contains the linux-3.0-rc2 directory. HOWEVER: Several userspace programs expect the kernel release string be three numbers and fail if it isn't the case. This also affects depmod, so omitting the third zero would break all setups using modules. So the kernel continues to call itself "3.0.0-rc2" and this will probably stay for some time now. In short, there are two version numbers now: I'll refer to them as the "tarball" version and the "uname" version (might differ from the "tarball" version in the trailing zero). In openSUSE ~~~~~~~~~~~ The SRCVERSION variable in the config.sh file is set to the "tarball" version. The mkspec script takes this and generates two more versions: The "uname" version (appends a zero if necessary), that is used during the build (so the actual build didn't require any modifications in the end) and the "rpm" version. I used the fact that the build was broken anyway as an opportunity to revamp the way the rpm packages are numbered. The final releases will have three numbers, i.e. "kernel-desktop-3.0.0-...", "kernel-desktop-3.0.1-...", etc. However, -rc releases will use the "rcX" tag instead of the last zero, so the current package will look like "kernel-desktop-3.0.rc2-...". Letters sort before numbers in rpm, so this will not break ordering and at the same time you will be able to tell the upstream version from the rpm version easily. Until now, we abused the rpm Release: field for this, but this only worked in the Kernel:* projects and not in the official distribution. To summarize, the mapping will be like: rpm tarball uname -r kernel-desktop-3.0.rc2-* linux-3.0-rc2.tar.bz2 3.0.0-rc2-*-desktop kernel-desktop-3.0.0-* linux-3.0.tar.bz2 3.0.0-*-desktop kernel-desktop-3.0.1-* linux-3.0.1.tar.bz2 3.0.1-*-desktop The "*" above is the rpm Release: number assigned by the build service. I hope that despite the long mail, the scheme will actually be easy to understand, that would will be able to quickly tell what kernel is in the distro by just looking at the rpm packages. Michal PS: I didn't cover KMPs at all at this point, they might work or there might be some fixes needed, I'll look into this later. -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-kernel+help@opensuse.org