Skip to end of metadata
Go to start of metadata

What is the Spec Files Extra repository?

The SFE package repository is an "extras" package repository, supplementing the core OI distribution with additional software from the Spec Files Extra project.

It contains a wide variety of software, including:

  • Various languages and compilers (gcc 4.6.2, Steel Bank Common Lisp, the Glasgow Haskell Compiler, Python 3)
  • Various daemons and database programs (PostgreSQL, dovecot, postfix)
  • Qt 4.7 and some applications which use it (the Scribus desktop publishing system, the LyX LaTeX front end, the Arora Web browser)
  • Multimedia applications (Music Player Daemon and several clients, FFmpeg, mplayer2, vlc, MKVToolnix)

Using the SFE repos

Software Patents

Spec Files Extra has two repos, "sfe", and "sfe-encumbered". The sfe repository does not knowingly violate any software patents, and is safe to use.

However the sfe-encumbered repo does contain software known to infringe upon software patents. If you are in the United States, please be advised you may be violating the law if you use this repository. If you are in a country that does not uphold pure software patents, such as many European countries (e.g. the UK), you may ignore this warning.

To install packages from sfe, simply run:

To install packages from sfe-encumbered, simply run:

You can browse the contents of the repository with a Web browser by visiting the above URLs. However it is easier to navigate through the contents of the repository by viewing it inside Package Manager (System -> Administration -> Package Manager or, from the command line: packagemanager). To show only the contents of this repository, choose "sfe" or "sfe-encumbered" in the "Publisher" menu.

Required OpenIndiana Build

To use this repository, you must be using oi_151a. You can upgrade from OI 147 or 148 by following our Upgrading OpenIndiana instructions

Troubleshooting

gcc-4 runtime from opensolaris.org

If you have the legacy gcc-4 runtime from the opensolaris.org publisher installed, you will run into trouble. We would strongly recommend uninstalling it by running:

You do not need them anyway, since the SFE IPS repository provides a much newer gcc. Also, the gcc-4 builds were non-functional.

gcc-46 is not able to compile .c/c++ files

If you are getting something like this:

or this:

then probably you don't have some packages installed. At the moment these packages should be installed to correctly setup the build environment:

You can check the packages list in the SFE bootstrap script here: http://tinyurl.com/bootstrap-sfe-latest-os20nn.

VirtualBox and GCC 4.6 libgcc_s.so.1

SFE delivers symlinks for libgcc_s.so.1 and libstdc++.so.6 into /usr/lib as the OpenIndiana project intends to transition to gcc 4.6 as its default compiler. At the present time, this is known to break VirtualBox. You can fix this by invoking the VirtualBox binary as follows:

LD_LIBRARY_PATH=/usr/sfw/lib/amd64 VirtualBox

Or the following if you are on a 32 bit system:

LD_LIBRARY_PATH=/usr/sfw/lib VirtualBox

If that does not work (as it does not seem to with recent versions of VirtualBox), this should:

LD_NODIRECT=1 VirtualBox

Another workaround, which does not require you to set an environment variable each time you run VirtualBox, is given at the vbox bugtracker. It is the first workaround at that link, the one that involves replacing the file VBoxSVC with a small script (while renaming the original file).

Reporting Bugs

If you run into any bugs, please report them at https://www.illumos.org/projects/oi-sfe/issues stating the name of the package. Also, maintainers of SFE specs hang out at the IRC channel #pkgbuild, so you might be able to expedite matters by mentioning any problems there first.

Notes on the packages

Multimedia

At present, there are two main multimedia applications at the repository: MPD (Music Player Daemon) for playing music, and mplayer2 for playing videos. The repository also has VLC, but the port of that to OpenIndiana is a work in progress, and playing actual physical DVDs directly is not yet supported. If you don't like playing videos from the command line, it is recommended that you use smplayer, a nice GUI front end to mplayer, unless you have a good reason to use VLC.

MPD is a music player that, this being Unix, follows the client/server model. MPD runs as a server, and there are numerous clients available for it. The SFE IPS repository presently has three GUI clients—gmpc, Sonata, and qmpdclient—and two command line clients, ncmpcpp and mpc. (mpc is a very basic client intended mostly for being used in scripts.)

mplayer2 is a fork of MPlayer. The main reason we chose mplayer2 over the unforked, original mplayer1 is that mplayer2 can link to external libraries supplied by FFmpeg, which do the actual decoding. (mplayer1 uses its own FFmpeg.) This makes it easier to maintain mplayer2 than mplayer1, since packagers can concentrate on maintaining FFmpeg, which changes more quickly than mplayer, as opposed to needing to update mplayer1 each time FFmpeg changes.

