Re-enabling Steam Runtime in the Steam package

Due to some issues with libraries in an upcoming Steam client update, I’m forced to re-enable the Steam runtime (Ubuntu libraries) in Fedora’s Steam package. This means that all dependencies are no longer needed but the size of the Steam client can get ridiculously high on the system on where it is installed. For comparison, see the difference in size for an installation that uses the Steam runtime and one that doesn’t (the SteamApps folder is the folder where applications/games are installed):

$ du -hs --exclude=SteamApps
1.3G
$ du -hs --exclude=SteamApps --exclude=steam-runtime
992M

If we could run it without the Steam runtime enabled and also avoid downloading the runtime archives; then the client would weight nearly 500 mb less:

$ du -hs --exclude=SteamApps --exclude=steam-runtime*
805M

Let’s hope that in the future Valve will not mandate the use of Ubuntu libraries for long and will standardize on a specific set of common libraries.

I’ve updated the repository page with updated instruction and pushed updated packages both to the repository and in RPMFusion. Starting from package steam-1.0.0.43-9 the Steam runtime is left at the default value (enabled).

Steam is now in RPMFusion!

steamThe Steam package is now available in the RPMFusion repositories. It is currently in the updates-testing repository, but it can be installed anyway directly if you have the RPMFusion repositories enabled.

http://download1.rpmfusion.org/nonfree/fedora/updates/testing/19/i386/

The package is currently 32 bit only, but it can be installed easily also on a 64 bit system. In fact, I’m currently running nearly 70 games on my 64 bit system. For details on the package, look at my now-obsolete Steam repository page.

To perform the installation today, make sure to have both RPMFusion free and non free repositories enabled and perform the following command as root:

yum -y --enablerepo=rpmfusion-nonfree-updates-testing install steam

The Steam package has some profiles enabled to avoid using the Ubuntu Steam Runtime, which produces graphical artifacts and sound issues when run in Fedora. To avoid any problems, please log out and login again or reboot the system prior to using Steam for the first time!

Steam games require the S3 Texture compression library for running on Open Source drivers, and the package already takes care of installing it for you.

Steam and Oculus Rift

oculus

I’ve just updated the Steam package to the latest release (1.0.0.43) and in addition to the Steam controller support there are now udev rules for the Oculus Rift! This is the changelog content:

$ cat /usr/share/doc/steam-1.0.0.43/changelog | head -5
steam (1.0.0.43) precise; urgency=low

  * Update udev rules to support front panel and Oculus Rift
  * Demote jockey-common dependency to Recommends

And this is the content of the UDEV rules’ file:

$ cat /usr/lib/udev/rules.d/99-steam-controller-perms.rules
#USB devices
SUBSYSTEM=="usb", ATTRS{idVendor}=="c251", ATTRS{idProduct}=="2202", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2202", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="1101", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="1051", MODE="0666"
# Oculus HID Sensor naming and permissioning
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="2833", MODE="0666"

Would you consider buying an Oculus if Steam games start to support it?

Some updates to repositories

I’ve pushed some updates for the repositories.

Cdrtools now ship with shared libraries enabled and a fix for Kernel Capabilities on RHEL/CentOS 6 and Fedora distributions. There was a regression introduced in the packaging of version 3.01a17 which was disabling capabilities on the binaries. Along with this the SPEC file was simplified and compile options were aligned with current policies.

Skype has been updated with some rpmlint fix and now introduce the PULSE_LATENCY_MSEC=30 environment setting for Fedora 20 systems and Purple Skype plugin is now available for both i686 and x86_64.

FreeBSD 10.0-CURRENT X.org repository (amd64)

I’ve just pushed a repository to the site that contains the very latest X.org packages for FreeBSD 10.0. All packages have been built with poudriere. The repository contains the following ports:

x11/xorg
x11/xorg-minimal
x11/nvidia-driver
x11/nvidia-settings
x11/nvidia-xconfig
multimedia/vdpauinfo
multimedia/libva
ports-mgmt/poudriere-devel

It should be everything required for running an (experimental) updated X.org stack on FreeBSD 10. Packages are built with the following /etc/make.conf settings:

SVN=/usr/bin/svnlite
SVN_UPDATE=yes
WITH_NEW_XORG=yes
WITH_KMS=yes
WITH_GALLIUM=yes
MALLOC_PRODUCTION=yes

The ports tree used to build all packages is generated from this:

  • Updated ports tree at 24th September 2013.
  • Niclas Zeising’s patch revision of 24th September 2013 that updates all the Mesa stack and enables experimental devd configuration of devices for FreeBSD 10.
  • Updated Nvidia driver and utilities at version 325.15.

Please note that the repository is for amd64 platforms only.

To enable the repository just add/replace this line to your current PKGNG repository configuration:

packagesite: https://negativo17.org/freebsd/xorg/

Currently, the proprietary Nvidia driver make my system crash on me with the following messages in the log; any hint for solving it would be greatly appreciated:

kernel: nvidia0:  on vgapci0
kernel: vgapci0: child nvidia0 requested pci_enable_io
kernel: vgapci0: child nvidia0 requested pci_enable_io
kernel: ACPI Warning: \_SB_.PCI0.AGP_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20130823/nsarguments-97)
kernel: ACPI Warning: \_SB_.PCI0.AGP_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20130823/nsarguments-97)
kernel: ACPI Warning: \_SB_.PCI0.AGP_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20130823/nsarguments-97)
kernel: ACPI Warning: \_SB_.PCI0.AGP_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20130823/nsarguments-97)
kernel: ACPI Warning: \_SB_.PCI0.AGP_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20130823/nsarguments-97)
kernel: ACPI Warning: \_SB_.PCI0.AGP_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20130823/nsarguments-97)
kernel: ACPI Warning: \_SB_.PCI0.AGP_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20130823/nsarguments-97)
kernel: ACPI Warning: \_SB_.PCI0.AGP_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20130823/nsarguments-97)
kernel: ACPI Warning: \_SB_.PCI0.AGP_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20130823/nsarguments-97)
syslogd: kernel boot file is /boot/kernel/kernel
kernel: NVRM: RmInitAdapter failed! (0x26:0xb:1179)
kernel: nvidia0: NVRM: rm_init_adapter() failed!
kernel: 
kernel: 
kernel: Fatal trap 12: page fault while in kernel mode
kernel: ACPI Warning: \_SB_.PCI0.AGP_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20130823/nsarguments-97)
kernel: ACPI Warning: \_SB_.PCI0.AGP_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20130823/nsarguments-97)
kernel: ACPI Warning: \_SB_.PCI0.AGP_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20130823/nsarguments-97)
kernel: ACPI Warning: \_SB_.PCI0.AGP_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20130823/nsarguments-97)
kernel: ACPI Warning: \_SB_.PCI0.AGP_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20130823/nsarguments-97)
kernel: ACPI Warning: \_SB_.PCI0.AGP_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20130823/nsarguments-97)
kernel: ACPI Warning: \_SB_.PCI0.AGP_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20130823/nsarguments-97)
syslogd: kernel boot file is /boot/kernel/kernel
kernel: NVRM: RmInitAdapter failed! (0x26:0xb:1179)
kernel: nvidia0: NVRM: rm_init_adapter() failed!
kernel: 
kernel: 
kernel: Fatal trap 12: page fault while in kernel mode
kernel: cpuid = 1; apic id = 01
kernel: fault virtual address   = 0x8
kernel: fault code              = supervisor read data, page not present
kernel: instruction pointer     = 0x20:0xffffffff81d151f4
kernel: stack pointer           = 0x28:0xfffffe01198f1590
kernel: frame pointer           = 0x28:0xfffffe01198f1670
kernel: code segment            = base 0x0, limit 0xfffff, type 0x1b
kernel: = DPL 0, pres 1, long 1, def32 0, gran 1
kernel: processor eflags        = interrupt enabled, resume, IOPL = 3
kernel: current process         = 1425 (Xorg)
kernel: trap number             = 12
kernel: panic: page fault
kernel: cpuid = 1
kernel: KDB: stack backtrace:
kernel: #0 0xffffffff808ea690 at kdb_backtrace+0x60
kernel: #1 0xffffffff808b2245 at panic+0x155
kernel: #2 0xffffffff80c8877a at trap_fatal+0x37a
kernel: #3 0xffffffff80c88a47 at trap_pfault+0x2b7
kernel: #4 0xffffffff80c88206 at trap+0x5e6
kernel: #5 0xffffffff80c714f2 at calltrap+0x8
kernel: #6 0xffffffff81d322a3 at nvidia_dev_dtor+0x23
kernel: #7 0xffffffff807acc29 at devfs_fpdrop+0xa9
kernel: #8 0xffffffff807ad5c2 at devfs_open+0x142
kernel: #9 0xffffffff80d40a52 at VOP_OPEN_APV+0x92
kernel: #10 0xffffffff8095a576 at vn_open_vnode+0x216
kernel: #11 0xffffffff8095a188 at vn_open_cred+0x358
kernel: #12 0xffffffff80953801 at kern_openat+0x261
kernel: #13 0xffffffff80c89067 at amd64_syscall+0x357
kernel: #14 0xffffffff80c717db at Xfast_syscall+0xfb

No more secondary architectures

I was notified I can not use Fedora Koji builders for doing personal builds of Fedora forbidden items. This means I have to drop the following architectures from the repositories:

  • CentOS/RHEL 5 – ppc
  • CentOS/RHEL 5 – ppc64
  • Fedora 20 – armv7hl

I don’t have any hardware (or access) to any system like those; so my only chance is to drop support for them. All those architectures are bound to disappear from the repositories with the next round of updates.

CDRtools repository updated

New version 3.01a17 has been released. Starting from this version packages are built with all architectures enabled; this means that Fedora 20 has inherited armv7hl support and CentOS/RHEL 6 and CentOS/RHEL 5 have now respectively ppc64 and ppc support.

Along with the update, all Fedora 17 packages have been removed now that the distribution has gone EOL.