All posts filed under “another snippet | code

Code/Uncode Discussion Posts

SEED hits the pit again #iknowvention

SEED continues to make mistakes. So is today’s challenge: #include int main(int argc, char *argv[]) { printf(“%d”,4[“seed”]); return 0; } The answer for the above is 0, as the fourth element in the array “seed” does not exist. This is…

SEED makes Blunder! #iknowvention

Alright, so I’m taking part in this SEED Infotech C programming contest, and here’s one of yesterday’s challenges: main() { if(printf(“C for yourself how it works \n”); main(); } One of the options were a) C for yourself how it…

/usr/local/bin/waitpid

A quick script to wait for a certain pid, then once that quits, execute a command. You may ask, why not just do command1 && command2 ? Well, if command1 exits with a non-zero exit status value, command2 will not…

QEMU | Quick Networking for TCP/UDP

Networking with a guest in QEMU is often a headache, TUN/TAP, seriously? Too hectic, let’s stick to the basics, TCP/UDP based. Instead of setting up a really complex set of configuration files, wouldn’t it be easy to just emulate the…

embedded gentoo [uclibc] | nothing beats this

A few uclibc embedded gentoo facts:

  • the compilation of the box takes around 15 minutes
  • at boot up, takes less than 3 megabytes of RAM
  • disk space: 17 megabytes
  • boots in under 8 seconds on a pentium3

link to stage3 tarballs archive
HTOP - Displaying System Statistics
# this is my make.conf, it should be the same in the stage3, if installing anything in the stage3, and even before updating, comment the line INSTALL_MASK=”*.h HACKING.gz TODO.gz”

CFLAGS="-Os -mtune=i386 -pipe"
CXXFLAGS="-Os -mtune=i386 -pipe"
CHOST="i386-gentoo-linux-uclibc"

FEATURES="strip"
MAKEOPTS="-j3"
GENTOO_MIRRORS="http://mirror.bytemark.co.uk/gentoo/ http://www.ibiblio.org/pub/Linux/distributions/gentoo"

USE="-ipv6 -python3 -cracklib -minimal"

LINGUAS="en"
VIDEO_CARDS=""
ACCEPT_KEYWORDS="~x86"
INSTALL_MASK="*.h HACKING.gz TODO.gz"

# download my stage3, from the previous post links, and then prepare to chroot

mount -o bind /dev stage3-*/dev
mount -o bind /proc stage3-*/proc
chroot stage3-*

# update the system, and create the necessary path, if you come across any errors, post them here, and expect a reply soon

emerge -avuDN world
mkdir /mounted

# begin the installation
# install necessary packages

ROOT=/mounted/ emerge -auvND baselayout uclibc bash dropbear pam udev iptables coreutils nano util-linux shadow kbd net-tools grep procps gzip sed findutils mawk htop
mkdir /mounted/proc
mkdir /mounted/dev

noCD? |boot from usb| Sabayon Linux

I had a pen-drive lying around, and so I decided to try out a new distribution of linux, Sabayon Linux.

Why Sabayon?

  • On a base install, everything is there and just works perfectly
  • For a newbie, the hard part is often getting playback codecs, well, Sabayon has them pre-installed
  • Sabayon has focused on the base theme too, it looks great
  • Entropy, their package manager, is really awesome, ‘man entropy’ to see more

Let’s mount and copy the contents of the live image, it can be downloaded here. As super user, do

mkdir /media/sabayon
mount -o loop /path/to/iso/file /media/sabayon

Plug in you pen-drive, wait for the device to settle down first, then copy whatever is important to you from the pen-drive to a hard-disk, and format it after you’ve successfully backed up your previous data

mkfs.ext3 /dev/sdyx

Replace sdyx as per your needs, i. e. the partition where you will be booting the live image from, in my case it was sdc1. You can choose any filesystem type you want to, but let’s just stick to ext3 for now.
Now copy the contents of the live image which you previously mounted to this drive after mounting it

mkdir /media/target
mount /dev/sdyx /media/target
cp -r /media/sabayon/* /media/target/

The parameter ‘-r’ indicates that it should copy recursively, and not just the files present in the top level directory
Now we’ll need to setup that device to boot correctly, you may not want to end up with a few errors and be done with it, do you?

Restore Broken Package DB on Sabayon

System database not found or corrupted, running in safe mode using temporary, empty repository phoenix jude # equo rescue resurrect >> ####### ATTENTION: The installed package database will be resurrected, this will take a LOT of time. >> ####### ATTENTION:…

Easily Sort Your Music Library

Here is a very simple script to sort your whole music library according to their artists, #!/bin/bash # sortMusic v0.4 # make sure this script in in the music directory and you execute this script from there # know issue:…

[HOWTO] Create a hidden loopback device in a .jpg file

Well, I’m sure that you are definitely curious about how do you do this. Let me tell you this, it’s really simple.
Pre-requisites:

  • Image File(any format will do or even any file will do)
  • Linux(I’ve only tested it on this platform but I guess Mac would also do)

Let’s get started, shall we?
First create a standard loopback device.

dd if=/dev/zero of=hiddenimage bs=1M count=10

Let’s see what does this do:
It creates a file called “hiddenimage”, with it’s size as 10MB.
Then, create a filesystem on it.

mkfs.ext4 hiddenimage

mke2fs 1.41.8 (11-July-2009) hiddenimage is not a block special device. Proceed anyway? (y,n) y Filesystem label= OS type: Linux Block size=1024 (log=0) Fragment size=1024 (log=0) 2560 inodes, 10240 blocks 512 blocks (5.00%) reserved for the super user First data block=1 Maximum filesystem blocks=10485760 2 block groups 8192 blocks per group, 8192 fragments per group 1280 inodes per group Superblock backups stored on blocks: 8193 Writing inode tables: done Creating journal (1024 blocks): done Writing superblocks and filesystem accounting information: done This filesystem will be automatically checked every 39 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.