Bug#321167: linux-image: say the difference vs. kernel-image
reasign 321167 linux-2.6
thanks
On Thu, Aug 04, 2005 at 04:36:16AM +0800, Dan Jacobson wrote:
> Package: linux-image-2.6.12-1-686
> Severity: wishlist
>
> Please in the Description of all the linux-*-2.6 packages, e.g.,
> linux-doc-2.6.12
> linux-headers-2.6.12-1-686
> linux-image-2.6.12-1-686
> linux-patch-debian-2.6.12
> linux-tree-2.6.12
> i.e., packages residing in pool/main/l/linux-2.6/,
> say how they differ from the kernel-* packages, e.g.,
> kernel-image-2.6.*
> so the user knows before starting any downloads.
>
> Perhaps also in the kernel-* Descriptions, mention the difference vs.
> linux-* too.
They are replacements for those packages.
The names have been changed to be consistent with
the naming of other kernels (e.g. hurd and Freebsd) that
are likely to be added to Debain soon.
Adding a note to this affect to the long descriptions seems
reasonable, can you provide a patch against the templates that
are used to create the control files?
They are in SVN at debian-kernel/svn-2.6/source/linux-2.6/debian/templates
on svn.debian.org. And I have attached the latest versions for your
convenience.
Thanks
--
Horms
Package: linux-headers-@subarch@@version@-@abiname@
Architecture: alpha amd64 arm hppa i386 ia64 m68k powerpc s390 sparc
Section: devel
Priority: optional
Depends: coreutils | fileutils (>= 4.0)
Provides: linux-headers, linux-headers-@major@
Description: Common architecture-specific header files for Linux kernel @version@
This package provides the (sub)architecture-specific common kernel header files
for Linux kernel version @version@, generally used for building out-of-tree
kernel modules. To obtain a complete set of headers you also need to install
the linux-headers-@version@-@abiname@-(flavour) package, matching the
flavour of the kernel you intend the build for. To obtain such a set for the
currently running kernel it is sufficient to run a command
apt-get install linux-headers-@version@-@abiname@-$(uname -r)
.
and it will be unpacked in /usr/src/linux-headers-@version@-@abiname@-(flavour).
#!/bin/sh
#
# This is the make-kpkg hook file, which runs when make-kpkg is invoked
# (from debian/rules) to create the flavour-independent kernel-headers
# package. The major tasks it performs is removing unneeded
# include/asm-* directories.
#
set -e
# The scripts/ directory should be supplied for each flavour, since some
# archs do some *very* strange things...
rm -rf scripts
# XXX: once we're using a linux-headers-$(version)-$(debnum) that's Arch: all,
# we'll want to drop this bit of code. The asm-* directories should remain.
remove=
cd include
for i in asm-*; do
case ${i#asm-} in
generic | @headers_dirs@)
;;
*)
remove="$remove $i"
;;
esac
done
${remove:+rm -r $remove}
Source: linux-@major@
Section: devel
Priority: optional
Maintainer: Debian Kernel Team <debian-kernel@lists.debian.org>
Uploaders: Andres Salomon <dilinger@debian.org>
Standards-Version: 3.6.1.0
Build-Depends: gcc (>= 4:4.0) [!sparc !alpha], gcc-3.3 [sparc alpha], debhelper (>= 4.1.0), module-init-tools, dpkg-dev (>= 1.10.23), debianutils (>= 1.6), bzip2, console-tools [!s390], sparc-utils [sparc], kernel-package (>= 9.004)
Build-Depends-Indep: docbook-utils, gs, transfig, xmlto, dh-kpatches (>= 0.99.3)
#
# If you would like to change the arch-specific Depends, Suggests,
# or Recommends, have a look at the debian/bin/gencontrol file. Note
# that arch_depends and arch_suggests substitutions will start with
# a comma and a space if they are non-empty.
#
Package: linux-image-@subarch@@version@-@abiname@-@flavour@
Architecture: @arch@
Section: base
Priority: optional
Provides: linux-image, linux-image-@major@
Depends: initrd-tools (>= 0.1.78), coreutils | fileutils (>= 4.0), module-init-tools (>= 0.9.13)@arch_depends@
Conflicts: hotplug (<< 0.0.20040105-1)
Suggests: fdutils, linux-doc-@version@ | linux-source-@version@@arch_suggests@
@arch_recommends@
Description: Linux kernel @version@ image on @class@ machines
This package provides the binary image and pre-built loadable modules for
Linux kernel @version@ on @class@ machines.
Package: linux-source-@version@
Architecture: all
Section: devel
Priority: optional
Provides: linux-source, linux-source-@major@
Depends: binutils, bzip2, coreutils | fileutils (>= 4.0)
Recommends: libc6-dev | libc-dev, gcc, make
Suggests: libncurses-dev | ncurses-dev, kernel-package, libqt3-mt-dev
Description: Linux kernel source for version @version@ with Debian patches
This package provides the source code for the Linux kernel version @version@.
.
If you wish to use this package to create a custom Linux kernel, then
it is suggested that you investigate the package kernel-package,
which has been designed to ease the task of creating kernel image
packages.
Package: linux-doc-@version@
Architecture: all
Section: doc
Priority: optional
Provides: linux-doc-@major@
Depends: coreutils | fileutils (>= 4.0)
Description: Linux kernel specific documentation for version @version@
This package provides the various README files and HTML documentation for
the Linux kernel version @version@. Plenty of information, including the
descriptions of varios kernel subsystems, filesystems, driver-specific
notes and the like. Consult the file
.
/usr/share/doc/linux-doc-@version@/Documentation/00-INDEX
.
for the detailed description of the contents.
Package: linux-patch-debian-@version@
Architecture: all
Section: devel
Priority: optional
Depends: bzip2, ${kpatch:Depends}
Suggests: linux-source-@version@
Description: Debian patches to version @version@ of the Linux kernel
This package includes the patches used to produce the prepackaged
linux-source-@version@ package, as well as architecture-specific
patches. Note that these patches do NOT apply against a pristine
Linux @version@ kernel but only against the kernel tarball
linux-source-@version@_@version@.orig.tar.gz from the Debian archive.
Package: linux-tree-@version@
Architecture: all
Section: devel
Priority: optional
Depends: linux-patch-debian-@version@ (= @srcver@), @lt_depends@
Provides: @lt_provides@
Description: Linux kernel source tree for building Debian kernel images
This meta package is used as a build dependency of Debian
linux-image packages to prevent a version discrepancy between
the linux-image and corresponding linux-sources packages in the
fast-moving unstable archive. The package's dependency relations
are structured so that a linux-image package's build
dependencies can always be satisfied, even if the linux-source
package that had been used to compile the image has been
superseeded by a newer Debian revision since the last build.
.
The package provides a list of virtual packages, corresponding to
Debian revisions of a linux-source package. The Debian
linux-patch contains the information needed to roll back the
current linux-source to any of the revisions identified by the
provided virtual packages. Therefore, the linux-tree package
ensures the availability of the Linux kernel source tree corresponding
to each of the virtual packages listed.
.
The package serves no purpose outside of the Debian build and
archive infrastructure.
#!/bin/sh
#
# This is the hook file executed by make-kpkg in the end of creation
# of the linux-image for a particular flavour. The major task it performs
# is the creation of the flavour-specific linux-headers package.
#
set -e
debhelper_pre() {
dh_clean -k --package="$1"
dh_installdirs --package="$1"
}
debhelper_post() {
dh_installdocs --package="$1"
dh_installchangelogs --package="$1"
dh_compress --package="$1"
dh_fixperms --package="$1"
dh_installdeb --package="$1"
dh_gencontrol --package="$1"
dh_md5sums --package="$1"
dh_builddeb --package="$1"
}
# The version which ends up here is something like
# $(version)-$(abiname)-$(flavour) and debnum is just
# -$(abiname), so that the variables get the values:
# suffix=$(flavour)
# prefix=$(version)-$(abiname)
# prefix is then used to form a destination directory
# to link to. For cases with subarch we need to link
# to linux-headers-$(subarch)-$(version)-$(abiname),
# not just linux-headers-$(version)-$(abiname). Note
# that the append_subarch substitution must contain a
# trailing dash, if it is non-empty.
#
append='@append_subarch@'
suffix=${version#*$debnum-}
prefix=${append}${version%%-*}${debnum}
pkg=linux-headers-$version
top=$PWD/debian/$pkg
dir=$top/usr/src/linux-headers-$version
#
# Here we need to find the kernel architecture which
# is appropriate for the current flavour. It is available
# in kernel-package as KERNEL_ARCH. Cleanest way is to get
# make-kpkg export it to this script.
#
# Currently we just use the fact that in the build directory
# the symlink include/asm must point to include/asm-${arch}
#
arch=$(readlink include/asm)
arch=$(basename "${arch}")
arch="${arch#asm-}"
debhelper_pre $pkg
#
# Stuff below is ugly as hell, but does the trick so I'm not
# touching it until we can invent something better.
#
mkdir -p $dir/include/linux
cp -a .config $dir
echo $debnum-$suffix > $dir/.extraversion
cp -a Module.symvers $dir
find . -mindepth 1 -maxdepth 1 \
! -name debian -a ! -name Documentation -a ! -name include -a \
! -name DEBIAN -a ! -name scripts -a ! -name '.*' -a \( \
-name Makefile -o -type d \) \
-printf "../linux-headers-$prefix/%f\n" |
xargs ln -s --target-directory="$dir"
cp -a scripts $dir
cd include
find . -mindepth 1 -maxdepth 1 \
! -name config -a ! -name linux -a \( \
! -name 'asm-*' -o -name asm-generic -o -name asm-${arch} \) \
-printf "../../linux-headers-$prefix/include/%f\n" |
xargs ln -s --target-directory=$dir/include
cp -a config $dir/include
ln -sf asm-${arch} $dir/include/asm
find linux -mindepth 1 -maxdepth 1 \
! -name autoconf.h -a ! -name compile.h -a ! -name version.h \
-printf "../../../linux-headers-$prefix/include/linux/%f\n" |
xargs ln -s --target-directory=$dir/include/linux
cp -a linux/autoconf.h linux/compile.h \
linux/version.h $dir/include/linux
cd ..
mkdir -p $top/lib/modules/$version
ln -s /usr/src/linux-headers-$version $top/lib/modules/$version/build
debhelper_post $pkg
#
# Check whether we should force any modules to be available
# on the initrd.
#
cd ${IMAGE_TOP}/lib/modules/${version}
modules='@initrd_modules@'
if [ -n "${modules}" ]; then
mkdir initrd
for i in ${modules}; do
if [ -f "${i}" ]; then
ln "${i}" initrd
fi
done
fi
# Execute any extra post-install command provided by the arch/subarch/flavour
if [ '@extra_postinstall_command@' ]; then
@extra_postinstall_command@
fi
#
# Clean up the build and source symlinks
#
if [ -L build ]; then
rm -f build
fi
if [ -L source ]; then
rm -f source
fi
Package: linux-headers-@subarch@@version@-@abiname@-@flavour@
Architecture: @arch@
Section: devel
Priority: optional
Depends: coreutils | fileutils (>= 4.0), linux-headers-@subarch@@version@-@abiname@
Provides: linux-headers, linux-headers-@major@
Description: Architecture-specific header files for Linux kernel @version@ on @class@ machines
This package provides the architecture-specific kernel header files
for Linux kernel @version@ on @class@ machines, generally
used for building out-of-tree kernel modules. These files are going to be
installed into /usr/src/linux-headers-@subarch@@version@-@abiname@-@flavour@, and can
be used for building modules that load into the kernel provided by the
linux-image-@subarch@@version@-@abiname@-@flavour@ package.
Reply to: