slaxworkshop

Tuesday, August 22, 2006

 

Netwizard

Well, I am totally disgusted with the state of Linux Wireless card configuration and decided to do something about it. Additionally, Linux Live setups are a bit different as well so I figured I would address those needs as well.

I am working on a "dialog wizard" for wireless configuration and module creation. I am calling it NetWizard. As part of a sister project, I modified netconfig to be KDE kdialog based... I call it knetconfig. I also intend on modifying netconfig to actually DO something such as CONFIGURE and BRING UP the interface! As it stands now, netconfig is almost worthless so I made a few tweaks that I will back port to netconfig from knetconfig. If you want a copy of knetconfig, PM me.

Netwizard
I have most of it roughed out and it works for my configurations. I will release it into the wild most likely via speedyshare first then via a module. Anyone who would like to try it out sooner or beta test for me can PM me. Right now my focus is ndiswrapper configurations and DHCP. Hopefully after this weekend I will have the ndiswrapper/DHCP part ready (I just want to test some more). I am also almost done with ndiswrapper with StaticIP configurations as well but I want to spiff it up some more. Then I will focus on kernel network driver stuff.

Right now the real issue with Static configurations is what framework to use. I think I will use the ndiswrapper-framework I put in place... but I am not sure since everyone seems to have their own way.


Time passes...

Well I made much progress with NetWizard this weekend. I have reengineered it to utilize Kommander. My main issues with Kommander is the fact that the project seems to progress very rapidly and the documentation about it does not. Sad BOOO! Also, the rapid development of Kommander made the one shipped with the latest KDE very out of date.

I experimented a great deal with it and came up with a Frontend that I like better than the "dialog wizard" approach. The "dialog wizard" approach actually works very well... but it gets a little tiresome to answer 30 questions instead of filling out 4 or 5 panels.

My next step is that I will reengineer the code for NetWizard and knetconfig to just process the options passed to it.

The Project Benefits

A few good things should come from this project:
1) a good parameter based network configuration program is always a nice thing.
2) The back-end parameter based network configuration program can be used with any front-end.
3) The front-end Kommander project can be used with any backend program.
4) The front-end Kommander project can be used as a template for others to learn from, hopefully helping people to make their own Wizards for SLAX.
5) Features that I am not supporting (e.g. WPA encryption), can be added by someone with the need to add those particular features.
6) The parameter parsing code can be helpful for other scripts.

First releases Features (soon I hope):

1) Easy to use Wizard for configuring SLAX network interfaces.
2) NDISWrapper driver configuration for: DHCP and Static configurations.
3) Front-end produces output file of options chosen within the Wizard.
4) back-end program will use config file or parameters to setup network adapters and make a SLAX module of the configuration.
5) back-end program can be used by any frontend.
6) Kommander front-end will be available also as a binary.

Future Features:

1) Database of known working configurations to allow "auto" config. This location of known drivers will be in the DB.
2) "Database" tool to allow adding to the configuration knowledgebase. Many contributors makes for rapid grown and for easier auto config for the populace at large.
3) Auto driver download from known sites hosting drives. This is just an automated extension of #1's location information.
4) Kernel driver configuration for: DHCP and Static configurations. Both existing supported drivers and newly compiled drivers will be supported.

 

HowTo Build Ekiga

Post in progress...

HowTo Build Ekiga

This HowTo is also available here: www.slax.org/forum/viewtopic.php?t=13701
This is to build the needed tools/apps supplied in these three modules:

ekiga-1.0-2.0.2 www.slax.org/modules.php?id=1462
Qt-4.1.3 www.slax.org/modules.php?id=1460
mono-1.1.15_2 www.slax.org/modules.php?id=1461

I figured since it was SUCH a chore to build ekiga (40 Modules) on SLAX (Slackware) and to be honest, every other Linux, I figured this HowTo may assist the world in building ekiga on other platforms. One of the gotcha's ](*,) that was preventing me from using my $10 web cam mentioned here (www.slax.org/forum/viewtopic.php?t=12904) was getting v4l2 drivers to compile for SLAX (Slackware 10.2 has the same problem). The "magic sauce" is in the pwlib section below if you want to sit dazed with the shock and awe of Linux development secrets. Lol

Anyway, I HAD to get that web cam working so that the entire world could do cross-platform teleconferencing for under $20! I really feel the world is now a better place because of this ekiga module =D> The people of the world now have no excuses to prevent them from communicating even across the world for such a low cost and such little work (IF you download the modules!)


Ingredients:
To build these modules, for SLAX Standard Edition (5.1.6 +), you will need:

1) A lot of time
2) A lot of patience
3) A lot of RAM (512MB min recommended)
4) SLAX Standard Edition (5.1.6 and higher) found here: ftp.linux.cz/pub/linux/slax/SLAX-5.x/slax-5.1.7b.iso
5) Kernel_sources_2_6_16_x.mo found here:
www.slax.org/modules.php?action=download&id=1052
6) Official_Development_module_5_1_4.mo module found here: www.slax.org/modules.php?action=download&id=1051
7) Paco found here: www.slax.org/modules.php?action=download&id=1350
8) QnDModuleMaker.sh found here: www.slax.org/modules.php?action=download&id=1351

NOTE: If you have to reboot because of lack of memory/tmp space after building modules... put the already made modules into your /boot/modules folder so that they are available. You will always need an "make/installed" instance of glib since the install does include all the includes (how dumb!), so it is a good idea to copy that build directory so that you can do a make install after rebooting to ensure you have all the needed headers.

Build qt4 and Python in a standard way... ./configure;make;make install... instructions coming...

Install Mono... use the mono installer with paco/QnDModuleMaker.sh to make module.

The Build the rest like this...

