Archive

Posts Tagged ‘factory’

New RPM in openSUSE Factory
1 star2 stars3 stars4 stars5 stars
(no votes yet)
Loading ... Loading ...

September 4th, 2009 No comments

rpmlogo

Michael Schroeder has finally updated the RPM package in openSUSE to the latest upstream version 4.7.1. \o/ There were LOTS of bugfixes, enhancements and internal API changes which are probably not very interesting for mere mortals, but what do they mean for packagers? Here’s a list of important changes for them:

  • Macro %patch does not behave like %patch0 anymore. Stop mixing Patch: with %patch0 and vice versa and use them consistently – i.e. either use the numbers in preamble and in %prep phase or don’t.
  • Fuzz tolerance for patches was changed from 2 to zero. All patches must apply cleanly now.
  • Sub-packages can be declared as “noarch” now. Such .spec file is incompatible with older RPM but the resulting binary packages are compatible.
  • Section %files now supports multiple file lists. No need to join the files into one in %install section.
  • The new macros %{patches} and %{sources} are available. You can use them in for loops to iterate over all patches and sources respectively.
  • %ghost files do not have to be present in the build root anymore. In this case you have to specify their attributes like this: %attr(0644,root,root) %ghost ghostfile.

Few months ago we began discussion with Fedora guys about how to bring our packaging habits more closer. We identified some points by comparing their Packaging Guidelines with our routines and I created a list of differences at RPM wiki. The main idea is to find a solution which is acceptable by both parties and to create a mechanism (usually macros) for it in RPM upstream, so both distributions can benefit from it. Some of the problems are already sorted out, but there is still a long way to go. If you are aware of such differences or even would like to propose the solution, please contact me. I’ll add the items to the list and we’ll discuss them at the openSUSE ConferenceRPM Summit, where people from RPM upstream will be present as well. By looking at the “Solved” part (at the bottom) of the mentioned wiki page you can see the following changes to be more compatible:

  • Our %makeinstall macro is called %make_install in RPM upstream. Change it to the new form when you touch your package (also replace make DESTDIR=${buildroot} install with this macro).
  • Build root is created in a safe way, you don’t need to specify the location with BuildRoot:. Also it is automatically cleaned after the build if the %clean phase is omitted from .spec file (i.e. not mentioned at all, if it is there but is empty no removal is done).
  • Use %{python_sitelib} macro for noarch Python packages and %{python_sitearch} for the architecture dependent ones, instead of the old %{py_sitedir} one. (Yes you can now create noarch Python packages!) Stop using %{py_requires} as well, because dependencies are added automatically now.

Important! Nearly all of these changes are effective from 11.2 and will not work with earlier releases in openSUSE. If you plan to use the same .spec file for backporting inside BuildService, you’ll need to keep the old and the new stuff in corresponding %if 0?%{?suse_version} ... %endif blocks for a while (well, until 11.1 is EOL).

PS: I will try to keep this post updated until 11.2 is released so you might want to check it from time to time.

Wireshark 1.2.0 with GeoIP support hits openSUSE Factory
1 star2 stars3 stars4 stars5 stars
(votes: 1, avg: 5.00)
Loading ... Loading ...

June 22nd, 2009 No comments

A few days ago, the new stable 1.2 branch of Wireshark, the network protocol analyzer, was released to public. It contains many new features that has been added since 1.0. The most vivid are:

  • Wireshark now contains a nice new start page (Picture 1)
  • Display filters now do auto-completion (Picture 2)
  • Wireshark can lookup in GeoIP databases and also use OpenStreetMap (Picture 3)

Wireshark 1.2.0 Start Page Wireshark Auto-complete Wireshark OpenStreetMap

The release contains also a lot of bugfixes, support for the new protocols and the new capture files. You can find more info in the release notes.

If you want to test GeoIP/OpenStreetMap integration in Wireshark, just follow these steps:

  1. install the latest wireshark and GeoIP packages from Factory:
    root@host:~> zypper install wireshark GeoIP libGeoIP1
  2. run the utility which was recently added to GeoIP package by Ludwig Nussel:
    root@host:~> geoip-fetch -a

    This will fetch the latest GeoIP data files including the GeoIPCity, which is 44MB large, so we don’t keep it in the package, but is necessary for this feature of wireshark.

  3. run wireshark and enable GeoIP: Edit -> Preferences -> Protocols -> IP -> check Enable GeoIP lookups
  4. trace some network traffic (probably the best is to access various websites in your browser)
  5. pick some packet and expand Internet Protocol from dissector, you will see a line similar to this one:
    [Destination GeoIP: Mountain View, CA, AS15169, 37.419201, -122.057404]
  6. go to Statistics -> Endpoints -> select IPv4 tab
  7. you’ll see IPv4 endpoints with Countries, Cities, Providers and Latitude/Longitude
  8. press Map button at the bottom of the dialog window
  9. browser with OpenStreetMap and embedded Endpoints will open (see Picture 3)
  10. you can also use new packet filters starting with the ip.geoip prefix (see Picture 2)