[PyKDE] precompiled rpm-Packages - some links (very soon)

Marc Schmitt littlewisp at gmx.net
Thu Aug 22 21:32:01 BST 2002


Hi all,

I've written a tiny howto that describes how rpm packages can be created if 
you don't know anythink about specfiles (like me). I've prepared sip-3.3.2, 
PyQt-3.3.2 and PyKDE-3.3.2 rpms for SuSE 8.0 running QT-3.0.3 and KDE-3.0.2 
(the current SuSE defaults, if you upgraded to KDE-3.0.2 via YOU).

Feel free to send me any critics, improvements or flames about the document. 
I've appended the text-version below, but the links are 'broken'. (the 
original is a openoffice document, also exported as html). You can find 
checkinstall under http://asic-linux.com.mx/~izto/checkinstall/ . 

Jim, I'd really like to send you the rpms, but my last mail bounced  from 
something called "InterScan E-Mail VirusWall NT" when I tried to reply. I'm 
not sure if I sent it to the right address, so I'll send a "ping" first with 
one file to see if it passes - the three rpm's are ~ 7.5 mb and I wouldn't 
like to see them flooding my own mailbox  :>


Thanks Antonio for the specfiles, but I haven't done anything with specfiles 
yet. But when I've time l'll take a closer look at them.

enjoy
-Marc

-------------

Short guide howto make PyKDE RPMs (or DEBs) really easy
Last changed : 22.08.2002
(c) 2002  by Marc Schmitt

1.Introduction
The probably most important thing when you write something are the first few 
words, so it's wise to use them carefully ... ehm ... well, at least I got 
this essay started ;)

I've had an eye on PyKDE for a long time now - as a kde and python fan - but 
having to "compile" a software before using it frightens me ... All I wanted 
were some files I could install in kpackage, start an editor and begin with 
my real work. It hadn't been that dramatic if I only wanted to do work for 
myself, but when I want to give away a KDE Application it's clearly not 
acceptable to require a user to open a shell or even compile something. 
Another point I don't like (due to aesthetical reasons) are files not 
belonging to a package, so I started looking for a way out.

2.Step by Step Instructions

First, go to the checkinstall-Homepage  and download it - or wait, better try 
searching through your vendors cd's first, at least SuSE  delivers it.

Now, go and download the lastest sip, PyQt and PyKDE package.(click here)

When you have a SuSE 8.0 (I can only write this for my system; if there are 
any other steps required please take some time and add them to this document. 
If you're able to write spec-files, feel free to replace this document by a 
couple of .src.rpms) the next thing to do is to ensure there no sip or PyQt 
package installed. Do this by typing  (as root):


rpm -e pyqt
rpm -e sip


Now goto /tmp and untar the packages, it will give you three directories. Next 
type (as root)


echo "make && make install" > install.sh
echo "make && make install && make install-eric" > install-eric.sh
chmod 755 ./install*.sh


Just wait a bit, I'll explain the meaning lateron. Now comes the bit tricky 
part - configuration of the three packages (hehe) :) - I had to tweak the 
commandline-arguments a bit, so if they don't match your config you may need 
to play with them a bit (and probably post updates to this document).

Enter sip and execute:


python build.py -l qt-mt
cp ../install.sh .
checkinstall ./install.sh



When you're lucky this will install sip and generate an rpm somewhere under 
/usr/src/packages/RPMS. But why the install.sh script ? The reason is 
checkinstall. It has been designed as a replacement for "make install". It 
expects exactly one command which it will monitor by a prealoaded library and 
keeps track of all modified and created files. After the program finishes, 
checkinstall takes these files and simply packs them into a rpm. This doesn't 
prevent your files from being overwritten, but free's you from all the 
specfile hassle. 

Now enter PyQt and do (as root) :

python build.py -l qt-mt
cp ../install-eric.sh .
checkinstall ./install-eric.sh



what should generate a PyQt rpm. The last step consists of entering the PyKDE 
dir and a (again, as root)


export KDEDIR=/opt/kde3
python build.py -l qt-mt
cp ../install.sh .
checkinstall ./install.sh



Now, you should have three rpms, which are ready for distribution. DEBs can be 
generated by "checkinstall -D <file>" . It's also possible to pass more 
advanced options to checkinstall, but best look at them on your own 
("checkinstall -help").

Sure, it's not as flexible as using specfiles but it's simple, and gives you 
instantly what you want -  an rpm for redistribution.

3.Credits
Thanks to Jim Bublitz for his open arms and his effords in finding a home for 
this stuff 
and the python, KDE and checkinstall crew for their tools.

4.Legal
Feel free to copy and modify this document at will, as long as you don't abuse 
my name. (And please correct my orthography !)




More information about the PyQt mailing list