Page 1 of 19

Porteus Kernel Builder

Posted: 15 Jan 2017, 09:41
by neko
Image
setting window

mkKernel-18.01.15-noarch-1.xzm (3.9 M)
http://www.mediafire.com/file/by2l4naqa ... arch-1.xzm
md5sum: 70ae960c1f5cdd3f9afd1fb50c169304 mkKernel-18.01.15-noarch-1.xzm

The functions of Porteus Kernel Builder are as followed.
1. detect latest kernel version.
2. download kernel source (compressed).
3. download and create the AUF patch that corresponds to the kernel version.
4. get prototype config.
5. expand kernel source and adapt AUF patch.
6. adapt own patch.
7. build kernel.
8. copy firmwares from firmware packages.
9. create crippled_sources module.
10. replace kernel of ISO with new one.

[How to use]
step 1. prepare compile environment.
get 05-devel.xzm for your architecture from Porteus release site.
activate "05-devel.xzm".
This prepare is needed for the following actions only.
1)getting AUF patch
2)adapting AUF patch
3)building kernel

step 2. set working direcory.
First, prepare the directory for 'Porteus Kernel Builder'.
This direcory must be in LINUX file system (ext4 etc.,).
Select this in "Kernel Builder directory" of "setting window"

step 3. select kernel version.
select kernel version line in left item of "Kernel Version" of "setting window".
left item will display the latest version of the line.
if older version is needed, select kernel version in right item.

step 4. (option) "Build kernel" circle
"32Bit/64Bit" item: (first, display running PC architecture)
---->select compiling architecture.

"download" item: (this action needs 05-devel.xzm for getting AUF patch)
---->if check it on, download kernel source and get AUF patch and prototype config.

"expand & patch" item: (this action needs 05-devel.xzm for adapting AUF patch)
---->if check it on, expand commpressed kernel source, adapt AUF patch, and set config.

"own patch" item:
---->if check it on, "own patch" is adapted.

"compile" item: (this action needs 05-devel.xzm for building kernel)
---->if check it on, build kernel and set vmlinuz & lib.

"Create FW" item:
---->if check it on, copy firmwares from firmware packages

"cleanup" item:
---->if check it on, cleanup expanded directory.

Note:
Each item can be set independently.
(example)
1st run: set "download" item and "expand & patch"
modfy config depending on own needs.
2nd run: set "compile" item.
check result.
3rd run: set "cleanup" item.

step 5. (option) "ISO whose kernel will be update" circle
select ISO whose kernel will be update.
"keep org" item: (default "check on")
---->if check it off, Target ISO will be treated as "APorteus" ISO.

step 6. (option) "Create crippled_sources or 000-kernel modules" circle
"crippled_sources" item:
---->if check it on, create crippled_sources module.
Don't cleanup, when this will be used.

"000-kernel" item:
---->if check it on, create 000-kernel module.

"Placement:Arcklinux/Placement:Slackware" item:
----> select "Placement:Slackware" for 000-kernel of Porteus.
----> select "Placement:Arcklinux" for 000-kernel of APorteus.

Note: Current "own patch"
There are 2 own patches.
(1) patch to drivers/acpi/sleep.c
to fix reboot/shutdown problem.
(2) patch to drivers/mfd/intel-lpss-pci.c
to fix "Touch Pad" problem.

"own patch" button is available for following version line.
=== version line 4.15-rc ===
patch to drivers/acpi/sleep.c

=== version line 4.14 ===
patch to drivers/acpi/sleep.c

=== version line 4.13 ===
patch to drivers/acpi/sleep.c
patch to drivers/mfd/intel-lpss-pci.c

=== version line 4.12 ===
patch to drivers/acpi/sleep.c
patch to drivers/mfd/intel-lpss-pci.c

=== version line 4.9 ===
patch to drivers/acpi/sleep.c
patch to drivers/mfd/intel-lpss-pci.c

=== version line 4.4 ===
patch to drivers/acpi/sleep.c
patch to drivers/mfd/intel-lpss-pci.c

=== version line 4.1 ===
patch to drivers/acpi/sleep.c


