Archive for the ‘RPM’ Category

openSUSE “Packaging Day II”

Saturday, March 15th, 2008

openSUSe Build Service logoEver had problems finding a package for your favorite application for your favorite distro? Are you an application developer or project contributor, and want to learn how to provide binary packages for all the popular distros (including openSUSE) automatically?

Using the openSUSE Build Service, you can provide software packages for most popular Linux distros using one single service. Rather than maintaining separate systems to build packages, you can take advantage of the openSUSE Build Service and let it do most of the work.

To learn how to leverage the build service, join the openSUSE community on April 4th and 5th on IRC to hone your package building skills. The Packaging Days II event will be held on Freenode at #opensuse-buildservice. Community members will be standing by to provide support and answer questions about using the build service and creating packages.

Find out more about the Packaging Days II event at: http://en.opensuse.org/Packaging/Packaging_Day

qBittorrent v1.0.0 Release

Sunday, October 28th, 2007

qBittorrent v1.0.0 ReleaseqBittorrent is a Bittorrent client using C++ / libtorrent and a Qt4 Graphical User Interface. Its been under heavy development for a full year now and finally its maturing into one of the best torrent clients out there. I am the Project Consultant + Packager of the application for my distro of choice: openSUSE. Packages for other distributions are available (qBittorrent Downloads) and a Windows port is coming soon.

Packages for openSUSE 10.2 and 10.3 can be obtained from my openSUSE build farm account at : home:jefferyfernandez. If you encounter any bugs in the package or the application itself, please report them at: qBittorrent Bug-tracker. Happy torrenting :)

qBittorrent Home: http://www.qbittorrent.org

My Mandriva 2006 Repository is Live

Wednesday, July 26th, 2006

I have put together a collection of RPMS which I have built for various projects I am involved with or was required by me. You can access these RPMS for Mandriva 2006 by executing the foolowing commad on the shell.

urpmi.addmedia jeffery http://jefferyfernandez.id.au/RPMS with hdlist.cz

The list of available packages on the repository can be seen by accessing this list

Tip for Obtaining Application Dependencies

Sunday, June 4th, 2006

To check what all libraries is an application linked to, run the ldd tool (available on most Unices):
ldd /usr/bin/qbittorrentThis should return you a list of libraries like:

linux-gate.so.1 =>  (0xffffe000)
libtorrent.so.0 => /usr/lib/libtorrent.so.0 (0xb7e98000)
libQtXml.so.4 => /usr/lib/qt4/lib/libQtXml.so.4 (0xb7e61000)
libQtGui.so.4 => /usr/lib/qt4/lib/libQtGui.so.4 (0xb7a43000)
libpng.so.3 => /usr/lib/libpng.so.3 (0xb7a1d000)
libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0xb7a14000)
libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0xb79fc000)
libXi.so.6 => /usr/X11R6/lib/libXi.so.6 (0xb79f4000)
libXrender.so.1 => /usr/X11R6/lib/libXrender.so.1 (0xb79ea000)
libXrandr.so.2 => /usr/X11R6/lib/libXrandr.so.2 (0xb79e6000)
libXcursor.so.1 => /usr/X11R6/lib/libXcursor.so.1 (0xb79dd000)
libXinerama.so.1 => /usr/X11R6/lib/libXinerama.so.1 (0xb79da000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb7971000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0xb7941000)
libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0xb7932000)
libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0xb7866000)
libQtCore.so.4 => /usr/lib/qt4/lib/libQtCore.so.4 (0xb7753000)
libz.so.1 => /lib/libz.so.1 (0xb7740000)
libdl.so.2 => /lib/libdl.so.2 (0xb773c000)
libpthread.so.0 => /lib/i686/libpthread.so.0 (0xb76ea000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb760d000)
libm.so.6 => /lib/i686/libm.so.6 (0xb75e8000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb75dd000)
libc.so.6 => /lib/i686/libc.so.6 (0xb74ae000)
libboost_filesystem.so.1 => /usr/lib/libboost_filesystem.so.1 (0xb749f000)
libboost_date_time.so.1 => /usr/lib/libboost_date_time.so.1 (0xb7492000)
libboost_thread.so.1 => /usr/lib/libboost_thread.so.1 (0xb7486000)
libXfixes.so.3 => /usr/X11R6/lib/libXfixes.so.3 (0xb7481000)
libexpat.so.0 => /usr/lib/libexpat.so.0 (0xb7461000)
/lib/ld-linux.so.2 (0xb7f9e000)
librt.so.1 => /lib/i686/librt.so.1 (0xb744e000)

qbittorrent being a QT based application and as you can see it clearly depends on libQtXml, libQtGui and libQtCore. Based on this information, I can now add those dependencies for the qbittorrent package alongside the libtorrent library. Most of the other libs are sub-dependant libraries.

NOTE: This also means qbittorrent is not statically linked to any of the above libraries. So if libQtGui was statically linked in qbittorrent, then it won’t appear in the above list and you don’t have to worry about it being a dependency for the qbittorrent package.

CheckInstall to the Rescue

Friday, May 19th, 2006

Ever built a Software which takes more than 8 hours to compile ? Well I had the opportunity to do so. I needed to build a project which was dependant on qt4.1.2 and there was no release for it being made in any Mandriva Repositories except Cooker.

So I embarked on the journey of building my own package for qt4. I managed to get hold of a spec file from the Mandriva CVS repository and then was shocked to see that it contained 27 sub-packages. There was no way I was going to sit down and do a trial and error build for this project. So I did some googling around and found this cool tool which could possibly do all the hard work for you. Its called checkinstall.
(more…)

Cabextract

Tuesday, May 16th, 2006

A program to extract Microsoft Cabinet files

Cabinet (.CAB) files are a form of archive, which Microsoft use to distribute their software, and things like Windows Font Packs. The cabextract program unpacks these files.

And why do I have this here? … because I required it to run ie4linux on WINE

Download Cabextract

Customizing your RPM build environment

Tuesday, May 16th, 2006

Ever built an RPM as root user? Have you wondered about the implications if something goes wrong in your RPM spec file? Building RPM’s as root is dangerous, because the binary files are installed on the system before being packaged, thus you must always build as normal user so you won’t accidentally pollute your system. Over here I will show you how to setup your “own” RPM build environment.

To make this happen, RPM needs to use your own environment definitions rather that of the root user. You need to override the default macros RPM uses. The most important one is the %_topdir (which by default would point to /usr/src/redhat) macro. There are a few more customizations you can make to speed up your Spec file generation. Open up a shell and create a rpmmacros file:
(more…)

Importing a trusted key for RPM packages

Monday, January 16th, 2006

Often when you download and install software from the internet as an RPM package, have you thought about how trust worthy the packge is? Most download sites if they are genuine, list along side their downloads a link to a “trusted key”.

This trusted public key may belong to a vendor or an individual itself and be part of a “web of trust“. By being part of a trusted group we can make sure that any packages signed (GPG signed) by the owner of that key is authentic.
(more…)