From Fedora Project Wiki
No edit summary
(Replacing page with '== Building RPM packages == === Prerequisites === We need to have some tools installed yum install rpmbuild rpmdevtools That's all so far, the rest will follow after the cl...')
Line 7: Line 7:


That's all so far, the rest will follow after the classroom
That's all so far, the rest will follow after the classroom
=== IRC Log ===
{|
|- id="t13:30"
| colspan="2" | * spevack hands the microphone to cwickert for RPM Packaging -- https://fedoraproject.org/wiki/User:Cwickert/Building_RPM_packages_Classroom
|| [[#t13:30|13:30]]
|- id="t13:30"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ok, here we go...
|| [[#t13:30|13:30]]
|- id="t13:30"
| colspan="2" | ... leave!#fedora-classroom -> jcapel()
|| [[#t13:30|13:30]]
|- id="t13:30"
! style="background-color: #42427e" |  Padhu1
| style="color: #42427e" | ொம
|| [[#t13:30|13:30]]
|- id="t13:30"
! style="background-color: #42427e" |  Padhu1
| style="color: #42427e" | ok
|| [[#t13:30|13:30]]
|- id="t13:30"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | My name is Christoph Wickert and I'm your teacher for todays IRC classroom lesson on building RPM packages
|| [[#t13:30|13:30]]
|- id="t13:30"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | hello to cwickert
|| [[#t13:30|13:30]]
|- id="t13:30"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | hi mahesh
|| [[#t13:30|13:30]]
|- id="t13:30"
| colspan="2" | ... join!#fedora-classroom -> zeroC(n=zeroc@unaffiliated/danielf)
|| [[#t13:30|13:30]]
|- id="t13:30"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | We are not going into details, instead I want all of you to have your first RPM after this class
|| [[#t13:30|13:30]]
|- id="t13:30"
! style="background-color: #854685" |  dash123
| style="color: #854685" | cwickert: goodevening teacher :)
|| [[#t13:30|13:30]]
|- id="t13:30"
| colspan="2" | ... join!#fedora-classroom -> verdurin(n=verdurin@pod-88.dolphin-server.co.uk)
|| [[#t13:30|13:30]]
|- id="t13:31"
! style="background-color: #42427e" |  Padhu1
| style="color: #42427e" | hi tutor
|| [[#t13:31|13:31]]
|- id="t13:31"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | first, we need to have a couple of tools installed
|| [[#t13:31|13:31]]
|- id="t13:31"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | please do a
|| [[#t13:31|13:31]]
|- id="t13:31"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | yum groupinstall development-tools
|| [[#t13:31|13:31]]
|- id="t13:31"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | if you don't have them installed already
|| [[#t13:31|13:31]]
|- id="t13:31"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | done
|| [[#t13:31|13:31]]
|- id="t13:31"
! style="background-color: #854685" |  dash123
| style="color: #854685" | done
|| [[#t13:31|13:31]]
|- id="t13:31"
! style="background-color: #488888" |  cassmodiah
| style="color: #488888" | done
|| [[#t13:31|13:31]]
|- id="t13:31"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | cassmodiah: :)
|| [[#t13:31|13:31]]
|- id="t13:32"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | cassmodiah already is a package maintainer, so he has all the necessary stuff installed
|| [[#t13:32|13:32]]
|- id="t13:32"
! style="background-color: #488888" |  cassmodiah
| style="color: #488888" | :-) correct!
|| [[#t13:32|13:32]]
|- id="t13:32"
! style="background-color: #8c4a4a" |  ahmed-araby
| style="color: #8c4a4a" | :)
|| [[#t13:32|13:32]]
|- id="t13:32"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | and especially for RPM building we need some more tools
|| [[#t13:32|13:32]]
|- id="t13:32"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | yum install rpmbuild rpmdevtools
|| [[#t13:32|13:32]]
|- id="t13:33"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | rpmbuild is the command to build the package
|| [[#t13:33|13:33]]
|- id="t13:33"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | rpmdevtools is a collection of handy utils
|| [[#t13:33|13:33]]
|- id="t13:33"
! style="background-color: #8c4a4a" |  ahmed-araby
| style="color: #8c4a4a" | is rpmbuild rpmdevtools as I think I've problem is rpmfusion ?
|| [[#t13:33|13:33]]
|- id="t13:33"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so while some are still installing stuff, let's talk about the basics
|| [[#t13:33|13:33]]
|- id="t13:33"
! style="background-color: #8c4a4a" |  ahmed-araby
| style="color: #8c4a4a" | *is enough ?
|| [[#t13:33|13:33]]
|- id="t13:34"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ahmed-araby: what exactly is your prob?
|| [[#t13:34|13:34]]
|- id="t13:34"
| colspan="2" | ... join!#fedora-classroom -> sattam1(n=sattam@unaffiliated/thtoh)
|| [[#t13:34|13:34]]
|- id="t13:34"
! style="background-color: #8c4a4a" |  ahmed-araby
| style="color: #8c4a4a" | [Errno -1] Metadata file does not match checksum
|| [[#t13:34|13:34]]
|- id="t13:34"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ahmed-araby: you can ether do "yum clean all" or disable the rpmfusion repo for now
|| [[#t13:34|13:34]]
|- id="t13:35"
! style="background-color: #854685" |  dash123
| style="color: #854685" | cwickert: i did that yesterday it said ther ain't such thing as rpmbuild,?
|| [[#t13:35|13:35]]
|- id="t13:35"
! style="background-color: #8c4a4a" |  ahmed-araby
| style="color: #8c4a4a" | I've already rpmdevtools & rpmbuild installed already
|| [[#t13:35|13:35]]
|- id="t13:35"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ahmed-araby: fine
|| [[#t13:35|13:35]]
|- id="t13:35"
| colspan="2" | ... signoff!#fedora-classroom -> sattam(Nick collision from services.)
|| [[#t13:35|13:35]]
|- id="t13:35"
| colspan="2" | ... nick!sattam1 -> sattam
|| [[#t13:35|13:35]]
|- id="t13:35"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | dash123: where id it say that? in yum or from the command line?
|| [[#t13:35|13:35]]
|- id="t13:36"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | s/id/did
|| [[#t13:36|13:36]]
|- id="t13:36"
! style="background-color: #854685" |  dash123
| style="color: #854685" | http://www.pastie.org/437408: result of yum search
|| [[#t13:36|13:36]]
|- id="t13:36"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | dash123: sorry, it's rpm-build
|| [[#t13:36|13:36]]
|- id="t13:37"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ok everybody, my bad
|| [[#t13:37|13:37]]
|- id="t13:37"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | yum install rpm-build
|| [[#t13:37|13:37]]
|- id="t13:37"
! style="background-color: #854685" |  dash123
| style="color: #854685" | ok...no worries
|| [[#t13:37|13:37]]
|- id="t13:37"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | me is ashamed ;)
|| [[#t13:37|13:37]]
|- id="t13:37"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | pk, let's go on
|| [[#t13:37|13:37]]
|- id="t13:37"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | nothing... go ahead
|| [[#t13:37|13:37]]
|- id="t13:37"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | any idea why we are building packages after all?
|| [[#t13:37|13:37]]
|- id="t13:38"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | or what RPM actually means?
|| [[#t13:38|13:38]]
|- id="t13:38"
! style="background-color: #854685" |  dash123
| style="color: #854685" | redhat package manager
|| [[#t13:38|13:38]]
|- id="t13:38"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | RPM Package Manager
|| [[#t13:38|13:38]]
|- id="t13:38"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | mharris: right
|| [[#t13:38|13:38]]
|- id="t13:38"
! style="background-color: #42427e" |  Padhu1
| style="color: #42427e" | custom applications. am i right?
|| [[#t13:38|13:38]]
|- id="t13:38"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | It used to stand for "Red Hat Package Manager", but got renamed since many other distributions are using RPM too
|| [[#t13:38|13:38]]
|- id="t13:38"
! style="background-color: #8c4a4a" |  ahmed-araby
| style="color: #8c4a4a" | for building Binary Packages from SOurce code
|| [[#t13:38|13:38]]
|- id="t13:38"
! style="background-color: #4b904b" |  lwh
| style="color: #4b904b" | to automatically install a bunch of stuff and possibly run things to set it up ?
|| [[#t13:38|13:38]]
|- id="t13:38"
! style="background-color: #8c4a4a" |  ahmed-araby
| style="color: #8c4a4a" | ready to use
|| [[#t13:38|13:38]]
|- id="t13:38"
| colspan="2" | ... join!#fedora-classroom -> UsamaAkkad(n=Usama@unaffiliated/uaa)
|| [[#t13:38|13:38]]
|- id="t13:38"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ahmed-araby: exactly, ready to use packages
|| [[#t13:38|13:38]]
|- id="t13:39"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | no need to compile them, but install them with a couple of mouseclicks
|| [[#t13:39|13:39]]
|- id="t13:39"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | RPM has a database that keeps track of all files installed, so you can uninstall them later without orphaned files
|| [[#t13:39|13:39]]
|- id="t13:39"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | The database is located in /var/lib/rpm/*db.*
|| [[#t13:39|13:39]]
|- id="t13:39"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | RPM will also take care of providing all the dependencies of a package, verify it's integrity and so on
|| [[#t13:39|13:39]]
|- id="t13:39"
| colspan="2" | * ahmed-araby rises his hand
|| [[#t13:39|13:39]]
|- id="t13:40"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ahmed-araby: yes?
|| [[#t13:40|13:40]]
|- id="t13:40"
! style="background-color: #8c4a4a" |  ahmed-araby
| style="color: #8c4a4a" | why sqlite with in specific ?
|| [[#t13:40|13:40]]
|- id="t13:40"
! style="background-color: #8c4a4a" |  ahmed-araby
| style="color: #8c4a4a" | It's using sqlite right ?
|| [[#t13:40|13:40]]
|- id="t13:40"
| colspan="2" | ... join!#fedora-classroom -> sadfag(n=alex@Rda6a.r.pppool.de)
|| [[#t13:40|13:40]]
|- id="t13:40"
! style="background-color: #42427e" |  Padhu1
| style="color: #42427e" | very lite DB and easy to use
|| [[#t13:40|13:40]]
|- id="t13:40"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ahmed-araby: yes, the database is using sqlite
|| [[#t13:40|13:40]]
|- id="t13:41"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | the database lists all files installed, e.g you can run "rpm -ql foo" and it will show you all files inside foo
|| [[#t13:41|13:41]]
|- id="t13:41"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so everybody has the tools installed now?
|| [[#t13:41|13:41]]
|- id="t13:41"
! style="background-color: #854685" |  dash123
| style="color: #854685" | yes
|| [[#t13:41|13:41]]
|- id="t13:41"
! style="background-color: #4d4d93" |  openpercept
| style="color: #4d4d93" | yes
|| [[#t13:41|13:41]]
|- id="t13:41"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | yes
|| [[#t13:41|13:41]]
|- id="t13:41"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ok
|| [[#t13:41|13:41]]
|- id="t13:41"
! style="background-color: #488888" |  cassmodiah
| style="color: #488888" | yes
|| [[#t13:41|13:41]]
|- id="t13:42"
! style="background-color: #8c4a4a" |  ahmed-araby
| style="color: #8c4a4a" | yes
|| [[#t13:42|13:42]]
|- id="t13:42"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | one important thing is
|| [[#t13:42|13:42]]
|- id="t13:42"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | NEVER build packages as root!
|| [[#t13:42|13:42]]
|- id="t13:42"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | If a package has a stupid Makefile, you might accidentally overwrite files of your system.
|| [[#t13:42|13:42]]
|- id="t13:42"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | yes
|| [[#t13:42|13:42]]
|- id="t13:42"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so we need to setup a rpm build tree for your user
|| [[#t13:42|13:42]]
|- id="t13:43"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | we use rpmdev-setuptree from the rpmdevtools package to do that
|| [[#t13:43|13:43]]
|- id="t13:43"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | just run rpmdev-setuptree
|| [[#t13:43|13:43]]
|- id="t13:43"
! style="background-color: #488888" |  cassmodiah
| style="color: #488888" | ?
|| [[#t13:43|13:43]]
|- id="t13:43"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | it will create a folder rpmbuild inside your homedir
|| [[#t13:43|13:43]]
|- id="t13:43"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | cassmodiah: yes please
|| [[#t13:43|13:43]]
|- id="t13:43"
! style="background-color: #488888" |  cassmodiah
| style="color: #488888" | cwickert do you think it's important to set up an extra user just for packaging? the fedora wiki doesn't give a hit, and the packagers are not agreed
|| [[#t13:43|13:43]]
|- id="t13:43"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | cassmodiah: no, it's only usefull for fully automated packageing
|| [[#t13:43|13:43]]
|- id="t13:44"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | but you won't need it
|| [[#t13:44|13:44]]
|- id="t13:44"
! style="background-color: #488888" |  cassmodiah
| style="color: #488888" | k, thx
|| [[#t13:44|13:44]]
|- id="t13:44"
| colspan="2" | ... signoff!#fedora-classroom -> rjones("Leaving")
|| [[#t13:44|13:44]]
|- id="t13:44"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | note to the rest of the class: by fedorawiki cassmodiah means fedorawiki.de, not the wiki at fedoraproject.org
|| [[#t13:44|13:44]]
|- id="t13:44"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | now let's look inside the rpmnbuild folder
|| [[#t13:44|13:44]]
|- id="t13:45"
! style="background-color: #4b904b" |  lwh
| style="color: #4b904b" | that command doesn't exist , will this work on f9 ?
|| [[#t13:45|13:45]]
|- id="t13:45"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | i was wondering about that, now clear
|| [[#t13:45|13:45]]
|- id="t13:45"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | there are five subdirs inside
|| [[#t13:45|13:45]]
|- id="t13:45"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | BUILD is where the builds are happening. Every package will create a subfolder <name>-<version> there
|| [[#t13:45|13:45]]
|- id="t13:45"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | RPM is where the binary packages will be placed when they are ready
|| [[#t13:45|13:45]]
|- id="t13:45"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | SOURCES is where we need to place the sources of which we build the packages!
|| [[#t13:45|13:45]]
|- id="t13:45"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | ok
|| [[#t13:45|13:45]]
|- id="t13:45"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | SPECS is for spec files
|| [[#t13:45|13:45]]
|- id="t13:45"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so what are spec files? any idea?
|| [[#t13:45|13:45]]
|- id="t13:46"
! style="background-color: #488888" |  cassmodiah
| style="color: #488888" | !
|| [[#t13:46|13:46]]
|- id="t13:46"
! style="background-color: #854685" |  dash123
| style="color: #854685" | specifications
|| [[#t13:46|13:46]]
|- id="t13:46"
! style="background-color: #854685" |  dash123
| style="color: #854685" | ?
|| [[#t13:46|13:46]]
|- id="t13:46"
! style="background-color: #488888" |  cassmodiah
| style="color: #488888" | build reciepts :-)
|| [[#t13:46|13:46]]
|- id="t13:46"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | SPECS are like the makefiles's  it provides info to the package manager right?
|| [[#t13:46|13:46]]
|- id="t13:46"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | cassmodiah: you be quiet please ;) you know all that stuff already
|| [[#t13:46|13:46]]
|- id="t13:47"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | mharris: well said!
|| [[#t13:47|13:47]]
|- id="t13:47"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | sorry, I meant mahesh
|| [[#t13:47|13:47]]
|- id="t13:47"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | ok
|| [[#t13:47|13:47]]
|- id="t13:47"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so the spec has a set of instructions _how_ to build the package
|| [[#t13:47|13:47]]
|- id="t13:47"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so building RPMs means writing a spec first of all
|| [[#t13:47|13:47]]
|- id="t13:48"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ok, we continue with the folders first
|| [[#t13:48|13:48]]
|- id="t13:48"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | SRPMS is for source RPMS.
|| [[#t13:48|13:48]]
|- id="t13:48"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | any questions so far?
|| [[#t13:48|13:48]]
|- id="t13:48"
! style="background-color: #854685" |  dash123
| style="color: #854685" | cwickert: i previously tried to get to the source code of some linuxdcpp.srpm and did these steps, shud i delete these and start afresh?? 'cause all my subdirs are filled with dcpp files
|| [[#t13:48|13:48]]
|- id="t13:49"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | dash123: no problem
|| [[#t13:49|13:49]]
|- id="t13:49"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | is the SRPMS built automatically or is it another process?
|| [[#t13:49|13:49]]
|- id="t13:50"
! style="background-color: #9b519b" |  sattam
| style="color: #9b519b" | whats the diffrent between SRPMS and source ?
|| [[#t13:50|13:50]]
|- id="t13:50"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | mahesh: depends on how you call rpmbuild
|| [[#t13:50|13:50]]
|- id="t13:50"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | i mean foo.src.rpm
|| [[#t13:50|13:50]]
|- id="t13:50"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | ok
|| [[#t13:50|13:50]]
|- id="t13:50"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | sattam: good question
|| [[#t13:50|13:50]]
|- id="t13:50"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | the SRPM or source RPM contains the source tarball
|| [[#t13:50|13:50]]
|- id="t13:50"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | as well as the spec
|| [[#t13:50|13:50]]
|- id="t13:50"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | and patches, if there are any
|| [[#t13:50|13:50]]
|- id="t13:51"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so you can use the srpm to build binary rpms of it for different releases
|| [[#t13:51|13:51]]
|- id="t13:51"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | sattam: got it?
|| [[#t13:51|13:51]]
|- id="t13:51"
! style="background-color: #9b519b" |  sattam
| style="color: #9b519b" | cwickert: yes , very  clear
|| [[#t13:51|13:51]]
|- id="t13:51"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ok
|| [[#t13:51|13:51]]
|- id="t13:51"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | so rpms are built from srpms?
|| [[#t13:51|13:51]]
|- id="t13:52"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | mahesh: yes, you can do this
|| [[#t13:52|13:52]]
|- id="t13:52"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | fine
|| [[#t13:52|13:52]]
|- id="t13:52"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | but you can also do this in a single run of rpmbuild
|| [[#t13:52|13:52]]
|- id="t13:52"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | depends how you call it
|| [[#t13:52|13:52]]
|- id="t13:52"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | we'll come to that later
|| [[#t13:52|13:52]]
|- id="t13:52"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | ok
|| [[#t13:52|13:52]]
|- id="t13:52"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | first we need a spec
|| [[#t13:52|13:52]]
|- id="t13:53"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | and of course we need a program to package
|| [[#t13:53|13:53]]
|- id="t13:53"
| colspan="2" | ... join!#fedora-classroom -> megenius_(n=megenius@ner-as29666.alshamil.net.ae)
|| [[#t13:53|13:53]]
|- id="t13:53"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | I have chosen gigolo from http://www.uvena.de/gigolo/
|| [[#t13:53|13:53]]
|- id="t13:53"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | it's already in Fedora, but nevermind
|| [[#t13:53|13:53]]
|- id="t13:53"
| colspan="2" | ... join!#fedora-classroom -> sattam1(n=sattam@unaffiliated/thtoh)
|| [[#t13:53|13:53]]
|- id="t13:53"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | ok
|| [[#t13:53|13:53]]
|- id="t13:53"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so everybody please go to http://www.uvena.de/gigolo/download.html
|| [[#t13:53|13:53]]
|- id="t13:54"
! style="background-color: #854685" |  dash123
| style="color: #854685" | ok..which one to download?
|| [[#t13:54|13:54]]
|- id="t13:54"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | and download the latest release 0.3.1 to your ~/rpmbuild/SOURCES folder
|| [[#t13:54|13:54]]
|- id="t13:54"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | 0.3.1 ??
|| [[#t13:54|13:54]]
|- id="t13:54"
| colspan="2" | ... join!#fedora-classroom -> Fzza3a(i=29dd1066@gateway/web/ajax/mibbit.com/x-6ecf413d8a8c2284)
|| [[#t13:54|13:54]]
|- id="t13:54"
| colspan="2" | ... leave!#fedora-classroom -> Fzza3a()
|| [[#t13:54|13:54]]
|- id="t13:54"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | l0nwlf: yes: http://www.uvena.de/gigolo/download.html#gigolo-0-3-1
|| [[#t13:54|13:54]]
|- id="t13:55"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | or http://files.uvena.de/gigolo/gigolo-0.3.1.tar.bz2 as direct link
|| [[#t13:55|13:55]]
|- id="t13:55"
! style="background-color: #854685" |  dash123
| style="color: #854685" | cwickert: do we also need the gpg signature??
|| [[#t13:55|13:55]]
|- id="t13:55"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | nope
|| [[#t13:55|13:55]]
|- id="t13:55"
! style="background-color: #854685" |  dash123
| style="color: #854685" | ok
|| [[#t13:55|13:55]]
|- id="t13:55"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | we trust ourselves and upstream
|| [[#t13:55|13:55]]
|- id="t13:55"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | :)
|| [[#t13:55|13:55]]
|- id="t13:55"
| colspan="2" | ... signoff!#fedora-classroom -> sattam(Read error: 54 (Connection reset by peer))
|| [[#t13:55|13:55]]
|- id="t13:55"
! style="background-color: #854685" |  dash123
| style="color: #854685" | done
|| [[#t13:55|13:55]]
|- id="t13:55"
! style="background-color: #539e9e" |  UsamaAkkad
| style="color: #539e9e" | :)
|| [[#t13:55|13:55]]
|- id="t13:55"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ok, now we go to rpmbuild/SPECS
|| [[#t13:55|13:55]]
|- id="t13:55"
! style="background-color: #a25555" |  sattam1
| style="color: #a25555" | http://files.uvena.de/gigolo/gigolo-0.3.1.tar.bz2
|| [[#t13:55|13:55]]
|- id="t13:55"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | and run the command "rpmdev-newrpmspec gigolo"
|| [[#t13:55|13:55]]
|- id="t13:56"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | sattam1: exactly
|| [[#t13:56|13:56]]
|- id="t13:56"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | the command will create an empty specfile from a template
|| [[#t13:56|13:56]]
|- id="t13:56"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | use an editor to edit it
|| [[#t13:56|13:56]]
|- id="t13:56"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | ok
|| [[#t13:56|13:56]]
|- id="t13:56"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | everybody has the spec file opened?
|| [[#t13:56|13:56]]
|- id="t13:57"
! style="background-color: #854685" |  dash123
| style="color: #854685" | bash: rpmdev-newrpmspec: command not found
|| [[#t13:57|13:57]]
|- id="t13:57"
! style="background-color: #57a657" |  verdurin
| style="color: #57a657" | it's rpmdev-newspec
|| [[#t13:57|13:57]]
|- id="t13:57"
! style="background-color: #4d4d93" |  openpercept
| style="color: #4d4d93" | is it rpmdev-newspec or rpmdev-newrpmspec
|| [[#t13:57|13:57]]
|- id="t13:57"
! style="background-color: #4d4d93" |  openpercept
| style="color: #4d4d93" | ?
|| [[#t13:57|13:57]]
|- id="t13:57"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | verdurin: right
|| [[#t13:57|13:57]]
|- id="t13:57"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | got renamed recently
|| [[#t13:57|13:57]]
|- id="t13:57"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | I'm still used to the old name
|| [[#t13:57|13:57]]
|- id="t13:57"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | rpmdev-newspec is the new name
|| [[#t13:57|13:57]]
|- id="t13:57"
| colspan="2" | ... signoff!#fedora-classroom -> marflow_afk(Read error: 110 (Connection timed out))
|| [[#t13:57|13:57]]
|- id="t13:57"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so it's rpmdev-newspec gigolo
|| [[#t13:57|13:57]]
|- id="t13:58"
! style="background-color: #854685" |  dash123
| style="color: #854685" | done
|| [[#t13:58|13:58]]
|- id="t13:58"
! style="background-color: #4d4d93" |  openpercept
| style="color: #4d4d93" | yeah done
|| [[#t13:58|13:58]]
|- id="t13:58"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ok, now let's take a look at that file
|| [[#t13:58|13:58]]
|- id="t13:58"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | we go through the tags one by one
|| [[#t13:58|13:58]]
|- id="t13:58"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | Name: this one is pretty trivial, it's "gigolo". Please use the notation of the source tarball
|| [[#t13:58|13:58]]
|- id="t13:59"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | Version: 0.3.1 in our case
|| [[#t13:59|13:59]]
|- id="t13:59"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | Release: leave it as is
|| [[#t13:59|13:59]]
|- id="t13:59"
| colspan="2" | * l0nwlf have  a doubt ?
|| [[#t13:59|13:59]]
|- id="t13:59"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | the version is from upstream while Release is from Fedora
|| [[#t13:59|13:59]]
|- id="t13:59"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so 1 is the first Fedora package
|| [[#t13:59|13:59]]
|- id="t14:00"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | l0nwlf: question=?
|| [[#t14:00|14:00]]
|- id="t14:00"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | Version is 'blank' not '0.3.1' in gigolo.spec
|| [[#t14:00|14:00]]
|- id="t14:00"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | l0nwlf: yes, you need to enter 0.3.1 there as I said
|| [[#t14:00|14:00]]
|- id="t14:00"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | Release is already filled and remains as is
|| [[#t14:00|14:00]]
|- id="t14:00"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | oh , we need to _edit_ it
|| [[#t14:00|14:00]]
|- id="t14:01"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | l0nwlf: yes
|| [[#t14:01|14:01]]
|- id="t14:01"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | %{?dist} will be expanded to "fc10" or "fc11"
|| [[#t14:01|14:01]]
|- id="t14:01"
! style="background-color: #854685" |  dash123
| style="color: #854685" | cwickert: can you tell us about how we decide version numbers??
|| [[#t14:01|14:01]]
|- id="t14:01"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | dash123: use the one from upstream
|| [[#t14:01|14:01]]
|- id="t14:01"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | look at the tarball
|| [[#t14:01|14:01]]
|- id="t14:01"
! style="background-color: #854685" |  dash123
| style="color: #854685" | ok
|| [[#t14:01|14:01]]
|- id="t14:02"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | and for release you usually start with 1
|| [[#t14:02|14:02]]
|- id="t14:02"
| colspan="2" | ... join!#fedora-classroom -> edouardp_(n=edouardp@ANantes-256-1-165-74.w90-25.abo.wanadoo.fr)
|| [[#t14:02|14:02]]
|- id="t14:02"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | but threre are exceptions
|| [[#t14:02|14:02]]
|- id="t14:02"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | for snapshots and betas etc
|| [[#t14:02|14:02]]
|- id="t14:02"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | but we are not going to cover that since it is outlined in the wiki
|| [[#t14:02|14:02]]
|- id="t14:02"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | next is the Group tag
|| [[#t14:02|14:02]]
|- id="t14:03"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | oh no,  I forgot Summary
|| [[#t14:03|14:03]]
|- id="t14:03"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | Summary should be short and precise. Only keywords, now whole sentences, because this is what you see in PackageKit.
|| [[#t14:03|14:03]]
|- id="t14:03"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | We can take this from the homepage
|| [[#t14:03|14:03]]
|- id="t14:03"
| colspan="2" | ... signoff!#fedora-classroom -> nethad("Konversation terminated!")
|| [[#t14:03|14:03]]
|- id="t14:03"
| colspan="2" | ... leave!#fedora-classroom -> lwh()
|| [[#t14:03|14:03]]
|- id="t14:03"
| colspan="2" | ... join!#fedora-classroom -> nethad(n=thomas@82.117.4.47)
|| [[#t14:03|14:03]]
|- id="t14:03"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | for example "GIO/GVFS management application"
|| [[#t14:03|14:03]]
|- id="t14:04"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | now we come to Group
|| [[#t14:04|14:04]]
|- id="t14:04"
! style="background-color: #42427e" |  Padhu1
| style="color: #42427e" | cwickert: some RPMs needed GPL Keys when try to install it. Is it possible to build like these? then How
|| [[#t14:04|14:04]]
|- id="t14:04"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | Padhu1: later...
|| [[#t14:04|14:04]]
|- id="t14:04"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | you mean gpg keys, right?
|| [[#t14:04|14:04]]
|- id="t14:05"
! style="background-color: #42427e" |  Padhu1
| style="color: #42427e" | yes
|| [[#t14:05|14:05]]
|- id="t14:05"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | signing is a different process after the build
|| [[#t14:05|14:05]]
|- id="t14:05"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | lets continue with the spec
|| [[#t14:05|14:05]]
|- id="t14:05"
! style="background-color: #42427e" |  Padhu1
| style="color: #42427e" | ok
|| [[#t14:05|14:05]]
|- id="t14:05"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | please take a look at /usr/share/doc/rpm-4.6.0/GROUPS
|| [[#t14:05|14:05]]
|- id="t14:05"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | explain about the gpg keys before the end of this session
|| [[#t14:05|14:05]]
|- id="t14:05"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | mharris: will do
|| [[#t14:05|14:05]]
|- id="t14:05"
| colspan="2" | ... signoff!#fedora-classroom -> ahmed-araby(Read error: 110 (Connection timed out))
|| [[#t14:05|14:05]]
|- id="t14:05"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | I think "User Interface/Desktops" fits best for our package
|| [[#t14:05|14:05]]
|- id="t14:06"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | but you can choose anything you want from the list
|| [[#t14:06|14:06]]
|- id="t14:06"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | License: inside the source tarball you will find a copy of the GPL named COPYING. It's version 2 of the license
|| [[#t14:06|14:06]]
|- id="t14:06"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so we use "GPLv2" for now, but we'll come back to that later
|| [[#t14:06|14:06]]
|- id="t14:07"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | URL: The homepage of the program: http://www.uvena.de/gigolo
|| [[#t14:07|14:07]]
|- id="t14:07"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | Source0: is the dowload link
|| [[#t14:07|14:07]]
|- id="t14:07"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so for us it's http://www.uvena.de/gigolo/download.html#gigolo-0-3-1
|| [[#t14:07|14:07]]
|- id="t14:07"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | sorry
|| [[#t14:07|14:07]]
|- id="t14:07"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | http://files.uvena.de/gigolo/gigolo-0.3.1.tar.bz2
|| [[#t14:07|14:07]]
|- id="t14:08"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | needs to be the link to the file itself
|| [[#t14:08|14:08]]
|- id="t14:08"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | Now comment out BuildRequires and Requires, we don't care about that right now but shoot into the dark instead :)
|| [[#t14:08|14:08]]
|- id="t14:09"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | %description: we can take that from the homepage too
|| [[#t14:09|14:09]]
|- id="t14:09"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | for example: Gigolo is a frontend to easily manage connections to remote filesystems using GIO/GVfs. It allows you to quickly connect/mount a remote filesystem and manage bookmarks of such.
|| [[#t14:09|14:09]]
|- id="t14:09"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | You see: complete sentences with dots at the end.
|| [[#t14:09|14:09]]
|- id="t14:09"
| colspan="2" | ... signoff!#fedora-classroom -> edouardp(Read error: 110 (Connection timed out))
|| [[#t14:09|14:09]]
|- id="t14:09"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | Any questions so far?
|| [[#t14:09|14:09]]
|- id="t14:09"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | nope, its clear
|| [[#t14:09|14:09]]
|- id="t14:10"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | has everybody filled all tags now?
|| [[#t14:10|14:10]]
|- id="t14:10"
! style="background-color: #854685" |  dash123
| style="color: #854685" | what haapens if i choose some random group tag?
|| [[#t14:10|14:10]]
|- id="t14:10"
! style="background-color: #854685" |  dash123
| style="color: #854685" | do i "have" to choose from th e/GROUPS?
|| [[#t14:10|14:10]]
|- id="t14:10"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | dash123: yes
|| [[#t14:10|14:10]]
|- id="t14:10"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | well, you can uses something different
|| [[#t14:10|14:10]]
|- id="t14:11"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | I don't think rpmbuild will complain
|| [[#t14:11|14:11]]
|- id="t14:11"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | but we in Fedora will :)
|| [[#t14:11|14:11]]
|- id="t14:11"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so stick with the list please
|| [[#t14:11|14:11]]
|- id="t14:11"
! style="background-color: #539e9e" |  UsamaAkkad
| style="color: #539e9e" | :D
|| [[#t14:11|14:11]]
|- id="t14:11"
! style="background-color: #854685" |  dash123
| style="color: #854685" | ok
|| [[#t14:11|14:11]]
|- id="t14:11"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | the group tag is not important any longer, as it is not used by packagekit
|| [[#t14:11|14:11]]
|- id="t14:12"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ok, now we can start our first build
|| [[#t14:12|14:12]]
|- id="t14:12"
! style="background-color: #5959a9" |  nethad
| style="color: #5959a9" | cwickert: i have a question, do i need to put " " around the strings, e.g. Licence: "GPLv2"        or is it: Licence: GPLv2  ?
|| [[#t14:12|14:12]]
|- id="t14:12"
| colspan="2" | ... nick!megenius_ -> meGenius
|| [[#t14:12|14:12]]
|- id="t14:12"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | or at leastr an attempt to do so
|| [[#t14:12|14:12]]
|- id="t14:12"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | nethad: no ""
|| [[#t14:12|14:12]]
|- id="t14:12"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | just GPLv2
|| [[#t14:12|14:12]]
|- id="t14:12"
! style="background-color: #5959a9" |  nethad
| style="color: #5959a9" | ok
|| [[#t14:12|14:12]]
|- id="t14:12"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | i have a doubt ?
|| [[#t14:12|14:12]]
|- id="t14:12"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | l0nwlf: yes please
|| [[#t14:12|14:12]]
|- id="t14:12"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | %prep , %setup ??
|| [[#t14:12|14:12]]
|- id="t14:13"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ok, then I'll explain it
|| [[#t14:13|14:13]]
|- id="t14:13"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | we'll leave it as it is
|| [[#t14:13|14:13]]
|- id="t14:13"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | for now we can use what's in there
|| [[#t14:13|14:13]]
|- id="t14:13"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | %prep ist for preparing
|| [[#t14:13|14:13]]
|- id="t14:13"
! style="background-color: #a25555" |  sattam1
| style="color: #a25555" | cwickert: why you skip  " BuildRoot " ?
|| [[#t14:13|14:13]]
|- id="t14:13"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | sattam1: my bad
|| [[#t14:13|14:13]]
|- id="t14:14"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | BuildRoot remains as is
|| [[#t14:14|14:14]]
|- id="t14:14"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | it's the location where we are building the package
|| [[#t14:14|14:14]]
|- id="t14:14"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | a temporary folder
|| [[#t14:14|14:14]]
|- id="t14:14"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ok sattam1?
|| [[#t14:14|14:14]]
|- id="t14:14"
! style="background-color: #a25555" |  sattam1
| style="color: #a25555" | clear
|| [[#t14:14|14:14]]
|- id="t14:15"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ok, so %prep is for preparing
|| [[#t14:15|14:15]]
|- id="t14:15"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | this means extractiong the source and applying patches if there are any
|| [[#t14:15|14:15]]
|- id="t14:15"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | after that the actual build starts in %build
|| [[#t14:15|14:15]]
|- id="t14:16"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ok, just realized that I choose a bad example :(
|| [[#t14:16|14:16]]
|- id="t14:16"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | because gigolgo uses war for building and not autotools
|| [[#t14:16|14:16]]
|- id="t14:16"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | usually yu run ./configure && make
|| [[#t14:16|14:16]]
|- id="t14:16"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | and make install
|| [[#t14:16|14:16]]
|- id="t14:17"
! style="background-color: #818144" |  mahesh
| style="color: #818144" | yes
|| [[#t14:17|14:17]]
|- id="t14:17"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so ./configure and make are the stuff in the %build section
|| [[#t14:17|14:17]]
|- id="t14:17"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | after that the files are installed to a temporary location
|| [[#t14:17|14:17]]
|- id="t14:17"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | during %install
|| [[#t14:17|14:17]]
|- id="t14:18"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | waf bedomes more and more popular
|| [[#t14:18|14:18]]
|- id="t14:18"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so in our example we use waf instead of autotools for building
|| [[#t14:18|14:18]]
|- id="t14:18"
| colspan="2" | ... signoff!#fedora-classroom -> nethad("Konversation terminated!")
|| [[#t14:18|14:18]]
|- id="t14:18"
! style="background-color: #854685" |  dash123
| style="color: #854685" | cwickert: how did you get to know gigolo uses war/waf??experience?
|| [[#t14:18|14:18]]
|- id="t14:19"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so please remove %configure
|| [[#t14:19|14:19]]
|- id="t14:19"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | make %{?_smp_mflags}
|| [[#t14:19|14:19]]
|- id="t14:19"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | dash123: see the readme inside the tarball
|| [[#t14:19|14:19]]
|- id="t14:19"
! style="background-color: #854685" |  dash123
| style="color: #854685" | ok
|| [[#t14:19|14:19]]
|- id="t14:19"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | it contains instructions for building the package
|| [[#t14:19|14:19]]
|- id="t14:19"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | the statement we use for building is at http://fpaste.org/paste/8014
|| [[#t14:19|14:19]]
|- id="t14:19"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | we remove only these two i suppose
|| [[#t14:19|14:19]]
|- id="t14:20"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | use this to replace the two lines
|| [[#t14:20|14:20]]
|- id="t14:20"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | l0nwlf: right
|| [[#t14:20|14:20]]
|- id="t14:20"
| colspan="2" | ... join!#fedora-classroom -> nethad(n=thomas@82.117.4.47)
|| [[#t14:20|14:20]]
|- id="t14:20"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | actually this is only the configure
|| [[#t14:20|14:20]]
|- id="t14:20"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | for building we need "./waf build"
|| [[#t14:20|14:20]]
|- id="t14:21"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so ./waf build replaces make %{?_smp_mflags}
|| [[#t14:21|14:21]]
|- id="t14:21"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so everybody has his %build section ready now?
|| [[#t14:21|14:21]]
|- id="t14:21"
! style="background-color: #854685" |  dash123
| style="color: #854685" | yes
|| [[#t14:21|14:21]]
|- id="t14:21"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ok, then we start
|| [[#t14:21|14:21]]
|- id="t14:22"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | rpmbuild -ba gigolo.spec
|| [[#t14:22|14:22]]
|- id="t14:22"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | -ba means build all, binaries and source rpm
|| [[#t14:22|14:22]]
|- id="t14:22"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | -bs means build source
|| [[#t14:22|14:22]]
|- id="t14:22"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | and --bb build binary
|| [[#t14:22|14:22]]
|- id="t14:23"
! style="background-color: #539e9e" |  UsamaAkkad
| style="color: #539e9e" | build source mean srpm ?
|| [[#t14:23|14:23]]
|- id="t14:23"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | UsamaAkkad: exactly
|| [[#t14:23|14:23]]
|- id="t14:23"
| colspan="2" | ... signoff!#fedora-classroom -> linuxguru("Leaving")
|| [[#t14:23|14:23]]
|- id="t14:23"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so are you already running the rpmbuild?
|| [[#t14:23|14:23]]
|- id="t14:23"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | anybody?
|| [[#t14:23|14:23]]
|- id="t14:23"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | it will most likely stop with an error
|| [[#t14:23|14:23]]
|- id="t14:23"
! style="background-color: #854685" |  dash123
| style="color: #854685" | yes i got errors
|| [[#t14:23|14:23]]
|- id="t14:24"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ok, dash123, tell me
|| [[#t14:24|14:24]]
|- id="t14:24"
! style="background-color: #5959a9" |  nethad
| style="color: #5959a9" | cwickert: yes, errors
|| [[#t14:24|14:24]]
|- id="t14:24"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | error: line 8: Unknown tag:        Version 2, June 1991
|| [[#t14:24|14:24]]
|- id="t14:24"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | I copied all licence : and it's second line of licennse tag
|| [[#t14:24|14:24]]
|- id="t14:24"
! style="background-color: #854685" |  dash123
| style="color: #854685" | http://fpaste.org/paste/8015
|| [[#t14:24|14:24]]
|- id="t14:24"
! style="background-color: #5959a9" |  nethad
| style="color: #5959a9" | my one seems to be about the waf command
|| [[#t14:24|14:24]]
|- id="t14:24"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | l0nwlf: no, just insert GPL there
|| [[#t14:24|14:24]]
|- id="t14:25"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | dash123: there seems to be a letter missing
|| [[#t14:25|14:25]]
|- id="t14:25"
! style="background-color: #a25555" |  sattam1
| style="color: #a25555" | error: line 15: Too many names: %description  Gigolo is a frontend to easily manage connections
|| [[#t14:25|14:25]]
|- id="t14:25"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | needs to be "export"
|| [[#t14:25|14:25]]
|- id="t14:26"
! style="background-color: #854685" |  dash123
| style="color: #854685" | and my spec file is this: http://fpaste.org/paste/8017
|| [[#t14:26|14:26]]
|- id="t14:26"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | error: line 19: Too many names: %description my first RPM
|| [[#t14:26|14:26]]
|- id="t14:27"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | %description is causing errors
|| [[#t14:27|14:27]]
|- id="t14:27"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | l0nwlf needs a new line after description
|| [[#t14:27|14:27]]
|- id="t14:27"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | all: I have posted what the head of the spec should look like at http://fpaste.org/paste/8018
|| [[#t14:27|14:27]]
|- id="t14:27"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | it also contains some more things we'll come to later
|| [[#t14:27|14:27]]
|- id="t14:28"
| colspan="2" | ... signoff!#fedora-classroom -> nethad(Remote closed the connection)
|| [[#t14:28|14:28]]
|- id="t14:28"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | for those who have problems, I suggest to use the paste I provided
|| [[#t14:28|14:28]]
|- id="t14:28"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | http://www.mibbit.com/pb/nmlavL
|| [[#t14:28|14:28]]
|- id="t14:28"
| colspan="2" | ... signoff!#fedora-classroom -> GeroldKa(Read error: 113 (No route to host))
|| [[#t14:28|14:28]]
|- id="t14:28"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | l0nwlf: there is a typo
|| [[#t14:28|14:28]]
|- id="t14:29"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | all: xport needs to be export, the e is missing
|| [[#t14:29|14:29]]
|- id="t14:29"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | my bad, I missed that during copying
|| [[#t14:29|14:29]]
|- id="t14:29"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | here is the correct version: http://fpaste.org/paste/8019
|| [[#t14:29|14:29]]
|- id="t14:30"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so, anybody running rpmbuild right now?
|| [[#t14:30|14:30]]
|- id="t14:30"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | or where are the problems?
|| [[#t14:30|14:30]]
|- id="t14:30"
! style="background-color: #854685" |  dash123
| style="color: #854685" | ah working now its checking for gcc, etc..ops error again
|| [[#t14:30|14:30]]
|- id="t14:30"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | dash123: this was expected :)
|| [[#t14:30|14:30]]
|- id="t14:31"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | these are missing build reuirements
|| [[#t14:31|14:31]]
|- id="t14:31"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | what about %install , %clean , %files
|| [[#t14:31|14:31]]
|- id="t14:31"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | dash123: can you please post the errors?
|| [[#t14:31|14:31]]
|- id="t14:31"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | l0nwlf: later...
|| [[#t14:31|14:31]]
|- id="t14:31"
! style="background-color: #854685" |  dash123
| style="color: #854685" | yes
|| [[#t14:31|14:31]]
|- id="t14:31"
! style="background-color: #4d4d93" |  openpercept
| style="color: #4d4d93" | :wq
|| [[#t14:31|14:31]]
|- id="t14:31"
! style="background-color: #4d4d93" |  openpercept
| style="color: #4d4d93" | oops
|| [[#t14:31|14:31]]
|- id="t14:31"
! style="background-color: #854685" |  dash123
| style="color: #854685" | http://fpaste.org/paste/8020
|| [[#t14:31|14:31]]
|- id="t14:32"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | http://www.mibbit.com/pb/1JR4Df
|| [[#t14:32|14:32]]
|- id="t14:32"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | dash123: looks good so far, this is because we have not yet tweaked the %install section
|| [[#t14:32|14:32]]
|- id="t14:32"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | l0nwlf: same for you
|| [[#t14:32|14:32]]
|- id="t14:33"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so basically the buold itself has worked for all of you
|| [[#t14:33|14:33]]
|- id="t14:33"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | fine
|| [[#t14:33|14:33]]
|- id="t14:33"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | not to %install
|| [[#t14:33|14:33]]
|- id="t14:33"
| colspan="2" | ... signoff!#fedora-classroom -> icarus-c("Leaving")
|| [[#t14:33|14:33]]
|- id="t14:33"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | the first line remains as is
|| [[#t14:33|14:33]]
|- id="t14:33"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | rm -rf $RPM_BUILD_ROOT
|| [[#t14:33|14:33]]
|- id="t14:34"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | is for cleaning up old stuff if there is any from a previpus build that failed
|| [[#t14:34|14:34]]
|- id="t14:34"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | now instead of "make install DESTDIR=$RPM_BUILD_ROOT" we use waf again
|| [[#t14:34|14:34]]
|- id="t14:34"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so it becomes
|| [[#t14:34|14:34]]
|- id="t14:34"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | DESTDIR=$RPM_BUILD_ROOT ./waf install
|| [[#t14:34|14:34]]
|- id="t14:34"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | when you have changed that, you can re-run rpmbuild
|| [[#t14:34|14:34]]
|- id="t14:35"
| colspan="2" | ... join!#fedora-classroom -> megenius_(n=megenius@ner-as30487.alshamil.net.ae)
|| [[#t14:35|14:35]]
|- id="t14:35"
! style="background-color: #854685" |  dash123
| style="color: #854685" | cwickert: i do realise i didn't include ./waf build -v in %build will that cause problems later?
|| [[#t14:35|14:35]]
|- id="t14:35"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | dash123: yes , then you did not build anything
|| [[#t14:35|14:35]]
|- id="t14:35"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | because this is the counterpart to "make"
|| [[#t14:35|14:35]]
|- id="t14:36"
! style="background-color: #854685" |  dash123
| style="color: #854685" | oh...ok sry
|| [[#t14:36|14:36]]
|- id="t14:36"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | np
|| [[#t14:36|14:36]]
|- id="t14:36"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | let's get back to http://fpaste.org/paste/8020 for a moment
|| [[#t14:36|14:36]]
|- id="t14:36"
! style="background-color: #adad5b" | @spevack
| style="color: #adad5b" | cwickert: about 5 minutes left, FUI
|| [[#t14:36|14:36]]
|- id="t14:36"
! style="background-color: #adad5b" | @spevack
| style="color: #adad5b" | er, FYI
|| [[#t14:36|14:36]]
|- id="t14:36"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | spevack: thanks
|| [[#t14:36|14:36]]
|- id="t14:37"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | everybody: you see these "checking for ..." messages, right=
|| [[#t14:37|14:37]]
|- id="t14:37"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | ?
|| [[#t14:37|14:37]]
|- id="t14:37"
! style="background-color: #854685" |  dash123
| style="color: #854685" | i got a bunch more errors after the correction:
|| [[#t14:37|14:37]]
|- id="t14:37"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | this is where we get the buildquirements from
|| [[#t14:37|14:37]]
|- id="t14:37"
! style="background-color: #854685" |  dash123
| style="color: #854685" | color coded in red
|| [[#t14:37|14:37]]
|- id="t14:37"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | anybody successfully did the build?
|| [[#t14:37|14:37]]
|- id="t14:37"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | until  %install?
|| [[#t14:37|14:37]]
|- id="t14:37"
! style="background-color: #854685" |  dash123
| style="color: #854685" | not me
|| [[#t14:37|14:37]]
|- id="t14:38"
! style="background-color: #854685" |  dash123
| style="color: #854685" | let me copy your spec and try
|| [[#t14:38|14:38]]
|- id="t14:38"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | dash123: please do
|| [[#t14:38|14:38]]
|- id="t14:38"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | http://www.mibbit.com/pb/cCTnmG
|| [[#t14:38|14:38]]
|- id="t14:38"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | here are my errors
|| [[#t14:38|14:38]]
|- id="t14:38"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | l0nwlf: great
|| [[#t14:38|14:38]]
|- id="t14:39"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | these were expected, because the %files section is empty
|| [[#t14:39|14:39]]
|- id="t14:39"
| colspan="2" | ... join!#fedora-classroom -> raina(n=raina@pdpc/supporter/active/raina)
|| [[#t14:39|14:39]]
|- id="t14:40"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | %clean, %files, %changelogs -> the three things still UNtouched
|| [[#t14:40|14:40]]
|- id="t14:40"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | I have updated the spec at http://fpaste.org/paste/8021
|| [[#t14:40|14:40]]
|- id="t14:40"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | %clean remains as is
|| [[#t14:40|14:40]]
|- id="t14:40"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | and for %changelog you write something like
|| [[#t14:40|14:40]]
|- id="t14:41"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | * Sun Apr  05 2009 Foo bari <foo@bar.com> - 0.3.1-1
|| [[#t14:41|14:41]]
|- id="t14:41"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | - Initial attempt
|| [[#t14:41|14:41]]
|- id="t14:41"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | let's have a look a the files section
|| [[#t14:41|14:41]]
|- id="t14:42"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" |  /usr/bin/gigolo is unpackaged
|| [[#t14:42|14:42]]
|- id="t14:42"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | this means it was build but not included in the rpm
|| [[#t14:42|14:42]]
|- id="t14:42"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so we add %{_bindir}/gigolo to the files section
|| [[#t14:42|14:42]]
|- id="t14:43"
| colspan="2" | ... join!#fedora-classroom -> pabloa(n=pabloa@75.Red-88-28-8.staticIP.rima-tde.net)
|| [[#t14:43|14:43]]
|- id="t14:43"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | do not hardcode /usr/bin, but use %{_bindir} instead
|| [[#t14:43|14:43]]
|- id="t14:43"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | for a complete list of macros see http://fedoraproject.org/wiki/Packaging:RPMMacros
|| [[#t14:43|14:43]]
|- id="t14:43"
| colspan="2" | ... join!#fedora-classroom -> megenius__(n=megenius@ner-as30487.alshamil.net.ae)
|| [[#t14:43|14:43]]
|- id="t14:44"
! style="background-color: #854685" |  dash123
| style="color: #854685" | ok
|| [[#t14:44|14:44]]
|- id="t14:44"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so basically everthing that rpm complained about as unpacked needs to be inserted in the %files section
|| [[#t14:44|14:44]]
|- id="t14:44"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | and that's basically it
|| [[#t14:44|14:44]]
|- id="t14:44"
! style="background-color: #97974f" |  l0nwlf
| style="color: #97974f" | http://www.mibbit.com/pb/rFHjef
|| [[#t14:44|14:44]]
|- id="t14:44"
| colspan="2" | ... join!#fedora-classroom -> jyoti(n=Jyoti@117.97.157.3)
|| [[#t14:44|14:44]]
|- id="t14:44"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | l0nwlf: fine
|| [[#t14:44|14:44]]
|- id="t14:45"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | this is where we use %find_lang
|| [[#t14:45|14:45]]
|- id="t14:45"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | it will automatically search for locales and include them
|| [[#t14:45|14:45]]
|- id="t14:45"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | this is decribed in the wiki
|| [[#t14:45|14:45]]
|- id="t14:45"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | https://fedoraproject.org/wiki/Packaging/Guidelines#Handling_Locale_Files
|| [[#t14:45|14:45]]
|- id="t14:46"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | so now all errors should be fixed
|| [[#t14:46|14:46]]
|- id="t14:46"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | and if somebody still has problems, contact me in private
|| [[#t14:46|14:46]]
|- id="t14:46"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | because now the next class is about to start
|| [[#t14:46|14:46]]
|- id="t14:46"
! style="background-color: #854685" |  dash123
| style="color: #854685" | ok...
|| [[#t14:46|14:46]]
|- id="t14:46"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | I will be around in the chan for answers
|| [[#t14:46|14:46]]
|- id="t14:46"
! style="background-color: #adad5b" | @spevack
| style="color: #adad5b" | ok cwickert, thanks so much for teaching this class.
|| [[#t14:46|14:46]]
|- id="t14:47"
| colspan="2" | * cassmodiah applauds cwickert
|| [[#t14:47|14:47]]
|- id="t14:47"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | but these are al minor problems, I hope you understoood what it's about
|| [[#t14:47|14:47]]
|- id="t14:47"
! style="background-color: #adad5b" | @spevack
| style="color: #adad5b" | we'll take a short break, and nirik will start on his Networking class at :52
|| [[#t14:47|14:47]]
|- id="t14:47"
! style="background-color: #b15db1" |  grndplane
| style="color: #b15db1" | Yes thanks for taking the time :-)
|| [[#t14:47|14:47]]
|- id="t14:47"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | feel free to contact me
|| [[#t14:47|14:47]]
|- id="t14:47"
! style="background-color: #5fb4b4" |  G__81
| style="color: #5fb4b4" | very good session cwickert :)
|| [[#t14:47|14:47]]
|- id="t14:47"
! style="background-color: #854685" |  dash123
| style="color: #854685" | thanks cwickert
|| [[#t14:47|14:47]]
|- id="t14:47"
| colspan="2" | * dash123 bows down
|| [[#t14:47|14:47]]
|- id="t14:47"
| colspan="2" | * nirik waits in the wings ready to start in a bit.
|| [[#t14:47|14:47]]
|- id="t14:47"
! style="background-color: #407a40" |  cwickert
| style="color: #407a40" | thanks everybody for your time and intereest :)
|| [[#t14:47|14:47]]
|- id="t14:47"
! style="background-color: #4d4d93" |  openpercept
| style="color: #4d4d93" | thanks cwickert
|| [[#t14:47|14:47]]
|- id="t14:47"
! style="background-color: #42427e" |  Padhu1
| style="color: #42427e" | Thanks
|| [[#t14:47|14:47]]
|}
Generated by irclog2html.py 2.7 by [mailto:marius@pov.lt Marius Gedminas] - find it at [http://mg.pov.lt/irclog2html mg.pov.lt]!

Revision as of 13:48, 5 April 2009

Building RPM packages

Prerequisites

We need to have some tools installed

yum install rpmbuild rpmdevtools

That's all so far, the rest will follow after the classroom