Code:
MODULE_DIR=/mnt/sda1_removable/test-ekiga/
mkdir -p ${MODULE_DIR}

#######################
# glib-2.11.3
#######################
cd /tmp
wget ftp.gnome.org/pub/gnome/sources/glib/2.11/glib-2.11.3.tar.gz
tar zxf glib-2.11.3.tar.gz
cd glib-2.11.3
./configure --prefix=/usr
make
checkinstall -y
mkdir /tmp/glib-2.11.3_wk_dir
echo Creating package glib-2.11.3-i386-1.tgz
installpkg -root /tmp/glib-2.11.3_wk_dir glib-2.11.3-i386-1.tgz
cd /tmp/glib-2.11.3_wk_dir
rm -rf var
cd /tmp
echo Creating module glib-2.11.3-i386-1.mo /tmp/glib-2.11.3_wk_dir
dir2mo /tmp/glib-2.11.3_wk_dir glib-2.11.3-i386-1.mo
cp glib-2.11.3-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# gtk+-2.8.18
#######################
cd /tmp
wget ftp.gtk.org/pub/gtk/v2.8/gtk+-2.8.18.tar.gz
tar zxf gtk+-2.8.18.tar.gz
cd gtk+-2.8.18
./configure
make
checkinstall -y
mkdir /tmp/gtk+-2.8.18_wk_dir
echo Creating package gtk+-2.8.18-i386-1.tgz
installpkg -root /tmp/gtk+-2.8.18_wk_dir gtk+-2.8.18-i386-1.tgz
cd /tmp/gtk+-2.8.18_wk_dir
rm -rf var
cd /tmp
echo Creating module gtk+-2.8.18-i386-1.mo using /tmp/gtk+-2.8.18_wk_dir
dir2mo /tmp/gtk+-2.8.18_wk_dir gtk+-2.8.18-i386-1.mo
cp gtk+-2.8.18-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# audiofile-0.2.6
#######################
cd /tmp
wget www.68k.org/~michael/audiofile/audiofile-0.2.6.tar.gz
tar zxf audiofile-0.2.6.tar.gz
cd audiofile-0.2.6
./configure
make
checkinstall -y
mkdir /tmp/audiofile-0.2.6_wk_dir
echo Creating package audiofile-0.2.6-i386-1.tgz
installpkg -root /tmp/audiofile-0.2.6_wk_dir audiofile-0.2.6-i386-1.tgz
cd /tmp/audiofile-0.2.6_wk_dir
rm -rf var
cd /tmp
echo Creating module audiofile-0.2.6-i386-1.mo using /tmp/audiofile-0.2.6_wk_dir
dir2mo /tmp/audiofile-0.2.6_wk_dir audiofile-0.2.6-i386-1.mo
cp audiofile-0.2.6-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# libIDL-0.8.6
#######################
cd /tmp
wget ftp.gnome.org/pub/GNOME/sources/libIDL/0.8/libIDL-0.8.6.tar.gz
tar zxf libIDL-0.8.6.tar.gz
cd libIDL-0.8.6
./configure
make
checkinstall -y
mkdir /tmp/libIDL-0.8.6_wk_dir
echo Creating package libIDL-0.8.6-i386-1.tgz
installpkg -root /tmp/libIDL-0.8.6_wk_dir libIDL-0.8.6-i386-1.tgz
cd /tmp/libIDL-0.8.6_wk_dir
rm -rf var
cd /tmp
echo Creating module libIDL-0.8.6-i386-1.mo using /tmp/libIDL-0.8.6_wk_dir
dir2mo /tmp/libIDL-0.8.6_wk_dir libIDL-0.8.6-i386-1.mo
cp libIDL-0.8.6-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# popt-1.10.4
#######################
cd /tmp
wget wraptastic.org/pub/rpm-4.4.x/popt-1.10.4.tar.gz
tar zxf popt-1.10.4.tar.gz
cd popt-1.10.4
./configure --prefix=/usr
make
checkinstall -y
mkdir /tmp/popt-1.10.4_wk_dir
echo Creating package popt-1.10.4-i386-1.tgz
installpkg -root /tmp/popt-1.10.4_wk_dir popt-1.10.4-i386-1.tgz
cd /tmp/popt-1.10.4_wk_dir
rm -rf var
cd /tmp
echo Creating module popt-1.10.4-i386-1.mo using /tmp/popt-1.10.4_wk_dir
dir2mo /tmp/popt-1.10.4_wk_dir popt-1.10.4-i386-1.mo
cp popt-1.10.4-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# linc-1.0.3
#######################
cd /tmp
wget ftp.gnome.org/pub/GNOME/sources/linc/1.0/linc-1.0.3.tar.bz2
tar jxf linc-1.0.3.tar.bz2
cd linc-1.0.3
./configure
make
checkinstall -y
mkdir /tmp/linc-1.0.3_wk_dir
echo Creating package linc-1.0.3-i386-1.tgz
installpkg -root /tmp/linc-1.0.3_wk_dir linc-1.0.3-i386-1.tgz
cd /tmp/linc-1.0.3_wk_dir
rm -rf var
cd /tmp
echo Creating module linc-1.0.3-i386-1.mo using /tmp/linc-1.0.3_wk_dir
dir2mo /tmp/linc-1.0.3_wk_dir linc-1.0.3-i386-1.mo
cp linc-1.0.3-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# freetype-2.2.1
#######################
cd /tmp
wget easynews.dl.sourceforge.net/sourceforge/freetype/freetype-2.2.1.tar.gz
tar zxf freetype-2.2.1.tar.gz
cd freetype-2.2.1
./configure
make
checkinstall -y
mkdir /tmp/freetype-2.2.1_wk_dir
echo Creating package freetype-2.2.1-i386-1.tgz
installpkg -root /tmp/freetype-2.2.1_wk_dir freetype-2.2.1-i386-1.tgz
cd /tmp/freetype-2.2.1_wk_dir
rm -rf var
cd /tmp
echo Creating module freetype-2.2.1-i386-1.mo using /tmp/freetype-2.2.1_wk_dir
dir2mo /tmp/freetype-2.2.1_wk_dir freetype-2.2.1-i386-1.mo
cp freetype-2.2.1-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# atk-1.10.3
#######################
cd /tmp
wget ftp.gtk.org/pub/gtk/v2.8/atk-1.10.3.tar.gz
tar zxf atk-1.10.3.tar.gz
cd atk-1.10.3
./configure
make
checkinstall -y
mkdir /tmp/atk-1.10.3_wk_dir
echo Creating package atk-1.10.3-i386-1.tgz
installpkg -root /tmp/atk-1.10.3_wk_dir atk-1.10.3-i386-1.tgz
cd /tmp/atk-1.10.3_wk_dir
rm -rf var
cd /tmp
echo Creating module atk-1.10.3-i386-1.mo using /tmp/atk-1.10.3_wk_dir
dir2mo /tmp/atk-1.10.3_wk_dir atk-1.10.3-i386-1.mo
cp atk-1.10.3-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# fontconfig-2.3.95
#######################
cd /tmp
wget fontconfig.org/release/fontconfig-2.3.95.tar.gz
tar zxf fontconfig-2.3.95.tar.gz
cd fontconfig-2.3.95
./configure
make
checkinstall -y
mkdir /tmp/fontconfig-2.3.95_wk_dir
echo Creating package fontconfig-2.3.95-i386-1.tgz
installpkg -root /tmp/fontconfig-2.3.95_wk_dir fontconfig-2.3.95-i386-1.tgz
cd /tmp/fontconfig-2.3.95_wk_dir
rm -rf var
cd /tmp
echo Creating module fontconfig-2.3.95-i386-1.mo using /tmp/fontconfig-2.3.95_wk_dir
dir2mo /tmp/fontconfig-2.3.95_wk_dir fontconfig-2.3.95-i386-1.mo
cp fontconfig-2.3.95-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# libpng-1.2.8
#######################
cd /tmp
wget ftp.gtk.org/pub/gtk/v2.8/dependencies/libpng-1.2.8.tar.bz2
tar jxf libpng-1.2.8.tar.bz2
cd libpng-1.2.8
cp scripts/makefile.std makefile
make
checkinstall -y
mkdir /tmp/libpng-1.2.8_wk_dir
echo Creating package libpng-1.2.8
installpkg -root /tmp/libpng-1.2.8_wk_dir libpng-1.2.8-i386-1.tgz
cd /tmp/libpng-1.2.8_wk_dir
rm -rf var
cd /tmp
echo Creating module using /tmp/libpng-1.2.8_wk_dir
dir2mo /tmp/libpng-1.2.8_wk_dir libpng-1.2.8.mo
cp libpng-1.2.8.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
uselivemod ${MODULE_DIR}libpng-1.2.8.mo
#######################
# ORBit2-2.14.0
#######################
cd /tmp
wget ftp.gnome.org/pub/gnome/sources/ORBit2/2.14/ORBit2-2.14.0.tar.gz
tar zxf ORBit2-2.14.0.tar.gz
cd ORBit2-2.14.0
./configure
make
checkinstall -y
mkdir /tmp/ORBit2-2.14.0_wk_dir
echo Creating package ORBit2-2.14.0-i386-1.tgz
installpkg -root /tmp/ORBit2-2.14.0_wk_dir ORBit2-2.14.0-i386-1.tgz
cd /tmp/ORBit2-2.14.0_wk_dir
rm -rf var
cd /tmp
echo Creating module ORBit2-2.14.0-i386-1.mo using /tmp/ORBit2-2.14.0_wk_dir
dir2mo /tmp/ORBit2-2.14.0_wk_dir ORBit2-2.14.0-i386-1.mo
cp ORBit2-2.14.0-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# GConf-2.14.0
#######################
cd /tmp
wget ftp.gnome.org/pub/GNOME/sources/GConf/2.14/GConf-2.14.0.tar.gz
tar zxf GConf-2.14.0.tar.gz
cd GConf-2.14.0
./configure
make
checkinstall -y
mkdir /tmp/GConf-2.14.0_wk_dir
echo Creating package GConf-2.14.0-i386-1.tgz
installpkg -root /tmp/GConf-2.14.0_wk_dir GConf-2.14.0-i386-1.tgz
cd /tmp/GConf-2.14.0_wk_dir
rm -rf var
cd /tmp
echo Creating module GConf-2.14.0-i386-1.mo using /tmp/GConf-2.14.0_wk_dir
dir2mo /tmp/GConf-2.14.0_wk_dir GConf-2.14.0-i386-1.mo
cp GConf-2.14.0-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# dbus-0.62
#######################
cd /tmp
wget dbus.freedesktop.org/releases/dbus-0.62.tar.gz
tar zxf dbus-0.62.tar.gz
cd dbus-0.62
./configure
make
checkinstall -y
mkdir /tmp/dbus-0.62_wk_dir
echo Creating package dbus-0.62-i386-1.tgz
installpkg -root /tmp/dbus-0.62_wk_dir dbus-0.62-i386-1.tgz
cd /tmp/dbus-0.62_wk_dir
rm -rf var
cd /tmp
echo Creating module dbus-0.62-i386-1.mo using /tmp/dbus-0.62_wk_dir
dir2mo /tmp/dbus-0.62_wk_dir dbus-0.62-i386-1.mo
cp dbus-0.62-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# esound-0.2.36
#######################
cd /tmp
wget ftp.gnome.org/pub/GNOME/sources/esound/0.2/esound-0.2.36.tar.gz
tar zxf esound-0.2.36.tar.gz
cd esound-0.2.36
./configure
make
checkinstall -y
mkdir /tmp/esound-0.2.36_wk_dir
echo Creating package esound-0.2.36-i386-1.tgz
installpkg -root /tmp/esound-0.2.36_wk_dir esound-0.2.36-i386-1.tgz
cd /tmp/esound-0.2.36_wk_dir
rm -rf var
cd /tmp
echo Creating module esound-0.2.36-i386-1.mo using /tmp/esound-0.2.36_wk_dir
dir2mo /tmp/esound-0.2.36_wk_dir esound-0.2.36-i386-1.mo
cp esound-0.2.36-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# gnome-keyring-0.5.1
#######################
cd /tmp
wget ftp.gnome.org/pub/GNOME/sources/gnome-keyring/0.5/gnome-keyring-0.5.1.tar.gz
tar zxf gnome-keyring-0.5.1.tar.gz
cd gnome-keyring-0.5.1
./configure
make
checkinstall -y
mkdir /tmp/gnome-keyring-0.5.1_wk_dir
echo Creating package gnome-keyring-0.5.1-i386-1.tgz
installpkg -root /tmp/gnome-keyring-0.5.1_wk_dir gnome-keyring-0.5.1-i386-1.tgz
cd /tmp/gnome-keyring-0.5.1_wk_dir
rm -rf var
cd /tmp
echo Creating module gnome-keyring-0.5.1-i386-1.mo using /tmp/gnome-keyring-0.5.1_wk_dir
dir2mo /tmp/gnome-keyring-0.5.1_wk_dir gnome-keyring-0.5.1-i386-1.mo
cp gnome-keyring-0.5.1-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# libbonobo-2.14.0
#######################
cd /tmp
wget ftp.gnome.org/pub/GNOME/sources/libbonobo/2.14/libbonobo-2.14.0.tar.gz
tar zxf libbonobo-2.14.0.tar.gz
cd libbonobo-2.14.0
./configure
make
checkinstall -y
mkdir /tmp/libbonobo-2.14.0_wk_dir
echo Creating package libbonobo-2.14.0-i386-1.tgz
installpkg -root /tmp/libbonobo-2.14.0_wk_dir libbonobo-2.14.0-i386-1.tgz
cd /tmp/libbonobo-2.14.0_wk_dir
rm -rf var
cd /tmp
echo Creating module libbonobo-2.14.0-i386-1.mo using /tmp/libbonobo-2.14.0_wk_dir
dir2mo /tmp/libbonobo-2.14.0_wk_dir libbonobo-2.14.0-i386-1.mo
cp libbonobo-2.14.0-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# libsoup-2.2.94
#######################
cd /tmp
wget ftp.gnome.org/pub/GNOME/sources/libsoup/2.2/libsoup-2.2.94.tar.gz
tar zxf libsoup-2.2.94.tar.gz
cd libsoup-2.2.94
./configure
make
checkinstall -y
mkdir /tmp/libsoup-2.2.94_wk_dir
echo Creating package libsoup-2.2.94-i386-1.tgz
installpkg -root /tmp/libsoup-2.2.94_wk_dir libsoup-2.2.94-i386-1.tgz
cd /tmp/libsoup-2.2.94_wk_dir
rm -rf var
cd /tmp
echo Creating module libsoup-2.2.94-i386-1.mo using /tmp/libsoup-2.2.94_wk_dir
dir2mo /tmp/libsoup-2.2.94_wk_dir libsoup-2.2.94-i386-1.mo
cp libsoup-2.2.94-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# gnome-mime-data-2.4.2
#######################
cd /tmp
wget ftp.gnome.org/pub/GNOME/sources/gnome-mime-data/2.4/gnome-mime-data-2.4.2.tar.gz
tar zxf gnome-mime-data-2.4.2.tar.gz
cd gnome-mime-data-2.4.2
./configure
make
checkinstall -y
mkdir /tmp/gnome-mime-data-2.4.2_wk_dir
echo Creating package gnome-mime-data-2.4.2-i386-1.tgz
installpkg -root /tmp/gnome-mime-data-2.4.2_wk_dir gnome-mime-data-2.4.2-i386-1.tgz
cd /tmp/gnome-mime-data-2.4.2_wk_dir
rm -rf var
cd /tmp
echo Creating module gnome-mime-data-2.4.2-i386-1.mo using /tmp/gnome-mime-data-2.4.2_wk_dir
dir2mo /tmp/gnome-mime-data-2.4.2_wk_dir gnome-mime-data-2.4.2-i386-1.mo
cp gnome-mime-data-2.4.2-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# gnome-vfs-2.15.2
#######################
cd /tmp
wget ftp.gnome.org/pub/GNOME/sources/gnome-vfs/2.15/gnome-vfs-2.15.2.tar.gz
tar zxf gnome-vfs-2.15.2.tar.gz
cd gnome-vfs-2.15.2
./configure
make
checkinstall -y
mkdir /tmp/gnome-vfs-2.15.2_wk_dir
echo Creating package gnome-vfs-2.15.2-i386-1.tgz
installpkg -root /tmp/gnome-vfs-2.15.2_wk_dir gnome-vfs-2.15.2-i386-1.tgz
cd /tmp/gnome-vfs-2.15.2_wk_dir
rm -rf var
cd /tmp
echo Creating module gnome-vfs-2.15.2-i386-1.mo using /tmp/gnome-vfs-2.15.2_wk_dir
dir2mo /tmp/gnome-vfs-2.15.2_wk_dir gnome-vfs-2.15.2-i386-1.mo
cp gnome-vfs-2.15.2-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# libgnome-2.14.1
#######################
cd /tmp
wget ftp.gnome.org/pub/GNOME/sources/libgnome/2.14/libgnome-2.14.1.tar.gz
tar zxf libgnome-2.14.1.tar.gz
cd libgnome-2.14.1
./configure
make
checkinstall -y
mkdir /tmp/libgnome-2.14.1_wk_dir
echo Creating package libgnome-2.14.1-i386-1.tgz
installpkg -root /tmp/libgnome-2.14.1_wk_dir libgnome-2.14.1-i386-1.tgz
cd /tmp/libgnome-2.14.1_wk_dir
rm -rf var
cd /tmp
echo Creating module libgnome-2.14.1-i386-1.mo using /tmp/libgnome-2.14.1_wk_dir
dir2mo /tmp/libgnome-2.14.1_wk_dir libgnome-2.14.1-i386-1.mo
cp libgnome-2.14.1-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# docbookx412
#######################
cd /tmp
wget scrollkeeper.sourceforge.net/data/docbookx412.tgz
tar zxf docbookx412.tgz
cd docbookx412
checkinstall -y
mkdir /tmp/docbookx412_wk_dir
echo Creating package docbookx412-docbookx412-i386-1.tgz
installpkg -root /tmp/docbookx412_wk_dir docbookx412-docbookx412-i386-1.tgz
cd /tmp/docbookx412_wk_dir
rm -rf var
cd /tmp
echo Creating module docbookx412-docbookx412-i386-1.mo using /tmp/docbookx412_wk_dir
dir2mo /tmp/docbookx412_wk_dir docbookx412-docbookx412-i386-1.mo
cp docbookx412-docbookx412-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# docbook-xsl-1.48
#######################
cd /tmp
wget scrollkeeper.sourceforge.net/data/docbook-xsl-1.48.tgz
tar zxf docbook-xsl-1.48.tgz
cd docbook-xsl-1.48
checkinstall -y
mkdir /tmp/docbook-xsl-1.48_wk_dir
echo Creating package docbook-xsl-1.48-i386-1.tgz
installpkg -root /tmp/docbook-xsl-1.48_wk_dir docbook-xsl-1.48-i386-1.tgz
cd /tmp/docbook-xsl-1.48_wk_dir
rm -rf var
cd /tmp
echo Creating module docbook-xsl-1.48-i386-1.mo using /tmp/docbook-xsl-1.48_wk_dir
dir2mo /tmp/docbook-xsl-1.48_wk_dir docbook-xsl-1.48-i386-1.mo
cp docbook-xsl-1.48-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# scrollkeeper-0.3.14
#######################
cd /tmp
wget easynews.dl.sourceforge.net/sourceforge/scrollkeeper/scrollkeeper-0.3.14.tar.gz
tar zxf scrollkeeper-0.3.14.tar.gz
cd scrollkeeper-0.3.14
./configure
make
checkinstall -y
mkdir /tmp/scrollkeeper-0.3.14_wk_dir
echo Creating package scrollkeeper-0.3.14-i386-1.tgz
installpkg -root /tmp/scrollkeeper-0.3.14_wk_dir scrollkeeper-0.3.14-i386-1.tgz
cd /tmp/scrollkeeper-0.3.14_wk_dir
rm -rf var
cd /tmp
echo Creating module scrollkeeper-0.3.14-i386-1.mo using /tmp/scrollkeeper-0.3.14_wk_dir
dir2mo /tmp/scrollkeeper-0.3.14_wk_dir scrollkeeper-0.3.14-i386-1.mo
cp scrollkeeper-0.3.14-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# pwlib-1.10.1
# Magic sauce to make the v4l2 compile...
cd /usr/src
rm -f linux
ln -s linux-2.6.16 linux
cd /usr/include/
rm -rf asm asm-generic linux
ln -s /usr/src/linux/include/asm
ln -s /usr/src/linux/include/asm-generic
ln -s /usr/src/linux/include/linux