--------------------------------------------------------------
[Updated kernel Example]
These samples are already both 32Bit and 64Bit compiled "TAR.XZ"s.

v4.15-rc8.tar.xz (90 M)
http://www.mediafire.com/file/rrz93813y ... rc8.tar.xz
md5sum: 03b4c5300fde72d84638723d3ad19a3d v4.15-rc8.tar.xz

v4.14.14.tar.xz (89 M)
http://www.mediafire.com/file/08jw0qw24 ... .14.tar.xz
md5sum: a2a2a66904b40e7626f0cd3072346f9c v4.14.14.tar.xz

v4.9.76.tar.xz (80 M)
http://www.mediafire.com/file/16l6xr266 ... .76.tar.xz
md5sum: 708cbf7c11c54e5afffd5ad71ba01343 v4.9.76.tar.xz

v4.4.111.tar.xz (70 M)
http://www.mediafire.com/file/chd9u4ww6 ... 111.tar.xz
md5sum: da5d75c0ecdc11449e026b8f20242b09 v4.4.111.tar.xz

=== example of updating ISO ===
VERSION: 4.9.3

Code: Select all

% su
# cd your_Kernel_Builder_directory
# xz -dc Download_directory/v4.9.3.tar.xz | tar -x
"GUI menu" ---> "Porteus Kernel Builder"
"setting window"
"Kernel Builder directory" --->your_Kernel_Builder_directory
"Kernel Version" --->4.9.3
"ISO whose kernel will be update" ---->porteus-nemesis-v3.5-kde-x86_64.iso (or Porteus-XFCE-v3.2.2-i586.iso etc.,)

result:
your_Kernel_Builder_directory/UP.porteus-nemesis-v3.5-kde-x86_64.iso (or UP.Porteus-XFCE-v3.2.2-i586.iso etc.,)


[crippled_sources module Example]
crippled_sources-4.15-rc8-32bit.xzm (20 M)
http://www.mediafire.com/file/khv08ot9b ... -32bit.xzm
md5sum: 25ecf360e35b36e232c0b0f6f95eb309 crippled_sources-4.15-rc8-32bit.xzm

crippled_sources-4.15-rc8-64bit.xzm (20 M)
http://www.mediafire.com/file/tg5hmcdiq ... -64bit.xzm
md5sum: b95005426012d4de29ec7f2a5e3d678f crippled_sources-4.15-rc8-64bit.xzm

crippled_sources-4.14.14-32bit.xzm (19 M)
http://www.mediafire.com/file/a2czl17v5 ... -32bit.xzm
md5sum: 0377060d2e54d540cf7b1a2b6810c0d2 crippled_sources-4.14.14-32bit.xzm

crippled_sources-4.14.14-64bit.xzm (20 M)
http://www.mediafire.com/file/4ic8zg7q6 ... -64bit.xzm
md5sum: 39804449aaf767f7dcacfbff3bf559a4 crippled_sources-4.14.14-64bit.xzm

crippled_sources-4.9.76-32bit.xzm (18 M)
http://www.mediafire.com/file/e0rj26xvw ... -32bit.xzm
md5sum: f66df1d12d8818a7b3172aecd73eb307 crippled_sources-4.9.76-32bit.xzm

crippled_sources-4.9.76-64bit.xzm (18 M)
http://www.mediafire.com/file/nq2vwv1g0 ... -64bit.xzm
md5sum: cc62decc76fa3d27e8f212c09c9ebc53 crippled_sources-4.9.76-64bit.xzm

crippled_sources-4.4.111-32bit.xzm (16 M)
http://www.mediafire.com/file/ca5bp6dq0 ... -32bit.xzm
md5sum: 511a986548a648c82385e32e2b78b5d2 crippled_sources-4.4.111-32bit.xzm

crippled_sources-4.4.111-64bit.xzm (16 M)
http://www.mediafire.com/file/gy35l5m0l ... -64bit.xzm
md5sum: 34902dc553f33d0bf633ed58e61622e0 crippled_sources-4.4.111-64bit.xzm

-----------------------------------
[locale]
A locale interface was introduced.
There is only JA locale.
On need, please build your locale by yourself.
1. Edit your locale by referring JA locale source.
JA locale source: /usr/local/share/mkKernel/src/mkKernel.po
2. Converte source to binary with msgfmt command.

