Add instructions to create config file

This commit is contained in:
toloveru 2017-04-05 21:11:23 +02:00
parent 39a79a9705
commit ed0b7e0494
2 changed files with 15 additions and 1 deletions

Binary file not shown.

View File

@ -13,7 +13,21 @@ Ever thought of compiling a custom kernel, but held back because of the need for
### Installation
1. Clone and navigate to the repository, then run `./install`
2. Copy your existing kernel .config file to `/root/.config/kernel/.config`. If you don't know how to create this file, this tool probably isn't for you.
2. Copy your existing kernel .config file to `/root/.config/kernel/.config`.
### Gee, I don't have my own .config file. How can I create one?
The easiest approach (and the one that I used as well), is using the assistance of the [Arch Wiki](https://wiki.archlinux.org/index.php/Kernels/Traditional_compilation).
So, in a nutshell:
1. Grab the kernel source from [kernel.org](https://kernel.org) and its signature, and put it in a kernel build directory.
2. Unpack the archive using `unxz linux-*.*.*.tar.xz` (replace the wildcards with the version number). This will return you a .tar file.
3. Verify the tarball by running `gpg2 --verify linux-*.*.*.tar.sign`
4. Receive the keys if required with `gpg2 --recv-keys KEY_ID` (for more info check on [kernel.org](https://www.kernel.org/category/signatures.html)) and verify again.
5. Unpack the tarball using `tar xf linux-*.*.*.tar`
6. Change directory to linux-*.*.*
7. Clean up the kernel directory using `make clean && make mrproper`.
8. Run `make localmodconfig` to get a basic configuration file.
9. You can add more features like NTFS support, AppArmor, kernel hardening etc. using `make nconfig` and navigating to the respective configuration menus.
10. Don't forget to copy the config file to /root/.config/kernel/.config!
### This script runs as root. Isn't that unsafe?
In a non-interactive script, it's much easier to run priveleged by default and drop priveleges as needed, instead of requiring authentication every time. If you know of a fully non-interactive way of achieving on-the-fly enhanced priveleges though, feel free to open a pull request.