Upload
rubin-azad
View
338
Download
1
Embed Size (px)
DESCRIPTION
Shalk is a Linux Operating system Completely made from Zero, It is home made. It tuns on Kernel 3.8.1 The Desktop Environment is XFCE
Citation preview
Yet Another Linux DistributionYet Another Linux DistributionProject “Shalk”Project “Shalk”
Rubin AzadPunica Bhardwaj
Change in Capstone Project ?
● This Project is inspired by Dr. Geetha ( Head of DCA )
● There has to be flexibility according to the need of time and satisfaction
Why Linux Distribution ?
● challenge to learn the core internal structure.● Its good when its free.● You know the worth when you build the house
by your own.
Approach ?
● Need to have a host Linux base.● Compiling on dedicated Directory and
managing binaries into specific location for further use.
● Prerequisites : ?? ● Rectifying Dependencies *[^_^]*● Kernel Compilation %[@_@]%
SUB-SECTIONS ?
Project is Divided into three [ 3 ] parts:● Constructing a Temporary System.● Making Command line Operating system
Functional.● Giving The Graphics to lead the OS
operational.
Sub-Section 1 Constructing a Temporary System
● [ Minimal System ] system will contain enough tools to start constructing Linux OS.
● This includes :
1. Build a new and host-independent tool chain (compiler, assembler, linker, libraries, and a few useful utilities).
2. Using these tool chain to build the other essential tools.
Sub-Section 1 Constructing a Temporary System
● The files compiled in this section will be installed under the $LFS/tools directory to keep them separate from the files installed in the next chapter and the host production directories. Since the packages compiled here are temporary, we do not want them to pollute the soon-to-be LFS system.
First package to install -- Binutils
● The Binutils package contains a linker, an assembler, and other tools for handling object files.
● Every hardware has its own speed of computation and hence we need to have unit to measure the time taken during computation.
● This Unit is called STANDARD BUILD UNITS [SBU].
What I need to make it ?
GCC-4.7.2 - Pass 1
● The GCC package contains the GNU compiler collection, which includes the C and C++ compilers.
● Approximate build time: 5.5 SBU● Required disk space: 1.5 GB● GCC doesn't detect stack protection correctly, which
causes problems for the build of Glibc-2.17
sed -i '/k prot/agcc_cv_libc_provides_ssp=yes' gcc/configure
Linux-3.8.1 API Headers
● The Linux API Headers (in linux-3.8.1.tar.xz) expose the kernel's API for use by Glibc.
● Approximate build time: 0.1 SBU● Required disk space: 511 MB
Glibc-2.17
● The Glibc package contains the main C library. ● Provides routines for allocating memory,
searching directories, opening and closing files, reading and writing files, string handling, pattern matching, arithmetic, and so on.
● Approximate build time: 5.4 SBU● Required disk space: 554 MB
Skipping to the next section~
Section 2 Installing Basic System Software
Preparing Virtual Kernel File Systems
● File system structure and node devices are to be build before making the os functional
● mkdir -v $LFS/{dev,proc,sys}● mknod -m 600 $LFS/dev/console c 5 1● mknod -m 666 $LFS/dev/null c 1 3● Node creation is must and it should be loaded
before udev.● mount -v --bind /dev $LFS/dev●
Continued...
● mount -v --bind /dev $LFS/dev● mount -vt devpts devpts $LFS/dev/pts● mount -vt proc proc $LFS/proc● mount -vt sysfs sysfs $LFS/sys● And changing the root [ chroot ].
Creating Directories & Symlinks
● It is time to create some structure in the newly created file system. Create a standard directory tree by issuing commands:
GCC-4.7.2
● The GCC package contains the GNU compiler collection, which includes the C and C++ compilers.
● Approximate build time: 53.5 SBU● Required disk space: 2.0 GB
Kernel Installation
● The Linux package contains the Linux kernel.● Approximate build time:1.0 - 5.0 SBU● Required disk space: 540 - 800 MB
Section 3
What is the need of this section ?
● Os created till now can be used to obtain the concerned final operating system.
● Whether you want web server or a desktop system, its time to select what you need.
● This section gives the operating system a highly productive and graphical look.
● Now you will be having two modes for computing CLI and GUI.
Content ● Well , ITS A MESS!
Xorg-7.7
● Xorg implementation of the X Window System.
● This system provides a client/server interface between display hardware.
● Desktop environment, while also providing both the windowing infrastructure and a standardized application interface (API).
Xorg Protocol Headers
● The Xorg protocol headers provide the header files required to build the system, and to allow other applications to build against the installed X Window system.
● Estimated disk space required: 25 MB● Estimated build time: 0.8 SBU● Installed Directories ?
MesaLib
● Mesa is an OpenGL compatible 3D graphics library.
● Estimated disk space required: 330 MB● Estimated build time: 5.5 SBU● Description ?
Xorg Drivers
● Input Device driver.● Output device driver.
Xorg Evdev Driver-2.8.0
● The Xorg Evdev Driver package contains Generic Linux input driver for the Xorg X server. It handles keyboard, mouse, touchpads and wacom devices
● Generic Driver family.● Estimated disk space required: 4.0 MB● Estimated build time: less than 0.1 SBU
Xorg Fbdev Driver-0.4.3
● The Xorg Fbdev Driver package contains the X.Org Video Driver for framebuffer devices.
● This driver is often used as fallback driver if the hardware specific and VESA drivers fail to load or are not present.
● Estimated disk space required: 2.3 MB● Estimated build time: less than 0.1 SBU
XFCE Desktop Environment
● Xfce is a desktop environment that aims to be fast and low on system resources, while still being visually appealing and user friendly.
● Xfce embodies the traditional UNIX philosophy of modularity and re-usability. It consists of a number of components that provide the full functionality one can expect of a modern desktop environment.
Time to Reboot now