PERFORCE change 138958 for review

John Birrell jb at FreeBSD.org
Sat Mar 29 19:51:56 PDT 2008


http://perforce.freebsd.org/chv.cgi?CH=138958

Change 138958 by jb at jb_freebsd1 on 2008/03/30 02:51:23

	IFC

Affected files ...

.. //depot/projects/dtrace/ports/UPDATING#63 integrate
.. //depot/projects/dtrace/src/sys/fs/nullfs/null_subr.c#7 integrate
.. //depot/projects/dtrace/src/sys/kern/uipc_mqueue.c#13 integrate
.. //depot/projects/dtrace/src/sys/kern/vfs_vnops.c#16 integrate
.. //depot/projects/dtrace/src/sys/netgraph/ng_base.c#18 integrate
.. //depot/projects/dtrace/www/en/gnome/docs/bugging.sgml#8 integrate
.. //depot/projects/dtrace/www/en/gnome/docs/develfaq.sgml#10 integrate
.. //depot/projects/dtrace/www/en/gnome/docs/faq2.sgml#19 integrate
.. //depot/projects/dtrace/www/en/gnome/docs/volunteer.sgml#6 integrate

Differences ...

==== //depot/projects/dtrace/ports/UPDATING#63 (text+ko) ====

@@ -6,11 +6,18 @@
 time you update your ports collection, before attempting any port
 upgrades.
 
+20080330:
+  AFFECTS: users of www/mediawiki
+  AUTHOR: miwi at FreeBSD.org
+
+  www/mediawiki version is 1.12 now. 1.11 version was preserved on
+  www/mediawiki111 port.
+
 20080329:
   AFFECTS: users of www/phpadsnew
   AUTHOR: beech at FreeBSD.org
 
-  Phpadsnew has been replaced with www/openx. 
+  Phpadsnew has been replaced with www/openx.
   To upgrade please do the following:
 
   1. Install www/openx
@@ -6267,4 +6274,4 @@
   2) Update all p5-* modules.
 	portupgrade -f p5-\*
 
-$FreeBSD: ports/UPDATING,v 1.608 2008/03/29 19:50:39 beech Exp $
+$FreeBSD: ports/UPDATING,v 1.610 2008/03/30 00:20:48 miwi Exp $

==== //depot/projects/dtrace/src/sys/fs/nullfs/null_subr.c#7 (text+ko) ====

