From Fedora Project Wiki
m (document better fix for console login problems (selinux))
Line 84: Line 84:
== Notes for application developers and package maintainers ==
== Notes for application developers and package maintainers ==
* some hardware that's usual on other platforms is missing, like
* some hardware that's usual on other platforms is missing, like
** USB
** USB - starting F-15 we have libusb1 built, but it's a no-op
** FireWire
** FireWire
** InfiniBand
** InfiniBand

Revision as of 15:05, 7 November 2010

Fedora s390x

  • IRC: #fedora-s390x on irc.freenode.net
  • Mailing List: s390x
  • Regular IRC meetings: TBD

Targets

  • short term goals:
  • reach out to known interested parties in community
  • reaching out (through contacts) to IBM community (.de)
  • have several "interested parties" that will help once we are building packages/trees
  • start F-14 composes
  • identify the resources used for composes
  • get to the point where F-14 is bootable and installable with pungi images

Accomplished

  • set up externally/publically available koji instance
  • s390x koji instance
  • Mass rebuild of all Rawhide packages, ~1000 failures
  • Build statistics updated weekly

People

History

FUDcon 2008 was an excellent event. During the conference, a session on secondary arches was presented and there was an excellent effort made to reach out to new arches.

After several months of bootstrapping as of June 2009 we've reached a state where we have most packages built from current Fedora rawhide CVS. There are still around ~500 failures, most of which are related to java and ocaml dependencies (ocaml is not available on s390x).

News of September 2010: We're now getting really close to Rawhide and we have a working install tree available thats basically based on current Fedora 14. Previously we only provided a hercules images as well as a tarball from a root FS as installs weren't possible. We still provide those, but now you can do your own installs again, too!

For those interested in trying it out you access everything needed from here:

http://secondary.fedoraproject.org/pub/alt/spins/S390/

You will find several files there:

  • README
    • Very brief howto get everything up and running, either for running preinstalled hercules images or how to do a complete install yourself
  • fedora-14-s390x.img.bz2
    • Hercules Fedora 14 s390x DASD image bzip2 compressed. WARNING! This file is 8GB uncompressed (only 350MB compressed), so make sure you have the room for it.
  • f11-s390x.img
    • Hercules Fedora 11 s390x DASD image
  • f11-s390x.tar.bz2
    • tarball of the whole tree. Can be unpacked on a real machine (confirmed it works!)
  • anaconda-ks.cfg
    • Sample kickstart file that installs a very basic system on a dasd image. WARNING! Wipes out the whole partition table, so use with care
  • hercules.cnf
    • hercules emulator config file
  • hercules.init
    • Small script to start up hercules with some iptables rules for NAT (might require you to modify your personal rules in order to work properly)
  • generic.prm
    • Kernel command line parameter file, needed for installation

Supported hardware

Tips

Known issues

  • login using the Hercules console is not possible => login over the network using sshd and run chcon --reference=/dev/tty /dev/console
 UPDATE: This needs to be repeated after each reboot. A better fix is to run 'setsebool -P allow_console_login 1'
  • The current Fedora 14 hercules image doesn't contain an automatic enabled yum repo for our mesh tree yet. Simply do the following to add that:
echo '[fedora]
name=Fedora $releasever - $basearch
baseurl=http://s390.koji.fedoraproject.org/mash/rawhide/s390x/os/
enabled=1
gpgcheck=0' > /etc/yum.repos.d/fedora.repo
  • The current Fedora 14 hercules image has a non-working fedora-updates-testing repo enabled. To remove it simply do the following: rm -f /etc/yum.repos.d/fedora-updates-testing.repo

Notes for application developers and package maintainers

  • some hardware that's usual on other platforms is missing, like
    • USB - starting F-15 we have libusb1 built, but it's a no-op
    • FireWire
    • InfiniBand
  • s390 arch has 2 GB address space and it can be too small when building large C++ applications with debug information enabled, such builds can fail in the final link with errors like "Final link failed: exhausted memory" => the workaround is to disable debug information (remove -g from CXXFLAGS)

Please make sure to build into the correct target, don't mix dist-f14 and dist-f14-updates

To test a build for your specific package for s390x do this:

After running fedora-packager-setup from the fedora-packager rpm

s390-koji build --scratch dist-f14 yourpkg.src.rpm

To build a package which should end up in the F-14 tree, the package needs to be commited in dist-git and then be built with:

s390-koji build dist-f14 "$(fedpkg giturl)"

Tracker Bugs

If excluding s390/s390x architectures you need to make the bug block F-ExcludeArch-s390x

to see whats currently blocking visit Bugzilla

If a bug is specific to s390/s390x architectures make the bug blocking ZedoraTracker

to see not yet resolved issues visit Bugzilla

Packages under review

List of s390 specific packages currently under review in Fedora

none

Packages to be submitted:

none