Group: Linux-libre Kernel

From LibrePlanet
Jump to: navigation, search
(Update for 3.0)
(update to 3.0.3)
Line 13: Line 13:
 
'''''note''''' LK group for Linux Libre Kernel hacktivists
 
'''''note''''' LK group for Linux Libre Kernel hacktivists
  
'''''LAST OUT''''' ''''3.0 linux libre kernel .deb available from July the 23 2011''''
+
'''''LAST OUT''''' ''''3.0.3 linux libre kernel .deb available from August the 19 2011''''
 
               ''''You work on different type of architecture and/or operating system please join''''
 
               ''''You work on different type of architecture and/or operating system please join''''
  
Line 58: Line 58:
 
===''''How-To-compile-your-own-linux-libre-kernel-on-free-debian-based''''===
 
===''''How-To-compile-your-own-linux-libre-kernel-on-free-debian-based''''===
  
Linux Libre-Kernel version :: 3.0
+
Linux Libre-Kernel version :: 3.0.3
  
Last edit tuesday 23 July 2011.
+
Last edit Friday 19 August 2011.
  
 
Type: GNU documentation
 
Type: GNU documentation
Line 105: Line 105:
  
  
  wget http://www.linux-libre.fsfla.org/pub/linux-libre/releases/3.0-libre/linux-3.0-libre.tar.bz2
+
  wget http://www.linux-libre.fsfla.org/pub/linux-libre/releases/3.0.3-libre/linux-3.0.3-libre.tar.bz2
  
  
Line 111: Line 111:
  
  
  tar xvjf linux-3.0-libre.tar.bz2
+
  tar xvjf linux-3.0.3-libre.tar.bz2
  
  
Line 122: Line 122:
 
  wget http://www.linux-libre.fsfla.org/pub/linux-libre/releases/2.6.39.3-libre/linux-2.6.39.3-libre.tar.bz2
 
  wget http://www.linux-libre.fsfla.org/pub/linux-libre/releases/2.6.39.3-libre/linux-2.6.39.3-libre.tar.bz2
 
  tar xvjf linux-2.6.39.3-libre.tar.bz2
 
  tar xvjf linux-2.6.39.3-libre.tar.bz2
  cp -r /usr/src/linux-2.6.39.3/Documentation/lguest /usr/src/linux-3.0/Documentation/  
+
  cp -r /usr/src/linux-2.6.39.3/Documentation/lguest /usr/src/linux-3.0.3/Documentation/  
  
  
Line 129: Line 129:
  
  
  cd linux-3.0
+
  cd linux-3.0.3
  
 
Enter
 
Enter
Line 136: Line 136:
 
you have to edit a file in the linux libre kernel source before compiling
 
you have to edit a file in the linux libre kernel source before compiling
  
Edit on > linux-3.0/Documentation/lguest/Makefile
+
Edit on > linux-3.0.3/Documentation/lguest/Makefile
  
  
Line 150: Line 150:
 
Now you can start the compilation of the last linux libre kernel
 
Now you can start the compilation of the last linux libre kernel
  
normaly at this point you are already in /usr/src/linux3.0
+
normaly at this point you are already in /usr/src/linux3.0.3
  
 
  make clean mrproper
 
  make clean mrproper
Line 174: Line 174:
  
 
  emacs include/linux/version.h
 
  emacs include/linux/version.h
  #define UTS_RELEASE "3.0-libre-planet"  <- (here change libre-planet by what you want)
+
  #define UTS_RELEASE "3.0.3-libre-planet"  <- (here change libre-planet by what you want)
  
C-x C-s save the file in /usr/src/linux-3.0/include/linux/version.h
+
C-x C-s save the file in /usr/src/linux-3.0.3/include/linux/version.h
  
  
Line 196: Line 196:
  
  
  dpkg -i linux-image-3.0-libre-planet.deb
+
  dpkg -i linux-image-3.0.3-libre-planet.deb
  dpkg -i linux-headers-3.0-libre-planet.deb
+
  dpkg -i linux-headers-3.0.3-libre-planet.deb
  dpkg -i linux-source-3.0-libre-planet.deb
+
  dpkg -i linux-source-3.0.3-libre-planet.deb
  
  
Line 215: Line 215:
  
  
  md5sum linux-image-3.0-libre-planet.deb > linux-image-3.0-libre-planet.deb.md5
+
  md5sum linux-image-3.0.3-libre-planet.deb > linux-image-3.0.3-libre-planet.deb.md5
  
  
Line 228: Line 228:
  
 
This document is under GNU Free Documentation License
 
This document is under GNU Free Documentation License
Last modification bring July the 23 2011 by [[User:aurelien|aurelien]]
+
Last modification bring August the 19 2011 by [[User:aurelien|aurelien]]

Revision as of 03:08, 19 August 2011

Welcome in the Linux Libre Kernel Group - Every One is Free to Join!

current_status Active

irc #linux-libre

contact aurelien

note LK group for Linux Libre Kernel hacktivists

LAST OUT '3.0.3 linux libre kernel .deb available from August the 19 2011'

              'You work on different type of architecture and/or operating system please join'

website http://www.fscorsica.org (At the time you have build a linux libre kernel without modification on the base configuration you are welcome to link your website to share your works)

members aurelien parsifal


architecture 32 bits

operating system Debian Squeeze on fully free repositories


Mirror You can add to your mirror list our mirror

deb http://linux-libre.fsfla.org/pub/linux-libre/planet planet main


The Linux Libre Kernel Group as been created to help people to construct and compile their own Linux Libre Kernel from http://www.fsfla.org


