<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <title></title> <link rel="stylesheet" media="screen" type="text/css" href="./style.css" /> <link rel="stylesheet" media="screen" type="text/css" href="./design.css" /> <link rel="stylesheet" media="print" type="text/css" href="./print.css" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> </head> <body> <h1 class="sectionedit1718"><a name="installing_geda_rpm_packages_on_fedora" id="installing_geda_rpm_packages_on_fedora">Installing gEDA rpm packages on Fedora</a></h1> <div class="level1"> <p> gEDA/gaf applications are available in the default Fedora repositories. The Fedora packages are maintained by Chitlesh Goorah. </p> </div> <!-- EDIT1718 SECTION "Installing gEDA rpm packages on Fedora" [1-183] --> <h3 class="sectionedit1719"><a name="installing_from_fedora_repositories" id="installing_from_fedora_repositories">Installing from Fedora repositories</a></h3> <div class="level3"> <p> It is recommended to install gEDA/gaf releases on Fedora using <code>yum</code> or <code>pirut</code>. Pirut (listed in the menu as “Add/Remove Software”) is a graphical interface for <code>yum</code>. </p> <pre class="code">yum install geda\* pcb gerbv</pre> <p> Note: you have to be root (<code>su -</code>) to install packages. </p> <p> Each gEDA/gaf release takes one to two days to be packaged up and synchronised with the Fedora mirrors. If a release seems to be missing, you could file a bug report (Request for Enhancement, RFE) on <a href="http://bugzilla.redhat.com" class="urlextern" title="http://bugzilla.redhat.com" rel="nofollow">Fedora's bugzilla</a> asking them to update gEDA/gaf for you. </p> <p> You can follow: </p> <ul> <li class="level1"><div class="li"> the releases on <a href="http://clunixchit.blogspot.com" class="urlextern" title="http://clunixchit.blogspot.com" rel="nofollow">Chitlesh Goorah's blog</a>, or</div> </li> <li class="level1"><div class="li"> the gEDA/gaf build times on <a href="http://koji.fedoraproject.org/koji/builds?userID=159" class="urlextern" title="http://koji.fedoraproject.org/koji/builds?userID=159" rel="nofollow">Fedora's build system</a></div> </li> </ul> </div> <!-- EDIT1719 SECTION "Installing from Fedora repositories" [184-998] --> <h3 class="sectionedit1720"><a name="compile_it_yourself" id="compile_it_yourself">Compile it yourself</a></h3> <div class="level3"> <p> If you want to get their hands dirty by building gEDA/gaf on Fedora, you will need to install the dependencies listed in the gEDA/gaf <code>README</code> file. They can be installed with <code>yum</code>: </p> <pre class="code">yum install libstroke-devel groff autoconf gtk2-devel gd-devel gettext-devel guile-devel</pre> </div> <!-- EDIT1720 SECTION "Compile it yourself" [999-1310] --> <h3 class="sectionedit1721"><a name="rebuild_your_own_rpms" id="rebuild_your_own_rpms">Rebuild your own RPMs</a></h3> <div class="level3"> <p> The Fedora Project provides simple tools for anyone to rebuild RPMs from SRPMs. An SRPM contains the upstream sources, the <acronym title="specification">spec</acronym> file and the patches required (if any). </p> <p> To be able to build RPMs, you will need a build platform, which does <strong>NOT</strong> require root access. <code>rpmdevtools</code> provides the requires tools to do so. </p> <pre class="code">yum install rpmdevtools</pre> </div> <h4><a name="build_platform" id="build_platform">Build Platform</a></h4> <div class="level4"> <p> The build platform should be built under a NON-root account. </p> <pre class="code">fedora-buildrpmtree</pre> <p> You will see a <code>rpmbuild</code> folder in your <code>$HOME</code> directory. This directory will be your build platform. </p> </div> <h4><a name="how_to_get_srpms" id="how_to_get_srpms">How to get SRPMs</a></h4> <div class="level4"> <p> Fedora provides SRPM of every package it has. You can download those SRPMs using the <code>yumdownloader</code> tool from the <code>yum-utils</code> package. </p> <pre class="code">yum install yum-utils</pre> <p> if you don't have <code>yum-utils</code> installed already. </p> <p> Download the <code>geda-gaf</code> SRPM (under a NON-root account) using: </p> <pre class="code">yumdownloader --source geda-gaf</pre> <p> Once the download is complete the package can be found under the current directory under the filename <code>geda-gaf-%{version}-%{dist}.src.rpm</code>, where <code>%{version}</code> is the current version of gEDA/gaf packaged by Fedora, and <code>%{dist}</code> is the current Fedora version. For example, the gEDA/gaf SRPM for Fedora 14 is called <code>geda-gaf-1.6.1-1.fc14.src.rpm</code>. </p> <p> The <acronym title="specification">spec</acronym> file, upstream sources and distribution patches can be extracted from the SRPM using: </p> <pre class="code">rpm -ivh geda-gaf-%{version}-%{dist}.src.rpm</pre> <p> (I remind you that this should never be executed as root!) </p> <p> You will see </p> <ul> <li class="level1"><div class="li"> <acronym title="specification">spec</acronym> files will be installed in rpmbuild/SPECS</div> </li> <li class="level1"><div class="li"> sources, patches and desktop files will be installed in rpmbuild/SOURCES</div> </li> </ul> </div> <h4><a name="building_new_rpms_from_new_sources" id="building_new_rpms_from_new_sources">Building new RPMS from new sources</a></h4> <div class="level4"> <p> First: </p> <ol> <li class="level1"><div class="li"> Download your new sources, as described in the previous section.</div> </li> <li class="level1"><div class="li"> Edit the rpmbuild/SPECS/%{name}.<acronym title="specification">spec</acronym></div> <ol> <li class="level2"><div class="li"> Edit version tag</div> </li> <li class="level2"><div class="li"> Edit release tag</div> </li> </ol> </li> <li class="level1"><div class="li"> Make any other changes you require</div> </li> </ol> <p> Once the previous steps have been completed, you can compile the new RPMs. </p> <pre class="code">cd $HOME/rpmbuild/SPECS/ rpmbuild -ba %{name}.spec</pre> <p> The successfully built RPMS will be found in <code>$HOME/rpmbuild/RPMS/</code>, and the corresponding SRPM in <code>$HOME/rpmbuild/SRPMS</code>. </p> </div> <!-- EDIT1721 SECTION "Rebuild your own RPMs" [1311-] --></body> </html>