Code: Select all

# msgfmt -o mkKernel.mo mkKernel.po
3. Set mkKernel.mo in your locale of /usr/share/locale.
example: de

Code: Select all

# cp mkKernel.mo /usr/share/locale/de/LC_MESSAGES/
-----------------------------------
[archive]

-----------------------------------
[updated on 2017.01.25] Porteus Kernel Builder was updated to 17.01.20.
[updated on 2017.01.30] Porteus Kernel Builder was updated to 17.01.30.
[updated on 2017.02.15] Porteus Kernel Builder was updated to 17.02.15.
[updated on 2017.02.20] Porteus Kernel Builder was updated to 17.02.20.
[updated on 2017.02.28] Porteus Kernel Builder was updated to 17.02.28.
[updated on 2017.03.14] Porteus Kernel Builder was updated to 17.03.08.
[updated on 2017.05.21] Porteus Kernel Builder was updated to 17.05.21.
[updated on 2017.06.12] Porteus Kernel Builder was updated to 17.06.12.
[updated on 2017.06.18] Porteus Kernel Builder was updated to 17.06.18.
[updated on 2017.06.26] Porteus Kernel Builder was updated to 17.06.25.
[updated on 2017.07.10] Porteus Kernel Builder was updated to 17.07.10.
[updated on 2017.07.16] Porteus Kernel Builder was updated to 17.07.16.
[updated on 2017.07.26] Porteus Kernel Builder was updated to 17.07.22.
[updated on 2017.08.05] Porteus Kernel Builder was updated to 17.08.04.
[updated on 2017.08.15] Porteus Kernel Builder was updated to 17.08.15.
[updated on 2017.08.26] Porteus Kernel Builder was updated to 17.08.26.
[updated on 2017.08.28] Porteus Kernel Builder was updated to 17.08.28.
[updated on 2017.08.31] Porteus Kernel Builder was updated to 17.08.31.
[updated on 2017.09.05] Porteus Kernel Builder was updated to 17.09.04.
[updated on 2017.09.22] Porteus Kernel Builder was updated to 17.09.22.
[updated on 2017.09.27] Porteus Kernel Builder was updated to 17.09.27.
[updated on 2017.10.19] Porteus Kernel Builder was updated to 17.10.18.
[updated on 2017.11.19] Porteus Kernel Builder was updated to 17.11.18.
[updated on 2017.11.29] Porteus Kernel Builder was updated to 17.11.28.
[updated on 2017.12.04] Porteus Kernel Builder was updated to 17.12.02..
[updated on 2017.12.10] Porteus Kernel Builder was updated to 17.12.05.
[updated on 2018.01.06] Porteus Kernel Builder was updated to 18.01.06.
[updated on 2018.01.15] Porteus Kernel Builder was updated to 18.01.15.

Thanks.

Re: Porteus Kernel Builder

Posted: 15 Jan 2017, 10:46
by Bogomips
Looks nice. :) Will try when my external disk made fit for linux in order to be able to hold all kernel sources.

Re: Porteus Kernel Builder

Posted: 15 Jan 2017, 13:01
by neko
@Bogomips
Thank you for your interest.
I expect that this tool will be useful for you.

Thanks.

Re: Porteus Kernel Builder

Posted: 16 Jan 2017, 04:27
by neko
New v4.4.43 "ISO update Example" was offered.
Please refer to viewtopic.php?f=75&t=6568&p=52232#p52232

The kernel of Porteus ISO can be update to version 4.4.43 easily without compiling.

Thanks.

Re: Porteus Kernel Builder

Posted: 16 Jan 2017, 06:00
by Jack
Where do you fine these at or download them at?
This prepare is needed for the following actions only.
1)getting AUF patch
2)adapting AUF patch
3)building kernel

Re: Porteus Kernel Builder

Posted: 16 Jan 2017, 07:43
by neko
@Jack
Excuse me that I cannot understand your question exactly.
So, next answer might not match to the intend of your question.

