# ChangeLog for profile directory
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/profiles/ChangeLog-2007,v 1.1 2012/01/02 19:03:52 dilfridge Exp $
#
# This ChangeLog should include records for all changes in profiles directory.
# Only typo fixes which don't affect portage/repoman behaviour could be avoided
# here. If in doubt put a record here!

  31 Dec 2007; Diego Pettenò <flameeyes@gentoo.org> package.mask:
  Mask dev-ruby/http-access2 in favour of dev-ruby/httpclient.

  31 Dec 2007; Gilles Dartiguelongue <eva@gentoo.org>
  default-linux/x86/no-nptl/2.4/package.mask,
  hardened/ia64/package.use.mask, hardened/ppc/package.use.mask,
  hardened/ppc64/package.use.mask:
  prepare bump of app-office/glabels to 2.2.0

  31 Dec 2007; Gilles Dartiguelongue <eva@gentoo.org>
  hardened/ia64/package.use.mask, hardened/ppc/package.use.mask,
  hardened/ppc64/package.use.mask:
  clean up iptc package.use.mask since bug #156398 is fixed

  30 Dec 2007; Christian Faulhammer <opfer@gentoo.org> use.desc, use.local.desc:
  adjust description of svg and app-editors/emacs-cvs:xft USE flags

  30 Dec 2007; Mark Loeser <halcy0n@gentoo.org> use.local.desc:
  Remove mono from use.local.desc for media-libs/libkarma

  30 Dec 2007; Markus Meier <maekke@gentoo.org> use.local.desc:
  add djvu USE-flag for imagemagick

  30 Dec 2007; David Shakaryan <omp@gentoo.org> package.mask:
  Mask x11-themes/openbox-themes pending removal.

  29 Dec 2007; Diego Pettenò <flameeyes@gentoo.org> use.local.desc:
  Add asycns USE flag for pulseaudio.

  29 Dec 2007; Diego Pettenò <flameeyes@gentoo.org> package.mask:
  Add a new version to pulseaudio mask.

  29 Dec 2007; Diego Pettenò <flameeyes@gentoo.org> package.mask:
  Remove old version of PulseAudio mask.

  29 Dec 2007; Diego Pettenò <flameeyes@gentoo.org> package.mask:
  Add 0.9.8-r5 to PulseAudio mask.

  29 Dec 2007; Richard Freeman <rich0@gentoo.org> use.local.desc:
  Add sound useflag for games-rpg/eternal-lands-data.

  28 Dec 2007; Raúl Porcel <armin76@gentoo.org> use.local.desc:
  Add browser use-flag for net-p2p/deluge

  28 Dec 2007; <alistair@gentoo.org> package.mask:
  Adding dev-util/poseidonCE to package mask for removal in 30 days.

  31 Dec 2007; Ryan Hill <dirtyepic@gentoo.org> use.local.desc:
  Add metric local flag for potrace.

  27 Dec 2007; Peter Volkov <pva@gentoo.org> use.local.desc:
  Added extensible USE flag for net-analyzer/net-snmp.

  27 Dec 2007; Diego Pettenò <flameeyes@gentoo.org> use.local.desc:
  Add the dict USE flag for rbot.

  27 Dec 2007; Christian Hoffmann <hoffie@gentoo.org> package.mask:
  masking dev-php5/php-java-bridge because of random segfaults

  26 Dec 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Package.mask security vulnerable slot of dev-java/jfreechart.

  25 Dec 2007; Saleem Abdulrasool <compnerd@gentoo.org> package.mask:
  Mask herdstat-1.1.91

  24 Dec 2007; Raúl Porcel <armin76@gentoo.org> use.local.desc:
  Add two USE-flags for dev-libs/yaz, from the php-overlay

  24 Dec 2007; Peter Volkov <pva@gentoo.org> package.mask:
  Removing mask =media-fonts/dejavu-2.22 - it's not in the tree any more.

  24 Dec 2007; Saleem Abdulrasool <compnerd@gentoo.org> package.mask:
  gnome-power-manager 2.20.2 should work with HAL 0.5.9

  24 Dec 2007; Jeff Gardner <je_fro@gentoo.org> use.local.desc:
  Removing the jmol dupe in use.local.desc wrt bug #202967

  23 Dec 2007; Joerg Bornkessel <hd_brummy@gentoo.org> use.local.desc:
  new local use-flag graphtft-fe - Install external x11 remote frontend

  23 Dec 2007; Timothy Redaelli <drizzt@gentoo.org> package.mask:
  Masked new media-sound/mumble and media-sound/murmur for testing

  23 Dec 2007; Matthias Schwarzott <zzam@gentoo.org> use.local.desc:
  Added local vdr use-flags lircsettings and volctrl.

  22 Dec 2007; Markus Meier <maekke@gentoo.org> use.desc:
  fix a typo, spotted by Arfrever Frehtes Taifersar Arahesis
  <arfrever.fta@gmail.com>

  22 Dec 2007; Markus Meier <maekke@gentoo.org> use.desc, use.local.desc:
  move the atm, branding, cgi, enscript, gimp, gnuplot, hddtemp, hddtemp,
  jingle, latex, lzo, networkmanager, oci8-instant-client, raw, rss, suid,
  taglib, timidity, v4l2, vnc, wavpack, xcb, xemacs and zeroconf useflags from
  local to global

  22 Dec 2007; Markus Meier <maekke@gentoo.org> use.desc, use.local.desc:
  move the subversion useflag from local to global

  22 Dec 2007; Daniel Black <dragonheart@gentoo.org> use.local.desc:
  removed savedconfig as its in global - bug #202967

  22 Dec 2007; Jurek Bartuszek <jurek@gentoo.org> package.mask:
  Removed codeblocks entry

  22 Dec 2007; Mark Loeser <halcy0n@gentoo.org> use.local.desc:
  Remove duplicated local use flags for selinux-desktop:avahi and
  busybox:savedconfig

  21 Dec 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Unmask wxGTK-2.8.

  21 Dec 2007; Christian Faulhammer <opfer@gentoo.org> package.mask:
  collect all Emacs masks for live ebuilds and snapshots in one place

  21 Dec 2007; Christian Faulhammer <opfer@gentoo.org> package.mask:
  mask newest revision of app-admin/keepassx, has masked dependencies

  20 Dec 2007; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask ocaml 3.10.1 release candidate 1, its redundant with the older 3.10
  mask but this one isn't good for ~arch yet, and its only a release candidate

  20 Dec 2007; Diego Pettenò <flameeyes@gentoo.org> package.mask:
  Fix masking of Amarok Live SVN ebuild.

  20 Dec 2007; Diego Pettenò <flameeyes@gentoo.org> use.local.desc:
  Remove pam_console USE flag for sys-libs/pam and sys-power/powersave.

  20 Dec 2007; Diego Pettenò <flameeyes@gentoo.org> package.mask:
  Remove pam_console masking now that it's gone.

  20 Dec 2007; Diego Pettenò <flameeyes@gentoo.org> package.mask:
  Unmask amarok now that's released.

  20 Dec 2007; Duncan Coutts <dcoutts@gentoo.org> package.mask:
  Unmask ghc-6.8.2 and related new libs

  20 Dec 2007; Alin Năstac <mrness@gentoo.org> package.mask:
  Unmask squid-3.0.1 (#197147).

  20 Dec 2007; Duncan Coutts <dcoutts@gentoo.org> package.mask:
  p.mask new dev-haskell/stm and dev-haskell/parallel because they need
  ghc-6.8 which is still p.masked

  19 Dec 2007; Lennart Kolmodin <kolmodin@gentoo.org> package.mask:
  Mask ghc-6.8.2 for testing

  19 Dec 2007; Peter Volkov <pva@gentoo.org> package.mask: Masked
  =media-fonts/dejavu-2.22, italics are assigned to condensed, see bug 202255

  19 Dec 2007; Tiziano Müller <dev-zero@gentoo.org> use.local.desc:
  Added icu USE-flag for dev-libs/xerces-c

  18 Dec 2007; Mark Loeser <halcy0n@gentoo.org> use.desc:
  Make the description for the profile use flag a bit clearer; bug #190431

  17 Dec 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Package.masked latest sqlite until problems are fixed.

  17 Dec 2007; Jeroen Roovers <jer@gentoo.org> package.mask:
  Masking hppa-sources (bug #202391).

  17 Dec 2007; Diego Pettenò <flameeyes@gentoo.org> use.local.desc:
  Add shorturl and translator USE flags for rbot.

  17 Dec 2007; Diego Pettenò <flameeyes@gentoo.org> package.mask:
  Mask amarok 1.4.8 until the tarball is public.

  17 Dec 2007; Rémi Cardona <remi@gentoo.org> package.mask:
  mask =x11-drivers/xf86-video-i810-2.2.0

  17 Dec 2007; Robin H. Johnson <robbat2@gentoo.org> package.mask:
  git-1.5.4_rc0 is for testing only, not production usage.

  16 Dec 2007; Diego Pettenò <flameeyes@gentoo.org> use.local.desc:
  Add cli USE flag for media-sound/rubyripper.

  15 Dec 2007; Wolfram Schlich <wschlich@gentoo.org> use.local.desc:
  added zeroconf and ftpd USE flags for sys-fs/owfs

  15 Dec 2007; Raúl Porcel <armin76@gentoo.org> use.local.desc:
  Add iceweasel use-flag for www-client/mozilla-firefox

  15 Dec 2007; Jurek Bartuszek <jurek@gentoo.org> package.mask:
  Added >=dev-util/codeblocks-1.0_pre20071215

  14 Dec 2007; Alon Bar-Lev <alonbl@gentoo.org> use.local.desc:
  Add app-crypt/johntheripper:custom-cflags

  14 Dec 2007; Krzysiek Pawlik <nelchael@gentoo.org> package.mask:
  Remove mask for www-servers/resin-2.1.17

  14 Dec 2007; Ulrich Mueller <ulm@gentoo.org> updates/4Q-2007:
  Package move app-emacs/df to app-emacs/df-mode, following upstream rename.

  14 Dec 2007; Saleem Abdulrasool <compnerd@gentoo.org> package.mask:
  mask grubconf for removal

  14 Dec 2007; Duncan Coutts <dcoutts@gentoo.org> package.mask:
  p.mask dev-haskell/regex-*-0.9x to stop the confusion

  13 Dec 2007; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  mask gal, fix bug #193496

  13 Dec 2007; Wulf C. Krueger <philantrop@gentoo.org> package.mask:
  Removed the mask for dev-libs/xmlrpc-c-1.10.00 which is no longer in the tree.

  13 Dec 2007; Alon Bar-Lev <alonbl@gentoo.org> use.local.desc:
  Add sys-fs/ecryptfs-utils:suid

  13 Dec 2007; Peter Volkov <pva@gentoo.org> package.mask:
  Masked net-im/sim-9999, live svn ebuild.

  13 Dec 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Unmask the new wxGTK-2.6 stuff.

  13 Dec 2007; Justin Bronder <jsbronder@gentoo.org> use.local.desc:
  Add descriptions of heterogeneous, romio, slurm and smp use
  flags for sys-cluster/openmpi.

  13 Dec 2007; Justin Bronder <jsbronder@gentoo.org> use.local.desc:
  Clarify server use flag for sys-cluster/torque.

  12 Dec 2007; Saleem Abdulrasool <compnerd@gentoo.org> use.local.desc:
  Add and update tracker useflags

  11 Dec 2007; Alon Bar-Lev <alonbl@gentoo.org> package.mask:
  Unmask >=dev-libs/libgcrypt-1.4.0

  11 Dec 2007; Alon Bar-Lev <alonbl@gentoo.org> package.mask:
  Masked >=dev-libs/libgcrypt-1.4.0

  10 Dec 2007; Gilles Dartiguelongue <eva@gentoo.org> updates/4Q-2007:
  slot goffice for 0.4 inclusion and future releases

  10 Dec 2007; Markus Meier <maekke@gentoo.org> use.local.desc:
  clarify inkjar description, bug #201040

  08 Dec 2007; Bernard Cafarelli <voyageur@gentoo.org> package.mask:
  Last rites for gnustep-base/gnustep-env, gnustep-libs/artresources

  08 Dec 2007; Olivier Crête <tester@gentoo.org> package.mask:
  Mask for removal net-im/gaim and its plugins

  08 Dec 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Remove punted t1lib from mask.

  08 Dec 2007; Wolfram Schlich <wschlich@gentoo.org> use.local.desc:
  add managesieve USE flag for net-mail/dovecot

  07 Dec 2007; Petteri Räty <betelgeuse@gentoo.org> use.local.desc:
  Add threadsafe use flag for dev-db/sqlite

  06 Dec 2007; Gilles Dartiguelongue <eva@gentoo.org> use.local.desc:
  add keyring for gossip

  06 Dec 2007; Diego Pettenò <flameeyes@gentoo.org> package.mask:
  Bump once again the experimental version of PulseAudio.

  06 Dec 2007; Robin H. Johnson <robbat2@gentoo.org> use.local.desc:
  Add CGI use flag for Git.

  05 Dec 2007; Joerg Bornkessel <hd_brummy@gentoo.org> use.local.desc:
  net-www/xxv:themes - Enable more themes via x11-themes/xxv-skins use-flag added

  05 Dec 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Remove mask for sun-jaf-bin as the package is gone from the main tree.

  04 Dec 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Mask net-www/pears - bug #201246.

  04 Dec 2007; Alin Năstac <mrness@gentoo.org> package.mask:
  Mask net-proxy/squid-3.0 (#201209).

  04 Dec 2007; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Package mask app-emacs/md5 and app-emacs/sha1 for removal.

  03 Dec 2007; Joerg Bornkessel <hd_brummy@gentoo.org> ChangeLog:
  net-www/xxv-1.0.1 unmasked

  03 Dec 2007; Denis Dupeyron <calchan@gentoo.org> use.local.desc:
  Added local USE flag unit-mm for sci-electronics/gerbv.

  02 Dec 2007; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  masked net-www/xxv-1.0.1 ; need review of depend perl modules

  02 Dec 2007; Wulf C. Krueger <philantrop@gentoo.org> use.local.desc:
  Added the raw USE flag for media-gfx/kphotoalbum.

  30 Nov 2007; Alon Bar-Lev <alonbl@gentoo.org> package.mask:
  Remove libtpm from tree, bug#198696

  30 Nov 2007; Ryan Hill <dirtyepic@gentoo.org> use.local.desc:
  Readding pch local USE flag to x11-libs/wxGTK.

  29 Nov 2007; Piotr Jaroszyński <peper@gentoo.org> package.mask:
  Mask =app-pda/libopensync-plugin-vformat-9999.

  29 Nov 2007; Piotr Jaroszyński <peper@gentoo.org> package.mask:
  Mask app-pda/msynctool live svn ebuild.

  28 Nov 2007; Alon Bar-Lev <alonbl@gentoo.org> package.mask:
  Mask >=sys-apps/busybox-1.8.0

  28 Nov 2007; Benedikt Böhm <hollow@gentoo.org> package.mask:
  Add www-servers/apache-2.2.6-r4 for testing

  28 Nov 2007; <alistair@gentoo.org> package.mask:
  Unleashed java-virtual/javamail onto ~arch.

  27 Nov 2007; Alin Năstac <mrness@gentoo.org> base/package.use, use.local.desc:
  Replace nofax flag for net-dialup/mgetty with fax (#195467).

  27 Nov 2007; Robin H. Johnson <robbat2@gentoo.org> package.mask:
  Mask the memcached prerelease.

  26 Nov 2007; Piotr Jaroszyński <peper@gentoo.org> package.mask:
  Mask opensync live svn ebuilds.

  26 Nov 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  dev-java/jdbc2-stdext moved to java overlay so remove package.mask

  26 Nov 2007; Jeff Gardner <je_fro@gentoo.org> package.mask:
  ati-drivers-8.42.3 masked because new version fixes many issues.

  25 Nov 2007; Alin Năstac <mrness@gentoo.org> use.local.desc:
  Added nofax flag for net-dialup/mgetty (#195467).

  25 Nov 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Add >=wxpython-2.6.4.0-r1 to wxWidgets mask.

  24 Nov 2007; Ryan Hill <dirtyepic@gentoo.org> use.local.desc:
  Remove local pch USE for wxGTK.

  24 Nov 2007; Ryan Hill <dirtyepic@gentoo.org> use.local.desc:
  Added local pch USE flag for x11-libs/wxGTK.

  24 Nov 2007; Alon Bar-Lev <alonbl@gentoo.org> package.mask:
  Add sys-libs/libtpm, last rites bug#198696

  23 Nov 2007; Alexis Ballier <aballier@gentoo.org> use.local.desc:
  add cxx useflag for aften

  23 Nov 2007; Saleem Abdulrasool <compnerd@gentoo.org> use.local.desc:
  Add nautilus useflag for gnome-mount

  23 Nov 2007; Markus Rothe <corsair@gentoo.org>
  default-linux/ppc/ppc64/package.use.mask, hardened/ppc64/use.mask:
  removed afs from use.mask in ppc64 profile; bug #196847

  23 Nov 2007; Tony Vroon <chainsaw@gentoo.org> package.mask:
  Mask net-irc/audacious-show as upstream prevents automated downloads and an
  alternative is available. Closes bug #199476.

  23 Nov 2007; Diego Pettenò <flameeyes@gentoo.org> package.mask,
  use.local.desc:
  Add policykit USE flag for pulseaudio and update the pulseaudio mask for
  experimental init.d

  23 Nov 2007; Ryan Hill <dirtyepic@gentoo.org> use.local.desc:
  Change freetype latex USE to kpathsea.

  22 Nov 2007; Saleem Abdulrasool <compnerd@gentoo.org> package.mask:
  Unmask firmware images for ipw3945 and ipw4965

  22 Nov 2007; Ryan Hill <dirtyepic@gentoo.org> use.local.desc:
  Add local latex flag for freetype.

  21 Nov 2007; Tony Vroon <chainsaw@gentoo.org> package.mask:
  Mask audacious-docklet for removal.

  21 Nov 2007; Ulrich Mueller <ulm@gentoo.org> use.local.desc:
  Add local USE flag tex for app-emacs/bbdb.

  21 Nov 2007; keri <keri@gentoo.org> use.local.desc:
  Add latex USE flag for dev-lang/swi-prolog

  20 Nov 2007; <tester@gentoo.org> package.mask:
  Mask sys-auth/pam_keyring, it's been included in gnome-base/gnome-keyring

  20 Nov 2007; Ulrich Mueller <ulm@gentoo.org> updates/4Q-2007,
  package.mask:
  Move app-emacs/wanderlust-cvs to app-emacs/wanderlust. Remove wanderlust-cvs
  from package.mask.

  20 Nov 2007; Alexis Ballier <aballier@gentoo.org> package.mask:
  unmask camlp5 and ledit, they are now fine with ocaml 3.09

  20 Nov 2007; <alistair@gentoo.org> package.mask:
  Masking more migrated java-virtuals/javamail packages

  20 Nov 2007; Wolfram Schlich <wschlich@gentoo.org> use.local.desc:
  add otr USE flag for net-im/mcabber

  19 Nov 2007; Diego Pettenò <flameeyes@gentoo.org> use.local.desc:
  Add aspell and timezone USE flags for rbot.

  19 Nov 2007; Diego Pettenò <flameeyes@gentoo.org> use.local.desc:
  Add snapshot USE flag for the rbot live ebuild.

  19 Nov 2007; <alistair@gentoo.org> package.mask:
  Added =dev-java/soap-2.3.1-r2 to mask

  18 Nov 2007; Alexis Ballier <aballier@gentoo.org> package.mask:
  unmask flac with cxx useflag now that everything has been checked against it

  18 Nov 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Add wxGTK-2.6.4.0-r2 to mask.

  18 Nov 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Mask eselect-wxwidgets for keywording.

  18 Nov 2007; Diego Pettenò <flameeyes@gentoo.org> use.local.desc:
  Add cxx USE flag for libpcre.

  18 Nov 2007; Tiziano Müller <dev-zero@gentoo.org> package.mask:
  Blocking the upgrade to net-fs/samba-3.0.27 due to regression (bug #199450)

  18 Nov 2007; Alexis Ballier <aballier@gentoo.org> package.mask,
  use.local.desc:
  Add a cxx flag for flac, to build flac++; mask it until the packages really
  needing it have a check

  17 Nov 2007; Denis Dupeyron <calchan@gentoo.org> package.mask:
  Deleted mask on net-print/hpijs after removal, see bug #176962.

  16 Nov 2007; Robin H. Johnson <robbat2@gentoo.org> base/package.use,
  use.local.desc:
  Convert sys-fs/lvm2 USE=nolvmstatic and nolvm1 to static and lvm respectively.

  15 Nov 2007; Diego Pettenò <flameeyes@gentoo.org> base/use.mask:
  pam_console was masked for removal for security issues.
  mask the flag too.

  15 Nov 2007; Diego Pettenò <flameeyes@gentoo.org> package.mask:
  Mask pam_console as per bug #199193.

  14 Nov 2007; Diego Pettenò <flameeyes@gentoo.org>
  default-linux/amd64/package.use.mask, default-linux/x86/package.use.mask:
  Mask glibc-omitfp on ~glibc-2.7 until bug #196926 is fixed.

  14 Nov 2007; Lukasz Strzygowski <lucass@gentoo.org> use.local.desc:
  Added dev-util/bzr:sftp.

  14 Nov 2007; Christian Faulhammer <opfer@gentoo.org> use.local.desc:
  adding USE=resolvconf for net-misc/vpnc

  13 Nov 2007; Chris Gianelloni <wolf31o2@gentoo.org> package.mask:
  Added a mask on my new testing livecd-tools and updating the genkernel mask
  description so it'll fit for both packages.

  13 Nov 2007; Donnie Berkholz <dberkholz@gentoo.org>;
  base/package.use.mask:
  Also add ~arch xorg-server to mesa's nptl mask, since the two require the
  same setting.

  13 Nov 2007; Jeroen Roovers <jer@gentoo.org> package.mask:
  Masking Opera weeklies (again).

  12 Nov 2007; Stefan Schweizer <genstef@gentoo.org> package.mask:
  cleanup

  12 Nov 2007; Alin Năstac <mrness@gentoo.org> use.local.desc:
  Remove mail-filter/dspam:logrotate (#198901).

  12 Nov 2007; Donnie Berkholz <dberkholz@gentoo.org>;
  base/package.use.mask:
  Mask =media-libs/mesa-7.0*:nptl. freedesktop.org bug #7459 committed fix
  breaks 3D apps but "fix" is only relevant on USE=nptl.

  11 Nov 2007; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask cstetex, bug #196673

  10 Nov 2007; Diego Pettenò <flameeyes@gentoo.org>
  +default-linux/alpha/2006.1/package.use.mask,
  +default-linux/alpha/no-nptl/package.use.mask,
  default-linux/hppa/2006.1/package.mask,
  +default-linux/hppa/2006.1/package.use.mask,
  +default-linux/ia64/2006.0/package.use.mask,
  +default-linux/m68k/package.use.mask,
  +default-linux/ppc/ppc64/2006.1/64bit-userland/package.use.mask,
  hardened/ppc/package.use.mask, hardened/ppc64/package.use.mask:
  Mask the test USE flag for sys-libs/pam-0.99 wherever glibc-2.4 is masked,
  unmask pam-0.99 in hppa profile now.

  10 Nov 2007; Alon Bar-Lev <alonbl@gentoo.org> use.local.desc:
  Add ecryptfs-utils flags

  10 Nov 2007; Christian Birchinger <joker@gentoo.org> package.mask:
  Added >=x11-plugins/wmauda-0.7 until Audacious 1.4 gets unmasked

  10 Nov 2007; Christian Birchinger <joker@gentoo.org> package.mask:
  Added >=media-plugins/audacious-dumb-0.56 and
  >=media-plugins/audacious-xosd-0.9 until Audacious 1.4 gets unmasked

  10 Nov 2007; Gilles Dartiguelongue <eva@gentoo.org>
  default-bsd/package.use.mask:
  use.mask apm for gnome-base/gnome-applets

  10 Nov 2007; Christian Faulhammer <opfer@gentoo.org> use.local.desc:
  add latex USE flag for sci-visualization/gnuplot

  10 Nov 2007; Krzysiek Pawlik <nelchael@gentoo.org> package.mask:
  Remove mask of x11-misc/xcut

  10 Nov 2007; Krzysiek Pawlik <nelchael@gentoo.org> package.mask:
  Mask www-servers/resin-2.1.17

  10 Nov 2007; Christian Hoffmann <hoffie@gentoo.org> package.mask:
  removing =dev-lang/php-5.2.5 mask, our mirror system has the tarball and most
  upstream mirrors have it as well

  09 Nov 2007; Christian Hoffmann <hoffie@gentoo.org> package.mask:
  masking =dev-lang/php-5.2.5 until all upstream mirrors have the tarball which
  is referenced by SRC_URI

  09 Nov 2007; Christian Hoffmann <hoffie@gentoo.org> package.mask:
  removing dev-php5/pecl-pdo* masks, it's gone now

  09 Nov 2007; Sébastien Fabbro <bicatali@gentoo.org> use.local.desc:
  Added fits local use flag for veusz

  08 Nov 2007; Timo Gurr <tgurr@gentoo.org> use.local.desc:
  Add cups-1.3.4 zeroconf local USE flag.

  08 Nov 2007; Alin Năstac <mrness@gentoo.org> package.mask:
  Mask net-dialup/ltmodem versions with kernel 2.4 support.

  08 Nov 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Mask media-libs/t1lib-1.3.1 for bug #198053.
  GLSA 200710-12

  07 Nov 2007; Chris Gianelloni <wolf31o2@gentoo.org> package.mask:
  Adding ~sys-kernel/genkernel-3.4.9_pre8 to package.mask so we can test it
  more thoroughly before unleashing it on our users.

  07 Nov 2007; Chris Gianelloni <wolf31o2@gentoo.org> package.mask:
  Removing mask on genkernel.

  07 Nov 2007; Sven Wegener <swegener@gentoo.org> package.mask:
  Remove the old mysql-administrator and mysql-query-browser mask.

  07 Nov 2007; Gustavo Felisberto <humpback@gentoo.org> package.mask:
  Added >=net-im/skype-2.0.0.13 as it is still beta software.

  07 Nov 2007; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Remove app-emacs/junkbust and app-emacs/ses from package.mask since the
  packages have been removed.

  07 Nov 2007; Ulrich Mueller <ulm@gentoo.org> updates/4Q-2007:
  Move app-emacs/circe-cvs to app-emacs/circe.

  07 Nov 2007; Sébastien Fabbro <bicatali@gentoo.org> use.local.desc:
  Added sourceview local use flag for sci-mathematics/gretl

  06 Nov 2007; Fabian Groffen <grobian@gentoo.org> package.mask:
  Change mask entry for monetdb to reflect the current status

  05 Nov 2007; Gilles Dartiguelongue <eva@gentoo.org>
  default-bsd/package.use.mask:
  acl and attr not keyworded

  05 Nov 2007; Timo Gurr <tgurr@gentoo.org> package.mask:
  Remove package.mask for cups 1.3.

  05 Nov 2007; Timo Gurr <tgurr@gentoo.org> use.local.desc:
  Drop cups local bonjour USE flag in favor of avahi global USE flag.

  05 Nov 2007; Peter Volkov <pva@gentoo.org> package.mask:
  Unmasking tcpreplay as it's no more beta.

  05 Nov 2007; Piotr Jaroszyński <peper@gentoo.org> use.local.desc:
  Add visibility useflag for sys-apps/paludis.

  05 Nov 2007; Duncan Coutts <dcoutts@gentoo.org> base/virtuals,
  embedded/virtuals, package.mask:
  Mask dev-lang/ghc-bin, it's subsumed by the new dev-lang/ghc ebuild

  05 Nov 2007; Alin Năstac <mrness@gentoo.org> use.local.desc:
  Added urandom flag for net-dns/pdnsd.

  04 Nov 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Add libgnome-java to the java-gnome removal list

  04 Nov 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  package.mask java-gnome-2* and dependency packages for removal

  03 Nov 2007; Christian Hoffmann <hoffie@gentoo.org> package.mask:
  removing =dev-lang/php-5.1* mask (related ebuilds are gone)

  03 Nov 2007; Vlastimil Babka <caster@gentoo.org> updates/4Q-2007:
  Slotmove app-emulation/emul-linux-x86-java-1.4* to unify with sun-jre-bin.

  03 Nov 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  package.mask dev-java/sun-jaf-bin

  03 Nov 2007; Sven Wegener <swegener@gentoo.org> use.local.desc:
  Add otr USE flag for net-im/centerim.

  03 Nov 2007; Sven Wegener <swegener@gentoo.org> use.local.desc:
  net-im/centericq has been removed from the tree.

  02 Nov 2007; Daniel Black <dragonheart@gentoo.org> use.local.desc:
  added rss for app-admin/conky

  31 Oct 2007; Gilles Dartiguelongue <eva@gentoo.org>
  default-bsd/package.use.mask:
  use.mask pda (gnome-pilot{,-conduits}) aren't keyworded

  31 Oct 2007; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  remove app-accessibility/dasher mask, bug #188213 fixed

  31 Oct 2007; Chris Gianelloni <wolf31o2@gentoo.org> package.mask:
  Masking genkernel versions for testing.

  30 Oct 2007; Diego Pettenò <flameeyes@gentoo.org> package.mask:
  Mask also the new PulseAudio version (the revision using the new init script).

  30 Oct 2007; Christian Faulhammer <opfer@gentoo.org> package.mask:
  remove entry for dev-util/ladebug...it is gone from the tree

  29 Oct 2007; Gilles Dartiguelongue <eva@gentoo.org>
  default-linux/x86/no-nptl/2.4/package.mask, package.mask:
  remove a superseeded package.mask entry
  mask >=app-mobilephone/gnome-phone-manager-0.20 on 2.4 profile

  29 Oct 2007; Ulrich Mueller <ulm@gentoo.org> use.local.desc:
  Add local xemacs flag for dev-lang/ocaml.

  28 Oct 2007; Gilles Dartiguelongue <eva@gentoo.org>
  default-bsd/package.use.mask, default-linux/arm/package.use.mask,
  default-linux/hppa/package.use.mask, default-linux/sh/package.use.mask:
  fix the QA warnings with app-vim/gtk-syntax

  28 Oct 2007; Gilles Dartiguelongue <eva@gentoo.org>
  default-linux/ia64/package.use.mask, package.mask:
  unmask gnome-bluetooth and co.
  remove iptc from package.use.mask on ia64 since it's now keyworded

  27 Oct 2007; Alon Bar-Lev <alonbl@gentoo.org> use.local.desc:
  Added sys-apps/tuxonice-userui:fbsplash

  26 Oct 2007; Diego Pettenò <flameeyes@gentoo.org> package.mask:
  Add an experimental revision of pulseaudio depending on baselayout 2.

  25 Oct 2007; Alin Năstac <mrness@gentoo.org> use.local.desc:
  Added icap-client flag for net-proxy/squid-3.

  25 Oct 2007; Alin Năstac <mrness@gentoo.org> package.mask:
  Remove squid-3.0_pre and l2tpd masks.

  25 Oct 2007; Jeroen Roovers <jer@gentoo.org> package.mask:
  Removing Opera 9.50 mask because beta 1 is out there.

  24 Oct 2007; Torsten Veller <tove@gentoo.org> package.mask:
  Unmask app-office/gnucash

  24 Oct 2007; William L. Thomson Jr. <wltjr@gentoo.org> package.mask:
  Masking xpg, last release Sep 2005

  23 Oct 2007; Stefan Schweizer <genstef@gentoo.org> package.mask:
  unmask gs-gpl

  23 Oct 2007; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  mask gnome-phone-manager and bluetooth related stuff for testing

  23 Oct 2007; Gilles Dartiguelongue <eva@gentoo.org>
  default-bsd/fbsd/package.use.mask, default-linux/arm/package.use.mask,
  default-linux/sh/package.use.mask:
  use.masking galago for media-video/totem

  23 Oct 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  package.mask jdbc2-stdext

  23 Oct 2007; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Packages app-emacs/eieio and app-emacs/semantic have been removed.
  Mask app-emacs/wanderlust-cvs for removal.

  22 Oct 2007; Gilles Dartiguelongue <eva@gentoo.org>
  default-linux/alpha/no-nptl/2.4/package.mask,
  default-linux/x86/no-nptl/2.4/package.mask:
  add gnome-themes-extra to package.mask

  22 Oct 2007; Alon Bar-Lev <alonbl@gentoo.org> use.local.desc:
  Added dev-libs/pkcs11-helper:nss

  22 Oct 2007; Gilles Dartiguelongue <eva@gentoo.org>
  default-bsd/fbsd/package.use.mask:
  use.masking xattr for gedit

  21 Oct 2007; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Add >=app-emacs/ocaml-mode-3.10.0 to ocaml masks, to avoid unnecessary
  download of the tarball.

  21 Oct 2007; Wulf C. Krueger <philantrop@gentoo.org> desc/linguas.desc:
  Added the Walloon (wa) locale.

  20 Oct 2007; Mike Auty <ikelos@gentoo.org> package.mask:
  Mask old versions of vmware-player and vmware-workstation for security
  reasons (see bug 193196).

  20 Oct 2007; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask new CVS snapshot of app-emacs/wanderlust.

  20 Oct 2007; <alistair@gentoo.org> package.mask:
  Add revbump of mx4j and mx4j-tools to my list of packages masked for
  java-virtuals support.

  19 Oct 2007; Christian Hoffmann <hoffie@gentoo.org> package.mask:
  as announced, p.mask =dev-lang/php-4* and dev-php4/* (bug 189172), current
  www-apps/knowledgetree (bug 194894) and <net-nds/phpldapadmin-1.0

  19 Oct 2007; Wulf C. Krueger <philantrop@gentoo.org> use.local.desc:
  Added kde-base/kalzium:solver.

  19 Oct 2007; Wulf C. Krueger <philantrop@gentoo.org> use.local.desc:
  Added kde-base/kdeedu:solver.

  18 Oct 2007; Gilles Dartiguelongue <eva@gentoo.org>
  default-bsd/fbsd/6.2/x86/package.use.mask,
  default-linux/alpha/no-nptl/2.4/package.use.mask,
  default-linux/arm/package.use.mask, default-linux/mips/package.use.mask,
  default-linux/ppc/ppc64/package.use.mask,
  +default-linux/sh/package.use.mask,
  default-linux/x86/no-nptl/2.4/package.use.mask:
  fix package.use.mask so that repoman stop complaining on gnome-base/gdm

  18 Oct 2007; Gilles Dartiguelongue <eva@gentoo.org>
  default-linux/ppc64/package.use.mask:
  removing iptc from package.use.mask because iptc is now properly keyworded

  18 Oct 2007; Gilles Dartiguelongue <eva@gentoo.org> use.local.desc:
  add networkmanager for evolution

  18 Oct 2007; Jeroen Roovers <jer@gentoo.org> use.local.desc:
  Spelling correction for disableslit.

  17 Oct 2007; Rémi Cardona <remi@gentoo.org> package.mask:
  remove Gnome 2.20 from package.mask (except dasher)

  17 Oct 2007; Timo Gurr <tgurr@gentoo.org> package.mask:
  Mask ghostscript-gpl-8.60 for testing, first release with ghostscript-esp
  merged.

  17 Oct 2007; Ulrich Mueller <ulm@gentoo.org> updates/4Q-2007:
  Move app-emacs/simple-wiki to app-emacs/http-emacs, since the two packages
  are identical.

  17 Oct 2007; Alexis Ballier <aballier@gentoo.org> package.mask:
  adapt texlive mask

  17 Oct 2007; Alexis Ballier <aballier@gentoo.org> use.local.desc:
  add texlive local use flags

  17 Oct 2007; <alistair@gentoo.org> package.mask:
  Adding =dev-java/gnu-javamail-1.0-r2 to package.mask as it will break its
  rdeps before I bump them to use java-virtuals.

  15 Oct 2007; Ulrich Mueller <ulm@gentoo.org> updates/3Q-2007,
  +updates/4Q-2007:
  New file 4Q-2007, move gtksourceview and vlc slotmoves from 3Q-2007 to it.
  Move app-emacs/gnus-cvs to app-emacs/ngnus.

  15 Oct 2007; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask app-emacs/ngnus live cvs ebuild.

  15 Oct 2007; Donnie Berkholz <dberkholz@gentoo.org>; thirdpartymirrors:
  Add a fedora-dev mirror class, for development RPMs. They're only on ~10% of
  mirrors, so it wastes a whole lot of time checking all mirrors.

  15 Oct 2007; Donnie Berkholz <dberkholz@gentoo.org>; thirdpartymirrors:
  Update fedora mirrors based on http://mirrors.fedoraproject.org/publiclist

  15 Oct 2007; Krzysiek Pawlik <nelchael@gentoo.org> package.mask:
  Mask x11-misc/xcut.

  14 Oct 2007; Christoph Mende <angelos@gentoo.org> use.local.desc:
  Add local use flags for net-p2p/btg

  14 Oct 2007; Ryan Hill <dirtyepic@gentoo.org> use.local.desc:
  Drop local USE flags for muttng, which was removed in July.

  14 Oct 2007; Alexis Ballier <aballier@gentoo.org> package.mask:
  update xcolor mask, 2.11 supports texmf-site

  14 Oct 2007; Ulrich Mueller <ulm@gentoo.org> use.local.desc:
  Change app-editors/emacs local use flag "nosendmail" to "sendmail".

  14 Oct 2007; Stefan Schweizer <genstef@gentoo.org> package.mask:
  mask openslp 1.3

  14 Oct 2007; Donnie Berkholz <dberkholz@gentoo.org>; package.mask:
  Unmask =xorg-server-1.3.0.0-r2, I made all the changes but forgot to close
  one bug.

  14 Oct 2007; <alistair@gentoo.org> categories, package.mask:
  Adding new category java-virtuals and package mask for the first java-virtual.

  13 Oct 2007; Donnie Berkholz <dberkholz@gentoo.org>; package.mask:
  Mask =x11-base/xorg-server-1.3.0.0-r2 because I'm still making changes to it.

  13 Oct 2007; Jeroen Roovers <jer@gentoo.org> use.local.desc:
  Improve bacula-console description yet again (bug #181238).

  13 Oct 2007; Jeroen Roovers <jer@gentoo.org> use.local.desc:
  Fix bacula-console description (bug #181238).

  13 Oct 2007; Chris Gianelloni <wolf31o2@gentoo.org> use.desc:
  Change description on the lame USE flag to make it a little bit more
  descriptive in its function.

  13 Oct 2007; Rémi Cardona <remi@gentoo.org> package.mask:
  add gnome-games-extra-data to Gnome 2.20 p.mask

  12 Oct 2007; Rémi Cardona <remi@gentoo.org> package.mask:
  add gnome-python-extras to package.mask for Gnome 2.20

  12 Oct 2007; Rémi Cardona <remi@gentoo.org> package.mask:
  add scrollkeeper to package.mask for Gnome 2.20

  12 Oct 2007; Rémi Cardona <remi@gentoo.org> package.mask:
  add yelp and rarian to package.mask for Gnome 2.20

  12 Oct 2007; Christian Faulhammer <opfer@gentoo.org> use.desc:
  change description of apache2 USE flag...there is no Apache 1.x in the tree
  anymore

  12 Oct 2007; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask =emacs-cvs-23.0.0*, CVS snapshots of unicode-2 branch.

  11 Oct 2007; Jeroen Roovers <jer@gentoo.org> package.mask:
  Add media-gfx/fontforge as app-misc/gfontview replacement.

  11 Oct 2007; Christian Faulhammer <opfer@gentoo.org> package.mask:
  remove misspelled mask on net-misc/icaclient; bug is fixed

  11 Oct 2007; Alin Năstac <mrness@gentoo.org> use.local.desc:
  Add poll local flag for mail-filter/libmilter (#178501).

  11 Oct 2007; Dawid Węgliński <cla@gentoo.org> use.local.desc:
  Added boost flag for net-irc/ezbounce

  10 Oct 2007; Michael Marineau <marineam@gentoo.org> package.mask:
  Mask ck-sources

  10 Oct 2007; Timo Gurr <tgurr@gentoo.org> use.local.desc:
  add cups-1.3.3 local USE flag

  10 Oct 2007; Timo Gurr <tgurr@gentoo.org> package.mask:
  mask cups-1.3.3 for testing

  10 Oct 2007; Stefan Schweizer <genstef@gentoo.org> package.mask:
  last-rite gfontview

  10 Oct 2007; Christian Faulhammer <opfer@gentoo.org> package.mask:
  mask app-editors/pico; just useless ebuild, see bug 3464

  10 Oct 2007; Alin Năstac <mrness@gentoo.org> use.local.desc:
  Rename mail-filter/dkim-milter local flag from approx-regex to diffheaders.

  10 Oct 2007; Sébastien Fabbro <bicatali@gentoo.org> use.local.desc:
  added local flags: cblas for sci-libs/gsl, int64 for sci-libs/mkl, server
  for sci-libs/mkl

  09 Oct 2007; Alexis Ballier <aballier@gentoo.org> use.local.desc:
  add vlc 0.9.0 snapshots local useflags

  09 Oct 2007; Alin Năstac <mrness@gentoo.org> use.local.desc:
  Add local approx-regex for mail-filter/dkim-milter.

  09 Oct 2007; Krzysiek Pawlik <nelchael@gentoo.org> package.mask:
  Mask net-im/jabberd2

  08 Oct 2007; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  add fast-user-switch-applet to package.mask

  08 Oct 2007; Krzysiek Pawlik <nelchael@gentoo.org> use.local.desc:
  Add flags for net-im/jabberd2.

  08 Oct 2007; Ryan Hill <dirtyepic@gentoo.org> use.local.desc:
  Add local flite flag for app-misc/roadnav.

  05 Oct 2007; Ulrich Mueller <ulm@gentoo.org> use.local.desc:
  Add local xemacs flag for app-misc/gtypist.

  05 Oct 2007; Sébastien Fabbro <bicatali@gentoo.org> package.mask:
  masked pygsl-0.9.1, still buggy.

  05 Oct 2007; Chris Gianelloni <wolf31o2@gentoo.org> package.mask:
  Masked America's Army due to security bug #194609.

  05 Oct 2007; Saleem Abdulrasool <compnerd@gentoo.org> use.local.desc:
  Add galago useflag for totem

  04 Oct 2007; Christian Hoffmann <hoffie@gentoo.org> package.mask:
  Masking dev-php5/pecl-pdo* for removal in 30 days (no more upstream
  releases, internal pdo from dev-lang/php-5* more up-to-date)

  04 Oct 2007; Saleem Abdulrasool <compnerd@gentoo.org> use.local.desc:
  Add new useflags for GDM 2.20

  04 Oct 2007; Ryan Hill <dirtyepic@gentoo.org> use.local.desc:
  Fix typo in last commit.

  04 Oct 2007; Ryan Hill <dirtyepic@gentoo.org> use.local.desc:
  Add utils to local USE for freetype.

  03 Oct 2007; Wulf C. Krueger <philantrop@gentoo.org> use.local.desc:
  Added media-video/kmplayer:npp.

  03 Oct 2007; Rémi Cardona <remi@gentoo.org> package.mask:
  tiny modification of mask for gnome-keyring for Gnome 2.20

  03 Oct 2007; Saleem Abdulrasool <compnerd@gentoo.org> use.local.desc:
  Add applet useflag for seahorse

  02 Oct 2007; Sébastien Fabbro <bicatali@gentoo.org> use.local.desc:
  removed debugger local use flag for dev-lang/ifc

  02 Oct 2007; Alin Năstac <mrness@gentoo.org> use.desc, use.local.desc:
  Added global syslog use-flag.

  02 Oct 2007; Lars Weiler <pylon@gentoo.org> use.local.desc:
  Added local cisco use-flag for net-misc/strongswan.

  01 Oct 2007; Christian Faulhammer <opfer@gentoo.org> use.local.desc:
  add tools USE flag for sci-libs/libsvm

  01 Oct 2007; Christian Faulhammer <opfer@gentoo.org> package.mask:
  mask dev-util/ladebug

  01 Oct 2007; Gilles Dartiguelongue <eva@gentoo.org> desc/cameras.desc:
  fix cameras.desc to include new IUSE_CAMERAS from libgphoto-2.4.0

  30 Sep 2007; Stefan Schweizer <genstef@gentoo.org> package.mask:
  modify kpowersave mask to not cover the new version

  30 Sep 2007; Sven Wegener <swegener@gentoo.org> package.mask:
  Mask dev-db/mysql-administrator and dev-db/mysql-query-browser, they have
  been replaced by dev-db/mysql-gui-tools.

  30 Sep 2007; Christian Hoffmann <hoffie@gentoo.org> package.mask:
  Masking =dev-lang/php-5.1* for removal in 30 days (unfixed security issues +
  no longer supported by upstream)

  30 Sep 2007; Sébastien Fabbro <bicatali@gentoo.org> use.local.desc:
  added debugger use flags for dev-lang/ifc and dev-lang/icc

  30 Sep 2007; Rémi Cardona <remi@gentoo.org> use.desc, use.local.desc:
  move the xattr useflag from local to global

  28 Sep 2007; Alon Bar-Lev <alonbl@gentoo.org> package.mask:
  Remove app-text/hspell

  28 Sep 2007; Wulf C. Krueger <philantrop@gentoo.org> package.mask:
  Removed app-cdr/kover from package.mask as it was just removed from the tree.

  28 sep 2007; Peter Volkov <pva@gentoo.org> package.mask:
  Masked >=app-doc/kchmviewer-4.0_beta1 for testing

  27 Sep 2007; Kevin F. Quinn <kevquinn@gentoo.org> package.mask:
  Masked acroread-8.1.1 for testing

  27 Sep 2007; Wulf C. Krueger <philantrop@gentoo.org> package.mask:
  Temporaryly p.masked =dev-util/cmake-2.4.7-r2 for further testing and until
  xmlrpc-c has been keyworded properly.

  27 Sep 2007; Paul Varner <fuzzyray@gentoo.org> package.mask:
  Mask gentoolkit-0.2.4_rc1 due to broken revdep-rebuild

  26 Sep 2007; MATSUU Takuto <matsuu@gentoo.org> use.local.desc:
  Added audit and xattr USE flag for app-forensics/aide.

  26 Sep 2007; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask app-emacs/speedbar for removal.

  26 Sep 2007; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Remove app-emacs/slime-cvs from package.mask since the package was removed.

  26 Sep 2007; Jeff Gardner <je_fro@gentoo.org> package.mask:
  Removed xf86-video-radeonhd from p.mask as it's not going in the tree just
  yet...

  25 Sep 2007; <solar@gentoo.org> uclibc/package.mask:
  - remove tar masking in uclibc profile

  25 Sep 2007; <jeff@gentoo.org> package.mask:
  Adding x11-drivers/xf86-video-radeonhd to p.mask, as it's still experimental.

  23 Sep 2007; Rémi Cardona <remi@gentoo.org> package.mask:
  Removing the gtkmm-2.12 mask

  23 Sep 2007; Jeroen Roovers <jer@gentoo.org> use.local.desc:
  Improve mozsha1 description (bug #193134 comment #7).

  23 Sep 2007; Rémi Cardona <remi@gentoo.org> package.mask:
  Mask gtkmm-2.12 and friends (Gnome 2.20)

  23 Sep 2007; Denis Dupeyron <calchan@gentoo.org> package.mask:
  Masked net-print/hpijs for removal on 24 Oct 2007 as per bug #176962.

  23 Sep 2007; Mart Raudsepp <leio@gentoo.org> package.mask:
  Unmasking gtk+-2.12 and co

  22 Sep 2007; Chris Gianelloni <wolf31o2@gentoo.org> package.mask:
  Masking =net-misc/icaclient-10.6 until we can resolve bug #189884.

  22 Sep 2007; Wulf C. Krueger <philantrop@gentoo.org>
  default-linux/ppc/ppc64/2007.0/32bit-userland/package.mask,
  hardened/ppc/package.mask:
  Masked app-text/bibus as it requires virtual/ooo.

  22 Sep 2007; Christian Faulhammer <opfer@gentoo.org> use.local.desc:
  remove spurious xemacs USE flag for dev-tex/preview latex (not in the tree
  anymore); adjust description of xemacs USE flag for
  sci-visualization/gnuplot

  21 Sep 2007; Rémi Cardona <remi@gentoo.org> package.mask:
  mask for gtk+-2.12 and relevant deps

  21 Sep 2007; Chris Gianelloni <wolf31o2@gentoo.org> package.mask:
  Added sys-auth/{pam_,}bioapi to package.mask since sys-auth/tfm-fingerprint
  is masked for removal and nothing else in the tree uses bioapi.

  20 Sep 2007; Mike Auty <ikelos@gentoo.org> package.mask:
  Masking vmware packages according to bug 193196.

  20 Sep 2007; Robin H. Johnson <robbat2@gentoo.org> package.mask:
  Last rites for bk_client. MySQL herd has no further need for this package.

  18 Sep 2007; Robin H. Johnson <robbat2@gentoo.org>
  default-linux/alpha/use.mask, default-linux/arm/use.mask,
  default-linux/hppa/use.mask, default-linux/m68k/use.mask,
  default-linux/ppc/ppc64/use.mask, default-linux/ppc64/use.mask,
  default-linux/s390/use.mask, default-linux/sh/use.mask,
  hardened/ppc64/use.mask:
  Mask USE=audit on alpha, arm, hppa, ppc64, s390, sh until they have
  keyworded it per bug 184563.

  18 Sep 2007; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Unmask app-emacs/slime-2.0_p20070816 CVS snapshot.

  17 Sep 2007; Gilles Dartiguelongue <eva@gentoo.org>
  default-linux/amd64/2007.0/package.use.mask,
  default-linux/amd64/package.use.mask, default-linux/ia64/package.use.mask,
  default-linux/ppc/package.use.mask, +default-linux/ppc64/package.use.mask,
  hardened/amd64/package.use.mask, hardened/ia64/package.use.mask,
  hardened/ppc/package.use.mask, +hardened/ppc64/package.use.mask:
  fix QA for iptc USE flag in gthumb

  17 Sep 2007; Wulf C. Krueger <philantrop@gentoo.org> package.mask:
  Removed app-pda/pilot-link-0.12.2 from package.mask.

  17 Sep 2007; Alon Bar-Lev <alonbl@gentoo.org> use.local.desc:
  Added sys-power/suspend:fbsplash

  16 Sep 2007; Mike Auty <ikelos@gentoo.org> package.mask:
  Unmask vmware workstation/player now that vmware-modules-1.0.0.16-r1 is
  checked in.

  16 Sep 2007; Jason Smathers (jsin) <jsin@gentoo.org> use.local.desc:
  Added xft local use flag for OpenMotif to enable XFT fonts.

  15 Sep 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Unmask wxGTK and wxpython-2.6.4.0

  13 Sep 2007; Daniel Black <dragonheart@gentoo.org> package.mask,
  use.local.desc:
  use.local.desc - added net-misc/curl:libssh2 - Enabled SSH urls in curl
  using libssh2. package.mask - added curl-7.17.0-r1 for ssh2 testing

  12 Sep 2007; Alon Bar-Lev <alonbl@gentoo.org> package.mask:
  Mask app-text/hspell for removal

  12 Sep 2007; David Shakaryan <omp@gentoo.org> package.mask:
  Remove a few more dead masks.

  12 Sep 2007; David Shakaryan <omp@gentoo.org> package.mask:
  Remove a few dead masks.

  12 Sep 2007; Joerg Bornkessel <hd_brummy@gentoo.org>;
  media-video:vdr 29 new use-flags for new vdr patchset added

  09 Sep 2007; Donnie Berkholz <dberkholz@gentoo.org>;
  desc/video_cards.desc:
  Add amd/vermilion to VIDEO_CARDS entries.

  09 Sep 2007; Donnie Berkholz <dberkholz@gentoo.org>; package.mask:
  Unmask xf86-input-keyboard-1.2 because xorg-server handles deps properly now.

  09 Sep 2007; Hans de Graaff <graaff@gentoo.org> package.mask:
  Remove dev-ruby/switchtower as the package is now removed from the tree.

  09 Sep 2007; Alin Năstac <mrness@gentoo.org> package.mask:
  Mask squid development version.

  08 Sep 2007; Donnie Berkholz <dberkholz@gentoo.org>;
  desc/video_cards.desc:
  Add xgi.

  08 Sep 2007; Alin Năstac <mrness@gentoo.org> use.local.desc:
  Update homepage of zero penalty hit patch for squid.

  07 Sep 2007; Tiziano Müller <dev-zero@gentoo.org> use.local.desc:
  Added ads USE flag for net-fs/samba

  06 Sep 2007; Chris Gianelloni <wolf31o2@gentoo.org> package.mask:
  Removing my big Descent 2 mask.

  06 Sep 2007; Tobias Scherbaum <dertobi123@gentoo.org> package.mask:
  Unmasking >=cyrus-imapd-2.3 and >=cyrus-imap-admin-2.3

  05 Sep 2007; Ulrich Mueller <ulm@gentoo.org> updates/3Q-2004,
  updates/2Q-2007:
  Fix inconsistent slotmoves for app-editors/emacs-cvs.

  04 Sep 2007; Denis Dupeyron <calchan@gentoo.org> package.mask:
  Masking new Neverwinter Nights ebuilds until they're confirmed to work.

  04 Sep 2007; Jeroen Roovers <jer@gentoo.org> package.mask:
  Masking Opera Kestrel (9.50 alphas).

  04 Sep 2007; Stefan Schweizer <genstef@gentoo.org> package.mask:
  poppler and evince masks for >= instead of = to also cover 0.6

  03 Sep 2007; Daniel Black <dragonheart@gentoo.org> package.mask:
  removed kde-misc/kxdocker*

  03 Sep 2007; Alin Năstac <mrness@gentoo.org> package.mask:
  Unmask net-dialup/ppp-2.4.4-r12

  02 Sep 2007; Stefan Schweizer <genstef@gentoo.org> package.mask:
  last-rite bpalogin for mark_alec

  01 Sep 2007; Joshua Nichols <nichoj@gentoo.org> package.mask:
  Removed capistrano and palmtree from package.mask.

  01 Sep 2007; Joshua Nichols <nichoj@gentoo.org> updates/3Q-2007:
  Added slots for dev-ruby/capistrano

  01 Sep 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Also mask wxpython-2.6.4.0.

  01 Sep 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Mask =x11-libs/wxGTK-2.6.4.0 for testing.

  31 Aug 2007; Christian Faulhammer <opfer@gentoo.org> use.local.desc:
  adding USE flag hybrid-auth for net-misc/vpnc

  31 Aug 2007; Robert Buchholz <rbu@gentoo.org> use.local.desc:
  Add dialup use flag for knetworkmanager

  31 Aug 2007; Alin Năstac <mrness@gentoo.org> package.mask:
  Mask ppp-2.4.4-r12.

  30 Aug 2007; Tiziano Müller <dev-zero@gentoo.org> use.local.desc:
  Added hb and hb2 USE-flags for sys-fs/evms

  30 Aug 2007; Peter Volkov <pva@gentoo.org> use.desc, use.local.desc:
  removed mail-client/mail-notification:evolution USE flag,
  updated evo USE flag description, bug #157265.

  30 Aug 2007; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask camlp5, needs ocaml 3.10

  30 Aug 2007; William Hubbs <williamh@gentoo.org> use.local.desc:
  Added the flite use flag for speech-dispatcher.

  29 Aug 2007; Ulrich Mueller <ulm@gentoo.org> updates/2Q-2007,
  updates/3Q-2007:
  Slotmove for app-editors/emacs-cvs: move ebuilds for unicode-2 branch to
  slot "23-unicode".

  29 Aug 2007; Saleem Abdulrasool <compnerd@gentoo.org> use.local.desc:
  Add pidgin useflag for nautilus-sendto

  27 Aug 2007; Chris Gianelloni <wolf31o2@gentoo.org> profiles.desc:
  Marked alpha/x86 2.4 sub-profiles as dev from stable to reduce their impact
  on other developers.

  25 Aug 2007; Wulf C. Krueger <philantrop@gentoo.org> package.mask:
  Temporarily p.mask'ed >=app-pda/pilot-link-0.12.2 to allow for further testing.

  25 Aug 2007; Miroslav Šulc <fordfrog@gentoo.org> use.local.desc:
  Added c++ USE flag for dev-util/netbeans

  25 Aug 2007; Miroslav Šulc <fordfrog@gentoo.org> use.local.desc:
  Added c++ USE flag for dev-util/netbeans

  25 Aug 2007; Alin Năstac <mrness@gentoo.org> package.mask:
  Mask net-dialup/l2tpd.

  25 Aug 2007; Marius Mauch <genone@gentoo.org> info_pkgs:
  add baselayout to replace /etc/gentoo-release parsing in portage-2.2

  25 Aug 2007; Marius Mauch <genone@gentoo.org> info_vars:
  removing AUTOCLEAN and PKGDIR as they are rarely relevant.

  24 Aug 2007; Michael Marineau <marineam@gentoo.org> package.mask:
  Hardmask xen-sources-2.6.16* for the sake of security.

  24 Aug 2007; Michael Marineau <marineam@gentoo.org>
  default-linux/amd64/2006.0/no-multilib/use.mask,
  default-linux/amd64/2006.1/no-multilib/use.mask,
  default-linux/amd64/2007.0/no-multilib/use.mask,
  hardened/amd64/multilib/use.mask, hardened/amd64/use.mask, use.local.desc:
  Add hvm USE flag for Xen HVM support in xen-tools. Mask on no-multilib
  profiles.

  24 Aug 2007; Sébastien Fabbro <bicatali@gentoo.org> use.local.desc:
  Added cern local USE flag to sci-physics/root

  23 Aug 2007; Tiziano Müller <dev-zero@gentoo.org> package.mask:
  Unmasking python-2.5

  23 Aug 2007; Robert Buchholz <rbu@gentoo.org> use.local.desc:
  Add useflags for kde-misc/knetworkmanager

  23 Aug 2007; Seemant Kulleen <seemant@gentoo.org> package.mask:
  mask out all the 0.5.9* versions of poppler and poppler bindings

  21 Aug 2007; Alin Năstac <mrness@gentoo.org> updates/3Q-2007:
  Move net-proxy/vultureng to net-proxy/vulture.

  21 Aug 2007; Wulf C. Krueger <philantrop@gentoo.org> package.mask:
  Added ~app-editors/kile-2.0_beta1.

  21 Aug 2007; Wulf C. Krueger <philantrop@gentoo.org> package.mask:
  Masked app-cdr/kover for removal. cf. bug 187251.

  21 Aug 2007; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  remove vte-0.16.8 mask, should be fixed now, see bug #189556

  21 Aug 2007; Sébastien Fabbro <bicatali@gentoo.org> use.local.desc:
  Added proj local USE flag for dev-lang/gdl

  20 Aug 2007; Chris Gianelloni <wolf31o2@gentoo.org>
  hardened/ppc/package.mask, use.local.desc:
  Added local USE flags for games-strategy/ufo-ai and masked it on hardened ppc.

  20 Aug 2007; Tiziano Müller <dev-zero@gentoo.org> use.local.desc:
  Updated description for graphviz's pango USE flag

  20 Aug 2007; Torsten Veller <tove@gentoo.org> package.mask:
  Masked app-office/gnucash-2.2.1

  20 Aug 2007; Tobias Scherbaum <dertobi123@gentoo.org> use.local.desc:
  Add replication use flag (local) for net-mail/cyrus-imapd

  18 Aug 2007; Christoph Mende <angelos@gentoo.org> use.local.desc:
  Added masquerade USE flag for oidentd

  16 Aug 2007; Tobias Heinlein <keytoaster@gentoo.org> updates/3Q-2007:
  Moving kde-base/kworldwatch to kde-base/kworldclock, see bug 188707

  16 Aug 2007; Steve Dibb <beandog@gentoo.org> package.mask:
  Unmask transcode-1.0.4

  16 Aug 2007; Steve Dibb <beandog@gentoo.org> use.local.desc:
  Add pvr local flag for media-video/mplayer

  15 Aug 2007; Gustavo Zacarias <gustavoz@gentoo.org> package.mask:
  Remove opera mask wrt #188987

  15 Aug 2007; Steve Dibb <beandog@gentoo.org> package.mask:
  Update p.mask for transcode

  14 Aug 2007; Steve Dibb <beandog@gentoo.org> use.local.desc:
  Add teletext, cdio local use flags for media-video/mplayer

  14 Aug 2007; Jeff Gardner <je_fro@gentoo.org> package.mask:
  Unmasking ati-drivers-8.40.4 as watermark issue seems resolved - bug 188791.

  14 Aug 2007; Robin H. Johnson <robbat2@gentoo.org> package.mask:
  Mask mail-filter/spamassassin-ruledujour pending removal. See mail to -dev
  about moving to sa-update instead.

  14 Aug 2007; Jeff Gardner <je_fro@gentoo.org> package.mask:
  Mask testing ati-drivers because of annoying watermark.

  14 Aug 2007; Saleem Abdulrasool <compnerd@gentoo.org> use.local.desc:
  Add useflag for devhelp plugin for anjuta

  13 Aug 2007; Peter Volkov <pva@gentoo.org> package.mask:
  Unmask app-emulation/uae.

  12 Aug 2007; Peter Volkov <pva@gentoo.org> use.local.desc:
  Add app-emulation/uae:ui

  12 Aug 2007; Peter Volkov <pva@gentoo.org> use.local.desc:
  Add www-apps/mantisbt:bundled-adodb
  Update net-analyzer/cacti:bundled-adodb

  11 Aug 2007; Saleem Abdulrasool <compnerd@gentoo.org>
  default-linux/x86/no-nptl/use.mask:
  Mask deskbar-applet in tracker for x86/no-nptl

  08 Aug 2007; Raúl Porcel <armin76@gentoo.org> use.local.desc:
  Add USE-flag for dev-libs/nss

  08 Aug 2007; Tiziano Müller <dev-zero@gentoo.org> use.desc:
  Removed libg++ USE-flag (bug #148416)

  08 Aug 2007; Sven Wegener <swegener@gentoo.org> use.local.desc:
  Add local use flags for net-im/centerim.

  07 Aug 2007; Sven Wegener <swegener@gentoo.org> package.mask:
  Mask to be added screen CVS snapshot.

  04 Aug 2007; Jeroen Roovers <jer@gentoo.org> package.mask:
  Masking Opera 9.23 weeklies

  03 Aug 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Remove <=app-misc/jbidwatcher-0.9.9 mask as the ebuilds are gone.

  02 Aug 2007; Donnie Berkholz <dberkholz@gentoo.org>; package.mask:
  Unmask mesa 6.5.3.

  01 Aug 2007; Sébastien Fabbro <bicatali@gentoo.org> use.local.desc:
  sci-mathematics/freemat:arpack - Add sparse eigen value support via
  arpack
  sci-mathematics/freemat:ffcall - Enables uses of ffcall
  sci-mathematics/freemat:umfpack - Add sparse solving via umfpack

  31 Jul 2007; Piotr Jaroszyński <peper@gentoo.org> package.mask:
  Remove x11-drivers/mtxdrivers-pro mask as it has been nuked from the tree.

  30 Jul 2007; Christian Faulhammer <opfer@gentoo.org> use.local.desc:
  media-sound/cmus:pidgin - install support script for net-im/pidgin
  media-sound/cmus:wavpack - add support for wavpack
  media-sound/cmus:wma - add support for Windows Media Audio
  media-sound/cmus:zsh-completion - enable zsh completion support

  29 Jul 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Remove twmoefonts mask due to removal.

  28 Jul 2007; Chris Gianelloni <wolf31o2@gentoo.org> updates/3Q-2007:
  Moved vendetta-online-bin from games-fps to games-rpg for bug #184918.

  27 Jul 2007; Chris Gianelloni <wolf31o2@gentoo.org> thirdpartymirrors:
  Hopefully fixing the liflg mirrors to use both the old and new locations for
  a short time until we can determine the correct ones for each mirror. I know
  I should check all of these first, but I would prefer get it fixed as soon
  as possible since I have let this sit for a while.

  25 Jul 2007; Duncan Coutts <dcoutts@gentoo.org> package.mask:
  Unmask ghc-6.6.1 and all the new modular libs. See bug #151012.

  25 Jul 2007; Denis Dupeyron <calchan@gentoo.org> package.mask:
  Removed mask on hplip-2.7.6 as it seems to work.

  24 Jul 2007; Ryan Hill <dirtyepic@gentoo.org> use.local.desc:
  Remove wxgtk1 local USE flag.

  24 Jul 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Unmask artwiz-fonts due to bug #186431.

  24 Jul 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Mask media-fonts/artwiz-fonts.

  22 Jul 2007; Tobias Heinlein <keytoaster@gentoo.org> package.mask:
  Updating mask on kde-misc/krusader since final version is out

  21 Jul 2007; Donnie Berkholz <dberkholz@gentoo.org>;
  embedded/virtuals, selinux/mips/virtuals:
  Pull old-style virtuals: glu, glut, opengl, x11, xft.

  21 Jul 2007; Donnie Berkholz <dberkholz@gentoo.org>;
  default-linux/ppc64/virtuals, default-darwin/macos/virtuals:
  Drop old-style virtual/x11.

  21 Jul 2007; Donnie Berkholz <dberkholz@gentoo.org>; package.mask:
  Unmask virtual/x11, it's gone.

  21 Jul 2007; Wulf C. Krueger <philantrop@gentoo.org> package.mask:
  Package.masked =media-video/konverter-0.93 which is badly broken. cf. bug
  173972. (Wrong bug number on first commit.)

  21 Jul 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Removed net-dialup/multiimonc mask.

  21 Jul 2007; Denis Dupeyron <calchan@gentoo.org> package.mask:
  Masked =net-print/hplip-2.7.6 for testing.

  19 Jul 2007; Jeroen Roovers <jer@gentoo.org> package.mask:
  Remove opera-9.22 weeklies mask.

  19 Jul 2007; Alin Năstac <mrness@gentoo.org> package.mask:
  Mask net-dialup/l2tpd.

  18 Jul 2007; Doug Goldstein <cardoe@gentoo.org> package.mask:
  unmask nvidia drivers

  18 Jul 2007; Jeff Gardner <je_fro@gentoo.org> package.mask:
  Remove p.mask for sci-chemistry/nmrpipe

  16 Jul 2007; Gustavo Zacarias <gustavoz@gentoo.org> package.mask:
  Mask zaptel-1.2.18-r1

  14 Jul 2007; <tester@gentoo.org> package.mask:
  Mask net-www/netscape-flash

  14 Jul 2007; Diego Pettenò <flameeyes@gentoo.org> base/make.defaults,
  default-linux/make.defaults:
  Move cracklib default from default-linux/ to base/.

  13 Jul 2007; Chris Gianelloni <wolf31o2@gentoo.org> thirdpartymirrors:
  Adding 'games' to liflg mirror per bug #185119.

  13 Jul 2007; Gustavo Zacarias <gustavoz@gentoo.org> use.local.desc:
  Add USE=ecoslec for zaptel

  13 Jul 2007; Diego Pettenò <flameeyes@gentoo.org> +updates/3Q-2007,
  default-bsd/fbsd/packages, default-bsd/fbsd/packages.build,
  use.local.desc:
  Move app-arch/bsdtar as app-arch/libarchive.

  13 Jul 2007; Steve Dibb <beandog@gentoo.org> use.local.desc:
  Add replaygain local use flag for media-sound/abcde

  13 Jul 2007; Steve Dibb <beandog@gentoo.org> use.local.desc:
  Add id3, lame local use flags for media-sound/abcde

  12 Jul 2007; Gustavo Zacarias <gustavoz@gentoo.org> use.local.desc:
  Add new USE=astribank for zaptel

  12 Jul 2007; Saleem Abdulrasool <compnerd@gentoo.org> use.local.desc:
  Add new useflags for iwlwifi

  11 Jul 2007; Robert Buchholz <rbu@gentoo.org> use.local.desc:
  Add freevo related use flags

  11 Jul 2007; Robert Buchholz <rbu@gentoo.org> package.mask:
  Unmasking media-tv/freevo to keep stable working

  11 Jul 2007; Robert Buchholz <rbu@gentoo.org> use.local.desc:
  Removing scrobbler from herrie's use locals

  11 Jul 2007; Stefan Schweizer <genstef@gentoo.org> package.mask:
  mask freevo for removal

  09 Jul 2007; Duncan Coutts <dcoutts@gentoo.org> package.mask:
  Add new versions of dev-haskell/opengl, openal, glut, alut, x11 to
  package.mask.

  08 Jul 2007; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask Opera weeklies.

  08 Jul 2007; Duncan Coutts <dcoutts@gentoo.org> package.mask:
  Add more versions of the modular haskell packages to p.mask

  08 Jul 2007; Duncan Coutts <dcoutts@gentoo.org> package.mask:
  Fix version number for dev-haskell/arrows in package.mask

  07 Jul 2007; Sven Wegener <swegener@gentoo.org> package.mask:
  Mask =dev-db/opendbx-1.3* (development releases)

  06 Jul 2007; Michał Januszewski <spock@gentoo.org> package.mask:
  Mask media-gfx/bootsplash for removal.

  06 Jul 2007; Duncan Coutts <dcoutts@gentoo.org> package.mask:
  Add ghc-6.6.1 to package.mask

  06 Jul 2007; Piotr Jaroszyński <peper@gentoo.org> package.mask:
  Mask x11-themes/gdm-themes for removal. bug #167379.

  06 Jul 2007; Duncan Coutts <dcoutts@gentoo.org> use.local.desc:
  Add binary and ghcbootstrap flags for dev-lang/ghc

  02 Jul 2007; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask app-emacs/ognus for removal.

  01 Jul 2007; Jurek Bartuszek <jurek@gentoo.org> use.local.desc:
  Add aspnet, aspnetedit and subversion flags for dev-util/monodevelop

  01 Jul 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Unmask www-servers/boa.

  01 Jul 2007; Cédric Krier <cedk@gentoo.org> use.local.desc:
  Add libcrypto flag for libssh2

  01 Jul 2007; Krzysiek Pawlik <nelchael@gentoo.org> package.mask:
  Mask x11-misc/xnview.

  01 Jul 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  mask kde-misc/kdbus for removal

  01 Jul 2007; Petteri Räty <betelgeuse@gentoo.org> use.local.desc:
  Add note to libX11 xcb use flag that it can break proprietary binaries like
  Sun Java.

  30 Jun 2007; Raúl Porcel <armin76@gentoo.org> thirdpartymirrors:
  Remove ancient GNU mirrors

  29 Jun 2007; Bjarke Istrup Pedersen <gurligebis@gentoo.org> package.mask:
  Removed the package.mask of net-misc/upnp, since it is gone.

  26 Jun 2007; Ulrich Mueller <ulm@gentoo.org> updates/2Q-2007:
  Package move app-emacs/rst-mode to app-emacs/rst.

  26 Jun 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Remove mask for removed package, bug 131866

  26 Jun 2007; Wulf C. Krueger <philantrop@gentoo.org> package.mask:
  Masked app-cdr/konqburn because it's broken in several ways, see bug 171493
  for details.

  25 Jun 2007; Ulrich Mueller <ulm@gentoo.org> use.local.desc:
  Add local use flags bbdb and planner for app-emacs/remember.

  25 Jun 2007; Diego Pettenò <flameeyes@gentoo.org> package.mask:
  Fix typo in mask.

  25 Jun 2007; Alon Bar-Lev <alonbl@gentoo.org> use.local.desc:
  Fix ccid, hibernate-script, suspend2-sources, bug#134491

  25 Jun 2007; Steve Dibb <beandog@gentoo.org> use.local.desc:
  Add ssse3 local use flag for media-video/mplayer

  24 Jun 2007; Piotr Jaroszyński <peper@gentoo.org> package.mask:
  Mask x11-drivers/mtxdrivers-pro for removal.

  24 Jun 2007; Peter Volkov <pva@gentoo.org> use.local.desc:
  Updated description of sms USE flag for app-mobilephone/gnokii.

  24 Jun 2007; Raúl Porcel <armin76@gentoo.org> use.local.desc:
  Remove unused use-flag for www-client/mozilla-launcher, bug 134491

  24 Jun 2007; Ulrich Mueller <ulm@gentoo.org> use.local.desc:
  Remove unused aqua USE flag for app-editors/emacs-cvs, bug #134491.

  24 Jun 2007; Tiziano Müller <dev-zero@gentoo.org> use.local.desc:
  Removed pg-hier and pg-vacuum USE flags for dev-db/postgresql (bug ##134491)

  24 Jun 2007; Tiziano Müller <dev-zero@gentoo.org> use.local.desc:
  Removed libclamav and ldapsam USE flags for net-fs/samba (bug #134491)

  24 Jun 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Mask media-fonts/twmoefonts for bug #115110.

  23 Jun 2007; Wulf C. Krueger <philantrop@gentoo.org> use.local.desc:
  Added local USE flag taglib for media-sound/kid3.

  23 Jun 2007; Sven Wegener <swegener@gentoo.org> use.local.desc:
  Add local USE flag system-libvncserver for x11-misc/x11vnc.

  23 Jun 2007; Jeroen Roovers <jer@gentoo.org> use.local.desc:
  q8/q32: Improve descriptions.

  22 Jun 2007; Chris Gianelloni <wolf31o2@gentoo.org> base/use.mask,
  default-linux/alpha/use.mask, default-linux/amd64/use.mask,
  default-linux/ia64/use.mask, default-linux/mips/use.mask,
  default-linux/ppc/1.0/use.mask, default-linux/ppc/1.0_rc/use.mask,
  default-linux/ppc/1.2/use.mask, default-linux/ppc/1.4/use.mask,
  default-linux/ppc/2004.0/use.mask, default-linux/ppc/2004.1/use.mask,
  default-linux/ppc/2004.2/use.mask, default-linux/ppc/2004.3/use.mask,
  default-linux/ppc/2005.0/use.mask, default-linux/ppc/2005.1/ppc/use.mask,
  default-linux/ppc/dev/ppc32/use.mask,
  default-linux/ppc/dev/ppc64/2007.0/32bit-userland/use.mask,
  default-linux/ppc/ppc32/use.mask,
  default-linux/ppc/ppc64/2006.0/32bit-userland/use.mask,
  default-linux/ppc/ppc64/2006.1/32bit-userland/use.mask,
  default-linux/ppc/ppc64/2007.0/32bit-userland/use.mask,
  default-linux/sparc/use.mask, default-linux/use.mask,
  default-linux/x86/use.mask, hardened/amd64/use.mask,
  hardened/ppc/use.mask, hardened/ppc64/use.mask, hardened/use.mask,
  hardened/x86/use.mask, selinux/2005.1/alpha/use.mask,
  selinux/alpha/use.mask, selinux/amd64/use.mask, selinux/mips/use.mask,
  selinux/ppc/ppc32/use.mask, selinux/sparc/use.mask, selinux/use.mask,
  selinux/x86/use.mask:
  Moved clvm and tcc USE flags masking to the highest possible parent and
  unmasking at highest possible point, rather than in leaf profiles. This is
  for bug #159832.

  22 Jun 2007; Steve Dibb <beandog@gentoo.org> use.local.desc:
  Add amrnb, amrwb local use flags for mplayer

  22 Jun 2007; Wulf C. Krueger <philantrop@gentoo.org> package.mask:
  Removed the mask for net-print/kink as bug 176857 is most likely resolved
  and we need proper testing.

  21 Jun 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Mask net-dialup/multiimonc, bug #182748.

  21 Jun 2007; Ulrich Mueller <ulm@gentoo.org> updates/2Q-2007:
  Package move app-emacs/ebuild-mode to app-emacs/gentoo-syntax.

  21 Jun 2007; Bernard Cafarelli <voyageur@gentoo.org> use.local.desc:
  vnc USE flag cleanup for NX packages

  21 Jun 2007; Wulf C. Krueger <philantrop@gentoo.org> package.mask:
  Masked net-print/kink for removal wrt bug #176857.

  21 Jun 2007; Timothy Redaelli <drizzt@gentoo.org> package.mask:
  Stable version of UPX released, beta version removed.

  21 Jun 2007; Diego Pettenò <flameeyes@gentoo.org> use.local.desc:
  Add mp4 useflag for Amarok (replaces AAC).

  20 Jun 2007; Diego Pettenò <flameeyes@gentoo.org> use.local.desc:
  Add dssi USE flag for rosegarden.

  19 Jun 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Remove mask as it has been removed, bug 152520

  18 Jun 2007; Wulf C. Krueger <philantrop@gentoo.org> use.local.desc:
  Added gammu and obex for app-mobilephone/kmobiletools.

  17 Jun 2007; Ulrich Mueller <ulm@gentoo.org> use.local.desc:
  Add local nanoemacs flag for app-editors/jasspa-microemacs.

  17 Jun 2007; Peter Weller <welp@gentoo.org> package.mask:
  Masked dev-util/larch wrt bug 180577

  17 Jun 2007; Mart Raudsepp <leio@gentoo.org> use.desc:
  Rename wxWindows to wxWidgets in the wxwindows USE flag description for now
  - later can think about USE flag renaming

  15 Jun 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  pmask dev-java/javahelp-bin and remove mask for dev-util/jcvs and
  dev-java/j2ssh as they have been removed from the tree some time ago.

  15 Jun 2007; Jeff Gardner <je_fro@gentoo.org> use.local.desc:
  Add vhosts and client-only USE flags for sci-chemistry/jmol.

  13 Jun 2007; Raúl Porcel <armin76@gentoo.org> use.local.desc:
  Add restrict-javascript USE-flag for www-client/mozilla-firefox-bin

  12 Jun 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Remove net-p2p/deluge mask

  09 Jun 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  2006 --> 2007. bad drac.

  09 Jun 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  package.mask dev-java/odmg for moving to java-experimental overlay

  09 Jun 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Remove some entries for packages that I have removed from the tree.

  09 Jun 2007; Rémi Cardona <remi@gentoo.org> package.mask:
  Move Gnome 2.18 mask to arm/alpha/fbsd subprofiles,
  effectively unmasking it for all other arches

  09 Jun 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Removed wxruby mask since it has been deleted from the tree.

  07 Jun 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Remove removed packages, bugs 173064 142838 154645 168565 73987

  07 Jun 2007; Alon Bar-Lev <alonbl@gentoo.org> package.mask:
  Remove 855resolution, bug#159586

  07 Jun 2007; Christian Faulhammer <opfer@gentoo.org> use.desc,
  use.local.desc:
  making gsl a global USE flag

  06 Jun 2007; Tiziano Müller <dev-zero@gentoo.org> package.mask:
  Unmasking boost-1.34.0

  06 Jun 2007; Sébastien Fabbro <bicatali@gentoo.org> use.local.desc:
  Added sandbox local flag for sci-libs/scipy

  06 Jun 2007; Samuli Suominen <drac@gentoo.org> use.desc, use.local.desc:
  Move xulrunner from local to global use.

  06 Jun 2007; Matthias Schwarzott <zzam@gentoo.org> desc/dvb_cards.desc:
  Added three new dvb_cards entries, Bug 174491.

  05 Jun 2007; Alin Năstac <mrness@gentoo.org> use.local.desc:
  Add extra-algorithms and weak-algorithms USE flags for openswan (#180472).

  05 Jun 2007; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask for emacs-cvs extended to cover upstream version number change.

  04 Jun 2007; Raúl Porcel <armin76@gentoo.org> thirdpartymirrors:
  Remove archive.progeny.com, bug #180900

  04 Jun 2007; Jeroen Roovers <jer@gentoo.org> package.mask:
  Masking media-fonts/liberation-fonts-ttf until it is sorted out.

  03 Jun 2007; Wulf C. Krueger <philantrop@gentoo.org> package.mask:
  Removed the mask for kde-base/dcopjava.

  03 Jun 2007; Robert Buchholz <rbu@gentoo.org> base/use.mask,
  default-linux/amd64/use.mask, default-linux/x86/use.mask:
  Mask lcd_devices_luise in base and unmask in x86/amd64

  03 Jun 2007; Robert Buchholz <rbu@gentoo.org>
  default-linux/sparc/use.mask, selinux/sparc/use.mask:
  Removed old use.masks for app-misc/lcdproc (bug #148072)

  02 Jun 2007; Robert Buchholz <rbu@gentoo.org> desc/lcd_devices.desc:
  Added luise to LCD_DEVICES

  02 Jun 2007; Wulf C. Krueger <philantrop@gentoo.org> package.mask:
  Removed mask for >=kde-misc/tork-0.13. Fixes bug 180330.

  02 Jun 2007; Krzysiek Pawlik <nelchael@gentoo.org> package.mask:
  Remove mask for JWSDP.

  02 Jun 2007; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Remove mask for removed app-editors/emacs-cvs-22.0.9999.

  02 Jun 2007; Ulrich Mueller <ulm@gentoo.org> use.local.desc:
  Add local use flags gzip-el, hesiod, sound, and toolkit-scroll-bars for
  app-editors/emacs.

  02 Jun 2007; Marius Mauch <genone@gentoo.org> use.desc:
  Add a notice about internal handling to the description of the "test" flag

  01 Jun 2007; Sébastien Fabbro <bicatali@gentoo.org> use.local.desc:
  Added local use flag openmp and int64 for sci-libs/acml

  31 May 2007; Christoph Mende <angelos@gentoo.org> use.local.desc:
  Added local use flag rss for net-irc/eiwic

  31 May 2007; Stefan Schweizer <genstef@gentoo.org> package.mask:
  Mask new poppler rc

  30 May 2007; Bjarke Istrup Pedersen <gurligebis@gentoo.org> package.mask:
  Masked net-misc/upnp, going to be removed 20070629.

  29 May 2007; Alin Năstac <mrness@gentoo.org> use.local.desc:
  Add dev-util/nsis:config-log (#180060).

  29 May 2007; Vlastimil Babka <caster@gentoo.org> package.mask:
  Removing removed packages from package.mask.

  28 May 2007; Samuli Suominen <drac@gentoo.org> use.desc, use.local.desc:
  Moved dozen xscreensaver USE flags from local to global.

  28 May 2007; Wulf C. Krueger <philantrop@gentoo.org> use.local.desc:
  Added kde-base/kdeutils:xscreensaver.

  28 May 2007; Wulf C. Krueger <philantrop@gentoo.org> use.local.desc:
  Added kde-base/klaptopdaemon:xscreensaver.

  28 May 2007; Alin Năstac <mrness@gentoo.org> use.local.desc:
  Add net-proxy/squid:qos (#177020).

  27 May 2007; Krzysiek Pawlik <nelchael@gentoo.org> package.mask:
  Remove masks of removed packages.

  27 May 2007; Vlastimil Babka <caster@gentoo.org> use.local.desc:
  Add local bsf flag to dev-java/bsh

  27 May 2007; Vlastimil Babka <caster@gentoo.org> use.local.desc:
  Add local bsf flag to dev-java/groovy.

  27 May 2007; Vlastimil Babka <caster@gentoo.org> use.local.desc:
  Add new local useflag "bsf" for dev-java/jruby.

  26 May 2007; Olivier Crête <tester@gentoo.org> use.local.desc:
  Remove console and custom-cflags use flag from pidgin

  26 May 2007; Olivier Crête <tester@gentoo.org> use.local.desc:
  Add zephyr flag for net-im/pidgin

  26 May 2007; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask new version of ocamlduce, needs ocaml 3.10

  26 May 2007; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask new release of dev-ml/ulex as it depends on ocaml 3.10

  26 May 2007; Krzysiek Pawlik <nelchael@gentoo.org> package.mask:
  Remove mask of jcs-bin.

  26 May 2007; Alexis Ballier <aballier@gentoo.org> package.mask:
  Mask ocaml 3.10.0

  24 May 2007; Alon Bar-Lev <alonbl@gentoo.org> package.mask:
  sys-apps/855resolution last rites

  24 May 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Package.masked =app-text/jasperreports-1.0.1 because it doesn't compile. See
  bug #164074.

  23 May 2007; Wulf C. Krueger <philantrop@gentoo.org> use.desc:
  Changed description for kdeenablefinal USE flag. Its use is strongly
  discouraged.

  23 May 2007; Christian Faulhammer <opfer@gentoo.org> use.local.desc:
  add gnus USE flag for app-emacs/easypg

  23 May 2007; Alistair John Bush <ali_bush@gentoo.org> package.mask:
  Remove systray4j from package mask as it is gone from the tree.

  21 May 2007; Paul Varner <fuzzyray@gentoo.org> package.mask:
  Added =app-portage/gentoolkit-dev-0.2.6.6 for echangelog testing.

  21 May 2007; Jeroen Roovers <jer@gentoo.org> package.mask:
  Unmasking www-client/opera-9.21.

  20 May 2007; Peter Weller <welp@gentoo.org>
  default-linux/amd64/2006.0/no-multilib/package.mask,
  default-linux/amd64/2006.1/no-multilib/package.mask,
  default-linux/amd64/2007.0/no-multilib/package.mask:
  package.masked dev-lang/dmd-bin on amd64 no-multilib profiles

  19 May 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Package.mask dev-java/sun-javamail-bin as nothing is using it any more.

  19 May 2007; Denis Dupeyron <calchan@gentoo.org> use.local.desc:
  Added local USE flag epiphany for dev-embedded/ponyprog.

  19 May 2007; Alon Bar-Lev <alonbl@gentoo.org> package.mask:
  Remove suspend2 group

  18 May 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Remove www-servers/ncsa-httpd, www-servers/plb and net-im/aim-transport from
  p.mask as they have been removed, bug 122134 150966 and 145858

  18 May 2007; Robin H. Johnson <robbat2@gentoo.org> package.mask:
  hardmask the prerelease of capistrano-2.0 for testing.

  17 May 2007; Petteri Räty <betelgeuse@gentoo.org> use.local.desc:
  Add the test-framework local use flag for dev-java/commons-collections.

  17 May 2007; Denis Dupeyron <calchan@gentoo.org> use.local.desc:
  Added local USE flag gpac for media-video/kino.

  17 May 2007; Alin Năstac <mrness@gentoo.org> package.mask:
  Remove net-dialup/slirp & net-dialup/pppoed from the tree.

  17 May 2007; Sven Wegener <swegener@gentoo.org> use.local.desc:
  Drop gnustep-apps/cynthiune:arts from local USE flags, arts is already global.

  16 May 2007; Vlastimil Babka <caster@gentoo.org> use.local.desc:
  Add local java5 useflag to dev-java/backport-util-concurrent and hyphenation
  use flag to dev-java/fop.

  16 May 2007; Joseph Jezak <josejx@gentoo.org> base/use.mask,
  default-linux/amd64/use.mask, use.local.desc:
  Add mplayer-bin use flag for mplayerplug-in on amd64.

  16 May 2007; Markus Rothe <corsair@gentoo.org> hardened/ppc64/use.mask:
  Add qt4 to use.mask in hardened ppc64 profile; bug #178779

  16 May 2007; Petteri Räty <betelgeuse@gentoo.org> use.local.desc:
  Add old-daemons and test-programs local use flags for net-wireless/bluez-utils.

  16 May 2007; Rob Cakebread <pythonhead@gentoo.org> package.mask:
  Removed from package.mask bug #167897

  15 May 2007; Matthias Schwarzott <zzam@gentoo.org> use.local.desc:
  Add media-plugins/vdr-text2skin:direct_blit.

  15 May 2007; Ulrich Mueller <ulm@gentoo.org> base/virtuals,
  default-bsd/fbsd/6.2/sparc/virtuals, default-darwin/virtuals,
  embedded/virtuals:
  Removed old-style virtual/emacs and virtual/flim from profiles.

  14 May 2007; Markus Ullmann <jokey@gentoo.org> use.local.desc:
  add net-irc/unrealircd:showlistmodes

  14 May 2007; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask =www-client/opera-9.21 until it goes into beta.

  13 May 2007; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask Emacs live CVS ebuilds.

  13 May 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Mask new net-fs/sfs for testing.

  15 May 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Remove mask for dev-db/c-jdbc as it's gone from the tree.

  11 May 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  net-misc/aria has been removed, bug 153355

  11 May 2007; Timothy Redaelli <drizzt@gentoo.org> package.mask:
  Mask dev-db/firebird-2.0.1 for testing.

  10 May 2007; Daniel Black <dragonheart@gentoo.org> thirdpartymirrors:
  removed bad gnupg mirrors as per bug #177893 thanks Jakub

  09 May 2007; Stefan Schweizer <genstef@gentoo.org> package.mask:
  Package.mask new kpowersave and powersave bugs 170997 and 175933

  07 May 2007; Vlastimil Babka <caster@gentoo.org> thirdpartymirrors:
  Remove http://apache.get-software.com/ from apache mirrors, all distfiles
  redirect to a 'domain-for-sale' page; not listed in Apache's mirror list
  anymore.

  07 May 2007; Stefan Schweizer <genstef@gentoo.org> package.mask:
  Add new alsa-lib version-r1 to IUSE_PCM_PLUGIN masking

  07 May 2007; Stefan Schweizer <genstef@gentoo.org> package.mask:
  mask new alsa

  07 May 2007; Gustavo Zacarias <gustavoz@gentoo.org> profiles.desc:
  Add desktop and server profiles for 2007.0 sparc64 too

  07 May 2007; Chris Gianelloni <wolf31o2@gentoo.org> profiles.desc:
  Update profiles on some arches to make 2007.0 stable.

  07 May 2007; Gustavo Zacarias <gustavoz@gentoo.org> profiles.desc:
  Better reflect reality for sparc profiles

  07 May 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Various packages removed, for treecleaners

  07 May 2007; Joerg Bornkessel <hd_brummy@gentoo.org> use.local.desc:
  add media-plugins/vdr-burn:projectx to use.local.desc

  06 May 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  package.mask dev-java/jswat for bug 166976 and bug 166974.

  06 May 2007; Robert Buchholz <rbu@gentoo.org> desc/lcd_devices.desc:
  Add new LCD_DEVICES for app-misc/lcdproc-0.5.2

  06 May 2007; Denis Dupeyron <calchan@gentoo.org> use.local.desc:
  Added local USE flag gnuplot for sci-electronics/gwave.

  05 May 2007; Petteri Räty <betelgeuse@gentoo.org> use.local.desc:
  Add beanshell local use flag for app-benchmarks/jmeter.

  05 May 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  P.mask findutils-4.3.3 since it breaks, bug 177148

  04 May 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Update app-pda/plucker mask comment.

  04 May 2007; Ulrich Mueller <ulm@gentoo.org> base/virtuals,
  embedded/virtuals:
  Remove virtual/semi since it was provided only by app-emacs/semi.

  04 May 2007; Krzysiek Pawlik <nelchael@gentoo.org> package.mask:
  Mask binary JWSDP.

  04 May 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  net-libs/rb_libtorrent unmasked as it's the final release

  04 May 2007; Tobias Scherbaum <dertobi123@gentoo.org> use.local.desc:
  Added local avfs use-flag for app-misc/worker

  04 May 2007; Alistair John Bush <ali_bush@gentoo.org> package.mask:
  Mask violinstrings as part of java migration/cleanup.

  04 May 2007; Timothy Redaelli <drizzt@gentoo.org> use.local.desc:
  Add prediction use flag for pidgin wrt bug #176923.
  Thanks to Tristan Heaven for reporting.

  04 May 2007; Timothy Redaelli <drizzt@gentoo.org> use.local.desc:
  Add pidgin local use flags wrt bug #177000.
  Thanks to jakub for reporting.

  03 May 2007; Petteri Räty <betelgeuse@gentoo.org> use.local.desc:
  Add soundex local use flag to dev-db/sqlite requested in bug #143794.

  03 May 2007; Timothy Redaelli <drizzt@gentoo.org> package.mask:
  Mask pidgin-2.0.0_beta7

  03 May 2007; Alistair John Bush <ali_bush@gentoo.org> package.mask:
  Mask dev-java/openjgraph for removal to javas junkyard

  02 May 2007; Alin Năstac <mrness@gentoo.org> use.local.desc:
  Add bgpas4 USE flag for net-misc/quagga (#176657).

  02 May 2007; Michael Marineau <marineam@gentoo.org>
  default-linux/x86/no-nptl/2.4/package.mask:
  Mask Xen for 2.4 kernel systems.

  02 May 2007; Michael Marineau <marineam@gentoo.org> use.local.desc:
  Add local use flag ioemu for xen-tools.

  01 May 2007; Hans de Graaff <graaff@gentoo.org> package.mask:
  Remove mask for rubygems-0.9.1 and better as rubygems-0.9.1 has left the tree
  and rubygems-0.9.2 seems fine. See #162463 for details.

  01 May 2007; Denis Dupeyron <calchan@gentoo.org> package.mask:
  Removed mask on net-print/hpoj, package punted.

  30 Apr 2007; Vlastimil Babka <caster@gentoo.org> package.mask:
  Masking dev-java/infobus-bin.

  30 Apr 2007; Vlastimil Babka <caster@gentoo.org> package.mask:
  Mask dev-java/dbconnectionbroker-bin

  30 Apr 2007; Sébastien Fabbro <bicatali@gentoo.org> use.local.desc:
  Added local use flag float for sci-libs/fftw-2

  30 Apr 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  package.mask rest of the Eclipse plugins.

  30 Apr 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Package.mask dev-util/eclipse-pydev-bin for removal to the junkyard.

  30 Apr 2007; Sébastien Fabbro <bicatali@gentoo.org> use.local.desc:
  Added udunits local USE flag for sci-misc/ncview.

  29 Apr 2007; Duncan Coutts <dcoutts@gentoo.org> package.mask:
  Unmask dev-haskell/cabal-1.1.6.1 and dev-haskell/alex-2.1.0 which depended
  on it

  29 Apr 2007; Duncan Coutts <dcoutts@gentoo.org> package.mask:
  removing dev-haskell/buddha from p.mask as that package has now been removed
  from the tree

  29 Apr 2007; Duncan Coutts <dcoutts@gentoo.org> package.mask:
  masking new alex-2.1.0 pending the great ghc-6.6.x unmasking

  29 Apr 2007; Vlastimil Babka <caster@gentoo.org> package.mask:
  Unmasking media-gfx/opcion.

  29 Apr 2007; Maurice van der Pot <griffon26@gentoo.org> use.local.desc:
  Added webinterface local USE-flag for net-im/pyicq-t.

  28 Apr 2007; Krzysiek Pawlik <nelchael@gentoo.org> package.mask:
  Mask dev-java/qat

  28 Apr 2007; Vlastimil Babka <caster@gentoo.org> package.mask:
  Masking dev-java/sun-{connector-bin,dsml-bin,ejb-spec} for removal.

  28 Apr 2007; Vlastimil Babka <caster@gentoo.org> package.mask:
  Masking dev-java/jmbus.

  28 Apr 2007; Vlastimil Babka <caster@gentoo.org> package.mask:
  Masking eclipse-sdk versions below 3.2.1.

  28 Apr 2007; Vlastimil Babka <caster@gentoo.org> package.mask:
  Masking dev-java/joscar for removal.

  28 Apr 2007; Krzysiek Pawlik <nelchael@gentoo.org> package.mask:
  Mask dev-java/fesi

  28 Apr 2007; Krzysiek Pawlik <nelchael@gentoo.org> package.mask:
  Mask dev-java/nice

  27 Apr 2007; Sébastien Fabbro <bicatali@gentoo.org> use.local.desc:
  Added ncap2 and udunits flags for sci-misc/nco

  27 Apr 2007; Krzysiek Pawlik <nelchael@gentoo.org> package.mask:
  Mask dev-java/jcs-bin

  27 Apr 2007; Matthias Schwarzott <zzam@gentoo.org> desc/lirc_devices.desc:
  Added new devices introduced with lirc-0.8.2_pre2.

  27 Apr 2007; Denis Dupeyron <calchan@gentoo.org> use.local.desc:
  Added fax and parport local USE flags for net-print/hplip.

  26 Apr 2007; Alexis Ballier <aballier@gentoo.org> package.mask:
  remove unneeded media-libs/mlt snapshot mask as its now gone as there are
  official releases

  26 Apr 2007; Steve Dibb <beandog@gentoo.org> package.mask:
  Removing mplayer since ebuilds removed from tree

  26 Apr 2007; Bernard Cafarelli <voyageur@gentoo.org> package.mask:
  Removing package.mask on NX split packages, removed from the tree

  25 Apr 2007; Alexis Ballier <aballier@gentoo.org> use.local.desc:
  gimpprint useflag for media-video/cinepaint

  25 Apr 2007; Stefan Schweizer <genstef@gentoo.org> use.local.desc:
  gimp for gimp-print

  25 Apr 2007; Petteri Räty <betelgeuse@gentoo.org> use.local.desc:
  No ebuilds using no-seamonkey in the tree so removing the description.

  25 Apr 2007; Paul Varner <fuzzyray@gentoo.org> package.mask:
  Added =app-portage/gentoolkit-dev-0.2.6.5 for echangelog testing.

  25 Apr 2007; Bernard Cafarelli <voyageur@gentoo.org> use.local.desc:
  Add vnc USE flag for net-misc/nxserver-2xterminalserver

  25 Apr 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Remove mask for dev-java/eclipse-{core,osgi,jface} as they were removed from
  the tree. package.mask ChangeLog

  25 Apr 2007; Brent Baude <ranger@gentoo.org> profiles.desc:
  Changing profiles.desc for the 2007 32bit profile from ppc64 to ppc to make
  repoman happy

  24 Apr 2007; Sven Wegener <swegener@gentoo.org> use.local.desc:
  Add libsexy for media-sound/listen

  24 Apr 2007; Alexis Ballier <aballier@gentoo.org> use.local.desc:
  vlc dc1394 local useflag

  23 Apr 2007; Sven Wegener <swegener@gentoo.org> updates/3Q-2004:
  Resolve circular move for dev-java/datavision -> dev-java/datavision-bin
  (3Q-2004) -> dev-java/datavision (4Q-2006) by removing the entry from
  3Q-2004.

  23 Apr 2007; Petteri Räty <betelgeuse@gentoo.org>
  hardened/ppc/package.use.mask, +selinux/ppc/package.use.mask:
  package.use.mask test for ~dev-util/checkstyle-4.3 because they require
  virtual/jdk-1.6 to pass

  21 Apr 2007; Fabian Groffen <grobian@gentoo.org> package.mask:
  Unleash new style tcsh

  20 Apr 2007; Raúl Porcel <armin76@gentoo.org> use.local.desc:
  Add USE-flags for net-p2p/gift

  20 Apr 2007; Raúl Porcel <armin76@gentoo.org> use.local.desc:
  Add nomodules USE-flag for net-irc/znc

  20 Apr 2007; Denis Dupeyron <calchan@gentoo.org> package.mask:
  Removed mask on sci-electronics/modelsim since it was punted, see bug #169191.

  19 Apr 2007; Christian Faulhammer <opfer@gentoo.org> use.desc:
  mark gtk2 as deprecated

  18 Apr 2007; Alexis Ballier <aballier@gentoo.org> package.mask:
  Mask media-libs/libdca before adding it

  18 Apr 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Unmasking mail-client/mozilla-thunderbird-2.0.0.0, finally released, yay

  17 Apr 2007; Robert Buchholz <rbu@gentoo.org> use.local.desc:
  added xspf USE flag for media-sound/herrie

  17 Apr 2007; Christian Faulhammer <opfer@gentoo.org>
  default-linux/amd64/2006.1/no-multilib/package.mask:
  mask games-fps/postal2 for no-multilib profiles

  17 Apr 2007; Alin Năstac <mrness@gentoo.org> package.mask:
  P.mask net-dialup/slirp.

  16 Apr 2007; Christian Faulhammer <opfer@gentoo.org> use.local.desc:
  added sound and hesiod USE flags for app-editors/emacs-cvs

  16 Apr 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Unmask net-libs/xulrunner

  16 Apr 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  P.mask net-libs/xulrunner again until i fix it

  15 Apr 2007; Stefan Schweizer <genstef@gentoo.org> package.mask:
  Remove obsolete unsermake and captive masks, remove loudmouth mask because
  latest version is stable and works with apps

  15 Apr 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Unmask xulrunner again

  15 Apr 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  P.mask net-libs/xulrunner until i fix it

  15 Apr 2007; Stefan Schweizer <genstef@gentoo.org> use.local.desc:
  Add console use for linphone

  15 Apr 2007; philantrop@gentoo.org use.local.desc:
  Added local USE flags hddtemp and ibmacpi for kde-misc/ksensors.

  14 Apr 2007; Stefan Schweizer <genstef@gentoo.org> package.mask:
  Remove scons, libzvt and wengophone masks

  13 Apr 2007; Stefan Schweizer <genstef@gentoo.org> package.mask:
  xcb kaffeine mask no longer used

  13 Apr 2007; Stefan Schweizer <genstef@gentoo.org> use.local.desc:
  Add real useflag for xine-lib

  12 Apr 2007; Robert Buchholz <rbu@gentoo.org> use.local.desc:
  Added local uses for media-sound/herrie

  12 Apr 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Unmask app-admin/quickswitch, since users request it

  12 Apr 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Package.mask dev-java/jdbc3-postgresql for removal in 30 days. Use
  dev-java/jdbc-postgresql instead.

  11 Apr 2007; Raphael Marichez <falco@gentoo.org> use.local.desc:
  Add dbtool local USE-flag for app-forensics/sleuthkit-2.08

  11 Apr 2007; Tony Vroon <chainsaw@gentoo.org> use.local.desc:
  Add sname local USE-flag for net-im/ejabberd-1.1.3-r1.

  10 Apr 2007; Petteri Räty <betelgeuse@gentoo.org> use.local.desc:
  Add jsapi local use flag for app-accessibility/freetts.

  09 Apr 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Mask various packages for treecleaners, app-admin/cpu -> bug 173064,
  app-admin/quickswitch -> bug 134335, app-misc/jive -> bug 142838,
  app-text/mgv -> bug 154645, net-misc/dhcp-agent -> bug 168565,
  x11-plugins/wmmail -> bug 73987

  09 Apr 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  net-misc/e100 has been removed from the tree

  08 Apr 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Update mask for mozilla-thunderbird, enigmail

  08 Apr 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Mask dev-db/c-jdbc for removal to the junkyard.

  07 Apr 2007; Stefan Schweizer <genstef@gentoo.org> package.mask:
  Unmask gfontview again, as bug 154671 is invalid

  07 Apr 2007; Stefan Schweizer <genstef@gentoo.org> package.mask:
  mask for removal app-misc/gfontview

  07 Apr 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  dev-util/eclipse-cdt and dev-util/ecletex removed from the tree

  07 Apr 2007; Petteri Räty <betelgeuse@gentoo.org> use.local.desc:
  Add postscript and dia local use flags of media-gfx/inkscape.

  07 Apr 2007; Petteri Räty <betelgeuse@gentoo.org>
  hardened/amd64/use.mask, selinux/amd64/use.mask:
  Use use.mask for emf instead of !amd64 atom in media-gfx/pstoedit.

  06 Apr 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Mask dev-java/aterm-java because it does not build and upstream is dead.

  05 Apr 2007; Alexis Ballier <aballier@gentoo.org> package.mask:
  unmask media-video/ffmpeg-0.4.9_p20070330, non pic safe asm has been
  disabled for x86 and amd64, it has stopped bleeding

  03 Apr 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Mask net-p2p/qbittorrent-0.9.0, as it depends in rc version of rb_libtorrent

  03 Apr 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Bleh, unmask firefox-1.5* again

  03 Apr 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Mask rc versions of net-libs/rb_libtorrent

  03 Apr 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Re-mask =www-client/mozilla-firefox-1.5*, unmasked in 2.4 profiles, bug 173250

  02 Apr 2007; Peter Volkov <pva@gentoo.org> package.mask:
  Removed mask from not in the tree xfig-3.2.5_alpha5.

  02 Apr 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Add www-client/mozilla-firefox[-bin]-1.5* to p.mask, as Mozilla is dropping
  support from 24 Apr 2007, pending removal in 14 days

  01 Apr 2007; Piotr Jaroszyński <peper@gentoo.org> use.local.desc:
  Add sys-apps/paludis:portage.

  01 Apr 2007; Alexis Ballier <aballier@gentoo.org> package.mask:
  Mask media-video/ffmpeg-0.4.9_p20070330

  31 Mar 2007; Carsten Lohrke <carlo@gentoo.org> package.mask:
  Mask kde-misc/krusader beta releases

  31 Mar 2007; Denis Dupeyron <calchan@gentoo.org> package.mask:
  Removed mask on picptk as the package was punted as promised in bug #166598.

  30 Mar 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  package.mask dev-java/saxon-bin for removal in 30 days

  30 Mar 2007; Steev Klimaszewski <steev@gentoo.org> use.local.desc:
  Add disk-partition and mactel useflags for sys-apps/hal for supporting
  disk partitioning and mac book pro utils

  29 Mar 2007; Steev Klimaszewski <steev@gentoo.org> use.local.desc:
  Add dell useflag for sys-apps/hal for Dell support via libsmbios

  29 Mar 2007; Steev Klimaszewski <steev@gentoo.org> package.mask:
  Package mask hal-0.5.9_rc2 and app-misc/hal-info-20070326

  29 Mar 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Package mask dev-java/javatar for removal to the java junkyard.

  28 Mar 2007; Piotr Jaroszyński <peper@gentoo.org> package.mask:
  Add =app-pda/libopensync-plugin-synce-0.20 to p.mask.

  28 Mar 2007; Alexis Ballier <aballier@gentoo.org> use.local.desc:
  ocsigen ocamlduce useflag

  28 Mar 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Delete net-p2p/freenet from p.mask, since it has been removed from the tree,
  bug 72996

  27 Mar 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Package.mask dev-util/jcvs and dev-java/j2ssh for removal to the java
  junkyard in 30 days.

  26 Mar 2007; Markus Ullmann <jokey@gentoo.org> package.mask:
  Drop openldap 2.1 mask

  26 Mar 2007; Bernard Cafarelli <voyageur@gentoo.org> package.mask:
  Package.masked NX components split ebuilds, pending removal on 26 Apr 2007

  25 Mar 2007; <genstef@gentoo.org> package.mask:
  Mask virtual/x11, bug 168328

  25 Mar 2007; Alexis Ballier <aballier@gentoo.org> use.local.desc:
  prokyon3 taglib useflag

  24 Mar 2007; Paul Varner <fuzzyray@gentoo.org> package.mask:
  Remove package.mask for app-portage/gentoolkit-dev. echangelog changes
  have been reverted.

  25 Mar 2007; Alexis Ballier <aballier@gentoo.org> package.mask:
  Unmask beast 0.7.1, its now fine with guile 1.8

  24 Mar 2007; Mike Doty <kingtaco@gentoo.org> package.mask:
  mask media-video/{spca5xx,gspca} in favor of media-video/gspcav1
  unmask media-video/gspcav1
  bug 159176

  24 Mar 2007; Paul Varner <fuzzyray@gentoo.org> package.mask:
  Update package.mask for app-portage/gentoolkit-dev to indicate testing
  status.

  24 Mar 2007; Steev Klimaszewski <steev@gentoo.org> package.mask:
  Add consolekit which is needed by Gnome's 2.18 release of GDM

  24 Mar 2007; Steve Dibb <beandog@gentoo.org> package.mask:
  Unmask media-libs/nas

  24 Mar 2007; Steve Dibb <beandog@gentoo.org> package.mask:
  Unmask transcode-1.0.3

  24 Mar 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Package.mask =app-portage/gentoolkit-dev-0.2.6.3 because it generates bad
  entries for bumps (bug #172017)

  24 Mar 2007; <genstef@gentoo.org> package.mask:
  Package removals: libzvt+deps: gnomesu, xsu2, root-portal

  24 Mar 2007; <genstef@gentoo.org> package.mask:
  Remove removal p.mask of removed modular X broken pkges

  23 Mar 2007; Raúl Porcel <armin76@gentoo.org> use.local.desc:
  Remove www-client/mozilla USE-flags, as it has been removed from the tree

  23 Mar 2007; Steve Dibb <beandog@gentoo.org> use.local.desc:
  Add vidix use flag for mplayer

  22 Mar 2007; Steve Dibb <beandog@gentoo.org> use.local.desc:
  Remove unnecessary local use flags from media-video/mplayer

  22 Mar 2007; Steve Dibb <beandog@gentoo.org> use.local.desc:
  Add srt use flag for media-video/ogmrip

  22 Mar 2007; Steve Dibb <beandog@gentoo.org> use.local.desc:
  Add mplayer local use flags

  21 Mar 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Remove media-video/kdenlive mask because that version has been removed

  19 Mar 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  P.mask www-servers/plb, for treecleaners bug 150966

  19 Mar 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Remove www-client/mozilla[-bin] from p.mask since it has been removed from
  the tree, bug 135257

  18 Mar 2007; Steve Dibb <beandog@gentoo.org> use.local.desc:
  Add more mplayer use flags

  18 Mar 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Add net-im/aim-transport to p.mask for removal by treecleaners too

  18 Mar 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Add www-servers/ncsa-httpd for removal in 60 days, treecleaners, and add
  date to drac's mask

  18 Mar 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Remove net-irc/cyclone as it has been removed from the tree, bug 152480

  18 Mar 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Fix mask for net-p2p/amule, bug 171341

  17 Mar 2007; Petteri Räty <betelgeuse@gentoo.org>
  default-linux/amd64/use.mask,
  +hardened/amd64/package.use.mask, hardened/amd64/use.mask,
  +selinux/amd64/package.use.mask, selinux/amd64/use.mask:
  Unmasked ASIHPI driver for >=media-sound/alsa-driver-1.0.14_rc3.

  17 Mar 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Remove net-im/ohphone mask due to its removal. (bug #105670)

  17 Mar 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  package.mask alsa-lib-1.0.14_rc3-r1 as it has the experimental midi use flag

  16 Mar 2007; Markus Ullmann <jokey@gentoo.org> use.local.desc:
  modify wrapper useflag for app-emulation/virtualbox

  16 Mar 2007; <kolmodin@gentoo.org> package.mask:
  p.mask ghc-bin-6.6 for testing.

  16 Mar 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Mask CVS snapshots of amule

  16 Mar 2007; Steve Dibb <beandog@gentoo.org> use.local.desc:
  Add postproc, nuv local use flags to media-video/transcode

  14 Mar 2007; Denis Dupeyron <calchan@gentoo.org> package.mask:
  Masked sci-electronics/modelsim pending removal on 14 Apr 2007.

  13 Mar 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Remove net-p2p/mnet from p.mask as it's has been removed from the tree, bug
  166887

  13 Mar 2007; Christian Faulhammer <opfer@gentoo.org> use.local.desc:
  remove invalid USE flags for app-emacs/remember

  13 Mar 2007; Steve Dibb <beandog@gentoo.org> package.mask:
  p.mask transcode snapshots

  13 Mar 2007; Michael Sterrett <mr_bones_@gentoo.org>
  default-linux/x86/use.mask:
  pbbuttond use flag needs stable app-laptop/pbbuttonsd first

  12 Mar 2007; Christian Faulhammer <opfer@gentoo.org>
  default-linux/x86/use.mask:
  unmask macbook and pbbuttonsd USE flags, remove USE flag ibm as it is masked
  in base profile

  11 Mar 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Add net-misc/aria2 to p.mask pending removal for treecleaners, bug 153355

  11 Mar 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Update mask for thunderbird/enigmail

  11 Mar 2007; Tom Knight <tomk@gentoo.org> use.local.desc:
  Added five local USE flags for mail-filter/spamassassin-fuzzyocr

  11 Mar 2007; <genstef@gentoo.org> package.mask:
  mask dev-util/scons-0.96.95 because it fails with qt3 apps, bug 169101

  10 Mar 2007; Steve Dibb <beandog@gentoo.org> package.mask:
  unmask ivtv

  10 Mar 2007; Christian Marie <pingu@gentoo.org> package.mask:
  Removing net-www/bk_edit's mask as it is removed from the tree.

  09 Mar 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Removed dev-java/jess-bin from the tree so removing the mask.

  09 Mar 2007; Steve Dibb <beandog@gentoo.org> use.local.desc:
  Add cdaudio, wav to media-sound/mpfc

  08 Mar 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  p.mask wrt bug, 108022, bug 110298, bug 115407, bug 117665, bug 137329 and
  bug 164144, for removal in 60 days

  08 Mar 2007; <genstef@gentoo.org> package.mask:
  remove bogus dmraid mask, bug 139860, treecleaners is dead

  07 Mar 2007; <kolmodin@gentoo.org> package.mask:
  package.mask dev-lang/ghc-6.6 and deps

  07 Mar 2007; Chris Gianelloni <wolf31o2@gentoo.org> package.mask:
  Removing nwn/nwn-data from mask.  I'm sure this will make Mr_Bones_ happy.

  06 Mar 2007; <genstef@gentoo.org> package.mask:
  Unsermake is utterly broken and no longer used, please uninstall
  immediatelly. will be removed asap

  06 Mar 2007; Joerg Bornkessel <hd_brummy@gentoo.org> use.local.desc:
  added x11-themes/skinenigmang-logos:dxr3 - install logos for lower osd color
  deep on dxr3 cards to use.local.desc

  06 Mar 2007; Christian Faulhammer <opfer@gentoo.org> use.desc:
  removed global emacs-w3 USE flag

  05 Mar 2007; Piotr Jaroszyński <peper@gentoo.org> use.local.desc:
  Remove out-of-date entries.

  05 Mar 2007; Alexis Ballier <aballier@gentoo.org> use.local.desc:
  media-video/dvd-slideshow themes useflag

  05 Mar 2007; Tony Vroon <chainsaw@gentoo.org> ChangeLog:
  Add cube & iris USE-flags for media-plugins/audacious-plugins-ugly.

  05 Mar 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Removed net-libs/gecko-sdk mask as it's removed

  05 Mar 2007; Petteri Räty <betelgeuse@gentoo.org> use.local.desc:
  Added the local xulrunner use flag introduced in dev-java/swt-3.2.2.

  04 Mar 2007; Timothy Redaelli <drizzt@gentoo.org> package.mask:
  Unmasked bsdtar2

  04 Mar 2007; Piotr Jaroszyński <peper@gentoo.org> selinux/packages:
  Fix incomplete sys-apps/fcron -> sys-process/fcron move.

  04 Mar 2007; Christian Faulhammer <opfer@gentoo.org>
  default-linux/x86/no-nptl/2.4/package.mask:
  masked >=sys-apps/iproute2-2.6.19.20061214 on no-nptl profiles with kernel
  2.4 and packages depending on at least that version

  04 Mar 2007; Christian Faulhammer <opfer@gentoo.org>
  hardened/x86/package.mask:
  masked >=sys-apps/iproute2-2.6.19.20061214 on hardened profiles with kernel
  2.4 and packages depending on at least that version

  03 Mar 2007; Raúl Porcel <armin76@gentoo.org> use.local.desc:
  Remove mozbranding from sunbird and thunderbird, bug 168409, for firefox
  we'll have to wait until bug 165555 gets done.

  03 Mar 2007; Markus Ullmann <jokey@gentoo.org> package.mask:
  Drop net-analyzer/prelude-nagios per bug #165006

  03 Mar 2007; Markus Ullmann <jokey@gentoo.org> package.mask:
  Drop net-analyzer/prelude-nids per bug #164294

  03 Mar 2007; Piotr Jaroszyński <peper@gentoo.org> use.local.desc:
  Sort use.local.desc file.

  02 Mar 2007; Samuli Suominen <drac@gentoo.org>
  mask xfce4-artwork

  02 Mar 2007; Steve Dibb <beandog@gentoo.org> use.local.desc:
  add ivtv use flag to mplayer

  01 Mar 2007; Denis Dupeyron <calchan@gentoo.org> package.mask:
  Removed mask on dev-embedded/gpsim-led and dev-embedded/gpsim-logic as they
  were punted, see bug #96578.

  28 Feb 2007; Charlie Shepherd <masterdriverz@gentoo.org> use.local.desc:
  Add libkarma use flag for amarok

  28 Feb 2007; Denis Dupeyron <calchan@gentoo.org> package.mask:
  Masked dev-embedded/picptk, see bug #166598.

  28 Feb 2007; Markus Ullmann <jokey@gentoo.org> use.local.desc:
  Add various app-emulation/virtualbox* useflags

  28 Feb 2007; Timothy Redaelli <drizzt@gentoo.org> use.local.desc:
  Add local use pch to media-sound/{mumble,murmur}

  28 Feb 2007; Petteri Räty <betelgeuse@gentoo.org> use.local.desc:
  Add ffi local use flag for dev-java/jamvm

  28 Feb 2007; Petteri Räty <betelgeuse@gentoo.org> use.local.desc:
  Added gconf local use flag for dev-java/gnu-classpath

  28 Feb 2007; Daniel Black <dragonheart@gentoo.org>
  default-linux/mips/use.mask, selinux/2005.1/mips/use.mask,
  selinux/mips/use.mask, uclibc/mips/use.mask:
  use.masked l7-filter on mips as per bug #150343 until tested

  28 Feb 2007; Christian Birchinger <joker@gentoo.org> package.mask:
  remove package.mask entry for >=media-plugins/audacious-dumb-0.40
  because media-sound/audacious RC versions are not masked anymore

  28 Feb 2007; Timothy Redaelli <drizzt@gentoo.org> use.local.desc:
  Add local use pch to media-sound/{mumble,murmur}

  28 Feb 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Remove package.mask for net-p2p/azureus-bin because that package was removed
  from the tree with a move to net-p2p/azureus.

  28 Feb 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  package.mask dev-java/avalon-logkit-bin in favor of dev-java/avalon-logkit

  27 Feb 2007; Alexis Ballier <aballier@gentoo.org> package.mask:
  beast 0.7.1 mask, bug #163146

  27 Feb 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Add net-p2p/freenet pending for removal, bug 72996

  27 Feb 2007; <genstef@gentoo.org> package.mask:
  mask other modular X offenders, app-i18n/skkinput, bug 139792,
  media-video/xiron, bug 116233

  27 Feb 2007; <genstef@gentoo.org> package.mask:
  Mask media-libs/libhydrogen for removal, bug 153202

  27 Feb 2007; <pva@gentoo.org> use.local.desc:
  New local use flag for net-analyzer:cacti

  27 Feb 2007; <genstef@gentoo.org> package.mask:
  Remove deleted packagemasks for nxserver

  26 Feb 2007; Steve Dibb <beandog@gentoo.org> package.mask:
  Mask older mplayers for pending removal, security bug 159727

  26 Feb 2007; Steve Dibb <beandog@gentoo.org> package.mask:
  Unmask mplayer-bin

  26 Feb 2007; Steve Dibb <beandog@gentoo.org> use.desc, use.local.desc:
  Move musicbrainz from local to global use flag

  26 Feb 2007; Christian Faulhammer <opfer@gentoo.org> use.local.desc:
  added bbdb USE flag for app-emacs/wanderlust

  24 Feb 2007; Robert Buchholz <rbu@gentoo.org> desc/lcd_devices.desc,
  use.local.desc:
  New use for app-misc/lcd4linux

  24 Feb 2007; Zac Medico <zmedico@gentoo.org>
  base/use.force, base/use.mask, default-bsd/use.mask,
  default-bsd/fbsd/use.force, default-darwin/use.force,
  default-darwin/use.mask, uclibc/use.force, uclibc/use.mask:
  Mask and force ELIBC, KERNEL, and USERLAND flags that apply to specific
  profiles.

  24 Feb 2007; Christian Faulhammer <opfer@gentoo.org> use.local.desc:
  added kpoll and smp USE flags for dev-lang/erlang

  23 Feb 2007; Alexis Ballier <aballier@gentoo.org> use.local.desc:
  xdtv schedule useflag added

  23 Feb 2007; Sébastien Fabbro <bicatali@gentoo.org> use.local.desc:
  added root, numarray and fits local use flags for sci-visualization/hippodraw

  22 Feb 2007; Raúl Porcel <armin76@gentoo.org> use.local.desc:
  Add mozbranding use flag for app-office/mozilla-sunbird to use.local.desc

  22 Feb 2007; Steve Dibb <beandog@gentoo.org> package.mask:
  p.mask media-tv/ivtv-0.10.0

  20 Feb 2007; Chris Gianelloni <wolf31o2@gentoo.org>
  default-bsd/fbsd/make.defaults, default-linux/make.defaults,
  hardened/amd64/make.defaults, hardened/ppc/make.defaults,
  hardened/ppc64/make.defaults, hardened/x86/2.6/make.defaults,
  hardened/x86/2.6/minimal/make.defaults, hardened/x86/make.defaults,
  selinux/2005.1/x86/hardened/make.defaults:
  Removed all of the last instances of dlloader in the tree and also made sure
  nobody had GRP_STAGE23_USE anymore, since catalyst hasn't used it for well
  over a year.

  20 Feb 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  p.mask www-client/mozilla[-bin] again for removal, bug 135257

  20 Feb 2007; Simon Stelling <blubb@gentoo.org> package.mask:
  p.mask app-portage/emool; it's the wrong approach to the wrong problem

  20 Feb 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Remove masks for net-p2p/{g2gui,bittorrent-stats} and net-firewall/firestorm
  as they're removed from the tree

  20 Feb 2007; Timothy Redaelli <drizzt@gentoo.org> package.mask:
  Removed nvidia-freebsd

  19 Feb 2007; Chris Gianelloni <wolf31o2@gentoo.org> use.local.desc:
  Removed the dlloader USE flag wrt bug #166759.

  19 Feb 2007; Sébastien Fabbro <bicatali@gentoo.org> use.local.desc:
  added umfpack local USE flag

  19 Feb 2007; Robert Buchholz <rbu@gentoo.org> selinux/sparc/use.mask:
  Include the lcdproc masks in sparc's selinux profiles, too (bug #148072)

  18 Feb 2007; Steve Dibb <beandog@gentoo.org> package.mask:
  p.mask newer versions of mplayer-bin for testing

  18 Feb 2007; Jurek Bartuszek <jurek@gentoo.org> package.mask:
  Removed dev-util/codeblocks from package.mask

  18 Feb 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Add net-irc/cyclone for removal, bug 152480

  17 Feb 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  p.mask beta version of net-irc/dircproxy

  17 Feb 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Remove net-irc/ctrlproxy mask, seems to work fine

  17 Feb 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  update mask for enigmail && mozilla-thunderbird

  16 Feb 2007; Raúl Porcel <armin76@gentoo.org> use.local.desc:
  Add moznopango USE-flag to app-office/mozilla-sunbird

  15 Feb 2007; Markus Ullmann <jokey@gentoo.org> package.mask:
  mask net-analyzer/netwatch for removal

  15 Feb 2007; Markus Ullmann <jokey@gentoo.org> use.local.desc:
  Add app-emulation/virtualbox-bin:additions

  15 Feb 2007; Markus Ullmann <jokey@gentoo.org> use.local.desc:
  Add app-emulation/virtualbox:(additions|sdk)

  15 Feb 2007; Jurek Bartuszek <jurek@gentoo.org> package.mask, use.local.desc:
  Added dev-util/codeblocks to package.mask, needs testing
  Added contrib USE flag for dev-util/codeblocks

  14 Feb 2007; Christian Faulhammer <opfer@gentoo.org> use.local.desc:
  add mp4 USE flag for media-sound/cmus

  14 Feb 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  p.mask net-p2p/mnet bug 166887

  14 Feb 2007; Christian Faulhammer <opfer@gentoo.org> updates/1Q-2007:
  slotmove app-editors/emacs-18*

  14 Feb 2007; Steve Dibb <beandog@gentoo.org> package.mask:
  mask wordpress 2.1

  13 Feb 2007; Alon Bar-Lev <alonbl@gentoo.org> package.mask:
  Added >=sys-apps/suspend2-userui-0.7.0, bug#166609

  12 Feb 2007; Alexis Ballier <aballier@gentoo.org> use.local.desc:
  Add media-sound/shntool wavpack useflag

  12 Feb 2007; Raúl Porcel <armin76@gentoo.org> use.local.desc:
  Add net-p2p/museek+ to use.local.desc

  12 Feb 2007; Piotr Jaroszyński <peper@gentoo.org> use.local.desc:
  Add irda useflag for app-pda/libopensync-plugin-irmc and http,obex for
  app-pda/libopensync-plugin-syncml.

  12 Feb 2007; Sandro Bonazzola <sanchan@gentoo.org> package.mask:
  Masking app-arch/rpm-4.4.7-r3, unmasking app-arch/rpm-4.4.7-r2

  11 Feb 2007; Diego Pettenò <flameeyes@gentoo.org> use.local.desc:
  Add midi useflag for alsa-tools.

  11 Feb 2007; Samuli Suominen <drac@gentoo.org> package.mask:
  Mask dev-libs/{libtc,tc2,tc2-modules} and media-video/tcvp.

  11 Feb 2007; Steve Dibb <beandog@gentoo.org> package.mask:
  Unmask libmtp and amarok

  10 Feb 2007; Alexis Ballier <aballier@gentoo.org> use.local.desc:
  vlc sdl-image use flag

  10 Feb 2007; Petteri Räty <betelgeuse@gentoo.org> updates/1Q-2007:
  Add a move from net-p2p/azureus-bin to net-p2p/azureus.

  09 Feb 2007; Chris Gianelloni <wolf31o2@gentoo.org>
  default-linux/packages.build:
  Moved autoconf/automake/libtool before coreutils in packages.build for
  default-linux, which should resolve bug #165787.

  09 Feb 2007; Alon Bar-Lev <alonbl@gentoo.org> package.mask:
  Added >=sys-kernel/suspend2-sources-2.6.20

  09 Feb 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Package.mask dev-java/jess-bin.

  09 Feb 2007; Sébastien Fabbro <bicatali@gentoo.org> use.local.desc:
  Added an smp use flag for sci-libs/acml.

  09 Feb 2007; Diego Pettenò <flameeyes@gentoo.org> use.local.desc:
  Add xcb useflags for xine-lib and kaffeine.

  09 Feb 2007; Christian Faulhammer <opfer@gentoo.org> use.local.desc:
  USE flag festival for app-emacs/chess

  08 Feb 2007; Jeroen Roovers <jer@gentoo.org> use.local.desc:
  Fix bug #165887.

  08 Feb 2007; Alexis Ballier <aballier@gentoo.org> use.local.desc:
  media-sound/noteedit 2.8.1 useflags

  08 Feb 2007; Chris Gianelloni <wolf31o2@gentoo.org> thirdpartymirrors:
  Removed ftp.edome.net from beyondunreal mirrors. This leaves us with only
  one mirror in this set. If you know of another mirror for this set, please
  file a bug on it. Closing bug #161690.

  08 Feb 2007; Alexis Ballier <aballier@gentoo.org> package.mask:
  Remove pointless avidemux mask

  08 Feb 2007; Christian Birchinger <joker@gentoo.org> package.mask:
  Added >=media-plugins/audacious-dumb-0.40

  07 Feb 2007; Jeroen Roovers <jer@gentoo.org> use.local.desc:
  ming to flash for mapserver in use.local.desc

  06 Feb 2007; Renat Lumpau <rl03@gentoo.org> package.mask:
  Mask bleeding edge version of www-apps/bugzilla

  06 Feb 2007; Renat Lumpau <rl03@gentoo.org> use.local.desc:
  Added www-apps/bugzilla:modperl

  06 Feb 2007; Chris Gianelloni <wolf31o2@gentoo.org> thirdpartymirrors:
  Added http://home.coc-ag.de/dressler-ro/liflg/files/native to liflg mirror
  list.

  07 Feb 2007; Jeroen Roovers <jer@gentoo.org> use.desc, use.local.desc:
  Fix flash / ming placement in use{,.local}.desc (bug #144534).

  04 Feb 2007; Chris Gianelloni <wolf31o2@gentoo.org>
  default-linux/packages.build:
  Added sys-devel/autoconf, sys-devel/automake, and sys-devel/libtool to
  default-linux/packages.build for bug #155387.

  04 Feb 2007; Charlie Shepherd <masterdriverz@gentoo.org> use.local.desc:
  Add vpopmail use-flag for courier-authlib

  03 Feb 2007; Tristan Heaven <nyhm@gentoo.org> thirdpartymirrors:
  Add ggz mirrors

  03 Feb 2007; Charlie Shepherd <masterdriverz@gentoo.org> use.local.desc:
  Remove net-im/kopete references - it has been killed

  03 Feb 2007; Michael Marineau <marineam@gentoo.org>
  default-linux/x86/no-nptl/2.4/package.mask:
  Mask sys-apps/chname for 2.4, requires features in 2.6.19.

  02 Feb 2007; Tristan Heaven <nyhm@gentoo.org> use.local.desc:
  Add media-libs/allegro:vga

  02 Feb 2007; Chris Gianelloni <wolf31o2@gentoo.org> use.local.desc:
  Added device-mapper to use.local.desc for parted, since it now has optional
  device-mapper support.

  02 Feb 2007; Markus Ullmann <jokey@gentoo.org> package.mask:
  mask net-analyzer/prelude-nagios for removal

  02 Feb 2007; Nguyễn Thái Ngọc Duy <pclouds@gentoo.org> use.local.desc:
  Add rubygems:server

  02 Feb 2007; Alexis Ballier <aballier@gentoo.org> package.mask:
  Updating avidemux mask reason

  02 Feb 2007; Tristan Heaven <nyhm@gentoo.org> package.mask:
  games-fps/doomlegacy removed from the tree

  01 Feb 2007; Markus Ullmann <jokey@gentoo.org> use.local.desc:
  Add mask for bug #164924

  01 Feb 2007; Diego Pettenò <flameeyes@gentoo.org> use.local.desc:
  Add daap useflag for amarok.

  01 Feb 2007; Markus Ullmann <jokey@gentoo.org> use.local.desc:
  Add net-analyzer/base:signatures

  01 Feb 2007; Markus Ullmann <jokey@gentoo.org> package.mask:
  Cleaned zodiac

  01 Feb 2007; Steve Dibb <beandog@gentoo.org> package.mask:
  Remove dxr2-driver, treecleaned, bug 153365

  31 Jan 2007; Denis Dupeyron <calchan@gentoo.org> package.mask:
  package.mask'd dev-embedded/gpsim-logic pending removal on 1 March 2007 at
  the latest.

  31 Jan 2007; Peter Weller <welp@gentoo.org> package.mask:
  Added thunar-volman to package.mask

  31 Jan 2007; Steve Dibb <beandog@gentoo.org> package.mask:
  p.mask nas-1.8 for testing

  31 Jan 2007; Steve Dibb <beandog@gentoo.org> package.mask:
  Package masked libmtp-0.1.3 for testing

  30 Jan 2007; Raúl Porcel <armin76@gentoo.org> use.local.desc:
  Move branding USE-flag to mozbranding in mail-client/mozilla-thunderbird,
  bug 157335

  30 Jan 2007; Raúl Porcel <armin76@gentoo.org> use.local.desc:
  Add xforms USE-flag for www-client/seamonkey, bug 164591

  30 Jan 2007; Denis Dupeyron <calchan@gentoo.org> package.mask:
  package.mask'd dev-embedded/gpsim-led pending removal on 1 March 2007 at the
  latest. See bug #96578.

  30 Jan 2007; Diego Pettenò <flameeyes@gentoo.org> use.local.desc:
  Add midi useflag for media-sound/alsa-driver.

  29 Jan 2007; Leonardo Boshell <leonardop@gentoo.org> package.mask:
  Added entries for GNOME-DB 3.0 packages, for testing purposes.

  29 Jan 2007; Timothy Redaelli <drizzt@gentoo.org> use.local.desc:
  Add custom-cflags use to zsnes

  29 Jan 2007; Marijn Schouten <hkBst@gentoo.org> use.local.desc:
  add gambit gcc-opts use flag

  28 Jan 2007; Denis Dupeyron <calchan@gentoo.org> package.mask:
  Deleted mask for app-emulation/i8086emu, package removed. See bug #153190.

  28 Jan 2007; Christian Heim <phreak@gentoo.org> use.local.desc:
  Removing stale entries for sys-cluster/util-vserver, sys-cluster/vzctl and
  sys-cluster/vserver-utils (which is long gone from the tree).

  27 Jan 2007; Marijn Schouten <hkBst@gentoo.org> use.local.desc:
  add guile-1.8.1 use flag descriptions

  26 Jan 2007; Jeroen Roovers <jer@gentoo.org> use.local.desc:
  Add multislot and multitarget USE flags for sys-devel/binutils-hppa64 (bug
  #163351).

  26 Jan 2007; Donnie Berkholz <dberkholz@gentoo.org>; package.mask:
  Pull monolithic Xorg. It's moved to the (new) x11 overlay, accessible via
  layman.

  26 Jan 2007; Patrick McLean <chutzpah@gentoo.org> use.local.desc:
  Add "isc" USE flag for net-dns/dnsmasq

  25 Jan 2007; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  package.masked =dev-java/asm-3* because it uses splitted ant

  25 Jan 2007; Petteri Räty <betelgeuse@gentoo.org> use.local.desc:
  Rename servlet-2.3 and servlet-2.4 use flags to servlet-2_3 and servlet-2_4
  because you can't use dots in use flag names.

  25 Jan 2007; Patrick McLean <chutzpah@gentoo.org> use.local.desc:
  Add tftp USE flag for net-dns/dnsmasq

  24 Jan 2007; Alon Bar-Lev <alonbl@gentoo.org> package.mask:
  Remove sys-apps/pcsc-ase-iiie-drv

  24 Jan 2007; Hanno Boeck <hanno@gentoo.org> package.mask:
  Remove mask for kerry, as 0.2.x is now the stable series.

  22 Jan 2007; Jeff Gardner <je_fro@gentoo.org> use.local.desc:
  Add double-precision to sci-chemistry/gromacs in use.local.desc.

  22 Jan 2007; Alon Bar-Lev <alonbl@gentoo.org> use.local.desc:
  Added app-crypt/ccid:nousb, closes bug#163347, thanks to jakub

  22 Jan 2007; Markus Rothe <corsair@gentoo.org> hardened/ppc/use.mask,
  hardened/ppc64/use.mask, selinux/ppc/use.mask:
  added lcd_devices_graphlcd to use.mask; bug #150925

  22 Jan 2007; Mart Raudsepp <leio@gentoo.org> use.local.desc:
  Fix spelling mistakes in rhythmbox:tagwriting description, bug 163235

  21 Jan 2007; Vlastimil Babka <caster@gentoo.org> use.local.desc:
  Adding new local USE flags descriptions for dev-java/ant-tasks-1.7.0.

  21 Jan 2007; Peter Volkov <pva@gentoo.org> use.local.desc:
  +app-doc/gimp-help:webinstall for app-doc/gimp-help

  20 Jan 2007; Mike Doty <kingtaco@gentoo.org> package.mask:
  removed media-video/gspcav1 from package.mask

  18 Jan 2007; Christian Faulhammer <opfer@gentoo.org> use.local.desc:
  removed local USE flag vnc for net-misc/ltsp

  18 Jan 2007; Marijn Schouten <hkBst@gentoo.org> use.local.desc:
  added g-wrap:glib

  18 Jan 2007; Robert Buchholz <rbu@gentoo.org> desc/lcd_devices.desc:
  Removed some lcd_devices that should not have been in there

  18 Jan 2007; Patrick McLean <chutzpah@gentoo.org> use.local.desc:
  Add suid USE flag for sys-fs/ntfs3g.

  18 Jan 2007; Jeff Gardner <je_fro@gentoo.org> use.local.desc:
  Add mopac7 USE flag to sci-chemistry/ghemical.

  18 Jan 2007; Jeff Gardner <je_fro@gentoo.org>
  default-linux/amd64/use.mask, use.local.desc:
  Add gamess USE flag for sci-chemistry/ghemical-2.10

  17 Jan 2007; Robert Buchholz <rbu@gentoo.org> +desc/lcd_devices.desc:
  Add desc for new LCD_DEVICES USEs

  16 Jan 2007; Diego Pettenò <flameeyes@gentoo.org> use.local.desc:
  Add midi useflag for media-sound/alsa-utils.

  16 Jan 2007; Sandro Bonazzola <sanchan@gentoo.org> package.mask:
  masking app-arch/rpm-4.4.7-r2 for testing

  15 Jan 2007; Joerg Bornkessel <hd_brummy@gentoo.org> updates/1Q-2007:
  move media-video/requant media-video/m2vrequantizer

  15 Jan 2007; Luca Longinotti <chtekk@gentoo.org> updates/1Q-2007:
  Move mod_survey from www-apache/ to www-apps/.

  14 Jan 2007; Luca Longinotti <chtekk@gentoo.org> updates/1Q-2007:
  Slotmove mod_bw back to 0.

  14 Jan 2007; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Releasing wxmozilla snapshot.

  13 Jan 2007; Ioannis Aslanidis <deathwing00@gentoo.org> package.mask:
  Removed mask for kde-mis/katalog-0.4_pre1; no longer in the tree.

  13 Jan 2007; Joshua Baergen <joshuabaergen@gentoo.org> package.mask:
  Mask x11-apps/mkcfm since it's deprecated and doesn't build (bug #157112,
  Vincent).

  13 Jan 2007; Luca Longinotti <chtekk@gentoo.org> package.mask:
  Mask pglogd for removal.

  13 Jan 2007; Robert Buchholz <rbu@gentoo.org> use.local.desc:
  Add rss and mpd local use flag for app-misc/lcd-stuff

  13 Jan 2007; Marijn Schouten <hkBst@gentoo.org> package.mask:
  masked ancient guile-gtk

  12 Jan 2007; Raúl Porcel <armin76@gentoo.org> package.mask:
  Mask net-p2p/teknap for removal, bug 153268

  12 Jan 2007; Luca Longinotti <chtekk@gentoo.org> package.mask:
  Remove mysql-slotted mask, as mysql-slotted is gone from the tree.

  12 Jan 2007; Marijn Schouten hkBst@gentoo.org package.mask:
  remove obsolete bigloo-lib

  12 Jan 2007; Luca Longinotti <chtekk@gentoo.org> updates/1Q-2007:
  Move sys-apps/mysql to dev-db/mysql-init-scripts.

  12 Jan 2007; Chris Gianelloni <wolf31o2@gentoo.org> package.mask:
  Added app-admin/livecd-ng to mask for removal.

  11 Jan 2007; Michael Sterrett <mr_bones_@gentoo.org> use.local.desc:
  clean out a bunch of unused local use flags

  09 Jan 2007; Chris Gianelloni <wolf31o2@gentoo.org> package.mask:
  Add games-action/d2x-rebirth to the Descent 2 mask.

  09 Jan 2007; Chris Gianelloni <wolf31o2@gentoo.org> use.local.desc:
  Added local USE flags for games-actions/d2x-rebirth.

  09 Jan 2007; Chris Gianelloni <wolf31o2@gentoo.org> package.mask:
  Typo fix.

  09 Jan 2007; Chris Gianelloni <wolf31o2@gentoo.org> package.mask:
  Added games-action/d1x to package.mask since games-action/d1x-rebirth
  supercedes it.

  09 Jan 2007; Chris Gianelloni <wolf31o2@gentoo.org> use.local.desc:
  Added local USE for games-action/d1x-rebirth.