@@ -31,7 +31,7 @@
  *
  *	@(#)null_subr.c	8.7 (Berkeley) 5/14/95
  *
- * $FreeBSD: src/sys/fs/nullfs/null_subr.c,v 1.53 2008/01/10 01:10:47 attilio Exp $
+ * $FreeBSD: src/sys/fs/nullfs/null_subr.c,v 1.54 2008/03/29 23:24:54 jeff Exp $
  */
 
 #include <sys/param.h>
@@ -103,11 +103,9 @@
 	struct mount *mp;
 	struct vnode *lowervp;
 {
-	struct thread *td = curthread;	/* XXX */
 	struct null_node_hashhead *hd;
 	struct null_node *a;
 	struct vnode *vp;
-	int error;
 
 	ASSERT_VOP_LOCKED(lowervp, "null_hashget");
 
@@ -121,24 +119,15 @@
 	mtx_lock(&null_hashmtx);
 	LIST_FOREACH(a, hd, null_hash) {
 		if (a->null_lowervp == lowervp && NULLTOV(a)->v_mount == mp) {
-			vp = NULLTOV(a);
-			VI_LOCK(vp);
-			mtx_unlock(&null_hashmtx);
-			/*
-			 * We need to clear the OWEINACT flag here as this
-			 * may lead vget() to try to lock our vnode which
-			 * is already locked via lowervp.
-			 */
-			vp->v_iflag &= ~VI_OWEINACT;
-			error = vget(vp, LK_INTERLOCK, td);
 			/*
 			 * Since we have the lower node locked the nullfs
 			 * node can not be in the process of recycling.  If
 			 * it had been recycled before we grabed the lower
 			 * lock it would not have been found on the hash.
 			 */
-			if (error)
-				panic("null_hashget: vget error %d", error);
+			vp = NULLTOV(a);
+			vref(vp);
+			mtx_unlock(&null_hashmtx);
 			return (vp);
 		}
 	}
@@ -155,11 +144,9 @@
 	struct mount *mp;
 	struct null_node *xp;
 {
-	struct thread *td = curthread;	/* XXX */
 	struct null_node_hashhead *hd;
 	struct null_node *oxp;
 	struct vnode *ovp;
-	int error;
 
 	hd = NULL_NHASH(xp->null_lowervp);
 	mtx_lock(&null_hashmtx);
@@ -171,12 +158,8 @@
 			 * operation.
 			 */
 			ovp = NULLTOV(oxp);
-			VI_LOCK(ovp);
+			vref(ovp);
 			mtx_unlock(&null_hashmtx);
-			ovp->v_iflag &= ~VI_OWEINACT;
-			error = vget(ovp, LK_INTERLOCK, td);
-			if (error)
-				panic("null_hashins: vget error %d", error);
 			return (ovp);
 		}
 	}

==== //depot/projects/dtrace/src/sys/kern/uipc_mqueue.c#13 (text+ko) ====

@@ -43,7 +43,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/uipc_mqueue.c,v 1.29 2008/01/13 14:44:09 attilio Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/uipc_mqueue.c,v 1.30 2008/03/29 23:30:40 jeff Exp $");
 
 #include <sys/param.h>
 #include <sys/kernel.h>
@@ -704,12 +704,9 @@
 	}
 
 	if (vd != NULL) {
-		if (vget(vd->mv_vnode, 0, curthread) == 0) {
-			*vpp = vd->mv_vnode;
-			vn_lock(*vpp, LK_RETRY | LK_EXCLUSIVE);
-			return (0);
-		}
-		/* XXX if this can happen, we're in trouble */
+		*vpp = vd->mv_vnode;
+		vget(*vpp, LK_RETRY | LK_EXCLUSIVE, curthread);
+		return (0);
 	}
 
 	error = getnewvnode("mqueue", mp, &mqfs_vnodeops, vpp);

==== //depot/projects/dtrace/src/sys/kern/vfs_vnops.c#16 (text+ko) ====

@@ -35,7 +35,7 @@
  */
 
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/vfs_vnops.c,v 1.259 2008/03/24 04:17:35 jeff Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/vfs_vnops.c,v 1.260 2008/03/29 23:36:26 jeff Exp $");
 
 #include "opt_mac.h"
 