1)getting AUF patch
activate mkKernel-17.01.01-noarch-1.xzm.
make the directory "your_Kernel_Builder_directory/vVVV"
change directory to "your_Kernel_Builder_directory/vVVV"
execute "/usr/local/share/mkKernel/lib/vLLL/get.aufs.patch"
"your_Kernel_Builder_directory/vVVV/aufs.patch" is gotten.

VVV:kernel version number. example 4.9.3
LLL:kernel "version line" number. example 4.9

shell script get.aufs.patch uses "git" comand.
"git" command is included in "05-devel.xzm".

2)adapting AUF patch
make the directory "your_Kernel_Builder_directory/vVVV/AAA"
expand kernel source in "your_Kernel_Builder_directory/vVVV/AAA"
change directory to "your_Kernel_Builder_directory/vVVV/ARCH/linux-VVV"
execute "patch" command with argument "-p1 < ../../aufs.patch"

AAA: compiling architecture. 32 or 64.

"patch" command is included in "05-devel.xzm".

3)building kernel
change directory to "your_Kernel_Builder_directory/vVVV/ARCH/linux-VVV"
copy "/usr/local/share/mkKernel/lib/vLLL/AAAbit.config here.
execute "make" command 4 times with each argument.

"make" command is included in "05-devel.xzm".


