How to deploy .deb packages into kernel monolithically
Good day, citizens.
Development Distro(s): Debian 5.0 Lenny, Ubuntu Lucid 10.4
Target kernel: 2.6.3x
Kernel build methods:
Debian: command line using make method directives
Ubuntu: Ubuntu Customization Kit
I am attempting to construct a customized 2.6.3x kernel image using kernel source obtained from the kernel.org repository. At the time of image construction, I would also like to deploy several apps / utilities available in the format of .deb packages. In this way, when the initial image installation is performed, these app / utility packages will simultaneously be installed.
Using the Ubuntu Customization Kit, this is achievable as there is a break in the build process that allows packages to be added / removed / upgraded. Actually, I believe that UCK performs this package survey before the image construction actually starts. Unfortunately, this approach is not efficient because regardless of how many "packages" are removed the size of the image is still uncontrolled due to other excessive overhead (drivers, object files, unwanted system directives, etc) be passed into the new image....
On the other hand, we using command line build utilities (build-essential tools) I can scale the kernel image according to my specific need - which is very helpful when building for embedded applications. Using these method also allows me to build the kernel modules per the .config file be referenced for the build. Unfortunately, in this case I do not see a means to simultaneously deploy any additional .deb packages that I want installed in my new kernel.
For example: I would like to create an embedded so-called RTOS environment using the available RTAI package. One of the constraints of my system is the capacity of the primary storage flash ROM where my OS will reside - 64MB. As such, I want to stip out all unneeded resources / references from my kernel. Additionally, I do not want end users to have to manually deploy any packages after boot.
I have an idea how to do this, but am unsure with the exact implementation. My thoughts....
1. extract kernel soruce to build directory
2. create filesystem (?)
3. chroot to filesystem root (?)
4. use package manager (dpkg, apt-get, aptitude, etc) to download and install package on chroot'd filesystem
5. exit chroot
6. use build tools to build new kernel image.
Any help on this would be much appreciated. Thanks in advance.
- Readers' Choice Awards 2013
- Mars Needs Women
- RSS Feeds
- Sublime Text: One Editor to Rule Them All?
- December 2013 Issue of Linux Journal: Readers' Choice
- Raspberry Pi: the Perfect Home Server
- IBM Will Minimize Impact of Future Disasters
- Linux Systems Administrator
- Tech Tip: Really Simple HTTP Server with Python
- Senior Perl Developer
- This should be very helpful
3 min 54 sec ago
- As much as I share your point
2 hours 23 min ago
- So girls had it better ?
5 hours 55 min ago
- Reply to comment | Linux Journal
6 hours 15 min ago
- why is GNOME 3 in the fifth position at 14.1 %?
11 hours 47 min ago
- Sublime Is Brilliant!
16 hours 50 min ago
17 hours 10 min ago
- Rapid[Disk,Cache] better than native ram caching?
17 hours 34 min ago
- Nothing is perfect
17 hours 48 min ago
- Mixtapes Community
23 hours 27 min ago