@@ -854,26 +854,16 @@
 }
 
 /*
- * Check that the vnode is still valid, and if so
- * acquire requested lock.
+ * Acquire the requested lock and then check for validity.  LK_RETRY
+ * permits vn_lock to return doomed vnodes.
  */
 int
 _vn_lock(struct vnode *vp, int flags, char *file, int line)
 {
 	int error;
 
-	/*
-	 * With no lock type requested we're just polling for validity.
-	 */
-	if ((flags & LK_TYPE_MASK) == 0) {
-		error = 0;
-		if ((flags & LK_INTERLOCK) == 0)
-			VI_LOCK(vp);
-		if (vp->v_iflag & VI_DOOMED)
-			error = ENOENT;
-		VI_UNLOCK(vp);
-		return (error);
-	}
+	VNASSERT((flags & LK_TYPE_MASK) != 0, vp,
+	    ("vn_lock called with no locktype."));
 	do {
 		error = VOP_LOCK1(vp, flags, file, line);
 		flags &= ~LK_INTERLOCK;	/* Interlock is always dropped. */

==== //depot/projects/dtrace/src/sys/netgraph/ng_base.c#18 (text+ko) ====

@@ -38,7 +38,7 @@
  * Authors: Julian Elischer <julian at freebsd.org>
  *          Archie Cobbs <archie at freebsd.org>
  *
- * $FreeBSD: src/sys/netgraph/ng_base.c,v 1.152 2008/03/27 23:02:30 mav Exp $
+ * $FreeBSD: src/sys/netgraph/ng_base.c,v 1.154 2008/03/30 00:27:48 mav Exp $
  * $Whistle: ng_base.c,v 1.39 1999/01/28 23:54:53 julian Exp $
  */
 
@@ -770,11 +770,9 @@
 		return (0);
 	}
 
-	do {
-		v = node->nd_refs - 1;
-	} while (! atomic_cmpset_int(&node->nd_refs, v + 1, v));
+	v = atomic_fetchadd_int(&node->nd_refs, -1);
 
-	if (v == 0) { /* we were the last */
+	if (v == 1) { /* we were the last */
 
 		mtx_lock(&ng_namehash_mtx);
 		node->nd_type->refs--; /* XXX maybe should get types lock? */
@@ -788,7 +786,7 @@
 		mtx_destroy(&node->nd_input_queue.q_mtx);
 		NG_FREE_NODE(node);
 	}
-	return (v);
+	return (v - 1);
 }
 
 /************************************************************************
@@ -959,15 +957,12 @@
 	if (hook == &ng_deadhook) {
 		return;
 	}
-	do {
-		v = hook->hk_refs;
-	} while (! atomic_cmpset_int(&hook->hk_refs, v, v - 1));
+
+	v = atomic_fetchadd_int(&hook->hk_refs, -1);
 
 	if (v == 1) { /* we were the last */
-		if (_NG_HOOK_NODE(hook)) { /* it'll probably be ng_deadnode */
+		if (_NG_HOOK_NODE(hook)) /* it'll probably be ng_deadnode */
 			_NG_NODE_UNREF((_NG_HOOK_NODE(hook)));
-			hook->hk_node = NULL;
-		}
 		NG_FREE_HOOK(hook);
 	}
 }

==== //depot/projects/dtrace/www/en/gnome/docs/bugging.sgml#8 (text+ko) ====

