This is an old revision of the document!


Ports maintainership

Wanted ports

  • Number binary-only linux games; some may require additional linux libraries
  • Some OIS using games are available to port after we have devel/ois
  • Apricot project is a must (but they've not opened their source yet)
  • Second Life Client - they have docs on how to build on FreeBSD in their wiki also with patches, but it all looks just to scary for me
  • Blocks - I have a port, but it won't work on my old GPU. Anyone wanna take it?
  • Howitzer skirmish - but we shall wait till it gets some more donations to be release. Or we'd even better donate :)
  • OpenFRAG - I'm working on this now
  • Ardentryst - written in python and horribly slow for me
  • Many more!

Ports that need fixing

  • devel/scons
  • doesn't propagate environment variables. This breaks building scons-using ports with ccache enabled in tindys, because required environment variables like CCACHE_DIR won't get to ccache. For now, propagating whole environment can only be done with patching SConstructs (`ENV = os.environ' needs to be added to Environment()). The better would be to have knob is scons. Even better if it's pushed upstream, but undocumented knob just for FreeBSD port might also be acceptable.

Software

  • An utility to preload charset conversion tables into kernel iconv on boot time, so users can mount media (cd9660, msdosfs) with vfs.usermount=1 with charset conversion and not get Permission Denied error.
  • Status: Complete. Needs more testing.
  • Improving joystick support on FreeBSD
  • Under FreeBSD, joysticks, rudders and other game controllers are supported via joy(4) and uhid(4) devices. Most common libraries to add joystick support to opensource games are SDL, OIS and plib. Unfortunately, OIS port currently doesn't support any joysticks at all, and SDL fails to work with my Microsoft SideWinder Force Feedback 2 Joystick. So here what I plan to do to improve the situation:
    1. Write FreeBSD joystick support for OIS from scratch. This should be done with using libusbhid(3) pretty similar way to how it's done in SDL, but I plan to make it in more common and clear way, so even my M$ joystick works.
    2. Next step is to improve SDL. Still need to speak with SDL guys if they're against complete rewrite, hack is also acceptable.
    3. Next thing is to check out plib capabilities.
    4. Another large task it Force Feedback support. Need to read some documentation and docs on how it can be implemented, then add support to OIS (other libs don't support FF AFAIK)
  • Status: Discovered what was SDL problem, played with libusbhid a bit.
  • Better FUSE based automounter
  • Apart from complicated config and need for NFS services, amd(8) lacks some functionality. For example, it cannot mount filesystems inside jails - symlink to real filesystem mountpoint created in, say, $JAILDIR/hosts/ will point to $JAILDIR/.amd_mnt, instead of /.amd_mnt.
  • Status: Not started
  • Utility for copying parts of file hierarchy
  • Would be useful for creating minimal jails or flash images. Main idea is to have list of path include/exclude specifications, like this:
+/etc
+/usr                      # copy /usr
-/usr/local                # but exclude usr/local
+/usr/local/{bin,lib,sbin} # still copy bin, sbin, lib
-/usr/share
+/usr/share/{groff_font,man,syscons,zoneinfo}
+/usr/share/locale/*UTF8*/LC_*
  • Add ability to override file ownership, permissions and flags, ability to create links instead of copying etc.
  • Status: Not started

Other stuff

  • dmitrymarakasov.1286999000.txt.gz
  • Last modified: 2010/10/13 19:43
  • by DmitryMarakasov