cd /tmp
wget www.ekiga.org/admin/downloads/latest/sources/sources/pwlib-1.10.1.tar.gz
tar zxf pwlib-1.10.1.tar.gz
cd pwlib-1.10.1
./configure --enable-plugins --enable-v4l --enable-v4l2 --enable-avc --enable-dc --enable-alsa --enable-oss
make
checkinstall -y
mkdir /tmp/pwlib-1.10.1_wk_dir
echo Creating package pwlib-1.10.1-i386-1.tgz
installpkg -root /tmp/pwlib-1.10.1_wk_dir pwlib-1.10.1-i386-1.tgz
cd /tmp/pwlib-1.10.1_wk_dir
rm -rf var
cd /tmp
echo Creating module pwlib-1.10.1-i386-1.mo using /tmp/pwlib-1.10.1_wk_dir
dir2mo /tmp/pwlib-1.10.1_wk_dir pwlib-1.10.1-i386-1.mo
cp pwlib-1.10.1-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# opal-2.2.2
#######################
cd /tmp
wget www.ekiga.org/admin/downloads/latest/sources/sources/opal-2.2.2.tar.gz
tar zxf opal-2.2.2.tar.gz
cd opal-2.2.2
./configure
make
checkinstall -y
mkdir /tmp/opal-2.2.2_wk_dir
echo Creating package opal-2.2.2-i386-1.tgz
installpkg -root /tmp/opal-2.2.2_wk_dir opal-2.2.2-i386-1.tgz
cd /tmp/opal-2.2.2_wk_dir
rm -rf var
cd /tmp
echo Creating module opal-2.2.2-i386-1.mo using /tmp/opal-2.2.2_wk_dir
dir2mo /tmp/opal-2.2.2_wk_dir opal-2.2.2-i386-1.mo
cp opal-2.2.2-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# gnome-doc-utils-0.7.1
#######################
cd /tmp
wget ftp.gnome.org/pub/GNOME/sources/gnome-doc-utils/0.7/gnome-doc-utils-0.7.1.tar.gz
tar zxf gnome-doc-utils-0.7.1.tar.gz
cd gnome-doc-utils-0.7.1
./configure
make
checkinstall -y
mkdir /tmp/gnome-doc-utils-0.7.1_wk_dir
echo Creating package gnome-doc-utils-0.7.1-i386-1.tgz
installpkg -root /tmp/gnome-doc-utils-0.7.1_wk_dir gnome-doc-utils-0.7.1-i386-1.tgz
cd /tmp/gnome-doc-utils-0.7.1_wk_dir
rm -rf var
cd /tmp
echo Creating module gnome-doc-utils-0.7.1-i386-1.mo using /tmp/gnome-doc-utils-0.7.1_wk_dir
dir2mo /tmp/gnome-doc-utils-0.7.1_wk_dir gnome-doc-utils-0.7.1-i386-1.mo
cp gnome-doc-utils-0.7.1-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# libxml2-2.6.26
#######################
cd /tmp
wget ftp.gnome.org/pub/GNOME/sources/libxml2/2.6/libxml2-2.6.26.tar.gz
tar zxf libxml2-2.6.26.tar.gz
cd libxml2-2.6.26
./configure
make
checkinstall -y
mkdir /tmp/libxml2-2.6.26_wk_dir
echo Creating package libxml2-2.6.26-i386-1.tgz
installpkg -root /tmp/libxml2-2.6.26_wk_dir libxml2-2.6.26-i386-1.tgz
cd /tmp/libxml2-2.6.26_wk_dir
rm -rf var
cd /tmp
echo Creating module libxml2-2.6.26-i386-1.mo using /tmp/libxml2-2.6.26_wk_dir
dir2mo /tmp/libxml2-2.6.26_wk_dir libxml2-2.6.26-i386-1.mo
cp libxml2-2.6.26-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# libxslt-1.1.17
#######################
cd /tmp
wget ftp.gnome.org/pub/GNOME/sources/libxslt/1.1/libxslt-1.1.17.tar.gz
tar zxf libxslt-1.1.17.tar.gz
cd libxslt-1.1.17
./configure
make
checkinstall -y
mkdir /tmp/libxslt-1.1.17_wk_dir
echo Creating package libxslt-1.1.17-i386-1.tgz
installpkg -root /tmp/libxslt-1.1.17_wk_dir libxslt-1.1.17-i386-1.tgz
cd /tmp/libxslt-1.1.17_wk_dir
rm -rf var
cd /tmp
echo Creating module libxslt-1.1.17-i386-1.mo using /tmp/libxslt-1.1.17_wk_dir
dir2mo /tmp/libxslt-1.1.17_wk_dir libxslt-1.1.17-i386-1.mo
cp libxslt-1.1.17-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# libgnomecanvas-2.14.0
#######################
cd /tmp
wget ftp.gnome.org/pub/GNOME/sources/libgnomecanvas/2.14/libgnomecanvas-2.14.0.tar.gz
tar zxf libgnomecanvas-2.14.0.tar.gz
cd libgnomecanvas-2.14.0
./configure
make
checkinstall -y
mkdir /tmp/libgnomecanvas-2.14.0_wk_dir
echo Creating package libgnomecanvas-2.14.0-i386-1.tgz
installpkg -root /tmp/libgnomecanvas-2.14.0_wk_dir libgnomecanvas-2.14.0-i386-1.tgz
cd /tmp/libgnomecanvas-2.14.0_wk_dir
rm -rf var
cd /tmp
echo Creating module libgnomecanvas-2.14.0-i386-1.mo using /tmp/libgnomecanvas-2.14.0_wk_dir
dir2mo /tmp/libgnomecanvas-2.14.0_wk_dir libgnomecanvas-2.14.0-i386-1.mo
cp libgnomecanvas-2.14.0-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# libbonoboui-2.14.0
#######################
cd /tmp
wget ftp.gnome.org/pub/GNOME/platform/2.14/2.14.2/sources/libbonoboui-2.14.0.tar.gz
tar zxf libbonoboui-2.14.0.tar.gz
cd libbonoboui-2.14.0
./configure
make
checkinstall -y
mkdir /tmp/libbonoboui-2.14.0_wk_dir
echo Creating package libbonoboui-2.14.0-i386-1.tgz
installpkg -root /tmp/libbonoboui-2.14.0_wk_dir libbonoboui-2.14.0-i386-1.tgz
cd /tmp/libbonoboui-2.14.0_wk_dir
rm -rf var
cd /tmp
echo Creating module libbonoboui-2.14.0-i386-1.mo using /tmp/libbonoboui-2.14.0_wk_dir
dir2mo /tmp/libbonoboui-2.14.0_wk_dir libbonoboui-2.14.0-i386-1.mo
cp libbonoboui-2.14.0-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# libgnomeui-2.14.1
#######################
cd /tmp
wget ftp.gnome.org/pub/GNOME/platform/2.14/2.14.2/sources/libgnomeui-2.14.1.tar.gz
tar zxf libgnomeui-2.14.1.tar.gz
cd libgnomeui-2.14.1
./configure
make
checkinstall -y
mkdir /tmp/libgnomeui-2.14.1_wk_dir
echo Creating package libgnomeui-2.14.1-i386-1.tgz
installpkg -root /tmp/libgnomeui-2.14.1_wk_dir libgnomeui-2.14.1-i386-1.tgz
cd /tmp/libgnomeui-2.14.1_wk_dir
rm -rf var
cd /tmp
echo Creating module libgnomeui-2.14.1-i386-1.mo using /tmp/libgnomeui-2.14.1_wk_dir
dir2mo /tmp/libgnomeui-2.14.1_wk_dir libgnomeui-2.14.1-i386-1.mo
cp libgnomeui-2.14.1-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# libglade-2.5.1
#######################
cd /tmp
wget ftp.gnome.org/pub/GNOME/platform/2.14/2.14.2/sources/libglade-2.5.1.tar.gz
tar zxf libglade-2.5.1.tar.gz
cd libglade-2.5.1
./configure
make
checkinstall -y
mkdir /tmp/libglade-2.5.1_wk_dir
echo Creating package libglade-2.5.1-i386-1.tgz
installpkg -root /tmp/libglade-2.5.1_wk_dir libglade-2.5.1-i386-1.tgz
cd /tmp/libglade-2.5.1_wk_dir
rm -rf var
cd /tmp
echo Creating module libglade-2.5.1-i386-1.mo using /tmp/libglade-2.5.1_wk_dir
dir2mo /tmp/libglade-2.5.1_wk_dir libglade-2.5.1-i386-1.mo
cp libglade-2.5.1-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# evolution-data-server-1.6.2
#######################
cd /tmp
wget ftp.gnome.org/pub/GNOME/desktop/2.14/2.14.2/sources/evolution-data-server-1.6.2.tar.gz
tar zxf evolution-data-server-1.6.2.tar.gz
cd evolution-data-server-1.6.2
./configure
make
checkinstall -y
mkdir /tmp/evolution-data-server-1.6.2_wk_dir
echo Creating package
installpkg -root /tmp/evolution-data-server-1.6.2_wk_dir evolution-data-server-1.6.2-i386-1
cd /tmp/evolution-data-server-1.6.2_wk_dir
rm -rf var
cd /tmp
echo Creating module using /tmp/evolution-data-server-1.6.2_wk_dir
dir2mo /tmp/evolution-data-server-1.6.2_wk_dir /tmp/evolution-data-server-1.6.2.mo
cp /tmp/evolution-data-server-1.6.2.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# gdbm-1.8.3
#######################
cd /tmp
wget mirrors.kernel.org/gnu/gdbm/gdbm-1.8.3.tar.gz
tar zxf gdbm-1.8.3.tar.gz
cd gdbm-1.8.3
./configure
make
checkinstall -y
mkdir /tmp/gdbm-1.8.3_wk_dir
echo Creating package gdbm-1.8.3-i386-1.tgz
installpkg -root /tmp/gdbm-1.8.3_wk_dir gdbm-1.8.3-i386-1.tgz
cd /tmp/gdbm-1.8.3_wk_dir
rm -rf var
cd /tmp
echo Creating module gdbm-1.8.3-i386-1.mo using /tmp/gdbm-1.8.3_wk_dir
dir2mo /tmp/gdbm-1.8.3_wk_dir gdbm-1.8.3-i386-1.mo
cp gdbm-1.8.3-i386-1.mo ${MODULE_DIR}
ldconfig
#######################
# libdaemon
#######################
# get libdaemon...
# You will need svn
# svn checkout svn://svn.0pointer.de/libdaemon/trunk libdaemon
cd /tmp
tar zxf libdaemon.tar.gz
cd libdaemon
sh autogen.sh
./configure
make
make install
checkinstall -y
mkdir /tmp/libd
installpkg -root /tmp/libd libdaemon-libdaemon-i386-1.tgz
cd /tmp/libd
rm -rf var
cd /tmp
dir2mo libd libdaemon.mo
mv libdaemon.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# avahi-0.6.10
#######################
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/qt/lib:/usr/local/Trolltech/Qt-4.1.3/lib
cd /tmp
wget avahi.org/download/avahi-0.6.10.tar.gz
tar zxf avahi-0.6.10.tar.gz
cd avahi-0.6.10
export PATH=${PATH}:/usr/local/mono-1.1.15/bin
./configure --disable-python --disable-monodoc
make
checkinstall -y
mkdir /tmp/avahi-0.6.10_wk_dir
echo Creating package
installpkg -root /tmp/avahi-0.6.10_wk_dir avahi-0.6.10-i386-1
cd /tmp/avahi-0.6.10_wk_dir
rm -rf var
cd /tmp
echo Creating module using /tmp/avahi-0.6.10_wk_dir
dir2mo /tmp/avahi-0.6.10_wk_dir avahi-0.6.10-i386-1.mo
cp avahi-0.6.10-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf
#######################
# ekiga-2.0.2
#######################
cd /tmp
wget www.ekiga.org/admin/downloads/latest/sources/sources/ekiga-2.0.2.tar.gz
tar zxf ekiga-2.0.2.tar.gz
cd ekiga-2.0.2
./configure --with-pwlib-dir=/usr/local --with-opal-dir=/usr/local
make
checkinstall -y
mkdir /tmp/ekiga-2.0.2_wk_dir
echo Creating package
installpkg -root /tmp/ekiga-2.0.2_wk_dir ekiga-2.0.2-i386-1.tgz
cd /tmp/ekiga-2.0.2_wk_dir
rm -rf var
cd /tmp
echo Creating module using /tmp/ekiga-2.0.2_wk_dir
dir2mo /tmp/ekiga-2.0.2_wk_dir ekiga-2.0.2-i386-1.mo
cp ekiga-2.0.2-i386-1.mo ${MODULE_DIR}
ldconfig -f /tmp/ld.so.conf

