Presentations
Tasks
Day 1 Tasks
1.1 Day 1
Introduction to Free Software (Philosphy).
Nomenclature: Gnu/Linux, Free Software, Kernel, Freeware.
What is Distro ? Difference between different distributions like debian,swecha,eswecha,fedora,android etc..
Installation of Gnu/Linux( Debian)
BIOS
Boot Order( Boot files and boot order of Gnu/Linux )
Partition of disk
Grub
1.1.1 Exercises
A one page write up contrasting atleast 4 different Free/Libre/Opensource licenses (Clue: GPLv2,GPLv3,Apache,Mozilla)
Get to know different families of GNU/Linux distros. Debian family, RedHat family, Rolling release distributions like Arch, Gentoo, Slackware. (Clue: http://distrowatch.com)
Differences between micro-kernel and monolithic kernel
Analyzing BIOS with multiple options it has
Experiment with different file systems(ext3,ext4,reiserfs,xfs)
Change default entry in Grub2(Clue: /etc/grub.d)
Restore Grub2
Different methods of installation (Clue: CD, USB, Network)
Day 2 Tasks
1.2 Day 2
Desktop Environments like Gnome, gnome-shell, KDE.
Basic Administration
File system hierarchy( /etc, /proc etc..)
User management ( user, superuser)
Network Configuration using network-manager.
Package Management
Installation of packages using apt-get and synaptic
Debian mirrors, sections of packages main,contrib,non-free.
.deb files and how to install them.
Installation using source files.( configure;make;make install idiom)
Free Software Equivalents
Office Suite
Gimp, Blender
Vlc, firefox etc..
1.2.1 Exercises
Basic
Install KDE
Install LXDE with LXDM
Assign static IP address by editing the relevant file (Clue: etc/network….)
Add a user and assign him to be a sudoer
Change to the DNS to use google's DNS
Get the details of the CPU, RAM, Pid, using files beneath /proc
Check the message log of the computer (Clue: /var)
Modify the index.html to reflect http://localhost
Partition your USB disk with ext4 filesystem (Clue: fdisk, cfdisk)
Use apt to install "sl" and use synaptic to uninstall it
Change the repository to use Indian mirror(IITM)
Download any .deb package of your choice and install using dpkg
List out all the packages installed onto the system
Advanced
Install Openbox with Slim
Remove Slim and replace it with xdm
Configure the following shortcuts in Openbox environment
Keybinding Application
Win+f Iceweasel
Win+t Terminator
Win+v VLC Media Player
Install tint2 and use it as a panel
Replicate Alt+F2 functionality as in gnome ( Clue: gmrun)
Create a symlink of all hidden files to the folder "dotfiles" and copy them to the other computer
Create a user with his home directory to be stored under /home2
Change the apache root to /home/user/site
Insert the USB disk and record the changes that happen to the dbus into a text file
Run iceweasel ; print the pid of iceweasel (Note: Only Pid nothing else. Eg: 14321)
Close iceweasel using a single command using its pid
Make a text file which has a line by line list of all package names installed in the system
Download xmoto source code and install it by compiling the sources
Download latest linux kernel and compile it
Day 3 Tasks
1. Install Code::Blocks, Java, Eclipse, BOUML, Bluefish, MySql(If not installed), MySQL Workbench
Problem : Design and Implement a solution for
a) Accepting workshop registration parameters like name,age,college etc
b) Converting centigrade to fahrenhiet and vice versa
2. Implement the above problems by using GCC. Debug it with GDB
3. Implement the above problems by using Code::Blocks. Also, Debug it using the integrated debugger.
4. Write programs in Java for implementing the above problems. Edit, Compile, Run & Debug using Eclipse
5. Do the following with eclipse
a) Edit standard templates
b) Generate Constructors, Getters/Setters
c) Refactor some variables
d) Observe Call/Type Hierarchies
e) Generate Javadoc
6. Install the WindowBuilder plugin in Eclipse
7. Do task 4 graphically. Use the WindowBuilder Plugin
8. Design UML Diagrams of the Problems
9. Design a MySQL database for the registration parameters. Use the console
10. View the data in the database using the MySQL workbench.
11. Design HTML+CSS pages for the forms