A notable difference between mplayer2 and mplayer1 is that mplayer2 does not provide mencoder, which even the mplayer1 developers now consider to be deprecated. Recent versions of mencoder have been observed to produce serious audio sync problems with x264. Therefore, if you want to encode videos, it is recommended that you use ffmpeg, which comes with the SFE OI package library/video/ffmpeg.

Qt

Since OpenIndiana comes with the Gnome desktop environment, its native widget toolkit is GTK+. However, there are many useful applications which use GTK's arch rival, Qt. For example, the only usable browser other than Firefox presently available for OpenIndiana appears to be Arora, which descends from a demo app for the Qt WebKit port. (WebKit is the html rendering engine used by Google Chrome, among others.)

it is possible to make Qt applications harmonize fairly well with the native OpenIndiana Gnome desktop. To do so, after you have installed a Qt application such as web/browser/arora, execute /usr/g++/bin/qtconfig and select GTK+ as the GUI Style.

To make Qt use anti-aliased fonts, create .fonts.conf in your home directory containing the following:

This is necessary because Qt applications do not respect Gnome setting unless KDE is installed.

Xfce

The easiest way to use Xfce is to just install all the packages by doing (as root) pkg install xfce/*. To boot into Xfce, simply log out, type in your user name at the login prompt and hit return, and select Xfce from the session menu that appears in the bar at the bottom.

The above install command will not install xfce-terminal, since its prefix is terminal, not xfce. So if you want it, you need to install it separately.

NOTE. An obsolete package, xfce-loginmanager, was inadvertently added to the repository. It can keep Xfce from starting and has since been removed. If you installed it, do the following:

pkg uninstall xfce-loginmanager
pkg verify xfce-utils

If the latter shows that there is a problem (if there is no problem, it will not print anything), run

pfexec pkg fix xfce-utils

That will restore a file provided by xfce-utils that xfce-loginmanager overwrote.

Labels:
  1. Aug 01, 2011

    Anonymous

    Hi,

    looks like smplayer package is missing (i guess this is a docs errata - or package wasn't built):

    $ pfexec pkg install -vn library/video/ffmpeg smplayer ncmpcpp
    Creating Planpkg: The following pattern(s) did not match any packages in the current catalog.
    Try relaxing the pattern, refreshing and/or examining the catalogs:
    smplayer

    $ pkg publisher -a
    PUBLISHER TYPE STATUS URI
    openindiana.org (preferred) origin online http://pkg.openindiana.org/dev-il/
    opensolaris.org origin online http://pkg.openindiana.org/legacy/
    sfebuild origin online http://staticdev.uk.openindiana.org:10003/

    Regards
    Predrag Zecevic

    1. Aug 02, 2011

      Thanks for pointing that out.

      The reason that happened is that we build the encumbered packages separately. I thought if I just built mplayer2 and mpd all the encumbered packages would get built, but I forgot about smplayer.

  2. Aug 04, 2011

    Anonymous

    Does mplayer2 make use of vdpau?

    1. Aug 05, 2011

      vdpau is enabled in our build, but it doesn't work on my computer, anyway.

      That may be because vdpau is not available on my system. (I don't know much about vdpau, never having used it.)

    2. Aug 05, 2011

      Actually, it turns out that vdpau wasn't enabled, so I rebuilt mplayer2 with it enabled.

      Unfortunately I can't test it, since my Nvidia graphics card is too old. I'd appreciate anyone reporting whether or not mplayer2 using vdpau works for them (if their GPU supports vdpau).

      1. Aug 06, 2011

        Anonymous

        Great news! will test this once I've upgraded to oi-151 today.

  3. Aug 05, 2011

    Anonymous

    I have both the dev-il and sfebuild publishers on my machine. This morning there was an update on dev-il so I did an update. After running the update "pkg list -u" returned:

    NAME (PUBLISHER) VERSION STATE UFOXI
    compress/p7zip 4.55-0.151 installed u----
    consolidation/gnome/gnome-incorporation 0.5.11-0.151 installed u----
    library/gc 0.5.11-0.151 installed u----
    network/rsync 3.0.6-0.151 installed u----

    However, I wasn't able to update it to get rid of the messages by updating the packages (which didn't work). Next I disabled the sfebuild repository and redid the refresh and list -u and that time I got:

    pkg: no packages are installed or are installed and have newer versions available

    This suggests that having the SFE repository enabled is somehow confusing pkg and making it think there are updates it can apply when apparently that is not true.

    1. Aug 05, 2011

      Anonymous

      That update (tried only rsync) throws an error.
      Not sure if this was intentional or not:

      pfexec pkg update -v pkg://sfebuild/network/rsync@3.0.8,5.11-0.151:20110730T071719Z
      Creating Plan /pkg: No matching version of network/rsync can be installed:
      pkg://sfebuild/network/rsync@3.0.8,5.11-0.151:20110730T071719Z: This version is excluded by installed incorporation pkg://openindiana.org/consolidation/sfw/sfw-incorporation@0.5.11,5.11-0.151:20110523T151037Z

      I think that such restrictions has to be removed from OI repository (rsync is perfect example - it is single package) and allow installation of newer package.

      Best regards.
      Predrag Zecevic

      1. Aug 07, 2011

        The tentative solution to this problem which we've adopted is to prefix the package names of such packages with "sfe.openindiana.org", and to install them in /usr/gnu, so that they don't conflict with system packages.

        I think this is an adequate solution, since eventually the system packages should get updated to an acceptably recent version, at which point oi-sfe will no longer need to provide them.

        You can install SFE's rsync by typing
        pkg install sfe.openindiana.org/network/rsync

  4. Sep 15, 2011

    Anonymous

    Hi,

    I can't find OpenSceneGraph package from sfe/sfe-encumbered repos, even though the OpenIndiana 151a release notes say so. Am I missing something, or is it missing from repos?

    • Janne
    1. Sep 15, 2011

      I don't know how OpenSceneGraph ended up in there. A spec file does not even exist for it, that is, no one even tried to build it.

      I've corrected the release notes.

    2. Sep 15, 2011

      SFEosg.spec is the file to build OpenSceneGraph.

  5. Sep 15, 2011

    Ah, so there is a spec for it. Sorry. I'll try to add this package to the IPS repo when it gets updated next week.

    SFEosg is a stupid name for the spec, though.

  6. Sep 17, 2011

    Anonymous

    Could we request that gnucash be added to your OI SFE repository? SGEgnucash.spec
    seems to be at gnucash-2.4.6 (2.4.7 is out now, but 2.4.6 would be welcome as well).

    Thanks.

  7. Sep 21, 2011

    Anonymous

    Update: vlc plays DVD-movies perfectly. I wrote a mini-HOWTO on illumos forums. Look at "help" -> DVD-Movie-HOWTO.
    Cheers

  8. Sep 28, 2011

    Anonymous

    i cannot install lxde/file-manage/pcmanfm, because of lines
    > dir group=herzen mode=0755 owner=herzen path=etc/xdg/pcmanfm/default
    and
    > file c850c4fdcac2dc31ac6e4a79c53612c939021782 chash=b093ef501e3ddc6ed5337a7271966ba744ae4e18 group=herzen mode=0644 owner=herzen path=etc/xdg/pcmanfm/default/pcmanfm.conf pkg.csize=214 pkg.size=302

    what should i do for solving?

    1. Sep 28, 2011

      It's fixed now. Try installing the package again.

      1. Sep 28, 2011

        Anonymous

        thank you, i did install it sucessful!!

        1. Oct 16, 2011

          Anonymous

          i encountered this problem again at trying update to 20111014T184122Z version.

  9. Sep 28, 2011

    Anonymous

    Any chance of getting Midori browser -http://www.twotoasts.de/index.php?/pages/midori_summary.html in SFE?
    We already have webkit-gtk so would be nice to have a browser that makes use of it.

    1. Sep 28, 2011

      Some people have tried to build Midori, but the effort has stalled.

      Arora is in oi-sfe, and it uses (Qt)WebKit.

    2. Sep 29, 2011

      Alex - Actually, Midori 0.3.6 is perfectly buildable on oi_151a and the SPEC file is in SFE experimental directory:
      experimental/SFEmidori.spec

      My stable binary:
      rw-rr- 1 * * 1349037 Sep 29 09:10 midori-0.3.6-solaris11.tar.bz2

      Midori 0.4.0 requires Vala (Compiler for the GObject type system). Not in SFE yet.

      Both Midori and Arora are suitable browsers.

      1. Sep 29, 2011

        Ken, if Midori requires something that is not in SFE yet, then it is not buildable, as far as oi-sfe is concerned.

        If someone creates specs for all of Midori's dependencies and demonstrates that Midori builds from the spec, I would be in the position to add Midori to the repo.

        1. Sep 30, 2011

          Alex - Midori 0.3.6 builds today and has no further dependency requirements to add to OI-SFE.

  10. Oct 13, 2011

    Anonymous

    I'm glad to see the SFE repository: this will make OI much more useful as a platform for media servers and such.

    I do have a question: it seems rtmpdump hasn't been given SFE form by anyone yet.

    Is that true, and why is that?

    And has anyone tried and failed?

    1. Oct 13, 2011

      Anonymous

      A comment of my own:

      I notice the ffmpeg in the SFE repos has most enables on, except for the --enable-librtmp.

      This is a pity.

      For DLNA server use, rtmp is often necessary.

      Would it be possible to have ffmpeg replaced by a rtmp-enabled version?

      Hans J. Albertsson
      Sweden.

      1. Oct 13, 2011

        I've built rtmpdump and ffmpeg with librtmp enabled. They will be added to the repository in the next few days.

        1. Oct 14, 2011

          Anonymous

          Great!

          Then I'll wait for that!

          Thank you, Alex!

          Hans J. Albertsson

        2. Oct 14, 2011

          Anonymous

          BTW when will the new ffmpeg be included in the repository?

          1. Oct 14, 2011

            It has been added. It's also been renamed from library/video/ffmpeg to video/ffmpeg.

            1. Oct 15, 2011

              Anonymous

              Trying to upgrade, I got the following:

              1: http protocol error: code: 404 reason: Not Found
              URL: 'http://pkg.openindiana.org/sfe-encumbered/file/1/efa303b4d2ec9754a8059ff0156907be9e03d473'. (happened 4 times)
              2: http protocol error: code: 404 reason: Not Found
              URL: 'http://pkg.openindiana.org/sfe-encumbered/file/1/18161c524162cfa5b93dd6a88717aa008305c1d9'. (happened 4 times)
              3: http protocol error: code: 404 reason: Not Found
              URL: 'http://pkg.openindiana.org/sfe-encumbered/file/1/5ddbeebd9bd3debeb7786f8b28fc3536878827b3'. (happened 4 times)
              4: http protocol error: code: 404 reason: Not Found
              URL: 'http://pkg.openindiana.org/sfe-encumbered/file/1/9828321454b910be71b6a319f4d77de0eecac852'. (happened 4 times)

              Serverside or what?

              1. Oct 16, 2011

                I believe this has been fixed.

  11. Oct 16, 2011

    Anonymous

    Installed the newer gcc from sfe today, and duly encountered problems with Virtual Box; as follows

    1) Tried the suggested workaround but find there is no file VBoxSVC in /opt/VirtualBox

    2) LD_LIBRARY_PATH=/usr/sfw/lib/amd64 VirtualBox starts VirtualBox with an empty machine list i.e. it no longer finds my virtual machine.

    Prior to the change in gcc, my WinXP virtual machine worked fine.

    I'm using Virtual Box 4.0.8

    Any ideas ? Thanks

    1. Oct 16, 2011

      LD_NODIRECT=1 VirtualBox works with the current version of vbox, 4.1.4.

  12. Oct 17, 2011

    Anonymous

    I tried VBox 4.1.4 last week but ran into a different problem - lost all usb support in the guest and haven't solved that yet, which is why I went back to 4.0.8.
    I've found that VBoxSVC has been placed in /opt/VirtualBox/i386 - I'll try a modified script. Thanks

  13. Oct 18, 2011

    Anonymous

    Hi,

    i have found that i must use VirtualBox with super user privileges (on redhat linux it is not case - any user in vboxuser group can use it):

    $ pfexec bash
    $ LD_LIBRARY_PATH=/usr/sfw/lib/amd64 VirtualBox

    If i try second command only, i get error and empty list.
    But, that is (probably) because i am using it since version 1.6 and it had to be so.

    Recently, i have tried (for hours) to run version 4.1.4 as normal user, but couldn't manage to do anything. Since i am not sure which else errors exists (except mentioned problems) i just gave up, and waiting for fix.

    Until then, will use it as privileged user.

    Best regards.
    Predrag Zecevic

    1. Oct 18, 2011

      Anonymous

      And if you run VBoxSVC.sh as non-privileged user?

      /CODE
      #!/bin/sh
      LD_NODIRECT=1
      export LD_NODIRECT
      exec /opt/VirtualBox/amd64/VBoxSVCCODE

      1. Oct 21, 2011

        Anonymous

        Hi,

        that seems to work (with one exception: lost sound in guest = CentOS 6 x86).

        I just did export appliance (from privileged user) and then import (as normal user). I could modify files manually, but was clean way to do it.

        Thank you for point to this solution.
        Predrag Zecevic

  14. Nov 04, 2011

    Anonymous

    Upgraded to VirtualBox 4.1.6.

    VirtualBox works so far with the LD_NODIRECT=1 environment set.

    But the Preferences Dialog in VirtualBox causes a core dump. The settings dialog can be viewed.
    I could install the extension pack only by the VBoxManage.

    ewer@solewer:~/tmp$/opt/VirtualBox/VBoxManage extpack install --replace ../Downloads/Oracle_VM_VirtualBox_Extension_Pack-4.1.6-74713.vbox-extpack
    0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
    Successfully installed "Oracle VM VirtualBox Extension Pack".

  15. Nov 07, 2011

    Anonymous

    Amazing! I compared oi_151a flash to the latest Ubuntu flash (64bit, latest beta flash). I used www.myspass.de/"Pastewka"/full screen. And the winner is: oi_151a! The movies are playing a lot smoother than in Ubuntu. Of course I can't rule out that the latest firefox affects that. However: I'm really impressed. Keep on your good job!
    Cheers

  16. Nov 08, 2011

    Anonymous

    Hi,
    it looks like page http://wiki.openindiana.org/oi/oi_151a+Release+Notes is outdated.
    Tried to install graphviz, but couldn't find it.

    Any ideas?
    Best regards.
    Predrag Zecevic

  17. Nov 11, 2011

    Anonymous

    So, how do I get Arora (and Qt in general) to use anti-aliased fonts? It doesn't seem to be picking up the setting from the Appearance manager in Gnome (contrary to what I've read elsewhere, which said it should).

    1. Jan 15, 2012

      Anonymous

      still seems to be unanswered here...

      I did not like LyX font appearance - similar story. I found this somewhere on the Internet and it worked for Lyx as well as Scribus:

      cp /etc/fonts/fonts.conf to $HOME/.fonts.conf

      edit the file and add the following:

      <!-- Make LyX fonts look good -->
      <match target="pattern">
      <edit name="prefer_bitmap">
      <bool>false</bool>
      </edit>
      </match>

      log out -> log in

      1. Jan 15, 2012

        Sorry about the delayed response. I've added a note describing another method of enabling anti-aliased fonts.

  18. Jan 03, 2012

    Anonymous

    Thanks for making the Qt 4.7.3 SFE package available. However, it seems to be missing
    libQtUiTools.a. Could this be added?

    1. Jan 04, 2012

      Done. Also updated to 4.7.4.

  19. Jan 10, 2012

    Anonymous

    Could the ffmpeg package be updated to the most recent ( 0.9.1??) version, with the same settings as the current one, i e including librtmp support and other online-streaming oriented features?

    That would significantly improve DLNA/UPnP-AV server performance on OI.

    1. Jan 13, 2012

      Anonymous

      If noone else can deal with it, or maybe you're all otherwise occupied, maybe I could do the updating myself, and offer it back up.

      A q: if all I want to do is create/compile/.. the SFE packages, encumbered and unencumbered, or maybe even just a tiny slice of it, just the few bits I actually use, do I really have to set up a separate zone for that?

      1. Jan 13, 2012

        I didn't realize a new ffmpeg was out. I will update it.

        I don't think you need a separate zone to build SFE packages. I don't believe that any SFE packages conflict with system packages (with the exception of emacs. since the system emacs has started placing some files in /usr/gnu, where the SFE emacs used to go).

        If you do anything major however, it's always a good idea to take a snapshot of your BE.

        EDIT ffmpeg is now at 0.9.1.

        1. Jan 14, 2012

          Anonymous

          Unfortunately I get an error when executing the new ffmpeg:

          hans@klaus%67%17:13> env LANG=C ffmpeg
          ld.so.1: ffmpeg: fatal: libx264.so.120: open failed: No such file or directory
          ld.so.1: ffmpeg: fatal: relocation error: file /usr/lib/libavcodec.so.53: symbol x264_encoder_close: referenced symbol not found
          ld.so.1: ffmpeg: fatal: relocation error: file /usr/bin/ffmpeg: symbol avcodec_register_all: referenced symbol not found
          Killed

          Hans J. Albertsson

          1. Jan 14, 2012

            You need to have the current x264 installed (version 0.120.0.20111212). If you can't update to it, uninstall the old one and then install the current one.

            1. Jan 14, 2012

              Anonymous

              pkg refuses to find x264@0.120.0.20111212, says it isn't there.

              Am I missing some other change, like repository name changes??

              I found the new video/ffmpeg pkg, but it refuses to serve up v 120 of x264.

              Hans J. Albertsson

                1. Jan 15, 2012

                  Sorry about that. I've added the current x264 to the repository.

                  1. Jan 15, 2012

                    Anonymous

                    OK, thanks, working!

  20. Jan 28, 2012

    Anonymous

    Thanks for updating boost to 1.48 but it seems like all the header files are missing.

    1.47 contained the /usr/g++/include directory.