Wednesday, August 09, 2006

 

(S/)Mess(ag)ing around with S/MIME

Creating a self-signed Certificate for use with S/MIME e-mail

Updated: Updated and Validated the Thunderbird instructions.

The tool that you will be using is the excellent encryption package called OpenSSL. You can get more information about OpenSSL from www.openssl.org.

There is a utility that provides a GUI to guide you through this process. It is located here: www.slax.org/modules.php?id=1418

Creating a certificate

1) You need to create your own random key.

a) Execute the following command:

openssl genrsa -des3 1024 > userkey.cert


b) Enter Your Passphrase:

Generating RSA private key, 1024 bit long modulus
.................++++++
.........................++++++
e is 65537 (0x10001)
Enter pass phrase: *ENTER A PHRASE HERE*
Verifying - Enter pass phrase: *ENTER THE SAME PHRASE HERE*



2) You need to create the certificate.
After you enter your password you'll be asked for more information. You need to provide the correct information for your organization and host.

a) Execute the following command:

openssl req -new -key ./userkey.cert -x509 -days 365 -out usercert.pem


b) Enter Your Passphrase and Answer the questions.

Enter pass phrase for ./userkey.cert: *ENTER THE SAME PHRASE HERE*
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:US
State or Province Name (full name) [Some-State]:NV
Locality Name (eg, city) []:Tomestone
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Funny Stuff
Organizational Unit Name (eg, section) []:Comedy
Common Name (eg, YOUR name) []:Common Name
Email Address []:jokesterATreally-funny-stuff.com