For more detail, please refer shell scripts;
/usr/local/sbin/guimkKernel
/usr/local/share/mkKernel/inc/*.inc


Thanks.

Re: Porteus Kernel Builder

Posted: 16 Jan 2017, 09:39
by neko
New "ISO update Example" v4.9.4 was offered.
Please refer to viewtopic.php?f=75&t=6568&p=52232#p52232

The kernel of Porteus ISO can be update to version 4.9.4 easily without compiling.

Thanks.

Re: Porteus Kernel Builder

Posted: 19 Jan 2017, 14:03
by neko
New "ISO update Example" v4.1.38 & v3.18.47 were offered.
Please refer to viewtopic.php?f=75&t=6568&p=52232#p52232

The kernel of Porteus ISO can be update to version 4.1.38/3.18.47 easily without compiling.

Thanks.

Re: Porteus Kernel Builder

Posted: 21 Jan 2017, 16:00
by neko
New "ISO update Example" v4.9.5 was offered.
Please refer to viewtopic.php?f=75&t=6568&p=52232#p52232

The kernel of Porteus ISO can be update to version 4.9.5 easily without compiling.

Thanks.

Re: Porteus Kernel Builder

Posted: 22 Jan 2017, 02:26
by neko
New "ISO update Example" v4.4.44 was offered.
Please refer to viewtopic.php?f=75&t=6568&p=52232#p52232

The kernel of Porteus ISO can be update to version 4.4.44 easily without compiling.

Thanks.

Re: Porteus Kernel Builder

Posted: 23 Jan 2017, 20:45
by neko
New "ISO update Example" v4.9.5 that was adapted by additional patch was offered.
Please refer to viewtopic.php?f=75&t=6568&p=52232#p52232

The kernel of Porteus ISO can be update to version 4.9.5 easily without compiling.


Note:
About additional patch,
please refer to viewtopic.php?f=140&t=6548&start=30#p52448
@biotec, thank you very much for your information.


Thanks.

Re: Porteus Kernel Builder

Posted: 23 Jan 2017, 23:38
by Ed_P
Hi neko. Do you have this file available for Porteus 3.2.2 Cinnamon 64-bit?
http://forum.porteus.org/viewtopic.php?f=140&t=6548&start=30#p52463 wrote:so most likely all that would be needed would be the replacement of vmlinuz.
And if so can it be used as a .xzm module or will I have to reference it outside of the ISO when booting. I do all my booting as ISOs, no installs, which is why I like Porteus. :)

Is your APorteus (Arch Porteus) nucleus the same as the Slackware one Porteus 3.2.2 uses?

Re: Porteus Kernel Builder

Posted: 24 Jan 2017, 00:29
by Bogomips
Problem is that if update to 4.9.5, all drivers for 4.9.0 have to be recompiled or not? :unknown: If that be the case all that's needed is to use your tool to generate updated 4.9.0 iso.

Re: Porteus Kernel Builder

Posted: 24 Jan 2017, 03:25
by neko
@Ed_P
1."Do you have this file available for Porteus 3.2.2 Cinnamon 64-bit?"
Yes, I have. And you can get it.

(1) Download v4.9.5-2.tar.xz
v4.9.5-2.tar.xz (39 M)
http://www.mediafire.com/file/ehvz833ef ... 5-2.tar.xz
md5sum: ddd1e38da063a3a72698764232a5a430 v4.9.5-2.tar.xz

(2) Get vmlinuz from v4.9.5-2.tar.xz

Code: Select all

% su
# ls
v4.9.5-2.tar.xz
# xz -dc v4.9.5-2.tar.xz | tar -x
# ls v4.9.5/*
v4.9.5/a.patch  v4.9.5/aufs.patch

v4.9.5/32:
32bit.config  lib  vmlinuz

v4.9.5/64:
64bit.config  lib  vmlinuz
# mv v4.9.5/64/vmlinuz ToYourAnyDirectory/

2. How to adapt the new patch to Porteus ISO.
(1) Prepare "Porteus Kernel Builder" and v4.9.5-2.tar.xz.
Please refer to viewtopic.php?f=75&t=6568#p52232

(2) Expand v4.9.5-2.tar.xz in Your "Kernel Builder Directory"

Code: Select all

% su
# cd KernelBuilderDirectory
# xz -dc DownloadDirectory/v4.9.5-2.tar.xz | tar -x
(3) GUI menu ----> "Porteus Kernel Builder"
[setting window]
Select KernelBuilderDirectory in "Kernel Builder directory" of "setting window".
Select kernel version line 4.9.5 in left item of "Kernel Version" of "setting window".
Select "Your Porteus 3.2.2 Cinnamon 64-bit" ISO in "ISO whose kernel will be update" circul.
"keep org" item is (default) "check on".
Push "OK".


3. How to adapt the new patch to APorteus ISO.
(1) Prepare "Porteus Kernel Builder" and v4.9.5-2.tar.xz.
Please refer to viewtopic.php?f=75&t=6568#p52232
If you will this on APorteus running environment, "Porteus Kernel Builder" might be already added on.

(2) Expand v4.9.5-2.tar.xz in Your "Kernel Builder Directory"

Code: Select all

% su
# cd KernelBuilderDirectory
# xz -dc DownloadDirectory/v4.9.5-2.tar.xz | tar -x
(3) GUI menu ----> "Porteus Kernel Builder"
[setting window]
Select KernelBuilderDirectory in "Kernel Builder directory" of "setting window".
Select kernel version line 4.9.5 in left item of "Kernel Version" of "setting window".
Select "Your APorteus" ISO in "ISO whose kernel will be update" circul.
"keep org" item is "check off".
Push "OK".


Thanks.

Re: Porteus Kernel Builder

Posted: 24 Jan 2017, 22:33
by Ed_P
neko wrote:@Ed_P
1."Do you have this file available for Porteus 3.2.2 Cinnamon 64-bit?"
Yes, I have. And you can get it.

(1) Download v4.9.5-2.tar.xz
v4.9.5-2.tar.xz (39 M)
http://www.mediafire.com/file/ehvz833ef ... 5-2.tar.xz
md5sum: ddd1e38da063a3a72698764232a5a430 v4.9.5-2.tar.xz

(2) Get vmlinuz from v4.9.5-2.tar.xz

Code: Select all

% su
# ls
v4.9.5-2.tar.xz
# xz -dc v4.9.5-2.tar.xz | tar -x
# ls v4.9.5/*
v4.9.5/a.patch  v4.9.5/aufs.patch

v4.9.5/32:
32bit.config  lib  vmlinuz

v4.9.5/64:
64bit.config  lib  vmlinuz
# mv v4.9.5/64/vmlinuz ToYourAnyDirectory/
Thank you neko. I did these steps, and modified my boot parameters to use the new vmlinux but the boot fails with a blank screen.

I then notice that there is a 2. step which I did not do.
2. How to adapt the new patch to Porteus ISO.
And which is more than I can do.
(3) GUI menu ----> "Porteus Kernel Builder"
The menu image you posted is actually labeled "APorteus Kernel Builder". :)