@@ -1,6 +1,6 @@
 <!DOCTYPE HTML PUBLIC "-//FreeBSD//DTD HTML 4.01 Transitional-Based Extension//EN" [
 <!ENTITY base CDATA "../..">
-<!ENTITY date "$FreeBSD: www/en/gnome/docs/bugging.sgml,v 1.32 2008/03/23 05:17:15 mezz Exp $">
+<!ENTITY date "$FreeBSD: www/en/gnome/docs/bugging.sgml,v 1.33 2008/03/29 23:00:49 marcus Exp $">
 <!ENTITY title "FreeBSD GNOME Project: Reporting a Bug">
 <!ENTITY email "freebsd-gnome">
 <!ENTITY % navinclude.gnome "INCLUDE">
@@ -117,7 +117,7 @@
 			  FreeBSD-specific, <i>and</i> you have a fix available, report
 			  it to both the FreeBSD GNOME team and the application's
 			  developers.  This way, the application's developers can apply
-			  the patch to CVS, and the FreeBSD GNOME team can apply the
+			  the patch upstream, and the FreeBSD GNOME team can apply the
 			  patch immediately to the ports tree without needing to wait
 			  for the next release.</p></li>
           </ul>

==== //depot/projects/dtrace/www/en/gnome/docs/develfaq.sgml#10 (text+ko) ====

@@ -1,6 +1,6 @@
 <!DOCTYPE HTML PUBLIC "-//FreeBSD//DTD HTML 4.01 Transitional-Based Extension//EN" [
 <!ENTITY base CDATA "../..">
-<!ENTITY date "$FreeBSD: www/en/gnome/docs/develfaq.sgml,v 1.53 2007/09/27 05:09:08 mezz Exp $">
+<!ENTITY date "$FreeBSD: www/en/gnome/docs/develfaq.sgml,v 1.54 2008/03/29 22:58:52 marcus Exp $">
 <!ENTITY title "FreeBSD GNOME Project: GNOME Development Branch FAQ">
 <!ENTITY email "freebsd-gnome">
 <!ENTITY % navinclude.gnome "INCLUDE">
@@ -44,7 +44,7 @@
 	    versions are committed to the FreeBSD CVS tree. This document is
 	    about the development branch.  The current development branch
 	    is GNOME &gnomedevelver;.</li>
-	  <li><b>CVS</b> - Often newer-than-new, the CVS HEAD versions of GNOME
+	  <li><b>SVN</b> - Often newer-than-new, the SVN trunk versions of GNOME
             applications and libraries are alpha quality, or often completely
             unbuildable.  The FreeBSD GNOME project pays attention to, but
 	    does not track the alpha quality code.</li>
@@ -110,20 +110,7 @@
 	  into your main ports tree.  From there, you can use
 	  <tt>portupgrade</tt> or <tt>portmaster</tt> to upgrade from
 	  &gnomever; to &gnomedevelver; and stay up-to-date afterwards.
-	  <b>NOTE:</b> if this is a first-time upgrade from &gnomever; to
-	  &gnomedevelver; you must run <tt>portupgrade</tt> or
-	  <tt>portmaster</tt> command:</p>
 
-         <pre>
-portupgrade -o textproc/rarian textproc/scrollkeeper
-portupgrade -a
-
-or
-
-portmaster -o textproc/rarian textproc/scrollkeeper
-portmaster -a
-         </pre>
-
 	<p>The long answer is that keeping up-to-date with the GNOME
 	  development branch is complicated.  Sometimes components change
 	  in a way that makes <tt>portupgrade</tt> or <tt>portmaster</tt>
@@ -171,7 +158,7 @@
       <li style="padding-bottom: 0.5em"><a name="q7"></a>
         <p><b>What is the current state of development GNOME on FreeBSD?</b></p>
 <!-- A7 -->
-        <p>GNOME 2.20.0 is now out, and ports and packages are
+        <p>GNOME 2.22.0 is now out, and ports and packages are
 	  up-to-date.  Keep those bug reports coming.</p>
       </li>
     </ol>

==== //depot/projects/dtrace/www/en/gnome/docs/faq2.sgml#19 (text+ko) ====

@@ -1,6 +1,6 @@
 <!DOCTYPE HTML PUBLIC "-//FreeBSD//DTD HTML 4.01 Transitional-Based Extension//EN" [
 <!ENTITY base CDATA "../..">
-<!ENTITY date "$FreeBSD: www/en/gnome/docs/faq2.sgml,v 1.134 2008/03/29 22:10:25 marcus Exp $">
+<!ENTITY date "$FreeBSD: www/en/gnome/docs/faq2.sgml,v 1.136 2008/03/29 23:59:54 marcus Exp $">
 <!ENTITY title "FreeBSD GNOME Project: GNOME &gnomever; FAQ">
 <!ENTITY email "freebsd-gnome">
 <!ENTITY % navinclude.gnome "INCLUDE">
@@ -41,7 +41,7 @@
 	      fonts?</a>
             <li> <a href="#q11">How can I control what fonts are anti-aliased?
               </a>
-	    <li> <a href="#q12">How do I edit my GNOME 2 menus?</a>
+	    <li> <a href="#q12">How do I edit my GNOME menus?</a>
 	    <li> <a href="#q13">How do I use GTK+ 2 resource settings for
 	      GTK+ 2 applications when not in a GNOME environment?</a>
 	    <li> <a href="#q14">How do I configure settings for GNOME 1.4
@@ -308,32 +308,32 @@
 	    <p><b>I installed GNOME &gnomever;, but I am missing application
 	      foo. What gives?</b></p>
 <!-- A3 -->
-	    <p>Only the core desktop is included in the
+	    <p>Only the core Desktop is included in the
 	      <tt>gnome2</tt> package.  Here are some other GNOME
-	      meta-ports that offer convenient groupings of popular GNOME 2
+	      meta-ports that offer convenient groupings of popular GNOME
 	      software.</p>
 
 	    <ul>
-	      <li>The <b>GNOME 2 Fifth Toe</b> (<tt>x11/gnome2-fifth-toe</tt>)
-	        consists of stable GNOME 2 applications that many users
+	      <li>The <b>GNOME Fifth Toe</b> (<tt>x11/gnome2-fifth-toe</tt>)
+	        consists of stable GNOME applications that many users
 		expect to find in a functional desktop environment.  This
 		includes image manipulation applications, chat and instant
 		messenger applications, and music and multimedia players</li>
 
-	      <li>The <b>GNOME 2 Hacker Tools</b>
+	      <li>The <b>GNOME Hacker Tools</b>
 	        (<tt>devel/gnome2-hacker-tools</tt>) consists of applications
 		developers would need to create and maintain GNOME software
 		projects.  This includes IDEs, interface builders, "hacker"
 		editors, and code generation tools.</li>
 
-	      <li>The <b>GNOME 2 Office</b> (<tt>editors/gnome2-office</tt>)
+	      <li>The <b>GNOME Office</b> (<tt>editors/gnome2-office</tt>)
 	        consists of applications that are commonly found in office or
 		productivity suites.  This includes a spreadsheet application,
 		word processor, project management application, database
 		access application, groupware suite, and diagramming
 		application.</li>
 
-	      <li>The <b>GNOME 2 Power Tools</b>
+	      <li>The <b>GNOME Power Tools</b>
 	        (<tt>x11/gnome2-power-tools</tt>) consists of utilities
 	        and applets for the technically-minded GNOME user.  It
 	        also contains many useful add-on utilities for some of
@@ -347,7 +347,7 @@
 # pkg_add -r <em>meta-port</em>
             </pre>
 
-	    <p>For example, to install the GNOME 2 Fifth Toe from packages:</p>
+	    <p>For example, to install the GNOME Fifth Toe from packages:</p>
 
 	    <pre>
 # pkg_add -r gnome2-fifth-toe
@@ -361,7 +361,7 @@
 # make install clean
 	    </pre>
 
-	    <p>For example, to install the GNOME 2 Fifth Toe from ports:</p>
+	    <p>For example, to install the GNOME Fifth Toe from ports:</p>
 
 	    <pre>
 # cd /usr/ports/x11/gnome2-fifth-toe
@@ -486,12 +486,12 @@
 	    <p><b>What window managers work well with GNOME &gnomever;?</b></p>
 <!-- A9 -->
 	    <p>The <tt>gnome2</tt> meta-port installs the
-	      metacity window manager by default.  Another popular window
+	      Metacity window manager by default.  Another popular window
 	      manager that works well with GNOME &gnomever; is
-	      <a href="http://sawmill.sourceforge.net/">sawfish</a>.  Sawfish
+	      <a href="http://sawmill.sourceforge.net/">Sawfish</a>.  Sawfish
 	      can be found in <tt>x11-wm/sawfish</tt>.</p>
 
-	    <p>To switch between metacity and sawfish in GNOME 2, you will need
+	    <p>To switch between Metacity and Sawfish in GNOME, you will need
 	      to do the following:</p>
 
 <pre>
@@ -500,8 +500,8 @@
 </pre>
 	    <p>The <tt>gnome-session-save</tt> is important.  Without it, the
 	      window manager will revert back to the one previously configured
-	      upon next login.  To switch back, simply reverse sawfish and
-	      metacity.</p>
+	      upon next login.  To switch back, simply reverse <tt>sawfish</tt>
+	      and <tt>metacity</tt>.</p>
 
 		<p>If you have gotten the GNOME &gnomever; desktop working under an
 		  alternative window manager, please take a screenshot and
@@ -531,7 +531,7 @@
 		<p>Sometimes, after adding new fonts to the system, it is
 		  necessary to teach fontconfig about them.  If you find that
 		  newly added fonts are not made available even after
-		  restarting GNOME 2, run the following command as root:</p>
+		  restarting GNOME, run the following command as root:</p>
 
 		<pre>
 # fc-cache -f -v
@@ -583,7 +583,7 @@
 
 <!-- Q12 -->
 	  <li style="padding-bottom: 0.5em"><a name="q12"></a>
-	    <p><b>How do I edit my GNOME 2 menus?</b></p>
+	    <p><b>How do I edit my GNOME menus?</b></p>
 <!-- A12 -->
 	    <p>Right-click on the Applications menu, and select
 	      <b>Edit Menus</b>.  This will invoke the
@@ -592,16 +592,16 @@
 
 <!-- Q13 -->
 	  <li style="padding-bottom: 0.5em"><a name="q13"></a>
-	    <p><b>How do I use GTK+ 2 resource settings for GTK+ 2 applications
+	    <p><b>How do I use GTK+ resource settings for GTK+ applications
 	      when not in a GNOME environment?</b></p>
 <!-- A13 -->
-	    <p> GNOME 2 applications get their GTK+ 2 resources from themes and
+	    <p>GNOME applications get their GTK+ resources from themes and
 	      the corresponding theme engine.  If you would rather run your
-	      GTK+ 2 applications in a non-GNOME environment then you will
+	      GTK+ applications in a non-GNOME environment then you will
 	      need to create a file named <tt>~/.gtkrc-2.0</tt>.</p>
-		<p> To use the widgets from a GTK+ 2 theme when in a non-GNOME
-		  environment, simply <tt>include</tt> the theme's
-		  <tt>gtk-2.0/gtkrc</tt> in your <tt>~/.gtkrc-2.0</tt>. For example:
+	    <p> To use the widgets from a GTK+ theme when in a non-GNOME
+	      environment, simply <tt>include</tt> the theme's
+	      <tt>gtk-2.0/gtkrc</tt> in your <tt>~/.gtkrc-2.0</tt>. For example:
 
 		  <pre>include "/usr/local/share/themes/Crux/gtk-2.0/gtkrc"</pre>
 		<p> If you prefer, you can use the same GTK+ 1.2 theme for both
@@ -612,7 +612,7 @@
 
 	      <ol>
 	        <li> If you have any theme engine references, you will have
-		  to make sure there is a corresponding GTK+ 2 theme engine.
+		  to make sure there is a corresponding GTK+ theme engine.
 		  Otherwise, remove the engine entries.</li>
 		<li> The default font specification should be outside of
 		  any <tt>style</tt> blocks and should be specified with
@@ -1152,7 +1152,7 @@
 	      <tt>/usr/local/libexec/gnome-settings-daemon</tt> from
 	      the command line, and check for any errors.  Most
 	      problems can be solved by reinstalling
-	      <tt>sysutils/gnome-control-center</tt>.</p>
+	      <tt>sysutils/gnome-settings-daemon</tt>.</p>
 	  </li>
 <!-- Q27 -->
 	  <li style="padding-bottom: 0.5em"><a name="q27"></a>
@@ -1172,7 +1172,7 @@
 	  <li style="padding-bottom: 0.5em"><a name="q28"></a>
 	    <p><b>How do I enable window compositing in GNOME?</b></p>
 <!-- A28 -->
-	    <p>Starting with GNOME 2.22, the metacity window manager includes
+	    <p>Starting with GNOME 2.22, the Metacity window manager includes
 	      a compositing manager.  When compositing is enabled,
 	      widgets will get a drop shadow, and the Alt+Tab
 	      application switcher will show previews of the
@@ -1188,7 +1188,7 @@
 % gconftool-2 -s --type bool /apps/metacity/general/compositing_manager true
 	    </pre>
 
-	    <p>If you want to disable it again, char "true" to
+	    <p>If you want to disable it again, change "true" to
 	      "false", and re-run the command.
 	      You can also use <tt>gconf-editor</tt> to edit it.</p>
 
@@ -1213,11 +1213,11 @@
 	      <tt>~/.profile</tt>:</p>
 
 	    <pre>
-export GDM_LANG=LOCALE
+export GDM_LANG=&lt;locale&gt;
 	    </pre>
 
-	    <p>Here, <tt>LOCALE</tt> is the desired locale (e.g. en_US.UTF-8,
-	      es_ES.ISO8859-15, fr_FR.ISO8859-1, etc.).</p>
+	    <p>Here, <tt>&lt;locale&gt;</tt> is the desired locale
+	      (e.g. en_US.UTF-8, es_ES.ISO8859-15, fr_FR.ISO8859-1, etc.).</p>
 	  </li>
 
         </ol>

==== //depot/projects/dtrace/www/en/gnome/docs/volunteer.sgml#6 (text+ko) ====

@@ -1,6 +1,6 @@
 <!DOCTYPE HTML PUBLIC "-//FreeBSD//DTD HTML 4.01 Transitional-Based Extension//EN" [
 <!ENTITY base CDATA "../..">
-<!ENTITY date "$FreeBSD: www/en/gnome/docs/volunteer.sgml,v 1.20 2007/06/21 06:55:20 marcus Exp $">
+<!ENTITY date "$FreeBSD: www/en/gnome/docs/volunteer.sgml,v 1.21 2008/03/29 23:49:34 marcus Exp $">
 <!ENTITY title "FreeBSD GNOME Project: How To Help">
 <!ENTITY email "freebsd-gnome">
 <!ENTITY % navinclude.gnome "INCLUDE">
@@ -23,9 +23,6 @@
 	     <p>Regularly install GNOME from packages, and report any problems
 		with the install or the functionality.</p></li>
 	    <li>
-	     <p>Find GNOME applications not yet ported to FreeBSD, and
-		work on porting them over.</p></li>
-	    <li>
 	     <p><a href="http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/eresources.html#ERESOURCES-SUBSCRIBE">
 		   Subscribe</a> to the freebsd-gnome mailing list, and help
 		   answer users' questions.</p></li>
@@ -37,6 +34,47 @@
 	        versions. The builditinator.sh script, available from the
 		<a href="develfaq.html#q3">MarcusCom</a> portstools repository,
 		can automate the entire process, from start to finish.</p></li>
+	    <li>
+	      <p>The following non-trivial porting tasks are
+	        needed.</p>
+
+	      <ul>
+	        <li><p>Fix <tt>sysutils/system-tools-backends</tt> to
+		  work with all supported versions of FreeBSD.  This
+		  will require someone with FreeBSD configuration
+		  knowledged as well as a good knowledge of Perl
+		  programming.  All patches can be submitted as
+		  PRs.</p></li>
+
+		<li><p>Port <a
+		  href="http://www.gnome.org/projects/NetworkManager/">
+		    NetworkManager</a> to FreeBSD.  This will require
+		  someone with C programming experience, and a good
+		  knowledge of wireless networking in FreeBSD.
+		  Additionally, this will require some FreeBSD
+		  userland changes especially to
+		  <tt>ifconfig</tt>.</p></li>
+
+		<li><p>Port the <a
+		  href="http://live.gnome.org/GnomeBluetooth">GNOME
+		    Bluetooth</a> suite to FreeBSD.  This will require
+		  someone with C programming experience and
+		  Bluetooth devices.  The bulk of the work will be
+		  porting libbtctl to use FreeBSD's Bluetooth
+		  stack.</p></li>
+
+		<li><p>Extend the FreeBSD hal backend to support missing
+		  subsystems.  Currently, the most notable missing
+		  subsystems are <tt>ieee1394</tt> (i.e. Firewire),
+		  <tt>bluetooth</tt>, and <tt>printer</tt>.
+		  Those interested should use the latest <a
+		  href="http://www.marcuscom.com/hal-spec/hal-spec.html">
+		    HAL Specification</a> as a guide.  Contact
+		  <a
+		    href="mailto:marcus at FreeBSD.org">marcus at FreeBSD.org</a>
+		  if you wish to help with this task.</p></li>
+	      </ul>
+	    </li>
 	  </ul>
 
 	  <p>Send any feedback to <a href="mailto:&email;@FreeBSD.org">


More information about the p4-projects mailing list