NOTE: use a real @ symbol in place of the above AT (posting blocks on email addresses prevented me from using the proper form)


3) You will need a PKCS12 compatible certificate for your email client (MozMail or Thunderbird) This is a single file containing both Certificate and Private Key.

a) Execute the following command:

openssl pkcs12 -export -out personal.p12 -name "My Email Cert" -inkey userkey.cert -in usercert.pem


b) Enter Your Passphrase each time it asks you for a passphrase.

Enter pass phrase for userkey.cert: *ENTER THE SAME PHRASE HERE*
Enter Export Password: *ENTER THE SAME PHRASE HERE*
Verifying - Enter Export Password: *ENTER THE SAME PHRASE HERE*


There you go. You now have 3 files: personal.p12, usercert.pem, and userkey.pem, in the current working directory.


4) Now you need to set you master password in your Mailer.

For Mozilla Mail "Edit -> Preferences -> Privacy & Security -> Master Passwords -> Change Password".

For Thunderbird 1.5: "Edit -> Preferences -> Privacy -> Passwords -> Change Master Password".

5) You need to import your Certificates: The Trusted CA certificate and your own certificate. They are the same cert just in different forms: usercert.pem (The CA cert) and personal.p12 (the PKCS12 cert)

For Mozilla Mail:
a) go to "Edit -> Preferences -> Privacy & Security -> Certificates -> Manage Certificates... -> Authorities"
b) Select "Import", select the file usercert.pem
c) Select the purpose "Trust this CA to identify email users." and Click "OK"
d) The Certificate should now be installed as a self signed Certificate Authority

