Gnome and rpm_packaging
Embed Size (px)
Transcript of Gnome and rpm_packaging
- 1. Anish Patil (anishpatil [AT] fedoraproject dot org) Praveen Kumar (kumarpraveen [AT] fedoraproject dot org) Presented by GNOME and RPM Packaging - 101
- 2. Myth?
- 3. Philosophy?
- 4. GNOME
- 5. Package management Apps:- Gnome-photos Gnome-weather Gnome-maps
- 6. IRC #gnome-love #gnome-hackers irc.gnome.org
- 7. Git git clone git://git.gnome.org/newcomers- tutorial cd newcomers-tutorial gjs hello.js
- 8. Bugs? https://bugzilla.gnome.org
- 9. Patching Git dif git format-patch --stdout HEAD~1 > ~/myPatch.patch git bz attach nnnnnn HEAD git bz apply bug_no
- 10. Introduction RPM (RPM Package Manager) .rpm as file format extension Developed on the basis of the Linux Standard Base (LSB) Commonly used format in various Linux distribution like Fedora, Red Hat Linux, CentOS, OpenSUSE
- 11. Why RPM? Ease of performing software installation and maintenance RPM packages can be crypto verified with GPG and MD5 Original source archive(s) are included in SRPMs, making verification easier Ease of updating your software to newer version Automatic build and install time dependency evaluation.
- 12. Prerequisites Packages to be pre-installed @development-tools fedora-packager Setting up RPM build area $ rpmdev-setuptree
- 13. rpmdev-setuptree Creates rpmbuild directory in /home/$USER with sub-directories BUILD: Where software is unpacked and built BUILDROOT: Where files are installed during the install stage RPMS: Created rpm during build process SOURCES : Source tar file, patches SPECS: Spec file SRPMS: Source RPM
- 14. Spec File Instructions contain how to build rpm rpmdev-newspec .spec
- 15. Building RPM Packages Executes %prep stage from the spec file $ rpmbuild -bp .spec Executes "%build" stage from the spec file $ rpmbuild -bc .spec Executes %install stage from the spec file $ rpmbuild -bi .spec Build binary package (after running %prep %build %install) $ rpmbuild -bb .spec
- 16. Cont ... Build binary and source packages (after running %prep %build %install) $ rpmbuild -ba .spec Build Only Source Package $ rpmbuild -bs .spec
- 17. Reference Fedora packaging Guideline - http://fedoraproject.org/wiki/Packaging:Guidelines Koji Build Url - http://koji.fedoraproject.org Hello world RPM packaging example - https://fedoraproject.org/wiki/How_to_create_a_GNU _Hello_RPM_package Fedora wishlist package - https://fedoraproject.org/wiki/Package_maintainers_w ishlist?rd=ackageMaintainers/WishList Planet Fedora - http://planet.fedoraproject.org/
- 18. IRC #fedora-devel irc.freenode.net