|
|
Line 1: |
Line 1: |
| == What is ExtLinux? ==
| | <noinclude> |
| | | This is the "Ebuild" template. |
| ExtLinux is a simple and modern systemloader bundled with the syslinux tools. Installation is simple and fast, and thanks to our CoreTeam member Slashbeast the configuration is easily automated.
| | It should be called in the following format: |
| | | <pre> |
| = Installing ExtLinux for funtoo =
| | {{Ebuild |
| | | |Summary= |
| Installing ExtLinux for funtoo is known to work and supported too. If you like to try it just emerge syslinux
| | |CatPkg= |
| | | |Maintainer= |
| <console>
| | |Homepage= |
| # ##i##emerge syslinux
| |
| </console>
| |
| | |
| with that you have the complete syslinux tools installed. Another helpful tool you should merge with syslinux is slashbeast's lazykernel tool, so let us merge it too:
| |
| | |
| <console>
| |
| # ##i##emerge lazykernel
| |
| </console>
| |
| | |
| == Installing extlinux ==
| |
| | |
| to install extlinux just follow these steps:
| |
| | |
| <console>
| |
| # ##i##install -d /boot/extlinux
| |
| # ##i##extlinux --install /boot/extlinux
| |
| </console>
| |
| | |
| The next steps are different depending on if you use an MBR or GPT setup and the HDD you installed on and want to boot from. Let us assume that <tt>/dev/sda</tt> is the drive you will be booting from.
| |
| | |
| === MBR ===
| |
| | |
| If you set up your disk with a MBR partition scheme, run the following:
| |
| | |
| <console>
| |
| # ##i##dd bs=440 conv=notrunc count=1 if=/usr/share/syslinux/mbr.bin of=/dev/sda
| |
| # ##i##cp /usr/share/syslinux/menu.c32 /boot/extlinux/
| |
| # ##i##cp /usr/share/syslinux/libutil.c32 /boot/extlinux/
| |
| # ##i##touch /boot/extlinux/extlinux.conf
| |
| </console>
| |
| | |
| === GPT ===
| |
| | |
| On the other hand, if you te up your disk using GPT, run these commands:
| |
| | |
| <console> | |
| # ##i##sgdisk /dev/sda --attributes=1:set:2
| |
| # ##i##sgdisk /dev/sda --attributes=1:show
| |
| 1:2:1 (legacy BIOS bootable)
| |
| # ##i##dd bs=440 conv=notrunc count=1 if=/usr/share/syslinux/gptmbr.bin of=/dev/sda
| |
| # ##i##cp /usr/share/syslinux/menu.c32 /boot/extlinux/
| |
| # ##i##cp /usr/share/syslinux/libutil.c32 /boot/extlinux/
| |
| # ##i##touch /boot/extlinux/extlinux.conf
| |
| </console>
| |
| | |
| == Setting up the Kernel ==
| |
| | |
| Now if you followed our advice to install lazykernel we have a pretty nice way to solve all the setup with a bit of prework and finish it then. If not you should go to the manual part. :)
| |
| | |
| === lazykernel way ===
| |
| | |
| Edit <tt>/etc/lazykernel.conf</tt>:
| |
| | |
| {{file|name=/etc/lazykernel.conf|desc= |body= | |
| # After configuring, hash or remove line below.
| |
| #CONFIGUREFIRST
| |
| | |
| # Number of the kernels to keep so `lazykernel clean` will not propose to remove them. Default: 3
| |
| keep_kernels=5
| |
| | |
| # Sort kernels by 'version' (biggest version first) or by 'mtime' (latest images first). Default: mtime
| |
| # Sorting by version may fail and 3.3.0-rc2 will be marked as newer than 3.3.0.
| |
| #sort_by='version'
| |
| sort_by=mtime
| |
| | |
| # The name for menu entry.
| |
| menu_entry_name="Funtoo Linux"
| |
| | |
| # Specify what initramfs image to use, if any. (Optional)
| |
| initramfs='initramfs.cpio.gz'
| |
| | |
| # Append kernel params, usualy you use it to specify rootfs device, but you can use it to pass switches to initramfs as well.
| |
| kernel_params="rootfstype=ext4 luks enc_root=/dev/sdb3 lvm root=/dev/mapper/vg-root uswsusp resume=/dev/mapper/vg-swap"
| |
| }} | | }} |
| | | </pre> |
| {{fancynote| Please make sure to comment out or delete the second line of the config file...else it will spit out an error.}}
| | Edit the page to see the template text. |
| | | </noinclude><includeonly>{{#widget:AddThis}}<div class="container"><div class="row"> |
| Now let us setup our kernel with lazykernel. If you have a manual kernel just run:
| | <div class="col-md-3 col-md-push-9"> |
| | | <b>[[CatPkg::{{{CatPkg|}}}]]</b> |
| <console> | | <hr>{{#vardefine:cat|{{#explode:{{{CatPkg}}}|/|0}}}}{{#vardefine:pkg|{{#explode:{{{CatPkg}}}|/|1}}}}{{#get_web_data:url=http://ports.funtoo.org/packages.xml|format=xml|use xpath|data=repo_id=/packages/category[@name='{{#var:cat}}']/package[@name='{{#var:pkg}}']/@repository}}{{#vardefine:repoid|{{#if:{{#external_value:repo_id}}|{{#external_value:repo_id}}|gentoo}}}}{{#set:RepoID={{#var:repoid}}}} |
| # ##i##cd <kernel build dir> | | <table border="0" width="100%"> |
| # ##i##lazykernel auto | | {{#if: {{{Maintainer|}}} |<tr><td><i>Current Maintainer(s):</i></td><td>{{#arraymaptemplate:{{{Maintainer|}}}|MaintainerDisplay|,|<br>}}</td></tr> |}}<tr><td><i>Source Repository:</i></td><td>{{#ask:[[Category:Repositories]] [[Repository ID::{{#var:repoid}}]]}}</td></tr> {{#if: {{{Homepage|}}} |<tr><td></td><td>[[Homepage::{{{Homepage|}}}|Homepage]]</td></tr> |}}</table><hr> |
| </console> | | <b>Summary:</b> [[Summary::{{{Summary|}}}]] |
| | | {{#get_web_data:url=http://127.0.0.1:8888/portage/meta/{{{CatPkg}}}|format=xml|use xpath|data=use=/package/@use}}{{#set:Use={{#external_value:use}}}}{{#if: {{#external_value:use}}| |
| This will generate the modules for you. Copy your kernel form <tt>/usr/src/linux</tt> to <tt>/boot</tt> and generate the <tt>/boot/extlinux/extlinux.conf</tt>. The manual kernel will be the only one supported by lazykernel.
| | == Use Flags == |
| | | {{#arraymaptemplate:{{#external_value:use}}|ExternUse|,|}} |
| === manual extlinux.conf ===
| |
| | |
| For other kernels, like those created by genkernel or by the binary USE-flag you need to edit your config by yourself. Just open <tt>/boot/extlinux/extlinux.conf</tt> in your favorite editor:
| |
| | |
| {{file|name=/boot/extlinux/extlinux.conf|desc= |body= | |
| TIMEOUT 30
| |
| UI menu.c32
| |
| | |
| MENU TITLE Boot Menu
| |
| MENU COLOR title 1;37;40
| |
| MENU COLOR border 30;40
| |
| MENU COLOR unsel 37;40
| |
| | |
| LABEL funtoo1
| |
| MENU LABEL Funtoo Linux KERNEL-VERSION
| |
| LINUX /<kernel>
| |
| INITRD /<initramfs>
| |
| APPEND rootfstype=ext4 luks enc_root=/dev/sdb3 lvm root=/dev/mapper/vg-root uswsusp resume=/dev/mapper/vg-swap
| |
| }} | | }} |
| | <div class="bs-head" style="text-decoration: underline; margin-bottom: 15px;">Funtoo News</div> |
| | {{NewsList|3}} |
| | [[News|View More News...]] |
|
| |
|
| That's all. You are now ready for boot. You can also define several LABELs in that list to have multiple kernel selections to choose from before booting.
| | </div><div class="col-xs-12 col-md-9 col-md-pull-3">{{DISPLAYTITLE:{{PAGENAME}}}} |
| | | <div id="ebuild_header"><div id="ebuild_logo" style="padding-bottom: 1em;">[[File:ebuild.png|link=|frameless|class=img-responsive]]</div><div id="ebuild_title"> |
| [[Category:HOWTO]] | | = {{PAGENAME}} = |
| | </div></div> |
| | {{#seo: |
| | |title=Package: {{PAGENAME}} ({{{CatPkg}}}) |
| | |keywords={{{CatPkg}}},ebuild,gentoo,funtoo |
| | |description=A Funtoo Linux ebuild for {{{CatPkg}}}: {{{Summary|}}} |
| | }}{{Tip|This is a wiki page. To edit it, {{CreateAccount}}. Then [[{{#special:userlogin}}|log in]] and then {{#formlink:form=Ebuild|link text=click here to edit this page|target={{FULLPAGENAME}}}}. See our [[Help:Funtoo_Editing_Guidelines|editing guidelines]] to becoming a wiki-editing pro.}} |
| | </includeonly> |