For Thunderbird:
a) go to "Tools -> Options -> Advanced -> Certificates -> Manage Certificates... -> Authorities".
b) Select "Import", select the usercert.pem file you saved above, and click "Open".
c) Select the purpose "Trust this CA to identify email users." and Click "OK"
d) The Certificate should now be installed as a self signed Certificate Authority.


6) Now you need to import the same Certificate in its PKCS form.

For Mozilla Mail:
a) go to "Edit -> Preferences -> Privacy & Security -> Certificates -> Manage Certificates...".)
b) Click the "Your Certificates" tab.
c) Click on "Import".
d) Select the PCKS12 cert that you created, personal.p12
e) It will ask you for the master password for the software security device. Enter your master password and click "OK".
f) Next, it will ask you for the password protecting your personal certificate. Enter this password and click "OK".

For Thunderbird:
a) go to "Edit -> Preferences -> Privacy -> Security -> View Certificates
b) Click the "Your Certificates" tab.
c) Click on "Import".
d) Select the PCKS12 cert that you created, personal.p12
e) It will ask you for the master password for the software security device. Enter your master password and click "OK".
f) Next, it will ask you for the password protecting your personal certificate. Enter this password (your cert's passphrase) and click "OK".


7) Now you need to set the emailer up use the certs:

For Mozilla Mail:
a) go to "Edit -> Mail and Newgroups Account SetttingsTools." Then choose "Security" from under the account whose e-mail address matches the corresponding certificate and Select the certificate you just installed. Select which ever Digital Signature and Encryptions that you wish.

For Thunderbird
a) go to "Edit -> Account Settings..." Then choose "Security" from under the account whose e-mail address matches the corresponding certificate and select the certificate you just installed. Select which ever Digital Signature and Encryption Certificate that you wish.


Remember to save your emailer changes via whatever method you use: configsave, webconfig, or the changes= cheatcode.

A Warning on Installing other people's self-signed certificates

Only install personally self-signed certificates from people you know and trust. Otherwise you can be tricked into installing and trusting a bogus cert.

When you give out your Cert, it is the usercert.pem file. DO NOT give anyone your userkey.pem or personal.p12 files because they contain your key. People still would need your passphrase/password but it is much easier to compromise your security if those files fall into the wrong hands.

When you wish to send encrypted mail to someone using their self-signed certificate, they will need to send you their public key as a ".cer" or a ".pem" file that you will then install into your emailer. Since Neither Mozilla Mail nor Thunderbird will import a self-signed certificate in the "Other People's" tab it MUST be under the "Authorities" tab. A self-signed certificate will not appear in the "Other People's" tab, it will only appear in the "Authorities" tab.


Archives

July 2006   August 2006   September 2006   November 2006   December 2006   January 2007   July 2007  

This page is powered by Blogger. Isn't yours?