1st goal establish a working compilation recipe (without change from the basic linux kernel configuration distributions but free as in freedom)

2nd goal offer a Linux Libre Kernel Optimization Solution - LKOS a guide to bring some optimizations on your own linux libre kernel

3rd goal keep old recipe at fscorsica.org/old to offer solutions for people which need to works on old solutions


One of the simply way to compile your own Linux Libre Kernel for your distribution is (This example as been made on a Full Libre GNU / Linux Debian Operating System)


You can find the .deb of this linux libre kernel at :: http://www.fscorsica.org/kernel-en.html

You can find the .deb of an LKOS example at :: http://www.fscorsica.org/lkos-en.html

You can find the old recipes at :: http://www.fscorsica.org/old


'How-To-compile-your-own-linux-libre-kernel-on-free-debian-based'

Linux Libre-Kernel version :: 3.0.3

Last edit Friday 19 August 2011.

Type: GNU documentation

License: GNU Free Documentation License

Made on Operating System : Debian Sqeeze with free software only

Distribution: GNU / linux


This part is important and long (depending on the computers you have got)

If you are running on a fresh install or if you never made that type of operation before, you will need to install packages needed for linux libre kernel compilation. First, make sure your apt database is updated


All command must be made under root

Get the root power with su or sudo

su
aptitude update


Install the needed packages


aptitude install fakeroot kernel-package libncurses5-dev libqt3-mt-dev bzip2 wget build-essential


In a web browser go to last linux libre kernel release you can launch from another buffer of your emacs or terminal if you use tty


links http://www.linux-libre.fsfla.org/pub/linux-libre/releases/


Copy the link adress of the linux libre kernel version you want.


In a terminal go to /usr/src and get the source :


wget http://www.linux-libre.fsfla.org/pub/linux-libre/releases/3.0.3-libre/linux-3.0.3-libre.tar.bz2


Uncompress the archive file


tar xvjf linux-3.0.3-libre.tar.bz2



ATTENTION From the 3.0-rc7 you'll need to use some more files and folder which are not present for the moment in the source, but was on old version of linux libre. If you don't have an old version of linux libre in your /usr/src/ you'll need to get one from the FSFLA repositories ::


wget http://www.linux-libre.fsfla.org/pub/linux-libre/releases/2.6.39.3-libre/linux-2.6.39.3-libre.tar.bz2
tar xvjf linux-2.6.39.3-libre.tar.bz2
cp -r /usr/src/linux-2.6.39.3/Documentation/lguest /usr/src/linux-3.0.3/Documentation/ 


Go to the newly created directory of the uncompressed source


cd linux-3.0.3

Enter


you have to edit a file in the linux libre kernel source before compiling

Edit on > linux-3.0.3/Documentation/lguest/Makefile


emacs Documentation/lguest/Makefile
all: lguest
to
all:

save and close (under emacs C-x C-s)


Now you can start the compilation of the last linux libre kernel

normaly at this point you are already in /usr/src/linux3.0.3

make clean mrproper



Now, you can review and change config variables. First, update your config file to the new options of the linux libre kernel source

make nconfig
F6 to save the .config
F9 to quit

This will open an application that classifies and explains the properties and available modules you can either 'build into' the linux libre kernel, make modularly available or disable. When you are done, save it and exit.


make-kpkg clean


Now you have to create a file ::

create the version.h file in the linux-3.0/include/linux containing ::

emacs include/linux/version.h
#define UTS_RELEASE "3.0.3-libre-planet"  <- (here change libre-planet by what you want)

C-x C-s save the file in /usr/src/linux-3.0.3/include/linux/version.h


Now, you can build your linux libre kernel, enter


fakeroot make-kpkg --initrd --append-to-version=-planet kernel_image kernel_headers kernel_source


You can change "planet" by the value you have choose when you have create the utsrelease.h file. Optionally, you can add kernel_source at the end, if you want to build a source pack. You can also put CONCURRENCY_LEVEL=N (where N should be replaced by the number of CPU cores your computer has) at the beginning of the command to make the building process take advantage of multiple core systems.

The last command will take some time to complete. At the end, you will have linux-image and linux-headers (and linux-source if you chose) installation files.


go to linux-image and linux-headers files to the directory you want. Then, either go to that directory in terminal with cd command and install the two .deb packages:


Now you've got your own libre-kernel files in /usr/src


dpkg -i linux-image-3.0.3-libre-planet.deb
dpkg -i linux-headers-3.0.3-libre-planet.deb
dpkg -i linux-source-3.0.3-libre-planet.deb


Or


dpkg -i *b (if the directory is clean)


Or, just double-click on the two files and click on the Install Package button.

Restart and choose libre-planet kernel from your GRUB.


If you build you own Linux Libre Kernel and share it arround it can be usefull to generate the md5 checksum


md5sum linux-image-3.0.3-libre-planet.deb > linux-image-3.0.3-libre-planet.deb.md5


Special Thanks to

The Free Technologie Academy :: http://www.ftacademy.org
Linux advanced administration manual :: first version of the recipe
For the participation on the recipe 2.6.32 :: Ali Gundunz http://www.aligunduz.org/articles/buildkernel.html Ali Gundunz :: gndz.ali(at)gmail(dot)com
For the modification part on the file /linux-2.6.32.5/Documentation/lguest/Makefile Damian Fossi :: damianfossi(at)gmail(dot)com
For the modification between 2.6.39.3 and 3.0 importing /Documentation/lguest/ folder and files :: aurelien


This document is under GNU Free Documentation License Last modification bring August the 19 2011 by aurelien