Git Product home page Git Product logo

livekit-improved's Introduction

Live Kit Improved.


This set of scripts will help you to
build your own Live Kit distro. This project is based on
the original Linux Live Kit.

You will need to have the following installed:


  • squashfs-tools
  • genisoimage / mkisofs (optional)
  • zip

Before you build:


  • Store Linux Live Kit in a directory which is not going to be included in your result distro, or else it would be copied to it. The best practice is to make a directory such as for ex.: '/tmp/a', and put all the files there.

    NOTE:

    Make sure to extract and use it on a POSIX-compatible filesystem (for ex: EXT4), since it will create symlinks and such that might not be compatible in for example: FAT and such other filesystems.

  • Before you start building your Live Kit, please consider editing the ./.config file, and tweak it to suit your needs. Most importantly, change the LIVEKITNAME variable.

  • Make sure that the following scripts are executable:

    • ./build
    • ./livekitlib
    • ./initramfs/init (really important, else the kernel will panic!)
    • ./initramfs/gen-initramfs (it is supposed to be executable :P)
  • Make sure you are pointing to the right kernel. If in doubt, change the path in '.config'. Your kernel must support both SquashFS and {AUFS || OverlayFS}, or else you will get an error both while building, and when you actually boot your Live Kit system.

    PROTIP:

    • On most Linux distro-s, the kernel is in /vmlinuz, a symlink to /boot/vmlinuz-* or even /boot/vmlinux-*

    • Debian Jessie's kernel supports both AUFS and SquashFS out-of-the-box. It's recommended to use Debian Jessie as the base OS, but the choice is yours.

    • If you don't need AUFS, or you are just too lazy to compile a custom kernel, then go with OverlayFS. It's supported in most Linux distros (except Debian), and even custom Linux systems that are built around a kernel that have OverlayFS enabled.

  • It's recommended to replace boot background in bootfiles/bootpic.png and edit syslinux.cfg to fit your needs.

    NOTE:

    • When editing the configuration file, make sure to keep all paths pointing to /boot/, since it will be replaced to /LIVEKITNAME/boot/ during the build session.
  • Linux Live Kit comes with precompiled static binaries in ./initramfs directory. Those may be outdated but will work. You may replace them by your own statically linked binaries, if you know how to compile them.

  • If you want to boot your Live Kit from a CD, you'll need to recompile syslinux.bin and/or isolinux.bin else it won't be able to boot your Live Kit from directory "/LIVEKITNAME".

    There is a script prepared for you which will do all of the building. Simply go to directory ./tools/ and run isolinux.bin-update, it will rebuild isolinux.bin automatically by downloading SysLinux sources, patching them using your actual LIVEKITNAME and recompiling. This step is not needed if you only need the ZIP archive version.

  • If you have tmpfs mounted on /tmp, make sure you have enough (or maybe even a lot of) RAM, since Live Kit will store lots of data to the target. If you don't have enough (or even went out of) RAM, make sure that /tmp is a regular on-disk directory.

  • If you want to include your own bundules, then the 'include_bund/' directory might come in handy. Just make sure that the file extension will match with your chosen .BEXT extension.

When you're ready, run the build script to build your Live Kit system.

The script will automatically:

  • Parse .config to suit your needs
  • Configure 'livekitlib' according to .config
  • Do all the hard work for you
  • Will automatically check for errors
  • Will warn you if you don't have the correct programs installed

livekit-improved's People

Contributors

glensc avatar johndah4x0r avatar tomas-m avatar

Stargazers

 avatar

Watchers

 avatar

Forkers

atlury ankris812

livekit-improved's Issues

mount overlay error

There is a error in prepare_ovelayfs() when i use the code in Qemu.
The error is "mount: mountint overlay on /memory/union failed: Invalid argument"
"FatalError: Failed to prepare OverlayFS union!"
Can you bug it ? Thanks.

error on line 494 of livekitlib when using in virtualbox

Hello and than you for this project. Was looking for a live kit that used overlay.

I just tried to run this on a image I am building in virtualbox. I did change a value in .config and it was the iso name but the unexpected output was:

Changing current directory to .
./livekitlib: line: 494 syntax error nearr unexpected token 'modprobe'
./livekitlib: line: 494 '              modprobe "$MOD" 2>/dev/null'

I did not change anything in livekitlib as I didnt see what to align with .config. Used livekit from tomas before but I am just not sure what to change if needed. I should mention that I am using this on a non systemd arch linux derivative and testing overlayfs. Kernel is 4.17.2 and I can manually modprobe overlay with root permissions and no return comes making me think it loads the overlay kernel module. Please let me know what I am doing wrong. Thank you in advance

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.